.hero-section { min-height: 100vh; display: flex; align-items: center; position: relative; padding-top: 80px; overflow: hidden; }
.video-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -2; background: #000; }
.video-background video { width: 100%; height: 100%; object-fit: cover; opacity: 0.8; }

.video-overlay {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1;
    background: linear-gradient(to right, rgba(2,6,23,0.95) 0%, rgba(2,6,23,0.6) 50%, rgba(2,6,23,0.95) 100%);
}

.hero-content { position: relative; z-index: 1; max-width: 800px; }
.hero-title { font-size: var(--heading-1); margin-bottom: 1.5rem; text-shadow: 0 4px 20px rgba(0,0,0,0.8); }
.hero-subtitle { font-size: var(--text-lg); color: #e2e8f0; max-width: 600px; margin-bottom: 2.5rem; text-shadow: 0 2px 10px rgba(0,0,0,0.8); font-weight: 500; }
.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; }

.grid-layout { display: grid; gap: 2rem; margin-top: 3rem; }
.services-grid { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.glass-card { background: var(--glass-bg); border: 1px solid var(--glass-border); border-radius: var(--radius-lg); padding: 2.5rem; backdrop-filter: blur(12px); transition: transform var(--transition-smooth); }
.glass-card:hover { transform: translateY(-10px); border-color: var(--color-energy-orange); }
.card-icon { font-size: 3rem; margin-bottom: 1.5rem; }

.stats-grid { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); text-align: center; }
.stat-number { font-size: 4rem; margin-bottom: 0.5rem; font-weight: 800; }
.stat-label { font-size: var(--text-lg); color: #cbd5e1; }
.layout-split { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }

.feature-list { list-style: none; margin-top: 2rem; }
.feature-list li { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; font-size: 1.1rem; font-weight: 500; }
.feature-list li::before { content: '✔'; color: var(--color-energy-orange); font-weight: bold; font-size: 1.5rem; }

@media (max-width: 992px) { .layout-split { grid-template-columns: 1fr; gap: 2rem; } }