/** Shopify CDN: Minification failed

Line 131:0 Unexpected "}"
Line 1135:0 Unexpected "}"

**/
/* ==========================================================================
   Studio Daisy — theme customisations (loaded after base.css)
   Palette: bg #FBF6F3 · text #3A2734 · accent #EDB3C0 · muted #6E5A66 · rules #E6CCD4
   ========================================================================== */
:root {
  --daisy-pink: #EDB3C0;
  --daisy-rule: #E6CCD4;
  --daisy-muted: #6E5A66;
  --daisy-band: #F7E1E7;
}

/* ---------- Header: mega menu ---------- */
.menu-list__submenu-inner {
  border-top: 1px solid var(--daisy-rule);
  border-bottom: 1px solid var(--daisy-rule);
}
.mega-menu__content-list--products .resource-card__content {
  text-align: left;
}

/* ---------- Header: mobile = hamburger + logo + heart + account + cart (search lives in the drawer) ---------- */
@media screen and (max-width: 749px) {
  #header-component .search-action {
    display: none;
  }
}

/* ---------- Mobile drawer: search field at the top ---------- */
.daisy-drawer-search {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 20px;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--daisy-rule);
}
.daisy-drawer-search__input {
  flex: 1 1 auto;
  min-width: 0;
  height: 44px;
  padding: 0 14px;
  font: inherit;
  font-size: 1rem;
  color: var(--color-foreground);
  background: var(--color-background);
  border: 1px solid var(--daisy-rule);
  border-radius: 8px;
}
.daisy-drawer-search__input::placeholder {
  color: var(--daisy-muted);
}
.daisy-drawer-search__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  cursor: pointer;
}
.daisy-drawer-search__button .svg-wrapper {
  width: 20px;
  height: 20px;
}

/* ---------- Footer ---------- */
.footer-content .menu__heading {
  color: var(--daisy-muted);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.75rem;
}
.footer-content .menu__item a {
  text-decoration: none;
}

/* Footer, mobile: newsletter band first, Help as a divided list, Collections hidden */
@media screen and (max-width: 749px) {
  .footer-content {
    gap: 0;
  }
  /* 1st menu block = Collections */
  .footer-content > accordion-custom:nth-of-type(1) {
    display: none;
  }
  /* 2nd menu block = Help: single divided list, no heading */
  .footer-content > accordion-custom:nth-of-type(2) .menu__heading {
    display: none;
  }
  .footer-content > accordion-custom:nth-of-type(2) .details-content {
    margin-block-start: 0;
  }
  .footer-content > accordion-custom:nth-of-type(2) .menu__item {
    margin: 0;
    padding-block: 14px;
    border-bottom: 1px solid var(--daisy-rule);
  }
  .footer-content > accordion-custom:nth-of-type(2) .menu__item:last-child {
    border-bottom: 0;
  }
}

/* Newsletter band (its own section above the footer) */
[id$="__daisy_newsletter"] .daisy-heading__title {
  font-size: 38px;
}
[id$="__daisy_newsletter"] .daisy-heading__subline {
  max-width: 520px;
  margin-inline: auto;
}
[id$="__daisy_newsletter"] .email-signup__input {
  background: #FFFFFF;
  min-height: 52px;
}
[id$="__daisy_newsletter"] .email-signup-block {
  max-width: 520px;
  margin-inline: auto;
}
@media screen and (max-width: 749px) {
  [id$="__daisy_newsletter"] .daisy-heading__title {
    font-size: 30px;
  }
}


}
[id$="__daisy_instagram"] .Vtl-InstagramFeedLayout__Post:hover .Vtl-InstagramFeedLayout__Image {
  transform: scale(1.03);
}
[id$="__daisy_instagram"] .daisy-instagram-follow {
  margin-top: 8px;
}

/* ==========================================================================
   Phase B — Homepage
   ========================================================================== */

/* Daisy heading block: 48x2 tape rule, h2, muted subline */
.daisy-heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  width: 100%;
}
.daisy-heading--center {
  align-items: center;
  text-align: center;
}
.daisy-heading__rule {
  display: block;
  width: 48px;
  height: 2px;
  margin-bottom: 6px;
  background: var(--daisy-pink);
}
.daisy-heading__title {
  margin: 0;
}
.daisy-heading__subline {
  margin: 0;
  color: var(--daisy-muted);
  font-size: 1rem;
  line-height: 1.4;
}
/* Optional "View all" link, bottom-right of the heading block */
.daisy-heading {
  position: relative;
}
.daisy-heading__link {
  position: absolute;
  right: 0;
  bottom: 2px;
  font-size: 14px;
  color: var(--color-foreground);
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-color: var(--daisy-pink);
}
.daisy-heading__link:hover {
  text-decoration-color: currentColor;
}
.daisy-heading--center .daisy-heading__link {
  position: static;
  margin-top: 4px;
}
@media screen and (max-width: 749px) {
  .daisy-heading__link {
    position: static;
    margin-top: 2px;
  }
}

/* Collection eyebrow (cards + product page) */
.daisy-eyebrow {
  display: inline-block;
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  color: #8F4B60;
}
.daisy-eyebrow:hover {
  color: #8F4B60;
  text-decoration: underline;
}
.daisy-eyebrow-block {
  position: relative;
  z-index: 1;
  line-height: 1;
}
.daisy-eyebrow__sep {
  margin: 0 4px;
  color: #8F4B60;
  font-size: 12px;
}
.daisy-strip + .daisy-strip {
  margin-top: 8px;
}
@media screen and (max-width: 479px) {
  .daisy-eyebrow-block--hide-small {
    display: none;
  }
}

/* Hero */
[id$="__daisy_hero"] .hero .text-block,
[id$="__daisy_hero"] .hero .text-block * {
  text-align: center;
}
@media screen and (max-width: 749px) {
  /* Height must sit on the inner container: the media grid is absolutely positioned inside it */
  [id$="__daisy_hero"] .hero {
    min-height: 0;
    height: auto;
    --padding-block-start: 48px;
    --padding-block-end: 32px;
  }
  [id$="__daisy_hero"] .hero__container {
    min-height: 520px;
    box-sizing: border-box;
  }
  [id$="__daisy_hero"] .hero__media img,
  [id$="__daisy_hero"] .hero__media video {
    object-position: center center;
  }
}

/* Collection tiles: no top border (tape motif removed at Victor's request, 2026-09-06) */

/* Instagram feed (Vitals): shown on all screen sizes (mobile hide lifted 2026-09-06) */

/* ==========================================================================
   Phase C — Product page
   ========================================================================== */

/* Badges on cards: hide sale badges; show "Sold out" as a small cream pill */
.product-badges:has(.color-custom-badge-sale) {
  display: none !important;
}
.product-badges__badge.color-custom-badge-sold-out {
  background: rgba(251, 246, 243, 0.96) !important;
  color: var(--color-foreground) !important;
  border: 1px solid var(--daisy-rule);
  border-radius: 999px !important;
  padding: 5px 10px;
  font-family: var(--font-body--family);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
/* Sold-out cards: soften the image slightly */
.product-card:has(.color-custom-badge-sold-out) .card-gallery img {
  opacity: 0.82;
}

/* "Good first canvas" pill — width pinned to its text: Horizon's block
   wrappers stretch children to the full details-column width otherwise */
.daisy-badge {
  display: inline-block;
  width: fit-content !important;
  align-self: flex-start;
  justify-self: start;
  padding: 4px 10px;
  border: 1px solid var(--daisy-pink);
  border-radius: 999px;
  background: var(--daisy-band);
  color: var(--color-foreground);
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.02em;
  white-space: nowrap;
}
.product-card .daisy-badge {
  align-self: flex-start;
  margin-top: 2px;
}

/* Product page eyebrow sits tight above the title */
.product-details .daisy-eyebrow-block {
  margin-bottom: -12px;
}

/* Spec rows under the buy button */
.daisy-specs {
  width: 100%;
  margin: 0;
  border-top: 1px solid var(--daisy-rule);
}
.daisy-specs__row {
  display: grid;
  grid-template-columns: minmax(96px, 1fr) 2fr;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--daisy-rule);
}
.daisy-specs__row dt {
  margin: 0;
  color: var(--daisy-muted);
  font-size: 0.875rem;
}
.daisy-specs__row dd {
  margin: 0;
  font-size: 0.875rem;
}
.daisy-specs__empty {
  margin: 0;
  color: var(--daisy-muted);
  font-size: 0.8125rem;
}

/* Not-included note */
.daisy-note {
  margin: 0;
  color: var(--daisy-muted);
  font-size: 0.875rem;
  line-height: 1.5;
}

/* Collection strip (bottom of the details column) */
.daisy-strip {
  width: 100%;
  padding-top: 20px;
  border-top: 1px solid var(--daisy-rule);
}
.daisy-strip__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}
.daisy-strip__title {
  margin: 0;
}
.daisy-strip__link {
  flex-shrink: 0;
  color: var(--daisy-muted);
  font-size: 0.8125rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.daisy-strip__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
}
.daisy-strip__card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  text-decoration: none;
  color: var(--color-foreground);
}
.daisy-strip__media {
  display: block;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 4px;
  background: var(--daisy-band);
}
.daisy-strip__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.daisy-strip__name {
  font-size: 0.8125rem;
  line-height: 1.3;
}
@media screen and (max-width: 749px) {
  .daisy-strip__list {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin-inline: calc(-1 * var(--page-margin));
    padding-inline: var(--page-margin);
  }
  .daisy-strip__list::-webkit-scrollbar {
    display: none;
  }
  .daisy-strip__item {
    flex: 0 0 40%;
    scroll-snap-align: start;
  }
}

/* Mobile sticky bar: under 768px only; title, price, Add to cart */
@media screen and (min-width: 768px) {
  .sticky-add-to-cart__bar {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .sticky-add-to-cart__bar {
    bottom: 0;
    width: 100%;
    max-width: none;
    border-radius: 0;
  }
  .sticky-add-to-cart__image,
  .sticky-add-to-cart__variant {
    display: none !important;
  }
  .sticky-add-to-cart__info {
    padding-left: 0;
  }
  .sticky-add-to-cart__title {
    display: block;
  }
}

/* ==========================================================================
   Phase D — Collection page
   ========================================================================== */

/* Banner: image with title/description overlaid on desktop */
.daisy-colhead {
  padding-block: 0 8px;
}
.daisy-colhead__banner {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: var(--daisy-colhead-height, 340px);
  overflow: hidden;
  border-radius: 4px;
  background: var(--daisy-band);
}
.daisy-colhead__banner--no-image {
  min-height: 0;
  background: transparent;
  border-radius: 0;
}
.daisy-colhead__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.daisy-colhead__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, var(--daisy-colhead-overlay, #3A273499), transparent 70%);
}
.daisy-colhead__text {
  position: relative;
  z-index: 1;
  max-width: 640px;
  padding: 32px;
  color: #FFFFFF;
}
.daisy-colhead__banner--no-image .daisy-colhead__text {
  padding: 40px 0 8px;
  color: var(--color-foreground);
}
.daisy-colhead__title {
  margin: 0 0 8px;
  color: inherit;
}
.daisy-colhead__desc {
  color: inherit;
  font-size: 1rem;
  line-height: 1.5;
}
.daisy-colhead__desc p {
  margin: 0;
}
@media screen and (max-width: 749px) {
  .daisy-colhead__banner {
    min-height: 0;
    background: transparent;
    border-radius: 0;
  }
  .daisy-colhead__img,
  .daisy-colhead__overlay {
    display: none;
  }
  .daisy-colhead__text {
    padding: 28px 0 4px;
    color: var(--color-foreground);
  }
}

/* Chips row */
.daisy-chips {
  margin-top: 16px;
}
.daisy-chips__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
}
.daisy-chip {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 6px 14px;
  border: 1px solid var(--daisy-rule);
  border-radius: 999px;
  color: var(--color-foreground);
  font-size: 0.875rem;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  background: var(--color-background);
}
.daisy-chip:hover {
  border-color: var(--daisy-pink);
}
.daisy-chip--active {
  background: var(--daisy-pink);
  border-color: var(--daisy-pink);
}
@media screen and (max-width: 749px) {
  .daisy-chips__list {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    margin-inline: calc(-1 * var(--page-margin));
    padding-inline: var(--page-margin);
    scroll-snap-type: x proximity;
  }
  .daisy-chips__list::-webkit-scrollbar {
    display: none;
  }
  .daisy-chips__item {
    scroll-snap-align: start;
  }
}

/* Grid: 4 across on desktop, 2 on mobile (Horizon default for small cards) */
@media screen and (min-width: 990px) {
  .product-grid-container .product-grid--grid {
    --product-grid-columns-desktop: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* ==========================================================================
   Phase E — Pages
   ========================================================================== */

/* Pill links block (FAQ jump links) */
.daisy-chips--block {
  margin-top: 4px;
}

/* FAQ accordions: answers in muted text */
[id*="__daisy_faq_"] .details-content .text-block {
  color: var(--daisy-muted);
}

/* About: image placeholder while no image is uploaded */
[id$="__daisy_about"] .image-block:not(:has(img)) {
  aspect-ratio: 4 / 5;
  border-radius: 4px;
  background: var(--daisy-band);
}

/* Stockists */
.daisy-stockists {
  padding-block: 48px 72px;
}
.daisy-stockists__head,
.daisy-stockists__locked {
  max-width: 680px;
}
.daisy-stockists__eyebrow {
  margin: 0 0 8px;
}
.daisy-stockists h1 {
  margin: 0 0 12px;
}
.daisy-stockists__intro {
  margin: 0 0 20px;
  color: var(--daisy-muted);
  line-height: 1.5;
}
.daisy-stockists__tiles {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 32px 0 0;
  padding: 0;
}
.daisy-stockists__tile {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 18px 16px;
  border: 1px solid var(--daisy-rule);
  border-top: 4px solid var(--daisy-pink);
  border-radius: 4px;
  background: var(--color-background);
}
.daisy-stockists__tile-value {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.1;
}
.daisy-stockists__tile-label {
  color: var(--daisy-muted);
  font-size: 0.875rem;
}
.daisy-stockists__steps {
  max-width: 680px;
  margin-top: 40px;
}
.daisy-stockists__steps h2 {
  margin: 0 0 12px;
}
.daisy-stockists__step-list {
  margin: 0;
  padding-left: 1.25em;
  line-height: 1.6;
}
.daisy-stockists__step-list li + li {
  margin-top: 8px;
}
.daisy-stockists__assortment {
  margin-top: 48px;
}
.daisy-stockists__products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px 12px;
  margin: 24px 0 0;
  padding: 0;
}
.daisy-stockists__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
@media screen and (max-width: 749px) {
  .daisy-stockists__tiles,
  .daisy-stockists__products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* ==========================================================================
   Carousel (shared): scroll-snap track, arrows overlaid on the row, progress line
   ========================================================================== */
.daisy-carousel {
  --daisy-per-view: var(--daisy-per-view-desktop, 4);
  position: relative;
  padding-bottom: 22px;
}
.daisy-carousel__controls {
  display: contents;
}
.daisy-carousel__track {
  display: flex;
  gap: var(--daisy-gap, 16px);
  margin: 0;
  padding: 0;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.daisy-carousel__track::-webkit-scrollbar {
  display: none;
}
.daisy-carousel__item {
  flex: 0 0 calc((100% - (var(--daisy-per-view) - 1) * var(--daisy-gap, 16px)) / var(--daisy-per-view));
  scroll-snap-align: start;
}
.daisy-carousel__arrow {
  position: absolute;
  top: calc((100% - 22px) / 2);
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid var(--daisy-rule);
  border-radius: 0;
  background: var(--color-background);
  color: var(--color-foreground);
  box-shadow: 0 2px 10px rgba(58, 39, 52, 0.08);
  cursor: pointer;
  transform: translateY(-50%);
  transition: opacity 0.2s ease, border-color 0.2s ease;
}
.daisy-carousel__arrow--prev {
  left: 0;
}
.daisy-carousel__arrow--next {
  right: 0;
}
.daisy-carousel__arrow:hover {
  border-color: var(--daisy-pink);
}
.daisy-carousel__arrow:disabled {
  opacity: 0;
  pointer-events: none;
}
.daisy-carousel__arrow .svg-wrapper {
  width: 16px;
  height: 16px;
}
.daisy-carousel__progress {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: var(--daisy-rule);
}
.daisy-carousel__progress-fill {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 25%;
  background: var(--color-foreground);
  transition: left 0.25s ease, width 0.25s ease;
}
.daisy-carousel--static .daisy-carousel__arrow,
.daisy-carousel--static .daisy-carousel__progress {
  display: none;
}
@media screen and (max-width: 989px) {
  .daisy-carousel {
    --daisy-per-view: var(--daisy-per-view-tablet, 3);
  }
}
@media screen and (max-width: 749px) {
  .daisy-carousel {
    --daisy-per-view: var(--daisy-per-view-mobile, 1.4);
  }
  .daisy-carousel__track {
    margin-inline: calc(-1 * var(--page-margin));
    padding-inline: var(--page-margin);
    scroll-padding-inline: var(--page-margin);
  }
  .daisy-carousel__arrow {
    width: 36px;
    height: 36px;
  }
}

/* ---------- Collection row: edge-to-edge tiles, label pill, hover frame + tag + tagline ---------- */
.daisy-colrow {
  padding-block: 56px 40px;
}
.daisy-colrow .daisy-heading {
  margin-bottom: 24px;
}
.daisy-colcard {
  position: relative;
  display: block;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 6px;
  background: var(--daisy-band);
  color: var(--color-foreground);
  text-decoration: none;
}
.daisy-colcard__media,
.daisy-colcard__media img {
  display: block;
  width: 100%;
  height: 100%;
}
.daisy-colcard__media img {
  object-fit: cover;
  transition: transform 0.7s ease;
}
.daisy-colcard::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(58, 39, 52, 0);
  transition: background 0.3s ease;
  pointer-events: none;
}
/* Hover frame reads as a strip of pink tape around the canvas */
.daisy-colcard__frame {
  position: absolute;
  inset: 10px;
  border: 3px solid var(--daisy-pink);
  border-radius: 3px;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.daisy-colcard__label {
  position: absolute;
  left: 50%;
  bottom: 22px;
  z-index: 1;
  padding: 11px 18px;
  border-radius: 999px;
  background: var(--daisy-pink);
  color: var(--color-foreground);
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(58, 39, 52, 0.08);
  transform: translateX(-50%);
  transition: background 0.3s ease;
}
/* label pill stays pink on hover */
.daisy-colcard__hover {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 84px;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-align: center;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
}
.daisy-colcard__tag {
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #8F4B60;
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.daisy-colcard__tagline {
  padding: 6px 14px;
  border-radius: 6px;
  background: rgba(251, 246, 243, 0.9);
  font-size: 18px;
  font-style: italic;
  line-height: 1.25;
  color: var(--color-foreground);
}
@media (hover: hover) {
  /* hover = pink tape frame only: no zoom, no tint */
  .daisy-colcard:hover .daisy-colcard__frame,
  .daisy-colcard:hover .daisy-colcard__hover {
    opacity: 1;
    transform: none;
  }
}

/* ---------- Instagram section (Vitals app block laid out as a 2-row scrolling grid) ---------- */
.daisy-instagram {
  padding-block: 24px 72px;
}
.daisy-instagram .daisy-heading {
  margin-bottom: 20px;
}
.daisy-instagram__feed .shopify-app-block {
  width: 100%;
}
.daisy-instagram .Vtl-InstagramFeedWidget__Header {
  display: none !important;
}
:is(.daisy-instagram, .daisy-instagram-auto) .Vtl-InstagramFeedLayout__PostList {
  display: grid !important;
  grid-auto-flow: column;
  grid-template-rows: repeat(var(--daisy-rows, 2), minmax(0, 1fr));
  grid-template-columns: none !important;
  grid-auto-columns: calc((100% - (var(--daisy-per-view) - 1) * var(--daisy-gap, 16px)) / var(--daisy-per-view));
  gap: var(--daisy-gap, 16px) !important;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
:is(.daisy-instagram, .daisy-instagram-auto) .Vtl-InstagramFeedLayout__PostList::-webkit-scrollbar {
  display: none;
}
:is(.daisy-instagram, .daisy-instagram-auto) .Vtl-InstagramFeedLayout__Post {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 4px;
  background: var(--daisy-band);
  scroll-snap-align: start;
}
:is(.daisy-instagram, .daisy-instagram-auto) .Vtl-InstagramFeedLayout__Image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 4px;
  transition: transform 0.4s ease;
}
:is(.daisy-instagram, .daisy-instagram-auto) .Vtl-InstagramFeedLayout__Post:hover .Vtl-InstagramFeedLayout__Image {
  transform: scale(1.03);
}
.daisy-instagram__follow {
  margin-top: 20px;
}
@media screen and (max-width: 749px) {
  :is(.daisy-instagram, .daisy-instagram-auto) .Vtl-InstagramFeedLayout__PostList {
    grid-template-rows: repeat(var(--daisy-rows-mobile, 1), minmax(0, 1fr));
    margin-inline: calc(-1 * var(--page-margin));
    padding-inline: var(--page-margin);
    scroll-padding-inline: var(--page-margin);
  }
}

/* Best sellers: centred card text, no eyebrow */
[id$="__daisy_best_sellers"] .product-card__content,
[id$="__daisy_new_arrivals"] .product-card__content {
  align-items: center;
  text-align: center;
}
[id$="__daisy_best_sellers"] .product-card .daisy-badge,
[id$="__daisy_new_arrivals"] .product-card .daisy-badge {
  align-self: center;
}

/* ==========================================================================
   Headings — Instrument Serif (Shopify font library: instrument_serif_n4 / _i4)
   Family comes from the theme's heading font setting; these rules fix weight,
   tracking, line-height and the per-context sizes. Body, subheadings, buttons,
   prices and menus stay Inter.
   ========================================================================== */
body :is(h1, h2, h3),
body :is(.h1, .h2, .h3),
body .text-block:is(.h1, .h2, .h3) > *,
body .text-block:is(.h1, .h2, .h3) :is(h1, h2, h3, h4, h5, h6) {
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.05;
}

/* Section headings (homepage, product recommendations, newsletter, FAQ groups) */
.daisy-heading__title.h3 {
  font-size: 38px;
}
/* Page titles (FAQ, About, Wholesale) */
.daisy-heading__title.h2 {
  font-size: 44px;
}
/* Collection page title */
.daisy-colhead__title {
  font-size: 44px;
}
/* Product page title */
.product-details .text-block.h3 > h1 {
  font-size: 38px;
}
/* Hero heading */
[id$="__daisy_hero"] .hero .text-block.h1 > * {
  font-size: 64px;
}
@media screen and (max-width: 749px) {
  [id$="__daisy_hero"] .hero .text-block.h1 > * {
    font-size: 36px;
  }
}

/* Product page: title and price on one line */
.product-details .text-block.h3 > h1 {
  margin: 0;
}
/* The price block is a sibling of the title inside .group-block-content */
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price,
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price .price,
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price .price * {
  font-family: var(--font-body--family);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
}
.product-details .group-block-content:has(> .text-block.h3 > h1) {
  flex-wrap: wrap;
  row-gap: 6px;
}
/* Let the price and the installments line become row items: price beside the title, installments on its own line below */
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price {
  display: contents;
}
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price > div {
  display: contents;
}
.product-details .group-block-content:has(> .text-block.h3 > h1) .price {
  flex-shrink: 0;
  margin-left: auto;
  padding-bottom: 6px;
  white-space: nowrap;
}
.product-details .group-block-content:has(> .text-block.h3 > h1) shopify-payment-terms {
  flex: 1 1 100%;
  order: 10;
  display: block;
  font-size: 0.8125rem;
  color: var(--daisy-muted);
}

/* PDP gallery on phones: no pinch/double-tap zoom on the product images (theme zoom dialog is already off) */
@media screen and (max-width: 749px) {
  .product-media-container,
  .product-media-container img {
    touch-action: pan-x pan-y;
    -webkit-user-select: none;
    user-select: none;
  }
}

/* Instagram feed injected by the app embed outside a Daisy Instagram section (e.g. product pages):
   same carousel variables, and the app's own heading restyled to match the site */
.daisy-instagram-auto {
  --daisy-per-view-desktop: 4;
  --daisy-per-view-tablet: 3;
  --daisy-per-view-mobile: 2;
  --daisy-rows: 2;
  --daisy-gap: 16px;
  padding-block: 24px 48px;
}
.daisy-instagram-auto .Vtl-InstagramFeedWidget__Header {
  display: block !important;
  margin-bottom: 20px;
}
.daisy-instagram-auto .Vtl-InstagramFeedWidget__Title h2 {
  position: relative;
  margin: 0;
  padding-top: 14px;
  text-align: left;
  font-family: var(--font-heading--family);
  font-weight: 400;
  font-size: 38px;
  line-height: 1.05;
  letter-spacing: 0;
}
.daisy-instagram-auto .Vtl-InstagramFeedWidget__Title h2::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 48px;
  height: 2px;
  background: var(--daisy-pink);
}

/* Auto-wrapped feeds: the app's content wrapper is a centred flex box, so the injected carousel must claim full width */
.daisy-carousel--attached {
  width: 100%;
  flex: 1 1 100%;
  min-width: 0;
}
.daisy-instagram-auto .Vtl-InstagramFeedLayout__Content,
.daisy-instagram-auto .Vtl-InstagramFeedLayout {
  display: block;
  width: 100%;
}
.daisy-instagram-auto .Vtl-InstagramFeedLayout__Image:hover {
  transform: scale(1.03);
}

/* Centre the text on every product card, all pages, all sizes (collection, search, recommendations, homepage) */
.product-card__content {
  align-items: center;
  text-align: center;
}
.product-card__content .text-block,
.product-card__content .text-block > *,
.product-card__content product-price,
.product-card__content product-price > *,
.product-card__content product-price .price,
.product-card__content .daisy-eyebrow-block {
  text-align: center !important;
  justify-content: center;
}
.product-card__content product-price > div {
  display: flex;
  justify-content: center;
  width: 100%;
}
.product-card__content .daisy-badge {
  align-self: center;
}
/* Same for the lighter cards: mega menu, stockists assortment, and the product-page collection strip */
.resource-card__content,
.resource-card__title {
  text-align: center;
}
.daisy-strip__card {
  align-items: center;
  text-align: center;
}
}

/* ==========================================================================
   Wishlist
   ========================================================================== */
.daisy-heart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--color-foreground);
}
[data-daisy-wishlist-toggle].is-saved .daisy-heart__path {
  fill: var(--daisy-pink);
  stroke: #C9788B;
}
[data-daisy-wishlist-toggle].is-bumping .daisy-heart {
  animation: daisy-heart-bump 0.35s ease;
}
@keyframes daisy-heart-bump {
  0% { transform: scale(1); }
  40% { transform: scale(1.25); }
  100% { transform: scale(1); }
}

/* Header icon (desktop; the drawer carries the link on phones) */
.daisy-wishlist-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.daisy-wishlist-link .svg-wrapper {
  width: 20px;
  height: 20px;
}
/* Mirror of .header-actions__cart-icon .cart-bubble */
.daisy-wishlist-link .cart-bubble {
  position: absolute;
  width: 20px;
  top: 4.5px;
  right: 2.5px;
}
.daisy-wishlist-link .cart-bubble[hidden] {
  display: none;
}
/* Wishlist keeps its pink bubble; only the position matches the cart */
.daisy-wishlist-link .cart-bubble {
  --cart-bubble-background: var(--daisy-pink);
  --cart-bubble-text: var(--color-foreground);
}
/* Mobile: the heart stays in the icon set (was hidden until 2026-09-11) */
@media screen and (max-width: 749px) {
  #header-component .daisy-wishlist-link .cart-bubble {
    transform: scale(0.9);
  }
}
/* Log out links (wholesale band, mobile menu) */
.daisy-ws-band a,
.daisy-logout-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--daisy-pink);
}

/* Heart on cards */
.product-card {
  position: relative;
}
.daisy-card-heart {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid var(--daisy-rule);
  border-radius: 999px;
  background: rgba(251, 246, 243, 0.92);
  cursor: pointer;
  transition: border-color 0.2s ease, opacity 0.2s ease;
}
.daisy-card-heart:hover {
  border-color: var(--daisy-pink);
}

/* Product page button */
.daisy-wishlist-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--color-foreground);
  font: inherit;
  font-size: 0.875rem;
  cursor: pointer;
}
.daisy-wishlist-btn--link span[data-label] {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.daisy-wishlist-btn--secondary {
  padding: 12px 20px;
  border: 1px solid var(--color-foreground);
  border-radius: 8px;
}

/* Wishlist page */
.daisy-wishlist {
  padding-block: 48px 72px;
}
.daisy-wishlist__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.daisy-wishlist__count {
  margin: 0;
  color: var(--daisy-muted);
  font-size: 0.875rem;
}
.daisy-wishlist__empty[hidden] {
  display: none;
}
.daisy-wishlist__empty {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  padding: 32px 0;
}
.daisy-wishlist__empty p {
  margin: 0;
  color: var(--daisy-muted);
}
.daisy-wishlist__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px 16px;
  margin: 0;
  padding: 0;
}
.daisy-wl-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
}
.daisy-wl-card__media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 4px;
  background: var(--daisy-band);
}
.daisy-wl-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.daisy-wl-card--soldout .daisy-wl-card__media img {
  opacity: 0.82;
}
.daisy-wl-card__soldout {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 5px 10px;
  border: 1px solid var(--daisy-rule);
  border-radius: 999px;
  background: rgba(251, 246, 243, 0.96);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.daisy-wl-card__title {
  color: var(--color-foreground);
  text-decoration: none;
}
.daisy-wl-card__price {
  font-size: 0.875rem;
}
.daisy-wl-card__remove {
  padding: 0;
  border: 0;
  background: none;
  color: var(--daisy-muted);
  font: inherit;
  font-size: 0.8125rem;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.daisy-wishlist__note {
  margin: 32px 0 0;
  color: var(--daisy-muted);
  font-size: 0.8125rem;
}
@media screen and (max-width: 749px) {
  .daisy-wishlist__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 12px;
  }
  .daisy-wishlist__head {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ==========================================================================
   New-release feature (sections/daisy-release.liquid) + pink badge variant
   ========================================================================== */
.daisy-badge--accent {
  background: var(--daisy-pink);
  border-color: var(--daisy-pink);
}
/* On product cards the pink "New" pill pins to the top-right of the image (mirrors the heart, top-left) */
.product-card .daisy-badge--accent {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 3;
  margin: 0;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.04em;
}

.daisy-release {
  padding-block: 8px 40px;
}
.daisy-release__inner {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  align-items: center;
  background: var(--daisy-release-bg);
  border: 1px solid var(--daisy-rule);
}
.daisy-release__art {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 28px;
}
.daisy-release__img-link {
  display: block;
  flex: 1 1 0;
  min-width: 0;
}
.daisy-release__img {
  width: 100%;
  height: auto;
  display: block;
}
.daisy-release__copy {
  padding: 40px 36px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
.daisy-release__eyebrow {
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #B8506E;
}
.daisy-release__heading {
  margin: 0;
  font-size: 38px;
  line-height: 1.1;
  text-wrap: pretty;
}
.daisy-release__text {
  color: var(--daisy-muted);
  font-size: 15px;
  line-height: 1.55;
}
.daisy-release__text p { margin: 0; }
.daisy-release__button {
  margin-top: 8px;
}

/* Hero layout: taller, copy first, artwork bleeds right */
.daisy-release--hero {
  padding-block: 0 24px;
}
.daisy-release--hero .daisy-release__inner {
  grid-template-columns: 1fr 1fr;
  min-height: 460px;
  border: 0;
}
.daisy-release--hero .daisy-release__copy {
  order: 1;
  padding: 56px 48px;
}
.daisy-release--hero .daisy-release__art {
  order: 2;
  padding: 24px 40px;
}
.daisy-release--hero .daisy-release__img-link {
  max-width: 440px;
}
.daisy-release--hero .daisy-release__heading {
  font-size: 56px;
  max-width: 12ch;
}

@media screen and (max-width: 749px) {
  .daisy-release__inner,
  .daisy-release--hero .daisy-release__inner {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .daisy-release--hero .daisy-release__copy,
  .daisy-release--hero .daisy-release__art {
    order: initial;
  }
  .daisy-release__copy {
    padding: 24px 20px 32px;
    align-items: center;
    text-align: center;
  }
  .daisy-release__art {
    padding: 20px 20px 0;
  }
  .daisy-release__heading,
  .daisy-release--hero .daisy-release__heading {
    font-size: 34px;
    max-width: none;
  }
  .daisy-release--hero .daisy-release__img-link {
    max-width: 280px;
  }
}

/* ==========================================================================
   Wholesale accounts (customer tag "wholesale"): wholesale price with MSRP,
   header band, cart minimum notice. Settings under "Studio Daisy wholesale".
   ========================================================================== */
.daisy-ws-band {
  background: var(--daisy-band);
  border-bottom: 1px solid var(--daisy-rule);
  color: var(--color-foreground);
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
  padding: 7px 16px;
}
.daisy-ws-band b {
  font-weight: 600;
}

/* Price: wholesale first, pill beside it, MSRP struck through underneath */
.price.daisy-ws {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  column-gap: 8px;
  row-gap: 2px;
}
.daisy-ws__pill {
  display: inline-block;
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--daisy-pink);
  color: var(--color-foreground);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  line-height: 1.2;
  vertical-align: middle;
}
.daisy-ws__msrp,
.daisy-ws-msrp {
  flex: 1 1 100%;
  color: var(--daisy-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3;
}
.daisy-ws__msrp s,
.daisy-ws-msrp s {
  text-decoration-thickness: 1px;
}
/* Cards: centred stack */
.product-card__content .price.daisy-ws {
  justify-content: center;
  text-align: center;
}
/* Product page, beside the title: WHOLESALE pill on its own line, then price + MSRP on one line, right-aligned */
.product-details .group-block-content:has(> .text-block.h3 > h1) > .text-block.h3 {
  flex: 1 1 180px;
  min-width: 0;
}
.product-details .group-block-content:has(> .text-block.h3 > h1) .price.daisy-ws {
  display: grid;
  grid-template-columns: max-content max-content;
  white-space: nowrap;
  grid-template-areas: "pill ." "now msrp";
  justify-content: end;
  align-items: baseline;
  column-gap: 10px;
  row-gap: 4px;
}
.product-details .group-block-content:has(> .text-block.h3 > h1) .price.daisy-ws .daisy-ws__pill { grid-area: pill; justify-self: start; }
.product-details .group-block-content:has(> .text-block.h3 > h1) .price.daisy-ws .daisy-ws__now { grid-area: now; }
.product-details .group-block-content:has(> .text-block.h3 > h1) .price.daisy-ws .daisy-ws__msrp { grid-area: msrp; white-space: nowrap; }
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price .price .daisy-ws__pill {
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price .price .daisy-ws__msrp,
.product-details .group-block-content:has(> .text-block.h3 > h1) > product-price .price .daisy-ws__msrp * {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.3;
}
@media screen and (max-width: 749px) {
  .product-details .group-block-content:has(> .text-block.h3 > h1) .price.daisy-ws {
    justify-content: center;
  }
  .product-details .group-block-content:has(> .text-block.h3 > h1) .price.daisy-ws .daisy-ws__pill { justify-self: start; }
}

/* Cart lines */
.cart-items__unit-price-wrapper .daisy-ws-msrp {
  display: block;
}
.daisy-ws-msrp--line {
  margin-top: 2px;
  text-align: inherit;
}

/* Cart minimum notice */
.daisy-ws-notice {
  margin: 4px 0 14px;
  padding: 12px 14px;
  border: 1px solid var(--daisy-pink);
  background: var(--daisy-band);
  font-size: 13px;
  line-height: 1.5;
}
.daisy-ws-notice b {
  font-weight: 600;
}
.daisy-ws-notice--ok {
  border-color: #BFD8C2;
  background: #EAF4EB;
}
.daisy-ws-meter {
  display: block;
  height: 6px;
  margin: 8px 0 4px;
  border: 1px solid var(--daisy-rule);
  border-radius: 999px;
  background: #fff;
  overflow: hidden;
}
.daisy-ws-meter i {
  display: block;
  height: 100%;
  background: var(--daisy-pink);
}
.daisy-ws-notice--ok .daisy-ws-meter i {
  background: #8FBF96;
}
.daisy-ws-notice__sub {
  display: block;
  color: var(--daisy-muted);
  font-size: 12px;
}
.cart__checkout-button[disabled][aria-describedby="daisy-ws-notice"] {
  opacity: 0.45;
  cursor: not-allowed;
}

/* Wishlist page */
.daisy-wl-card__msrp {
  display: block;
  color: var(--daisy-muted);
  font-size: 12px;
  font-weight: 400;
}

/* PDP gallery: shown at card-plus size on desktop, centred in its column (copy deterrent + calmer page) */
@media screen and (min-width: 750px) {
  .product-information media-gallery,
  .product-details-wrapper media-gallery,
  media-gallery.sticky-content {
    max-width: 520px;
    margin-inline: auto;
  }
}

/* Product description: opening lines visible, the rest in two collapsed rows */
.daisy-desc > p { margin: 0 0 14px; }
.daisy-desc__links p { margin: 0 0 8px; }
.daisy-desc__links a { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--daisy-pink); }
.daisy-desc__links { margin: 0 0 18px; }
.daisy-desc__specs { line-height: 1.7; }
.daisy-acc { border-top: 1px solid var(--daisy-rule); }
.daisy-acc:last-child { border-bottom: 1px solid var(--daisy-rule); }
.daisy-acc summary {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 0; cursor: pointer; list-style: none;
  font-size: 14px; font-weight: 500;
}
.daisy-acc summary::-webkit-details-marker { display: none; }
.daisy-acc summary::after { content: "+"; font-size: 18px; color: var(--daisy-muted); }
.daisy-acc[open] summary::after { content: "–"; }
.daisy-acc__body { padding: 0 0 16px; color: var(--daisy-muted); font-size: 14px; line-height: 1.6; }
.daisy-acc__body p { margin: 0 0 10px; }
.daisy-acc__body a { color: var(--color-foreground); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--daisy-pink); }

/* PDP: gallery sits lower than the top of the details column, at a fixed offset, so it does not move
   when rows below the description expand (was align-self: center) */
@media screen and (min-width: 750px) {
  .product-information__grid .product-information__media {
    align-self: start;
    padding-top: 66px; /* measured: image top meets the cap height of the h1 (column padding + eyebrow + line-height lead) */
  }
  .product-information__media media-gallery.sticky-content {
    position: static;
  }
}

/* Collection strips under the product gallery: same width as the gallery, centred */
.daisy-media-strips {
  max-width: 520px;
  margin: 36px auto 0;
}
.daisy-media-strips .daisy-strip + .daisy-strip {
  margin-top: 28px;
}
@media screen and (max-width: 749px) {
  .daisy-media-strips {
    padding: 0 16px;
  }
}

/* Notes as plain text under the specs */
.daisy-desc__notes { margin-top: 6px; color: var(--daisy-muted); font-size: 14px; line-height: 1.6; }
.daisy-desc__notes p { margin: 0 0 10px; }

/* Related collections band under You may also like */
.daisy-related { padding-block: 8px 64px; }
.daisy-related .daisy-strip + .daisy-strip { margin-top: 40px; }
.daisy-related .daisy-strip__list { grid-template-columns: repeat(6, 1fr); }
@media screen and (max-width: 749px) {
  .daisy-related .daisy-strip__list { grid-template-columns: repeat(3, 1fr); }
}

/* PDP columns: image 520px, text 560px, pair centred (the outer tracks absorb the rest) */
@media screen and (min-width: 990px) {
  .product-information__grid.product-information__grid--half {
    grid-template-columns: minmax(40px, 1fr) 520px 560px minmax(40px, 1fr) !important;
    column-gap: 72px;
  }
}
