/* System font stack for better performance */
:root {
    --system-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

/*
 * Roboto and Poppins are self-hosted (same Latin-subset woff2 files Google
 * serves, downloaded into /public/fonts alongside Metropolis). Fetching them
 * from fonts.gstatic.com meant a third-party DNS + TLS handshake on every cold
 * load before the real font could arrive, and the late swap reflowed text all
 * over the page. Serving them from our own origin lets the preload hints in
 * nav-layout get them in before first paint. Keep the unicode-range values in
 * step with the files if they are ever re-subset.
 */

/* Roboto - Optimized for Latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local('Roboto'), local('Roboto-Regular'),
         url('/public/fonts/roboto/Roboto-Regular-8c4b05d4371467ba1d0bc60839c6dcb9.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: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local('Roboto Medium'), local('Roboto-Medium'),
         url('/public/fonts/roboto/Roboto-Medium-4903a00d1c555c0846799302c673d6a1.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: 'Roboto';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local('Roboto Bold'), local('Roboto-Bold'),
         url('/public/fonts/roboto/Roboto-Bold-39aff03d2a35b1c80f210051f35d4b2b.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;
}

/* Poppins - Optimized for Latin */
@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local('Poppins Regular'), local('Poppins-Regular'),
         url('/public/fonts/poppins/Poppins-Regular-43751174b6b810eb169101a20d8c26f8.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: 'Poppins';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local('Poppins Medium'), local('Poppins-Medium'),
         url('/public/fonts/poppins/Poppins-Medium-792477d09826b11d1e5a611162c9797a.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: 'Poppins';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local('Poppins Bold'), local('Poppins-Bold'),
         url('/public/fonts/poppins/Poppins-Bold-0bd523f6049956faaf43c254a719d06a.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;
}

/* Metropolis Font */
@font-face {
    font-family: 'Metropolis';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/public/fonts/metropolis/Metropolis-Regular-f7b5e589f88206b4bd5cb1408c5362e6.otf') format('opentype');
}

@font-face {
    font-family: 'Metropolis';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('/public/fonts/metropolis/Metropolis-Medium-f4bca87fd0d19e61c27dc96299c75f8c.otf') format('opentype');
}

@font-face {
    font-family: 'Metropolis';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/public/fonts/metropolis/Metropolis-Bold-dea4998b081c6c1133a3b5b08ff2218c.otf') format('opentype');
}

/* Font fallback classes */
.font-roboto {
    font-family: 'Roboto', var(--system-ui);
}

.font-poppins {
    font-family: 'Poppins', var(--system-ui);
}

.font-metropolis {
    font-family: 'Metropolis', var(--system-ui);
} 