/* SCOTT Performance & Impact — design system */
@font-face{font-family:"Fraunces";src:url("/assets/fonts/fraunces-latin-wght-normal.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url("/assets/fonts/fraunces-latin-wght-italic.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Manrope";src:url("/assets/fonts/manrope-latin-wght-normal.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}

:root{
  --navy-950:#061426;--navy-900:#0a1f3d;--navy-800:#10315f;--navy-700:#184482;
  --teal-700:#0b6f7d;--teal-600:#0d8a9b;--teal-500:#15a6b8;--teal-300:#7fd6dd;--teal-100:#dcf2f5;
  --copper-700:#8f4318;--copper-500:#d06c30;--copper-400:#e58a4f;--copper-100:#f8e6da;
  --paper:#f7f4ee;--sand:#ece6da;--white:#fff;--ink:#0a1f3d;--muted:#4f5b73;--line:#ddd6c8;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --max:1180px;--gut:clamp(1.25rem,4vw,2.5rem);--r:14px;
  --shadow:0 1px 2px rgba(14,27,51,.06),0 12px 32px -12px rgba(14,27,51,.18);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{max-width:100%;display:block}
a{color:var(--teal-700);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--navy-900)}
:focus-visible{outline:3px solid var(--copper-500);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:0;background:var(--navy-900);color:#fff;padding:.75rem 1rem;z-index:100}
.skip:focus{left:0}
h1,h2,h3,h4{font-family:var(--serif);font-weight:560;line-height:1.08;letter-spacing:-.018em;margin:0 0 .6em;color:var(--navy-900);text-wrap:balance}
h1{font-size:clamp(2.5rem,5.4vw,4.4rem);letter-spacing:-.028em}
h2{font-size:clamp(1.9rem,3.4vw,2.85rem)}
h3{font-size:1.35rem;line-height:1.2}
p{margin:0 0 1.1em;text-wrap:pretty}
.container{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.narrow{max-width:760px}
.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-700);margin:0 0 1rem;display:flex;align-items:center;gap:.7rem}
.eyebrow::before{content:"";width:2rem;height:2px;background:var(--copper-500)}
.on-dark .eyebrow,.dark .eyebrow{color:var(--teal-300)}
.lead{font-size:clamp(1.15rem,1.6vw,1.34rem);line-height:1.55;color:var(--muted)}
.dark .lead,.on-dark .lead{color:#c9d3e6}
section{padding-block:clamp(3.5rem,8vw,6.5rem)}
.dark{background:var(--navy-900);color:#e8edf7}
.dark h1,.dark h2,.dark h3,.dark h4{color:#fff}
.white{background:var(--white)}
.sand{background:var(--sand)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:700 .98rem/1 var(--sans);letter-spacing:.01em;padding:1.05rem 1.6rem;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}
.btn-primary{background:var(--copper-400);color:var(--navy-950)}
.btn-primary:hover{background:#eba073;color:var(--navy-950);transform:translateY(-2px)}
.btn-ghost{border-color:currentColor;color:var(--navy-900);background:transparent}
.btn-ghost:hover{background:var(--navy-900);color:#fff;border-color:var(--navy-900)}
.dark .btn-ghost{color:#fff}
.dark .btn-ghost:hover{background:#fff;color:var(--navy-900);border-color:#fff}
.btn-dark{background:var(--navy-900);color:#fff}
.btn-dark:hover{background:var(--navy-700);color:#fff;transform:translateY(-2px)}
.btn-row{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}
.arrow::after{content:"→";transition:transform .18s}
.arrow:hover::after{transform:translateX(4px)}
.link-arrow{font-weight:700;text-decoration:none;display:inline-flex;gap:.4rem}
.link-arrow::after{content:"→";transition:transform .18s}
.link-arrow:hover::after{transform:translateX(4px)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(247,244,238,.92);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:84px}
.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--navy-900)}
.brand img{height:60px;width:auto;max-width:none}
.brand .wm{display:flex;flex-direction:column;line-height:1}
.brand .wm b{font-family:var(--sans);font-weight:800;font-size:1.3rem;letter-spacing:.2em}
.brand .wm span{font-size:.6rem;font-weight:700;letter-spacing:.26em;color:var(--teal-700);margin-top:.35rem;white-space:nowrap}
.nav{display:flex;align-items:center;gap:1.6rem}
.nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:1.5rem}
.nav a:not(.btn),.nav .sub-btn{font:600 .95rem/1 var(--sans);color:var(--navy-900);text-decoration:none;background:none;border:0;padding:.5rem 0;cursor:pointer}
.nav a:not(.btn):hover,.nav .sub-btn:hover{color:var(--teal-700)}
.nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--copper-500)}
.nav .btn{padding:.85rem 1.25rem;font-size:.9rem;color:var(--navy-950)}
.has-sub{position:relative}
.sub-btn::after{content:"";display:inline-block;width:.42em;height:.42em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);margin-left:.5rem}
.nav .sub{position:absolute;left:-1rem;top:100%;min-width:300px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:.6rem;display:none;flex-direction:column;align-items:stretch;gap:0}
.nav .has-sub.open .sub,.nav .has-sub:hover .sub,.nav .has-sub:focus-within .sub{display:flex}
.nav .sub a{display:block;padding:.75rem .9rem;border-radius:8px;box-shadow:none!important}
.nav .sub a:hover{background:var(--paper)}
.nav-toggle{display:none;font:700 .9rem var(--sans);background:var(--navy-900);color:#fff;border:0;border-radius:999px;padding:.7rem 1.15rem;cursor:pointer}

/* Hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(1200px 600px at 85% -10%,#14407a 0%,transparent 60%),var(--navy-900);color:#fff;padding-block:clamp(4rem,9vw,7.5rem) clamp(3.5rem,7vw,6rem)}
.hero::after{content:"";position:absolute;right:1%;top:50%;width:min(46vw,620px);aspect-ratio:1;transform:translateY(-50%);background:url("/assets/img/hex-cluster.svg") center/contain no-repeat;opacity:.95;pointer-events:none}
.hero.has-photo{background:var(--navy-900)}
.hero.has-photo::after{display:none}
.hero-photo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.hero-photo-overlay{position:absolute;inset:0;z-index:0;background:linear-gradient(105deg,rgba(6,14,26,.97) 0%,rgba(7,17,32,.92) 26%,rgba(8,20,38,.68) 48%,rgba(9,22,42,.32) 68%,rgba(9,22,42,.42) 100%)}
@media (max-width:860px){.hero-photo-img{object-position:68% center}.hero-photo-overlay{background:linear-gradient(180deg,rgba(6,14,26,.55) 0%,rgba(7,17,32,.8) 42%,rgba(7,17,32,.93) 70%,rgba(7,17,32,.96) 100%)}}
.hero .container{position:relative;z-index:1}
.hero h1{color:#fff;max-width:14ch;margin-bottom:.4em}
.hero .lead{max-width:56ch}
.hero-home h1{max-width:15ch;font-weight:648;letter-spacing:-.032em}
.hero-trust{display:flex;align-items:center;gap:.85rem;margin-top:2.1rem}
.hero-trust img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.5);box-shadow:0 8px 20px rgba(0,0,0,.35);flex:none}
.hero-trust .t{line-height:1.3}
.hero-trust b{display:block;color:#fff;font-size:.92rem;font-weight:700}
.hero-trust span{display:block;color:#b6c3dc;font-size:.82rem}
.page-hero{padding-block:clamp(3.5rem,7vw,6rem) clamp(3rem,6vw,5rem)}
.page-hero h1{font-size:clamp(2.2rem,4.6vw,3.7rem);max-width:20ch}
.page-hero::after{opacity:.5;width:min(38vw,480px)}
.crumbs{font-size:.85rem;color:#9fb0cf;margin-bottom:1.4rem}
.crumbs a{color:#c9d3e6}
.serves{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.16);font-size:.88rem;color:#b6c3dc}
.serves b{color:var(--teal-300);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}

/* Stat band */
.stats{background:var(--navy-950);color:#fff;padding-block:2.4rem}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.stat b{display:block;font-family:var(--serif);font-size:clamp(2rem,3.6vw,3rem);font-weight:560;line-height:1;color:#fff;letter-spacing:-.02em}
.stat b i{font-style:normal;color:var(--copper-400)}
.stat span{display:block;margin-top:.5rem;font-size:.9rem;color:#aebbd4;line-height:1.4}

/* Grids & cards */
.grid{display:grid;gap:1.5rem}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:2rem;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease}
a.card{text-decoration:none;color:inherit;display:flex;flex-direction:column}
a.card:hover{transform:translateY(-4px);box-shadow:0 2px 4px rgba(14,27,51,.06),0 22px 44px -16px rgba(14,27,51,.28)}
.card h3{margin-bottom:.5em}
.problem-card,.service-card,.brand-card{color:#fff!important;border:none!important;position:relative;overflow:hidden;
  box-shadow:0 18px 36px -16px rgba(6,14,26,.5),inset 0 1px 0 rgba(255,255,255,.4),inset 0 -3px 9px rgba(0,0,0,.32),inset 1px 0 0 rgba(255,255,255,.12),inset -1px 0 0 rgba(0,0,0,.2)!important}
.problem-card::before,.service-card::before,.brand-card::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:
    linear-gradient(115deg,rgba(255,255,255,.4) 0%,rgba(255,255,255,0) 20%,rgba(255,255,255,0) 55%,rgba(255,255,255,.22) 72%,rgba(255,255,255,0) 90%),
    repeating-linear-gradient(115deg,rgba(255,255,255,.06) 0px,rgba(255,255,255,.06) 1px,transparent 1px,transparent 4px);
  mix-blend-mode:overlay}
.problem-card>*,.service-card>*,.brand-card>*{position:relative;z-index:2}
.problem-card:hover,.service-card:hover,.brand-card:hover{box-shadow:0 26px 48px -16px rgba(6,14,26,.55),inset 0 1px 0 rgba(255,255,255,.45),inset 0 -3px 9px rgba(0,0,0,.3),inset 1px 0 0 rgba(255,255,255,.14),inset -1px 0 0 rgba(0,0,0,.22)!important;transform:translateY(-4px)!important}
.problem-card h3,.service-card h3,.brand-card h3{color:#fff;font-size:1.7rem;line-height:1.15;font-weight:560}
.problem-card.card p,.service-card.card p,.brand-card.card p{color:rgba(255,255,255,.88)!important}
.problem-card .icon,.service-card .icon,.brand-card .icon{background:rgba(255,255,255,.18)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 0 -2px 4px rgba(0,0,0,.25),0 3px 8px rgba(0,0,0,.25)!important}
.problem-card .icon svg,.service-card .icon svg,.brand-card .icon svg{stroke:#fff!important}
.service-card .link-arrow{color:#fff!important}

.problem-card.tint-copper,.service-card.tint-copper,.brand-card.tint-copper{background:linear-gradient(150deg,#e8a876 0%,#B75A24 45%,#742f11 100%)}
.problem-card.tint-teal,.service-card.tint-teal,.brand-card.tint-teal{background:linear-gradient(150deg,#6fd9e3 0%,var(--teal-600) 45%,#063c45 100%)}
.problem-card.tint-navy,.service-card.tint-navy,.brand-card.tint-navy{background:linear-gradient(150deg,#3d5d90 0%,var(--navy-900) 45%,var(--navy-950) 100%)}
.brand-card .num{color:#fff!important}
.card p{color:var(--muted)}
.testimonial{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.9rem 1.7rem;box-shadow:var(--shadow);display:flex;flex-direction:column;height:100%}
.testimonial::before{content:"\201C";font-family:var(--serif);font-size:3.4rem;line-height:1;color:var(--copper-400);display:block;margin-bottom:.2rem}
.testimonial .quote{font-family:var(--serif);font-style:italic;font-size:1.05rem;line-height:1.5;color:var(--navy-900);flex:1;margin-bottom:1.3rem;font-weight:480}
.testimonial .attrib{font-size:.84rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem}
.testimonial .attrib b{display:block;color:var(--navy-900);font-weight:700;font-size:.92rem}
.testimonial-inline{max-width:640px;margin:0 0 2.6rem}
.testimonial-inline.centered{margin-left:auto;margin-right:auto}
.dark .testimonial,.sand .testimonial{box-shadow:0 20px 40px -18px rgba(6,14,26,.35)}
.card .link-arrow{margin-top:auto;color:var(--teal-700)}
.num{font-family:var(--serif);font-size:3.2rem;line-height:1;color:var(--copper-500);display:block;margin-bottom:.8rem;font-weight:500}
.section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.4rem)}
.section-head.center{margin-inline:auto;text-align:center}
.section-head.center .eyebrow{justify-content:center}
.icon{width:60px;height:60px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#eafafb,var(--teal-100) 62%);box-shadow:inset 0 0 0 1px rgba(13,138,155,.18),0 10px 22px -12px rgba(13,138,155,.4);display:grid;place-items:center;margin-bottom:1.3rem;position:relative}
.icon svg{width:27px;height:27px;stroke:var(--teal-700);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.dark .icon,.sand .icon{background:radial-gradient(circle at 32% 28%,#12406b,var(--navy-800) 62%);box-shadow:inset 0 0 0 1px rgba(127,214,221,.25),0 10px 22px -12px rgba(0,0,0,.5)}
.dark .icon svg,.sand .icon svg{stroke:var(--teal-300)}
.card.copper .icon{background:radial-gradient(circle at 32% 28%,#fff3e8,var(--copper-100) 62%);box-shadow:inset 0 0 0 1px rgba(176,87,31,.2),0 10px 22px -12px rgba(176,87,31,.4)}
.card.copper .icon svg{stroke:var(--copper-700)}

/* ---------- Guide band (photo + authority line) ---------- */
.guide-band{padding:2.6rem 0}
.guide-band .container{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:2.1rem 0}
.guide-band img{width:74px;height:74px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 10px 24px -10px rgba(16,27,45,.35)}
.guide-band .g-text{flex:1;min-width:240px}
.guide-band .g-text b{display:block;font-family:var(--serif);font-size:1.18rem;color:var(--navy-900);font-weight:560;margin-bottom:.15rem}
.guide-band .g-text p{margin:0;color:var(--muted);font-size:.95rem;max-width:62ch}
.guide-band .link-arrow{white-space:nowrap}
.guide-band.dark .container{border-color:rgba(255,255,255,.16)}
.guide-band.dark .g-text b{color:#fff}
.guide-band.dark .g-text p{color:#b6c3dc}
.guide-band.dark img{box-shadow:0 10px 24px -10px rgba(0,0,0,.55);border:2px solid rgba(255,255,255,.35)}
@media (max-width:640px){.guide-band .container{flex-direction:column;text-align:center}.guide-band .g-text p{max-width:none}}

/* Method */
.method{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}
.step{padding:2.2rem 2rem 2.2rem 0;position:relative}
.step + .step{padding-left:2rem;border-left:1px solid rgba(255,255,255,.16)}
.step .word{font-family:var(--serif);font-size:clamp(2.4rem,4vw,3.4rem);line-height:1;color:#fff;margin-bottom:1rem;display:block}
.step .word em{font-style:italic;color:var(--copper-400)}
.step p{color:#c0ccdf;margin:0}
.step .tag{display:block;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-300);font-weight:700;margin-bottom:.9rem}

/* Lists */
.check{list-style:none;padding:0;margin:0 0 1.2rem;display:grid;gap:.85rem}
.check li{position:relative;padding-left:2rem}
.check li::before{content:"";position:absolute;left:0;top:.5em;width:1.05rem;height:1.05rem;background:var(--teal-500);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.dark .check li::before{background:var(--copper-400)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.split.wide-left{grid-template-columns:1.15fr .85fr}
.panel{background:var(--navy-900);color:#e8edf7;border-radius:var(--r);padding:2.2rem;position:relative;overflow:hidden}
.panel h3,.panel h4{color:#fff}
.panel .check{margin:0}
.panel-light{background:#fff;border:1px solid var(--line);color:var(--ink)}
.panel-light h3{color:var(--navy-900)}

/* Case study */
.case{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:grid;grid-template-columns:.9fr 1.6fr}
.case + .case{margin-top:1.6rem}
.case-side{background:var(--navy-900);color:#fff;padding:2.2rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem}
.case-side h3{color:#fff;font-size:1.5rem}
.case-side .big{font-family:var(--serif);font-size:clamp(2.4rem,4vw,3.4rem);line-height:1;color:var(--copper-400);letter-spacing:-.02em}
.case-side small{display:block;color:#b6c3dc;font-size:.88rem;line-height:1.4;margin-top:.4rem}
.case-body{padding:2.2rem;display:grid;gap:1.3rem}
.case-body dt{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--teal-700);margin-bottom:.25rem}
.case-body dd{margin:0;color:var(--ink)}
.case-body div{display:grid;grid-template-columns:150px 1fr;gap:1rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.case-body div:first-child{border-top:0;padding-top:0}

/* Quote / statement */
.statement{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.3;letter-spacing:-.012em;color:var(--navy-900)}
.dark .statement{color:#fff}
.stakes{text-align:center}
.stakes .statement{font-weight:480}
.stakes .turn{color:var(--copper-400);font-family:var(--serif);font-size:1.4rem;font-weight:600;margin-top:1.3rem}

/* FAQ */
.faq details{border-top:1px solid var(--line);padding:1.3rem 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font:600 1.15rem/1.4 var(--serif);color:var(--navy-900);list-style:none;display:flex;justify-content:space-between;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 1.6rem/1 var(--sans);color:var(--copper-500);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:.9rem 0 0;color:var(--muted);max-width:68ch}

/* CTA band */
.cta-band{background:linear-gradient(120deg,var(--navy-900),var(--navy-800));color:#fff;position:relative;overflow:hidden}
.cta-band::after{content:"";position:absolute;right:-2%;top:50%;width:280px;aspect-ratio:470/585;transform:translateY(-50%);background:url("/assets/img/scott-icon-full.webp") center/contain no-repeat;opacity:.9;filter:drop-shadow(0 20px 34px rgba(0,0,0,.4))}
@media (max-width:860px){.cta-band::after{width:170px;opacity:.16;top:38%;right:-8%}}
.cta-band .container{position:relative;z-index:1}
.cta-band h2{color:#fff;max-width:20ch}
.cta-band p{color:#c9d3e6;max-width:56ch}

/* Timeline (about) */
.timeline{list-style:none;padding:0;margin:0;border-left:2px solid var(--line)}
.timeline li{position:relative;padding:0 0 1.9rem 1.8rem}
.timeline li::before{content:"";position:absolute;left:-7px;top:.5em;width:12px;height:12px;background:var(--copper-500);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.timeline b{display:block;font-family:var(--serif);font-size:1.2rem;font-weight:560;color:var(--navy-900)}
.timeline span{color:var(--muted)}
.cred-list{list-style:none;padding:0;margin:0;display:grid;gap:.9rem}
.cred-list li{padding:1rem 1.2rem;background:#fff;border:1px solid var(--line);border-radius:10px;font-weight:600;color:var(--navy-900)}
.cred-list li small{display:block;font-weight:500;color:var(--muted)}
.monogram{aspect-ratio:4/5;border-radius:var(--r);background:linear-gradient(160deg,var(--navy-800),var(--navy-950));display:grid;place-items:center;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.monogram img{width:55%;opacity:.95}
.monogram figcaption{position:absolute;left:1.2rem;bottom:1rem;color:#9fb0cf;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}
.portrait{border-radius:var(--r);box-shadow:var(--shadow);width:100%;height:auto}

/* Forms */
.form{display:grid;gap:1.3rem}
.field{display:grid;gap:.45rem}
.field label,.legend{font-weight:700;font-size:.92rem;color:var(--navy-900)}
.field .hint{font-size:.85rem;color:var(--muted);margin-top:-.15rem}
input[type=text],input[type=email],select,textarea{width:100%;font:inherit;padding:.95rem 1rem;border:1.5px solid #c8c0b0;border-radius:10px;background:#fff;color:var(--ink);transition:border-color .15s,box-shadow .15s}
textarea{min-height:130px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--teal-600);box-shadow:0 0 0 4px rgba(31,163,166,.2)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.consent{display:flex;gap:.7rem;align-items:flex-start;font-size:.9rem;color:var(--muted)}
.consent input{margin-top:.3rem;width:1.1rem;height:1.1rem;accent-color:var(--teal-600)}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.status{padding:1rem 1.2rem;border-radius:10px;font-weight:600;display:none}
.status.show{display:block}
.status.ok{background:var(--teal-100);color:#0b4a50}
.status.err{background:#fdeaea;color:#8a1f1f}
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.5rem,4vw,2.6rem);box-shadow:var(--shadow)}
.err-msg{color:#a12020;font-size:.85rem;font-weight:600;display:none}
.field.invalid .err-msg{display:block}
.field.invalid input,.field.invalid select{border-color:#a12020}

/* Assessment */
.quiz{max-width:780px;margin-inline:auto}
.progress{height:6px;background:var(--sand);border-radius:99px;overflow:hidden;margin-bottom:.7rem}
.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal-500),var(--copper-400));transition:width .35s ease}
.progress-meta{display:flex;justify-content:space-between;font-size:.85rem;font-weight:700;color:var(--muted);margin-bottom:1.6rem}
.q-dim{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--teal-700);margin-bottom:.8rem}
.q-text{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.25;margin-bottom:1.8rem;color:var(--navy-900);font-weight:540}
.scale{display:grid;grid-template-columns:repeat(5,1fr);gap:.7rem;border:0;padding:0;margin:0}
.scale label{position:relative}
.scale input{position:absolute;opacity:0;inset:0;cursor:pointer}
.scale span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;text-align:center;height:100%;min-height:92px;padding:.8rem .4rem;border:1.5px solid #c8c0b0;border-radius:12px;background:#fff;font-size:.82rem;font-weight:600;line-height:1.25;color:var(--muted);transition:all .15s}
.scale span b{font-family:var(--serif);font-size:1.6rem;line-height:1;color:var(--navy-900)}
.scale label:hover span{border-color:var(--teal-600)}
.scale input:checked + span{background:var(--navy-900);border-color:var(--navy-900);color:#e8edf7}
.scale input:checked + span b{color:var(--copper-400)}
.scale input:focus-visible + span{outline:3px solid var(--copper-500);outline-offset:2px}
.choice{display:grid;gap:.8rem;border:0;padding:0;margin:0}
.choice label{position:relative;display:block}
.choice input{position:absolute;opacity:0;inset:0;cursor:pointer}
.choice span{display:block;padding:1.1rem 1.3rem;border:1.5px solid #c8c0b0;border-radius:12px;background:#fff;font-weight:600;color:var(--navy-900);transition:all .15s}
.choice span small{display:block;font-weight:500;color:var(--muted);margin-top:.15rem}
.choice label:hover span{border-color:var(--teal-600)}
.choice input:checked + span{background:var(--navy-900);border-color:var(--navy-900);color:#fff}
.choice input:checked + span small{color:#b6c3dc}
.choice input:focus-visible + span{outline:3px solid var(--copper-500);outline-offset:2px}
.quiz-nav{display:flex;justify-content:space-between;align-items:center;margin-top:2rem}
.linkbtn{background:none;border:0;font:700 .95rem var(--sans);color:var(--muted);cursor:pointer;padding:.5rem 0}
.linkbtn:hover{color:var(--navy-900)}
.result-top{display:grid;grid-template-columns:auto 1fr;gap:2.4rem;align-items:center;margin-bottom:2.6rem}
.gauge{width:190px;height:190px;position:relative}
.gauge svg{width:100%;height:100%;transform:rotate(-90deg)}
.gauge circle{fill:none;stroke-width:14}
.gauge .bg{stroke:var(--sand)}
.gauge .fg{stroke:var(--copper-500);stroke-linecap:round;transition:stroke-dashoffset 1.1s cubic-bezier(.2,.7,.2,1)}
.gauge b{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--serif);font-size:3.2rem;font-weight:560;color:var(--navy-900)}
.gauge b small{font-size:.8rem;font-family:var(--sans);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:block;text-align:center;margin-top:-.4rem}
.level{display:inline-block;background:var(--copper-100);color:var(--copper-700);font-weight:800;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;padding:.4rem .8rem;border-radius:99px;margin-bottom:.9rem}
.dim-row{display:grid;grid-template-columns:170px 1fr 48px;align-items:center;gap:1rem;margin-bottom:.9rem;font-weight:700;font-size:.95rem}
.dim-row .bar{height:12px;border-radius:99px;background:var(--sand);overflow:hidden}
.dim-row .bar i{display:block;height:100%;width:0;border-radius:99px;background:var(--teal-500);transition:width .9s cubic-bezier(.2,.7,.2,1)}
.dim-row.low .bar i{background:var(--copper-500)}
.dim-row em{font-style:normal;text-align:right;color:var(--muted)}
.rec{background:var(--navy-900);color:#e8edf7;border-radius:var(--r);padding:2.2rem;margin:2.2rem 0}
.rec h3{color:#fff;font-size:1.8rem}
.rec .eyebrow{color:var(--teal-300)}
.actions{counter-reset:a;list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.actions li{counter-increment:a;position:relative;padding:1.2rem 1.3rem 1.2rem 4rem;background:#fff;border:1px solid var(--line);border-radius:12px}
.actions li::before{content:counter(a);position:absolute;left:1.2rem;top:1.05rem;font-family:var(--serif);font-size:1.9rem;line-height:1;color:var(--copper-500)}
.actions li b{display:block;color:var(--navy-900)}
[hidden]{display:none!important}

/* Footer */
.site-footer{background:var(--navy-950);color:#aebbd4;padding-block:4rem 2rem;font-size:.95rem}
.site-footer a{color:#dbe4f3;text-decoration:none}
.site-footer a:hover{color:var(--copper-400)}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2.6rem;border-bottom:1px solid rgba(255,255,255,.12)}
.foot-grid h4{font:800 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--teal-300);margin-bottom:1rem}
.foot-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.site-footer .brand{color:#fff}
.site-footer .brand img{height:64px}
.foot-about{margin-top:1.2rem;max-width:34ch}
.foot-note{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1.6rem;font-size:.85rem;color:#8b9ab5}
.disclaimer{max-width:70ch}

/* Motion */
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}}

/* Responsive */
@media (max-width:980px){
  .g3{grid-template-columns:1fr 1fr}
  .stats-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .split,.split.wide-left,.case{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .hero::after{opacity:.3;right:-20%;width:70vw}
}
@media (max-width:860px){
  .nav-toggle{display:inline-block}
  .nav{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:1rem var(--gut) 1.6rem;display:none;box-shadow:0 20px 30px -20px rgba(14,27,51,.3)}
  .nav.open{display:flex}
  .nav ul{flex-direction:column;align-items:stretch;gap:0}
  .nav li>a,.nav .sub-btn{display:block;width:100%;text-align:left;padding:1rem 0;border-bottom:1px solid var(--line)}
  .nav a[aria-current="page"]{box-shadow:none;color:var(--teal-700)}
  .sub-btn::after{display:none}
  .nav .sub{position:static;display:flex;border:0;box-shadow:none;background:transparent;padding:0 0 0 1rem;min-width:0}
  .nav .sub a{padding:.85rem 0;border-bottom:1px solid var(--line);border-radius:0}
  .nav .btn{margin-top:1.2rem;padding:1.05rem}
  .method{grid-template-columns:1fr}
  .step,.step + .step{padding:1.8rem 0;border-left:0}
  .step + .step{border-top:1px solid rgba(255,255,255,.16)}
  .hero h1,.hero-home h1{max-width:none}
  .result-top{grid-template-columns:1fr;justify-items:start}
}
@media (max-width:640px){
  .g2,.g3,.row2{grid-template-columns:1fr}
  .stats-grid{gap:1.6rem 1rem}
  .case-body div{grid-template-columns:1fr;gap:.3rem}
  .scale{grid-template-columns:1fr;}
  .scale span{flex-direction:row;justify-content:flex-start;min-height:0;padding:.95rem 1rem;text-align:left;gap:1rem}
  .scale span b{min-width:1.4rem}
  .dim-row{grid-template-columns:1fr 44px;gap:.4rem 1rem}
  .dim-row .bar{grid-column:1/-1;order:3}
  .foot-grid{grid-template-columns:1fr}
  .brand img{height:46px}
  .btn-row .btn{width:100%}
}
@media print{.site-header,.site-footer,.cta-band,.btn-row{display:none}body{background:#fff}}
.mb-half{margin-bottom:.5em}.mt-l{margin-top:1.6rem}
.form-card .lead{margin-bottom:1.6rem}.result-top .lead{margin-bottom:0}
.rec .btn-row{margin-top:1.2rem}

.link-light{color:var(--teal-300)}.link-light:hover{color:#fff}
.mt-xl{margin-top:3.5rem}.mt-m{margin-top:1.4rem}
.note-dark{margin-top:2rem;max-width:64ch;color:#c9d3e6}
.case-side .eyebrow{color:var(--teal-300)}
.panel.panel-light.mt-l{margin-top:1.6rem}
.cta-band .btn-ghost{color:#fff}.cta-band .btn-ghost:hover{background:#fff;color:var(--navy-900);border-color:#fff}
#save-status{margin-top:1.6rem}
@media (max-width:640px){.hero::after{opacity:.16;top:62%}}

/* Brand assets */
.hero-mark{position:absolute;right:clamp(2rem,9vw,9rem);top:50%;transform:translateY(-50%);width:min(24vw,330px);height:auto;z-index:1;filter:drop-shadow(0 36px 50px rgba(0,0,0,.5));pointer-events:none}
.hero-home::after{right:1%;width:min(50vw,680px);opacity:1}
.brand-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:2.4rem 2rem 1.6rem;display:grid;justify-items:center;gap:1.4rem}
.brand-card img{width:min(100%,340px);height:auto}
.brand-card figcaption{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem;width:100%;text-align:center}
@media (max-width:1100px){.hero-mark{width:min(26vw,260px);right:2rem}}
@media (max-width:860px){.hero-mark{display:none}.hero-home::after{opacity:.4;right:-25%;width:80vw}}

.portrait-card{margin:0;position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);background:#000;max-width:480px}
.portrait-card img{display:block;width:100%;height:auto}
.portrait-card figcaption{position:absolute;inset:auto 0 0 0;padding:4rem 1.4rem 1.3rem;background:linear-gradient(to top,rgba(6,20,38,.92),rgba(6,20,38,0));color:#dbe4f3;font-size:.86rem;line-height:1.4}
.portrait-card figcaption b{display:block;font-family:var(--serif);font-weight:560;font-size:1.3rem;color:#fff;margin-bottom:.15rem}
@media (max-width:980px){.portrait-card{max-width:420px}}

.prose h2{font-size:1.5rem;margin:2rem 0 .5rem}.prose p{color:var(--muted)}
.narrow.container{max-width:820px}
