/* ============================================================================
   SERVE — self-hosted brand fonts (@font-face)
   Guardian Egyptienne — licensed slab serif. Family name "Guardian Egyp"
   matches the Figma token family (--font-family-body-2 / --font-family-heading-2).
   16 files: 8 weights × roman/italic.
   ============================================================================ */

/* Hairline 100 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 100; font-display: swap; src: url("./Guardian_Egyp-Hairline.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 100; font-display: swap; src: url("./Guardian_Egyp-Hairline_It.otf") format("opentype"); }

/* Thin 200 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 200; font-display: swap; src: url("./Guardian_Egyp-Thin.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 200; font-display: swap; src: url("./Guardian_Egyp-Thin_It.otf") format("opentype"); }

/* Light 300 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 300; font-display: swap; src: url("./Guardian_Egyp-Light.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 300; font-display: swap; src: url("./Guardian_Egyp-Light_It.otf") format("opentype"); }

/* Regular 400 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 400; font-display: swap; src: url("./Guardian_Egyp-Regular.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 400; font-display: swap; src: url("./Guardian_Egyp-Regular_It.otf") format("opentype"); }

/* Medium 500 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 500; font-display: swap; src: url("./Guardian_Egyp-Medium.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 500; font-display: swap; src: url("./Guardian_Egyp-Medium_It.otf") format("opentype"); }

/* Semibold 600 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 600; font-display: swap; src: url("./Guardian_Egyp-Semibold.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 600; font-display: swap; src: url("./Guardian_Egyp-Semibold_It.otf") format("opentype"); }

/* Bold 700 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 700; font-display: swap; src: url("./Guardian_Egyp-Bold.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 700; font-display: swap; src: url("./Guardian_Egyp-Bold_It.otf") format("opentype"); }

/* Black 900 */
@font-face { font-family: "Guardian Egyp"; font-style: normal; font-weight: 900; font-display: swap; src: url("./Guardian_Egyp-Black.otf") format("opentype"); }
@font-face { font-family: "Guardian Egyp"; font-style: italic; font-weight: 900; font-display: swap; src: url("./Guardian_Egyp-Black_It.otf") format("opentype"); }

/* ----------------------------------------------------------------------------
   LFT Etica — licensed sans. Family name "LFT Etica" matches the Figma token
   (--font-family-label-2 / --font-family-numeric-2). 6 weights × roman/italic.
   ---------------------------------------------------------------------------- */

/* Light 300 */
@font-face { font-family: "LFT Etica"; font-style: normal; font-weight: 300; font-display: swap; src: url("./LFT_Etica_Light.otf") format("opentype"); }
@font-face { font-family: "LFT Etica"; font-style: italic; font-weight: 300; font-display: swap; src: url("./LFT_Etica_LightItalic.otf") format("opentype"); }

/* Book 400 */
@font-face { font-family: "LFT Etica"; font-style: normal; font-weight: 400; font-display: swap; src: url("./LFT_Etica_Book.otf") format("opentype"); }
@font-face { font-family: "LFT Etica"; font-style: italic; font-weight: 400; font-display: swap; src: url("./LFT_Etica_BookItalic.otf") format("opentype"); }

/* Regular 500 */
@font-face { font-family: "LFT Etica"; font-style: normal; font-weight: 500; font-display: swap; src: url("./LFT_Etica_Reg.otf") format("opentype"); }
@font-face { font-family: "LFT Etica"; font-style: italic; font-weight: 500; font-display: swap; src: url("./LFT_Etica_Italic.otf") format("opentype"); }

/* Semibold 600 */
@font-face { font-family: "LFT Etica"; font-style: normal; font-weight: 600; font-display: swap; src: url("./LFT_Etica_Semibold.otf") format("opentype"); }
@font-face { font-family: "LFT Etica"; font-style: italic; font-weight: 600; font-display: swap; src: url("./LFT_Etica_SemiboldItalic.otf") format("opentype"); }

/* Bold 700 */
@font-face { font-family: "LFT Etica"; font-style: normal; font-weight: 700; font-display: swap; src: url("./LFT_Etica_Bold.otf") format("opentype"); }
@font-face { font-family: "LFT Etica"; font-style: italic; font-weight: 700; font-display: swap; src: url("./LFT_Etica_BoldItalic.otf") format("opentype"); }

/* Extrabold 800 */
@font-face { font-family: "LFT Etica"; font-style: normal; font-weight: 800; font-display: swap; src: url("./LFT_Etica_Extrabold.otf") format("opentype"); }
@font-face { font-family: "LFT Etica"; font-style: italic; font-weight: 800; font-display: swap; src: url("./LFT_Etica_ExtraboldItalic.otf") format("opentype"); }

/* ----------------------------------------------------------------------------
   Lora — serif for Mediahuis documents & presentations ONLY (--font-mediahuis-body).
   Never Serve or any digital product UI. OFL-licensed, self-hosted.
   ---------------------------------------------------------------------------- */
@font-face { font-family: "Lora"; font-style: normal; font-weight: 400; font-display: swap; src: url("./Lora-Regular.ttf") format("truetype"); }
@font-face { font-family: "Lora"; font-style: italic; font-weight: 400; font-display: swap; src: url("./Lora-Italic.ttf") format("truetype"); }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 500; font-display: swap; src: url("./Lora-Medium.ttf") format("truetype"); }
@font-face { font-family: "Lora"; font-style: italic; font-weight: 500; font-display: swap; src: url("./Lora-MediumItalic.ttf") format("truetype"); }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 600; font-display: swap; src: url("./Lora-SemiBold.ttf") format("truetype"); }
@font-face { font-family: "Lora"; font-style: italic; font-weight: 600; font-display: swap; src: url("./Lora-SemiBoldItalic.ttf") format("truetype"); }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 700; font-display: swap; src: url("./Lora-Bold.ttf") format("truetype"); }
@font-face { font-family: "Lora"; font-style: italic; font-weight: 700; font-display: swap; src: url("./Lora-BoldItalic.ttf") format("truetype"); }

/* ----------------------------------------------------------------------------
   Helvetica Monospaced Pro — Subtext role (--font-subtext): mono metadata
   lines (IDs, codes, timestamps). Licensed, self-hosted.
   ---------------------------------------------------------------------------- */
@font-face { font-family: "Helvetica Monospaced Pro"; font-style: normal; font-weight: 400; font-display: swap; src: url("./HelveticaMonospacedPro-Regular.ttf") format("truetype"); }
