/* Noto Serif — the firm's typeface, served self-hosted (no CDN). */
/* Generated set: 7 European subsets (latin, latin-ext, cyrillic(+ext), */
/* greek(+ext), vietnamese) x {regular, bold, italic}. The browser only */
/* downloads the subsets a page's text actually needs, via unicode-range, */
/* so English pages fetch just latin. Vendored + SHA-pinned in */
/* web/public/VENDOR.toml. Noto's broad coverage keeps client names and */
/* addresses rendering without missing-glyph boxes; CJK/Arabic/etc. would */
/* use the sibling Noto Serif faces and are intentionally not shipped yet. */

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  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;
  src:url("/public/fonts/noto-serif/noto-serif-latin-400-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  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;
  src:url("/public/fonts/noto-serif/noto-serif-latin-700-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:italic;
  font-weight:400;
  font-display:swap;
  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;
  src:url("/public/fonts/noto-serif/noto-serif-latin-400-italic.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  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;
  src:url("/public/fonts/noto-serif/noto-serif-latin-ext-400-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  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;
  src:url("/public/fonts/noto-serif/noto-serif-latin-ext-700-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:italic;
  font-weight:400;
  font-display:swap;
  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;
  src:url("/public/fonts/noto-serif/noto-serif-latin-ext-400-italic.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
  src:url("/public/fonts/noto-serif/noto-serif-cyrillic-400-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
  src:url("/public/fonts/noto-serif/noto-serif-cyrillic-700-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:italic;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
  src:url("/public/fonts/noto-serif/noto-serif-cyrillic-400-italic.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
  src:url("/public/fonts/noto-serif/noto-serif-cyrillic-ext-400-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
  src:url("/public/fonts/noto-serif/noto-serif-cyrillic-ext-700-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:italic;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
  src:url("/public/fonts/noto-serif/noto-serif-cyrillic-ext-400-italic.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
  src:url("/public/fonts/noto-serif/noto-serif-greek-400-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
  src:url("/public/fonts/noto-serif/noto-serif-greek-700-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:italic;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
  src:url("/public/fonts/noto-serif/noto-serif-greek-400-italic.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  unicode-range:U+1F00-1FFF;
  src:url("/public/fonts/noto-serif/noto-serif-greek-ext-400-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  unicode-range:U+1F00-1FFF;
  src:url("/public/fonts/noto-serif/noto-serif-greek-ext-700-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:italic;
  font-weight:400;
  font-display:swap;
  unicode-range:U+1F00-1FFF;
  src:url("/public/fonts/noto-serif/noto-serif-greek-ext-400-italic.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
  src:url("/public/fonts/noto-serif/noto-serif-vietnamese-400-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:normal;
  font-weight:700;
  font-display:swap;
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
  src:url("/public/fonts/noto-serif/noto-serif-vietnamese-700-normal.woff2") format("woff2");
}

@font-face{
  font-family:'Noto Serif';
  font-style:italic;
  font-weight:400;
  font-display:swap;
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
  src:url("/public/fonts/noto-serif/noto-serif-vietnamese-400-italic.woff2") format("woff2");
}

/* Drive the whole page off Noto Serif by retargeting Bootstrap's body */
/* font token. Bootstrap 5.3 reads --bs-body-font-family for body text */
/* and inherits it into headings, buttons, and form controls, so this one */
/* variable covers every surface. The generic `serif` tail is the */
/* fallback while the webfont loads (font-display: swap). */
:root {
  --bs-body-font-family: "Noto Serif", Georgia, "Times New Roman", serif;
}
