.legal-page { background:var(--paper); color:var(--ink); }
.legal-page .skip-link { background:var(--navy); color:var(--paper); }
.legal-header { width:100%; min-height:72px; padding:.8rem max(4vw,1rem); display:flex; align-items:center; justify-content:space-between; gap:1rem; border-bottom:1px solid rgba(7,24,39,.12); background:var(--navy); }
.legal-header-actions { display:flex; align-items:center; gap:.6rem; }
.legal-header .home-link { padding:.65rem .9rem; border:1px solid var(--line); border-radius:.62rem; color:#d2dee5; font-size:.84rem; }
.legal-header .home-link:hover,.legal-header .home-link:focus-visible { color:var(--mint); }
.legal-main { min-height:calc(100vh - 180px); }
.legal-hero { padding:clamp(4.5rem,8vw,8rem) max(4vw,1rem) clamp(3rem,6vw,5.5rem); background:radial-gradient(circle at 75% 20%,rgba(37,207,232,.12),transparent 28%),linear-gradient(135deg,#041523,#071d31 68%,#041523); color:var(--paper); }
.legal-hero-inner,.legal-content { width:min(1080px,100%); margin:0 auto; }
.legal-kicker { margin:0 0 1.2rem; color:var(--mint); font-size:.72rem; font-weight:760; letter-spacing:.13em; }
.legal-hero h1 { max-width:900px; font-size:clamp(2.8rem,6vw,5.8rem); }
.legal-hero p:not(.legal-kicker) { max-width:760px; margin:1.6rem 0 0; color:#adc0cd; font-size:clamp(1rem,1.5vw,1.22rem); }
.legal-meta { margin-top:2rem; display:flex; flex-wrap:wrap; gap:.6rem; }
.legal-meta span { padding:.45rem .65rem; border:1px solid var(--line); border-radius:99px; color:#9fb4c1; font-size:.72rem; }
.legal-content { padding:clamp(3.5rem,7vw,7rem) max(4vw,1rem); }
.legal-summary { margin-bottom:3.5rem; padding:1.4rem; border-left:4px solid #0a8b74; border-radius:.35rem; background:#e5efeb; color:#28414f; }
.legal-summary strong { color:var(--ink); }
.legal-section { padding:2.1rem 0; border-top:1px solid rgba(7,24,39,.14); }
.legal-section:first-of-type { border-top:0; }
.legal-section h2 { margin:0 0 1rem; color:var(--ink); font-size:clamp(1.65rem,3vw,2.45rem); line-height:1.1; letter-spacing:-.035em; }
.legal-section h3 { margin:1.6rem 0 .55rem; font-size:1.05rem; }
.legal-section p,.legal-section li { color:#425968; }
.legal-section p { margin:.7rem 0; }
.legal-section ul { margin:.8rem 0; padding-left:1.25rem; }
.legal-section li+li { margin-top:.55rem; }
.legal-section a { color:#08799a; text-decoration:underline; text-underline-offset:.18em; }
.legal-table { width:100%; margin:1.2rem 0; border-collapse:collapse; font-size:.92rem; }
.legal-table th,.legal-table td { padding:.85rem; border:1px solid rgba(7,24,39,.14); text-align:left; vertical-align:top; }
.legal-table th { background:#e8efec; }
.legal-callout { margin:1.25rem 0; padding:1.1rem 1.2rem; border:1px solid rgba(8,121,154,.22); border-radius:.7rem; background:#eef5f3; }
.support-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:1.5rem 0; }
.support-card { padding:1.35rem; border:1px solid rgba(7,24,39,.14); border-radius:.8rem; background:white; }
.support-card h2,.support-card h3 { margin-top:0; }
.support-email { display:inline-block; margin-top:.35rem; color:#08799a; font-size:clamp(1.15rem,2.3vw,1.7rem); font-weight:700; overflow-wrap:anywhere; }
.legal-footer { min-height:0; padding:1.5rem max(4vw,1rem); flex-wrap:wrap; background:var(--navy); }
.legal-footer nav { display:flex; flex-wrap:wrap; gap:1rem; }
.legal-footer nav a { color:#a9bdc9; }
.legal-footer nav a:hover,.legal-footer nav a:focus-visible { color:var(--mint); }
[hidden] { display:none !important; }

@media (max-width:640px) {
  .legal-header { padding:.65rem .75rem; }
  .legal-header .home-link { display:none; }
  .legal-header .company-brand small { max-width:7.2rem; }
  .legal-content { padding-left:1rem; padding-right:1rem; }
  .support-grid { grid-template-columns:1fr; }
  .legal-table { display:block; overflow-x:auto; }
  .legal-footer { align-items:flex-start; }
}
