@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes floatSubtle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.82)}60%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes borderPulse{0%,to{border-color:#7c26d140}50%{border-color:#7c26d1b3;box-shadow:0 0 28px #7c26d12e}}@keyframes rotate360{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.animate-fade-in{animation:.6s ease-out both fadeIn}.animate-float-subtle{will-change:transform;animation:2.8s ease-in-out infinite floatSubtle}.animate-scale-in{animation:.6s cubic-bezier(.34,1.56,.64,1) both scaleIn}.animate-border-pulse{animation:3s ease-in-out infinite borderPulse}.animate-rotate-slow{animation:12s linear infinite rotate360}.animate-reveal-hidden{opacity:0;will-change:transform, opacity;transform:translateY(30px)}.animate-reveal-hidden-left{opacity:0;will-change:transform, opacity;transform:translate(-36px)}.animate-reveal-hidden-right{opacity:0;will-change:transform, opacity;transform:translate(36px)}.animate-reveal-hidden-fade{opacity:0;will-change:opacity}.animate-reveal-visible{opacity:1;transition:opacity .7s cubic-bezier(.21,.5,.16,1),transform .7s cubic-bezier(.21,.5,.16,1);transform:translate(0)}.hover-lift{transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s}.hover-lift:hover{transform:translateY(-6px);box-shadow:0 24px 48px #7c26d11a}.hover-lift-sm{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.hover-lift-sm:hover{transform:translateY(-3px)}.hover-sweep{position:relative;overflow:hidden}.hover-sweep:after{content:"";background:linear-gradient(105deg,#0000 40%,#ffffff1f 45%,#ffffff2e 50%,#ffffff1f 55%,#0000 60%);width:100%;height:100%;transition:left .7s;position:absolute;top:0;left:-100%}.hover-sweep:hover:after{left:100%}.perspective-card{transition:transform .4s,box-shadow .4s}.perspective-card:hover{transform:perspective(800px)translateZ(12px)rotateX(1deg)rotateY(-1deg);box-shadow:0 28px 56px #7c26d11f}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
