/* Legal pages, 404 and footer legal links — uses the homepage's own tokens (site.css :root). */
.legal-hero{padding-block:clamp(72px,10vw,140px) clamp(48px,6vw,88px);display:grid;gap:20px;max-width:1100px}
.legal-hero h1{font-size:var(--heading);line-height:1.1}
.legal-date{color:var(--neutral);font-size:var(--small)}
.legal-body{background:var(--paper);color:var(--ink)}
.legal-wrap{padding-block:clamp(48px,6vw,96px)}
.legal-wrap article{max-width:820px;display:grid;gap:18px;font-size:var(--body);line-height:1.75}
.legal-wrap h2{font-size:var(--subhead);margin-top:28px;padding-top:24px;border-top:1px solid var(--neutral)}
.legal-wrap h2:first-of-type{border-top:0;padding-top:0;margin-top:8px}
.legal-wrap ul{margin:0;padding-inline-start:1.4em;display:grid;gap:8px}
.legal-wrap a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.legal-lead{font-size:calc(var(--body) + 2px);max-width:760px}
.legal-wrap .legal-lead{color:#334155}
.legal-links{display:flex;gap:24px;flex-wrap:wrap}
.legal-links a{color:var(--neutral);text-decoration:underline;text-underline-offset:3px}
.legal-links a:hover,.legal-links a:focus-visible{color:var(--paper)}
.notfound{min-height:62vh;display:flex;align-items:center}
.nf-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:12px}
.nf-alt{color:var(--neutral);text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.legal-links{gap:16px}.nf-actions{gap:18px}}
