/* Homepage hero (slide template 2807): text block sits higher, clear of the bright sunrise behind the paragraph (Joe 2026-10-20) */
/* HEROSPACE-1023: whole hero text block + buttons shifted (-38px) so logo-bottom to eyebrow-top = buttons-bottom to card-strip-top (43px each since the audit band moved into the hero, AUDITBAND-1023; was 90px at +9px; Joe 2026-10-23) */
@media (min-width:1025px){.pxl-slider--content > .elementor-2807{transform:translateY(-38px)}}
@media (min-width:768px) and (max-width:1024px){.pxl-slider--content > .elementor-2807{transform:translateY(-50px)}}
/* Service cards: titles only, shorter, and pulled up closer to the hero buttons (Joe 2026-10-20) */
/* Hero trimmed top and bottom so its lower edge runs through the middle of the cards (Joe 2026-10-21). Slide height 737 on desktop (was 640; 717 on 2026-10-23 when the cards moved up so the headline clears the logo again; 737 later that day when the cards became glass resting on the hero bottom, keeping 73px between the hero buttons and the cards); content top-aligned so the headline keeps clear of the logo. */
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{margin-top:-100px !important;zoom:.733}body.nss-ht-strip:is(.home,.page-id-150243) :is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{margin-top:-312px !important;margin-bottom:82px !important}body.nss-ht-strip:is(.home,.page-id-150243) :is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-item--title{white-space:nowrap;font-size:15px !important}:is(.elementor-25,.elementor-150243) .elementor-element-b387229 .pxl-slider--content > .elementor{margin-bottom:7px}}
:is(.elementor-25,.elementor-150243) .elementor-element-b387229{overflow:hidden}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner{padding-top:30px;padding-bottom:28px}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon{margin-bottom:14px}
/* nss-align-1023: hero eyebrow, headline and paragraph left edge = AI-SEO card left edge; buttons stay put (Joe 2026-10-23) */
@media (min-width:1025px){.pxl-slider--content > .elementor-2807 .elementor-element-1831e0d{container-type:inline-size}.elementor-2807 .elementor-element-b0a0d21,.elementor-2807 .elementor-element-82ccdc1{position:relative;left:calc(max(10px, (100cqw - 1380px) / 2) + 1px - max(0px, (100cqw - 1300px) / 2) - 15px)}}
/* Second hero button: thin orange outline, white text on a 60% black fill (was navy, NAVYOFF-1023) */
.elementor-2807 .btn.btn-outline-gray{border:1.5px solid #FF8F1F !important;color:#fff !important;background:rgba(0,0,0,.6) !important}
.elementor-2807 .btn.btn-outline-gray:hover{background:#FF8F1F !important;color:#1C2539 !important}
/* Free Search Visibility Review heading on one line on wide screens (form column is narrower now) */
@media (min-width:1200px){.elementor-element-f33e287 .pxl-item--title{white-space:nowrap;font-size:1.7vw !important}.elementor-element-f33e287 .pxl-heading--inner{max-width:none}}
.elementor-element-cf9038d .elementor-element-207e770 img{box-shadow:0 24px 60px rgba(0,0,0,.35)}
/* What We Help You Do */
.nss-help{max-width:1200px;margin-left:auto;margin-right:auto}
.nss-help-visual img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 30px 70px rgba(28,37,57,.22)}
.nss-help-copy .pxl-heading .pxl-title--divider1,.nss-help-copy .pxl-heading{text-align:left}
.nss-help-list{list-style:none;margin:0;padding:0}
.nss-help-list li{display:flex;gap:16px;align-items:flex-start;padding:14px 0;margin:0;border:0}
.nss-help-list li+li{border-top:1px solid #E9ECF2}
.nss-hl-ico{flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#8CD620;color:#fff;box-shadow:0 6px 14px rgba(120,190,20,.30);display:flex;align-items:center;justify-content:center;margin-top:2px}
.nss-hl-ico:before{content:"";width:6px;height:11px;margin-top:-3px;border-right:2.6px solid #fff;border-bottom:2.6px solid #fff;transform:rotate(45deg)}
.nss-hl-body h3{margin:0 0 4px;font-size:19px;line-height:1.3;font-weight:700;color:#1C2539;letter-spacing:-.1px}
.nss-hl-body p{margin:0;font-size:15.5px;line-height:1.55;color:#5A6175}
@media (max-width:1024px){.nss-help-copy .pxl-heading{text-align:left}}
@media (max-width:767px){.nss-hl-body h3{font-size:17.5px}.nss-help-list li{padding:12px 0}}
/* Web Development portfolio */
.nss-wd-intro{max-width:820px;margin:18px auto 0;text-align:center;color:rgba(255,255,255,.88);font-size:17px;line-height:1.65}
.nss-wd-intro p{margin:0 0 12px}
.nss-wd-intro .nss-wd-sub{color:rgba(255,255,255,.7);font-size:15.5px}
.nss-wd-ctas{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:24px}
a.nss-wd-btn{display:inline-block;padding:15px 30px;border-radius:40px;background:#FF8F1F;color:#1C2539;font-weight:600;font-size:15.5px;line-height:1.2;transition:background .2s,color .2s}
a.nss-wd-btn:hover{background:#fff;color:#1C2539}
a.nss-wd-btn--ghost{background:transparent;border:1.5px solid rgba(255,255,255,.55);color:#fff}
a.nss-wd-btn--ghost:hover{background:#fff;border-color:#fff}
.nss-wd-grid .nss-wd-cap{display:flex;flex-direction:column;gap:2px;padding:14px 4px 6px;background:#fff}
@media (max-width:1024px){.nss-wd-grid .nss-wd-cap{padding:14px 16px 10px;border-radius:0 0 14px 14px;margin-top:-14px;position:relative}}
.nss-wd-cap strong{font-size:18px;color:#1C2539;font-weight:700}
.nss-wd-cap span{font-size:15px;color:#5A6175}
/* Hosting page (148980): space after each checklist */
.page-id-148980 .elementor-widget-icon-list{margin-bottom:28px!important}
/* Footer: Free AI Visibility Report */
.nss-footer-unfix #pxl-footer-elementor{position:relative!important;bottom:auto!important}
.nss-footer-unfix #pxl-main{margin-bottom:0!important}
.nss-fr-title{margin:0 0 6px;color:#fff;font-size:22px;line-height:1.3;font-weight:700}
.nss-fr-form .forminator-ui.forminator-custom-form{margin:0!important}
.nss-fr-form .forminator-label{color:#E4F1FF!important;font-size:14px!important;font-weight:500!important}
.nss-fr-form .forminator-row{margin-bottom:12px!important}
.nss-fr-form .forminator-input{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;border-radius:8px!important}
.nss-fr-form .forminator-input:focus{border-color:#FF8F1F!important}
.nss-fr-form .forminator-button-submit{background:#FF8F1F!important;color:#fff!important;border-radius:40px!important;padding:12px 26px!important;font-weight:600!important}
.nss-fr-form .forminator-button-submit:hover{background:#fff!important;color:#1C2539!important}
.nss-fr-form .forminator-response-message,.nss-fr-form .forminator-error-message{color:#fff}
/* Blue frame around the service cards (Joe 2026-10-22). The cards section (a77eff4) overlaps the hero by 110px on desktop; below that line its
   background is the audit-band blue, so the band continues up both outer sides of the card row and meets the hero along its bottom edge.
   No gap between the cards and the band. Phones and tablets: band touches the last card, no side strips. */
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{margin-bottom:0 !important;padding-bottom:0 !important}
:is(.elementor-25,.elementor-150243) .elementor-element-b2c7f2b{margin-top:0 !important;padding-top:0 !important}
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{background:transparent !important;padding-top:0 !important;padding-bottom:0 !important}}
/* 2026-10-23 Joe: cup undone; blue behind the cards again. Band pulled up to the cards with equal blue above and below the fields (23px each). */
@media (min-width:1025px){body.home .nsa-band{padding-top:23px !important;padding-bottom:23px !important}}
/* Header button: live-site blue, white text (Joe 2026-10-22) */
#pxl-header-elementor .elementor-element-24019ca .btn,#pxl-header-elementor .elementor-element-f23b705 .btn{background-color:#4a7dfd !important;border-color:#4a7dfd !important}
/* What We Help You Do: centered heading and intro across both columns (Joe 2026-10-22) */
.nss-help-head{text-align:center}
.nss-help-head .pxl-heading,.nss-help-head .pxl-heading .pxl-heading--inner{text-align:center;margin-left:auto;margin-right:auto;max-width:none}
.nss-help-head .pxl-text-editor,.nss-help-head .pxl-text-editor p{text-align:center;max-width:940px;margin-left:auto;margin-right:auto}
@media (min-width:1200px){.nss-help-head .pxl-item--title{white-space:nowrap}}
/* Check icons: bright lime of the hero growth-chart line (#8CD620, sampled from h2-slider-chart.webp) with a white check (Joe 2026-10-23) */
/* Our Approach (231115e): text + check rows left, screenshots right; stacked text first on tablet/phone; no card boxes (Joe 2026-10-23) */
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .nss-appr{column-gap:56px !important}:is(.elementor-25,.elementor-150243) .nss-appr > .nss-appr-copy,:is(.elementor-25,.elementor-150243) .nss-appr > .nss-appr-visual{width:calc(50% - 28px) !important}:is(.elementor-25,.elementor-150243) .nss-appr > .nss-appr-visual{justify-content:center}}
@media (max-width:1024px){:is(.elementor-25,.elementor-150243) .nss-appr{row-gap:34px !important}}
.nss-appr-list li{padding:16px 0}
.nss-appr-list li:first-child{padding-top:4px}
.nss-appr-list .nss-hl-body h3{font-size:22px;line-height:1.3;margin-bottom:6px}
.nss-appr-list .nss-hl-body p{font-size:16px;line-height:26px}
@media (max-width:767px){.nss-appr-list .nss-hl-body h3{font-size:20px}:is(.elementor-25,.elementor-150243) .nss-appr{padding-left:16px !important;padding-right:16px !important}}
/* Technology section (87662f9) centered in one column, no orange card, screenshot rows 2x2, button last (Joe 2026-10-23) */
:is(.elementor-25,.elementor-150243) .elementor-element-87662f9>.e-con-inner{flex-direction:column !important;align-items:center !important;flex-wrap:nowrap !important}
:is(.elementor-25,.elementor-150243) .elementor-element-6888ec1,:is(.elementor-25,.elementor-150243) .elementor-element-1da0dc1{display:contents !important}
:is(.elementor-25,.elementor-150243) .elementor-element-3fca3e4{order:1;width:100% !important;max-width:900px;text-align:center}
:is(.elementor-25,.elementor-150243) .elementor-element-3fca3e4 .pxl-heading,:is(.elementor-25,.elementor-150243) .elementor-element-3fca3e4 .pxl-heading--inner,:is(.elementor-25,.elementor-150243) .elementor-element-3fca3e4 .pxl-item--subtitle,:is(.elementor-25,.elementor-150243) .elementor-element-3fca3e4 .pxl-item--title{text-align:center !important;justify-content:center !important;margin-left:auto !important;margin-right:auto !important}
:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0{order:2;width:100% !important;max-width:900px;text-align:center}
:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0 .pxl-text-editor,:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0 p{text-align:center !important}
:is(.elementor-25,.elementor-150243) .elementor-element-bb8ef50{order:3;width:100% !important;max-width:1140px;border:0 !important;box-shadow:none !important;background:transparent !important;padding:0 !important;margin:10px auto 0 !important}
:is(.elementor-25,.elementor-150243) .elementor-element-08fbd8e{order:4;margin:30px auto 0 !important;align-self:center}
/* Technology screenshot rows (c7e5a31, replaced the f09c440 check list): small SEOScanPRO screenshot + title + one line, 2x2 on desktop, 1 column below (Joe 2026-10-23) */
:is(.elementor-25,.elementor-150243) .elementor-element-c7e5a31{width:100% !important}
.nss-tech-shots{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:44px;text-align:left}
.nss-tech-shots li{display:flex;align-items:center;gap:22px;padding:22px 0;margin:0;border-bottom:1px solid #E3E7EF}
.nss-tech-shots li:nth-last-child(-n+2){border-bottom:0}
.nss-tech-shots img.nss-ts-img{flex:0 0 240px;width:240px;max-width:none;height:150px !important;object-fit:cover;object-position:left top;border-radius:12px !important;border:1px solid #E3E7EF !important;box-shadow:0 8px 20px rgba(28,37,57,.10) !important;display:block;background:#fff}
.nss-ts-body{min-width:0}
.nss-ts-body h3{margin:0 0 6px;font-size:20px;line-height:1.3;font-weight:700;color:#1C2539;letter-spacing:-.1px}
.nss-ts-body p{margin:0;font-size:15.5px;line-height:1.55;color:#5A6175}
@media (max-width:1024px){.nss-tech-shots{grid-template-columns:1fr;max-width:680px;margin:0 auto}.nss-tech-shots li:nth-last-child(2){border-bottom:1px solid #E3E7EF}}
@media (max-width:767px){.nss-tech-shots li{gap:16px;padding:16px 0}.nss-tech-shots img.nss-ts-img{flex-basis:128px;width:128px;height:80px !important;border-radius:10px !important}.nss-ts-body h3{font-size:17.5px;margin-bottom:4px}.nss-ts-body p{font-size:14.5px;line-height:1.5}}
/* Technology paragraphs (6a421b0): about 70 characters per line (58ch measures about 70 characters in this font), centered, desktop and tablet; phones unchanged (Joe 2026-10-23) */
@media (min-width:768px){:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0 p{max-width:58ch;margin-left:auto !important;margin-right:auto !important}}
/* CARDGLASS-1023: service cards as dark glass over the hero with thin white lines like the Avelon reference (1px rgba(255,255,255,.4), square corners), touching, single 1px line between neighbours, white icon and title. Desktop: card bottoms sit exactly on the hero bottom (fixed 196px card height = -196px pull-up), the blue band starts there. Tablet/phone: cards stack below the hero on a navy panel (Joe 2026-10-23) */
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{--gap:0px 0px;--row-gap:0px;--column-gap:0px}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner{gap:0 !important;row-gap:0 !important;column-gap:0 !important}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .elementor-widget-pxl_icon_box,:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .elementor-widget-pxl_icon_box>.elementor-widget-container{margin:0 !important;padding:0 !important;border:0 !important;height:100%}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3{margin:0 !important;height:100%}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner{height:100%;box-sizing:border-box;background:rgba(0,0,0,.5) !important;border:1px solid rgba(255,255,255,.4) !important;border-radius:0 !important;box-shadow:none !important;transition:background-color .2s linear}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner:hover{background:rgba(0,0,0,.7) !important;box-shadow:none !important;transform:none !important}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon{background:transparent !important;box-shadow:none !important;border:0 !important;color:#fff !important}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon i,:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon i:before,:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner:hover .pxl-item--icon i{color:#fff !important}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon svg,:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon svg *{fill:#fff !important;color:#fff !important}
:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--title,:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner:hover .pxl-item--title{color:#fff !important}
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner{padding-top:0 !important;padding-bottom:0 !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner{height:100px}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:not(:first-child) .pxl-item--inner{border-left:0 !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:first-child .pxl-icon-box3{margin-left:1px !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:last-child .pxl-icon-box3{margin-right:1px !important}}
@media (max-width:1024px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{margin-top:0 !important;background:#000 !important;padding-top:20px !important;padding-bottom:20px !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner{min-height:196px !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con{width:33.3333% !important;--width:33.3333%}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:nth-child(3n+2) .pxl-item--inner,:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:nth-child(3n) .pxl-item--inner{border-left:0 !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:nth-child(n+4) .pxl-item--inner{border-top:0 !important}}
@media (max-width:767px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con{width:50% !important;--width:50%}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:nth-child(n) .pxl-item--inner{border-left:1px solid rgba(255,255,255,.4) !important;border-top:1px solid rgba(255,255,255,.4) !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:nth-child(2n) .pxl-item--inner{border-left:0 !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4>.e-con-inner>.e-con:nth-child(n+3) .pxl-item--inner{border-top:0 !important}}
/* CARDGLASS-1023b: desktop glass strip runs edge to edge of the browser at the card row height; the section itself is the 50% glass with 1px top and bottom lines (inset shadows, so the height stays 196px); the cards keep their positions and vertical 1px dividers, go transparent and drop their own top/bottom borders so nothing doubles (Joe 2026-10-23) */
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{background:rgba(0,0,0,.5) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(255,255,255,.4) !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner{background:transparent !important;border-top:0 !important;border-bottom:0 !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner:hover{background:rgba(0,0,0,.4) !important}}
/* CARDGLASS-1023c: desktop cards 100px tall (were 196px): icon left of the title on one centered row; section pull-up -100px keeps the card bottoms on the hero bottom; hero height unchanged (Joe 2026-10-23) */
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--inner{display:flex !important;flex-direction:row;align-items:center;justify-content:center;gap:12px;padding:0 14px !important;min-height:0 !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon{margin:0 !important;width:auto !important;height:auto !important;min-width:0 !important;line-height:1 !important;flex:0 0 auto;display:flex;align-items:center}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon i{font-size:34px !important;line-height:1 !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon svg,:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--icon img{width:34px !important;height:34px !important}:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4 .pxl-icon-box3 .pxl-item--title{margin:0 !important;text-align:left !important;max-height:none !important;line-height:1.3 !important}}
/* TECHSPLIT-1023: Technology paragraphs (6a421b0) split into two columns on desktop, paragraph 1 left and paragraph 2 right, same 1140px width and 44px gutter as the screenshot grid below, left-aligned (replaces the 58ch centered measure on desktop); tablet/phone stay stacked (Joe 2026-10-23) */
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0{max-width:1140px !important}:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0 .pxl-item--inner{display:grid;grid-template-columns:1fr 1fr;column-gap:44px;align-items:start}:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0 .pxl-text-editor,:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0 p{text-align:left !important}:is(.elementor-25,.elementor-150243) .elementor-element-6a421b0 p{max-width:none !important;margin:0 !important}}
/* NEUTRALTINT-1023: the navy/purple tint in the Web Development Work section (5f55982, about-section2.jpg) and the Free Report column (f8cfe3f, h2-bg-col2.jpg) is baked into the photos; render them as neutral gray (luminosity blend over gray) darkened with 45% near-black (Joe 2026-10-23) */
:is(.elementor-25,.elementor-150243) .elementor-element-5f55982,:is(.elementor-25,.elementor-150243) .elementor-element-f8cfe3f>.elementor-widget-wrap{background-color:#808080 !important;background-blend-mode:luminosity !important;box-shadow:inset 0 0 0 4000px rgba(17,17,17,.45) !important}:is(.elementor-25,.elementor-150243) .elementor-element-207e770>.elementor-widget-wrap{background-color:#111 !important}
/* AUDITBAND-1023: homepage Free Instant SEO Audit band moved up into the hero: card strip pulled up by the band height (100 + 94 = 194px), band directly under it with its bottom on the hero bottom, 50% black glass full width, no vertical lines; heading, fields and button unchanged. Tablet/phone: band continues the card panel below the hero (fields stack at 860px and below); panel and band black, MOBILEBLACK-1023. Other pages keep the blue band (Joe 2026-10-23) */
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-a77eff4{margin-top:-194px !important}:is(.elementor-25,.elementor-150243) .elementor-element-b2c7f2b{position:relative;z-index:2;background:transparent !important}body.home :is(.elementor-25,.elementor-150243) .elementor-element-b2c7f2b .nsa-band{background:rgba(0,0,0,.5) !important}body.home :is(.elementor-25,.elementor-150243) .nsa-band .nsa-band-inner{position:relative}body.home :is(.elementor-25,.elementor-150243) .nsa-band .nsa-msg{position:absolute;left:22px;right:22px;top:100%;margin:3px 0 0 !important;font-size:13px;line-height:16px}}
@media (max-width:1024px){body.home :is(.elementor-25,.elementor-150243) .elementor-element-b2c7f2b .nsa-band{background:#000 !important;padding-top:4px;padding-bottom:28px}}
/* TESTIMALIGN-1023: "CLIENT TESTIMONIALS" starts level with the top of the review cards (Joe 2026-10-23); the heading widget had 95px top padding */
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-d9be965>.elementor-widget-container{padding-top:0 !important}}
/* APPROACHGLASS-1023: Our Approach (231115e) on the dark glass look: hero space image (seo-company-long-island.webp, cover) under 50% black, white heading, light body text, lime checks and orange eyebrow kept. Screenshots: the 10px blue frame baked into the four image files is cropped off in CSS (102.16% scale, -1.08% offset, 1111/897 window); they sit in one grid panel of 1px rgba(255,255,255,.4) lines like the Avelon reference: large shot on top, three small shots touching below it sharing its lines, 12/10px dark gap between line and picture. Desktop: the panel's vertical edges run to the section top and bottom; the top line and the bottom line run to both browser edges; the line between large and small shots runs right to the browser edge (left of the panel it would strike through the copy). Tablet/phone: lines stop at the panel (Joe 2026-10-23) */
:is(.elementor-25,.elementor-150243) .elementor-element-231115e{position:relative;overflow:hidden;background:linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.5)),url(/wp-content/uploads/2026/02/seo-company-long-island.webp) center/cover no-repeat #000 !important}
:is(.elementor-25,.elementor-150243) .nss-appr .pxl-item--title{color:#fff !important}
:is(.elementor-25,.elementor-150243) .nss-appr-list .nss-hl-body h3{color:#fff}
:is(.elementor-25,.elementor-150243) .nss-appr-list .nss-hl-body p{color:rgba(255,255,255,.82)}
:is(.elementor-25,.elementor-150243) .nss-appr-list li+li{border-top-color:rgba(255,255,255,.18)}
:is(.elementor-25,.elementor-150243) .nss-appr-list .nss-hl-ico{box-shadow:0 4px 12px rgba(0,0,0,.35)}
:is(.elementor-25,.elementor-150243) .nss-appr-visual{--gap:0px 0px;--row-gap:0px;--column-gap:0px;gap:0 !important;position:relative;z-index:1}
:is(.elementor-25,.elementor-150243) .nss-appr-visual .elementor-widget-image{margin:0 !important;line-height:0}
:is(.elementor-25,.elementor-150243) .nss-appr-visual .elementor-widget-image a{display:block;overflow:hidden;aspect-ratio:1111/897;line-height:0}
:is(.elementor-25,.elementor-150243) .nss-appr-visual .elementor-widget-image img{display:block;width:102.1602% !important;max-width:none !important;height:auto !important;margin:-1.0801% 0 0 -1.0801% !important;border:0 !important;border-radius:0 !important;box-shadow:none !important}
:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c{position:relative;padding:12px !important}
:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c>.elementor-widget-image{width:100%}
:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:before,:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:after,:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4:before,:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4:after{content:"";position:absolute;pointer-events:none;box-sizing:border-box;width:auto;max-width:none}
:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:before{top:0;height:1px;left:0;right:0;background:rgba(255,255,255,.4)}
:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:after{top:0;bottom:-2000px;left:0;right:0;border-left:1px solid rgba(255,255,255,.4);border-right:1px solid rgba(255,255,255,.4)}
:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4{position:relative;padding:0 !important;gap:0 !important;--gap:0px 0px;--column-gap:0px;flex-wrap:nowrap !important}
:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4:before{top:0;height:1px;left:0;right:0;background:rgba(255,255,255,.4)}
:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4:after{bottom:0;height:1px;left:0;right:0;background:rgba(255,255,255,.4)}
:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4>.elementor-widget-image{flex:1 1 0 !important;width:auto !important;max-width:none !important;min-width:0;padding:10px !important;box-sizing:border-box}
:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4>.elementor-widget-image+.elementor-widget-image{border-left:1px solid rgba(255,255,255,.4)}
@media (min-width:1025px){:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:after{top:-2000px}:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:before,:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4:before,:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4:after{right:-100vw}}
/* APPROACHGLASS-1023b: the top and bottom lines also run left to the browser edge only from 1280px up; narrower desktops wrap the copy taller than the panel and the lines would strike through it (Joe 2026-10-23) */
@media (min-width:1280px){:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:before,:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4:after{left:-100vw}}
@media (max-width:1024px){:is(.elementor-25,.elementor-150243) .elementor-element-231115e{background:linear-gradient(rgba(0,0,0,.62),rgba(0,0,0,.62)),url(/wp-content/uploads/2026/02/seo-company-long-island.webp) center/cover no-repeat #000 !important}:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c:after{display:none}:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c,:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4{border-left:1px solid rgba(255,255,255,.4) !important;border-right:1px solid rgba(255,255,255,.4) !important}:is(.elementor-25,.elementor-150243) .nss-appr-visual{max-width:700px;width:100%;margin-left:auto;margin-right:auto}}
@media (max-width:767px){:is(.elementor-25,.elementor-150243) .elementor-element-3ec825c{padding:8px !important}:is(.elementor-25,.elementor-150243) .elementor-element-7a73cd4>.elementor-widget-image{padding:6px !important}}
/* LOCALRANKGLASS-1023: Our Google Local Rankings (b7a7d29, homepage only) on the same dark glass as Our Approach (APPROACHGLASS-1023): hero space image under 50% black (62% at 1024px and below), white title, light intro. The twelve map cards merge into one grid of single 1px rgba(255,255,255,.4) lines (grid draws top/left, each card right/bottom), 12px dark gap around each map, captions unchanged. From 1280px up the grid's top and bottom lines continue to both browser edges and its left/right lines to the section top and bottom (masked pseudo extensions, so no line is drawn twice); title and intro inset 28px inside the side lines. Below 1280px the lines stop at the grid. Ranking pages keep NAVYOFF cards (Joe 2026-10-23) */
/* LOCALRANKGLASS-1023b: Joe asked for no image behind this section, only rgba(0,0,0,.5) at every width (renders as mid gray over the white page) (Joe 2026-10-23) */
/* LOCALRANKGLASS-1023d: solid black (Joe dropped the honeycomb image; media 150078 left unused) (Joe 2026-10-23) */
:is(.elementor-25,.elementor-150243) .elementor-element-b7a7d29{position:relative;overflow:hidden;background:#000 !important}
:is(.elementor-25,.elementor-150243) .nss-lr-title{color:#fff !important}
:is(.elementor-25,.elementor-150243) .nss-lr-intro{color:rgba(255,255,255,.82) !important}
:is(.elementor-25,.elementor-150243) .nss-lr-grid{gap:0 !important;position:relative;border-top:1px solid rgba(255,255,255,.4);border-left:1px solid rgba(255,255,255,.4)}
:is(.elementor-25,.elementor-150243) .nss-lr-grid .nss-lr-item{background:rgba(0,0,0,.35) !important;border:0 !important;border-right:1px solid rgba(255,255,255,.4) !important;border-bottom:1px solid rgba(255,255,255,.4) !important;border-radius:0 !important;box-shadow:none !important;padding:12px 12px 0;overflow:visible}
:is(.elementor-25,.elementor-150243) .nss-lr-grid .nss-lr-cap{padding:12px 2px 14px}
@media (min-width:1280px){
:is(.elementor-25,.elementor-150243) .nss-lr-title,:is(.elementor-25,.elementor-150243) .nss-lr-intro{padding-left:28px;padding-right:28px}
:is(.elementor-25,.elementor-150243) .nss-lr-grid:before,:is(.elementor-25,.elementor-150243) .nss-lr-grid:after{content:"";position:absolute;pointer-events:none}
:is(.elementor-25,.elementor-150243) .nss-lr-grid:before{left:-100vw;right:-100vw;top:-1px;bottom:0;background:linear-gradient(rgba(255,255,255,.4),rgba(255,255,255,.4)) top/100% 1px no-repeat,linear-gradient(rgba(255,255,255,.4),rgba(255,255,255,.4)) bottom/100% 1px no-repeat;-webkit-mask:linear-gradient(90deg,#000 calc(100vw - 1px),transparent calc(100vw - 1px),transparent calc(100% - 100vw),#000 calc(100% - 100vw));mask:linear-gradient(90deg,#000 calc(100vw - 1px),transparent calc(100vw - 1px),transparent calc(100% - 100vw),#000 calc(100% - 100vw))}
:is(.elementor-25,.elementor-150243) .nss-lr-grid:after{left:-1px;right:0;top:-3000px;bottom:-3000px;background:linear-gradient(rgba(255,255,255,.4),rgba(255,255,255,.4)) left/1px 100% no-repeat,linear-gradient(rgba(255,255,255,.4),rgba(255,255,255,.4)) right/1px 100% no-repeat;-webkit-mask:linear-gradient(#000 calc(3000px - 1px),transparent calc(3000px - 1px),transparent calc(100% - 3000px),#000 calc(100% - 3000px));mask:linear-gradient(#000 calc(3000px - 1px),transparent calc(3000px - 1px),transparent calc(100% - 3000px),#000 calc(100% - 3000px))}
}

@media (max-width:767px){:is(.elementor-25,.elementor-150243) .nss-lr-grid .nss-lr-item{padding:8px 8px 0}}
/* LOCALRANKCENTER-1023: "Our Google Local Rankings" title and intro centered (Joe 2026-10-23) */
:is(.elementor-25,.elementor-150243) .nss-lr-title,:is(.elementor-25,.elementor-150243) .nss-lr-intro{text-align:center !important;margin-left:auto !important;margin-right:auto !important}
:is(.elementor-25,.elementor-150243) .nss-lr-intro{max-width:900px}
