/* Reveal-on-scroll cinematográfico — base reusável pra qualquer bridge page */

.reveal {
  opacity: 0.5;
  transform: translateY(24px);
  transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),
              transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* stagger: aplicar via JS (--delay custom property) em listas/cards */
.reveal[style*="--delay"] {
  transition-delay: var(--delay, 0ms);
}

.hover-lift {
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1),
              box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.hover-lift:hover {
  transform: scale(1.02);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
}

@media (prefers-reduced-motion: reduce) {
  .reveal, .hover-lift {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}
