.legal-page { background: #fff; }
.legal-page .site-header { position: sticky; top: 0; }
.legal-page .primary-nav .nav-future { height: 100%; display: flex; align-items: center; color: var(--navy); font-size: 14px; font-weight: 650; white-space: nowrap; cursor: default; }
.legal-main { padding-bottom: 72px; }
.legal-header { padding: 38px 0 31px; border-bottom: 1px solid #e2eaf0; background: #f6f9fb; }
.legal-header-inner { max-width: 880px; }
.legal-header h1 { margin: 0; color: var(--navy); font-size: 40px; line-height: 1.12; letter-spacing: -1px; }
.legal-header p { max-width: 720px; margin: 12px 0 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
.legal-content { max-width: 880px; padding-top: 38px; }
.legal-content section { padding: 0 0 28px; }
.legal-content section + section { padding-top: 29px; border-top: 1px solid #e5ecf1; }
.legal-content h2 { margin: 0 0 13px; color: var(--navy); font-size: 23px; line-height: 1.25; letter-spacing: -.35px; }
.legal-content h3 { margin: 19px 0 8px; color: var(--navy); font-size: 17px; line-height: 1.35; }
.legal-content p, .legal-content li, .legal-address { color: #43586d; font-size: 15.5px; line-height: 1.7; }
.legal-content p { margin: 0 0 14px; }
.legal-content ul { margin: 0 0 16px; padding-left: 21px; }
.legal-content li + li { margin-top: 6px; }
.legal-content a { color: #0b68c5; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.legal-content a:hover { color: var(--blue-dark); }
.legal-address { margin: 0; font-style: normal; }
.legal-note { padding: 15px 17px; border-left: 3px solid #8dbce7; background: #f3f8fc; }
.legal-meta { margin-top: 13px !important; color: #718294 !important; font-size: 12.5px !important; }

@media (max-width: 820px) {
    .legal-page .primary-nav .nav-future { height: 47px; border-bottom: 1px solid #edf1f4; }
}
@media (max-width: 620px) {
    .legal-main { padding-bottom: 48px; }
    .legal-header { padding: 24px 0 22px; }
    .legal-header h1 { font-size: 31px; }
    .legal-header p { margin-top: 8px; font-size: 14px; }
    .legal-content { padding-top: 28px; }
    .legal-content section { padding-bottom: 22px; }
    .legal-content section + section { padding-top: 23px; }
    .legal-content h2 { font-size: 20px; }
    .legal-content h3 { font-size: 16px; }
    .legal-content p, .legal-content li, .legal-address { font-size: 15px; line-height: 1.62; }
    .legal-page .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 22px; }
    .legal-page .footer-brand { grid-column: 1 / -1; }
}
