/* menu produit */
li.sub .a-niveau1 .advtm_menu_span::after {
  content: "";
  display: inline-block;
  width: 0.6em;
  height: 0.6em;
  margin-left: 5px;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* Container en grille pour les colonnes */
#adtm_menu li.advtm_menu_3 tr,
#adtm_menu li.advtm_menu_10 tr {
  display: grid;
  gap: 1.5rem 2rem;
  max-width: 100%;
  margin: 0 auto;
}

/* Menu 3 : Ratio 4:5 pour respecter 4 vs 5 images */
#adtm_menu li.advtm_menu_3 tr {
  grid-template-columns: 4fr 5fr;
}

/* Menu 10 : Une seule ligne (pas de colonnes au niveau tr) */
#adtm_menu li.advtm_menu_10 tr {
  grid-template-columns: 1fr;
}

/* Première colonne : MÉTIERS DU BOIS ET MATÉRIAUX */
#adtm_menu li.advtm_menu_3 td:nth-child(1) {
  grid-column: 1;
}

/* Deuxième colonne : BÂTIMENT ET INDUSTRIE */
#adtm_menu li.advtm_menu_3 td:nth-child(2) {
  grid-column: 2;
}

/* Troisième colonne : MACHINES (pleine largeur) */
#adtm_menu li.advtm_menu_3 td:last-child {
  grid-column: 1 / -1;
}

/* Grille d'images pour les deux premières colonnes */
#adtm_menu li.advtm_menu_3 td:nth-child(1) .adtm_column ul.adtm_elements,
#adtm_menu li.advtm_menu_3 td:nth-child(2) .adtm_column ul.adtm_elements,
#adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements {
  display: grid;
  gap: 1rem;
  list-style: none;
  padding: 0;
  margin: 0;
  grid-auto-rows: 1fr;
}

/* Première colonne : 4 images par rangée - 1fr chacune */
#adtm_menu li.advtm_menu_3 td:nth-child(1) .adtm_column ul.adtm_elements {
  grid-template-columns: repeat(4, 1fr);
}

/* Deuxième colonne : 5 images par rangée - 1fr chacune */
#adtm_menu li.advtm_menu_3 td:nth-child(2) .adtm_column ul.adtm_elements {
  grid-template-columns: repeat(5, 1fr);
}

/* Menu 10 : 4 colonnes d'images comme menu produit */
#adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements {
  grid-template-columns: repeat(4, 1fr);
}

/* Items de la grille - Largeur flexible */
#adtm_menu li.advtm_menu_3 td:not(:last-child) .adtm_column ul.adtm_elements li,
#adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li {
  position: relative;
  overflow: hidden;
  border: 1px solid #dddddd;
  border-radius: 0.5rem;
  flex: none;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
  width: 100%; /* Prend toute la largeur de la cellule grid */
}

#adtm_menu li.advtm_menu_3 td:not(:last-child) .adtm_column ul.adtm_elements li:hover,
#adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Liens avec images */
#adtm_menu li.advtm_menu_3 td:not(:last-child) .adtm_column ul.adtm_elements li a,
#adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li a {
  text-align: center;
}

/* Images dans les items - Largeur 100% de leur conteneur */
#adtm_menu li.advtm_menu_3 td:not(:last-child) .adtm_column ul.adtm_elements li a img,
#adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li a img {
  width: calc(100% + 10px); /* S'adapte à la largeur du conteneur + les paddings */
  max-width: calc(100% + 10px); /* S'adapte à la largeur du conteneur + les paddings */
  height: auto;
  aspect-ratio: 140 / 95; /* Garde le ratio 140:95 */
  object-fit: cover;
  object-position: center;
  margin: -5px -5px 5px;
}

/* Section MACHINES en bas (dernière colonne) - Grid 3 colonnes */
#adtm_menu li.advtm_menu_3 td:last-child .adtm_column ul.adtm_elements {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}

#adtm_menu li.advtm_menu_3 td:last-child .adtm_column ul.adtm_elements li {
  flex: none;
  border: 1px solid #dddddd;
  border-radius: 0.5rem;
  overflow: hidden;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

#adtm_menu li.advtm_menu_3 td:last-child .adtm_column ul.adtm_elements li:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}

#adtm_menu li.advtm_menu_3 td:last-child .adtm_column ul.adtm_elements li a {
  display: flex;
  align-items: center;
  text-align: left;
}

#adtm_menu li.advtm_menu_3 td:last-child .adtm_column ul.adtm_elements li a img {
  width: auto;
  height: 80px;
  object-fit: contain;
  margin: -5px 1rem -5px -5px;
}

#adtm_menu li.advtm_menu_10 td .adtm_column .column_wrap_title {
  display: none;
}

@media (min-width: 992px) {
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li a {
    font-size: 14px;
  }
}

/* menu mobile */
@media (max-width: 992px) {
  #adtm_menu ul li.advtm_menu_toggle {
    position: fixed;
    top: 70px;
    left: 0;
    width: 50px;
    transition: none;
  }
  .header-bottom.is-sticky #adtm_menu ul li.advtm_menu_toggle {
    top: 15px;
  }
  #adtm_menu ul li.advtm_menu_toggle a.adtm_toggle_menu_button span.adtm_toggle_menu_button_text {
    color: rgba(255, 255, 255, 0);
    background-color: rgba(255, 255, 255, 0);
  }
  li.sub .a-niveau1 .advtm_menu_span::after {
    display: none;
  }
  #adtm_menu.adtm_menu_toggle_open ul#menu li.li-niveau1.sub a.a-niveau1 span {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 9 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 15px center;
  }
  #adtm_menu.adtm_menu_toggle_open ul#menu li.li-niveau1.sub.adtm_sub_open a.a-niveau1 span {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m18 15-6-6-6 6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 15px center;
  }

  /* Permettre le scroll du menu en mobile */
  #adtm_menu.adtm_menu_toggle_open {
    max-height: calc(100vh - 150px);
    overflow-y: auto;
    overflow-x: hidden;
  }

  /* Container en grille - 1 seule colonne (3 lignes) */
  #adtm_menu li.advtm_menu_3 tr,
  #adtm_menu li.advtm_menu_10 tr {
    grid-template-columns: 1fr;
    gap: 1rem 0;
  }

  /* Toutes les td prennent une ligne complète */
  #adtm_menu li.advtm_menu_3 td:nth-child(1),
  #adtm_menu li.advtm_menu_3 td:nth-child(2),
  #adtm_menu li.advtm_menu_3 td:last-child,
  #adtm_menu li.advtm_menu_10 td {
    grid-column: 1;
  }

  /* TOUTES les grilles d'images en 4 colonnes pour mobile (y compris MACHINES) */
  #adtm_menu li.advtm_menu_3 td .adtm_column ul.adtm_elements,
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0.75rem;
  }

  /* Tous les éléments (y compris MACHINES) au même format */
  #adtm_menu li.advtm_menu_3 td .adtm_column ul.adtm_elements li,
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li {
    width: 100%;
    border: 1px solid #dddddd;
    border-radius: 0.5rem;
    position: relative;
    overflow: hidden;
    transition:
      transform 0.3s ease,
      box-shadow 0.3s ease;
  }

  #adtm_menu li.advtm_menu_3 td .adtm_column ul.adtm_elements li a,
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center !important;
  }

  #adtm_menu li.advtm_menu_3 td .adtm_column ul.adtm_elements li a img,
  #adtm_menu li.advtm_menu_3 td:last-child .adtm_column ul.adtm_elements li a img,
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li a img {
    height: auto;
    aspect-ratio: 140 / 95;
    object-fit: cover;
    object-position: center;
  }
  #adtm_menu li.advtm_menu_3 td:last-child .adtm_column ul.adtm_elements li a img,
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements li a img {
    margin: -5px -5px 5px;
    width: calc(100% + 10px);
    max-width: calc(100% + 10px);
  }
}

@media (max-width: 767px) {
  /* TOUTES les grilles en 2 colonnes pour petit mobile */
  #adtm_menu li.advtm_menu_3 td .adtm_column ul.adtm_elements,
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.75rem;
  }
}
@media (min-width: 992px) {
  #adtm_menu ul#menu {
    justify-content: flex-end;
  }
  #adtm_menu .li-niveau1 a.a-niveau1 .advtm_menu_span {
    font-weight: 600;
    letter-spacing: 1px;
  }
  li.sub:not(.advtm_menu_3):not(.advtm_menu_10) {
    position: relative;
  }
  li.sub .adtm_sub {
    min-width: 300px;
  }
  #adtm_menu li.sub:not(.advtm_menu_3):not(.advtm_menu_10) .adtm_column_wrap span.column_wrap_title a {
    font-size: 1.1rem !important;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  #adtm_menu .li-niveau1 a.a-niveau1 .advtm_menu_span {
    font-size: 1rem;
    padding: 0 15px;
  }
  #adtm_menu li.advtm_menu_3 tr,
  #adtm_menu li.advtm_menu_10 tr {
    gap: 1.5rem;
  }
  #adtm_menu li.advtm_menu_3 td:nth-child(1) .adtm_column ul.adtm_elements,
  #adtm_menu li.advtm_menu_3 td:nth-child(2) .adtm_column ul.adtm_elements,
  #adtm_menu li.advtm_menu_10 td .adtm_column ul.adtm_elements {
    gap: 0.5rem;
  }
}
