/* ============================================================
   Generic /content/<slug>/ page (pages without their own
   template, e.g. /content/about/). Builds on privacy-policy.css's
   .legal-hero + .legal prose; this file only covers the extra
   elements admin-pasted HTML can contain.
   ============================================================ */
.content-page__body { max-width: 70ch; }
.content-page__body > :first-child { margin-top: 0; }
.content-page__body h1,
.content-page__body h2 { font-family: var(--font-serif); font-size: 1.5rem; font-weight: 600; color: var(--color-green); line-height: 1.25; margin: 2.25rem 0 0.75rem; letter-spacing: -0.01em; }
.content-page__body h4,
.content-page__body h5,
.content-page__body h6 { font-family: var(--font-serif); font-size: 1.02rem; font-weight: 600; color: var(--color-text); margin: 1.5rem 0 0.4rem; }
.content-page__body ol { margin: 0 0 1rem; padding-left: 1.4rem; }
.content-page__body ol li { font-size: 0.98rem; line-height: 1.6; margin-bottom: 0.5rem; }
.content-page__body img,
.content-page__body video,
.content-page__body iframe { max-width: 100% !important; height: auto; border-radius: 6px; }
.content-page__body img { display: block; margin: 1.25rem auto; }
.content-page__body figure { margin: 1.5rem 0; }
.content-page__body figcaption { font-size: 0.85rem; color: var(--color-text-muted); text-align: center; margin-top: 0.4rem; }
.content-page__body blockquote { margin: 1.5rem 0; padding: 0.25rem 0 0.25rem 1.1rem; border-left: 3px solid var(--color-coral-line); color: var(--color-text); font-style: italic; }
.content-page__body table { width: 100%; border-collapse: collapse; margin: 0 0 1.25rem; font-size: 0.95rem; display: block; overflow-x: auto; }
.content-page__body th,
.content-page__body td { border: 1px solid var(--color-divider); padding: 0.5rem 0.65rem; text-align: left; vertical-align: top; }
.content-page__body th { background: #F5EFDD; font-weight: 600; }
.content-page__body hr { border: none; border-top: 1px solid var(--color-divider); margin: 2rem 0; }
.content-page__body strong,
.content-page__body b { font-weight: 600; }
/* Pasted HTML sometimes carries fixed widths; keep everything inside the column. */
.content-page__body * { max-width: 100%; overflow-wrap: anywhere; }
.content-page__body a { overflow-wrap: anywhere; }
