/* XIS: translated pages (xis-lang.js). Nothing here applies to the English page. */

/* Google's translator bar and hover pop-ups: hidden; the page stays where the design puts it */
.goog-te-banner-frame, iframe.skiptranslate, .skiptranslate > iframe, #goog-gt-tt, .goog-te-balloon-frame, #xis-gt { display: none !important; }
html.xis-translating body { top: 0 !important; position: static; }
html.xis-translating font { background: none !important; box-shadow: none !important; }

/* ---------- Typography per language (N, 27 Oct 2026) ----------
   The designs set every font through three roles: headlines (display), text (body) and small labels (mono).
   Arabic: Alexandria for all three (N's choice), served by this site. Russian: the English fonts have no Cyrillic for
   headlines and labels, so Onest (headlines) and IBM Plex Mono (labels) supply the Cyrillic letters; Latin words keep the
   English fonts. Chinese: the device's own Chinese fonts (PingFang on Apple, Microsoft YaHei on Windows, Noto on Android)
   after the English fonts, which keep the Latin words and figures.
   Sizes, weights and line spacing for each page design: assets/css/lang/<design>.css (tools/lang-type.js).
   Font files: assets/fonts (SIL Open Font Licence, see the LICENSE files there). */
@font-face { font-family: "XIS Alexandria"; font-style: normal; font-display: swap; font-weight: 100 900; src: url(../fonts/alexandria-arabic-wght-normal.woff2) format("woff2"); unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC; }
@font-face { font-family: "XIS Alexandria"; font-style: normal; font-display: swap; font-weight: 100 900; src: url(../fonts/alexandria-latin-wght-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "XIS Onest"; font-style: normal; font-display: swap; font-weight: 100 900; src: url(../fonts/onest-cyrillic-wght-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "XIS Plex Mono"; font-style: normal; font-display: swap; font-weight: 400; src: url(../fonts/ibm-plex-mono-cyrillic-400-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "XIS Plex Mono"; font-style: normal; font-display: swap; font-weight: 500; src: url(../fonts/ibm-plex-mono-cyrillic-500-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }

/* the three roles, redefined per language (every element, so a design that sets them lower down is covered too) */
html[lang^="ar"], html[lang^="ar"] * {
	--font-display: "XIS Alexandria", "Geeza Pro", "Segoe UI", Tahoma, sans-serif !important; --f-display: var(--font-display) !important;
	--font-body: "XIS Alexandria", "Geeza Pro", "Segoe UI", Tahoma, sans-serif !important; --f-body: var(--font-body) !important;
	--font-mono: "XIS Alexandria", "Geeza Pro", "Segoe UI", Tahoma, sans-serif !important; --f-mono: var(--font-mono) !important;
}
html[lang="ru"], html[lang="ru"] * {
	--font-display: "Bricolage Grotesque", "XIS Onest", "Helvetica Neue", Arial, sans-serif !important; --f-display: var(--font-display) !important;
	--font-mono: "DM Mono", "XIS Plex Mono", ui-monospace, Menlo, monospace !important; --f-mono: var(--font-mono) !important;
}
html[lang^="zh"], html[lang^="zh"] * {
	--font-display: "Bricolage Grotesque", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif !important; --f-display: var(--font-display) !important;
	--font-body: Manrope, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif !important; --f-body: var(--font-body) !important;
	--font-mono: "DM Mono", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", "Noto Sans CJK SC", sans-serif !important; --f-mono: var(--font-mono) !important;
}
/* Arabic and Chinese: letters join or sit on a square, so no letter spacing, capitals, slanting or narrow widths */
html[lang^="ar"] *, html[lang^="zh"] * { letter-spacing: 0 !important; text-transform: none !important; }
html[lang^="ar"] em, html[lang^="ar"] i, html[lang^="zh"] em, html[lang^="zh"] i { font-style: normal; }
html[lang^="ar"] *, html[lang^="zh"] * { font-variation-settings: normal !important; font-synthesis: none; }
/* Russian: no faux bold or slant on the Cyrillic fonts */
html[lang="ru"] { font-synthesis: none; }
/* paragraphs end on more than a single word or character; Chinese breaks only where Chinese allows */
html[lang^="ar"] p, html[lang^="ru"] p, html[lang^="zh"] p { text-wrap: pretty; }
html[lang^="zh"] body { line-break: strict; }

/* form controls the design leaves to the browser's own font (Arial): the page's font instead */
html[lang^="ar"] :is(button, input, select, textarea), html[lang="ru"] :is(button, input, select, textarea), html[lang^="zh"] :is(button, input, select, textarea) { font-family: inherit; }

/* the editor's text presets (xis-presets.css), per language */
html[lang^="ar"] .xis [data-xs~="t-display"] { font-weight: 300 !important; line-height: 1.34 !important; }
html[lang^="ar"] .xis [data-xs~="t-section"] { font-weight: 300 !important; line-height: 1.34 !important; }
html[lang^="ar"] .xis [data-xs~="t-sub"] { font-weight: 300 !important; line-height: 1.4 !important; }
html[lang^="ar"] .xis [data-xs~="t-lead"] { font-weight: 350 !important; line-height: 1.85 !important; }
html[lang^="ar"] .xis [data-xs~="t-body"], html[lang^="ar"] .xis [data-xs~="t-small"] { font-weight: 350 !important; line-height: 1.85 !important; }
html[lang^="ar"] .xis [data-xs~="t-label"] { font-size: 13px !important; font-weight: 400 !important; }
html[lang^="zh"] .xis [data-xs~="t-display"] { font-size: clamp(28px, 4.05vw, 51px) !important; font-weight: 300 !important; line-height: 1.3 !important; }
html[lang^="zh"] .xis [data-xs~="t-section"] { font-size: clamp(25px, 3vw, 39px) !important; font-weight: 300 !important; line-height: 1.3 !important; }
html[lang^="zh"] .xis [data-xs~="t-lead"], html[lang^="zh"] .xis [data-xs~="t-body"], html[lang^="zh"] .xis [data-xs~="t-small"] { line-height: 1.85 !important; }
html[lang^="zh"] .xis [data-xs~="t-label"] { font-size: 12.5px !important; font-weight: 400 !important; }
html[lang="ru"] .xis [data-xs~="t-display"] { font-size: clamp(31px, 4.4vw, 56px) !important; }

/* the cookie bar (its text is set in Manrope by name): the language's text font */
html[lang^="ar"] #hs-banner-parent, html[lang^="ar"] #hs-banner-parent * { font-family: "XIS Alexandria", "Geeza Pro", "Segoe UI", Tahoma, sans-serif !important; }
html[lang^="zh"] #hs-banner-parent, html[lang^="zh"] #hs-banner-parent * { font-family: Manrope, "PingFang SC", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", sans-serif !important; }

/* right to left: phone numbers, email addresses, prices with digits and form fields keep their own direction */
html.xis-rtl a[href^="tel:"], html.xis-rtl a[href^="mailto:"], html.xis-rtl .iti, html.xis-rtl input[type="tel"],
html.xis-rtl input[type="email"] { direction: ltr; unicode-bidi: isolate; }
html.xis-rtl input[type="tel"], html.xis-rtl input[type="email"] { text-align: right; }
html.xis-rtl .iti { display: block; }
html.xis-rtl .iti input[type="tel"] { text-align: left; }
html.xis-rtl select { background-position: left 0 center; }

/* any translated page (xis-lang.js adds xis-translated): translated words are often longer than the English, so the few
   places the design keeps on one line may wrap on a phone instead of pushing the page sideways */
html.xis-translated .nw { white-space: normal !important; }
html.xis-translated #fzones, html.xis-translated .fzone a { white-space: normal !important; }
html.xis-translated .pxtile > * { min-width: 0; }
html.xis-translated .pxtile * { overflow-wrap: anywhere; }

/* "Beyond the UAE" map (refinement R9): map labels and card labels at the language's minimum size */
html[lang^="ar"] .intl .ixm-n, html[lang^="zh"] .intl .ixm-n { font-size: 12px; }
html[lang^="ar"] .intl .ixm-k, html[lang^="zh"] .intl .ixm-k { font-size: 12.5px; }
@media (max-width: 960px) { html[lang^="ar"] .intl .ixm-n, html[lang^="zh"] .intl .ixm-n { font-size: 10px; } }
@media (max-width: 520px) { html[lang^="ar"] .intl .ixm-n, html[lang^="zh"] .intl .ixm-n { font-size: 8.5px; } }
/* Arabic: the arrows after prices and on the international button point in the reading direction */
html[dir="rtl"] .intl .ixm-pr span[aria-hidden="true"], html[dir="rtl"] .intl .ixm-all span[aria-hidden="true"]:not(.d) { display: inline-block; transform: scaleX(-1); }
