.legal-page { background: var(--color-bg); }
.legal-header { border-bottom: 1px solid var(--color-border); }
.legal-header__inner { justify-content: space-between; }
.legal-wordmark { font-weight: 850; letter-spacing: 0.2em; }
.legal-main { width: min(100% - (2 * var(--space-6)), 50rem); margin-inline: auto; padding-block: clamp(4rem, 9vw, 8rem); }
.legal-main h1 { max-width: 14ch; margin-bottom: var(--space-5); font-size: clamp(2.7rem, 7vw, 5.5rem); letter-spacing: -0.055em; }
.legal-intro { color: var(--color-text-muted); font-size: var(--font-size-lg); }
.legal-updated { margin: var(--space-6) 0 var(--space-12); color: var(--color-text-subtle); font-size: var(--font-size-sm); }
.legal-section { padding-block: var(--space-8); border-top: 1px solid var(--color-border); }
.legal-section h2 { margin-bottom: var(--space-4); font-size: var(--font-size-xl); }
.legal-section p,
.legal-section li { color: var(--color-text-muted); }
.legal-section ul,
.legal-section ol { display: grid; gap: var(--space-3); padding-left: var(--space-6); }
.legal-section a { color: var(--color-accent); text-decoration: underline; text-underline-offset: 0.2em; }
.legal-callout { margin-top: var(--space-6); padding: var(--space-5); border-left: 3px solid var(--color-accent); background: var(--color-accent-soft); }
.legal-callout p { margin: 0; color: var(--color-text); }
.legal-footer { padding-block: var(--space-8); border-top: 1px solid var(--color-border); color: var(--color-text-subtle); font-size: var(--font-size-sm); }
.legal-footer__inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-4); }
.legal-footer nav { display: flex; flex-wrap: wrap; gap: var(--space-4); }
.legal-footer a:hover { color: var(--color-text); }
@media (max-width: 38rem) {
  .legal-main { width: min(100% - (2 * var(--space-4)), 50rem); }
  .legal-header .button { padding-inline: var(--space-3); }
}
