/* HST_AUTUMN_TRANSITIONS_V23 — scoped ambient leaves and route curtain. */
#hstfx-leaves-v23{position:fixed;inset:0;overflow:hidden;pointer-events:none;
 z-index:78;contain:layout style paint;isolation:isolate}
#hstfx-leaves-v23 .hstfx-leaf{position:absolute;top:-18vh;left:var(--x);
 width:var(--sz);height:var(--sz);opacity:0;
 will-change:transform;animation:hstfx-fall var(--duration) linear var(--delay) infinite;
 filter:drop-shadow(0 2px 2px rgba(104,66,11,.12))}
#hstfx-leaves-v23 .hstfx-leaf > svg{display:block;width:100%;height:100%;
 transform-origin:50% 42%;animation:hstfx-rock var(--rock) ease-in-out var(--delay) infinite alternate}
@keyframes hstfx-fall{
 0%{opacity:0;transform:translate3d(calc(-1 * var(--swing)),0,0) rotate(-34deg)}
 9%{opacity:var(--opacity)}
 84%{opacity:var(--opacity)}
 100%{opacity:0;transform:translate3d(var(--swing),140vh,0) rotate(var(--turn))}
}
@keyframes hstfx-rock{
 from{transform:rotate(-21deg) scaleX(.82)}
 to{transform:rotate(25deg) scaleX(1)}
}
#hstfx-transition-v23{position:fixed;inset:0;overflow:hidden;z-index:2147483000;
 opacity:1;pointer-events:none;isolation:isolate}
#hstfx-transition-v23 .hstfx-curtain{position:absolute;inset:-2px -18vw;
 background:linear-gradient(114deg,#06162b 0%,#102c4e 21%,#a85417 49%,#ffbb46 63%,#fff0b5 73%,#b85a1c 84%,#071b31 100%);
 clip-path:polygon(0 0,91% 0,100% 100%,0 100%);
 box-shadow:inset 0 0 9vw rgba(255,199,100,.34);
 transform:translate3d(-135%,0,0);will-change:transform}
#hstfx-transition-v23 .hstfx-light{position:absolute;inset:0;
 background:radial-gradient(ellipse at 63% 48%,rgba(255,237,167,.64) 0%,rgba(250,161,52,.24) 22%,transparent 54%);
 opacity:0;will-change:opacity;mix-blend-mode:screen}
#hstfx-transition-v23 .hstfx-sign{position:absolute;top:50%;left:50%;
 transform:translate(-50%,-50%) scale(.90);font:900 clamp(18px,4vw,48px)/1 system-ui,Arial,sans-serif;
 color:#fff1d0;letter-spacing:.06em;text-shadow:0 4px 36px rgba(20,38,58,.55);
 opacity:0;white-space:nowrap;will-change:opacity,transform}
#hstfx-transition-v23.hstfx-going{pointer-events:auto}
#hstfx-transition-v23.hstfx-going .hstfx-curtain{
 animation:hstfx-cover .70s cubic-bezier(.72,0,.19,1) both}
#hstfx-transition-v23.hstfx-going .hstfx-light{
 animation:hstfx-flash .70s ease-out both}
#hstfx-transition-v23.hstfx-going .hstfx-sign{
 animation:hstfx-title-in .70s ease-out both}
#hstfx-transition-v23.hstfx-arriving .hstfx-curtain{
 animation:hstfx-uncover .81s cubic-bezier(.74,.02,.12,1) both}
#hstfx-transition-v23.hstfx-arriving .hstfx-light{
 animation:hstfx-arrival-flash .81s ease-out both}
#hstfx-transition-v23.hstfx-arriving .hstfx-sign{
 animation:hstfx-title-out .81s ease-in both}
@keyframes hstfx-cover{from{transform:translate3d(-135%,0,0)}to{transform:translate3d(0,0,0)}}
@keyframes hstfx-uncover{from{transform:translate3d(0,0,0)}to{transform:translate3d(135%,0,0)}}
@keyframes hstfx-flash{0%{opacity:0}62%{opacity:.25}100%{opacity:.66}}
@keyframes hstfx-arrival-flash{0%{opacity:.62}62%{opacity:.14}100%{opacity:0}}
@keyframes hstfx-title-in{0%,46%{opacity:0;transform:translate(-50%,-50%) scale(.90)}100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes hstfx-title-out{0%{opacity:1}24%{opacity:0}100%{opacity:0}}
@media (max-width:700px){
 #hstfx-leaves-v23 .hstfx-leaf{filter:none}
 #hstfx-transition-v23 .hstfx-sign{font-size:28px}
}
@media (prefers-reduced-motion:reduce){
 #hstfx-leaves-v23{display:none!important}
 #hstfx-transition-v23{display:none!important}
}
