/* ==========================================================================
   VP Design System — Font Loading
   --------------------------------------------------------------------------
   Local @font-face only. No CDN, no Google Fonts link.
   Vitor owns these files; they live in ../fonts/ next to this stylesheet.

   Role pairing (the "why" is documented in docs/foundations/typography.md):
     Neue Montreal — DISPLAY tier only (h1, h2). Ships 2 weights (300/700),
                     which is exactly enough for a tier where size, not weight,
                     encodes hierarchy.
     Onest         — UI tier (h3-h6, body, labels, controls). Variable 100-900,
                     which is what a tier needs when weight IS the hierarchy.

   font-display: swap on both — text must be readable before the face lands.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Neue Montreal — display. Personal-use license (see
   fonts/NeueMontreal-Personal-license-agreement.txt). Commercial use requires
   a license from Pangram Pangram.
   -------------------------------------------------------------------------- */
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-LightItalic.otf') format('opentype');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Neue Montreal';
  src: url('../fonts/NeueMontreal-BoldItalic.otf') format('opentype');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

/* --------------------------------------------------------------------------
   Onest — UI. SIL Open Font License 1.1 (fonts/Onest-OFL.txt). Free to use,
   including commercially. This is why Onest carries every tier that ships.

   Variable file first: one request covers 100-900. The static faces below are
   the fallback for engines without `font-variation-settings` support, declared
   AFTER the variable face so a capable browser resolves the variable one.
   -------------------------------------------------------------------------- */
@font-face {
  font-family: 'Onest';
  src: url('../fonts/Onest-VariableFont_wght.ttf') format('truetype-variations');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Onest Static';
  src: url('../fonts/Onest-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Onest Static';
  src: url('../fonts/Onest-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Onest Static';
  src: url('../fonts/Onest-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* --------------------------------------------------------------------------
   Instrument Serif — editorial. Google Fonts / SIL OFL 1.1, free, commercial
   OK (fonts/Instrument-Serif-OFL.txt). Third voice, deliberately narrow:
   pull-quote only, ~2-3% of usage. Not a display or UI substitute — see
   docs/foundations/typography.md and docs/meta/open-questions.md (Q7).

   Scope as of 2026-07-27: approved for content/Instagram carousel use.
   NOT yet wired into index.html / design-system.html — pending Vitor's call
   on whether it extends to the live site (e.g. testimonial pull-quotes).
   -------------------------------------------------------------------------- */
@font-face {
  font-family: 'Instrument Serif';
  src: url('../fonts/InstrumentSerif-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Instrument Serif';
  src: url('../fonts/InstrumentSerif-Italic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
