/*
 * ADGC 2026 — fonts.css
 *
 * Self-contained font declarations.
 * Fonts are loaded directly from the Google Fonts static CDN (fonts.gstatic.com)
 * with font-display: block to prevent any flash/swap.
 *
 * The @font-face fallback descriptors (size-adjust, ascent-override etc.)
 * calibrate Impact and system-ui to match the metrics of Bebas Neue and DM Sans
 * so that if the network is slow, the layout does not reflow at all.
 */

/* ── Bebas Neue (display) ─────────────────────────────────────────────────── */

/* Fallback — tuned to match Bebas Neue metrics so no reflow on swap */
@font-face {
  font-family: 'Bebas Neue Fallback';
  font-style: normal;
  font-weight: 400;
  src: local('Impact'), local('Arial Narrow Bold');
  size-adjust: 108%;
  ascent-override: 91%;
  descent-override: 19%;
  line-gap-override: 0%;
}

/* latin-ext */
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('https://fonts.gstatic.com/s/bebasneue/v9/JTUSjIg69CK48gW7PXoo9Wdhyzbi.woff2') format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,
                 U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('https://fonts.gstatic.com/s/bebasneue/v9/JTUSjIg69CK48gW7PXoo9Wlhyw.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,
                 U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ── DM Sans (body) ───────────────────────────────────────────────────────── */

/* Fallback — tuned to match DM Sans metrics */
@font-face {
  font-family: 'DM Sans Fallback';
  font-style: normal;
  font-weight: 300 600;
  src: local('-apple-system'), local('BlinkMacSystemFont'), local('Segoe UI'),
       local('Helvetica Neue'), local('Arial');
  size-adjust: 100%;
  ascent-override: 95%;
  descent-override: 25%;
  line-gap-override: 0%;
}

/* weight 300 normal */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 300;
  font-display: block;
  src: url('https://fonts.gstatic.com/s/dmsans/v14/rP2Hp2ywxg089UriCZa4ET-DNl0.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,
                 U+2212, U+2215, U+FEFF, U+FFFD;
}

/* weight 400 normal */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('https://fonts.gstatic.com/s/dmsans/v14/rP2Hp2ywxg089UriCZa4ET-DNl0.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,
                 U+2212, U+2215, U+FEFF, U+FFFD;
}

/* weight 600 normal */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: block;
  src: url('https://fonts.gstatic.com/s/dmsans/v14/rP2Hp2ywxg089UriCZa4ET-DNl0.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,
                 U+2212, U+2215, U+FEFF, U+FFFD;
}

/* weight 300 italic */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 300;
  font-display: block;
  src: url('https://fonts.gstatic.com/s/dmsans/v14/rP2Fp2ywxg089UriCZaIGDWCBl0.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,
                 U+2212, U+2215, U+FEFF, U+FFFD;
}
