@charset "utf-8";

/* ==========================================================================
   IMLARCO - one type system for the whole site
   Loaded after master7d7d.css (and style-ar.css on the Arabic pages).

   English   headings / display : Roboto Slab   (self-hosted, /fonts)
             body / UI          : Roboto        (self-hosted, /fonts)
   Arabic    everything         : Cairo         (headings 700, body 400/500)

   Older pages ask for a Helvetica-first stack (which lands on Arial for most
   visitors) and some newer sections used Playfair Display / Lora. Both are
   mapped onto the two faces above so every page reads the same.
   Icons (<i>, Font Awesome, Bootstrap icons, lucide <svg>) are never touched.
   ========================================================================== */

:root {
	--imx-font-body: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
	--imx-font-head: "Roboto Slab", Georgia, "Times New Roman", Times, serif;
	--imx-font-ar: 'Cairo', "Segoe UI", Tahoma, sans-serif;
}

/* ---------- 1. body / UI ---------- */
html body,
html body p,
html body li,
html body dd,
html body dt,
html body td,
html body th,
html body label,
html body input,
html body select,
html body textarea,
html body button,
html body a,
html body strong,
html body em,
html body small,
html body figcaption,
html body span,
html body div,
html body [class]:not(i):not(svg):not([class*="fa-"]):not([class*="bi-"]):not([class*="icon"]) {
	font-family: var(--imx-font-body) !important;
}

/* ---------- 2. headings / display ---------- */
html body h1,
html body h2,
html body h3,
html body h4,
html body h5,
html body h6,
html body blockquote,
html body [class]:not(i):not(svg):not([class*="fa-"]):not([class*="bi-"]):not([class*="icon"]):is(h1, h2, h3, h4, h5, h6, blockquote,
	.c-hero__heading, .c-hero__subheading, .hero-welcome-text, .footer-premium-heading,
	.country-grid-section__title, .country-card__title, .service-image-card__headline,
	.imx-claim__title, .imx-claim__index, .imx-claim__quote,
	.vshow__title, .pub-hero__edition, .pub-quote, .pub-standard__statement,
	.pub-download__edition, .pub-card__edition) {
	font-family: var(--imx-font-head) !important;
}

html body .vshow__panel h3,
html body .pub h1,
html body .pub h2,
html body .pub h3,
html body .pub-quote blockquote p,
html body .pub-topics li::before {
	font-family: var(--imx-font-head) !important;
}

/* headings keep a calm, non-italic voice everywhere */
html body .pub-quote blockquote p,
html body .imx-claim__quote {
	font-style: normal !important;
}

/* small, spaced labels stay in the UI face */
html body .pub__eyebrow,
html body .pub-card__series,
html body .pub-citation strong,
html body .vshow__eyebrow,
html body .vshow__item-title,
html body .vshow__item-meta,
html body .vshow__side-title,
html body .vshow__time,
html body .vshow__badge,
html body .country-grid-section__eyebrow,
html body .badge-category,
html body .badge-location {
	font-family: var(--imx-font-body) !important;
}

/* ---------- 3. Arabic ---------- */
html[dir="rtl"] body,
html[dir="rtl"] body p,
html[dir="rtl"] body li,
html[dir="rtl"] body a,
html[dir="rtl"] body span,
html[dir="rtl"] body div,
html[dir="rtl"] body button,
html[dir="rtl"] body input,
html[dir="rtl"] body select,
html[dir="rtl"] body textarea,
html[dir="rtl"] body label,
html[dir="rtl"] body td,
html[dir="rtl"] body th,
html[dir="rtl"] body [class]:not(i):not(svg):not([class*="fa-"]):not([class*="bi-"]):not([class*="icon"]) {
	font-family: var(--imx-font-ar) !important;
}

html[dir="rtl"] body h1,
html[dir="rtl"] body h2,
html[dir="rtl"] body h3,
html[dir="rtl"] body h4,
html[dir="rtl"] body h5,
html[dir="rtl"] body h6,
html[dir="rtl"] body blockquote,
html[dir="rtl"] body [class]:not(i):not(svg):not([class*="fa-"]):not([class*="bi-"]):not([class*="icon"]):is(h1, h2, h3, h4, h5, h6, blockquote,
	.c-hero__heading, .hero-welcome-text, .footer-premium-heading, .country-grid-section__title,
	.country-card__title, .imx-claim__title, .vshow__title, .pub-quote) {
	font-family: var(--imx-font-ar) !important;
	font-weight: 700;
	letter-spacing: 0 !important;
}

/* Latin words inside Arabic pages (IMLARCO, ICC 2009, PDF …) keep the Latin face */
html[dir="rtl"] body [lang="en"],
html[dir="rtl"] body [dir="ltr"] {
	font-family: var(--imx-font-body) !important;
}

/* Arabic needs a little more line height than the Latin default */
html[dir="rtl"] body p,
html[dir="rtl"] body li,
html[dir="rtl"] body .description {
	line-height: 1.9;
}
