/* Keep the desktop navigation and language switcher on one line.
   Long labels wrap inside equal-height links so the flags stay vertically aligned. */
@media (min-width: 922px) {
  #primary-site-navigation-desktop .ast-hf-menu-1 {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center;
  }

  #primary-site-navigation-desktop .ast-hf-menu-1 > li {
    float: none !important;
    flex: 0 0 auto;
  }

  #primary-site-navigation-desktop .ast-hf-menu-1 > li > a.menu-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    white-space: normal !important;
    text-align: center;
    line-height: 1.15;
  }

  #primary-site-navigation-desktop .ast-hf-menu-1 > li:not(.lang-item) > a.menu-link {
    box-sizing: border-box;
    width: 96px;
    padding: 4px 6px !important;
  }

  #primary-site-navigation-desktop .ast-hf-menu-1 > li.lang-item > a.menu-link {
    box-sizing: border-box;
    width: 32px;
    min-width: 32px;
    padding: 4px 2px !important;
  }

  /* Keep Polylang language links in the same desktop navigation row. */
  #primary-site-navigation-desktop .ast-hf-menu-1 > li.lang-item-fr,
  #primary-site-navigation-desktop .ast-hf-menu-1 > li.lang-item-en {
    position: static !important;
    inset: auto !important;
    float: none !important;
    transform: none !important;
    flex: 0 0 32px !important;
    width: 32px !important;
    margin: 0 !important;
  }

  #primary-site-navigation-desktop .ast-hf-menu-1 > li.lang-item-fr > a.menu-link,
  #primary-site-navigation-desktop .ast-hf-menu-1 > li.lang-item-en > a.menu-link {
    position: static !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    min-width: 32px !important;
    padding: 4px 2px !important;
  }

  /* Keep the two long Italian guide labels compact and on two lines. */
  #primary-site-navigation-desktop #menu-item-4312,
  #primary-site-navigation-desktop #menu-item-1917 {
    flex: 0 0 128px !important;
    width: 128px !important;
  }

  #primary-site-navigation-desktop #menu-item-4312 > a.menu-link,
  #primary-site-navigation-desktop #menu-item-1917 > a.menu-link {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0;
    padding: 4px 6px !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    line-height: 1.15;
  }
}