/** Shopify CDN: Minification failed

Line 1403:0 Unexpected "}"

**/
.card-wrapper {
  color: inherit;
  height: 100%;
  position: relative;
  text-decoration: none;
}

.card {
  text-decoration: none;
  text-align: var(--text-alignment);
}

.card:not(.ratio) {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.card.card--horizontal {
  --text-alignment: left;
  --image-padding: 0rem;
  flex-direction: row;
  align-items: flex-start;
  gap: 1.5rem;
}

.card--horizontal.ratio:before {
  padding-bottom: 0;
}

.card--card.card--horizontal {
  padding: 1.2rem;
}

.card--card.card--horizontal.card--text {
  column-gap: 0;
}

.card--card {
  height: 100%;
}

.card--card,
.card--standard .card__inner {
  position: relative;
  box-sizing: border-box;
  border-radius: var(--border-radius);
  border: var(--border-width) solid rgba(var(--color-foreground), var(--border-opacity));
}

.card--card:after,
.card--standard .card__inner:after {
  content: '';
  position: absolute;
  z-index: -1;
  width: calc(var(--border-width) * 2 + 100%);
  height: calc(var(--border-width) * 2 + 100%);
  top: calc(var(--border-width) * -1);
  left: calc(var(--border-width) * -1);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius)
    rgba(var(--color-shadow), var(--shadow-opacity));
}

/* Needed for gradient continuity with or without animation, the transform scopes the gradient to its container which happens already when animation are turned on */
.card--card.gradient,
.card__inner.gradient {
  transform: perspective(0);
}

/* Needed for gradient continuity with or without animation so that transparent PNG images come up as we would expect */
.card__inner.color-scheme-1 {
  background: transparent;
}

.card .card__inner .card__media {
  overflow: hidden;
  /* Fix for Safari border bug on hover */
  z-index: 0;
  border-radius: calc(var(--border-radius) - var(--border-width) - var(--image-padding));
}

.card--card .card__inner .card__media {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.card--standard.card--text {
  background-color: transparent;
}

.card-information {
  text-align: var(--text-alignment);
}

.card__media,
.card .media {
  bottom: 0;
  position: absolute;
  top: 0;
}

.card .media {
  width: 100%;
}

.card__media {
  margin: var(--image-padding);
  width: calc(100% - 2 * var(--image-padding));
}

.card--standard .card__media {
  margin: var(--image-padding);
}

.card__inner {
  width: 100%;
}

.card--media .card__inner .card__content {
  position: relative;
  padding: calc(var(--image-padding) + 1rem);
}

.card__content {
  display: grid;
  grid-template-rows: minmax(0, 1fr) max-content minmax(0, 1fr);
  padding: 1rem;
  width: 100%;
  flex-grow: 1;
}

.card__content--auto-margins {
  grid-template-rows: minmax(0, auto) max-content minmax(0, auto);
}

.card__information {
  grid-row-start: 2;
  padding: 1.3rem 1rem;
}

.card:not(.ratio) > .card__content {
  grid-template-rows: max-content minmax(0, 1fr) max-content auto;
}

.card-information .card__information-volume-pricing-note {
  margin-top: 0.6rem;
  line-height: calc(0.5 + 0.4 / var(--font-body-scale));
  color: rgba(var(--color-foreground), 0.75);
}

.card__information-volume-pricing-note--button,
.card__information-volume-pricing-note--button.quantity-popover__info-button--icon-with-label {
  position: relative;
  z-index: 1;
  cursor: pointer;
  padding: 0;
  margin: 0;
  text-align: var(--text-alignment);
  min-width: auto;
}

.card__information-volume-pricing-note--button:hover {
  text-decoration: underline;
}

.card__information-volume-pricing-note--button + .global-settings-popup.quantity-popover__info {
  transform: initial;
  top: auto;
  bottom: 4rem;
  max-width: 20rem;
  width: calc(95% + 2rem);
}

.card__information-volume-pricing-note--button + .global-settings-popup.quantity-popover__info span:first-of-type {
  padding-right: 0.3rem;
}

.card__information-volume-pricing-note--button-right + .global-settings-popup.quantity-popover__info {
  right: 0;
  left: auto;
}

.card__information-volume-pricing-note--button-center + .global-settings-popup.quantity-popover__info {
  left: 50%;
  transform: translate(-50%);
}

.card__information-volume-pricing-note--button + .global-settings-popup.quantity-popover__info .quantity__rules {
  text-align: left;
}

@media screen and (min-width: 990px) {
  .grid--6-col-desktop .card__content quick-add-bulk .quantity {
    width: auto;
  }

  .grid--6-col-desktop .card__content quick-add-bulk .quantity__button {
    width: calc(3rem / var(--font-body-scale));
  }

  .grid--6-col-desktop .card__information-volume-pricing-note--button + .global-settings-popup.quantity-popover__info {
    left: 50%;
    transform: translate(-50%);
    width: calc(100% + var(--border-width) + 3.5rem);
  }

  .grid--6-col-desktop
    .card--standard
    .card__information-volume-pricing-note--button
    + .global-settings-popup.quantity-popover__info {
    width: calc(100% + var(--border-width) + 1rem);
  }
}

@media screen and (max-width: 749px) {
  .grid--2-col-tablet-down .card__content quick-add-bulk .quantity__button {
    width: calc(3.5rem / var(--font-body-scale));
  }

  .grid--2-col-tablet-down
    .card--card
    .card__information-volume-pricing-note--button
    + .global-settings-popup.quantity-popover__info,
  .grid--2-col-tablet-down
    .card--standard
    .card__information-volume-pricing-note--button
    + .global-settings-popup.quantity-popover__info {
    left: 50%;
    transform: translate(-50%);
  }

  .grid--2-col-tablet-down
    .card--standard
    .card__information-volume-pricing-note--button
    + .global-settings-popup.quantity-popover__info {
    width: 100%;
  }

  .grid--2-col-tablet-down
    .card--card
    .card__information-volume-pricing-note--button
    + .global-settings-popup.quantity-popover__info {
    width: calc(100% + var(--border-width) + 4rem);
  }

  .grid--2-col-tablet-down .card__content quick-add-bulk .quantity {
    width: auto;
  }
}

.card-information quantity-popover volume-pricing {
  margin-top: 0;
}

@media screen and (max-width: 989px) {
  .card-information quantity-popover .quantity__rules ~ volume-pricing {
    margin-top: 0;
  }

  .card-information quantity-popover volume-pricing {
    margin-top: 4.2rem;
  }
}

@media screen and (min-width: 750px) {
  .card__information {
    padding-bottom: 1.7rem;
    padding-top: 1.7rem;
  }
}

.card__badge {
  align-self: flex-end;
  grid-row-start: 3;
  justify-self: flex-start;
}

.card__badge.top {
  align-self: flex-start;
  grid-row-start: 1;
}

.card__badge.right {
  justify-self: flex-end;
}

.card:not(.card--horizontal) > .card__content > .card__badge {
  margin: 1.3rem;
}

.card__media .media img {
  height: 100%;
  object-fit: cover;
  object-position: center center;
  width: 100%;
}

.card__inner:not(.ratio) > .card__content {
  height: 100%;
}

.card__heading {
  margin-top: 0;
  margin-bottom: 0;
}

.card__heading:last-child {
  margin-bottom: 0;
}

.card--horizontal .card__heading,
.card--horizontal .price__container .price-item,
.card--horizontal__quick-add {
  font-size: calc(var(--font-heading-scale) * 1.2rem);
}

.card--horizontal
  .card-information
  > *:not(.visually-hidden:first-child)
  + *:not(.rating):not(.card__information-volume-pricing-note) {
  margin-top: 0;
}

.card--horizontal__quick-add:before {
  box-shadow: none;
}

@media only screen and (min-width: 750px) {
  .card--horizontal .card__heading,
  .card--horizontal .price__container .price-item,
  .card--horizontal__quick-add {
    font-size: calc(var(--font-heading-scale) * 1.3rem);
  }
}

.card--card.card--media > .card__content {
  margin-top: calc(0rem - var(--image-padding));
}

.card--standard.card--text a::after,
.card--card .card__heading a::after {
  bottom: calc(var(--border-width) * -1);
  left: calc(var(--border-width) * -1);
  right: calc(var(--border-width) * -1);
  top: calc(var(--border-width) * -1);
}

.card__heading a::after {
  bottom: 0;
  content: '';
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

.card__heading a:after {
  outline-offset: 0.3rem;
}

.card__heading a:focus:after {
  box-shadow: 0 0 0 0.3rem rgb(var(--color-background)), 0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
}

.card__heading a:focus-visible:after {
  box-shadow: 0 0 0 0.3rem rgb(var(--color-background)), 0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3);
  outline: 0.2rem solid rgba(var(--color-foreground), 0.5);
}

.card__heading a:focus:not(:focus-visible):after {
  box-shadow: none;
  outline: 0;
}

.card__heading a:focus {
  box-shadow: none;
  outline: 0;
}

@media screen and (min-width: 990px) {
  .card .media.media--hover-effect > img:only-child,
  .card-wrapper .media.media--hover-effect > img:only-child {
    transition: transform var(--duration-long) ease;
  }

  .card:hover .media.media--hover-effect > img:first-child:only-child,
  .card-wrapper:hover .media.media--hover-effect > img:first-child:only-child {
    transform: scale(1.03);
  }

  .card-wrapper:hover .media.media--hover-effect > img:first-child:not(:only-child) {
    opacity: 0;
  }

  .card-wrapper:hover .media.media--hover-effect > img + img {
    opacity: 1;
    transition: transform var(--duration-long) ease;
    transform: scale(1.03);
  }

  .underline-links-hover:hover a {
    text-decoration: underline;
    text-underline-offset: 0.3rem;
  }
}

.card--standard.card--media .card__inner .card__information,
.card--standard.card--text:not(.card--horizontal) > .card__content .card__heading:not(.card__heading--placeholder),
.card--standard:not(.card--horizontal) > .card__content .card__badge,
.card--standard.card--text.article-card > .card__content .card__information,
.card--standard > .card__content .card__caption {
  display: none;
}

.card--standard:not(.card--horizontal) .placeholder-svg {
  width: 100%;
}

.card--standard > .card__content {
  padding: 0;
}

.card--standard > .card__content .card__information {
  padding-left: 0;
  padding-right: 0;
}

.card--card.card--media .card__inner .card__information,
.card--card.card--text .card__inner,
.card--card.card--media > .card__content .card__badge {
  display: none;
}

.card--horizontal .card__badge,
.card--horizontal.card--text .card__inner {
  display: none;
}

.card--extend-height {
  height: 100%;
}

.card--extend-height.card--standard.card--text,
.card--extend-height.card--media {
  display: flex;
  flex-direction: column;
}

.card--extend-height.card--standard.card--text .card__inner,
.card--extend-height.card--media .card__inner {
  flex-grow: 1;
}

.card .icon-wrap {
  margin-left: 0.8rem;
  white-space: nowrap;
  transition: transform var(--duration-short) ease;
  overflow: hidden;
}

.card-information > * + * {
  margin-top: 0.5rem;
}

.card-information {
  width: 100%;
}

.card-information > * {
  line-height: calc(1 + 0.4 / var(--font-body-scale));
  color: rgb(var(--color-foreground));
}

.card-information > .price {
  color: rgb(var(--color-foreground));
}

.card--horizontal .card-information > .price {
  color: rgba(var(--color-foreground), 0.75);
}

.card-information > .rating {
  margin-top: 0.4rem;
}

/* Specificity needed due to the changes below */
.card-information
  > *:not(.visually-hidden:first-child)
  + quantity-popover:not(.rating):not(.card__information-volume-pricing-note),
.card-information .card__information-volume-pricing-note.card__information-volume-pricing-note--button {
  margin-top: 0;
}

.card-information > *:not(.visually-hidden:first-child) + *:not(.rating):not(.card__information-volume-pricing-note) {
  margin-top: 0.7rem;
}

.card-information .caption {
  letter-spacing: 0.07rem;
}

.card-article-info {
  margin-top: 1rem;
}

/* Card Shapes */

.card--shape .card__content {
  padding-top: 0;
}

.card--shape.card--standard:not(.card--text) .card__inner {
  border: 0;
  /* Border is not currently compatible with image shapes for standard cards. */
  background-color: transparent;
  filter: drop-shadow(
    var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius)
      rgba(var(--color-shadow), var(--shadow-opacity))
  );
}

.card--shape.card--standard:not(.card--text) .card__inner:after {
  display: none;
}

.grid__item:nth-child(2n) .shape--blob {
  clip-path: polygon(var(--shape--blob-2));
}

.grid__item:nth-child(3n) .shape--blob {
  clip-path: polygon(var(--shape--blob-3));
}

.grid__item:nth-child(4n) .shape--blob {
  clip-path: polygon(var(--shape--blob-4));
}

.grid__item:nth-child(5n) .shape--blob {
  clip-path: polygon(var(--shape--blob-5));
}

.grid__item:nth-child(7n) .shape--blob {
  clip-path: polygon(var(--shape--blob-6));
}

.grid__item:nth-child(8n) .shape--blob {
  clip-path: polygon(var(--shape--blob-1));
}

/* Card Shape Hover Rules */

@media (prefers-reduced-motion: no-preference) {
  .product-card-wrapper .shape--round {
    transition: clip-path var(--duration-long) ease;
  }

  .product-card-wrapper:hover .shape--round {
    clip-path: ellipse(47% 47% at 50% 50%);
  }

  .product-card-wrapper .shape--blob {
    transition: clip-path var(--duration-long) ease-in-out;
  }

  .product-card-wrapper:hover .shape--blob {
    clip-path: polygon(var(--shape--blob-5));
  }

  .grid__item:nth-child(2n) .product-card-wrapper:hover .shape--blob {
    clip-path: polygon(var(--shape--blob-6));
  }

  .grid__item:nth-child(3n) .product-card-wrapper:hover .shape--blob {
    clip-path: polygon(var(--shape--blob-1));
  }

  .grid__item:nth-child(4n) .product-card-wrapper:hover .shape--blob {
    clip-path: polygon(var(--shape--blob-2));
  }

  .grid__item:nth-child(5n) .product-card-wrapper:hover .shape--blob {
    clip-path: polygon(var(--shape--blob-3));
  }

  .grid__item:nth-child(7n) .product-card-wrapper:hover .shape--blob {
    clip-path: polygon(var(--shape--blob-4));
  }

  .grid__item:nth-child(8n) .product-card-wrapper:hover .shape--blob {
    clip-path: polygon(var(--shape--blob-5));
  }
}

/* ─────────────────────────────────────────────────────────────────────────
   Dress Loud card badges (CUSTOMISE pill for personalised products)
   Positioned relative to .card-wrapper (already has position: relative) so
   the pill escapes its grid cell and lands on the top-right of the product
   image — far from Shopify's built-in sale/sold-out badges (bottom-left).
   ──────────────────────────────────────────────────────────────────────── */
.card-wrapper .dl-card-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 10;
  padding: 5px 12px;
  font-family: 'Arial Black', 'Oswald', sans-serif;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 800;
  border-radius: 999px;
  line-height: 1;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
  pointer-events: none;
  white-space: nowrap;
}
.card-wrapper .dl-card-badge--customise {
  background: #db0066;
  color: #fff;
}
/* force-rebuild 1776854845 */

/* ========== Push sold-out products to end of collection grid ========== */
/* Show sold-out products (so customers can subscribe to back-in-stock alerts)
   but reorder them to the bottom of each grid page. */
.product-grid > li,
.collection .grid > li { order: 0; }
.product-grid > li:has(.card-wrapper--sold-out),
.collection .grid > li:has(.card-wrapper--sold-out) { order: 999; }
.card-wrapper--sold-out .card__media,
.card-wrapper--sold-out .card .media { filter: saturate(0.55); }

/* ========== dl-* manifest-design mobile overflow fix ========== */
@media (max-width: 760px){
  .dlfaq .contact-card{ padding: 20px !important; }
  .dlfaq .contact-card .row{
    grid-template-columns: 90px 1fr !important;
    gap: 10px !important;
    padding: 12px 0 !important;
    align-items: start !important;
  }
  .dlfaq .contact-card .row .val{
    font-size: 13px !important;
    letter-spacing: .04em !important;
    text-transform: none !important;
    font-family: 'JetBrains Mono', ui-monospace, monospace !important;
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
    min-width: 0;
  }
  .dlfaq .contact-card .row .val a{ border-bottom-width: 1px !important; }
  .dlfaq .desk-grid{ grid-template-columns: 1fr !important; gap: 24px !important; }
  .dlfaq .quick-item .big{ font-size: 18px !important; word-break: break-word; }
  .dlfaq .quick-item .big-mono{ font-size: 12px !important; word-break: break-word; }
  .dlfaq .address-card{ grid-template-columns: 1fr !important; padding: 20px !important; gap: 16px !important; }
  .dlfaq .quick-grid{ grid-template-columns: 1fr !important; gap: 18px !important; }
  .dlfaq .fit-list li{ grid-template-columns: 1fr !important; gap: 4px !important; }
  .dlfaq .fit-list li span{ word-break: break-word; overflow-wrap: anywhere; }
  .dlfaq .wrap{ padding: 0 16px !important; }
  .dlfaq .hero-grid{ grid-template-columns: 1fr !important; gap: 32px !important; }
  .dlfaq .hero-title{ font-size: clamp(40px, 12vw, 64px) !important; }
  .dlfaq .term-head{ grid-template-columns: 1fr !important; gap: 18px !important; }
  .dlfaq .term-head .num{ font-size: 64px !important; }
  .dlfaq .returns-list-wrap{ padding: 18px 16px !important; }
  .dlfaq .topbar-inner{ flex-wrap: wrap; gap: 12px !important; }
  .dlfaq .nav-meta{ gap: 12px !important; flex-wrap: wrap; }
  .dlfaq .footer-strip .wrap{ flex-direction: column; gap: 8px; text-align: center; }
}

/* ========== dl-* manifest: cool the red labels (clash with body text) ========== */
.dlfaq .fit-list li b{
  color: var(--ink) !important;
  border-left: 3px solid var(--signal);
  padding-left: 10px !important;
  margin-left: -2px;
}
.dlfaq .term-head .term-meta .ref{
  color: var(--ink) !important;
}

/* ========== Mobile hero compression — surface products earlier ========== */
@media (max-width: 749px){
  /* FD / ACC / Event / Personalised heroes */
  .dl-fdh, .dl-ach, .dl-evh, .dl-plh{
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
  .dl-fdh__h1, .dl-ach__h1, .dl-evh__h1, .dl-plh__h1{
    font-size: clamp(36px, 11vw, 56px) !important;
    line-height: 0.92 !important;
    margin-bottom: 14px !important;
  }
  .dl-fdh__lede, .dl-ach__lede, .dl-evh__lede, .dl-plh__lede{
    font-size: 14px !important;
    margin-bottom: 18px !important;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  /* Compress hero image cards / posters on mobile */
  .dl-fdh__poster, .dl-ach__poster{
    max-width: 280px !important;
  }
  .dl-fdh__image, .dl-ach__image{
    height: 220px !important;
  }
  /* Hide rotating stamp on mobile (visual noise, takes space) */
  .dl-fdh__stamp, .dl-ach__sticker, .dl-evh__stamp, .dl-plh__stamp{
    display: none !important;
  }
  /* Compress marquee strip */
  .dl-fdh__strip, .dl-ach__strip, .dl-evh__strip, .dl-plh__strip{
    margin-top: 18px !important;
    padding: 8px 0 !important;
  }
  .dl-fdh__marquee, .dl-ach__marquee, .dl-evh__marquee, .dl-plh__marquee{
    font-size: 11px !important;
  }
  /* Make "Shop now ↓" button always visible if .dl-jump exists or auto-inject */
  .dl-jump-shop{
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    background: var(--dl-fdh-ink, #0a0a0a);
    color: var(--dl-fdh-bg, #f5efe5);
    padding: 12px 18px;
    font-family: 'Big Shoulders Display', Impact, sans-serif;
    font-weight: 900;
    font-size: 14px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    margin-top: 14px;
    border: 2px solid currentColor;
  }
  .dl-jump-shop::after{ content: '↓'; font-size: 16px; }
}

/* Mobile: also compress the squad-funnel that sits between hero & products on event pages */
@media (max-width: 749px){
  .dl-csf{ padding: 24px 0 !important; }
  .dl-csf__heading, .dl-csf__h1, .dl-csf__h2{ font-size: clamp(28px, 7.5vw, 40px) !important; line-height: 1 !important; }
  .dl-csf__steps{ gap: 12px !important; }
}

/* ========== Featured-shelf: 2 rows × 2 cols on mobile (override horizontal carousel) ========== */
@media (max-width: 749px){
  ul.dl-fs__grid,
  ul.dl-fs__grid.product-grid,
  ul.dl-fs__grid.grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    scroll-snap-type: none !important;
    gap: 14px !important;
    padding-bottom: 0 !important;
  }
  ul.dl-fs__grid > li,
  ul.dl-fs__grid > .grid__item {
    flex: none !important;
    scroll-snap-align: none !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
  /* Show only first 4 products on mobile → exactly 2 rows × 2 cols */
  ul.dl-fs__grid > li:nth-child(n+5),
  ul.dl-fs__grid > .grid__item:nth-child(n+5) {
    display: none !important;
  }
  ul.dl-fs__grid::after { display: none !important; }
}

/* ========== Eurovision/event-spotlight: amplify the size and presence ========== */
[id^="dl-spot-"] {
  padding-top: clamp(56px, 8vw, 100px) !important;
  padding-bottom: clamp(56px, 8vw, 100px) !important;
}
[id^="dl-spot-"] .dl-spot__heading {
  font-size: clamp(3.2rem, 9vw, 7rem) !important;
  line-height: 0.88 !important;
  letter-spacing: -0.015em !important;
}
[id^="dl-spot-"] .dl-spot__kicker {
  font-size: 1rem !important;
  letter-spacing: 0.08em !important;
  padding: 8px 16px !important;
}
[id^="dl-spot-"] .dl-spot__sub {
  font-size: clamp(1.05rem, 1.4vw, 1.25rem) !important;
}
@media (max-width: 749px){
  [id^="dl-spot-"] .dl-spot__heading { font-size: clamp(2.6rem, 13vw, 4.4rem) !important; }
}

/* ========== Eurovision/event-spotlight: amplify HARDER ========== */
[id^="dl-spot-"]{
  padding-top: clamp(72px, 10vw, 140px) !important;
  padding-bottom: clamp(72px, 10vw, 140px) !important;
  position: relative;
  border-top: 3px solid var(--caution, #F4C430);
  border-bottom: 3px solid var(--caution, #F4C430);
}
[id^="dl-spot-"] .dl-spot__kicker{
  font-size: 1.05rem !important;
  letter-spacing: 0.1em !important;
  padding: 10px 18px !important;
  font-weight: 900 !important;
  box-shadow: 4px 4px 0 #ec1caa !important;
}
[id^="dl-spot-"] .dl-spot__heading{
  font-size: clamp(4rem, 11vw, 9rem) !important;
  line-height: 0.85 !important;
  letter-spacing: -0.02em !important;
  font-weight: 900 !important;
  text-shadow: 4px 4px 0 #ec1caa !important;
}
[id^="dl-spot-"] .dl-spot__sub{
  font-size: clamp(1.15rem, 1.5vw, 1.4rem) !important;
  max-width: 720px !important;
}
[id^="dl-spot-"] .dl-spot__panel{
  border: 2px solid var(--caution, #F4C430) !important;
  box-shadow: 8px 8px 0 #ec1caa !important;
}
@media (max-width: 749px){
  [id^="dl-spot-"]{
    padding-top: 56px !important;
    padding-bottom: 56px !important;
  }
  [id^="dl-spot-"] .dl-spot__heading{
    font-size: clamp(3rem, 14vw, 5rem) !important;
    text-shadow: 3px 3px 0 #ec1caa !important;
  }
  [id^="dl-spot-"] .dl-spot__panel{
    box-shadow: 5px 5px 0 #ec1caa !important;
  }
}

/* ========== aw-fancy-merch-wall: dark ink palette for homepage rhythm ==========
   Replaces the earlier cream/paper override. Sits between paper sections to break monotony. */
.aw-fdw{
  background:#0E0F12 !important;
  color:#F1ECDD !important;
  font-family:'Manrope',-apple-system,system-ui,sans-serif !important;
  position:relative;
}
.aw-fdw::before{
  content:''; position:absolute; inset:0;
  background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,.04) 1px, transparent 1.4px);
  background-size: 18px 18px; pointer-events:none;
}
/* Constrain to centered 1240px container */
.aw-fdw__inner{
  max-width: 1240px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: clamp(56px,7vw,96px) clamp(16px, 4vw, 40px) !important;
  position: relative;
}
/* Headlines + section titles: paper on dark */
.aw-fdw__title,
.aw-fdw__sectionTitle,
.aw-fdw__themeTitle{
  font-family:'Anton','Oswald','Bebas Neue',Impact,sans-serif !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:-.005em !important;
  line-height:.92 !important;
  color:#F1ECDD !important;
}
/* Eyebrows / mono labels: caution yellow on dark */
.aw-fdw__kicker,
.aw-fdw__sectionSub{
  font-family:'JetBrains Mono',ui-monospace,monospace !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:#F4C430 !important;
}
.aw-fdw__sub,
.aw-fdw__themeSub{
  font-family:'Manrope',sans-serif !important;
  color:#d8d2c0 !important;
}
.aw-fdw__heroContent,
.aw-fdw__sub,
.aw-fdw__groupTeaser{
  color: #d8d2c0 !important;
}
.aw-fdw__heroBg,
.aw-fdw__hero{
  background: transparent !important;
}
.aw-fdw__counterNum{ color: #F4C430 !important; }
.aw-fdw__counterLabel{ color: #bdb6a4 !important; }

/* Nav tabs */
.aw-fdw__navTab{
  font-family:'JetBrains Mono',monospace !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:#bdb6a4 !important;
  border:1.5px solid #2a2b30 !important;
  background:transparent !important;
  border-radius: 0 !important;
}
.aw-fdw__navTab:hover,
.aw-fdw__navTab[aria-current="true"],
.aw-fdw__navTab.is-active{
  background:#F4C430 !important;
  color:#0E0F12 !important;
  border-color:#F4C430 !important;
}

/* Theme tiles — paper background tiles standing out from dark section */
.aw-fdw__theme{
  border:2px solid #F1ECDD !important;
  background:#16171c !important;
  box-shadow:6px 6px 0 #E73C7E !important;
  transition:transform .2s,box-shadow .2s !important;
  border-radius:0 !important;
  overflow:hidden;
}
.aw-fdw__theme:hover{ transform:translate(-3px,-3px) !important; box-shadow:9px 9px 0 #F4C430 !important; }
.aw-fdw__themeMedia{ border-radius: 0 !important; }
.aw-fdw__themeContent{ background:#16171c !important; padding-top:14px; padding-bottom:14px; }
.aw-fdw__themeTitle{ color:#F1ECDD !important; }
.aw-fdw__themeSub{ color:#bdb6a4 !important; }

/* CTAs on tiles — pink solid block, square */
.aw-fdw__themeCTA{
  font-family:'JetBrains Mono',monospace !important;
  font-size:11px !important; letter-spacing:.22em !important;
  background:#E73C7E !important; color:#fff !important;
  padding:10px 14px !important;
  font-weight:700 !important;
  border-radius:0 !important;
}
.aw-fdw__themeCTA:hover{ background:#F4C430 !important; color:#0E0F12 !important; }
.aw-fdw__theme .aw-fdw__arrow,
.aw-fdw__themeCTA .aw-fdw__arrow{ color:inherit !important; }

/* Badges (corner) — caution yellow on dark */
.aw-fdw__badge{
  background:#F4C430 !important;
  color:#0E0F12 !important;
  border-radius:0 !important;
  font-family:'JetBrains Mono',monospace !important;
  letter-spacing:.18em !important;
}

/* Shelf headers — smaller, single-line where possible */
.dl-fs__heading {
  font-size: clamp(28px, 3.2vw, 44px) !important;
  line-height: 1 !important;
  max-width: none !important;
}
@media (min-width: 760px){
  .dl-fs__heading {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* Event Spotlight (Eurovision / World Cup): stack panels for full-width product cards */
@media (min-width: 900px){
  [id^="dl-spot-"] .dl-spot__split{
    grid-template-columns: 1fr !important;
    gap: 36px !important;
  }
}
[id^="dl-spot-"] .dl-spot__panel{
  padding: clamp(20px, 3vw, 32px) !important;
}
[id^="dl-spot-"] .dl-spot__products{
  gap: 14px !important;
}
[id^="dl-spot-"] .dl-spot__product{
  border-width: 2px !important;
}
[id^="dl-spot-"] .dl-spot__product-meta{
  padding: 14px !important;
}
[id^="dl-spot-"] .dl-spot__product-title{
  font-size: 1rem !important;
  line-height: 1.35 !important;
}
[id^="dl-spot-"] .dl-spot__product-price{
  font-size: 1.6rem !important;
}

/* ========== Judge.me carousel: align to manifest design language ========== */
.jdgm-carousel-wrapper{
  background:#F1ECDD !important;
  padding:clamp(48px,7vw,84px) clamp(16px,4vw,40px) !important;
  font-family:'Manrope',-apple-system,system-ui,sans-serif !important;
  border:0 !important;
  border-radius:0 !important;
}
.jdgm-carousel-wrapper > *{ max-width:1240px; margin-left:auto; margin-right:auto; }

/* Title row */
.jdgm-carousel-title-and-link{
  display:flex !important;align-items:flex-end !important;justify-content:space-between !important;
  gap:18px !important;flex-wrap:wrap !important;
  border-bottom:2px solid #0E0F12 !important;padding-bottom:18px !important;
  margin-bottom:clamp(20px,3vw,36px) !important;
}
.jdgm-carousel-title{
  font-family:'Anton','Oswald','Bebas Neue',Impact,sans-serif !important;
  font-weight:700 !important;
  font-size:clamp(28px,3.2vw,44px) !important;
  line-height:1 !important;letter-spacing:-.005em !important;
  text-transform:uppercase !important;color:#0E0F12 !important;
  margin:0 !important;
}
.jdgm-carousel-number-of-reviews,
.jdgm-all-reviews-text{
  font-family:'JetBrains Mono',ui-monospace,monospace !important;
  font-size:11px !important;letter-spacing:.22em !important;text-transform:uppercase !important;
  color:#E2362F !important;font-weight:700 !important;
  text-decoration:none !important;
  border-bottom:0 !important;
}
.jdgm-all-reviews-rating-wrapper{
  display:inline-flex !important;align-items:center !important;gap:10px !important;
  background:#0E0F12 !important;color:#F4C430 !important;
  padding:8px 14px !important;
  font-family:'JetBrains Mono',monospace !important;
  font-size:12px !important;font-weight:700 !important;
}
.jdgm-all-reviews-rating{ color:#F4C430 !important; }

/* Star ratings */
.jdgm-star{
  font-size:14px !important;
  letter-spacing:1px !important;
}
.jdgm--on{ color:#F4C430 !important; }
.jdgm--off{ color:#bdb6a4 !important; }
.jdgm--half{ color:#F4C430 !important; }

/* Carousel items */
.jdgm-carousel{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
}
.jdgm-carousel-item{
  background:#fff !important;
  border:2px solid #0E0F12 !important;
  border-radius:0 !important;
  box-shadow:6px 6px 0 #E73C7E !important;
  padding:18px !important;
  transition:transform .2s,box-shadow .2s !important;
}
.jdgm-carousel-item:hover{
  transform:translate(-3px,-3px) !important;
  box-shadow:9px 9px 0 #F4C430 !important;
}
.jdgm-carousel-item__review-wrapper,
.jdgm-carousel-item__review-content{ background:transparent !important; }

/* Review content */
.jdgm-carousel-item__review-title{
  font-family:'Anton','Oswald','Bebas Neue',Impact,sans-serif !important;
  font-weight:700 !important;font-size:1.2rem !important;line-height:1.05 !important;
  text-transform:uppercase !important;letter-spacing:-.005em !important;
  color:#0E0F12 !important;
  margin:6px 0 8px !important;
}
.jdgm-carousel-item__review-body{
  font-family:'Manrope',sans-serif !important;
  font-size:14px !important;line-height:1.5 !important;
  color:#1E1F23 !important;
}

/* Reviewer name + timestamp */
.jdgm-carousel-item__reviewer-name-wrapper{
  display:flex !important;align-items:center !important;gap:10px !important;
  margin-top:14px !important;padding-top:10px !important;
  border-top:1px dashed #ccc !important;
}
.jdgm-carousel-item__reviewer-name,
.jdgm-author-all-initials,
.jdgm-author-last-initial{
  font-family:'JetBrains Mono',monospace !important;
  font-size:11px !important;letter-spacing:.06em !important;
  color:#0E0F12 !important;font-weight:700 !important;text-transform:uppercase !important;
}
.jdgm-carousel-item__timestamp{
  font-family:'JetBrains Mono',monospace !important;
  font-size:10px !important;letter-spacing:.04em !important;
  color:#6B6358 !important;
}

/* Product preview chip (when shown) */
.jdgm-carousel-item__product{
  border-top:1px dashed #ccc !important;
  padding-top:10px !important;margin-top:10px !important;
}
.jdgm-carousel-item__product-image{
  border:1.5px solid #0E0F12 !important;border-radius:0 !important;
}
.jdgm-carousel-item__product-title{
  font-family:'JetBrains Mono',monospace !important;
  font-size:11px !important;letter-spacing:.04em !important;text-transform:uppercase !important;
  color:#0E0F12 !important;font-weight:700 !important;text-decoration:none !important;
}

/* Carousel arrows — square ink buttons */
.jdgm-carousel__arrows,
.jdgm-carousel__arrow{
  background:#0E0F12 !important;color:#F1ECDD !important;
  border:0 !important;border-radius:0 !important;
  width:38px !important;height:38px !important;
  font-size:18px !important;font-weight:700 !important;
}
.jdgm-carousel__arrow:hover{ background:#E73C7E !important; }

/* Border-radius nuke for any nested element */
.jdgm-carousel-wrapper .jdgm-border-radius,
.jdgm-carousel-wrapper [class*="jdgm-"]{ border-radius:0 !important; }

/* Judge.me carousel — full-bleed, lighter rating badge, cleaner card alignment */
.jdgm-carousel-wrapper{
  position: relative;
  width: 100vw !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: none !important;
}
.jdgm-carousel-wrapper > *{ max-width:1240px; margin-left:auto; margin-right:auto; }

/* Replace the aggressive black rating badge with a quieter inline treatment */
.jdgm-all-reviews-rating-wrapper{
  display:inline-flex !important;align-items:center !important;gap:8px !important;
  background:transparent !important;color:#0E0F12 !important;
  padding:0 !important;
  font-family:'JetBrains Mono',monospace !important;
  font-size:12px !important;font-weight:700 !important;
  letter-spacing:.04em !important;
}
.jdgm-all-reviews-rating-wrapper .jdgm-star{ font-size: 14px !important; }
.jdgm-all-reviews-rating{ color:#0E0F12 !important; font-weight:700 !important; }

/* Card content alignment + spacing */
.jdgm-carousel-item{
  display:flex !important;flex-direction:column !important;
  text-align:left !important;
  padding:18px !important;
}
.jdgm-carousel-item__review-wrapper,
.jdgm-carousel-item__review-content{
  display:flex !important;flex-direction:column !important;
  gap:6px !important;
  text-align:left !important;
  width:100% !important;
}
.jdgm-carousel-item__review-rating{ margin: 0 0 8px !important; }
.jdgm-carousel-item__review-title{ margin: 4px 0 6px !important; text-align:left !important; }
.jdgm-carousel-item__review-body{ margin: 0 0 12px !important; text-align:left !important; }
.jdgm-carousel-item__reviewer-name-wrapper{
  margin-top: auto !important;
  padding-top: 10px !important;
}

/* ========== Homepage product cards: uniform 1:1 square + minimal banding ========== */
/* 1:1 lets personalised tee mockups (square) fill the frame; Smiffys portraits get a small band only. */
.dl-fs__grid .media,
.dl-fs__grid .card__media,
.dl-fs__grid .card .media,
.dl-fs__grid .card__media .media{
  aspect-ratio: 1/1 !important;
  padding-bottom: 0 !important;
}
.dl-fs__grid .media img,
.dl-fs__grid .card__media img,
.dl-fs__grid .card .media img,
.dl-fs__grid .card__media .media img{
  object-fit: contain !important;
  background: #F1ECDD !important;
  width: 100% !important;
  height: 100% !important;
  inset: 0 !important;
  position: absolute !important;
}
/* Hen/Stag pitch product previews: 1:1 + contain — matches featured-shelf cards (Best Sellers, Smiffys top, Eurovision) */
.dl-hsp__product-img{
  aspect-ratio: 1/1 !important;
  object-fit: contain !important;
  background: #F1ECDD !important;
}
/* Jump-bar anchor target offset for sticky header */
html { scroll-behavior: smooth; }
[id^="shopify-section-"] { scroll-margin-top: 110px; }

/* Global safety: stop any oversized child causing horizontal scroll */
html, body { overflow-x: hidden; }

@media (max-width: 760px){
  [id^="shopify-section-"] { scroll-margin-top: 80px; }

  /* Big Anton headlines on homepage — force-wrap so they never overflow narrow viewports */
  .dl-evc__h2, .dl-go__h2, .dl-hsp__h2, .dl-spot__heading,
  .dl-ss__h2, .dl-fm__h2, .dl-ugc__h2, .dl-rf__h2, .dl-os__h2,
  .dl-fs__heading, .dl-hl__headline, .dl-hsp__panel-h, .dl-spot__panel-heading {
    word-wrap: break-word; overflow-wrap: break-word; hyphens: auto;
    max-width: 100%;
  }
  /* Soft cap on the very largest mobile headlines to keep things sane */
  .dl-fs__heading { font-size: clamp(2rem, 8vw, 4.4rem) !important; }
  .dl-spot__heading { font-size: clamp(2.2rem, 9vw, 5.6rem) !important; }
  .dl-hsp__h2 { font-size: clamp(2rem, 7.5vw, 4.4rem) !important; }
  .dl-ugc__h2, .dl-rf__h2, .dl-os__h2, .dl-fm__h2, .dl-ss__h2 { font-size: clamp(1.8rem, 7vw, 3.6rem) !important; }

  /* ===== Comprehensive mobile compact pass ===== */
  /* Tighten vertical padding on every DL section so the page is shorter overall */
  .dl-hl, .dl-evc, .dl-go, .dl-hsp, .dl-spot, .dl-ss, .dl-ugc, .dl-rf,
  .dl-os, .dl-fm, .dl-fs__inner, .dl-guides, .dl-klv-section,
  .aw-fmw, .follow-us {
    /* nothing global enforced — individual rules below */
  }

  /* Hen / Stag mobile compact:
     - tighter section + panel padding
     - convert 2-col product grid to horizontal swipe row (saves vertical space)
     - hide the role chips list (CTA already covers route)
     - hide the bottom captain band (redundant with group savings strip elsewhere) */
  .dl-hsp { padding: 36px 14px !important; }
  .dl-hsp__head { padding-bottom: 14px !important; margin-bottom: 18px !important; }
  .dl-hsp__sub { font-size: 13px !important; line-height: 1.4 !important; margin-top: 6px; }
  .dl-hsp__panel { padding: 16px !important; margin-bottom: 16px !important; box-shadow: 4px 4px 0 #0E0F12 !important; }
  .dl-hsp__panel--stag { box-shadow: 4px 4px 0 #E73C7E !important; }
  .dl-hsp__panel-head { padding-bottom: 12px !important; margin-bottom: 14px !important; gap: 10px !important; }
  .dl-hsp__panel-h { font-size: 1.9rem !important; line-height: .92 !important; margin: 8px 0 6px !important; }
  .dl-hsp__panel-sub { font-size: 13px !important; line-height: 1.4 !important; margin: 0 0 10px !important; }
  .dl-hsp__row-head { margin: 4px 0 8px !important; }
  .dl-hsp__row-label { font-size: 10px !important; letter-spacing: .16em !important; }
  /* Horizontal swipe carousel for product rows */
  .dl-hsp__row-grid {
    display: flex !important; grid-template-columns: none !important;
    overflow-x: auto !important; overflow-y: hidden;
    gap: 10px !important; padding: 4px 14px 14px !important; margin: 0 -14px 14px !important;
    scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none;
  }
  .dl-hsp__row-grid::-webkit-scrollbar { display: none; }
  .dl-hsp__row-grid > .grid__item {
    flex: 0 0 64% !important; max-width: 240px !important; min-width: 0 !important; width: auto !important;
    scroll-snap-align: start;
  }
  /* Hide redundant chrome on mobile */
  .dl-hsp__roles-wrap { display: none !important; }
  .dl-hsp__band { display: none !important; }

  /* Eurovision spotlight compact */
  .dl-spot { padding: 36px 0 !important; }
  .dl-spot__inner { padding: 0 14px !important; }
  .dl-spot__head { margin-bottom: 22px !important; gap: 10px !important; }
  .dl-spot__sub { font-size: 13px !important; }
  .dl-spot__panel { padding: 22px 16px 18px !important; box-shadow: 5px 5px 0 #0E0F12 !important; }
  .dl-spot__panel-tag { font-size: 10px !important; padding: 5px 10px !important; }
  .dl-spot__panel-heading { font-size: 1.5rem !important; margin: 6px 0 6px !important; }
  .dl-spot__panel-sub { font-size: 13px !important; margin: 0 0 14px !important; }
  .dl-spot__products { gap: 8px !important; }
  .dl-spot__product-meta { padding: 8px 10px !important; }
  .dl-spot__product-title { font-size: 12px !important; min-height: 0 !important; -webkit-line-clamp: 2; }
  .dl-spot__product-price { font-size: 11px !important; }
  .dl-spot__panel-cta { padding: 12px 18px !important; font-size: 11px !important; letter-spacing: .16em !important; }
  .dl-spot__guide { padding: 18px 16px !important; box-shadow: 4px 4px 0 #0E0F12 !important; }
  .dl-spot__guide-title { font-size: 1.4rem !important; }
  .dl-spot__guide-blurb { font-size: 13px !important; }
  .dl-spot__guide-arrow { width: 100%; text-align: center; padding: 12px 18px !important; font-size: 10px !important; }

  /* Self-segment tiles — shorter aspect ratio on mobile so 3 tiles don't dominate */
  .dl-ss { padding: 36px 14px !important; }
  .dl-ss__head { margin-bottom: 18px !important; }
  .dl-ss__grid { gap: 10px !important; }
  .dl-ss__tile { aspect-ratio: 16/9 !important; box-shadow: 3px 3px 0 #0E0F12 !important; }
  .dl-ss__body { padding: 14px !important; gap: 4px !important; }
  .dl-ss__tag { font-size: 9px !important; padding: 4px 8px !important; margin-bottom: 4px !important; }
  .dl-ss__label { font-size: 1.5rem !important; }
  .dl-ss__cta { font-size: 10px !important; padding: 8px 12px !important; }

  /* Founder / maker — compact + smaller stamp */
  .dl-fm { padding: 36px 14px !important; }
  .dl-fm__inner { gap: 18px !important; }
  .dl-fm__img { aspect-ratio: 16/10 !important; box-shadow: 4px 4px 0 #E73C7E !important; }
  .dl-fm__stamp { width: 60px; height: 60px; top: 8px; right: -6px; padding: 6px 8px !important; font-size: 11px !important; }
  .dl-fm__sub { font-size: 14px !important; line-height: 1.45 !important; margin: 0 0 14px !important; }
  .dl-fm__stats { gap: 10px !important; margin: 0 0 14px !important; }
  .dl-fm__stats strong { font-size: 1.4rem !important; }
  .dl-fm__stats span { font-size: 9px !important; letter-spacing: .14em !important; }
  .dl-fm__sig { font-size: 14px !important; }
  .dl-fm__cta { padding: 12px 18px !important; font-size: 10px !important; letter-spacing: .16em !important; box-shadow: 3px 3px 0 #E73C7E !important; }

  /* UGC wall — keep it tight */
  .dl-ugc { padding: 36px 14px !important; }
  .dl-ugc__head { padding-bottom: 12px !important; margin-bottom: 16px !important; gap: 10px !important; }
  .dl-ugc__sub { font-size: 13px !important; }
  .dl-ugc__handle { font-size: 10px !important; padding: 6px 10px !important; }
  .dl-ugc__cta { padding: 12px 16px !important; font-size: 10px !important; }

  /* Review feed compact */
  .dl-rf { padding: 36px 14px !important; }
  .dl-rf__head { margin-bottom: 18px !important; }
  .dl-rf__feed { gap: 10px !important; }
  .dl-rf__item { padding: 14px 14px 12px !important; box-shadow: 3px 3px 0 #0E0F12 !important; }
  .dl-rf__title { font-size: 13px !important; }
  .dl-rf__body { font-size: 13px !important; -webkit-line-clamp: 3; }
  .dl-rf__cta { padding: 12px 18px !important; font-size: 10px !important; box-shadow: 3px 3px 0 #E73C7E !important; }

  /* Occasion sitemap */
  .dl-os { padding: 28px 14px !important; }
  .dl-os__head { margin-bottom: 14px !important; }
  .dl-os__sub { font-size: 12px !important; }
  .dl-os__grid { gap: 6px !important; }
  .dl-os__link { padding: 9px 10px !important; font-size: 10px !important; letter-spacing: .08em !important; }

  /* Guides teaser — make sure cards don't bloat */
  .dl-guides__inner, .dl-guides { padding: 36px 14px !important; }

  /* Email signup — already compact, just trim section padding */
  .dl-klv-section { padding: 36px 14px !important; }
  .dl-klv-card { padding: 18px !important; gap: 14px !important; }
  .dl-klv-h2 { font-size: 32px !important; }
  .dl-klv-incentive { font-size: 11px !important; padding: 6px 10px !important; box-shadow: 3px 3px 0 #0E0F12 !important; }
  .dl-klv-sub { font-size: 14px !important; margin: 0 0 16px !important; }

  /* Trust strip + review badge — already small but trim padding */
  .dl-ts__inner { padding: 12px 14px !important; }
  .dl-rb__inner { padding: 6px 12px !important; }

  /* Group savings strip — keep ultra-compact */
  .dl-gss__inner { padding: 8px 12px !important; }
  .dl-gss__strip { padding: 5px 10px !important; }

  /* Departure board — clamp to viewport so nothing spills off on mobile */
  .hdb, .hdb__panel, .hdb__inner, .hdb__rows, .hdb-row {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden;
  }
  .hdb { margin: 8px !important; padding: 6px !important; }
  .hdb__panel { width: 100% !important; }
  .hdb-row__pill,
  .hdb-row__name-text {
    overflow: hidden;
    text-overflow: ellipsis;
  }
  /* Section wrapper around hdb shouldn't overflow either */
  [id*="hero_departure_board"] { overflow: hidden; }

  /* Section spacing — tighten the gap between dark/light sections */
  .dl-evc + .dl-hsp,
  .dl-hsp + section,
  .dl-spot + section { /* let section padding handle it; nothing extra */ }
}

  /* ── Mobile text-density reductions ── */
  /* Hen/Stag — kill stats / steps / includes / row-link on mobile */
  .dl-hsp__stats,
  .dl-hsp__steps,
  .dl-hsp__includes,
  .dl-hsp__row-link { display:none !important; }
  .dl-hsp__sub { font-size: 13px !important; line-height: 1.4 !important; }
  .dl-hsp__panel-sub { font-size: 13px !important; line-height: 1.4 !important; }

  /* Hero departure board — strip non-essentials */
  .hdb__intro-kicker,
  .hdb__intro-steps,
  .hdb__col-headers,
  .hdb__pa,
  .hdb__fineprint,
  .hdb__clock-group,
  .hdb__voice { display:none !important; }
  .hdb__brand { font-size: 10px !important; }
  .hdb__intro { padding-top: 24px !important; padding-bottom: 14px !important; }
  .hdb__top { padding: 10px 14px !important; }

  /* Cap any tall hero/section background images at sensible mobile height */
  .hdb__bg-image,
  .hdb__bg-video { max-height: 60vh !important; }
  .ssvibe img,
  [class^="slide-"] img { max-height: 50vh !important; object-fit: cover !important; }

  /* Eurovision spotlight — tighten subhead */
  .dl-spot__panel-sub { font-size: 13px !important; line-height: 1.4 !important; }
  .dl-spot__sub { font-size: 14px !important; }
}
.dl-hsp__product-img--ph{ background: linear-gradient(135deg,#bdb6a4,#6B6358) !important; }
/* Event spotlight (Eurovision / World Cup) product cards: 1:1 + contain */
[id^="dl-spot-"] .dl-spot__product-img{
  aspect-ratio: 1/1 !important;
}
[id^="dl-spot-"] .dl-spot__product-img img{
  object-fit: contain !important;
  background: #F1ECDD !important;
}
