/* Podium-style scroll reveal (neu.skulptor.ch) — gemessen an podium.global:
   GSAP ScrollTrigger yPercent 110→0, start top 60% / end top 40%, scrub,
   stagger ~0.08–0.15, ease power2.out. Hier: bibliotheksfrei via CSS + IO. */

#werke .work-card .photo,
.backstage > * {
  overflow: hidden;
}

#werke .work-card .photo > img,
.backstage > img,
.backstage > .clip {
  opacity: 0;
  transform: translate3d(0, 110%, 0);
  transition:
    opacity 0.58s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.58s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform, opacity;
  backface-visibility: hidden;
}

#werke .work-card.is-revealed .photo > img,
.backstage > img.is-revealed,
.backstage > .clip.is-revealed {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* Stagger je Reihe / Index — analog podium stagger amount ~0.08–0.15s */
#werke .work-card.is-revealed .photo > img { transition-delay: var(--pr-delay, 0ms); }
.backstage > .is-revealed { transition-delay: var(--pr-delay, 0ms); }

@media (prefers-reduced-motion: reduce) {
  #werke .work-card .photo > img,
  .backstage > img,
  .backstage > .clip {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
