 /*!
 * MotionFlow v1.0.0
 * Lightweight motion library for scroll animations, parallax, text effects, counters, and tickers
 * https://motionflow.dev
 *
 * Copyright (c) 2026 Deepak Verma
 *
 * Released under the MIT License
 */.mf-init[data-mf-animation],[data-mf-animation]:not(.mf-animate){opacity:0}[data-mf-animation=fade].mf-animate{animation:mf-fade var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade{0%{opacity:0}to{opacity:1}}[data-mf-animation=fade-up].mf-animate{animation:mf-fade-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-up{0%{opacity:0;transform:translateY(var(--mf-distance))}to{opacity:1;transform:translateY(0)}}[data-mf-animation=fade-down].mf-animate{animation:mf-fade-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-down{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1))}to{opacity:1;transform:translateY(0)}}[data-mf-animation=fade-left].mf-animate{animation:mf-fade-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-left{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*-1))}to{opacity:1;transform:translateX(0)}}[data-mf-animation=fade-right].mf-animate{animation:mf-fade-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-right{0%{opacity:0;transform:translateX(var(--mf-distance))}to{opacity:1;transform:translateX(0)}}[data-mf-animation=fade-up-left].mf-animate{animation:mf-fade-up-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-up-left{0%{opacity:0;transform:translate(calc(var(--mf-distance)*-1),var(--mf-distance))}to{opacity:1;transform:translate(0)}}[data-mf-animation=fade-up-right].mf-animate{animation:mf-fade-up-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-up-right{0%{opacity:0;transform:translate(var(--mf-distance),var(--mf-distance))}to{opacity:1;transform:translate(0)}}[data-mf-animation=fade-down-left].mf-animate{animation:mf-fade-down-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-down-left{0%{opacity:0;transform:translate(calc(var(--mf-distance)*-1),calc(var(--mf-distance)*-1))}to{opacity:1;transform:translate(0)}}[data-mf-animation=fade-down-right].mf-animate{animation:mf-fade-down-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-fade-down-right{0%{opacity:0;transform:translate(var(--mf-distance),calc(var(--mf-distance)*-1))}to{opacity:1;transform:translate(0)}}[data-mf-animation=slide-up].mf-animate{animation:mf-slide-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-slide-up{0%{opacity:0;transform:translateY(var(--mf-distance))}to{opacity:1;transform:translateY(0)}}[data-mf-animation=slide-down].mf-animate{animation:mf-slide-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-slide-down{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1))}to{opacity:1;transform:translateY(0)}}[data-mf-animation=slide-left].mf-animate{animation:mf-slide-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-slide-left{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*-1))}to{opacity:1;transform:translateX(0)}}[data-mf-animation=slide-right].mf-animate{animation:mf-slide-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-slide-right{0%{opacity:0;transform:translateX(var(--mf-distance))}to{opacity:1;transform:translateX(0)}}[data-mf-animation=zoom-in].mf-animate{animation:mf-zoom-in var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}[data-mf-animation=zoom-out].mf-animate{animation:mf-zoom-out var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-out{0%{opacity:0;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}[data-mf-animation=zoom-in-up].mf-animate{animation:mf-zoom-in-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-in-up{0%{opacity:0;transform:translateY(var(--mf-distance)) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}[data-mf-animation=zoom-in-down].mf-animate{animation:mf-zoom-in-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-in-down{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1)) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}[data-mf-animation=zoom-in-left].mf-animate{animation:mf-zoom-in-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-in-left{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*-1)) scale(.8)}to{opacity:1;transform:translateX(0) scale(1)}}[data-mf-animation=zoom-in-right].mf-animate{animation:mf-zoom-in-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-in-right{0%{opacity:0;transform:translateX(var(--mf-distance)) scale(.8)}to{opacity:1;transform:translateX(0) scale(1)}}[data-mf-animation=zoom-out-up].mf-animate{animation:mf-zoom-out-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-out-up{0%{opacity:0;transform:translateY(var(--mf-distance)) scale(1.2)}to{opacity:1;transform:translateY(0) scale(1)}}[data-mf-animation=zoom-out-down].mf-animate{animation:mf-zoom-out-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-out-down{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1)) scale(1.2)}to{opacity:1;transform:translateY(0) scale(1)}}[data-mf-animation=zoom-out-left].mf-animate{animation:mf-zoom-out-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-out-left{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*-1)) scale(1.2)}to{opacity:1;transform:translateX(0) scale(1)}}[data-mf-animation=zoom-out-right].mf-animate{animation:mf-zoom-out-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-zoom-out-right{0%{opacity:0;transform:translateX(var(--mf-distance)) scale(1.2)}to{opacity:1;transform:translateX(0) scale(1)}}[data-mf-animation^=flip]{backface-visibility:hidden;transform-style:preserve-3d}[data-mf-animation=flip-up].mf-animate{animation:mf-flip-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-flip-up{0%{opacity:0;transform:perspective(2500px) rotateX(-100deg)}to{opacity:1;transform:perspective(2500px) rotateX(0)}}[data-mf-animation=flip-down].mf-animate{animation:mf-flip-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-flip-down{0%{opacity:0;transform:perspective(2500px) rotateX(100deg)}to{opacity:1;transform:perspective(2500px) rotateX(0)}}[data-mf-animation=flip-left].mf-animate{animation:mf-flip-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-flip-left{0%{opacity:0;transform:perspective(2500px) rotateY(-100deg)}to{opacity:1;transform:perspective(2500px) rotateY(0)}}[data-mf-animation=flip-right].mf-animate{animation:mf-flip-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-flip-right{0%{opacity:0;transform:perspective(2500px) rotateY(100deg)}to{opacity:1;transform:perspective(2500px) rotateY(0)}}[data-mf-animation=rotate].mf-animate{animation:mf-rotate var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-rotate{0%{opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(0)}}[data-mf-animation=rotate-up-left].mf-animate{animation:mf-rotate-up-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-rotate-up-left{0%{opacity:0;transform:rotate(-45deg) translateY(var(--mf-distance))}to{opacity:1;transform:rotate(0) translateY(0)}}[data-mf-animation=rotate-up-right].mf-animate{animation:mf-rotate-up-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-rotate-up-right{0%{opacity:0;transform:rotate(45deg) translateY(var(--mf-distance))}to{opacity:1;transform:rotate(0) translateY(0)}}[data-mf-animation=rotate-down-left].mf-animate{animation:mf-rotate-down-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-rotate-down-left{0%{opacity:0;transform:rotate(45deg) translateY(calc(var(--mf-distance)*-1))}to{opacity:1;transform:rotate(0) translateY(0)}}[data-mf-animation=rotate-down-right].mf-animate{animation:mf-rotate-down-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-rotate-down-right{0%{opacity:0;transform:rotate(-45deg) translateY(calc(var(--mf-distance)*-1))}to{opacity:1;transform:rotate(0) translateY(0)}}[data-mf-animation=lightspeed-left].mf-animate{animation:mf-lightspeed-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-lightspeed-left{0%{opacity:0;transform:translateX(calc(-100% - var(--mf-distance))) skewX(20deg)}to{opacity:1;transform:translateX(0) skewX(0)}}[data-mf-animation=lightspeed-right].mf-animate{animation:mf-lightspeed-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-lightspeed-right{0%{opacity:0;transform:translateX(calc(100% + var(--mf-distance))) skewX(-20deg)}to{opacity:1;transform:translateX(0) skewX(0)}}[data-mf-animation=roll-left].mf-animate{animation:mf-roll-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-roll-left{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*-1)) rotate(-180deg)}to{opacity:1;transform:translateX(0) rotate(0)}}[data-mf-animation=roll-right].mf-animate{animation:mf-roll-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-roll-right{0%{opacity:0;transform:translateX(var(--mf-distance)) rotate(180deg)}to{opacity:1;transform:translateX(0) rotate(0)}}[data-mf-animation=back-in-up].mf-animate{animation:mf-back-in-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-back-in-up{0%{opacity:0;transform:translateY(var(--mf-distance)) scale(.7)}70%{opacity:1;transform:translateY(0) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}[data-mf-animation=back-in-down].mf-animate{animation:mf-back-in-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-back-in-down{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1)) scale(.7)}70%{opacity:1;transform:translateY(0) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}[data-mf-animation=back-in-left].mf-animate{animation:mf-back-in-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-back-in-left{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*-1)) scale(.7)}70%{opacity:1;transform:translateX(0) scale(.7)}to{opacity:1;transform:translateX(0) scale(1)}}[data-mf-animation=back-in-right].mf-animate{animation:mf-back-in-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-back-in-right{0%{opacity:0;transform:translateX(var(--mf-distance)) scale(.7)}70%{opacity:1;transform:translateX(0) scale(.7)}to{opacity:1;transform:translateX(0) scale(1)}}[data-mf-animation^=blur]{will-change:transform,opacity,filter}[data-mf-animation=blur].mf-animate{animation:mf-blur var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-blur{0%{filter:blur(12px);opacity:0}to{filter:blur(0);opacity:1}}[data-mf-animation=blur-up].mf-animate{animation:mf-blur-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-blur-up{0%{filter:blur(12px);opacity:0;transform:translateY(var(--mf-distance))}to{filter:blur(0);opacity:1;transform:translateY(0)}}[data-mf-animation=blur-down].mf-animate{animation:mf-blur-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-blur-down{0%{filter:blur(12px);opacity:0;transform:translateY(calc(var(--mf-distance)*-1))}to{filter:blur(0);opacity:1;transform:translateY(0)}}[data-mf-animation=blur-left].mf-animate{animation:mf-blur-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-blur-left{0%{filter:blur(12px);opacity:0;transform:translateX(calc(var(--mf-distance)*-1))}to{filter:blur(0);opacity:1;transform:translateX(0)}}[data-mf-animation=blur-right].mf-animate{animation:mf-blur-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-blur-right{0%{filter:blur(12px);opacity:0;transform:translateX(var(--mf-distance))}to{filter:blur(0);opacity:1;transform:translateX(0)}}[data-mf-animation=hinge]{transform-origin:top center}[data-mf-animation=hinge].mf-animate{animation:mf-hinge var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-hinge{0%{opacity:0;transform:rotate(70deg)}18%{opacity:1;transform:rotate(-20deg)}35%{opacity:1;transform:rotate(22deg)}52%{opacity:1;transform:rotate(-12deg)}68%{opacity:1;transform:rotate(6deg)}82%{opacity:1;transform:rotate(-3deg)}to{opacity:1;transform:rotate(0deg)}}[data-mf-animation=hinge-left]{transform-origin:left top}[data-mf-animation=hinge-left].mf-animate{animation:mf-hinge-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-hinge-left{0%{opacity:0;transform:rotate(70deg)}18%{opacity:1;transform:rotate(-20deg)}35%{opacity:1;transform:rotate(22deg)}52%{opacity:1;transform:rotate(-12deg)}68%{opacity:1;transform:rotate(6deg)}82%{opacity:1;transform:rotate(-3deg)}to{opacity:1;transform:rotate(0deg)}}[data-mf-animation=hinge-right]{transform-origin:right top}[data-mf-animation=hinge-right].mf-animate{animation:mf-hinge-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-hinge-right{0%{opacity:0;transform:rotate(-70deg)}18%{opacity:1;transform:rotate(20deg)}35%{opacity:1;transform:rotate(-22deg)}52%{opacity:1;transform:rotate(12deg)}68%{opacity:1;transform:rotate(-6deg)}82%{opacity:1;transform:rotate(3deg)}to{opacity:1;transform:rotate(0deg)}}[data-mf-animation=bounce].mf-animate{animation:mf-bounce var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-bounce{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1))}55%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(calc(var(--mf-distance)*-.18))}82%{opacity:1;transform:translateY(0)}92%{opacity:1;transform:translateY(calc(var(--mf-distance)*-.06))}to{opacity:1;transform:translateY(0)}}[data-mf-animation=bounce-up].mf-animate{animation:mf-bounce-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-bounce-up{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*1))}55%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(calc(var(--mf-distance)*.18))}82%{opacity:1;transform:translateY(0)}92%{opacity:1;transform:translateY(calc(var(--mf-distance)*.06))}to{opacity:1;transform:translateY(0)}}[data-mf-animation=bounce-down].mf-animate{animation:mf-bounce-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-bounce-down{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1))}55%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(calc(var(--mf-distance)*-.18))}82%{opacity:1;transform:translateY(0)}92%{opacity:1;transform:translateY(calc(var(--mf-distance)*-.06))}to{opacity:1;transform:translateY(0)}}[data-mf-animation=bounce-left].mf-animate{animation:mf-bounce-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-bounce-left{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*-1))}55%{opacity:1;transform:translateX(0)}70%{opacity:1;transform:translateX(calc(var(--mf-distance)*-.18))}82%{opacity:1;transform:translateX(0)}92%{opacity:1;transform:translateX(calc(var(--mf-distance)*-.06))}to{opacity:1;transform:translateX(0)}}[data-mf-animation=bounce-right].mf-animate{animation:mf-bounce-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-bounce-right{0%{opacity:0;transform:translateX(calc(var(--mf-distance)*1))}55%{opacity:1;transform:translateX(0)}70%{opacity:1;transform:translateX(calc(var(--mf-distance)*.18))}82%{opacity:1;transform:translateX(0)}92%{opacity:1;transform:translateX(calc(var(--mf-distance)*.06))}to{opacity:1;transform:translateX(0)}}[data-mf-animation=bounce-scale].mf-animate{animation:mf-bounce-scale var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-bounce-scale{0%{opacity:0;transform:scale(.7)}55%{opacity:1;transform:scale(1.1)}70%{opacity:1;transform:scale(.95)}85%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}[data-mf-animation=bounce-rotate].mf-animate{animation:mf-bounce-rotate var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards}@keyframes mf-bounce-rotate{0%{opacity:0;transform:translateY(calc(var(--mf-distance)*-1.4)) rotate(-12deg)}55%{opacity:1;transform:translateY(0) rotate(6deg)}72%{opacity:1;transform:translateY(calc(var(--mf-distance)*-.18)) rotate(-4deg)}85%{opacity:1;transform:translateY(0) rotate(3deg)}to{opacity:1;transform:translateY(0) rotate(0)}}.mf-roller{display:inline-flex;line-height:1}.mf-roller-digit{height:1em;overflow:hidden;position:relative}.mf-roller-digit-inner{transform:translateY(0);transition:transform .5s cubic-bezier(.175,.885,.32,1.275);will-change:transform}.mf-roller-digit-inner span{display:block;height:1em;text-align:center}.mf-ticker-viewport{overflow:hidden;width:100%}.mf-ticker-track{backface-visibility:hidden;display:flex;flex-wrap:nowrap;transform-style:preserve-3d;will-change:transform}.mf-ticker-content{display:flex;flex-shrink:0}.mf-ticker-content img{display:block;max-width:none}.mf-typing-cursor{animation:mf-blink 1s steps(1) infinite;display:inline-block;margin-left:2px}.mf-typing-cursor-static{animation:none}@keyframes mf-blink{0%,50%,to{opacity:1}25%,75%{opacity:0}}.mf-sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (prefers-reduced-motion:reduce){[data-mf-animation],[data-mf-animation].mf-animate{animation:none!important;filter:none!important;opacity:1!important;transform:none!important;transition:none!important}[data-mf-parallax]{transform:none!important;will-change:auto!important}[data-mf-text-type=loop]>span{display:none!important}[data-mf-text-type=loop]>span:first-child{display:inline-block!important}[data-mf-text-type=typing]{animation:none!important}[data-mf-text-type=typing] .mf-typing-cursor{display:none!important}.mf-ticker-track,[data-mf-ticker]{animation:none!important;transform:none!important}[data-mf-count-to],[data-mf-roller-to]{animation:none!important;transition:none!important}}