.transition-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-fast{transition:all .15s cubic-bezier(.4,0,.2,1)}.transition-slow{transition:all .5s cubic-bezier(.4,0,.2,1)}.btn-hover-lift{transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.btn-hover-lift:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.btn-hover-lift:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.1)}.btn-gradient-glow{position:relative;overflow:hidden}.btn-gradient-glow: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-gradient-glow:hover:before{left:100%}.card-hover-lift{transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.card-hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(0,0,0,.1),0 4px 8px rgba(0,0,0,.06)}.card-hover-glow{transition:box-shadow .3s ease,border-color .3s ease}.card-hover-glow:hover{box-shadow:0 0 0 1px rgba(124,58,237,.2),0 8px 16px rgba(124,58,237,.1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fade-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes scale-in{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.animate-fadeIn{animation:fadeIn .6s ease-out forwards}.animate-fadeInUp{animation:fadeInUp .6s ease-out forwards}.animate-fadeInDown{animation:fadeInDown .6s ease-out forwards}.animate-fadeInLeft{animation:fadeInLeft .6s ease-out forwards}.animate-fadeInRight{animation:fadeInRight .6s ease-out forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.scroll-animate{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}.scroll-animate.visible{opacity:1;transform:translateY(0)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scaleIn{animation:scaleIn .4s ease-out forwards}.hover-scale{transition:transform .2s ease}.hover-scale:hover{transform:scale(1.02)}.hover-scale-sm:hover{transform:scale(1.01)}.icon-hover-rotate{transition:transform .3s ease}.icon-hover-rotate:hover{transform:rotate(15deg)}.icon-hover-bounce{transition:transform .3s ease}.icon-hover-bounce:hover{animation:iconBounce .5s ease}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-pulse-soft{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.badge-hover{transition:background-color .2s ease,color .2s ease,transform .2s ease}.badge-hover:hover{transform:scale(1.05)}.img-hover-zoom{overflow:hidden}.img-hover-zoom img{transition:transform .5s ease}.img-hover-zoom:hover img{transform:scale(1.05)}.link-underline{position:relative}.link-underline:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,#2563EB,#7C3AED);transition:width .3s ease}.link-underline:hover:after{width:100%}.input-focus-glow{transition:box-shadow .2s ease,border-color .2s ease}.input-focus-glow:focus{box-shadow:0 0 0 3px rgba(37,99,235,.1);border-color:#2563EB}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-animate{animation:modalFadeIn .3s ease-out forwards}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.number-animate{animation:countUp .6s ease-out forwards}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-float{animation:float 3s ease-in-out infinite}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes checkmarkDraw{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.animate-checkmark{stroke-dasharray:100;stroke-dashoffset:100;animation:checkmarkDraw .4s ease-out forwards}@keyframes gentleShake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.animate-shake{animation:gentleShake .4s ease-in-out}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.3) 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10);opacity:0;transition:transform .4s,opacity .5s}.ripple-effect:active:after{transform:scale(0);opacity:.3;transition:0s}.focus-ring-premium:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:rgb(59 130 246/0.3);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-tooltip{animation:tooltipFadeIn .2s ease-out forwards}@keyframes progressFill{0%{width:0}to{width:var(--progress-width,100%)}}.animate-progress{animation:progressFill .8s ease-out forwards}@keyframes subtleBreath{0%,to{box-shadow:0 4px 12px rgba(37,99,235,.15)}50%{box-shadow:0 4px 20px rgba(37,99,235,.25)}}.animate-breath{animation:subtleBreath 3s ease-in-out infinite}@keyframes slideUpFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-slideUp{animation:slideUpFade .3s ease-out forwards}@keyframes confetti{0%{transform:translateY(0) rotate(0deg);opacity:1}to{transform:translateY(-100px) rotate(2turn);opacity:0}}.animate-confetti{animation:confetti 1s ease-out forwards}@keyframes float-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes shake-wobble{0%,to{transform:scale(1.02)}50%{transform:scale(1.03) rotate(1deg)}}.stat-card-float{animation:float-bob 5s ease-in-out infinite;will-change:transform}.stat-card-float:hover{animation:shake-wobble .3s ease-in-out}.category-card-float{animation:float-bob 6s ease-in-out infinite;will-change:transform}.category-card-float:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.1)}.city-card-float{animation:float-bob 5s ease-in-out infinite;will-change:transform}.city-card-float:hover{transform:translateY(-8px)}.benefit-card-float{animation:float-bob 6s ease-in-out infinite;will-change:transform}.benefit-card-float:hover{background:rgba(255,255,255,.15);transform:translateY(-5px)}.stat-container{animation:float-bob 8s ease-in-out infinite;will-change:transform}.job-card-float{animation:float-bob 5s ease-in-out infinite;will-change:transform}.job-card-float:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 50px rgba(0,0,0,.1)}.premium-stats-container{animation:float-bob 8s ease-in-out infinite;will-change:transform}.premium-stat-card{animation:float-bob 6s ease-in-out infinite;will-change:transform;transition:transform .3s ease,box-shadow .3s ease}.premium-stat-card:hover{transform:translateY(-10px) scale(1.05);box-shadow:0 25px 50px rgba(0,0,0,.15)}.premium-category-card{transition:transform .3s ease,box-shadow .3s ease;will-change:transform}.premium-category-card:hover{transform:translateY(-12px) scale(1.03);box-shadow:0 30px 60px rgba(0,0,0,.12)}