/* CRVITAE web fonts.
   Cairo and JetBrains Mono are VARIABLE fonts. This file used to declare 24
   @font-face rules -- six Cairo weights and three mono weights, each across
   several unicode-range subsets -- and every one of those weights pointed at a
   byte-identical file under a different name. 36 files on disk hash to 9
   distinct contents. A first visit therefore fetched 350 KB of fonts on the
   English page and 441 KB on /ar/, of which only 96 KB was distinct: the HTTP
   cache cannot dedupe two URLs.

   Five rules now, one per family per subset, with the weight declared as the
   font's real variable range. The browser fetches each file once and
   interpolates every weight from it. Cairo's wght axis is 200-1000; JetBrains
   Mono's is 100-800, so the mono range stops at 700 -- the weights actually
   used -- and never asks for a weight the axis cannot reach.

   Arabic subset first: it is the primary market and the one /ar/ needs. */
@font-face{font-family:'Cairo';font-style:normal;font-weight:400 900;font-display:swap;src:url('../assets/fonts/Cairo-400-0.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, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;}
@font-face{font-family:'Cairo';font-style:normal;font-weight:400 900;font-display:swap;src:url('../assets/fonts/Cairo-400-1.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cairo';font-style:normal;font-weight:400 900;font-display:swap;src:url('../assets/fonts/Cairo-400-2.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:'JetBrains Mono';font-style:normal;font-weight:400 700;font-display:swap;src:url('../assets/fonts/JetBrainsMono-400-22.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 700;font-display:swap;src:url('../assets/fonts/JetBrainsMono-400-23.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;}

/* ---------------------------------------------------------------------------
   Fraunces — the Latin display face, and the one place this site diverges from
   DESIGN.md's one-family rule. That rule exists because Cairo carries Arabic
   and Latin in the same voice, which matters in a product where Arabic is not
   a translation layer. The divergence is recorded in DESIGN.md; the reason it
   is safe here is metric, not taste:

       cap height   Fraunces 0.700 em   Cairo 0.700 em
       x-height     Fraunces 0.482 em   Cairo 0.500 em

   The two faces set to the same optical size at the same font-size, so a
   headline does not change weight or apparent scale when a Latin run sits
   inside an Arabic line — which is exactly what "CRVITAE يكتبها" is.

   ONE WEIGHT, on purpose. The file carries wght pinned at 700 and only the
   optical-size axis left variable (32-144). Emphasis in display type comes
   from size, colour and optical size — never from a second weight. Asking for
   any other weight would get a synthesised one, so every rule that uses
   --display also sets font-synthesis-weight: none, and a mistake degrades to
   "not bolder" instead of a smeared faux bold.

   33 KB: 121 KB of Google's latin cut, with SOFT pinned to 0, WONK pinned to 1
   (the wonky cut — it is what gives the face its voice at display size), the
   weight axis instanced out, and the glyph set cut to the ranges below.
   Rebuild it with tools/build/fonts-display.sh.

   The unicode-range is the subset's real coverage, so /ar/ fetches this only
   for its Latin runs and Arabic goes straight to Cairo without a miss. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/Fraunces-700.woff2') format('woff2');unicode-range:U+0000-00FF, U+0152-0153, U+2010-2015, U+2018-201D, U+2022, U+2026, U+2030, U+2039-203A, U+2044, U+2122, U+2190-2193, U+2212, U+20AC;}
