.legal-page .site-header { position: relative; border-bottom: 1px solid var(--line); }
.legal-page .brand > img { display: block; }
.legal-nav { display: flex; align-items: center; gap: 30px; margin-left: auto; }
.legal-nav a { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; color: #b7c3d3; font-size: 12px; }
.legal-nav a:hover { color: white; }
.legal-main { padding-block: clamp(70px, 9vw, 135px) 120px; }
.legal-heading { max-width: 850px; margin-bottom: 90px; }
.legal-heading .eyebrow { margin-bottom: 24px; }
.legal-heading h1 { font-size: clamp(56px, 8vw, 118px); font-weight: 300; line-height: .95; letter-spacing: -5px; margin: 0 0 30px; }
.legal-updated { color: #8499b0; font: 400 10px var(--mono); letter-spacing: .5px; }
.legal-layout { display: grid; grid-template-columns: minmax(180px, .5fr) minmax(0, 1.5fr); gap: clamp(60px, 10vw, 160px); align-items: start; }
.legal-layout aside { position: sticky; top: 40px; display: flex; flex-direction: column; border-top: 1px solid var(--line); padding-top: 22px; }
.legal-layout aside p { margin: 0 0 17px; color: #7790a9; font: 500 8px var(--sans); letter-spacing: 2px; }
.legal-layout aside a { padding-block: 8px; color: #91a3b7; font-size: 11px; }
.legal-layout aside a:hover { color: white; }
.legal-content section { scroll-margin-top: 40px; border-top: 1px solid var(--line); padding: 29px 0 58px; }
.legal-content section:last-child { border-bottom: 1px solid var(--line); }
.legal-number { margin: 0 0 30px; color: #73907d; font: 400 10px var(--mono); }
.legal-content h2 { margin: 0 0 25px; font-size: clamp(27px, 3vw, 40px); letter-spacing: -1.2px; }
.legal-content section > p:not(.legal-number) { max-width: 720px; color: var(--muted); font-size: 14px; line-height: 2; }
.legal-content section > p:last-child { margin-bottom: 0; }
.legal-content a { color: #d9e5f2; text-decoration: underline; text-decoration-color: #9bb2ca70; text-underline-offset: 4px; }
.legal-content a:hover { color: white; text-decoration-color: var(--hud); }

@media (max-width: 720px) {
  .legal-page .nav-wrap { padding-inline: 22px; }
  .legal-page .brand { font-size: 21px; }
  .legal-nav { gap: 18px; }
  .legal-nav a:first-child { display: none; }
  .legal-main { padding-block: 65px 85px; }
  .legal-heading { margin-bottom: 58px; }
  .legal-heading h1 { letter-spacing: -3px; }
  .legal-layout { display: block; }
  .legal-layout aside { display: none; }
  .legal-content section { padding: 25px 0 45px; }
  .legal-content section > p:not(.legal-number) { font-size: 13px; }
}
