/* =========================================================
   V35 — Force all Home Slide captions to WHITE
   Purpose: prevent any light/dark caption theme from reverting text to black.
   Scope: Home hero slide captions only.
   ========================================================= */

body .hero-slider .hero-slide .hero-caption,
body .hero-slider .hero-slide .hero-caption::before,
body .hero-slider .hero-slide .hero-caption::after{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

body .hero-slider .hero-slide .hero-caption::before,
body .hero-slider .hero-slide .hero-caption::after{
  content:none!important;
  display:none!important;
}

/* Enforce white on every caption text element, including spans inside the title. */
body .hero-slider .hero-slide .hero-caption,
body .hero-slider .hero-slide .hero-caption .hero-location,
body .hero-slider .hero-slide .hero-caption .eyebrow,
body .hero-slider .hero-slide .hero-caption h1,
body .hero-slider .hero-slide .hero-caption h2,
body .hero-slider .hero-slide .hero-caption .hero-title,
body .hero-slider .hero-slide .hero-caption .hero-title-line,
body .hero-slider .hero-slide .hero-caption p{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  -webkit-text-stroke:0!important;
  text-decoration-color:#ffffff!important;
  paint-order:normal!important;
  filter:none!important;
}

body .hero-slider .hero-slide .hero-caption .hero-location,
body .hero-slider .hero-slide .hero-caption .eyebrow{
  font-weight:760!important;
  text-shadow:
    0 1px 1px rgba(0,0,0,.95),
    0 2px 5px rgba(0,0,0,.82),
    0 8px 18px rgba(0,0,0,.58)!important;
}

body .hero-slider .hero-slide .hero-caption h1,
body .hero-slider .hero-slide .hero-caption h2,
body .hero-slider .hero-slide .hero-caption .hero-title,
body .hero-slider .hero-slide .hero-caption .hero-title-line{
  font-weight:620!important;
  text-shadow:
    0 1px 1px rgba(0,0,0,.98),
    0 3px 8px rgba(0,0,0,.88),
    0 12px 30px rgba(0,0,0,.62)!important;
}

body .hero-slider .hero-slide .hero-caption p{
  font-weight:650!important;
  text-shadow:
    0 1px 1px rgba(0,0,0,.96),
    0 2px 6px rgba(0,0,0,.84),
    0 10px 24px rgba(0,0,0,.56)!important;
}

/* Keep buttons readable without changing caption text to black. */
body .hero-slider .hero-slide .hero-caption .hero-actions .btn.outline{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  border-color:rgba(255,255,255,.72)!important;
  background:rgba(255,255,255,.16)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
}

/* Use a slide-wide dark readability layer only. This is not a card and not a blur panel. */
body .hero-slider .hero-slide::after{
  background:
    linear-gradient(0deg,rgba(3,6,16,.42) 0%,rgba(3,6,16,.16) 46%,rgba(3,6,16,.10) 100%),
    linear-gradient(90deg,rgba(3,6,16,.54) 0%,rgba(3,6,16,.24) 48%,rgba(3,6,16,.08) 100%)!important;
}

body .hero-slider .hero-slide.caption-right::after{
  background:
    linear-gradient(0deg,rgba(3,6,16,.42) 0%,rgba(3,6,16,.16) 46%,rgba(3,6,16,.10) 100%),
    linear-gradient(270deg,rgba(3,6,16,.54) 0%,rgba(3,6,16,.24) 48%,rgba(3,6,16,.08) 100%)!important;
}

@media(max-width:640px){
  body .hero-slider .hero-slide .hero-caption h1,
  body .hero-slider .hero-slide .hero-caption h2,
  body .hero-slider .hero-slide .hero-caption .hero-title{
    font-weight:650!important;
  }
  body .hero-slider .hero-slide::after,
  body .hero-slider .hero-slide.caption-right::after{
    background:linear-gradient(0deg,rgba(3,6,16,.62) 0%,rgba(3,6,16,.26) 54%,rgba(3,6,16,.12) 100%)!important;
  }
}
