:root { color-scheme: light; --ink: #17212b; --muted: #5e6c75; --line: #d8e0e6; --accent: #176fc7; --paper: #fff; --wash: #eef3f1; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--wash); color: var(--ink); font: 16px/1.65 Inter, ui-sans-serif, system-ui, sans-serif; }
a { color: var(--accent); }
.legal-shell { width: min(860px, calc(100% - 32px)); margin: 32px auto; padding: clamp(24px, 5vw, 56px); border: 1px solid var(--line); border-radius: 14px; background: var(--paper); box-shadow: 0 18px 50px rgb(23 33 43 / 9%); }
.legal-nav { display: flex; flex-wrap: wrap; gap: 12px 20px; padding-bottom: 20px; border-bottom: 1px solid var(--line); font-size: 14px; font-weight: 750; }
.eyebrow { margin: 28px 0 4px; color: #0d4f91; font-size: 12px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(32px, 6vw, 48px); line-height: 1.08; }
h2 { margin: 30px 0 8px; font-size: 23px; line-height: 1.2; }
p, li { color: var(--muted); }
.updated { margin: 8px 0 26px; font-size: 13px; }
.notice { padding: 14px 16px; border-left: 4px solid var(--accent); background: #f1f7fc; }
.legal-footer { margin-top: 38px; padding-top: 18px; border-top: 1px solid var(--line); font-size: 13px; }
@media (max-width: 560px) { .legal-shell { width: 100%; margin: 0; border: 0; border-radius: 0; } }
