/* Hero variant C — Curtain: the stage stays put (nothing on it moves) and
   the intro slides up over it as one card while the stage dims back.
   Loads after hero-variants.css. */
.hero__intro {
  position: relative;
  padding-top: var(--section-y);
  background: var(--c-bg);
  border-radius: 32px 32px 0 0;
  border-top: 1px solid var(--c-rule);
  box-shadow: 0 -30px 60px rgba(0, 0, 0, .5);
}
@media (max-width: 768px) { .hero__intro { border-radius: var(--radius) var(--radius) 0 0; } }

.hero__stage::after {
  content: ""; position: absolute; inset: 0;
  background: var(--c-bg);
  opacity: 0;
  pointer-events: none;
}

@supports (animation-timeline: scroll()) {
@media (prefers-reduced-motion: no-preference) {
  .hero__stage::after {
    animation: c-dim linear both;
    animation-timeline: scroll(root);
    animation-range: 0 100vh;
  }
  .hero__mould, .hero__stage .hero__wordmark {
    animation: c-recede linear both;
    animation-timeline: scroll(root);
    animation-range: 0 100vh;
  }
}
}
@keyframes c-dim { to { opacity: .7; } }
@keyframes c-recede { to { scale: .9; } }
