/* =============================================================================
   00-fonts.css: self-hosted web fonts for Diet Solution BD
   -----------------------------------------------------------------------------
   All files live in /public/fonts/ and are served from this origin, so there
   are no third-party requests. Subsets and unicode-range values are taken
   verbatim from the Google Fonts CSS2 API (Onest v11, Hind Siliguri v14,
   Newsreader v26).

   Families and licenses (all SIL Open Font License 1.1, https://openfontlicense.org).
   Each .woff2 keeps its copyright and license URL in the font's name table.
     Onest          Copyright 2021 The Onest Project Authors
                    (https://github.com/simpals/onest)
                    Files: onest-latin.woff2, onest-latin-ext.woff2
                    Variable weight axis 100-900. UI and body text.
     Hind Siliguri  Copyright (c) 2015 Indian Type Foundry
                    (info@indiantypefoundry.com)
                    Files: hind-siliguri-bn-400/500/600/700.woff2
                    Bengali subset only. Latin glyphs come from Onest.
                    Repaired: upstream 400/500/600 draw seven glyphs as broken
                    fragments: the digit one ১ (U+09E7) and the conjuncts
                    হ্র (as in হ্রাস), ন্ঠ, ন্জ, গ্দ্র, ল্দ্র and ল্ফ. In these three
                    files those glyphs were rebuilt from the correct 700
                    outlines, thinned to each weight's stroke, with the
                    headline set to the weight's own headline band, and given
                    a short hinting program that anchors their top to the
                    font's headline zone. Advance widths and every other
                    glyph are untouched. Modified versions are allowed by
                    OFL 1.1; see /public/fonts/OFL.txt. The ?v=3 on their URLs
                    makes browsers fetch the repaired files instead of a
                    cached copy.
     Newsreader     Copyright 2020 The Newsreader Project Authors
                    (https://github.com/productiontype/Newsreader)
                    Files: newsreader-latin.woff2, newsreader-latin-italic.woff2
                    Variable weight 400-700 plus an optical-size axis (6-72,
                    applied automatically). Display serif, use sparingly.
                    The latin-ext subset (87 KB) is left out on purpose.

   Suggested stacks:
     --font:         "Onest", "Hind Siliguri", system-ui, "Segoe UI", Roboto, sans-serif;
     --font-bn:      "Hind Siliguri", "Onest", system-ui, sans-serif;
     --font-display: "Newsreader", Georgia, "Hind Siliguri", serif;
   Onest's default digits are proportional ("1" is about half the width of
   "0"). Use font-variant-numeric: tabular-nums wherever numbers need to
   line up; Onest supports tnum.

   Bangla and Latin calibration (measured in headless Chrome, glyph ink tops
   in em units):
     Onest cap height ("H")              0.7075 at every weight
     Hind Siliguri matra top ("ক")       0.6425 (400), 0.650 (500),
                                         0.660 (600), 0.671 (700)
   size-adjust: 108% places the matra at about 98% of Onest's cap height at
   400 and about 102% at 700, which looked balanced in mixed specimens at
   12-28px. ascent-override and descent-override are given against the
   size-adjusted font (Chrome applies size-adjust to them), so Bangla uses
   Onest's line metrics: 0.97em ascent and 0.305em descent. Without these,
   a Bangla word in a line-height: normal box makes the line about 37%
   taller. With an explicit line-height the baseline position is unchanged.
   ========================================================================== */

/* ---- Onest (variable 100-900) -------------------------------------------- */
/* latin-ext */
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/public/fonts/onest-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;
}
/* latin */
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/public/fonts/onest-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;
}

/* ---- Hind Siliguri (Bengali subset, static 400/500/600/700) -------------- */
@font-face {
  font-family: "Hind Siliguri";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/public/fonts/hind-siliguri-bn-400.woff2?v=3") format("woff2");
  size-adjust: 108%;
  ascent-override: 89.81%;
  descent-override: 28.24%;
  line-gap-override: 0%;
  unicode-range: U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;
}
@font-face {
  font-family: "Hind Siliguri";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/public/fonts/hind-siliguri-bn-500.woff2?v=3") format("woff2");
  size-adjust: 108%;
  ascent-override: 89.81%;
  descent-override: 28.24%;
  line-gap-override: 0%;
  unicode-range: U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;
}
@font-face {
  font-family: "Hind Siliguri";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/public/fonts/hind-siliguri-bn-600.woff2?v=3") format("woff2");
  size-adjust: 108%;
  ascent-override: 89.81%;
  descent-override: 28.24%;
  line-gap-override: 0%;
  unicode-range: U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;
}
@font-face {
  font-family: "Hind Siliguri";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/public/fonts/hind-siliguri-bn-700.woff2?v=3") format("woff2");
  size-adjust: 108%;
  ascent-override: 89.81%;
  descent-override: 28.24%;
  line-gap-override: 0%;
  unicode-range: U+0951-0952, U+0964-0965, U+0980-09FE, U+1CD0, U+1CD2, U+1CD5-1CD6, U+1CD8, U+1CE1, U+1CEA, U+1CED, U+1CF2, U+1CF5-1CF7, U+200C-200D, U+20B9, U+25CC, U+A8F1;
}

/* ---- Newsreader (variable 400-700 + opsz; display serif) ----------------- */
/* latin, roman */
@font-face {
  font-family: "Newsreader";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/public/fonts/newsreader-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;
}
/* latin, italic */
@font-face {
  font-family: "Newsreader";
  font-style: italic;
  font-weight: 400 700;
  font-display: swap;
  src: url("/public/fonts/newsreader-latin-italic.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;
}
