/* Legal pages: shared landing palette and local font fallbacks. */
.legal-page { --heading-font: "Nunito", system-ui, sans-serif; }
.legal-header { padding: 24px 0; }
.legal-header img { display: block; max-width: 100%; height: auto; }
.legal-header a { color: var(--default-color); }
.legal-content { max-width: 860px; padding-top: 48px; padding-bottom: 48px; line-height: 1.75; overflow-wrap: anywhere; }
.legal-content h1 { font-size: clamp(2rem, 6vw, 2.75rem); margin-bottom: 24px; }
.legal-content h2 { font-size: 1.4rem; margin-top: 32px; margin-bottom: 16px; }
.legal-content li + li { margin-top: 8px; }
.legal-content a, .legal-header a { text-decoration: underline; text-underline-offset: 3px; }
.legal-draft { border-left: 4px solid var(--accent-color); padding: 16px 20px; margin-bottom: 32px; background: var(--surface-color); }
.legal-page a:focus-visible { outline: 3px solid var(--accent-color); outline-offset: 4px; }
.legal-skip-link { position: absolute; top: 8px; left: 8px; padding: 12px; background: var(--background-color); z-index: 10; transform: translateY(-200%); }
.legal-skip-link:focus { transform: translateY(0); }
