@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap'); /* Base styles */ * { font-family: 'Inter', sans-serif; } .gradient-bg { background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f172a 100%); } /* Utility classes */ .purple-glow { box-shadow: 0 0 20px rgba(168, 85, 247, 0.3); } .mockup-glow { filter: drop-shadow(0 0 20px rgba(139, 92, 246, 0.4)); } /* Animations */ .fade-in { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; } .fade-in.visible { opacity: 1; transform: translateY(0); } .slide-in-left { opacity: 0; transform: translateX(-50px); transition: all 0.8s ease-out; } .slide-in-left.visible { opacity: 1; transform: translateX(0); } .slide-in-right { opacity: 0; transform: translateX(50px); transition: all 0.8s ease-out; } .slide-in-right.visible { opacity: 1; transform: translateX(0); } /* Loading Screen */ .loading-screen { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f172a 100%); display: flex; justify-content: center; align-items: center; z-index: 9999; transition: opacity 0.5s ease-out; } .loading-screen.fade-out { opacity: 0; pointer-events: none; } /* Lock Animation */ .lock-animation { width: 80px; height: 80px; position: relative; } .lock-body { width: 50px; height: 35px; background: linear-gradient(135deg, #8b5cf6, #a855f7); border-radius: 8px; position: absolute; bottom: 0; left: 15px; animation: glow 2s ease-in-out infinite alternate; } .lock-shackle { width: 30px; height: 30px; border: 4px solid #8b5cf6; border-bottom: none; border-radius: 15px 15px 0 0; position: absolute; top: 5px; left: 25px; animation: unlock 2s ease-in-out infinite; } /* Navigation */ .nav-link { position: relative; overflow: hidden; } .nav-link::after { content: ''; position: absolute; bottom: 0; left: -100%; width: 100%; height: 2px; background: linear-gradient(90deg, transparent, #8b5cf6, transparent); transition: left 0.5s; } .nav-link:hover::after { left: 100%; } /* Cards */ .feature-card { transition: all 0.3s ease; } .feature-card:hover { transform: translateY(-5px); box-shadow: 0 10px 25px rgba(139, 92, 246, 0.2); } .download-card { transition: all 0.3s ease; border: 1px solid rgba(139, 92, 246, 0.3); } .download-card:hover { transform: scale(1.05); border-color: #8b5cf6; box-shadow: 0 10px 30px rgba(139, 92, 246, 0.3); } /* Keyframes */ @keyframes glow { 0% { box-shadow: 0 0 10px rgba(139, 92, 246, 0.5); } 100% { box-shadow: 0 0 20px rgba(139, 92, 246, 0.8); } } @keyframes unlock { 0%, 50% { transform: rotate(0deg); } 75%, 100% { transform: rotate(-10deg) translateX(2px); } }