.legal-footer { margin-bottom: calc(100px + env(safe-area-inset-bottom)); }
@media (min-width: 1024px) { .legal-footer { margin-bottom: 0; } }
.legal-page { color-scheme: dark; margin: 0; background: #101218; color: #edf0f7; font: 17px/1.65 system-ui, sans-serif; }
.legal-page * { box-sizing: border-box; }
.legal-page main { max-width: 800px; margin: auto; padding: 32px 20px 64px; overflow-wrap: anywhere; }
.legal-page a { color: #9cbcff; text-underline-offset: 3px; }
.legal-page a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.legal-page h1 { font-size: clamp(26px, 5vw, 38px); line-height: 1.25; }
.legal-page h2 { margin-top: 28px; font-size: 22px; line-height: 1.35; }
