:root{--black:#000;--dark:#313135;--orange:#F95437;--white:#fff;--bg:#000;--bg-soft:#080809;--surface:#0B0B0D;--surface-2:#111114;--text:#fff;--text-soft:rgba(255,255,255,.72);--text-muted:rgba(255,255,255,.56);--line:rgba(255,255,255,.12);--line-soft:rgba(255,255,255,.08);--shadow:0 28px 80px rgba(0,0,0,.32);--radius-xl:34px;--radius-lg:28px;--radius-md:20px;--max:1180px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg);line-height:1.55;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font-family:inherit}.container{width:min(100% - 40px,var(--max));margin-inline:auto}.section{padding:104px 0}.section-tight{padding:72px 0}
.site-header{position:sticky;top:0;z-index:100;background:rgba(0,0,0,.78);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(18px)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;min-width:142px;font-weight:900;letter-spacing:-.055em}.brand img{width:154px;height:auto}.brand-fallback{display:none;align-items:center;gap:10px}.brand-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--orange),#ff876f);position:relative}.brand-mark:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--black);right:6px;bottom:6px}
.nav-links{display:flex;align-items:center;justify-content:center;gap:22px;color:var(--text-soft);font-size:14px;font-weight:700}.nav-links a{position:relative;transition:color .18s ease}.nav-links a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;border-radius:999px;background:var(--orange);transition:width .18s ease}.nav-links a:hover,.nav-links a.active{color:var(--text)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 22px;border-radius:999px;border:1px solid transparent;font-size:14px;font-weight:900;line-height:1;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--orange);color:#fff;box-shadow:0 18px 35px rgba(249,84,55,.23)}.btn-primary:hover{background:#ff6a50}.btn-secondary{color:var(--text);border-color:var(--line);background:rgba(255,255,255,.055)}.btn-secondary:hover{border-color:rgba(249,84,55,.6);color:var(--orange)}.btn-dark{background:#000;color:#fff}.btn-dark:hover{background:var(--dark)}
.theme-toggle,.mobile-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.055);color:var(--text);cursor:pointer;transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease}.theme-toggle{gap:9px;padding:10px 14px;font-size:13px;font-weight:900}.theme-toggle:hover,.mobile-toggle:hover{transform:translateY(-2px);border-color:rgba(249,84,55,.5);color:var(--orange)}.theme-toggle-icon{position:relative;width:18px;height:18px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(249,84,55,.12)}.theme-toggle-icon:after{content:"";position:absolute;width:8px;height:8px;right:-1px;top:1px;border-radius:50%;background:var(--bg);transition:opacity .18s ease,transform .18s ease}.mobile-toggle{display:none;width:46px;height:46px;padding:0;border-radius:14px}.mobile-toggle span{display:block;width:18px;height:2px;margin:5px auto;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}.mobile-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-toggle.active span:nth-child(2){opacity:0}.mobile-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.eyebrow:before{content:"";width:26px;height:2px;border-radius:999px;background:var(--orange)}.section-heading{max-width:860px;font-size:clamp(2.2rem,5vw,4.5rem);line-height:.98;letter-spacing:-.068em;font-weight:900}.section-copy{max-width:720px;margin-top:22px;color:var(--text-soft);font-size:18px}.accent{color:var(--orange)}
.hero-shell{position:relative;background:radial-gradient(circle at top right,rgba(249,84,55,.16),transparent 30rem),radial-gradient(circle at 10% 10%,rgba(255,255,255,.08),transparent 28rem),var(--bg);overflow:hidden}.hero-shell:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#000,transparent 78%);opacity:.52}.home-hero{position:relative;z-index:1;min-height:calc(100vh - 82px);display:grid;align-items:center;padding:98px 0 84px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:58px;align-items:center}.home-hero h1{max-width:760px;font-size:clamp(3.25rem,8.6vw,7.4rem);line-height:.9;letter-spacing:-.085em;font-weight:900}.hero-subtitle{max-width:680px;margin-top:28px;color:var(--text-soft);font-size:clamp(1.05rem,1.7vw,1.28rem)}.hero-support{max-width:630px;margin-top:18px;color:var(--text-muted);font-size:16px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.micro-note{display:flex;align-items:center;gap:10px;margin-top:18px;color:var(--text-muted);font-size:13px}.micro-note:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px rgba(249,84,55,.12)}
.hero-visual{position:relative;min-height:540px}.signal-card{position:absolute;inset:30px 0 0 0;padding:26px;border:1px solid var(--line);border-radius:var(--radius-xl);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025)),rgba(10,10,12,.92);box-shadow:var(--shadow);overflow:hidden}.signal-card:before{content:"";position:absolute;width:360px;height:360px;right:-130px;top:-120px;border-radius:50%;background:rgba(249,84,55,.18);filter:blur(10px)}.signal-top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line-soft)}.signal-title p{color:var(--text-muted);font-size:13px;margin-bottom:3px}.signal-title strong{font-size:21px;letter-spacing:-.04em}.status-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:rgba(249,84,55,.12);color:#ffb5a8;border:1px solid rgba(249,84,55,.2);font-size:12px;font-weight:900;white-space:nowrap}.status-pill:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange)}.search-map{position:relative;margin-top:26px;height:270px;border-radius:28px;background:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px),var(--bg-soft);background-size:34px 34px;border:1px solid var(--line-soft);overflow:hidden}.map-node{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 8px rgba(249,84,55,.1),0 0 35px rgba(249,84,55,.7)}.map-node:nth-child(1){left:17%;top:34%}.map-node:nth-child(2){left:48%;top:22%;width:12px;height:12px}.map-node:nth-child(3){left:73%;top:56%;width:14px;height:14px}.map-node:nth-child(4){left:36%;top:72%;width:10px;height:10px}.map-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(249,84,55,.75),transparent);transform-origin:left center;opacity:.72}.line-1{width:180px;left:20%;top:38%;transform:rotate(-12deg)}.line-2{width:170px;left:49%;top:27%;transform:rotate(28deg)}.line-3{width:150px;left:39%;top:70%;transform:rotate(-30deg)}.floating-box{position:absolute;display:grid;gap:5px;padding:14px 15px;min-width:158px;border-radius:18px;background:rgba(255,255,255,.93);color:#000;box-shadow:0 18px 50px rgba(0,0,0,.26)}.floating-box small{color:rgba(49,49,53,.62);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.floating-box strong{font-size:15px;letter-spacing:-.04em}.box-local{right:22px;top:94px}.box-audit{left:24px;bottom:28px}.signal-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px;position:relative}.signal-item{padding:16px;border:1px solid var(--line-soft);border-radius:20px;background:rgba(255,255,255,.045)}.signal-item span{display:block;color:var(--text-muted);font-size:12px;margin-bottom:4px}.signal-item strong{font-size:14px}
.positioning{position:relative;z-index:2;margin-top:-34px;padding-bottom:72px}.positioning-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:rgba(17,17,20,.82);backdrop-filter:blur(20px);overflow:hidden;box-shadow:var(--shadow)}.position-card{padding:26px;min-height:178px;border-right:1px solid var(--line-soft)}.position-card:last-child{border-right:0}.icon-chip{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-bottom:18px;border-radius:14px;background:rgba(249,84,55,.12);color:var(--orange)}.position-card h3{font-size:16px;line-height:1.22;letter-spacing:-.035em;margin-bottom:10px}.position-card p{color:var(--text-muted);font-size:14px}
.light-block{background:var(--bg);color:var(--text)}.soft-block{background:var(--bg-soft);color:var(--text);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.dark-band{background:linear-gradient(180deg,#080809,#000);color:#fff;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.services-intro,.split-header,.audience-header{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:46px}.services-intro .section-copy,.split-header .section-copy,.audience-header .section-copy{max-width:500px;margin-top:0}.pillar-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:22px;align-items:stretch}.pillar-card{position:relative;min-height:620px;padding:34px;border-radius:var(--radius-lg);overflow:hidden}.pillar-primary{background:radial-gradient(circle at top right,rgba(249,84,55,.22),transparent 22rem),#000;color:#fff;box-shadow:var(--shadow)}.pillar-secondary{border:1px solid var(--line-soft);background:var(--surface-2);color:var(--text)}.pillar-label{display:inline-flex;margin-bottom:26px;padding:8px 11px;border-radius:999px;background:rgba(249,84,55,.12);color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.pillar-card h3{font-size:clamp(2.2rem,4vw,4.3rem);line-height:.95;letter-spacing:-.07em;margin-bottom:20px}.pillar-lead{font-size:20px;font-weight:900;letter-spacing:-.04em;margin-bottom:14px}.pillar-desc{color:rgba(255,255,255,.66);max-width:560px;font-size:16px;margin-bottom:28px}.pillar-secondary .pillar-desc{color:var(--text-soft)}.service-list{display:grid;gap:12px;margin:28px 0 34px;list-style:none}.service-list li{display:flex;align-items:flex-start;gap:12px;color:rgba(255,255,255,.78);font-size:15px}.pillar-secondary .service-list li{color:var(--text-soft)}.service-list li:before,.cta-list li:before{content:"";flex:0 0 auto;width:18px;height:18px;margin-top:2px;border-radius:50%;background:radial-gradient(circle at center,var(--orange) 0 32%,transparent 35%),rgba(249,84,55,.13)}
.process-header{display:grid;grid-template-columns:.95fr 1.05fr;gap:50px;align-items:end;margin-bottom:48px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process-card{position:relative;padding:26px;min-height:284px;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--line-soft);overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.04)}.process-number{display:block;margin-bottom:52px;color:var(--orange);font-size:13px;font-weight:900;letter-spacing:.12em}.process-card h3{font-size:20px;line-height:1.12;letter-spacing:-.04em;margin-bottom:12px}.process-card p{color:var(--text-muted);font-size:14px}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.audience-card{position:relative;min-height:226px;padding:25px;border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 14px 40px rgba(0,0,0,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.audience-card:hover{transform:translateY(-4px);border-color:rgba(249,84,55,.36);box-shadow:var(--shadow)}.audience-card:after{content:"";position:absolute;inset-inline:25px;bottom:0;height:3px;border-radius:999px 999px 0 0;background:var(--orange);transform:scaleX(.22);transform-origin:left center;transition:transform .18s ease}.audience-card:hover:after{transform:scaleX(1)}.audience-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:22px;border-radius:16px;color:var(--orange);background:rgba(249,84,55,.1)}.audience-card h3{font-size:19px;letter-spacing:-.045em;margin-bottom:10px}.audience-card p{color:var(--text-soft);font-size:14px}
.inner-hero{position:relative;z-index:1;padding:112px 0 86px}.inner-hero-grid{display:grid;grid-template-columns:1fr .72fr;gap:54px;align-items:end}.inner-hero h1{max-width:850px;font-size:clamp(3rem,7vw,6.8rem);line-height:.9;letter-spacing:-.085em;font-weight:900}.inner-hero-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:rgba(255,255,255,.055);padding:26px;box-shadow:var(--shadow)}.inner-hero-card p{color:var(--text-soft);margin-bottom:18px}.mini-metrics{display:grid;gap:10px;margin-top:18px}.mini-metric{display:flex;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid var(--line-soft)}.mini-metric span{color:var(--text-muted);font-size:13px}.mini-metric strong{color:var(--orange);font-size:13px}
.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px;align-items:stretch}.story-panel{padding:34px;border-radius:var(--radius-lg);border:1px solid var(--line-soft);background:var(--surface);box-shadow:var(--shadow)}.story-panel h2,.story-panel h3{font-size:clamp(2rem,4vw,3.6rem);line-height:.98;letter-spacing:-.065em;margin-bottom:22px}.story-panel p{color:var(--text-soft);margin-bottom:16px}.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}.principle-card{padding:24px;border-radius:var(--radius-md);border:1px solid var(--line-soft);background:var(--surface-2)}.principle-card span{display:inline-flex;color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.12em;margin-bottom:36px}.principle-card h3{font-size:20px;letter-spacing:-.04em;margin-bottom:10px}.principle-card p{color:var(--text-soft);font-size:14px}
.accordion-shell{display:grid;grid-template-columns:.45fr 1fr;gap:42px;align-items:start}.accordion-list{border-top:1px solid var(--line)}.accordion-item{border-bottom:1px solid var(--line)}.accordion-button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.accordion-button strong{font-size:clamp(1.6rem,4vw,3rem);line-height:1;letter-spacing:-.06em;text-transform:uppercase}.accordion-button span{flex:0 0 auto;width:30px;height:30px;display:inline-grid;place-items:center;border-radius:50%;border:1px solid var(--line);color:var(--orange);font-size:22px}.accordion-content{max-height:0;overflow:hidden;transition:max-height .28s ease}.accordion-content p{color:var(--text-soft);max-width:760px;padding:0 0 22px}.accordion-item.open .accordion-content{max-height:180px}.accordion-item.open .accordion-button span{background:var(--orange);color:#fff}
.service-mosaic{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.mosaic-card{min-height:330px;border-radius:24px;border:1px solid var(--line-soft);overflow:hidden;background:var(--surface);position:relative}.mosaic-copy{padding:28px;display:flex;min-height:330px;flex-direction:column;justify-content:space-between}.mosaic-copy h3{font-size:clamp(1.75rem,3vw,3rem);line-height:.95;letter-spacing:-.065em;margin-bottom:14px}.mosaic-copy p{color:var(--text-soft)}.mosaic-dark{background:#000;color:#fff}.mosaic-dark p{color:rgba(255,255,255,.68)}.mosaic-visual{min-height:330px;background:radial-gradient(circle at 70% 30%,rgba(249,84,55,.35),transparent 16rem),linear-gradient(135deg,var(--surface-2),var(--bg));position:relative}.mosaic-visual:before{content:"";position:absolute;inset:28px;border-radius:22px;border:1px solid var(--line);background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:32px 32px}.mosaic-visual:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:var(--orange);right:50px;bottom:50px;box-shadow:0 0 0 28px rgba(249,84,55,.12)}
.check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 26px}.check-card{position:relative;min-height:218px;padding:24px 20px 24px 0;border-top:1px solid var(--line)}.check-card:before{content:"✓";position:absolute;top:3px;right:8px;color:var(--orange);font-size:72px;line-height:1;font-weight:900;transform:rotate(-12deg);opacity:.9}.check-card h3{position:relative;font-size:19px;letter-spacing:-.04em;margin-bottom:12px;max-width:210px}.check-card p{position:relative;color:var(--text-soft);font-size:14px}.tools-strip{border:1px solid var(--line-soft);border-radius:var(--radius-lg);padding:30px;background:var(--surface);overflow:hidden}.tools-strip h2{font-size:clamp(2rem,4vw,3.4rem);line-height:.98;letter-spacing:-.065em;margin-bottom:10px}.tools-strip p{color:var(--text-soft);max-width:840px}.tool-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.tool-badge{padding:12px 14px;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-2);color:var(--text-soft);font-size:13px;font-weight:800}.tool-badge.highlight{color:var(--orange);background:rgba(249,84,55,.11);border-color:rgba(249,84,55,.28)}
.solution-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:18px;align-items:stretch}.solution-card{min-height:340px;border-radius:var(--radius-lg);border:1px solid var(--line-soft);background:var(--surface);padding:30px;overflow:hidden;position:relative}.solution-card.lead{min-height:430px;background:radial-gradient(circle at 85% 20%,rgba(249,84,55,.24),transparent 22rem),#000;color:#fff}.solution-card.lead p{color:rgba(255,255,255,.72)}.solution-card h3{font-size:clamp(2rem,4vw,3.8rem);line-height:.95;letter-spacing:-.065em;margin-bottom:18px}.solution-card p{color:var(--text-soft);margin-bottom:20px}.pain-solve{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.pain-solve div{padding:18px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055)}.pain-solve strong{display:block;color:var(--orange);font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.pain-solve ul{list-style:none;display:grid;gap:8px;color:inherit;font-size:14px}.industry-deck{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.industry-card{min-height:230px;border-radius:22px;padding:20px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.82)),radial-gradient(circle at top right,rgba(249,84,55,.45),transparent 11rem),#16161a;overflow:hidden}.industry-card h3{font-size:24px;line-height:1;letter-spacing:-.055em}.industry-card span{align-self:flex-end;width:34px;height:34px;border-radius:50%;background:#fff;color:#000;display:grid;place-items:center;font-weight:900}.selector-card{margin-top:40px;padding:28px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line-soft)}.selector-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.selector-top select{min-height:48px;min-width:min(100%,320px);border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);padding:0 18px;outline:0}.industry-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.industry-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border:1px solid var(--line-soft);border-radius:16px;background:var(--surface-2);color:var(--text-soft);font-size:14px;font-weight:750;transition:color .18s ease,border-color .18s ease,transform .18s ease}.industry-list a:hover{color:var(--orange);border-color:rgba(249,84,55,.35);transform:translateY(-2px)}
.tabs{display:inline-flex;gap:8px;padding:6px;border-radius:999px;border:1px solid var(--line-soft);background:var(--surface);margin-bottom:34px}.tab-btn{border:0;border-radius:999px;padding:12px 18px;cursor:pointer;color:var(--text-soft);background:transparent;font-weight:900}.tab-btn.active{background:var(--orange);color:#fff}.tab-panel{display:none}.tab-panel.active{display:block}.article-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.article-card{min-height:330px;padding:24px;border-radius:var(--radius-md);border:1px solid var(--line-soft);background:var(--surface);display:flex;flex-direction:column;justify-content:space-between}.article-card .tag{color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.article-card h3{font-size:24px;line-height:1.02;letter-spacing:-.055em;margin-top:28px}.article-card p{color:var(--text-soft);font-size:14px;margin-top:14px}.article-card a{color:var(--orange);font-weight:900;margin-top:24px}.coming-soon{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:stretch}.soon-card{padding:34px;border-radius:var(--radius-lg);border:1px solid var(--line-soft);background:var(--surface)}.soon-card.dark{background:#000;color:#fff}.soon-card h3{font-size:clamp(2rem,5vw,4rem);line-height:.95;letter-spacing:-.065em;margin-bottom:18px}.soon-card p{color:var(--text-soft)}.soon-card.dark p{color:rgba(255,255,255,.68)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.faq-col{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-question{width:100%;border:0;background:transparent;color:var(--text);display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:left;padding:18px 0;font-weight:900;cursor:pointer}.faq-question span{width:24px;height:24px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--orange)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .24s ease}.faq-answer p{color:var(--text-soft);padding-bottom:18px;font-size:14px}.faq-item.open .faq-answer{max-height:180px}.cta-section{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 20%,rgba(249,84,55,.18),transparent 28rem),var(--bg)}.cta-list{display:grid;gap:14px;margin-top:34px;list-style:none}.cta-list li{display:flex;gap:12px;color:var(--text-soft)}.form-card{padding:32px;border-radius:var(--radius-lg);background:var(--surface);color:var(--text);border:1px solid var(--line-soft);box-shadow:var(--shadow)}.form-card h3{font-size:30px;line-height:1.02;letter-spacing:-.06em;margin-bottom:10px}.form-card p{color:var(--text-soft);font-size:14px;margin-bottom:24px}.audit-form{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field label{display:block;margin-bottom:7px;color:var(--text-soft);font-size:12px;font-weight:900;letter-spacing:.02em}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);color:var(--text);font-size:14px;outline:0;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.field textarea{min-height:108px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(249,84,55,.68);box-shadow:0 0 0 4px rgba(249,84,55,.1)}.form-card .btn{width:100%;min-height:54px;margin-top:4px;border:0}.form-note{margin-top:14px!important;margin-bottom:0!important;font-size:12px!important;color:var(--text-muted)!important;text-align:center}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:22px;align-items:start}.contact-side{display:grid;gap:16px}.contact-card{padding:24px;border-radius:var(--radius-md);border:1px solid var(--line-soft);background:var(--surface)}.contact-card h3{font-size:22px;letter-spacing:-.045em;margin-bottom:8px}.contact-card p{color:var(--text-soft);font-size:14px}.wide-cta{padding:44px;border-radius:var(--radius-lg);background:#000;color:#fff;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;overflow:hidden}.wide-cta h2{font-size:clamp(2rem,5vw,4.3rem);line-height:.94;letter-spacing:-.068em}.wide-cta p{color:rgba(255,255,255,.65);max-width:720px;margin-top:14px}
.site-footer{padding:70px 0 28px;background:var(--bg-soft);border-top:1px solid var(--line-soft)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr .9fr;gap:36px;padding-bottom:46px}.footer-brand img{width:154px;margin-bottom:18px}.footer-brand p{max-width:330px;color:var(--text-muted);font-size:14px}.footer-col h3{margin-bottom:16px;color:var(--text);font-size:13px;letter-spacing:.1em;text-transform:uppercase}.footer-col ul{display:grid;gap:10px;list-style:none}.footer-col a,.footer-col li{color:var(--text-muted);font-size:14px;transition:color .18s ease}.footer-col a:hover{color:var(--orange)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid var(--line-soft);color:var(--text-muted);font-size:13px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media (max-width:1120px){.nav-links,.nav-cta{display:none}.mobile-toggle{display:inline-flex}.nav-links.mobile-open{position:absolute;display:grid;top:82px;left:20px;right:20px;gap:4px;padding:18px;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.nav-links.mobile-open a{padding:13px 12px;border-radius:14px}.nav-links.mobile-open a:hover{background:rgba(249,84,55,.08)}.hero-grid,.inner-hero-grid,.process-header,.story-grid,.accordion-shell,.solution-grid,.coming-soon,.contact-grid{grid-template-columns:1fr}.positioning-grid,.pillar-grid,.process-grid,.audience-grid,.principles-grid,.check-grid,.article-grid,.industry-list,.footer-grid{grid-template-columns:repeat(2,1fr)}.industry-deck{grid-template-columns:repeat(3,1fr)}.hero-visual{min-height:500px}.services-intro,.split-header,.audience-header{display:block}.services-intro .section-copy,.split-header .section-copy,.audience-header .section-copy{margin-top:18px}.position-card:nth-child(2){border-right:0}.position-card:nth-child(-n+2){border-bottom:1px solid var(--line-soft)}}@media (max-width:760px){.container{width:min(100% - 28px,var(--max))}.section{padding:78px 0}.section-tight{padding:56px 0}.nav-wrap{height:74px}.brand img{width:136px}.nav-links.mobile-open{top:74px;left:14px;right:14px}.theme-toggle{width:46px;padding-inline:0}.theme-toggle-text{display:none}.home-hero{padding:74px 0 58px;min-height:auto}.home-hero h1,.inner-hero h1{font-size:clamp(3rem,17vw,4.7rem)}.hero-actions{display:grid}.btn{width:100%}.hero-visual{min-height:430px}.signal-card{inset:10px 0 0;padding:18px;border-radius:26px}.signal-top{align-items:flex-start;flex-direction:column}.search-map{height:230px}.floating-box{min-width:135px;padding:11px 12px}.box-local{right:14px;top:88px}.box-audit{left:14px;bottom:18px}.signal-list,.positioning-grid,.pillar-grid,.process-grid,.audience-grid,.principles-grid,.service-mosaic,.check-grid,.faq-grid,.form-row,.article-grid,.industry-deck,.industry-list,.footer-grid{grid-template-columns:1fr}.positioning{margin-top:0;padding-bottom:40px}.position-card{border-right:0;border-bottom:1px solid var(--line-soft)}.position-card:last-child{border-bottom:0}.pillar-card,.form-card,.solution-card{min-height:auto;padding:26px}.process-number{margin-bottom:34px}.pain-solve{grid-template-columns:1fr}.selector-top{display:block}.selector-top select{margin-top:16px;width:100%}.wide-cta{grid-template-columns:1fr;padding:28px}.footer-bottom{align-items:flex-start;flex-direction:column}}

/* Updated services overview page */
.services-centered-hero {
  text-align: center;
  padding: 128px 0 104px;
}
.services-centered-hero .container {
  max-width: 980px;
}
.services-centered-hero .eyebrow {
  justify-content: center;
}
.services-centered-hero .eyebrow::after {
  content: "";
  width: 26px;
  height: 2px;
  border-radius: 999px;
  background: var(--orange);
}
.services-centered-hero h1 {
  margin-inline: auto;
  max-width: 980px;
  font-size: clamp(3.4rem, 8vw, 7.2rem);
  line-height: 0.88;
  letter-spacing: -0.09em;
  font-weight: 900;
}
.services-centered-hero .section-copy {
  margin-inline: auto;
  max-width: 760px;
}
.centered-actions {
  justify-content: center;
}

.service-block-grid {
  display: grid;
  gap: 24px;
}
.service-block {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 620px;
  border-radius: 34px;
  overflow: hidden;
  border: 1px solid var(--line-soft);
  background: var(--surface);
  box-shadow: var(--shadow);
}
.service-block-dark {
  background: #000;
  color: #fff;
}
.service-block-light {
  background: var(--surface);
  color: var(--text);
}
.service-block-copy {
  padding: clamp(28px, 4vw, 54px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.service-block-copy h3 {
  max-width: 610px;
  margin-bottom: 20px;
  font-size: clamp(2.3rem, 5vw, 5.4rem);
  line-height: 0.9;
  letter-spacing: -0.08em;
  font-weight: 900;
}
.service-block-copy p {
  max-width: 560px;
  color: var(--text-soft);
  font-size: 17px;
}
.service-block-dark .service-block-copy p {
  color: rgba(255,255,255,0.72);
}
.block-list {
  margin-top: 28px;
  margin-bottom: 32px;
}
.light-list li {
  color: var(--text-soft);
}
.service-block-visual {
  position: relative;
  min-height: 520px;
  background:
    radial-gradient(circle at 70% 30%, rgba(249,84,55,0.34), transparent 18rem),
    linear-gradient(135deg, var(--surface-2), var(--bg));
  overflow: hidden;
}
.service-block-dark .service-block-visual {
  background:
    radial-gradient(circle at 80% 20%, rgba(249,84,55,0.36), transparent 18rem),
    linear-gradient(135deg, #18181c, #000);
}
.visual-panel {
  position: absolute;
  inset: 38px;
  border-radius: 28px;
  border: 1px solid var(--line);
  background-image:
    linear-gradient(var(--line-soft) 1px, transparent 1px),
    linear-gradient(90deg, var(--line-soft) 1px, transparent 1px);
  background-size: 36px 36px;
  overflow: hidden;
}
.visual-chip {
  position: absolute;
  top: 24px;
  left: 24px;
  z-index: 3;
  padding: 10px 13px;
  border-radius: 999px;
  border: 1px solid rgba(249,84,55,0.28);
  background: rgba(249,84,55,0.12);
  color: var(--orange);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.visual-pin {
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 12px rgba(249,84,55,0.12), 0 0 45px rgba(249,84,55,0.75);
}
.pin-one { left: 26%; top: 38%; }
.pin-two { left: 62%; top: 28%; width: 13px; height: 13px; }
.pin-three { left: 70%; top: 67%; width: 15px; height: 15px; }
.visual-card {
  position: absolute;
  z-index: 4;
  min-width: 178px;
  padding: 15px;
  border-radius: 18px;
  background: rgba(255,255,255,0.94);
  color: #000;
  box-shadow: 0 18px 50px rgba(0,0,0,0.22);
}
.visual-card small {
  display: block;
  margin-bottom: 4px;
  color: rgba(49,49,53,0.62);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.visual-card strong {
  display: block;
  font-size: 15px;
  letter-spacing: -0.04em;
}
.vc-one { right: 32px; top: 120px; }
.vc-two { left: 32px; bottom: 42px; }
.vc-three { left: 32px; top: 120px; }
.vc-four { right: 32px; bottom: 42px; }
.search-stack {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(70%, 360px);
  transform: translate(-50%, -50%);
  display: grid;
  gap: 14px;
}
.search-stack span {
  height: 46px;
  border-radius: 999px;
  background: rgba(255,255,255,0.12);
  border: 1px solid var(--line);
  position: relative;
}
.search-stack span::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  width: 42%;
  height: 8px;
  border-radius: 999px;
  background: var(--orange);
  transform: translateY(-50%);
  opacity: 0.85;
}
.search-stack span:nth-child(2)::before { width: 62%; }
.search-stack span:nth-child(3)::before { width: 34%; }
.search-stack span:nth-child(4)::before { width: 52%; }

.capability-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.capability-card {
  min-height: 310px;
  padding: 26px;
  border-radius: 24px;
  border: 1px solid var(--line-soft);
  background: var(--surface);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.capability-card:hover {
  transform: translateY(-4px);
  border-color: rgba(249,84,55,0.36);
  box-shadow: var(--shadow);
}
.capability-card span {
  color: var(--orange);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
}
.capability-card h3 {
  margin-top: auto;
  margin-bottom: 14px;
  font-size: 24px;
  line-height: 1.02;
  letter-spacing: -0.055em;
}
.capability-card p {
  color: var(--text-soft);
  font-size: 14px;
}

.tools-showcase {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 34px;
  align-items: center;
  padding: clamp(28px, 4vw, 46px);
  border-radius: 34px;
  border: 1px solid var(--line-soft);
  background:
    radial-gradient(circle at 90% 20%, rgba(249,84,55,0.12), transparent 22rem),
    var(--surface);
  box-shadow: var(--shadow);
}
.tools-copy h2 {
  margin-bottom: 18px;
  font-size: clamp(2.2rem, 5vw, 4.8rem);
  line-height: 0.92;
  letter-spacing: -0.075em;
  font-weight: 900;
}
.tools-copy p {
  color: var(--text-soft);
  font-size: 16px;
}
.tools-icon-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.tool-icon-card {
  min-height: 178px;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid var(--line-soft);
  background: var(--surface-2);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform 180ms ease, border-color 180ms ease;
}
.tool-icon-card:hover {
  transform: translateY(-3px);
  border-color: rgba(249,84,55,0.38);
}
.tool-icon {
  width: 48px;
  height: 48px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 900;
  font-size: 20px;
  box-shadow: 0 14px 30px rgba(0,0,0,0.14);
}
.tool-icon-card strong {
  display: block;
  margin-top: 20px;
  font-size: 15px;
  letter-spacing: -0.035em;
}
.tool-icon-card small {
  display: block;
  margin-top: 4px;
  color: var(--text-muted);
  font-size: 12px;
}
.gsc-icon { background: linear-gradient(135deg, #4285F4, #34A853); }
.ga-icon { background: linear-gradient(135deg, #F9AB00, #E37400); }
.gbp-icon { background: linear-gradient(135deg, #34A853, #4285F4); }
.bl-icon { background: linear-gradient(135deg, #0EA5E9, #22C55E); }
.ahrefs-icon { background: linear-gradient(135deg, #2563EB, #111827); }
.frog-icon { background: linear-gradient(135deg, #16A34A, #65A30D); }
.semrush-icon { background: linear-gradient(135deg, #FF642D, #111827); }
.looker-icon { background: linear-gradient(135deg, #4285F4, #DB4437); }

@media (max-width: 1120px) {
  .service-block,
  .tools-showcase {
    grid-template-columns: 1fr;
  }
  .capability-grid,
  .tools-icon-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .service-block-light .service-block-visual {
    order: 2;
  }
}

@media (max-width: 760px) {
  .services-centered-hero {
    padding: 86px 0 70px;
  }
  .services-centered-hero h1 {
    font-size: clamp(3rem, 16vw, 4.8rem);
  }
  .service-block-copy {
    padding: 26px;
  }
  .service-block-visual {
    min-height: 390px;
  }
  .visual-panel {
    inset: 20px;
  }
  .visual-card {
    min-width: 145px;
    padding: 12px;
  }
  .capability-grid,
  .tools-icon-grid {
    grid-template-columns: 1fr;
  }
  .tool-icon-card {
    min-height: 140px;
  }
}

/* === Sercova refined navigation dropdown === */
.nav-item{position:relative;display:inline-flex;align-items:center}
.nav-item>a{display:inline-flex;align-items:center;gap:6px}
.nav-item.has-dropdown>a::before{content:"";position:absolute;inset:-18px -16px -22px;z-index:-1}
.nav-item.has-dropdown>a::after{bottom:-8px}
.nav-item.has-dropdown>a::before{pointer-events:auto}
.nav-item.has-dropdown>a{position:relative}
.nav-item.has-dropdown>a .chev{font-size:10px}
.nav-item.has-dropdown>a::marker{display:none}
.dropdown-menu{position:absolute;top:calc(100% + 20px);left:50%;transform:translateX(-50%) translateY(8px);min-width:220px;padding:10px;border:1px solid var(--line);border-radius:18px;background:rgba(10,10,12,.96);box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease;backdrop-filter:blur(18px)}
.dropdown-menu::before{content:"";position:absolute;left:0;right:0;top:-22px;height:22px}.dropdown-menu a{display:flex!important;padding:12px 13px;border-radius:12px;color:rgba(255,255,255,.72)!important;font-size:13px;font-weight:850}.dropdown-menu a::after{display:none}.dropdown-menu a:hover{background:rgba(249,84,55,.12);color:#fff!important}.nav-item.has-dropdown:hover .dropdown-menu,.nav-item.has-dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
@media (max-width:1120px){.nav-item{display:grid}.dropdown-menu{position:static;transform:none;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;background:transparent;border:0;padding:0 0 0 10px;min-width:0}.dropdown-menu a{padding:10px 12px!important;font-size:13px}.nav-item.has-dropdown:hover .dropdown-menu,.nav-item.has-dropdown:focus-within .dropdown-menu{transform:none}.nav-links.mobile-open .nav-item>a{padding:13px 12px;border-radius:14px}}

/* === Services page reset to approved Sercova palette === */
.services-hero-shell{background:radial-gradient(circle at top right,rgba(249,84,55,.16),transparent 30rem),radial-gradient(circle at 10% 10%,rgba(255,255,255,.08),transparent 28rem),#000!important}.services-centered-hero{position:relative;z-index:1;padding:132px 0 116px;text-align:center}.services-hero-inner{max-width:980px;margin:auto}.services-hero-inner .eyebrow{justify-content:center}.services-hero-inner .eyebrow:before{display:none}.services-hero-inner h1{font-size:clamp(3.2rem,8vw,7rem);line-height:.9;letter-spacing:-.085em;font-weight:900;color:#fff}.services-hero-inner p{max-width:760px;margin:28px auto 0;color:rgba(255,255,255,.72);font-size:clamp(1.05rem,1.8vw,1.28rem)}.services-hero-actions{justify-content:center}
.services-overview-section{background:#fff;color:#000}.services-overview-head{text-align:center;max-width:920px;margin:0 auto 46px}.services-overview-head .eyebrow{justify-content:center}.services-overview-head .eyebrow:before{display:none}.services-overview-head .section-heading{margin:auto}.services-overview-head .section-copy{margin-inline:auto;color:rgba(49,49,53,.72)}.overview-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.overview-track-card{min-height:420px;border-radius:28px;padding:34px;border:1px solid rgba(0,0,0,.10);background:#F6F6F7;color:#000;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.overview-track-card::after{content:"";position:absolute;width:210px;height:210px;right:-70px;top:-70px;border-radius:50%;background:rgba(249,84,55,.13)}.overview-track-dark{background:radial-gradient(circle at top right,rgba(249,84,55,.22),transparent 22rem),#000;color:#fff;box-shadow:var(--shadow)}.overview-track-card h3{font-size:clamp(2.4rem,5vw,5rem);line-height:.9;letter-spacing:-.075em;margin:18px 0}.overview-track-card p{max-width:560px;color:rgba(49,49,53,.72);font-size:17px}.overview-track-dark p{color:rgba(255,255,255,.68)}.compact-list{list-style:none;display:grid;gap:12px;margin-top:28px}.compact-list li{display:flex;gap:10px;color:rgba(255,255,255,.78);font-size:15px}.dark-text-list li{color:rgba(49,49,53,.76)}.compact-list li::before{content:"";width:18px;height:18px;flex:0 0 auto;margin-top:2px;border-radius:50%;background:radial-gradient(circle at center,var(--orange) 0 32%,transparent 35%),rgba(249,84,55,.13)}
.services-mosaic-section{background:#000;color:#fff}.services-mosaic-section .section-copy{color:rgba(255,255,255,.68)}.seo-block-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:16px}.seo-tile{min-height:340px;border-radius:22px;border:1px solid rgba(255,255,255,.10);overflow:hidden;position:relative}.text-tile{padding:34px;background:#111114;color:#fff;display:flex;flex-direction:column;justify-content:center}.light-tile{background:#fff;color:#000}.text-tile .tile-kicker{display:inline-flex;width:max-content;margin-bottom:18px;padding:8px 11px;border-radius:999px;background:rgba(249,84,55,.12);color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.text-tile h3{font-size:clamp(1.8rem,3.1vw,3.4rem);line-height:.95;letter-spacing:-.065em;max-width:560px}.text-tile p{max-width:560px;margin-top:16px;color:rgba(255,255,255,.68)}.light-tile p{color:rgba(49,49,53,.70)}.text-tile ul{display:grid;gap:8px;margin-top:20px;padding-left:18px;color:rgba(255,255,255,.78);font-size:14px}.light-tile ul{color:rgba(49,49,53,.75)}.orange-corner::after{content:"";position:absolute;right:24px;top:22px;width:8px;height:34px;background:var(--orange);border-radius:999px;transform:rotate(-16deg);box-shadow:0 0 0 8px rgba(249,84,55,.10)}.visual-tile{background:radial-gradient(circle at 72% 22%,rgba(249,84,55,.28),transparent 16rem),linear-gradient(135deg,#0b0b0d,#202024);display:grid;place-items:center}.visual-tile::before{content:"";position:absolute;inset:28px;border-radius:20px;border:1px solid rgba(255,255,255,.10);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:34px 34px}.visual-map .tile-dashboard{position:relative;width:68%;height:58%;border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 24px 70px rgba(0,0,0,.32)}.tile-dashboard span{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 10px rgba(249,84,55,.14)}.tile-dashboard span:nth-child(1){left:22%;top:25%}.tile-dashboard span:nth-child(2){left:62%;top:36%}.tile-dashboard span:nth-child(3){left:42%;top:68%}.tile-bars{position:relative;display:flex;align-items:end;gap:14px;height:170px}.tile-bars span{display:block;width:38px;border-radius:14px 14px 0 0;background:var(--orange);box-shadow:0 0 0 8px rgba(249,84,55,.10)}.tile-bars span:nth-child(1){height:54px}.tile-bars span:nth-child(2){height:112px}.tile-bars span:nth-child(3){height:80px}.tile-bars span:nth-child(4){height:146px}.tile-page-lines{position:relative;width:66%;padding:26px;border-radius:20px;background:#fff}.tile-page-lines span{display:block;height:12px;border-radius:999px;background:#d7d7dc;margin-bottom:14px}.tile-page-lines span:nth-child(1){width:55%;background:var(--orange)}.tile-page-lines span:nth-child(2){width:86%}.tile-page-lines span:nth-child(3){width:72%}.tile-page-lines span:nth-child(4){width:44%}.crawl-nodes{position:relative;width:240px;height:180px}.crawl-nodes i{position:absolute;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 0 0 12px rgba(255,255,255,.08)}.crawl-nodes i:nth-child(1){left:0;top:20px}.crawl-nodes i:nth-child(2){right:0;top:10px}.crawl-nodes i:nth-child(3){left:90px;top:72px;background:var(--orange)}.crawl-nodes i:nth-child(4){right:38px;bottom:0}.crawl-nodes b{position:absolute;left:18px;right:44px;top:88px;height:2px;background:linear-gradient(90deg,transparent,var(--orange),transparent);transform:rotate(-8deg)}.ai-orbit{position:relative;width:210px;height:210px;border:1px solid rgba(255,255,255,.16);border-radius:50%}.ai-orbit::before{content:"AI";position:absolute;inset:58px;border-radius:50%;background:#fff;color:#000;display:grid;place-items:center;font-weight:900;font-size:32px}.ai-orbit span{position:absolute;width:24px;height:24px;border-radius:50%;background:var(--orange)}.ai-orbit span:nth-child(1){left:8px;top:90px}.ai-orbit span:nth-child(2){right:18px;top:38px}.ai-orbit span:nth-child(3){right:58px;bottom:14px}
.capability-section{background:#fff;color:#000}.capability-section .section-copy{color:rgba(49,49,53,.72)}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px 30px}.capability-card{position:relative;min-height:260px;padding:18px 16px 24px 0;border-top:1px solid rgba(0,0,0,.14)}.capability-card .tick-mark{position:absolute;right:8px;top:-18px;color:var(--orange);font-size:92px;line-height:1;font-weight:900;opacity:.92;transform:rotate(-12deg)}.capability-card h3{position:relative;font-size:28px;line-height:1;letter-spacing:-.055em;margin-bottom:20px}.capability-card p{position:relative;color:rgba(49,49,53,.72);font-size:16px;line-height:1.62}
.tools-section{background:#000;color:#fff}.tools-head{text-align:center;max-width:940px;margin:0 auto 46px}.tools-head .eyebrow{justify-content:center}.tools-head .eyebrow:before{display:none}.tools-head .section-heading{margin:auto}.tools-head .section-copy{margin-inline:auto;color:rgba(255,255,255,.68)}.tool-icon-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.tool-icon-card{min-height:190px;padding:24px 18px;border-radius:22px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;transition:transform .18s ease,border-color .18s ease,background .18s ease}.tool-icon-card:hover{transform:translateY(-4px);border-color:rgba(249,84,55,.42);background:rgba(249,84,55,.08)}.tool-icon-card h3{font-size:15px;line-height:1.2;letter-spacing:-.02em}.tool-logo{width:70px;height:70px;border-radius:22px;background:#fff;color:#000;display:grid;place-items:center;box-shadow:0 18px 45px rgba(0,0,0,.24);position:relative}.tool-logo svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.tool-logo strong{font-size:30px;font-weight:900}.gsc-icon{color:#4285F4}.ga-icon{color:#F9AB00}.gbp-icon{color:#34A853}.bl-icon{background:#fff;color:#1D7EF2}.ah-icon{background:#fff;color:#FF6B00}.sf-icon{color:#45A85A}.sem-icon{background:#fff;color:#FF642D}.ls-icon{color:#4285F4}.trends-icon{color:#34A853}.clarity-icon{color:#0078D4}
@media (max-width:1120px){.overview-split-grid,.seo-block-mosaic{grid-template-columns:1fr}.capability-grid{grid-template-columns:repeat(3,1fr)}.tool-icon-grid{grid-template-columns:repeat(3,1fr)}.services-centered-hero{padding:108px 0 92px}}
@media (max-width:760px){.services-centered-hero{padding:86px 0 70px}.services-hero-inner h1{font-size:clamp(3rem,17vw,4.7rem)}.overview-split-grid,.seo-block-mosaic,.capability-grid,.tool-icon-grid{grid-template-columns:1fr}.overview-track-card,.seo-tile{min-height:auto}.visual-tile{min-height:280px}.capability-card{min-height:auto}.capability-card .tick-mark{font-size:72px}.tool-icon-card{min-height:160px}.services-hero-actions{display:grid}}


/* === Final Sercova services refresh: approved black/orange theme === */
.nav-item{position:relative;display:inline-flex;align-items:center}
.nav-item>a{display:inline-flex!important;align-items:center;gap:7px;position:relative}
.nav-item.has-dropdown::after{content:"";position:absolute;left:-24px;right:-24px;top:100%;height:24px}
.nav-item .chev{font-size:10px;color:var(--orange);line-height:1;transform:translateY(1px)}
.dropdown-menu{position:absolute;top:calc(100% + 20px);left:50%;width:min(560px,92vw);transform:translateX(-50%) translateY(10px);display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px;border-radius:24px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.96);box-shadow:0 30px 90px rgba(0,0,0,.42);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease;backdrop-filter:blur(20px);z-index:110}
.dropdown-menu::before{content:"";position:absolute;left:0;right:0;top:-24px;height:24px}
.dropdown-menu a{display:flex!important;flex-direction:column;align-items:flex-start;gap:5px;min-height:142px;padding:18px!important;border-radius:18px;background:#111114;border:1px solid rgba(255,255,255,.10);color:#fff!important;white-space:normal;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.dropdown-menu a::after{display:none!important}
.dropdown-menu a:hover{transform:translateY(-3px);background:#151518;border-color:rgba(249,84,55,.42);color:#fff!important}
.dropdown-kicker{color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.dropdown-menu strong{font-size:24px;line-height:1;letter-spacing:-.055em;color:#fff}
.dropdown-menu small{color:rgba(255,255,255,.62);font-size:13px;line-height:1.4}
.nav-item.has-dropdown:hover .dropdown-menu,.nav-item.has-dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}

.services-hero-shell{background:radial-gradient(circle at top right,rgba(249,84,55,.16),transparent 30rem),radial-gradient(circle at 10% 10%,rgba(255,255,255,.08),transparent 28rem),#000!important;color:#fff!important}
.services-centered-hero{position:relative;z-index:1;padding:138px 0 120px;text-align:center}
.services-hero-inner{max-width:1050px;margin:0 auto}
.services-hero-inner .eyebrow{justify-content:center}
.services-hero-inner .eyebrow::before{display:none}
.services-hero-inner h1{max-width:1000px;margin:0 auto;font-size:clamp(3.3rem,8vw,7.2rem);line-height:.9;letter-spacing:-.086em;font-weight:900;color:#fff!important}
.services-hero-inner p{max-width:780px;margin:28px auto 0;color:rgba(255,255,255,.72)!important;font-size:clamp(1.05rem,1.8vw,1.28rem)}
.services-hero-actions{justify-content:center}

.services-overview-dark{background:#000;color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.services-overview-dark .section-heading{color:#fff!important}
.services-overview-dark .section-copy{color:rgba(255,255,255,.68)!important}
.services-overview-head{text-align:center;max-width:930px;margin:0 auto 46px}
.services-overview-head .eyebrow{justify-content:center}
.services-overview-head .eyebrow::before{display:none}
.services-overview-head .section-heading{margin-inline:auto}
.services-overview-head .section-copy{margin-inline:auto}
.overview-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.overview-track-card{min-height:430px;border-radius:28px;padding:34px;border:1px solid rgba(255,255,255,.10);background:#111114;color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}
.overview-track-card::after{content:"";position:absolute;width:220px;height:220px;right:-74px;top:-74px;border-radius:50%;background:rgba(249,84,55,.14)}
.overview-track-dark{background:radial-gradient(circle at top right,rgba(249,84,55,.22),transparent 22rem),#000;color:#fff;box-shadow:0 26px 80px rgba(0,0,0,.34)}
.overview-track-card h3{position:relative;font-size:clamp(2.4rem,5vw,5rem);line-height:.9;letter-spacing:-.075em;margin:18px 0;color:#fff!important}
.overview-track-card p{position:relative;max-width:560px;color:rgba(255,255,255,.68)!important;font-size:17px}
.compact-list{position:relative;list-style:none;display:grid;gap:12px;margin-top:28px}
.compact-list li{display:flex;gap:10px;color:rgba(255,255,255,.78)!important;font-size:15px}
.dark-text-list li{color:rgba(255,255,255,.78)!important}
.compact-list li::before{content:"";width:18px;height:18px;flex:0 0 auto;margin-top:2px;border-radius:50%;background:radial-gradient(circle at center,var(--orange) 0 32%,transparent 35%),rgba(249,84,55,.13)}

.services-mosaic-section{background:#000!important;color:#fff!important;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.services-mosaic-section .section-heading{color:#fff!important}
.services-mosaic-section .section-copy{color:rgba(255,255,255,.68)!important}
.seo-block-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.seo-tile{min-height:336px;border-radius:22px;border:1px solid rgba(255,255,255,.10);overflow:hidden;position:relative;background:#111114;color:#fff}
.text-tile{padding:34px;display:flex;flex-direction:column;justify-content:center}
.text-tile .tile-kicker{display:inline-flex;width:max-content;margin-bottom:18px;padding:8px 11px;border-radius:999px;background:rgba(249,84,55,.12);color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.text-tile h3{font-size:clamp(1.8rem,3.1vw,3.4rem);line-height:.95;letter-spacing:-.065em;max-width:580px;color:#fff!important}
.text-tile p{max-width:580px;margin-top:16px;color:rgba(255,255,255,.68)!important}
.text-tile ul{display:grid;gap:8px;margin-top:20px;padding-left:18px;color:rgba(255,255,255,.78);font-size:14px}
.orange-corner::after{content:"";position:absolute;right:24px;top:22px;width:8px;height:34px;background:var(--orange);border-radius:999px;transform:rotate(-16deg);box-shadow:0 0 0 8px rgba(249,84,55,.10)}
.visual-tile{background:radial-gradient(circle at 72% 22%,rgba(249,84,55,.28),transparent 16rem),linear-gradient(135deg,#0b0b0d,#202024);display:grid;place-items:center}
.visual-tile::before{content:"";position:absolute;inset:28px;border-radius:20px;border:1px solid rgba(255,255,255,.10);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:34px 34px}
.visual-map .tile-dashboard{position:relative;width:68%;height:58%;border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 24px 70px rgba(0,0,0,.32)}
.tile-dashboard span{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 10px rgba(249,84,55,.14)}
.tile-dashboard span:nth-child(1){left:22%;top:25%}.tile-dashboard span:nth-child(2){left:62%;top:36%}.tile-dashboard span:nth-child(3){left:42%;top:68%}
.tile-bars{position:relative;display:flex;align-items:end;gap:14px;height:170px}.tile-bars span{display:block;width:38px;border-radius:14px 14px 0 0;background:var(--orange);box-shadow:0 0 0 8px rgba(249,84,55,.10)}.tile-bars span:nth-child(1){height:54px}.tile-bars span:nth-child(2){height:112px}.tile-bars span:nth-child(3){height:80px}.tile-bars span:nth-child(4){height:146px}
.tile-page-lines{position:relative;width:66%;padding:26px;border-radius:20px;background:#fff}.tile-page-lines span{display:block;height:12px;border-radius:999px;background:#d7d7dc;margin-bottom:14px}.tile-page-lines span:nth-child(1){width:55%;background:var(--orange)}.tile-page-lines span:nth-child(2){width:86%}.tile-page-lines span:nth-child(3){width:72%}.tile-page-lines span:nth-child(4){width:44%}
.crawl-nodes{position:relative;width:240px;height:180px}.crawl-nodes i{position:absolute;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 0 0 12px rgba(255,255,255,.08)}.crawl-nodes i:nth-child(1){left:0;top:20px}.crawl-nodes i:nth-child(2){right:0;top:10px}.crawl-nodes i:nth-child(3){left:90px;top:72px;background:var(--orange)}.crawl-nodes i:nth-child(4){right:38px;bottom:0}.crawl-nodes b{position:absolute;left:18px;right:44px;top:88px;height:2px;background:linear-gradient(90deg,transparent,var(--orange),transparent);transform:rotate(-8deg)}
.ai-orbit{position:relative;width:210px;height:210px;border:1px solid rgba(255,255,255,.16);border-radius:50%}.ai-orbit::before{content:"AI";position:absolute;inset:58px;border-radius:50%;background:#fff;color:#000;display:grid;place-items:center;font-weight:900;font-size:32px}.ai-orbit span{position:absolute;width:24px;height:24px;border-radius:50%;background:var(--orange)}.ai-orbit span:nth-child(1){left:8px;top:90px}.ai-orbit span:nth-child(2){right:18px;top:38px}.ai-orbit span:nth-child(3){right:58px;bottom:14px}

.capabilities-section{background:#fff!important;color:#000!important}
.capabilities-section .section-copy{color:rgba(49,49,53,.74)!important}
.clean-capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.capability-card-clean{min-height:236px;padding:24px;border-radius:22px;border:1px solid rgba(0,0,0,.09);background:#fff;color:#000;position:relative;overflow:hidden;box-shadow:0 14px 42px rgba(0,0,0,.045);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.capability-card-clean::after{content:"";position:absolute;right:22px;top:22px;width:8px;height:30px;border-radius:999px;background:var(--orange);transform:rotate(-16deg);box-shadow:0 0 0 8px rgba(249,84,55,.10)}
.capability-card-clean:hover{transform:translateY(-4px);border-color:rgba(249,84,55,.34);box-shadow:0 24px 70px rgba(0,0,0,.09)}
.capability-card-clean span{display:block;color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.12em;margin-bottom:38px}
.capability-card-clean h3{font-size:21px;line-height:1.08;letter-spacing:-.045em;margin-bottom:12px;max-width:220px;color:#000!important}
.capability-card-clean p{color:rgba(49,49,53,.70);font-size:14px}

.tools-section{background:#000!important;color:#fff!important;border-top:1px solid rgba(255,255,255,.08)}
.tools-head{text-align:center;max-width:940px;margin:0 auto 46px}.tools-head .eyebrow{justify-content:center}.tools-head .eyebrow::before{display:none}.tools-head .section-heading{margin:auto;color:#fff!important}.tools-head .section-copy{margin-inline:auto;color:rgba(255,255,255,.68)!important}
.tool-icon-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.tool-icon-card{min-height:190px;padding:24px 18px;border-radius:22px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;transition:transform .18s ease,border-color .18s ease,background .18s ease}.tool-icon-card:hover{transform:translateY(-4px);border-color:rgba(249,84,55,.42);background:rgba(249,84,55,.08)}.tool-icon-card h3{font-size:15px;line-height:1.2;letter-spacing:-.02em;color:#fff!important}.tool-logo{width:70px;height:70px;border-radius:22px;background:#fff;color:#000;display:grid;place-items:center;box-shadow:0 18px 45px rgba(0,0,0,.24);position:relative}.tool-logo svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.tool-logo strong{font-size:30px;font-weight:900}.gsc-icon{color:#4285F4}.ga-icon{color:#F9AB00}.gbp-icon{color:#34A853}.bl-icon{color:#1D7EF2}.ah-icon{color:#FF6B00}.sf-icon{color:#45A85A}.sem-icon{color:#FF642D}.ls-icon{color:#4285F4}.trends-icon{color:#34A853}.clarity-icon{color:#0078D4}

@media (max-width:1120px){.dropdown-menu{position:static;width:auto;transform:none;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;background:transparent;border:0;padding:0 0 0 10px;grid-template-columns:1fr}.dropdown-menu a{min-height:auto;padding:12px!important}.nav-item{display:grid}.nav-item.has-dropdown:hover .dropdown-menu,.nav-item.has-dropdown:focus-within .dropdown-menu{transform:none}.overview-split-grid,.seo-block-mosaic{grid-template-columns:1fr}.clean-capability-grid{grid-template-columns:repeat(3,1fr)}.tool-icon-grid{grid-template-columns:repeat(3,1fr)}.services-centered-hero{padding:110px 0 94px}}
@media (max-width:760px){.services-centered-hero{padding:88px 0 72px}.services-hero-inner h1{font-size:clamp(3rem,16vw,4.8rem)}.overview-split-grid,.seo-block-mosaic,.clean-capability-grid,.tool-icon-grid{grid-template-columns:1fr}.overview-track-card,.seo-tile,.capability-card-clean{min-height:auto}.visual-tile{min-height:280px}.services-hero-actions{display:grid}.tool-icon-card{min-height:160px}}

/* =========================================================
   FINAL CORRECTION PASS
   - Keep approved Sercova palette in dark mode.
   - Make custom Services-page sections respond properly to light mode.
   - Replace compact services hover with a larger square dropdown.
   ========================================================= */

/* Square, substantial Services dropdown inspired by the provided reference */
.nav-item.has-dropdown {
  position: relative !important;
}

.nav-item.has-dropdown::after {
  content: "";
  position: absolute;
  left: -36px;
  right: -36px;
  top: 100%;
  height: 28px;
}

.nav-item.has-dropdown > a {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  min-height: 82px;
}

.dropdown-menu {
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  width: min(720px, calc(100vw - 40px)) !important;
  min-width: 0 !important;
  transform: translateX(-50%) translateY(0) !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(249,84,55,0.12), transparent 18rem),
    linear-gradient(135deg, rgba(49,49,53,0.96), rgba(6,6,7,0.98)) !important;
  box-shadow: 0 34px 100px rgba(0,0,0,0.55) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  backdrop-filter: blur(22px) !important;
  z-index: 200 !important;
}

.dropdown-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -28px;
  height: 28px;
}

.dropdown-menu a {
  position: relative;
  display: grid !important;
  grid-template-columns: 1fr auto;
  align-items: center !important;
  gap: 24px !important;
  min-height: 132px !important;
  padding: 28px 34px !important;
  border-radius: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.14) !important;
  background: transparent !important;
  color: #fff !important;
  white-space: normal !important;
  transition: background .18s ease, color .18s ease, transform .18s ease !important;
}

.dropdown-menu a:last-child {
  border-bottom: 0 !important;
}

.dropdown-menu a::after {
  content: "↗" !important;
  display: grid !important;
  place-items: center;
  position: static !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255,255,255,0.18);
  color: var(--orange);
  background: rgba(249,84,55,0.08);
  font-size: 19px;
  line-height: 1;
  opacity: 1 !important;
}

.dropdown-kicker,
.dropdown-menu strong,
.dropdown-menu small {
  grid-column: 1;
}

.dropdown-kicker {
  display: block;
  margin-bottom: 8px;
  color: var(--orange) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}

.dropdown-menu strong {
  display: block;
  margin-bottom: 7px;
  color: #fff !important;
  font-size: clamp(1.65rem, 2.3vw, 2.5rem) !important;
  line-height: .95 !important;
  letter-spacing: -.06em !important;
}

.dropdown-menu small {
  display: block;
  max-width: 470px;
  color: rgba(255,255,255,0.62) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.dropdown-menu a:hover {
  transform: none !important;
  background: rgba(255,255,255,0.06) !important;
  color: #fff !important;
}

.dropdown-menu a:hover::after {
  border-color: rgba(249,84,55,0.55);
  background: rgba(249,84,55,0.16);
}

.nav-item.has-dropdown:hover .dropdown-menu,
.nav-item.has-dropdown:focus-within .dropdown-menu {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}

/* Mobile menu dropdown should remain usable and stacked */
@media (max-width:1120px) {
  .nav-item.has-dropdown > a {
    min-height: auto;
  }
  .dropdown-menu {
    position: static !important;
    width: auto !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 0 0 10px !important;
    backdrop-filter: none !important;
  }
  .dropdown-menu a {
    min-height: auto !important;
    padding: 12px 13px !important;
    border: 1px solid var(--line-soft) !important;
    margin-top: 8px;
    background: rgba(255,255,255,0.04) !important;
  }
  .dropdown-menu a::after {
    width: 28px !important;
    height: 28px !important;
  }
}

/* =========================================================
   SERVICES PAGE CORRECTION V2
   1) Proper theme swapping for custom Services sections.
   2) Reasonable square Services dropdown in header.
   3) Keep Services hero visually separate from overview.
   ========================================================= */

/* Keep the Services hero as its own distinct section. */
.services-hero-shell {
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.services-centered-hero {
  padding-top: 132px !important;
  padding-bottom: 116px !important;
}
.services-overview-dark {
  border-top: 0 !important;
}

/* Square Services dropdown: substantial, but not oversized. */
@media (min-width:1121px) {
  .nav-item.has-dropdown {
    position: relative !important;
  }

  .nav-item.has-dropdown > a {
    min-height: 82px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  .nav-item.has-dropdown::after {
    content: "" !important;
    position: absolute !important;
    left: -28px !important;
    right: -28px !important;
    top: 100% !important;
    height: 22px !important;
  }

  .dropdown-menu {
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    width: min(520px, calc(100vw - 40px)) !important;
    min-width: 0 !important;
    transform: translateX(-50%) translateY(0) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
    background:
      radial-gradient(circle at 92% 12%, rgba(249,84,55,0.12), transparent 15rem),
      linear-gradient(135deg, rgba(49,49,53,0.98), rgba(5,5,6,0.98)) !important;
    box-shadow: 0 28px 90px rgba(0,0,0,0.48) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    backdrop-filter: blur(18px) !important;
    z-index: 220 !important;
  }

  .dropdown-menu::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: -22px !important;
    height: 22px !important;
  }

  .dropdown-menu a {
    display: grid !important;
    grid-template-columns: 1fr 34px !important;
    align-items: center !important;
    gap: 20px !important;
    min-height: 96px !important;
    padding: 22px 26px !important;
    border-radius: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.14) !important;
    background: transparent !important;
    color: #FFFFFF !important;
    white-space: normal !important;
  }

  .dropdown-menu a:last-child {
    border-bottom: 0 !important;
  }

  .dropdown-kicker,
  .dropdown-menu strong,
  .dropdown-menu small {
    grid-column: 1 !important;
  }

  .dropdown-kicker {
    display: block !important;
    margin-bottom: 5px !important;
    color: var(--orange) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .13em !important;
    text-transform: uppercase !important;
  }

  .dropdown-menu strong {
    display: block !important;
    margin-bottom: 5px !important;
    color: #FFFFFF !important;
    font-size: 1.45rem !important;
    line-height: .98 !important;
    letter-spacing: -.052em !important;
  }

  .dropdown-menu small {
    display: block !important;
    max-width: 360px !important;
    color: rgba(255,255,255,0.64) !important;
    font-size: 12.5px !important;
    line-height: 1.42 !important;
  }

  .dropdown-menu a::after {
    content: "↗" !important;
    position: static !important;
    display: grid !important;
    place-items: center !important;
    width: 34px !important;
    height: 34px !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    border-radius: 0 !important;
    background: rgba(249,84,55,0.08) !important;
    color: var(--orange) !important;
    opacity: 1 !important;
    font-size: 17px !important;
    line-height: 1 !important;
  }

  .dropdown-menu a:hover {
    background: rgba(255,255,255,0.06) !important;
    color: #FFFFFF !important;
    transform: none !important;
  }

  .dropdown-menu a:hover::after {
    background: rgba(249,84,55,0.16) !important;
    border-color: rgba(249,84,55,0.55) !important;
  }

  .nav-item.has-dropdown:hover .dropdown-menu,
  .nav-item.has-dropdown:focus-within .dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(-50%) translateY(0) !important;
  }
}

/* Mobile dropdown remains stacked and readable rather than hover-dependent. */
@media (max-width:1120px) {
  .nav-item.has-dropdown > a {
    min-height: auto !important;
  }

  .dropdown-menu {
    position: static !important;
    width: auto !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 0 0 10px !important;
    backdrop-filter: none !important;
  }

  .dropdown-menu a {
    min-height: auto !important;
    padding: 12px 13px !important;
    border: 1px solid var(--line-soft) !important;
    margin-top: 8px !important;
    background: rgba(255,255,255,0.04) !important;
  }

  .dropdown-menu a::after {
    width: 28px !important;
    height: 28px !important;
  }
}


/* =========================================================
   SERVICES PAGE CORRECTION V3
   - Smaller, square Services dropdown.
   - Services overview immediately after hero is white in dark mode.
   - Theme swap remains active: white sections turn black in light mode and black sections turn white.
   - Removed unsupported services from capability grid.
   ========================================================= */

/* The first section after the Services hero should match the approved homepage's white contrast section. */
.services-overview-dark {
  background: #FFFFFF !important;
  color: #000000 !important;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,0.08) !important;
}
.services-overview-dark .section-heading {
  color: #000000 !important;
}
.services-overview-dark .section-copy {
  color: rgba(49,49,53,0.74) !important;
}
.services-overview-dark .overview-track-card {
  background: #F6F6F7 !important;
  color: #000000 !important;
  border-color: rgba(0,0,0,0.10) !important;
  box-shadow: 0 14px 42px rgba(0,0,0,0.045) !important;
}
.services-overview-dark .overview-track-dark {
  background:
    radial-gradient(circle at top right, rgba(249,84,55,0.14), transparent 22rem),
    #000000 !important;
  color: #FFFFFF !important;
  border-color: rgba(255,255,255,0.10) !important;
}
.services-overview-dark .overview-track-dark h3 {
  color: #FFFFFF !important;
}
.services-overview-dark .overview-track-dark p,
.services-overview-dark .overview-track-dark .compact-list li {
  color: rgba(255,255,255,0.72) !important;
}
.services-overview-dark .overview-track-card:not(.overview-track-dark) h3 {
  color: #000000 !important;
}
.services-overview-dark .overview-track-card:not(.overview-track-dark) p,
.services-overview-dark .overview-track-card:not(.overview-track-dark) .compact-list li {
  color: rgba(49,49,53,0.72) !important;
}

/* Keep the black mosaic chunk in dark mode; it swaps to white in light mode. */
.services-mosaic-section {
  background: #000000 !important;
  color: #FFFFFF !important;
}

/* Reduce desktop dropdown size while keeping the square, stacked reference style. */
@media (min-width:1121px) {
  .dropdown-menu {
    width: min(360px, calc(100vw - 40px)) !important;
    box-shadow: 0 22px 64px rgba(0,0,0,0.42) !important;
  }
  .dropdown-menu a {
    min-height: 74px !important;
    padding: 15px 17px !important;
    grid-template-columns: 1fr 28px !important;
    gap: 14px !important;
  }
  .dropdown-kicker {
    font-size: 9px !important;
    margin-bottom: 3px !important;
  }
  .dropdown-menu strong {
    font-size: 1.04rem !important;
    margin-bottom: 3px !important;
    letter-spacing: -.04em !important;
  }
  .dropdown-menu small {
    max-width: 270px !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }
  .dropdown-menu a::after {
    width: 28px !important;
    height: 28px !important;
    font-size: 14px !important;
  }
}


/* === Sercova v4 corrections: compact dropdown + tabbed services overview === */
.nav-item.has-dropdown .dropdown-menu {
  top: calc(100% + 10px) !important;
  left: 50% !important;
  width: 232px !important;
  min-width: 0 !important;
  max-width: 232px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  padding: 6px !important;
  border-radius: 4px !important;
  border: 1px solid rgba(255,255,255,0.13) !important;
  background: rgba(10,10,12,0.96) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,0.32) !important;
  backdrop-filter: blur(16px) !important;
}
.nav-item.has-dropdown .dropdown-menu::before {
  top: -10px !important;
  height: 10px !important;
}
.nav-item.has-dropdown .dropdown-menu a {
  min-height: 46px !important;
  padding: 8px 10px !important;
  border-radius: 2px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.09) !important;
  background: transparent !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  transform: none !important;
}
.nav-item.has-dropdown .dropdown-menu a:last-child { border-bottom: 0 !important; }
.nav-item.has-dropdown .dropdown-menu .dropdown-kicker,
.nav-item.has-dropdown .dropdown-menu small { display: none !important; }
.nav-item.has-dropdown .dropdown-menu strong {
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: -0.025em !important;
  color: #fff !important;
}
.nav-item.has-dropdown .dropdown-menu a::after {
  content: "↗" !important;
  display: inline-flex !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  color: rgba(255,255,255,0.46) !important;
  font-size: 13px !important;
  line-height: 1 !important;
}
.nav-item.has-dropdown .dropdown-menu a:hover {
  background: rgba(249,84,55,0.12) !important;
  border-color: transparent !important;
}
.nav-item.has-dropdown .dropdown-menu a:hover strong,
.nav-item.has-dropdown .dropdown-menu a:hover::after { color: var(--orange) !important; }

.services-overview-tabs-section {
  background: #fff !important;
  color: #000 !important;
  border-top: 1px solid rgba(0,0,0,0.08) !important;
}
.services-overview-tabs-section .section-heading { color: #000 !important; }
.services-overview-tabs-section .section-copy { color: rgba(49,49,53,0.74) !important; }
.service-tabs-shell {
  margin-top: 42px;
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 30px;
  background: #F6F6F7;
  padding: 16px;
  box-shadow: 0 18px 60px rgba(0,0,0,0.07);
}
.service-tab-list {
  display: inline-flex;
  gap: 8px;
  padding: 6px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  margin-bottom: 16px;
}
.service-tab-btn {
  border: 0;
  border-radius: 999px;
  padding: 12px 18px;
  background: transparent;
  color: rgba(49,49,53,0.70);
  font-weight: 900;
  cursor: pointer;
}
.service-tab-btn.active { background: var(--orange); color: #fff; }
.service-tab-panel { display: none; }
.service-tab-panel.active { display: block; }
.service-tab-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 16px;
  align-items: stretch;
}
.service-tab-feature,
.service-tab-detail {
  min-height: 390px;
  border-radius: 24px;
  padding: 30px;
  border: 1px solid rgba(0,0,0,0.08);
}
.service-tab-feature {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.service-tab-feature.dark-feature {
  background: radial-gradient(circle at 85% 12%, rgba(249,84,55,0.24), transparent 22rem), #000;
  color: #fff;
  border-color: rgba(255,255,255,0.12);
}
.service-tab-feature h3 {
  font-size: clamp(2.4rem,5vw,5.2rem);
  line-height: .9;
  letter-spacing: -.075em;
  margin: 18px 0;
}
.service-tab-feature p { color: rgba(255,255,255,0.70); max-width: 640px; }
.service-tab-detail {
  background: #fff;
  color: #000;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.service-tab-detail h4 {
  font-size: clamp(1.8rem,3vw,3.2rem);
  line-height: 1;
  letter-spacing: -.06em;
  margin-bottom: 14px;
}
.service-tab-detail p { color: rgba(49,49,53,0.72); max-width: 620px; }
.service-tab-list-items {
  display: grid;
  gap: 12px;
  margin-top: 26px;
  list-style: none;
}
.service-tab-list-items li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: rgba(49,49,53,0.76);
  font-size: 15px;
}
.service-tab-list-items li::before {
  content: "";
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  margin-top: 2px;
  border-radius: 50%;
  background: radial-gradient(circle at center,var(--orange) 0 32%,transparent 35%),rgba(249,84,55,.13);
}
@media (max-width:1120px) {
  .service-tab-grid { grid-template-columns: 1fr; }
  .service-tab-feature, .service-tab-detail { min-height: auto; }
}
@media (max-width:760px) {
  .service-tabs-shell { padding: 12px; border-radius: 24px; }
  .service-tab-list { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .service-tab-btn { padding: 11px 12px; }
  .service-tab-feature, .service-tab-detail { padding: 24px; }
}

/* Services page final CTA */
.service-final-cta-section {
  background: #000000;
  color: #FFFFFF;
  overflow: hidden;
}

.service-final-cta {
  position: relative;
  min-height: 455px;
  display: grid;
  align-items: center;
  padding: 62px 0 72px;
}

.cta-overline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,0.72);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  margin-bottom: 22px;
}

.cta-overline::after {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--orange);
}

.service-final-cta-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 72px;
  align-items: center;
}

.service-final-cta h2 {
  max-width: 690px;
  font-size: clamp(2.9rem, 5.6vw, 5.45rem);
  line-height: 0.92;
  letter-spacing: -0.078em;
  font-weight: 900;
  color: #FFFFFF;
}

.service-final-cta p {
  color: rgba(255,255,255,0.72);
  font-size: 17px;
  max-width: 680px;
  margin-top: 24px;
}

.service-final-cta-action {
  padding-top: 38px;
}

.service-final-cta-action p {
  max-width: 520px;
  margin-top: 0;
  margin-bottom: 24px;
}

.cta-inline-note {
  font-weight: 700;
}

.cta-inline-note a {
  color: #FFFFFF;
  border-bottom: 2px solid var(--orange);
}

.cta-outline-word {
  position: absolute;
  left: -8%;
  bottom: -44px;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
  white-space: nowrap;
}

.cta-outline-track {
  display: inline-flex;
  align-items: center;
  width: max-content;
  animation: ctaMarquee 26s linear infinite;
  will-change: transform;
}

.cta-outline-track span {
  display: inline-block;
  padding-right: 0.18em;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255,255,255,0.10);
  text-stroke: 1px rgba(255,255,255,0.10);
  font-size: clamp(4.6rem, 13.2vw, 13.2rem);
  line-height: 0.8;
  font-weight: 900;
  letter-spacing: -0.08em;
}

@keyframes ctaMarquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (max-width: 1120px) {
  .service-final-cta-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .service-final-cta-action {
    padding-top: 0;
  }
}

@media (max-width: 760px) {
  .service-final-cta {
    min-height: auto;
    padding: 56px 0 70px;
  }

  .service-final-cta h2 {
    font-size: clamp(2.75rem, 14vw, 4.2rem);
  }

  .service-final-cta p {
    font-size: 16px;
  }

  .cta-outline-word {
    bottom: -22px;
    left: -14%;
  }
}


@media (prefers-reduced-motion: reduce) {
  .cta-outline-track {
    animation: none;
  }
}


/* === Local SEO and SEO detail pages === */
.detail-page-hero {
  position: relative;
  z-index: 1;
  padding: 118px 0 92px;
}

.detail-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.72fr);
  gap: 58px;
  align-items: center;
}

.detail-hero-copy h1 {
  max-width: 900px;
  font-size: clamp(3.2rem, 7.3vw, 7rem);
  line-height: 0.9;
  letter-spacing: -0.085em;
  font-weight: 900;
}

.detail-hero-copy .section-copy {
  max-width: 760px;
}

.detail-signal-card {
  position: relative;
  min-height: 480px;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 34px;
  background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.025)), rgba(10,10,12,0.92);
  box-shadow: var(--shadow);
  overflow: hidden;
}

.detail-signal-card::before {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  right: -135px;
  top: -130px;
  border-radius: 50%;
  background: rgba(249,84,55,0.18);
  filter: blur(8px);
}

.detail-signal-label {
  position: relative;
  z-index: 2;
  display: inline-flex;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(249,84,55,0.12);
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.local-radar,
.organic-orbit {
  position: relative;
  z-index: 1;
  height: 275px;
  margin-top: 26px;
  border-radius: 28px;
  border: 1px solid var(--line-soft);
  background:
    linear-gradient(var(--line-soft) 1px, transparent 1px),
    linear-gradient(90deg, var(--line-soft) 1px, transparent 1px),
    var(--bg-soft);
  background-size: 34px 34px;
  overflow: hidden;
}

.local-radar span {
  position: absolute;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 8px rgba(249,84,55,0.10), 0 0 35px rgba(249,84,55,0.65);
}

.local-radar span:nth-child(1) { left: 22%; top: 38%; }
.local-radar span:nth-child(2) { left: 60%; top: 24%; width: 12px; height: 12px; }
.local-radar span:nth-child(3) { left: 73%; top: 64%; width: 14px; height: 14px; }
.local-radar b {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  border: 1px solid rgba(249,84,55,0.45);
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 38px rgba(249,84,55,0.045), 0 0 0 78px rgba(249,84,55,0.025);
}

.organic-orbit {
  display: grid;
  place-items: center;
}

.organic-orbit b {
  position: relative;
  z-index: 2;
  width: 116px;
  height: 116px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: #000;
  font-size: 32px;
  font-weight: 900;
  letter-spacing: -0.06em;
}

.organic-orbit span {
  position: absolute;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 9px rgba(249,84,55,0.10);
}

.organic-orbit span:nth-child(1) { left: 22%; top: 28%; }
.organic-orbit span:nth-child(2) { right: 22%; top: 34%; }
.organic-orbit span:nth-child(3) { bottom: 22%; left: 47%; }

.detail-signal-list {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 16px;
}

.detail-signal-list div {
  padding: 14px;
  border-radius: 18px;
  border: 1px solid var(--line-soft);
  background: rgba(255,255,255,0.045);
}

.detail-signal-list small {
  display: block;
  color: var(--text-muted);
  font-size: 11px;
  margin-bottom: 4px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.detail-signal-list strong {
  font-size: 13px;
  letter-spacing: -0.03em;
}

.target-logo-section {
  background: #fff;
  color: #000;
  border-top: 1px solid rgba(0,0,0,0.08);
}

.target-logo-section .section-heading {
  color: #000;
}

.target-logo-section .section-copy {
  color: rgba(49,49,53,0.74);
}

.target-logo-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
}

.target-logo-card {
  min-height: 154px;
  padding: 22px 16px;
  border: 1px solid rgba(0,0,0,0.09);
  border-radius: 22px;
  background: #fff;
  display: grid;
  align-content: center;
  justify-items: center;
  text-align: center;
  gap: 15px;
  box-shadow: 0 14px 42px rgba(0,0,0,0.045);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.target-logo-card:hover {
  transform: translateY(-4px);
  border-color: rgba(249,84,55,0.36);
  box-shadow: 0 22px 60px rgba(0,0,0,0.08);
}

.target-logo-mark {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: rgba(249,84,55,0.10);
  color: var(--orange);
  font-size: 24px;
  font-weight: 900;
}

.target-logo-card h3 {
  font-size: 14px;
  line-height: 1.18;
  letter-spacing: -0.035em;
}

.local-subservices-section,
.seo-service-system-section {
  background: #000;
  color: #fff;
}

.local-subservices-section .section-copy,
.seo-service-system-section .section-copy {
  color: rgba(255,255,255,0.68);
}

.service-detail-rail {
  display: grid;
  gap: 14px;
}

.service-detail-row {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 28px;
  align-items: start;
  padding: 30px;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 24px;
  background: rgba(255,255,255,0.045);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.service-detail-row:hover {
  transform: translateY(-3px);
  border-color: rgba(249,84,55,0.38);
  background: rgba(255,255,255,0.065);
}

.service-detail-row > span,
.seo-service-panel > span {
  color: var(--orange);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.14em;
}

.service-detail-row h3,
.seo-service-panel h3 {
  font-size: clamp(1.8rem, 3vw, 3.2rem);
  line-height: 0.98;
  letter-spacing: -0.065em;
  margin-bottom: 14px;
}

.service-detail-row p,
.seo-service-panel p {
  color: rgba(255,255,255,0.70);
  max-width: 900px;
}

.local-method-section,
.ai-readiness-section {
  background: #fff;
  color: #000;
}

.local-method-card,
.ai-readiness-card {
  padding: 36px;
  border-radius: 28px;
  border: 1px solid rgba(0,0,0,0.09);
  background:
    radial-gradient(circle at 92% 18%, rgba(249,84,55,0.14), transparent 22rem),
    #F6F6F7;
  box-shadow: 0 18px 60px rgba(0,0,0,0.06);
}

.local-method-card {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 34px;
  align-items: end;
}

.local-method-card h2,
.ai-readiness-card h2 {
  font-size: clamp(2.2rem, 4.6vw, 4.4rem);
  line-height: 0.95;
  letter-spacing: -0.068em;
}

.method-step-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.method-step-grid article {
  min-height: 190px;
  padding: 22px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
}

.method-step-grid span,
.proof-lane span {
  display: inline-flex;
  color: var(--orange);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 26px;
}

.method-step-grid p,
.ai-readiness-card p {
  color: rgba(49,49,53,0.72);
}

.seo-service-panel-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.seo-service-panel {
  min-height: 360px;
  padding: 30px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.045);
  position: relative;
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.seo-service-panel:hover {
  transform: translateY(-4px);
  border-color: rgba(249,84,55,0.38);
  background: rgba(255,255,255,0.065);
}

.ai-forward-panel {
  background:
    radial-gradient(circle at 86% 18%, rgba(249,84,55,0.26), transparent 18rem),
    rgba(255,255,255,0.055);
}

.ai-readiness-card {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 34px;
  align-items: end;
}

.seo-proof-section {
  background: #000;
  color: #fff;
}

.proof-lane {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 28px;
  overflow: hidden;
  background: rgba(255,255,255,0.045);
}

.proof-lane article {
  min-height: 230px;
  padding: 26px;
  border-right: 1px solid rgba(255,255,255,0.08);
}

.proof-lane article:last-child {
  border-right: 0;
}

.proof-lane h3 {
  font-size: 22px;
  letter-spacing: -0.045em;
  margin-bottom: 10px;
}

.proof-lane p {
  color: rgba(255,255,255,0.66);
  font-size: 14px;
}

@media (max-width: 1120px) {
  .detail-hero-grid,
  .local-method-card,
  .ai-readiness-card {
    grid-template-columns: 1fr;
  }

  .target-logo-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .proof-lane {
    grid-template-columns: repeat(2, 1fr);
  }

  .proof-lane article:nth-child(2) {
    border-right: 0;
  }

  .proof-lane article:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }
}

@media (max-width: 760px) {
  .detail-page-hero {
    padding: 74px 0 60px;
  }

  .detail-hero-copy h1 {
    font-size: clamp(3rem, 16vw, 4.7rem);
  }

  .detail-signal-card {
    min-height: auto;
    padding: 20px;
  }

  .detail-signal-list,
  .target-logo-grid,
  .method-step-grid,
  .seo-service-panel-grid,
  .proof-lane {
    grid-template-columns: 1fr;
  }

  .service-detail-row {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 24px;
  }

  .local-method-card,
  .ai-readiness-card {
    padding: 26px;
  }

  .proof-lane article {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }

  .proof-lane article:last-child {
    border-bottom: 0;
  }
}


/* === Unique hero refresh for Local SEO and SEO pages === */
.local-showcase-hero {
  position: relative;
  z-index: 1;
  padding: 110px 0 96px;
}

.local-hero-center {
  max-width: 980px;
  margin: 0 auto 48px;
  text-align: center;
}

.local-hero-center .eyebrow {
  justify-content: center;
}

.local-hero-center .eyebrow::before {
  display: none;
}

.local-hero-center h1 {
  font-size: clamp(3.2rem, 8.2vw, 7.5rem);
  line-height: 0.88;
  letter-spacing: -0.09em;
  font-weight: 900;
}

.local-hero-center p {
  max-width: 760px;
  margin: 28px auto 0;
  color: var(--text-soft);
  font-size: clamp(1.05rem, 1.6vw, 1.22rem);
}

.local-hero-actions {
  justify-content: center;
}

.local-search-board {
  display: grid;
  grid-template-columns: 1.18fr 0.82fr;
  gap: 16px;
  min-height: 390px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 34px;
  background: rgba(255,255,255,0.055);
  box-shadow: var(--shadow);
  backdrop-filter: blur(12px);
}

.local-board-map {
  position: relative;
  min-height: 360px;
  border-radius: 26px;
  border: 1px solid var(--line-soft);
  background:
    radial-gradient(circle at 20% 30%, rgba(249,84,55,0.18), transparent 14rem),
    linear-gradient(var(--line-soft) 1px, transparent 1px),
    linear-gradient(90deg, var(--line-soft) 1px, transparent 1px),
    var(--bg-soft);
  background-size: auto, 42px 42px, 42px 42px, auto;
  overflow: hidden;
}

.local-board-map::before {
  content: "";
  position: absolute;
  inset: 34px;
  border: 1px solid rgba(249,84,55,0.20);
  border-radius: 50%;
  box-shadow: 0 0 0 52px rgba(249,84,55,0.035), 0 0 0 104px rgba(249,84,55,0.02);
}

.map-pin {
  position: absolute;
  z-index: 2;
  width: 18px;
  height: 18px;
  border-radius: 50% 50% 50% 0;
  background: var(--orange);
  transform: rotate(-45deg);
  box-shadow: 0 0 0 8px rgba(249,84,55,0.12), 0 0 34px rgba(249,84,55,0.7);
}

.map-pin::after {
  content: "";
  position: absolute;
  inset: 5px;
  border-radius: 50%;
  background: #fff;
}

.pin-one { left: 24%; top: 34%; }
.pin-two { left: 58%; top: 22%; }
.pin-three { left: 72%; top: 62%; }

.map-route {
  position: absolute;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(249,84,55,0.86), transparent);
  transform-origin: left center;
  opacity: 0.7;
}

.route-one { width: 260px; left: 27%; top: 37%; transform: rotate(-14deg); }
.route-two { width: 210px; left: 60%; top: 29%; transform: rotate(50deg); }

.map-search-card {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 3;
  min-width: min(100% - 56px, 360px);
  padding: 18px 20px;
  border-radius: 20px;
  background: rgba(255,255,255,0.94);
  color: #000;
  box-shadow: 0 18px 60px rgba(0,0,0,0.26);
}

.map-search-card small {
  display: block;
  color: rgba(49,49,53,0.62);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.map-search-card strong {
  font-size: 24px;
  line-height: 1;
  letter-spacing: -0.055em;
}

.local-board-panel {
  display: grid;
  gap: 12px;
}

.local-board-panel article {
  padding: 22px;
  border-radius: 22px;
  border: 1px solid var(--line-soft);
  background: rgba(255,255,255,0.045);
}

.local-board-panel small {
  display: inline-flex;
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.14em;
  margin-bottom: 24px;
}

.local-board-panel h3 {
  font-size: 28px;
  line-height: 1;
  letter-spacing: -0.06em;
  margin-bottom: 10px;
}

.local-board-panel p {
  color: var(--text-soft);
  font-size: 14px;
}

.seo-lab-hero {
  position: relative;
  z-index: 1;
  padding: 118px 0 104px;
}

.seo-lab-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(430px, 1.08fr);
  gap: 58px;
  align-items: center;
}

.seo-lab-copy h1 {
  font-size: clamp(3.2rem, 7.3vw, 7rem);
  line-height: 0.9;
  letter-spacing: -0.085em;
  font-weight: 900;
}

.seo-lab-copy p {
  color: var(--text-soft);
  max-width: 690px;
  margin-top: 26px;
  font-size: clamp(1.05rem, 1.55vw, 1.22rem);
}

.seo-lab-canvas {
  position: relative;
  min-height: 560px;
  border-radius: 34px;
  border: 1px solid var(--line);
  background:
    radial-gradient(circle at 78% 20%, rgba(249,84,55,0.18), transparent 18rem),
    linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025));
  box-shadow: var(--shadow);
  overflow: hidden;
}

.seo-lab-canvas::before {
  content: "";
  position: absolute;
  inset: 34px;
  border-radius: 28px;
  border: 1px solid var(--line-soft);
  background-image:
    linear-gradient(var(--line-soft) 1px, transparent 1px),
    linear-gradient(90deg, var(--line-soft) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: 0.68;
}

.seo-layer {
  position: absolute;
  z-index: 2;
  width: min(78%, 480px);
  padding: 20px 22px;
  border-radius: 22px;
  border: 1px solid var(--line-soft);
  background: rgba(255,255,255,0.88);
  color: #000;
  box-shadow: 0 18px 60px rgba(0,0,0,0.22);
}

.seo-layer span {
  display: block;
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 7px;
}

.seo-layer b {
  font-size: 23px;
  letter-spacing: -0.055em;
}

.layer-one { left: 34px; top: 76px; }
.layer-two { right: 34px; top: 222px; }
.layer-three { left: 64px; bottom: 82px; }

.seo-lab-core {
  position: absolute;
  z-index: 3;
  right: 70px;
  bottom: 70px;
  width: 116px;
  height: 116px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--orange);
  color: #fff;
  font-size: 32px;
  font-weight: 900;
  letter-spacing: -0.06em;
  box-shadow: 0 0 0 20px rgba(249,84,55,0.14), 0 0 70px rgba(249,84,55,0.34);
}

.seo-focus-lab-section {
  background: #fff;
  color: #000;
  border-top: 1px solid rgba(0,0,0,0.08);
}

.seo-focus-lab-section .section-heading {
  color: #000;
}

.seo-focus-lab-section .section-copy {
  color: rgba(49,49,53,0.74);
}

.seo-focus-layout {
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: 42px;
  align-items: center;
}

.seo-system-stack {
  display: grid;
  gap: 12px;
  counter-reset: seo-stack;
}

.seo-system-stack article {
  display: grid;
  grid-template-columns: 118px 0.8fr 1fr;
  gap: 22px;
  align-items: center;
  padding: 20px 22px;
  border: 1px solid rgba(0,0,0,0.09);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 14px 42px rgba(0,0,0,0.045);
}

.seo-system-stack span {
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.seo-system-stack h3 {
  font-size: 28px;
  line-height: 1;
  letter-spacing: -0.06em;
}

.seo-system-stack p {
  color: rgba(49,49,53,0.70);
  font-size: 14px;
}

.seo-search-map-section {
  background: #000;
  color: #fff;
}

.search-map-strip {
  padding: 34px;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 30px;
  background:
    radial-gradient(circle at 88% 20%, rgba(249,84,55,0.22), transparent 22rem),
    rgba(255,255,255,0.045);
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 30px;
  align-items: center;
}

.search-map-strip h2 {
  font-size: clamp(2.2rem, 4.6vw, 4.4rem);
  line-height: 0.95;
  letter-spacing: -0.068em;
}

.search-map-flow {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.search-map-flow article {
  min-height: 170px;
  padding: 18px;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(0,0,0,0.22);
}

.search-map-flow span {
  display: inline-flex;
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  margin-bottom: 28px;
}

.search-map-flow strong {
  display: block;
  font-size: 20px;
  letter-spacing: -0.04em;
  margin-bottom: 8px;
}

.search-map-flow small {
  color: rgba(255,255,255,0.62);
  line-height: 1.4;
}

@media (max-width: 1120px) {
  .local-search-board,
  .seo-lab-grid,
  .seo-focus-layout,
  .search-map-strip {
    grid-template-columns: 1fr;
  }

  .seo-lab-canvas {
    min-height: 500px;
  }

  .seo-system-stack article {
    grid-template-columns: 100px 1fr;
  }

  .seo-system-stack article p {
    grid-column: 2;
  }

  .search-map-flow {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 760px) {
  .local-showcase-hero,
  .seo-lab-hero {
    padding: 74px 0 62px;
  }

  .local-hero-center h1,
  .seo-lab-copy h1 {
    font-size: clamp(3rem, 16vw, 4.7rem);
  }

  .local-search-board,
  .seo-lab-canvas {
    padding: 0;
  }

  .local-board-map {
    min-height: 300px;
  }

  .local-board-panel,
  .search-map-flow {
    grid-template-columns: 1fr;
  }

  .seo-lab-canvas {
    min-height: 420px;
  }

  .seo-layer {
    width: calc(100% - 40px);
    left: 20px !important;
    right: auto !important;
  }

  .layer-one { top: 40px; }
  .layer-two { top: 160px; }
  .layer-three { bottom: 48px; }

  .seo-lab-core {
    right: 24px;
    bottom: 24px;
    width: 82px;
    height: 82px;
    font-size: 24px;
  }

  .seo-system-stack article {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .seo-system-stack article p {
    grid-column: auto;
  }

  .search-map-strip {
    padding: 26px;
  }
}

/* === SEO page centered console hero refresh === */
.seo-console-hero {
  position: relative;
  z-index: 1;
  padding: 104px 0 96px;
}

.seo-console-head {
  max-width: 1040px;
  margin: 0 auto 46px;
  text-align: center;
}

.seo-console-head .eyebrow {
  justify-content: center;
}

.seo-console-head .eyebrow::before {
  display: none;
}

.seo-console-head h1 {
  max-width: 980px;
  margin: 0 auto;
  font-size: clamp(3.25rem, 7.8vw, 7.45rem);
  line-height: 0.88;
  letter-spacing: -0.092em;
  font-weight: 900;
}

.seo-console-head p {
  max-width: 780px;
  margin: 28px auto 0;
  color: var(--text-soft);
  font-size: clamp(1.05rem, 1.55vw, 1.22rem);
}

.seo-console-actions {
  justify-content: center;
}

.seo-console-stage {
  position: relative;
  min-height: 560px;
  border: 1px solid var(--line);
  border-radius: 36px;
  background:
    radial-gradient(circle at 50% 30%, rgba(249,84,55,0.16), transparent 22rem),
    linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.025));
  box-shadow: var(--shadow);
  overflow: hidden;
}

.seo-console-stage::before {
  content: "";
  position: absolute;
  inset: 34px;
  border-radius: 30px;
  border: 1px solid var(--line-soft);
  background-image:
    linear-gradient(var(--line-soft) 1px, transparent 1px),
    linear-gradient(90deg, var(--line-soft) 1px, transparent 1px);
  background-size: 38px 38px;
  opacity: 0.64;
}

.seo-console-browser {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 52%;
  width: min(620px, calc(100% - 64px));
  min-height: 350px;
  transform: translate(-50%, -50%);
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(0,0,0,0.66);
  box-shadow: 0 30px 90px rgba(0,0,0,0.42);
  backdrop-filter: blur(10px);
  overflow: hidden;
}

.browser-topline {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--line-soft);
}

.browser-topline span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255,255,255,0.28);
}

.browser-topline span:first-child {
  background: var(--orange);
}

.browser-topline strong {
  margin-left: 10px;
  color: var(--text-soft);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.browser-search-row {
  margin: 22px;
  padding: 18px 20px;
  border-radius: 18px;
  background: rgba(255,255,255,0.08);
  border: 1px solid var(--line-soft);
}

.browser-search-row small {
  display: block;
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.browser-search-row b {
  display: block;
  font-size: clamp(1.2rem, 2.4vw, 2rem);
  line-height: 1;
  letter-spacing: -0.06em;
}

.browser-chart {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 22px;
  height: 152px;
  display: flex;
  align-items: end;
  gap: 12px;
  padding: 20px;
  border-radius: 20px;
  border: 1px solid var(--line-soft);
  background:
    linear-gradient(var(--line-soft) 1px, transparent 1px),
    rgba(255,255,255,0.045);
  background-size: 100% 38px;
}

.browser-chart i {
  flex: 1;
  border-radius: 999px 999px 8px 8px;
  background: linear-gradient(180deg, var(--orange), rgba(249,84,55,0.22));
  box-shadow: 0 0 28px rgba(249,84,55,0.20);
}

.seo-floating-card {
  position: absolute;
  z-index: 3;
  width: 250px;
  padding: 20px;
  border-radius: 22px;
  border: 1px solid var(--line-soft);
  background: rgba(255,255,255,0.92);
  color: #000;
  box-shadow: 0 22px 70px rgba(0,0,0,0.24);
}

.seo-floating-card span {
  display: inline-flex;
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.14em;
  margin-bottom: 22px;
}

.seo-floating-card h3 {
  font-size: 24px;
  line-height: 0.98;
  letter-spacing: -0.06em;
  margin-bottom: 9px;
}

.seo-floating-card p {
  color: rgba(49,49,53,0.68);
  font-size: 13px;
  line-height: 1.45;
}

.card-technical {
  left: 46px;
  top: 62px;
}

.card-content {
  right: 52px;
  top: 120px;
}

.card-ai {
  left: 12%;
  bottom: 58px;
}

.seo-console-ring {
  position: absolute;
  right: 9%;
  bottom: 42px;
  width: 136px;
  height: 136px;
  border-radius: 50%;
  border: 1px solid rgba(249,84,55,0.55);
  box-shadow: 0 0 0 26px rgba(249,84,55,0.08), 0 0 0 56px rgba(249,84,55,0.035), 0 0 80px rgba(249,84,55,0.16);
}

@media (max-width: 1120px) {
  .seo-console-stage {
    min-height: 720px;
  }

  .seo-console-browser {
    top: 45%;
  }

  .card-technical {
    left: 28px;
    top: 28px;
  }

  .card-content {
    right: 28px;
    top: auto;
    bottom: 36px;
  }

  .card-ai {
    left: 28px;
    bottom: 36px;
  }

  .seo-console-ring {
    right: 40px;
    bottom: 190px;
  }
}

@media (max-width: 760px) {
  .seo-console-hero {
    padding: 74px 0 62px;
  }

  .seo-console-head h1 {
    font-size: clamp(3rem, 16vw, 4.7rem);
  }

  .seo-console-stage {
    min-height: auto;
    padding: 18px;
    display: grid;
    gap: 14px;
  }

  .seo-console-stage::before,
  .seo-console-ring {
    display: none;
  }

  .seo-console-browser,
  .seo-floating-card {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    width: 100%;
    transform: none;
  }

  .seo-console-browser {
    min-height: 345px;
  }

  .seo-floating-card {
    box-shadow: none;
  }
}


/* Final nav dropdown parity + Services active underline alignment */
.nav-item.has-dropdown > a.active::after,
.nav-item.has-dropdown > a:hover::after {
  bottom: -5px !important;
  width: calc(100% - 16px) !important;
}

.dropdown-menu {
  position: absolute !important;
  top: calc(100% + 16px) !important;
  left: 50% !important;
  width: min(330px, calc(100vw - 40px)) !important;
  min-width: 0 !important;
  padding: 8px !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 16px !important;
  background: rgba(10,10,12,0.96) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,0.32) !important;
  transform: translateX(-50%) translateY(8px) !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
  backdrop-filter: blur(18px);
}

.dropdown-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -18px !important;
  height: 18px !important;
}

.nav-item.has-dropdown:hover .dropdown-menu,
.nav-item.has-dropdown:focus-within .dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0) !important;
}

.dropdown-menu a {
  display: grid !important;
  grid-template-columns: 1fr 24px !important;
  grid-template-areas:
    "kicker arrow"
    "title arrow"
    "desc arrow" !important;
  gap: 2px 12px !important;
  min-height: 62px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  border: 1px solid transparent !important;
  color: rgba(255,255,255,0.74) !important;
  background: transparent !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.1 !important;
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.dropdown-menu a::after {
  content: "→" !important;
  position: static !important;
  grid-area: arrow !important;
  display: grid !important;
  place-items: center !important;
  width: 24px !important;
  height: 24px !important;
  align-self: center !important;
  border-radius: 999px !important;
  color: rgba(255,255,255,0.42) !important;
  background: rgba(255,255,255,0.055) !important;
  transform: none !important;
}

.dropdown-menu a:hover {
  background: rgba(249,84,55,0.10) !important;
  border-color: rgba(249,84,55,0.18) !important;
  color: #FFFFFF !important;
}

.dropdown-kicker {
  grid-area: kicker !important;
  display: block !important;
  color: var(--orange) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

.dropdown-menu strong {
  grid-area: title !important;
  display: block !important;
  color: #FFFFFF !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  letter-spacing: -0.045em !important;
  line-height: 1.05 !important;
}

.dropdown-menu small {
  grid-area: desc !important;
  display: block !important;
  color: rgba(255,255,255,0.52) !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.25 !important;
  max-width: none !important;
}

@media (max-width: 1080px) {
  .nav-links.mobile-open .nav-item {
    display: grid;
    width: 100%;
  }

  .nav-links.mobile-open .nav-item > a {
    padding: 13px 12px;
    border-radius: 14px;
  }

  .dropdown-menu {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 0 0 10px !important;
    backdrop-filter: none !important;
  }

  .dropdown-menu::before {
    display: none !important;
  }

  .dropdown-menu a {
    min-height: 0 !important;
    padding: 10px 12px !important;
  }

  .dropdown-menu a::after {
    display: none !important;
  }

  .nav-item.has-dropdown:hover .dropdown-menu,
  .nav-item.has-dropdown:focus-within .dropdown-menu {
    transform: none !important;
  }
}


/* === Solutions page refresh: business-niche SEO solutions === */
.solutions-page {
  background: #000000;
  color: #FFFFFF;
  overflow: hidden;
}

.solutions-hero-v2 {
  position: relative;
  min-height: calc(100vh - 82px);
  display: grid;
  align-items: center;
  padding: 116px 0 94px;
  background:
    radial-gradient(circle at 76% 24%, rgba(249,84,55,.18), transparent 31rem),
    radial-gradient(circle at 13% 10%, rgba(255,255,255,.075), transparent 28rem),
    linear-gradient(180deg, #000000, #070708 78%, #000000);
  isolation: isolate;
}

.solutions-hero-v2::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(to bottom, black, transparent 78%);
  pointer-events: none;
}

.solutions-hero-v2::after {
  content: "";
  position: absolute;
  width: 36vw;
  height: 36vw;
  min-width: 360px;
  min-height: 360px;
  right: -12vw;
  top: -14vw;
  border-radius: 50%;
  border: 1px solid rgba(249,84,55,.12);
  box-shadow:
    0 0 0 44px rgba(249,84,55,.025),
    0 0 0 96px rgba(249,84,55,.015);
  pointer-events: none;
}

.solutions-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .98fr);
  gap: 64px;
  align-items: center;
}

.solutions-hero-copy h1 {
  max-width: 800px;
  font-size: clamp(3.45rem, 8vw, 7.55rem);
  line-height: .88;
  letter-spacing: -.086em;
  font-weight: 900;
}

.solutions-hero-sub {
  max-width: 690px;
  margin-top: 28px;
  color: rgba(255,255,255,.78);
  font-size: clamp(1.15rem, 1.9vw, 1.42rem);
  line-height: 1.45;
}

.solutions-hero-note {
  max-width: 640px;
  margin-top: 18px;
  color: rgba(255,255,255,.56);
  font-size: 16px;
}

.solutions-hero-visual {
  position: relative;
  min-height: 560px;
  border-radius: 42px;
  background:
    radial-gradient(circle at 50% 42%, rgba(249,84,55,.24), transparent 22rem),
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.015));
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 36px 120px rgba(0,0,0,.38);
  overflow: hidden;
}

.solutions-hero-visual::before {
  content: "";
  position: absolute;
  inset: 30px;
  border-radius: 50%;
  border: 1px dashed rgba(255,255,255,.12);
  animation: solutionsSpin 42s linear infinite;
}

.solutions-hero-visual::after {
  content: "";
  position: absolute;
  inset: 110px;
  border-radius: 50%;
  background: rgba(0,0,0,.48);
  border: 1px solid rgba(249,84,55,.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 0 80px rgba(249,84,55,.18);
}

.solutions-orbit-card {
  position: absolute;
  z-index: 3;
  display: grid;
  gap: 5px;
  padding: 16px 18px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(10,10,12,.82);
  backdrop-filter: blur(16px);
  box-shadow: 0 24px 70px rgba(0,0,0,.30);
}

.solutions-orbit-card span {
  color: var(--orange);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.solutions-orbit-card strong {
  font-size: 16px;
  line-height: 1.08;
  letter-spacing: -.045em;
}

.solutions-orbit-card.main {
  left: 50%;
  top: 50%;
  width: min(78%, 330px);
  min-height: 138px;
  place-content: center;
  text-align: center;
  transform: translate(-50%, -50%);
  border-radius: 28px;
  background:
    radial-gradient(circle at 50% 0%, rgba(249,84,55,.24), transparent 72%),
    rgba(8,8,9,.94);
}

.solutions-orbit-card.main strong {
  font-size: clamp(1.45rem, 2.4vw, 2.05rem);
}

.solutions-orbit-card.card-one { left: 34px; top: 78px; }
.solutions-orbit-card.card-two { right: 30px; top: 178px; }
.solutions-orbit-card.card-three { left: 60px; bottom: 82px; }

.solutions-ring {
  position: absolute;
  z-index: 2;
  border-radius: 50%;
  border: 1px solid rgba(249,84,55,.16);
}

.solutions-ring.ring-one {
  width: 74%;
  height: 74%;
  left: 13%;
  top: 13%;
  animation: solutionsSpin 28s linear infinite reverse;
}

.solutions-ring.ring-two {
  width: 48%;
  height: 48%;
  left: 26%;
  top: 26%;
  border-color: rgba(255,255,255,.10);
  animation: solutionsSpin 24s linear infinite;
}

.solutions-node {
  position: absolute;
  z-index: 4;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 8px rgba(249,84,55,.10), 0 0 35px rgba(249,84,55,.60);
}

.solutions-node.n1 { left: 25%; top: 25%; }
.solutions-node.n2 { right: 22%; top: 54%; }
.solutions-node.n3 { left: 36%; bottom: 18%; }

@keyframes solutionsSpin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.solutions-intro-strip {
  background: #F6F6F3;
  color: #000000;
  position: relative;
}

.solutions-intro-strip::before {
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  left: -120px;
  top: -180px;
  border-radius: 50%;
  border: 1px solid rgba(249,84,55,.24);
  box-shadow:
    0 0 0 12px rgba(249,84,55,.035),
    0 0 0 24px rgba(249,84,55,.025),
    0 0 0 36px rgba(249,84,55,.018);
}

.solutions-strip-head {
  max-width: 900px;
  margin: 0 auto 44px;
  text-align: center;
}

.solutions-strip-head h2 {
  color: #313135;
  font-size: clamp(2.3rem, 5.6vw, 4.85rem);
  line-height: .98;
  letter-spacing: -.07em;
  font-weight: 900;
}

.solutions-niche-row {
  display: grid;
  grid-template-columns: 1.18fr .91fr .91fr;
  gap: 22px;
}

.solutions-niche-tile {
  position: relative;
  min-height: 290px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 28px;
  border-radius: 22px;
  overflow: hidden;
  color: #FFFFFF;
  background:
    linear-gradient(135deg, rgba(0,0,0,.16), rgba(0,0,0,.62)),
    radial-gradient(circle at 25% 18%, rgba(249,84,55,.34), transparent 20rem),
    #313135;
  box-shadow: 0 24px 70px rgba(0,0,0,.10);
  transition: transform .18s ease, box-shadow .18s ease;
}

.solutions-niche-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 34px 34px;
  opacity: .28;
  mask-image: linear-gradient(to bottom, black, transparent 92%);
}

.solutions-niche-tile:hover {
  transform: translateY(-6px);
  box-shadow: 0 34px 80px rgba(0,0,0,.18);
}

.solutions-niche-tile.featured {
  background:
    linear-gradient(135deg, rgba(0,0,0,.05), rgba(0,0,0,.68)),
    radial-gradient(circle at 14% 10%, rgba(249,84,55,.42), transparent 20rem),
    #000000;
}

.solutions-niche-tile h3 {
  position: relative;
  z-index: 1;
  max-width: 310px;
  font-size: clamp(2rem, 3.2vw, 3.25rem);
  line-height: .98;
  letter-spacing: -.075em;
  font-weight: 900;
}

.solutions-niche-tile small,
.solutions-niche-tile .tile-number {
  position: relative;
  z-index: 1;
}

.solutions-niche-tile small {
  max-width: 260px;
  color: rgba(255,255,255,.70);
  font-size: 14px;
  font-weight: 700;
}

.tile-number {
  display: inline-flex;
  width: fit-content;
  color: rgba(255,255,255,.58);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .14em;
}

.solutions-niche-tile b {
  position: absolute;
  z-index: 1;
  right: 24px;
  bottom: 24px;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #FFFFFF;
  color: #000000;
  font-size: 18px;
  font-weight: 700;
}

.solution-lead-section {
  background:
    radial-gradient(circle at 88% 10%, rgba(249,84,55,.15), transparent 28rem),
    #000000;
}

.solution-lead-grid {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 24px;
  align-items: stretch;
}

.solution-lead-card,
.solution-detail-panel,
.solution-system-card,
.local-service-card,
.stack-card {
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
  box-shadow: 0 28px 90px rgba(0,0,0,.24);
}

.solution-lead-card {
  min-height: 520px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 38px;
  border-radius: 32px;
  background:
    radial-gradient(circle at top right, rgba(249,84,55,.22), transparent 22rem),
    #0B0B0D;
}

.solution-lead-card h2,
.local-service-card h2 {
  font-size: clamp(2.8rem, 5.2vw, 5.35rem);
  line-height: .91;
  letter-spacing: -.08em;
  font-weight: 900;
}

.solution-lead-card p,
.local-service-card p {
  margin-top: 22px;
  color: rgba(255,255,255,.68);
  font-size: 17px;
  max-width: 620px;
}

.solution-detail-panel {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  padding: 1px;
  border-radius: 32px;
  overflow: hidden;
  background: rgba(255,255,255,.10);
}

.solution-panel-block {
  padding: 34px;
  background: #101013;
}

.solution-panel-block.solve {
  background:
    radial-gradient(circle at 92% 18%, rgba(249,84,55,.14), transparent 20rem),
    #141417;
}

.solution-panel-block h3,
.solution-two-col h4,
.stack-card h3 {
  color: #FFFFFF;
  font-size: 22px;
  line-height: 1.06;
  letter-spacing: -.045em;
  margin-bottom: 18px;
}

.solution-panel-block ul,
.solution-two-col ul {
  display: grid;
  gap: 13px;
  list-style: none;
}

.solution-panel-block li,
.solution-two-col li {
  position: relative;
  padding-left: 24px;
  color: rgba(255,255,255,.70);
  font-size: 15px;
}

.solution-panel-block li::before,
.solution-two-col li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 6px rgba(249,84,55,.10);
}


.solution-split-section {
  background: #FFFFFF;
  color: #000000;
}

.solution-split-grid {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 34px;
  align-items: center;
}

.solution-split-section .section-heading,
.solution-split-section .solution-copy-block h2 {
  color: #000000;
}

.solution-split-section .section-copy {
  color: rgba(49,49,53,.72);
}

.solution-system-card {
  padding: 34px;
  border-radius: 32px;
  color: #FFFFFF;
  background:
    radial-gradient(circle at 0% 0%, rgba(249,84,55,.20), transparent 25rem),
    #000000;
}

.solution-card-top {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: start;
  margin-bottom: 34px;
  padding-bottom: 26px;
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.solution-card-top span {
  color: var(--orange);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .15em;
}

.solution-card-top h3 {
  max-width: 640px;
  font-size: clamp(2rem, 4vw, 4.1rem);
  line-height: .94;
  letter-spacing: -.075em;
  text-align: right;
}

.solution-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
}

.local-service-section {
  background:
    linear-gradient(180deg, #080809, #000000);
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.local-service-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 28px;
  align-items: start;
}

.local-service-card {
  position: sticky;
  top: 118px;
  padding: 36px;
  border-radius: 32px;
  background:
    radial-gradient(circle at top right, rgba(249,84,55,.18), transparent 20rem),
    #0B0B0D;
}

.local-service-stack {
  display: grid;
  gap: 16px;
}

.stack-card {
  min-height: 190px;
  display: grid;
  align-content: center;
  padding: 28px;
  border-radius: 28px;
  background: rgba(255,255,255,.045);
}

.stack-card span {
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.stack-card p {
  color: rgba(255,255,255,.64);
  font-size: 15px;
  max-width: 640px;
}

.solutions-final-cta-section {
  background: #F6F6F3;
  color: #000000;
}

.solutions-final-cta {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 38px;
  padding: 46px;
  border-radius: 34px;
  background:
    radial-gradient(circle at 88% 20%, rgba(249,84,55,.18), transparent 26rem),
    #FFFFFF;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 28px 80px rgba(0,0,0,.08);
}

.solutions-final-cta::before {
  content: "GROW ORGANICALLY";
  position: absolute;
  left: -5%;
  bottom: -8%;
  color: transparent;
  -webkit-text-stroke: 1px rgba(0,0,0,.07);
  text-stroke: 1px rgba(0,0,0,.07);
  font-size: clamp(4rem, 12vw, 11rem);
  line-height: .8;
  font-weight: 900;
  letter-spacing: -.08em;
  white-space: nowrap;
  pointer-events: none;
}

.solutions-final-cta > * {
  position: relative;
  z-index: 1;
}

.solutions-final-cta h2 {
  max-width: 750px;
  color: #000000;
  font-size: clamp(2.4rem, 5.3vw, 5rem);
  line-height: .92;
  letter-spacing: -.08em;
  font-weight: 900;
}

.solutions-final-cta p {
  max-width: 620px;
  margin-top: 20px;
  color: rgba(49,49,53,.72);
  font-size: 17px;
}

@media (max-width: 1080px) {
  .solutions-hero-grid,
  .solution-lead-grid,
  .solution-split-grid,
  .local-service-grid {
    grid-template-columns: 1fr;
  }

  .solutions-hero-v2 {
    min-height: auto;
    padding: 92px 0 72px;
  }

  .solutions-hero-visual {
    min-height: 500px;
  }

  .solutions-niche-row {
    grid-template-columns: 1fr;
  }

  .solutions-niche-tile {
    min-height: 230px;
  }

  .local-service-card {
    position: relative;
    top: auto;
  }

  .solutions-final-cta {
    display: grid;
  }
}

@media (max-width: 760px) {
  .solutions-hero-v2 {
    padding: 74px 0 54px;
  }

  .solutions-hero-copy h1 {
    font-size: clamp(3rem, 16vw, 4.65rem);
  }

  .solutions-hero-visual {
    min-height: 390px;
    border-radius: 28px;
  }

  .solutions-orbit-card {
    padding: 12px 13px;
    border-radius: 14px;
  }

  .solutions-orbit-card.main {
    width: 78%;
    min-height: 108px;
  }

  .solutions-orbit-card.card-one { left: 16px; top: 48px; }
  .solutions-orbit-card.card-two { right: 14px; top: 130px; }
  .solutions-orbit-card.card-three { left: 20px; bottom: 56px; }

  .solutions-orbit-card strong {
    font-size: 13px;
  }

  .solutions-niche-tile,
  .solution-lead-card,
  .solution-system-card,
  .local-service-card,
  .solutions-final-cta {
    padding: 24px;
    border-radius: 24px;
  }

  .solution-two-col {
    grid-template-columns: 1fr;
  }

  


  


  .solutions-final-cta .btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .solutions-hero-visual::before,
  .solutions-ring {
    animation: none !important;
  }
}


/* === Solutions hero animation: Search Strategy Adapts to Your Business === */
.solutions-page .strategy-engine-visual {
  min-height: 600px;
  border-radius: 42px;
  background:
    radial-gradient(circle at 50% 42%, rgba(249,84,55,.20), transparent 23rem),
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.018));
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 36px 120px rgba(0,0,0,.38);
  overflow: hidden;
  position: relative;
  isolation: isolate;
}

.solutions-page .strategy-engine-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .62;
  mask-image: radial-gradient(circle at 50% 45%, black, transparent 74%);
  animation: strategyGridDrift 18s linear infinite;
}

.solutions-page .strategy-engine-visual::after {
  content: "";
  position: absolute;
  inset: 62px;
  border-radius: 50%;
  border: 1px dashed rgba(249,84,55,.22);
  box-shadow:
    0 0 0 38px rgba(249,84,55,.035),
    0 0 90px rgba(249,84,55,.16);
  opacity: .8;
  animation: strategyOrbitSpin 36s linear infinite;
}

.strategy-engine-panel {
  position: absolute;
  inset: 34px;
  z-index: 2;
  border-radius: 34px;
}

.strategy-panel-top {
  position: absolute;
  left: 50%;
  top: 24px;
  transform: translateX(-50%);
  min-width: 320px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 10px;
  align-items: center;
  padding: 14px 18px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(7,7,8,.72);
  backdrop-filter: blur(18px);
  box-shadow: 0 22px 70px rgba(0,0,0,.24);
}

.strategy-status-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 0 6px rgba(249,84,55,.12), 0 0 24px rgba(249,84,55,.65);
  grid-row: span 2;
}

.strategy-panel-top span:not(.strategy-status-dot) {
  color: #FFFFFF;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: -.025em;
}

.strategy-panel-top small {
  color: rgba(255,255,255,.52);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .10em;
  text-transform: uppercase;
}

.strategy-searchbar {
  position: absolute;
  left: 50%;
  top: 128px;
  z-index: 7;
  width: min(88%, 520px);
  min-height: 64px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 0 19px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.13);
  background: rgba(255,255,255,.93);
  color: #000000;
  box-shadow: 0 26px 80px rgba(0,0,0,.28);
  transform: translateX(-50%);
}

.search-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 50%;
  background: rgba(249,84,55,.10);
  color: var(--orange);
  font-size: 22px;
  font-weight: 900;
}

.search-static {
  color: rgba(49,49,53,.64);
  font-size: 14px;
  font-weight: 850;
  white-space: nowrap;
}

.strategy-typed {
  position: relative;
  min-width: 220px;
  height: 22px;
  overflow: hidden;
  color: #000000;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: -.035em;
}

.strategy-typed::after {
  content: "";
  position: absolute;
  left: 0px; /* increase this to push cursor more left */
  top: 2px;
  width: 2px;
  height: 18px;
  background: var(--orange);
  animation: strategyCursorBlink .9s steps(1) infinite;
}

.strategy-typed span {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  white-space: nowrap;
  animation: strategyTypedCycle 9s ease-in-out infinite;
}

.strategy-typed span:nth-child(2) { animation-delay: 3s; }
.strategy-typed span:nth-child(3) { animation-delay: 6s; }

.strategy-result-window {
  position: absolute;
  left: 50%;
  top: 216px;
  z-index: 6;
  width: min(80%, 430px);
  min-height: 246px;
  transform: translateX(-50%);
}

.strategy-result-card {
  position: absolute;
  inset: 0;
  bottom: auto;
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 26px;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 100% 0%, rgba(249,84,55,.20), transparent 16rem),
    rgba(9,9,11,.86);
  backdrop-filter: blur(18px);
  box-shadow: 0 34px 90px rgba(0,0,0,.34);
  opacity: 0;
  transform: translateY(16px) scale(.97);
  animation: strategyCardCycle 9s ease-in-out infinite;
}

.strategy-result-two { animation-delay: 3s; }
.strategy-result-three { animation-delay: 6s; }

.result-kicker {
  color: var(--orange);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.strategy-result-card h3 {
  color: #FFFFFF;
  font-size: clamp(1.55rem, 2.5vw, 2.35rem);
  line-height: .98;
  letter-spacing: -.065em;
  font-weight: 900;
}

.result-row {
  display: grid;
  gap: 4px;
  padding-top: 13px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.result-row b {
  color: rgba(255,255,255,.92);
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.result-row p {
  color: rgba(255,255,255,.66);
  font-size: 13px;
  line-height: 1.45;
}

.floating-strategy-card {
  position: absolute;
  z-index: 5;
  width: 205px;
  padding: 18px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(10,10,12,.74);
  backdrop-filter: blur(16px);
  box-shadow: 0 24px 70px rgba(0,0,0,.25);
  animation: strategyFloat 6.4s ease-in-out infinite;
}

.floating-strategy-card span {
  display: block;
  color: #FFFFFF;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: -.045em;
  margin-bottom: 12px;
}

.floating-strategy-card ul {
  display: grid;
  gap: 8px;
  list-style: none;
}

.floating-strategy-card li {
  position: relative;
  padding-left: 15px;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  font-weight: 700;
}

.floating-strategy-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--orange);
}

.franchise-card {
  left: 24px;
  top: 204px;
  animation-delay: 0s;
}

.ecommerce-card {
  right: 22px;
  top: 104px;
  animation-delay: .8s;
}

.local-card {
  right: 34px;
  bottom: 48px;
  animation-delay: 1.5s;
}

.strategy-connector {
  position: absolute;
  z-index: 4;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(249,84,55,.72), transparent);
  transform-origin: left center;
  opacity: .78;
  filter: drop-shadow(0 0 10px rgba(249,84,55,.36));
}

.connector-one {
  width: 160px;
  left: 156px;
  top: 302px;
  transform: rotate(-8deg);
  animation: strategyLinePulse 3s ease-in-out infinite;
}

.connector-two {
  width: 138px;
  right: 164px;
  top: 214px;
  transform: rotate(22deg);
  animation: strategyLinePulse 3s ease-in-out infinite .7s;
}

.connector-three {
  width: 148px;
  right: 178px;
  bottom: 152px;
  transform: rotate(-18deg);
  animation: strategyLinePulse 3s ease-in-out infinite 1.35s;
}

@keyframes strategyTypedCycle {
  0%, 4% {
    opacity: 0;
    transform: translateY(10px);
    clip-path: inset(0 100% 0 0);
  }
  10%, 28% {
    opacity: 1;
    transform: translateY(0);
    clip-path: inset(0 0 0 0);
  }
  32%, 100% {
    opacity: 0;
    transform: translateY(-10px);
    clip-path: inset(0 0 0 100%);
  }
}

@keyframes strategyCardCycle {
  0%, 5% {
    opacity: 0;
    transform: translateY(18px) scale(.965);
  }
  12%, 29% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  34%, 100% {
    opacity: 0;
    transform: translateY(-14px) scale(.98);
  }
}

@keyframes strategyCursorBlink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

@keyframes strategyFloat {
  0%, 100% { transform: translate3d(0,0,0); }
  50% { transform: translate3d(0,-10px,0); }
}

@keyframes strategyLinePulse {
  0%, 100% {
    opacity: .25;
    filter: drop-shadow(0 0 3px rgba(249,84,55,.20));
  }
  50% {
    opacity: .86;
    filter: drop-shadow(0 0 12px rgba(249,84,55,.42));
  }
}

@keyframes strategyGridDrift {
  from { background-position: 0 0, 0 0; }
  to { background-position: 42px 42px, 42px 42px; }
}

/* Hide previous orbit illustration pieces if any remain in cache/order */
.solutions-page .strategy-engine-visual > .solutions-orbit-card,
.solutions-page .strategy-engine-visual > .solutions-ring,
.solutions-page .strategy-engine-visual > .solutions-node {
  display: none !important;
}

@media (max-width: 1080px) {
  .solutions-page .strategy-engine-visual {
    min-height: 610px;
  }

  .floating-strategy-card {
    width: 190px;
  }

  .franchise-card {
    left: 20px;
    top: 350px;
  }

  .ecommerce-card {
    right: 20px;
    top: 342px;
  }

  .local-card {
    left: 50%;
    right: auto;
    bottom: 22px;
    transform: translateX(-50%);
  }

  .local-card {
    animation-name: strategyFloatCentered;
  }

  .strategy-connector {
    display: none;
  }
}

@media (max-width: 760px) {
  .solutions-page .strategy-engine-visual {
    min-height: 660px;
    border-radius: 28px;
  }

  .strategy-engine-panel {
    inset: 18px;
  }

  .strategy-panel-top {
    top: 16px;
    min-width: 0;
    width: calc(100% - 22px);
  }

  .strategy-searchbar {
    top: 102px;
    width: calc(100% - 18px);
    min-height: 58px;
    padding-inline: 13px;
    gap: 8px;
  }

  .search-static {
    display: none;
  }

  .strategy-typed {
    min-width: 0;
    flex: 1;
    font-size: 13px;
  }

  .strategy-result-window {
    top: 184px;
    width: calc(100% - 18px);
    min-height: 270px;
  }

  .strategy-result-card {
    padding: 21px;
    border-radius: 22px;
  }

  .floating-strategy-card {
    width: calc(50% - 18px);
    padding: 14px;
    border-radius: 18px;
  }

  .franchise-card {
    left: 10px;
    top: 480px;
  }

  .ecommerce-card {
    right: 10px;
    top: 480px;
  }

  .local-card {
    display: none;
  }

  .floating-strategy-card span {
    font-size: 13px;
  }

  .floating-strategy-card li {
    font-size: 11px;
  }
}

@keyframes strategyFloatCentered {
  0%, 100% { transform: translate3d(-50%,0,0); }
  50% { transform: translate3d(-50%,-10px,0); }
}

@media (prefers-reduced-motion: reduce) {
  .solutions-page .strategy-engine-visual::before,
  .solutions-page .strategy-engine-visual::after,
  .strategy-typed span,
  .strategy-result-card,
  .floating-strategy-card,
  .strategy-connector {
    animation: none !important;
  }

  .strategy-typed span:first-child,
  .strategy-result-card:first-child {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }

  .strategy-typed span:not(:first-child),
  .strategy-result-card:not(:first-child) {
    display: none !important;
  }
}


/* === Solutions hero animation refinements: no background box, wider card spread, black fixed search text === */
.solutions-page .strategy-engine-visual {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.solutions-page .strategy-engine-visual::before {
  opacity: .42 !important;
  mask-image: radial-gradient(circle at 50% 45%, black, transparent 70%) !important;
}

.solutions-page .strategy-engine-visual::after {
  display: none !important;
}

.search-static {
  color: #000000 !important;
}

.floating-strategy-card {
  width: 188px !important;
  z-index: 5 !important;
}

.franchise-card {
  left: -6px !important;
  top: 286px !important;
}

.ecommerce-card {
  right: -6px !important;
  top: 286px !important;
}

.local-card {
  left: 50% !important;
  right: auto !important;
  bottom: 18px !important;
  transform: translateX(-50%) !important;
  animation-name: strategyFloatCentered !important;
}

.connector-one {
  width: 132px !important;
  left: 132px !important;
  top: 360px !important;
  transform: rotate(-18deg) !important;
}

.connector-two {
  width: 132px !important;
  right: 132px !important;
  top: 360px !important;
  transform: rotate(18deg) !important;
}

.connector-three {
  width: 126px !important;
  left: 50% !important;
  right: auto !important;
  bottom: 138px !important;
  transform: translateX(-50%) rotate(90deg) !important;
}

@media (max-width: 1080px) {
  .solutions-page .strategy-engine-visual {
    overflow: visible !important;
  }

  .franchise-card {
    left: 0 !important;
    top: 432px !important;
  }

  .ecommerce-card {
    right: 0 !important;
    top: 432px !important;
  }

  .local-card {
    bottom: 4px !important;
  }
}

@media (max-width: 760px) {
  .solutions-page .strategy-engine-visual {
    min-height: 690px !important;
  }

  .franchise-card {
    left: 0 !important;
    top: 500px !important;
  }

  .ecommerce-card {
    right: 0 !important;
    top: 500px !important;
  }
}


/* Spread the surrounding business cards away from the central search/result flow */
.strategy-engine-panel,
.solutions-page .strategy-engine-visual {
  overflow: visible !important;
}

.strategy-result-window {
  z-index: 6 !important;
}

.strategy-searchbar {
  z-index: 8 !important;
}

.floating-strategy-card {
  width: 178px !important;
  z-index: 5 !important;
  animation: strategyCardFloatY 6.4s ease-in-out infinite !important;
}

.franchise-card {
  left: -160px !important;
  top: -40px !important;
  animation-delay: 0s !important;
}

.ecommerce-card {
  right: -180px !important;
  top: 62px !important;
  animation-delay: .8s !important;
}

.local-card {
  left: -138px !important;
  right: auto !important;
  bottom: 42px !important;
  transform: none !important;
  animation: strategyCardFloatY 6.4s ease-in-out infinite !important;
  animation-delay: 1.5s !important;
}

/* This animation uses translate instead of transform, so local-card can float properly */
@keyframes strategyCardFloatY {
  0%, 100% {
    translate: 0 0;
  }

  50% {
    translate: 0 -10px;
  }
}

/* Re-aim connector lines toward the spread cards without crossing the result card */
.connector-one {
  width: 155px !important;
  left: 76px !important;
  top: 118px !important;
  transform: rotate(18deg) !important;
}

.connector-two {
  width: 155px !important;
  right: 78px !important;
  top: 186px !important;
  transform: rotate(158deg) !important;
}

.connector-three {
  width: 150px !important;
  left: 92px !important;
  right: auto !important;
  bottom: 126px !important;
  transform: rotate(-20deg) !important;
}

@media (max-width: 1080px) {
  .solutions-page .strategy-engine-visual {
    min-height: 820px !important;
    overflow: visible !important;
  }

  .strategy-engine-panel {
    overflow: visible !important;
  }

  .floating-strategy-card {
    width: 190px !important;
    animation: strategyCardFloatY 6.4s ease-in-out infinite !important;
  }

  .franchise-card {
    left: 4px !important;
    top: 500px !important;
    animation-delay: 0s !important;
  }

  .ecommerce-card {
    right: 4px !important;
    top: 500px !important;
    animation-delay: .8s !important;
  }

  .local-card {
    left: 50% !important;
    right: auto !important;
    bottom: 20px !important;
    width: 230px !important;
    transform: translateX(-50%) !important;
    animation: strategyCardFloatY 6.4s ease-in-out infinite !important;
    animation-delay: 1.5s !important;
  }

  .connector-one,
  .connector-two,
  .connector-three {
    display: none !important;
  }
}

@media (max-width: 760px) {
  .solutions-page .strategy-engine-visual {
    min-height: 860px !important;
    overflow: visible !important;
  }

  .strategy-engine-panel {
    inset: 18px !important;
    overflow: visible !important;
  }

  .floating-strategy-card {
    width: calc(50% - 12px) !important;
    padding: 14px !important;
    border-radius: 18px !important;
    animation: strategyCardFloatY 6.4s ease-in-out infinite !important;
  }

  .franchise-card {
    left: 0 !important;
    top: 515px !important;
    animation-delay: 0s !important;
  }

  .ecommerce-card {
    right: 0 !important;
    top: 515px !important;
    animation-delay: .8s !important;
  }

  .local-card {
    display: grid !important;
    left: 50% !important;
    right: auto !important;
    top: 690px !important;
    bottom: auto !important;
    width: 100% !important;
    transform: translateX(-50%) !important;
    animation: strategyCardFloatY 6.4s ease-in-out infinite !important;
    animation-delay: 1.5s !important;
  }

  .connector-one,
  .connector-two,
  .connector-three {
    display: none !important;
  }
}

@media (max-width: 480px) {
  .solutions-page .strategy-engine-visual {
    min-height: 920px !important;
  }

  .franchise-card {
    left: 0 !important;
    top: 520px !important;
  }

  .ecommerce-card {
    right: 0 !important;
    top: 520px !important;
  }

  .local-card {
    top: 715px !important;
    width: 100% !important;
  }

  /* Make the rotating result card box taller, especially the Local Service card */
/* Result card sizing */
.strategy-result-window {
  min-height: 310px !important;
}

.strategy-result-card {
  min-height: 310px !important;
}

.strategy-result-three {
  min-height: 335px !important;
}


/* Mobile */
@media (max-width: 760px) {
  .strategy-result-window {
    min-height: 340px !important;
  }

  .strategy-result-card {
    min-height: 340px !important;
  }

  .strategy-result-three {
    min-height: 365px !important;
  }
}

/* Small mobile */
@media (max-width: 480px) {
  .strategy-result-window {
    min-height: 370px !important;
  }

  .strategy-result-card {
    min-height: 370px !important;
  }

  .strategy-result-three {
    min-height: 395px !important;
  }
}

@media (max-width: 480px) {
  .solutions-page .strategy-engine-visual {
    min-height: 980px !important;
  }

  .franchise-card {
    left: 0 !important;
    top: 590px !important;
  }

  .ecommerce-card {
    right: 0 !important;
    top: 590px !important;
  }

  .local-card {
    top: 790px !important;
    width: 100% !important;
  }
}

}


/* === Contact page centered hero === */
.contact-centered-hero {
  text-align: center;
}

.contact-hero-center {
  max-width: 980px;
  display: grid;
  justify-items: center;
  margin-inline: auto;
}

.contact-hero-center h1 {
  max-width: 930px;
}

.contact-hero-center .section-copy {
  max-width: 760px;
  margin-inline: auto;
}

.contact-hero-card {
  width: min(100%, 760px);
  margin-top: 34px;
  padding: 24px;
  border-radius: 28px;
  border: 1px solid var(--line);
  background:
    radial-gradient(circle at 50% 0%, rgba(249,84,55,.14), transparent 24rem),
    var(--surface);
  box-shadow: var(--shadow);
}

.contact-hero-card > p {
  max-width: 560px;
  margin: 0 auto 18px;
  color: var(--text-soft);
  font-weight: 700;
}

.contact-hero-card .mini-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.contact-hero-card .mini-metric {
  text-align: left;
}

@media (max-width: 760px) {
  .contact-hero-card {
    padding: 18px;
    border-radius: 22px;
  }

  .contact-hero-card .mini-metrics {
    grid-template-columns: 1fr;
  }

  .contact-hero-card .mini-metric {
    text-align: center;
  }
}


/* === About page refresh === */
.about-page {
  background: var(--bg);
  color: var(--text);
  overflow: hidden;
}

.about-centered-hero {
  text-align: center;
}

.about-hero-center {
  max-width: 1040px;
  display: grid;
  justify-items: center;
  margin-inline: auto;
}

.about-hero-center h1 {
  max-width: 960px;
  font-size: clamp(3.4rem, 8.1vw, 7.5rem);
  line-height: .88;
  letter-spacing: -.09em;
}

.about-hero-center .section-copy {
  max-width: 820px;
  margin-inline: auto;
}

.about-hero-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 32px;
}

.about-stats-section {
  background: #F6F6F3;
  color: #000000;
  position: relative;
}

.about-stats-section::before {
  content: "";
  position: absolute;
  top: -140px;
  left: -105px;
  width: 310px;
  height: 310px;
  border-radius: 50%;
  border: 1px solid rgba(249,84,55,.24);
  box-shadow:
    0 0 0 11px rgba(249,84,55,.035),
    0 0 0 22px rgba(249,84,55,.025),
    0 0 0 34px rgba(249,84,55,.018);
}

.about-stats-head {
  max-width: 860px;
  margin: 0 auto 52px;
  text-align: center;
  position: relative;
  z-index: 1;
}

.about-stats-head h2 {
  color: #202023;
  font-size: clamp(2.35rem, 5.3vw, 4.75rem);
  line-height: .98;
  letter-spacing: -.075em;
  font-weight: 900;
}

.about-stats-head p {
  max-width: 780px;
  margin: 22px auto 0;
  color: rgba(49,49,53,.70);
  font-size: 17px;
}

.about-stat-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}

.about-stat-card {
  min-height: 150px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 28px;
  border-radius: 20px;
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,.055);
  box-shadow: 0 16px 42px rgba(0,0,0,.045);
}

.about-stat-card strong {
  display: flex;
  align-items: baseline;
  justify-content: center;
  color: #161616;
  font-size: clamp(3rem, 4.6vw, 4.65rem);
  line-height: .85;
  letter-spacing: -.07em;
  font-weight: 900;
}

.about-stat-card strong span:first-child {
  color: var(--orange);
  margin-right: 4px;
}

.about-stat-card p {
  margin-top: 16px;
  color: rgba(49,49,53,.68);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.about-overview-section {
  background: #000000;
  color: #FFFFFF;
}

.about-overview-grid {
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  gap: 30px;
  align-items: stretch;
}

.about-overview-panel {
  min-height: 420px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 36px;
  border-radius: 32px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at 95% 6%, rgba(249,84,55,.18), transparent 22rem),
    #0B0B0D;
  box-shadow: 0 28px 90px rgba(0,0,0,.24);
}

.about-overview-panel h2 {
  max-width: 720px;
  color: #FFFFFF;
  font-size: clamp(2.8rem, 5.1vw, 5.25rem);
  line-height: .91;
  letter-spacing: -.08em;
  font-weight: 900;
}

.about-overview-copy {
  padding: 36px;
  border-radius: 32px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
  display: grid;
  align-content: center;
}

.about-overview-copy p {
  max-width: 760px;
  color: rgba(255,255,255,.70);
  font-size: 18px;
  line-height: 1.65;
  margin-bottom: 18px;
}

.about-mission-section {
  background: #FFFFFF;
  color: #000000;
}

.about-mission-section .section-heading {
  color: #000000;
}

.about-mission-section .section-copy {
  color: rgba(49,49,53,.70);
}

.about-mission-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-top: 44px;
}

.about-mission-card {
  min-height: 330px;
  padding: 34px;
  border-radius: 30px;
  background:
    radial-gradient(circle at 95% 8%, rgba(249,84,55,.14), transparent 18rem),
    #F6F6F7;
  border: 1px solid rgba(0,0,0,.08);
}

.about-mission-card span,
.about-value-card span,
.about-growth-list span {
  color: var(--orange);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.about-mission-card h3 {
  margin-top: 58px;
  color: #000000;
  font-size: clamp(2rem, 3.5vw, 3.3rem);
  line-height: .96;
  letter-spacing: -.07em;
}

.about-mission-card p {
  margin-top: 18px;
  color: rgba(49,49,53,.72);
  font-size: 16px;
}

.about-values-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 18px;
}

.about-value-card {
  padding: 24px;
  border-radius: 22px;
  background: #FFFFFF;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 16px 48px rgba(0,0,0,.045);
}

.about-value-card h3 {
  margin-top: 28px;
  color: #000000;
  font-size: 21px;
  letter-spacing: -.045em;
}

.about-value-card p {
  margin-top: 8px;
  color: rgba(49,49,53,.68);
  font-size: 14px;
}

.about-growth-section {
  background:
    radial-gradient(circle at 90% 8%, rgba(249,84,55,.16), transparent 28rem),
    #000000;
  color: #FFFFFF;
}

.about-growth-grid {
  display: grid;
  grid-template-columns: .86fr 1.14fr;
  gap: 36px;
  align-items: start;
}

.about-growth-copy h2 {
  color: #FFFFFF;
  font-size: clamp(2.7rem, 5.1vw, 5.1rem);
  line-height: .92;
  letter-spacing: -.08em;
  font-weight: 900;
}

.about-growth-copy p {
  margin-top: 22px;
  max-width: 640px;
  color: rgba(255,255,255,.70);
  font-size: 17px;
}

.about-growth-list {
  display: grid;
  gap: 14px;
}

.about-growth-list article {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 24px;
  align-items: center;
  min-height: 108px;
  padding: 24px;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
}

.about-growth-list p {
  color: rgba(255,255,255,.72);
  font-size: 15px;
}

.about-service-cta-section {
  background: #FFFFFF !important;
  color: #000000 !important;
  overflow: hidden;
}

.about-service-cta h2 {
  color: #000000 !important;
}

.about-service-cta p,
.about-service-cta .cta-overline {
  color: rgba(49,49,53,0.72) !important;
}

.about-service-cta .cta-inline-note a {
  color: #000000 !important;
}

.about-service-cta .cta-outline-track span {
  -webkit-text-stroke-color: rgba(0,0,0,0.10) !important;
  text-stroke-color: rgba(0,0,0,0.10) !important;
}

.about-service-cta .service-final-cta-action .btn {
  white-space: nowrap;
}

@media (max-width: 1080px) {
  .about-stat-grid,
  .about-values-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .about-overview-grid,
  .about-growth-grid {
    grid-template-columns: 1fr;
  }

  .about-mission-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .about-hero-center h1 {
    font-size: clamp(3rem, 15vw, 4.6rem);
  }

  .about-hero-actions {
    width: 100%;
  }

  .about-hero-actions .btn {
    width: 100%;
  }

  .about-stat-grid,
  .about-values-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .about-stat-card {
    min-height: 132px;
  }

  .about-overview-panel,
  .about-overview-copy,
  .about-mission-card {
    padding: 24px;
    border-radius: 24px;
    min-height: auto;
  }

  .about-growth-list article {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .about-service-cta .service-final-cta-action .btn {
    width: 100%;
  }
}


/* === About page stat counter + card hover interactions === */
.about-stat-card,
.about-mission-card,
.about-value-card {
  position: relative;
  overflow: hidden;
  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease,
    background .22s ease;
}

.about-stat-card::after,
.about-mission-card::after,
.about-value-card::after {
  content: "↗";
  position: absolute;
  right: 18px;
  top: 18px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid rgba(249,84,55,.28);
  color: var(--orange);
  font-size: 14px;
  font-weight: 900;
  opacity: 0;
  transform: translateY(8px) scale(.92);
  transition: opacity .22s ease, transform .22s ease, border-color .22s ease, background .22s ease;
  pointer-events: none;
}

.about-stat-card::before,
.about-mission-card::before,
.about-value-card::before {
  content: "";
  position: absolute;
  inset: -1px;
  background:
    radial-gradient(circle at 82% 12%, rgba(249,84,55,.18), transparent 16rem),
    linear-gradient(135deg, rgba(249,84,55,.10), transparent 46%);
  opacity: 0;
  transition: opacity .22s ease;
  pointer-events: none;
}

.about-stat-card > *,
.about-mission-card > *,
.about-value-card > * {
  position: relative;
  z-index: 1;
}

.about-stat-card:hover,
.about-mission-card:hover,
.about-value-card:hover {
  transform: translateY(-8px);
  border-color: rgba(249,84,55,.38);
  box-shadow: 0 30px 80px rgba(0,0,0,.16);
}

.about-stat-card:hover::before,
.about-mission-card:hover::before,
.about-value-card:hover::before {
  opacity: 1;
}

.about-stat-card:hover::after,
.about-mission-card:hover::after,
.about-value-card:hover::after {
  opacity: 1;
  transform: translateY(0) scale(1);
  background: rgba(249,84,55,.10);
}

.about-stat-card .count-up {
  display: inline-block;
  min-width: .75em;
}

@media (max-width: 760px) {
  .about-stat-card:hover,
  .about-mission-card:hover,
  .about-value-card:hover {
    transform: translateY(-4px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .about-stat-card,
  .about-mission-card,
  .about-value-card,
  .about-stat-card::before,
  .about-mission-card::before,
  .about-value-card::before,
  .about-stat-card::after,
  .about-mission-card::after,
  .about-value-card::after {
    transition: none !important;
  }

  .about-stat-card:hover,
  .about-mission-card:hover,
  .about-value-card:hover {
    transform: none !important;
  }
}


/* === Solutions businesses we work with section === */
.solutions-businesses-section {
  background: #F6F6F3;
  color: #000000;
  border-top: 1px solid rgba(0,0,0,.06);
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.solutions-businesses-head {
  max-width: 980px;
  margin-bottom: 50px;
}

.solutions-businesses-head h2 {
  max-width: 900px;
  color: #000000;
  font-size: clamp(2.45rem, 5.2vw, 5.1rem);
  line-height: .92;
  letter-spacing: -.08em;
  font-weight: 900;
}

.solutions-businesses-head p {
  max-width: 760px;
  margin-top: 20px;
  color: rgba(49,49,53,.70);
  font-size: 17px;
}

.solutions-businesses-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 38px;
  row-gap: 30px;
}

.solutions-business-item {
  display: flex;
  align-items: center;
  gap: 15px;
  min-height: 48px;
  color: #000000;
}

.business-line-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  color: var(--orange);
}

.solutions-business-item strong {
  color: #000000;
  font-size: 15px;
  line-height: 1.18;
  letter-spacing: -.035em;
  font-weight: 900;
}

/* Solutions CTA follows the light businesses section, so it returns to dark in dark mode */
.solutions-service-cta-section {
  background: #000000 !important;
  color: #FFFFFF !important;
  overflow: hidden;
}

.solutions-service-cta h2 {
  color: #FFFFFF !important;
}

.solutions-service-cta p,
.solutions-service-cta .cta-overline {
  color: rgba(255,255,255,0.72) !important;
}

.solutions-service-cta .cta-inline-note a {
  color: #FFFFFF !important;
}

.solutions-service-cta .cta-outline-track span {
  -webkit-text-stroke-color: rgba(255,255,255,0.10) !important;
  text-stroke-color: rgba(255,255,255,0.10) !important;
}

.solutions-service-cta .service-final-cta-grid {
  align-items: center;
}

.solutions-service-cta .service-final-cta-action .btn {
  white-space: nowrap;
}

@media (max-width: 1080px) {
  .solutions-businesses-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 28px;
  }
}

@media (max-width: 760px) {
  .solutions-businesses-head {
    margin-bottom: 34px;
  }

  .solutions-businesses-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 18px;
    row-gap: 22px;
  }

  .business-line-icon {
    width: 34px;
    height: 34px;
  }

  .solutions-business-item {
    gap: 12px;
  }

  .solutions-business-item strong {
    font-size: 13px;
  }

  .solutions-service-cta .service-final-cta-action .btn {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .solutions-businesses-grid {
    grid-template-columns: 1fr;
  }
}


/* === Solutions business list final color/title polish === */
.solutions-businesses-section {
  background: #FFFFFF !important;
  color: #000000 !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

.solutions-businesses-head h2,
.solutions-business-item strong {
  color: #000000 !important;
}

.solutions-businesses-head p {
  color: rgba(49,49,53,.70) !important;
}

.business-line-icon {
  color: var(--orange) !important;
}

.solutions-service-cta-section {
  background: #000000 !important;
  color: #FFFFFF !important;
}

.solutions-service-cta h2 {
  color: #FFFFFF !important;
}

.solutions-service-cta p,
.solutions-service-cta .cta-overline {
  color: rgba(255,255,255,0.72) !important;
}

.solutions-service-cta .cta-inline-note a {
  color: #FFFFFF !important;
}

.solutions-service-cta .cta-outline-track span {
  -webkit-text-stroke-color: rgba(255,255,255,0.10) !important;
  text-stroke-color: rgba(255,255,255,0.10) !important;
}


/* === Local SEO hero animated map === */
.local-animated-map {
  isolation: isolate;
}

.local-animated-map::before {
  animation: localMapRadar 12s ease-in-out infinite;
}

.map-grid-glow {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(circle at 23% 35%, rgba(249,84,55,.18), transparent 9rem),
    radial-gradient(circle at 62% 24%, rgba(249,84,55,.12), transparent 8rem),
    radial-gradient(circle at 78% 64%, rgba(249,84,55,.15), transparent 9rem),
    radial-gradient(circle at 42% 70%, rgba(249,84,55,.10), transparent 8rem);
  opacity: .62;
  animation: localMapGlowCycle 12s ease-in-out infinite;
  pointer-events: none;
}

.local-animated-map .map-pin {
  z-index: 3;
  opacity: 0;
  transform: rotate(-45deg) scale(.48);
  box-shadow: 0 0 0 0 rgba(249,84,55,0), 0 0 0 rgba(249,84,55,0);
  animation: localMapPinPop 12s ease-in-out infinite;
}

.local-animated-map .map-pin::before {
  content: "";
  position: absolute;
  inset: -12px;
  border-radius: 50%;
  border: 1px solid rgba(249,84,55,.48);
  opacity: 0;
  transform: scale(.5);
  animation: localPinRingPop 12s ease-in-out infinite;
}

.local-animated-map .pin-one {
  left: 25%;
  top: 29%;
  animation-delay: 0s;
}

.local-animated-map .pin-two {
  left: 19%;
  top: 43%;
  width: 15px;
  height: 15px;
  animation-delay: .16s;
}

.local-animated-map .pin-three {
  left: 34%;
  top: 47%;
  width: 14px;
  height: 14px;
  animation-delay: .32s;
}

/* Prompt 2: two pins close, but not too close */
.local-animated-map .pin-four {
  left: 59%;
  top: 31%;
  animation-delay: 3s;
}

.local-animated-map .pin-five {
  left: 72%;
  top: 43%;
  width: 15px;
  height: 15px;
  animation-delay: 3.18s;
}

/* Prompt 3: four pins in a wider asymmetric square */
.local-animated-map .pin-six {
  left: 51%;
  top: 48%;
  animation-delay: 6s;
}

.local-animated-map .pin-seven {
  left: 75%;
  top: 52%;
  width: 14px;
  height: 14px;
  animation-delay: 6.14s;
}

.local-animated-map .pin-eight {
  left: 57%;
  top: 73%;
  width: 15px;
  height: 15px;
  animation-delay: 6.28s;
}

.local-animated-map .pin-nine {
  left: 70%;
  top: 66%;
  width: 13px;
  height: 13px;
  animation-delay: 6.42s;
}

/* Prompt 4: three pins in a wider asymmetric triangle */
.local-animated-map .pin-ten {
  left: 31%;
  top: 49%;
  animation-delay: 9s;
}

.local-animated-map .pin-eleven {
  left: 50%;
  top: 37%;
  width: 15px;
  height: 15px;
  animation-delay: 9.18s;
}

.local-animated-map .pin-twelve {
  left: 45%;
  top: 70%;
  width: 14px;
  height: 14px;
  animation-delay: 9.36s;
}

.local-animated-map .pin-one::before { animation-delay: 0s; }
.local-animated-map .pin-two::before { animation-delay: .16s; }
.local-animated-map .pin-three::before { animation-delay: .32s; }
.local-animated-map .pin-four::before { animation-delay: 3s; }
.local-animated-map .pin-five::before { animation-delay: 3.18s; }
.local-animated-map .pin-six::before { animation-delay: 6s; }
.local-animated-map .pin-seven::before { animation-delay: 6.14s; }
.local-animated-map .pin-eight::before { animation-delay: 6.28s; }
.local-animated-map .pin-nine::before { animation-delay: 6.42s; }
.local-animated-map .pin-ten::before { animation-delay: 9s; }
.local-animated-map .pin-eleven::before { animation-delay: 9.18s; }
.local-animated-map .pin-twelve::before { animation-delay: 9.36s; }

.map-place {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(8,8,9,.68);
  color: rgba(255,255,255,.68);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
  opacity: 0;
  transform: translateY(8px) scale(.96);
  animation: localMapPlacePop 12s ease-in-out infinite;
}

.place-one { left: 15%; top: 20%; animation-delay: 0s; }
.place-two { right: 18%; top: 15%; animation-delay: 3s; }
.place-three { right: 8%; bottom: 22%; animation-delay: 6s; }
.place-four { left: 32%; bottom: 15%; animation-delay: 9s; }

.animated-local-search-card {
  z-index: 5;
  min-height: 96px;
  overflow: hidden;
}

.local-search-typed {
  position: relative;
  display: block;
  min-height: 31px;
  overflow: hidden;
}

.local-search-typed::after {
  content: "";
  position: absolute;
  top: 2px;
  width: 2px;
  height: 26px;
  margin-left: 7px;
  background: var(--orange);
  animation: localSearchCursorBlink .85s steps(1) infinite;
}

.local-search-typed span {
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
  opacity: 0;
  transform: translateY(12px);
  animation: localSearchPhraseCycle 12s ease-in-out infinite;
}

.local-search-typed span:nth-child(1) { animation-delay: 0s; }
.local-search-typed span:nth-child(2) { animation-delay: 3s; }
.local-search-typed span:nth-child(3) { animation-delay: 6s; }
.local-search-typed span:nth-child(4) { animation-delay: 9s; }

@keyframes localSearchPhraseCycle {
  0%, 5% {
    opacity: 0;
    transform: translateY(12px);
    clip-path: inset(0 100% 0 0);
  }
  10%, 24% {
    opacity: 1;
    transform: translateY(0);
    clip-path: inset(0 0 0 0);
  }
  29%, 100% {
    opacity: 0;
    transform: translateY(-12px);
    clip-path: inset(0 0 0 100%);
  }
}

@keyframes localMapPinPop {
  0%, 6%, 28%, 100% {
    opacity: 0;
    transform: rotate(-45deg) scale(.48);
    box-shadow: 0 0 0 0 rgba(249,84,55,0), 0 0 0 rgba(249,84,55,0);
  }
  10%, 24% {
    opacity: 1;
    transform: rotate(-45deg) scale(1);
    box-shadow: 0 0 0 8px rgba(249,84,55,0.12), 0 0 34px rgba(249,84,55,0.7);
  }
}

@keyframes localPinRingPop {
  0%, 8% {
    opacity: 0;
    transform: scale(.5);
  }
  12% {
    opacity: .8;
    transform: scale(.92);
  }
  24% {
    opacity: 0;
    transform: scale(2.6);
  }
  29%, 100% {
    opacity: 0;
    transform: scale(.5);
  }
}

@keyframes localMapPlacePop {
  0%, 6%, 28%, 100% {
    opacity: 0;
    transform: translateY(8px) scale(.96);
  }
  10%, 24% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes localMapGlowCycle {
  0%, 100% { opacity: .38; }
  25% { opacity: .74; }
  50% { opacity: .50; }
  75% { opacity: .68; }
}

@keyframes localMapRadar {
  0%, 100% {
    transform: scale(.94);
    opacity: .58;
  }
  50% {
    transform: scale(1.02);
    opacity: .92;
  }
}

@keyframes localSearchCursorBlink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

@media (max-width: 760px) {
  .animated-local-search-card {
    left: 18px;
    right: 18px;
    bottom: 18px;
    min-width: 0;
    padding: 16px;
  }

  .local-search-typed {
    min-height: 28px;
  }

  .local-search-typed span {
    max-width: 100%;
    font-size: 20px;
  }

  .map-place {
    font-size: 9px;
    padding: 6px 8px;
  }

  .place-three {
    right: 12%;
    bottom: 34%;
  }

  .place-four {
    left: 18%;
    bottom: 29%;
  }
}

@media (max-width: 480px) {
  .local-search-typed span {
    font-size: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .local-animated-map::before,
  .map-grid-glow,
  .local-animated-map .map-pin,
  .local-animated-map .map-pin::before,
  .map-place,
  .local-search-typed::after,
  .local-search-typed span {
    animation: none !important;
  }

  .local-animated-map .map-pin,
  .map-place,
  .local-search-typed span:first-child {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
  }

  .local-animated-map .map-pin {
    transform: rotate(-45deg) scale(1) !important;
  }

  .local-search-typed span:not(:first-child) {
    display: none !important;
  }
}


/* === Local SEO FAQ section === */
.local-faq-section {
  background: #FFFFFF !important;
  color: #000000 !important;
  border-top: 1px solid rgba(0,0,0,.08);
  border-bottom: 1px solid rgba(0,0,0,.08);
}

.local-faq-section .section-heading {
  color: #000000 !important;
}

.local-faq-section .section-copy {
  color: rgba(49,49,53,.72) !important;
}

.local-faq-section .faq-item {
  background: #FFFFFF;
  border-color: rgba(0,0,0,.10);
}

.local-faq-section .faq-question {
  color: #000000;
}

.local-faq-section .faq-answer p {
  color: rgba(49,49,53,.72);
}

.local-faq-section + .service-final-cta-section {
  background: #000000 !important;
  color: #FFFFFF !important;
}

/* === Web SEO hero SERP ranking animation === */
    .seo-console-stage.seo-serp-stage {
      position: relative;
      width: min(980px, 100%);
      margin: 58px auto 0;
      min-height: 620px;
      display: grid;
      place-items: center;
      overflow: visible;
    }

    .serp-growth-panel {
      position: relative;
      width: min(860px, 100%);
      min-height: 560px;
      border: 1px solid rgba(255,255,255,.11);
      border-radius: 34px;
      background: radial-gradient(circle at 50% 20%, rgba(249,84,55,.20), transparent 18rem), linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.025));
      box-shadow: 0 34px 90px rgba(0,0,0,.42);
      backdrop-filter: blur(16px);
      padding: 22px;
      overflow: hidden;
      isolation: isolate;
    }

    .serp-growth-panel::before {
      content: "";
      position: absolute;
      inset: -35% -20% auto;
      height: 280px;
      background: radial-gradient(circle, rgba(249,84,55,.18), transparent 68%);
      opacity: .75;
      filter: blur(6px);
      animation: serpAmbientGlow 14s ease-in-out infinite;
      z-index: -1;
    }

    .serp-growth-panel::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
      background-size: 34px 34px;
      mask-image: radial-gradient(circle at 50% 38%, #000 0 42%, transparent 76%);
      opacity: .46;
      pointer-events: none;
      z-index: -1;
    }

    .serp-browser-topline {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 14px 16px;
      border: 1px solid rgba(255,255,255,.10);
      border-radius: 22px;
      background: rgba(0,0,0,.30);
      color: rgba(255,255,255,.62);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .02em;
    }

    .serp-browser-topline span {
      width: 9px;
      height: 9px;
      border-radius: 999px;
      background: rgba(255,255,255,.22);
    }

    .serp-browser-topline span:first-child {
      background: var(--orange);
      box-shadow: 0 0 18px rgba(249,84,55,.55);
    }

    .serp-browser-topline strong {
      margin-left: 8px;
      font-size: 11px;
      color: rgba(255,255,255,.52);
      text-transform: uppercase;
      letter-spacing: .12em;
    }

    .serp-search-row {
      margin: 18px 0 20px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      padding: 15px 18px;
      border: 1px solid rgba(255,255,255,.10);
      border-radius: 999px;
      background: rgba(255,255,255,.055);
    }

    .serp-search-row small {
      color: var(--orange);
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .14em;
      white-space: nowrap;
    }

    .serp-search-row b {
      flex: 1;
      color: rgba(255,255,255,.86);
      font-size: clamp(14px, 2vw, 18px);
      font-weight: 800;
      letter-spacing: -.02em;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .serp-result-window {
      position: relative;
      min-height: 370px;
      border-radius: 28px;
      border: 1px solid rgba(255,255,255,.09);
      background: rgba(0,0,0,.28);
      padding: 58px 22px 24px;
      overflow: hidden;
    }

    .serp-top-label {
      position: absolute;
      left: 22px;
      top: 20px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: rgba(255,255,255,.58);
      font-size: 11px;
      font-weight: 900;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .serp-top-label::before {
      content: "";
      width: 22px;
      height: 2px;
      border-radius: 99px;
      background: var(--orange);
      box-shadow: 0 0 16px rgba(249,84,55,.55);
    }

    .serp-result-card {
      position: absolute;
      left: 22px;
      right: 22px;
      height: 70px;
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 14px 16px;
      border-radius: 18px;
      border: 1px solid rgba(255,255,255,.09);
      background: rgba(255,255,255,.065);
      box-shadow: 0 18px 36px rgba(0,0,0,.18);
      will-change: transform, opacity, box-shadow, border-color;
    }

    .serp-position {
      width: 30px;
      height: 30px;
      border-radius: 999px;
      display: grid;
      place-items: center;
      flex: 0 0 auto;
      border: 1px solid rgba(255,255,255,.13);
      color: rgba(255,255,255,.54);
      font-size: 10px;
      font-weight: 900;
    }

    .serp-card-copy {
      flex: 1;
      display: grid;
      gap: 7px;
      min-width: 0;
    }

    .serp-card-copy strong {
      color: #FFFFFF;
      font-size: 14px;
      font-weight: 900;
      letter-spacing: -.02em;
    }

    .serp-card-copy .line {
      display: block;
      height: 7px;
      border-radius: 999px;
      background: rgba(255,255,255,.16);
    }

    .serp-card-copy .line.long { width: 78%; }
    .serp-card-copy .line.medium { width: 56%; }
    .serp-card-copy .line.short { width: 35%; }

    .serp-generic-result { opacity: .64; }

    .serp-card-one { animation: serpCardOneSwap 14s cubic-bezier(.76,0,.24,1) infinite; }
    .serp-card-two { animation: serpCardTwoSwap 14s cubic-bezier(.76,0,.24,1) infinite; }
    .serp-card-three { animation: serpCardThreeSwap 14s cubic-bezier(.76,0,.24,1) infinite; }
    .serp-card-four { animation: serpCardFourSwap 14s cubic-bezier(.76,0,.24,1) infinite; }

    .sercova-serp-result {
      z-index: 4;
      border-color: rgba(249,84,55,.22);
      background: linear-gradient(90deg, rgba(249,84,55,.20), rgba(255,255,255,.075) 38%, rgba(255,255,255,.055));
      animation: sercovaResultClimb 14s cubic-bezier(.76,0,.24,1) infinite;
    }

    .sercova-serp-result::before {
      content: "";
      position: absolute;
      left: 0;
      top: 12px;
      bottom: 12px;
      width: 3px;
      border-radius: 99px;
      background: var(--orange);
      box-shadow: 0 0 18px rgba(249,84,55,.55);
      opacity: .72;
    }

    .serp-s-logo {
      width: 42px;
      height: 42px;
      border-radius: 14px;
      display: grid;
      place-items: center;
      flex: 0 0 auto;
      background: #FFFFFF;
      box-shadow: 0 0 0 1px rgba(255,255,255,.16), 0 18px 34px rgba(249,84,55,.26);
      overflow: hidden;
    }

    .serp-s-logo img {
      width: 82%;
      height: 82%;
      object-fit: contain;
      display: block;
    }

    .serp-s-logo b {
      display: none;
      width: 100%;
      height: 100%;
      place-items: center;
      color: #000000;
      font-size: 22px;
      font-weight: 900;
      letter-spacing: -.08em;
    }

    .serp-sercova-position {
      color: var(--orange);
      border-color: rgba(249,84,55,.35);
      background: rgba(249,84,55,.10);
      animation: serpPositionNumber 14s ease-in-out infinite;
    }

    .serp-number-one-badge,
    .serp-up-arrow {
      position: absolute;
      right: 16px;
      display: grid;
      place-items: center;
      opacity: 0;
      transform: translateY(8px) scale(.9);
      animation: serpTopBadgeReveal 14s ease-in-out infinite;
    }

    .serp-number-one-badge {
      top: 12px;
      min-width: 38px;
      height: 26px;
      padding: 0 10px;
      border-radius: 999px;
      background: var(--orange);
      color: #FFFFFF;
      font-size: 12px;
      font-weight: 900;
      box-shadow: 0 12px 30px rgba(249,84,55,.40);
    }

    .serp-up-arrow {
      bottom: 12px;
      width: 25px;
      height: 25px;
      border-radius: 999px;
      border: 1px solid rgba(249,84,55,.34);
      color: var(--orange);
      background: rgba(249,84,55,.10);
      font-size: 14px;
      font-weight: 900;
    }

    .serp-growth-caption {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-top: 18px;
      padding: 14px 16px;
      border-radius: 22px;
      border: 1px solid rgba(255,255,255,.09);
      background: rgba(0,0,0,.22);
      color: rgba(255,255,255,.64);
    }

    .serp-growth-caption p {
      margin: 0;
      flex: 1;
      font-size: 13px;
      font-weight: 700;
    }

    .serp-growth-caption strong {
      color: #FFFFFF;
      font-size: 12px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .12em;
    }

    .serp-caption-dot {
      width: 10px;
      height: 10px;
      border-radius: 999px;
      background: var(--orange);
      box-shadow: 0 0 0 8px rgba(249,84,55,.12), 0 0 24px rgba(249,84,55,.56);
      animation: serpDotPulse 1.6s ease-in-out infinite;
    }

    @keyframes sercovaResultClimb {
      0%, 12% { transform: translateY(258px); box-shadow: 0 18px 36px rgba(0,0,0,.20); border-color: rgba(249,84,55,.22); }
      22%, 34% { transform: translateY(186px); box-shadow: 0 22px 45px rgba(0,0,0,.24); border-color: rgba(249,84,55,.28); }
      44%, 56% { transform: translateY(114px); box-shadow: 0 26px 54px rgba(0,0,0,.28); border-color: rgba(249,84,55,.34); }
      68%, 88% { transform: translateY(42px); box-shadow: 0 30px 70px rgba(249,84,55,.24), 0 0 0 1px rgba(249,84,55,.25); border-color: rgba(249,84,55,.55); }
      96%, 100% { transform: translateY(258px); box-shadow: 0 18px 36px rgba(0,0,0,.20); border-color: rgba(249,84,55,.22); }
    }

    @keyframes serpCardOneSwap {
      0%, 56% { transform: translateY(42px); opacity: .64; }
      68%, 88% { transform: translateY(114px); opacity: .46; }
      96%, 100% { transform: translateY(42px); opacity: .64; }
    }

    @keyframes serpCardTwoSwap {
      0%, 34% { transform: translateY(114px); opacity: .64; }
      44%, 56% { transform: translateY(186px); opacity: .52; }
      68%, 88% { transform: translateY(186px); opacity: .48; }
      96%, 100% { transform: translateY(114px); opacity: .64; }
    }

    @keyframes serpCardThreeSwap {
      0%, 12% { transform: translateY(186px); opacity: .64; }
      22%, 34% { transform: translateY(258px); opacity: .48; }
      44%, 88% { transform: translateY(258px); opacity: .42; }
      96%, 100% { transform: translateY(186px); opacity: .64; }
    }

    @keyframes serpCardFourSwap {
      0%, 100% { transform: translateY(330px); opacity: .35; }
    }

    @keyframes serpPositionNumber {
      0%, 56% { color: var(--orange); }
      68%, 88% { color: #FFFFFF; background: var(--orange); border-color: rgba(249,84,55,.75); }
      96%, 100% { color: var(--orange); }
    }

    @keyframes serpTopBadgeReveal {
      0%, 62% { opacity: 0; transform: translateY(8px) scale(.9); }
      70%, 88% { opacity: 1; transform: translateY(0) scale(1); }
      96%, 100% { opacity: 0; transform: translateY(8px) scale(.9); }
    }

    @keyframes serpAmbientGlow {
      0%, 100% { transform: translateX(-4%) scale(.96); opacity: .52; }
      50% { transform: translateX(5%) scale(1.04); opacity: .84; }
    }

    @keyframes serpDotPulse {
      0%, 100% { box-shadow: 0 0 0 7px rgba(249,84,55,.10), 0 0 22px rgba(249,84,55,.48); }
      50% { box-shadow: 0 0 0 12px rgba(249,84,55,.06), 0 0 32px rgba(249,84,55,.68); }
    }

    @media (max-width: 760px) {
      .seo-console-stage.seo-serp-stage { min-height: 560px; margin-top: 42px; }
      .serp-growth-panel { min-height: 520px; border-radius: 26px; padding: 16px; }
      .serp-search-row { align-items: flex-start; flex-direction: column; border-radius: 20px; gap: 8px; }
      .serp-result-window { min-height: 350px; padding-inline: 14px; }
      .serp-result-card { left: 14px; right: 14px; height: 68px; gap: 10px; padding: 12px; }
      .serp-s-logo { width: 38px; height: 38px; }
      .serp-number-one-badge { right: 10px; }
      .serp-up-arrow { display: none; }
      .serp-growth-caption { align-items: flex-start; flex-direction: column; gap: 8px; }
    }

    @media (max-width: 480px) {
      .serp-position { display: none; }
      .serp-card-copy .line.long { width: 70%; }
      .serp-card-copy .line.medium { width: 52%; }
      .serp-card-copy .line.short { width: 34%; }
    }

    @media (prefers-reduced-motion: reduce) {
      .serp-growth-panel::before,
      .serp-card-one,
      .serp-card-two,
      .serp-card-three,
      .serp-card-four,
      .sercova-serp-result,
      .serp-sercova-position,
      .serp-number-one-badge,
      .serp-up-arrow,
      .serp-caption-dot { animation: none !important; }
      .sercova-serp-result { transform: translateY(42px) !important; }
      .serp-card-one { transform: translateY(114px) !important; }
      .serp-card-two { transform: translateY(186px) !important; }
      .serp-card-three { transform: translateY(258px) !important; }
      .serp-card-four { transform: translateY(330px) !important; }
      .serp-number-one-badge,
      .serp-up-arrow { opacity: 1 !important; transform: none !important; }
    }


/* === SEO page FAQ section === */
.seo-faq-section {
  background: #FFFFFF !important;
  color: #000000 !important;
  border-top: 1px solid rgba(0,0,0,0.08);
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.seo-faq-section .section-heading,
.seo-faq-section .accordion-button {
  color: #000000 !important;
}

.seo-faq-section .section-copy,
.seo-faq-section .accordion-content p {
  color: rgba(49,49,53,0.72) !important;
}

.seo-faq-section .accordion-list {
  border-top-color: rgba(0,0,0,0.12);
}

.seo-faq-section .accordion-item {
  border-bottom-color: rgba(0,0,0,0.12);
}

.seo-faq-section .accordion-button strong {
  font-size: clamp(1.35rem, 2.7vw, 2.55rem);
  line-height: 1.02;
  letter-spacing: -0.055em;
  text-transform: none;
}

.seo-faq-section .accordion-button span {
  border-color: rgba(0,0,0,0.14);
}

.seo-faq-section .accordion-item.open .accordion-button span {
  border-color: var(--orange);
}

.seo-faq-section .accordion-content p {
  max-width: 820px;
  font-size: 15.5px;
}

.seo-faq-section + .service-final-cta-section {
  background: #000000 !important;
  color: #FFFFFF !important;
}

@media (max-width: 860px) {
  .seo-faq-section .accordion-shell {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .seo-faq-section .accordion-button strong {
    font-size: clamp(1.22rem, 6vw, 2rem);
  }
}


/* === SEO page section color rhythm fix === */
.seo-service-system-section {
  background: #FFFFFF !important;
  color: #000000 !important;
  border-top: 1px solid rgba(0,0,0,0.08);
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.seo-service-system-section .section-heading,
.seo-service-system-section .seo-service-panel h3 {
  color: #000000 !important;
}

.seo-service-system-section .section-copy,
.seo-service-system-section .seo-service-panel p {
  color: rgba(49,49,53,0.72) !important;
}

.seo-service-system-section .seo-service-panel {
  border-color: rgba(0,0,0,0.09) !important;
  background: #FFFFFF !important;
  box-shadow: 0 16px 50px rgba(0,0,0,0.045);
}

.seo-service-system-section .seo-service-panel:hover {
  border-color: rgba(249,84,55,0.36) !important;
  background: #F7F7F8 !important;
}

.seo-service-system-section .ai-forward-panel {
  background:
    radial-gradient(circle at 86% 18%, rgba(249,84,55,0.14), transparent 18rem),
    #FFFFFF !important;
}

.ai-readiness-section {
  background: #000000 !important;
  color: #FFFFFF !important;
  border-top: 1px solid rgba(255,255,255,0.08);
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.ai-readiness-section .ai-readiness-card {
  border-color: rgba(255,255,255,0.10) !important;
  background:
    radial-gradient(circle at 92% 18%, rgba(249,84,55,0.24), transparent 22rem),
    rgba(255,255,255,0.045) !important;
  box-shadow: none !important;
}

.ai-readiness-section .ai-readiness-card h2 {
  color: #FFFFFF !important;
}

.ai-readiness-section .ai-readiness-card p {
  color: rgba(255,255,255,0.70) !important;
}


/* === Global navbar sync with homepage === */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(0,0,0,0.78);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  backdrop-filter: blur(18px);
}

.nav-wrap {
  height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}

.brand img {
  width: 154px;
  height: auto;
}

.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  color: rgba(255,255,255,0.72);
  font-size: 14px;
  font-weight: 650;
}

.nav-links > a,
.nav-item > a {
  position: relative;
  transition: color 180ms ease;
}

.nav-links > a::after,
.nav-item > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -8px;
  width: 0;
  height: 2px;
  border-radius: 999px;
  background: var(--orange);
  transition: width 180ms ease;
}

.nav-links > a:hover,
.nav-item > a:hover,
.nav-links > a.active,
.nav-item > a.active {
  color: #FFFFFF;
}

.nav-links > a:hover::after,
.nav-item > a:hover::after,
.nav-links > a.active::after,
.nav-item > a.active::after {
  width: 100%;
}

.nav-item {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.nav-item > a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.nav-item.has-dropdown > a .chev {
  font-size: 10px;
  line-height: 1;
  opacity: 0.72;
  color: inherit;
  transform: none;
}

.nav-item.has-dropdown::after {
  content: "";
  position: absolute;
  left: -24px;
  right: -24px;
  top: 100%;
  height: 18px;
}

.nav-item.has-dropdown .dropdown-menu {
  position: absolute !important;
  top: calc(100% + 16px) !important;
  left: 50% !important;
  width: min(330px, calc(100vw - 40px)) !important;
  min-width: 0 !important;
  max-width: min(330px, calc(100vw - 40px)) !important;
  padding: 8px !important;
  border: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 16px !important;
  background: rgba(10,10,12,0.96) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,0.32) !important;
  transform: translateX(-50%) translateY(8px) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease !important;
  backdrop-filter: blur(18px) !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  z-index: 120 !important;
}

.nav-item.has-dropdown .dropdown-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -16px !important;
  height: 16px !important;
  display: block !important;
}

.nav-item.has-dropdown:hover .dropdown-menu,
.nav-item.has-dropdown:focus-within .dropdown-menu {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}

.nav-item.has-dropdown .dropdown-menu a {
  display: grid !important;
  grid-template-columns: 1fr 24px !important;
  grid-template-areas:
    "kicker arrow"
    "title arrow"
    "desc arrow" !important;
  gap: 2px 12px !important;
  min-height: 62px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  color: rgba(255,255,255,0.74) !important;
  border: 1px solid transparent !important;
  border-bottom: 0 !important;
  background: transparent !important;
  white-space: normal !important;
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease !important;
  align-items: initial !important;
  flex-direction: initial !important;
  justify-content: initial !important;
  transform: none !important;
}

.nav-item.has-dropdown .dropdown-menu a::after {
  content: "→" !important;
  position: static !important;
  grid-area: arrow !important;
  display: grid !important;
  place-items: center !important;
  width: 24px !important;
  height: 24px !important;
  align-self: center !important;
  border-radius: 999px !important;
  color: rgba(255,255,255,0.42) !important;
  background: rgba(255,255,255,0.055) !important;
  transform: none !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

.nav-item.has-dropdown .dropdown-menu a:hover {
  background: rgba(249,84,55,0.10) !important;
  border-color: rgba(249,84,55,0.18) !important;
  color: #FFFFFF !important;
}

.nav-item.has-dropdown .dropdown-menu a:hover::after {
  color: #FFFFFF !important;
  background: rgba(249,84,55,0.20) !important;
}

.nav-item.has-dropdown .dropdown-kicker {
  grid-area: kicker !important;
  display: block !important;
  color: var(--orange) !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

.nav-item.has-dropdown .dropdown-menu strong {
  grid-area: title !important;
  display: block !important;
  color: #FFFFFF !important;
  font-size: 15px !important;
  letter-spacing: -0.045em !important;
  line-height: 1.05 !important;
}

.nav-item.has-dropdown .dropdown-menu small {
  grid-area: desc !important;
  display: block !important;
  color: rgba(255,255,255,0.52) !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
}

@media (max-width: 1080px) {
  .nav-links {
    position: fixed;
    left: 20px;
    right: 20px;
    top: 92px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    padding: 16px;
    border-radius: 24px;
    background: rgba(0,0,0,0.95);
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 22px 70px rgba(0,0,0,0.36);
    backdrop-filter: blur(18px);
  }

  .nav-links.mobile-open {
    display: flex;
  }

  .nav-links > a,
  .nav-item > a {
    padding: 13px 12px;
    border-radius: 14px;
  }

  .nav-links > a::after,
  .nav-item > a::after {
    display: none;
  }

  .nav-item {
    display: grid;
    width: 100%;
  }

  .nav-item.has-dropdown .dropdown-menu {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 0 0 10px !important;
    backdrop-filter: none !important;
  }

  .nav-item.has-dropdown .dropdown-menu::before {
    display: none !important;
  }

  .nav-item.has-dropdown .dropdown-menu a {
    min-height: 0 !important;
    padding: 10px 12px !important;
  }

  .nav-item.has-dropdown .dropdown-menu a::after {
    display: none !important;
  }
}


/* === Header underline alignment fix: match homepage === */
@media (min-width: 1081px) {
  .site-header .nav-links > a,
  .site-header .nav-item.has-dropdown > a {
    min-height: auto !important;
    height: auto !important;
    padding: 0 !important;
    line-height: 1.55 !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  .site-header .nav-links > a::after,
  .site-header .nav-item.has-dropdown > a::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: auto !important;
    top: auto !important;
    bottom: -8px !important;
    width: 0 !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: var(--orange) !important;
    transform: none !important;
    transition: width 180ms ease !important;
  }

  .site-header .nav-links > a:hover::after,
  .site-header .nav-links > a.active::after,
  .site-header .nav-item.has-dropdown > a:hover::after,
  .site-header .nav-item.has-dropdown > a.active::after {
    bottom: -8px !important;
    width: 100% !important;
  }

  .site-header .nav-item.has-dropdown > a .chev {
    transform: none !important;
    line-height: 1 !important;
  }
}


/* === Required form field marker === */
.required-mark {
  color: #F95437;
  font-weight: 900;
  margin-left: 3px;
}
