/*
 * library/brand/fonts.css — self-hosted @font-face declarations for the GLE brand.
 *
 * General Sans — Fontshare (Indian Type Foundry), ITF Free Font License.
 *   Files: ./fonts/*.woff2, Fontshare's own web package downloaded 2026-09-15,
 *   UNMODIFIED (not subset, not converted — modification is restricted by the
 *   license). Provenance and re-download commands: ./fonts/README.md;
 *   license record: ./fonts/LICENSE-general-sans.txt.
 *
 * Nulshock (Typodermic) has NO @font-face here, and that is a design decision
 * rather than a licensing one — the studio's coverage does include web.
 * The 2026-09-15 ruling keeps it to the logotype,
 * and the logotype ships as vector artwork, so no surface needs it as a webfont.
 * It falls back to General Sans Bold if anything asks.
 *   Their fallback stacks live in tokens.json (typography.family.*.stack) and
 *   reach surfaces through the generated tokens.css — nothing to declare here.
 *
 * Paths are relative to this file (library/brand/). Load this sheet before any
 * sheet that sets font-family: "General Sans".
 */

@font-face {
  font-family: "General Sans";
  font-weight: 300;
  font-style: normal;
  font-display: swap;
  src: url("fonts/GeneralSans-Light.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 300;
  font-style: italic;
  font-display: swap;
  src: url("fonts/GeneralSans-LightItalic.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("fonts/GeneralSans-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 400;
  font-style: italic;
  font-display: swap;
  src: url("fonts/GeneralSans-Italic.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url("fonts/GeneralSans-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 500;
  font-style: italic;
  font-display: swap;
  src: url("fonts/GeneralSans-MediumItalic.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  src: url("fonts/GeneralSans-Semibold.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 600;
  font-style: italic;
  font-display: swap;
  src: url("fonts/GeneralSans-SemiboldItalic.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("fonts/GeneralSans-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "General Sans";
  font-weight: 700;
  font-style: italic;
  font-display: swap;
  src: url("fonts/GeneralSans-BoldItalic.woff2") format("woff2");
}

/* Neue Montreal — o registro alternativo, auto-hospedado.
   Quatro pesos com itálico (300/400/500/700), do kit web que o estúdio enviou em
   2026-09-16, já em woff2. Arquivos da Pangram Pangram, versão 1.000, os mesmos
   do .otf que veio com a identidade. O uso na web é coberto pelo acordo que o
   estúdio mantém com as fundições, confirmado por escrito.
   Duas limitações do arquivo valem como regra de uso, e valem para TODOS os oito:
     - não tem º nem ª, então não componha ordinal do português nesta face;
     - algarismos proporcionais, sem tabulares — ela não resolve o furo dos números. */
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-LightItalic.woff2") format("woff2");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-Italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-MediumItalic.woff2") format("woff2");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Montreal";
  src: url("fonts/NeueMontreal-BoldItalic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
