/* CyprusWorld typography foundation.
 * Self-hosted variable fonts keep all four interface languages deterministic.
 * Commissioner is the product voice; Noto families are silent coverage
 * fallbacks. Literata is opt-in for sourced history/calendar editorial copy. */

@font-face { font-family: "Commissioner CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/commissioner-cyrillic-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: "Commissioner CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/commissioner-greek-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF; }
@font-face { font-family: "Commissioner CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/commissioner-latin-ext-wght-normal.woff2") format("woff2-variations"); 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; }
@font-face { font-family: "Commissioner CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/commissioner-latin-wght-normal.woff2") format("woff2-variations"); 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; }

@font-face { font-family: "Noto Sans CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-sans-cyrillic-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: "Noto Sans CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-sans-greek-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF; }
@font-face { font-family: "Noto Sans CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-sans-latin-ext-wght-normal.woff2") format("woff2-variations"); 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; }
@font-face { font-family: "Noto Sans CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-sans-latin-wght-normal.woff2") format("woff2-variations"); 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; }

@font-face { font-family: "Literata CW"; font-style: normal; font-display: swap; font-weight: 200 900; src: url("./fonts/literata-cyrillic-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: "Literata CW"; font-style: normal; font-display: swap; font-weight: 200 900; src: url("./fonts/literata-greek-ext-wght-normal.woff2") format("woff2-variations"); unicode-range: U+1F00-1FFF; }
@font-face { font-family: "Literata CW"; font-style: normal; font-display: swap; font-weight: 200 900; src: url("./fonts/literata-greek-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF; }
@font-face { font-family: "Literata CW"; font-style: normal; font-display: swap; font-weight: 200 900; src: url("./fonts/literata-latin-ext-wght-normal.woff2") format("woff2-variations"); 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; }
@font-face { font-family: "Literata CW"; font-style: normal; font-display: swap; font-weight: 200 900; src: url("./fonts/literata-latin-wght-normal.woff2") format("woff2-variations"); 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; }

@font-face { font-family: "Noto Serif CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-serif-cyrillic-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116; }
@font-face { font-family: "Noto Serif CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-serif-greek-ext-wght-normal.woff2") format("woff2-variations"); unicode-range: U+1F00-1FFF; }
@font-face { font-family: "Noto Serif CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-serif-greek-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF; }
@font-face { font-family: "Noto Serif CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-serif-latin-ext-wght-normal.woff2") format("woff2-variations"); 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; }
@font-face { font-family: "Noto Serif CW"; font-style: normal; font-display: swap; font-weight: 100 900; src: url("./fonts/noto-serif-latin-wght-normal.woff2") format("woff2-variations"); 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; }

:root {
  --font-interface: "Commissioner CW", "Noto Sans CW", system-ui, sans-serif;
  --font-editorial: "Literata CW", "Noto Serif CW", Georgia, serif;
  --type-metadata: 11px;
  --type-supporting: 13px;
  --type-interface: 15px;
  --type-place: 20px;
}

.typeEditorial { font-family: var(--font-editorial); }
