/* ============================================ HERO SECTION ============================================ */ .hero { position: relative; min-height: 100vh; display: flex; align-items: center; overflow: hidden; padding-top: 80px; } /* Background */ .hero__bg { position: absolute; inset: 0; z-index: 0; } .hero__gradient { position: absolute; inset: 0; background: linear-gradient(135deg, var(--color-secondary-900) 0%, var(--color-secondary-800) 30%, var(--color-secondary-600) 60%, var(--color-primary-800) 100%); } .hero__pattern { position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,0.03) 1px, transparent 1px); background-size: 30px 30px; } .hero__orb { position: absolute; border-radius: 50%; filter: blur(80px); opacity: 0.4; } .hero__orb--1 { width: 400px; height: 400px; background: rgba(0, 169, 157, 0.3); /* Teal */ top: -100px; right: -100px; animation: float 8s ease-in-out infinite; } .hero__orb--2 { width: 300px; height: 300px; background: rgba(15, 76, 129, 0.4); /* Deep Blue */ bottom: -50px; left: -50px; animation: float 10s ease-in-out infinite reverse; } .hero__orb--3 { width: 200px; height: 200px; background: rgba(0, 200, 83, 0.2); /* Bright Accent Green */ top: 40%; left: 40%; animation: float 6s ease-in-out infinite; } /* Container */ .hero__container { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; } /* Content */ .hero__content { color: white; } .hero__badge { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1rem; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.15); border-radius: var(--radius-full); font-size: 0.85rem; font-weight: 500; color: var(--color-primary-200); margin-bottom: 1.5rem; backdrop-filter: blur(10px); } .hero__badge-dot { width: 8px; height: 8px; background: var(--color-accent-500); border-radius: 50%; animation: pulse 2s ease-in-out infinite; } .hero__title { font-size: 3.5rem; font-weight: 800; line-height: 1.1; margin-bottom: 1.5rem; color: white; } .hero__title--highlight { background: linear-gradient(135deg, var(--color-primary-300), var(--color-primary-500)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .hero__title--accent { background: linear-gradient(135deg, var(--color-accent-400), var(--color-accent-500)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .hero__description { font-size: 1.1rem; line-height: 1.8; color: rgba(255, 255, 255, 0.75); margin-bottom: 2rem; max-width: 540px; } .hero__actions { display: flex; gap: 1rem; margin-bottom: 3rem; flex-wrap: wrap; } .hero__cta { position: relative; overflow: hidden; } .hero__cta::after { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: linear-gradient( 45deg, transparent 30%, rgba(255,255,255,0.1) 50%, transparent 70% ); animation: shimmer 3s ease-in-out infinite; } /* Quick Stats */ .hero__quick-stats { display: flex; align-items: center; gap: 1.5rem; padding: 1.25rem 1.75rem; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: var(--radius-xl); backdrop-filter: blur(8px); } .hero__stat { display: flex; flex-direction: column; } .hero__stat strong { font-family: var(--font-stats); font-size: 1.5rem; font-weight: 800; color: white; } .hero__stat span { font-size: 0.78rem; color: rgba(255, 255, 255, 0.6); font-weight: 500; } .hero__stat-divider { width: 1px; height: 36px; background: rgba(255, 255, 255, 0.15); } /* Visual / Right Side */ .hero__visual { display: flex; justify-content: center; } .hero__video-wrapper { position: relative; width: 100%; max-width: 520px; border-radius: var(--radius-2xl); overflow: hidden; box-shadow: 0 24px 80px rgba(0, 0, 0, 0.3); } .hero__video { width: 100%; height: 520px; object-fit: cover; display: block; } /* Mobile-only video (between title & description) — hidden on desktop */ .hero__video-mobile { display: none; } /* Scroll Indicator */ .hero__scroll { position: absolute; bottom: 2rem; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 0.5rem; z-index: 2; } .hero__scroll span { font-size: 0.7rem; color: rgba(255, 255, 255, 0.4); letter-spacing: 0.1em; text-transform: uppercase; } .hero__scroll-line { width: 2px; height: 30px; background: linear-gradient(to bottom, var(--color-primary-400), transparent); border-radius: 2px; animation: float 2s ease-in-out infinite; } /* Responsive */ @media (max-width: 1024px) { .hero__container { grid-template-columns: 1fr; text-align: center; } .hero__title { font-size: 2.5rem; } .hero__description { margin: 0 auto 2rem; } .hero__actions { justify-content: center; } .hero__quick-stats { justify-content: center; } .hero__visual { display: none; } .hero__video-mobile { display: block; margin: 1.5rem 0; } .hero__video-mobile .hero__video-wrapper { max-width: 100%; } .hero__video-mobile .hero__video { height: 280px; } .hero__scroll { display: none; } } @media (max-width: 640px) { .hero { padding-top: 70px; } .hero__title { font-size: 2rem; } .hero__quick-stats { flex-direction: column; gap: 0.75rem; } .hero__stat-divider { width: 40px; height: 1px; } .hero__actions { flex-direction: column; align-items: center; } .hero__video-mobile .hero__video { height: 200px; } .hero__video-mobile .hero__video-wrapper { border-radius: var(--radius-xl); } }