/*
 * printman-arabic-fonts.css
 * -----------------------------------------------------------------------------
 * Arabic typeface for printmanjo.com.
 *
 * FACE CHOICE — Tajawal.
 *   The theme's Latin face is **Jost** (a geometric sans in the Futura lineage;
 *   557 of the stylesheet's weight declarations are 500, 129 are 400). Tajawal is
 *   the closest Arabic counterpart: geometric skeleton, low stroke contrast, open
 *   apertures, similar x-height-to-cap relationship. Cairo is the usual default
 *   pick but is more humanist and rounder, and reads noticeably softer next to
 *   Jost. IBM Plex Sans Arabic is a neo-grotesque and fights Jost's geometry.
 *   If the client rejects Tajawal, Cairo is the fallback — same wiring, swap the
 *   files and the family name.
 *
 * WIRING — this file does NOT introduce a new font-family name.
 *   Instead it adds Arabic-range @font-face rules to the families the site
 *   ALREADY names ("Jost", "Playfair Display"). A family may be composed of many
 *   @font-face rules with disjoint unicode-ranges, so every existing
 *   `font-family: "Jost", Sans-serif` declaration — including the hundreds emitted
 *   inline by Elementor and the theme options, which we do not control — starts
 *   rendering Arabic in Tajawal with no edit to any of them.
 *
 *   Consequence, and the reason this approach was chosen: Latin runs inside Arabic
 *   pages ("Printman", "inkredible", "CMYK", "A4") keep the BRAND face, because
 *   the Latin range still resolves to Jost. A naive `font-family: Tajawal` override
 *   would have restyled the brand's own name.
 *
 * SUBSET — Arabic only, 3 weights, 36 KB total.
 *   The Latin subsets of Tajawal were downloaded and then deleted on purpose:
 *   shipping them would give the browser a second candidate for Latin glyphs and
 *   reintroduce exactly the brand-face problem above.
 *
 * Range source: Google Fonts' own `arabic` subset declaration, copied verbatim
 * rather than hand-written, so it stays correct for presentation forms and
 * Arabic-Indic digits.
 * -----------------------------------------------------------------------------
 */

@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/tajawal-arabic-400.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: 'Jost';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/tajawal-arabic-500.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: 'Jost';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/tajawal-arabic-700.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;
}

/*
 * Playfair Display is used for a handful of display headings. Arabic has no
 * didone; pairing a high-contrast Latin serif with an Arabic naskh would be a
 * design decision, not a technical one. Tajawal 700 is used here so headings stay
 * legible and on-brand rather than dropping to a system font.
 * If the client wants a distinct display face for Arabic headings, Amiri is the
 * conventional answer — add it as a fourth file and point these three rules at it.
 */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/tajawal-arabic-500.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: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/tajawal-arabic-700.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;
}

/*
 * Arabic needs a little more leading than Jost's defaults allow — ascenders and
 * descenders in Arabic are longer, and Tajawal at Jost's line-height clips visually
 * at body sizes. Scoped to the RTL document so it can never affect the English site.
 * Deliberately NOT applied to headings: display sizes do not need it and it would
 * loosen the hero.
 */
:root[dir='rtl'] body,
:root[dir='rtl'] p,
:root[dir='rtl'] li {
  line-height: 1.85;
}

/* Arabic has no uppercase. `text-transform: uppercase` is a no-op on Arabic glyphs
 * but still applies to the Latin runs inside an Arabic button label, which then
 * shouts mid-sentence. Neutralised for the buttons and nav items the theme
 * uppercases. */
:root[dir='rtl'] .elementor-button,
:root[dir='rtl'] .button,
:root[dir='rtl'] .haru-nav-menu a {
  text-transform: none;
}
