/* Scoped additions: existing page styles are unchanged. */
.legal-footer-links { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 24px; font-size: 14px; }
.legal-footer-links a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 4px; }
.legal-consent { display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: start; gap: 12px; font-size: 14px; line-height: 1.8; }
.legal-consent input { appearance: auto; width: 20px; height: 20px; margin-top: 4px; accent-color: var(--charcoal); }
.legal-consent label { cursor: pointer; }
.legal-consent a { text-decoration: underline; text-underline-offset: 3px; }
.legal-consent .form-error { grid-column: 2; }
.legal-consent input:focus-visible, .legal-consent a:focus-visible, .legal-footer-links a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.legal-content { padding-top: 140px; padding-bottom: 80px; }
.legal-content article { max-width: 850px; margin-inline: auto; overflow-wrap: anywhere; }
.legal-content h1 { font-size: clamp(32px, 4vw, 52px); line-height: 1.2; margin-block: 20px 24px; }
.legal-content section { margin-top: 36px; }
.legal-content h2 { font-size: clamp(21px, 2.4vw, 28px); line-height: 1.4; margin-bottom: 12px; }
main.legal-content p { font-size: 16px !important; line-height: 1.85; margin-block: 12px; }
.legal-content address { font-style: normal; margin-top: 24px; }
.legal-content a { text-decoration: underline; text-underline-offset: 3px; }
.legal-error-footer { padding: 24px; text-align: center; }
.legal-error-footer .legal-footer-links { justify-content: center; }
@media (max-width: 639px) { .legal-content { padding-top: 112px; padding-bottom: 48px; } }

.legal-consent > div { grid-column: 2; grid-row: 1; }
.legal-consent > input { grid-column: 1; grid-row: 1; }
.legal-consent > .form-error { grid-column: 2; grid-row: 2; }
