/* Selected A: cinematic reveals, matching the approved motion study. */
/* Clip enlarged images at the viewport without introducing a scroll container. */
html, body { overflow-x: clip; }

/* No hidden pending state: content remains readable if scripts fail. */
.waao-reveal-entering {
  --waao-cinema-title-y: 100px;
  --waao-cinema-card-y: 115px;
  --waao-cinema-copy-y: 68px;
  animation: waao-cinema-copy var(--waao-reveal-duration, 1180ms)
    cubic-bezier(.16, 1, .3, 1) var(--waao-reveal-delay, 0ms) backwards;
  transform-origin: 50% 60%;
  will-change: transform, opacity, clip-path;
  backface-visibility: hidden;
}
.waao-reveal-entering[data-waao-reveal="title"] {
  animation-name: waao-cinema-title;
  transform-origin: 50% 100%;
}
.waao-reveal-entering[data-waao-reveal="scene"] { animation-name: waao-cinema-scene; }
.waao-reveal-entering[data-waao-reveal="card"] { animation-name: waao-cinema-card; }
.waao-reveal-entering[data-waao-reveal="image-left"] { animation-name: waao-cinema-image-left; }
.waao-reveal-entering[data-waao-reveal="image-right"] { animation-name: waao-cinema-image-right; }

@keyframes waao-cinema-title {
  from { opacity: 0; transform: translateY(var(--waao-cinema-title-y)) rotateX(32deg); clip-path: inset(100% 0% 0% 0%); }
  to { opacity: 1; transform: none; clip-path: inset(0% 0% 0% 0%); }
}
@keyframes waao-cinema-scene {
  from { opacity: .35; transform: scale(.9); clip-path: inset(16% 13% 16% 13%); }
  to { opacity: 1; transform: none; clip-path: inset(0% 0% 0% 0%); }
}
@keyframes waao-cinema-image-left {
  from { opacity: .2; transform: scale(1.18); clip-path: inset(0% 100% 0% 0%); }
  to { opacity: 1; transform: none; clip-path: inset(0% 0% 0% 0%); }
}
@keyframes waao-cinema-image-right {
  from { opacity: .2; transform: scale(1.18); clip-path: inset(0% 0% 0% 100%); }
  to { opacity: 1; transform: none; clip-path: inset(0% 0% 0% 0%); }
}
@keyframes waao-cinema-card {
  from { opacity: 0; transform: translateY(var(--waao-cinema-card-y)) scale(.9); clip-path: inset(12% 0% 0% 0%); }
  to { opacity: 1; transform: none; clip-path: inset(0% 0% 0% 0%); }
}
@keyframes waao-cinema-copy {
  from { opacity: 0; transform: translateY(var(--waao-cinema-copy-y)); }
  to { opacity: 1; transform: none; }
}

@media (max-width: 699px) {
  .waao-reveal-entering {
    --waao-cinema-title-y: 58px;
    --waao-cinema-card-y: 70px;
    --waao-cinema-copy-y: 35px;
  }
}

/* Focus and reduced motion expose content immediately, before JS cleanup. */
.waao-reveal-entering:focus-within { animation: none !important; }
@media (prefers-reduced-motion: reduce) {
  .waao-reveal-entering { animation: none !important; }
}
@media print {
  .waao-reveal-entering { animation: none !important; }
}
