/* Shared multilingual layout guardrails. */
html { text-size-adjust: 100%; overflow-x: hidden; overflow-x: clip; }
body { overflow-x: hidden; overflow-x: clip; }
.site-header a, .btn, button, .button, .product-card h2, .product-card h3,
.display-title, .hero-title, h1, h2, h3 { overflow-wrap: anywhere; }
.btn, button, .button { min-width: 0; white-space: normal; text-align: center; }
.site-social-links { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.site-social-links a { display: inline-flex; min-height: 40px; align-items: center; }
html[lang="vi"] .display-title, html[lang="ru"] .display-title,
html[lang="vi"] .hero-title, html[lang="ru"] .hero-title { line-height: .94; }
html[dir="rtl"] body { direction: rtl; text-align: right; }
html[dir="rtl"] .brand, html[dir="rtl"] .product-size,
html[dir="rtl"] [data-technical], html[dir="rtl"] .spec-value { direction: ltr; unicode-bidi: isolate; }
html[dir="rtl"] .header-inner, html[dir="rtl"] .header-actions,
html[dir="rtl"] .site-social-links, html[dir="rtl"] .button-row { flex-direction: row-reverse; }
html[dir="rtl"] input[type="email"], html[dir="rtl"] input[type="tel"] { direction: ltr; text-align: left; }
html[dir="rtl"] .language-dropdown { right: auto; left: 0; }
@media (max-width: 980px) {
  .header-inner { gap: 14px; }
  .site-nav, .header-actions { flex-wrap: wrap; }
  .display-title, .hero-title { max-width: 100%; }
}
@media (max-width: 680px) {
  .btn, button, .button { max-width: 100%; }
  .site-social-links { justify-content: center; }
  html[dir="rtl"] .language-dropdown { right: auto; left: 10px; }
}

/* Keep every desktop header control on one stable baseline. */
@media (min-width: 901px) {
  .topbar .nav {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    justify-content: stretch;
    column-gap: clamp(14px, 1.65vw, 28px);
  }
  .topbar .brand,
  .topbar .nav-links,
  .topbar .global-language,
  .topbar .nav-tools { min-width: 0; }
  .topbar .nav-links {
    justify-content: flex-end;
    margin-left: 0;
    white-space: nowrap;
  }
  .topbar .global-language { align-self: center; }
  .topbar .nav-tools {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-end;
  }
  .topbar .nav-tools > * { flex: 0 0 auto; }
}
