/* Privacy Policy page-specific styles (kept minimal; relies on base.css) */
.policy-hero { padding: var(--space-12) 0 var(--space-10); }
.policy-hero__title { color: #fff; margin-bottom: var(--space-4); }
.policy-hero__subtitle { color: #fff; max-width: 70ch; opacity: 0.95; }
.legal-meta { color: #e6eef9; font-size: var(--font-size-sm); margin-top: var(--space-3); }

.toc { margin-top: var(--space-9); margin-bottom: var(--space-8); }
.toc__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--space-4); list-style: decimal; padding-left: 1.25rem; }
.toc a { display: inline-block; padding: 0.35rem 0.25rem; border-radius: var(--radius-sm); }
.toc a[aria-current="location"] { background: var(--gray-100); text-decoration: none; }

.policy-section { scroll-margin-top: 96px; }
.policy-section + .policy-section { margin-top: var(--space-10); }
.policy-section ul { margin-top: var(--space-4); }

/* Small polish for links inside policy */
.policy-section a:hover { text-decoration: underline; }

@media (max-width: 640px) {
  .policy-hero { padding: var(--space-11) 0 var(--space-9); }
  .toc__list { grid-template-columns: 1fr; }
}

/* Cap table-of-contents list to max 3 columns on wide screens */
@media (min-width: 1100px) {
  .toc__list { grid-template-columns: repeat(3, 1fr); }
}
