/* SeekersGuidance v4 — design tokens.
   Fonts are SELF-HOSTED (assets/fonts/, relative paths). LICENSING (see
   assets/fonts/LICENSING.md) — ALL LICENSED WEB as of the 2026-06-21 delivery
   (Masood placed the full licensed web set in Drive; installed here, eval files retired):
   • Lyon Text (Commercial Type) — LICENSED WEB woff2: Regular/Semibold/Bold. ✓
   • Söhne (Klim) — LICENSED WEB woff2: Buch/Kräftig/Halbfett. ✓
   • Quarto (H&Co) — LICENSED WEB woff2: Light/Medium/Semibold/Bold/Black. ✓ (eval OTFs retired)
   • 29LT Zarid Display / Riwaya / Bukra — LICENSED WEB woff2: Regular + Bold each. ✓ (eval TTF/trial retired)
   • Reem Kufi — LICENSED WEB woff (the إرشاد wordmark): Regular + Bold. ✓
   • KFGQPC (Quran) — official WEB woff2. ✓ (bright line — never subset/restyle)
   unicode-range split (Latin vs Arabic) APPLIED 2026-06-25 — the browser fetches only
   the active script's faces; first-paint faces are preloaded per-language in functions.php.
   KFGQPC (Quran) deliberately carries NO unicode-range — the bright line: never touch it.
   TODO(perf): true glyph-subsetting of the woff2 files is a separate, licensing-aware pass. */

/* ---- Latin faces ---- */
@font-face{font-family:"Lyon Text";src:url("fonts/LyonText-Regular.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Lyon Text";src:url("fonts/LyonText-Semibold.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Lyon Text";src:url("fonts/LyonText-Bold.woff2") format("woff2");font-weight:700;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Sohne";src:url("fonts/Sohne-Buch.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Sohne";src:url("fonts/Sohne-Kraftig.woff2") format("woff2");font-weight:500;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Sohne";src:url("fonts/Sohne-Halbfett.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
/* Quarto — EN display serif. LICENSED WEB woff2, all cuts (H&Co web kit). */
@font-face{font-family:"Quarto";src:url("fonts/Quarto-Light.woff2") format("woff2");font-weight:300;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Quarto";src:url("fonts/Quarto-Medium.woff2") format("woff2");font-weight:400 500;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Quarto";src:url("fonts/Quarto-Semibold.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Quarto";src:url("fonts/Quarto-Bold.woff2") format("woff2");font-weight:700;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
@font-face{font-family:"Quarto";src:url("fonts/Quarto-Black.woff2") format("woff2");font-weight:800 900;font-display:swap;unicode-range:U+0000-052F, U+1E00-22FF, U+2C60-2C7F, U+A720-A7FF, U+FB00-FB4F, U+FE20-FE2F, U+FEFF, U+FFFD}
/* ---- Arabic faces (self-hosted; LICENSED WEB woff2 — 29LT, 2026-06-21) ---- */
@font-face{font-family:"Zarid Display";src:url("fonts/29LT-Zarid-Display-Regular.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
@font-face{font-family:"Zarid Display";src:url("fonts/29LT-Zarid-Display-Bold.woff2") format("woff2");font-weight:700;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
@font-face{font-family:"Riwaya";src:url("fonts/29LT-Riwaya-Regular.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
@font-face{font-family:"Riwaya";src:url("fonts/29LT-Riwaya-Bold.woff2") format("woff2");font-weight:700;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
@font-face{font-family:"Bukra";src:url("fonts/29LT-Bukra-Regular.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
@font-face{font-family:"Bukra";src:url("fonts/29LT-Bukra-Bold.woff2") format("woff2");font-weight:700;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
/* Reem Kufi — the إرشاد wordmark (licensed web woff). */
@font-face{font-family:"Reem Kufi";src:url("fonts/ReemKufi-Regular.woff") format("woff");font-weight:400;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
@font-face{font-family:"Reem Kufi";src:url("fonts/ReemKufi-Bold.woff") format("woff");font-weight:700;font-display:swap;unicode-range:U+0600-06FF, U+0750-077F, U+0870-08FF, U+FB50-FDFF, U+FE70-FEFF, U+200C-200F}
/* ---- Quran (certified mushaf) — KFGQPC Uthmanic Script Hafs (free/legitimate) ----
   THE BRIGHT LINE: production serves the official KFGQPC WOFF2 with QPC-encoded text
   (one glyph per word) — never subset/modified, never an editorial naskh. This OTF is
   the Unicode build for dev; swap the QPC WOFF2 + encoding for production. */
@font-face{font-family:"KFGQPC HAFS";src:url("fonts/KFGQPC-Uthmanic-HAFS.woff2") format("woff2");font-weight:400;font-display:swap}

:root{
  /* Color */
  --astral:#30708E; --astral-700:#22506A;
  --gamboge:#ECA608;      /* ACCENT / large-display ONLY — never text */
  --gold-ink:#8F6604;     /* the AA-safe gold for any gold TEXT */
  --ink:#0F1B22; --muted:#4A5A63; --subtle:#5F656E; /* subtle darkened (was #8A9098) for WCAG AA: ~4.7:1 even on the warm cream backgrounds; still lighter than --muted */
  --paper:#FBF7EF; --paper-alt:#F8F4EC; --card:#FFFFFF; --rule:#E5D3B3; --hair:rgba(48,112,142,.16);

  /* Three type roles per script. EN is the default; the [lang=ar] block swaps them. */
  --font-display:"Quarto","Lyon Text",Georgia,serif;   /* Quarto = real face (licensed); Lyon = visible stand-in here */
  --font-read:"Lyon Text",Georgia,serif;
  --font-ui:"Sohne",system-ui,-apple-system,sans-serif;
  --font-quran:"KFGQPC HAFS",serif;   /* mushaf ONLY — never editorial naskh, never restyled; same in both directions */

  /* Reading rhythm */
  --lh-read:1.62; --lh-display:1.12; --measure:68ch;

  /* Space + shape */
  --s1:8px; --s2:12px; --s3:16px; --s4:24px; --s5:32px; --s6:48px; --s7:64px;
  --radius:2px;            /* square, ruled boxes */
}

/* One source, both directions: the Arabic view re-points the SAME role tokens. */
:root[lang="ar"]{
  --font-display:"Zarid Display","Riwaya",serif;
  --font-read:"Riwaya",serif;
  --font-ui:"Bukra",system-ui,sans-serif;
  --lh-read:2.0; --lh-display:1.34;   /* naskh + harakat want more leading */
}
