.language-switch {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 7px;
  align-items: center;
  color: var(--text-muted-soft);
  font: 800 10px/1 var(--sans);
  letter-spacing: .02em;
  white-space: nowrap;
}

.language-switch a {
  padding: 8px 0;
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.language-switch a:hover,
.language-switch a:focus-visible {
  color: var(--ink);
  border-color: var(--ink);
}

html[lang="zh-CN"] {
  --sans: "Noto Sans CJK SC", "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;
  --display: "Arial Narrow", "Helvetica Neue", "Noto Sans CJK SC", "Source Han Sans SC", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;
}

html[lang="zh-CN"] body {
  font-family: var(--sans);
}

html[lang="zh-CN"] .hero h1,
html[lang="zh-CN"] .human-centered h2,
html[lang="zh-CN"] .thesis-band h2,
html[lang="zh-CN"] .section h2,
html[lang="zh-CN"] .contact h2 {
  letter-spacing: -.045em;
}

html[lang="zh-CN"] .hero h1 .lead-line {
  letter-spacing: -.035em;
}

@media (max-width: 1180px) {
  .header-inner { gap: 12px; }
  .site-nav { gap: 18px; }
  .language-switch { font-size: 9px; }
}

@media (max-width: 760px) {
  .header-inner { gap: 10px; }
  .language-switch { gap: 5px; font-size: 9px; }
  .language-switch a { padding: 7px 0; }

  html[lang="zh-CN"] .hero h1 {
    font-size: clamp(44px, 12.4vw, 62px);
  }

  html[lang="zh-CN"] .hero h1 .lead-line {
    font-size: .45em;
  }

  html[lang="zh-CN"] .human-centered h2 .h2-line,
  html[lang="zh-CN"] .heading-nowrap {
    white-space: normal;
  }
}

@media (max-width: 390px) {
  .brand-name { display: none; }
  .language-switch { font-size: 8px; }
}
