/* ── Montserrat Font Faces ── */

@font-face {
    font-family: 'Montserrat Thin';
    src: url('/fonts/Montserrat-Thin.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat ExtraLight';
    src: url('/fonts/Montserrat-ExtraLight.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat Light';
    src: url('/fonts/Montserrat-Light.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat Regular';
    src: url('/fonts/Montserrat-Regular.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat Medium';
    src: url('/fonts/Montserrat-Medium.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat SemiBold';
    src: url('/fonts/Montserrat-SemiBold.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat Bold';
    src: url('/fonts/Montserrat-Bold.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat ExtraBold';
    src: url('/fonts/Montserrat-ExtraBold.woff2') format('woff2');
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat Black';
    src: url('/fonts/Montserrat-Black.woff2') format('woff2');
    font-display: swap;
}

/* ── Weight Utilities ── */

.montserrat-Thin { font-family: 'Montserrat Thin'; }
.montserrat-ExtraLight { font-family: 'Montserrat ExtraLight'; }
.montserrat-Light { font-family: 'Montserrat Light'; }
.montserrat-Regular { font-family: 'Montserrat Regular'; }
.montserrat-Medium { font-family: 'Montserrat Medium'; }
.montserrat-SemiBold { font-family: 'Montserrat SemiBold'; }
.montserrat-Bold { font-family: 'Montserrat Bold'; }
.montserrat-ExtraBold { font-family: 'Montserrat ExtraBold'; }
.montserrat-Black { font-family: 'Montserrat Black'; }

/* ── Typography Scale ── */

body {
    font-family: 'Montserrat Light', sans-serif;
    color: #000;
}

p, .p, li, textarea {
    font-size: 1.125rem !important;
    line-height: 1.5rem !important;
    font-family: 'Montserrat Light';
    margin-bottom: 0 !important;
}

a {
    text-decoration: none !important;
}

h1 {
    font-size: 3.125rem !important;
    line-height: 1.125 !important;
    margin-bottom: 0 !important;
}

h2, .h2 {
    font-size: 2.125rem !important;
    line-height: 1.2 !important;
    font-family: 'Montserrat Medium';
    margin-bottom: 0 !important;
}

h3 {
    font-size: 1.5rem !important;
    line-height: 1.5rem !important;
}

h4, .h4 {
    font-size: 1.375rem !important;
    line-height: 1.5rem !important;
}

h5 {
    font-size: 1rem !important;
    line-height: 1.375rem !important;
}

.letter-spacing {
    letter-spacing: 2px;
}

/* ── Responsive Typography ── */

@media (max-width: 1439.98px) {
    h1 {
        font-size: 2.525rem !important;
        line-height: 2.625rem !important;
    }
}

@media (max-width: 575.98px) {
    h1 {
        font-size: 1.85rem !important;
        line-height: 2rem !important;
    }
    h2, .h2 {
        font-size: 1.65rem !important;
    }
}
