/* Per-script type tuning — loaded only on translated pages, scoped by <html data-script="…">.
   Bebas Neue is a condensed Latin display face: at the sizes the English page uses, the same
   numbers in Arabic, Devanagari or CJK would overflow, and letter-spacing breaks Arabic joins.
   Each block below re-tunes size, line-height and tracking; nothing here can touch the English page. */

/* numerals keep the brand display face in every language */
[data-script] .card__num, [data-script] .step__num, [data-script] .ring__val,
[data-script] .dm__rank, [data-script] .cform__steps b, [data-script] .psteps li::before,
[data-script] .pstat span { font-family: "Bebas Neue", var(--display); }

/* ---------------- Arabic script (Persian, Arabic) ---------------- */
[data-script="arabic"] .h2, [data-script="arabic"] .card__kicker, [data-script="arabic"] .panel h3,
[data-script="arabic"] .cform__side h3, [data-script="arabic"] .pcard__name, [data-script="arabic"] .phero__name,
[data-script="arabic"] .pbox h4, [data-script="arabic"] .dm__head h4, [data-script="arabic"] .prail__end h4,
[data-script="arabic"] .rfq h3, [data-script="arabic"] .sw-root .sw-copy__title, [data-script="arabic"] .ghost {
  text-transform: none; letter-spacing: 0; font-weight: 800; }
[data-script="arabic"] .h2 { font-size: clamp(2.1rem, 4.1vw, 3.9rem); line-height: 1.42; max-width: 17em; }
[data-script="arabic"] .card__kicker { font-size: clamp(1.7rem, 2.1vw, 2.1rem); line-height: 1.35; }
[data-script="arabic"] .panel h3 { font-size: clamp(1.7rem, 2.6vw, 2.6rem); line-height: 1.4; }
[data-script="arabic"] .cform__side h3 { font-size: clamp(1.6rem, 2.2vw, 2.2rem); line-height: 1.4; max-width: 18em; }
[data-script="arabic"] .sw-root .sw-copy__title { font-size: clamp(2.2rem, 4.6vw, 4.4rem); line-height: 1.3; }
[data-script="arabic"] .ghost { font-size: clamp(4.5rem, 9vw, 9rem); line-height: 1.1; }
[data-script="arabic"] .pcard__name { font-size: clamp(1.3rem, 1.5vw, 1.6rem); line-height: 1.4; }
[data-script="arabic"] .phero__name { font-size: clamp(1.9rem, 3vw, 3rem); line-height: 1.35; }
[data-script="arabic"] .pbox h4, [data-script="arabic"] .dm__head h4 { font-size: 1.15rem; line-height: 1.5; }
[data-script="arabic"] .prail__end h4 { font-size: 1.6rem; line-height: 1.4; }
[data-script="arabic"] .rfq h3 { font-size: clamp(1.5rem, 2.2vw, 2.1rem); line-height: 1.4; }
[data-script="arabic"] .tag, [data-script="arabic"] .pfilter, [data-script="arabic"] .chips span,
[data-script="arabic"] .site-nav, [data-script="arabic"] .btn, [data-script="arabic"] .lang__btn,
[data-script="arabic"] .sw-root .sw-copy__eyebrow, [data-script="arabic"] .sw-root .sw-hint,
[data-script="arabic"] .pill, [data-script="arabic"] .ptab, [data-script="arabic"] .pcount,
[data-script="arabic"] .ptile, [data-script="arabic"] .pbadge, [data-script="arabic"] .prail__hint span,
[data-script="arabic"] .sw-root .sw-btn { letter-spacing: 0; text-transform: none; }
[data-script="arabic"] .h2 .w { padding-bottom: .22em; margin-bottom: -.22em; }
[data-script="arabic"] .lede { line-height: 1.8; }
[data-script="arabic"] p, [data-script="arabic"] li { line-height: 1.85; }

/* ---------------- Devanagari (Hindi) ---------------- */
[data-script="devanagari"] .h2, [data-script="devanagari"] .card__kicker, [data-script="devanagari"] .panel h3,
[data-script="devanagari"] .cform__side h3, [data-script="devanagari"] .pcard__name, [data-script="devanagari"] .phero__name,
[data-script="devanagari"] .pbox h4, [data-script="devanagari"] .dm__head h4, [data-script="devanagari"] .prail__end h4,
[data-script="devanagari"] .rfq h3, [data-script="devanagari"] .sw-root .sw-copy__title, [data-script="devanagari"] .ghost {
  text-transform: none; letter-spacing: 0; font-weight: 700; }
[data-script="devanagari"] .h2 { font-size: clamp(2rem, 3.9vw, 3.6rem); line-height: 1.45; max-width: 17em; }
[data-script="devanagari"] .card__kicker { font-size: clamp(1.6rem, 2vw, 2rem); line-height: 1.4; }
[data-script="devanagari"] .panel h3 { font-size: clamp(1.6rem, 2.5vw, 2.4rem); line-height: 1.45; }
[data-script="devanagari"] .cform__side h3 { font-size: clamp(1.5rem, 2.1vw, 2.1rem); line-height: 1.45; max-width: 18em; }
[data-script="devanagari"] .sw-root .sw-copy__title { font-size: clamp(2rem, 4.2vw, 4rem); line-height: 1.35; }
[data-script="devanagari"] .ghost { font-size: clamp(4rem, 8vw, 8rem); line-height: 1.15; }
[data-script="devanagari"] .pcard__name { font-size: clamp(1.25rem, 1.45vw, 1.5rem); line-height: 1.45; }
[data-script="devanagari"] .phero__name { font-size: clamp(1.8rem, 2.8vw, 2.8rem); line-height: 1.4; }
[data-script="devanagari"] .pbox h4, [data-script="devanagari"] .dm__head h4 { font-size: 1.12rem; line-height: 1.55; }
[data-script="devanagari"] .prail__end h4 { font-size: 1.5rem; line-height: 1.45; }
[data-script="devanagari"] .rfq h3 { font-size: clamp(1.45rem, 2.1vw, 2rem); line-height: 1.45; }
[data-script="devanagari"] .tag, [data-script="devanagari"] .pfilter, [data-script="devanagari"] .chips span,
[data-script="devanagari"] .site-nav, [data-script="devanagari"] .btn, [data-script="devanagari"] .lang__btn,
[data-script="devanagari"] .sw-root .sw-copy__eyebrow, [data-script="devanagari"] .sw-root .sw-hint,
[data-script="devanagari"] .pill, [data-script="devanagari"] .ptab, [data-script="devanagari"] .pcount,
[data-script="devanagari"] .ptile, [data-script="devanagari"] .pbadge, [data-script="devanagari"] .prail__hint span,
[data-script="devanagari"] .sw-root .sw-btn { letter-spacing: .01em; text-transform: none; }
[data-script="devanagari"] .h2 .w { padding-bottom: .26em; margin-bottom: -.26em; }
[data-script="devanagari"] .lede { line-height: 1.75; }
[data-script="devanagari"] p, [data-script="devanagari"] li { line-height: 1.8; }

/* ---------------- CJK (Chinese, Japanese) ---------------- */
[data-script="cjk"] .h2, [data-script="cjk"] .card__kicker, [data-script="cjk"] .panel h3,
[data-script="cjk"] .cform__side h3, [data-script="cjk"] .pcard__name, [data-script="cjk"] .phero__name,
[data-script="cjk"] .pbox h4, [data-script="cjk"] .dm__head h4, [data-script="cjk"] .prail__end h4,
[data-script="cjk"] .rfq h3, [data-script="cjk"] .sw-root .sw-copy__title, [data-script="cjk"] .ghost {
  text-transform: none; letter-spacing: .02em; font-weight: 900; }
[data-script="cjk"] .h2 { font-size: clamp(1.9rem, 3.4vw, 3.2rem); line-height: 1.3; max-width: 15em; }
[data-script="cjk"] .card__kicker { font-size: clamp(1.5rem, 1.9vw, 1.9rem); line-height: 1.3; }
[data-script="cjk"] .panel h3 { font-size: clamp(1.5rem, 2.2vw, 2.2rem); line-height: 1.35; }
[data-script="cjk"] .cform__side h3 { font-size: clamp(1.4rem, 1.9vw, 1.9rem); line-height: 1.35; max-width: 16em; }
[data-script="cjk"] .sw-root .sw-copy__title { font-size: clamp(1.9rem, 3.8vw, 3.6rem); line-height: 1.25; }
[data-script="cjk"] .ghost { font-size: clamp(3.6rem, 7vw, 7rem); line-height: 1.1; letter-spacing: .06em; }
[data-script="cjk"] .pcard__name { font-size: clamp(1.15rem, 1.35vw, 1.4rem); line-height: 1.4; }
[data-script="cjk"] .phero__name { font-size: clamp(1.7rem, 2.6vw, 2.6rem); line-height: 1.3; }
[data-script="cjk"] .pbox h4, [data-script="cjk"] .dm__head h4 { font-size: 1.08rem; line-height: 1.5; }
[data-script="cjk"] .prail__end h4 { font-size: 1.4rem; line-height: 1.4; }
[data-script="cjk"] .rfq h3 { font-size: clamp(1.35rem, 2vw, 1.9rem); line-height: 1.4; }
[data-script="cjk"] .tag, [data-script="cjk"] .pfilter, [data-script="cjk"] .chips span,
[data-script="cjk"] .site-nav, [data-script="cjk"] .btn, [data-script="cjk"] .lang__btn,
[data-script="cjk"] .sw-root .sw-copy__eyebrow, [data-script="cjk"] .sw-root .sw-hint,
[data-script="cjk"] .pill, [data-script="cjk"] .ptab, [data-script="cjk"] .pcount,
[data-script="cjk"] .ptile, [data-script="cjk"] .pbadge, [data-script="cjk"] .prail__hint span,
[data-script="cjk"] .sw-root .sw-btn { letter-spacing: .04em; text-transform: none; }
[data-script="cjk"] .h2 .w { padding-bottom: .14em; margin-bottom: -.14em; }
[data-script="cjk"] .lede { line-height: 1.75; }
[data-script="cjk"] p, [data-script="cjk"] li { line-height: 1.8; }

/* ---------------- Cyrillic (Russian) — Oswald keeps the condensed display voice ---------------- */
[data-script="cyrillic"] .h2 { font-size: clamp(2.6rem, 5.2vw, 5rem); line-height: .98; max-width: 15ch; }
[data-script="cyrillic"] .card__kicker { font-size: clamp(2rem, 2.6vw, 2.5rem); line-height: 1.05; }
[data-script="cyrillic"] .panel h3 { font-size: clamp(2rem, 3.2vw, 3.2rem); line-height: 1.02; }
[data-script="cyrillic"] .cform__side h3 { font-size: clamp(1.9rem, 2.8vw, 2.8rem); line-height: 1.02; max-width: 14ch; }
[data-script="cyrillic"] .sw-root .sw-copy__title { font-size: clamp(2.8rem, 6.4vw, 6rem); line-height: 1; }
[data-script="cyrillic"] .ghost { font-size: clamp(6rem, 13vw, 13rem); line-height: .95; }
[data-script="cyrillic"] .phero__name { font-size: clamp(2.3rem, 3.8vw, 3.8rem); line-height: 1; }
[data-script="cyrillic"] .pcard__name { font-size: clamp(1.6rem, 1.9vw, 2rem); line-height: 1.05; }
[data-script="cyrillic"] .h2 .w { padding-bottom: .1em; margin-bottom: -.1em; }

/* ---------------- Latin and Cyrillic: room for accents inside the reveal mask ----------------
   .h2 .w clips its word to animate it out of a mask. At line-height .9 that mask cuts the acute
   on E, the breve on G and the cedilla under C — fine for English, wrong for every other language. */
[data-script="latin"] .h2 .w, [data-script="cyrillic"] .h2 .w { padding-top: .2em; margin-top: -.2em; padding-bottom: .14em; margin-bottom: -.14em; }
[data-script="latin"] .h2, [data-script="cyrillic"] .h2 { max-width: 15ch; }

/* ---------------- header: translated navigation is wider than the English one ----------------
   English keeps its exact spacing; every translated page gets a slightly tighter nav so the
   links never touch the wordmark or the call-to-action. */
[data-script] .site-nav { gap: clamp(12px, 1.6vw, 26px); font-size: .85rem; }
@media (max-width: 1320px) { [data-script] .site-nav { gap: 11px; font-size: .8rem; } }
/* between 861 and 1100 the nav is still shown and space is tight: the call-to-action keeps its
   arrow only. Below 861 the nav is hidden anyway, so the label comes back. */
@media (max-width: 1100px) and (min-width: 861px) {
  [data-script] .site-header__cta .btn span:first-child { display: none; }
  [data-script] .site-header__cta .btn { padding: 0 6px; } }
/* Russian navigation is the longest of all twelve — one more notch tighter */
[data-script="cyrillic"] .site-nav { gap: clamp(10px, 1.3vw, 20px); font-size: .8rem; }
@media (max-width: 1320px) { [data-script="cyrillic"] .site-nav { gap: 9px; font-size: .76rem; } }

/* real spacing between the three header columns, so links can never touch the wordmark
   or the call-to-action however long the translation is */
[data-script] .site-header { column-gap: clamp(16px, 2.2vw, 34px); }
@media (max-width: 1200px) { [data-script] .site-nav { gap: 9px; font-size: .75rem; } }

/* the ghost word sits at the very top of its section; at line-height .85 a breve or an umlaut
   would be clipped by the section edge (English has no ascenders above cap height, so it never showed) */
[data-script="latin"] .ghost, [data-script="cyrillic"] .ghost { line-height: 1; }
/* Russian words are long: a 15ch measure turned the closing headline into five lines */
[data-script="cyrillic"] .h2 { max-width: 19ch; }
