/* CBI Product Discovery v1.5.0 — shared by product detail and cart */
body.single-product.cbi-exact-body .cbi-single-product-reference,
body.cbi-exact-body .cbi-product-discovery {
  --cbi-detail-ink: #111827;
  --cbi-detail-muted: #767d8d;
  --cbi-detail-line: #e7e8ec;
  --cbi-discovery-bg: #f3f3f3;
}

/* Keep the original single-product gallery, thumbnail rail and summary proportions.
   Discovery sections may be wider, but the main product layout is owned by cbi-exact.css. */
body.single-product.cbi-exact-body .cbi-single-product-reference .cbi-single-after-summary {
  width: min(1440px, calc(100% - 56px)) !important;
  max-width: 1440px !important;
}

/* Sale price first; regular price smaller, muted and struck through. */
body.single-product.cbi-exact-body .summary .price.cbi-single-price {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 8px 10px !important;
  margin: 8px 0 18px !important;
  line-height: 1.15 !important;
}

body.single-product.cbi-exact-body .summary .price.cbi-single-price ins,
body.single-product.cbi-exact-body .summary .price.cbi-single-price .cbi-single-price__current {
  order: 1 !important;
  color: var(--cbi-detail-ink) !important;
  font-size: clamp(22px, 2vw, 28px) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  background: transparent !important;
}

body.single-product.cbi-exact-body .summary .price.cbi-single-price del,
body.single-product.cbi-exact-body .summary .price.cbi-single-price .cbi-single-price__regular {
  order: 2 !important;
  color: #9a9fa9 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  opacity: 1 !important;
  text-decoration-thickness: 1px !important;
  text-decoration-color: #aeb2bb !important;
}

body.single-product.cbi-exact-body .summary .price.cbi-single-price del .amount,
body.single-product.cbi-exact-body .summary .price.cbi-single-price ins .amount {
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
}

body.single-product.cbi-exact-body .cbi-single-product-reference .cbi-single-after-summary {
  margin: clamp(84px, 8vw, 128px) auto 0 !important;
  min-width: 0 !important;
}
/* Discovery sections: stable minimal cards that never overlap the image or footer. */
body.single-product.cbi-exact-body .cbi-single-product-reference .cbi-single-after-summary {
  padding-bottom: clamp(68px, 7vw, 104px) !important;
}

body.cbi-exact-body .cbi-product-discovery {
  position: relative;
  min-width: 0;
  padding-top: 28px;
  border-top: 1px solid var(--cbi-detail-line);
  overflow: visible;
}

body.cbi-exact-body .cbi-product-discovery[hidden] {
  display: none !important;
}

body.cbi-exact-body .cbi-product-discovery + .cbi-product-discovery {
  margin-top: 76px;
}

body.cbi-exact-body .cbi-product-discovery__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  text-align: center;
}

body.cbi-exact-body .cbi-product-discovery__heading h2 {
  margin: 0 !important;
  color: var(--cbi-detail-ink) !important;
  font-size: clamp(16px, 1.25vw, 19px) !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  letter-spacing: -.01em !important;
  white-space: nowrap !important;
}

body.cbi-exact-body .cbi-product-discovery__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(12px, 1.25vw, 20px);
  align-items: start;
  min-width: 0;
  outline: none;
}







@media (max-width: 1240px) {
  body.cbi-exact-body .cbi-product-discovery__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  body.single-product.cbi-exact-body .cbi-single-product-reference .cbi-single-after-summary {
    width: calc(100% - 32px) !important;
  }

  body.cbi-exact-body .cbi-product-discovery__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  body.single-product.cbi-exact-body .cbi-single-product-reference .cbi-single-after-summary {
    width: 100% !important;
    margin-top: 32px !important;
    padding: 0 16px 0 !important;
    overflow: hidden !important;
  }

  body.single-product.cbi-exact-body .summary .price.cbi-single-price {
    margin-bottom: 16px !important;
  }

  body.single-product.cbi-exact-body .summary .price.cbi-single-price ins,
  body.single-product.cbi-exact-body .summary .price.cbi-single-price .cbi-single-price__current {
    font-size: 22px !important;
  }

  body.cbi-exact-body .cbi-product-discovery {
    padding-top: 16px;
  }

  body.cbi-exact-body .cbi-product-discovery + .cbi-product-discovery {
    margin-top: 24px;
  }

  body.cbi-exact-body .cbi-product-discovery__heading {
    justify-content: flex-start;
    margin-bottom: 14px;
    text-align: left;
  }

  body.cbi-exact-body .cbi-product-discovery__heading h2 {
    font-size: 17px !important;
  }

  body.cbi-exact-body .cbi-product-discovery__grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: clamp(132px, 42vw, 168px) !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-padding-inline: 1px !important;
    overscroll-behavior-inline: contain !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
    padding: 1px 1px 10px !important;
  }

  body.cbi-exact-body .cbi-product-discovery__grid::-webkit-scrollbar {
    display: none !important;
  }


}

@media (max-width: 380px) {
  body.single-product.cbi-exact-body .cbi-single-product-reference .cbi-single-after-summary {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }

  body.cbi-exact-body .cbi-product-discovery__grid {
    grid-auto-columns: clamp(126px, 43vw, 154px) !important;
    gap: 9px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.cbi-exact-body .cbi-product-discovery__grid *,
  body.cbi-exact-body .cbi-product-discovery__grid *::before,
  body.cbi-exact-body .cbi-product-discovery__grid *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}


body.cbi-exact-body .cbi-product-discovery__grid .cbi-product-media-shell,
body.cbi-exact-body .cbi-product-discovery__grid .product-image-wrapper,
body.cbi-exact-body .cbi-product-discovery__grid .cbi-product-media,
body.cbi-exact-body .cbi-product-discovery__grid .cbi-product-summary,
body.cbi-exact-body .cbi-product-discovery__grid .card-body {
  box-sizing: border-box !important;
  max-width: 100% !important;
}

body.cbi-exact-body .cbi-product-discovery__grid .cbi-color-dot,
body.cbi-exact-body .cbi-product-discovery__grid button.color-dot {
  box-sizing: border-box !important;
  margin: 3px !important;
  transform-origin: center !important;
}

body.cbi-exact-body .cbi-product-discovery__grid .cbi-color-dot.is-selected,
body.cbi-exact-body .cbi-product-discovery__grid .cbi-color-dot[aria-pressed="true"],
body.cbi-exact-body .cbi-product-discovery__grid .cbi-color-dot:focus-visible {
  outline-offset: 2px !important;
}

