/* Languages: scripts our Latin display fonts do not carry, and right-to-left Arabic.
   Bodoni Moda, Tenor Sans and Jost cover Latin only; other scripts use the reader's best system font. */
:lang(ar) { --font-display: "Noto Naskh Arabic", "Geeza Pro", "Al Nile", "Times New Roman", serif; --font-label: "Noto Sans Arabic", "Geeza Pro", Tahoma, sans-serif; --font-sans: "Noto Sans Arabic", "Geeza Pro", Tahoma, "Segoe UI", sans-serif; }
:lang(ja) { --font-display: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif; --font-label: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif; --font-sans: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif; }
:lang(ko) { --font-display: "Noto Serif KR", "AppleMyungjo", "Batang", serif; --font-label: "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif; --font-sans: "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif; }
:lang(zh-Hans) { --font-display: "Noto Serif SC", "Songti SC", "SimSun", serif; --font-label: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif; --font-sans: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif; }

/* Arabic letters join: no tracking, no capitals; CJK reads better with light tracking */
:lang(ar) *, :lang(ar) *::before, :lang(ar) *::after { letter-spacing: 0 !important; text-transform: none !important; }
:lang(ja) .m-k, :lang(ko) .m-k, :lang(zh-Hans) .m-k, :lang(ja) .m-link, :lang(ko) .m-link, :lang(zh-Hans) .m-link,
:lang(ja) .m-btn-line, :lang(ko) .m-btn-line, :lang(zh-Hans) .m-btn-line, :lang(ja) .m-nav-i > a, :lang(ko) .m-nav-i > a, :lang(zh-Hans) .m-nav-i > a { letter-spacing: .08em; }
:lang(ar) .m-h1, :lang(ar) .m-h2, :lang(ar) .m-h3, :lang(ar) .m-lede, :lang(ja) .m-h1, :lang(ko) .m-h1, :lang(zh-Hans) .m-h1 { line-height: 1.35; }
:lang(ar) .m-h1 em, :lang(ar) .m-h2 em, :lang(ja) em, :lang(ko) em, :lang(zh-Hans) em { font-style: normal; }
:lang(ar) body { font-size: 16px; line-height: 1.9; }
:lang(ja) body, :lang(ko) body, :lang(zh-Hans) body { line-height: 1.85; word-break: normal; line-break: strict; }
:lang(ko) body { word-break: keep-all; }

/* Right to left: grids and flex rows mirror by themselves; these rules flip what was set by hand */
[dir="rtl"] .m-slide-l .m-slide-txt { text-align: right; }
@media (min-width: 900px) {
  [dir="rtl"] .m-slide-l .m-slide-txt { margin-left: 0; margin-right: max(var(--m-pad), calc((100vw - var(--m-max)) / 2 + var(--m-pad))); }
  [dir="rtl"] .m-dots { left: auto; right: max(var(--m-pad), calc((100vw - var(--m-max)) / 2 + var(--m-pad))); }
  [dir="rtl"] .m-tone-dark.m-slide-l::after { background: linear-gradient(270deg, rgba(0,0,0,.5) 0%, rgba(0,0,0,.18) 45%, rgba(0,0,0,0) 70%), linear-gradient(180deg, rgba(0,0,0,.3) 0%, rgba(0,0,0,0) 22%); }
  [dir="rtl"] .m-tone-ink.m-slide-l::after { background: linear-gradient(270deg, rgba(248,246,241,.55) 0%, rgba(248,246,241,0) 50%), linear-gradient(180deg, rgba(0,0,0,.3) 0%, rgba(0,0,0,0) 20%); }
  [dir="rtl"] .m-split-rev .m-split-img { order: 0; }
}
/* the campaign photographs are composed with space on the left: mirror them so the copy sits in that space */
[dir="rtl"] .m-slide-img, [dir="rtl"] .s-hero-img { transform: scaleX(-1); }
[dir="rtl"] .m-slide.on .m-slide-img { transform: scaleX(-1) scale(1); }
[dir="rtl"] .m-split-txt { align-items: flex-start; text-align: right; }
[dir="rtl"] .m-link::after { transform-origin: right; }
[dir="rtl"] .m-cur { margin-left: 0; margin-right: 18px; }
[dir="rtl"] .m-cur select { padding: 3px 8px 3px 22px; background-position: 11px 10px, 7px 10px; }
[dir="rtl"] .m-lang { margin-left: 0; margin-right: 12px; }
[dir="rtl"] .m-arrow svg, [dir="rtl"] .bn-btn svg { transform: scaleX(-1); }
[dir="rtl"] .m-ic .count { right: auto; left: -2px; }
[dir="rtl"] .rg-facts dd, [dir="rtl"] .rg-faq { text-align: right; }
[dir="rtl"] .m-row-head .m-arrows .m-link { margin-left: 0; margin-right: 12px; }
/* numbers, prices, SKUs and codes stay left to right inside Arabic text */
[dir="rtl"] .num, [dir="rtl"] [data-card-price], [dir="rtl"] #price, [dir="rtl"] .m-util-rates b, [dir="rtl"] .card-price span { direction: ltr; unicode-bidi: isolate; }
