/* Cropped photograph details move below the content; the landscape itself stays fixed. */
.hero[data-forest-mounted]{isolation:isolate}
.hero[data-forest-mounted]>.container{position:relative;z-index:1}
.forest-landscape{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;user-select:none;visibility:hidden}
.hero[data-forest-ready="true"]>.forest-landscape{visibility:visible}
.forest-canopy-window{position:absolute;overflow:hidden;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse at 50% 42%,#000 21%,#000c 47%,#0005 65%,transparent 77%);mask-image:radial-gradient(ellipse at 50% 42%,#000 21%,#000c 47%,#0005 65%,transparent 77%)}
.forest-canopy-photo{position:absolute;inset:-9px;background-repeat:no-repeat;transform-origin:50% 100%;animation:forest-canopy-breeze var(--canopy-duration,9s) ease-in-out var(--canopy-delay,0s) infinite;animation-play-state:paused}
.forest-motion-running .forest-canopy-photo,.forest-motion-running .forest-mist-veil,.forest-motion-running .forest-firefly{animation-play-state:running}
@keyframes forest-canopy-breeze{
 0%,100%{transform:translate3d(calc(var(--canopy-travel)*-.72),.3px,0) rotate(calc(var(--canopy-tilt)*-.7)) skewX(-.12deg)}
 34%{transform:translate3d(var(--canopy-travel),-.7px,0) rotate(var(--canopy-tilt)) skewX(.19deg)}
 62%{transform:translate3d(calc(var(--canopy-travel)*.38),-.15px,0) rotate(calc(var(--canopy-tilt)*.4)) skewX(.06deg)}
 81%{transform:translate3d(calc(var(--canopy-travel)*-.38),.45px,0) rotate(calc(var(--canopy-tilt)*-.3)) skewX(-.07deg)}
}
.forest-stage-canopy{position:absolute;z-index:0;pointer-events:none;visibility:hidden}
.forest-stage-base{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:fill;pointer-events:none}
.signal-stage[data-forest-stage-ready="true"]>.forest-stage-canopy{visibility:visible}
.signal-stage[data-forest-stage-ready="true"]>.signal-foreground{opacity:0}
.forest-mist-window{position:absolute;pointer-events:none;overflow:hidden;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-in;mask-composite:intersect}
.forest-mist-veil{position:absolute;inset:-8px -40px;background-repeat:repeat-x;background-size:600px 100%;opacity:.44;animation:forest-valley-drift var(--mist-duration,22s) ease-in-out var(--mist-delay,0s) infinite var(--mist-direction,alternate);animation-play-state:paused}
@keyframes forest-valley-drift{from{transform:translate3d(-14px,1px,0)}to{transform:translate3d(14px,-3px,0)}}
.forest-fireflies{position:absolute;inset:0;pointer-events:none;user-select:none;visibility:hidden;overflow:hidden}
.forest-fireflies-hero{z-index:2}.forest-fireflies-stage{z-index:2}
.hero[data-forest-ready="true"] .forest-fireflies{visibility:visible}
.forest-firefly{position:absolute;display:block;width:var(--fly-size,3px);height:var(--fly-size,3px);pointer-events:none;animation:forest-firefly-drift var(--fly-duration,26s) ease-in-out var(--fly-delay,0s) infinite;animation-play-state:paused}
.forest-firefly[hidden]{display:none!important}
.forest-firefly-light{position:absolute;inset:0;display:block;border-radius:50%;opacity:0;background:#fff6b2;box-shadow:0 0 3px 1px #e4ef8ae6,0 0 10px 3px #c7df777d,0 0 19px 6px #b2ce5438}
@keyframes forest-firefly-drift{
 0%,100%{transform:translate3d(0,0,0)}
 24%{transform:translate3d(calc(var(--fly-x)*.66),calc(var(--fly-y)*.34),0)}
 53%{transform:translate3d(var(--fly-x),var(--fly-y),0)}
 78%{transform:translate3d(calc(var(--fly-x)*.23),calc(var(--fly-y)*.69),0)}
}
@media(prefers-reduced-motion:reduce){.forest-landscape,.forest-stage-canopy,.forest-fireflies{display:none!important}.signal-stage[data-forest-mounted]>.signal-foreground{opacity:.78!important}.forest-canopy-photo,.forest-mist-veil,.forest-firefly{animation:none!important}}
@media print{.forest-landscape,.forest-stage-canopy,.forest-fireflies{display:none!important}.signal-stage[data-forest-mounted]>.signal-foreground{opacity:.78!important}}
