/* Legal pages (Privacy Policy / Terms of Service / Cookie Policy) -------- */
/* Shared prose stylesheet for content/pages-html/{privacy,terms,cookie-policy}.html.
   Uses only tokens already defined in themes/tot-navy.css, so light/dark
   theming (prefers-color-scheme + [data-theme]) is inherited automatically. */

.legal-hero { padding: 56px 0 28px; border-bottom: 1px solid var(--line); }
.legal-hero .kicker { display: block; margin-bottom: 10px; }
.legal-hero h1 { margin: 0 0 10px; }
.legal-hero .updated { color: var(--muted); font-size: .95rem; margin: 0; }
.legal-hero .updated strong { color: var(--ink); }

.legal-content { max-width: 800px; margin: 0 auto; padding: 48px 0 96px; font-size: 1rem; }

.legal-content h2 {
  font-size: 1.5rem; margin: 48px 0 16px; padding-top: 28px;
  border-top: 1px solid var(--line); color: var(--navy);
}
.legal-content > h2:first-child { margin-top: 0; padding-top: 0; border-top: none; }

.legal-content h3 { font-size: 1.15rem; margin: 28px 0 10px; color: var(--navy); }
.legal-content h4 { font-size: 1rem; margin: 20px 0 8px; color: var(--ink); }

.legal-content p { margin: 0 0 16px; color: var(--ink); }
.legal-content ul, .legal-content ol { margin: 0 0 16px; padding-left: 22px; color: var(--ink); }
.legal-content li { margin-bottom: 8px; }
.legal-content li > ul, .legal-content li > ol { margin-top: 8px; }

.legal-content a { color: var(--teal-ink); text-decoration: underline; text-underline-offset: 2px; }
.legal-content a:hover { color: var(--navy); }
.legal-content strong { color: var(--ink); font-weight: 700; }
.legal-content hr { border: none; border-top: 1px solid var(--line); margin: 32px 0; }

.legal-content details {
  margin: 0 0 10px; border: 1px solid var(--line); border-radius: 12px;
  background: var(--card); overflow: hidden; padding: 0 18px;
}
.legal-content details summary {
  margin: 0 -18px; padding: 14px 18px; font-weight: 700; cursor: pointer;
  list-style: none; color: var(--navy);
}
.legal-content details summary::-webkit-details-marker { display: none; }
.legal-content details summary h3 { display: inline; margin: 0; font-size: 1rem; color: inherit; }
.legal-content details p:last-child { margin-bottom: 18px; }

@media (max-width: 560px) {
  .legal-hero { padding: 40px 0 22px; }
  .legal-content { padding: 32px 0 72px; }
}
