/* ==========================================================================
   Self-hosted fonts — eliminates Google Fonts CDN dependency.
   Fallback @font-face declarations use metric overrides (size-adjust,
   ascent-override, descent-override) to match the real font's dimensions,
   preventing layout shift (CLS) when the web font loads.
   ========================================================================== */

/* --- Fraunces (headings) ------------------------------------------------- */

@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(/fonts/fraunces-latin.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+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Fraunces Fallback';
  src: local('Georgia');
  size-adjust: 105.2%;
  ascent-override: 93%;
  descent-override: 24.2%;
  line-gap-override: 0%;
}

/* --- Work Sans (body) ---------------------------------------------------- */

@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/worksans-latin.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+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Work Sans Fallback';
  src: local('Arial');
  size-adjust: 111.9%;
  ascent-override: 83.1%;
  descent-override: 21.7%;
  line-gap-override: 0%;
}

/* --- Noto Nastaliq Urdu (Urdu script) ------------------------------------ */

@font-face {
  font-family: 'Noto Nastaliq Urdu';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/nastaliq-arabic.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: 'Noto Nastaliq Urdu';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/nastaliq-latin.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+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Noto Nastaliq Urdu Fallback';
  src: local('Times New Roman');
  size-adjust: 113.5%;
  ascent-override: 167.8%;
  descent-override: 52.5%;
  line-gap-override: 0%;
}

/* --- Noto Naskh Arabic (Arabic script fallback) -------------------------- */

@font-face {
  font-family: 'Noto Naskh Arabic';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/naskh-arabic.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: 'Noto Naskh Arabic';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/naskh-latin.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+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Noto Naskh Arabic Fallback';
  src: local('Times New Roman');
  size-adjust: 116.9%;
  ascent-override: 91.4%;
  descent-override: 54.2%;
  line-gap-override: 0%;
}

/* --- Material Symbols Rounded (icons) ------------------------------------ */

@font-face {
  font-family: 'Material Symbols Rounded';
  font-style: normal;
  font-weight: 100 700;
  font-display: swap;
  src: url(/fonts/material-symbols-rounded.woff2) format('woff2');
}
