@font-face {
font-family: "Montserrat";
src: url("./fonts/Montserrat-Light.woff2") format("woff2"),
        url("./fonts/Montserrat-Light.woff2") format("woff");
font-weight: 300;
font-display: swap;
}
@font-face {
font-family: "Montserrat";
src: url("./fonts/Montserrat-Medium.woff2") format("woff2"),
        url("./fonts/Montserrat-Medium.woff2") format("woff");
font-weight: 500;
font-display: swap;
}
@font-face {
font-family: "Montserrat";
src: url("./fonts/Montserrat-Regular.woff2") format("woff2"),
        url("./fonts/Montserrat-Regular.woff2") format("woff");
font-weight: 400;
font-display: swap;
}
@font-face {
font-family: "Montserrat";
src: url("./fonts/Montserrat-SemiBold.woff2") format("woff2"),
        url("./fonts/Montserrat-SemiBold.woff2") format("woff");
font-weight: 600;
font-display: swap;
}
@font-face {
font-family: "Cabin";
src: url("./fonts/Cabin-Bold.woff2") format("woff2"),
        url("./fonts/Cabin-Bold.woff2") format("woff");
font-weight: 700;
font-display: swap;
}
/* Metric-matched fallback: scales a local Arial to occupy the same box as
   Montserrat, so text laid out in the fallback doesn't reflow (shift down/right)
   when Montserrat swaps in. Slotted into --montserrat before the generic
   sans-serif in global.css. */
@font-face {
font-family: "Montserrat Fallback";
src: local("Arial");
ascent-override: 85.79%;
descent-override: 22.25%;
line-gap-override: 0.00%;
size-adjust: 112.86%;
}