/* Privacy Policy page-specific styles */
.policy-hero {
  background:
    radial-gradient(800px 480px at 10% -10%, rgba(224, 26, 58, 0.10), rgba(0,0,0,0) 40%),
    linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0)),
    var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  padding-block: clamp(var(--space-8), 8vw, var(--space-12));
}
.policy-hero h1 { margin-top: var(--space-3); }
.breadcrumbs ol { display: flex; gap: var(--space-3); list-style: none; padding: 0; margin: 0; }
.breadcrumbs li { color: var(--color-text-muted); }
.breadcrumbs a { color: var(--color-text-muted); text-decoration: none; }
.breadcrumbs a:hover { color: var(--color-primary-400); }

.intro { margin-top: var(--space-6); }
.intro-actions { margin-top: var(--space-5); display: flex; gap: var(--space-4); flex-wrap: wrap; }

.toc { margin-top: var(--space-8); }
.toc-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--space-4); padding-left: 0; list-style: none; margin: 0; }
.toc-list a { display: block; padding: var(--space-4) var(--space-5); border: 1px solid var(--color-border); border-radius: var(--radius-md); text-decoration: none; color: var(--color-text); background: var(--color-elevated); }
.toc-list a:hover { border-color: color-mix(in oklab, var(--color-border), var(--color-silver) 22%); color: var(--color-primary-400); }

.policy-content { margin-top: var(--space-8); }
.policy-content section { scroll-margin-top: 96px; }
.policy-content h2 { margin-top: var(--space-10); }
.policy-content h3 { color: var(--color-text); margin-top: var(--space-6); }
.policy-content ul { padding-left: 1.25rem; }

.contact-list { list-style: none; padding: 0; }
.contact-list li { padding-left: 0; margin-bottom: var(--space-3); }

/* Subtle anchor link focus */
.policy-content a:focus-visible { box-shadow: var(--focus-ring); border-radius: 6px; }

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