/** Video-first Spot Hero. */
.elementor-widget-spot_hero .spot-video-hero {
  position: relative; isolation: isolate; display: flex; align-items: flex-end;
  min-height: 100vh; padding: clamp(150px,18vh,220px) 0 clamp(52px,8vh,92px);
  overflow: hidden; background-color: #092d25; background-position: center;
  background-size: cover; color: #fff;
}
.elementor-widget-spot_hero .spot-video-hero::before { content: none; }
.elementor-widget-spot_hero .spot-video-hero__media,
.elementor-widget-spot_hero .spot-video-hero__overlay,
.elementor-widget-spot_hero .spot-video-hero__glow {
  position: absolute; inset: 0; pointer-events: none;
}
.elementor-widget-spot_hero .spot-video-hero__media { z-index: -3; }
.elementor-widget-spot_hero .spot-video-hero__media video {
  display: block; width: 100%; height: 100%; object-fit: cover; object-position: center;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.elementor-widget-spot_hero .spot-video-hero__media iframe {
  position: absolute; top: 50%; left: 50%; width: 177.78vh; min-width: 100%;
  height: 56.25vw; min-height: 100%; border: 0; transform: translate(-50%, -50%);
  pointer-events: none;
}
.elementor-widget-spot_hero .spot-video-hero.has-video-controls .spot-video-hero__media {
  z-index: 0;
  pointer-events: auto;
}
.elementor-widget-spot_hero .spot-video-hero.has-video-controls .spot-video-hero__overlay,
.elementor-widget-spot_hero .spot-video-hero.has-video-controls .spot-video-hero__glow {
  z-index: 1;
  bottom: 54px;
}
.elementor-widget-spot_hero .spot-video-hero.has-video-controls .spot-video-hero__media iframe {
  pointer-events: auto;
}
.elementor-widget-spot_hero .spot-video-hero.has-video-controls .spot-video-hero__container {
  pointer-events: none;
}
.elementor-widget-spot_hero .spot-video-hero.has-video-controls .spot-video-hero__content,
.elementor-widget-spot_hero .spot-video-hero.has-video-controls .spot-video-hero__button {
  pointer-events: auto;
}
.elementor-widget-spot_hero .spot-video-hero__overlay {
  z-index: -2; background: rgba(5,28,23,.64);
}
.elementor-widget-spot_hero .spot-video-hero__glow {
  z-index: -1;
  background: radial-gradient(circle at 82% 24%,rgba(168,238,112,.24),transparent 29%),
    linear-gradient(90deg,rgba(3,24,19,.55),transparent 66%);
}
.elementor-widget-spot_hero .spot-video-hero__container {
  position: relative; z-index: 2;
}
.elementor-widget-spot_hero .spot-video-hero__content { max-width: 1320px; }
.elementor-widget-spot_hero .spot-video-hero__eyebrow { margin-bottom: 24px; color: #b8f10e; }
.elementor-widget-spot_hero .spot-video-hero h1 {
  max-width: 1320px; margin: 0; color: #fff;
  font-size: clamp(42px, 6.8vw, 126px); line-height: .92; letter-spacing: -.06em;
  text-wrap: balance; overflow-wrap: anywhere; text-shadow: 0 10px 42px rgba(0,0,0,.2);
}
.elementor-widget-spot_hero .spot-video-hero h1 span,
.elementor-widget-spot_hero .spot-video-hero h1 .spot-title-accent { color: var(--spot-title-accent, #b8f10e); }
.elementor-widget-spot_hero .spot-video-hero__footer {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 32px;
  max-width: 1320px; margin-top: clamp(34px,5vw,62px);
}
.elementor-widget-spot_hero .spot-video-hero__footer p {
  max-width: 1200px; margin: 0; color: rgba(255,255,255,.82);
  font-size: clamp(17px,1.45vw,21px); line-height: 1.6;
}
.elementor-widget-spot_hero .spot-video-hero__button {
  flex: 0 0 auto; min-height: 54px; padding: 16px 24px;
  background: #b8f10e; color: #12352b; box-shadow: 0 16px 42px rgba(0,0,0,.18);
}
.elementor-widget-spot_hero .spot-video-hero__button:hover { background: #fff; color: #12352b; }
.elementor-widget-spot_hero .spot-video-hero__scroll {
  position: absolute; right: 0; bottom: 2px; display: flex; align-items: center; gap: 10px;
  color: rgba(255,255,255,.62); font-size: 10px; font-weight: 800;
  letter-spacing: .14em; text-transform: uppercase; writing-mode: vertical-rl;
}
.elementor-widget-spot_hero .spot-video-hero__scroll span {
  width: 1px; height: 48px; background: linear-gradient(#b8f10e,transparent);
}
@media (max-width: 1100px) {
  .elementor-widget-spot_hero .spot-video-hero {
    min-height: 100svh;
    padding: 140px 0 48px;
  }
  .elementor-widget-spot_hero .spot-video-hero h1 {
    font-size: clamp(36px, 5.6vw, 72px);
    line-height: 1;
    letter-spacing: -0.045em;
  }
  .elementor-widget-spot_hero .spot-video-hero__footer {
    align-items: flex-start;
    flex-direction: column;
    gap: 24px;
  }
  .elementor-widget-spot_hero .spot-video-hero__scroll {
    display: none;
  }
}
@media (max-width: 700px) {
  .elementor-widget-spot_hero .spot-video-hero {
    min-height: 0;
    padding: 118px 0 40px;
  }
  .elementor-widget-spot_hero .spot-video-hero__container {
    width: min(100% - 32px, 1240px);
  }
  .elementor-widget-spot_hero .spot-video-hero h1 {
    font-size: clamp(28px, 8.6vw, 38px);
    line-height: 1.04;
    letter-spacing: -0.04em;
  }
  .elementor-widget-spot_hero .spot-video-hero__footer p {
    max-width: none;
    font-size: 15px;
  }
  .elementor-widget-spot_hero .spot-video-hero__media iframe {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .elementor-widget-spot_hero .spot-video-hero__media video,
  .elementor-widget-spot_hero .spot-video-hero__media iframe { display: none; }
}
