/*
  Phase 8I: Homepage hero slider alignment fix.

  Problem fixed:
  - The homepage hero slides mixed Cloudflare Image variants and allowed the
    absolutely-positioned overlay/shape layers to anchor against broader
    ancestors instead of the individual slide.
  - On the third slide this could expose a lower image/section band and make
    the hero background appear to shift upward.

  Intent:
  - Keep the original visual design.
  - Stabilize the hero slide height and background positioning.
  - Constrain decorative shape layers to each slide.
*/

.banner-section-2 {
  background: #102039;
  isolation: isolate;
}

.banner-section-2 .banner-active,
.banner-section-2 .swiper-wrapper,
.banner-section-2 .swiper-slide {
  min-height: 800px;
}

.banner-section-2 .swiper-slide {
  position: relative;
  overflow: hidden;
  background: #102039;
}

.banner-section-2 .banner-main-2 {
  position: relative;
  min-height: 800px;
  overflow: hidden;
  isolation: isolate;
  display: flex;
  align-items: center;
  padding-top: 0;
  padding-bottom: 0;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.banner-section-2 .banner-main-2::before {
  z-index: 0;
  pointer-events: none;
}

.banner-section-2 .banner-main-2 > .large-container {
  position: relative;
  z-index: 3;
  width: 100%;
}

.banner-section-2 .shape-area-2 {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  overflow: hidden;
}

.banner-section-2 .shape-area-2 .shape-1,
.banner-section-2 .shape-area-2 .shape-2,
.banner-section-2 .shape-area-2 .shape-3,
.banner-section-2 .shape-area-2 .shape-4,
.banner-section-2 .shape-area-2 .shape-5,
.banner-section-2 .shape-area-2 .shape-6 {
  height: 100%;
  background-repeat: no-repeat;
}

.banner-section-2 .swiper-slide:not(.swiper-slide-active) .shape-area-2 {
  opacity: 0;
}

.banner-section-2 .swiper-slide-active .shape-area-2 {
  opacity: 1;
}

@media (max-width: 1199px) {
  .banner-section-2 .banner-active,
  .banner-section-2 .swiper-wrapper,
  .banner-section-2 .swiper-slide,
  .banner-section-2 .banner-main-2 {
    min-height: 720px;
  }
}

@media (max-width: 767px) {
  .banner-section-2 .banner-active,
  .banner-section-2 .swiper-wrapper,
  .banner-section-2 .swiper-slide,
  .banner-section-2 .banner-main-2 {
    min-height: 640px;
  }

  .banner-section-2 .banner-main-2 {
    background-size: cover !important;
    background-position: center center !important;
  }
}
