/* Language controls share the existing header typography and palette. */
.language-switcher { position: relative; flex: none; font-family: inherit; font-size: 13px; font-weight: 600; }
.language-switcher > summary { display: flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 6px; cursor: pointer; list-style: none; color: inherit; }
.language-switcher > summary::-webkit-details-marker { display: none; }
.language-switcher > summary:focus-visible, .language-switcher a:focus-visible { outline: 2px solid #2f9c5c; outline-offset: 3px; }
.language-switcher > nav { position: absolute; top: 100%; right: 0; z-index: 60; display: grid; min-width: 172px; padding: 8px; border: 1px solid #dce4dd; border-radius: 8px; background: #fff; box-shadow: 0 8px 24px rgb(12 43 29 / 10%); }
.site-chrome .language-switcher a { font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif; font-weight: 500; display: block; padding: 10px 12px; color: #0c2b1d; text-decoration: none; white-space: nowrap; border-radius: 4px; }
.site-chrome .language-switcher a::after { display: none; }
.site-chrome .language-switcher a:hover, .site-chrome .language-switcher a[aria-current] { background: #eef4ee; }
html:not([lang="en"]) h1, html:not([lang="en"]) h2 { overflow-wrap: anywhere; }
html:not([lang="en"]) .article-hero h1 { text-wrap: balance; }
/* The original display fonts do not cover Cyrillic; use a matching condensed family. */
html:lang(ru), html:lang(uk) { --font-display: 'Roboto Condensed', sans-serif; }
html:lang(ru) h1, html:lang(uk) h1, html:lang(ru) h2, html:lang(uk) h2,
html:lang(ru) .kicker, html:lang(uk) .kicker { font-family: 'Roboto Condensed', sans-serif; }
html:lang(ru) body, html:lang(uk) body { font-family: 'Roboto', sans-serif; }
@media (min-width: 801px) and (max-width: 1150px) {
  .site-chrome .site-header__inner { gap: 14px; }
  .site-chrome .site-nav { gap: 13px; font-size: 13px; }
  .site-chrome .nav-cta { padding-inline: 12px; }
}
@media (max-width: 800px) {
  .language-switcher { width: 100%; border-top: 1px solid #dce4dd; margin-top: 8px; padding-top: 4px; }
  .language-switcher > summary { padding: 10px 2px; }
  .language-switcher > nav { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); box-shadow: none; border: 0; padding: 0; }
  .site-chrome .language-switcher a { padding: 12px; }
  html:not([lang="en"]) .site-chrome .nav-cta { font-size: 12px; gap: 6px; padding-inline: 10px; }
}
@media print { .language-switcher { display: none; } }

/* Give longer translations enough room without splitting punctuation from words. */
html:not([lang="en"]) .hero h1 { font-size: clamp(56px, 5vw, 76px); line-height: 1; overflow-wrap: normal; }
@media (max-width: 640px) { html:not([lang="en"]) .hero h1 { font-size: clamp(42px, 11.8vw, 64px); } }

html:not([lang="en"]) .site-footer a { overflow-wrap: anywhere; white-space: normal; }
html:not([lang="en"]) .site-footer__nav > div { min-width: 0; }

/* Localized feature labels stay intact in one row at every viewport width. */
html:not([lang="en"]) .training-strip__inner {
  display: flex; max-width: 1280px; min-height: 86px; overflow-x: auto;
  overscroll-behavior-inline: contain; scrollbar-width: thin;
}
html:not([lang="en"]) .training-strip__intro {
  display: block; flex: 1 0 auto; padding-right: 20px; font-size: 20px; white-space: nowrap;
}
html:not([lang="en"]) .training-strip__item {
  flex: 1 0 auto; flex-direction: row; justify-content: center; min-height: 40px;
  gap: 8px; padding: 10px 12px; border-top: 0; border-left: 1px solid var(--line);
  font-size: 12px; white-space: nowrap;
}
html:not([lang="en"]) .ai-strip__inner { row-gap: 23px; }
html:not([lang="en"]) .ai-strip__text { grid-column: 1; grid-row: 1; }
html:not([lang="en"]) .ai-strip__media { grid-column: 2; grid-row: 1; }
html:not([lang="en"]) .ai-strip__learn-group {
  grid-column: 1 / -1; grid-row: 2; flex-wrap: nowrap; min-width: 0;
  margin-top: 0; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin;
}
html:not([lang="en"]) .ai-strip__learn { flex: none; white-space: nowrap; }
@media (max-width: 900px) {
  html:not([lang="en"]) .ai-strip__media { grid-column: 1; grid-row: 3; }
}

/* Start the personal-records guide on its own line in these four editions. */
html:is(:lang(en), :lang(de), :lang(ru), :lang(uk)) .feature-story--records .feature-story__note a {
  display: block;
}
