.ljt-heritage-slider { position: relative; width: 100%; }
.ljt-heritage-slider__viewport { position: relative; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 14px; box-shadow: 0 10px 30px rgba(0,0,0,.15); }
.ljt-heritage-slider__track { display: flex; width: 100%; height: 100%; transition: transform .6s cubic-bezier(.65,0,.35,1); }
.ljt-heritage-slider__slide { position: relative; flex: 0 0 100%; height: 100%; margin: 0; }
.ljt-heritage-slider__slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ljt-heritage-slider__slide figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 10px 14px 12px; font-size: 13px; line-height: 1.3; color: #fff; background: linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,0)); }
.ljt-heritage-slider__slide figcaption span { opacity: .75; font-size: 11px; }

/* Refined Premium Navigation Arrows with High Specificity Reset */
.ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  
  /* Hard reset dimensions and shape */
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  
  padding: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin: 0 !important;
  border-radius: 50% !important;
  line-height: 1 !important;
  flex: 0 0 40px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  box-sizing: border-box !important;
  
  /* Styling and aesthetics */
  border: 1px solid rgba(255, 255, 255, 0.65) !important;
  background: rgba(255, 255, 255, 0.88) !important;
  background-image: none !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
  text-shadow: none !important;
  
  /* Text and icon layout */
  color: transparent !important;
  font-size: 0 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0;
  transition: opacity 0.25s ease, background 0.2s ease, transform 0.2s ease !important;
  z-index: 2 !important;
  outline: none !important;
}

.ljt-heritage-slider .ljt-heritage-slider__viewport:hover button.ljt-heritage-slider__arrow {
  opacity: 1 !important;
}

.ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow:hover {
  background: rgba(255, 255, 255, 0.98) !important;
  transform: translateY(-50%) scale(1.06) !important;
}

.ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow--prev {
  left: 14px !important;
}

.ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow--next {
  right: 14px !important;
}

/* CSS-Drawn Thin Dark Charcoal Chevrons */
.ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow::after {
  content: '' !important;
  display: block !important;
  width: 8px !important;
  height: 8px !important;
  border-top: 1.5px solid #2d2d2d !important;
  border-right: 1.5px solid #2d2d2d !important;
}

.ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow--prev::after {
  transform: rotate(-135deg) !important;
  margin-left: 3px !important;
  margin-right: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow--next::after {
  transform: rotate(45deg) !important;
  margin-left: 0 !important;
  margin-right: 3px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.ljt-heritage-slider__dots { display: flex; justify-content: center; gap: 8px; margin-top: 12px; }
.ljt-heritage-slider__dot { width: 8px; height: 8px; border-radius: 50%; border: none; background: rgba(0,0,0,.2); cursor: pointer; padding: 0; transition: background .25s ease, transform .25s ease; }
.ljt-heritage-slider__dot.is-active { background: #b3282d; transform: scale(1.25); }

@media (max-width: 767px) {
  .ljt-heritage-slider__viewport { aspect-ratio: 5 / 4; }
  .ljt-heritage-slider .ljt-heritage-slider__viewport button.ljt-heritage-slider__arrow { display: none !important; }
}