:root{
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);
  --text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);
  --text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);
  --text-3xl:clamp(2.5rem,1rem + 4vw,5rem);
  --s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s6:1.5rem;--s8:2rem;--s10:2.5rem;--s12:3rem;--s16:4rem;--s20:5rem;--s24:6rem;--s32:8rem;
  --bg:#F5F1EA;--surface:#FBF8F3;--paper:#EFE9DF;--ink:#1C211F;--muted:#5B605A;--faint:#8A8D86;
  --line:rgba(28,33,31,.12);--line-strong:rgba(28,33,31,.22);
  --accent:#1F4A42;--accent-hover:#163832;--accent-soft:#DCE5DF;--clay:#9A5634;
  --display:'Instrument Serif',Georgia,serif;--body:'Switzer','Helvetica Neue',sans-serif;
  --r-sm:4px;--r-md:8px;--r-lg:14px;
  --wrap:1240px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:5rem;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:var(--text-base);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{margin:0;font-weight:400;text-wrap:balance}
p{margin:0;text-wrap:pretty}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(1.25rem,4vw,3rem)}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:var(--s3) var(--s4);z-index:100}
.skip:focus{left:var(--s4);top:var(--s4)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}
.eyebrow{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}
.serif{font-family:var(--display)}
em.i{font-family:var(--display);font-style:italic}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:calc(100vh - 72px);min-height:calc(100svh - 72px)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem,7vw,7rem) clamp(1.25rem,5vw,5rem) clamp(3rem,6vw,5rem) max(clamp(1.25rem,4vw,3rem),calc((100vw - var(--wrap))/2 + 3rem))}
.hero h1{font-family:var(--display);font-size:var(--text-3xl);line-height:1.02;letter-spacing:-.015em;max-width:12ch}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero .lede{margin-top:var(--s8);max-width:44ch;color:var(--muted);font-size:var(--text-base)}
.hero .ctas{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s10)}
.trust{margin-top:var(--s12);display:flex;flex-wrap:wrap;gap:var(--s2) var(--s6);font-size:var(--text-xs);color:var(--muted);padding-top:var(--s6);border-top:1px solid var(--line);max-width:52ch}
.trust span{display:inline-flex;align-items:center;gap:.5em}
.trust span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}
.hero-img{position:relative;overflow:hidden;background:var(--paper)}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:35% 50%}
.hero-img figcaption{position:absolute;left:var(--s6);bottom:var(--s6);right:var(--s6);background:rgba(251,248,243,.94);border-radius:var(--r-md);padding:var(--s4) var(--s6);font-size:var(--text-sm);display:flex;justify-content:space-between;gap:var(--s4);align-items:baseline;box-shadow:0 10px 30px rgba(40,30,20,.12)}
.hero-img figcaption b{font-weight:600}
.hero-img figcaption .t{color:var(--muted);font-size:var(--text-xs);white-space:nowrap}
@media (max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding-inline:clamp(1.25rem,4vw,3rem)}.hero-img{aspect-ratio:4/3}}

/* gap */
.gap{padding-block:clamp(5rem,10vw,9rem);background:var(--surface);border-block:1px solid var(--line)}
.gap-grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:clamp(2rem,5vw,5rem);align-items:end}
.stat .num{font-family:var(--display);font-size:clamp(3.5rem,2rem + 6vw,7.5rem);line-height:.9;letter-spacing:-.02em}
.stat .num.top{color:var(--accent)}
.stat .lbl{margin-top:var(--s4);font-size:var(--text-sm);color:var(--muted);max-width:24ch}
.gap-copy h2{font-family:var(--display);font-size:var(--text-2xl);line-height:1.05}
.gap-copy p{margin-top:var(--s6);color:var(--muted);max-width:40ch}
.src{margin-top:var(--s8);font-size:var(--text-xs);color:var(--faint)}
.src a{color:var(--muted)}
@media (max-width:900px){.gap-grid{grid-template-columns:1fr 1fr}.gap-copy{grid-column:1/-1}}

/* moment */
.moment{padding-block:clamp(5rem,10vw,9rem)}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s12);align-items:end;margin-bottom:clamp(3rem,6vw,5rem)}
.sec-head h2{font-family:var(--display);font-size:var(--text-2xl);line-height:1.05;max-width:16ch}
.sec-head p{color:var(--muted);max-width:46ch}
@media (max-width:900px){.sec-head{grid-template-columns:1fr;gap:var(--s6)}}
.moment-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--s6)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,3vw,2.25rem)}
.panel-top{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--muted);padding-bottom:var(--s4);border-bottom:1px solid var(--line);margin-bottom:var(--s6);gap:var(--s4)}
.tag{display:inline-flex;align-items:center;gap:.4em;border:1px solid var(--line-strong);border-radius:999px;padding:.25em .75em;font-size:var(--text-xs);color:var(--muted);white-space:nowrap}
.line{display:grid;grid-template-columns:3.5rem 1fr;gap:var(--s4);padding-block:var(--s3);font-size:var(--text-sm)}
.line .ts{color:var(--faint);font-variant-numeric:tabular-nums;font-size:var(--text-xs);padding-top:.2em}
.line .who{font-weight:600;margin-right:.4em}
.line.turn{position:relative;background:#F4E9E0;border-radius:var(--r-md);padding:var(--s4);margin-inline:calc(var(--s4) * -1);grid-template-columns:3.5rem 1fr}
.turn-note{grid-column:2;margin-top:var(--s3);font-size:var(--text-xs);color:var(--clay);font-weight:600;letter-spacing:.02em}
.coach{margin-top:var(--s6);padding-top:var(--s6);border-top:1px solid var(--line);font-size:var(--text-sm)}
.coach .k{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:600}
.coach p{margin-top:var(--s2);font-family:var(--display);font-size:var(--text-lg);line-height:1.3}
.score{display:flex;align-items:baseline;gap:var(--s3);margin-bottom:var(--s6)}
.score .big{font-family:var(--display);font-size:clamp(3.5rem,2.5rem + 3vw,5rem);line-height:1}
.score .of{color:var(--faint);font-size:var(--text-sm)}
.bars{list-style:none;margin:0;padding:0;display:grid;gap:var(--s4)}
.bars li{display:grid;grid-template-columns:1fr auto;gap:var(--s2) var(--s4);font-size:var(--text-sm)}
.bars .v{font-variant-numeric:tabular-nums;color:var(--muted)}
.bars .track{grid-column:1/-1;height:4px;background:var(--paper);border-radius:2px;overflow:hidden}
.bars .fill{height:100%;background:var(--accent);border-radius:2px;width:0;transition:width 1.2s cubic-bezier(.2,.7,.2,1)}
.bars li.low .fill{background:var(--clay)}
.bars li.low .v{color:var(--clay);font-weight:600}
.outcome{margin-top:var(--s8);display:flex;justify-content:space-between;align-items:center;padding-top:var(--s6);border-top:1px solid var(--line);font-size:var(--text-sm)}
.outcome b{font-weight:600}
.fineprint{margin-top:var(--s6);font-size:var(--text-xs);color:var(--faint)}
@media (max-width:900px){.moment-grid{grid-template-columns:1fr}}

/* full bleed quote */
.bleed{position:relative;min-height:80vh;display:grid;align-items:end;color:#fff;overflow:hidden}
.bleed img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.bleed::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,22,20,0) 30%,rgba(18,22,20,.72) 100%)}
.bleed .wrap{position:relative;z-index:1;padding-block:clamp(3rem,7vw,6rem);width:100%}
.bleed blockquote{margin:0;font-family:var(--display);font-size:var(--text-2xl);line-height:1.08;max-width:18ch}
.bleed cite{display:block;margin-top:var(--s6);font-style:normal;font-size:var(--text-sm);opacity:.85}

/* safety */
.safety{padding-block:clamp(5rem,10vw,9rem)}
.principles{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-strong)}
.principles li{display:grid;grid-template-columns:5rem minmax(0,1fr) minmax(0,1.2fr);gap:var(--s8);padding-block:clamp(1.75rem,3vw,2.5rem);border-bottom:1px solid var(--line)}
.principles .n{font-family:var(--display);font-size:var(--text-xl);color:var(--faint);line-height:1}
.principles h3{font-family:var(--display);font-size:var(--text-xl);line-height:1.1}
.principles p{color:var(--muted);max-width:52ch}
@media (max-width:900px){.principles li{grid-template-columns:3rem 1fr;gap:var(--s3) var(--s4)}.principles p{grid-column:2}}

/* path */
.path{padding-block:clamp(5rem,10vw,9rem);background:var(--accent);color:#F2EFE8}
.path .eyebrow{color:rgba(242,239,232,.7)}
.path .sec-head h2{color:#fff}
.path .sec-head p{color:rgba(242,239,232,.78)}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid rgba(255,255,255,.22)}
.step{padding:var(--s8) var(--s8) var(--s8) 0;border-right:1px solid rgba(255,255,255,.14)}
.step+.step{padding-left:var(--s8)}
.step:last-child{border-right:0}
.step .when{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:rgba(242,239,232,.66)}
.step h3{margin-top:var(--s4);font-family:var(--display);font-size:var(--text-xl);line-height:1.1;color:#fff}
.step p{margin-top:var(--s4);color:rgba(242,239,232,.8);font-size:var(--text-sm);max-width:34ch}
.later{margin-top:clamp(3rem,6vw,5rem);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:var(--s8);align-items:start;padding-top:var(--s8);border-top:1px solid rgba(255,255,255,.22)}
.later h3{font-family:var(--display);font-size:var(--text-xl);color:#fff;line-height:1.1}
.mods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s6)}
.mod b{display:block;font-weight:600;color:#fff;font-size:var(--text-sm)}
.mod span{display:block;margin-top:var(--s2);font-size:var(--text-sm);color:rgba(242,239,232,.74)}
.emrs{margin-top:var(--s8);font-size:var(--text-sm);color:rgba(242,239,232,.8)}
.emrs b{color:#fff;font-weight:500}
@media (max-width:900px){.steps{grid-template-columns:1fr}.step,.step+.step{padding:var(--s6) 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.later{grid-template-columns:1fr}.mods{grid-template-columns:1fr 1fr}}

/* proof + founder */
.proof{padding-block:clamp(5rem,10vw,9rem)}
.proof-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(3rem,7vw,7rem);align-items:start}
.nums{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-strong)}
.nums div{padding:var(--s8) var(--s6) var(--s8) 0;border-bottom:1px solid var(--line)}
.nums div:nth-child(odd){border-right:1px solid var(--line)}
.nums div:nth-child(even){padding-left:var(--s6)}
.nums .v{font-family:var(--display);font-size:clamp(2rem,1.3rem + 1.8vw,3.25rem);line-height:1;white-space:nowrap}
.nums .l{margin-top:var(--s2);font-size:var(--text-sm);color:var(--muted)}
.nums-note{grid-column:1/-1;border:0!important;padding:var(--s4) 0 0!important;font-size:var(--text-xs);color:var(--faint)}
.letter .eyebrow{margin-bottom:var(--s6)}
.letter h2{font-family:var(--display);font-size:var(--text-2xl);line-height:1.05;max-width:18ch}
.letter p{margin-top:var(--s6);color:var(--ink);max-width:54ch}
.letter p+p{margin-top:var(--s4)}
.sig{margin-top:var(--s10);display:flex;flex-direction:column;gap:2px}
.sig .name{font-family:var(--display);font-style:italic;font-size:var(--text-xl);line-height:1}
.sig .role{font-size:var(--text-sm);color:var(--muted);margin-top:var(--s2)}
@media (max-width:900px){.proof-grid{grid-template-columns:1fr}}

/* faq */
.faq{padding-block:clamp(4rem,8vw,7rem);background:var(--surface);border-top:1px solid var(--line)}
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(2rem,6vw,6rem)}
.faq h2{font-family:var(--display);font-size:var(--text-2xl);line-height:1.05}
details{border-bottom:1px solid var(--line)}
details:first-child{border-top:1px solid var(--line-strong)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:var(--s6);align-items:center;padding-block:var(--s6);font-size:var(--text-lg);font-family:var(--display);line-height:1.2}
summary::-webkit-details-marker{display:none}
summary .pm{flex:none;width:28px;height:28px;border:1px solid var(--line-strong);border-radius:50%;position:relative}
summary .pm::before,summary .pm::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1px;background:var(--ink);transform:translate(-50%,-50%);transition:transform .25s}
summary .pm::after{transform:translate(-50%,-50%) rotate(90deg)}
details[open] summary .pm::after{transform:translate(-50%,-50%) rotate(0)}
details p{padding-bottom:var(--s6);color:var(--muted);max-width:60ch}
@media (max-width:900px){.faq-grid{grid-template-columns:1fr}}

/* cta */
.final{padding-block:clamp(5rem,11vw,10rem);text-align:center}
.final h2{font-family:var(--display);font-size:var(--text-3xl);line-height:1.02;max-width:16ch;margin-inline:auto}
.final p{margin:var(--s6) auto 0;color:var(--muted);max-width:44ch}
.final .ctas{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s10)}

/* reveal */
.rv{opacity:1;transform:none}
.js .rv{opacity:0;transform:translateY(14px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}.bars .fill{transition:none}html{scroll-behavior:auto}}


/* ===== shared chrome ===== */
.btn{display:inline-flex;align-items:center;gap:.6em;font:500 var(--text-sm)/1 var(--body);text-decoration:none;padding:.95em 1.4em;border-radius:999px;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s;min-height:44px;cursor:pointer;white-space:nowrap}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-hover)}
.btn-ghost{border-color:var(--line-strong);color:var(--ink);background:transparent}
.btn-ghost:hover{border-color:var(--ink)}
.btn-light{background:#F5F1EA;color:var(--ink)}
.btn-light:hover{background:#fff}
.btn-ghost-light{border-color:rgba(255,255,255,.4);color:#fff}
.btn-ghost-light:hover{border-color:#fff}
.btn .arr{transition:transform .2s}
.btn:hover .arr{transform:translateX(3px)}
header.nav{position:sticky;top:0;z-index:50;background:rgba(245,241,234,.9);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid transparent;transition:border-color .3s}
header.nav.scrolled{border-bottom-color:var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:72px;gap:var(--s6)}
.brand{display:inline-flex;flex:none;align-items:center;gap:.6rem;text-decoration:none}
.brand img{height:24px;width:auto}
.brand .by{font:700 .62rem/1 'Space Mono',ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-left:.6rem;border-left:1px solid var(--line);white-space:nowrap}
.nav-links{display:flex;align-items:center;gap:var(--s6);font-size:var(--text-sm);list-style:none;margin:0;padding:0}
.nav-links>li{position:relative}
.nav-links a,.nav-links .dd-btn{text-decoration:none;color:var(--muted);transition:color .2s;background:none;border:0;font:inherit;cursor:pointer;padding:.5rem 0;display:inline-flex;align-items:center;gap:.35em}
.nav-links a:hover,.nav-links .dd-btn:hover,.nav-links a[aria-current=page]{color:var(--ink)}
.nav-links a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.dd-btn svg{transition:transform .2s}
.dd{position:absolute;top:100%;left:-1rem;min-width:240px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 18px 40px rgba(40,30,20,.12);padding:var(--s2);list-style:none;margin:0;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s}
.has-dd:hover .dd,.has-dd:focus-within .dd,.has-dd.open .dd{opacity:1;visibility:visible;transform:none}
.has-dd:hover .dd-btn svg,.has-dd.open .dd-btn svg{transform:rotate(180deg)}
.dd a{display:block;padding:.65rem .85rem;border-radius:var(--r-md);color:var(--ink)}
.dd a:hover{background:var(--paper)}
.dd a small{display:block;color:var(--muted);font-size:var(--text-xs);margin-top:2px}
.nav-cta{display:flex;align-items:center;gap:var(--s4);flex:none}
.nav-cta .login{font-size:var(--text-sm);color:var(--muted);text-decoration:none}
.nav-cta .login:hover{color:var(--ink)}
.menu-btn{display:none;background:none;border:1px solid var(--line-strong);border-radius:999px;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer;color:var(--ink)}
.mnav{display:none}
@media (max-width:1080px){.nav-links{gap:var(--s4)}}
@media (max-width:980px){
  .nav-links,.nav-cta .login{display:none}
  .menu-btn{display:inline-flex}
  .nav-cta .btn{padding:.8em 1.1em}
  .mnav{position:fixed;inset:72px 0 0 0;background:var(--bg);z-index:49;overflow-y:auto;padding:var(--s6) clamp(1.25rem,4vw,3rem) var(--s12)}
  .mnav.open{display:block}
  .mnav h4{margin:var(--s6) 0 var(--s2);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}
  .mnav ul{list-style:none;margin:0;padding:0}
  .mnav a{display:block;padding:.7rem 0;border-bottom:1px solid var(--line);text-decoration:none;font-family:var(--display);font-size:var(--text-lg)}
  .mnav .btn{margin-top:var(--s8);font-family:var(--body);font-size:var(--text-sm);border-bottom:0;display:inline-flex}
}
@media (max-width:420px){.nav-cta .btn{font-size:.8rem;padding:.75em .9em}.brand img{height:21px}.brand .by{display:none}}

/* footer */
.sitefoot{border-top:1px solid var(--line);padding:clamp(3rem,6vw,4.5rem) 0 2rem;font-size:var(--text-sm);background:var(--surface)}
.sitefoot .cols{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:2rem}
.sitefoot h4{margin:0 0 .9rem;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}
.sitefoot ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.sitefoot a{text-decoration:none;color:var(--ink)}
.sitefoot a:hover{text-decoration:underline;text-underline-offset:3px}
.sitefoot .brandcol p{margin-top:1rem;color:var(--muted);max-width:32ch}
.sitefoot .legal{margin-top:3rem;padding-top:1.25rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:var(--text-xs)}
.sitefoot .legal a{color:var(--muted)}
@media (max-width:980px){.sitefoot .cols{grid-template-columns:1fr 1fr}.sitefoot .brandcol{grid-column:1/-1}}

/* ===== page hero (inner pages) ===== */
.phero{padding-block:clamp(3rem,7vw,6rem) clamp(3rem,6vw,5rem)}
.phero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.phero.solo .phero-grid{grid-template-columns:minmax(0,1fr)}
.phero.solo h1{max-width:20ch}
.phero h1{font-family:var(--display);font-size:var(--text-3xl);line-height:1.02;letter-spacing:-.015em;max-width:14ch;margin-top:var(--s6)}
.phero h1 em{font-style:italic;color:var(--accent)}
.phero .lede{margin-top:var(--s6);max-width:50ch;color:var(--muted);font-size:var(--text-lg);line-height:1.45}
.phero .answer{margin-top:var(--s6);max-width:60ch;color:var(--ink);font-size:var(--text-base);padding-left:var(--s4);border-left:2px solid var(--accent)}
.phero .ctas{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s8)}
.phero .trust{margin-top:var(--s10)}
.phero-media{position:relative;margin:0}
.phero-media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-lg)}
.phero-media figcaption{position:absolute;left:var(--s4);bottom:var(--s4);right:var(--s4);background:rgba(251,248,243,.95);border-radius:var(--r-md);padding:var(--s3) var(--s4);font-size:var(--text-sm);display:flex;justify-content:space-between;gap:var(--s4);align-items:baseline;box-shadow:0 10px 30px rgba(40,30,20,.12)}
.phero-media figcaption .t{color:var(--muted);font-size:var(--text-xs);white-space:nowrap}
@media (max-width:900px){.phero-grid{grid-template-columns:1fr}}
.crumbs{font-size:var(--text-xs);color:var(--muted);list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5em}
.crumbs li+li::before{content:"/";margin-right:.5em;color:var(--faint)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--ink)}
.updated{margin-top:var(--s4);font-size:var(--text-xs);color:var(--faint)}

/* ===== generic sections ===== */
.sec{padding-block:clamp(4.5rem,9vw,8rem)}
.sec.alt{background:var(--surface);border-block:1px solid var(--line)}
.sec.tight{padding-block:clamp(3rem,6vw,5rem)}
.sec.green{background:var(--accent);color:#F2EFE8}
.sec.green .eyebrow{color:rgba(242,239,232,.7)}
.sec.green .sec-head h2,.sec.green h3{color:#fff}
.sec.green .sec-head p,.sec.green p{color:rgba(242,239,232,.82)}
.sec-head.stack{grid-template-columns:1fr;gap:var(--s4)}
.sec-head .eyebrow+h2{margin-top:var(--s4)}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s6)}
.cards.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cards.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,2.5vw,2rem);display:flex;flex-direction:column;gap:var(--s3)}
.sec.alt .card{background:var(--bg)}
.card .k{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:600}
.card h3{font-family:var(--display);font-size:var(--text-xl);line-height:1.1}
.card p{color:var(--muted);font-size:var(--text-sm)}
.card .more{margin-top:auto;padding-top:var(--s3);font-size:var(--text-sm);color:var(--accent);text-decoration:none;font-weight:500}
.card .more:hover{text-decoration:underline}
a.card{text-decoration:none;transition:border-color .2s,transform .2s}
a.card:hover{border-color:var(--line-strong);transform:translateY(-2px)}
@media (max-width:980px){.cards,.cards.c4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cards,.cards.c2,.cards.c4{grid-template-columns:1fr}}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.split.rev>:first-child{order:2}
.split h2{font-family:var(--display);font-size:var(--text-2xl);line-height:1.05;max-width:16ch}
.split .eyebrow+h2{margin-top:var(--s4)}
.split p{margin-top:var(--s4);color:var(--muted);max-width:48ch}
.split img{width:100%;border-radius:var(--r-lg);aspect-ratio:4/3;object-fit:cover}
@media (max-width:900px){.split{grid-template-columns:minmax(0,1fr)}.split.rev>:first-child{order:0}}
.ticks{list-style:none;margin:var(--s6) 0 0;padding:0;display:grid;gap:var(--s3)}
.ticks li{position:relative;padding-left:1.6rem;color:var(--ink);font-size:var(--text-sm)}
.ticks li::before{content:"";position:absolute;left:0;top:.45em;width:.7rem;height:.38rem;border-left:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(-45deg)}
.sec.green .ticks li{color:#fff}.sec.green .ticks li::before{border-color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s6)}
.chip{border:1px solid var(--line-strong);border-radius:999px;padding:.35em .9em;font-size:var(--text-xs);color:var(--ink);background:var(--surface)}
.chip.soft{color:var(--muted);border-style:dashed;background:transparent}
.sec.green .chip{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.note{font-size:var(--text-xs);color:var(--faint);margin-top:var(--s4)}
.sec.green .note{color:rgba(242,239,232,.6)}

/* stats */
.statrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-strong)}
.statrow.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.statrow>div{padding:var(--s8) var(--s6) var(--s8) 0;border-bottom:1px solid var(--line)}
.statrow>div+div{padding-left:var(--s6);border-left:1px solid var(--line)}
.statrow .v{font-family:var(--display);font-size:clamp(2.25rem,1.4rem + 2.4vw,3.75rem);line-height:1;white-space:nowrap;letter-spacing:-.01em}
.statrow .l{margin-top:var(--s3);font-size:var(--text-sm);color:var(--ink);font-weight:500}
.statrow .d{margin-top:var(--s2);font-size:var(--text-xs);color:var(--muted);max-width:34ch}
.sec.green .statrow{border-color:rgba(255,255,255,.3)}.sec.green .statrow>div{border-color:rgba(255,255,255,.16)}
.sec.green .statrow .l{color:#fff}
@media (max-width:900px){.statrow,.statrow.c3{grid-template-columns:1fr 1fr}.statrow>div:nth-child(odd){padding-left:0;border-left:0}.statrow>div:nth-child(even){padding-left:var(--s6);border-left:1px solid var(--line)}}

/* tables */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
table.tbl{width:100%;border-collapse:collapse;font-size:var(--text-sm);min-width:640px}
.tbl th,.tbl td{text-align:left;vertical-align:top;padding:var(--s4) var(--s6);border-bottom:1px solid var(--line)}
.tbl thead th{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:500;background:var(--paper)}
.tbl tbody th{font-weight:600;width:22%}
.tbl td.us{background:rgba(31,74,66,.05)}
.tbl thead th.us{color:var(--accent);background:var(--accent-soft)}
.tbl tr:last-child td,.tbl tr:last-child th{border-bottom:0}
.tbl .num{font-variant-numeric:tabular-nums;white-space:nowrap}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4);align-items:stretch}
.plan{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s8) var(--s6);display:flex;flex-direction:column}
.plan.best{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.plan .name{display:flex;justify-content:space-between;align-items:center;gap:var(--s2);font-weight:600}
.plan .badge{font-size:var(--text-xs);background:var(--accent);color:#fff;border-radius:999px;padding:.2em .7em;font-weight:500}
.plan .price{margin-top:var(--s6);font-family:var(--display);font-size:clamp(2.5rem,2rem + 1.5vw,3.25rem);line-height:1}
.plan .per{font-size:var(--text-xs);color:var(--muted);margin-top:var(--s2)}
.plan .for{margin-top:var(--s4);font-size:var(--text-sm);color:var(--muted);min-height:3em}
.plan ul{list-style:none;margin:var(--s6) 0;padding:var(--s6) 0 0;border-top:1px solid var(--line);display:grid;gap:var(--s3);font-size:var(--text-sm)}
.plan li{padding-left:1.4rem;position:relative}
.plan li::before{content:"";position:absolute;left:0;top:.5em;width:.6rem;height:.32rem;border-left:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(-45deg)}
.plan .btn{margin-top:auto;justify-content:center}
@media (max-width:1100px){.plans{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.plans{grid-template-columns:1fr}}

/* views toggle (from Direction B) */
.toggle{display:inline-flex;background:var(--paper);border-radius:999px;padding:4px;gap:4px;margin-bottom:var(--s8)}
.toggle button{border:0;background:transparent;font:500 var(--text-sm)/1 var(--body);padding:.8em 1.3em;border-radius:999px;cursor:pointer;color:var(--muted);min-height:44px}
.toggle button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px rgba(40,30,20,.08)}
.vpanel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--s6)}
.vpanel[hidden]{display:none}
.vpanel .panel .msg{font-family:var(--display);font-size:var(--text-xl);line-height:1.2;margin-top:var(--s2)}
.vpanel .panel .msg em{color:var(--accent)}
.vpanel .try{margin-top:var(--s6);background:var(--paper);border-radius:var(--r-md);padding:var(--s4);font-size:var(--text-sm)}
.vpanel .try b{display:block;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--clay);margin-bottom:var(--s2)}
.vpanel .priv{margin-top:var(--s6);display:flex;gap:var(--s3);align-items:flex-start;font-size:var(--text-xs);color:var(--muted)}
.vpanel .big{font-family:var(--display);font-size:clamp(3rem,2rem + 3vw,4.5rem);line-height:1;color:var(--clay)}
.kv{list-style:none;margin:0;padding:0}
.kv li{display:flex;justify-content:space-between;gap:var(--s4);padding-block:var(--s3);border-bottom:1px solid var(--line);font-size:var(--text-sm)}
.kv li span:last-child{font-variant-numeric:tabular-nums;font-weight:600}
@media (max-width:900px){.vpanel{grid-template-columns:1fr}}

/* calculators */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:start}
.sl{padding-block:var(--s4);border-bottom:1px solid var(--line)}
.sl:first-child{border-top:1px solid var(--line-strong)}
.sl label{display:flex;justify-content:space-between;gap:var(--s4);font-size:var(--text-sm);margin-bottom:var(--s2)}
.sl output{font-family:var(--display);font-size:var(--text-lg);line-height:1;font-variant-numeric:tabular-nums}
.sl .hint{display:block;font-size:var(--text-xs);color:var(--faint);margin-top:2px}
input[type=range]{width:100%;accent-color:var(--accent);height:28px;margin:0}
.result{background:var(--accent);color:#F2EFE8;border-radius:var(--r-lg);padding:clamp(1.5rem,3vw,2.5rem)}
.result .eyebrow{color:rgba(242,239,232,.7)}
.result .big{font-family:var(--display);font-size:clamp(3rem,2rem + 4vw,5.5rem);line-height:1;color:#fff;margin-top:var(--s3);font-variant-numeric:tabular-nums}
.result .sub{margin-top:var(--s3);color:rgba(242,239,232,.82);font-size:var(--text-sm)}
.result .row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);margin-top:var(--s8);padding-top:var(--s6);border-top:1px solid rgba(255,255,255,.2)}
.result .row b{display:block;font-family:var(--display);font-size:var(--text-xl);font-weight:400;color:#fff;font-variant-numeric:tabular-nums}
.result .row span{font-size:var(--text-xs);color:rgba(242,239,232,.75)}
.result .lines{list-style:none;margin:var(--s6) 0 0;padding:var(--s6) 0 0;border-top:1px solid rgba(255,255,255,.2);display:grid;gap:var(--s3);font-size:var(--text-sm)}
.result .lines li{display:flex;justify-content:space-between;gap:var(--s4)}
.result .lines b{font-variant-numeric:tabular-nums;color:#fff;font-weight:500}
.result .fine{margin-top:var(--s6);font-size:var(--text-xs);color:rgba(242,239,232,.65)}
.result .fine a{color:#fff}
.result .btn{margin-top:var(--s6)}
@media (max-width:900px){.calc{grid-template-columns:1fr}}

/* message thread (Kaia) */
.thread{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,3vw,2rem);display:flex;flex-direction:column;gap:var(--s3)}
.thread .bub{max-width:82%;padding:.75rem 1rem;border-radius:16px;font-size:var(--text-sm);line-height:1.45}
.thread .in{background:var(--paper);align-self:flex-start;border-bottom-left-radius:4px}
.thread .out{background:var(--accent);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.thread .meta{font-size:var(--text-xs);color:var(--faint);align-self:center}
.thread .evt{align-self:stretch;display:flex;justify-content:space-between;gap:var(--s4);border:1px dashed var(--line-strong);border-radius:var(--r-md);padding:var(--s3) var(--s4);font-size:var(--text-xs);color:var(--muted)}
.thread .evt b{color:var(--ink);font-weight:600}

/* prose (legal, glossary) */
.prose{max-width:72ch}
.prose h2{font-family:var(--display);font-size:var(--text-xl);line-height:1.15;margin-top:var(--s12)}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:var(--text-base);font-weight:600;margin-top:var(--s6)}
.prose p{margin-top:var(--s4);color:var(--ink)}
.prose p.muted{color:var(--muted)}
.prose a{color:var(--accent)}
.prose ul{margin-top:var(--s4);padding-left:1.2rem}
.prose li+li{margin-top:var(--s2)}
.toc{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s8)}
.toc a{text-decoration:none}
.toc a:hover .chip{border-color:var(--ink)}
.term{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(1.5rem,5vw,5rem);padding-block:clamp(2rem,4vw,3rem);border-top:1px solid var(--line)}
.term h2{font-family:var(--display);font-size:var(--text-xl);line-height:1.1}
.term .q{margin-top:var(--s3);font-size:var(--text-sm);color:var(--muted)}
.term .def{font-size:var(--text-base)}
.term .ctx{margin-top:var(--s4);color:var(--muted);font-size:var(--text-sm)}
.term .how{margin-top:var(--s4);font-size:var(--text-sm);padding:var(--s4);background:var(--surface);border-radius:var(--r-md);border:1px solid var(--line)}
.term .how b{display:block;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--s2)}
.term .how a{color:var(--accent)}
@media (max-width:900px){.term{grid-template-columns:1fr}}

/* related + cta band */
.related{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4)}
.related a{display:flex;justify-content:space-between;gap:var(--s3);align-items:center;padding:var(--s4) var(--s6);border:1px solid var(--line);border-radius:var(--r-md);text-decoration:none;font-size:var(--text-sm);background:var(--surface);transition:border-color .2s}
.related a:hover{border-color:var(--ink)}
@media (max-width:980px){.related{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.related{grid-template-columns:1fr}}
.final .eyebrow{margin-bottom:var(--s6)}
.lift-note{font-size:var(--text-xs);color:var(--faint);margin-top:var(--s4)}

/* steps on light bg */
.steps.light{border-top-color:var(--line-strong)}
.steps.light .step{border-right-color:var(--line)}
.steps.light .step .when{color:var(--muted)}
.steps.light .step h3{color:var(--ink)}
.steps.light .step p{color:var(--muted)}
@media (max-width:900px){.steps.light .step,.steps.light .step+.step{border-bottom-color:var(--line)}}
.honest{display:grid;grid-template-columns:1fr 1fr;gap:var(--s6)}
@media (max-width:760px){.honest{grid-template-columns:1fr}}
.notfound{min-height:60vh;display:grid;place-items:center;text-align:center}
.journey{list-style:none;margin:var(--s6) 0 var(--s4);padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;font-size:var(--text-xs);color:var(--muted)}
.journey li{border-top:3px solid var(--line);padding-top:var(--s2)}
.journey li.done{border-color:var(--accent);color:var(--ink)}
.journey li.now{border-color:var(--clay);color:var(--ink);font-weight:600}
.plan .badge{white-space:nowrap}
.kv li span:last-child{text-align:right}

/* ===== Kaia product sub-brand (Kaia by Ad Vital) ===== */
@font-face{font-family:'Bricolage Grotesque';src:url('fonts/BricolageGrotesque-ExtraBold.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Space Mono';src:url('fonts/SpaceMono-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
:root{--kaia-vogue:#02323D;--kaia-bluewood:#2A4348;--kaia-mineral:#36635D;--kaia-cerulean:#00B3B7;--kaia-cyan:#C1FAFF;--kaia-eggshell:#EEEBE4;--kaia-marigold:#EAA221;
  --kaia-display:'Bricolage Grotesque','Switzer',sans-serif;--kaia-mono:'Space Mono',ui-monospace,monospace}
.kaia-mod{display:inline-flex !important;align-items:center;gap:.4em}
.kaia-mod img{height:18px;width:auto}
.kaia-lockup{display:flex;align-items:center;gap:.75rem;margin-top:1.75rem}
.kaia-lockup img{height:32px;width:auto}
.kaia-lockup span{font:700 .7rem/1 var(--kaia-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(238,235,228,.7);padding-left:.75rem;border-left:1px solid rgba(238,235,228,.3)}
.brand-kaia .phero{background:radial-gradient(120% 90% at 0% 0%,#0B4650 0%,rgba(11,70,80,0) 55%),linear-gradient(160deg,var(--kaia-vogue) 0%,#03283A 60%,var(--kaia-vogue) 100%);color:var(--kaia-eggshell)}
.brand-kaia .phero .crumbs,.brand-kaia .phero .crumbs a{color:rgba(238,235,228,.66)}
.brand-kaia .phero .crumbs a:hover{color:#fff}
.brand-kaia .phero .eyebrow{font-family:var(--kaia-mono);font-weight:700;letter-spacing:.18em;color:var(--kaia-cerulean)}
.brand-kaia .phero h1{font-family:var(--kaia-display);font-weight:800;letter-spacing:-.025em;line-height:1.02;font-size:clamp(2.4rem,1rem + 3.6vw,4.4rem);color:var(--kaia-eggshell)}
.brand-kaia .phero h1 em{font-family:inherit;font-style:normal;color:var(--kaia-cerulean)}
.brand-kaia .phero .lede{color:rgba(238,235,228,.82)}
.brand-kaia .phero .answer{color:var(--kaia-eggshell);border-left-color:var(--kaia-cerulean)}
.brand-kaia .phero .btn-primary{background:var(--kaia-cerulean);color:var(--kaia-vogue);font-family:var(--kaia-mono);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}
.brand-kaia .phero .btn-primary:hover{background:var(--kaia-cyan)}
.brand-kaia .phero .btn-ghost{color:var(--kaia-eggshell);border-color:rgba(238,235,228,.4)}
.brand-kaia .phero .btn-ghost:hover{border-color:#fff}
.brand-kaia .phero .trust{color:rgba(238,235,228,.72);border-top-color:rgba(238,235,228,.18)}
.brand-kaia .phero .trust span::before{background:var(--kaia-cerulean)}
.brand-kaia .phero .thread{color:var(--ink);background:rgba(238,235,228,.97);border-color:transparent;box-shadow:0 30px 60px rgba(0,0,0,.25)}
.brand-kaia .phero .thread .out{background:var(--kaia-vogue)}
.brand-kaia .phero .phero-media img{box-shadow:0 30px 60px rgba(0,0,0,.25)}
.brand-kaia .phero .phero-media figcaption{color:var(--ink)}

/* ===== Kaia as the site brand (built by Ad Vital) ===== */
.sitefoot .brandcol .footbrand{display:flex;align-items:center;gap:.5rem;margin-top:0}
.sitefoot .brandcol .footbrand img{height:24px;width:auto}
.sitefoot .brandcol .footbrand img.av{height:13px;opacity:.85}
.sitefoot .brandcol .footbrand .by{font:700 .62rem/1 var(--kaia-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.brand-kaia .hero-copy{background:radial-gradient(120% 90% at 0% 0%,#0B4650 0%,rgba(11,70,80,0) 55%),linear-gradient(160deg,var(--kaia-vogue) 0%,#03283A 60%,var(--kaia-vogue) 100%);color:var(--kaia-eggshell)}
.brand-kaia .hero .eyebrow{font-family:var(--kaia-mono);font-weight:700;letter-spacing:.18em;color:var(--kaia-cerulean)}
.brand-kaia .hero h1{font-family:var(--kaia-display);font-weight:800;letter-spacing:-.025em;line-height:1.02;font-size:clamp(2.6rem,1rem + 3.9vw,4.8rem);color:var(--kaia-eggshell);max-width:13ch}
.brand-kaia .hero h1 em{font-family:inherit;font-style:normal;color:var(--kaia-cerulean)}
.brand-kaia .hero .lede{color:rgba(238,235,228,.82)}
.brand-kaia .hero .btn-primary{background:var(--kaia-cerulean);color:var(--kaia-vogue);font-family:var(--kaia-mono);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}
.brand-kaia .hero .btn-primary:hover{background:var(--kaia-cyan)}
.brand-kaia .hero .btn-ghost{color:var(--kaia-eggshell);border-color:rgba(238,235,228,.4)}
.brand-kaia .hero .btn-ghost:hover{border-color:#fff}
.brand-kaia .hero .trust span{color:rgba(238,235,228,.72)}
.brand-kaia .hero .trust span::before{background:var(--kaia-cerulean)}
.brand-kaia .hero .trust{border-top-color:rgba(238,235,228,.18)}
.brand-kaia .phero .panel{color:var(--ink)}
.brand-kaia .phero .panel .eyebrow{color:var(--accent)}
