/* The approved About masthead, isolated from individual page typography. */
#site-header.header--overlay {
  --header-solid:0; --header-ink:#fff; --header-hover:#fff;
  --header-button-bg:#fff; --header-button-ink:#102c47;
  position:fixed; inset:0 0 auto; height:80px; z-index:100; isolation:isolate;
  font-family:system-ui,"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:16px; font-weight:400; line-height:1.8;
  color:var(--header-ink); background:transparent; box-shadow:none;
  backdrop-filter:none; -webkit-backdrop-filter:none;
}
#site-header.header--overlay:is(.is-scrolled,[data-header-mode="solid"]) {
  --header-solid:1; --header-ink:#102c47; --header-hover:#0753a2;
  --header-button-bg:#0753a2; --header-button-ink:#fff;
}
#site-header::before {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:rgba(255,255,255,.97); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  opacity:var(--header-solid); box-shadow:0 1px 0 #102c4710,0 7px 24px #102c4708;
  transition:opacity .42s cubic-bezier(.22,.61,.36,1);
}
#site-header .header-inner {
  display:flex; align-items:center; justify-content:space-between; gap:28px;
  width:82.6%; max-width:1800px; height:100%; margin:0 auto; padding:0;
}
#site-header .brand { display:flex; align-items:center; flex:none; gap:14px; color:inherit; }
#site-header .brand-name {
  display:block; max-width:126px; font-size:12px; font-weight:500;
  line-height:1.7; letter-spacing:1px; color:inherit;
}
html[lang="en"] #site-header .brand-name {
  max-width:none; white-space:nowrap; line-height:1.2; letter-spacing:.06em;
}
#site-header .logo { position:relative; width:106px; height:28px; display:block; overflow:hidden; flex:none; filter:none; mix-blend-mode:normal; }
#site-header .logo img { position:absolute; width:119px; max-width:none; height:auto; left:-6px; top:-47px; filter:url(#white-logo); opacity:calc(1 - var(--header-solid)); }
#site-header .logo img.logo-color { filter:url(#transparent-logo); opacity:var(--header-solid); }
#site-header #site-nav { display:flex; align-items:center; gap:36px; color:inherit; font-size:16px; line-height:1.8; font-weight:500; letter-spacing:-.035em; }
#site-header #site-nav>.nav-primary-link,
#site-header #site-nav>.nav-section>summary { display:flex; align-items:center; min-height:44px; padding:0; font-size:18px; font-weight:600; letter-spacing:0; line-height:1.8; color:inherit; }
#site-header #site-nav>.nav-section>summary { gap:17px; }
#site-header .nav-section>summary>.nav-country-link { color:inherit; font:inherit; }
#site-header #site-nav>.language-picker { margin-left:8px; }
#site-header #site-nav .language { display:flex; align-items:center; justify-content:flex-start; gap:5px; min-height:40px; margin:0; font-size:14px; line-height:1.8; font-weight:500; color:inherit; }
#site-header .language::before { content:""; display:block; width:23px; height:23px; flex:0 0 23px; margin:0; border-radius:50%; background:#666 url('assets/language-globe.gif') center/cover no-repeat; mask:none; }
#site-header .language::after { content:none!important; display:none!important; }
#site-header .language>.nav-chevron { display:block; width:6px; height:6px; border-width:0 1.5px 1.5px 0; margin-left:3px; }
#site-header .language-picker[open]>.language>.nav-chevron { transform:translateY(2px) rotate(225deg); }
#site-header #site-nav>.contact-nav {
  display:flex; align-items:center; justify-content:center; flex:none; gap:0;
  padding:11px 18px; min-height:40px; border:0; border-radius:50px;
  background:var(--header-button-bg); color:var(--header-button-ink);
  font-size:14px; font-weight:500; line-height:1.4; letter-spacing:-.035em;
}
#site-header .contact-nav>[data-decorative-arrow] { display:none; }
#site-header #site-nav>.contact-nav[aria-current="page"] { box-shadow:none; }
#site-header #site-nav>.contact-nav:is(:hover,:focus-visible) { background:var(--header-button-bg); color:var(--header-button-ink); box-shadow:0 0 0 4px #a4c9e62a; }
#site-header #site-nav>.nav-primary-link:is(:hover,:focus-visible,[aria-current="page"]),
#site-header .nav-section:has([aria-current="page"])>summary,
#site-header .nav-section[open]>summary { color:var(--header-hover); }
#site-header .nav-panel-heading { margin:2px 13px 10px; font-size:10px; font-weight:500; letter-spacing:.08em; line-height:1.8; color:#8197a7; }
#site-header .nav-menu>a,#site-header .nav-menu>button { color:#36536a; font-size:14px; line-height:1.4; font-weight:500; letter-spacing:0; }
#site-header .nav-menu>:is(:hover,:focus-visible,[aria-current="page"]),#site-header .language-options>[aria-pressed="true"] { color:#0753a2; background:#edf4fa; }
#site-header :is(a,summary,button):focus-visible { outline:2px solid currentColor; outline-offset:5px; }
#site-header .menu-toggle { display:none; }
html[data-page="credits"] main { margin-top:80px; }
@media(min-width:810px) and (max-width:1280px) {
  #site-header .header-inner { width:88%; gap:20px; }
  #site-header #site-nav { gap:22px; }
  #site-header #site-nav>.nav-primary-link,#site-header #site-nav>.nav-section>summary { font-size:16px; }
  #site-header #site-nav>.nav-section>summary { gap:12px; }
  #site-header #site-nav>.language-picker { margin-left:0; }
  html[lang="en"] #site-header .brand-name { font-size:10px; letter-spacing:.04em; }
}
@media(min-width:810px) and (max-width:1100px) { #site-header .brand-name { display:none; } }
@media(min-width:810px) and (max-width:960px) {
  #site-header #site-nav { gap:12px; }
  #site-header #site-nav>.nav-primary-link,#site-header #site-nav>.nav-section>summary { font-size:14px; }
}
@media(max-width:809px) {
  #site-header.header--overlay { height:76px; }
  #site-header .header-inner { width:88%; gap:12px; }
  #site-header .brand { min-width:0; flex-shrink:1; gap:10px; }
  #site-header .brand-name { display:block; font-size:11px; max-width:150px; }
  #site-header .logo { width:103px; }
  #site-header .logo img { width:115px; top:-45px; }
  #site-header .menu-toggle { display:flex; flex:none; }
  .menu-open #site-header.header--overlay { --header-solid:1; --header-ink:#102c47; --header-hover:#0753a2; --header-button-bg:#0753a2; --header-button-ink:#fff; }
  #site-header #site-nav { --header-hover:#0753a2; display:none; position:absolute; left:0; right:0; top:76px; max-height:calc(100svh - 76px); overflow-y:auto; flex-direction:column; align-items:stretch; gap:0; padding:20px 6% 28px; background:#fff; color:#102c47; }
  .menu-open #site-header #site-nav { display:flex; }
  #site-header #site-nav>.nav-primary-link,#site-header #site-nav>.nav-section>summary { min-height:54px; padding:12px 0; font-size:18px; }
  #site-header #site-nav>.nav-section>summary { justify-content:space-between; }
  #site-header #site-nav>.language-picker { margin-left:0; }
  #site-header #site-nav .language { min-height:48px; margin-top:8px; font-size:15px; }
  #site-header #site-nav .language>span:first-child { position:static; width:auto; height:auto; overflow:visible; clip-path:none; }
  #site-header #site-nav>.contact-nav { min-height:44px; margin-top:8px; padding:12px 18px; }
  html[data-page="credits"] main { margin-top:76px; }
}
@media(max-width:480px) { #site-header .brand-name { font-size:10px; max-width:126px; } }
@media(max-width:809px) {
  html[lang="en"] #site-header .brand-name { max-width:none; font-size:11px; letter-spacing:.04em; }
}
@media(max-width:480px) {
  html[lang="en"] #site-header .brand { gap:8px; }
  html[lang="en"] #site-header .brand-name { font-size:clamp(8px,2.2vw,10px); letter-spacing:.025em; }
  html[lang="en"] #site-header .logo { width:80px; height:22px; }
  html[lang="en"] #site-header .logo img { width:90px; left:-5px; top:-35px; }
}
@media(prefers-reduced-motion:reduce) { #site-header,#site-header::before,#site-header * { transition:none!important; animation:none!important; } }
