/** Shopify CDN: Minification failed

Line 448:12 Unexpected "{"
Line 448:21 Expected ":"
Line 458:12 Unexpected "{"
Line 458:21 Expected ":"
Line 463:12 Unexpected "{"
Line 463:21 Expected ":"
Line 469:12 Unexpected "{"
Line 469:21 Expected ":"

**/
carousel-slider-component {
  --desktop-margin-left-first-item: max(
    3.75rem,
    calc((100vw - var(--page-width) + 6rem - var(--grid-desktop-horizontal-spacing)) / 2)
  );
  position: relative;
  display: block;
}

carousel-slider-component.slider-component-full-width {
  --desktop-margin-left-first-item: 1.5rem;
}

@media screen and (max-width: 749px) {
  carousel-slider-component.page-width {
    padding: 0 1rem;
  }
}

@media screen and (min-width: 749px) and (max-width: 990px) {
  carousel-slider-component.page-width {
    padding: 0 5rem;
  }
}

.slider__slide {
  --focus-outline-padding: 0.5rem;
  --shadow-padding-top: calc(carousel-slider(var(--shadow-vertical-offset) * -1 + var(--shadow-blur-radius)) * var(--shadow-visible));
  --shadow-padding-bottom: calc((var(--shadow-vertical-offset) + var(--shadow-blur-radius)) * var(--shadow-visible));
  scroll-snap-align: start;
  flex-shrink: 0;
  padding-bottom: 0;
}

@media screen and (max-width: 749px) {
  .slider.slider--mobile {
    position: relative;
    flex-wrap: inherit;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scroll-padding-left: 1.5rem;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 1rem;
  }

  /* Fix to show some space at the end of our sliders in all browsers */
  .slider--mobile:after {
    content: '';
    width: 0;
    padding-left: 1.5rem;
  }

  .slider.slider--mobile .slider__slide {
    margin-bottom: 0;
    padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
    padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom));
  }

  carousel-slider-component .slider__slide {
    scroll-snap-align: none; /* Default: No snapping */
  }

  .slider.slider--mobile.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
    padding-bottom: var(--focus-outline-padding);
  }

  .slider.slider--mobile.contains-content-container .slider__slide {
    --focus-outline-padding: 0rem;
  }
}

@media screen and (min-width: 750px) {
  .slider.slider--tablet-up {
    position: relative;
    flex-wrap: inherit;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scroll-padding-left: 1rem;
    -webkit-overflow-scrolling: touch;
  }

  .slider.slider--tablet-up .slider__slide {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 989px) {
  .slider.slider--tablet {
    position: relative;
    flex-wrap: inherit;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scroll-padding-left: 1rem;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 1rem;
  }

  /* Fix to show some space at the end of our sliders in all browsers */
  .slider--tablet:after {
    content: '';
    width: 0;
    padding-left: 1rem;
    margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing));
  }

  .slider.slider--tablet .slider__slide {
    margin-bottom: 0;
    padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
    padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom));
  }

  .slider.slider--tablet.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
    padding-bottom: var(--focus-outline-padding);
  }

  .slider.slider--tablet.contains-content-container .slider__slide {
    --focus-outline-padding: 0rem;
  }
}

.slider--everywhere {
  position: relative;
  flex-wrap: inherit;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 1rem;
}

.slider.slider--everywhere .slider__slide {
  margin-bottom: 0;
  scroll-snap-align: center;
}

@media screen and (min-width: 990px) {
  .slider-component-desktop.page-width {
    max-width: none;
  }

  .slider--desktop {
    position: relative;
    flex-wrap: inherit;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 1rem;
    scroll-padding-left: var(--desktop-margin-left-first-item);
  }

  /* Fix to show some space at the end of our sliders in all browsers */
  .slider--desktop:after {
    content: '';
    width: 0;
    padding-left: 5rem;
    margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing));
  }

  .slider.slider--desktop .slider__slide {
    margin-bottom: 0;
    padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
    padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom));
  }

  .slider--desktop .slider__slide:first-child {
    margin-left: var(--desktop-margin-left-first-item);
    scroll-margin-left: var(--desktop-margin-left-first-item);
  }

  .slider-component-full-width .slider--desktop {
    scroll-padding-left: 1.5rem;
  }

  .slider-component-full-width .slider--desktop .slider__slide:first-child {
    margin-left: 1.5rem;
    scroll-margin-left: 1.5rem;
  }

  /* Fix to show some space at the end of our sliders in all browsers */
  .slider-component-full-width .slider--desktop:after {
    padding-left: 1.5rem;
  }

  .slider--desktop.grid--5-col-desktop .grid__item {
    width: calc((100% - var(--desktop-margin-left-first-item)) / 5 - var(--grid-desktop-horizontal-spacing) * 1);
  }

  .slider--desktop.grid--4-col-desktop .grid__item {
    width: calc((100% - var(--desktop-margin-left-first-item)) / 4 - var(--grid-desktop-horizontal-spacing) * 2);
  }

  .slider--desktop.grid--3-col-desktop .grid__item {
    width: calc((100% - var(--desktop-margin-left-first-item)) / 3 - var(--grid-desktop-horizontal-spacing) * 3);
  }

  .slider--desktop.grid--2-col-desktop .grid__item {
    width: calc((100% - var(--desktop-margin-left-first-item)) / 2 - var(--grid-desktop-horizontal-spacing) * 4);
  }

  .slider--desktop.grid--1-col-desktop .grid__item {
    width: calc((100% - var(--desktop-margin-left-first-item)) - var(--grid-desktop-horizontal-spacing) * 8);
  }

  .slider.slider--desktop.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
    padding-bottom: var(--focus-outline-padding);
  }

  .slider.slider--desktop.contains-content-container .slider__slide {
    --focus-outline-padding: 0rem;
  }
}

@media (prefers-reduced-motion) {
  .slider {
    scroll-behavior: auto;
  }
}

/* Scrollbar */

.slider {
  scrollbar-color: rgb(var(--color-foreground)) rgba(var(--color-foreground), 0.04);
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.slider::-webkit-scrollbar {
  height: 0.4rem;
  width: 0.4rem;
  display: none;
}

.slider::-webkit-scrollbar-thumb {
  background-color: rgb(var(--color-foreground));
  border-radius: 0.4rem;
  border: 0;
}

.slider::-webkit-scrollbar-track {
  background: rgba(var(--color-foreground), 0.04);
  border-radius: 0.4rem;
}

.slider-counter {
  display: flex;
  justify-content: center;
  min-width: 4.4rem;
}

@media screen and (min-width: 750px) {
  .slider-counter--dots {
    margin: 0 1.2rem;
  }
}

.slider-counter__link {
  padding: 1rem;
}

@media screen and (max-width: 749px) {
  .slider-counter__link {
    padding: 0.7rem;
  }
}

.slider-counter__link--dots .dot {
  width: .5rem;
  height: .5rem;
  border-radius: 50%;
  padding: 0;
  display: block;
}

.slider-counter__link--dots .dot {
  background-color: #e1e1e1;
}

.slider-counter__link--active.slider-counter__link--dots .dot {
  background-color: #aeaeae;
}

@media screen and (forced-colors: active) {
  .slider-counter__link--active.slider-counter__link--dots .dot {
    background-color: CanvasText;
  }
}

.slider-counter__link--dots:not(.slider-counter__link--active):hover .dot {
  border-color: rgb(var(--color-foreground));
}

.slider-counter__link--dots .dot,
.slider-counter__link--numbers {
  transition: transform 0.2s ease-in-out;
}

.slider-counter__link--active.slider-counter__link--numbers,
.slider-counter__link--dots:not(.slider-counter__link--active):hover .dot,
.slider-counter__link--numbers:hover {
  transform: scale(1.1);
}

.slider-counter__link--numbers {
  color: rgba(var(--color-foreground), 0.5);
  text-decoration: none;
}

.slider-counter__link--numbers:hover {
  color: rgb(var(--color-foreground));
}

.slider-counter__link--active.slider-counter__link--numbers {
  text-decoration: underline;
  color: rgb(var(--color-foreground));
}

.slider-buttons {
  display: flex;
  align-items: center;
  justify-content: center;
}

carousel-slider-component .slider-button {
  color: rgba(var(--color-button-text), 1);
  background-color: rgba(var(--color-button),var(--alpha-button-background));
  border-radius: 50%;
  border: none;
  cursor: pointer;
  width: 44px;
  height: 44px;
  display: none;
  align-items: center;
  justify-content: center;
}

carousel-slider-component .slider-button {
  border: 1px solid rgba(var(--color-button-text), 1)
}

carousel-slider-component .slider-button:not([disabled]):hover {
  color: rgba(var(--color-button),var(--alpha-button-background));
  background-color: rgba(var(--color-button-text), 1);
}

.slider-button:not([disabled]):hover {
    color: rgba(var(--color-foreground), .75);
}

.slider-button .icon {
  height: 1rem;
}

.slider-button--next .icon {
  transform: rotate(-90deg);
}

.slider-button--prev .icon {
  transform: rotate(90deg);
}

.slider-button--next:not([disabled]):hover .icon {
  transform: rotate(-90deg) scale(1.1);
}

.slider-button--prev:not([disabled]):hover .icon {
  transform: rotate(90deg) scale(1.1);
}

@media screen and (min-width: 990px) {
  .slider:not(.slider--everywhere):not(.slider--desktop) + .slider-buttons {
    display: none;
  }
}

@media screen and (max-width: 989px) {
  .slider--desktop:not(.slider--tablet) + .slider-buttons {
    display: none;
  }
}

@media screen and (min-width: 750px) {
  carousel-slider-component .slider-buttons {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    top: 50%;
    transform: translate(8px,-50%);
    right: 22px; /* Half button width */
    width: calc(100% - var(--desktop-margin-left-first-item) + 11px); /* Quarter button width */
  }

  .collection-content carousel-slider-component .slider-buttons, product-recommendations carousel-slider-component .slider-buttons {
    top: 35%;
    transform: translate(8px,-35%);
  }
  
  .slider--mobile + .slider-buttons {
    display: none;
  }

  carousel-slider-component .slider-button {
    display: flex;
  }

}

.slider-button .svg-wrapper {
  height: unset;
  width: unset;
}

.slider-button .icon {
  height: 1rem;
}

carousel-slider-component .slider-button[disabled] {
  visibility: hidden;
  opacity: 0;
}

/* Style for alignment of sliders that don't exceed 4 columns */
.collection.has-active-slider .collection-content ul.product-grid:not(.slider) {
  --slider-button-space: 60px; /* Adjust as needed */
  padding-left: var(--slider-button-space);
  padding-right: var(--slider-button-space);
  box-sizing: border-box;
}

@media screen and (max-width: 989px) {
  /* Default style for NON-PEEKING mobile slides (ensure padding) */
  .section-{{ section.id }} carousel-slider-component .slider--tablet.grid--1-col-tablet-down:not(.grid--peek) .slider__slide {
    max-width: calc(100% - 2rem); /* Example: 1.5rem padding each side */
    margin-left: 1em; /* Align first item with padding */
    margin-right: 1rem; /* Add space between non-peeking slides */
    padding-left: 0; /* Reset padding if any was added */
    padding-right: 0;
    flex-shrink: 0; /* Ensure slides don't shrink */
  }

  /* Default scroll padding for NON-PEEKING mobile */
  .section-{{ section.id }} carousel-slider-component .slider--tablet.grid--1-col-tablet-down:not(.grid--peek) {
    scroll-padding-left: 1.5rem; /* Match the slide margin/padding */
  }

  /* Keep dot container padding */
  .section-{{ section.id }} carousel-slider-component .slider__control-wrapper {
    padding: 0;
  }
}

@media screen and (min-width: 750px) {
  .section-{{ section.id }} carousel-slider-component ul:not(.slider--desktop) {
    margin-left: var(--desktop-margin-left-first-item, 5rem); /* Added fallback */
    margin-right: var(--desktop-margin-left-first-item, 5rem); /* Added fallback */
    box-sizing: border-box;
    width: auto; /* Allow grid to manage width */
  }
}
