.footer-legal { display: flex; flex-wrap: wrap; gap: 8px 28px; border-top: 1px solid var(--line); margin-top: 24px; padding-top: 15px; }
.footer-legal a { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; color: var(--muted); }
.footer-legal a:hover { color: var(--lime); }
.legal-page { padding-block: 30px 80px; }
.legal-topbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; }
.legal-topbar .breadcrumb { margin:0; }
.legal-language { display:flex; padding:4px; border:1px solid var(--line); background:white; border-radius:10px; gap:4px; }
.legal-language a { display:inline-flex; align-items:center; min-height:44px; padding:8px 16px; border-radius:7px; font-size:13px; }
.legal-language a[aria-current=page] { color:white; background:#2159cf; }
.legal-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 26px; margin-top:24px; }
.legal-app-context { color:#2159cf; font-size:14px; margin-top:18px; }
.legal-request { border:1px solid #cfdbed; background:#eef4fd; border-radius:14px; padding:25px; margin-top:26px; max-width:850px; }
.legal-request h2 { font-size:24px; line-height:1.35; }
.legal-request p { color:var(--muted); max-width:700px; }
.legal-request .legal-contact-email { display:inline-flex; align-items:center; min-height:44px; margin:8px 0 8px 18px; color:#2159cf; overflow-wrap:anywhere; }
.legal-request .legal-request-note { margin:14px 0 0; font-size:12px; line-height:1.7; }
.legal-resource-links { padding-left:20px; }
.legal-resource-links a { display:inline-flex; align-items:center; min-height:44px; color:#2159cf; overflow-wrap:anywhere; }
.legal-app-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.legal-app-links a { display:flex; align-items:center; min-height:48px; padding:12px 16px; border:1px solid var(--line); border-radius:8px; color:#2159cf; font-size:14px; }
.app-privacy-links { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0 0 24px; }
.app-privacy-links a { display:flex; align-items:center; min-height:44px; color:#2159cf; font-size:13px; }
.legal-heading { padding: 35px 0 40px; border-bottom: 1px solid var(--line); }
.legal-heading h1 { font-size: clamp(36px, 5vw, 64px); line-height: 1.12; font-weight: 600; letter-spacing: -2px; margin-bottom: 22px; }
.legal-heading h1 > span { color: var(--lime); }
.legal-intro { max-width: 720px; color: var(--muted); font-size: 17px; }
.legal-date { color: var(--muted); font: 11px/1.7 var(--mono); margin: 20px 0 0; }
.legal-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 75px; padding-top: 42px; }
.legal-sidebar { min-width: 0; }
.legal-sidebar nav { padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); }
.legal-sidebar a { display: flex; gap: 10px; align-items: center; justify-content: space-between; min-height: 46px; padding: 10px 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.legal-sidebar a[aria-current=page], .legal-sidebar a:hover { color: var(--lime); }
.legal-sidebar .eyebrow { margin-bottom: 10px; }
.legal-sidebar .legal-toc { margin-top: 20px; background: transparent; }
.legal-body { max-width: 810px; min-width: 0; }
.legal-body > section { margin-bottom: 38px; scroll-margin-top: 112px; }
.legal-body h2 { display: flex; align-items: baseline; gap: 15px; font-size: 24px; line-height: 1.4; letter-spacing: -.5px; font-weight: 550; }
.legal-body h2 > span { color: var(--lime); font: 11px var(--mono); flex-shrink: 0; }
.legal-body p { font-size: 15px; line-height: 1.95; color: var(--muted); overflow-wrap: anywhere; }
.legal-company { border: 1px solid #5ee8ef30; background: #5ee8ef05; border-radius: 12px; padding: 26px; }
.legal-company dl { margin: 0; }
.legal-company dl > div + div { margin-top: 20px; }
.legal-company dt { color: var(--muted); font-size: 12px; margin-bottom: 6px; }
.legal-company dd { margin: 0; font-size: 14px; line-height: 1.8; overflow-wrap: anywhere; }
.legal-company address { font-style: normal; }
.legal-company a { color: var(--lime); display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 1000px) { .legal-layout { grid-template-columns: 230px minmax(0, 1fr); gap: 35px; } }
@media (max-width: 760px) {
    .legal-layout { grid-template-columns: 1fr; gap: 35px; padding-top: 28px; }
    .legal-sidebar nav { display: grid; grid-template-columns: 1fr 1fr; column-gap: 20px; }
    .legal-sidebar .eyebrow { grid-column: 1 / -1; }
    .legal-sidebar .legal-toc { display: none; }
    .legal-heading { padding-block: 25px 30px; }
    .legal-heading h1 { letter-spacing: -1.3px; }
    .legal-heading .eyebrow { font-size: 10px; letter-spacing: 1px; }
    .legal-intro { font-size: 16px; }
    .legal-body h2 { font-size: 22px; gap: 10px; }
    .legal-body > section { scroll-margin-top: 100px; }
    .legal-company { padding: 20px; }
    .footer-legal { gap: 4px 18px; }
}
@media (max-width: 380px) { .legal-sidebar nav { grid-template-columns: 1fr; } }
@media (max-width: 600px) {
    .legal-request { padding:20px; }
    .legal-request .legal-contact-email { margin-left:0; display:flex; }
    .legal-request h2 { font-size:21px; }
    .legal-app-links { grid-template-columns:1fr; }
    .legal-actions .button, .legal-request .button { white-space:normal; text-align:left; }
}

