/* Self-hosted webfonts (H-29): the render-blocking fonts.googleapis.com
 * stylesheet sat on the critical path in front of a text LCP, and the
 * CSP-safe async alternatives all break under the P-8 header flip.
 * Files in public/fonts/, latin + latin-ext subsets (the rupee sign lives
 * only in latin-ext, so neither can be dropped). Source: Google Fonts (OFL).
 *
 * DECISIONS_LOG 18.330 (B-9): Bricolage Grotesque is the full variable file
 * (opsz 12-96, wdth 75-100, wght 200-800), so the homepage's condensed 800
 * headlines render; the faces below declare that range so the browser uses
 * it instead of clamping. Regenerate with the css2 URL
 * family=Bricolage+Grotesque:opsz,wdth,wght@12..96,75..100,400..800.
 * Kalam 400 replaced Caveat (css2 family=Kalam:wght@400). Space Mono is
 * unchanged; it now sets only numbers, times, prices and codes. */

/* Bricolage Grotesque — latin-ext */
@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 400 800;
  font-stretch: 75% 100%;
  font-display: optional;
  src: url(/fonts/bricolage-grotesque-latin-ext.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;
}

/* Bricolage Grotesque — latin */
@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 400 800;
  font-stretch: 75% 100%;
  font-display: optional;
  src: url(/fonts/bricolage-grotesque-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;
}

/* Kalam 400 — latin-ext */
@font-face {
  font-family: 'Kalam';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/kalam-400-latin-ext.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;
}

/* Kalam 400 — latin */
@font-face {
  font-family: 'Kalam';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/kalam-400-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;
}

/* Space Mono — latin-ext */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/space-mono-400-latin-ext.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;
}

/* Space Mono — latin */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/space-mono-400-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;
}

/* Space Mono — latin-ext */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/space-mono-700-latin-ext.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;
}

/* Space Mono — latin */
@font-face {
  font-family: 'Space Mono';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/space-mono-700-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;
}

/* HOME-V6 condensed hero: local fallback advance widths match the display
 * face at wdth 78 / opsz 96. Explicit hero line-height supplies line boxes. */
@font-face {
  font-family: 'Bricolage Hero Fallback';
  src: local('Arial Bold'), local('Liberation Sans Bold');
  font-weight: 800;
  size-adjust: 73.85%;
}
@font-face {
  font-family: 'Bricolage Hero Fallback';
  src: local('Arial'), local('Liberation Sans');
  font-weight: 420;
  size-adjust: 65.4%;
}

/* Body fallback metrics for Bricolage at its normal body width. The same face
 * is used by every static document while the preloaded latin subset arrives.
 * Measured with fontTools: Bricolage opsz=16/wght=500/wdth=100 x-height
 * over Liberation Sans (Arial-compatible), hhea ascent/descent, zero line gap. */
@font-face {
  font-family: 'Bricolage Body Fallback';
  src: local('Arial'), local('Liberation Sans');
  font-weight: 400 800;
  size-adjust: 98.43%;
  ascent-override: 94.49%;
  descent-override: 27.43%;
  line-gap-override: 0%;
}
