/* Image Carousel – Benz Digital */
.bd-image-carousel {
  position: relative;
  width: 100%;
}

.bd-image-carousel.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.bd-ic__viewport {
  overflow: hidden; /* versteckt eventuelle Ränder */
}

.bd-ic__track {
  display: flex;
  scroll-snap-type: x mandatory;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  overscroll-behavior-x: contain;

  /* Scrollbar ausblenden (Cross-Browser) */
  scrollbar-width: none;           /* Firefox */
  -ms-overflow-style: none;        /* IE/Edge Legacy */
}
.bd-ic__track::-webkit-scrollbar { /* WebKit */
  width: 0;
  height: 0;
  display: none;
}

/* Jede Slide exakt Viewport-breit -> kein "1px Bleed" */
.bd-ic__slide {
  position: relative;
  flex: 0 0 100%;
  min-width: 100%;
  scroll-snap-align: start;
  scroll-snap-stop: always; /* verhindert teilweises Einrasten */
  background: #f4f6f5;
}

.bd-ic__img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

/* Aspect ratios */
.bd-image-carousel.ratio-16x9 .bd-ic__slide { aspect-ratio: 16/9; }
.bd-image-carousel.ratio-4x3  .bd-ic__slide { aspect-ratio: 4/3; }
.bd-image-carousel.ratio-3x2  .bd-ic__slide { aspect-ratio: 3/2; }
.bd-image-carousel.ratio-1x1  .bd-ic__slide { aspect-ratio: 1/1; }
.bd-image-carousel.ratio-21x9 .bd-ic__slide { aspect-ratio: 21/9; }
/* auto → keine feste Höhe */

/* Dots */
.bd-ic__dots {
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
  margin-top: 14px;
}

.bd-ic__dot {
  all: unset;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: none;
  background: #cfd8d3;
  opacity: .8;
  cursor: pointer;
}

.bd-ic__dot[aria-current="true"] {
  background: #44524b;
  opacity: 1;
}

/* Arrows */
.bd-ic__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: rgba(255, 255, 255, .85);
  width: 36px;
  height: 36px;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
  cursor: pointer;
  display: grid;
  place-items: center;
}

.bd-ic__arrow--prev { left: 10px; }
.bd-ic__arrow--next { right: 10px; }

.bd-ic__arrow:hover { background: #fff; }