/* English-only language navigation; Japanese and shared assets remain unchanged. */
/* Language links inherit the existing desktop and drawer menu typography. */
html[lang="en"] .en-language-switch:focus-visible,
html[lang="en"] .header__hamburger:focus-visible {
  outline: 3px solid #202e5e;
  outline-offset: 3px;
  box-shadow: 0 0 0 6px #fff;
}

html[lang="en"] .header__inner { gap: 24px; padding: 15px 32px; }
html[lang="en"] .header__logo { flex: 0 1 255px; min-width: 0; }

/* A closed, off-screen drawer must not expose links to keyboard focus. */
html[lang="en"] .header__snav { visibility: hidden; }

@media (max-width: 1240px) {
  html[lang="en"] .header__inner.js-open { background: #202e5e; }
  html[lang="en"] .header__inner.js-open .en-wordmark { color: #fff; text-shadow: none; }
  html[lang="en"] .header__inner.js-open .hamburger span { background: #fff; }
  /* The open menu covers the fixed contact bar, including on short screens. */
  html[lang="en"] .header:has(.header__snav.js-open) { z-index: 21; }
  html[lang="en"] .header__nav { display: none !important; }
  html[lang="en"] .header__inner { gap: 16px; padding: 15px 20px; }
  html[lang="en"] .header__snav.js-open { visibility: visible; }
  /* Reserve room for the accordion icon beside the longer English label. */
  html[lang="en"] .js-drawerAccordion > .drawer__link { padding-right: 3rem; }
  html[lang="en"] .header__hamburger {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    padding: 0;
    margin-left: auto;
  }
}

@media (max-width: 767px) {
  html[lang="en"] .header { height: 72px; }
  html[lang="en"] .header__inner { gap: 8px; padding: 12px; }
  html[lang="en"] .header__logo { flex: 1 1 auto; max-width: 235px; }
  html[lang="en"] .header .en-wordmark { font-size: 20px; }
  html[lang="en"] .header .en-wordmark small { font-size: 10px; letter-spacing: .07em; }
}

/* Resizing an open drawer to full navigation must not leave the page locked. */
@media (min-width: 1241px) {
  html[lang="en"] body.noscroll { overflow: visible; }
}
