*{margin:0;padding:0;box-sizing:border-box;}
:root{--black:#000;--white:#fff;--g100:#f7f7f7;--g200:#ececec;--g300:#d4d4d4;--g400:#9a9a9a;--g600:#555;--g800:#1c1c1c;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;color:var(--black);background:var(--white);overflow-x:hidden;}
body.intro-active{overflow:hidden;height:100vh;}

.grid-bg{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:64px 64px;}

.skip-link{position:absolute;left:12px;top:-48px;z-index:10000;background:var(--white);color:var(--black);padding:12px 20px;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;text-decoration:none;border-radius:1px;transition:top .2s;}
.skip-link:focus{top:12px;}

.intro-overlay{position:fixed;inset:0;z-index:5000;background:var(--black);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .9s ease .1s,visibility .9s ease .1s;}
.intro-overlay .grid-bg{position:absolute;inset:0;z-index:0;}
.intro-overlay.intro-hide{opacity:0;visibility:hidden;pointer-events:none;}
.intro-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center;transition:opacity .7s ease,transform .7s ease;}
.intro-overlay.intro-hide .intro-inner{opacity:0;transform:scale(1.35);}
.intro-logo-wrap{position:relative;display:flex;align-items:center;justify-content:center;}
.intro-logo-wrap::before{content:'';position:absolute;width:100%;height:100%;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:scale(1.16);animation:slowspin 24s linear infinite;}
.intro-logo-wrap::after{content:'';position:absolute;width:100%;height:100%;border:1px solid rgba(255,255,255,.06);border-radius:50%;transform:scale(1.32);animation:slowspin 36s linear infinite reverse;}
.intro-logo{width:min(90vw,78vh);height:min(90vw,78vh);animation:introPulse 3.2s 2s ease-in-out infinite;transform-origin:center;}
@keyframes introPulse{0%,100%{transform:scale(1);}50%{transform:scale(1.045);}}
.intro-brand{font-family:'Bebas Neue',sans-serif;font-size:clamp(26px,3.5vw,40px);letter-spacing:6px;color:var(--white);opacity:0;animation:fadeUp .6s 1.9s ease forwards;}
.intro-progress{font-family:'DM Mono',monospace;font-size:12px;letter-spacing:3px;color:var(--g400);margin-top:4px;opacity:0;animation:fadeUp .5s 1.7s ease forwards;font-variant-numeric:tabular-nums;}
.intro-progress .num{color:var(--white);}
.intro-legal{position:absolute;z-index:1;left:0;right:0;bottom:28px;max-width:560px;margin:0 auto;padding:0 24px;font-size:10px;line-height:1.6;color:var(--g400);text-align:center;opacity:0;animation:fadeUp .6s 2.6s ease forwards;}
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;height:64px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:0 5vw;transition:background .4s,border-color .4s;}
#navbar.scrolled{background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--g200);}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;}
.nav-brand{font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:3px;color:var(--white);transition:color .4s;white-space:nowrap;}
#navbar.scrolled .nav-brand{color:var(--black);}
#navbar.scrolled .nav-logo svg polygon,#navbar.scrolled .nav-logo svg polyline{stroke:var(--black)!important;}
#navbar.scrolled .nav-logo svg circle{fill:var(--black)!important;}
.nav-links{display:flex;gap:36px;list-style:none;justify-content:center;}
.nav-links a,.nav-links span{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);text-decoration:none;transition:color .4s;}
.nav-links a:hover,.nav-links span:hover{color:var(--white);}
#navbar.scrolled .nav-links a,#navbar.scrolled .nav-links span{color:var(--g600);}
#navbar.scrolled .nav-links a:hover,#navbar.scrolled .nav-links span:hover{color:var(--black);}
.nav-cta{display:flex;gap:10px;align-items:center;flex-shrink:0;}
.btn-primary,.btn-hero-pri,.btn-hero-sec,.btn-submit{display:inline-block;text-decoration:none;cursor:pointer;}
.btn-primary{background:var(--white);border:1px solid var(--white);padding:8px 20px;font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;border-radius:1px;color:var(--black);font-weight:500;transition:all .4s;white-space:nowrap;}
.btn-primary:hover{opacity:.85;}
#navbar.scrolled .btn-primary{background:var(--black);border-color:var(--black);color:var(--white);}
.btn-staff{display:flex;align-items:center;justify-content:center;text-decoration:none;padding:4px;border:1px solid rgba(255,255,255,.2);border-radius:50%;transition:border-color .4s;flex-shrink:0;}
.btn-staff:hover{border-color:rgba(255,255,255,.5);}
.btn-staff-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--black);flex-shrink:0;}
#navbar.scrolled .btn-staff{border-color:var(--g300);}
#navbar.scrolled .btn-staff:hover{border-color:var(--g600);}
#hero{min-height:100vh;background:var(--black);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
#hero .grid-bg{position:absolute;inset:0;z-index:0;}
.hero-strands{position:absolute;inset:0;z-index:0;pointer-events:none;}
.geo-accent{position:absolute;opacity:.06;pointer-events:none;}
.geo-1{top:10%;right:8%;width:300px;height:300px;border:1px solid white;border-radius:50%;animation:slowspin 40s linear infinite;}
.geo-2{bottom:15%;left:5%;width:180px;height:180px;border:1px solid white;transform:rotate(45deg);animation:slowspin 30s linear infinite reverse;}
.geo-3{top:50%;right:20%;width:60px;height:60px;border:1px solid white;animation:pulse2 4s ease-in-out infinite;}
@keyframes slowspin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
@keyframes pulse2{0%,100%{opacity:.06;}50%{opacity:.15;}}
.hero-inner{position:relative;z-index:1;text-align:center;max-width:900px;padding:80px 5vw 0;}
.hero-logo{margin:0 auto 48px;display:flex;justify-content:center;}
.logo-anim{width:100px;height:100px;}
.hex-outer{animation:hexDraw 1.5s ease forwards;stroke-dasharray:400;stroke-dashoffset:400;}
.wmark{animation:wDraw 1s .8s ease forwards;stroke-dasharray:200;stroke-dashoffset:200;}
.cdot{animation:dotPop .3s 1.6s ease forwards;opacity:0;}
.hex-corner{animation:cornerDraw .4s 1.4s ease forwards;stroke-dasharray:20;stroke-dashoffset:20;}
.hero-logo .hex-outer,.hero-logo .wmark,.hero-logo .cdot,.hero-logo .hex-corner{animation-play-state:paused;}
body.revealed .hero-logo .hex-outer,body.revealed .hero-logo .wmark,body.revealed .hero-logo .cdot,body.revealed .hero-logo .hex-corner{animation-play-state:running;}
@keyframes hexDraw{to{stroke-dashoffset:0;}}
@keyframes wDraw{to{stroke-dashoffset:0;}}
@keyframes dotPop{to{opacity:1;}}
@keyframes cornerDraw{to{stroke-dashoffset:0;}}
.hero-tag{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--g400);margin-bottom:24px;opacity:0;animation:fadeUp .6s .3s ease forwards;animation-play-state:paused;}
.hero-h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(52px,9vw,110px);color:var(--white);line-height:.92;letter-spacing:2px;opacity:0;animation:fadeUp .8s .5s ease forwards;animation-play-state:paused;}
.hero-h1 em{font-style:normal;color:var(--g400);}
.hero-sub{font-size:clamp(15px,2vw,18px);color:var(--g400);max-width:560px;margin:28px auto 0;line-height:1.7;font-weight:300;opacity:0;animation:fadeUp .8s .8s ease forwards;animation-play-state:paused;}
.hero-actions{display:flex;gap:14px;justify-content:center;margin-top:40px;opacity:0;animation:fadeUp .8s 1s ease forwards;animation-play-state:paused;}
.btn-hero-pri{background:var(--white);color:var(--black);border:none;padding:16px 36px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:3px;text-transform:uppercase;font-weight:500;border-radius:1px;transition:opacity .2s;}
.btn-hero-pri:hover{opacity:.85;}
.btn-hero-sec{background:none;color:var(--white);border:1px solid rgba(255,255,255,.2);padding:16px 36px;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:3px;text-transform:uppercase;border-radius:1px;transition:border-color .2s;}
.btn-hero-sec:hover{border-color:rgba(255,255,255,.6);}
.hero-trust{font-size:11px;letter-spacing:.5px;color:var(--g400);margin-top:20px;opacity:0;animation:fadeUp .6s 1.15s ease forwards;animation-play-state:paused;}
.hero-scroll{position:relative;color:var(--g400);font-size:11px;letter-spacing:3px;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px;animation:fadeUp .6s 1.4s ease forwards;opacity:0;margin-top:48px;animation-play-state:paused;}
body.revealed .hero-tag,body.revealed .hero-h1,body.revealed .hero-sub,body.revealed .hero-actions,body.revealed .hero-trust,body.revealed .hero-scroll{animation-play-state:running;}
.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--g600),transparent);animation:scrollDrop 2s 2s ease infinite;}
@keyframes scrollDrop{0%{transform:scaleY(0);transform-origin:top;}50%{transform:scaleY(1);transform-origin:top;}51%{transform-origin:bottom;}100%{transform:scaleY(0);transform-origin:bottom;}}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
.marquee-strip{background:var(--black);border-top:1px solid #111;border-bottom:1px solid #111;padding:14px 0;overflow:hidden;}
.marquee-track{display:flex;white-space:nowrap;animation:marquee 18s linear infinite;}
.marquee-item{font-family:'Bebas Neue',sans-serif;font-size:15px;letter-spacing:4px;color:var(--g400);padding:0 32px;}
.marquee-item span{color:var(--g800);margin:0 12px;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
#problem{padding:120px 5vw;background:var(--white);}
.section-eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--g600);margin-bottom:20px;}
.section-h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(36px,5vw,64px);letter-spacing:1px;line-height:1.05;}
.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;max-width:1100px;margin:0 auto;}
.pain-list{list-style:none;display:flex;flex-direction:column;gap:16px;}
.pain-item{display:flex;gap:16px;align-items:flex-start;padding:20px 24px;border:1px solid var(--g200);border-radius:2px;transition:border-color .2s;}
.pain-item:hover{border-color:var(--g300);}
.pain-icon{font-size:20px;flex-shrink:0;margin-top:2px;}
.pain-text strong{display:block;font-size:14px;font-weight:500;margin-bottom:4px;}
.pain-text span{font-size:13px;color:var(--g600);}
#services{padding:120px 5vw;background:var(--black);}
#services .section-eyebrow{color:var(--g400);}
.services-intro{max-width:1300px;margin:0 auto 80px;}
.services-intro p{font-size:16px;color:var(--g400);max-width:560px;margin-top:16px;line-height:1.8;font-weight:300;}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;max-width:1300px;margin:0 auto;}
.service-card{background:#0a0a0a;border:1px solid #151515;padding:44px 36px;transition:background .3s;}
.service-card:hover{background:#0f0f0f;}
.service-num{font-family:'DM Mono',monospace;font-size:11px;color:#333;letter-spacing:2px;margin-bottom:24px;}
.service-icon-wrap{width:52px;height:52px;border:1px solid #1e1e1e;border-radius:2px;display:flex;align-items:center;justify-content:center;margin-bottom:28px;}
.service-icon-wrap svg{width:22px;height:22px;stroke:var(--g400);}
.service-card h3{font-family:'Bebas Neue',sans-serif;font-size:36px;letter-spacing:1px;color:var(--white);margin-bottom:16px;}
.service-card>p{font-size:14px;color:var(--g600);line-height:1.8;margin-bottom:32px;font-weight:300;}
.service-features{list-style:none;display:flex;flex-direction:column;gap:12px;}
.service-features li{display:flex;align-items:flex-start;gap:12px;font-size:13px;color:var(--g400);}
.service-features li::before{content:'—';color:#333;flex-shrink:0;margin-top:1px;}
.service-tag{display:inline-block;border:1px solid #1e1e1e;padding:4px 12px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#333;border-radius:1px;margin-top:32px;font-family:'DM Mono',monospace;}
#how{padding:120px 5vw;background:var(--white);}
.how-inner{max-width:1100px;margin:0 auto;}
.how-header{margin-bottom:80px;}
.how-header p{font-size:16px;color:var(--g600);max-width:480px;margin-top:16px;line-height:1.8;font-weight:300;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--g200);}
.step{background:var(--white);padding:48px 40px;}
.step-num{font-family:'Bebas Neue',sans-serif;font-size:72px;color:var(--g200);line-height:1;margin-bottom:24px;}
.step h3{font-size:18px;font-weight:500;margin-bottom:12px;}
.step p{font-size:14px;color:var(--g600);line-height:1.8;font-weight:300;}
#clients{padding:120px 5vw;background:var(--white);}
.clients-inner{max-width:1100px;margin:0 auto;}
.clients-header{margin-bottom:64px;}
.clients-header p{font-size:16px;color:var(--g600);max-width:480px;margin-top:16px;line-height:1.8;font-weight:300;}
.clients-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.client-card{border:1px solid var(--g200);border-radius:2px;padding:40px 36px;text-decoration:none;color:var(--black);display:block;transition:border-color .2s,background .2s;}
.client-card:hover{border-color:var(--black);background:var(--g100);}
.client-tag{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--g600);margin-bottom:18px;}
.client-name{font-family:'Bebas Neue',sans-serif;font-size:40px;letter-spacing:1px;margin-bottom:10px;}
.client-desc{font-size:14px;color:var(--g600);line-height:1.7;font-weight:300;margin-bottom:20px;}
.client-link{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--black);font-weight:500;}
#results{padding:120px 5vw;background:var(--g100);}
.results-inner{max-width:1100px;margin:0 auto;}
.results-header{margin-bottom:64px;}
.results-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.result-card{background:var(--white);border:1px solid var(--g200);padding:32px 28px;border-radius:2px;}
.result-num{font-family:'Bebas Neue',sans-serif;font-size:52px;letter-spacing:1px;margin-bottom:8px;}
.result-label{font-size:13px;color:var(--g600);line-height:1.6;}
#contact{padding:120px 5vw;background:var(--black);}
.contact-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start;}
.contact-left .section-eyebrow{color:#888;}
.contact-left>p{font-size:15px;color:var(--g400);line-height:1.8;font-weight:300;margin-bottom:48px;}
.contact-detail{display:flex;flex-direction:column;gap:20px;}
.cd-item{display:flex;flex-direction:column;gap:4px;}
.cd-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#777;font-family:'DM Mono',monospace;}
.cd-val{font-size:14px;color:var(--g400);}
.cd-val a{color:var(--white);text-decoration:none;transition:color .2s;}
.cd-val a:hover{color:var(--white);}
.contact-form{display:flex;flex-direction:column;gap:20px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.field-group{display:flex;flex-direction:column;gap:8px;}
.field-group label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#888;font-family:'DM Mono',monospace;}
.field-group input,.field-group textarea,.field-group select{background:rgba(255,255,255,.04);border:1px solid #1a1a1a;border-radius:1px;padding:13px 16px;color:var(--white);font-family:'DM Sans',sans-serif;font-size:14px;outline:none;transition:border-color .2s;font-weight:300;}
.field-group input:focus,.field-group textarea:focus,.field-group select:focus{border-color:var(--white);box-shadow:0 0 0 3px rgba(255,255,255,.15);}
a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:3px;}
.field-group input::placeholder,.field-group textarea::placeholder{color:#555;}
.field-group textarea{resize:vertical;min-height:120px;}
.field-group select{appearance:none;}
.field-group select option{background:#0a0a0a;}
.btn-submit{background:var(--white);color:var(--black);border:none;padding:16px 32px;font-family:'DM Sans',sans-serif;font-weight:500;font-size:12px;letter-spacing:3px;text-transform:uppercase;border-radius:1px;transition:opacity .2s;align-self:flex-start;}
.btn-submit:hover{opacity:.8;}
.btn-submit:disabled{opacity:.5;cursor:not-allowed;}
.form-success{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.15);color:#4ade80;padding:16px 20px;border-radius:1px;font-size:13px;display:none;}
.form-error{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.15);color:#f87171;padding:16px 20px;border-radius:1px;font-size:13px;display:none;margin-bottom:20px;}
.form-error a{color:#f87171;text-decoration:underline;}
.field-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:2000;background:var(--black);border-top:1px solid #1a1a1a;padding:20px 5vw;display:none;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.cookie-banner.visible{display:flex;}
.cookie-banner p{margin:0;font-size:13px;line-height:1.6;color:#ccc;max-width:640px;}
.cookie-banner a{color:var(--white);text-decoration:underline;}
.cookie-banner-actions{display:flex;gap:12px;flex-shrink:0;}
.cookie-banner-actions button{font-family:'DM Sans',sans-serif;font-weight:500;font-size:12px;letter-spacing:2px;text-transform:uppercase;padding:12px 22px;border-radius:1px;border:1px solid #333;cursor:pointer;transition:opacity .2s;}
.btn-cookie-accept{background:var(--white);color:var(--black);border-color:var(--white);}
.btn-cookie-accept:hover{opacity:.85;}
.btn-cookie-reject{background:transparent;color:var(--white);}
.btn-cookie-reject:hover{opacity:.7;}
@media (max-width:640px){.cookie-banner{flex-direction:column;align-items:stretch;}.cookie-banner-actions{justify-content:flex-end;}}
footer{background:var(--black);border-top:1px solid #0f0f0f;padding:64px 5vw 40px;}
.footer-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;}
.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.footer-brand{font-family:'Bebas Neue',sans-serif;font-size:18px;letter-spacing:3px;color:var(--white);}
.footer-tagline{font-size:13px;color:var(--g400);line-height:1.7;font-weight:300;max-width:32ch;margin-bottom:16px;}
.footer-email{font-size:13px;color:var(--white);text-decoration:none;font-family:'DM Mono',monospace;}
.footer-email:hover{color:var(--g400);}
.footer-col-title{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#777;font-family:'DM Mono',monospace;margin-bottom:16px;}
.footer-col{display:flex;flex-direction:column;}
.footer-col a{font-size:13px;color:var(--g400);text-decoration:none;line-height:2.2;}
.footer-col a:hover{color:var(--white);}
.legal-footer{max-width:1100px;margin:40px auto 0;padding-top:24px;border-top:1px solid #151515;font-size:11px;color:var(--g400);line-height:1.7;text-align:center;font-family:'DM Mono',monospace;}

/* ===== Subpage components (service / location / legal pages) ===== */
.breadcrumb{background:var(--black);padding:110px 5vw 0;}
.breadcrumb-inner{max-width:1100px;margin:0 auto;font-size:12px;font-family:'DM Mono',monospace;color:var(--g400);}
.breadcrumb-inner a{color:var(--g400);text-decoration:none;}
.breadcrumb-inner a:hover{color:var(--white);}
.breadcrumb-inner span{color:var(--white);}

.page-hero{background:var(--black);padding:40px 5vw 90px;position:relative;overflow:hidden;}
.page-hero .grid-bg{position:absolute;inset:0;z-index:0;}
.page-hero-inner{position:relative;z-index:1;max-width:820px;margin:0 auto;text-align:center;}
.page-eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--g400);margin-bottom:20px;}
.page-h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(38px,6vw,68px);color:var(--white);line-height:1.02;letter-spacing:1px;margin-bottom:22px;text-wrap:balance;}
.page-lede{font-size:clamp(15px,2vw,18px);color:var(--g400);max-width:640px;margin:0 auto;line-height:1.75;font-weight:300;}
.page-hero-cta{margin-top:36px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

.intro-section{padding:100px 5vw 60px;background:var(--white);}
.intro-inner-text{max-width:760px;margin:0 auto;text-align:center;}
.intro-inner-text p{font-size:16px;color:var(--g600);line-height:1.85;font-weight:300;}

.benefits-section{padding:60px 5vw 100px;background:var(--white);}
.benefits-inner{max-width:1100px;margin:0 auto;}
.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--g200);border:1px solid var(--g200);margin-top:16px;}
.benefit-card{background:var(--white);padding:32px;display:flex;gap:16px;align-items:flex-start;}
.benefit-check{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--black);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:12px;margin-top:2px;}
.benefit-text strong{display:block;font-size:15px;font-weight:500;margin-bottom:4px;}
.benefit-text span{font-size:13px;color:var(--g600);line-height:1.65;}

.process-section{padding:100px 5vw;background:var(--g100);}
.process-inner{max-width:1100px;margin:0 auto;}

.faq-section{padding:100px 5vw;background:var(--white);}
.faq-inner{max-width:800px;margin:0 auto;}
.faq-item{border-bottom:1px solid var(--g200);padding:28px 0;}
.faq-item:first-of-type{border-top:1px solid var(--g200);}
.faq-item h3{font-size:16px;font-weight:500;margin-bottom:10px;}
.faq-item p{font-size:14px;color:var(--g600);line-height:1.8;font-weight:300;}

.case-section{padding:100px 5vw;background:var(--black);}
.case-inner{max-width:1100px;margin:0 auto;}
.case-box{border:1px solid #1e1e1e;padding:48px;margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.case-box .client-tag{color:var(--g400);}
.case-box .client-name{color:var(--white);}
.case-box .client-desc{color:var(--g400);}
.case-box .client-link{color:var(--white);}
.case-note{font-size:12px;color:var(--g400);margin-top:24px;font-family:'DM Mono',monospace;line-height:1.7;}

.cta-band{padding:110px 5vw;background:var(--black);text-align:center;}
.cta-band-inner{max-width:700px;margin:0 auto;}
.cta-band .section-eyebrow{color:#888;}
.cta-band h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(32px,5vw,52px);color:var(--white);margin-bottom:18px;letter-spacing:1px;}
.cta-band p{font-size:15px;color:var(--g400);margin-bottom:36px;line-height:1.7;}
.cta-band-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

.related-section{padding:90px 5vw;background:var(--white);border-top:1px solid var(--g200);}
.related-inner{max-width:1100px;margin:0 auto;}
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-top:32px;}
.related-card{border:1px solid var(--g200);padding:24px;text-decoration:none;color:var(--black);display:block;transition:border-color .2s;}
.related-card:hover{border-color:var(--black);}
.related-card .rc-tag{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--g600);margin-bottom:8px;}
.related-card .rc-title{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:.5px;}

.legal-page{padding:150px 5vw 100px;background:var(--white);}
.legal-page-inner{max-width:760px;margin:0 auto;}
.legal-page-inner h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(34px,5vw,52px);letter-spacing:1px;margin-bottom:8px;}
.legal-updated{font-size:12px;color:var(--g600);font-family:'DM Mono',monospace;margin-bottom:48px;}
.legal-page-inner h2{font-size:20px;font-weight:600;margin:40px 0 14px;}
.legal-page-inner p,.legal-page-inner li{font-size:14.5px;color:var(--g600);line-height:1.85;font-weight:300;margin-bottom:14px;}
.legal-page-inner ul{padding-left:22px;}
.legal-page-inner a{color:var(--black);}

::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:var(--g200);}
@media(max-width:1024px){
.services-grid{grid-template-columns:1fr;}
.footer-grid{grid-template-columns:1fr 1fr;}
.case-box{grid-template-columns:1fr;}
}
@media(max-width:768px){
.nav-links{display:none;}
#navbar{grid-template-columns:auto auto;gap:8px;padding:0 4vw;}
.nav-brand{font-size:16px;}
.btn-primary{padding:6px 12px;font-size:10px;}
.problem-grid,.services-grid,.steps,.results-grid,.contact-inner,.clients-grid{grid-template-columns:1fr;}
.footer-grid{grid-template-columns:1fr;gap:36px;}
.footer-tagline{max-width:none;}
.form-row{grid-template-columns:1fr;}
.benefits-grid{grid-template-columns:1fr;}
.page-hero{padding:30px 5vw 60px;}
.breadcrumb{padding:100px 5vw 0;}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}
  .intro-logo,.geo-1,.geo-2,.geo-3,.intro-logo-wrap::before,.intro-logo-wrap::after,.scroll-line{animation:none!important;}
  /* fade-up reveals still need to end in their visible state, not vanish */
  .hero-tag,.hero-h1,.hero-sub,.hero-actions,.hero-trust,.hero-scroll,.intro-brand,.intro-progress,.intro-legal{opacity:1!important;animation-play-state:running!important;}
  .hex-outer,.wmark,.cdot,.hex-corner{stroke-dashoffset:0!important;opacity:1!important;animation-play-state:running!important;}
}
