.legal { max-width: 760px; margin: 0 auto; padding: 56px 24px 72px; }
.legal h1 { font-family: var(--display, inherit); font-size: clamp(30px, 5vw, 44px); letter-spacing: -0.02em; margin: 0 0 6px; }
.legal h2 { font-size: 19px; margin: 34px 0 8px; letter-spacing: -0.01em; }
.legal .lang { font-family: var(--mono); font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--accent); margin: 44px 0 4px; padding-top: 22px; border-top: 1px solid var(--line); }
.legal .lang:first-of-type { border-top: 0; margin-top: 8px; padding-top: 0; }
.legal p, .legal li { color: var(--fg-dim); line-height: 1.65; font-size: 15px; }
.legal ul { padding-left: 20px; }
.legal dl { display: grid; grid-template-columns: 170px 1fr; gap: 8px 18px; margin: 12px 0; }
.legal dt { color: var(--fg-faint); font-family: var(--mono); font-size: 12px; padding-top: 2px; }
.legal dd { margin: 0; color: var(--fg); font-size: 15px; }
.legal .todo { background: color-mix(in srgb, var(--warn) 22%, transparent); color: var(--fg); padding: 0 5px; border-radius: 4px; font-family: var(--mono); font-size: 13px; }
.legal a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.legal .upd { font-family: var(--mono); font-size: 12px; color: var(--fg-faint); }
@media (max-width: 600px) { .legal dl { grid-template-columns: 1fr; gap: 2px; } .legal dd { margin-bottom: 10px; } }
