:root{--ease-out-expo: cubic-bezier(.19, 1, .22, 1);--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-in-out-quint: cubic-bezier(.83, 0, .17, 1);--ease-spring: cubic-bezier(.68, -.55, .265, 1.55);--duration-instant: .1s;--duration-fast: .2s;--duration-normal: .3s;--duration-slow: .5s;--duration-slower: .8s;--duration-slowest: 1.2s;--stagger-delay: 50ms}.will-animate{will-change:transform,opacity}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;animation-delay:0s!important;transition-delay:0s!important}}[data-animate]{opacity:0;transition:opacity var(--duration-normal) var(--ease-out-quint),transform var(--duration-normal) var(--ease-out-quint)}[data-animate].animate-in{opacity:1}[data-animate=fade]{opacity:0}[data-animate=fade].animate-in{opacity:1}[data-animate=fade-up]{transform:translateY(30px)}[data-animate=fade-up].animate-in{transform:translateY(0)}[data-animate=fade-down]{transform:translateY(-30px)}[data-animate=fade-down].animate-in{transform:translateY(0)}[data-animate=fade-left]{transform:translate(30px)}[data-animate=fade-left].animate-in{transform:translate(0)}[data-animate=fade-right]{transform:translate(-30px)}[data-animate=fade-right].animate-in{transform:translate(0)}[data-animate=scale]{transform:scale(.9)}[data-animate=scale].animate-in{transform:scale(1)}[data-animate=rotate]{transform:rotate(-5deg);opacity:0}[data-animate=rotate].animate-in{transform:rotate(0);opacity:1}[data-animate=slide-up]{transform:translateY(60px)}[data-animate=slide-up].animate-in{transform:translateY(0)}[data-animate=blur]{filter:blur(10px);opacity:0}[data-animate=blur].animate-in{filter:blur(0);opacity:1}[data-animate-children]>*{opacity:0;transform:translateY(20px);transition:opacity var(--duration-normal) var(--ease-out-quint),transform var(--duration-normal) var(--ease-out-quint)}[data-animate-children].animate-in>*{opacity:1;transform:translateY(0)}[data-animate-children].animate-in>*:nth-child(1){transition-delay:calc(var(--stagger-delay) * 0)}[data-animate-children].animate-in>*:nth-child(2){transition-delay:calc(var(--stagger-delay) * 1)}[data-animate-children].animate-in>*:nth-child(3){transition-delay:calc(var(--stagger-delay) * 2)}[data-animate-children].animate-in>*:nth-child(4){transition-delay:calc(var(--stagger-delay) * 3)}[data-animate-children].animate-in>*:nth-child(5){transition-delay:calc(var(--stagger-delay) * 4)}[data-animate-children].animate-in>*:nth-child(6){transition-delay:calc(var(--stagger-delay) * 5)}[data-animate-children].animate-in>*:nth-child(7){transition-delay:calc(var(--stagger-delay) * 6)}[data-animate-children].animate-in>*:nth-child(8){transition-delay:calc(var(--stagger-delay) * 7)}[data-animate-children].animate-in>*:nth-child(9){transition-delay:calc(var(--stagger-delay) * 8)}[data-animate-children].animate-in>*:nth-child(10){transition-delay:calc(var(--stagger-delay) * 9)}.parallax-container{position:relative;overflow:hidden}.parallax-element{transition:transform .5s cubic-bezier(.25,.46,.45,.94);will-change:transform}.parallax-slow{--parallax-speed: .5}.parallax-medium{--parallax-speed: .7}.parallax-fast{--parallax-speed: .9}.hover-bounce{transition:transform var(--duration-fast) var(--ease-out-back)}.hover-bounce:hover{transform:scale(1.05)}.hover-bounce:active{transform:scale(.98)}.link-underline{position:relative;text-decoration:none;background-image:none!important}.link-underline:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform var(--duration-normal) var(--ease-out-expo)}.link-underline:hover:after{transform:scaleX(1);transform-origin:left}.hover-lift{transition:transform var(--duration-normal) var(--ease-out-quint),box-shadow var(--duration-normal) var(--ease-out-quint)}.hover-lift:hover{transform:translateY(-8px);box-shadow:0 20px 40px -15px #0003}.hover-rotate{transition:transform var(--duration-normal) var(--ease-out-quint)}.hover-rotate:hover{transform:rotate(180deg)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.hover-shake:hover{animation:shake .5s ease-in-out}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.typewriter{overflow:hidden;white-space:nowrap;border-right:3px solid;animation:typing 3.5s steps(40,end),blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:currentColor}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.float-animation{animation:float 3s ease-in-out infinite}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.gradient-animation{background-size:200% 200%;animation:gradient-shift 3s ease infinite}@keyframes rotate-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rotate-slow{animation:rotate-slow 20s linear infinite}@keyframes morph{0%,to{border-radius:50%;transform:scale(1) rotate(0)}33%{border-radius:30%;transform:scale(1.1) rotate(120deg)}66%{border-radius:40%;transform:scale(.9) rotate(240deg)}}.morph-animation{animation:morph 8s ease-in-out infinite}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity var(--duration-slow) var(--ease-out-quint),transform var(--duration-slow) var(--ease-out-quint)}.page-exit{opacity:1;transform:translateY(0)}.page-exit-active{opacity:0;transform:translateY(-20px);transition:opacity var(--duration-slow) var(--ease-out-quint),transform var(--duration-slow) var(--ease-out-quint)}@keyframes grow-height{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.chart-bar{transform-origin:bottom;animation:grow-height var(--duration-slow) var(--ease-out-quint) forwards}@keyframes data-pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.7}to{transform:scale(2);opacity:0}}.data-point-pulse:after{content:"";position:absolute;width:100%;height:100%;border-radius:50%;background:currentColor;animation:data-pulse 2s ease-out infinite}@keyframes glitch{0%,to{transform:translate(0);filter:hue-rotate(0deg)}20%{transform:translate(-2px,2px);filter:hue-rotate(90deg)}40%{transform:translate(-2px,-2px);filter:hue-rotate(180deg)}60%{transform:translate(2px,2px);filter:hue-rotate(270deg)}80%{transform:translate(2px,-2px);filter:hue-rotate(360deg)}}.glitch-hover:hover{animation:glitch .3s ease-in-out}@keyframes reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.reveal-animation{animation:reveal 1s var(--ease-out-expo) forwards}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.contain-paint{contain:paint}.contain-layout{contain:layout}
