/* Reset des styles qui pourraient interférer */
body {
    margin: 0;
    padding: 0;
}

/* Style du header pour permettre le sticky */
#header {
    position: relative;
    z-index: 1000;
}

/* Styles pour le menu sticky */
.minty-menu-sticky {
    background: #fff;
    transition: all 0.3s ease;
    width: 100%;
    z-index: 1000;
}

/* Classe pour le menu fixe */
.minty-menu-sticky.is-fixed {
    animation: slideDown 0.3s ease-in-out;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
}

/* Animation pour l'apparition du menu */
@keyframes slideDown {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}

/* Classe pour le placeholder qui évite le saut de contenu */
.minty-menu-placeholder {
    display: none;
}

.minty-menu-placeholder.is-active {
    display: block;
}

/* Container du menu */
.minty-menu-container {
    background: #fff;
    border-bottom: 1px solid #e5e5e5;
    width: 100%;
}

/* Assurez-vous que les parents n'interfèrent pas */
#wrapper {
    overflow: initial !important;
}

.header-nav {
    overflow: initial !important;
}

/* Ajoutez une classe pour le menu collé */
.minty-menu-sticky.is-stuck {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.container {
    margin: 0 auto;
    max-width: 1440px;
    padding: 0 15px;
}

.minty-menu-list {
    align-items: center;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
}


.minty-menu-link {
    color: #232323;
    display: block;
    font-family: "Roboto", serif;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 14px;
    padding: 13px 11px;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Container principal du sous-menu */
.minty-submenu-container {
    display: none;
    left: 0;
    position: absolute;
    right: 0;
    top: 100%;
    width: 100%;
    z-index: 1000;
}

/* Container intérieur centré */
.minty-submenu-container > .container {
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    display: flex;
    height: fit-content;
    margin: 0 auto;
    max-width: 1440px;
    position: relative;
    width: 100%;
}

/* Style du sous-menu niveau 1 */
.minty-submenu.level-1 {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-right: none;
    width: 25%;
}

/* Style des items du sous-menu niveau 1 */
.minty-submenu.level-1 > .submenu-list > .minty-submenu-item {
    border-bottom: 1px solid #e5e5e5;
    border-right: 1px solid #e5e5e5;
    padding: 10px 20px 10px 20px;
}

.minty-submenu.level-1 > .submenu-list > .minty-submenu-item:hover {
    border-right: none;
}

.minty-submenu.level-1 > .submenu-list > .minty-submenu-item:last-child {
    border-bottom: none;
}

.minty-submenu-item.colspan-2 {
    grid-column: span 2;
}

.minty-submenu-link {
    color: #232323;
    display: block;
    font-size: 14px;
    font-weight: normal;
    padding: 5px 0;
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
}

.level-2 .minty-submenu-link {
    font-weight: bold;
}

/* Style du sous-menu niveau 2 */
.minty-submenu.level-2 {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-left: none;
    display: none;
    height: fit-content;
    left: 25%;
    padding: 20px;
    position: absolute;
    top: 0;
    width: 75%;
}

.minty-submenu.level-2 .minty-submenu-item {
    margin-bottom: 0;
    position: relative;
}

.minty-submenu.level-2 .minty-submenu-item .minty-submenu-link {
    padding: 0;
}

.minty-submenu.level-3 .minty-submenu-item {
    margin-bottom: 10px;
}

.minty-submenu.level-3 .minty-submenu-item .minty-submenu-link {
    padding: 0;
}

/* Style des images */
.submenu-image {
    border-radius: 4px;
    display: none;
    height: auto;
    max-width: 100%;
    transition: transform 0.3s ease-in-out;
}

.minty-submenu-item .submenu-image {
    display: none;
}

.level-2 .submenu-image {
    display: block;
}

.submenu-image:hover {
    transform: scale(1.05);
}

/* Affichage des sous-menus */
.minty-menu-item.has-submenu:hover .minty-submenu-container {
    display: block;
}

/* Suppression du float et ajout de flex */
.minty-submenu-container .container {
    align-items: stretch;
    display: flex;
}

/* Styles spéciaux pour certains éléments */
.minty-menu-item.promo .minty-menu-link {
    color: #ff0000;
}

.minty-menu-item.academy {
    background-color: #0f00a2;
    border-radius: 4px;
}

.minty-menu-item.academy .minty-menu-link {
    color: #FFEA70 !important;
}


.minty-menu-item.promo .minty-menu-link {
    border: 3px solid #8dffb3;
    border-radius: 4px;
    margin: 2px;
    padding: 8px 7px;
}

.minty-menu-item.ipln_experiences .minty-menu-link {
    background: linear-gradient(to right, #0F00A2 0%, #024fff 100%);
    background-position: left center;
    background-size: 200% 100%; /* 2x plus large que l’élément */
    border: none;
    border-radius: 4px;
    color: white !important;
    gap: 18px;
    margin: 2px;
    padding: 13px 7px;
    transition: background-position 0.5s ease-in-out; /* animation douce */
}

.minty-menu-item.ipln_experiences:hover .minty-menu-link {
    background-position: right center; /* décale le dégradé vers la droite */
}

.minty-menu-item.ipln_family .minty-menu-link {
    background: linear-gradient(to right, #FF034D 0%, #B40035 100%);
    background-position: left center;
    background-size: 200% 100%; /* 2x plus large que l’élément */
    border: none;
    border-radius: 4px;
    color: white !important;
    gap: 18px;
    margin: 2px;
    padding: 13px 7px;
    transition: background-position 0.5s ease-in-out; /* animation douce */
}

.minty-menu-item.ipln_family:hover .minty-menu-link {
    background-position: right center; /* décale le dégradé vers la droite */
}

.minty-menu-item.black_friday .minty-menu-link {
    background: #FF6600;
    background-position: left center;
    background-size: 200% 100%;
    border-radius: 4px;
    gap: 18px;
    margin: 2px;
    padding: 13px 7px;
    transition: background-position 0.5s ease-in-out; /* animation douce */
    border: none;
    color: #000000 !important;
    height: calc(100% - 6px);
}

.minty-menu-item.black_friday:hover .minty-menu-link {
    background-position: right center;
}

/* Hover effects */
.minty-menu-link:hover,
.minty-submenu-link:hover,
.minty-submenu-item:hover .minty-submenu-link {
    color: #2fb5d2;
}

/* Clearfix pour le container des sous-menus */
.minty-submenu-container:after {
    clear: both;
    content: "";
    display: table;
}

/* Style de la liste des sous-menus */
.submenu-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Style pour la section des marques populaires */
.marques-populaires {
    background: #f6f6f6;
    margin-top: 15px;
    padding: 15px;
}

.marques-populaires-title {
    font-weight: bold;
    margin-bottom: 10px;
}

.marques-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.marques-list li {
    margin-bottom: 5px;
}

/* Ajout d'une flèche pour indiquer les sous-menus */
.has-submenu > .minty-submenu-link:after {
    content: '›';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

/* Ajout de cette règle pour le niveau 2 */
.minty-submenu-item.has-submenu:hover > .minty-submenu.level-2 {
    display: block;
}

.minty-submenu.level-2:hover {
    display: block;
}


/* Ajout d'une flèche uniquement pour les items qui ont un sous-menu */
.minty-submenu-item.has-submenu > .minty-submenu-link:after {
    content: '›';
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.minty-menu-container::before {
    background: rgba(0, 0, 0, 0.5);
    content: "";
    height: 100dvh;
    opacity: 0;
    position: absolute;
    top: 100%;
    transition: visibility 0.3s ease-in-out, opacity 0.3s ease-in-out;
    visibility: hidden;
    width: 100dvw;
    z-index: 999;
}

.minty-menu-sticky:has(.minty-menu-list .minty-menu-item.has-submenu:hover) .minty-menu-container::before {
    opacity: 1;
    visibility: visible;
}

.has-submenu:hover ~ .minty-menu-container::before {
    visibility: visible;
}

.minty-mobile-container {
    display: none;
}

.minty-submenu.level-2 .submenu-list {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(6, 1fr);
}

.minty-submenu.level-3 .submenu-list {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    width: 100%;
}

.minty-submenu.level-3 .submenu-image {
    display: none;
}

.mobile-only {
    display: none;
}

/* Styles Mobile */
@media (max-width: 767px) {

    .minty-menu-item.new .minty-menu-link {
        gap: 22px;
        padding: 16px 0;
        padding-left: 28px;
    }

    .minty-menu-item.promo .minty-menu-link {
        gap: 21px;
        padding: 14px 0;
        padding-left: 24px;
    }

    .minty-menu-item.academy .minty-menu-link {
        border-radius: 4px;
        gap: 18px;
        padding: 14px 0;
        padding-left: 24px;
    }

    .minty-menu-item.new img {
        height: 20px;
        width: 20px;
    }

    .minty-menu-item.academy img {
        height: 30px;
        width: 30px;
    }

    .minty-menu-item.promo img {
        height: 20px;
        width: 20px;
    }

    .mobile-only {
        display: unset;
    }

    .minty-submenu-item .submenu-image {
        display: block;
    }

    .submenu-image {
        display: block;
    }

    .minty-submenu-link {
        align-items: center;
        display: flex;
        flex-direction: row-reverse;
        font-weight: bold;
        gap: 10px;
        justify-content: flex-end;
    }

    .minty-menu-link {
        align-items: center;
        display: flex;
        flex-direction: row-reverse;
        gap: 10px;
        justify-content: flex-end;
    }


    .minty-submenu.level-2 .minty-submenu-item .minty-submenu-link {
        align-items: center;
        display: flex;
        flex-direction: row-reverse;
        gap: 10px;
        justify-content: flex-end;
    }

    .minty-submenu.level-3 .minty-submenu-item .minty-submenu-link {
        align-items: center;
        display: flex;
        flex-direction: row-reverse;
        gap: 10px;
        justify-content: flex-end;
    }

    .submenu-list-level-3 .minty-submenu-item:last-child {
        border-bottom: 1px solid #e5e5e5;
    }

    .minty-submenu.level-2 .minty-submenu-item .minty-submenu-link .submenu-image {
        margin: 0;
    }

    .minty-submenu.level-3 .minty-submenu-item .minty-submenu-link .submenu-image {
        margin: 0;
    }

    .minty-menu-item.has-submenu > .minty-menu-link {
        position: relative;
    }

    .minty-mobile-container {
        display: block;
    }

    .minty-menu-item.has-submenu > .minty-menu-link::after {
        content: '›';
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
    }

    .minty-menu-container {
        border: none;
    }

    .minty-mobile-menu.active .container {
        width: 100%;
    }

    .minty-mobile-wrapper {
        -webkit-box-direction: normal;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        font-size: .55rem;
        font-weight: 400;
        height: 54px;
    }

    .minty-mobile-toggle {
        background: transparent;
        border: none;
        color: #000;
        margin-left: 2px;
        margin-top: 15px;
        padding: 0 0 0 4px;
        position: relative;
        text-transform: uppercase;
        width: 30px;
    }

    .minty-mobile-toggle .close-icon {
        display: none;
    }

    .minty-mobile-toggle .burger-icon svg,
    .minty-mobile-toggle .close-icon svg {
        height: 15px;
        width: 15px;
    }

    .minty-mobile-toggle .menu-text {
        font-size: .55rem;
        font-weight: 400;
        text-transform: uppercase;
    }

    .icon-wrapper {
        color: #000;
        display: block;
        height: 13px;
        margin-bottom: 5px;
        position: relative;
        width: 17px;
    }

    .icon-wrapper .minty-menu-burger-line:first-child {
        top: 0;
    }

    .icon-wrapper .minty-menu-burger-line:nth-child(2) {
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .icon-wrapper .minty-menu-burger-line:last-child {
        top: 100%;
    }

    .icon-wrapper .minty-menu-burger-line {
        background-color: #212b36;
        border-radius: 5px;
        height: 2px;
        left: 50%;
        margin-left: 3px;
        position: absolute;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        -webkit-transition: -webkit-transform .2s ease;
        transition: -webkit-transform .2s ease;
        transition: transform .2s ease;
        transition: transform .2s ease, -webkit-transform .2s ease;
        width: 17px;
    }

    .icon-wrapper.active .minty-menu-burger-line:first-child {
        -webkit-transform: translate(-50%, 4.5px) rotate(45deg);
        transform: translate(-50%, 4.5px) rotate(45deg);
    }

    .icon-wrapper.active .minty-menu-burger-line:nth-child(2) {
        opacity: 0;
        -webkit-transform: translate(-25%, -50%);
        transform: translate(-25%, -50%);
    }

    .icon-wrapper.active .minty-menu-burger-line:last-child {
        -webkit-transform: translate(-50%, -8px) rotate(-45deg);
        transform: translate(-50%, -8px) rotate(-45deg);
        -webkit-transition: -webkit-transform .3s ease;
        transition: -webkit-transform .3s ease;
        transition: transform .3s ease;
        transition: transform .3s ease, -webkit-transform .3s ease;
    }

    .minty-mobile-menu {
        background: #fff;
        height: calc(100dvh - 60px);
        left: 0;
        position: fixed;
        top: 54px;
        transform: translateX(-100%);
        transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out;
        visibility: hidden;
        width: 100%;
        z-index: 9999;
    }

    .minty-mobile-menu.active {
        display: flex;
        flex-direction: column;
        overflow-y: scroll;
        transform: translateX(0);
        transition: transform 0.3s ease-in-out;
        visibility: visible;
    }

    .minty-submenu-container.active,
    .minty-submenu.level-2.active,
    .minty-submenu.level-3.active {
        overflow-y: scroll;
    }

    .minty-mobile-header {
        display: none;
    }

    .minty-mobile-header:has(.minty-back-button[style*="display: block"]),
    .minty-mobile-header:has(.minty-back-button[style*="display: flex"]) {
        align-items: center;
        background: #fff;
        border-bottom: 1px solid #e5e5e5;
        display: flex;
        height: 60px;
        padding: 15px;
        position: relative;
    }

    .mobile-menu-title {
        flex: 1;
        font-size: 16px;
        font-weight: bold;
        text-align: center;
    }

    .minty-back-button {
        align-items: center;
        -webkit-appearance: none;
        appearance: none;
        background: none;
        border: none;
        cursor: pointer;
        display: flex;
        gap: 10px;
        height: 40px;
        justify-content: center;
        left: 10px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1;
    }

    .minty-back-button .back-text {
        color: #0f00a2;
    }

    .back-icon::before {
        color: #232323;
        content: '←';
        font-size: 24px;
    }

    .minty-close-button {
        align-items: center;
        display: flex;
        height: 40px;
        justify-content: center;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 40px;
    }

    /* Ajuster le container pour qu'il prenne tout l'espace restant */
    .minty-mobile-menu nav.container {
        flex: 1;
        overflow-y: auto;
        padding: 0;
    }

    .minty-submenu-container {
        background: #fff;
        height: calc(100dvh - 60px);
        left: 100%;
        position: fixed;
        top: 60px;
        transition: transform 0.3s ease-in-out;
        visibility: hidden;
        width: 100%;
    }

    .minty-submenu-container.active {
        display: block;
        transform: translateX(-100%);
        visibility: visible;
    }

    .minty-submenu-container.closing {
        transform: translateX(0);
    }

    .minty-submenu.level-1 {
        border: none;
        width: 100%;
    }

    .minty-submenu.level-2 {
        background-color: #fff;
        border: none;
        height: calc(100dvh - 60px);
        left: 100%;
        padding: 0;
        position: fixed;
        transition: transform 0.3s ease-in-out;
        visibility: hidden;
        width: 100%;
        z-index: 9999;
    }

    .minty-submenu.level-3 {
        background-color: #fff;
        border: none;
        height: calc(100dvh - 60px);
        left: 100%;
        padding: 0;
        position: fixed;
        transition: transform 0.3s ease-in-out;
        visibility: hidden;
        width: 100%;
        z-index: 9999;
    }

    .minty-submenu.level-3 {
        background-color: #fff;
        border: none;
        height: calc(100dvh - 60px);
        left: 100%;
        padding: 0;
        position: fixed;
        transition: transform 0.3s ease-in-out;
        visibility: hidden;
        width: 100%;
        z-index: 10000;
    }

    .level-1.active {
        display: block;
        visibility: visible;
    }

    .minty-submenu.level-2.active {
        display: block;
        transform: translateX(-100%);
        visibility: visible;
    }

    .minty-submenu.level-2.closing {
        transform: translateX(0);
    }

    .minty-submenu.level-3.active {
        display: block;
        transform: translateX(-100%);
        visibility: visible;
    }

    .minty-submenu.level-3.closing {
        transform: translateX(0);
    }

    /* S'assurer que le bouton retour est visible quand actif */
    .minty-back-button[style="display: block;"] {
        display: flex !important;
    }

    /* Ajustement des liens pour une meilleure zone de clic */
    .minty-menu-link,
    .minty-submenu-link {
        padding: 10px 20px;
    }

    .minty-submenu.level-1 > .submenu-list > .minty-submenu-item {
        padding: 0;
    }

    /* Réorganisation du menu pour mobile */
    .minty-menu-list {
        flex-direction: column;
        padding: 15px 0;
        width: 100%;
    }

    .minty-menu-item {
        border-bottom: 1px solid #e5e5e5;
        width: 100%;
    }

    /* Masquer les images sur mobile */
    .submenu-image {
        height: 40px;
        width: 40px;
    }

    /* Ajuster la grille du niveau 2 pour le contenu sans images */
    .minty-submenu.level-2 .submenu-list {
        display: flex;
        flex-direction: column;
        gap: 0;
        padding: 0;
    }

    .minty-submenu.level-2 .minty-submenu-item {
        border-bottom: 1px solid #e5e5e5;
        padding: 10px 20px;
    }

    .minty-submenu.level-2 .minty-submenu-item:last-child {
        border-bottom: none;
    }

    .minty-submenu.level-3 .submenu-list {
        display: flex;
        flex-direction: column;
        gap: 0;
        padding: 0;
    }

    .minty-submenu.level-3 .minty-submenu-item {
        border-bottom: 1px solid #e5e5e5;
        padding: 10px 20px;
    }

    .minty-submenu.level-3 .minty-submenu-item:last-child {
        border-bottom: none;
    }

    /* Masquer le menu principal sur mobile */
    nav.container {
        display: none;
    }

    .minty-mobile-menu nav.container {
        display: block;
    }

    .minty-mobile-container {
        align-items: center;
        background: #fff;
        display: flex;
        justify-content: flex-start;
        left: 0;
        position: fixed;
        top: 0;
        width: 40%;
        z-index: 9;
    }

    .minty-submenu.level-3 .submenu-image {
        display: flex;
    }

    .has-submenu-drones > .minty-submenu-link:after {
        content: '›';
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
    }

    .has-submenu-drones .minty-submenu.level-3 {
        background-color: #fff;
        border: none;
        height: calc(100dvh - 60px);
        left: 100%;
        padding: 0;
        position: fixed;
        top: 0;
        transition: transform 0.3s ease-in-out;
        visibility: hidden;
        width: 100%;
        z-index: 9999;
    }

    .has-submenu-drones .minty-submenu.level-3.active {
        display: block;
        transform: translateX(-100%);
        visibility: visible;
    }

    .has-submenu-drones .minty-submenu.level-3.closing {
        transform: translateX(0);
    }
}

/* Masquer le burger en desktop */
@media (min-width: 768px) {
    .minty-mobile-toggle,
    .minty-mobile-header {
        display: none;
    }

    /* Style spécial pour l'item actif */
    .minty-menu-item.has-submenu:hover .minty-submenu-container .minty-submenu.level-1 > .submenu-list > .minty-submenu-item.has-submenu:hover > .minty-submenu-link {
        color: #2fb5d2;
    }

    .minty-submenu.level-1 > .submenu-list > .minty-submenu-item.has-submenu.active-submenu {
        border-right: none;
    }

    .minty-submenu.level-1 > .submenu-list > .minty-submenu-item.has-submenu.active-submenu > .minty-submenu-link {
        color: #2fb5d2;
    }

    .minty-submenu.level-2 > .submenu-list > .minty-submenu-item.has-submenu.active-submenu > .minty-submenu-link {
        color: #2fb5d2;
    }

    .minty-submenu.level-3 > .submenu-list > .minty-submenu-item.has-submenu.active-submenu > .minty-submenu-link {
        color: #2fb5d2;
    }

    /* Ajuster la hauteur du sous-menu niveau 2 */
    .minty-submenu.level-2 {
        height: fit-content;
        min-height: 100%;
    }

    .minty-submenu.level-3 {
        height: fit-content;
        min-height: 100%;
    }

    /* S'assurer que le conteneur parent a une hauteur définie */
    .minty-submenu-container > .container {
        min-height: 300px; /* Hauteur minimum pour éviter un conteneur trop petit */
    }

    /* Assurer que le niveau 1 prend toute la hauteur */
    .minty-submenu.level-1 {
        height: 100%;
    }

    .minty-menu-item.has-submenu-drones > .minty-menu-link {
        position: relative;
    }

    .minty-menu-item.has-submenu-drones > .minty-menu-link::after {
        content: '›';
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
    }
}