/* ============================================================================
   Privacy policy — page styles (pv-)

   Long-form legal document styling for /privacy/. Builds on css/wm-dark.css
   (tokens, bands, wm- primitives), loaded first by wm_header() via
   wm_theme('dark').

   DELIBERATELY styles bare elements inside .pv-doc rather than classing the
   markup. The policy body is Stephen's verbatim HTML and its wording is backed
   by implementation (see app/api/ARCHITECTURE.md) — keeping it free of
   presentation classes means the text can be edited, diffed, or replaced
   wholesale without touching CSS, and nobody has to think about markup when
   the wording changes.

   Loaded with a cache-busting query (privacy/index.php passes
   css/privacy-dark.css?v=N) — bump N when editing this file.
   ============================================================================ */

.pv-doc {
  max-width: 76ch;          /* legal text is read, not scanned — keep lines short */
  color: var(--wm-earth-200);
  font-size: 16px;
  line-height: 1.7;
}

/* ---- Headings ---- */
/* The document already separates its numbered sections with <hr>, so the h2
   carries no rule of its own — the divider above it does that work. */
.pv-doc h2 {
  font-family: var(--wm-font-display);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 24px;
  color: var(--wm-earth-50);
  margin: 0 0 16px;
  scroll-margin-top: 24px;  /* every h2 has an id; don't hide under the top edge */
}
.pv-doc h3 {
  font-family: var(--wm-font-display);
  font-weight: 600;
  letter-spacing: 0.02em;
  font-size: 18px;
  color: var(--wm-sand-cream);
  margin: 32px 0 10px;
  scroll-margin-top: 24px;
}

/* ---- Body ---- */
.pv-doc p { margin: 0 0 16px; }
.pv-doc strong { color: var(--wm-earth-50); font-weight: 600; }
.pv-doc a { color: var(--wm-sand-gold); }

.pv-doc ul { margin: 0 0 20px; padding-left: 20px; }
.pv-doc li { margin-bottom: 10px; }
.pv-doc li::marker { color: var(--wm-earth-500); }

.pv-doc hr {
  border: none;
  border-top: 1px solid var(--wm-divider);
  margin: 44px 0 32px;
}

/* The "In Brief" summary list is the part most people actually read — give it
   a little more presence than the body lists below it. */
.pv-doc #in-brief + p + ul {
  background: var(--wm-card-bg);
  border: 1px solid var(--wm-earth-700);
  border-radius: 12px;
  padding: 22px 22px 22px 40px;
}

/* ---- Responsive ---- */
@media (max-width: 640px) {
  .pv-doc { font-size: 15px; }
  .pv-doc h2 { font-size: 21px; }
}
