/* =========================================================
   IMAGE LEADSPACE
========================================================= */

.image-leadspace.il-hero {
    position: relative;

    width: 100%;
    min-height: 700px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background-color: #f7f8f9;

    background-image:
        var(--il-bg-image, none);

    background-size:
        cover;

    background-position:
        center center;

    background-repeat:
        no-repeat;

    box-sizing: border-box;
}


/* =========================================================
   INNER CONTAINER
========================================================= */

.il-hero__inner {
    position: relative;

    z-index: 2;

    width: calc(100% - 144px);
    max-width: 1400px;

    margin-left: auto;
    margin-right: auto;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr);

    align-items: center;

    column-gap: 72px;

    box-sizing: border-box;
}


/* =========================================================
   NO MEDIA
========================================================= */

.il-hero--no-media
.il-hero__inner {
    grid-template-columns:
        minmax(0, 760px);
}


.il-hero--no-media
.il-hero__content {
    max-width: 760px;
}


/* =========================================================
   CONTENT
========================================================= */

.il-hero__content {
    position: relative;

    width: 100%;

    min-width: 0;

    box-sizing: border-box;
}


/* =========================================================
   EYEBROW
========================================================= */

.il-hero__eyebrow {
    display: inline-flex;

    align-items: center;

    width: fit-content;

    margin-bottom: 30px;

    padding:
        12px
        12px;

    background: #97d744;

    color: #001d39;

    line-height: 1;

    font-family: inherit;

    font-weight: 700;
}


/* =========================================================
   HEADING
========================================================= */

.il-hero__heading {
    width: 100%;
    max-width: 760px;

    margin:
        0
        0
        24px;

    color: #003B72;

    font-size:
        clamp(
            44px,
            4vw,
            58px
        );

    line-height: 1.17;

    font-weight: 700;

    letter-spacing:
        -0.5px;
}


/* =========================================================
   SUBHEADING
========================================================= */

.il-hero__subheading {
    width: 100%;
    max-width: 700px;

    margin-bottom: 24px;
font-family:Inter,sans-serif;
    color: #001d39;

    font-size: 18px;

    line-height: 1.45;

    font-weight: 400;
}


.il-hero__subheading,
.il-hero__subheading p,
.il-hero__subheading span,
.il-hero__subheading strong,
.il-hero__subheading a {
    color: #001d39;
}


.il-hero__subheading p {
    margin-top: 0;

    margin-bottom: 0;
}


.il-hero__subheading strong,
.il-hero__subheading b {
    font-weight: 700;
}


/* =========================================================
   BUTTONS
========================================================= */

.il-hero__buttons {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 16px;
}


/* =========================================================
   BUTTON
========================================================= */

.il-hero__button {
    min-height: 44px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding:
        10px
        30px;

    border:
        2px solid
        #001d39;

    border-radius:
        9999px;

    line-height: 1;

    text-decoration: none;

    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}


/* =========================================================
   PRIMARY BUTTON
========================================================= */

.il-hero__button--primary {
    background:
        #001d39;

    border-color:
        #001d39;

    color:
        #ffffff;
}


.il-hero__button--primary:hover {
  background: rgb(38 63 87 / var(--tw-bg-opacity,1));

  border-color: rgb(38 63 87 / var(--tw-bg-opacity,1));

    color:
        #ffffff;
}


/* =========================================================
   SECONDARY BUTTON
========================================================= */

.il-hero__button--secondary {
    background:
        transparent;

    border-color:
        #001d39;

    color:
        #001d39;
}


.il-hero__button--secondary:hover {
  background: rgb(38 63 87 / var(--tw-bg-opacity,1));

    color:
        #001d39;
}


/* =========================================================
   MEDIA
========================================================= */

.il-hero__media {
    position: relative;

    display: flex;

    flex-direction: column;

    align-items: flex-end;

    justify-content: center;

    width: 100%;

    min-width: 0;

    box-sizing: border-box;
}


/* =========================================================
   VIDEO
========================================================= */

.il-hero__video {
    position: relative;

    width: 100%;
    max-width: 540px;

    aspect-ratio:
        16 / 9;

    overflow: hidden;

    border-radius: 20px;

    background:
        #07365f;
}


.il-hero__video iframe {
    position: absolute;

    inset: 0;

    display: block;

    width: 100%;
    height: 100%;

    border: 0;
}


/* =========================================================
   IMAGE
========================================================= */

.il-hero__image-wrap {
    width: 100%;
    max-width: 700px;

    overflow: hidden;

    border-radius: 20px;
}


.il-hero__image {
    display: block;
    box-sizing: border-box;
    padding: 80px;
    width: 100%;
    height: auto;

    object-fit: contain;
}


.il-hero__caption {
    width: 100%;
    max-width: 540px;

    margin-top: 12px;

    color:
        #001d39;

    font-size: 14px;
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1544px) {

    .il-hero__inner {
        width: 1400px;

        max-width: 1400px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1023px) {

    .image-leadspace.il-hero {
        min-height: auto;

        background-position:
            center
            center;

        background-size:
            cover;
    }


    .il-hero__inner {
        width:
            calc(
                100% - 80px
            );

        grid-template-columns:
            1fr;

        row-gap: 48px;

        padding:
            64px
            0;
    }


    .il-hero__content {
        max-width: 700px;
    }


    .il-hero__heading {
        max-width: 700px;

        font-size: 44px;
    }


    .il-hero__media {
        align-items: flex-start;
    }


    .il-hero__video,
    .il-hero__image-wrap {
        max-width: 650px;
    }

    .il-hero__image {
        display: block;
        box-sizing: border-box;
        padding: 0px;
        width: 100%;
        height: auto;
        object-fit: contain;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 640px) {

    .image-leadspace.il-hero {
        background-position:
            center
            center;
    }


    .il-hero__inner {
        width:
            calc(
                100% - 48px
            );

        padding:
            56px
            0;

        row-gap: 36px;
    }


    .il-hero__eyebrow {
        margin-bottom: 22px;

        padding:
            5px
            7px;

        font-size: 12px;
    }


    .il-hero__heading {
        margin-bottom: 20px;

        font-size: 38px;

        line-height: 1.12;
    }


    .il-hero__subheading {
        margin-bottom: 30px;

        font-size: 15px;
    }


    .il-hero__buttons {
        gap: 12px;
    }


    .il-hero__button {
        min-height: 42px;

        padding:
            10px
            22px;

        font-size: 13px;
    }


    .il-hero__video,
    .il-hero__image-wrap {
        max-width: 100%;

        border-radius: 14px;
    }

}


/* =========================================================
   MODAL
========================================================= */

#hubspot-form-modal {
    overflow: hidden;
}


#hubspot-form-modal > div {
    max-height: 90vh;

    overflow-y: auto;
}


#hubspot-form-container {
    overflow: visible;
}


.image-leadspace
.salesforce-scroll {
    width: 100%;

    overflow: visible;

    padding-right: 8px;

    padding-bottom: 24px;
}


.image-leadspace
.salesforce-scroll iframe {
    display: block;

    width: 100%;

    min-height: 100px;

    overflow: hidden;

    border: 0;
}