/* Slider lokal pengganti Slick yang tidak ikut tersimpan saat Save Page */
#banner_carousel.local-slider {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #111;
}
#banner_carousel .local-slider-track {
  position: relative;
  width: 100%;
}
#banner_carousel .local-slide {
  display: none;
  width: 100%;
}
#banner_carousel .local-slide.is-active {
  display: block;
  animation: localSliderFade .45s ease;
}
#banner_carousel .local-slide img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1920 / 600;
  object-fit: cover;
}
#banner_carousel .local-slider-dots {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  display: flex;
  gap: 5px;
  z-index: 5;
  margin: 0;
  padding: 0;
  list-style: none;
}
#banner_carousel .local-slider-dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 1px solid rgba(255,255,255,.95);
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}
#banner_carousel .local-slider-dot.is-active {
  background: #e51b23;
  border-color: #e51b23;
}
#banner_carousel .local-slider-arrow {
  position: absolute;
  top: 50%;
  z-index: 5;
  width: 38px;
  height: 38px;
  transform: translateY(-50%);
  border: 0;
  border-radius: 50%;
  background: rgba(0,0,0,.45);
  color: #fff;
  font-size: 24px;
  line-height: 38px;
  cursor: pointer;
}
#banner_carousel .local-slider-arrow.prev { left: 12px; }
#banner_carousel .local-slider-arrow.next { right: 12px; }
@keyframes localSliderFade {
  from { opacity: .35; }
  to { opacity: 1; }
}
@media (max-width: 640px) {
  #banner_carousel .local-slider-arrow { display: none; }
  #banner_carousel .local-slider-dots { bottom: 6px; gap: 4px; }
  #banner_carousel .local-slider-dot { width: 8px; height: 8px; }
}
