.legal-page { background: var(--bg-primary); color: var(--text-primary); min-height: 100vh; }
.legal-main { box-sizing: border-box; width: 100%; max-width: 1000px; margin: 0 auto; padding: 180px 28px clamp(72px, 7vw, 120px); }
.legal-hero { margin-bottom: 48px; }
.legal-hero h1 { margin: 0 0 16px; font-size: clamp(30px, 4vw, 40px); line-height: 1.2; font-weight: 600; }
.legal-hero p { max-width: 760px; margin: 0; font-size: 18px; line-height: 1.7; color: var(--text-secondary); }
.legal-document { overflow-wrap: anywhere; font-size: 16px; line-height: 1.75; }
.legal-document section + section { margin-top: 36px; }
.legal-document h2 { margin: 0 0 12px; font-size: 22px; line-height: 1.4; font-weight: 600; scroll-margin-top: 130px; }
.legal-document p { margin: 0 0 14px; }
.legal-document ul { margin: 12px 0 18px; padding-left: 24px; }
.legal-document li + li { margin-top: 8px; }
.legal-document a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.legal-document a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 2px; }
.legal-updated { margin-top: 48px !important; padding-top: 24px; border-top: 1px solid var(--border-color); color: var(--text-secondary); font-size: 15px; }
@media (max-width: 520px) {
    .legal-main { padding-top: 150px; padding-left: 20px; padding-right: 20px; }
    .legal-hero { margin-bottom: 36px; }
    .legal-hero p { font-size: 17px; }
    .legal-document h2 { font-size: 21px; }
}
