/* Approved OREHA entry animation. Hero and navigation styles stay scoped to Home. */
html.intro-pending, html.intro-pending body { overflow: hidden; }
html { scrollbar-gutter: stable; }
.oreha-intro {
  --intro-paper: #f2f0ea;
  --intro-ink: #101114;
  position: fixed;
  inset: 0;
  z-index: 10000;
  overflow: hidden;
  isolation: isolate;
  color: var(--intro-paper);
  visibility: hidden;
  pointer-events: none;
  font-family: var(--font-sans), Arial, sans-serif;
}
.intro-pending .oreha-intro { visibility: visible; pointer-events: auto; }
.intro-curtain { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }

/* The intro releases the hero on one shared clock. */
.home-intro-enabled header.nav,
.home-intro-enabled .hero video,
.home-intro-enabled .hero > .hero-content > p,
.home-intro-enabled .hero .hero-signup,
.home-intro-enabled .hero .button { animation: none !important; }
.home-intro-enabled .hero .hero-character { transition: none !important; }
.home-intro-enabled.intro-pending .hero .hero-character { opacity: 0; transform: translateY(8px); }
.home-intro-enabled.intro-pending .hero > .hero-content > p,
.home-intro-enabled.intro-pending .hero .hero-signup,
.home-intro-enabled.intro-pending header.nav { opacity: 0; }
.home-intro-enabled .hero video { transform: none; }
.home-intro:not([data-ready="true"]) { background: #101114; }
.home-intro:not([data-ready="true"]) .intro-curtain,
.home-intro:not([data-ready="true"]) .intro-flip-stage { opacity: 0; }
.home-intro .intro-letter { will-change: transform, opacity; }
/* Both faces share the wordmark's SVG coordinates, including on iOS WebKit. */
.intro-flip-stage { pointer-events: none; }
.intro-flip-back { filter: drop-shadow(0 5px 7px rgba(0, 0, 0, .25)); }
/* A zooming bitmap shadow creates large offscreen surfaces on mobile Safari. */
.home-intro[data-phase="reveal"] .intro-flip-back { filter: none; }
