/* stylelint-disable selector-type-no-unknown -- ::scroll-button(left/right) is valid */
/* stylelint-disable no-descending-specificity -- N/A */
/* stylelint-disable scss/operator-no-unspaced -- N/A */
.adce2-carousel {
  --carousel-arrow-radius: 100px;
  --carousel-arrow-width: 3rem;
  --carousel-arrow-height: 2.25rem;
  --carousel-arrow-prev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='M12.669 8H3.336M8.005 3.334 3.338 8.001l4.667 4.666'/%3E%3C/svg%3E");
  --carousel-arrow-next: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='M3.336 8h9.333M8 3.334l4.667 4.667L8 12.667'/%3E%3C/svg%3E");
  --carousel-controls-gap: var(--wp--preset--spacing--50);
  --carousel-gap: 1rem;
  --carousel-track-width: 4rem;
  --carousel-track-height: 0.5rem;
  --carousel-thumb-width: 1.5rem;
  --carousel-track-color: var(--wp--preset--color--dividers-10);
  position: relative;
  width: 100%;
}
.adce2-carousel__slides {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--carousel-gap);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
.adce2-carousel__slides::-webkit-scrollbar {
  display: none;
}
.adce2-carousel__slides > * {
  flex: 0 0 auto;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}
.adce2-carousel__slides.adce2-carousel--single {
  overflow-x: visible;
  overscroll-behavior-x: auto;
  scroll-snap-type: none;
}
.adce2-carousel__slides.adce2-carousel--single + .adce2-carousel__controls {
  display: none;
}
.adce2-carousel__controls {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--wp--preset--spacing--30);
  margin-block-start: var(--carousel-controls-gap);
}
.adce2-carousel__controls__prev {
  background-image: var(--carousel-arrow-prev);
}
.adce2-carousel__controls__next {
  background-image: var(--carousel-arrow-next);
}
.adce2-carousel__controls__prev, .adce2-carousel__controls__next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--carousel-arrow-width);
  height: var(--carousel-arrow-height);
  border: 1px solid var(--wp--preset--color--dividers-20);
  border-radius: var(--carousel-arrow-radius);
  color: inherit;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 1rem;
  background-position: center;
  cursor: pointer;
}
.adce2-carousel__controls__prev:disabled, .adce2-carousel__controls__next:disabled {
  cursor: default;
  opacity: 0.5;
}
.adce2-carousel__controls__track {
  position: relative;
  width: var(--carousel-track-width);
  height: var(--carousel-track-height);
  border-radius: 100px;
  background: var(--carousel-track-color);
}
.adce2-carousel__controls__track[hidden] {
  display: none;
}
.adce2-carousel__controls__thumb {
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  width: var(--carousel-thumb-width);
  height: 100%;
  border-radius: 100px;
  background: currentcolor;
  translate: 0 0;
}
@supports selector(::scroll-button(*)) {
  .adce2-carousel {
    --carousel-toggle: var(--carousel-can-scroll) block;
    timeline-scope: --carousel-progress;
    animation: carousel-detect-scroll linear both;
    animation-timeline: --carousel-progress;
  }
  .adce2-carousel__controls {
    display: none;
  }
  .adce2-carousel__slides {
    scroll-timeline: --carousel-progress x;
  }
  .adce2-carousel__slides::scroll-button(*) {
    all: initial;
    position: absolute;
    top: 100%;
    display: var(--carousel-toggle, none);
    border: 1px solid var(--wp--preset--color--dividers-20);
    border-radius: var(--carousel-arrow-radius);
    background-color: transparent;
    background-repeat: no-repeat;
    background-size: 1rem;
    background-position: center;
    cursor: pointer;
    padding: 0.5625rem 0.9375rem;
    line-height: 0;
  }
  .adce2-carousel__slides::scroll-button(*):disabled {
    opacity: 0.35;
    cursor: default;
  }
  .adce2-carousel__slides::scroll-button(*):focus-visible {
    outline: 1px solid rgb(0, 95, 204);
  }
  .adce2-carousel__slides::scroll-button(left) {
    content: var(--carousel-arrow-prev)/"Previous";
  }
  .adce2-carousel__slides::scroll-button(right) {
    content: var(--carousel-arrow-next)/"Next";
  }
  .adce2-carousel--with-progress::before, .adce2-carousel--with-progress::after {
    content: "";
    position: absolute;
    bottom: calc(var(--carousel-arrow-height) / 2 - var(--carousel-track-height) / 2);
    right: calc(var(--carousel-arrow-width) + var(--carousel-gap));
    height: var(--carousel-track-height);
    border-radius: 100px;
    pointer-events: none;
    display: var(--carousel-toggle, none);
  }
  .adce2-carousel--with-progress::before {
    width: var(--carousel-track-width);
    background: var(--carousel-track-color);
  }
  .adce2-carousel--with-progress::after {
    width: var(--carousel-thumb-width);
    background: currentcolor;
    animation: adce2-carousel-thumb linear both;
    animation-timeline: --carousel-progress;
  }
  .adce2-carousel--with-progress .adce2-carousel__slides::scroll-button(*) {
    top: auto;
    bottom: 0;
  }
  .adce2-carousel--with-progress .adce2-carousel__slides::scroll-button(right) {
    right: 0;
  }
  .adce2-carousel--with-progress .adce2-carousel__slides::scroll-button(left) {
    right: calc(var(--carousel-arrow-width) + var(--carousel-track-width) + 2 * var(--carousel-gap));
  }
  .adce2-carousel--with-progress:has(.adce2-carousel__slides + .adce2-carousel__controls) .adce2-carousel__slides::scroll-button(*), .adce2-carousel--with-progress:has(.adce2-carousel__slides + .adce2-carousel__controls)::before, .adce2-carousel--with-progress:has(.adce2-carousel__slides + .adce2-carousel__controls)::after {
    bottom: unset;
  }
  .adce2-carousel--with-progress:has(.adce2-carousel__slides + .adce2-carousel__controls) .adce2-carousel__slides::scroll-button(*) {
    top: calc(100% + var(--carousel-controls-gap));
  }
  .adce2-carousel--with-progress:has(.adce2-carousel__slides + .adce2-carousel__controls)::before, .adce2-carousel--with-progress:has(.adce2-carousel__slides + .adce2-carousel__controls)::after {
    top: calc(100% + var(--carousel-controls-gap) + var(--carousel-arrow-height) / 2 - var(--carousel-track-height) / 2);
  }
  @keyframes carousel-detect-scroll {
    from, to {
      --carousel-can-scroll: ;
    }
  }
  @keyframes adce2-carousel-thumb {
    from {
      translate: calc((var(--carousel-track-width) - var(--carousel-thumb-width)) * -1) 0;
    }
    to {
      translate: 0 0;
    }
  }
}
/*# sourceMappingURL=carousel.css.map */