/* Keyvasa brand fonts, self hosted (no third party font CDN). All SIL Open Font License 1.1: see /fonts/LICENSES.md.
   Vendored from @fontsource-variable 5.3.0 (upright variable files only). How to update: docs/BRAND.md, "Fonts". */
@font-face{font-family:"Figtree";font-style:normal;font-display:swap;font-weight:300 900;src:url(/fonts/figtree-latin-ext-wght-normal.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}
@font-face{font-family:"Figtree";font-style:normal;font-display:swap;font-weight:300 900;src:url(/fonts/figtree-latin-wght-normal.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}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-display:swap;font-weight:200 800;src:url(/fonts/bricolage-grotesque-latin-ext-wght-normal.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}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-display:swap;font-weight:200 800;src:url(/fonts/bricolage-grotesque-latin-wght-normal.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}
@font-face{font-family:"Noto Sans Devanagari";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-devanagari-devanagari-wght-normal.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}
@font-face{font-family:"Noto Sans Tamil";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-tamil-tamil-wght-normal.woff2) format("woff2");unicode-range:U+0964-0965,U+0B82-0BFA,U+200C-200D,U+20B9,U+25CC}
@font-face{font-family:"Noto Sans Telugu";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-telugu-telugu-wght-normal.woff2) format("woff2");unicode-range:U+0951-0952,U+0964-0965,U+0C00-0C7F,U+1CDA,U+1CF2,U+200C-200D,U+25CC}
@font-face{font-family:"Noto Sans Bengali";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-bengali-bengali-wght-normal.woff2) format("woff2");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:"Noto Sans Gujarati";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-gujarati-gujarati-wght-normal.woff2) format("woff2");unicode-range:U+0951-0952,U+0964-0965,U+0A80-0AFF,U+200C-200D,U+20B9,U+25CC,U+A830-A839}
@font-face{font-family:"Noto Sans Kannada";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-kannada-kannada-wght-normal.woff2) format("woff2");unicode-range:U+0951-0952,U+0964-0965,U+0C80-0CF3,U+1CD0,U+1CD2-1CD3,U+1CDA,U+1CF2,U+1CF4,U+200C-200D,U+20B9,U+25CC,U+A830-A835}
@font-face{font-family:"Noto Sans Malayalam";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-malayalam-malayalam-wght-normal.woff2) format("woff2");unicode-range:U+0307,U+0323,U+0951-0952,U+0964-0965,U+0D00-0D7F,U+1CDA,U+1CF2,U+200C-200D,U+20B9,U+25CC,U+A830-A832}
@font-face{font-family:"Noto Sans Gurmukhi";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-gurmukhi-gurmukhi-wght-normal.woff2) format("woff2");unicode-range:U+0951-0952,U+0964-0965,U+0A01-0A76,U+200C-200D,U+20B9,U+25CC,U+262C,U+A830-A839}
@font-face{font-family:"Noto Nastaliq Urdu";font-style:normal;font-display:swap;font-weight:400 700;src:url(/fonts/noto-nastaliq-urdu-arabic-wght-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}
/* Playfair Display 500 (OFL, Fontsource 5): only for the heading of the printed room QR table card (lib/stickers/card.ts). */
@font-face{font-family:"Playfair Display";font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/playfair-display-latin-ext-500-normal.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}
@font-face{font-family:"Playfair Display";font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/playfair-display-latin-500-normal.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}
@font-face{font-family:"Noto Sans Oriya";font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/noto-sans-oriya-oriya-wght-normal.woff2) format("woff2");unicode-range:U+0951-0952,U+0964-0965,U+0B01-0B77,U+1CDA,U+1CF2,U+200C-200D,U+20B9,U+25CC}
/* Each language reads in its own Noto family. Latin stays Figtree or Bricolage; a script font only downloads when a
   page shows that script (unicode-range), so an English or Hindi page loads nothing extra. */
:root:lang(bn),:root:lang(as){--kv-font-body:"Figtree","Noto Sans Bengali",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Bengali",system-ui,sans-serif}
:root:lang(mr){--kv-font-body:"Figtree","Noto Sans Devanagari",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Devanagari",system-ui,sans-serif}
:root:lang(te){--kv-font-body:"Figtree","Noto Sans Telugu",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Telugu",system-ui,sans-serif}
:root:lang(ta){--kv-font-body:"Figtree","Noto Sans Tamil",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Tamil",system-ui,sans-serif}
:root:lang(gu){--kv-font-body:"Figtree","Noto Sans Gujarati",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Gujarati",system-ui,sans-serif}
:root:lang(kn){--kv-font-body:"Figtree","Noto Sans Kannada",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Kannada",system-ui,sans-serif}
:root:lang(ml){--kv-font-body:"Figtree","Noto Sans Malayalam",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Malayalam",system-ui,sans-serif}
:root:lang(or){--kv-font-body:"Figtree","Noto Sans Oriya",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Oriya",system-ui,sans-serif}
:root:lang(pa){--kv-font-body:"Figtree","Noto Sans Gurmukhi",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Sans Gurmukhi",system-ui,sans-serif}
:root:lang(ur){--kv-font-body:"Figtree","Noto Nastaliq Urdu",system-ui,sans-serif;--kv-font-display:"Bricolage Grotesque","Noto Nastaliq Urdu",system-ui,sans-serif}
/* Nastaliq sits taller than Latin; give Urdu lines room so words are not clipped. */
:root:lang(ur) body{line-height:1.9}
/* Language options are shown in their own script even inside an English page. */
option:lang(bn),option:lang(as){font-family:"Noto Sans Bengali",system-ui,sans-serif}
option:lang(te){font-family:"Noto Sans Telugu",system-ui,sans-serif}
option:lang(ta){font-family:"Noto Sans Tamil",system-ui,sans-serif}
option:lang(gu){font-family:"Noto Sans Gujarati",system-ui,sans-serif}
option:lang(kn){font-family:"Noto Sans Kannada",system-ui,sans-serif}
option:lang(ml){font-family:"Noto Sans Malayalam",system-ui,sans-serif}
option:lang(or){font-family:"Noto Sans Oriya",system-ui,sans-serif}
option:lang(pa){font-family:"Noto Sans Gurmukhi",system-ui,sans-serif}
option:lang(ur){font-family:"Noto Nastaliq Urdu",system-ui,sans-serif}
