/* ============================================================
   ARTICLE META — small caps Inter, just above the lead
   Injected by JS as .pz-article-meta directly inside .entry-content.
   ============================================================ */

body.pz-clean-post .pz-article-meta {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  font-family: "Inter", sans-serif;
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--pz-mute, #78716c);
  margin: 0 auto 1.6rem;
  max-width: 66ch;
  padding-top: 0.4rem;
  border-top: 1px solid var(--pz-line, rgba(28, 25, 23, 0.08));
}

body.pz-clean-post .pz-article-meta__divider {
  width: 6px;
  height: 1px;
  background: var(--pz-mute, #78716c);
  opacity: 0.5;
}

body.pz-clean-post .pz-article-meta__time {
  font-variant-numeric: tabular-nums;
}

body.pz-clean-post .pz-article-meta__author {
  color: var(--pz-ink, #1c1917);
}


/* ============================================================
   LEAD PARAGRAPH — premium open
   ============================================================ */

body.pz-clean-post .pz-clean-post__lead,
body.pz-clean-post .entry-content > p:first-of-type {
  font-family: "Inter", sans-serif;
  font-size: clamp(1.08rem, 1rem + 0.5vw, 1.22rem);
  line-height: 1.66;
  color: var(--pz-ink, #1c1917);
  font-weight: 400;
  max-width: 64ch;
  margin: 0 auto 1.6em;
  letter-spacing: 0.001em;
}

/* Refined drop cap — Fraunces italic, 4.2em, 3-line descent */
body.pz-clean-post .pz-clean-post__lead::first-letter,
body.pz-clean-post .entry-content > p:first-of-type::first-letter {
  font-family: "Fraunces", Georgia, serif;
  font-weight: 500;
  font-style: italic;
  font-size: 4.4em;
  line-height: 0.84;
  float: left;
  margin: 0.06em 0.10em 0 0;
  color: var(--pz-orange, #c2410c);
  padding-top: 0.02em;
}

/* First 3 words of lead in small-caps */
body.pz-clean-post .pz-clean-post__lead::first-line,
body.pz-clean-post .entry-content > p:first-of-type::first-line {
  font-variant-caps: small-caps;
  letter-spacing: 0.04em;
}


/* ============================================================
   SECTION-START RHYTHM — first line after H2 in small caps
   ============================================================ */

body.pz-clean-post .entry-content h2 + p::first-line {
  font-variant-caps: small-caps;
  letter-spacing: 0.04em;
  color: var(--pz-ink-2, #44403c);
}


/* ============================================================
   PULL-QUOTE — refined
   ============================================================ */

body.pz-clean-post .entry-content blockquote.pz-pullquote,
body.pz-clean-post .entry-content .wp-block-quote.pz-pullquote,
body.pz-clean-post .entry-content .wp-block-quote {
  border: 0;
  padding: 2.2em 0;
  margin: 3.6rem auto;
  max-width: 32ch;
  font-family: "Fraunces", Georgia, serif;
  font-style: italic;
  font-weight: 400;
  font-size: clamp(1.32rem, 1.1rem + 1.1vw, 1.7rem);
  line-height: 1.36;
  color: var(--pz-ink, #1c1917);
  text-align: center;
  position: relative;
  text-wrap: balance;
}

body.pz-clean-post .entry-content blockquote.pz-pullquote::before,
body.pz-clean-post .entry-content .wp-block-quote::before {
  content: "◆";
  display: block;
  font-size: 0.5em;
  color: var(--pz-orange, #c2410c);
  font-style: normal;
  margin-bottom: 1.4em;
  opacity: 0.85;
}

body.pz-clean-post .entry-content blockquote.pz-pullquote::after,
body.pz-clean-post .entry-content .wp-block-quote::after {
  content: "◆";
  display: block;
  font-size: 0.5em;
  color: var(--pz-orange, #c2410c);
  font-style: normal;
  margin-top: 1.4em;
  opacity: 0.85;
}

body.pz-clean-post .entry-content blockquote.pz-pullquote p,
body.pz-clean-post .entry-content .wp-block-quote p {
  margin: 0;
  font-family: inherit;
  font-style: inherit;
  font-size: inherit;
  line-height: inherit;
}


/* ============================================================
   ASTERISM dividers — finer, more spacious
   ============================================================ */

body.pz-clean-post .entry-content hr.wp-block-separator.pz-asterism,
body.pz-clean-post .entry-content hr.wp-block-separator,
body.pz-clean-post .entry-content .pz-asterism {
  border: 0;
  height: auto;
  margin: 3rem auto;
  text-align: center;
  background: none;
}

body.pz-clean-post .entry-content hr.wp-block-separator::before,
body.pz-clean-post .entry-content .pz-asterism::before {
  content: "· · ·";
  color: var(--pz-orange, #c2410c);
  letter-spacing: 0.8em;
  font-size: 0.85rem;
  opacity: 0.7;
  display: inline-block;
}


/* ============================================================
   H2 — refined section heading
   Adds tiny "—" lead-in and tighter optical metrics.
   ============================================================ */

body.pz-clean-post .entry-content h2 {
  font-family: "Fraunces", Georgia, serif;
  font-weight: 500;
  font-size: clamp(1.55rem, 1.2rem + 1.2vw, 2.05rem);
  line-height: 1.18;
  letter-spacing: -0.014em;
  color: var(--pz-ink, #1c1917);
  margin: 3.4rem auto 0.85rem;
  max-width: 26ch;
  text-wrap: balance;
}

/* H2 first-of-type sits tighter (the v49 Roman numeral already
   provides the visual section open) */
body.pz-clean-post .entry-content h2:first-of-type {
  margin-top: 2.4rem;
}


/* ============================================================
   H3 — quieter, italic, no decorative dash from v49
   The v49 H3::before "—" was busy combined with the Roman numeral
   on H2. Remove and keep H3 plain serif italic.
   ============================================================ */

body.pz-clean-post .entry-content h3 {
  font-family: "Fraunces", Georgia, serif;
  font-weight: 400;
  font-style: italic;
  font-size: clamp(1.12rem, 0.95rem + 0.55vw, 1.28rem);
  line-height: 1.3;
  color: var(--pz-ink-2, #44403c);
  margin: 2.2rem auto 0.6rem;
  letter-spacing: -0.005em;
}

body.pz-clean-post .entry-content h3::before {
  content: none !important;
  display: none !important;
}


/* ============================================================
   PARAGRAPH — final reading rhythm
   ============================================================ */

body.pz-clean-post .entry-content p {
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(1.02rem, 0.95rem + 0.32vw, 1.115rem);
  line-height: 1.78;
  color: var(--pz-ink, #1c1917);
  margin: 0 auto 1.1em;
  max-width: 66ch;
  letter-spacing: 0.001em;
  hyphens: auto;
  -webkit-hyphens: auto;
}


/* ============================================================
   SECTION-END ORNAMENT — closes the article
   Injected by JS as .pz-article-end at the bottom of .entry-content.
   ============================================================ */

body.pz-clean-post .pz-article-end {
  margin: 4rem auto 2rem;
  text-align: center;
  font-family: "Fraunces", Georgia, serif;
  font-weight: 400;
  font-size: 0.95rem;
  color: var(--pz-orange, #c2410c);
  letter-spacing: 0.5em;
  opacity: 0.7;
}


/* ============================================================
   SECTION-NUMBER REFINEMENT — Roman numeral on H2 sits closer
   to the heading on desktop, calmer color
   ============================================================ */

@media (min-width: 920px) {
  body.pz-clean-post .entry-content h2::before {
    left: calc(50% - 34ch);
    top: 0.42em;
    font-size: 0.7rem;
    letter-spacing: 0.2em;
    color: var(--pz-orange, #c2410c);
    opacity: 0.62;
  }
}


/* ============================================================
   LINKS in prose — single grammar, refined underline
   ============================================================ */

body.pz-clean-post .entry-content p a,
body.pz-clean-post .entry-content li a {
  color: #9a3412;
  text-decoration: none;
  background-image: linear-gradient(to top,
    transparent 1px,
    rgba(154, 52, 18, 0.32) 1px,
    rgba(154, 52, 18, 0.32) 2px,
    transparent 2px);
  background-position: 0 96%;
  transition: background-image var(--pz-t-micro, 180ms) var(--pz-ease-std, cubic-bezier(0.4, 0, 0.2, 1));
}

body.pz-clean-post .entry-content p a:hover,
body.pz-clean-post .entry-content li a:hover {
  background-image: linear-gradient(to top,
    transparent 1px,
    rgba(154, 52, 18, 0.95) 1px,
    rgba(154, 52, 18, 0.95) 2px,
    transparent 2px);
}


/* ============================================================
   ENTRY HEADER — keep the v20 hide, ensure consistency
   ============================================================ */

body.pz-clean-post .ast-blog-single-element.ast-blog-meta-container,
body.pz-clean-post > main > .ast-container > article > .entry-header,
body.pz-clean-post .entry-header,
body.pz-clean-post .ast-single-post-header {
  display: none !important;
}