@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink{0%,50%{border-color:transparent}51%,to{border-color:currentColor}}@keyframes float-slow{0%,to{transform:translateY(0) translate(0)}33%{transform:translateY(-10px) translate(5px)}66%{transform:translateY(5px) translate(-5px)}}@keyframes float-medium{0%,to{transform:translateY(0) translate(0) scale(1)}50%{transform:translateY(-15px) translate(-10px) scale(1.05)}}@keyframes float-fast{0%,to{transform:translateY(0) translate(0)}25%{transform:translateY(-8px) translate(8px)}75%{transform:translateY(8px) translate(-8px)}}@keyframes pulse-soft{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}.animate-fadeIn{animation:fadeIn .8s ease-out forwards}.animate-fadeInUp{animation:fadeInUp 1s ease-out forwards}.animate-fadeInScale{animation:fadeInScale .6s ease-out forwards}.animate-slideInLeft{animation:slideInLeft .8s ease-out forwards}.animate-slideInRight{animation:slideInRight .8s ease-out forwards}.animation-delay-100{animation-delay:.1s}.animation-delay-200{animation-delay:.2s}.animation-delay-300{animation-delay:.3s}.animation-delay-400{animation-delay:.4s}.animation-delay-500{animation-delay:.5s}.animation-delay-600{animation-delay:.6s}.animation-delay-700{animation-delay:.7s}.animation-delay-800{animation-delay:.8s}.typing-wrapper{display:inline-block;position:relative}.typing-text{overflow:hidden;white-space:nowrap;border-right:3px solid;animation:typing 2s steps(20) forwards,blink .75s step-end infinite;animation-delay:.5s;width:0}.parallax-slow{animation:float-slow 20s ease-in-out infinite}.parallax-medium{animation:float-medium 15s ease-in-out infinite}.parallax-fast{animation:float-fast 10s ease-in-out infinite}.btn-enhanced{position:relative;overflow:hidden;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.btn-enhanced:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-enhanced:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #0003}.btn-enhanced:hover:before{width:300px;height:300px}.card-carousel{perspective:1200px}.carousel-card{transition:all .7s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}.carousel-card.active{z-index:50}.carousel-card:not(.active){cursor:pointer}.browser-window{background:#fff;border-radius:.75rem;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transition:box-shadow .3s ease}.browser-window:hover{box-shadow:0 25px 50px -12px #00000040}.browser-titlebar{background:#f3f4f6;border-bottom:1px solid #e5e7eb;padding:.5rem 1rem;display:flex;align-items:center;gap:.5rem}.browser-controls{display:flex;gap:.25rem}.browser-control{width:.75rem;height:.75rem;border-radius:50%}.browser-control.red{background:#ef4444}.browser-control.yellow{background:#f59e0b}.browser-control.green{background:#10b981}.performance-badge{animation:pulse-soft 2s ease-in-out infinite}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#fff,#f8f9fa);z-index:9999;display:flex;justify-content:center;align-items:center;transition:opacity .5s ease-out}.loading-screen.fade-out{opacity:0}.loading-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:2rem}.loading-logo{animation:pulse 1.5s ease-in-out infinite}.loading-logo-img{width:80px;height:80px}.loading-spinner{width:50px;height:50px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.loading-text{color:#6b7280;font-size:1rem;letter-spacing:.1em;animation:pulse 1.5s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.95)}}@keyframes appear{0%{opacity:0}to{opacity:1}}.animate-appear{opacity:0;animation:appear 1s ease-out forwards;animation-delay:.3s}.animate-on-load{opacity:0}.showcase-card{transform-style:preserve-3d;backface-visibility:hidden}.showcase-card:hover{cursor:pointer}.showcase-card.active{cursor:default}.transition-linear{transition-timing-function:linear!important}.shadow-3xl{box-shadow:0 35px 60px -15px #0000004d}.showcase-nav-button{background:#fffc;border-radius:50%;padding:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transition:all .3s ease;opacity:0;z-index:10}.showcase-nav-button:hover{background:#fff;transform:scale(1.1)}.group:hover .showcase-nav-button{opacity:1}.showcase-dot{width:.5rem;height:.5rem;border-radius:50%;transition:all .3s ease;cursor:pointer}.showcase-dot.active{background-color:#2c3e50;transform:scale(1.1)}.showcase-dot:not(.active){background-color:#d1d5db}.showcase-dot:not(.active):hover{background-color:#9ca3af}.text-muted-foreground{color:#6b7280}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-fadeIn,.animate-fadeInUp,.animate-fadeInScale,.animate-slideInLeft,.animate-slideInRight,.typing-text,.parallax-slow,.parallax-medium,.parallax-fast{animation:none!important;opacity:1!important;transform:none!important;width:auto!important}.carousel-card{transition:none!important}.btn-enhanced:hover{transform:none!important}}
