/* ============================================================
   PAGE STABILITY — body never animates; scroll never traps
   (was v54, v67)
   ============================================================ */

@view-transition { navigation: none; }

html, body {
  overscroll-behavior: auto !important;
  overflow-x: hidden;
  overflow-y: auto !important;
  height: auto !important;
}

html body {
  animation: none !important;
  opacity: 1 !important;
  transform: none !important;
  position: static !important;
}

.pz-cursor-dot,
.pz-cursor-ring,
body.pz-cursor::before,
body.pz-cursor::after {
  display: none !important;
}

body.pz-cursor, body { cursor: auto !important; }


/* ============================================================
   HEADER — always tinted backdrop, ink-coloured links on home
   (was v54, v55, v56)
   ============================================================ */

html body.home header.site-header,
html body.home .main-header-bar,
html body.home .ast-site-header-section,
html body.home:not(.pz-header-elevated) header.site-header,
html body.home.pz-header-elevated header.site-header {
  background: rgba(255, 254, 252, 0.88) !important;
  backdrop-filter: saturate(180%) blur(18px) !important;
  -webkit-backdrop-filter: saturate(180%) blur(18px) !important;
  border-bottom: 1px solid rgba(28, 25, 23, 0.06) !important;
}

html body.home header.site-header .main-header-menu > .menu-item > a,
html body.home header.site-header .main-navigation .menu-item > a,
html body.home header.site-header .ast-nav-menu > .menu-item > a,
html body.home:not(.pz-header-elevated) .main-header-menu > .menu-item > a,
html body.home:not(.pz-header-elevated) .ast-nav-menu > .menu-item > a,
html body.home.pz-header-elevated .main-header-menu > .menu-item > a,
html body.home.pz-header-elevated .ast-nav-menu > .menu-item > a {
  color: #1c1917 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body.home header.site-header .site-title,
html body.home header.site-header .ast-site-title,
html body.home:not(.pz-header-elevated) .site-title,
html body.home:not(.pz-header-elevated) .ast-site-title {
  color: #0c0a09 !important;
  opacity: 1 !important;
}


/* ============================================================
   POST PAGE FINAL STATE
   (was v66 article-meta simplification, v67 colophon
    simplification + ◆◆◆ hairline, v68 H2/pull-quote calibration)
   ============================================================ */

/* Article meta: just read time + byline (no FILED FROM, no ESSAY) */
body.pz-clean-post .pz-article-meta__filed,
body.pz-clean-post .pz-article-meta__kind {
  display: none !important;
}

body.pz-clean-post .pz-article-meta {
  gap: 0.6rem !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.2em !important;
  margin: 0 auto 2rem !important;
  padding-top: 0.6rem !important;
}

body.pz-clean-post .pz-article-meta__divider {
  width: 3px;
  height: 3px;
}

body.pz-clean-post .pz-article-meta__divider + .pz-article-meta__divider {
  display: none !important;
}

/* Lead paragraph — calm, no framed kicker */
body.pz-clean-post .pz-clean-post__lead::before,
body.pz-clean-post .entry-content > p:first-of-type::before {
  content: none !important;
  display: none !important;
}

body.pz-clean-post .pz-clean-post__lead,
body.pz-clean-post .entry-content > p:first-of-type {
  padding: 0 !important;
  margin: 0 auto 2.4rem !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  position: relative;
}

/* H2 — no Roman numerals, more breath */
body.pz-clean-post .entry-content {
  counter-reset: none !important;
}

body.pz-clean-post .entry-content h2 {
  counter-increment: none !important;
  position: static !important;
  margin-top: 3.8rem !important;
  margin-bottom: 0.95rem !important;
}

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

body.pz-clean-post .entry-content h2:first-of-type {
  margin-top: 2.6rem !important;
}

/* Pull-quote — italic centered, no ◆ bookends */
body.pz-clean-post .entry-content blockquote.pz-pullquote::before,
body.pz-clean-post .entry-content blockquote.pz-pullquote::after,
body.pz-clean-post .entry-content .wp-block-quote::before,
body.pz-clean-post .entry-content .wp-block-quote::after,
body.pz-clean-post .entry-content blockquote::before,
body.pz-clean-post .entry-content blockquote::after {
  content: none !important;
  display: none !important;
}

body.pz-clean-post .entry-content blockquote.pz-pullquote,
body.pz-clean-post .entry-content .wp-block-quote,
body.pz-clean-post .entry-content blockquote {
  padding: 1.2em 0 1.2em !important;
  margin: 2.8rem auto !important;
  max-width: 34ch !important;
}

/* Running header — gone */
.pz-running-header {
  display: none !important;
}

/* Issue badge — gone */
.pz-issue-badge {
  display: none !important;
}

/* Site-wide colophon — gone on non-article pages */
body:not(.pz-clean-post) .pz-publication-colophon {
  display: none !important;
}

/* Article colophon — one-line tag only */
body.pz-clean-post .pz-colophon__name,
body.pz-clean-post .pz-colophon__volume {
  display: none !important;
}

body.pz-clean-post .pz-colophon {
  margin: 1rem auto 3.6rem !important;
  padding-top: 0 !important;
  max-width: 56ch;
  font-size: 0.66rem !important;
  letter-spacing: 0.24em !important;
  color: var(--pz-mute, #78716c) !important;
}

body.pz-clean-post .pz-colophon__tag {
  color: var(--pz-mute, #78716c) !important;
  font-weight: 500 !important;
}

body.pz-clean-post .pz-colophon__tag .pz-colophon__sep {
  color: var(--pz-mute-2, #a8a29e) !important;
  opacity: 0.7;
}

/* ◆◆◆ end ornament → hairline rule */
body.pz-clean-post .pz-article-end {
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  margin: 3.6rem auto 1.4rem !important;
  max-width: 56ch;
  height: 1px;
  background: var(--pz-line, rgba(28, 25, 23, 0.08));
}

body.pz-clean-post .pz-article-end::before,
body.pz-clean-post .pz-article-end::after {
  content: none !important;
}

/* Standfirst-mini suppressed on non-article surfaces */
body.home .pz-standfirst-mini,
body[class*="destinations"] .pz-standfirst-mini,
body[class*="collections"] .pz-standfirst-mini,
body:not(.pz-clean-post) .pz-standfirst-mini {
  display: none !important;
}

/* Image dateline at full opacity */
.pz-figure__dateline {
  opacity: 1 !important;
}


/* ============================================================
   STAGE-3 CALMING — fully accessible focus, calm hover
   (cross-cutting from v66/v67/v68 small tweaks)
   ============================================================ */

*:focus-visible {
  outline: 2px solid rgba(194, 65, 12, 0.55) !important;
  outline-offset: 3px !important;
  border-radius: 4px;
}