/* index.css - Homepage Specifics */
.hero { position: relative; height: 85vh; width: 100%; overflow: hidden; display: flex; align-items: flex-end; padding: 80px 5%; background: #000; }
.hero-video { position: absolute; top: 50%; left: 50%; min-width: 100%; min-height: 100%; z-index: 1; transform: translate(-50%, -50%); object-fit: cover; }
.hero::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, transparent 60%); z-index: 2; }
.hero-content { position: relative; z-index: 3; width: 100%; }

.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; width: 100%; }
.plan-card { position: relative; min-height: 550px; display: flex; flex-direction: column; justify-content: flex-end; text-decoration: none; overflow: hidden; background-size: cover; background-position: center; }
.plan-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, transparent 70%); z-index: 1; }
.card-content { position: relative; z-index: 2; padding: 40px; color: #fff; }
.card-content h3 { font-size: 31px !important; font-weight: 800; margin-bottom: 15px; }

.card-gold { background-image: url('gold-hero.jpg'); }
.card-silver { background-image: url('silver-hero.jpg'); }
.card-bronze { background-image: url('bronze-hero.jpg'); }
.learn-more { color: #fff; border-bottom: 2px solid #fff; padding-bottom: 2px; font-weight: 700; font-size: 13px; text-transform: none !important; }

@media (max-width: 1024px) { .grid-3 { grid-template-columns: 1fr; } .h1-large-white { font-size: 50px !important; } }