/* Reset and Base Styles */ * { margin: 0; padding: 0; box-sizing: border-box; } :root { --primary: #4a6fa5; --secondary: #6b4e71; --accent: #ff6b6b; --light: #f8f9fa; --dark: #343a40; } body { font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%); color: var(--dark); line-height: 1.6; min-height: 100vh; overflow-x: hidden; } /* Container and Layout */ .container { max-width: 1200px; margin: 0 auto; padding: 2rem; min-height: 100vh; display: flex; justify-content: center; align-items: center; position: relative; overflow: hidden; } /* Welcome Box */ .welcome-box { background: rgba(255, 255, 255, 0.95); padding: 3rem 2rem; border-radius: 20px; box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1); text-align: center; max-width: 600px; width: 100%; position: relative; z-index: 1; backdrop-filter: blur(10px); transform: translateY(20px); opacity: 0; animation: fadeInUp 0.8s ease-out forwards; animation-delay: 0.3s; } /* Logo */ .logo { font-size: 4rem; margin-bottom: 1.5rem; color: var(--primary); transform: scale(0); animation: popIn 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55) forwards; animation-delay: 0.5s; } /* Typography */ .title { font-size: 2.5rem; margin-bottom: 1rem; color: var(--dark); background: linear-gradient(45deg, var(--primary), var(--secondary)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; opacity: 0; transform: translateY(20px); animation: fadeInUp 0.8s ease-out forwards; animation-delay: 0.7s; } .subtitle { font-size: 1.2rem; color: #6c757d; margin-bottom: 2rem; opacity: 0; transform: translateY(20px); animation: fadeInUp 0.8s ease-out forwards; animation-delay: 0.9s; } /* Buttons */ .cta-buttons { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; opacity: 0; transform: translateY(20px); animation: fadeInUp 0.8s ease-out forwards; animation-delay: 1.1s; } .btn { padding: 0.8rem 2rem; border: none; border-radius: 50px; font-size: 1rem; font-weight: 600; cursor: pointer; transition: all 0.3s ease; text-transform: uppercase; letter-spacing: 1px; position: relative; overflow: hidden; } .btn.primary { background: linear-gradient(45deg, var(--primary), var(--secondary)); color: white; box-shadow: 0 5px 15px rgba(74, 110, 165, 0.4); } .btn.secondary { background: transparent; color: var(--primary); border: 2px solid var(--primary); } .btn:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15); } /* Floating Shapes */ .floating-shapes { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; } .shape { position: absolute; border-radius: 50%; background: linear-gradient(45deg, var(--primary), var(--secondary)); opacity: 0.1; animation: float 15s infinite linear; } .shape-1 { width: 150px; height: 150px; top: 10%; left: 10%; animation-delay: 0s; } .shape-2 { width: 250px; height: 250px; bottom: 10%; right: 10%; animation-delay: 5s; animation-direction: reverse; } .shape-3 { width: 100px; height: 100px; top: 50%; right: 20%; animation-delay: 10s; } /* Keyframe Animations */ @keyframes fadeInUp { to { opacity: 1; transform: translateY(0); } } @keyframes popIn { 0% { transform: scale(0); } 70% { transform: scale(1.1); } 100% { transform: scale(1); } } @keyframes float { 0%, 100% { transform: translate(0, 0) rotate(0deg); } 25% { transform: translate(20px, 20px) rotate(5deg); } 50% { transform: translate(0, 40px) rotate(0deg); } 75% { transform: translate(-20px, 20px) rotate(-5deg); } } /* Responsive Design */ @media (max-width: 768px) { .title { font-size: 2rem; } .subtitle { font-size: 1rem; } .cta-buttons { flex-direction: column; gap: 0.8rem; } .btn { width: 100%; } .shape { display: none; } }