.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--ink:#14171f;--muted:#5b6472;--line:#e4e7ec;--bg-soft:#f7f8fa;--radius:12px;--wrap:68rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 1.25rem}h1,h2,h3{margin:0 0 .6em;line-height:1.2}h1{font-size:clamp(1.9rem,4.6vw,2.9rem)}h2{font-size:clamp(1.4rem,3vw,2rem)}p{margin:0 0 1rem}a{color:var(--brand-ink)}.btn{border-radius:var(--radius);background:var(--brand);color:var(--on-brand);border:2px solid var(--brand);padding:.85rem 1.4rem;font-weight:700;text-decoration:none;display:inline-block}.btn--ghost{color:var(--brand-ink);border-color:var(--brand-ink);background:0 0}.btn--accent{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.skip{z-index:10;background:#fff;min-height:24px;padding:.75rem 1rem;position:absolute;top:0;left:-9999px}.skip:focus{top:.5rem;left:.5rem}header.site{border-bottom:1px solid var(--line);z-index:5;background:#fff;position:sticky;top:0}header.site .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;display:flex}.logo{color:var(--ink);min-height:24px;padding:.4rem 0;font-size:1.15rem;font-weight:800;text-decoration:none;display:inline-block}.logo span{color:var(--brand-ink)}nav.site a{color:var(--muted);min-height:24px;margin:0 .35rem 0 0;padding:.55rem .5rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}nav.site a[aria-current=page]{color:var(--brand-ink)}.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:1.25rem}.grid{gap:1rem;display:grid}@media (width>=640px){.grid--2{grid-template-columns:1fr 1fr}}@media (width>=900px){.grid--3{grid-template-columns:repeat(3,1fr)}}section{padding:2.6rem 0}section.soft{background:var(--bg-soft)}footer.site{border-top:1px solid var(--line);color:var(--muted);padding:2rem 0;font-size:.93rem}footer.site a{color:var(--muted)}.nap strong{color:var(--ink)}.callbar{background:var(--brand);color:var(--on-brand);text-align:center;z-index:6;padding:.8rem;font-weight:700;text-decoration:none;position:fixed;bottom:0;left:0;right:0}@media (width>=720px){.callbar{display:none}body{padding-bottom:0!important}}
