/* Shared international navigation. Desktop/tablet layout restored 2026-10-19.
   Keep both display states explicit: styles.css also has a 1060px breakpoint.
   All menu labels, destinations and page content are unchanged. */
.global-header{gap:26px;isolation:isolate;z-index:40}
.global-header .desktop-nav{display:flex;gap:clamp(16px,1.6vw,27px)}
.global-header .mobile-nav{display:none}
.global-header .nav-menu-label{padding:32px 0}
.global-header .desktop-nav>a,.global-header .nav-menu-label{font-size:.92rem;line-height:1.5;font-family:var(--font-geist-sans,Arial),"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-weight:650;letter-spacing:0}
.global-header .nav-dropdown a{font-family:var(--font-geist-sans,Arial),"Yu Gothic",Meiryo,sans-serif;font-size:.86rem}
.global-header .nav-menu:last-of-type .nav-dropdown{left:auto;right:0}
.global-header .nav-menu.is-dismissed .nav-dropdown{opacity:0;visibility:hidden;pointer-events:none}
.global-header a:focus-visible,.global-header summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.global-header .mobile-nav .nav-active{color:var(--red)}

/* A full horizontal desktop menu, including both contact links. */
@media(min-width:1101px) and (max-width:1300px){
  .global-header{padding-left:30px;padding-right:30px;gap:20px}
  .global-header>.brand img{width:140px}
  .global-header .desktop-nav{gap:17px}
  .global-header .desktop-nav>a,.global-header .nav-menu-label{font-size:.87rem}
}

/* Compact desktop/tablet: put the full menu below the logo, not behind a hamburger. */
@media(min-width:761px) and (max-width:1100px){
  .global-header{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;height:auto;min-height:96px;padding:15px 28px 8px;gap:7px 0}
  .global-header>.brand img{width:132px;max-height:64px}
  .global-header .desktop-nav{display:flex;flex:0 0 100%;min-width:0;align-items:center;justify-content:space-between;gap:0 12px}
  .global-header .desktop-nav>a,.global-header .nav-menu-label{padding:11px 0}
  .global-header .nav-dropdown{top:calc(100% - 2px);left:-12px}
  .global-header .nav-menu:last-of-type .nav-dropdown{left:auto;right:0}
}

/* At narrower tablet widths use two orderly rows; never clip or shrink the labels. */
@media(min-width:761px) and (max-width:980px){
  .global-header .desktop-nav{display:grid;grid-template-columns:repeat(4,max-content);justify-content:space-between;column-gap:20px;row-gap:0}
}

/* Phone menu only. Keep this threshold in sync with site-navigation.js. */
@media(max-width:760px){
  .global-header{height:68px;padding:0 18px}
  .global-header .desktop-nav{display:none}
  .global-header .mobile-nav{display:block;position:relative}
  .global-header .mobile-nav>summary{cursor:pointer;width:44px;height:44px;padding:8px;list-style:none}
  .global-header .mobile-nav summary::-webkit-details-marker{display:none}
  .global-header .mobile-nav>summary span{display:block;background:var(--ink);width:27px;height:2px;margin:5px 0}
  .global-header .mobile-nav>nav{display:grid;position:absolute;top:47px;right:0;background:var(--white);border:1px solid var(--line);width:min(370px,calc(100vw - 36px));min-width:0;max-height:calc(100vh - 88px);max-height:calc(100dvh - 88px);overflow-y:auto;overscroll-behavior:contain;padding:14px;box-shadow:0 18px 44px #06254d1f}
  .global-header .mobile-nav>nav>a,.global-header .mobile-subnav>summary{display:block;border-bottom:1px solid var(--line);padding:13px 10px;font-size:.92rem;font-weight:650;line-height:1.5}
  .global-header .mobile-subnav>summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none}
  .global-header .mobile-subnav>div{display:grid}
  .global-header .mobile-subnav>div a{display:block;padding:12px 16px;font-size:.85rem;line-height:1.45}
  .global-header .mobile-subnav[open]>summary{color:var(--red)}
  .global-header .mobile-nav a{font-family:var(--font-geist-sans,Arial),"Yu Gothic",Meiryo,sans-serif;white-space:normal}
}
