/* =========================================================
   HOMEPAGE HERO POLISH
   Four real local photographs, crisp image-first presentation,
   restrained editorial overlay, subtle motion, and the existing
   100vh curved lower edge.
   ========================================================= */

.t5-home-page .t5-home-hero {
  position: relative !important;
  height: 100vh !important;
  min-height: 100vh !important;
  overflow: hidden !important;
  isolation: isolate;
  background: #dfe8ee !important;
}

.t5-home-page .t5-home-hero-media {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  transform: none !important;
  background: #dfe8ee !important;
}

/* Remove the old washed-out white linear overlay. */
.t5-home-page .t5-home-hero-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background:
    radial-gradient(
      ellipse 58% 78% at 10% 48%,
      rgba(248, 247, 243, 0.72) 0%,
      rgba(248, 247, 243, 0.42) 30%,
      rgba(248, 247, 243, 0.10) 53%,
      rgba(248, 247, 243, 0) 72%
    ),
    linear-gradient(
      180deg,
      rgba(0, 0, 0, 0) 55%,
      rgba(7, 31, 55, 0.16) 100%
    ) !important;
}

.t5-home-page .t5-home-hero-slide {
  position: absolute !important;
  inset: -1.5% !important;
  width: 103% !important;
  height: 103% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: scale(1.035) !important;
  filter: saturate(1.04) contrast(1.015) !important;
  transition:
    opacity 1.25s cubic-bezier(.22,1,.36,1),
    transform 6.5s cubic-bezier(.22,1,.36,1) !important;
  z-index: 0 !important;
  will-change: opacity, transform;
}

.t5-home-page .t5-home-hero-slide.is-active {
  opacity: 1 !important;
  visibility: visible !important;
  transform: scale(1) !important;
  z-index: 1 !important;
}

/* Keep every piece of existing hero content above the photography. */
.t5-home-page .t5-home-hero-content,
.t5-home-page .t5-home-finder,
.t5-home-page .t5-home-location {
  position: absolute;
  z-index: 4 !important;
}

.t5-home-page .t5-home-hero-content {
  position: relative;
}

.t5-home-page .t5-home-finder {
  z-index: 5 !important;
}

/* Refined depth for the existing search panel, without changing its content. */
.t5-home-page .t5-home-finder {
  box-shadow:
    0 20px 55px rgba(8, 30, 52, 0.16),
    0 3px 10px rgba(8, 30, 52, 0.06) !important;
  backdrop-filter: blur(5px);
}

/* Existing curve remains the only hero-to-next-section transition. */
.t5-home-page .t5-home-hero::after {
  z-index: 8 !important;
}

@media (max-width: 767px) {
  .t5-home-page .t5-home-hero-media::after {
    background:
      radial-gradient(
        ellipse 90% 65% at 16% 30%,
        rgba(248, 247, 243, 0.70) 0%,
        rgba(248, 247, 243, 0.34) 38%,
        rgba(248, 247, 243, 0) 72%
      ),
      linear-gradient(
        180deg,
        rgba(0, 0, 0, 0) 45%,
        rgba(7, 31, 55, 0.18) 100%
      ) !important;
  }

  .t5-home-page .t5-home-hero-slide {
    object-position: center center !important;
  }
}
