/* OhBet legal pages. Uses the brand tokens; safe to merge into styles.css. */
:root {
  --navy: #0A2540; --navy-2: #163457; --carolina: #5BB8F5; --offwhite: #FAFAF7;
  --pale: #ECF3FB; --ink-muted: #4A5568; --rule: #D9E3F0;
}
.legal-page { max-width: 820px; margin: 0 auto; padding: 120px 24px 96px; color: var(--navy); font-family: Inter, system-ui, sans-serif; line-height: 1.6; }
.legal-head { margin-bottom: 40px; padding-bottom: 32px; border-bottom: 1px solid var(--rule); }
.legal-head .eyebrow { font-family: "JetBrains Mono", monospace; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--carolina); margin: 0 0 12px; }
.legal-head h1 { font-family: Fraunces, Georgia, serif; font-weight: 500; font-size: clamp(36px, 5vw, 56px); line-height: 1.05; margin: 0 0 16px; }
.legal-head .lede { font-size: 18px; color: var(--ink-muted); margin: 0 0 12px; }
.legal-head .mono { font-family: "JetBrains Mono", monospace; font-size: 13px; color: var(--ink-muted); margin: 0; }
.legal h2 { font-family: Fraunces, Georgia, serif; font-weight: 600; font-size: 26px; margin: 48px 0 12px; scroll-margin-top: 96px; }
.legal h3 { font-size: 17px; font-weight: 600; color: var(--navy-2); margin: 28px 0 8px; scroll-margin-top: 96px; }
.legal p { margin: 0 0 14px; font-size: 16px; }
.legal p.center { text-align: center; margin: 0 0 6px; color: var(--ink-muted); }
.legal p.caps { font-weight: 600; }
.legal p.note { color: var(--ink-muted); font-style: italic; }
.legal p.def { margin-bottom: 10px; }
.legal ul, .legal ol { margin: 0 0 16px; padding-left: 28px; }
.legal li { margin-bottom: 8px; }
.legal .callout { border-top: 2px solid var(--navy); border-bottom: 2px solid var(--navy); padding: 16px 0; margin: 28px 0; font-weight: 600; }
.legal hr { border: 0; border-top: 1px solid var(--rule); margin: 32px 0; }
.legal .table-wrap { overflow-x: auto; margin: 16px 0 24px; }
.legal table { width: 100%; border-collapse: collapse; font-size: 14px; }
.legal th, .legal td { text-align: left; vertical-align: top; padding: 10px 12px; border: 1px solid var(--rule); }
.legal thead th { background: var(--pale); font-weight: 600; }
.legal th[scope="row"] { font-weight: 600; white-space: nowrap; }
@media (max-width: 600px) {
  .legal-page { padding: 96px 18px 72px; }
  .legal th[scope="row"] { white-space: normal; }
}
.legal ol.toc { list-style: none; padding: 0; columns: 2; column-gap: 32px; }
.legal ol.toc li { break-inside: avoid; margin-bottom: 6px; font-size: 15px; }
.legal ol.toc a { color: var(--navy-2); text-decoration: none; border-bottom: 1px solid var(--rule); }
.legal ol.toc a:hover { border-color: var(--carolina); }
@media (max-width: 600px) { .legal ol.toc { columns: 1; } }
