@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.fade-in-up{opacity:0;transform:translateY(60px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.fade-in-up.show{opacity:1;transform:translateY(0)}.fade-in-left{opacity:0;transform:translate(-60px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.fade-in-left.show{opacity:1;transform:translate(0)}.fade-in-right{opacity:0;transform:translate(60px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.fade-in-right.show{opacity:1;transform:translate(0)}.scale-fade-in{opacity:0;transform:scale(.95);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}.scale-fade-in.show{opacity:1;transform:scale(1)}.stagger-children>*{opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.22,1,.36,1)}.stagger-children.show>*:nth-child(1){transition-delay:0ms;opacity:1;transform:translateY(0)}.stagger-children.show>*:nth-child(2){transition-delay:.1s;opacity:1;transform:translateY(0)}.stagger-children.show>*:nth-child(3){transition-delay:.2s;opacity:1;transform:translateY(0)}.stagger-children.show>*:nth-child(4){transition-delay:.3s;opacity:1;transform:translateY(0)}.stagger-children.show>*:nth-child(5){transition-delay:.4s;opacity:1;transform:translateY(0)}.stagger-children.show>*:nth-child(6){transition-delay:.5s;opacity:1;transform:translateY(0)}.stagger-children.show>*:nth-child(7){transition-delay:.6s;opacity:1;transform:translateY(0)}.stagger-children.show>*:nth-child(8){transition-delay:.7s;opacity:1;transform:translateY(0)}.glass-card{background:#ffffffb3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3)}.dark .glass-card{background:#1e1e1eb3;border:1px solid rgba(255,255,255,.1)}.hover-lift{transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1)}.hover-lift:hover{transform:translateY(-8px);box-shadow:0 20px 40px -15px #00000026}.gradient-text{background:linear-gradient(135deg,#fa0,#ff6b35,#fa0);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease infinite}@keyframes gradient-shift{0%,to{background-position:0% center}50%{background-position:100% center}}.pulse-glow{animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #ffaa004d}50%{box-shadow:0 0 40px #ffaa0080}}.animated-underline{position:relative}.animated-underline:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,#fa0,#ff6b35);transition:width .4s cubic-bezier(.22,1,.36,1)}.animated-underline:hover:after{width:100%}.btn-modern{position:relative;overflow:hidden;transition:all .4s cubic-bezier(.22,1,.36,1)}.btn-modern:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-modern:hover:before{left:100%}.float-animation{animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.scroll-indicator{animation:scroll-bounce 2s ease-in-out infinite}@keyframes scroll-bounce{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(10px);opacity:.5}}.skeleton-shimmer{animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.card-enter{opacity:0;transform:translateY(20px)}.card-enter-active{opacity:1;transform:translateY(0);transition:opacity .5s ease-out,transform .5s ease-out}.list-item-transition{transition:all .4s cubic-bezier(.22,1,.36,1)}.list-item-transition:hover{transform:translateY(-4px)}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}
