.legal { max-width: 760px; margin: 0 auto; padding: 24px 16px 64px; }
.legal h1 { font-size: clamp(30px, 5vw, 44px); font-weight: 800; letter-spacing: -.03em; margin: 24px 0 6px; }
.legal h2 { font-size: 20px; margin: 32px 0 8px; }
.legal p, .legal li { color: var(--text-2); }
.legal a:not(.brand) { color: var(--link); }
.legal nav a { color: inherit; text-decoration: none; }
.legal nav a:hover { color: var(--text); }
.legal ul { padding-left: 22px; }
.legal .updated { color: var(--muted); font-size: 14px; }
.legal .note { padding: 12px 14px; border-radius: 12px; background: var(--surface); border: 1px solid var(--border); font-size: 14px; color: var(--muted); }
.legal nav { display: flex; gap: 16px; font-size: 14px; color: var(--muted); }
.legal .legal-top { padding: 0; }
body:has(.legal) { background: radial-gradient(700px 360px at 90% -10%, var(--glow-1), transparent 65%), var(--bg); background-attachment: fixed; }
.legal .topbar { flex-wrap: wrap; }
.legal a.btn { color: var(--accent-text); text-decoration: none; }
.legal h3 { font-size: 17px; margin: 20px 0 4px; }
.legal ol { padding-left: 22px; }
.legal li { margin-bottom: 4px; }
