/* Codex: tighten desktop header left spacing and make top-menu labels slightly bolder. */
@media (min-width: 992px) {
  #headr .elementor-element.elementor-element-551949a8 .elementor-widget-container {
    text-align: left !important;
    padding-left: 72px !important;
    box-sizing: border-box !important;
  }

  #adtm_menu ul#menu {
    justify-content: flex-start !important;
    padding-left: 84px !important;
    box-sizing: border-box !important;
  }

  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1,
  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 .advtm_menu_span,
  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 .advtm_menu_span_42 {
    font-weight: 600 !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48 {
    position: relative !important;
    margin-left: 18px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 11px !important;
    width: 1px !important;
    height: 28px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    pointer-events: none !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48 > a.a-niveau1 {
    padding-left: 18px !important;
  }
}

/* Keep the desktop menu on one row on 15.6" / medium desktop screens. */
@media (min-width: 992px) and (max-width: 1700px) {
  #adtm_menu,
  #adtm_menu_inner,
  #_desktop_top_menu {
    min-height: 58px !important;
  }

  #adtm_menu ul#menu {
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    overflow: visible !important;
  }

  #adtm_menu ul#menu > li.li-niveau1 {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    height: 58px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 {
    width: 100% !important;
    height: 58px !important;
    min-width: 0 !important;
    padding: 0 8px !important;
    line-height: 1.08 !important;
    white-space: normal !important;
  }

  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 .advtm_menu_span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    width: 100% !important;
    line-height: 1.08 !important;
    white-space: normal !important;
    text-align: left !important;
  }

  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 .adtm_menu_icon,
  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 .pmAtmIcon {
    flex: 0 0 auto !important;
    margin-right: 0 !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_42,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_42 > a.a-niveau1 {
    width: 150px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_43,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_43 > a.a-niveau1 {
    width: 128px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_44,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_44 > a.a-niveau1 {
    width: 142px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_45,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_45 > a.a-niveau1 {
    width: 164px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_46,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_46 > a.a-niveau1 {
    width: 150px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_47,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_47 > a.a-niveau1 {
    width: 108px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48 > a.a-niveau1 {
    width: 156px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_56,
  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_56 > a.a-niveau1 {
    width: 124px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48 {
    margin-left: 8px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48::before {
    top: 15px !important;
    height: 28px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1.advtm_menu_48 > a.a-niveau1 {
    padding-left: 16px !important;
  }

  #adtm_menu ul#menu > li.li-niveau1,
  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 {
    width: auto !important;
  }

  #adtm_menu ul#menu > li.li-niveau1 > a.a-niveau1 {
    width: 100% !important;
  }

  #adtm_menu ul#menu > li.li-niveau1[class*="advtm_menu_"] > a.a-niveau1 {
    width: 100% !important;
  }
}


/* Codex: align CONNEXION text with cart amount (structural flex alignment).
   The nav link is absolutely positioned against the widget-wrap so its
   vertical center sits at wrapCenter + 25px, exactly like the cart toggle
   (50px icon + 35px button). Validated at 1920/1440/1366/1024 (diff = 0). */
@media (min-width: 992px) {
  .elementor-element-74e61529 {
    position: static !important;
    height: 11px !important;
    order: 99999 !important;
  }
  .elementor-element-74e61529 > .elementor-widget-container {
    margin: 0 !important;
    transform: none !important;
  }
  nav.ce-user-menu {
    position: absolute !important;
    top: calc(50% + 2px) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
  }
}


/* Codex: same alignment for the English "My account" link (widget id differs
   from the French header). Neutralize the widget's containing-block so the
   shared nav.ce-user-menu rule anchors against the widget-wrap. */
@media (min-width: 992px) {
  .elementor-element-3ddcf7c6 {
    position: static !important;
    order: 99999 !important;
  }
  .elementor-element-3ddcf7c6 > .elementor-widget-container {
    margin: 0 !important;
    transform: none !important;
  }
}
