/* ==========================================================================
   THE DREAM LIFE EDIT — single post styles  (dle.css)
   Chelsea Elise · WordPress + Astra child theme
   --------------------------------------------------------------------------
   Visual system is the APPROVED article design, retargeted at NATIVE
   Gutenberg block output. Nothing here depends on Elementor.

   Scope: everything is under .dle (the template wrapper), so Astra and
   Elementor global typography cannot win. Journey reads the untouched
   native markup inside <article class="journey-content">.
   ========================================================================== */

.dle {
  --cream: #F7F1E8;
  --cream2: #FFFCF7;
  --ink: #171210;
  --ink2: #2C221E;
  --body: #4A3D37;
  --soft: #5A4C45;
  --pink: #FF3DA0;
  --coral: #FF4438;
  --blush: #FFE3F0;
  --line: #E4D8C8;
  --pad: clamp(20px, 4.4vw, 68px);
  --read: 720px;              /* reading measure — 680–740px target */
  --side: 360px;              /* border-box outer width; ~308px content after 24px padding + borders */
  --sans: 'Manrope', system-ui, -apple-system, 'Segoe UI', Helvetica, sans-serif;
  --serif: 'Instrument Serif', Georgia, 'Times New Roman', serif;
  background: var(--cream);
  color: var(--ink);
  text-wrap: pretty;
}

/* ---- hard scoped overrides: Astra / Elementor cannot override ---- */
.dle, .dle p, .dle span, .dle a, .dle li, .dle ol, .dle ul, .dle strong, .dle div,
.dle h1, .dle h2, .dle h3, .dle h4, .dle figure, .dle figcaption, .dle blockquote, .dle cite {
  font-family: var(--sans) !important;
  letter-spacing: normal;
}
.dle h1, .dle h2, .dle h3, .dle h4 { font-weight: 800 !important; color: var(--ink) !important; line-height: 1.05; }
.dle i, .dle em, .dle .is-serif {
  font-family: var(--serif) !important; font-style: italic !important; font-weight: 400 !important;
}
.dle a { text-decoration: none !important; box-shadow: none !important; color: inherit; }
.dle *, .dle *::before, .dle *::after { box-sizing: border-box; }
.dle img { display: block; max-width: 100%; height: auto; }
.dle :focus-visible { outline: 3px solid var(--coral); outline-offset: 3px; }

/* Astra chrome we replace with our own header/footer */
.dle-hide-theme-chrome .site-header,
.dle-hide-theme-chrome .site-footer,
.dle-hide-theme-chrome .ast-single-entry-banner,
.dle-hide-theme-chrome .entry-header,
.dle-hide-theme-chrome .post-nav-links,
.dle-hide-theme-chrome .ast-single-post .entry-meta { display: none !important; }
.dle-hide-theme-chrome #content .ast-container { max-width: none; padding: 0; }

/* ================= global header ================= */
.dle-strip {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  background: var(--ink); color: var(--cream); padding: 9px var(--pad);
  font-size: 10px; font-weight: 800 !important; letter-spacing: .24em !important; text-transform: uppercase;
}
.dle-strip span:nth-child(2) { color: var(--pink); }
.dle-strip span:nth-child(3) { color: #A8988C; }
.dle-nav {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 20px var(--pad); border-bottom: 2px solid var(--ink); background: var(--cream);
}
.dle-wordmark { display: flex; align-items: center; gap: 11px; flex: none; }
.dle-wordmark__text { font-family: var(--serif) !important; font-size: clamp(17px, 1.7vw, 22px); letter-spacing: .26em !important; line-height: 1; }
.dle-star { color: var(--pink); flex: none; }
.dle-nav__links { display: flex; align-items: center; gap: clamp(18px, 2.3vw, 34px); }
.dle-nav__links a {
  font-size: 12px; font-weight: 800 !important; letter-spacing: .18em !important; text-transform: uppercase;
  color: var(--ink2); padding-bottom: 3px; border-bottom: 2px solid transparent;
  transition: color .15s ease, border-color .15s ease;
}
.dle-nav__links a:hover { color: var(--coral); border-bottom-color: var(--coral); }
.dle-nav__links a[aria-current="page"] { color: var(--ink) !important; border-bottom-color: var(--pink); }
.dle-sub {
  display: inline-block; flex: none; background: var(--pink); color: var(--ink) !important;
  border: 2px solid var(--ink); border-radius: 999px; padding: 12px 22px;
  font-size: 12px; font-weight: 800 !important; letter-spacing: .16em !important; text-transform: uppercase;
  box-shadow: 4px 4px 0 var(--ink);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.dle-sub:hover { background: var(--coral); color: #FFF !important; transform: translate(-2px,-2px); box-shadow: 6px 6px 0 var(--ink); }

/* ================= shared ================= */
.dle-wrap { width: min(1340px, 100%); margin: 0 auto; }
.dle-kicker {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: 11px; font-weight: 800 !important; letter-spacing: .2em !important;
  text-transform: uppercase; color: var(--coral);
}
.dle-kicker::after { content: ""; width: 30px; height: 2px; background: currentColor; }
.dle-btn, .dle .wp-block-button__link {
  display: inline-block; text-align: center; padding: 19px 34px; min-height: 60px;
  font-family: var(--sans) !important; font-size: 16px; font-weight: 800 !important;
  border-radius: 999px !important; border: 2px solid var(--ink);
  background: var(--coral); color: #FFFFFF !important; box-shadow: 7px 7px 0 var(--ink);
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease;
}
.dle-btn:hover, .dle .wp-block-button__link:hover {
  background: var(--pink); color: var(--ink) !important; transform: translate(-2px,-2px); box-shadow: 10px 10px 0 var(--ink);
}

/* ================= breadcrumb + hero (template supplied, no date) ================= */
.dle-crumb {
  display: flex; align-items: center; gap: 10px;
  padding: 16px var(--pad); border-bottom: 1px solid var(--line);
  font-size: 11px; font-weight: 800 !important; letter-spacing: .18em !important; text-transform: uppercase; color: var(--soft);
}
.dle-crumb a:hover { color: var(--coral); }
.dle-crumb b { color: var(--ink); font-weight: 800 !important; }

.dle-hero { padding: clamp(40px, 5vw, 82px) var(--pad) clamp(30px, 3.4vw, 54px); }
.dle-hero__grid {
  display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: clamp(32px, 5vw, 86px); align-items: center;
}
.dle-hero__body { display: flex; flex-direction: column; align-items: flex-start; gap: clamp(18px, 2vw, 28px); }
.dle-hero h1 {
  font-size: clamp(40px, 5.6vw, 88px); line-height: .94; letter-spacing: -.042em !important; max-width: 17ch;
  margin: 0 !important;
}
.dle-hero h1 i { color: var(--coral); font-size: 1.06em; letter-spacing: -.02em !important; }
.dle-deck {
  font-family: var(--serif) !important; font-style: italic !important;
  font-size: clamp(21px, 2.1vw, 31px); line-height: 1.24; color: var(--ink2); max-width: 32ch; margin: 0 !important;
}
.dle-byline {
  border-top: 2px solid var(--ink); padding-top: 16px; width: 100%; max-width: 520px; margin: 0 !important;
  font-size: 12px; font-weight: 800 !important; letter-spacing: .16em !important; text-transform: uppercase; color: var(--soft);
}
.dle-byline b { color: var(--ink); font-weight: 800 !important; }
.dle-hero__fig { position: relative; }
.dle-hero__fig figure { margin: 0; border: 3px solid var(--ink); border-radius: 6px; box-shadow: 14px 14px 0 var(--pink); overflow: hidden; }
.dle-hero__fig img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.dle-save {
  position: absolute; left: -12px; bottom: -18px; z-index: 2;
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--cream2); border: 2px solid var(--ink); border-radius: 999px;
  padding: 12px 20px; box-shadow: 4px 4px 0 var(--ink);
  font-size: 11px; font-weight: 800 !important; letter-spacing: .18em !important; text-transform: uppercase;
  transition: background .15s ease, transform .15s ease;
}
.dle-save:hover { background: var(--pink); transform: translate(-2px,-2px); }

/* ================= shell: reading column + journey-sidebar ================= */
.dle-shell {
  padding: clamp(26px, 3.4vw, 56px) var(--pad) clamp(52px, 6vw, 96px);
  display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(38px, 4vw, 68px);
  width: min(1340px, 100%); margin: 0 auto;
}
@media (min-width: 1200px) {
  .dle-shell { grid-template-columns: minmax(0, 1fr) var(--side); }
}

/* ================= NATIVE GUTENBERG CONTENT =================
   Only typography and rhythm. No layout wrappers are injected around
   post content, so Journey sees plain <p>/<h2>/<figure> boundaries.     */
.journey-content { max-width: var(--read); margin: 0 auto; }
@media (min-width: 1200px) { .journey-content { margin: 0; } }

.journey-content > * { margin: 0 0 clamp(20px, 1.9vw, 26px) 0 !important; }
.journey-content > *:last-child { margin-bottom: 0 !important; }

.journey-content > p {
  font-size: clamp(18px, 1.32vw, 20px);
  line-height: 1.74;
  color: var(--body);
  font-weight: 400 !important;
}
.journey-content > p:first-of-type { color: var(--ink2); font-weight: 500 !important; }
.journey-content > p strong { font-weight: 800 !important; color: var(--ink); }
.journey-content > p em { color: var(--ink); }
.journey-content > p a { color: var(--coral); border-bottom: 2px solid var(--pink); }
.journey-content > p a:hover { background: var(--blush); }

.journey-content > h2 {
  margin-top: clamp(44px, 4.6vw, 72px) !important;
  font-size: clamp(28px, 2.9vw, 42px); line-height: 1.06; letter-spacing: -.035em !important;
}
.journey-content > h2 i, .journey-content > h2 em { color: var(--coral); }
.journey-content > h3 {
  margin-top: clamp(32px, 3vw, 44px) !important;
  font-size: clamp(21px, 1.8vw, 26px); letter-spacing: -.02em !important;
}

.journey-content > ul, .journey-content > ol {
  padding-left: 1.35em; font-size: clamp(18px, 1.3vw, 20px); line-height: 1.74; color: var(--body);
}
.journey-content > ul li, .journey-content > ol li { margin-bottom: 12px; }
.journey-content > ul { list-style: none; padding-left: 0; }
.journey-content > ul li { position: relative; padding-left: 26px; }
.journey-content > ul li::before {
  content: "★"; position: absolute; left: 0; top: -1px; font-size: 12px; color: var(--pink);
}
.journey-content > hr, .journey-content > .wp-block-separator {
  border: 0; border-top: 1px solid var(--line);
  margin: clamp(40px, 4.4vw, 66px) 0 !important;
}

/* native image blocks — 2:3 Pinterest-first, art-directed by CSS only */
.journey-content > figure.wp-block-image { margin: clamp(34px, 3.4vw, 50px) 0 !important; }
.journey-content > figure.wp-block-image img {
  width: 100%; border: 3px solid var(--ink); border-radius: 6px;
}
.journey-content > figure.wp-block-image figcaption {
  font-family: var(--serif) !important; font-style: italic !important;
  font-size: 15px; color: var(--soft); text-align: center; margin-top: 12px !important;
}
/* pattern: single centred 2:3 photograph */
.journey-content > figure.dle-photo { display: flex; flex-direction: column; align-items: center; }
.journey-content > figure.dle-photo img {
  width: min(400px, 100%); aspect-ratio: 2 / 3; object-fit: cover; box-shadow: 10px 10px 0 var(--coral);
}
/* pattern: two-image editorial moment (core/columns) */
.journey-content > .dle-duo { margin: clamp(34px, 3.4vw, 50px) 0 !important; gap: clamp(16px, 2vw, 26px); }
.journey-content > .dle-duo figure { margin: 0 !important; }
.journey-content > .dle-duo img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; border: 3px solid var(--ink); border-radius: 6px; }
.journey-content > .dle-duo .wp-block-column:nth-child(1) img { box-shadow: 8px 8px 0 var(--pink); }
.journey-content > .dle-duo .wp-block-column:nth-child(2) img { box-shadow: 8px 8px 0 var(--ink); }
.journey-content > .dle-duo figcaption {
  font-family: var(--serif) !important; font-style: italic !important; font-size: 15px; color: var(--soft); margin-top: 12px !important;
}

/* ---------- OPTIONAL PATTERNS (core blocks + a class, nothing custom) ---------- */
.journey-content .dle-aha {
  border: 3px solid var(--ink); border-radius: 8px; background: var(--cream2);
  padding: clamp(26px, 3vw, 42px); box-shadow: 10px 10px 0 var(--pink);
  margin: clamp(38px, 4vw, 58px) 0 !important;
}
.journey-content .dle-aha__label {
  display: inline-block; background: var(--ink); color: var(--cream) !important;
  border-radius: 999px; padding: 8px 16px; margin: 0 0 14px 0 !important;
  font-size: 11px; font-weight: 800 !important; letter-spacing: .22em !important; text-transform: uppercase;
}
.journey-content .dle-aha p:not(.dle-aha__label) {
  font-size: clamp(20px, 1.75vw, 26px); line-height: 1.35; font-weight: 700 !important; color: var(--ink); margin: 0 !important;
}

.journey-content blockquote.dle-pull {
  border-left: 4px solid var(--pink); padding: 0 0 0 clamp(20px, 2.4vw, 34px) !important;
  margin: clamp(38px, 4vw, 58px) 0 !important;
}
.journey-content blockquote.dle-pull p {
  font-family: var(--serif) !important; font-style: italic !important;
  font-size: clamp(26px, 2.7vw, 40px); line-height: 1.14; letter-spacing: -.02em !important; color: var(--ink); margin: 0 !important;
}
.journey-content blockquote.dle-pull cite {
  display: block; margin-top: 14px !important; font-style: normal !important;
  font-size: 11px; font-weight: 800 !important; letter-spacing: .2em !important; text-transform: uppercase; color: var(--soft);
}

.journey-content .dle-pink {
  background: var(--pink); color: var(--ink); border: 3px solid var(--ink); border-radius: 8px;
  padding: clamp(24px, 2.8vw, 38px); margin: clamp(38px, 4vw, 58px) 0 !important;
}
.journey-content .dle-pink .dle-label {
  display: block; margin: 0 0 12px 0 !important;
  font-size: 11px; font-weight: 800 !important; letter-spacing: .22em !important; text-transform: uppercase;
}
.journey-content .dle-pink p:not(.dle-label) {
  font-size: clamp(19px, 1.55vw, 23px); line-height: 1.42; font-weight: 600 !important; color: var(--ink); margin: 0 !important;
}

.journey-content .dle-black {
  background: var(--ink); border-radius: 8px;
  padding: clamp(26px, 3vw, 42px); margin: clamp(38px, 4vw, 58px) 0 !important;
}
.journey-content .dle-black .dle-label {
  display: block; margin: 0 0 14px 0 !important; color: var(--pink) !important;
  font-size: 11px; font-weight: 800 !important; letter-spacing: .22em !important; text-transform: uppercase;
}
.journey-content .dle-black p:not(.dle-label) {
  font-size: clamp(18px, 1.4vw, 21px); line-height: 1.62; color: #E8DDD2 !important; margin: 0 !important;
}
.journey-content .dle-black p i, .journey-content .dle-black p em { color: var(--cream) !important; font-size: 1.1em; }

/* numbered framework = a NATIVE ordered list block, numbers drawn by CSS */
.journey-content ol.dle-frame {
  list-style: none !important; counter-reset: dleframe; padding-left: 0 !important;
  margin: clamp(34px, 3.6vw, 52px) 0 !important;
}
.journey-content ol.dle-frame > li {
  counter-increment: dleframe; position: relative;
  padding: clamp(20px, 2.2vw, 28px) 0 clamp(20px, 2.2vw, 28px) clamp(56px, 5.4vw, 78px);
  border-top: 1px solid var(--line); margin: 0 !important;
  font-size: clamp(17px, 1.28vw, 19px); line-height: 1.68; color: var(--body);
}
.journey-content ol.dle-frame > li:last-child { border-bottom: 1px solid var(--line); }
.journey-content ol.dle-frame > li::before {
  content: "0" counter(dleframe); position: absolute; left: 0; top: clamp(18px, 2vw, 26px);
  font-family: var(--serif) !important; font-style: italic !important;
  font-size: clamp(28px, 2.6vw, 38px); line-height: 1; color: var(--pink);
}
.journey-content ol.dle-frame > li strong { display: block; margin-bottom: 8px; font-weight: 800 !important; color: var(--ink); font-size: 1.14em; }

/* one Dream Girl Gap CTA per article */
.journey-content .dle-quiz {
  background: var(--cream2); border: 3px solid var(--ink); border-radius: 10px;
  box-shadow: 12px 12px 0 var(--coral); padding: clamp(28px, 3.4vw, 48px);
  margin: clamp(48px, 5.2vw, 78px) 0 !important;
}
.journey-content .dle-quiz .dle-label {
  display: block; margin: 0 0 14px 0 !important; color: var(--pink) !important;
  font-size: 11px; font-weight: 800 !important; letter-spacing: .2em !important; text-transform: uppercase;
}
.journey-content .dle-quiz h3 {
  margin: 0 0 14px 0 !important;
  font-family: var(--serif) !important; font-style: italic !important; font-weight: 400 !important;
  font-size: clamp(26px, 2.7vw, 38px); line-height: 1.06; letter-spacing: -.025em !important; max-width: 22ch;
}
.journey-content .dle-quiz p:not(.dle-label) { font-size: clamp(16px, 1.28vw, 18px); line-height: 1.6; color: var(--body); margin: 0 0 20px 0 !important; max-width: 46ch; }
.journey-content .dle-quiz .wp-block-buttons { margin: 0 !important; }

/* ================= JOURNEY SIDEBAR (desktop only, never sticky) ================= */
.journey-sidebar { display: none; }
@media (min-width: 1200px) {
  .journey-sidebar {
    display: block; width: var(--side); position: static !important;
    align-self: start;
  }
}
.journey-sidebar__block {
  border: 2px solid var(--ink); border-radius: 8px; background: var(--cream2);
  padding: 24px; margin-bottom: 26px;
}
.journey-sidebar__block--ink { background: var(--ink); border-color: var(--ink); }
.journey-sidebar h2 {
  font-size: 13px !important; font-weight: 800 !important; letter-spacing: .2em !important;
  text-transform: uppercase; margin: 0 0 18px 0 !important;
}
.journey-sidebar__block--ink h2 { color: var(--pink) !important; }
.journey-sidebar__list { list-style: none !important; padding: 0; margin: 0; }
.journey-sidebar__list li { border-top: 1px solid var(--line); padding: 14px 0; }
.journey-sidebar__list li:first-child { border-top: 0; padding-top: 0; }
.journey-sidebar__list a { font-size: 17px; font-weight: 700 !important; line-height: 1.24; letter-spacing: -.02em; }
.journey-sidebar__list a:hover { color: var(--coral); }
.journey-sidebar__cat {
  display: block; font-size: 10px; font-weight: 800 !important; letter-spacing: .18em !important;
  text-transform: uppercase; color: var(--coral); margin-bottom: 7px;
}
.journey-sidebar__note p {
  font-family: var(--serif) !important; font-style: italic !important;
  font-size: 19px; line-height: 1.3; color: var(--cream) !important; margin: 0 0 14px 0;
}
.journey-sidebar__note a {
  font-size: 11px; font-weight: 800 !important; letter-spacing: .16em !important; text-transform: uppercase;
  color: var(--cream) !important; border-bottom: 2px solid var(--pink); padding-bottom: 4px;
}
.journey-sidebar .dle-btn { padding: 15px 24px; min-height: 52px; font-size: 14px; width: 100%; box-shadow: 5px 5px 0 var(--ink); }

/* ================= KEEP READING ================= */
.dle-next { background: var(--ink); color: var(--cream); border-top: 3px solid var(--ink); padding: clamp(60px, 7vw, 110px) var(--pad); }
.dle-next__head {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 22px;
  border-bottom: 2px solid #3A2E29; padding-bottom: clamp(20px, 2.2vw, 30px);
}
.dle-next__head h2 { color: var(--cream) !important; font-size: clamp(36px, 5.4vw, 82px); line-height: .9; letter-spacing: -.045em !important; margin: 0 !important; }
.dle-next__head h2 i { color: var(--pink); }
.dle-next__note { font-family: var(--serif) !important; font-style: italic !important; font-size: clamp(16px, 1.5vw, 22px); color: #B7A79A; text-align: right; flex: none; margin: 0 !important; }
.dle-next__grid { margin-top: clamp(30px, 3.4vw, 52px); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(22px, 2.8vw, 42px); }
.dle-rel { display: flex; flex-direction: column; gap: 16px; color: var(--cream); }
.dle-rel figure { margin: 0; overflow: hidden; border: 3px solid var(--cream); border-radius: 6px; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.dle-rel img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
.dle-rel:hover figure { transform: translate(-4px,-4px); box-shadow: 12px 12px 0 var(--pink); border-color: var(--pink); }
.dle-rel__cat { font-size: 11px; font-weight: 800 !important; letter-spacing: .2em !important; text-transform: uppercase; color: var(--pink); }
.dle-rel h3 { color: var(--cream) !important; font-size: clamp(20px, 1.7vw, 26px); line-height: 1.14; letter-spacing: -.025em !important; margin: 0 !important; }
.dle-rel:hover h3 { color: var(--pink) !important; }
.dle-rel__go { font-size: 12px; font-weight: 800 !important; letter-spacing: .14em !important; text-transform: uppercase; color: #B7A79A; }
.dle-rel:hover .dle-rel__go { color: var(--cream); }
.dle-next__foot { margin-top: clamp(34px, 3.6vw, 54px); display: flex; }
.dle-next__foot a {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14px; font-weight: 800 !important; letter-spacing: .12em !important; text-transform: uppercase;
  color: var(--cream); border-bottom: 2px solid var(--pink); padding-bottom: 5px;
}
.dle-next__foot a:hover { color: var(--pink); }

/* ================= AFTER HOURS (small, after related) ================= */
.dle-after { padding: clamp(34px, 3.6vw, 52px) var(--pad); border-bottom: 2px solid var(--ink); }
.dle-after__inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.dle-after p { font-family: var(--serif) !important; font-style: italic !important; font-size: clamp(19px, 1.8vw, 26px); color: var(--ink2); margin: 0 !important; }
.dle-after a {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14px; font-weight: 800 !important; letter-spacing: .12em !important; text-transform: uppercase;
  border-bottom: 2px solid var(--coral); padding-bottom: 5px;
}
.dle-after a:hover { color: var(--coral); }

/* ================= footer ================= */
.dle-foot { background: var(--ink); color: var(--cream); padding: clamp(46px, 5vw, 72px) var(--pad); display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.dle-foot__links { display: flex; align-items: center; gap: clamp(16px, 2vw, 30px); flex-wrap: wrap; }
.dle-foot__links a { font-size: 12px; font-weight: 800 !important; letter-spacing: .18em !important; text-transform: uppercase; color: #D5C7BA; }
.dle-foot__links a:hover { color: var(--pink); }
.dle-foot__copy { font-size: 12px; color: #A8988C; }

/* ================= responsive ================= */
@media (max-width: 1080px) {
  .dle-hero__grid { grid-template-columns: 1fr; gap: 34px; }
  .dle-hero__fig { width: min(400px, 78%); }
}
@media (max-width: 860px) {
  .dle-nav { flex-wrap: wrap; row-gap: 16px; }
  .dle-nav__links { order: 3; width: 100%; justify-content: space-between; gap: 12px; }
  .dle-nav__links a { font-size: 11px; letter-spacing: .12em !important; }
  .dle-strip span:nth-child(3) { display: none; }
  .dle-next__head { flex-direction: column; align-items: flex-start; gap: 14px; }
  .dle-next__note { text-align: left; }
  .dle-next__grid { grid-template-columns: 1fr; gap: 34px; }
  .dle-rel figure { max-width: 460px; }
  .journey-content > .dle-duo { flex-wrap: wrap; }
}
@media (max-width: 620px) {
  .dle-strip span:nth-child(2) { display: none; }
  .dle-hero__fig { width: 100%; }
  .dle-save { left: 0; bottom: -16px; }
  .journey-content > p { font-size: 18px; line-height: 1.72; }
  .journey-content > figure.dle-photo img { width: 100%; }
  .journey-content .dle-quiz .wp-block-button, .journey-content .dle-quiz .wp-block-button__link { width: 100%; }
  .journey-content .dle-quiz { box-shadow: 8px 8px 0 var(--coral); }
}
@media (prefers-reduced-motion: reduce) {
  .dle *, .dle *::before, .dle *::after { animation: none !important; transition: none !important; }
}
/* ==========================================================
   CHELSEA ELISE — ARTICLE RHYTHM V2
   More breathing room without disturbing Journey structure
   ========================================================== */

/* Comfortable paragraph rhythm */
.dle .journey-content p {
  margin-bottom: 1.55em;
}

/* Give major article sections a clear new-chapter feeling */
.dle .journey-content h2 {
  margin-top: 2.5em;
  margin-bottom: 0.8em;
}

/* Numbered/listicle section headings */
.dle .journey-content h3 {
  margin-top: 2.15em;
  margin-bottom: 0.7em;
}

/* Keep first heading from creating unnecessary empty space */
.dle .journey-content > h2:first-child,
.dle .journey-content > h3:first-child {
  margin-top: 0;
}

/* Images become intentional visual breathers */
.dle .journey-content figure,
.dle .journey-content .wp-block-image {
  margin-top: 2.4em;
  margin-bottom: 2.4em;
}

/* Lists need room too */
.dle .journey-content ul,
.dle .journey-content ol {
  margin-top: 1.25em;
  margin-bottom: 1.8em;
}

/* Mobile: spacious, but not endless scrolling */
@media (max-width: 767px) {
  .dle .journey-content p {
    margin-bottom: 1.4em;
  }

  .dle .journey-content h2 {
    margin-top: 2.1em;
  }

  .dle .journey-content h3 {
    margin-top: 1.85em;
  }

  .dle .journey-content figure,
  .dle .journey-content .wp-block-image {
    margin-top: 2em;
    margin-bottom: 2em;
  }
}
/* Editorial pull quote — give the idea room to land */
.dle .wp-block-quote {
    margin-bottom: 4.5rem !important;
}

@media (max-width: 767px) {
    .dle .wp-block-quote {
        margin-bottom: 3rem !important;
    }
}
}
