/* language switcher + per-language typography / RTL (2026-10-24) */
.lang-switch{display:flex;align-items:center;gap:.15rem;margin-inline:auto .5rem;font-size:.74rem;white-space:nowrap}
.lang-switch a{display:inline-flex;align-items:center;min-height:2.75rem;padding-inline:.4rem;color:var(--color-muted,#47515d);text-decoration:none;font-weight:600}
.lang-switch a[aria-current]{color:var(--color-accent-deep,#003676);text-decoration:underline;text-underline-offset:.3em}
.lang-switch a:hover{color:var(--color-accent,#004e9f)}
.lang-switch .ls-short{display:none}
@media (max-width:48rem){.lang-switch{gap:0;font-size:.72rem;margin-inline:auto .25rem}.lang-switch a{padding-inline:.3rem;min-width:2rem;justify-content:center}.lang-switch .ls-full{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.lang-switch .ls-short{display:inline}}
/* Cyrillic: Space Grotesk has no Cyrillic glyphs */
html[lang=ru]{--font-display:"IBM Plex Sans",Arial,sans-serif}
html[lang=ru] h1,html[lang=ru] h2{letter-spacing:-.02em}
/* Arabic */
html[lang=ar]{--font-display:"IBM Plex Sans Arabic",Tahoma,sans-serif;--font-body:"IBM Plex Sans Arabic",Tahoma,sans-serif;--font-mono:"IBM Plex Sans Arabic",Tahoma,sans-serif}
html[lang=ar] body,html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3,html[lang=ar] p,html[lang=ar] a,html[lang=ar] li,html[lang=ar] button,html[lang=ar] input,html[lang=ar] select,html[lang=ar] textarea{font-family:"IBM Plex Sans Arabic",Tahoma,sans-serif}
html[lang=ar] *{letter-spacing:0!important}
html[lang=ar] .eyebrow,html[lang=ar] .mono{text-transform:none}
html[lang=ar] h1,html[lang=ar] h2{line-height:1.3}
[dir=rtl] .lang-switch a[lang=en],[dir=rtl] .lang-switch a[lang=es],[dir=rtl] .lang-switch a[lang=ru]{direction:ltr}
[dir=rtl] table th,[dir=rtl] table td{text-align:right}
[dir=rtl] .spec-table th,[dir=rtl] .compare-table th,[dir=rtl] .compare-table td{text-align:right}
/* RTL: off-screen helpers must not create horizontal scroll */
[dir=rtl] .form-trap{left:auto;right:0;clip:rect(0 0 0 0);clip-path:inset(50%)}
[dir=rtl] .skip-link{left:auto;right:1rem}
[dir=rtl] .skip-link:not(:focus){clip-path:inset(50%)}
[dir=rtl] body{overflow-x:clip}
/* RTL: homepage hero gradient follows the text side; proof row padding */
@media (min-width:700px){[dir=rtl] .hero::after{background:linear-gradient(270deg,rgba(7,17,29,.98) 0%,rgba(7,17,29,.83) 44%,rgba(7,17,29,.18) 78%)}[dir=rtl] .proof-item:first-child{padding-left:1.25rem}}
/* Long Russian/Spanish words: wider ch limits, real hyphenation instead of mid-word breaks */
html[lang=ru] h1,html[lang=ru] h2,html[lang=ru] h3,html[lang=es] h1,html[lang=es] h2,html[lang=es] h3{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
html[lang=ru] h1{max-width:19ch;font-size:clamp(2.1rem,6vw,4.4rem)}
html[lang=ru] h2{max-width:22ch;font-size:clamp(1.7rem,3.8vw,2.9rem)}
html[lang=es] h1{max-width:17ch}
html[lang=es] h2{max-width:20ch}
