.legal { width: min(760px, 100% - 32px); margin: 0 auto; padding: 48px 0 80px; }
.legal header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 40px; gap: 16px; }
.legal h1 { font-size: clamp(28px, 4vw, 38px); margin: 0 0 8px; letter-spacing: -0.02em; line-height: 1.2; }
.legal .updated { color: var(--ink-3); font-size: var(--fs-sm); margin: 0 0 32px; }
.legal h2 { font-size: var(--fs-xl); margin: 36px 0 10px; }
.legal p, .legal li { color: var(--ink-2); line-height: 1.85; }
.legal ul { padding-inline-start: 22px; }
.legal .lang-block + .lang-block { margin-top: 64px; padding-top: 40px; border-top: 1px solid var(--line); }
.legal .box { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 20px 22px; }
.legal a.back { color: var(--ink-2); text-decoration: none; font-size: var(--fs-sm); }
