/* Centre desktop navigation while preserving mobile menus. */
@media (min-width: 768px) {
  #mainMenu > ul.navbar-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    float: none !important;
    width: 100% !important;
    margin: 0 auto !important;
  }
  #mainMenu > ul.navbar-nav > li { float: none !important; }
}


/* Align the shared logo/menu group and keep wrapped menu rows compact. */
@media (min-width: 768px) {
  [data-group-id]:has(> .line-header):has(> .line-menu) {
    display: flex; align-items: center; gap: 16px;
    max-width: 1152px; margin: 0 auto; padding: 0 15px;
  }
  [data-group-id]:has(> .line-header) > .line-header { flex: 0 0 90px; width: 90px; }
  [data-group-id]:has(> .line-header) > .line-menu { flex: 1 1 0; min-width: 0; min-height: 0; }
  [data-group-id]:has(> .line-header) > .line-header > .container,
  [data-group-id]:has(> .line-header) > .line-menu > .container { width: 100%; margin: 0; padding: 0; }
  [data-group-id]:has(> .line-header) .line-header .zone-header { padding: 12px 0 !important; margin: 0 !important; }
  [data-group-id]:has(> .line-header) .line-header .mod-header-logo { max-width: 85px; max-height: 75px; }
  .line-menu .navbar { margin: 0 !important; min-height: 0 !important; }
  #mainMenu > ul.navbar-nav { gap: 0 !important; align-items: center; }
  #mainMenu > ul.navbar-nav > li { margin: 0; padding: 0; }
  #site-wrapper #mainMenu > ul.navbar-nav > li > a { font-size: 16px !important; line-height: 1.5 !important; padding: 0 8px !important; }
}
