/* Page-specific styles for Terms & Conditions (kept minimal; builds on base.css) */
.legal-hero { margin-block: var(--space-32) var(--space-24); }
.legal-lead { color: var(--gray-200);  }
.legal-meta { color: var(--gray-300); font-size: var(--fs-200); }

.legal-toc { margin-block: var(--space-24); }
.legal-toc ol { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--space-8); counter-reset: toc; list-style: none; padding: 0; }
.legal-toc a { display: block; padding: 10px 12px; border-radius: var(--radius-md); border: 1px solid var(--color-border); background: var(--color-surface-1); box-shadow: var(--shadow-sm); }
.legal-toc a:hover { text-decoration: none; box-shadow: var(--shadow-md); }

.legal-defs { display: grid; grid-template-columns: 1fr 2fr; gap: var(--space-8) var(--space-16); }
.legal-defs dt { font-weight: 600; color: var(--gray-100); }
.legal-defs dd { margin: 0; color: var(--gray-200); }
@media (max-width: 720px) {
  .legal-defs { grid-template-columns: 1fr; }
}

article > .card { margin-block: var(--space-16); }
.legal-cta h3 { margin: 0 0 var(--space-8) 0; }
