/* ==========================================================================
   Euphoria Plaza — Arabic typography (loaded on /ar/ only)
   Display and headings: Alexandria. Text and labels: Cairo.
   Both are variable fonts, 100–900 in a single file per script.
   ========================================================================== */

@font-face {
	font-family: "Cairo";
	font-style: normal;
	font-weight: 200 1000;
	font-display: swap;
	src: url(../fonts/cairo-arabic-variable.woff2) format("woff2-variations");
	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: "Cairo";
	font-style: normal;
	font-weight: 200 1000;
	font-display: swap;
	src: url(../fonts/cairo-latin-variable.woff2) format("woff2-variations");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Alexandria";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url(../fonts/alexandria-arabic-variable.woff2) format("woff2-variations");
	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: "Alexandria";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url(../fonts/alexandria-latin-variable.woff2) format("woff2-variations");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- font stack ---------- */

html[lang="ar"],
.eu-ar,
body.eu-ar {
	--wp--preset--font-family--urbanist: "Cairo", "Segoe UI", sans-serif;
	--wp--preset--font-family--dm-mono: "Alexandria", "Cairo", sans-serif;
	--eu-ar-display: "Alexandria", "Cairo", sans-serif;
}

html[lang="ar"] body,
.eu-ar { font-family: "Cairo", "Segoe UI", sans-serif; }

html[lang="ar"] :where(h1, h2, h3, h4, h5),
html[lang="ar"] .eu-display,
html[lang="ar"] .eu-h2,
html[lang="ar"] .eu-h3,
html[lang="ar"] .eu-stmt,
html[lang="ar"] .eu-fig__v,
html[lang="ar"] .eu-uhero__t,
html[lang="ar"] .eu-uhero__code,
html[lang="ar"] .eu-foot__cta,
html[lang="ar"] .eu-closer,
html[lang="ar"] .eu-marquee,
html[lang="ar"] .eu-404 h1 { font-family: var(--eu-ar-display); }

/* ---------- Arabic never gets uppercase or letter-spacing ---------- */

html[lang="ar"] * { text-transform: none !important; }
html[lang="ar"] :where(.eu-eyebrow, .eu-crumb, .eu-mode, .eu-lang, .eu-nav__a, .eu-btn, .eu-tile__meta, .eu-fig__k, .eu-card__n, .eu-grid.is-labelled strong, .eu-legend strong, .eu-menu__nav a span, .eu-mega a b, .eu-hint, .eu-filter button) { letter-spacing: 0; }
html[lang="ar"] :where(.eu-display, .eu-h2, .eu-stmt, .eu-closer, .eu-marquee, .eu-uhero__t, .eu-foot__cta, .eu-404 h1) { letter-spacing: 0; }

/* ---------- breathing room: Arabic needs a taller line ---------- */

html[lang="ar"] .eu-display { line-height: 1.12; font-weight: 800; }
html[lang="ar"] .eu-h2 { line-height: 1.18; font-weight: 800; }
html[lang="ar"] .eu-stmt,
html[lang="ar"] .eu-closer { line-height: 1.32; font-weight: 700; }
html[lang="ar"] .eu-foot__cta { line-height: 1.2; font-weight: 800; }
html[lang="ar"] :where(p, li, dd, .eu-lede) { line-height: 1.85; }
html[lang="ar"] .eu-eyebrow { font-size: 12px; font-weight: 500; }
html[lang="ar"] .eu-marquee { line-height: 1.25; font-weight: 800; }
html[lang="ar"] .eu-hero__body .eu-display { font-size: clamp(30px, 10.5cqi, 84px); }
html[lang="ar"] .eu-uhero__code { letter-spacing: 0; }
html[lang="ar"] .eu-u { font-size: .4em; margin-inline-start: 5px; margin-inline-end: 0; }

/* Latin fragments inside Arabic text (unit codes, m², brand names) keep their rhythm */
html[lang="ar"] .eu-uhero__code,
html[lang="ar"] .eu-tile__no,
html[lang="ar"] .eu-card__n,
html[lang="ar"] .eu-fig__v,
html[lang="ar"] .eu-filter button sup,
html[lang="ar"] .eu-uspec__v:not(.is-text),
html[lang="ar"] .eu-tile__meta,
html[lang="ar"] .eu-specs li > span,
html[lang="ar"] .eu-plan-tile__t { direction: ltr; unicode-bidi: isolate; }
html[lang="ar"] .eu-uspec__v:not(.is-text),
html[lang="ar"] .eu-tile__meta { text-align: right; }

/* ---------- direction details rtlcss cannot infer ---------- */

html[lang="ar"] .eu-marquee__row,
html[lang="ar"] .eu-marquee__in { direction: ltr; }
html[lang="ar"] .eu-marquee__in > * { direction: rtl; }
html[lang="ar"] .eu-crumb,
html[lang="ar"] .eu-unav,
html[lang="ar"] .eu-row,
html[lang="ar"] .eu-ctas { flex-wrap: wrap; }
html[lang="ar"] .eu-btn.is-back svg,
html[lang="ar"] .eu-foot__cta span svg,
html[lang="ar"] .eu-btn svg { transform: scaleX(-1); }
html[lang="ar"] .eu-mega__all { direction: rtl; }
html[lang="ar"] .eu-top span { display: inline-block; }
html[lang="ar"] .eu-specs li { text-align: left; }
html[lang="ar"] .eu-specs strong { text-align: right; }

/* ---------- admin / editor ---------- */

.editor-styles-wrapper .eu-ar,
.block-editor-writing-flow[dir="rtl"] { font-family: "Cairo", sans-serif; }
