.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px;will-change:transform}@keyframes preloaderFade{0%{opacity:1}90%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes shimmerPulse{0%,to{opacity:.3}50%{opacity:1}}.preloader-fade{animation:preloaderFade .8s ease-out forwards}.logo-float{animation:logoFloat 2s ease-in-out infinite}.shimmer-pulse{animation:shimmerPulse 2s ease-in-out infinite}@keyframes lazyFadeIn{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.lazy-fade-in{animation:lazyFadeIn .8s cubic-bezier(.4,0,.2,1) forwards}.lazy-fade-in-fast{animation:lazyFadeIn .5s cubic-bezier(.4,0,.2,1) forwards}@keyframes heroSlideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes heroSlideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-100%)}}@keyframes heroContentSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.hero-slide-in{animation:heroSlideIn .8s cubic-bezier(.4,0,.2,1) forwards}.hero-content-slide-up{animation:heroContentSlideUp .6s cubic-bezier(.4,0,.2,1) forwards}@keyframes sectionReveal{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.section-reveal{opacity:0;animation:sectionReveal .8s cubic-bezier(.4,0,.2,1) forwards}.section-reveal.visible{animation-play-state:running}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}@keyframes cardFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes cardSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.card-float{animation:cardFloat 3s ease-in-out infinite}.card-slide-up{animation:cardSlideUp .6s cubic-bezier(.34,1.56,.64,1) forwards}.card-hover{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);will-change:transform}.card-hover:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.15)}@keyframes categoryImageZoom{0%{transform:scale(1)}to{transform:scale(1.1)}}.category-card-hover .category-image{transition:transform .6s cubic-bezier(.4,0,.2,1)}.category-card-hover:hover .category-image{transform:scale(1.1)}@keyframes quoteFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-15px) rotate(-5deg)}}.quote-float{animation:quoteFloat 4s ease-in-out infinite}@keyframes scrollProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.scroll-progress{transform-origin:left;animation:scrollProgress 8s linear}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.shimmer{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.2) 50%,rgba(255,255,255,0));background-size:200% 100%;animation:shimmer 2s infinite}@keyframes skeletonPulse{0%,to{opacity:.3}50%{opacity:.6}}.skeleton{background:linear-gradient(90deg,rgba(255,255,255,.1) 25%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.1) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite,skeletonPulse 2s infinite}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes iconSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.icon-bounce{animation:iconBounce 1s ease-in-out infinite}.icon-spin{animation:iconSpin 2s linear infinite}@keyframes buttonPulse{0%,to{box-shadow:0 0 0 0 rgba(255,255,255,.4)}50%{box-shadow:0 0 0 10px rgba(255,255,255,0)}}.button-pulse{animation:buttonPulse 2s infinite}.button-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.button-hover:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,0,0,.2)}.button-hover:active{transform:translateY(0)}.parallax-slow{transition:transform .5s cubic-bezier(.4,0,.2,1)}@media (max-width:768px){.card-hover:hover{transform:translateY(-5px) scale(1.01)}.category-card-hover:hover .category-image{transform:scale(1.05)}.card-slide-up,.lazy-fade-in,.section-reveal{animation-duration:.5s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}}.will-animate{will-change:transform,opacity}.animation-complete{will-change:auto}@media (hover:none) and (pointer:coarse){.button-hover:hover,.card-hover:hover{transform:none}.card-hover:active{transform:scale(.98)}}.smooth-scroll{scroll-behavior:smooth}.no-scroll{overflow:hidden;height:100vh}.fade-in-up{animation:lazyFadeIn .6s ease-out forwards}.scale-up{transition:transform .3s ease}.scale-up:hover{transform:scale(1.05)}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.gradient-animate{background-size:200% 200%;animation:gradientShift 8s ease infinite}