/* ==========================================================================
   ANIMATIONS — helpers para GSAP + animaciones CSS
   ========================================================================== */

/* Elementos que se revelan por scroll */
.reveal {
  opacity: 0;
  transform: translateY(40px);
  will-change: opacity, transform;
}

.reveal-left {
  opacity: 0;
  transform: translateX(-40px);
  will-change: opacity, transform;
}

.reveal-right {
  opacity: 0;
  transform: translateX(40px);
  will-change: opacity, transform;
}

.reveal-scale {
  opacity: 0;
  transform: scale(0.92);
  will-change: opacity, transform;
}

/* Items en grids con stagger */
.reveal-stagger > * {
  opacity: 0;
  transform: translateY(30px);
  will-change: opacity, transform;
}

/* Hover lift utility */
.hover-lift {
  transition: transform var(--duration-normal) var(--ease-out-expo);
}
.hover-lift:hover { transform: translateY(-6px); }

/* Si reduced-motion → mostrar todo de una */
@media (prefers-reduced-motion: reduce) {
  .reveal,
  .reveal-left,
  .reveal-right,
  .reveal-scale,
  .reveal-stagger > * {
    opacity: 1 !important;
    transform: none !important;
  }
}
