/* Know Thy Buyer — Impeccable alternate preview.
   ONE token system for every surface. Persuade (landing) may go dark and bold;
   Operate/Read (form, report) stay dossier-calm. Same tokens, same type, same CTA color.
   Elevation is hairlines only: no shadows, no gradients, no nested cards. */

:root{
  --paper:#faf7f0;        /* warm paper ground */
  --page:#fffdf8;         /* raised reading ground */
  --tint:#f5f0e4;         /* subtle panel tint */
  --ink:#1a1714;          /* primary text 16.68:1 on paper */
  --ink-soft:#4a443c;     /* secondary text 8.99:1 on paper */
  --ink-faint:#6f665a;    /* tertiary text 5.27:1 on paper, 5.64:1 on white */
  --hairline:#d9d0bd;     /* visible rule on paper */
  --green:#1e4d3b;        /* heritage green: CTA + interactive ONLY */
  --green-deep:#163a2d;   /* CTA hover / dark green band */
  --red:#c2402f;          /* verdict: unsupported 4.82:1 on paper */
  --ochre:#8a5a15;        /* verdict: watch, AA-tuned from #a86f1f (3.96:1) to 5.52:1 */
  --slate:#5b6470;        /* verdict: weak fit 5.61:1 on paper */
  --dark:#252521;         /* persuade dark band */
  --dark-text:#f9f9f6;    /* 14.58:1 on --dark */
  --dark-muted:#cfc9bd;   /* 9.33:1 on --dark */
  --lime:#f8ff2c;         /* accent only, on dark only (14.16:1), never body text on light */
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Inter",-apple-system,"Segoe UI",Roboto,sans-serif;
  --max:70rem;
  --radius:4px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
  font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--green);text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,
select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--green);outline-offset:2px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.12;text-wrap:balance;margin:0}
h1{font-size:clamp(2.4rem,6vw,4.1rem);letter-spacing:-0.01em}
h2{font-size:clamp(1.8rem,3.6vw,2.6rem)}
h3{font-size:1.3rem}
p{margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.lede{font-size:1.22rem;line-height:1.6;color:var(--ink-soft)}
.small{font-size:.92rem}
.muted{color:var(--ink-faint)}

/* ---------- chrome ---------- */
.nav{border-bottom:1px solid var(--hairline);background:var(--paper)}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding-top:1rem;padding-bottom:1rem;flex-wrap:wrap}
.wordmark{font-family:var(--serif);font-weight:600;font-size:1.3rem;color:var(--ink);text-decoration:none}
.wordmark span{color:var(--green)}
.nav-links{display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap}
.nav-links a{color:var(--ink-soft);text-decoration:none;font-size:.98rem}
.nav-links a:hover{color:var(--green);text-decoration:underline}
.btn{display:inline-block;background:var(--green);color:#fff;text-decoration:none;
  font-weight:600;font-size:1.02rem;padding:.85rem 1.6rem;border:1px solid var(--green);
  border-radius:var(--radius);cursor:pointer;font-family:var(--sans)}
.btn:hover{background:var(--green-deep);border-color:var(--green-deep)}
.btn-on-dark{background:var(--green);color:#fff;border-color:var(--green)}
.btn-on-dark:hover{background:var(--green-deep)}
.nav-links a.btn{color:#fff}
.nav-links a.btn:hover{color:#fff;background:var(--green-deep)}
footer.site{border-top:1px solid var(--hairline);margin-top:0}
footer.site .wrap{padding-top:2.2rem;padding-bottom:2.2rem;display:flex;gap:1rem;
  justify-content:space-between;flex-wrap:wrap;color:var(--ink-faint);font-size:.95rem}

/* ---------- sections ---------- */
section.block{padding:4.2rem 0;border-bottom:1px solid var(--hairline)}
section.block:last-of-type{border-bottom:none}
.sec-head{max-width:46rem;margin-bottom:2.2rem}
.sec-head h2{margin-bottom:.8rem}
.sec-num{font-family:var(--serif);color:var(--green);font-weight:600}
.grid{display:grid;gap:1.4rem}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.panel{border:1px solid var(--hairline);border-radius:var(--radius);background:var(--page);
  padding:1.7rem}
.panel h3{margin-bottom:.6rem}
.panel .pt{font-size:1.3rem;margin-bottom:.6rem}
.panel p{color:var(--ink-soft)}
.panel ul{margin:.8rem 0 0;padding-left:1.2rem;color:var(--ink-soft)}
.panel li{margin:.35rem 0}
.dark{background:var(--dark);color:var(--dark-text)}
.dark h1,.dark h2,.dark h3{color:var(--dark-text)}
.dark .lede,.dark p{color:var(--dark-muted)}
.dark .lede strong,.dark p strong{color:var(--dark-text)}
.rule{border:none;border-top:2px solid var(--ink);margin:0 0 1.4rem}
.stat{border-top:2px solid var(--ink);padding-top:1rem}
.stat .num{font-family:var(--serif);font-size:2.6rem;font-weight:600;line-height:1}
.stat p{color:var(--ink-soft);margin-top:.5rem}
table.compare{width:100%;border-collapse:collapse;background:var(--page)}
table.compare th,table.compare td{border:1px solid var(--hairline);padding:.85rem 1rem;text-align:left;vertical-align:top}
table.compare th{font-family:var(--serif);font-weight:600}
table.compare td{color:var(--ink-soft)}
table.compare td:first-child{color:var(--ink)}

/* ---------- landing hero ---------- */
.hero{padding:4.6rem 0 4.2rem}
.hero h1{max-width:14ch;margin-bottom:1.3rem}
.hero .lede{max-width:38rem}
.hero .accent{color:var(--lime)}
.cta-row{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem;align-items:center}
.price-line{margin-top:1.1rem;color:var(--dark-muted);font-size:.98rem}
.hero-meta{margin-top:2.6rem;border-top:1px solid #4a463c;padding-top:1.2rem;
  display:flex;gap:2rem;flex-wrap:wrap;color:var(--dark-muted);font-size:.98rem}
.hero-meta strong{color:var(--dark-text)}

/* ---------- form ---------- */
.form-card{background:var(--page);border:1px solid var(--hairline);border-radius:var(--radius);
  padding:2rem}
fieldset{border:none;margin:0 0 2rem;padding:0}
legend{font-family:var(--serif);font-size:1.25rem;font-weight:600;padding:0;margin-bottom:.4rem}
.field{margin-bottom:1.7rem}
.field label{display:block;font-weight:600;margin-bottom:.35rem}
.hint{color:var(--ink-faint);font-size:.95rem;margin-bottom:.55rem}
input[type=text],input[type=url],textarea{width:100%;border:1px solid var(--ink-faint);
  border-radius:var(--radius);background:#fff;padding:.8rem .9rem;font:inherit;color:var(--ink)}
textarea{min-height:6.5rem;resize:vertical}
input::placeholder,textarea::placeholder{color:var(--ink-faint)}
.picks{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.4rem}
.picks label{border:1px solid var(--ink-faint);border-radius:999px;padding:.5rem 1rem;
  cursor:pointer;font-weight:500;background:#fff}
.picks input{position:absolute;opacity:0}
.picks label:has(input:checked){background:var(--green);border-color:var(--green);color:#fff}
.picks label:has(input:focus-visible){outline:3px solid var(--green);outline-offset:2px}
.checks{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem 1.6rem}
.checks label{display:flex;gap:.6rem;align-items:flex-start;padding:.55rem 0;cursor:pointer}
.checks input{margin-top:.35rem;accent-color:var(--green);width:1.05rem;height:1.05rem;flex:none}
.checks .b{display:block}
.checks .b span{display:block;color:var(--ink-faint);font-size:.93rem}

/* ---------- report ---------- */
.brief{border:1px solid var(--hairline);border-radius:0;
  background:var(--page);padding:2.1rem}
.brief-rule{height:3px;background:var(--ink);margin:-2.1rem -2.1rem 1.6rem}
.case-label{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);
  font-weight:600;margin-bottom:1rem}
.stamp{display:inline-block;font-family:var(--serif);font-weight:600;font-size:1.15rem;
  border:1.5px solid currentColor;border-radius:var(--radius);padding:.3rem .8rem}
.stamp.supported{color:var(--green)}
.stamp.thin{color:var(--ochre)}
.stamp.unsupported{color:var(--red)}
.stamp.weak{color:var(--slate)}
.views{display:inline-flex;border:1px solid var(--hairline);border-radius:999px;overflow:hidden;flex-wrap:wrap}
.views a{padding:.45rem 1.05rem;text-decoration:none;color:var(--ink-soft);font-size:.95rem}
.views a[aria-current]{background:var(--green);color:#fff}
.sig{font-family:var(--serif);font-style:italic;font-size:1.05rem;color:var(--ink-soft)}
ol.moves{margin:0;padding-left:1.4rem}
ol.moves li{margin:.6rem 0;color:var(--ink-soft)}
ol.moves li strong{color:var(--ink)}

/* ---------- preview index ---------- */
.note{border:1px solid var(--hairline);border-left:none;border-right:none;padding:1.2rem 0;color:var(--ink-soft)}

@media (max-width:720px){
  .grid-2,.grid-3,.checks{grid-template-columns:1fr}
  section.block{padding:3rem 0}
  .form-card,.brief{padding:1.4rem}
  .brief-rule{margin:-1.4rem -1.4rem 1.2rem}
  .hero{padding:3.2rem 0}
  .nav-links{gap:.9rem}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
