/* ============================================================
   v127 — EDITORIAL PROSE RHYTHM
   Constrains TEXT to readable line length, lets visual elements expand
   ============================================================ */

/* Prose elements on long-form posts: constrain to premium width.
   Centered for editorial composition. */
body.pz-clean-post .entry-content > p,
body.pz-clean-post .entry-content > h2,
body.pz-clean-post .entry-content > h3,
body.pz-clean-post .entry-content > h4,
body.pz-clean-post .entry-content > h5,
body.pz-clean-post .entry-content > h6,
body.pz-clean-post .entry-content > ul,
body.pz-clean-post .entry-content > ol,
body.pz-clean-post .entry-content > blockquote,
body.pz-clean-post .entry-content > pre,
body.pz-clean-post .entry-content > .wp-block-list,
body.pz-clean-post .entry-content > .wp-block-paragraph,
body.pz-clean-post .entry-content > .wp-block-heading,
body.pz-clean-post .entry-content > .wp-block-quote {
  max-width: clamp(620px, 50ch, 720px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Wide-format elements break out — figures, galleries, hero callouts.
   These keep their wider container width. */
body.pz-clean-post .entry-content > figure,
body.pz-clean-post .entry-content > .wp-block-image,
body.pz-clean-post .entry-content > .wp-block-gallery,
body.pz-clean-post .entry-content > .wp-block-cover,
body.pz-clean-post .entry-content > .wp-block-table,
body.pz-clean-post .entry-content > table,
body.pz-clean-post .entry-content > .alignwide,
body.pz-clean-post .entry-content > .alignfull,
body.pz-clean-post .entry-content > .pz-figure,
body.pz-clean-post .entry-content > .pz-injected-hero,
body.pz-clean-post .entry-content > .pz-faq,
body.pz-clean-post .entry-content > .pz-callout,
body.pz-clean-post .entry-content > hr {
  max-width: none !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Wide figures with center alignment — center the figure, but still let
   it span wider than prose */
body.pz-clean-post .entry-content > figure.aligncenter,
body.pz-clean-post .entry-content > .wp-block-image.aligncenter {
  max-width: clamp(720px, 60vw, 1100px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Wide figures use full container */
body.pz-clean-post .entry-content > figure.alignwide,
body.pz-clean-post .entry-content > .wp-block-image.alignwide,
body.pz-clean-post .entry-content > .wp-block-gallery.alignwide {
  max-width: clamp(900px, 80vw, 1280px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Mobile — relax the constraint, let prose fill the screen */
@media (max-width: 768px) {
  body.pz-clean-post .entry-content > p,
  body.pz-clean-post .entry-content > h2,
  body.pz-clean-post .entry-content > h3,
  body.pz-clean-post .entry-content > h4,
  body.pz-clean-post .entry-content > h5,
  body.pz-clean-post .entry-content > h6,
  body.pz-clean-post .entry-content > ul,
  body.pz-clean-post .entry-content > ol,
  body.pz-clean-post .entry-content > blockquote {
    max-width: 100% !important;
  }
}

/* Inline elements inside constrained prose can still be wider via
   negative margins if a specific snippet wants — leave that to existing
   snippets. */