/* Fit the real menu content; the same rules apply to company and localized headers. */
#GNB[data-nav-layout] .gnb-inner {
  gap:24px;
  padding-inline:clamp(20px,4vw,80px);
}
#GNB[data-nav-layout] .gnb-left {
  flex:0 0 auto;
  min-width:0;
  gap:clamp(24px,3.6vw,60px);
}
#GNB[data-nav-layout] .gnb-logo,
#GNB[data-nav-layout] .menu-group,
#GNB[data-nav-layout] .gnb-right,
#GNB[data-nav-layout] .dl-header-controls { flex-shrink:0; }
#GNB[data-nav-layout] .gnb-logo { display:flex; align-items:center; min-height:44px; }
#GNB[data-nav-layout] .menu-group {
  display:flex;
  flex-wrap:nowrap;
  width:max-content;
  gap:clamp(20px,2.4vw,40px);
}
#GNB[data-nav-layout] .gnb-right { display:flex; width:max-content; gap:20px; }
#GNB[data-nav-layout] .dl-header-controls { gap:20px; }
#GNB[data-nav-layout] :is(.menu-link,.link-login,.btn-start) { white-space:nowrap; }
#GNB[data-nav-layout] .gnb-hamburger { min-width:44px; min-height:44px; align-items:center; justify-content:center; }
#GNB[data-nav-layout="full"] .gnb-hamburger { display:none; }
/* Keep intrinsic widths measurable without duplicating the navigation or exposing it to focus. */
#GNB[data-nav-layout="compact"] :is(.menu-group,.gnb-right) {
  position:fixed;
  left:-10000px;
  top:0;
  visibility:hidden;
  pointer-events:none;
}
#GNB[data-nav-layout="compact"] .gnb-hamburger { display:flex; }
#GNB[data-nav-layout="compact"] .dl-header-controls { gap:12px; }
#GNB[data-nav-layout] :is(.menu-link,.link-login,.btn-start,.gnb-logo,.gnb-hamburger):focus-visible {
  outline:2px solid #111;
  outline-offset:4px;
}
@media(max-width:359px) {
  #GNB[data-nav-layout] .gnb-inner { gap:12px; padding-inline:16px; }
  #GNB[data-nav-layout="compact"] .dl-header-controls { gap:6px; }
}
