html{scroll-behavior:smooth}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}section{animation:fadeIn .8s ease-out}.animate-on-scroll{opacity:0;animation:fadeIn .6s ease-out forwards}.animate-on-scroll:first-child{animation-delay:.1s}.animate-on-scroll:nth-child(2){animation-delay:.2s}.animate-on-scroll:nth-child(3){animation-delay:.3s}.animate-on-scroll:nth-child(4){animation-delay:.4s}.animate-on-scroll:nth-child(5){animation-delay:.5s}.animate-on-scroll:nth-child(6){animation-delay:.6s}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,.15)}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.gradient-animate{background-size:200% 200%;animation:gradientShift 3s ease infinite}.animate-gradient{background-size:200% 200%;animation:gradientShift 5s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.pulse-subtle{animation:pulse 2s ease-in-out infinite}.interactive,a,button{transition:all .3s ease}section{padding:6rem 0}@media (max-width:768px){section{padding:4rem 0}}