/* Dealsmaster v5.2 — structural atmospheres, human notes and mood-led discovery.
 * Content is always visible; motion is finite, decorative and optional. */

/* Remove the old first-paint disappearance. The brand should never blink out. */
.dm-brand-v8:not(.dm-brand-ready):not(.dm-reduced-motion) .dm-logo-door,
.dm-brand-v8:not(.dm-brand-ready):not(.dm-reduced-motion) .dm-logo-light,
.dm-brand-v8:not(.dm-brand-ready):not(.dm-reduced-motion) .dm-header-promise,
.dm-brand-v8:not(.dm-brand-ready):not(.dm-reduced-motion) .dm-hero-welcome,
.dm-brand-v8:not(.dm-brand-ready):not(.dm-reduced-motion) .dm-home-hero__intro,
.dm-brand-v8:not(.dm-brand-ready):not(.dm-reduced-motion) .dm-feature-stamp {
  opacity: 1;
  transform: none;
}

/* --------------------------------------------------------------------------
   Homepage: seven welcoming ways into the library
   -------------------------------------------------------------------------- */

.dm-atmosphere-portal {
  position: relative;
  overflow: hidden;
  padding: clamp(4.5rem, 9vw, 8.5rem) 0 clamp(4.8rem, 9vw, 8rem);
  color: #f8f2e7;
  background:
    radial-gradient(circle at 8% 18%, rgba(222, 184, 104, .17), transparent 24rem),
    radial-gradient(circle at 92% 78%, rgba(196, 102, 75, .13), transparent 27rem),
    linear-gradient(128deg, #18372f, #102a25 58%, #20362e);
}

.dm-atmosphere-portal::before,
.dm-atmosphere-portal::after {
  position: absolute;
  border: 1px solid rgba(240, 206, 128, .24);
  border-radius: 50%;
  pointer-events: none;
  content: "";
}

.dm-atmosphere-portal::before { top: -10rem; right: -7rem; width: 24rem; height: 24rem; }
.dm-atmosphere-portal::after { bottom: -12rem; left: -7rem; width: 21rem; height: 21rem; }

.dm-atmosphere-portal .dm-shell { position: relative; z-index: 1; }

.dm-atmosphere-portal__head {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(270px, .62fr);
  gap: clamp(2rem, 7vw, 7rem);
  align-items: end;
  margin-bottom: clamp(2rem, 4vw, 3.4rem);
}

.dm-atmosphere-portal__head .dm-kicker { color: #efc66d; }
.dm-atmosphere-portal__head h2 {
  max-width: 10ch;
  margin: 0;
  color: #fff8ed;
  font: 520 clamp(3.25rem, 7.2vw, 7.3rem)/.86 var(--dm-serif);
  letter-spacing: -.067em;
  text-wrap: balance;
}

.dm-atmosphere-portal__head > p {
  max-width: 38rem;
  margin: 0;
  color: rgba(248, 242, 231, .76);
  font-size: clamp(1rem, 1.4vw, 1.16rem);
  line-height: 1.65;
}

.dm-atmosphere-portal__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(.8rem, 1.6vw, 1.4rem);
}

.dm-atmosphere-portal__card {
  --dm-portal-deep: #27463d;
  --dm-portal-accent: #efc56f;
  position: relative;
  min-width: 0;
  display: grid;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 2px;
  color: #fff9ef;
  background: var(--dm-portal-deep);
  box-shadow: 0 20px 48px rgba(5, 19, 16, .2);
  text-decoration: none;
  isolation: isolate;
}

.dm-atmosphere-portal__card--air { --dm-portal-deep: #315047; --dm-portal-accent: #f0cf82; grid-column: span 4; }
.dm-atmosphere-portal__card--gallery { --dm-portal-deep: #49313d; --dm-portal-accent: #e8aa85; grid-column: span 5; }
.dm-atmosphere-portal__card--glow { --dm-portal-deep: #263c34; --dm-portal-accent: #f2c467; grid-column: span 3; }
.dm-atmosphere-portal__card--studio { --dm-portal-deep: #263e39; --dm-portal-accent: #df7655; grid-column: span 3; }
.dm-atmosphere-portal__card--rhythm { --dm-portal-deep: #285043; --dm-portal-accent: #e9bd63; grid-column: span 4; }
.dm-atmosphere-portal__card--retreat { --dm-portal-deep: #48544d; --dm-portal-accent: #dcbcad; grid-column: span 5; }
.dm-atmosphere-portal__card--outdoors { --dm-portal-deep: #245044; --dm-portal-accent: #e6c36d; grid-column: 1 / -1; }

.dm-atmosphere-portal__card figure { position: relative; min-height: 300px; margin: 0; overflow: hidden; }
.dm-atmosphere-portal__card--gallery figure,
.dm-atmosphere-portal__card--retreat figure { min-height: 345px; }
.dm-atmosphere-portal__card--outdoors figure { min-height: 330px; }

.dm-atmosphere-portal__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 620ms cubic-bezier(.2,.72,.2,1);
}

.dm-atmosphere-portal__wash {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 18%, color-mix(in srgb, var(--dm-portal-deep) 24%, transparent) 50%, color-mix(in srgb, var(--dm-portal-deep) 96%, transparent));
}

.dm-atmosphere-portal__copy {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 0;
  left: 0;
  display: grid;
  gap: .36rem;
  padding: clamp(1rem, 2.1vw, 1.6rem);
}

.dm-atmosphere-portal__copy > span {
  color: var(--dm-portal-accent);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.dm-atmosphere-portal__copy strong {
  max-width: 17ch;
  color: #fff9ef;
  font: 540 clamp(1.75rem, 3vw, 3.25rem)/.92 var(--dm-serif);
  letter-spacing: -.045em;
}

.dm-atmosphere-portal__copy small { max-width: 42ch; color: rgba(255,249,239,.79); font-size: .78rem; line-height: 1.46; }
.dm-atmosphere-portal__copy i { margin-top: .28rem; color: var(--dm-portal-accent); font-size: .7rem; font-style: normal; font-weight: 780; letter-spacing: .04em; }

.dm-atmosphere-portal__note {
  width: max-content;
  max-width: 100%;
  margin: 1.4rem 0 0 auto;
  padding-top: .8rem;
  border-top: 1px solid rgba(239,198,109,.44);
  color: rgba(248,242,231,.68);
  font-family: var(--dm-serif);
  font-size: .92rem;
  font-style: italic;
}

.dm-atmosphere-portal__card:focus-visible { outline: 3px solid #fff8ed; outline-offset: 4px; }

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .dm-atmosphere-portal__card:hover { border-color: color-mix(in srgb, var(--dm-portal-accent) 70%, white); box-shadow: 0 27px 62px rgba(5,19,16,.3); }
  .dm-atmosphere-portal__card:hover .dm-atmosphere-portal__image { transform: scale(1.025); }
  .dm-atmosphere-portal__card:hover .dm-atmosphere-portal__copy i { transform: translateX(3px); }
}

/* --------------------------------------------------------------------------
   Articles: tighter entrance and explicit editorial character
   -------------------------------------------------------------------------- */

body.dm-article-edition.dm-atmosphere .dm-atmosphere-edition {
  max-width: 8.25rem;
  text-overflow: clip;
}

body.dm-article-edition.dm-atmosphere .dm-edition-opening__copy > .dm-edition-opening__intro {
  max-width: 62ch;
  margin: 1.3rem 0 0;
  color: var(--dm-atm-opening-muted);
  font-size: clamp(1rem, 1.7vw, 1.22rem);
  line-height: 1.58;
}

body.dm-article-edition.dm-atmosphere .dm-atmosphere-note {
  position: relative;
  max-width: 55ch;
  margin: 1.35rem 0 0;
  padding: .85rem 0 0 1.2rem;
  border-top: 1px solid var(--dm-atm-opening-line);
  color: var(--dm-atm-opening-muted);
  font-family: var(--dm-serif);
  font-size: .92rem;
  font-style: italic;
  line-height: 1.48;
}

body.dm-article-edition.dm-atmosphere .dm-atmosphere-note::before {
  position: absolute;
  top: .86rem;
  left: 0;
  color: var(--dm-atm-opening-kicker);
  content: "✦";
  font-size: .68rem;
  font-style: normal;
}

body.dm-article-edition.dm-atmosphere .dm-atmosphere-note span {
  display: block;
  margin-bottom: .22rem;
  color: var(--dm-atm-opening-kicker);
  font-family: var(--dm-sans);
  font-size: .57rem;
  font-style: normal;
  font-weight: 820;
  letter-spacing: .13em;
  text-transform: uppercase;
}

/* Heavy scroll-timeline fades are retired; all evidence is present at paint. */
body.dm-article-edition.dm-atmosphere .dm-edition-board,
body.dm-article-edition.dm-atmosphere .dm-edition-diagram,
body.dm-article-edition.dm-atmosphere .dm-edition-diagram__plot > li { animation: none !important; }

body.dm-article-edition.dm-atmosphere .dm-edition-opening::before,
body.dm-article-edition.dm-atmosphere .dm-edition-chapter__tab::after,
body.dm-article-edition.dm-atmosphere .dm-edition-diagram__head::after,
body.dm-article-edition.dm-atmosphere .dm-edition-board figcaption,
body.dm-article-edition.dm-atmosphere .dm-edition-detail__caption {
  transition: transform 540ms cubic-bezier(.2,.72,.2,1);
}

body.dm-article-edition.dm-atmosphere .dm-edition-diagram__head { position: relative; }
body.dm-article-edition.dm-atmosphere .dm-edition-diagram__head::after {
  position: absolute;
  right: 0;
  bottom: -.85rem;
  left: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--dm-atm-accent), transparent 82%);
  content: "";
  transform: scaleX(.42);
  transform-origin: left;
}

body.dm-article-edition.dm-atmosphere .dm-edition-diagram.is-in-view .dm-edition-diagram__head::after { transform: scaleX(1); }
body.dm-article-edition.dm-atmosphere.dm-atmosphere--air .dm-edition-board.is-in-view figcaption,
body.dm-article-edition.dm-atmosphere.dm-atmosphere--retreat .dm-edition-board.is-in-view figcaption { transform: translateY(-3px); }
body.dm-article-edition.dm-atmosphere.dm-atmosphere--gallery .dm-edition-detail-group:not(.is-in-view) .dm-edition-detail__caption { transform: translateX(-5px); }
body.dm-article-edition.dm-atmosphere.dm-atmosphere--rhythm .dm-edition-detail-group:not(.is-in-view) .dm-edition-detail:nth-child(even) .dm-edition-detail__caption { transform: translateX(5px); }

/* Atmosphere-specific quote and utility treatments. */
body.dm-article-edition.dm-atmosphere--air .dm-article-content blockquote { border-left-width: 2px; border-radius: 0 2rem 2rem 0; }
body.dm-article-edition.dm-atmosphere--gallery .dm-article-content blockquote { border: 1px solid var(--dm-atm-line); border-left: 7px solid var(--dm-atm-accent); box-shadow: 11px 11px 0 color-mix(in srgb, var(--dm-atm-secondary) 19%, transparent); }
body.dm-article-edition.dm-atmosphere--glow .dm-article-content blockquote { border-left: 0; border-top: 2px solid var(--dm-atm-accent); color: var(--dm-atm-on-deep); background: var(--dm-atm-deep); }
body.dm-article-edition.dm-atmosphere--studio .dm-article-content blockquote { border: 1px solid var(--dm-atm-line); border-left: 7px solid var(--dm-atm-accent); border-radius: 0; background-image: linear-gradient(90deg, color-mix(in srgb, var(--dm-atm-line) 45%, transparent) 1px, transparent 1px); background-size: 28px 100%; }
body.dm-article-edition.dm-atmosphere--rhythm .dm-article-content blockquote { border-left: 0; border-radius: 1.4rem 0 1.4rem 0; box-shadow: inset 6px 0 var(--dm-atm-accent); }
body.dm-article-edition.dm-atmosphere--retreat .dm-article-content blockquote { border: 0; border-block: 1px solid var(--dm-atm-line); border-radius: 0; text-align: center; }
body.dm-article-edition.dm-atmosphere--outdoors .dm-article-content blockquote { border-left: 0; border-radius: 0 3rem 0 3rem; box-shadow: inset 0 5px var(--dm-atm-accent); }

body.dm-article-edition.dm-atmosphere--air .dm-guide-experience { border-top-width: 2px; border-radius: 2rem 0 2rem 0; }
body.dm-article-edition.dm-atmosphere--gallery .dm-guide-experience { border-radius: 0; box-shadow: 12px 12px 0 color-mix(in srgb, var(--dm-atm-secondary) 15%, transparent); }
body.dm-article-edition.dm-atmosphere--glow .dm-guide-experience { border-color: color-mix(in srgb, var(--dm-atm-accent) 38%, transparent); color: var(--dm-atm-on-deep); background: var(--dm-atm-deep); }
body.dm-article-edition.dm-atmosphere--glow .dm-guide-experience p,
body.dm-article-edition.dm-atmosphere--glow .dm-guide-experience a { color: var(--dm-atm-on-deep-muted); }
body.dm-article-edition.dm-atmosphere--studio .dm-guide-experience { border-radius: 0; box-shadow: inset 0 0 0 4px var(--dm-atm-paper), inset 0 0 0 5px var(--dm-atm-line), 0 15px 38px var(--dm-atm-shadow); }
body.dm-article-edition.dm-atmosphere--rhythm .dm-guide-experience { border-radius: 0 2rem 0 2rem; }
body.dm-article-edition.dm-atmosphere--retreat .dm-guide-experience { border-top-width: 1px; border-radius: 2.5rem; }
body.dm-article-edition.dm-atmosphere--outdoors .dm-guide-experience { border-radius: 0 3rem 0 3rem; }

@media (min-width: 783px) {
  body.dm-article-edition.dm-atmosphere .dm-content-shell.dm-single { padding-top: clamp(1rem, 2vw, 2rem); }
  body.dm-article-edition.dm-atmosphere .dm-article-opening { margin-top: clamp(.75rem, 1.5vw, 1.5rem) !important; }
}

@media (min-width: 961px) {
  body.dm-article-edition.dm-atmosphere .dm-article-opening { min-width: 0; align-items: center; }
  body.dm-article-edition.dm-atmosphere .dm-article-title-group,
  body.dm-article-edition.dm-atmosphere .dm-article-hero,
  body.dm-article-edition.dm-atmosphere .dm-article-intro { min-width: 0; }

  /* Air: the photograph gets the room; the copy keeps a clean breathing edge. */
  body.dm-article-edition.dm-atmosphere--air .dm-article-opening { grid-template-columns: repeat(14, minmax(0, 1fr)); }
  body.dm-article-edition.dm-atmosphere--air .dm-article-title-group { grid-column: 1 / span 5; grid-row: 1; }
  body.dm-article-edition.dm-atmosphere--air .dm-article-hero { grid-column: 6 / -1; grid-row: 1 / span 2; }
  body.dm-article-edition.dm-atmosphere--air .dm-article-intro { grid-column: 1 / span 5; grid-row: 2; }
  body.dm-article-edition.dm-atmosphere--air .dm-article-hero img { height: clamp(520px, 49vw, 690px); }
  body.dm-article-edition.dm-atmosphere--air .dm-edition-opening { grid-template-columns: 78px minmax(0, 1fr); align-items: start; }
  body.dm-article-edition.dm-atmosphere--air .dm-edition-opening__phases { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, 1fr); }
  body.dm-article-edition.dm-atmosphere--air .dm-edition-opening__phases li { padding-inline: .7rem; border-right: 1px solid var(--dm-atm-opening-line); }

  /* Gallery: a paper title mat overlaps the picture like a collected spread. */
  body.dm-article-edition.dm-atmosphere--gallery .dm-article-title-group { position: relative; z-index: 2; grid-column: 1 / span 6; grid-row: 1; margin-right: -3rem !important; padding: clamp(1.25rem, 3vw, 2.35rem); border: 1px solid var(--dm-atm-line); background: var(--dm-atm-paper); box-shadow: 12px 14px 0 color-mix(in srgb, var(--dm-atm-secondary) 16%, transparent); }
  body.dm-article-edition.dm-atmosphere--gallery .dm-article-hero { grid-column: 5 / -1; grid-row: 1 / span 2; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-article-intro { grid-column: 1 / span 4; grid-row: 2; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-article-hero img { height: clamp(540px, 52vw, 710px); }
  body.dm-article-edition.dm-atmosphere--gallery .dm-edition-opening { grid-template-columns: minmax(0, 1.35fr) minmax(230px, .55fr); border-width: 1px; box-shadow: 15px 15px 0 color-mix(in srgb, var(--dm-atm-secondary) 15%, transparent); }
  body.dm-article-edition.dm-atmosphere--gallery .dm-edition-opening__number { position: absolute; right: 2rem; bottom: -1rem; writing-mode: horizontal-tb; transform: none; opacity: .08; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-edition-opening__copy { grid-column: 1; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-edition-opening__phases { grid-column: 2; }

  /* Glow: a cinematic image with two opaque reading panels at its foot. */
  body.dm-article-edition.dm-atmosphere--glow .dm-article-opening { align-items: end; }
  body.dm-article-edition.dm-atmosphere--glow .dm-article-hero { grid-column: 1 / -1; grid-row: 1 / span 2; }
  body.dm-article-edition.dm-atmosphere--glow .dm-article-hero img { height: clamp(560px, 56vw, 750px); }
  body.dm-article-edition.dm-atmosphere--glow .dm-article-title-group { position: relative; z-index: 2; grid-column: 1 / span 7; grid-row: 2; align-self: end; padding: clamp(1.4rem, 3vw, 2.6rem); background: color-mix(in srgb, var(--dm-atm-deep) 96%, transparent); }
  body.dm-article-edition.dm-atmosphere--glow .dm-article-title-group h1,
  body.dm-article-edition.dm-atmosphere--glow .dm-article-title-group a { color: var(--dm-atm-on-deep); }
  body.dm-article-edition.dm-atmosphere--glow .dm-article-intro { position: relative; z-index: 2; grid-column: 8 / -1; grid-row: 2; align-self: end; padding: clamp(1.2rem, 2.5vw, 2rem); background: color-mix(in srgb, var(--dm-atm-paper) 96%, transparent); }
  body.dm-article-edition.dm-atmosphere--glow .dm-edition-opening { grid-template-columns: minmax(0, 1.4fr) minmax(230px, .55fr); }
  body.dm-article-edition.dm-atmosphere--glow .dm-edition-opening__number { position: absolute; right: 3rem; bottom: -1.2rem; writing-mode: horizontal-tb; transform: none; opacity: .08; }
  body.dm-article-edition.dm-atmosphere--glow .dm-edition-opening__copy { grid-column: 1; }
  body.dm-article-edition.dm-atmosphere--glow .dm-edition-opening__phases { grid-column: 2; }

  /* Studio: exact rails and a deliberately tool-like hierarchy. */
  body.dm-article-edition.dm-atmosphere--studio .dm-article-opening { gap: 0; border: 1px solid var(--dm-atm-line); background-image: linear-gradient(var(--dm-atm-line) 1px, transparent 1px); background-size: 100% 32px; }
  body.dm-article-edition.dm-atmosphere--studio .dm-article-title-group { grid-column: 1 / span 5; grid-row: 1; align-self: end; padding: clamp(1.5rem, 3vw, 2.5rem); }
  body.dm-article-edition.dm-atmosphere--studio .dm-article-hero { grid-column: 6 / -1; grid-row: 1 / span 2; border-left: 1px solid var(--dm-atm-line); border-radius: 0; }
  body.dm-article-edition.dm-atmosphere--studio .dm-article-intro { grid-column: 1 / span 5; grid-row: 2; padding: 0 clamp(1.5rem, 3vw, 2.5rem) 2rem; }
  body.dm-article-edition.dm-atmosphere--studio .dm-article-hero img { height: clamp(520px, 48vw, 680px); }
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-opening { grid-template-columns: 80px minmax(0, 1fr) minmax(250px, .55fr); border: 1px solid var(--dm-atm-line); border-radius: 0; }
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-diagram__head { grid-template-columns: 145px minmax(0, 1fr); }
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-diagram__head .dm-kicker { grid-column: 1; grid-row: 1 / span 2; }
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-diagram__head h3,
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-diagram__head > p:last-child { grid-column: 2; }

  /* Rhythm: the route runs left-to-right before the practical copy lands. */
  body.dm-article-edition.dm-atmosphere--rhythm .dm-article-hero { grid-column: 1 / span 7; grid-row: 1 / span 2; }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-article-title-group { grid-column: 8 / -1; grid-row: 1; }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-article-intro { grid-column: 9 / -1; grid-row: 2; }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-article-hero img { height: clamp(520px, 48vw, 690px); }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-edition-opening { grid-template-columns: minmax(250px, .65fr) minmax(0, 1.3fr); }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-edition-opening__number { position: absolute; right: 2rem; bottom: -1rem; writing-mode: horizontal-tb; transform: none; opacity: .09; }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-edition-opening__copy { grid-column: 2; grid-row: 1; }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-edition-opening__phases { grid-column: 1; grid-row: 1; display: grid; grid-template-columns: repeat(2, 1fr); }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-edition-opening__phases li { padding-inline: .55rem; }

  /* Retreat: title, image and intro form an unhurried centred sequence. */
  body.dm-article-edition.dm-atmosphere--retreat .dm-article-title-group { grid-column: 2 / -2; grid-row: 1; text-align: center; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-article-title-group h1 { max-width: 14ch; margin-inline: auto; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-article-hero { grid-column: 2 / -2; grid-row: 2; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-article-intro { grid-column: 3 / -3; grid-row: 3; justify-self: center; text-align: center; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-article-deck { margin-inline: auto; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-article-hero img { height: clamp(460px, 44vw, 610px); }
  body.dm-article-edition.dm-atmosphere--retreat .dm-edition-opening { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-edition-opening__number { position: absolute; top: 1rem; right: 2rem; writing-mode: horizontal-tb; transform: none; opacity: .08; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-edition-opening__phases { grid-column: 1; width: 100%; display: grid; grid-template-columns: repeat(4, 1fr); }
  body.dm-article-edition.dm-atmosphere--retreat .dm-edition-opening__phases li { padding-inline: .7rem; border-right: 1px solid var(--dm-atm-opening-line); }
  body.dm-article-edition.dm-atmosphere--retreat .dm-atmosphere-note { margin-inline: auto; text-align: left; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-edition-detail-group--pair { max-width: 760px; grid-template-columns: 1fr; }

  /* Outdoors: a landscape-led cover followed by copy with a long horizon. */
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-title-group { grid-column: 1 / -1; grid-row: 1; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-title-group h1 { max-width: 16ch; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-hero { grid-column: 1 / -1; grid-row: 2; border-radius: 0 5rem 0 5rem; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-hero img { height: clamp(420px, 39vw, 570px); }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-intro { grid-column: 3 / -3; grid-row: 3; justify-self: center; text-align: center; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-deck { margin-inline: auto; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-edition-opening { grid-template-columns: minmax(0, 1.3fr) minmax(250px, .55fr); }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-edition-opening__number { position: absolute; right: 2rem; bottom: -1rem; writing-mode: horizontal-tb; transform: none; opacity: .08; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-edition-opening__copy { grid-column: 1; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-edition-opening__phases { grid-column: 2; }

  /* Pair cadence is family-aware without disturbing the centring transform. */
  body.dm-article-edition.dm-atmosphere--air .dm-edition-detail-group--pair { grid-template-columns: .85fr 1.15fr; }
  body.dm-article-edition.dm-atmosphere--air .dm-edition-detail-group--pair > :nth-child(2) { margin-top: 2.2rem; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-edition-detail-group--pair { grid-template-columns: 1.16fr .84fr; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-edition-detail-group--pair > :nth-child(2) { margin-top: 2.8rem; }
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-detail-group--pair { gap: 1px; padding: 1px; background: var(--dm-atm-line); }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-edition-detail-group--pair > :nth-child(2) { margin-top: 2rem; }
  body.dm-article-edition.dm-atmosphere--glow .dm-edition-detail-group--pair > :nth-child(2) { margin-top: 1.4rem; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-edition-detail-group--pair { grid-template-columns: 1.2fr .8fr; align-items: end; }

  /* End-of-story routes continue the current atmosphere instead of reverting. */
  body.dm-article-edition.dm-atmosphere--gallery .dm-story-routes__grid { grid-template-columns: repeat(12, 1fr); }
  body.dm-article-edition.dm-atmosphere--gallery .dm-story-route:first-child { grid-column: span 6; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-story-route:not(:first-child) { grid-column: span 3; }
  body.dm-article-edition.dm-atmosphere--glow .dm-story-route:first-child { grid-column: 1 / -1; }
  body.dm-article-edition.dm-atmosphere--retreat .dm-story-routes__grid { grid-template-columns: repeat(2, 1fr); }
  body.dm-article-edition.dm-atmosphere--retreat .dm-story-route:last-child:nth-child(odd) { grid-column: 1 / -1; }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-story-route:nth-child(2) { margin-top: 2rem; margin-bottom: -2rem; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-story-routes__grid { grid-template-columns: 1fr; }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-story-route { display: grid; grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr); gap: 1.4rem; align-items: center; }
}

@media (min-width: 1181px) {
  body.dm-article-edition.dm-atmosphere--air .dm-edition-board,
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-board { display: grid; grid-template-columns: minmax(0, 1fr) minmax(190px, .28fr); align-items: start; }
  body.dm-article-edition.dm-atmosphere--air .dm-edition-board__image,
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-board__image { grid-column: 1; grid-row: 1 / span 2; }
  body.dm-article-edition.dm-atmosphere--air .dm-edition-board__key,
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-board__key { grid-column: 2; grid-row: 1; grid-template-columns: 1fr; }
  body.dm-article-edition.dm-atmosphere--air .dm-edition-board figcaption,
  body.dm-article-edition.dm-atmosphere--studio .dm-edition-board figcaption { grid-column: 2; grid-row: 2; }
}

@media (max-width: 960px) {
  .dm-atmosphere-portal__head { grid-template-columns: 1fr; }
  .dm-atmosphere-portal__head h2 { max-width: 12ch; }
  body.dm-article-edition.dm-atmosphere .dm-content-shell.dm-single { padding-top: .65rem; }
  body.dm-article-edition.dm-atmosphere .dm-article-opening { margin-top: .55rem !important; }
  body.dm-article-edition.dm-atmosphere .dm-edition-opening__copy > .dm-edition-opening__intro { font-size: 1rem; }
  body.dm-article-edition.dm-atmosphere .dm-story-route { margin-top: 0 !important; margin-bottom: 0 !important; }
}

@media (max-width: 782px) {
  .dm-atmosphere-portal { padding-block: 4rem; }
  .dm-atmosphere-portal__head h2 { font-size: clamp(3rem, 14vw, 5rem); }
  .dm-atmosphere-portal__grid {
    width: calc(100vw - 1rem);
    display: grid;
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: min(82vw, 330px);
    gap: .85rem;
    overflow-x: auto;
    margin-left: max(0px, calc((100vw - min(1280px, calc(100vw - 32px))) / -2));
    padding: .25rem 1rem 1rem;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
  }
  .dm-atmosphere-portal__card,
  .dm-atmosphere-portal__card--air,
  .dm-atmosphere-portal__card--gallery,
  .dm-atmosphere-portal__card--glow,
  .dm-atmosphere-portal__card--studio,
  .dm-atmosphere-portal__card--rhythm,
  .dm-atmosphere-portal__card--retreat,
  .dm-atmosphere-portal__card--outdoors { grid-column: auto; scroll-snap-align: start; }
  .dm-atmosphere-portal__card figure,
  .dm-atmosphere-portal__card--gallery figure,
  .dm-atmosphere-portal__card--retreat figure,
  .dm-atmosphere-portal__card--outdoors figure { min-height: 410px; }
  .dm-atmosphere-portal__copy strong { font-size: 2.35rem; }
  .dm-atmosphere-portal__note { width: auto; margin-left: 0; }
  body.dm-article-edition.dm-atmosphere .dm-atmosphere-note { padding-right: .5rem; }
}

@media (prefers-reduced-motion: reduce) {
  .dm-atmosphere-portal__card,
  .dm-atmosphere-portal__image,
  .dm-atmosphere-portal__copy i,
  body.dm-article-edition.dm-atmosphere .dm-edition-opening::before,
  body.dm-article-edition.dm-atmosphere .dm-edition-chapter__tab::after,
  body.dm-article-edition.dm-atmosphere .dm-edition-diagram__head::after,
  body.dm-article-edition.dm-atmosphere .dm-edition-board figcaption,
  body.dm-article-edition.dm-atmosphere .dm-edition-detail__caption { animation: none !important; transition: none !important; transform: none !important; }
}

@media (forced-colors: active) {
  .dm-atmosphere-portal { color: CanvasText; background: Canvas; }
  .dm-atmosphere-portal::before,
  .dm-atmosphere-portal::after,
  .dm-atmosphere-portal__wash,
  body.dm-article-edition.dm-atmosphere .dm-atmosphere-note::before,
  body.dm-article-edition.dm-atmosphere .dm-edition-diagram__head::after { display: none; }
  .dm-atmosphere-portal__head h2,
  .dm-atmosphere-portal__head .dm-kicker,
  .dm-atmosphere-portal__head > p,
  .dm-atmosphere-portal__copy > span,
  .dm-atmosphere-portal__copy strong,
  .dm-atmosphere-portal__copy small,
  .dm-atmosphere-portal__copy i,
  .dm-atmosphere-portal__note { color: CanvasText; }
  .dm-atmosphere-portal__card { border: 2px solid CanvasText; background: Canvas; forced-color-adjust: auto; }
}

@media print {
  .dm-atmosphere-portal { color: #111; background: #fff; }
  .dm-atmosphere-portal::before,
  .dm-atmosphere-portal::after,
  .dm-atmosphere-portal__wash { display: none; }
  .dm-atmosphere-portal__grid { display: grid; grid-template-columns: repeat(2, 1fr); }
  .dm-atmosphere-portal__card { grid-column: auto !important; break-inside: avoid; border: 1px solid #777; color: #111; background: #fff; box-shadow: none; }
  .dm-atmosphere-portal__head h2,
  .dm-atmosphere-portal__head > p,
  .dm-atmosphere-portal__copy > span,
  .dm-atmosphere-portal__copy strong,
  .dm-atmosphere-portal__copy small,
  .dm-atmosphere-portal__copy i,
  .dm-atmosphere-portal__note { color: #111; }
  body.dm-article-edition.dm-atmosphere .dm-article-opening,
  body.dm-article-edition.dm-atmosphere .dm-edition-opening,
  body.dm-article-edition.dm-atmosphere .dm-story-route { display: block !important; }
  body.dm-article-edition.dm-atmosphere .dm-article-title-group,
  body.dm-article-edition.dm-atmosphere .dm-article-hero,
  body.dm-article-edition.dm-atmosphere .dm-article-intro { margin: 0 0 1rem !important; padding: 0 !important; color: #111 !important; background: #fff !important; box-shadow: none !important; }
}

/* --------------------------------------------------------------------------
   v5.2.1 refinement: sharper pictures, firmer rhythm and a legible companion
   -------------------------------------------------------------------------- */

body.dm-article-edition.dm-atmosphere .dm-article-opening > .dm-article-hero {
  box-sizing: border-box;
  max-width: none !important;
  align-self: center;
  padding: clamp(.3rem, .55vw, .55rem);
}

body.dm-article-edition.dm-atmosphere .dm-article-opening > .dm-article-hero > br { display: none; }

body.dm-article-edition.dm-atmosphere .dm-article-opening > .dm-article-hero figcaption {
  max-width: 64ch;
  margin: .5rem auto .05rem;
  padding-inline: .3rem;
  font-size: .76rem;
  line-height: 1.4;
}

body.dm-article-edition.dm-atmosphere .dm-edition-chapter {
  margin-bottom: clamp(2.6rem, 4.7vw, 4.2rem) !important;
}

body.dm-article-edition.dm-atmosphere .dm-edition-chapter--phase-start:not(:first-child) {
  margin-top: clamp(3.5rem, 6vw, 5.5rem) !important;
}

body.dm-article-edition.dm-atmosphere .dm-edition-detail-group {
  gap: clamp(.85rem, 1.7vw, 1.3rem);
  margin: clamp(1.7rem, 3.4vw, 2.9rem) 0 clamp(2rem, 3.8vw, 3.35rem) 50%;
}

body.dm-article-edition.dm-atmosphere .dm-edition-board {
  margin: clamp(1.8rem, 3.5vw, 3.2rem) 0 clamp(2.2rem, 4.2vw, 3.8rem) 50%;
}

body.dm-article-edition.dm-atmosphere .dm-edition-diagram {
  margin: clamp(1.8rem, 3.5vw, 3.2rem) 0 clamp(2.2rem, 4.2vw, 3.7rem) 50%;
}

body.dm-article-edition.dm-atmosphere .dm-edition-detail__caption {
  padding: .85rem .5rem .55rem;
}

/* The companion owns its colour system so inherited legacy colours cannot
   disappear when an atmosphere uses a dark panel. */
body.dm-article-edition.dm-atmosphere .dm-guide-experience {
  --dm-guide-ink: var(--dm-atm-ink);
  --dm-guide-muted: var(--dm-atm-muted);
  --dm-guide-active: var(--dm-atm-accent-strong);
  --dm-guide-line: var(--dm-atm-line);
  --dm-guide-control-ink: var(--dm-atm-ink);
  --dm-guide-control-bg: color-mix(in srgb, var(--dm-atm-paper) 82%, white);
  --dm-guide-control-border: color-mix(in srgb, var(--dm-atm-deep) 35%, transparent);
  color: var(--dm-guide-ink);
}

body.dm-article-edition.dm-atmosphere .dm-guide-experience p,
body.dm-article-edition.dm-atmosphere .dm-guide-quickbar__time,
body.dm-article-edition.dm-atmosphere .dm-unit-control > span,
body.dm-article-edition.dm-atmosphere .dm-guide-nav summary span:last-child,
body.dm-article-edition.dm-atmosphere .dm-guide-nav-fallback,
body.dm-article-edition.dm-atmosphere .dm-guide-context > summary small,
body.dm-article-edition.dm-atmosphere .dm-guide-facts dt,
body.dm-article-edition.dm-atmosphere .dm-local-note { color: var(--dm-guide-muted); }

body.dm-article-edition.dm-atmosphere .dm-guide-nav summary,
body.dm-article-edition.dm-atmosphere .dm-guide-context > summary,
body.dm-article-edition.dm-atmosphere .dm-guide-facts dd { color: var(--dm-guide-ink); }

body.dm-article-edition.dm-atmosphere .dm-guide-nav a { color: var(--dm-guide-muted); }

body.dm-article-edition.dm-atmosphere .dm-guide-experience .dm-kicker,
body.dm-article-edition.dm-atmosphere .dm-guide-nav a[aria-current="location"],
body.dm-article-edition.dm-atmosphere .dm-reader-reset { color: var(--dm-guide-active); }

body.dm-article-edition.dm-atmosphere .dm-guide-nav,
body.dm-article-edition.dm-atmosphere .dm-guide-context,
body.dm-article-edition.dm-atmosphere .dm-guide-facts > div,
body.dm-article-edition.dm-atmosphere .dm-guide-nav li + li { border-color: var(--dm-guide-line); }

body.dm-article-edition.dm-atmosphere .dm-reader-button,
body.dm-article-edition.dm-atmosphere .dm-unit-control button {
  border-color: var(--dm-guide-control-border);
  color: var(--dm-guide-control-ink);
  background: var(--dm-guide-control-bg);
}

body.dm-article-edition.dm-atmosphere .dm-reader-button[aria-pressed="true"],
body.dm-article-edition.dm-atmosphere .dm-unit-control button[aria-pressed="true"] {
  border-color: var(--dm-guide-active);
  color: var(--dm-atm-on-deep);
  background: var(--dm-atm-deep);
}

body.dm-article-edition.dm-atmosphere .dm-reader-button:hover,
body.dm-article-edition.dm-atmosphere .dm-unit-control button:hover { border-color: var(--dm-guide-active); }

body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-experience {
  --dm-guide-ink: var(--dm-atm-on-deep);
  --dm-guide-muted: var(--dm-atm-on-deep-muted);
  --dm-guide-active: var(--dm-atm-nav-accent);
  --dm-guide-line: color-mix(in srgb, var(--dm-atm-on-deep) 24%, transparent);
  --dm-guide-control-ink: var(--dm-atm-on-deep);
  --dm-guide-control-bg: color-mix(in srgb, var(--dm-atm-on-deep) 8%, transparent);
  --dm-guide-control-border: color-mix(in srgb, var(--dm-atm-on-deep) 45%, transparent);
  border-color: var(--dm-guide-line);
  border-top-color: var(--dm-atm-nav-accent);
  color: var(--dm-guide-ink);
  background-color: var(--dm-atm-deep);
  background-image:
    radial-gradient(circle at 88% 3%, color-mix(in srgb, var(--dm-atm-nav-accent) 13%, transparent), transparent 38%),
    var(--dm-atm-panel-texture);
}

body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-progress {
  border-color: var(--dm-guide-line);
  background: color-mix(in srgb, var(--dm-atm-on-deep) 14%, transparent);
}

body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-progress span {
  background: linear-gradient(90deg, var(--dm-atm-nav-accent), var(--dm-atm-on-deep));
}

body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-reader-button[aria-pressed="true"],
body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-unit-control button[aria-pressed="true"] {
  border-color: var(--dm-atm-nav-accent);
  color: var(--dm-atm-deep);
  background: var(--dm-atm-nav-accent);
}

body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-resume {
  color: var(--dm-atm-ink);
  background: color-mix(in srgb, var(--dm-atm-paper) 88%, white);
}

body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-resume .dm-kicker { color: var(--dm-atm-accent-strong); }
body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-resume a { color: var(--dm-atm-deep); }

body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-experience :focus-visible {
  outline-color: var(--dm-atm-nav-accent);
}

body.dm-article-edition.dm-atmosphere.dm-atmosphere--retreat .dm-guide-experience { border-top-width: 3px; }

@media (min-width: 783px) {
  body.dm-article-edition.dm-atmosphere .dm-edition-opening {
    width: min(1120px, calc(100% - 48px));
    gap: clamp(1rem, 2.4vw, 2.35rem);
    margin: clamp(.9rem, 1.8vw, 1.5rem) auto clamp(1.8rem, 3vw, 3rem) !important;
    padding: clamp(1.55rem, 3vw, 3.1rem) clamp(1.15rem, 3vw, 2.7rem) clamp(1.35rem, 2.5vw, 2.3rem);
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-opening h2 {
    font-size: clamp(2.7rem, 5.8vw, 5.9rem);
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-opening__copy > .dm-edition-opening__intro {
    margin-top: 1rem;
    line-height: 1.52;
  }

  body.dm-article-edition.dm-atmosphere .dm-atmosphere-note {
    margin-top: 1rem;
    padding-top: .7rem;
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-opening__phases li { min-height: 48px; }
  body.dm-article-edition.dm-atmosphere .dm-edition-opening__phases li:last-child { border-right: 0; }

  body.dm-article-edition.dm-atmosphere .dm-story-photo--portrait {
    width: min(520px, calc(100vw - 360px));
  }

  body.dm-article-edition.dm-atmosphere :is(.dm-article-lab, .dm-project-tool, .dm-pin-guide) {
    width: min(1080px, calc(100% - 48px));
  }

  body.dm-article-edition.dm-atmosphere .dm-pin-guide {
    gap: clamp(1.5rem, 3vw, 3rem);
    margin-top: clamp(3.5rem, 5.5vw, 5.5rem);
  }

  body.dm-article-edition.dm-atmosphere .dm-pin-guide figure {
    width: min(100%, 520px);
    justify-self: end;
  }

  body.dm-article-edition.dm-atmosphere .dm-voice-more { width: min(1040px, calc(100% - 48px)); }
  body.dm-article-edition.dm-atmosphere .dm-story-routes { width: min(1180px, calc(100% - 48px)); }
  body.dm-article-edition.dm-atmosphere :is(.dm-project-tool, .dm-voice-more) { margin-top: clamp(3.25rem, 5vw, 5rem) !important; }
  body.dm-article-edition.dm-atmosphere .dm-story-routes,
  body.dm-article-edition.dm-atmosphere .dm-after-article { margin-top: clamp(3.5rem, 5.5vw, 5.5rem) !important; }
}

@media (min-width: 681px) {
  body.dm-article-edition.dm-atmosphere .dm-edition-detail-group--single > .dm-edition-detail--portrait:is(
    [data-dm-detail-layout="row-3"],
    [data-dm-detail-layout="row-5"],
    [data-dm-detail-layout="patio-atlas"]
  ) {
    width: min(100%, 760px);
    display: grid;
    align-items: start;
    justify-self: center;
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-detail-group--single > .dm-edition-detail--portrait[data-dm-detail-layout="row-3"] {
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-detail-group--single > .dm-edition-detail--portrait[data-dm-detail-layout="row-5"] {
    grid-template-columns: minmax(210px, 240px) minmax(0, 1fr);
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-detail-group--single > .dm-edition-detail--portrait[data-dm-detail-layout="patio-atlas"] {
    grid-template-columns: minmax(260px, 310px) minmax(0, 1fr);
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-detail-group--single > .dm-edition-detail--portrait:is(
    [data-dm-detail-layout="row-3"],
    [data-dm-detail-layout="row-5"],
    [data-dm-detail-layout="patio-atlas"]
  ) > .dm-edition-detail__media {
    grid-column: 1;
    grid-row: 1;
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-detail-group--single > .dm-edition-detail--portrait:is(
    [data-dm-detail-layout="row-3"],
    [data-dm-detail-layout="row-5"],
    [data-dm-detail-layout="patio-atlas"]
  ) > .dm-edition-detail__caption {
    grid-column: 2;
    grid-row: 1;
    align-self: stretch;
    align-content: center;
    padding: 1rem 1.15rem;
    border-left: 1px solid var(--dm-atm-line);
  }
}

@media (min-width: 781px) {
  body.dm-article-edition.dm-atmosphere.dm-edition--casebook .dm-edition-detail-group--pair {
    width: min(680px, calc(100vw - 2rem));
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }

  body.dm-article-edition.dm-atmosphere.dm-edition--casebook .dm-edition-detail-group--pair > :nth-child(2) { margin-top: .7rem; }
}

@media (min-width: 961px) {
  body.dm-article-edition.dm-atmosphere .dm-article-opening { row-gap: clamp(1rem, 1.8vw, 1.7rem); }
  body.dm-article-edition.dm-atmosphere .dm-article-title-group h1 { font-size: clamp(3.15rem, 5vw, 5.55rem); }

  body.dm-article-edition.dm-atmosphere--air .dm-article-hero img { height: clamp(430px, 41vw, 590px); }
  body.dm-article-edition.dm-atmosphere--gallery .dm-article-hero img { height: clamp(450px, 43vw, 620px); }
  body.dm-article-edition.dm-atmosphere--glow .dm-article-hero img { height: clamp(480px, 48vw, 650px); }
  body.dm-article-edition.dm-atmosphere--studio .dm-article-hero img { height: clamp(430px, 40vw, 580px); }
  body.dm-article-edition.dm-atmosphere--rhythm .dm-article-hero img { height: clamp(430px, 40vw, 590px); }
  body.dm-article-edition.dm-atmosphere--retreat .dm-article-hero img { height: clamp(390px, 36vw, 500px); }
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-hero img { height: clamp(360px, 33vw, 470px); }

  body.dm-article-edition.dm-atmosphere--retreat .dm-article-opening,
  body.dm-article-edition.dm-atmosphere--outdoors .dm-article-opening { row-gap: clamp(.9rem, 1.5vw, 1.4rem); }

  body.dm-article-edition.dm-atmosphere--rhythm .dm-article-intro {
    grid-column: 8 / -1;
    max-width: 42ch;
  }

  body.dm-article-edition.dm-atmosphere .dm-reading-layout { gap: clamp(2rem, 3.5vw, 3.5rem); }
  body.dm-article-edition.dm-atmosphere .dm-edition-board { width: min(1020px, calc(100vw - 360px)); }
  body.dm-article-edition.dm-atmosphere :is(.dm-edition-diagram, .dm-edition-detail-group) { width: min(900px, calc(100vw - 360px)); }

  body.dm-article-edition.dm-atmosphere--air .dm-edition-detail-group--pair > :nth-child(2),
  body.dm-article-edition.dm-atmosphere--rhythm .dm-edition-detail-group--pair > :nth-child(2) { margin-top: .75rem; }
  body.dm-article-edition.dm-atmosphere--gallery .dm-edition-detail-group--pair > :nth-child(2) { margin-top: 1rem; }
  body.dm-article-edition.dm-atmosphere--glow .dm-edition-detail-group--pair > :nth-child(2) { margin-top: .5rem; }

  body.dm-article-edition.dm-atmosphere--rhythm .dm-story-route:nth-child(2) {
    margin-top: 0;
    margin-bottom: 0;
    transform: translateY(.75rem);
  }
}

@media (max-width: 782px) {
  .dm-atmosphere-portal__card figure,
  .dm-atmosphere-portal__card--gallery figure,
  .dm-atmosphere-portal__card--retreat figure,
  .dm-atmosphere-portal__card--outdoors figure { min-height: clamp(340px, 92vw, 380px); }
}

@media (max-width: 680px) {
  body.dm-article-edition.dm-atmosphere .dm-edition-detail--portrait[data-dm-detail-layout="row-3"] .dm-edition-detail__media {
    width: min(82vw, 300px);
    margin-inline: auto;
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-detail--portrait[data-dm-detail-layout="row-5"] .dm-edition-detail__media {
    width: min(66vw, 240px);
    margin-inline: auto;
  }

  body.dm-article-edition.dm-atmosphere .dm-edition-detail--portrait[data-dm-detail-layout="patio-atlas"] .dm-edition-detail__media {
    width: min(80vw, 300px);
    margin-inline: auto;
  }
}

@media (prefers-contrast: more) {
  body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-experience {
    --dm-guide-line: color-mix(in srgb, var(--dm-atm-on-deep) 42%, transparent);
    --dm-guide-control-border: var(--dm-atm-on-deep);
    border-top-color: var(--dm-atm-nav-accent);
  }
}

@media (forced-colors: active) {
  body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-experience,
  body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-experience * {
    border-color: CanvasText;
    color: CanvasText;
    background: Canvas;
    forced-color-adjust: auto;
  }

  body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-guide-experience a,
  body.dm-article-edition.dm-atmosphere.dm-atmosphere--glow .dm-reader-reset { color: LinkText; }
}

@media print {
  body.dm-article-edition.dm-atmosphere .dm-guide-experience,
  body.dm-article-edition.dm-atmosphere .dm-guide-experience * {
    color: #000 !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  body.dm-article-edition.dm-atmosphere .dm-guide-experience a { text-decoration: underline !important; }
}
