/* RE-ALIGNMENT AND ENHANCED EXPERIENCE PATCH */

.hero {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    min-height: 100vh;
    padding: 0 5%;
}

.hero-content {
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}

.stats-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    gap: 20px;
    padding: 40px 10%;
    margin-top: -20px;
    background: linear-gradient(to bottom, transparent, rgba(5,5,5,1) 30%);
    position: relative;
    z-index: 5;
}

.stat-item {
    min-width: 120px;
    flex: 1 1 auto;
    text-align: center;
}

.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    padding: 0 5%;
    max-width: 1200px;
    margin: 0 auto;
    align-items: stretch;
}

.card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.card-img {
    height: 400px;
    object-fit: cover;
    width: 100%;
}

.f-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

@media(min-width: 768px) {
    .f-grid {
        grid-template-columns: 2fr 1fr 1fr;
        gap: 50px;
    }
}

@media(max-width: 768px) {
    .hero h1.hero-title {
        font-size: 2.5rem !important;
        line-height: 1.2;
    }
    .hero p.hero-sub {
        font-size: 1rem !important;
        padding: 0 15px;
    }
}
