/* The browser owns scrolling. None of these stages has a timed completion. */
body.story-active{overflow-x:hidden;scroll-behavior:auto;overflow-anchor:none}
.story-flow{position:relative;isolation:isolate;z-index:1;width:100%;overflow:visible;overflow-anchor:none}
.story-arrival{position:relative;height:250svh;width:100%;overflow:visible}
.story-active .story-arrival>#home{position:sticky;top:0;left:0;width:100%;height:100svh;min-height:100svh;overflow:hidden;z-index:2}
.story-avatar-plane{position:fixed;inset:0;z-index:4;pointer-events:none;overflow:hidden;clip-path:inset(var(--stage-y) var(--stage-x))}
.story-avatar-plane #avatar-actor{position:absolute;display:flex;flex-direction:column;align-items:center;pointer-events:none;animation:none;transform:none;rotate:none}
.story-avatar-plane #story-avatar{position:relative;left:auto;top:auto;bottom:auto;width:100%;height:var(--story-image-height,42vh);max-width:none;object-fit:contain;opacity:1;animation:none;rotate:none;transform:none;transition:none;pointer-events:auto;flex-shrink:0}
.story-avatar-plane #avatar-actor>.signature{font-size:var(--story-font,24px);margin-top:var(--story-gap,23.325px);width:var(--story-signature-width,118.469px);height:var(--story-signature-height,36px);transform:translateX(var(--story-signature-offset,0px));line-height:1.5;white-space:nowrap;pointer-events:none;flex-shrink:0;color:transparent;background:url('assets/figma/c207c.svg') center/100% 100% no-repeat}
.story-active #journey{min-height:0;z-index:2;overflow:visible;margin-top:calc(304px*var(--stage-scale) - 100svh)}
.story-active #journey>.journey-portrait,.story-active #journey>#journey-end{display:none}
.story-active #journey .reveal{opacity:1;transform:none;transition:none}
.story-active #journey>.quiet-stage{height:100svh}
.story-active #journey>.journey-welcome{min-height:100svh;transition:none;will-change:opacity}
.story-curtain-runway{position:relative;height:360svh;pointer-events:none}
.story-about-slot{position:relative;z-index:3;height:190svh;min-height:190svh}
.story-active .story-about-slot>#about{position:sticky;top:0;width:100%;transform:none;overflow-anchor:none}
.story-progressed #home .object-door{visibility:hidden;pointer-events:none}
.story-progressed #enter-story{visibility:hidden;pointer-events:none}
.story-active #enter-story>.triangle,.story-active #enter-story>.triangle-shadow{visibility:hidden}
#avatar-home-slot #story-avatar{opacity:0!important;visibility:hidden;pointer-events:none!important}
#enter-story{pointer-events:none;cursor:default}
.story-next:disabled{opacity:1;pointer-events:none;cursor:default}
.story-next{position:fixed;bottom:9px;left:50%;transform:translateX(-50%);z-index:86;display:flex;flex-direction:column;align-items:center;justify-content:end;width:74px;min-height:44px;padding:5px 20px;pointer-events:auto;background:none;border:0}
.story-next .triangle{display:flex;align-items:center;justify-content:center;width:31px;height:23px;margin:0;filter:drop-shadow(0 3px 2px #0009)}
.story-next .triangle>img{width:calc(15.089px*var(--stage-scale));height:calc(8.005px*var(--stage-scale));max-width:none;transform:none;transform-origin:center}
.story-next .triangle-shadow{margin-top:1px}
.story-next:focus-visible{outline:1px dashed #eee0cc;outline-offset:4px;border-radius:50%}
.transitioning .story-next{pointer-events:none}

/* Growing portraits cannot intercept the home scene or create a nested scroller. */
.story-avatar-plane{overflow:clip}
.story-avatar-plane #story-avatar.avatar-play-disabled{pointer-events:none;touch-action:auto}
