.legal-page { background: var(--paper); color: var(--ink); }
.legal-shell { width: min(820px, calc(100% - 48px)); margin-inline: auto; padding: 56px 0 96px; }
.legal-back { display: inline-flex; margin-bottom: 32px; color: var(--blue-dark); font-weight: 750; text-underline-offset: 3px; }
.legal-shell h1 { max-width: 14ch; margin: 0 0 20px; color: var(--navy); font-size: clamp(40px, 6vw, 64px); line-height: 1.02; letter-spacing: -.035em; overflow-wrap: anywhere; }
.legal-shell h2 { margin: 48px 0 14px; color: var(--navy); font-size: clamp(24px, 3vw, 32px); line-height: 1.15; }
.legal-shell h3 { margin: 28px 0 10px; color: var(--navy); font-size: 19px; }
.legal-shell p, .legal-shell li { color: var(--muted); line-height: 1.78; }
.legal-shell li + li { margin-top: 8px; }
.legal-shell a { color: var(--blue-dark); text-underline-offset: 3px; }
.legal-lead { max-width: 68ch; font-size: 18px; }
.legal-card { margin: 28px 0; padding: 24px; border: 1px solid var(--line); border-radius: 14px; background: var(--white); }
.legal-card p { margin: 5px 0; }
.legal-nav { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 28px 0; padding: 20px 0; border-block: 1px solid var(--line); }
.legal-nav a { font-weight: 700; white-space: nowrap; }
.legal-note { padding: 18px 20px; background: var(--sky); border-radius: 12px; }
.legal-pending { color: var(--danger); font-weight: 750; }
.legal-updated { margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--line); font-size: 13px; }
.legal-site-footer { padding: 28px 0; background: var(--navy); color: var(--white); }
.legal-site-footer div { width: min(820px, calc(100% - 48px)); margin-inline: auto; display: flex; flex-wrap: wrap; gap: 10px 22px; }
.legal-site-footer a { color: inherit; white-space: nowrap; }
@media (max-width: 414px) { .legal-shell, .legal-site-footer div { width: min(100% - 32px, 820px); } .legal-shell { padding-top: 32px; } }
