/* ======================================================
   GLOBAL TYPOGRAPHY SYSTEM
   Includes: Font Size, Font Weight, Line Height
   Enforced using !important
   ====================================================== */

/* ---------- BASE DEFAULT ---------- */
html {
    font-size: 100%;
}

body {
    font-size: 18px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

/* ---------- TAGLINE / HERO TEXT ---------- */
.fs-tagline {
    font-size: 48px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
}

/* ---------- MAIN HEADING ---------- */
.fs-heading {
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

/* ---------- SUB HEADING ---------- */
.fs-subhead {
    font-size: 22px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
}

/* ---------- CONTENT / PARAGRAPH ---------- */
.fs-content {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
}

/* ======================================================
   RESPONSIVE OPTIMIZATION
   ====================================================== */

/* Extra Large Screens (1440px+) */
@media (min-width: 1440px) {
    .fs-tagline {
        font-size: 52px !important;
        line-height: 1.12 !important;
    }
}

/* Laptops & Tablets Landscape */
@media (max-width: 1199px) {
    .fs-tagline {
        font-size: 42px !important;
        line-height: 1.18 !important;
    }

    .fs-subhead {
        font-size: 21px !important;
    }
}

/* Tablets */
@media (max-width: 991px) {
    .fs-tagline {
        font-size: 36px !important;
    }

    .fs-heading {
        font-size: 19px !important;
    }

    .fs-subhead {
        font-size: 20px !important;
    }

    .fs-content {
        font-size: 18px !important;
        line-height: 1.6 !important;
    }
}

/* Mobile Devices */
@media (max-width: 767px) {
    .fs-tagline {
        font-size: 30px !important;
        line-height: 1.22 !important;
    }

    .fs-heading {
        font-size: 18px !important;
    }

    .fs-subhead {
        font-size: 19px !important;
    }

    .fs-content {
        font-size: 18px !important;
        line-height: 1.55 !important;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .fs-tagline {
        font-size: 26px !important;
    }

    .fs-content {
        font-size: 18px !important;
        line-height: 1.5 !important;
    }
}
.bold{
    font-weight: 700 !important;
}