/* OpenPress Privacy Policy page template (page-templates/privacy-policy-page.php). Loaded on that template only,
   after home.css, about.css and editorial.css. The hero, prose, checklist, note and breadcrumb rules come from those
   files; this file adds only the contents list and the policy layout. Theme tokens only, so light and dark mode
   follow the rest of the site. No motion. */

/* Hero: the "last updated" line. */
.op-privacy__updated { margin: var(--op-space-4) 0 0; color: var(--op-text-muted); font-size: var(--op-text-small); }

/* Editor-only owner note (hidden from visitors in the template). */
.op-privacy__setup { margin-top: var(--op-space-5); }

/* Layout: contents list above the policy on small screens, beside it from 1024px. */
.op-privacy-layout { display: grid; gap: var(--op-space-6); }
@media (min-width: 1024px) {
	.op-privacy-layout { grid-template-columns: minmax(0, 16rem) minmax(0, 1fr); gap: var(--op-space-7); align-items: start; }
	.op-privacy-toc { position: sticky; top: 5.5rem; }
}

/* Contents list */
.op-privacy-toc { min-width: 0; padding: var(--op-space-4) var(--op-space-5); background: var(--op-bg-elevated); border: 1px solid var(--op-border); border-radius: var(--op-radius-lg); }
.op-privacy-toc__title { margin: 0 0 var(--op-space-3); font-size: var(--op-text-h4); letter-spacing: -0.02em; }
.op-privacy-toc__list { margin: 0; padding-left: 1.25rem; font-size: var(--op-text-small); line-height: 1.4; }
.op-privacy-toc__list li { margin: 0; padding-left: var(--op-space-1); }
.op-privacy-toc__list a { display: inline-block; padding-block: 0.3125rem; overflow-wrap: break-word; }
.op-privacy-toc__list a:focus-visible { outline: 2px solid var(--op-link); outline-offset: 2px; border-radius: 2px; }

/* Policy sections: ruled, one reading column. */
.op-privacy-body { min-width: 0; max-width: 46rem; }
.op-privacy-section { padding-block: var(--op-space-6); border-top: 1px solid var(--op-border); scroll-margin-top: 5.5rem; }
.op-privacy-section:first-child { padding-top: 0; border-top: 0; }
.op-privacy-section:last-child { padding-bottom: 0; }
.op-privacy-section__title { margin: 0 0 var(--op-space-4); font-size: var(--op-text-h3); letter-spacing: var(--op-tracking-heading); overflow-wrap: break-word; }
.op-privacy-section__subtitle { margin: var(--op-space-5) 0 var(--op-space-3); font-size: var(--op-text-h4); letter-spacing: -0.02em; }
.op-privacy-section .op-about-prose { max-width: none; }
.op-privacy-section a:focus-visible { outline: 2px solid var(--op-link); outline-offset: 2px; border-radius: 2px; }
