/* =========================================================
   Mega Menu — menu principal (Medical Business Child)
   ========================================================= */

@media (min-width: 993px){

    /* L'élément parent devient statique pour que le panneau
       s'ancre sur la navbar pleine largeur */
    .navbar-nav > li.mb-mega-parent {
        position: static;
    }

    /* Panneau pleine largeur */
    .navbar .navbar-nav li.mb-mega-parent > ul.mb-mega-menu {
        top: 100% !important;
        left: 0;
        right: 0;
        width: auto;
        margin: 0;
        padding: 14px 30px 18px;
        background: #fff;
        border: 0;
        border-top: 3px solid #007582;
        box-shadow: 0 22px 40px -18px rgba(0, 0, 0, 0.3);
    }

    /* Pont invisible entre le menu et le panneau : garde le survol actif
       pendant que le curseur descend du lien vers le mega menu */
    .navbar .navbar-nav li.mb-mega-parent > ul.mb-mega-menu:before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: -32px;
        height: 32px;
    }

    .navbar-nav li ul.mb-mega-menu:after {
        content: "";
        display: table;
        clear: both;
    }

    /* Grille : 3 cartes par ligne */
    .navbar-nav li ul.mb-mega-menu > li.mb-mega-card {
        float: left;
        width: 33.3333%;
        padding: 8px 10px;
        border: 0;
    }

    .navbar-nav li ul.mb-mega-menu > li.mb-mega-card:nth-child(3n + 1) {
        clear: left;
    }

    /* Carte : neutralise les styles de dropdown classique du thème */
    .navbar-nav li ul.mb-mega-menu li.mb-mega-card a.mb-mega-card-link,
    .navbar-nav li ul.mb-mega-menu li.mb-mega-card:hover a.mb-mega-card-link {
        display: block;
        padding: 0;
        border: 1px solid #eef1f4;
        border-radius: 10px;
        overflow: hidden;
        background: #fff;
        line-height: 1.5;
        transition: box-shadow ease-in-out 0.3s, transform ease-in-out 0.3s;
    }

    .navbar-nav li ul.mb-mega-menu li.mb-mega-card:hover a.mb-mega-card-link {
        box-shadow: 0 16px 30px -14px rgba(0, 0, 0, 0.25);
        transform: translateY(-4px);
    }

    /* Image de couverture de la catégorie : affichée à 100%, en entier,
       sans recadrage — la hauteur suit le ratio naturel de l'image */
    .mb-mega-card-thumb {
        display: block;
        overflow: hidden;
        background: #f4f7f9;
    }

    .mb-mega-card-thumb img {
        display: block;
        width: 100%;
        height: auto;
        transition: transform ease-in-out 0.4s;
    }

    .mb-mega-card:hover .mb-mega-card-thumb img {
        transform: scale(1.04);
    }

    /* Titre de la catégorie */
    .navbar-nav li ul.mb-mega-menu .mb-mega-card-title {
        display: block;
        padding: 12px 16px 2px;
        font-size: 15px;
        font-weight: 600;
        color: #2c3338;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color ease-in-out 0.3s;
    }

    .navbar-nav li ul.mb-mega-menu li.mb-mega-card:hover .mb-mega-card-title {
        color: #007582;
    }

    /* Description optionnelle (champ description du menu) */
    .navbar-nav li ul.mb-mega-menu .mb-mega-card-desc {
        display: block;
        padding: 0 16px;
        font-size: 12px;
        color: #7a828a;
        max-height: 38px;
        overflow: hidden;
    }

    /* Bouton Voir Plus */
    .navbar-nav li ul.mb-mega-menu .mb-mega-card-btn {
        display: inline-block;
        margin: 6px 16px 14px;
        font-size: 12px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        color: #007582;
    }

    .navbar-nav li ul.mb-mega-menu .mb-mega-card-btn i {
        margin-left: 6px;
        transition: transform ease-in-out 0.3s;
    }

    .navbar-nav li ul.mb-mega-menu li.mb-mega-card:hover .mb-mega-card-btn i {
        transform: translateX(4px);
    }

    /* Sous-liens (niveau 3 du menu) affichés en liste simple dans la carte */
    .navbar-nav li ul.mb-mega-menu li ul.mb-mega-sub {
        position: static !important;
        display: block !important;
        width: 100%;
        margin: 0;
        padding: 0 16px 14px;
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .navbar-nav li ul.mb-mega-menu li ul.mb-mega-sub li a,
    .navbar-nav li ul.mb-mega-menu li ul.mb-mega-sub li:hover a {
        display: block;
        padding: 4px 0;
        font-size: 12px;
        color: #636363;
        border: 0;
        background: transparent;
    }

    .navbar-nav li ul.mb-mega-menu li ul.mb-mega-sub li a:hover {
        color: #007582;
    }

}

/* Grand écran : aligne le contenu du mega menu sur le container du site
   (surchargé à 80% de largeur dans style.css du thème enfant) */
@media (min-width: 1200px){

    .navbar .navbar-nav li.mb-mega-parent > ul.mb-mega-menu {
        padding-left: calc(10% + 5px);
        padding-right: calc(10% + 5px);
    }

}

/* Menu mobile (slicknav) : les cartes redeviennent de simples liens texte */
.slicknav_menu .mb-mega-card-thumb,
.slicknav_menu .mb-mega-card-desc,
.slicknav_menu .mb-mega-card-btn {
    display: none !important;
}
