[data-reveal] {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.8s var(--ease-out-expo),
    transform 0.8s var(--ease-out-expo);
}

[data-reveal].is-revealed {
  opacity: 1;
  transform: translateY(0);
}

[data-reveal-delay="1"] { transition-delay: 0.08s; }
[data-reveal-delay="2"] { transition-delay: 0.16s; }
[data-reveal-delay="3"] { transition-delay: 0.24s; }
[data-reveal-delay="4"] { transition-delay: 0.32s; }

.magnetic {
  will-change: transform;
}

.card--case[data-tilt] {
  transform-style: preserve-3d;
}

.process-line path {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  transition: stroke-dashoffset 1.4s var(--ease-out-expo);
}

.process-line.is-drawn path {
  stroke-dashoffset: 0;
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .hero__title-word,
  .hero__positioning,
  .hero__lead,
  .hero__ctas {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }

  .hero__mesh,
  .hero__scroll-line {
    animation: none;
  }

  .card--price.is-featured {
    transform: none;
  }

  .process-line path {
    stroke-dashoffset: 0;
    transition: none;
  }
}

html[data-motion="reduced"] .hero__mesh,
html[data-motion="reduced"] .hero__scroll-line {
  animation: none;
}

html.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

html.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}