/* The homepage starts on a clean dark canvas, never a still-photo placeholder. */
.elementor-3983 [data-id="967a10f"],
.elementor-3983 [data-id="967a10f"] > .elementor-background-video-container,
.elementor-3983 [data-id="967a10f"] > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background: #050606 !important;
}
.elementor-3983 [data-id="967a10f"] > .elementor-background-video-container > .media-poster {
  display: none !important;
}
/* Wait for confirmed moving frames, preserving the existing player's gentle fade. */
.elementor-3983 [data-id="967a10f"]:not([data-hero-startup="playing"]) iframe[data-home-hero="true"] {
  opacity: 0 !important;
}

/* Animate only the welcome copy; video startup and the outer hero stay independent. */
.elementor-3983 [data-id="967a10f"].hero-intro-running [data-id="4b66161"] .elementor-heading-title {
  animation: tidal-welcome-arrive 1.05s cubic-bezier(.16,1,.3,1) .18s backwards;
}
.elementor-3983 [data-id="967a10f"].hero-intro-running [data-id="b792c7a"] p {
  --welcome-rise: 16px;
  animation: tidal-welcome-arrive .85s cubic-bezier(.16,1,.3,1) .40s backwards;
}
.elementor-3983 [data-id="967a10f"].hero-intro-running [data-id="3ffdbf6"] .elementor-heading-title {
  --welcome-rise: 10px;
  animation: tidal-welcome-arrive .75s cubic-bezier(.16,1,.3,1) .62s backwards;
}
.elementor-3983 [data-id="967a10f"].hero-intro-ready [data-id="cd8760f"] {
  position: relative;
}
.elementor-3983 [data-id="967a10f"].hero-intro-ready [data-id="cd8760f"]::after {
  content: "";
  position: absolute;
  top: calc(100% + 10px);
  left: calc(50% - .5px);
  width: 1px;
  height: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.15), #6ec1e3);
  transform-origin: top;
  pointer-events: none;
  opacity: .65;
  animation: tidal-welcome-cue 1.8s ease-in-out 1.2s 3 backwards;
}
@keyframes tidal-welcome-arrive {
  from { opacity: 0; transform: translate3d(0,var(--welcome-rise,28px),0); }
  to { opacity: 1; transform: translate3d(0,0,0); }
}
@keyframes tidal-welcome-cue {
  0%, 100% { opacity: .25; transform: scaleY(.6); }
  50% { opacity: .9; transform: scaleY(1); }
}
@media (prefers-reduced-motion: reduce) {
  .elementor-3983 [data-id="967a10f"].hero-intro-ready :is([data-id="4b66161"] .elementor-heading-title,[data-id="b792c7a"] p,[data-id="3ffdbf6"] .elementor-heading-title) {
    animation: none !important;
  }
  .elementor-3983 [data-id="967a10f"].hero-intro-ready [data-id="cd8760f"]::after {
    animation: none;
  }
}
