body.is-loading .home-main,
body.is-loading .home-footer {
  opacity: 0;
}

.home-main,
.home-footer {
  opacity: 1;
  transition: opacity 0.55s ease;
}

[data-reveal] {
  opacity: 0;
  filter: blur(20px);
  transform: translate3d(0, 80px, 0) scale(0.95);
  will-change: transform, opacity, filter;
}

[data-reveal].is-visible {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0) scale(1);
  transition: opacity 0.62s ease, filter 0.62s ease, transform 0.62s ease;
}

.image-reveal.is-visible {
  clip-path: inset(0% 0 0% 0 round 24px);
  transition: opacity 0.7s ease, filter 0.7s ease, transform 0.7s ease, clip-path 0.7s ease;
}

.word,
.char {
  display: inline-block;
}

.hero-title .char,
.closing-title .char,
.sticky-copy .char,
.section-heading .char {
  opacity: 0;
  filter: blur(14px);
  transform: translate3d(0, 0.82em, 0) scale(0.98);
  will-change: transform, opacity, filter;
}

@media (prefers-reduced-motion: reduce) {
  body.is-loading .home-main,
  body.is-loading .home-footer,
  [data-reveal],
  .hero-title .char,
  .closing-title .char {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }

  .marquee-track {
    transform: none !important;
  }

  .loading-screen {
    display: none !important;
  }

  .noise-svg {
    animation: none !important;
  }
}
