/* Shared geometry; Chinese type uses local system fonts without remote calls. */
.bilingual-error-help { padding-block: 24px; border-top: 1px solid var(--line); }
.bilingual-error-help h2 { font-size: 24px; }
.primary-nav .language-switch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 8px;
  white-space: nowrap;
  color: var(--crown-gold);
}
html:lang(zh) {
  --body: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  --display: "Noto Serif CJK SC", "Songti SC", SimSun, serif;
  --utility: "Microsoft YaHei", "PingFang SC", sans-serif;
  line-break: strict;
}
html:lang(zh) h1, html:lang(zh) h2, html:lang(zh) h3 {
  letter-spacing: 0;
  line-height: 1.3;
  overflow-wrap: anywhere;
}
html:lang(zh) .eyebrow, html:lang(zh) .topline { letter-spacing: .04em; }
html:lang(zh) .page-intro h1 { max-width: 22em; }
html:lang(zh) .hero-copy h1 {
  font-size: clamp(38px, 4.5vw, 64px);
  line-height: 1.25;
  text-wrap: balance;
}
html:lang(zh) .guide-reading p, html:lang(zh) .desktop-reading p { line-height: 1.85; }
html:lang(zh) .primary-nav a { white-space: nowrap; }
@media (min-width: 851px) and (max-width: 1100px) {
  .header-inner { gap: 16px; }
  .primary-nav { gap: 10px; }
  .brand { gap: 12px; }
  .brand img { width: 76px; }
  .brand span { font-size: 20px; }
}
@media (max-width: 850px) {
  .primary-nav .language-switch { justify-content: flex-start; padding-inline: 0; }
}
