/* Policy pages share the landing navigation, brand and footer. */
.legal-page { font-size: 17px; line-height: 1.85; color: #454b57; }
.legal-page main { padding: 72px 0 100px; }
.legal-page main > .wrap { max-width: 924px; }
.legal-page .doc { min-width: 0; }
.legal-tabs { display: flex; gap: 28px; border-bottom: 1px solid var(--line); margin-bottom: 48px; font-size: 14px; }
.legal-tabs a { display: block; padding: 0 0 14px; color: var(--muted); border-bottom: 2px solid transparent; margin-bottom: -1px; }
.legal-tabs a[aria-current="page"] { color: var(--ink); border-bottom-color: var(--ink); font-weight: 600; }
.legal-page .doc h1 { font-size: clamp(32px, 4vw, 44px); line-height: 1.25; letter-spacing: -.05em; color: var(--ink); }
.legal-page .eff { color: var(--muted); font-size: 14px; margin: 16px 0 36px; }
.legal-page .doc h2 { font-size: 21px; line-height: 1.5; margin: 44px 0 16px; color: var(--ink); letter-spacing: -.03em; scroll-margin-top: 100px; }
.legal-page .doc p { margin: 0 0 16px; overflow-wrap: anywhere; word-break: keep-all; }
.legal-page .doc .lead { padding-bottom: 32px; margin-bottom: 36px; border-bottom: 1px solid var(--line); color: var(--muted); }
.legal-page .doc ul, .legal-page .doc ol { margin: 0 0 20px; padding-left: 24px; }
.legal-page .doc li { margin-bottom: 8px; }
.legal-page .doc a:not(.legal-tabs a) { color: #3857d6; text-decoration: underline; text-underline-offset: 3px; }
.legal-page .tabc { overflow-x: auto; margin: 16px 0 22px; }
.legal-page table { width: 100%; min-width: 420px; border-collapse: collapse; font-size: 15px; line-height: 1.7; }
.legal-page th, .legal-page td { border-bottom: 1px solid var(--line); padding: 16px 18px; text-align: left; vertical-align: top; }
.legal-page th { background: #f5f6f8; color: var(--ink); font-weight: 600; border-top: 1px solid var(--line); white-space: nowrap; }
.legal-page .note { background: #f5f6f8; border-left: 2px solid #cbd0db; border-radius: 0 6px 6px 0; padding: 18px 22px; color: var(--muted); font-size: 15px; }
.legal-page .callout { padding: 28px; margin: 40px 0; border: 1px solid var(--line); border-radius: 10px; background: #fafbfc; scroll-margin-top: 100px; }
.legal-page .callout h2 { margin-top: 0; }
.legal-page .steps { line-height: 1.9; }
@media (max-width: 760px) {
  .legal-page { font-size: 16px; }
  .legal-page main { padding: 36px 0 64px; }
  .legal-tabs { margin-bottom: 32px; gap: 24px; font-size: 13px; }
  .legal-page .doc h1 { font-size: 32px; }
  .legal-page .doc h2 { font-size: 19px; margin-top: 34px; }
  .legal-page .eff { font-size: 13px; margin-bottom: 28px; }
  .legal-page th, .legal-page td { padding: 12px 14px; }
  .legal-page table { font-size: 14px; }
  .legal-page .callout { padding: 20px 16px; }
  .legal-page .note { padding: 16px; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) { .legal-page { scroll-behavior: auto; } html:has(.legal-page) { scroll-behavior: auto; } }
