/* Dealsmaster v5.3.1 - the lived-in layer.
 *
 * This final cascade makes the established editorial system feel inhabited:
 * fewer production labels, warmer photographic rhythm, conversational pauses,
 * tighter article entrances, and tactile but finite movement.
 */

:root {
  --dm-human-paper: #fff9ef;
  --dm-human-cream: #f4eadb;
  --dm-human-peach: #efc5a8;
  --dm-human-coral: #d87556;
  --dm-human-rust: #8a3f32;
  --dm-human-plum: #593a35;
  --dm-human-green: #23483b;
  --dm-human-gold: #e7c66d;
  --dm-human-ink: #26221d;
  --dm-human-shadow: rgba(76, 49, 33, .17);
  --dm-human-ease: cubic-bezier(.2, .76, .2, 1);
}

body.dm-human-warmth {
  background-color: #f7f0e5;
  color: var(--dm-human-ink);
}

.dm-human-warmth .dm-article-opening > br,
.dm-human-warmth .dm-article-opening > p:empty {
  display: none !important;
}

/* --------------------------------------------------------------------------
   A masthead that sounds like a welcome, not a control panel
   -------------------------------------------------------------------------- */

.dm-human-warmth .dm-site-header {
  background:
    radial-gradient(circle at 82% -45%, color-mix(in srgb, var(--dm-shell-accent) 16%, transparent), transparent 42%),
    linear-gradient(112deg, #fffaf2 0%, #f9efe3 58%, #f4dfd2 100%);
  box-shadow: 0 1px 0 rgba(64, 45, 33, .13), 0 12px 34px rgba(73, 49, 32, .035);
}

.dm-human-warmth .dm-site-header::before {
  top: -11rem;
  right: -8rem;
  border: 0;
  background:
    radial-gradient(circle at 36% 42%, color-mix(in srgb, var(--dm-shell-gold) 22%, transparent), transparent 34%),
    color-mix(in srgb, var(--dm-shell-soft) 32%, transparent);
  filter: blur(.2px);
  opacity: .6;
  transform: rotate(8deg);
}

.dm-human-warmth .dm-site-header::after {
  right: 3vw;
  width: min(38vw, 34rem);
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--dm-shell-accent) 58%, transparent), transparent);
}

.dm-human-warmth :is(.dm-header-art, .dm-footer-art) :is(.dm-art-route, .dm-art-frames, .dm-art-ticks, .dm-art-focus) {
  display: none;
}

.dm-human-warmth :is(.dm-header-art, .dm-footer-art) .dm-art-contour {
  opacity: .3;
}

.dm-human-warmth :is(.dm-header-art, .dm-footer-art) .dm-art-leaf {
  opacity: .62;
}

.dm-human-warmth .dm-site-header .dm-brand-row {
  grid-template-columns: minmax(285px, 1.05fr) minmax(235px, .8fr) minmax(300px, 1fr);
  padding-block: 2.05rem 1.22rem;
}

.dm-human-warmth .dm-site-header .dm-brand-name {
  font-weight: 535;
  letter-spacing: -.062em;
}

.dm-human-warmth .dm-site-header .dm-header-promise {
  max-width: 30rem;
  border-left-width: 3px;
  border-left-color: color-mix(in srgb, var(--dm-shell-accent) 55%, transparent);
}

.dm-human-warmth .dm-site-header .dm-header-promise span {
  color: var(--dm-human-rust);
  font-size: 1.15rem;
}

.dm-human-warmth .dm-site-header .dm-header-promise strong {
  max-width: 29ch;
  font-size: .75rem;
  font-weight: 620;
  line-height: 1.48;
}

.dm-human-warmth .dm-site-header .dm-brand-tagline {
  font-size: .71rem;
  font-weight: 650;
  letter-spacing: .07em;
  text-transform: none;
}

.dm-human-warmth.home .dm-site-header .dm-atmosphere-edition {
  display: none !important;
}

.dm-human-warmth.home .dm-site-header .dm-brand-tools {
  grid-template-columns: minmax(270px, 360px);
}

.dm-human-warmth.home .dm-site-header .dm-header-search {
  width: min(360px, 31vw);
}

.dm-human-warmth.single-post .dm-site-header .dm-brand-tools .dm-atmosphere-edition {
  max-width: 13.5rem !important;
  min-height: 0;
  padding: .12rem 0 .12rem .72rem;
  border: 0;
  border-left: 2px solid color-mix(in srgb, var(--dm-shell-accent) 64%, transparent);
  border-radius: 0;
  background: none;
  box-shadow: none;
}

.dm-human-warmth.single-post .dm-site-header .dm-atmosphere-edition__short {
  display: block;
  font-family: var(--dm-v14-serif);
  font-size: .7rem;
  font-style: italic;
  font-weight: 620;
  letter-spacing: .01em;
  text-transform: none;
}

.dm-human-warmth.single-post .dm-site-header .dm-atmosphere-edition__mood {
  max-width: 22ch;
  font-family: var(--dm-v14-serif);
  font-size: .72rem;
  font-style: italic;
  font-weight: 560;
  line-height: 1.28;
}

.dm-human-warmth.single-post .dm-site-header .dm-atmosphere-edition::before {
  content: none;
}

.dm-human-warmth .dm-site-header .dm-topline-story > a {
  min-height: 40px;
  padding-inline: .8rem;
  border: 0;
  border-left: 3px solid color-mix(in srgb, var(--dm-shell-accent) 76%, transparent);
  border-radius: .18rem;
  background: rgba(255, 250, 242, .9);
  box-shadow: 0 7px 18px rgba(83, 49, 31, .045);
  backdrop-filter: none;
}

.dm-human-warmth .dm-site-header .dm-topline-story > a::before {
  content: none;
}

.dm-human-warmth .dm-site-header .dm-topline-story > a > span {
  color: var(--dm-human-rust);
  font-family: var(--dm-v14-serif);
  font-size: .72rem;
  font-style: italic;
  font-weight: 620;
  letter-spacing: .01em;
  text-transform: none;
}

@media (min-width: 901px) {
  .dm-human-warmth .dm-site-header .dm-topline {
    top: 0;
    margin-top: 0;
  }
}

/* --------------------------------------------------------------------------
   Homepage opening - one real habit, one warm room, one clear invitation
   -------------------------------------------------------------------------- */

.dm-human-warmth .dm-home-hero--human {
  min-height: min(770px, calc(100svh - 92px));
  padding: clamp(2.4rem, 4vw, 4.35rem) 0 clamp(4.9rem, 7vw, 7rem);
  background-color: #f5e6d6;
  background-image:
    radial-gradient(circle at 8% 3%, rgba(238, 184, 109, .29), transparent 25rem),
    radial-gradient(circle at 90% 18%, rgba(211, 116, 85, .2), transparent 29rem),
    radial-gradient(circle at 54% 108%, rgba(74, 117, 91, .12), transparent 31rem),
    var(--dm-texture-paper),
    linear-gradient(128deg, #fff7eb 0%, #f5e5d5 55%, #efd3c2 100%);
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: auto minmax(0, 1fr);
  column-gap: clamp(2rem, 4.1vw, 4.7rem);
  row-gap: clamp(1.5rem, 2.5vw, 2.4rem);
  align-items: start;
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__copy {
  grid-column: 1 / span 5;
  align-self: start;
  padding-top: clamp(.2rem, 1.1vw, .85rem);
}

.dm-human-warmth .dm-home-hero--human .dm-edition-title {
  max-width: 10.4ch;
  font-size: clamp(3.7rem, 5.9vw, 6.7rem);
  font-weight: 500;
  letter-spacing: -.066em;
  line-height: .87;
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__intro {
  grid-column: 1 / span 5;
  align-self: start;
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__intro > p:first-child {
  max-width: 44ch;
  color: #574d43;
  font-size: clamp(1.02rem, 1.27vw, 1.16rem);
  line-height: 1.64;
}

.dm-hero-handnote {
  position: relative;
  max-width: 34rem !important;
  display: grid;
  gap: .25rem;
  margin-top: clamp(1.15rem, 2vw, 1.7rem) !important;
  padding: .9rem 1rem .9rem 1.25rem;
  border-left: 3px solid var(--dm-human-coral);
  border-radius: 0 1.2rem 1.2rem 0;
  color: var(--dm-human-ink) !important;
  background: rgba(255, 250, 242, .58);
  box-shadow: 0 8px 24px rgba(80, 49, 31, .05);
  transform: rotate(-.35deg);
}

.dm-hero-handnote span {
  color: var(--dm-human-rust);
  font-size: .61rem;
  font-weight: 820;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.dm-hero-handnote strong {
  font-family: var(--dm-serif);
  font-size: clamp(1.05rem, 1.5vw, 1.28rem);
  font-style: italic;
  font-weight: 540;
  line-height: 1.25;
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__feature {
  position: relative;
  grid-column: 6 / -1;
  grid-row: 1 / span 2;
  align-self: stretch;
  padding: 0 0 clamp(5.2rem, 8vw, 7.7rem);
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__feature::before {
  top: .9rem;
  right: -.75rem;
  bottom: clamp(6rem, 8.5vw, 8.4rem);
  left: 1.2rem;
  border-color: rgba(88, 55, 35, .2);
  border-radius: .2rem 5.5rem .2rem 1.5rem;
  background: rgba(255, 250, 242, .47);
  transform: rotate(1deg);
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__feature .dm-story-image {
  min-height: clamp(430px, 42vw, 620px);
  aspect-ratio: 6 / 5;
  border: 9px solid rgba(255, 250, 242, .94);
  border-radius: .35rem 6.4rem .35rem .35rem;
  outline-color: rgba(76, 49, 32, .14);
  box-shadow: 0 34px 78px rgba(83, 51, 31, .2), 0 8px 20px rgba(83, 51, 31, .09);
}

.dm-human-warmth .dm-home-hero--human .dm-story-image img {
  height: 100%;
  object-fit: cover;
  object-position: center 47%;
  transform: scale(1.015);
}

.dm-human-warmth .dm-home-hero--human .dm-image-note {
  left: 1rem;
  bottom: 1rem;
  padding: .47rem .72rem;
  border-radius: 999px;
  color: #fffaf1;
  background: rgba(44, 48, 39, .78);
  font-family: var(--dm-serif);
  font-size: .74rem;
  font-style: italic;
  font-weight: 520;
  letter-spacing: 0;
  text-transform: none;
  backdrop-filter: blur(8px);
}

.dm-hero-human-detail {
  position: absolute;
  z-index: 8;
  right: -1rem;
  bottom: clamp(4.15rem, 6.3vw, 6.3rem);
  display: block;
  width: clamp(180px, 18vw, 255px);
  padding: .48rem .48rem .72rem;
  border: 1px solid rgba(76, 49, 32, .16);
  color: var(--dm-human-ink);
  background: var(--dm-human-paper);
  box-shadow: 0 18px 44px rgba(70, 43, 27, .2);
  text-decoration: none;
  transform: rotate(2.4deg);
  transform-origin: 74% 100%;
}

.dm-hero-human-detail::before {
  position: absolute;
  top: -.55rem;
  left: 42%;
  width: 3.3rem;
  height: 1.05rem;
  background: rgba(232, 199, 128, .66);
  content: "";
  transform: rotate(-4deg);
}

.dm-hero-human-detail img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.dm-hero-human-detail span {
  display: block;
  padding: .62rem .35rem .05rem;
  font-family: var(--dm-serif);
  font-size: .77rem;
  font-style: italic;
  line-height: 1.25;
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__slip {
  width: min(83%, 610px);
  grid-column: 6 / -1;
  padding: clamp(1.1rem, 1.8vw, 1.45rem);
  border-top-width: 4px;
  border-bottom-width: 0;
  border-radius: .25rem 1.1rem .25rem .25rem;
  background: rgba(255, 250, 242, .97);
  box-shadow: 0 22px 52px rgba(69, 43, 28, .18);
  transform: translate(-1.6rem, clamp(1.8rem, 3.1vw, 3rem)) rotate(-.35deg);
}

.dm-human-warmth .dm-home-hero--human .dm-home-hero__slip .dm-story-meta {
  font-family: var(--dm-serif);
  font-size: .73rem;
  font-style: italic;
  font-weight: 580;
  letter-spacing: .02em;
  text-transform: none;
}

.dm-human-warmth .dm-home-hero--human .dm-hero-cue {
  margin-top: 1.2rem;
}

/* --------------------------------------------------------------------------
   New stories - a warm conversation rather than a publication ledger
   -------------------------------------------------------------------------- */

.dm-human-warmth .dm-desk-stream {
  padding: clamp(4.2rem, 6.7vw, 6.5rem) 0 clamp(4.4rem, 6.7vw, 6.7rem);
  color: #fff7ed;
  background:
    radial-gradient(circle at 7% 8%, rgba(238, 188, 112, .28), transparent 26rem),
    radial-gradient(circle at 96% 92%, rgba(44, 86, 69, .26), transparent 31rem),
    linear-gradient(132deg, #6b4038 0%, #7f473b 48%, #4c3933 100%);
}

.dm-human-warmth .dm-desk-stream::before {
  right: -12rem;
  border-color: rgba(255, 240, 221, .12);
  box-shadow: 0 0 0 4rem rgba(255, 240, 221, .025), 0 0 0 8rem rgba(255, 240, 221, .015);
}

.dm-human-warmth .dm-desk-stream__header {
  grid-template-columns: minmax(0, 1.2fr) minmax(270px, .62fr);
  align-items: center;
  margin-bottom: clamp(2.2rem, 4vw, 3.5rem);
}

.dm-human-warmth .dm-desk-stream__header .dm-kicker {
  color: #f2c875;
}

.dm-human-warmth .dm-desk-stream__header h2 {
  max-width: 12ch;
  font-size: clamp(3.2rem, 6.25vw, 6rem);
  font-weight: 495;
  letter-spacing: -.058em;
  line-height: .9;
}

.dm-human-warmth .dm-desk-stream__header > p {
  position: relative;
  max-width: 40ch;
  padding: 1.15rem 0 1.15rem 1.35rem;
  border-left: 1px solid rgba(255, 229, 196, .4);
  color: rgba(255, 246, 234, .86);
  font-family: var(--dm-serif);
  font-size: clamp(1rem, 1.28vw, 1.14rem);
  font-style: italic;
  line-height: 1.58;
}

.dm-human-warmth .dm-desk-story {
  --dm-card-turn: 0deg;
  overflow: visible;
  border: 1px solid rgba(64, 41, 29, .12);
  border-radius: .25rem 1.8rem .25rem .25rem;
  background: #fff7eb;
  box-shadow: 0 22px 52px rgba(39, 24, 18, .2);
  transform: rotate(var(--dm-card-turn));
  transform-origin: 50% 100%;
}

.dm-human-warmth .dm-desk-story:nth-child(3n + 2) { --dm-card-turn: -.28deg; }
.dm-human-warmth .dm-desk-story:nth-child(3n) { --dm-card-turn: .24deg; }

.dm-human-warmth .dm-desk-story__media {
  overflow: hidden;
  border-radius: .18rem 1.7rem 0 0;
}

.dm-human-warmth .dm-desk-story .dm-story-meta {
  justify-content: flex-start;
  color: var(--dm-human-rust);
  font-family: var(--dm-serif);
  font-size: .78rem;
  font-style: italic;
  font-weight: 580;
  letter-spacing: .01em;
  text-transform: none;
}

.dm-human-warmth .dm-desk-story h3 {
  line-height: 1.02;
}

.dm-human-warmth .dm-desk-story__excerpt {
  color: #5c5148;
  font-size: .94rem;
  line-height: 1.58;
}

.dm-desk-story__read {
  display: inline-flex;
  min-height: 38px;
  gap: .38rem;
  align-items: center;
  margin-top: .85rem;
  color: var(--dm-human-green);
  font-size: .76rem;
  font-weight: 780;
  text-underline-offset: .22em;
}

.dm-human-warmth .dm-desk-stream__footer {
  border-top-color: rgba(255, 238, 215, .23);
  color: rgba(255, 246, 234, .82);
}

.dm-human-warmth .dm-desk-stream__footer a {
  color: #fff8ee;
}

.dm-human-warmth .dm-atmosphere-portal__copy > span {
  display: none;
}

.dm-human-warmth .dm-atmosphere-portal__note {
  font-family: var(--dm-serif);
  font-style: italic;
}

.dm-human-warmth :is(.dm-atmosphere-portal, .dm-guide-finder, .dm-reset-lab, .dm-my-rooms, .dm-field-notes, .dm-visual-library) {
  padding-block: clamp(3.8rem, 6.2vw, 6.25rem);
}

.dm-human-warmth :is(.dm-atmosphere-portal__head, .dm-finder-head, .dm-field-notes__header, .dm-section-head) h2,
.dm-human-warmth .dm-my-rooms h2 {
  font-size: clamp(2.85rem, 5.2vw, 5.15rem);
  line-height: .93;
}

.dm-human-warmth .dm-my-rooms:has(.dm-my-rooms__board[hidden]) {
  padding-block: clamp(2.8rem, 4.5vw, 4.4rem);
}

.dm-human-warmth .dm-my-rooms:has(.dm-my-rooms__board[hidden]) .dm-my-rooms__shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: center;
}

.dm-human-warmth .dm-my-rooms:has(.dm-my-rooms__board[hidden]) .dm-my-rooms__shell > header {
  display: block;
  margin: 0;
}

.dm-human-warmth .dm-my-rooms:has(.dm-my-rooms__board[hidden]) .dm-my-rooms__shell > header > p:last-child {
  max-width: 54ch;
  margin-top: 1rem;
}

.dm-human-warmth .dm-my-rooms:has(.dm-my-rooms__board[hidden]) h2 {
  max-width: 13ch;
  font-size: clamp(2.5rem, 4vw, 4.2rem);
}

@media (hover: hover) and (pointer: fine) {
  .dm-human-warmth .dm-desk-story:hover,
  .dm-human-warmth .dm-desk-story:focus-within {
    box-shadow: 0 30px 70px rgba(35, 21, 16, .27);
    transform: translateY(-6px) rotate(0);
  }

  .dm-hero-human-detail:hover,
  .dm-hero-human-detail:focus-visible {
    transform: translateY(-5px) rotate(.7deg);
  }
}

/* --------------------------------------------------------------------------
   A human pause between systems
   -------------------------------------------------------------------------- */

.dm-lived-letter {
  position: relative;
  overflow: clip;
  padding: clamp(4.8rem, 8vw, 8rem) 0;
  color: #2d2923;
  background:
    radial-gradient(circle at 95% 8%, rgba(194, 92, 62, .18), transparent 25rem),
    radial-gradient(circle at 0 100%, rgba(55, 103, 80, .12), transparent 27rem),
    linear-gradient(118deg, #f8e7d5, #efc9ad 58%, #e8b697);
}

.dm-lived-letter::before {
  position: absolute;
  top: 2rem;
  right: 7%;
  width: clamp(8rem, 15vw, 14rem);
  height: clamp(4rem, 8vw, 7rem);
  border-top: 1px solid rgba(104, 62, 40, .25);
  border-radius: 50%;
  content: "";
  transform: rotate(8deg);
}

.dm-lived-letter__grid {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
  gap: clamp(2.5rem, 7vw, 7.5rem);
  align-items: center;
}

.dm-lived-letter__copy {
  position: relative;
  z-index: 3;
}

.dm-lived-letter__copy .dm-kicker {
  color: #7f372b;
}

.dm-lived-letter__copy h2 {
  max-width: 9ch;
  margin: 0;
  font-family: var(--dm-serif);
  font-size: clamp(3.35rem, 6.3vw, 6.8rem);
  font-weight: 500;
  letter-spacing: -.064em;
  line-height: .86;
  text-wrap: balance;
}

.dm-lived-letter__copy > p:not(.dm-kicker, .dm-lived-letter__aside) {
  max-width: 45ch;
  margin: clamp(1.4rem, 2.4vw, 2rem) 0 0;
  color: #544940;
  font-size: clamp(1rem, 1.24vw, 1.14rem);
  line-height: 1.66;
}

.dm-lived-letter__aside {
  max-width: 34rem;
  margin: clamp(1.6rem, 3vw, 2.6rem) 0 0;
  padding: 1.15rem 1.3rem;
  border: 1px dashed rgba(101, 55, 36, .38);
  border-radius: 1.4rem .35rem 1.4rem .35rem;
  color: #653d30;
  background: rgba(255, 248, 236, .52);
  font-family: var(--dm-serif);
  font-size: clamp(1.1rem, 1.65vw, 1.42rem);
  font-style: italic;
  line-height: 1.42;
  transform: rotate(-.8deg);
}

.dm-lived-letter__photos {
  position: relative;
  min-height: clamp(540px, 52vw, 690px);
}

.dm-lived-letter__photo {
  position: absolute;
  z-index: 1;
  margin: 0;
  padding: .55rem .55rem .78rem;
  border: 1px solid rgba(76, 48, 31, .14);
  background: #fff9ef;
  box-shadow: 0 24px 62px rgba(82, 49, 30, .2);
}

.dm-lived-letter__photo img {
  display: block;
  width: 100%;
  object-fit: cover;
}

.dm-lived-letter__photo figcaption {
  padding: .65rem .28rem 0;
  color: #5a4b40;
  font-family: var(--dm-serif);
  font-size: .75rem;
  font-style: italic;
  line-height: 1.35;
}

.dm-lived-letter__photo--kitchen {
  top: 0;
  left: 0;
  width: min(72%, 510px);
  transform: rotate(-1.35deg);
}

.dm-lived-letter__photo--kitchen img {
  aspect-ratio: 1;
}

.dm-lived-letter__photo--keys {
  z-index: 3;
  top: 6%;
  right: 0;
  width: min(42%, 300px);
  transform: rotate(2.1deg);
}

.dm-lived-letter__photo--keys img,
.dm-lived-letter__photo--colour img {
  aspect-ratio: 4 / 3;
}

.dm-lived-letter__photo--colour {
  z-index: 2;
  right: 7%;
  bottom: 0;
  width: min(48%, 340px);
  transform: rotate(-2.4deg);
}

/* --------------------------------------------------------------------------
   Article entrances - the story arrives before the layout system
   -------------------------------------------------------------------------- */

.dm-human-warmth.single-post .dm-content-shell.dm-single {
  padding-top: clamp(.35rem, .8vw, .75rem);
}

.dm-human-warmth.single-post .dm-article-opening {
  margin-top: clamp(.3rem, .7vw, .7rem) !important;
  padding-block: clamp(.7rem, 1.5vw, 1.25rem);
}

.dm-human-warmth.single-post .dm-article-title-group h1 {
  font-size: clamp(3.05rem, 5vw, 5.55rem);
  line-height: .91;
}

.dm-human-warmth.single-post .dm-article-meta .dealsmaster-editorial-byline__separator,
.dm-human-warmth.single-post .dm-article-meta .dealsmaster-editorial-byline__voice {
  display: none;
}

.dm-human-warmth.single-post .dm-article-meta {
  column-gap: .75rem;
}

.dm-human-warmth.single-post .dm-article-meta > * + *::before {
  margin-right: .75rem;
  color: color-mix(in srgb, currentColor 42%, transparent);
  content: "/";
}

.dm-human-warmth.single-post .dm-article-opening > .dm-article-hero {
  align-self: start;
  box-shadow: 0 22px 58px var(--dm-atm-shadow, rgba(64, 45, 31, .14));
}

.dm-human-warmth.single-post .dm-article-opening > .dm-article-hero figcaption {
  font-family: var(--dm-serif);
  font-style: italic;
}

.dm-human-warmth.single-post .dm-single > .dealsmaster-voice-card.is-compact {
  width: min(760px, calc(100% - 2rem));
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  gap: .8rem 1rem;
  margin: clamp(1rem, 2vw, 1.6rem) auto clamp(2rem, 4vw, 3.6rem);
  padding: 1rem 1.1rem;
  border: 0;
  border-left: 3px solid var(--dm-voice-accent);
  border-radius: 0 1.4rem 1.4rem 0;
  background: color-mix(in srgb, var(--dm-voice-wash) 62%, #fffaf2);
  box-shadow: 0 12px 34px rgba(61, 47, 36, .07);
}

.dm-human-warmth.single-post .dealsmaster-voice-card.is-compact .dealsmaster-voice-card__mark {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50% 50% 50% 18%;
  transform: rotate(-3deg);
}

.dm-human-warmth.single-post .dealsmaster-voice-card.is-compact .dealsmaster-voice-card__eyebrow {
  color: var(--dm-voice-accent);
  font-family: var(--dm-serif);
  font-size: .74rem;
  font-style: italic;
  font-weight: 600;
  letter-spacing: .02em;
  text-transform: none;
}

.dm-human-warmth.single-post .dealsmaster-voice-card.is-compact .dealsmaster-voice-card__title {
  font-size: clamp(1.25rem, 2.2vw, 1.62rem);
}

.dealsmaster-voice-card__making {
  margin-top: .65rem;
  color: var(--dm-voice-ink);
  font-size: .74rem;
}

.dealsmaster-voice-card__making summary {
  width: max-content;
  min-height: 34px;
  display: flex;
  align-items: center;
  color: var(--dm-voice-accent);
  cursor: pointer;
  font-weight: 720;
  text-decoration: underline;
  text-underline-offset: .2em;
}

.dealsmaster-voice-card__making p {
  max-width: 72ch;
  margin: .35rem 0 0;
  color: color-mix(in srgb, var(--dm-voice-ink) 78%, transparent);
  line-height: 1.5;
}

.dm-human-warmth.single-post .dm-story-opening > p:first-of-type::first-letter {
  float: left;
  margin: .06em .11em 0 0;
  color: var(--dm-atm-accent-strong, var(--dm-human-rust));
  font-family: var(--dm-serif);
  font-size: 3.35em;
  font-weight: 520;
  line-height: .72;
}

.dm-human-warmth.single-post .dm-edition-opening__number {
  opacity: .045;
}

@media (min-width: 783px) {
  .dm-human-warmth.single-post.dm-article-edition.dm-atmosphere .dm-edition-opening {
    gap: clamp(.9rem, 2vw, 1.7rem);
    margin: clamp(.75rem, 1.4vw, 1.15rem) auto clamp(1.4rem, 2.4vw, 2.25rem) !important;
    padding: clamp(1.15rem, 2.2vw, 2rem) clamp(1rem, 2.4vw, 2.15rem) clamp(1.1rem, 2vw, 1.8rem);
  }

  .dm-human-warmth.single-post.dm-article-edition.dm-atmosphere .dm-edition-opening h2 {
    max-width: 17ch;
    font-size: clamp(2.35rem, 4.25vw, 4.25rem);
    line-height: .93;
  }

  .dm-human-warmth.single-post.dm-article-edition.dm-atmosphere .dm-edition-opening__copy > .dm-edition-opening__intro {
    margin-top: .7rem;
    font-size: clamp(.95rem, 1.25vw, 1.08rem);
  }

  .dm-human-warmth.single-post.dm-article-edition.dm-atmosphere .dm-atmosphere-note {
    margin-top: .65rem;
    padding-top: .55rem;
  }

  .dm-human-warmth.single-post.dm-article-edition.dm-atmosphere .dm-edition-opening__phases li {
    min-height: 42px;
  }
}

@media (min-width: 961px) {
  .dm-human-warmth.single-post.dm-article-edition:is(.dm-atmosphere--air, .dm-atmosphere--gallery, .dm-atmosphere--studio, .dm-atmosphere--rhythm) .dm-article-opening {
    grid-template-rows: auto 1fr;
    align-content: start;
    align-items: start;
  }

  .dm-human-warmth.single-post.dm-article-edition:is(.dm-atmosphere--air, .dm-atmosphere--gallery, .dm-atmosphere--studio, .dm-atmosphere--rhythm) .dm-article-title-group,
  .dm-human-warmth.single-post.dm-article-edition:is(.dm-atmosphere--air, .dm-atmosphere--gallery, .dm-atmosphere--studio, .dm-atmosphere--rhythm) .dm-article-intro,
  .dm-human-warmth.single-post.dm-article-edition:is(.dm-atmosphere--air, .dm-atmosphere--gallery, .dm-atmosphere--studio, .dm-atmosphere--rhythm) .dm-article-hero {
    align-self: start !important;
  }

  .dm-human-warmth.single-post.dm-atmosphere--air .dm-article-hero img,
  .dm-human-warmth.single-post.dm-atmosphere--rhythm .dm-article-hero img {
    height: clamp(470px, 43vw, 620px);
  }

  .dm-human-warmth.single-post.dm-atmosphere--gallery .dm-article-hero img,
  .dm-human-warmth.single-post.dm-atmosphere--studio .dm-article-hero img {
    height: clamp(490px, 44vw, 640px);
  }
}

/* --------------------------------------------------------------------------
   Footer - an affectionate goodbye with the practical links kept nearby
   -------------------------------------------------------------------------- */

.dm-human-warmth .dm-site-footer {
  background:
    radial-gradient(ellipse at 80% 6%, rgba(232, 180, 98, .19), transparent 30rem),
    radial-gradient(ellipse at 4% 100%, rgba(196, 94, 68, .17), transparent 30rem),
    linear-gradient(132deg, #352f29, #23483b 48%, #18362d) !important;
}

.dm-human-warmth .dm-site-footer .dm-footer-lead {
  grid-template-columns: minmax(0, 1.15fr) minmax(190px, .42fr) minmax(250px, .56fr);
  gap: clamp(1.5rem, 4vw, 4.5rem);
  align-items: end;
}

.dm-human-warmth .dm-site-footer .dm-footer-brand > h2 {
  max-width: 11ch;
  font-size: clamp(2.9rem, 5.3vw, 5.45rem);
  line-height: .92;
}

.dm-human-warmth .dm-site-footer .dm-footer-note {
  max-width: 35rem;
  font-family: var(--dm-v14-serif);
  font-size: clamp(.96rem, 1.25vw, 1.08rem);
  font-style: italic;
}

.dm-footer-snapshot {
  position: relative;
  margin: 0 0 .45rem;
  padding: .48rem .48rem .72rem;
  border: 1px solid rgba(255, 244, 226, .22);
  background: #fff8eb;
  box-shadow: 0 22px 54px rgba(12, 25, 20, .27);
  transform: rotate(-2deg);
}

.dm-footer-snapshot::before {
  position: absolute;
  top: -.55rem;
  left: 36%;
  width: 3.4rem;
  height: 1rem;
  background: rgba(229, 195, 108, .76);
  content: "";
  transform: rotate(5deg);
}

.dm-footer-snapshot img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.dm-footer-snapshot figcaption {
  padding: .58rem .25rem 0;
  color: #59493c;
  font-family: var(--dm-v14-serif);
  font-size: .72rem;
  font-style: italic;
  line-height: 1.3;
}

.dm-human-warmth .dm-site-footer .dm-footer-route {
  min-height: 200px;
  margin-top: 0;
  border-radius: .2rem 2rem .2rem .2rem;
  background: rgba(255, 249, 238, .07);
}

.dm-human-warmth .dm-site-footer .dm-footer-route strong {
  font-size: clamp(1.55rem, 2.5vw, 2.35rem);
}

.dm-human-warmth .dm-site-footer .dm-footer-grid h2 {
  color: #f0c971 !important;
  font-family: var(--dm-v14-serif);
  font-size: .76rem;
  font-style: italic;
  font-weight: 620;
  letter-spacing: .02em;
  text-transform: none;
}

.dm-human-warmth .dm-site-footer .dm-footer-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(1),
.dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(2),
.dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(3) {
  grid-column: span 4;
}

.dm-human-warmth .dm-site-footer .dm-footer-grid > .dm-footer-practical {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(10rem, .26fr) minmax(0, 1fr);
  gap: 1.25rem 2rem;
  align-items: start;
  padding-top: 1.35rem;
  border-top: 1px solid color-mix(in srgb, var(--dm-shell-on-deep) 17%, transparent);
}

.dm-human-warmth .dm-site-footer .dm-footer-grid > .dm-footer-practical ul {
  display: flex;
  flex-wrap: wrap;
  gap: .15rem 1.3rem;
}

.dm-human-warmth .dm-site-footer .dm-footer-grid a {
  min-height: 44px;
}

/* --------------------------------------------------------------------------
   Finite, organic movement. Nothing loops and nothing hides useful content.
   -------------------------------------------------------------------------- */

html.dm-art-motion-enabled .dm-human-warmth .dm-shell-art.is-art-active :is(.dm-art-field, .dm-art-contour, .dm-art-leaf, .dm-art-focus, .dm-art-frames, .dm-art-route, .dm-art-ticks) {
  animation: none !important;
}

.dm-human-warmth .dm-logo-light {
  animation: none !important;
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 180ms var(--dm-human-ease), fill 180ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .dm-human-warmth .dm-brand-signature:is(:hover, :focus-visible) .dm-logo-light {
    transform: scale(1.16);
  }
}

@keyframes dm-human-detail-arrive {
  from { transform: translate3d(16px, 11px, 0) rotate(4deg); }
  to { transform: translate3d(0, 0, 0) rotate(2.4deg); }
}

@keyframes dm-human-note-arrive {
  from { transform: translate3d(0, 9px, 0) rotate(0deg); }
  to { transform: translate3d(0, 0, 0) rotate(-.8deg); }
}

.dm-human-warmth.dm-page-ready:not(.dm-reduced-motion) .dm-hero-human-detail {
  animation: dm-human-detail-arrive 760ms var(--dm-human-ease) 180ms both;
}

.dm-human-warmth:not(.dm-reduced-motion) .dm-lived-letter.is-in-view .dm-lived-letter__aside,
.dm-human-warmth:not(.dm-reduced-motion) .dm-lived-letter[data-dm-reveal].is-in-view .dm-lived-letter__aside {
  animation: dm-human-note-arrive 620ms var(--dm-human-ease) both;
}

/* --------------------------------------------------------------------------
   Responsive warmth
   -------------------------------------------------------------------------- */

@media (max-width: 1180px) {
  .dm-human-warmth .dm-site-header .dm-brand-row {
    grid-template-columns: minmax(255px, .9fr) minmax(200px, .66fr) minmax(280px, .9fr);
    gap: 1.2rem;
  }

  .dm-human-warmth .dm-site-header .dm-brand-tools {
    grid-template-columns: minmax(235px, 310px);
  }

  .dm-human-warmth.single-post .dm-site-header .dm-atmosphere-edition {
    display: none !important;
  }

  .dm-lived-letter__grid {
    gap: clamp(2rem, 4vw, 4rem);
  }
}

@media (max-width: 980px) {
  .dm-human-warmth .dm-site-header .dm-brand-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .dm-human-warmth .dm-site-header .dm-header-promise {
    display: none;
  }

  .dm-human-warmth .dm-home-hero--human {
    min-height: 0;
    padding: .85rem 0 4rem;
  }

  .dm-human-warmth .dm-home-hero--human .dm-home-hero__feature {
    min-width: 0;
    order: 1;
    margin-top: .15rem;
    padding: 0 0 3.5rem;
    transform: none;
  }

  .dm-human-warmth .dm-home-hero--human .dm-home-hero__copy {
    z-index: 9;
    order: 2;
    margin: -2.5rem .75rem 0;
    padding: 1.2rem 1.05rem 1.35rem;
    border-top: 4px solid var(--dm-human-coral);
    border-radius: .15rem 1.35rem .15rem .15rem;
    background: rgba(255, 250, 242, .97);
    box-shadow: 0 18px 44px rgba(61, 43, 25, .16);
  }

  .dm-human-warmth .dm-home-hero--human .dm-home-hero__slip {
    order: 3;
    width: auto;
    margin: 0 .75rem;
    transform: rotate(-.3deg);
  }

  .dm-human-warmth .dm-home-hero--human .dm-home-hero__intro {
    order: 4;
    padding: .45rem .2rem 0;
  }

  .dm-human-warmth .dm-home-hero--human .dm-home-hero__feature .dm-story-image {
    height: clamp(315px, 48svh, 440px);
    min-height: 315px;
    aspect-ratio: 5 / 4;
    border-width: 5px;
    border-radius: .2rem 4.2rem .2rem .2rem;
  }

  .dm-hero-human-detail {
    right: .6rem;
    bottom: 1rem;
    width: min(42vw, 220px);
    padding: .35rem .35rem .55rem;
  }

  .dm-hero-human-detail span {
    padding-top: .42rem;
    font-size: .68rem;
  }

  .dm-human-warmth .dm-desk-stream__header {
    grid-template-columns: 1fr;
    gap: 1.3rem;
  }

  .dm-human-warmth .dm-desk-stream__header > p {
    max-width: 56ch;
  }

  .dm-lived-letter__grid {
    grid-template-columns: 1fr;
  }

  .dm-lived-letter__copy h2 {
    max-width: 11ch;
  }

  .dm-lived-letter__photos {
    min-height: clamp(520px, 82vw, 660px);
  }

  .dm-human-warmth .dm-my-rooms:has(.dm-my-rooms__board[hidden]) .dm-my-rooms__shell {
    grid-template-columns: 1fr;
  }

  .dm-human-warmth .dm-site-footer .dm-footer-lead {
    grid-template-columns: minmax(0, 1fr) minmax(190px, .45fr);
  }

  .dm-human-warmth .dm-site-footer .dm-footer-route {
    grid-column: 1 / -1;
    min-height: 160px;
  }
}

@media (max-width: 782px) {
  .dm-human-warmth.home .dm-site-header .dm-brand-tools,
  .dm-human-warmth .dm-site-header .dm-brand-tools {
    display: block !important;
    grid-template-columns: none;
  }

  .dm-human-warmth.home .dm-site-header .dm-header-search,
  .dm-human-warmth .dm-site-header .dm-header-search {
    width: 48px;
  }

  .dm-human-warmth .dm-home-hero--human .dm-edition-title {
    max-width: 11.5ch;
    font-size: clamp(2.82rem, 12vw, 4.2rem);
    line-height: .9;
  }

  .dm-human-warmth .dm-home-hero--human .dm-image-note {
    right: auto;
    max-width: calc(58% - 1rem);
    white-space: normal;
  }

  .dm-human-warmth .dm-home-hero--human .dm-home-hero__slip > p:not(.dm-story-meta) {
    display: none;
  }

  .dm-human-warmth .dm-desk-stream {
    padding-block: 4rem;
  }

  .dm-human-warmth .dm-desk-stream__header h2 {
    max-width: 10ch;
    font-size: clamp(3.25rem, 15vw, 5.2rem);
  }

  .dm-human-warmth .dm-desk-stream__header > p {
    padding: .9rem 0 .9rem 1rem;
  }

  .dm-human-warmth .dm-desk-story {
    --dm-card-turn: 0deg !important;
    overflow: hidden;
    border-radius: .25rem 1.35rem .25rem .25rem;
    transform: none;
  }

  .dm-lived-letter {
    padding-block: 4.6rem;
  }

  .dm-lived-letter__copy h2 {
    font-size: clamp(3.1rem, 14vw, 5rem);
  }

  .dm-lived-letter__photos {
    min-height: min(126vw, 580px);
  }

  .dm-lived-letter__photo--kitchen {
    width: 76%;
  }

  .dm-lived-letter__photo--keys {
    top: 7%;
    width: 46%;
  }

  .dm-lived-letter__photo--colour {
    right: 3%;
    width: 53%;
  }

  .dm-human-warmth.single-post .dm-content-shell.dm-single {
    padding-top: .2rem;
  }

  .dm-human-warmth.single-post .dm-article-opening {
    margin-top: .25rem !important;
    padding-block: .45rem .9rem;
  }

  .dm-human-warmth.single-post .dm-article-title-group h1 {
    font-size: clamp(2.75rem, 11.8vw, 4.25rem);
    line-height: .92;
  }

  .dm-human-warmth.single-post .dm-single > .dealsmaster-voice-card.is-compact {
    width: calc(100% - 1.5rem);
    grid-template-columns: 2.9rem minmax(0, 1fr);
    gap: .65rem .75rem;
    padding: .85rem;
  }

  .dm-human-warmth.single-post .dealsmaster-voice-card.is-compact .dealsmaster-voice-card__mark {
    width: 2.9rem;
    height: 2.9rem;
  }

  .dm-human-warmth.single-post .dealsmaster-voice-card.is-compact .dealsmaster-voice-card__descriptor {
    display: block;
    font-size: .82rem;
  }

  .dm-human-warmth .dm-site-footer .dm-footer-lead {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .dm-footer-snapshot {
    width: min(78vw, 340px);
    justify-self: center;
  }

  .dm-human-warmth .dm-site-footer .dm-footer-route {
    grid-column: auto;
  }
}

@media (max-width: 520px) {
  .dm-hero-handnote {
    padding: .78rem .85rem .78rem 1rem;
  }

  .dm-hero-human-detail {
    width: 43vw;
  }

  .dm-hero-human-detail span {
    display: none;
  }

  .dm-lived-letter__photos {
    min-height: 118vw;
  }

  .dm-lived-letter__photo figcaption {
    font-size: .66rem;
  }

  .dm-human-warmth.single-post .dm-article-meta {
    row-gap: .35rem;
  }
}

@media (max-width: 782px) {
  .dm-human-warmth .dm-site-footer .dm-footer-grid {
    grid-template-columns: 1fr;
    gap: 1.4rem;
  }

  .dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(1),
  .dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(2),
  .dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(3) {
    grid-column: 1 / -1;
    padding-bottom: .9rem;
    border-bottom: 1px solid color-mix(in srgb, var(--dm-shell-on-deep) 13%, transparent);
  }

  .dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(1) ul,
  .dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(2) ul,
  .dm-human-warmth .dm-site-footer .dm-footer-grid > nav:nth-child(3) ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 1rem;
  }

  .dm-human-warmth .dm-site-footer .dm-footer-grid > .dm-footer-practical {
    grid-template-columns: 1fr;
  }

  .dm-human-warmth .dm-site-footer .dm-footer-grid > .dm-footer-practical ul {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dm-human-warmth .dm-hero-human-detail,
  .dm-human-warmth .dm-lived-letter__aside,
  .dm-human-warmth .dm-lived-letter__photo,
  .dm-human-warmth .dm-desk-story {
    animation: none !important;
    transition: none !important;
  }

  .dm-human-warmth .dm-logo-light {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@media (forced-colors: active) {
  .dm-hero-handnote,
  .dm-hero-human-detail,
  .dm-lived-letter__aside,
  .dm-lived-letter__photo,
  .dm-footer-snapshot {
    border: 1px solid CanvasText;
    color: CanvasText;
    background: Canvas;
    box-shadow: none;
  }
}

@media print {
  .dm-lived-letter {
    color: #000;
    background: #fff;
  }

  .dm-hero-human-detail,
  .dm-footer-snapshot {
    transform: none;
    box-shadow: none;
  }
}
