.legal-page { font-size: 16px; }
.legal-page h1 { font-size: clamp(36px, 4.1vw, 58px); letter-spacing: -1.7px; line-height: 1.12; max-width: 900px; }
.legal-navigation { display: flex; align-items: center; gap: 27px; font-size: 14px; font-weight: 600; }
.legal-navigation a:hover, .legal-copy a:hover { color: var(--rose-dark); }
.legal-heading { background: #faf9fb; padding-block: 64px 48px; border-bottom: 1px solid var(--line); }
.legal-heading .container { max-width: 860px; }
.legal-heading .section-label { margin-bottom: 18px; }
.legal-lede { max-width: 690px; color: var(--muted); margin-top: 20px; font-size: 17px; line-height: 1.7; }
.legal-date { font-size: 12px; color: var(--muted); margin-top: 22px; }
.legal-content { max-width: 860px; padding-block: 55px 85px; }
.legal-copy { min-width: 0; }
.legal-copy p, .legal-copy li { font-size: 15px; line-height: 1.85; color: #57515e; }
.legal-copy > p { margin-bottom: 19px; }
.legal-copy a { color: var(--rose-dark); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal-copy strong { color: var(--ink); font-weight: 650; }
.legal-copy h2 { font-size: 27px; letter-spacing: -.6px; line-height: 1.35; margin: 48px 0 18px; scroll-margin-top: 0; }
.legal-copy h3 { font-size: 18px; letter-spacing: -.2px; line-height: 1.4; margin: 25px 0 12px; }
.legal-copy section > p { margin-bottom: 16px; }
.legal-copy ul, .legal-copy ol { padding-left: 22px; margin: 15px 0 21px; }
.legal-copy li + li { margin-top: 9px; }
.legal-callout { padding: 23px 26px; background: var(--blush); border-radius: 15px; margin-block: 26px; }
.legal-callout > strong { display: block; margin-bottom: 8px; }
.legal-callout p { margin: 0; }
.operator-card { margin: 28px 0; padding: 20px 0; border-block: 1px solid var(--line); }
.operator-card > div { display: grid; grid-template-columns: 135px minmax(0, 1fr); gap: 20px; padding-block: 6px; }
.operator-card dt { font-size: 12px; color: var(--muted); }
.operator-card dd { margin: 0; font-size: 13px; line-height: 1.7; }
.legal-table-wrap { max-width: 100%; overflow-x: auto; margin: 22px 0; }
.legal-table { width: 100%; border-collapse: collapse; font-size: 13px; table-layout: fixed; }
.legal-table th, .legal-table td { padding: 13px 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; overflow-wrap: anywhere; line-height: 1.7; }
.legal-table th { color: var(--ink); background: #faf9fb; font-weight: 600; }
.legal-table td { color: var(--muted); }
.legal-table th:first-child { width: 25%; }
.legal-request { background: #faf9fb; padding: 24px; border: 1px solid var(--line); border-radius: 16px; margin: 23px 0; }
.legal-request p { margin-bottom: 18px; }
.legal-request .button { text-decoration: none; color: white; width: fit-content; font-size: 14px; }
.legal-request .request-note { font-size: 12px; margin: 16px 0 0; }
.legal-page .site-footer { border-top: 1px solid var(--line); padding-block: 40px 25px; }
.legal-page .footer-top { grid-template-columns: .8fr 1.5fr; padding-bottom: 28px; }
.is-embed .legal-page .site-header, .is-embed .legal-page .site-footer { display: none; }
.is-embed .legal-content { padding-top: 35px; }
.is-embed .legal-heading { padding-block: 35px 30px; }
html.is-embed { scroll-padding-top: 25px; }
@media (max-width: 1000px) {
  .legal-copy h2 { font-size: 25px; }
}
@media (max-width: 700px) {
  .legal-page .header-inner { flex-wrap: nowrap; }
  .legal-navigation { font-size: 12px; gap: 18px; }
  .legal-heading { padding-block: 38px 30px; }
  .legal-page h1 { font-size: 36px; letter-spacing: -1px; }
  .legal-lede { font-size: 15px; margin-top: 18px; }
  .legal-date { font-size: 11px; margin-top: 18px; }
  .legal-content { padding-block: 30px 55px; }
  .legal-page .footer-top { grid-template-columns: 1fr; }
  .legal-copy p, .legal-copy li { font-size: 14px; line-height: 1.8; }
  .legal-copy h2 { font-size: 23px; margin-top: 37px; }
  .legal-copy h3 { font-size: 17px; }
  .operator-card > div { grid-template-columns: 1fr; gap: 3px; padding-block: 9px; }
  .legal-callout { padding: 20px; }
  .legal-table { font-size: 11px; }
  .legal-table th, .legal-table td { padding: 10px 7px; }
  .legal-table th:first-child { width: 26%; }
  .legal-request { padding: 20px; }
  .legal-request .button { padding-inline: 20px; gap: 14px; font-size: 12px; }
}
