/*!*********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./template/acf-blocks/product-category-carousel/style.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************/
.category-carousel {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: flex-end;
  gap: 32px;
  align-self: stretch;
  background: var(--global-adaptive-bg-bgsecondary, #fff);
  overflow-x: hidden;
}
.category-carousel:not([data-carousel-initialized=true]) .category-carousel__swiper-container {
  opacity: 0;
}
.category-carousel[data-carousel-initialized=true] .category-carousel__swiper-container {
  opacity: 1;
  transition: opacity 0.4s ease;
}
.category-carousel__title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-self: stretch;
}
.category-carousel__title-heading {
  align-self: stretch;
  color: var(--adaptivestyles-copyprimary, var(--global-adaptive-bg-copyprimary, #000));
  font-size: var(--fontsize-24, 24px);
  font-style: normal;
  font-weight: var(--typo-headingweight, 500);
  line-height: 125%;
  margin: 0;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .category-carousel__title-heading {
    font-size: var(--fontsize-40, 40px);
  }
}
.category-carousel__title-button-box {
  display: flex;
  align-items: center;
  gap: 8px;
}
.category-carousel__title-button-box-slider-buttons {
  display: flex;
  gap: 8px;
}
.category-carousel__title-button-box .button-desktop-only {
  display: none;
}
@media (min-width: 768px) {
  .category-carousel__title-button-box .button-desktop-only {
    display: flex;
  }
}
.category-carousel .button-mobile-only {
  width: 100%;
  text-decoration: none;
}
.category-carousel .button-mobile-only button {
  width: 100%;
}
@media (min-width: 768px) {
  .category-carousel .button-mobile-only {
    display: none;
  }
}
.category-carousel__swiper-container {
  width: 100%;
  overflow: visible;
  position: relative;
}
.category-carousel__row {
  display: flex;
  align-items: flex-start;
  align-self: stretch;
  flex-wrap: nowrap;
  will-change: transform;
}

.category-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
  text-decoration: none;
  will-change: transform;
  transform: translateZ(0);
  transition: transform 0.2s ease-in-out;
}
.category-card__image-wrapper {
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--global-adaptive-bg-bgtertiary, #f5f5f5);
  contain: layout style paint;
}
.category-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease-in-out;
}
.category-card:hover .category-card__image {
  transform: scale(1.05);
}
.category-card__name {
  color: var(--adaptivestyles-copyprimary, #000);
  text-align: center;
  font-size: var(--fontsize-16, 16px);
  font-style: normal;
  font-weight: var(--typo-bodyweightregular, 400);
  line-height: 150%;
  margin: 0;
}
@media (min-width: 576px) {
  .category-card__name {
    font-size: var(--fontsize-18, 18px);
  }
}

.category-carousel .swiper-button-prev,
.category-carousel .swiper-button-next {
  display: none !important;
}

.category-carousel .swiper-wrapper {
  display: flex;
  align-items: stretch;
}
.category-carousel .swiper-slide {
  height: auto;
  display: flex;
}

.category-carousel .swiper-pagination {
  position: relative;
  margin-top: 20px;
}
@media (min-width: 768px) {
  .category-carousel .swiper-pagination {
    display: none;
  }
}
.category-carousel .swiper-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: currentColor;
  opacity: 0.3;
  transition: all 0.3s ease;
}
.category-carousel .swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  width: 24px;
  border-radius: 4px;
}

.block-product-category-carousel--placeholder {
  padding: 40px;
  background: #f0f0f0;
  text-align: center;
  border: 2px dashed #ccc;
}
.block-product-category-carousel--placeholder p {
  margin: 0;
  color: #666;
  font-size: 16px;
}
