/* Keep both hero layers in view until the lower paper has replaced the copy. */
.home-page .hero,
.home-page.constellation-ready .hero {
  min-height: 180svh;
  padding: 0;
  overflow: clip;
}
.home-page .hero-stage {
  position: sticky;
  top: 0;
  height: 100svh;
  overflow: hidden;
  isolation: isolate;
}
.home-page .hero-stage .hero-visual {
  position: absolute;
  inset: 0;
  height: 100%;
  margin: 0;
}
.home-page .hero-stage .hero-inner {
  position: relative;
  height: 100%;
  min-height: 0;
}
.home-page .hero-stage .hero-book-meta {
  right: 6.2%;
  bottom: 36px;
  text-shadow: none;
}
.home-page .hero-stage .paper-horizon {
  bottom: -37svh;
  height: 65svh;
}
@media (max-width: 760px) {
  .home-page .hero-stage .hero-inner {
    display: block;
    padding: 104px 22px 150px;
  }
  .home-page .hero-stage .hero-copy { padding-top: 0; }
  .home-page .hero-stage h1 { font-size: clamp(32px, 8.5vw, 48px); margin: 20px 0; }
  .home-page .hero-stage .sub { font-size: 14px; margin-bottom: 22px; }
  .home-page .hero-stage .hero-cta { gap: 16px; }
  .home-page .hero-stage .hero-book-meta { width: 220px; right: 22px; bottom: 24px; padding-top: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page .hero,
  .home-page.constellation-ready .hero { min-height: 100svh; }
  .home-page .hero-stage { position: relative; height: auto; min-height: 100svh; }
  .home-page .hero-stage .hero-inner { height: auto; min-height: 100svh; }
}
