.particles-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.particle{position:absolute;width:4px;height:4px;background:var(--red);border-radius:50%;opacity:0;animation:particleFloat 20s linear infinite}@keyframes particleFloat{0%{transform:translateY(100vh) translate(0) scale(0);opacity:0}10%{opacity:.8}90%{opacity:.3}to{transform:translateY(-100px) translate(100px) scale(1);opacity:0}}.particle:nth-child(1){left:10%;animation-delay:0s;animation-duration:18s}.particle:nth-child(2){left:20%;animation-delay:2s;animation-duration:22s}.particle:nth-child(3){left:30%;animation-delay:4s;animation-duration:20s}.particle:nth-child(4){left:40%;animation-delay:1s;animation-duration:19s}.particle:nth-child(5){left:50%;animation-delay:3s;animation-duration:21s}.particle:nth-child(6){left:60%;animation-delay:5s;animation-duration:23s}.particle:nth-child(7){left:70%;animation-delay:2s;animation-duration:18s}.particle:nth-child(8){left:80%;animation-delay:4s;animation-duration:20s}.particle:nth-child(9){left:90%;animation-delay:1s;animation-duration:22s}.particle:nth-child(10){left:15%;animation-delay:6s;animation-duration:19s}.floating-shape{position:absolute;opacity:.03;animation:shapeFloat 30s ease-in-out infinite}.floating-shape.circle{width:200px;height:200px;border:2px solid var(--red);border-radius:50%;top:20%;right:10%}.floating-shape.square{width:150px;height:150px;border:2px solid var(--red);transform:rotate(45deg);top:60%;left:5%;animation-delay:-10s}@keyframes shapeFloat{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-30px) rotate(5deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(30px) rotate(-5deg)}}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-8px);box-shadow:0 12px 32px #0000001f}.hover-scale{transition:transform .3s ease}.hover-scale:hover{transform:scale(1.05)}.hover-tilt{transition:transform .3s ease}.hover-tilt:hover{transform:perspective(1000px) rotateY(5deg)}.text-gradient{background:linear-gradient(135deg,var(--red) 0%,#ff4545 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.typing-effect{overflow:hidden;border-right:3px solid var(--red);white-space:nowrap;animation:typing 3.5s steps(40,end),blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:var(--red)}}.pulse-dot{position:relative}.pulse-dot:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;background:var(--red);transform:translate(-50%,-50%);animation:pulse 2s ease-out infinite;opacity:.6}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.8}to{transform:translate(-50%,-50%) scale(2);opacity:0}}.loading-spinner{display:inline-block;width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--red);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.parallax-layer{transition:transform .3s ease-out}.slide-in-left{animation:slideInLeft .8s ease-out both}.slide-in-right{animation:slideInRight .8s ease-out both}.slide-in-bottom{animation:slideInBottom .8s ease-out both}@keyframes slideInLeft{0%{transform:translate(-100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInBottom{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.bounce-in{animation:bounceIn .8s cubic-bezier(.68,-.55,.265,1.55) both}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.glow-on-hover{transition:box-shadow .3s ease}.glow-on-hover:hover{box-shadow:0 0 30px #fa0e0f66}.progress-bar{height:4px;background:var(--border);border-radius:2px;overflow:hidden;position:relative}.progress-fill{height:100%;background:var(--red);border-radius:2px;transition:width .3s ease;position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.cursor-trail{position:fixed;width:20px;height:20px;border-radius:50%;background:var(--red);pointer-events:none;opacity:.6;z-index:9999;animation:cursorFade .5s ease-out forwards}@keyframes cursorFade{to{transform:scale(2);opacity:0}}.flip-card{perspective:1000px;cursor:pointer}.flip-card-inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d}.flip-card:hover .flip-card-inner{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:8px}.flip-card-back{transform:rotateY(180deg);background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;padding:20px}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fa0e0f4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple-effect:active:after{width:300px;height:300px}.stagger-children>*{opacity:0;animation:fadeInUp .6s ease-out forwards}.stagger-children>*:nth-child(1){animation-delay:.1s}.stagger-children>*:nth-child(2){animation-delay:.2s}.stagger-children>*:nth-child(3){animation-delay:.3s}.stagger-children>*:nth-child(4){animation-delay:.4s}.stagger-children>*:nth-child(5){animation-delay:.5s}.stagger-children>*:nth-child(6){animation-delay:.6s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.particles-container,.floating-shape{display:none}}
