.hero-wrapper { position: relative; height: 85vh; width: 100%; overflow: hidden; } .hero-background { position: absolute; inset: 0; z-index: 0; } #hero-bg-media { width: 100%; height: 100%; object-fit: cover; opacity: 0.6; transform: scale(1.1); transition: opacity 1s ease; } .hero-vignette { position: absolute; inset: 0; background: radial-gradient(circle at center, transparent 0%, var(--color-bg-base) 120%), linear-gradient(to top, var(--color-bg-base) 10%, transparent 60%); z-index: 1; } .hero-content { position: relative; z-index: 10; height: 100%; max-width: 1600px; margin: 0 auto; padding: 0 3rem; display: flex; align-items: flex-end; padding-bottom: 6rem; gap: 3rem; } .hero-poster-card { width: 260px; height: 380px; border-radius: var(--radius-lg); overflow: hidden; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.7); border: 1px solid rgba(255, 255, 255, 0.1); flex-shrink: 0; background: #1a1a1a; } .hero-poster-card img { width: 100%; height: 100%; object-fit: cover; } .hero-text { flex: 1; max-width: 800px; margin-bottom: 1rem; animation: fadeInUp 0.8s ease; } .hero-title { font-size: 4rem; font-weight: 900; line-height: 1.1; margin: 0 0 1rem 0; text-shadow: 0 4px 20px rgba(0, 0, 0, 0.8); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .hero-meta { display: flex; align-items: center; gap: 1.5rem; margin-bottom: 1.5rem; font-size: 1.1rem; font-weight: 600; } .hero-desc { font-size: 1.1rem; line-height: 1.6; color: #e4e4e7; margin-bottom: 2rem; max-width: 650px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5); } .hero-buttons { display: flex; gap: 1rem; } .hero-overlay { position: absolute; inset: 0; background: radial-gradient(circle at center, transparent 0%, var(--color-bg-base) 120%), linear-gradient(to top, var(--color-bg-base) 10%, rgba(9,9,11,0.8) 25%, transparent 60%); z-index: 1; } .score-badge { color: #22c55e; background: rgba(34, 197, 94, 0.1); padding: 0.2rem 0.8rem; border-radius: 6px; border: 1px solid rgba(34, 197, 94, 0.2); }