/* Balance Health — legal pages (generated by uploads/legal-ref/build.py). Tokens only. */
.legal-hero { background: var(--color-bg-strong); color: var(--color-text-inverse); padding: var(--space-8) 0 var(--space-7); }
.legal-hero h1 { font-size: var(--text-h1); line-height: var(--leading-h1); max-width: 820px; }
.legal-hero__dates { margin-top: var(--space-3); color: var(--color-text-inverse-muted); font-size: 14px; line-height: 20px; }

.legal-body { max-width: 760px; padding: var(--space-8) 0 var(--space-9); color: var(--color-text); font-size: 16px; line-height: 26px; }
.legal-body > * + * { margin-top: var(--space-4); }
.legal-body h2 { margin-top: var(--space-8); font-size: var(--text-h2); line-height: var(--leading-h2); color: var(--bh-signature-navy); }
.legal-body h3 { margin-top: var(--space-6); font-size: 18px; line-height: 26px; color: var(--bh-signature-navy); }
.legal-body h4 { margin-top: var(--space-5); font-family: var(--font-body); font-size: 16px; line-height: 24px; font-weight: 700; color: var(--bh-signature-navy); }
.legal-body > :first-child { margin-top: 0; }
.legal-body h2 + *, .legal-body h3 + *, .legal-body h4 + * { margin-top: var(--space-3); }
.legal-body ul { padding-left: 1.25em; display: grid; gap: 6px; }
.legal-body li::marker { color: var(--bh-active-blue); }
.legal-body a { color: var(--color-link); overflow-wrap: anywhere; }
.legal-body p, .legal-body li { overflow-wrap: break-word; }

.site-footer a[aria-current="page"] { color: var(--color-accent); }

@media (min-width: 768px) {
  .legal-hero { padding: var(--space-9) 0 var(--space-8); }
  .legal-hero h1 { font-size: 44px; line-height: 50px; }
}
