/* Terms & Conditions page-specific styles */
.legal-hero {
  background: radial-gradient(800px 400px at 0% -10%, rgba(193,18,47,0.12), transparent 50%), var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  padding-block: clamp(var(--space-8), 6vw, var(--space-11));
}
.legal-hero .card { border-color: color-mix(in oklab, var(--color-border), var(--color-silver) 10%); }

.toc ul {
  list-style: none;
  padding: 0;
  margin: var(--space-5) 0 0 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--space-3);
}
.toc a {
  display: block;
  text-decoration: none;
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-elevated);
  color: var(--color-text);
  transition: transform var(--duration-fast) var(--easing-standard), background var(--duration-normal) var(--easing-standard), border-color var(--duration-normal) var(--easing-standard);
}
.toc a:hover { transform: translateY(-1px); border-color: color-mix(in oklab, var(--color-border), var(--color-silver) 15%); }

section[id] .card { scroll-margin-top: 88px; }

/* Content readability */
#privacy h3,
#licentie-rechten h3,
#disclaimer h3 { margin-top: var(--space-6); }

/* Responsive tweaks */
@media (max-width: 700px) {
  .toc ul { grid-template-columns: 1fr; }
}
