:root{
  --ink:#1F2A33;
  --muted:#5A6670;
  --paper:#FFFFFF;
  --sky:#EAF3FA;
  --mint:#E7F5EC;
  --line:#D5DEE4;
  --sun:#FFD43B;
  --sun-soft:#FFF4C2;
  --go:#21875A;
  --radius:14px;
  --font:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:1.0625rem;line-height:1.55;font-variation-settings:"wdth" 100}
a{color:var(--ink)}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:0;background:var(--sun);padding:.5rem 1rem;z-index:10}
.skip:focus{left:1rem}
.wrap{max-width:1120px;margin:0 auto;padding:0 1.5rem}
.narrow-wrap{max-width:760px}
.center{text-align:center;margin-left:auto;margin-right:auto}

h1,h2,h3,h4{font-variation-settings:"wdth" 116;line-height:1.08;margin:0 0 .55em;letter-spacing:-.01em}
h1{font-size:clamp(2.4rem,5.2vw,4rem);font-weight:850}
h2{font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:800}
h3{font-size:1.25rem;font-weight:750;font-variation-settings:"wdth" 110}
p{margin:0 0 1em;max-width:64ch}
.lead{font-size:1.2rem}
.fine{font-size:.9rem;color:var(--muted)}

.btn{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;font-weight:700;padding:.9rem 1.4rem;border-radius:999px;border:0;font:inherit;font-weight:700;cursor:pointer;font-variation-settings:"wdth" 106;transition:transform .15s ease,background .15s ease}
.btn:hover{background:#33434F;transform:translateY(-1px)}
.btn-small{padding:.55rem 1rem;font-size:.95rem}
.btn-wide{width:100%;padding:1rem;font-size:1.05rem}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.btn-ghost:hover{background:var(--sky)}
.btn-dark{background:var(--ink)}
.link{font-weight:600}
.ic-tick{width:1.15em;height:1.15em;color:var(--go);flex:none}
.ic-star{width:.95em;height:.95em;fill:var(--sun);stroke:#C99A00;stroke-width:1}

/* header */
.site-header{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.85rem;padding-bottom:.85rem}
.logo{font-weight:900;font-size:1.35rem;text-decoration:none;font-variation-settings:"wdth" 125;letter-spacing:-.02em}
.logo span{background:linear-gradient(transparent 55%,var(--sun) 55%)}
nav{display:flex;align-items:center;gap:1.4rem}
nav a{text-decoration:none;font-weight:600;font-size:.97rem}
nav a:not(.btn):hover{text-decoration:underline}
@media (max-width:760px){.site-header nav a:not(.btn){display:none}}

/* hero */
.hero{padding:4rem 0 4.5rem;background:radial-gradient(1100px 500px at 85% 20%,var(--sun-soft),transparent 60%),radial-gradient(900px 500px at 0% 100%,var(--sky),transparent 60%)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:3.5rem;align-items:center}
.hero-actions{display:flex;align-items:center;gap:1.5rem;margin:1.6rem 0 1.4rem;flex-wrap:wrap}
.hero-points{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;list-style:none;padding:0;margin:0;font-weight:600}
.hero-points li,.checks li{display:flex;align-items:center;gap:.45rem}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.hero{padding-top:2.5rem}}

.answer{margin:0;background:#fff;border-radius:22px;padding:1.4rem;box-shadow:0 30px 60px -30px rgba(31,42,51,.45),0 0 0 1px var(--line);transform:rotate(1.2deg)}
.answer-q{display:flex;gap:.75rem;align-items:flex-start;background:var(--sky);border-radius:16px 16px 16px 4px;padding:.85rem 1rem;margin-bottom:1rem}
.answer-q p{margin:0;font-weight:600}
.q-mark{flex:none;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800;font-size:.9rem}
.picks{margin:0;padding:0;list-style:none}
.picks li{display:flex;gap:.8rem;align-items:center;padding:.55rem .2rem}
.picks li+li{border-top:1px solid var(--sky)}
.picks div{display:grid}
.avatar{flex:none;width:2.4rem;height:2.4rem;border-radius:12px;display:grid;place-items:center;font-weight:800;color:#fff;background:hsl(var(--h) 45% 45%)}
.meta{display:flex;align-items:center;gap:.3rem;color:var(--muted);font-size:.9rem}
.missing{margin-top:.9rem;padding:.8rem 1rem;border:2px dashed #C9D3D9;border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}
.missing mark{background:var(--sun);color:var(--ink);font-weight:800;padding:.1rem .45rem;border-radius:6px}
.missing span{font-size:.9rem;color:var(--muted)}
.answer figcaption{margin-top:.8rem;font-size:.78rem;color:var(--muted)}

/* evidence */
.evidence{background:var(--ink);color:#fff;padding:4.5rem 0}
.evidence h2{color:#fff;font-size:clamp(1.5rem,2.6vw,2rem)}
.evidence .fine{color:#B9C4CB}
.evidence-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:3.5rem;align-items:center}
@media (max-width:900px){.evidence-grid{grid-template-columns:1fr;gap:2rem}}
.stat-num{font-size:clamp(5rem,12vw,8.5rem);font-weight:900;line-height:.9;margin:0 0 .5rem;color:var(--sun);font-variation-settings:"wdth" 125}
.stat-num span{font-size:.6em}
.chart{background:#2A3843;border-radius:20px;padding:1.5rem 1.5rem 1rem}
.chart-title{font-weight:700;margin-bottom:1rem}
.cols{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;align-items:end;height:240px;border-bottom:1px solid #4A5A66;padding-bottom:0}
.col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:.35rem}
.col .val{font-weight:800;font-size:1.05rem}
.col .b{width:100%;max-width:56px;height:calc(var(--v) * 4.2px);min-height:4px;background:#6E8291;border-radius:8px 8px 2px 2px}
.col.hi .b{background:var(--sun)}
.labs{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;margin-top:.6rem}
.labs span{font-size:.78rem;color:#B9C4CB;text-align:center;line-height:1.25}
.chart .fine{margin-top:1.2rem;margin-bottom:0}

/* how */
.how{padding:5rem 0 4.5rem}
.how h2{text-align:center}
.steps{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;position:relative}
.steps::before{content:"";position:absolute;top:2.5rem;left:12%;right:12%;border-top:3px dashed var(--line);z-index:0}
.steps li{text-align:center;position:relative;z-index:1}
.step-ic{display:grid;place-items:center;width:5rem;height:5rem;margin:0 auto 1rem;border-radius:24px;background:var(--sun-soft);color:var(--ink);box-shadow:0 0 0 6px #fff}
.steps li:nth-child(2) .step-ic{background:var(--sun)}
.steps li:nth-child(3) .step-ic{background:var(--mint)}
.steps li:nth-child(4) .step-ic{background:var(--sky)}
.step-ic svg{width:2.4rem;height:2.4rem}
.steps h3{margin-bottom:.3rem}
.steps p{color:var(--muted);margin:0 auto;max-width:22ch}
@media (max-width:820px){.steps{grid-template-columns:1fr 1fr;row-gap:2.2rem}.steps::before{display:none}}

/* audit form */
.audit-section{background:var(--mint);padding:5rem 0}
.audit-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}
@media (max-width:900px){.audit-grid{grid-template-columns:1fr;gap:2rem}}
.checks{list-style:none;padding:0;margin:1.2rem 0 0;display:grid;gap:.5rem;font-weight:600}
.audit-form{background:#fff;border-radius:22px;padding:1.8rem;box-shadow:0 24px 50px -30px rgba(31,42,51,.4)}
.field{display:grid;gap:.35rem;margin-bottom:1rem}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:480px){.field-row{grid-template-columns:1fr}}
label{font-weight:600;font-size:.95rem}
.opt{font-weight:400;color:var(--muted)}
input,select{font:inherit;padding:.75rem .85rem;border:1.5px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);width:100%}
input:focus,select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px var(--sun-soft)}
.consent{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;font-size:.88rem;color:var(--muted);margin:.3rem 0 1.2rem}
.consent input{width:auto;margin-top:.2rem}
.form-msg{margin:1rem 0 0;font-weight:600;min-height:1.2em}
.form-msg.ok{color:var(--go)}
.form-msg.err{color:#B3261E}

/* plans */
.plans{padding:5rem 0}
.plans h2{text-align:center}
.plan-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:880px;margin:2.5rem auto 1.5rem;align-items:stretch}
@media (max-width:760px){.plan-cards{grid-template-columns:1fr}}
.plan{position:relative;border-radius:22px;padding:2rem;background:#fff;box-shadow:0 0 0 1.5px var(--line);display:flex;flex-direction:column}
.plan-featured{background:var(--ink);color:#fff;box-shadow:0 30px 60px -30px rgba(31,42,51,.6)}
.plan-featured .plan-for,.plan-featured .founding{color:#C7D1D8}
.plan-featured .ic-tick{color:var(--sun)}
.plan-featured .btn{background:var(--sun);color:var(--ink)}
.plan-featured .btn:hover{background:#FFE170}
.badge{position:absolute;top:-.85rem;left:2rem;background:var(--sun);color:var(--ink);font-weight:800;font-size:.85rem;padding:.25rem .75rem;border-radius:999px;margin:0}
.plan-for{color:var(--muted);min-height:3em}
.price{font-size:3rem;font-weight:900;margin:.3rem 0 0;line-height:1;font-variation-settings:"wdth" 118}
.price .was{font-size:1.2rem;font-weight:600;text-decoration:line-through;opacity:.55;margin-right:.45rem;vertical-align:middle}
.price .per{font-size:1rem;font-weight:500;opacity:.75}
.founding{font-size:.9rem;color:var(--muted);margin:.4rem 0 1.3rem}
.plan-list{list-style:none;padding:0;margin:0 0 1.8rem;display:grid;gap:.6rem;flex:1}
.plan-list li{display:flex;gap:.55rem;align-items:flex-start}
.plan-list .ic-tick{margin-top:.2rem}
.plan .btn{text-align:center}

/* proof (placeholder) */
.proof{background:var(--sky);padding:4.5rem 0}
.proof h2{text-align:center}
.placeholder-flag{background:#FFE3E0;color:#8A1C12;font-weight:700;font-size:.9rem;padding:.5rem 1rem;border-radius:10px;max-width:none;text-align:center}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
@media (max-width:820px){.quotes{grid-template-columns:1fr}}
.quote{margin:0;background:#fff;border-radius:18px;padding:1.5rem}
.stars{display:flex;gap:.15rem;margin-bottom:.8rem}
.stars svg{width:1.2rem;height:1.2rem;fill:var(--sun);stroke:#C99A00;stroke-width:1}
.quote blockquote{margin:0 0 1rem;font-size:1.05rem;font-weight:500}
.quote figcaption{color:var(--muted);font-size:.9rem}

/* faq */
.faq{padding:4.5rem 0}
details{border-bottom:1px solid var(--line);padding:1rem 0}
summary{cursor:pointer;font-weight:700;font-size:1.08rem;list-style:none;display:flex;justify-content:space-between;gap:1rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-weight:800;font-size:1.3rem;line-height:1}
details[open] summary::after{content:"–"}
details p{margin:.7rem 0 0;color:var(--muted)}

/* closing */
.closing{background:var(--sun);padding:3.5rem 0}
.closing-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.closing h2{margin:0;font-size:clamp(1.5rem,2.8vw,2.2rem)}

/* footer */
.site-footer{padding:2rem 0;font-size:.92rem;color:var(--muted)}
.footer-row{display:flex;flex-wrap:wrap;gap:.5rem 2rem;align-items:center;justify-content:space-between}
.footer-row p{margin:0}
.site-footer nav{gap:1.2rem;flex-wrap:wrap}

/* legal pages */
.legal{padding:3rem 0 4rem}
.legal h1{font-size:clamp(2rem,4vw,2.8rem)}
.legal h2{font-size:1.3rem;margin-top:2rem}
.legal li{margin-bottom:.4rem;max-width:66ch}
.draft{background:var(--sun);padding:.6rem 1rem;border-radius:10px;display:inline-block;font-weight:600;font-size:.92rem}
