/* RC15: пропорциональные стрелки и аккуратные индикаторы карусели без грубого затемнения баннера */
.page-home #carouselExampleIndicators.clean-carousel {
  position: relative;
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-control-prev,
.page-home #carouselExampleIndicators.clean-carousel .carousel-control-next {
  top: 50%;
  bottom: auto;
  width: clamp(46px, 4.6vw, 62px);
  height: clamp(46px, 4.6vw, 62px);
  transform: translateY(-50%);
  margin: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.14);
  color: #fff;
  opacity: 1;
  transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-control-prev {
  left: clamp(10px, 1.3vw, 16px);
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-control-next {
  right: clamp(10px, 1.3vw, 16px);
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-control-prev:hover,
.page-home #carouselExampleIndicators.clean-carousel .carousel-control-prev:focus,
.page-home #carouselExampleIndicators.clean-carousel .carousel-control-next:hover,
.page-home #carouselExampleIndicators.clean-carousel .carousel-control-next:focus {
  background: rgba(245, 130, 32, 0.24);
  border-color: rgba(245, 130, 32, 0.52);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.18);
  opacity: 1;
  outline: 0;
  transform: translateY(-50%) scale(1.03);
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-control-prev-icon,
.page-home #carouselExampleIndicators.clean-carousel .carousel-control-next-icon {
  width: clamp(20px, 2.1vw, 24px);
  height: clamp(20px, 2.1vw, 24px);
  filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.22));
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-indicators {
  left: 50%;
  right: auto;
  bottom: clamp(6px, 1vw, 10px);
  transform: translateX(-50%);
  z-index: 5;
  width: fit-content;
  max-width: calc(100% - 52px);
  margin: 0;
  padding: 7px 12px;
  gap: 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.46);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.10);
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-indicators [data-stm-target] {
  flex: 0 0 auto;
  width: clamp(26px, 2.8vw, 34px);
  height: 6px;
  margin: 0;
  border: 0;
  border-radius: 999px;
  background-color: rgba(15, 23, 42, 0.24);
  opacity: 1;
  transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-indicators [data-stm-target]:hover,
.page-home #carouselExampleIndicators.clean-carousel .carousel-indicators [data-stm-target]:focus {
  background-color: rgba(245, 130, 32, 0.42);
  box-shadow: 0 0 0 1px rgba(245, 130, 32, 0.14);
  transform: scaleX(1.06);
  outline: 0;
}

.page-home #carouselExampleIndicators.clean-carousel .carousel-indicators .active {
  background-color: #f58220;
  box-shadow: 0 0 0 1px rgba(245, 130, 32, 0.20), 0 4px 12px rgba(245, 130, 32, 0.18);
}

@media (max-width: 768px) {
  .page-home #carouselExampleIndicators.clean-carousel .carousel-control-prev,
  .page-home #carouselExampleIndicators.clean-carousel .carousel-control-next {
    width: 44px;
    height: 44px;
  }

  .page-home #carouselExampleIndicators.clean-carousel .carousel-indicators {
    bottom: 6px;
    gap: 8px;
    padding: 6px 10px;
  }

  .page-home #carouselExampleIndicators.clean-carousel .carousel-indicators [data-stm-target] {
    width: 24px;
    height: 5px;
  }
}

@media (max-width: 480px) {
  .page-home #carouselExampleIndicators.clean-carousel .carousel-control-prev,
  .page-home #carouselExampleIndicators.clean-carousel .carousel-control-next {
    width: 40px;
    height: 40px;
  }
}
