/* Hero Section Styles */ .hero { min-height: 100vh; display: flex; align-items: center; justify-content: center; position: relative; background: linear-gradient(180deg, var(--dark) 0%, var(--dark-light) 100%); overflow: hidden; } .hero::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url('/static/image/image-2.png'); background-size: cover; background-position: center; background-repeat: no-repeat; opacity: 0.15; z-index: 0; } .hero-content { text-align: center; z-index: 2; animation: fadeInUp 1s ease; } /* Glitch Effect */ .glitch { font-size: 4rem; font-weight: 700; text-transform: uppercase; position: relative; color: var(--white); letter-spacing: 5px; animation: glitch 2s infinite; } .glitch::before, .glitch::after { content: attr(data-text); position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .glitch::before { animation: glitch-1 0.5s infinite; color: var(--primary); z-index: -1; } .glitch::after { animation: glitch-2 0.5s infinite; color: var(--secondary); z-index: -2; } @keyframes glitch { 0%, 100% { text-shadow: 0 0 5px rgba(99, 102, 241, 0.5); } 50% { text-shadow: 0 0 20px rgba(99, 102, 241, 0.8); } } @keyframes glitch-1 { 0%, 100% { clip: rect(0, 900px, 0, 0); } 25% { clip: rect(20px, 900px, 40px, 0); transform: translate(-2px, 2px); } 50% { clip: rect(60px, 900px, 80px, 0); transform: translate(2px, -2px); } 75% { clip: rect(100px, 900px, 120px, 0); transform: translate(-2px, 2px); } } /* Hero Text Elements */ .hero-title { font-size: 1.8rem; margin: 1.5rem 0; background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; } /* Fade-in Animation */ .fade-in-element { opacity: 0; transform: translateY(20px); animation: fadeInUp 1s ease forwards; } .fade-in-element:nth-child(2) { animation-delay: 0.5s; } .fade-in-element:nth-child(3) { animation-delay: 1s; } .fade-in-element:nth-child(4) { animation-delay: 1.5s; } /* Typing Effect */ .typing-container { font-size: 2.8rem; margin: 2rem 0 3rem 0; min-height: 5rem; display: flex; align-items: center; justify-content: center; max-width: 900px; margin-left: auto; margin-right: auto; text-align: center; } .streaming-text { color: var(--white); font-weight: 700; text-align: center; line-height: 1.4; min-height: 1.8em; text-shadow: 0 0 30px rgba(99, 102, 241, 0.8), 0 0 60px rgba(139, 92, 246, 0.4); letter-spacing: 0.5px; filter: brightness(1.1); } .streaming-text .highlight { color: var(--secondary); font-weight: 600; } .streaming-text .python-icon { color: #3776ab; margin: 0 0.3rem; font-size: 1.2em; filter: drop-shadow(0 0 10px rgba(55, 118, 171, 0.5)); } .cursor { color: var(--primary); font-weight: 300; margin-left: 2px; animation: typewriterCursor 1s infinite; } @keyframes typewriterCursor { 0%, 50% { opacity: 1; border-right: 2px solid var(--primary); } 51%, 100% { opacity: 0.3; border-right: 2px solid transparent; } } .hero-tagline { font-size: 1.2rem; color: var(--gray); margin-bottom: 2rem; } /* Hero Buttons */ .hero-buttons { display: flex; gap: 1rem; justify-content: center; margin-bottom: 2rem; } .btn { padding: 12px 30px; border-radius: 50px; text-decoration: none; font-weight: 600; transition: all 0.3s ease; display: inline-block; } .btn-primary { background: var(--gradient); color: var(--white); box-shadow: 0 10px 30px rgba(99, 102, 241, 0.3); } .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 15px 40px rgba(99, 102, 241, 0.4); } .btn-outline { border: 2px solid var(--primary); color: var(--primary); } .btn-outline:hover { background: var(--primary); color: var(--white); } /* Social Links */ .social-links { display: flex; gap: 1.5rem; justify-content: center; } .social-links a { color: var(--gray); font-size: 1.5rem; transition: all 0.3s ease; padding: 10px; border-radius: 50%; background: rgba(255, 255, 255, 0.1); display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; } .social-links a:hover { transform: translateY(-3px); background: rgba(255, 255, 255, 0.2); } /* Specific colors for social icons */ .social-links a[href*="github.com"] { color: #ffffff; } .social-links a[href*="github.com"]:hover { color: #ffffff; background: #333333; } .social-links a[href*="huggingface.co"] { color: #ff9500; } .social-links a[href*="huggingface.co"]:hover { color: #ffffff; background: #ff9500; } .social-links a[href*="mailto:"] { color: #ea4335; } .social-links a[href*="mailto:"]:hover { color: #ffffff; background: #ea4335; } /* Floating Shapes Animation */ .hero-animation { position: absolute; width: 100%; height: 100%; overflow: hidden; z-index: 1; } .floating-shapes { position: relative; width: 100%; height: 100%; } .shape { position: absolute; border-radius: 50%; background: linear-gradient(135deg, rgba(99, 102, 241, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%); animation: float 20s infinite ease-in-out; } .shape:nth-child(1) { width: 300px; height: 300px; top: 20%; left: 10%; animation-delay: 0s; } .shape:nth-child(2) { width: 200px; height: 200px; top: 60%; right: 10%; animation-delay: 5s; } .shape:nth-child(3) { width: 150px; height: 150px; bottom: 10%; left: 50%; animation-delay: 10s; }