.card-expertise {
    position: relative; 
    isolation: isolate;
    transition: all 0.3s ease-in-out !important; 
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 15px !important;
    padding: 30px !important; 
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05); 
}

.card-expertise:hover {
    transform: translateY(-8px) !important; 
    border: 1px solid #707070 !important; 
    box-shadow: 0 15px 30px rgba(52, 89, 169, 0.2), 0 5px 10px rgba(0, 0, 0, 0.1) !important; 
    cursor: pointer;
}

.card-expertise:hover .elementor-button-text {
    color: #142247 !important; 
}

.bouton-etendu, 
.bouton-etendu .elementor-widget-container, 
.bouton-etendu a {
    position: static !important;
}

.bouton-etendu a::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;  
    height: 100%;  
    z-index: 10;    
}

.onglets-depannage .e-n-tabs-heading {
    display: flex !important;
    width: 100% !important;
    border-bottom: 2px solid #ececec !important;
    gap: 0 !important;
}

.onglets-depannage .e-n-tab-title {
    flex: 1 !important; 
    background: transparent !important;
    border: none !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    padding: 20px 0 !important;
    transition: all 0.3s ease;
}

.onglets-depannage .e-n-tab-title[aria-selected="true"] {
    border-bottom: 3px solid #4A6CF7 !important; /* Ton bleu ici */
}

.onglets-depannage .e-n-tab-title:hover {
    background-color: rgba(74, 108, 247, 0.03) !important;
}

.img-fournisseur {
    border-radius: 30px !important;
}

.img-fournisseur:hover {
    transform: translateY(-8px) !important; 
    box-shadow: 0 15px 30px rgba(52, 89, 169, 0.2), 0 5px 10px rgba(0, 0, 0, 0.1) !important; 
}

.main-navbar.scrolled {
    background-color: white !important;
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    border-radius: 0px 0px 22px 22px !important;
    box-shadow: 0 15px 30px rgba(52, 89, 169, 0.4), 0 5px 10px rgba(0, 0, 0, 0.1) !important; 
}

/* * CSS PERSONNALISÉ POUR L'ACCORDÉON IMBRIQUÉ ADP PLOMBERIE (Elementor Nested Accordion)
 * Ce code transforme les items de FAQ en "cartes" ADP et s'assure que tout le texte est visible.
 */

/* 1. Global - Transforme chaque item en "carte" ADP (ouvert ou fermé) */
.e-n-accordion-item {
    background-color: #ffffff;
    border-radius: 20px; /* Bords très arrondis comme dans les expertises (image_1.png) */
    margin-bottom: 24px; /* Plus d'espace entre les cartes pour les aérer */
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04); /* Ombre douce ADP */
    border: 1px solid transparent; /* Pour des transitions fluides */
    transition: box-shadow 0.3s ease, transform 0.2s ease, border-color 0.3s ease;
    overflow: hidden; /* Pour contenir les bords arrondis et les animations */
}

/* Feedback au survol de la carte entière */
.e-n-accordion-item:hover {
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08); /* Ombre plus prononcée */
    transform: translateY(-2px); /* Léger effet de soulèvement pour l'interactivité */
}

/* 2. Titre (Summary) - Amélioration du contraste et de l'espace */
.e-n-accordion-item-title {
    padding: 24px 30px; /* Plus d'espace autour du texte */
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    background-color: transparent; /* Fond transparent par défaut */
    border-bottom: 1px solid rgba(0, 0, 0, 0.04); /* Ligne de séparation subtile */
    transition: color 0.3s ease;
}

/* Cache la flèche native des détails */
.e-n-accordion-item-title::-webkit-details-marker {
    display: none;
}
.e-n-accordion-item-title {
    list-style: none;
}

/* Texte du titre */
.e-n-accordion-item-title-text {
    font-weight: 600;
    font-size: 1.2rem; /* Légèrement plus grand pour la hiérarchie */
    color: #111827; /* Noir sombre ADP pour un bon contraste */
}

/* 3. Style quand l'accordéon est OUVERT */
.e-n-accordion-item[open] .e-n-accordion-item-title {
    color: #4354A5; /* Texte bleu roi ADP quand ouvert */
}

/* 4. Icône (+ / -) - Personnalisation avancée et animation */
.e-n-accordion-item-title-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px; /* Plus grand pour l'esthétique et l'alignement */
    height: 44px;
    background-color: #EAF5F4; /* Fond vert d'eau très clair (pastel ADP de image_2.png) */
    border-radius: 50%;
    color: #61BBAA; /* Icône vert d'eau ADP */
    transition: background-color 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

/* Animation de rotation de l'icône */
.e-n-accordion-item[open] .e-n-accordion-item-title-icon {
    background-color: #4354A5; /* Fond bleu roi ADP quand ouvert */
    color: #ffffff; /* Icône blanche */
    transform: rotate(90deg); /* Légère rotation pour l'effet de transition */
}

.e-n-accordion-item-title-icon svg {
    width: 16px; /* Ajustement de la taille de l'icône interne */
    height: 16px;
    fill: currentColor;
}

/* 5. Réponse (Contenu caché) - Assurer la visibilité complète et l'aération */
.e-n-accordion-item > div[role="region"] {
    padding: 30px; /* Plus d'espace autour de tout le texte de réponse */
    color: #4B5563; /* Gris clair ADP pour la lisibilité (comme dans image_2.png) */
    line-height: 1.8; /* Texte très aéré */
    font-size: 1rem;
    
    /* CRUCIAL : S'assurer que le texte n'est PAS coupé */
    overflow: visible !important; 
    max-height: none !important; 
    
    /* Animation douce pour l'apparition */
    transition: padding 0.4s ease, opacity 0.4s ease; 
}

/* Masquer la réponse par défaut et l'afficher quand ouvert */
.e-n-accordion-item:not([open]) > div[role="region"] {
    display: none; /* Utiliser display:none quand fermé est la façon la plus sûre de masquer */
}

.e-n-accordion-item[open] > div[role="region"] {
    display: block; /* Afficher quand ouvert */
    animation: fadeInSlideIn 0.4s ease; /* Animation personnalisée pour l'apparition */
}

/* Animation d'apparition douce (fade-in et slide-in) */
@keyframes fadeInSlideIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}