.bss-product-carousel__controls button{opacity:.7;transition:background-color .2s ease,color .2s ease,opacity .2s ease,transform .2s cubic-bezier(.2,.8,.2,1)}.bss-product-carousel__controls button:hover,.bss-product-carousel__controls button:focus-visible{opacity:1}.bss-product-carousel__controls button.bss-product-carousel__control--asset,.bss-product-carousel__controls button.bss-product-carousel__control--asset:hover,.bss-product-carousel__controls button.bss-product-carousel__control--asset:focus-visible{padding:0;border:0;border-radius:0;background:transparent!important;color:inherit}.bss-product-carousel__controls button.bss-product-carousel__control--asset img{width:100%;height:100%;object-fit:contain}.bss-product-carousel__drag.bss-product-carousel__drag--asset{border-radius:0;background:transparent!important;color:inherit}.bss-product-carousel__drag.bss-product-carousel__drag--asset img{width:100%;height:100%;object-fit:contain}.bss-product-carousel.bss-product-carousel__drag-hidden .bss-product-carousel__drag{opacity:0!important}.bss-product-carousel__pointer-active.bss-product-carousel__drag-pressed .bss-product-carousel__drag{transform:translate3d(calc(var(--bss-drag-x,50%) - 50%),calc(var(--bss-drag-y,50%) - 50%),0) scale(.8)}.bss-product-carousel__viewport[data-bss-drag-position="top-left"].bss-product-carousel__drag-pressed .bss-product-carousel__drag,.bss-product-carousel__viewport[data-bss-drag-position="top-right"].bss-product-carousel__drag-pressed .bss-product-carousel__drag,.bss-product-carousel__viewport[data-bss-drag-position="bottom-left"].bss-product-carousel__drag-pressed .bss-product-carousel__drag,.bss-product-carousel__viewport[data-bss-drag-position="bottom-right"].bss-product-carousel__drag-pressed .bss-product-carousel__drag{transform:scale(.8)}.bss-product-carousel__viewport[data-bss-drag-position="center"].bss-product-carousel__drag-pressed .bss-product-carousel__drag{transform:translate(-50%,-50%) scale(.8)}
.bss-product-carousel--text-hover .bss-product-carousel__viewport {
  /* Reserve the full drop travel inside the clipping box. Keep horizontal
     clipping intact so adjacent/offscreen slides do not leak out. */
  padding-bottom: calc(var(--bss-text-hover-distance, 20px) + .35em);
}
.bss-product-carousel--text-hover .bss-product-carousel__meta {
  opacity: 0;
  transform: translate3d(0, var(--bss-text-hover-distance, 20px), 0);
  transition: opacity var(--bss-text-hover-duration, .4s) cubic-bezier(.16, 1, .3, 1), transform var(--bss-text-hover-duration, .4s) cubic-bezier(.16, 1, .3, 1);
}
.bss-product-carousel--text-hover .bss-product-carousel__card:hover .bss-product-carousel__meta,
.bss-product-carousel--text-hover .bss-product-carousel__card:focus-visible .bss-product-carousel__meta {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-timing-function: cubic-bezier(.16, 1, .3, 1);
}
/* Touch devices cannot hover: keep product labels visible and accessible. */
@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) {
  .bss-product-carousel--text-hover .bss-product-carousel__viewport {
    padding-bottom: .35em;
  }
  .bss-product-carousel--text-hover .bss-product-carousel__meta {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
@media (hover: none), (pointer: coarse) {
  .bss-product-carousel .bss-product-carousel__drag { display: none !important; }
  .bss-product-carousel .bss-product-carousel__viewport { cursor: auto !important; }
  .bss-product-carousel--hover-dim .swiper-wrapper:hover .bss-product-carousel__slide:not(:hover) { opacity: 1; }
  .bss-product-carousel .bss-product-carousel__card:hover .bss-product-carousel__image img { transform: none !important; }
  .bss-product-carousel__controls button { min-width: 44px; min-height: 44px; }
}
