@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideLeft{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideRight{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-glow{0%,to{opacity:.5}50%{opacity:.8}}.animate-section{opacity:0}.animate-section.fade-up.animate-in{animation:fadeUp .8s ease-out forwards}.animate-section.fade-in.animate-in{animation:fadeIn .8s ease-out forwards}.animate-section.slide-left.animate-in{animation:slideLeft .8s ease-out forwards}.animate-section.slide-right.animate-in{animation:slideRight .8s ease-out forwards}.animate-section.scale-up.animate-in{animation:scaleUp .8s ease-out forwards}.card-hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover-lift:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,.1)}.icon-float:hover{animation:float 2s ease-in-out infinite}html{scroll-behavior:smooth}.image-zoom{overflow:hidden}.image-zoom img{transition:transform .6s cubic-bezier(.4,0,.2,1)}.image-zoom:hover img{transform:scale(1.1)}.button-shine{position:relative;overflow:hidden}.button-shine:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.button-shine:hover:before{left:100%}