:root{--ink:#111;--bg:#fffdf8;--accent:#0b4f9c;--warm:#fff1d6;--line:#333}
*{box-sizing:border-box}html{font-size:20px}body{margin:0;font-family:Verdana,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}
.wrap{max-width:960px;margin:0 auto;padding:0 1rem}a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
a:focus,button:focus,input:focus,select:focus{outline:4px solid #f5a300;outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem}
.top{background:var(--accent);color:#fff;padding:.8rem 0}.top .wrap{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.logo{color:#fff;font-weight:bold;font-size:1.4rem;text-decoration:none}nav a{color:#fff;margin-right:1rem;font-size:1.05rem}
h1{font-size:2rem;line-height:1.25}h2{font-size:1.5rem;margin-top:2rem}
.hero{background:var(--warm);border:2px solid var(--line);border-radius:12px;padding:1.5rem;margin:1.5rem 0}
.btns{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem}
.btn{display:block;background:var(--accent);color:#fff;text-decoration:none;padding:1rem;border-radius:10px;font-size:1.1rem;font-weight:bold;text-align:center;border:0;cursor:pointer}
.card{border:2px solid var(--line);border-radius:12px;padding:1rem 1.2rem;margin:1rem 0;background:#fff}
.card h3{margin:.2rem 0 .5rem;font-size:1.3rem}.meta{font-size:.9rem;color:#333}
.alert{background:#ffe3e3;border:3px solid #a30000;border-radius:12px;padding:1rem 1.2rem}
.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;background:var(--warm);padding:1rem;border:2px solid var(--line);border-radius:12px}
label{font-weight:bold;display:block}select,input[type=email]{font-size:1rem;padding:.6rem;width:100%;border:2px solid var(--line);border-radius:8px}
.fit{display:inline-block;background:#e6f0fb;border:1px solid var(--accent);border-radius:6px;padding:0 .4rem;margin:.1rem;font-size:.85rem}
ol.steps li{margin-bottom:.8rem}.foot{border-top:3px solid var(--accent);margin-top:3rem;padding:1rem 0;font-size:.9rem;background:#f4f4f4}
.lede{font-size:1.15rem}.crumb{font-size:.9rem}.updated{font-size:.85rem;color:#333}
@media(max-width:600px){html{font-size:18px}h1{font-size:1.6rem}}
