/* Terms & Conditions page-specific styles (lean, building on base.css) */
.page-hero { padding-block: var(--space-10) var(--space-6); }
.page-hero .lead { margin-top: var(--space-2); }

.legal { display: grid; gap: var(--space-6); grid-template-columns: 1fr; margin-block: var(--space-8) var(--space-12); }
@media (min-width: 960px) { .legal { grid-template-columns: 320px 1fr; align-items: start; } }

.legal__toc { position: sticky; top: calc(var(--space-10)); padding: var(--space-5); }
.toc-list { display: grid; gap: 8px; counter-reset: toc; }
.toc-list a { color: var(--color-text); text-decoration: none; }
.toc-list a:hover { color: var(--color-primary); text-decoration: underline; }

.legal__content { display: grid; gap: var(--space-6); }
.legal__section h2 { margin-bottom: var(--space-3); }
.legal__section h3 { margin-top: var(--space-2); }
.legal__section ul { padding-left: 1.1rem; }
.legal__section ul li { margin: 6px 0; }

.legal__disclaimer { margin-top: var(--space-3); }
.legal__backtop { margin-top: var(--space-5); }

/* Anchor offset for fixed/sticky header when jumping to sections */
:target { scroll-margin-top: 96px; }
