/* Shared international header support. */
html, body { overflow-x: hidden; }
.main-header .container { display:flex; align-items:center; justify-content:space-between; gap:18px; min-width:0; }
.main-header .logo { flex:0 1 auto; min-width:0; }
.main-header .logo a { text-decoration:none; color:inherit; }
.main-header .logo span { display:block; }
.mobile-menu-btn { display:none; flex:0 0 auto; cursor:pointer; }

#site-navigation { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex:1 1 auto; min-width:0; }
#site-navigation .menu-item { position:relative; }
#site-navigation .menu-link, #site-navigation .submenu-link {
  text-decoration:none;
}
#site-navigation .menu-link {
  display:block;
  padding:11px 10px;
  white-space:nowrap;
}
#site-navigation .submenu {
  display:none;
  position:absolute;
  left:0;
  top:100%;
  min-width:250px;
  z-index:1000;
  padding:8px 0;
  background:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.15);
}
#site-navigation .menu-item:hover .submenu,
#site-navigation .menu-item:focus-within .submenu { display:block; }
#site-navigation .submenu-link {
  display:block;
  padding:9px 14px;
  white-space:nowrap;
  color:#222 !important;
  background:#fff !important;
}
#site-navigation .submenu-link:hover,
#site-navigation .submenu-link:focus {
  color:#fff !important;
  background:#145c3a !important;
}

@media (max-width:1100px) {
  .main-header .container { flex-wrap:wrap; }
  .mobile-menu-btn { display:block; }
  #site-navigation {
    display:none;
    width:100%;
    flex:1 0 100%;
    max-width:100%;
    order:3;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    background:#fff;
    border-top:1px solid rgba(0,0,0,.12);
    padding:6px 0 10px;
  }
  #site-navigation.is-open { display:flex; }
  #site-navigation .menu-item { width:100%; }
  #site-navigation .menu-link {
    width:100%;
    padding:12px 10px;
  }
  #site-navigation .submenu {
    position:static;
    display:none;
    width:100%;
    min-width:0;
    box-shadow:none;
    padding:0 0 4px 12px;
    background:#f7f7f7;
  }
  #site-navigation .menu-item.submenu-open .submenu { display:block; }
  #site-navigation .submenu-link {
    white-space:normal;
    padding:10px 12px;
  }
}

@media (max-width:520px) {
  .main-header .logo { max-width:72%; }
  .main-header .logo a { font-size:clamp(.9rem,3.8vw,1.15rem); }
  #site-navigation .submenu-link { font-size:.96rem; }
}
