/**
 * Source Sans 3 - Latin, Latin Extended, Cyrillic, Cyrillic Extended, Greek,
 * Greek Extended, Vietnamese
 * Font variants match Source Sans Pro naming (designsystem.suomi.fi)
 * Weights: 300, 400, 600 (Light, Regular, Semibold)
 *
 * Subsets with unicode-range for optimal loading - browsers fetch only the
 * font files needed for characters on the page:
 * - latin: Basic Latin + Latin-1 (U+0000-00FF) - a-z, A-Z, 0-9, punctuation
 * - latin-ext: Latin Extended (U+0100-02AF...) - Finnish/Nordic, accented chars
 * - cyrillic: Cyrillic (U+0400-045F...) - Russian, Ukrainian, etc.
 * - cyrillic-ext: Cyrillic Extended (U+0460-052F...) - extended Cyrillic
 * - greek: Greek and Coptic (U+0370-03FF)
 * - greek-ext: Greek Extended (U+1F00-1FFF)
 * - vietnamese: Vietnamese diacritics (U+0102-1EFF, U+20AB)
 */

/* 300 Light */
@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Light-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Light-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1D00-1D9F, U+1EFA-1EFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Light-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Light-cyrillic-ext.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Light-greek.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Light-greek-ext.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Light-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+1E00-1E9F, U+1EA0-1EFF, U+20AB;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-LightIt-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-LightIt-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1D00-1D9F, U+1EFA-1EFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-LightIt-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-LightIt-cyrillic-ext.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-LightIt-greek.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-LightIt-greek-ext.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 300;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-LightIt-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+1E00-1E9F, U+1EA0-1EFF, U+20AB;
}

/* 400 Regular */
@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Regular-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Regular-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1D00-1D9F, U+1EFA-1EFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Regular-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Regular-cyrillic-ext.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Regular-greek.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Regular-greek-ext.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Regular-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+1E00-1E9F, U+1EA0-1EFF, U+20AB;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-It-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-It-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1D00-1D9F, U+1EFA-1EFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-It-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-It-cyrillic-ext.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-It-greek.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-It-greek-ext.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 400;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-It-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+1E00-1E9F, U+1EA0-1EFF, U+20AB;
}

/* 600 Semibold */
@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Semibold-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Semibold-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1D00-1D9F, U+1EFA-1EFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Semibold-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Semibold-cyrillic-ext.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Semibold-greek.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Semibold-greek-ext.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
  src: url('./SourceSans3-Semibold-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+1E00-1E9F, U+1EA0-1EFF, U+20AB;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-SemiboldIt-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-SemiboldIt-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1D00-1D9F, U+1EFA-1EFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-SemiboldIt-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-SemiboldIt-cyrillic-ext.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
    U+FE2E-FE2F;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-SemiboldIt-greek.woff2') format('woff2');
  unicode-range: U+0370-03FF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-SemiboldIt-greek-ext.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'Source Sans 3';
  font-weight: 600;
  font-style: italic;
  font-stretch: normal;
  src: url('./SourceSans3-SemiboldIt-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1,
    U+01AF-01B0, U+1E00-1E9F, U+1EA0-1EFF, U+20AB;
}
