:root{color-scheme:light dark;--canvas:#F4F4F3;--paper:#FFFFFF;--ink:#131313;--graphite:#5A5C58;--rule:#E2E2DF;--gold:#8F6300;--proof:#356CDC;--ok:#1E7A36;--q:#8A6D00;--fixed:#1E7A36;--open:#5A5C58}
@media (prefers-color-scheme:dark){:root{--canvas:#111215;--paper:#161618;--ink:#F1F1EF;--graphite:#A8AAA4;--rule:#2A2B2E;--gold:#E3B341;--ok:#4CC37A;--q:#E3C341;--fixed:#4CC37A;--open:#A8AAA4}}
*{box-sizing:border-box}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:Archivo,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
.top,main,footer{max-width:760px;margin:0 auto;padding:0 20px}
.top{display:flex;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:12px}
.logo{font-family:Faustina,Georgia,serif;font-weight:600;font-size:22px;color:var(--ink);text-decoration:none}
h1,h2{font-family:Faustina,Georgia,serif;font-weight:600;letter-spacing:-0.02em}
h1{font-size:clamp(2rem,6vw,2.8rem);line-height:1.12;margin:24px 0 16px}
h2{font-size:1.35rem;margin:2rem 0 .5rem}
.lede{font-family:Faustina,Georgia,serif;font-size:19px;color:var(--graphite)}
p,li{color:var(--graphite)}
b,strong{color:var(--ink)}
main a:not(.btn),footer a{color:var(--gold);font-weight:600;text-decoration:none}
main a:not(.btn):hover,footer a:hover{text-decoration:underline}
ul,ol{padding-left:1.2rem}li{margin:6px 0}
.marks{list-style:none;padding:0}
.marks li{display:flex;gap:10px;align-items:baseline}
.mark{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;font-size:12px;font-weight:700;border:1.5px solid currentColor;flex:none}
.mark.ok{color:var(--ok)}.mark.q{color:var(--q)}.mark.fixed{color:var(--fixed)}.mark.open{color:var(--open)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:999px;font-size:13px;font-weight:600;background:var(--proof);color:#fff;text-decoration:none;border:0}
.btn.ghost{background:var(--paper);color:var(--ink);border:1px solid var(--rule)}
.cta{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 6px}
.small{font-size:13px;margin:0 0 24px}
footer{padding-top:24px;padding-bottom:40px;border-top:1px solid var(--rule);margin-top:40px;font-size:13px;text-align:center}
footer nav{margin:8px 0;line-height:2.2}
footer nav a{display:inline-block;padding:2px 0}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
