/* ww-fx.css (designs 106+): styles for ww-fx.js. All motion is off under prefers-reduced-motion. */
.fx-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.fx-w>span{display:inline-block}
.fx-split .fx-w>span{transform:translateY(105%);transition:transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:calc(.08s + var(--i) * .07s)}
.fx-split.go .fx-w>span{transform:none}
.fx-num{font-variant-numeric:tabular-nums;display:inline-block}
.fx-glow{position:relative;isolation:isolate}
.fx-glow::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--c-accent) 32%,transparent),transparent 70%);z-index:1}
.fx-glow:hover::after{opacity:1}
.fx-mag{transition:transform .25s cubic-bezier(.2,.8,.2,1)}
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .fx-sd{animation:fx-rise linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
    .fx-sd-x{animation:fx-slide linear both;animation-timeline:view();animation-range:entry 0% cover 30%}
  }
}
@keyframes fx-rise{from{opacity:.001;transform:translateY(40px) scale(.97)}to{opacity:1;transform:none}}
@keyframes fx-slide{from{opacity:.001;transform:translateX(-40px)}to{opacity:1;transform:none}}
::view-transition-old(root),::view-transition-new(root){animation-duration:.35s}
@media (prefers-reduced-motion:reduce){.fx-split .fx-w>span{transform:none;transition:none}.fx-mag{transition:none}.fx-glow::after{display:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
