/* Styles for /dare2dream/: song-river, page-song, dare2dream-page.
   Search for "── <name> ──" to find a part.
   Forum Homini website, editable IIS version v016 20261109 081746. Generated with Claude Opus 5.5. */

/* ── song-river ── */
/* Song river (Dare2Dream songs).
   Used on: /dare2dream/.
   Forum Homini website, */
.songs[data-c-song-river] {
  background: var(--night);
  color: var(--naledi);
  text-align: center;
  overflow: hidden;
}
.songs__head[data-c-song-river] {
  display: grid;
  gap: var(--s-2);
  justify-items: center;
  padding-inline: var(--margin);
}
.songs__h[data-c-song-river] {
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  font-weight: 600;
  line-height: 1.15;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
/* (6 Nov 2026) color was #fff; always overridden by css/site.css, so its value is here now */
.songs__note[data-c-song-river] {
  font-family: var(--face-text);
  font-size: var(--fs-m);
  color: #f6efe4;
}
.songs__river[data-c-song-river] {
  position: relative;
  margin-block-start: var(--s-6);
}
.songs__window[data-c-song-river] {
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
}
.songs__window[data-c-song-river]::-webkit-scrollbar {
  display: none;
}
.songs__row[data-c-song-river] {
  display: flex;
  flex: none;
  gap: var(--s-6);
  margin: 0;
  padding: var(--s-2) 0 0 var(--s-6);
  list-style: none;
}
.songs__item[data-c-song-river] {
  flex: none;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: var(--s-1);
  inline-size: clamp(190px, 18vw, 240px);
}
/* the record: the dish as its label, a gold rim, a dark groove ring and a spindle hole */
.songs__record[data-c-song-river] {
  position: relative;
  display: block;
  inline-size: 100%;
  aspect-ratio: 1;
  margin-block-end: var(--s-3);
  padding: 7%;
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      transparent 60%,
      rgb(255 255 255 / 0.05) 61%,
      transparent 62%,
      rgb(255 255 255 / 0.05) 66%,
      transparent 67%),
    #111;
  box-shadow: 0 0 0 4px #c9953f, 0 18px 40px -14px rgb(0 0 0 / 0.85);
}
.songs__pic[data-c-song-river] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.songs__hole[data-c-song-river] {
  position: absolute;
  inset: 50% auto auto 50%;
  inline-size: 8%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #0b0705;
  box-shadow: 0 0 0 2px #c9953f;
  translate: -50% -50%;
}
/* playing: the record spins (33⅓ turns a minute is too fast for the eye; one turn in 4 s), and glows */
.songs__item[data-c-song-river].is-playing .songs__record[data-c-song-river] {
  animation: songs-spin 4s linear infinite;
  box-shadow:
    0 0 0 4px #f3d792,
    0 0 40px 8px rgb(233 196 106 / 0.45),
    0 18px 40px -14px rgb(0 0 0 / 0.85);
}
@keyframes songs-spin {
  to {
    transform: rotate(360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .songs__item[data-c-song-river].is-playing .songs__record[data-c-song-river] {
    animation: none;
  }
}
.songs__kicker[data-c-song-river] {
  font-family: var(--face-text);
  font-size: var(--fs-s);
  font-weight: var(--wt-label, 600);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #e6c27a;
}
.songs__dish[data-c-song-river] {
  font-family: var(--face-display);
  font-size: var(--fs-m);
  line-height: 1.2;
  color: #fff;
}
.songs__song[data-c-song-river] {
  font-family: var(--face-text);
  font-size: var(--fs-s);
  color: #f3d792;
}
.songs__play[data-c-song-river] {
  display: inline-flex;
  align-items: center;
  gap: 0.45em;
  min-block-size: 44px;
  margin-block-start: var(--s-2);
  padding-inline: var(--s-5);
  border: 0;
  border-radius: var(--r-pill);
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  color: #1d1405;
  font-family: var(--face-text);
  font-size: var(--fs-s);
  font-weight: var(--wt-label, 600);
  cursor: pointer;
}
.songs__play[data-c-song-river]:hover {
  background:
    linear-gradient(
      180deg,
      #fff8e0,
      #f7e2a6 40%,
      #d9a74e 85%);
}
.songs__full[data-c-song-river],
.songs__full[data-c-song-river]:visited {
  display: inline-flex;
  align-items: center;
  min-block-size: 44px;
  font-family: var(--face-text);
  font-size: var(--fs-s);
  color: var(--naledi);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.songs__arrow[data-c-song-river] {
  position: absolute;
  inset-block-start: calc(clamp(190px, 18vw, 240px) / 2 - 22px);
  z-index: 2;
  display: grid;
  place-items: center;
  inline-size: 48px;
  block-size: 48px;
  border: 1.5px solid #e6c27a;
  border-radius: 50%;
  background: rgb(0 0 0 / 0.6);
  color: #f3d792;
  cursor: pointer;
}
.songs__arrow--prev[data-c-song-river] {
  inset-inline-start: var(--s-3);
}
.songs__arrow--next[data-c-song-river] {
  inset-inline-end: var(--s-3);
}
[data-c-song-river]:is(.songs__play, .songs__full, .songs__arrow, .songs__close):focus-visible {
  outline: 2px solid #f3d792;
  outline-offset: 3px;
}
/* the record, spinning, beside the video (above it on a phone) */
.songs__stage[data-c-song-river] {
  display: grid;
  grid-template-columns: clamp(140px, 18vw, 230px) 1fr;
  align-items: center;
  gap: var(--s-6);
  margin: var(--s-6) auto 0;
  padding-inline: var(--margin);
  max-inline-size: 72rem;
}
.songs__record--big[data-c-song-river] {
  margin: 0;
  animation: songs-spin 4s linear infinite;
  box-shadow:
    0 0 0 4px #f3d792,
    0 0 40px 8px rgb(233 196 106 / 0.45),
    0 18px 40px -14px rgb(0 0 0 / 0.85);
}
@media (prefers-reduced-motion: reduce) {
  .songs__record--big[data-c-song-river] {
    animation: none;
  }
}
@media (max-width: 640px) {
  .songs__stage[data-c-song-river] {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: var(--s-4);
  }
  .songs__record--big[data-c-song-river] {
    inline-size: 120px;
  }
  .songs__screen[data-c-song-river] {
    inline-size: 100%;
  }
}
.songs__stage[data-c-song-river][hidden] {
  display: none;
}
.songs__screen[data-c-song-river] {
  position: relative;
  aspect-ratio: 16 / 9;
  border: 1.5px solid #e6c27a;
  border-radius: 16px;
  background: #000;
  overflow: hidden;
  box-shadow: 0 0 50px 6px rgb(233 196 106 / 0.25);
  animation: songs-open 500ms ease;
}
@keyframes songs-open {
  from {
    opacity: 0;
    transform: scale(0.94);
  }
}

.songs__film[data-c-song-river] iframe {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  border: 0;
}
.songs__close[data-c-song-river] {
  position: absolute;
  inset-block-start: 8px;
  inset-inline-end: 8px;
  z-index: 2;
  inline-size: 44px;
  block-size: 44px;
  border: 1.5px solid #e6c27a;
  border-radius: 50%;
  background: rgb(0 0 0 / 0.7);
  color: #fff;
  font-size: var(--fs-l);
  line-height: 1;
  cursor: pointer;
}
.songs__now[data-c-song-river] {
  margin-block-start: var(--s-3);
  font-family: var(--face-text);
  font-size: var(--fs-s);
  color: #f3d792;
}
@media (max-width: 640px) {
  .songs__item[data-c-song-river] {
    inline-size: 170px;
  }
  .songs__arrow[data-c-song-river] {
    inline-size: 42px;
    block-size: 42px;
    inset-block-start: 63px;
  }
}

/* ── page-song ── */
/* Song button on a page.
   Used on: /dare2dream/.
   Forum Homini website, */
/* (owner, 2 Nov 2026: "Keep to the same format … on the top right-hand side"): the suites' film sound button exactly (video-auto.css .vx__bar, .vx__sound) */
.page-song[data-c-page-song] {
  position: fixed;
  inset-block-start: calc(var(--header-h, 80px) + 60px);
  inset-inline-end: 10px;
  z-index: 900;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 !important;
  background: none;
}
.page-song__btn[data-c-page-song] {
  display: inline-flex;
  white-space: nowrap;
  block-size: 36px;
  align-items: center;
  gap: 6px;
  min-block-size: 36px;
  padding-inline: 12px;
  border: 0;
  border-radius: 999px;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  color: #1d1405;
  font: 600 var(--fs-s)/1 var(--face-text);
  cursor: pointer;
}
.page-song__btn[data-c-page-song] svg[data-c-page-song] {
  inline-size: 18px;
  block-size: 18px;
  fill: currentColor;
}
.page-song[data-c-page-song]:not([data-sound]) .page-song__waves[data-c-page-song] {
  opacity: 0.25;
}
.page-song__btn[data-c-page-song]:focus-visible {
  outline: 2px solid #f3d792;
  outline-offset: 3px;
}

/* ── dare2dream-page ── */
/* Dare2Dream page.
   Used on: /dare2dream/.
   Forum Homini website, */
.d2-news[data-c-dare2dream-page] {
  margin: var(--gap-item) 0 0;
  text-align: center;
}
.d2-news[data-c-dare2dream-page] a[data-c-dare2dream-page] {
  color: #f3d792;
  font-family: var(--face-text);
  font-size: var(--fs-m);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.3em;
}
/* Owner (7 Oct 2026): "make sure the banner is not over the name on the photo" and "for the landing picture I want
     to see the whole photo clearly, do not cut off anything". The photo starts under the floating top bar and is
     shown whole (contain, no breathing zoom), as large as the screen allows; the night around it stays dark. */
.hero--section .hero__media {
  block-size: calc(var(--header-h) + 56px + min(75vw, 100svh - var(--header-h) - 56px)) !important;
  min-block-size: 0;
  max-block-size: none;
}
.hero__drift {
  inset-block-start: calc(var(--header-h) + 56px) !important;
}
/* Owner (8 Oct 2026): "I don't like the black line between the photo and A Dinner with a Story … can it fade to
     look like one": no edge strip, the night behind the photo the band's own, and the photo's foot fading into it */
.hero__media {
  background-color: #0b0608 !important;
}
/* the torn, wavy edge at the photo's foot goes too */
.hero__edge {
  display: none !important;
}
.hero__shade {
  background:
    linear-gradient(
      to bottom,
      transparent 62%,
      rgb(11 6 8 / 0.6) 85%,
      #0b0608 100%) !important;
}
.layer-band {
  margin-block-start: -1px;
}
.hero__art img {
  object-fit: contain !important;
  animation: none !important;
  scale: none;
}
/* Owner (8 Oct 2026): "I don't like these buttons below the landing photo: Home, Dine, Dare2Dream FUN dining" */
.layer-band__crumbs {
  display: none !important;
}
/* owner (8 Oct 2026): "don't leave such big gaps between" */
.layer-band {
  padding-block: var(--s-5) var(--s-5) !important;
}
.hero__foot {
  block-size: 6px !important;
}

.d2-swans__grid--small[data-c-dare2dream-page] {
  gap: var(--s-5);
  justify-items: center;
}
/* owner (8 Oct 2026): "place the video of the reception of swan cups below the info": one column, centred */
.d2-swans__grid--small[data-c-dare2dream-page] {
  grid-template-columns: minmax(0, 40rem);
  justify-content: center;
  text-align: center;
}
.d2-swans__photo[data-c-dare2dream-page] {
  inline-size: min(280px, 72vw);
}
.d2-swans__see[data-c-dare2dream-page] {
  max-inline-size: 32rem;
  margin-block-start: var(--s-3);
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  font-size: var(--fs-l);
  color: #f3d792;
}
.d2-swans__cutout[data-c-dare2dream-page] {
  display: block;
  inline-size: min(460px, 90%);
  block-size: auto;
  margin-inline: auto;
  filter: drop-shadow(0 18px 30px rgb(0 0 0 / 0.7)) drop-shadow(0 0 30px rgb(243 215 146 / 0.18));
}
.d2-swans__gift[data-c-dare2dream-page] {
  inline-size: min(560px, 100%);
  border-radius: 14px;
  filter: none;
  box-shadow: 0 18px 40px rgb(0 0 0 / 0.6);
}
/* (12 Oct 2026, "fonts that so big that they dont look great") a long heading: the medium size */
.d2-swans__h[data-c-dare2dream-page] {
  font-size: var(--fs-l) !important;
  line-height: 1.25;
}
/* the explanation under the heading: the italic reading line, one size smaller, not in capitals */
html body main h2.d2-swans__h:has(+ .d2-swans__sub) {
  margin-block-end: 0 !important;
}

/* close under the heading (the text column is a grid with a 24 px gap between its pieces) */

.d2-swans__sub[data-c-dare2dream-page] {
  margin-block: -14px 0;
  color: rgb(255 243 214 / 0.82);
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  font-size: var(--fs-m);
  line-height: 1.35;
}
.d2-swans__photo[data-c-dare2dream-page] img {
  border-radius: 12px;
}
/* owner (8 Oct 2026): "should the banner not be below the white top banner? It should not cover the Dare2Dream
     name on the photo": the row is fixed just under the top banner from the start, and the photo begins below it */
/* (6 Nov 2026) display was flex; always overridden by css/site.css, so its value is here now */
.d2-jump[data-c-dare2dream-page] {
  --jump-h: 52px;
  position: fixed;
  inset-inline: 0;
  inset-block-start: var(--header-offset, var(--header-h));
  transition: inset-block-start var(--t-ui, 300ms) var(--ease-out-expo, ease);
  z-index: 30;
  display: none;
  justify-content: center;
  padding: 2px var(--s-3) 0;
  pointer-events: none;
}
.d2-jump[data-c-dare2dream-page] ul[data-c-dare2dream-page] {
  display: flex;
  gap: 6px;
  max-inline-size: 100%;
  margin: 0;
  padding: 5px;
  list-style: none;
  overflow-x: auto;
  scrollbar-width: none;
  border: 1px solid rgb(201 149 63 / 0.5);
  border-radius: var(--r-pill);
  background: color-mix(in srgb, #000 72%, transparent);
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 30px -12px rgb(0 0 0 / 0.8);
  pointer-events: auto;
}
.d2-jump[data-c-dare2dream-page] ul[data-c-dare2dream-page]::-webkit-scrollbar {
  display: none;
}
.d2-jump[data-c-dare2dream-page] a[data-c-dare2dream-page] {
  display: block;
  padding: 0.45em 1em;
  border-radius: var(--r-pill);
  color: #f3d792;
  font-family: var(--face-text);
  font-size: var(--fs-small, 0.9375rem);
  font-weight: var(--wt-label, 600);
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 150ms linear, color 150ms linear;
}
/* owner (8 Oct 2026): "The music below each one is not eye catching": each song is a gold button with a play mark */
#dinner .pc__extra a,
#breakfast .pc__extra a {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  margin-block-start: var(--s-2);
  padding: 0.6em 1.3em 0.6em 1em;
  border-radius: var(--r-pill);
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  color: #1d1405;
  font-family: var(--face-text);
  font-size: var(--fs-m);
  font-weight: var(--wt-label, 600);
  text-decoration: none;
  box-shadow: 0 0 22px -4px rgb(243 215 146 / 0.55);
}
#dinner .pc__extra a::before,
#breakfast .pc__extra a::before {
  content: "\25b6";
  font-size: 0.8em;
}
#dinner .pc__extra a:hover,
#breakfast .pc__extra a:hover {
  background:
    linear-gradient(
      180deg,
      #fff8e0,
      #f7e2a6 40%,
      #d9a74e 85%);
}

/* owner (9 Oct 2026): "Where do I go back to Roots on the top banner": the switch stays at the row's left edge
     while the row slides to the part on screen */

.d2-jump__switch[data-c-dare2dream-page] {
  position: sticky;
  inset-inline-start: 0;
  z-index: 1;
  border-radius: var(--r-pill);
  background: #0b0608;
  box-shadow: 6px 0 10px -4px #0b0608;
}
/* (15 Oct 2026) two switches, ⇄ Roots and ⇄ Romantic Dinners: they scroll with the row (pinned, the second covered the first) */
.d2-jump[data-c-dare2dream-page] ul[data-c-dare2dream-page]:has(.d2-jump__switch + .d2-jump__switch) .d2-jump__switch[data-c-dare2dream-page] {
  position: static;
  box-shadow: none;
}
.d2-jump__switch[data-c-dare2dream-page] a[data-c-dare2dream-page] {
  border: 1px solid rgb(245 241 234 / 0.6);
  color: var(--naledi);
}
.d2-jump[data-c-dare2dream-page] a[data-c-dare2dream-page]:hover {
  background: rgb(243 215 146 / 0.15);
}
.d2-jump[data-c-dare2dream-page] a[data-c-dare2dream-page][aria-current=true] {
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  color: #1d1405;
}
.d2-jump[data-c-dare2dream-page] a[data-c-dare2dream-page]:focus-visible {
  outline: 2px solid #f3d792;
  outline-offset: 2px;
}
/* the shortcuts land each part just under the top banner and this row */
#night,
#story,
#dinner,
#programme,
#swan-cups,
#breakfast,
#questions {
  scroll-margin-top: calc(var(--header-h) + 60px);
}

.d2-faq__h[data-c-dare2dream-page] {
  margin-block-end: var(--s-5);
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  font-weight: 600;
  text-align: center;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.d2-faq__list[data-c-dare2dream-page] {
  max-inline-size: 46rem;
  margin-inline: auto;
  border-block-start: 1px solid rgb(201 149 63 / 0.45);
}
.d2-faq__list[data-c-dare2dream-page] details[data-c-dare2dream-page] {
  border-block-end: 1px solid rgb(201 149 63 / 0.45);
}
/* (6 Nov 2026) color was var(--naledi); always overridden by css/site.css, so its value is here now */
.d2-faq__list[data-c-dare2dream-page] summary[data-c-dare2dream-page] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--s-4);
  min-block-size: 56px;
  padding-block: var(--s-3);
  font-family: var(--face-display);
  font-size: var(--fs-l);
  color: #f6efe4;
  cursor: pointer;
  list-style: none;
}
.d2-faq__list[data-c-dare2dream-page] summary[data-c-dare2dream-page]::-webkit-details-marker {
  display: none;
}
.d2-faq__list[data-c-dare2dream-page] summary[data-c-dare2dream-page]::after {
  content: "+";
  flex: none;
  font-size: 1.5em;
  line-height: 1;
  color: #f3d792;
  transition: rotate 200ms ease;
}
.d2-faq__list[data-c-dare2dream-page] details[data-c-dare2dream-page][open] summary[data-c-dare2dream-page]::after {
  rotate: 45deg;
}
.d2-faq__list[data-c-dare2dream-page] summary[data-c-dare2dream-page]:focus-visible {
  outline: 2px solid #f3d792;
  outline-offset: 2px;
}
.d2-faq__list[data-c-dare2dream-page] details[data-c-dare2dream-page] p[data-c-dare2dream-page] {
  padding-block-end: var(--s-4);
  font-size: var(--fs-m);
  line-height: 1.6;
  color: var(--naledi);
  opacity: 0.9;
}
.d2-faq__list[data-c-dare2dream-page] a[data-c-dare2dream-page],
.d2-faq__more[data-c-dare2dream-page] a[data-c-dare2dream-page] {
  color: #f3d792;
  text-underline-offset: 0.2em;
}
/* (6 Nov 2026) color was #f3d792; always overridden by css/site.css, so its value is here now */
.d2-faq__list[data-c-dare2dream-page] details[data-c-dare2dream-page] p[data-c-dare2dream-page].d2-faq__price {
  font-family: var(--face-display);
  font-size: var(--fs-l);
  color: #f3d792;
  opacity: 1;
}
.d2-faq__more[data-c-dare2dream-page] {
  margin-block-start: var(--s-5);
  text-align: center;
  color: var(--naledi);
}
.d2-night__inner[data-c-dare2dream-page] {
  display: grid;
  justify-items: center;
  gap: var(--s-4);
  max-inline-size: 44rem;
  margin-inline: auto;
  text-align: center;
}
/* the lounge photo across the screen (owner, 9 Oct 2026) */
.d2-story[data-c-dare2dream-page] {
  text-align: center;
}
/* owner (9 Oct 2026): "don't leave big gaps": the parts around the river, the cups and the story sit closer */
#night.pr {
  padding-block: var(--s-3) var(--s-5);
}
#swan-cups {
  padding-block-start: var(--s-4) !important;
}
.d2-story {
  padding-block-start: var(--s-3);
}

.d2-story--link[data-c-dare2dream-page] {
  margin-block-start: var(--s-5);
}
section.d2-reception {
  padding-block-start: var(--s-3) !important;
}

.d2-lounge[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-3);
  margin: var(--s-7) 0 0;
  text-align: center;
}
.d2-lounge[data-c-dare2dream-page] a[data-c-dare2dream-page] {
  display: block;
}
.d2-lounge[data-c-dare2dream-page] img[data-c-dare2dream-page] {
  display: block;
  inline-size: 100%;
  block-size: auto;
  max-block-size: 80svh;
  object-fit: cover;
  mask-image:
    linear-gradient(
      to bottom,
      transparent 0,
      #000 6%,
      #000 94%,
      transparent 100%);
}
.d2-lounge[data-c-dare2dream-page] a[data-c-dare2dream-page]:focus-visible {
  outline: 2px solid #f3d792;
  outline-offset: -4px;
}
.d2-lounge[data-c-dare2dream-page] figcaption[data-c-dare2dream-page] {
  padding-inline: var(--s-4);
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  color: #f3d792;
}
.d2-where__grid[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-6);
  max-inline-size: 60rem;
  margin-inline: auto;
}
@media (min-width: 760px) {
  .d2-where__grid[data-c-dare2dream-page] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.d2-where__grid[data-c-dare2dream-page] .d2-subtitle:first-child {
  margin-block-start: 0;
}
/* owner (8 Oct 2026): "look at the odd white marks": the photos' cream backing showed at their rounded corners;
     on this page the frames are clear and rounded themselves */
main .photo__frame {
  background: transparent !important;
  border-radius: 12px;
}

.d2-dome[data-c-dare2dream-page] {
  display: grid;
  justify-items: center;
  gap: var(--s-5);
  padding: var(--s-5) var(--margin) var(--s-4);
}
/* (18 Oct 2026) the sections' spacing now follows the site-wide rule (owner-v2.css, DESIGN-RULES.md Spacing); the older
     rules for this page (8 Oct 2026: about 60 px between parts) are gone */
main .d2-where {
  padding-block-end: 0 !important;
}
/* one night all the way down: no darker-purple blocks with hard edges between the sections */
main .ground-d2d,
main .ground-night {
  background: transparent !important;
}

/* owner (8 Oct 2026): "Where and how can we place the price at the carousel": under its heading, in gold */

.d2-dome__photo[data-c-dare2dream-page] {
  inline-size: min(560px, 100%);
}
.d2-dome__photo[data-c-dare2dream-page] img {
  border-radius: 12px;
}
.d2-dome__actions {
  justify-content: center;
}

/* owner (8 Oct 2026): "do not leave such big gaps between on this section" */

.d2-ev[data-c-dare2dream-page] {
  padding: var(--s-6) var(--margin) var(--s-6);
}
.d2-ev__head[data-c-dare2dream-page] {
  display: grid;
  justify-items: center;
  gap: var(--s-3);
  max-inline-size: 46rem;
  margin: 0 auto var(--s-4);
  text-align: center;
}
.d2-ev__h[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  font-weight: 600;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.d2-ev__hint[data-c-dare2dream-page] {
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  font-size: var(--fs-l);
  color: #f3d792;
}
@media (prefers-reduced-motion: no-preference) {
  section:not([data-ev-seen]) .d2-ev__hint--tap[data-c-dare2dream-page] {
    animation: d2-icon-flip 3.2s cubic-bezier(0.6, 0, 0.3, 1) infinite;
  }
  section:not([data-ev-seen]) .d2-ev__tab[data-c-dare2dream-page] {
    animation: d2-tab-wave 4.8s ease-in-out infinite;
  }
  section:not([data-ev-seen]) .d2-ev__tab[data-c-dare2dream-page]:nth-child(2) {
    animation-delay: 0.6s;
  }
  section:not([data-ev-seen]) .d2-ev__tab[data-c-dare2dream-page]:nth-child(3) {
    animation-delay: 1.2s;
  }
  section:not([data-ev-seen]) .d2-ev__tab[data-c-dare2dream-page]:nth-child(4) {
    animation-delay: 1.8s;
  }
  @keyframes d2-tab-wave {
    0%, 30%, 100% {
      box-shadow: 0 0 0 0 rgb(243 215 146 / 0);
      scale: 1;
    }
    15% {
      box-shadow: 0 0 0 4px rgb(243 215 146 / 0.35), 0 0 22px rgb(243 215 146 / 0.7);
      scale: 1.08;
    }
  }
}
/* owner (9 Oct 2026): "make it the same as the red banner for turn the book over but in the turquoise": a
     turquoise pill with dark words, turning now and then like the book's button */
.d2-ev__hint[data-c-dare2dream-page].d2-ev__hint--tap {
  display: inline-flex;
  align-items: center;
  min-block-size: 44px;
  margin-block-start: var(--s-2);
  padding-inline: var(--s-5);
  border-radius: var(--r-pill);
  background: #39d5c5;
  color: #0b0608;
  box-shadow: 0 8px 20px -10px rgb(57 213 197 / 0.8);
  font-family: var(--face-text);
  font-style: normal;
  font-size: var(--fs-button);
  font-weight: var(--wt-label);
}
html:not(.js) .d2-ev__hint[data-c-dare2dream-page] {
  display: none;
}
.d2-ev__note--foot[data-c-dare2dream-page] {
  max-inline-size: 46rem;
  margin: var(--s-5) auto 0;
  text-align: center;
}
/* owner (12 Oct 2026): "Why is this font different to the rest: Starting times can change with the seasons … Dont have
     too many different sizes": the plain small letters become the page's own italic at reading size, as the other notes */
.d2-ev__note[data-c-dare2dream-page].d2-ev__note--foot {
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  font-size: var(--fs-body);
  opacity: 1;
}
/* three golds (owner, 12 Oct 2026): different sentences one under another each in their own shade */
.d2-lede[data-c-dare2dream-page].d2-gold-pale {
  color: #fff3cf;
}
.d2-lede[data-c-dare2dream-page].d2-gold-deep {
  color: #d4a24c;
}
/* the same look as the white "Staying over?" line under the dinner carousels (PlateCarousel .pc__price-note) */
/* (6 Nov 2026) color was #fff; always overridden by css/site.css, so its value is here now */
.d2-same-note[data-c-dare2dream-page] {
  margin-block-start: var(--s-4);
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  font-size: var(--fs-m);
  color: #f6efe4;
}
.d2-ev__note[data-c-dare2dream-page] {
  font-size: var(--fs-small, 0.9375rem);
  color: var(--naledi);
  opacity: 0.85;
}
.d2-ev__stage[data-c-dare2dream-page] {
  max-inline-size: 64rem;
  margin: 0 auto;
}
/* only the stop that is showing takes space (so a photo leaves no empty night under it); it zooms in as it
     appears */
.d2-ev__stops[data-c-dare2dream-page] {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
}
.d2-ev__stop[data-c-dare2dream-page] {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: var(--s-3);
  text-align: center;
}
html.js .d2-ev__stop[data-c-dare2dream-page]:not(.is-on) {
  display: none;
}
@media (prefers-reduced-motion: no-preference) {
  .d2-ev__stop[data-c-dare2dream-page].is-on {
    animation: d2-ev-in 900ms cubic-bezier(0.2, 0.8, 0.3, 1) both;
  }
}
@keyframes d2-ev-in {
  from {
    opacity: 0;
    transform: scale(0.88);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

.d2-ev__times[data-c-dare2dream-page] {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--s-3);
  margin-block-end: var(--s-4);
}
.d2-ev__tab[data-c-dare2dream-page] {
  min-block-size: 48px;
  padding-inline: var(--s-5);
  border: 1.5px solid #c9953f;
  border-radius: var(--r-pill);
  background: transparent;
  color: #f3d792;
  font-family: var(--face-display);
  font-size: var(--fs-l);
  cursor: pointer;
  transition: background-color 150ms linear, color 150ms linear;
}
.d2-ev__tab[data-c-dare2dream-page]:hover {
  background: rgb(243 215 146 / 0.15);
}
.d2-ev__tab[data-c-dare2dream-page][aria-pressed=true] {
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  color: #1d1405;
}
.d2-ev__tab[data-c-dare2dream-page]:focus-visible {
  outline: 3px solid #f3d792;
  outline-offset: 3px;
}
html:not(.js) .d2-ev__times[data-c-dare2dream-page] {
  display: none;
}
.d2-ev__meta[data-c-dare2dream-page] {
  display: grid;
  justify-items: center;
  gap: var(--s-2);
}
html.js .d2-ev__time[data-c-dare2dream-page] {
  display: none;
}
.d2-ev__time[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  line-height: 1;
  color: #f3d792;
  text-shadow: 0 0 18px rgb(243 215 146 / 0.4);
}
/* (6 Nov 2026) color was var(--naledi); always overridden by css/site.css, so its value is here now */
.d2-ev__title[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-l);
  font-weight: 600;
  line-height: 1.15;
  color: #f6efe4;
}
.d2-ev__song[data-c-dare2dream-page] {
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  font-size: var(--fs-l);
  color: #f3d792;
}
.d2-ev__text[data-c-dare2dream-page] {
  font-size: var(--fs-m);
  line-height: 1.55;
  color: var(--naledi);
  opacity: 0.9;
}
.d2-ev__media[data-c-dare2dream-page] {
  justify-self: center;
  inline-size: 100%;
}
.d2-ev__media--wide[data-c-dare2dream-page] {
  max-inline-size: 600px;
}
.d2-ev__media--wide[data-c-dare2dream-page] img {
  border-radius: 12px;
}
.d2-ev__media--tall[data-c-dare2dream-page] {
  max-inline-size: min(300px, 70vw);
}
.d2-ev__video[data-c-dare2dream-page] {
  display: block;
  inline-size: 100%;
  aspect-ratio: 9 / 16;
  object-fit: cover;
  border-radius: 12px;
  background: #000;
  box-shadow: 0 24px 50px -20px rgb(0 0 0 / 0.9);
}
/* Owner (8 Oct 2026): "Change the colour of the buttons to a pink and the enquire to turquoise to match the photo":
     Enquire (top bar, phone bar, the enquiry band) takes the dome's turquoise; Book a table and the page's buttons
     the pink of the Dare2Dream sign. Dark words on both (contrast above 7:1). */
html[data-layer] {
  --copper: #39d5c5;
  --copper-hover: #6be3d6;
  --on-copper: #03211e;
  --d2-pink: #ff5cbf;
  --d2-pink-hover: #ff85cf;
  --d2-on-pink: #1d0414;
}
/* Owner (8 Oct 2026, later): "Change the top buttons to black with the writing in the different colours to match
     the pic": the top bar's and phone bar's Enquire black with turquoise words, Book a table black with pink words */
.site-header .site-header__book,
.site-header .site-header__book:visited,
.dock .dock__book,
.dock .dock__book:visited {
  background-color: #000 !important;
  border: 1.5px solid var(--d2-pink) !important;
  color: var(--d2-pink);
}
/* owner (17 Oct 2026): "I dont like the turquoise around the enquire button on D2D": Enquire is the site's gold, as on
     every other page (the turquoise outline, words and hover are gone) */
html .site-header .enq__btn,
html .dock .dock__enquire {
  background-image:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%) !important;
  color: #1d1405 !important;
}
.dock .dock__book {
  border-radius: var(--r-pill);
}
.site-header .site-header__book:hover,
.dock .dock__book:hover {
  background-color: rgb(255 92 191 / 0.18) !important;
}
/* the page's own buttons (Reserve a table, Call, Explore the suites, Book a suite): gold pills (owner, 8 Oct 2026:
     "only have gold buttons in the section, except for the two black buttons on the top banner"; they were pink) */
.d2-actions .ha__link,
.d2-actions .ha__link:visited {
  padding-inline: var(--s-5);
  border-radius: var(--r-pill);
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  color: #1d1405;
}
.d2-actions .ha__link:hover {
  background:
    linear-gradient(
      180deg,
      #fff8e0,
      #f7e2a6 40%,
      #d9a74e 85%);
}
/* the carousels' arrows and the enquiry band's buttons in gold too */
.pc .pc__arrow {
  border-color: #c9953f !important;
  color: #f3d792 !important;
}
.enq .enq__choice--primary,
.enq .enq__choice--primary:visited {
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%) !important;
  border-color: #c9953f !important;
  color: #1d1405 !important;
}
.enq .enq__choice:not(.enq__choice--primary) {
  border-color: #c9953f !important;
  color: #f3d792 !important;
}
.d2-actions .ha__link-text {
  text-decoration: none;
}
/* Owner (8 Oct 2026): option B, "neon glow", for the band under the photo (was A, fairy lights; before that the
     striped pattern and wiggly edge): the soft pink glow of the Dare2Dream sign from above, a violet glow low on the
     right, and a pink neon line at the foot. In it: "A Dinner with a Story" big in gold, "A memoir you can taste." */
.layer-band {
  background:
    linear-gradient(
      to bottom,
      #0b0608 0%,
      rgb(11 6 8 / 0) 50%),
    radial-gradient(
      ellipse 55% 110% at 30% 70%,
      rgb(124 58 237 / 0.42),
      transparent 70%),
    radial-gradient(
      ellipse 55% 110% at 72% 75%,
      rgb(57 213 197 / 0.3),
      transparent 70%),
    #0b0608 !important;
}
.layer-band--pattern::before {
  display: none !important;
}
.hero__foot {
  background-color: #0b0608 !important;
}
/* owner (8 Oct 2026): "Lets try the colour of the dome, neon line below my name" (the pink one was taken out) */
/* the double rule: two hairlines 5px apart, fading at both ends */
.hero__foot::after {
  inset: auto 0 0 !important;
  block-size: 3px;
  -webkit-mask: none !important;
  mask: none !important;
  background: #39d5c5 !important;
  box-shadow: 0 0 12px 3px rgb(57 213 197 / 0.85), 0 0 30px 6px rgb(57 213 197 / 0.4);
}
/* Owner (8 Oct 2026): "A Dinner with a Story" on the photo, at its foot below the stairs, the same size as before */
.hero__phototitle {
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 2px 14px rgb(0 0 0 / 0.9)) drop-shadow(0 0 22px rgb(243 215 146 / 0.3));
}
@media (max-width: 640px) {
  .hero__phototitle {
    font-size: var(--fs-xl);
    white-space: nowrap;
    inset-inline: var(--s-3);
  }
}
/* "by Karina Marais" under the title. owner (21 Oct 2026): "I dont like the font used for my name" (it showed in the plain
     reading font): her name in the heading face, white, as a name (style 3) */
html body main p.layer-band__tagline.layer-band__tagline {
  font-family: var(--face-display) !important;
  font-style: italic !important;
  font-size: calc(var(--fs-l) * 1.08) !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.01em !important;
  max-inline-size: none;
  margin-block-start: var(--s-2);
  text-align: center;
  justify-self: stretch;
  background: none !important;
  color: #f6efe4 !important;
  -webkit-text-fill-color: currentColor;
  filter: none;
}

.d2-intro[data-c-dare2dream-page] {
  display: grid;
  justify-items: center;
  gap: var(--s-4);
  padding: var(--s-7) var(--margin) 0;
  text-align: center;
  background:
    radial-gradient(
      ellipse 55% 60% at 30% 0%,
      rgb(124 58 237 / 0.28),
      transparent 75%),
    radial-gradient(
      ellipse 55% 60% at 72% 0%,
      rgb(57 213 197 / 0.2),
      transparent 75%);
}
/* owner: "the same font and gold but a little smaller" (as "A Dinner with a Story"); "don't write my book name and
     musical memoir in capitals"; "all the different sizes and fonts don't look great": one display face, gold */
.d2-intro__kicker[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.01em;
  text-wrap: balance;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
/* the book beside the words (wide screens), above them (phones) */
.d2-intro__words[data-c-dare2dream-page] {
  display: grid;
  justify-items: center;
  gap: var(--s-4);
}
.d2-book[data-c-dare2dream-page] {
  margin-block-start: var(--s-5);
  display: grid;
  justify-items: center;
  gap: var(--s-4);
  perspective: 1400px;
}
.d2-book__turn[data-c-dare2dream-page] {
  position: relative;
  inline-size: clamp(200px, 22vw, 300px);
  aspect-ratio: 1200 / 1862;
  transform-style: preserve-3d;
  transition: transform 900ms cubic-bezier(0.3, 0.7, 0.2, 1);
}
.d2-book[data-c-dare2dream-page].is-flipped .d2-book__turn[data-c-dare2dream-page] {
  transform: rotateY(180deg);
}
.d2-book__face[data-c-dare2dream-page] {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: 3px 8px 8px 3px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  box-shadow: 0 30px 60px -20px rgb(0 0 0 / 0.9), 0 0 40px -6px rgb(150 90 255 / 0.45);
}
.d2-book__face[data-c-dare2dream-page] img[data-c-dare2dream-page] {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
}
.d2-book__back[data-c-dare2dream-page] {
  transform: rotateY(180deg);
}
/* (6 Nov 2026) min-block-size was 44px; always overridden by css/site.css, so its value is here now */
.d2-book__flip[data-c-dare2dream-page] {
  display: inline-flex;
  align-items: center;
  gap: var(--s-2);
  min-block-size: 36px;
  padding-inline: var(--s-5);
  border: 0;
  border-radius: var(--r-pill);
  background: #b0102e;
  color: #f5f1ea;
  box-shadow: 0 8px 20px -10px rgb(176 16 46 / 0.7);
  font-family: var(--face-text);
  font-size: var(--fs-button);
  font-weight: var(--wt-label);
  cursor: pointer;
  transition: background-color 150ms linear;
}
@media (prefers-reduced-motion: no-preference) {
  .d2-book__flip[data-c-dare2dream-page] {
    animation: d2-icon-flip 3.2s cubic-bezier(0.6, 0, 0.3, 1) infinite;
  }
}
@keyframes d2-icon-flip {
  0%, 55% {
    transform: perspective(500px) rotateY(0);
  }
  to {
    transform: perspective(500px) rotateY(360deg);
  }
}

.d2-book__flip[data-c-dare2dream-page]:hover {
  background: #7e0a21;
}
.d2-book__flip[data-c-dare2dream-page]:focus-visible {
  outline: 3px solid #f3d792;
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  .d2-book__turn[data-c-dare2dream-page] {
    transition: none;
  }
}
/* "A Musical Memoir" on its own line, in the dome's turquoise */
.d2-intro__sub[data-c-dare2dream-page] {
  margin-block-start: calc(-1 * var(--s-2));
  font-family: var(--face-display);
  font-size: var(--fs-l);
  line-height: 1.1;
  color: #39d5c5;
  text-shadow: 0 0 16px rgb(57 213 197 / 0.5);
}
/* owner (8 Oct 2026): "If the circle for each is shown I still need to see a little more of the carousel on the
     sides": a smaller big circle and a wider ring on this carousel */
#dinner.pc {
  padding-block-start: var(--s-5);
  --spot: min(50svh, 58vw, 560px);
}
@media (max-width: 640px) {
  #dinner.pc {
    --spot: min(66vw, 46svh);
  }
}

.d2-nowrap[data-c-dare2dream-page] {
  white-space: nowrap;
}
/* owner (8 Oct 2026): "change the font of comes alive … it doesn't fit": the display face of the headings, cream */
.d2-intro__lede[data-c-dare2dream-page] {
  max-inline-size: 40ch;
  font-family: var(--face-display);
  font-size: var(--fs-l);
  line-height: 1.35;
  color: var(--naledi);
  text-wrap: balance;
}
.d2-intro__each[data-c-dare2dream-page] {
  margin-block-start: calc(-1 * var(--s-2));
  font-family: var(--face-display);
  font-size: var(--fs-l);
  line-height: 1.2;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.d2-intro__memoir[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  line-height: 1.1;
  white-space: nowrap;
  background:
    linear-gradient(
      180deg,
      #fff3cf,
      #f3d792 40%,
      #c9953f 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.d2-intro[data-c-dare2dream-page] .d2-intro__lede[data-c-dare2dream-page] {
  margin-block-start: calc(-1 * var(--s-2));
  font-size: var(--fs-l);
}
/* owner (21 Oct 2026): "use this font: comes alive through all five senses in an on all the white text on d2d. Keep them
     the same size": the staying-over notes, the songs' credit line, the evening hints and note, the Swan Cups heading and
     line, all in the heading face, white, one size */
/* (6 Nov 2026) -webkit-text-fill-color was currentColor; always overridden by dare2dream/dare2dream-page.css, so its value is here now */
/* (6 Nov 2026) -webkit-text-fill-color was #fff; always overridden by dare2dream/dare2dream-page.css, so its value is here now */
html[data-page="/dare2dream/"] body main :is(p.d2-intro__lede, p.pc__price-note, p.songs__note, p.d2-ev__hint, p.d2-ev__note--foot, p.d2-same-note, h2.d2-swans__h, p.d2-lede.d2-gold-pale),
html body main p.d2-intro__lede.d2-intro__lede {
  font-family: var(--face-display) !important;
  font-style: italic !important;
  font-size: calc(var(--fs-l) * 1.08) !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.01em !important;
  color: #f6efe4 !important;
  -webkit-text-fill-color: #fff;
  background: none !important;
}

.d2-intro__menu[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-l);
  line-height: 1.2;
  margin-block-start: calc(-1 * var(--s-3));
}
.d2-intro__menu[data-c-dare2dream-page] em[data-c-dare2dream-page] {
  font-family: var(--face-italic, inherit);
  font-style: italic;
}
/* (12 Oct 2026, the four sizes) the big headings' size; it may break onto two lines on a phone */
/* (6 Nov 2026) text-shadow was 0 0 16px rgb(243 215 146 / 0.45); always overridden by css/site.css, so its value is here now */
.d2-intro__big[data-c-dare2dream-page] {
  font-size: var(--fs-xl);
  color: #f3d792;
  text-shadow: none;
}
@media (max-width: 640px) {
  .d2-intro__big[data-c-dare2dream-page].d2-nowrap {
    white-space: normal;
  }
}
.d2-intro__lede[data-c-dare2dream-page] em[data-c-dare2dream-page] {
  font-family: var(--face-italic, inherit);
  font-style: italic;
}
.d2-intro__trio[data-c-dare2dream-page] {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  gap: 0.15em;
  margin-block-start: var(--s-4);
  font-family: var(--face-italic, var(--face-display));
  font-style: italic;
  font-size: var(--fs-xl);
  line-height: 1.1;
}
/* owner (8 Oct 2026): "A tale in purple, A song in pink and A taste in turquoise" */
.d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page] {
  transition: color 700ms ease, text-shadow 700ms ease;
}
.d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page]:nth-child(1) {
  color: #b98cff;
  text-shadow: 0 0 22px rgb(150 90 255 / 0.65);
}
.d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page]:nth-child(2) {
  color: #ff5cbf;
  text-shadow: 0 0 22px rgb(255 60 180 / 0.6);
}
.d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page]:nth-child(3) {
  color: #39d5c5;
  text-shadow: 0 0 22px rgb(57 213 197 / 0.6);
}
@media (prefers-reduced-motion: no-preference) {
  .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page] {
    display: inline-block;
    animation: d2-breathe 3.2s ease-in-out infinite;
  }
}
@keyframes d2-breathe {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.12);
  }
}

/* (6 Nov 2026) letter-spacing was var(--tr-label, 0.12em); always overridden by css/site.css, so its value is here now */

/* (6 Nov 2026) text-transform was uppercase; always overridden by css/site.css, so its value is here now */

/* (6 Nov 2026) color was var(--eyebrow); always overridden by css/site.css, so its value is here now */

.d2-eyebrow[data-c-dare2dream-page] {
  margin-block-end: var(--s-3);
  color: #e6c27a;
  font-size: var(--fs-label, 0.8125rem);
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.d2-title[data-c-dare2dream-page] {
  font-size: var(--fs-xl);
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--heading);
  text-wrap: balance;
}
.d2-subtitle[data-c-dare2dream-page] {
  margin-block: var(--s-6) var(--s-2);
  font-size: var(--fs-h3);
  color: var(--heading);
}
.d2-lede[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-l);
  line-height: 1.3;
  color: var(--heading);
}
.d2-small[data-c-dare2dream-page],
.d2-caption[data-c-dare2dream-page] {
  font-size: var(--fs-small, 0.875rem);
  color: var(--fg-muted);
}
.d2-caption[data-c-dare2dream-page] {
  margin-block-start: var(--s-3);
}
.d2-story__text[data-c-dare2dream-page],
.d2-swans__text[data-c-dare2dream-page],
.d2-evening__text[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-5);
  align-content: start;
  max-inline-size: 38rem;
}
.d2-story__text[data-c-dare2dream-page] p[data-c-dare2dream-page]:not([class]),
.d2-swans__text[data-c-dare2dream-page] p[data-c-dare2dream-page]:not([class]),
.d2-visit[data-c-dare2dream-page] p[data-c-dare2dream-page]:not([class]) {
  font-size: var(--fs-body-long);
  line-height: var(--lh-body);
}
.d2-actions[data-c-dare2dream-page] {
  margin-block-start: var(--s-4);
}
.d2-story__grid[data-c-dare2dream-page],
.d2-dress__grid[data-c-dare2dream-page],
.d2-evening__grid[data-c-dare2dream-page],
.d2-swans__grid[data-c-dare2dream-page],
.d2-visit__grid[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-8);
  align-items: center;
}
.d2-story__film[data-c-dare2dream-page] {
  justify-self: center;
  inline-size: min(100%, 30rem);
}
.d2-dress[data-c-dare2dream-page] .d2-notes {
  margin-block-start: var(--s-6);
}
/* The evening: four times down a lilac line */
.d2-times[data-c-dare2dream-page] {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  border-inline-start: 1px solid var(--rule);
}
.d2-times[data-c-dare2dream-page] li[data-c-dare2dream-page] {
  display: grid;
  grid-template-columns: 5.5rem 1fr;
  gap: var(--s-4);
  align-items: baseline;
  padding: var(--s-4) 0 var(--s-4) var(--s-5);
  border-block-end: 1px solid var(--rule);
}
.d2-times__time[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: clamp(1.5rem, 1.2rem + 1vw, 2.25rem);
  color: var(--lilac);
  font-variant-numeric: tabular-nums;
}
.d2-times__what[data-c-dare2dream-page] {
  font-size: var(--fs-body-long);
}
.d2-clip--menu[data-c-dare2dream-page] {
  margin-block-end: var(--s-9);
}
.d2-clip[data-c-dare2dream-page] {
  margin: 0;
  justify-self: center;
  inline-size: min(100%, 380px);
}
.d2-clip__video[data-c-dare2dream-page] {
  display: block;
  inline-size: 100%;
  aspect-ratio: 956 / 1700;
  background: var(--night);
}
.d2-evening__row[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-7);
  margin-block-start: var(--section-pad, var(--s-10));
}
/* The acts: a grid of cards, each a photo or a film, then the story */
.d2-menu__head[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-4);
  max-inline-size: 44rem;
  margin-block-end: var(--s-9);
}
.d2-acts[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-9) var(--gutter);
  margin: 0;
  padding: 0;
  list-style: none;
}
.d2-act[data-c-dare2dream-page] {
  display: grid;
  align-content: start;
  gap: var(--s-3);
}
.d2-act__media[data-c-dare2dream-page] {
  margin-block-end: var(--s-4);
}
.d2-act__n[data-c-dare2dream-page] {
  color: var(--lilac);
  font-size: var(--fs-label, 0.8125rem);
  letter-spacing: var(--tr-label, 0.12em);
  text-transform: uppercase;
}
.d2-act__dish[data-c-dare2dream-page] {
  font-size: var(--fs-l);
  line-height: 1.1;
  color: var(--heading);
}
.d2-act__story[data-c-dare2dream-page] {
  font-size: var(--fs-body-long);
  line-height: var(--lh-body);
}
.d2-act__chapter[data-c-dare2dream-page] {
  color: var(--fg-muted);
}
.d2-act__song[data-c-dare2dream-page] {
  color: var(--lilac);
  font-family: var(--face-display);
  font-style: italic;
}
/* (6 Nov 2026) color was var(--lilac); always overridden by css/site.css, so its value is here now */
.d2-price[data-c-dare2dream-page] {
  font-family: var(--face-display);
  font-size: var(--fs-xl);
  color: #f3d792;
  line-height: 1;
}
.d2-drive[data-c-dare2dream-page] {
  display: grid;
  gap: var(--s-2);
  margin: 0;
  padding: 0;
  list-style: none;
  max-inline-size: 22rem;
}
.d2-drive[data-c-dare2dream-page] li[data-c-dare2dream-page] {
  display: flex;
  justify-content: space-between;
  padding-block: var(--s-2);
  border-block-end: 1px solid var(--rule);
}
/* (6 Nov 2026) color was var(--link); always overridden by css/site.css, so its value is here now */
.d2-visit[data-c-dare2dream-page] a[data-c-dare2dream-page],
.d2-visit[data-c-dare2dream-page] a[data-c-dare2dream-page]:visited {
  color: #b98cff;
}
@media (min-width: 641px) {
  .d2-acts[data-c-dare2dream-page],
  .d2-evening__row[data-c-dare2dream-page] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1025px) {
  .d2-story__grid[data-c-dare2dream-page] {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  }
  .d2-dress__grid[data-c-dare2dream-page] {
    max-inline-size: 48rem;
  }
  .d2-evening__grid[data-c-dare2dream-page] {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  }
  /* (6 Nov 2026) grid-template-columns was minmax(0, 5fr) minmax(0, 7fr); always overridden by dare2dream/dare2dream-page.css, so its value is here now */
  .d2-swans__grid[data-c-dare2dream-page] {
    grid-template-columns: minmax(0, 40rem);
  }
  .d2-visit__grid[data-c-dare2dream-page] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }
  .d2-acts[data-c-dare2dream-page],
  .d2-evening__row[data-c-dare2dream-page] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  /* Every other card steps down a little: a menu that moves like a walk through the forest */
  .d2-acts[data-c-dare2dream-page] .d2-act[data-c-dare2dream-page]:nth-child(3n+2) {
    margin-block-start: var(--s-9);
  }
}
@layer effects {
  @media screen and (prefers-reduced-motion: no-preference) {
    @supports (animation-timeline: view()) {
      .d2-zoom[data-c-dare2dream-page] {
        overflow: hidden;
      }
      .d2-zoom[data-c-dare2dream-page] img {
        animation: d2-zoom linear both;
        animation-timeline: view();
        animation-range: cover;
      }
      @keyframes d2-zoom {
        0% {
          transform: scale(1.18);
        }
        55% {
          transform: scale(1);
        }
        100% {
          transform: scale(1.06);
        }
      }
    }
  }
}
@media (max-width: 640px) {
  html[data-page="/dare2dream/"] body main .hero.hero--section .hero__media.hero__media {
    block-size: calc(var(--header-h) + 56px + 96px + 75vw) !important;
    max-block-size: none !important;
  }
  html[data-page="/dare2dream/"] body main .hero.hero--section .hero__frame {
    block-size: 100% !important;
    overflow: visible !important;
  }
  html body main .hero__drift {
    inset-block: calc(var(--header-h) + 56px + 96px) auto !important;
    block-size: 75vw;
  }
  html body main .hero__art,
  html body main .hero__art img {
    display: block;
    inline-size: 100vw !important;
    block-size: 75vw !important;
  }
  html body main .hero__art img {
    object-fit: cover !important;
    -webkit-mask-image:
      linear-gradient(
        to bottom,
        transparent,
        #000 14%,
        #000 76%,
        transparent);
    mask-image:
      linear-gradient(
        to bottom,
        transparent,
        #000 14%,
        #000 76%,
        transparent);
  }
  html body main .hero__shade {
    display: none;
  }
  /* (owner, 31 Oct 2026: "have the black go over in that purple … before you get to the line"): the violet and turquoise of the band under her name, here above the top line */
  html[data-page="/dare2dream/"] body main .hero.hero--section .hero__media.hero__media {
    background:
      radial-gradient(
        62% 120px at 18% calc(var(--header-h) + 140px),
        rgb(112 48 200 / 0.62),
        transparent 100%),
      radial-gradient(
        52% 100px at 88% calc(var(--header-h) + 140px),
        rgb(57 213 197 / 0.26),
        transparent 100%),
      #0b0608 !important;
  }
  html body main .hero__phototitle {
    inset-block: calc(var(--header-h) + 56px - 7px) auto !important;
    overflow: visible;
  }
  /* (owner, 31 Oct 2026: "that glow turquoise line … Dinner with a Story, and then another glow line … this is now theater"): one neon line under the title, the title centred above it (the line above it taken out, her word) */
  html body main .hero__phototitle::after {
    content: "";
    position: absolute;
    inset-inline: -16px;
    block-size: 3px;
    background: #39d5c5;
    box-shadow: 0 0 12px 3px rgb(57 213 197 / 0.85), 0 0 30px 6px rgb(57 213 197 / 0.4);
  }
  html body main .hero__phototitle::after {
    inset-block-end: -59px;
  }
  html body main .layer-band {
    -webkit-mask-image:
      linear-gradient(
        to bottom,
        transparent,
        #000 45%);
    mask-image:
      linear-gradient(
        to bottom,
        transparent,
        #000 45%);
  }
}

@media (max-width: 640px) {
  .d2-intro[data-c-dare2dream-page] {
    position: relative;
    background:
      radial-gradient(
        62% 130px at 26% 0,
        rgb(112 48 200 / 0.55),
        transparent 100%),
      radial-gradient(
        52% 110px at 80% 0,
        rgb(57 213 197 / 0.24),
        transparent 100%);
  }
  .d2-intro__words[data-c-dare2dream-page] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
    padding-inline: var(--margin, 20px);
  }
  /* (owner, 31 Oct 2026: "that it reads like a sentence"): the memoir line first, then the gold line, in the page's own order */
  .d2-intro__menu[data-c-dare2dream-page] {
    margin: 30px 0 0;
  }
  /* (owner, same night: "11 course fun dining in one line", gold; "Her musical memoir comes alive through all five senses … in italics in white") */
  .d2-intro__menu[data-c-dare2dream-page],
  .d2-intro__big[data-c-dare2dream-page] {
    font-size: min(6.9vw, 1.7rem) !important;
    line-height: 1.12 !important;
    white-space: nowrap !important;
  }
  .d2-intro__memoir[data-c-dare2dream-page],
  .d2-intro__lede[data-c-dare2dream-page] {
    margin: 0 !important;
    font-family: var(--face-display) !important;
    font-style: italic !important;
    font-size: 1.3rem !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    letter-spacing: 0;
    text-transform: none;
    color: #fff;
    -webkit-text-fill-color: #fff;
    background: none;
  }
  .d2-intro__memoir[data-c-dare2dream-page] {
    margin-block-start: 10px !important;
  }
  .d2-intro__inan[data-c-dare2dream-page] br[data-c-dare2dream-page] {
    display: none;
  }
  .d2-intro__trio[data-c-dare2dream-page] {
    order: 3;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 16px;
    margin-block: 18px 2px !important;
  }
  .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page] {
    font-size: 1.45rem;
    white-space: nowrap;
  }
  .d2-intro__each[data-c-dare2dream-page] {
    order: 4;
    margin-block-start: 2px !important;
  }
}
/* (owner, 31 Oct 2026: "What if we make the golden glow around the book?"): the carousels' gold glow, on the book */
.d2-book__face[data-c-dare2dream-page] {
  box-shadow: 0 0 48px 8px rgb(233 196 106 / 0.52), 0 24px 50px -14px rgb(0 0 0 / 0.85);
}
@media (max-width: 640px) {
  .d2-ev__times[data-c-dare2dream-page] {
    margin-block-end: 30px !important;
  }
  .d2-ev__meta[data-c-dare2dream-page] {
    margin-block-end: 26px;
  }
  .d2-ev__media[data-c-dare2dream-page] {
    margin-block-start: 0 !important;
    margin-block-end: 14px !important;
  }
}
/* (owner, 31 Oct 2026: "The set of swan cups … should not be in italics"; "the ebook and audiobook … a completely different font"): the heading upright,
     the ebook line in our heading font, gold, with the purple online */
html body main h2#d2-swans-h.d2-swans__h {
  font-style: normal !important;
}
html body main p.d2-lede.d2-ebook,
html body main p.d2-lede.d2-ebook a {
  font-family: var(--face-display) !important;
  font-style: italic !important;
  font-weight: 500 !important;
}

@media (max-width: 640px) {
  .d2-intro__memoir[data-c-dare2dream-page] {
    margin-block-start: 0 !important;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] {
    margin-block-start: 30px !important;
    gap: 20px;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page] {
    display: inline-block;
    animation: d2-trio-swell 3.6s ease-in-out infinite !important;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page]:nth-child(2) {
    animation-delay: 1.2s !important;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page]:nth-child(3) {
    animation-delay: 2.4s !important;
  }
  @keyframes d2-trio-swell {
    0%, 33%, 100% {
      transform: scale(1);
    }
    16% {
      transform: scale(1.2);
    }
  }
}
/* (owner, 31 Oct 2026: "the gap before the evening is far too big"): the one section gap, phone and laptop */
html body main #songs.songs {
  padding-block-end: 40px !important;
}
html body main section#programme {
  padding-block-start: 8px !important;
}
/* (owner, 31 Oct 2026: "That should be a different font"): the room rate line in the reading font, upright and white, so it never reads as a dish */
html[data-page="/dare2dream/"] body main section#dinner p.pc__price-note.pc__price-note--below {
  font-family: var(--face-text) !important;
  font-style: normal !important;
  font-size: var(--fs-m, 1rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #f6efe4 !important;
  -webkit-text-fill-color: #f6efe4 !important;
}
/* (owner, 31 Oct 2026: "the carousel is going over the evening section. You have to have a gap there") */
html body main #songs .songs__window {
  overflow: hidden;
  padding-block-end: 8px;
}
/* (owner, 31 Oct 2026: "use the same type of font for the sentence below it"; "a little bit space between click on a time … and the time") */
html body main p.d2-swans__sub.d2-swans__sub {
  font-family: var(--face-display) !important;
  font-style: normal !important;
  font-size: calc(var(--fs-l) * 1.05) !important;
  font-weight: 500 !important;
  color: #f6efe4;
  -webkit-text-fill-color: #f6efe4;
}

.d2-ev__times[data-c-dare2dream-page] {
  margin-block-start: 24px !important;
}
/* (owner, 31 Oct 2026: "the price, then a smaller gap, then the photo, then a bigger gap … symbols of a lifelong bond … a little bit bigger gap before and after") */
.d2-swans__text[data-c-dare2dream-page] .d2-lounge[data-c-dare2dream-page] {
  margin-block: 20px 0;
}
html body main .d2-swans__text[data-c-dare2dream-page] .d2-price[data-c-dare2dream-page] {
  margin-block-end: 0;
}
html body main p.d2-swans__sub.d2-swans__sub {
  margin-block: 36px;
}

.d2-swans__text[data-c-dare2dream-page] .d2-swans__gift[data-c-dare2dream-page] {
  margin-block-start: 0;
}
/* (owner, 31 Oct 2026: "Take out the glow … the words in red … It's still going to swirl"): no glow, no pill colour, the words red, its turn kept */
html body main p.d2-ev__hint.d2-ev__hint--tap.d2-ev__hint--tap {
  background: none !important;
  box-shadow: none;
  filter: none;
  color: #f0485a !important;
  -webkit-text-fill-color: #f0485a;
}
/* (owner, 31 Oct 2026: "My name … in gold and a little bit bigger") */
html[data-page="/dare2dream/"] body main p.layer-band__tagline.layer-band__tagline {
  font-size: calc(var(--fs-l) * 1.4) !important;
  color: #f3d792 !important;
  -webkit-text-fill-color: #f3d792 !important;
}

@media (min-width: 641px) {
  html[data-page="/dare2dream/"] body main .hero.hero--section .hero__media.hero__media {
    --d2w: min(73vw, 1100px);
    block-size: calc(var(--header-h) + 56px + 120px + var(--d2w) * 0.75) !important;
    max-block-size: none !important;
    inline-size: 100vw !important;
    max-inline-size: none !important;
    aspect-ratio: auto !important;
    margin-inline: calc(50% - 50vw) !important;
    background:
      radial-gradient(
        46% 150px at 22% calc(var(--header-h) + 170px),
        rgb(112 48 200 / 0.62),
        transparent 100%),
      radial-gradient(
        40% 130px at 82% calc(var(--header-h) + 170px),
        rgb(57 213 197 / 0.26),
        transparent 100%),
      #0b0608 !important;
  }
  html[data-page="/dare2dream/"] body main .hero.hero--section .hero__frame {
    block-size: 100% !important;
    overflow: visible !important;
  }
  html body main .hero__drift {
    inset-block: calc(var(--header-h) + 56px + 120px) auto !important;
    inset-inline: 0 !important;
    block-size: calc(var(--d2w) * 0.75) !important;
  }
  /* the whole photo, as her 22 Oct rule for this page: on a wide screen stretching would cut its top and foot, so it melts away at all four edges */
  html body main .hero__art {
    display: block;
    inline-size: var(--d2w) !important;
    max-inline-size: none;
    block-size: calc(var(--d2w) * 0.75) !important;
    margin-inline: auto;
  }
  html body main .hero__art img {
    display: block;
    inline-size: 100% !important;
    max-inline-size: none !important;
    block-size: 100% !important;
    object-fit: cover !important;
    -webkit-mask-image:
      linear-gradient(
        to right,
        transparent,
        #000 9%,
        #000 91%,
        transparent),
      linear-gradient(
        to bottom,
        transparent,
        #000 14%,
        #000 80%,
        transparent);
    -webkit-mask-composite: source-in;
    mask-image:
      linear-gradient(
        to right,
        transparent,
        #000 9%,
        #000 91%,
        transparent),
      linear-gradient(
        to bottom,
        transparent,
        #000 14%,
        #000 80%,
        transparent);
    mask-composite: intersect;
  }
  html body main .hero__shade {
    display: none;
  }
  html body main .hero__phototitle {
    inset-block: calc(var(--header-h) + 56px + 8px) auto !important;
    inset-inline: 0 !important;
    overflow: visible;
    text-align: center;
  }
  html body main .hero__phototitle::after {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: -62px;
    block-size: 3px;
    background: #39d5c5;
    box-shadow: 0 0 12px 3px rgb(57 213 197 / 0.85), 0 0 30px 6px rgb(57 213 197 / 0.4);
  }
  html body main .layer-band {
    -webkit-mask-image:
      linear-gradient(
        to bottom,
        transparent,
        #000 45%);
    mask-image:
      linear-gradient(
        to bottom,
        transparent,
        #000 45%);
  }
  .d2-intro[data-c-dare2dream-page] {
    background:
      radial-gradient(
        46% 170px at 26% 0,
        rgb(112 48 200 / 0.55),
        transparent 100%),
      radial-gradient(
        40% 150px at 78% 0,
        rgb(57 213 197 / 0.24),
        transparent 100%);
  }
  .d2-intro__words[data-c-dare2dream-page] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-align: center;
  }
  .d2-intro__menu[data-c-dare2dream-page] {
    margin: 36px 0 0;
  }
  .d2-intro__menu[data-c-dare2dream-page],
  .d2-intro__big[data-c-dare2dream-page] {
    font-size: clamp(2.2rem, 3.4vw, 3rem) !important;
    line-height: 1.12 !important;
    white-space: nowrap;
  }
  .d2-intro__memoir[data-c-dare2dream-page],
  .d2-intro__lede[data-c-dare2dream-page] {
    margin: 0 !important;
    font-family: var(--face-display) !important;
    font-style: italic !important;
    font-size: clamp(1.5rem, 2.1vw, 1.9rem) !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    letter-spacing: 0;
    text-transform: none;
    color: #fff;
    -webkit-text-fill-color: #fff;
    background: none;
  }
  .d2-intro__inan[data-c-dare2dream-page] br[data-c-dare2dream-page] {
    display: none;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 28px;
    margin-block: 36px 2px;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page] {
    display: inline-block;
    font-size: 2.1rem;
    white-space: nowrap;
    animation: d2-trio-swell-l 3.6s ease-in-out infinite !important;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page]:nth-child(2) {
    animation-delay: 1.2s !important;
  }
  .d2-intro__words[data-c-dare2dream-page] .d2-intro__trio[data-c-dare2dream-page] span[data-c-dare2dream-page]:nth-child(3) {
    animation-delay: 2.4s !important;
  }
  @keyframes d2-trio-swell-l {
    0%, 33%, 100% {
      transform: scale(1);
    }
    16% {
      transform: scale(1.2);
    }
  }
  .d2-intro__each[data-c-dare2dream-page] {
    margin-block-start: 2px !important;
  }
  .d2-ev__times[data-c-dare2dream-page] {
    margin-block-end: 30px !important;
  }
}
/* (owner, 31 Oct 2026, laptop: "exactly the same"): the row only moves within this page, as on the phone; the back arrow leads away */
.d2-jump__switch {
  display: none;
}
