/* Legal pages — reuse site.css tokens */
.legal-header .header-inner { justify-content: flex-start; }
.legal { padding: clamp(56px, 8vw, 96px) 0 clamp(80px, 10vw, 128px); }
.legal-container { max-width: 800px; }
.legal h1 { font-size: clamp(34px, 5vw, 46px); line-height: 1.12; margin: 18px 0 18px; }
.legal .lead { font-size: 18px; color: var(--ink-soft); padding-bottom: 32px; margin-bottom: 32px; border-bottom: 1px solid var(--line); }
.legal .last-updated { font-size: 13px; font-style: italic; color: var(--muted); margin-bottom: 8px; }
.legal h2 { font-family: var(--font-sans); font-weight: 600; font-size: 21px; line-height: 1.3; letter-spacing: -0.005em; margin: 44px 0 14px; max-width: none; }
.legal h3 { font-size: 16px; margin: 28px 0 10px; }
.legal p { margin: 0 0 14px; color: var(--ink-soft); }
.legal ul { list-style: disc; padding-left: 22px; margin: 0 0 18px; color: var(--ink-soft); }
.legal li { margin-bottom: 6px; }
.legal strong { color: var(--ink); font-weight: 600; }
.legal a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.legal a:hover { color: var(--accent-ink); }
.legal table { width: 100%; border-collapse: collapse; margin: 8px 0 24px; font-size: 15px; }
.legal td:first-child, .legal td:last-child { white-space: nowrap; }
@media (max-width: 640px) { .legal table { display: block; overflow-x: auto; } .legal td:first-child, .legal td:last-child { white-space: normal; } }
.legal th, .legal td { text-align: left; vertical-align: top; padding: 12px 14px; border-bottom: 1px solid var(--line); color: var(--ink-soft); }
.legal th { font-size: 11px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--muted); border-bottom-color: var(--ink); }
.legal .back-home { display: inline-block; margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--line); font-size: 13px; letter-spacing: 0.04em; text-decoration: none; }
