/* Self-hosted Montserrat, Poppins, and Lato fonts */
/* Optimized with font metric overrides to prevent layout shift (CLS) */
/* All fonts are served from /fonts/ - no external requests */
/* Lato is included for Semantic UI compatibility */

/* Montserrat - Critical weights (700, 600 equivalent) for hero/headings */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  /* Font metric overrides to match fallback (Arial) and prevent CLS */
  ascent-override: 95%;
  descent-override: 25%;
  line-gap-override: 0%;
      src: url('/fonts/montserrat-v25-latin-700.woff2') format('woff2'),
           url('/fonts/montserrat-v25-latin-700.woff') format('woff');
}

/* Montserrat 500 - Used for buttons and medium weight text */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  ascent-override: 95%;
  descent-override: 25%;
  line-gap-override: 0%;
      src: url('/fonts/montserrat-v25-latin-500.woff2') format('woff2'),
           url('/fonts/montserrat-v25-latin-500.woff') format('woff');
}

/* Montserrat 300 - Less critical, can use optional */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: optional;
  ascent-override: 95%;
  descent-override: 25%;
  line-gap-override: 0%;
      src: url('/fonts/montserrat-v25-latin-300.woff2') format('woff2'),
           url('/fonts/montserrat-v25-latin-300.woff') format('woff');
}

/* Montserrat 200 - Least critical */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 200;
  font-display: optional;
  ascent-override: 95%;
  descent-override: 25%;
  line-gap-override: 0%;
      src: url('/fonts/montserrat-v25-latin-200.woff2') format('woff2'),
           url('/fonts/montserrat-v25-latin-200.woff') format('woff');
}

/* Poppins 300 - Critical for hero subtitle */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  /* Font metric overrides to match fallback */
  ascent-override: 100%;
  descent-override: 20%;
  line-gap-override: 0%;
      src: url('/fonts/poppins-v20-latin-300.woff2') format('woff2'),
           url('/fonts/poppins-v20-latin-300.woff') format('woff');
}

/* Poppins 400 - Body text, critical */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  ascent-override: 100%;
  descent-override: 20%;
  line-gap-override: 0%;
      src: url('/fonts/poppins-v20-latin-400.woff2') format('woff2'),
           url('/fonts/poppins-v20-latin-400.woff') format('woff');
}

/* Lato - Required by Semantic UI CSS */
/* Using Poppins/Montserrat as temporary fallback until Lato fonts are downloaded */
/* TODO: Download Lato fonts (400, 700, 400italic, 700italic) from https://gwfh.mranftl.com/fonts/lato */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/poppins-v20-latin-400.woff2') format('woff2'),
       url('/fonts/poppins-v20-latin-400.woff') format('woff');
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/montserrat-v25-latin-700.woff2') format('woff2'),
       url('/fonts/montserrat-v25-latin-700.woff') format('woff');
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/poppins-v20-latin-400.woff2') format('woff2'),
       url('/fonts/poppins-v20-latin-400.woff') format('woff');
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/montserrat-v25-latin-700.woff2') format('woff2'),
       url('/fonts/montserrat-v25-latin-700.woff') format('woff');
}
