/* LaranSys v6.0.19 HF1 - Parallax Visibility Fix
   Progressive enhancement: the section must never become a blank block
   if reveal JS/IntersectionObserver fails.
*/

.ls-parallax-v619 {
  --ls619-hf1-pointer-x: 50%;
  --ls619-hf1-pointer-y: 50%;
  min-height: clamp(480px, 62vh, 720px);
}

/* Content is visible by default. */
.ls-parallax-v619 .ls-parallax-v619__reveal,
.ls-parallax-v619 .ls-parallax-v619__reveal.is-visible {
  opacity: 1 !important;
}

/* Give the bridge an unmistakable depth effect. */
.ls-parallax-v619::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(
      420px circle at var(--ls619-hf1-pointer-x) var(--ls619-hf1-pointer-y),
      rgba(199, 237, 54, 0.09),
      transparent 72%
    );
}

.ls-parallax-v619 .ls-parallax-v619__copy {
  position: relative;
  z-index: 2;
  transform: translate3d(0, calc(var(--ls619-shift) * 0.055), 0) !important;
  will-change: transform;
}

.ls-parallax-v619 .ls-parallax-v619__panel {
  position: relative;
  z-index: 2;
  transform:
    perspective(1000px)
    translate3d(0, calc(var(--ls619-shift) * -0.105), 0)
    rotateX(var(--ls619-hf1-tilt-y, 0deg))
    rotateY(var(--ls619-hf1-tilt-x, 0deg)) !important;
  will-change: transform;
  transition: border-color .25s ease, box-shadow .25s ease;
}

.ls-parallax-v619 .ls-parallax-v619__panel:hover {
  border-color: rgba(199, 237, 54, 0.30);
  box-shadow:
    0 28px 70px rgba(0,0,0,.38),
    0 0 44px rgba(199,237,54,.07),
    inset 0 0 0 1px rgba(255,255,255,.035);
}

.ls-parallax-v619 .ls-parallax-v619__grid {
  transform: translate3d(0, calc(var(--ls619-shift) * 0.30), 0) !important;
  will-change: transform;
}

.ls-parallax-v619 .ls-parallax-v619__glow::before {
  transform: translate3d(0, calc(var(--ls619-shift) * 0.42), 0) !important;
}

.ls-parallax-v619 .ls-parallax-v619__glow::after {
  transform: translate3d(0, calc(var(--ls619-shift) * -0.34), 0) !important;
}

.ls-parallax-v619 .ls-parallax-v619__orbits::before {
  transform:
    translate3d(0, calc(-50% + (var(--ls619-shift) * 0.20)), 0)
    rotate(calc(var(--ls619-shift) * 0.018deg)) !important;
}

.ls-parallax-v619 .ls-parallax-v619__orbits::after {
  transform:
    translate3d(0, calc(-50% + (var(--ls619-shift) * 0.30)), 0)
    rotate(calc(var(--ls619-shift) * -0.024deg)) !important;
}

.ls-parallax-v619 .ls-parallax-v619__kicker,
.ls-parallax-v619 .ls-parallax-v619__chips span,
.ls-parallax-v619 .ls-parallax-v619__stat {
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}

.ls-parallax-v619 .ls-parallax-v619__chips span:hover,
.ls-parallax-v619 .ls-parallax-v619__stat:hover {
  transform: translateY(-4px);
  border-color: rgba(199, 237, 54, .22);
}

@media (max-width: 768px) {
  .ls-parallax-v619 {
    min-height: auto;
  }

  .ls-parallax-v619 .ls-parallax-v619__copy,
  .ls-parallax-v619 .ls-parallax-v619__panel {
    transform: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ls-parallax-v619 .ls-parallax-v619__copy,
  .ls-parallax-v619 .ls-parallax-v619__panel,
  .ls-parallax-v619 .ls-parallax-v619__grid,
  .ls-parallax-v619 .ls-parallax-v619__glow::before,
  .ls-parallax-v619 .ls-parallax-v619__glow::after,
  .ls-parallax-v619 .ls-parallax-v619__orbits::before,
  .ls-parallax-v619 .ls-parallax-v619__orbits::after {
    transform: none !important;
  }
}
