/**
 * @file
 * Styling for the newsplus Splide slideshows (homepage boxed, breaking,
 * internal banner). Slide sizing/typography for the boxed slideshow come from
 * css/owl-carousel-home.css (reused via the retained `owl-carousel` wrapper
 * class); this only handles Splide chrome.
 */
.newsplus-slideshow.splide {
  position: relative;
}

/* Pagination dots: in normal flow BELOW the slide content (as the old owl dots
 * were), centred, with generous breathing room beneath before the next block. */
.newsplus-slideshow .splide__pagination {
  position: static;
  justify-content: center;
  gap: 0.6em;
  padding: 1rem 0 2.5rem;
  margin: 0;
}
.newsplus-slideshow .splide__pagination__page.is-active {
  background: #2f6db0;
}

/* Avoid a flash of all slides stacked before Splide mounts. */
.newsplus-slideshow.splide:not(.is-initialized) > .splide__track > .splide__list > .splide__slide:not(:first-child) {
  display: none;
}

/* --- Breaking-news ticker --- */
.newsplus-breaking .splide__slide {
  display: flex;
  align-items: center;
}

/* --- Internal banner (main + thumbnail carousel) --- */
.newsplus-internal-banner {
  position: relative;
}
.newsplus-internal-banner .banner-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}
.newsplus-internal-carousel .splide__slide {
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.2s ease;
}
.newsplus-internal-carousel .splide__slide.is-active {
  opacity: 1;
}
