/* ---- tokens v1 (subset used by the site) ---- */
:root{
  --sb-ink:#0d1117; --sb-paper:#f6f5f1; --sb-white:#ffffff; --sb-rule:#e3e1d9; --sb-muted:#5b6169;
  --sb-forest:#0a3b2c; --sb-mid:#00996b; --sb-signal:#00e08f; --sb-forest-tint:#9fc9b6;
  --sb-amber-deep:#8a5a14;
  --sb-font-display:"Inter Tight","Inter","Helvetica Neue",Arial,sans-serif;
  --sb-font-body:"Inter","Helvetica Neue",Arial,sans-serif;
  --sb-size-caption:.75rem; --sb-size-small:.875rem; --sb-size-body:1rem; --sb-size-lead:1.333rem;
  --sb-size-h3:1.777rem; --sb-size-h2:2.369rem; --sb-size-h1:3.157rem; --sb-size-hero:5.61rem;
  --sb-space-2:8px; --sb-space-3:12px; --sb-space-4:16px; --sb-space-5:24px; --sb-space-6:32px; --sb-space-7:48px; --sb-space-8:64px; --sb-space-9:96px;
  --sb-radius-sm:2px; --sb-radius-md:6px; --sb-page-max:1120px; --sb-measure:66ch;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--sb-paper);color:var(--sb-ink);font:400 var(--sb-size-body)/1.55 var(--sb-font-body);
  font-feature-settings:"tnum" 1,"lnum" 1;-webkit-font-smoothing:antialiased}
.page{max-width:var(--sb-page-max);margin:0 auto;padding-inline:clamp(16px,4vw,32px)}
a{color:inherit}
:focus-visible{outline:2px solid var(--sb-mid);outline-offset:3px;border-radius:var(--sb-radius-sm)}
.skip{position:absolute;left:-9999px} .skip:focus{left:16px;top:16px;background:var(--sb-white);padding:8px 12px;z-index:10}

/* ---- header ---- */
.site-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sb-space-5);padding-block:var(--sb-space-5);border-bottom:1px solid var(--sb-rule)}
.wordmark{height:26px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:var(--sb-space-5);font-size:var(--sb-size-small);font-weight:500}
.nav a{text-decoration:none;color:var(--sb-muted)} .nav a:hover{color:var(--sb-ink)}
.nav .cta-sm{color:var(--sb-forest);border:1.5px solid var(--sb-forest);padding:7px 14px;border-radius:var(--sb-radius-sm)}
.nav .cta-sm:hover{background:var(--sb-forest);color:var(--sb-paper)}
@media (max-width:720px){ .nav a:not(.cta-sm){display:none} }

/* ---- hero ---- */
.hero{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--sb-space-5);row-gap:var(--sb-space-7);
  padding-block:clamp(48px,8vw,96px) clamp(48px,7vw,88px);align-items:end}
.hero-copy{grid-column:1 / span 7;display:grid;gap:var(--sb-space-5)}
.kicker{margin:0;font-size:var(--sb-size-caption);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sb-mid)}
.hero h1{margin:0;font:700 clamp(2.6rem,5.4vw,4.35rem)/.98 var(--sb-font-display);letter-spacing:-.035em;color:var(--sb-forest);text-wrap:balance}
.hero h1 .q{color:var(--sb-ink)}
.hero-sub{margin:0;font-size:var(--sb-size-lead);line-height:1.45;max-width:34em;color:var(--sb-ink)}
.hero-sub strong{font-weight:600}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sb-space-4) var(--sb-space-5);margin-top:var(--sb-space-2)}
.btn{display:inline-flex;align-items:center;gap:10px;font:600 1.0625rem/1 var(--sb-font-body);text-decoration:none;
  background:var(--sb-forest);color:var(--sb-paper);padding:16px 22px;border-radius:var(--sb-radius-sm);transition:background .15s}
.btn:hover{background:var(--sb-ink)}
.btn .arr{color:var(--sb-signal)}
.link-quiet{font-weight:500;color:var(--sb-forest);text-decoration:underline;text-decoration-color:var(--sb-mid);text-underline-offset:4px;text-decoration-thickness:1.5px}
.fine{margin:0;font-size:var(--sb-size-small);color:var(--sb-muted)}

/* ---- hero exhibit: an AI answer, with the gap bracketed ---- */
.exhibit{grid-column:8 / span 5;align-self:center;margin:0;display:grid;gap:var(--sb-space-3)}
.answer{background:var(--sb-white);border:1px solid var(--sb-rule);border-radius:var(--sb-radius-md);padding:var(--sb-space-5);display:grid;gap:var(--sb-space-4)}
.ask{margin:0;font:600 1.05rem/1.3 var(--sb-font-display);letter-spacing:-.01em;color:var(--sb-ink);padding-bottom:var(--sb-space-4);border-bottom:1px solid var(--sb-rule)}
.ask::before{content:"Question";display:block;font:500 var(--sb-size-caption)/1 var(--sb-font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--sb-muted);margin-bottom:8px}
.named{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:n}
.named li{counter-increment:n;display:grid;grid-template-columns:22px 1fr;gap:6px;font-size:var(--sb-size-small);line-height:1.4}
.named li::before{content:counter(n) ".";color:var(--sb-muted);font-weight:500}
.named b{font-weight:600}
.gap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;font-size:var(--sb-size-small)}
.gap::before,.gap::after{content:"";position:absolute;top:0;bottom:0;width:10px;border:3px solid var(--sb-forest)}
.gap::before{left:0;border-right:0} .gap::after{right:0;border-left:0}
.gap b{font-weight:600;color:var(--sb-forest)}
.gap span{color:var(--sb-amber-deep);font-weight:500;white-space:nowrap}
.exhibit figcaption{font-size:var(--sb-size-caption);color:var(--sb-muted)}

@media (prefers-reduced-motion:no-preference){
  .gap::before{animation:inL .5s .5s cubic-bezier(.2,.8,.2,1) both}
  .gap::after{animation:inR .5s .5s cubic-bezier(.2,.8,.2,1) both}
  @keyframes inL{from{transform:translateX(-14px)}}
  @keyframes inR{from{transform:translateX(14px)}}
}
@media (max-width:900px){ .hero-copy,.exhibit{grid-column:1 / -1} .exhibit{max-width:460px} }
/* scan */
/* ---- scanline signature (carried over from the first site) ---- */
.answer{position:relative;overflow:hidden}
.scanline{position:absolute;left:0;right:0;top:0;height:2px;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--sb-mid) 20%,var(--sb-signal) 50%,var(--sb-mid) 80%,transparent);
  box-shadow:0 0 14px 2px rgba(0,224,143,.35);opacity:.85}
@media (prefers-reduced-motion:no-preference){
  .scanline{animation:scan 4.2s cubic-bezier(.45,0,.55,1) infinite alternate}
  @keyframes scan{from{top:0}to{top:calc(100% - 2px)}}
}
@media (prefers-reduced-motion:reduce){ .scanline{display:none} }

/* ---- shared section frame: label column + content column ---- */
.band{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--sb-space-5);row-gap:var(--sb-space-6);
  padding-block:clamp(56px,8vw,96px);border-top:2px solid var(--sb-forest)}
.band-head{grid-column:1 / span 4;display:grid;gap:var(--sb-space-4);align-content:start}
.band-body{grid-column:5 / span 8;display:grid;gap:var(--sb-space-7)}
.label{margin:0;font-size:var(--sb-size-caption);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sb-muted)}
.band h2{margin:0;font:700 clamp(2rem,3.6vw,var(--sb-size-h2))/1.05 var(--sb-font-display);letter-spacing:-.025em;color:var(--sb-forest);text-wrap:balance}
.band-head p.intro{margin:0;color:var(--sb-ink);max-width:32em}
@media (max-width:900px){ .band-head,.band-body{grid-column:1 / -1} }

/* ---- steps (a real sequence) ---- */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sb-space-5);counter-reset:s}
.steps li{counter-increment:s;display:grid;gap:var(--sb-space-2);align-content:start;padding-top:var(--sb-space-4);border-top:1px solid var(--sb-rule)}
.steps li::before{content:counter(s);font:700 var(--sb-size-h2)/1 var(--sb-font-display);color:var(--sb-mid);letter-spacing:-.02em}
.steps h3{margin:0;font:600 1.125rem/1.25 var(--sb-font-display);letter-spacing:-.01em}
.steps p{margin:0;font-size:var(--sb-size-small);color:var(--sb-muted)}
@media (max-width:640px){ .steps{grid-template-columns:1fr} }

/* ---- the two scores ---- */
.scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sb-space-5)}
.score{display:grid;gap:var(--sb-space-3);align-content:start}
.score-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:var(--sb-space-3);border-bottom:2px solid var(--sb-forest)}
.score h3{margin:0;font:700 var(--sb-size-h3)/1 var(--sb-font-display);letter-spacing:-.02em;color:var(--sb-forest)}
.score-top span{font-size:var(--sb-size-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--sb-muted);font-weight:500}
.score .q{margin:0;font-weight:600}
.score .desc{margin:0;font-size:.9375rem;color:var(--sb-ink)}
.checks{list-style:none;margin:0;padding:0;display:grid}
.checks li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--sb-rule);font-size:var(--sb-size-small)}
.checks li span:last-child{color:var(--sb-muted);white-space:nowrap}
@media (max-width:640px){ .scores{grid-template-columns:1fr} }

/* ---- gates ---- */
.gates{display:grid;gap:var(--sb-space-4)}
.gates-head{display:grid;gap:6px}
.gates-head h3{margin:0;font:700 1.375rem/1.2 var(--sb-font-display);letter-spacing:-.015em;color:var(--sb-forest)}
.gates-head p{margin:0;font-size:var(--sb-size-small);color:var(--sb-muted);max-width:46em}
.gate-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--sb-rule);border:1px solid var(--sb-rule);border-radius:var(--sb-radius-md);overflow:hidden}
.gate-grid li{background:var(--sb-white);padding:var(--sb-space-4);display:grid;gap:6px;align-content:start;font-size:var(--sb-size-small)}
.gate-grid b{font-weight:600;line-height:1.3}
.gate-grid span{color:var(--sb-muted)}
@media (max-width:760px){ .gate-grid{grid-template-columns:1fr 1fr} }
@media (max-width:460px){ .gate-grid{grid-template-columns:1fr} }
.note{margin:0;font-size:var(--sb-size-small);color:var(--sb-muted);max-width:52em}
.note b{color:var(--sb-ink);font-weight:600}

/* ---- sprint (the one dark band) ---- */
.sprint{margin-inline:calc(-1 * clamp(16px,4vw,32px));padding-inline:clamp(16px,4vw,32px);background:var(--sb-forest);color:var(--sb-paper);border-top:0;border-radius:var(--sb-radius-md)}
.sprint .label{color:var(--sb-forest-tint)}
.sprint h2{color:var(--sb-paper)}
.sprint .band-head p.intro{color:var(--sb-paper)}
.price{display:flex;align-items:baseline;gap:10px;margin:var(--sb-space-2) 0 0}
.price b{font:700 var(--sb-size-hero)/.9 var(--sb-font-display);letter-spacing:-.035em;color:var(--sb-signal)}
.price span{font-size:var(--sb-size-small);color:var(--sb-forest-tint)}
.incl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--sb-space-5)}
.incl > div{display:grid;gap:4px;align-content:start;padding:var(--sb-space-4) 0;border-top:1px solid rgba(159,201,182,.3)}
.incl h3{margin:0;font:600 1rem/1.3 var(--sb-font-body);color:var(--sb-paper)}
.incl p{margin:0;font-size:var(--sb-size-small);color:var(--sb-forest-tint)}
.ways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sb-space-4)}
.way{border:1px solid rgba(159,201,182,.35);border-radius:var(--sb-radius-md);padding:var(--sb-space-5);display:grid;gap:6px;align-content:start}
.way h3{margin:0;font:600 1.125rem/1.25 var(--sb-font-display);color:var(--sb-paper)}
.way p{margin:0;font-size:var(--sb-size-small);color:var(--sb-forest-tint)}
.sprint .terms{margin:0;font-size:var(--sb-size-small);color:var(--sb-forest-tint);max-width:52em}
.sprint .btn{background:var(--sb-signal);color:var(--sb-ink)} .sprint .btn:hover{background:var(--sb-paper)}
.sprint .btn .arr{color:var(--sb-ink)}
@media (max-width:640px){ .incl,.ways{grid-template-columns:1fr} }
/* ---- free snapshot form ---- */
.get{align-items:start}
.gets{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.gets li{display:grid;grid-template-columns:18px 1fr;gap:10px;font-size:var(--sb-size-small)}
.gets li::before{content:"";width:10px;height:10px;margin-top:6px;background:var(--sb-mid)}
.form{background:var(--sb-white);border:1px solid var(--sb-rule);border-radius:var(--sb-radius-md);padding:clamp(20px,3vw,32px);display:grid;gap:var(--sb-space-5)}
.fields{display:grid;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sb-space-4) var(--sb-space-5)}
.field{display:grid;gap:6px}
.field label{font-size:var(--sb-size-small);font-weight:600}
.field label .opt{font-weight:400;color:var(--sb-muted)}
.field input{font:inherit;font-size:1rem;color:var(--sb-ink);background:var(--sb-paper);border:1px solid #cfccc2;border-radius:var(--sb-radius-sm);padding:12px 14px;width:100%}
.field input:focus{outline:2px solid var(--sb-mid);outline-offset:1px;background:var(--sb-white)}
.field .hint{font-size:var(--sb-size-caption);color:var(--sb-muted)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.turnstile-slot{min-height:65px}
.submit{justify-self:start;border:0;cursor:pointer}
.submit[disabled]{opacity:.6;cursor:progress}
.form-msg{margin:0;font-size:var(--sb-size-small);font-weight:500;min-height:1.4em}
.form-msg.error{color:var(--sb-amber-deep)} .form-msg.success{color:var(--sb-forest)}
.fineprint{margin:0;font-size:var(--sb-size-caption);color:var(--sb-muted);line-height:1.5}
@media (max-width:640px){ .fields{grid-template-columns:1fr} }

.sprint + .band{border-top:0}

.samples{margin:var(--sb-space-5) 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
.samples img{width:100%;height:auto;border-radius:3px;box-shadow:0 1px 0 var(--sb-rule),0 12px 28px -14px rgba(13,17,23,.35)}
.samples img+img{margin-top:28px}
.samples figcaption{grid-column:1 / -1;font-size:var(--sb-size-caption);color:var(--sb-muted)}
@media (max-width:900px){ .samples{max-width:460px} }
/* ---- FAQ ---- */
.faq-list{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sb-space-6) var(--sb-space-6)}
.faq-list div{display:grid;gap:8px;align-content:start}
.faq-list dt{margin:0;font:600 1.125rem/1.3 var(--sb-font-display);letter-spacing:-.01em;color:var(--sb-forest)}
.faq-list dd{margin:0;font-size:.9375rem;color:var(--sb-ink)}
@media (max-width:760px){ .faq-list{grid-template-columns:1fr} }


/* ---- legal pages ---- */
.legal{max-width:46rem;padding-block:clamp(40px,7vw,80px);display:grid;gap:var(--sb-space-6)}
.legal-head{display:grid;gap:var(--sb-space-3)}
.legal h1{margin:0;font:700 clamp(2.2rem,5vw,var(--sb-size-h1))/1.02 var(--sb-font-display);letter-spacing:-.03em;color:var(--sb-forest)}
.legal .intro{margin:0;font-size:1.125rem}
.legal section{display:grid;gap:var(--sb-space-3);padding-top:var(--sb-space-5);border-top:1px solid var(--sb-rule)}
.legal h2{margin:0;font:700 1.375rem/1.2 var(--sb-font-display);letter-spacing:-.015em;color:var(--sb-forest)}
.legal p,.legal ul{margin:0}
.legal ul{padding-left:1.2em;display:grid;gap:6px}
/* ---- footer ---- */
.site-foot{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--sb-space-5);row-gap:var(--sb-space-5);padding-block:var(--sb-space-7) var(--sb-space-8);border-top:1px solid var(--sb-rule);font-size:var(--sb-size-small);color:var(--sb-muted)}
.site-foot .wordmark{height:22px}
.foot-brand{grid-column:1 / span 4;display:grid;gap:10px;align-content:start}
.foot-cols{grid-column:5 / span 8;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sb-space-5)}
.foot-cols p{margin:0;display:grid;gap:6px;align-content:start}
.foot-cols b{color:var(--sb-ink);font-weight:600}
.foot-cols a{color:var(--sb-ink);text-decoration:none} .foot-cols a:hover{text-decoration:underline}
@media (max-width:760px){ .foot-brand,.foot-cols{grid-column:1 / -1} .foot-cols{grid-template-columns:1fr 1fr} }
/* ---- about / who we are ---- */
.about .band-body{gap:var(--sb-space-6)}
.facts{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--sb-space-6)}
.facts > div{display:grid;gap:6px;align-content:start;padding:var(--sb-space-4) 0 var(--sb-space-5);border-top:1px solid var(--sb-rule);min-width:0}
.facts dt{margin:0;font:600 1.125rem/1.3 var(--sb-font-display);letter-spacing:-.01em;color:var(--sb-forest)}
.facts dd{margin:0;font-size:.9375rem;color:var(--sb-ink)}
@media (max-width:760px){ .facts{grid-template-columns:1fr} }

/* the one set-apart element: what happened if we emailed you, in order */
.trail{display:grid;gap:var(--sb-space-4);background:var(--sb-white);border:1px solid var(--sb-rule);border-left:3px solid var(--sb-mid);
  border-radius:var(--sb-radius-sm);padding:var(--sb-space-5) clamp(16px,3vw,var(--sb-space-6))}
.trail-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px var(--sb-space-4)}
.trail h3{margin:0;font:700 1.375rem/1.15 var(--sb-font-display);letter-spacing:-.015em;color:var(--sb-forest)}
.trail-from{margin:0;font-size:var(--sb-size-small);color:var(--sb-muted);font-feature-settings:"tnum" 1}
.trail-from b{font-weight:600;color:var(--sb-ink)}
.trail ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sb-space-4);counter-reset:t}
.trail li{counter-increment:t;display:grid;gap:6px;align-content:start;min-width:0}
.trail li::before{content:counter(t);font:700 1.5rem/1 var(--sb-font-display);color:var(--sb-mid)}
.trail li b{font-weight:600}
.trail li span{font-size:var(--sb-size-small);color:var(--sb-ink)}
.trail .fine{border-top:1px solid var(--sb-rule);padding-top:var(--sb-space-3)}
@media (max-width:900px){ .trail ol{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:480px){ .trail ol{grid-template-columns:1fr} }
