[data-reveal] {
  opacity: 0;
  transform: translate3d(0, 52px, 0) scale(0.988);
  filter: blur(0.8px);
  will-change: transform, opacity;
  transition:
    opacity 560ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 560ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 560ms cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: var(--reveal-delay, 0ms);
}

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

section[data-reveal] {
  opacity: 1;
  transform: none;
  filter: none;
}

.hero-block .hero-frame[data-reveal] {
  transform: translateY(24px);
  filter: none;
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.hero-block .hero-frame[data-reveal].is-visible {
  transform: translateY(0);
}

[data-reveal="slide-up"] {
  transform: translate3d(0, 60px, 0) scale(0.988);
}

[data-reveal="left"] {
  transform: translate3d(-40px, 20px, 0) scale(0.988);
}

[data-reveal="right"] {
  transform: translate3d(40px, 20px, 0) scale(0.988);
}

[data-reveal="pillar-left"] {
  transform: translate3d(-64px, 10px, 0) scale(0.97);
}

[data-reveal="pillar-right"] {
  transform: translate3d(64px, 10px, 0) scale(0.97);
}

[data-reveal="left"].is-visible,
[data-reveal="right"].is-visible,
[data-reveal="pillar-left"].is-visible,
[data-reveal="pillar-right"].is-visible,
[data-reveal="card-left"].is-visible,
[data-reveal="card-right"].is-visible {
  transform: translate3d(0, 0, 0) scale(1);
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }

  [data-reveal] {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }
}
