/* Inner pages (privacy, thanks, 404, guides) in the v2 look, plus integration glue for
   the landing page. Tokens and components come from v2.css (Designer, unchanged). */

/* Form states used by js/waitlist.js (v2.css calls the success state .ok). */
.form-status.success{color:var(--green)}
.form-status.error::before{content:"⚠ "}
.form-status.success::before{content:"✓ "}
.join input[aria-invalid="true"]{border-color:var(--error)}
.btn[disabled]{opacity:.6;cursor:wait;transform:none}

/* Inner page shell */
.page{padding:48px 0 80px;background:
  radial-gradient(700px 360px at 90% 0%,rgba(30,107,82,.08),transparent 60%),var(--paper)}
@media (min-width:960px){.page{padding:72px 0 112px}}

/* Long-form text */
.prose{max-width:760px}
.prose h1{font-size:clamp(2rem,5vw,3rem);line-height:1.1;letter-spacing:-.025em}
.prose h2{margin-top:44px;font-size:clamp(1.375rem,3vw,1.75rem);line-height:1.2}
.prose h3{margin-top:28px}
.prose p,.prose ul,.prose ol{margin-top:14px;color:var(--body);font-size:1.0625rem;line-height:1.7}
.prose .lead{margin-top:16px;font-size:1.1875rem}
.prose h1 + .small{margin-top:10px}
.prose strong{color:var(--ink)}
.prose ul,.prose ol{padding-left:1.4rem}
.prose li + li{margin-top:6px}
.prose code{font-size:.9em;background:var(--mist);padding:.1rem .35rem;border-radius:6px;color:var(--ink)}
.prose hr{border:0;border-top:1px solid var(--line-soft);margin:40px 0}
.prose blockquote{margin:24px 0;padding:18px 22px;background:var(--white);border:1px solid var(--line-soft);border-left:4px solid var(--green);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.prose blockquote p{margin:0}

/* Guide extras */
.guide > h1 + p em{color:var(--muted);font-style:normal}
.guide .checklist{list-style:none;padding:20px;background:var(--white);border:1px solid var(--line-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.guide .checklist li + li{margin-top:8px}
.guide .checklist label{display:flex;gap:.7rem;align-items:flex-start;min-height:32px;cursor:pointer;color:var(--ink)}
.guide .checklist input{width:20px;height:20px;margin-top:.25rem;accent-color:var(--green);flex:none}
@media print{.site-header,.site-footer,.skip{display:none}.page{background:none;padding:0}.prose blockquote{box-shadow:none}}

/* Footer stays at the bottom on short pages (404, thanks). */
body{min-height:100vh;display:flex;flex-direction:column}
body > main{flex:1 0 auto}
