/**
 * Typography — fontes hospedadas localmente.
 * Fontes em /fonts/ (woff2 latin subset).
 *
 * Famílias:
 *   - Source Serif 4 (400/500/600/700 normal; 400/500 italic) — serifa editorial
 *   - Inter          (300/400/500)                            — sans-serif corpo
 *   - Bebas Neue     (400)                                    — caps/labels (--fonte-caps)
 */

@font-face {
    font-family: 'Source Serif 4';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/source-serif-4/source-serif-4-400-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;
}

@font-face {
    font-family: 'Source Serif 4';
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/source-serif-4/source-serif-4-500-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;
}

@font-face {
    font-family: 'Source Serif 4';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/source-serif-4/source-serif-4-400.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: 'Source Serif 4';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/source-serif-4/source-serif-4-500.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: 'Source Serif 4';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/source-serif-4/source-serif-4-600.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: 'Source Serif 4';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/source-serif-4/source-serif-4-700.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: 'Inter';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/inter/inter-300.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: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/inter/inter-400.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: 'Inter';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/inter/inter-500.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: 'Bebas Neue';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/bebas-neue/bebas-neue-400.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;
}

/* Fontes self-hosted adicionais (zero CDN, 2026-06-25): Playfair, Montserrat, Open Sans, Oswald, Barlow Condensed, Archivo + Inter 600/700. css/fonts/<familia>/ */
@font-face {
	font-family: 'Playfair Display';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-400-italic.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-400-italic.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: italic;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-500-italic.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-500-italic.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: italic;
	font-weight: 800;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-800-italic.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-800-italic.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-400.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-400.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-500.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-500.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-600.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-600.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-700.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-700.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-800.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-800.woff') format('woff');
}
@font-face {
	font-family: 'Playfair Display';
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url('../fonts/playfair-display/playfair-display-900.woff2') format('woff2'), url('../fonts/playfair-display/playfair-display-900.woff') format('woff');
}
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('../fonts/montserrat/montserrat-300.woff2') format('woff2'), url('../fonts/montserrat/montserrat-300.woff') format('woff');
}
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/montserrat/montserrat-400.woff2') format('woff2'), url('../fonts/montserrat/montserrat-400.woff') format('woff');
}
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/montserrat/montserrat-500.woff2') format('woff2'), url('../fonts/montserrat/montserrat-500.woff') format('woff');
}
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/montserrat/montserrat-600.woff2') format('woff2'), url('../fonts/montserrat/montserrat-600.woff') format('woff');
}
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/montserrat/montserrat-700.woff2') format('woff2'), url('../fonts/montserrat/montserrat-700.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 300;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-300-italic.woff2') format('woff2'), url('../fonts/open-sans/open-sans-300-italic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-400-italic.woff2') format('woff2'), url('../fonts/open-sans/open-sans-400-italic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-600-italic.woff2') format('woff2'), url('../fonts/open-sans/open-sans-600-italic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-700-italic.woff2') format('woff2'), url('../fonts/open-sans/open-sans-700-italic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 800;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-800-italic.woff2') format('woff2'), url('../fonts/open-sans/open-sans-800-italic.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-300.woff2') format('woff2'), url('../fonts/open-sans/open-sans-300.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-400.woff2') format('woff2'), url('../fonts/open-sans/open-sans-400.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-600.woff2') format('woff2'), url('../fonts/open-sans/open-sans-600.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-700.woff2') format('woff2'), url('../fonts/open-sans/open-sans-700.woff') format('woff');
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('../fonts/open-sans/open-sans-800.woff2') format('woff2'), url('../fonts/open-sans/open-sans-800.woff') format('woff');
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 200;
	font-display: swap;
	src: url('../fonts/oswald/oswald-200.woff2') format('woff2'), url('../fonts/oswald/oswald-200.woff') format('woff');
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url('../fonts/oswald/oswald-300.woff2') format('woff2'), url('../fonts/oswald/oswald-300.woff') format('woff');
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('../fonts/oswald/oswald-400.woff2') format('woff2'), url('../fonts/oswald/oswald-400.woff') format('woff');
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/oswald/oswald-500.woff2') format('woff2'), url('../fonts/oswald/oswald-500.woff') format('woff');
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/oswald/oswald-600.woff2') format('woff2'), url('../fonts/oswald/oswald-600.woff') format('woff');
}
@font-face {
	font-family: 'Oswald';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/oswald/oswald-700.woff2') format('woff2'), url('../fonts/oswald/oswald-700.woff') format('woff');
}
@font-face {
	font-family: 'Barlow Condensed';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/barlow-condensed/barlow-condensed-500.woff2') format('woff2'), url('../fonts/barlow-condensed/barlow-condensed-500.woff') format('woff');
}
@font-face {
	font-family: 'Barlow Condensed';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/barlow-condensed/barlow-condensed-600.woff2') format('woff2'), url('../fonts/barlow-condensed/barlow-condensed-600.woff') format('woff');
}
@font-face {
	font-family: 'Barlow Condensed';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/barlow-condensed/barlow-condensed-700.woff2') format('woff2'), url('../fonts/barlow-condensed/barlow-condensed-700.woff') format('woff');
}
@font-face {
	font-family: 'Barlow Condensed';
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url('../fonts/barlow-condensed/barlow-condensed-900.woff2') format('woff2'), url('../fonts/barlow-condensed/barlow-condensed-900.woff') format('woff');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('../fonts/archivo/archivo-500.woff2') format('woff2'), url('../fonts/archivo/archivo-500.woff') format('woff');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/archivo/archivo-600.woff2') format('woff2'), url('../fonts/archivo/archivo-600.woff') format('woff');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/archivo/archivo-700.woff2') format('woff2'), url('../fonts/archivo/archivo-700.woff') format('woff');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('../fonts/archivo/archivo-800.woff2') format('woff2'), url('../fonts/archivo/archivo-800.woff') format('woff');
}
@font-face {
	font-family: 'Archivo';
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url('../fonts/archivo/archivo-900.woff2') format('woff2'), url('../fonts/archivo/archivo-900.woff') format('woff');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('../fonts/inter/inter-600.woff2') format('woff2'), url('../fonts/inter/inter-600.woff') format('woff');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('../fonts/inter/inter-700.woff2') format('woff2'), url('../fonts/inter/inter-700.woff') format('woff');
}
