:root{--bg:#fbfaf7;--surface:#fff;--ink:#1c1f23;--muted:#5b636d;--line:#e4e1da;--accent:#1f5f4a;--accent-ink:#fff;--accent-soft:#e7f1ec;--warn:#8a4b0f;--warn-soft:#fbf0e3;--danger:#9b2c2c;--danger-soft:#fbeaea;--radius:10px;--max:46rem;--wide:68rem;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:17px/1.65 var(--sans);margin:0}a{color:var(--accent);text-underline-offset:2px}a:hover{text-decoration-thickness:2px}img{max-width:100%;height:auto}.wrap{max-width:var(--wide);margin:0 auto;padding:0 1.25rem}.prose{max-width:var(--max)}header.site{border-bottom:1px solid var(--line);background:var(--surface)}header.site .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;min-height:64px;display:flex}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.brand b{font-weight:800}.brand .wm span{color:var(--accent);font-weight:800}nav.main a{color:var(--ink);margin-left:1.1rem;font-size:.95rem;text-decoration:none}nav.main a:hover,nav.main a[aria-current=page]{color:var(--accent)}main{padding:2.5rem 0 4rem}h1,h2,h3{letter-spacing:-.015em;line-height:1.25}h1{margin:.2em 0 .5em;font-size:clamp(1.9rem,3.5vw,2.6rem)}h2{margin-top:2.2em;font-size:1.45rem}h3{margin-top:1.8em;font-size:1.15rem}.prose p,.prose li{font-family:var(--serif);font-size:1.08rem}.prose li{margin:.3em 0}.lede{color:var(--muted);max-width:40rem;font-size:1.2rem}.meta{color:var(--muted);font-size:.9rem}.hero{padding:2rem 0 1rem}.btn{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:0;border-radius:8px;padding:.7rem 1.15rem;font-size:1rem;font-weight:600;text-decoration:none;display:inline-block}.btn.secondary{color:var(--accent);border:1.5px solid var(--accent);background:0 0}.btn[aria-disabled=true],.btn:disabled{cursor:not-allowed;background:#9aa5a0}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.35rem}.card h3{margin-top:0}.card a.stretch{color:inherit;text-decoration:none}.note{background:var(--warn-soft);border-left:4px solid var(--warn);border-radius:6px;padding:.8rem 1rem;font-size:.95rem}.ok{background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:6px;padding:.8rem 1rem}table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:.95rem}th,td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.5rem .6rem}th{background:#f2f0ea}blockquote{border-left:3px solid var(--line);color:var(--muted);margin:1.2em 0;padding:.6em 1em}code{background:#f0eee8;border-radius:4px;padding:.1em .35em;font-size:.92em}pre{background:#f0eee8;border-radius:8px;padding:1rem;overflow:auto}footer.site{border-top:1px solid var(--line);color:var(--muted);background:var(--surface);padding:2rem 0;font-size:.9rem}footer.site a{color:var(--muted);margin-right:1rem}.sources{font-size:.92rem}.price{font-size:1.5rem;font-weight:700}ul.check{padding-left:0;list-style:none}ul.check li:before{content:"✓ ";color:var(--accent);font-weight:700}.q{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:1rem 0;padding:1rem 1.2rem}.q legend{padding:0 .2rem;font-weight:600}.q label{cursor:pointer;padding:.35rem .2rem;display:block}.q .hint{color:var(--muted);margin:.2rem 0 .4rem;font-size:.88rem}.result{margin-top:1.5rem;display:none}.result.show{display:block}.meter{background:#ece9e2;border-radius:6px;height:12px;overflow:hidden}.meter>i{background:var(--accent);width:0;height:100%;transition:width .4s;display:block}.band-low{color:var(--accent)}.band-mid{color:var(--warn)}.band-high{color:var(--danger)}form.capture{flex-wrap:wrap;gap:.5rem;display:flex}form.capture input[type=email]{border:1px solid var(--line);border-radius:8px;flex:220px;padding:.65rem .8rem;font-size:1rem}@media (width<=640px){nav.main a{margin-left:0;margin-right:1rem}}
