.reveal {
  opacity: 0;
  transform: translate3d(0, 18px, 0);
  transition: opacity var(--dur-slow) var(--ease), transform var(--dur-slow) var(--ease-spring);
  transition-delay: var(--delay, 0ms);
}
.reveal.is-in,
body.site-ready .reveal { opacity: 1; transform: none; }

.is-press { transform: scale(.97) !important; }

.magnetic,
.hero-action,
.lang-toggle {
  transform: translate3d(var(--mag-x, 0), var(--mag-y, 0), 0);
  transition: transform var(--dur-fast) var(--ease);
}

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; transition: none; }
  .magnetic, .hero-action, .lang-toggle { transform: none; }
}
