/* ==========================================================
   INDUSTRY HERO SECTION
   ========================================================== */

.industryHeroSection {
    position: relative;
    width: 100%;
    min-height: 100vh;
   
    overflow: hidden;
}

.industryHeroSection__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.industryHeroSection__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(18, 37, 96, 0.65),
        rgba(18, 37, 96, 0.15),
        rgba(18, 37, 96, 0.25)
    );
}

/* ---------- layout container ---------- */

.industryHeroSection__container {
    position: relative;
    z-index: 2;
    box-sizing: border-box;
    max-width: 1440px;
    margin: 0 auto;
    min-height: 100vh;
    
    padding: 140px 60px 80px;
    display: flex;
    align-items: flex-end;
}

.industryHeroSection__content {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 60px;
}

/* ---------- left / heading (2 lines) ---------- */

.industryHeroSection__left {
    flex: 0 1 auto;
    min-width: 0;
}

.industryHeroSection__left h1 {
    margin: 0;
    color: #fff;
    font-size: 45px;
    line-height: 1.15;
    font-weight: 700;
    white-space: nowrap;
}

.industryHeroSection__left span {
    display: block;
    color: #122560;
}

/* ---------- right / description (4 lines) ---------- */

.industryHeroSection__right {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 64ch;
}

.industryHeroSection__right p {
    margin: 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.7;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

/* ---------- laptop 1366 ---------- */
@media (max-width: 1440px) {
    .industryHeroSection__container {
        padding: 130px 40px 70px;
    }

    .industryHeroSection__content {
        gap: 48px;
    }
}

/* ---------- small laptop ---------- */
@media (max-width: 1280px) {
    .industryHeroSection__container {
        padding: 120px 40px 60px;
    }

    .industryHeroSection__content {
        gap: 40px;
    }

    .industryHeroSection__left h1 {
        font-size: 40px;
    }

    .industryHeroSection__right {
        max-width: 52ch;
    }

    .industryHeroSection__right p {
        font-size: 17px;
        line-height: 1.65;
    }
}

/* ---------- tablet ---------- */
@media (max-width: 992px) {
    .industryHeroSection,
    .industryHeroSection__container {
        min-height: 580px;
    }

    .industryHeroSection__container {
        padding: 120px 32px 56px;
    }

    .industryHeroSection__content {
        flex-direction: column;
        align-items: flex-start;
        gap: 28px;
    }

    .industryHeroSection__left h1 {
        font-size: 42px;
    }

    .industryHeroSection__right {
        width: 100%;
        max-width: 620px;
    }

    .industryHeroSection__right p {
        font-size: 17px;
    }
}

/* ---------- mobile ---------- */
/* ---------- mobile ---------- */

@media (max-width: 768px) {

       .industryHeroSection__image {
        position: relative;

        inset: auto;

        width: 100%;
        height: 300px;

        margin-top: 70px;

        display: block;

        object-fit: cover;
    }


    /* IMAGE — block at top, not full bleed */

    .industryHeroSection__image {
        position: relative;

        inset: auto;

        width: 100%;
        height: 300px;

        display: block;

        object-fit: cover;
    }


    .industryHeroSection__overlay {
        display: none;
    }


    /* CONTAINER — flows below the image */
    .industryHeroSection__container {
        position: relative;
        z-index: 2;

        min-height: 0 !important;

        max-width: none;

        padding: 26px 20px 40px;

        display: block !important;

        align-items: stretch;
    }


    .industryHeroSection__content {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;

        width: 100%;

        gap: 14px;
    }


    /* HEADING — navy, wraps */

    .industryHeroSection__left h1 {
        font-size: 22px;
        line-height: 1.3;
        font-weight: 700;

        white-space: normal;

        color: #122560;
    }


    .industryHeroSection__left span {
        display: inline;

        color: #122560;
    }


    /* DESCRIPTION — gray on white */

    .industryHeroSection__right {
        width: 100%;
        max-width: none;
    }


    .industryHeroSection__right p {
        font-size: 14px;
        line-height: 1.7;

        color: #3a4d7a;
    }
}


/* ---------- small mobile ---------- */

@media (max-width: 480px) {

       .industryHeroSection__image {
        height: 270px;

        margin-top: 64px;
    }


    .industryHeroSection__container {
        padding: 22px 18px 34px;
    }


    .industryHeroSection__left h1 {
        font-size: 20px;
    }


    .industryHeroSection__right p {
        font-size: 16px;
    }
}