/* Privacy Policy page-specific styles */
.page-hero {
  background: linear-gradient(180deg, var(--gray-50), transparent);
  padding: var(--space-40) 0 var(--space-20) 0;
}
.page-hero .lead {
  color: var(--gray-700);
  max-width: 70ch;
}
.page-hero .meta {
  font-size: var(--text-sm);
  color: var(--gray-500);
}

.policy-toc { margin-top: var(--space-20); }
.toc-list { counter-reset: toc; padding-left: var(--space-16); }
.toc-list > li { margin: var(--space-8) 0; }
.toc-list > li a { font-weight: 600; }

.policy-section { margin-top: var(--space-24); }
.policy-section h2 { margin-top: 0; }
.policy-section h3 { color: var(--gray-700); }

.cookie-categories dt {
  font-weight: 700;
  margin-top: var(--space-12);
}
.cookie-categories dd {
  margin: var(--space-4) 0 var(--space-8) 0;
  color: var(--gray-700);
}

.contact-list { padding-left: var(--space-16); }
.contact-list li { margin: var(--space-8) 0; }

.btn-inline {
  padding: 6px 10px;
  font-size: var(--text-sm);
}

/* Improve in-page anchor scrolling under sticky header */
:target { scroll-margin-top: 96px; }
.policy-section h2, .policy-section h3 { scroll-margin-top: 96px; }

/* Readability */
.policy-section p, .policy-section ul, .policy-section dl { max-width: 80ch; }
.policy-section ul { padding-left: 1.15rem; }
.policy-section ul li { margin-bottom: var(--space-8); }

/* Card refinement for long-form content */
.policy-section.card { border-color: var(--gray-200); }
.policy-section.card p:last-child { margin-bottom: 0; }

/* Make links in content clearly visible without being intrusive */
.policy-section a { text-decoration: underline; text-decoration-thickness: 1px; }
.policy-section a:hover { text-decoration-thickness: 2px; }
