/* Subtle opening atmosphere; all decoration stays behind the copy. */
@media(min-width:701px){
 .visual{transform:perspective(1400px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) scale(var(--book-scale,1.035));mask-image:linear-gradient(90deg,transparent,#000 var(--edge-fade,0%),#000 calc(100% - var(--edge-fade,0%)),transparent),linear-gradient(0deg,transparent,#000 var(--edge-fade,0%),#000 calc(100% - var(--edge-fade,0%)),transparent);mask-composite:intersect}
}
.hero-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;opacity:var(--intro-ambience,1);contain:layout paint}
.cursor-plane{position:absolute;left:0;top:0;width:34px;height:17px;transform:translate3d(var(--cursor-x,-100px),var(--cursor-y,-100px),0) translate(-50%,-50%) rotate(var(--cursor-angle,-18deg));transform-origin:50% 50%;color:#fff;opacity:var(--pointer-presence,0);transition:opacity .18s;will-change:transform;pointer-events:none}
.cursor-trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.cursor-plane svg{display:block;width:34px;height:17px}
.hero-dust{position:absolute;inset:0;opacity:.43;transform:translate3d(var(--dust-x,0px),var(--dust-y,0px),0);will-change:transform}
.hero-dust i{position:absolute;left:var(--x);top:var(--y);width:2px;height:2px;border-radius:50%;background:#b6f9e7;box-shadow:0 0 8px 1px #8cfadd45}
.hero-dust-far{opacity:.23;transform:translate3d(calc(var(--dust-x,0px)*-.4),calc(var(--dust-y,0px)*-.4),0)}
.hero-dust-far i{width:1px;height:1px}
.hero-dust-near i:nth-child(even){width:3px;height:3px;opacity:.55}
.plane-sky{position:absolute;inset:0;mask-image:linear-gradient(90deg,#000 0%,#000 40%,transparent 56%,transparent 100%)}
.plane-flight{position:absolute;left:-56px;top:var(--flight-start-y,45%);width:56px;height:28px;animation:quiet-flight 36s linear 1 forwards;animation-delay:-2s;will-change:transform;opacity:0}
.plane-silhouette{position:relative;transform:rotate(-18deg);color:#fff}
.plane-silhouette svg{display:block;width:56px;height:28px;filter:drop-shadow(0 1px 1px #071a3526)}
.plane-trail{position:absolute;right:calc(100% - 7px);top:50%;width:94px;height:2px;background:linear-gradient(90deg,transparent,#ffffff40);transform:translateY(-.5px);filter:blur(.6px)}
@keyframes quiet-flight{
  0%{transform:translate3d(0,0,0) scale(1);opacity:0}
  7%{opacity:.4}
  65%{opacity:.4}
  100%{transform:translate3d(calc(66vw + 56px),calc(-1 * var(--flight-rise,24vh)),0) scale(.65);opacity:0}
}
.atmosphere-paused .plane-flight{animation-play-state:paused}
.intro-departed .plane-sky,.intro-departed .cursor-plane,.intro-departed .cursor-trail{visibility:hidden;opacity:0}
.reduced .hero-atmosphere,html:not(.enhanced) .hero-atmosphere{display:none}
@media(hover:none),(pointer:coarse){.cursor-plane,.cursor-trail,.hero-dust{display:none}}
@media(max-width:700px){.plane-flight{width:34px;height:22px}.plane-silhouette svg{width:34px;height:22px}.plane-trail{width:52px}.hero-atmosphere{opacity:calc(var(--intro-ambience,1)*.65)}}
@media(prefers-reduced-motion:reduce){.hero-atmosphere{display:none}}
