/* --- CORRECTIFS ALIGNEMENTS --- */

/* 1. Hero : Image en fond total et texte par-dessus */
.hero-card {
    position: relative;
    overflow: hidden;
    padding: 0; /* On retire le padding du conteneur pour que l'image touche les bords */
    display: flex;
    align-items: flex-end; /* Texte en bas ou au centre selon préférence */
    min-height: 500px; /* Hauteur garantie */
    border-radius: 20px;
}

.hero-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

/* Dégradé sombre pour que le texte blanc soit toujours lisible sur la photo */
.hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(14, 17, 22, 0.9) 0%, rgba(14, 17, 22, 0.2) 60%, transparent 100%);
    z-index: 1;
}

.hero-content {
    position: relative;
    z-index: 2;
    padding: 40px;
    width: 100%;
}

/* 2. Section "Split" (Image + Carte blanche) : Alignement vertical parfait */
.split {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 50% / 50% */
    gap: 40px;
    align-items: center; /* Centre verticalement */
}

/* Force l'image à remplir son espace sans déformer */
.img-wrapper {
    height: 100%;
    min-height: 400px;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Ajustement Mobile */
@media (max-width: 960px) {
    .split {
        grid-template-columns: 1fr; /* Empilement sur mobile */
    }
    .hero-card {
        min-height: 400px;
    }
}