/* Styles pour la carte synergy-block avec image */
.synergy-block.with-image {
    padding: 0;
    overflow: hidden;
    max-height: 400px; /* Hauteur maximale réduite */
    background-color: transparent; /* Fond transparent */
}

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

/* Style pour le texte descriptif maintenant dans la carte de droite */
.description-banner {
    background-color: var(--primary-color); /* Couleur rouge bordeaux */
    border-radius: 15px;
    padding: 1.2rem 1.5rem;
    margin: 0 1.5rem 1.3rem;
    box-shadow: 0 4px 12px rgba(139, 21, 56, 0.15);
}

.description-banner p {
    color: var(--white);
    margin: 0;
    font-size: 0.95rem;
    line-height: 1.4;
}

.synergy-image {
    flex-grow: 1; /* Permet à cette section de s'étirer */
    height: 300px; /* Hauteur de l'image ajustée */
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    border-radius: 40px;
    /* Assurer que l'overflow est caché pour que les coins arrondis fonctionnent */
}

.synergy-image.full-height {
    height: 100%; /* L'image remplit toute la hauteur */
    min-height: 520px; /* Correspondre à la hauteur de l'autre carte */
}

.team-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 40px; /* Même rayon de bordure que la carte */
    /* Transition supprimée pour rendre l'image statique */
}

/* Effet spécifique supprimé pour rendre l'image statique */

.synergy-block:hover .team-image {
    /* Transformation supprimée */
    transform: none;
}

/* Style pour égaliser les hauteurs des cartes */
.partners-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    margin-bottom: 2rem;
}

.partners-list, .synergy-block.with-image {
    display: flex;
    flex-direction: column;
    max-height: 520px; /* Hauteur maximale augmentée */
    height: 520px; /* Hauteur fixe augmentée */
}

.partners-list ul {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin: 0;
    padding: 0 1.5rem 1.5rem;
    list-style-position: outside; /* Positions des puces ajustées */
    list-style-type: none; /* Retirer les puces par défaut */
}

/* Optimisation des éléments de liste */
.partners-list li {
    position: relative;
    margin-bottom: 1.2rem; /* Plus d'espace entre les éléments */
    font-size: 0.9rem; /* Taille de police réduite */
    line-height: 1.3;
    padding-left: 1.8rem; /* Espace pour le symbole check */
}

.partners-list li::before {
    content: "\2714"; /* Symbole check */
    position: absolute;
    left: 0;
    color: var(--primary-color);
    font-weight: bold;
}

/* Assurer que le texte s'adapte à la largeur */
.partners-list li {
    word-wrap: break-word;
    hyphens: auto;
    max-width: 100%;
    box-sizing: border-box;
}

/* Responsivité */
@media (min-width: 769px) and (max-width: 991px) {
    /* Ajustements pour tablettes mais en gardant la disposition côte à côte */
    .partners-content {
        grid-template-columns: 1fr 1fr; /* Maintenir deux colonnes */
        gap: 1rem; /* Réduire légèrement l'espace entre les colonnes */
    }
    
    .synergy-block.with-image, .partners-list {
        max-height: 460px; /* Hauteur légèrement réduite pour les tablettes */
        height: 460px;
    }
    
    /* Adapter la taille du texte */
    .description-banner p {
        font-size: 0.9rem;
    }
    
    .partners-list li {
        font-size: 0.85rem;
        margin-bottom: 0.6rem;
    }
}

/* Écrans larges */
@media (min-width: 1200px) {
    .synergy-block.with-image, .partners-list {
        max-height: 540px; /* Hauteur légèrement augmentée pour les grands écrans */
        height: 540px;
    }
    
    .synergy-image.full-height {
        min-height: 540px;
    }
}

/* Mobile uniquement */
@media (max-width: 768px) {
    .partners-content {
        grid-template-columns: 1fr; /* Une seule colonne pour mobile */
    }
    
    .synergy-block.with-image {
        height: auto;
        max-height: none;
        background-color: transparent; /* Supprimer tout arrière-plan en version mobile */
        box-shadow: none; /* Supprimer l'ombre en version mobile */
    }
    
    .partners-list {
        height: auto;
        max-height: none;
    }
    
    .synergy-image {
        height: 240px; /* Hauteur augmentée pour la photo en version mobile */
        background-color: transparent; /* Assurer que le conteneur d'image n'a pas de fond */
        border-radius: 40px; /* Conserver les coins arrondis en version mobile */
    }
    
    /* S'assurer que l'image conserve ses coins arrondis en version mobile */
    .team-image {
        border-radius: 40px;
    }
    
    /* Ajustements pour les très petits écrans */
    @media (max-width: 480px) {
        .description-banner {
            margin: 0 0.8rem 1rem;
            padding: 1rem;
        }
        
        .partners-list ul {
            padding: 0 0.8rem 1rem;
        }
        
        .partners-list li {
            font-size: 0.8rem;
            padding-left: 1.5rem;
        }
    }
}
