.legal-frame { overflow: visible; }
.legal-topbar { gap: 20px; }
.legal-nav { gap: clamp(14px, 2.2vw, 32px); }
.legal-actions { gap: 14px; }
.legal-actions .language-button { min-width: 47px; text-align: center; }
.legal-home-link { white-space: nowrap; }
.legal-main { max-width: 980px; margin: 0 auto; }
.legal-heading { padding: 66px 0 23px; border-bottom: 1px solid var(--line); }
.legal-heading .eyebrow { margin-bottom: 15px; }
.legal-heading h1 { max-width: 850px; font-size: clamp(44px, 6vw, 68px); line-height: .94; }
.legal-intro { max-width: 720px; margin: 18px 0 20px; color: var(--paper-dim); font-size: 13px; line-height: 1.75; }
.legal-meta { display: flex; flex-wrap: wrap; justify-content: space-between; color: var(--muted); font: 9px var(--mono); gap: 10px 20px; }
.legal-notice { display: flex; align-items: flex-start; margin: 22px 0 6px; padding: 14px 16px; border: 1px solid rgba(189,30,50,.55); background: rgba(189,30,50,.1); gap: 12px; }
.legal-notice-mark { width: 19px; height: 19px; flex: 0 0 auto; display: grid; place-items: center; border: 1px solid var(--signal); color: var(--signal-bright); font: 11px var(--mono); }
.legal-notice p { margin: 0; color: var(--paper-dim); font-size: 10px; line-height: 1.75; }
.legal-document { max-width: 850px; }
.legal-section { padding: 24px 0 22px; border-bottom: 1px solid var(--line); }
.legal-section h2 { margin-bottom: 11px; color: var(--paper); font-size: 22px; line-height: 1.1; }
.legal-section p { margin: 0; color: var(--paper-dim); font-size: 11px; line-height: 1.9; overflow-wrap: anywhere; }
.legal-footer { align-items: center; }
.legal-footer p { max-width: 300px; }
.legal-footer .footer-links { flex-wrap: wrap; justify-content: flex-end; row-gap: 10px; }

@media (max-width: 900px) {
    .legal-topbar { gap: 12px; }
    .legal-topbar .brand { min-width: 160px; }
    .legal-nav { gap: 12px; }
    .legal-actions { gap: 8px; }
    .legal-home-link { padding: 0 8px; font-size: 8px; }
}
@media (max-width: 700px) {
    .legal-topbar { min-height: 65px; height: auto; flex-wrap: wrap; padding: 10px 0; }
    .legal-topbar .brand { flex: 1; }
    .legal-topbar .top-actions { gap: 8px; }
    .legal-topbar .language-button { font-size: 9px; }
    .legal-home-link { min-height: 32px; }
    .legal-nav { width: 100%; height: 35px; display: flex; justify-content: space-between; order: 3; gap: 10px; }
    .legal-nav .nav-link { height: 35px; font-size: 10px; }
    .legal-nav .nav-link.is-active::after { display: none; }
    .legal-heading { padding-top: 42px; }
    .legal-heading h1 { font-size: clamp(42px, 12vw, 60px); }
    .legal-intro { font-size: 12px; }
    .legal-section { padding: 20px 0 18px; }
    .legal-section h2 { font-size: 20px; }
    .legal-section p { font-size: 11px; }
    .legal-footer { align-items: flex-start; }
    .legal-footer .footer-links { justify-content: flex-start; }
}