.mv-page {
    width: 100%;

    background: #f5f8fc;
}


.mv-container {
    width: calc(100% - 40px);
    max-width: 1400px;

    margin: 0 auto;
}

.mv-hero {
    padding:
        52px 0 45px;

    background:
        linear-gradient(
            135deg,
            #082b58,
            #0b3d75
        );

    color: #ffffff;
}

.mv-eyebrow {
    display: block;

    margin-bottom: 7px;

    color: #72c2f2;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 1.7px;
}


.mv-hero h1 {
    margin: 0;

    color: #ffffff;

    font-family:
        "Open Sans",
        Arial,
        sans-serif;

    font-size: 38px;
    font-weight: 800;

    line-height: 1.2;
}


.mv-hero p {
    max-width: 650px;

    margin:
        12px 0 0;

    color:
        rgba(255,255,255,.82);

    font-size: 14px;

    line-height: 1.6;
}

.mv-section {
    padding:
        55px 0 65px;
}

.mv-card {
    display: grid;

    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(320px, .85fr);

    align-items: stretch;

    overflow: hidden;

    margin-bottom: 32px;

    border:
        1px solid #dce5ee;

    border-radius: 16px;

    background: #ffffff;

    box-shadow:
        0 9px 30px
        rgba(11,50,100,.07);
}


.mv-card-reverse {
    grid-template-columns:
        minmax(320px, .85fr)
        minmax(0, 1.15fr);
}


.mv-card-reverse
.mv-content {
    order: 2;
}


.mv-card-reverse
.mv-image {
    order: 1;
}

.mv-content {
    position: relative;

    padding:
        48px 50px;
}


.mv-number {
    position: absolute;

    top: 18px;
    right: 25px;

    color:
        rgba(11,50,100,.07);

    font-size: 75px;
    font-weight: 900;

    line-height: 1;
}


.mv-label {
    display: block;

    margin-bottom: 7px;

    color: #0072bc;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 1.5px;
}


.mv-content h2 {
    position: relative;

    z-index: 2;

    margin: 0;

    color: #0b3264;

    font-family:
        "Open Sans",
        Arial,
        sans-serif;

    font-size: 30px;
    font-weight: 800;
}


.mv-line {
    width: 55px;
    height: 3px;

    margin:
        15px 0 22px;

    border-radius: 20px;

    background: #0072bc;
}


.mv-content p {
    position: relative;

    z-index: 2;

    margin: 0;

    color: #53677c;

    font-family:
        "Open Sans",
        Arial,
        sans-serif;

    font-size: 14px;

    line-height: 1.8;

    text-align: justify;
}

.mv-image {
    min-height: 430px;

    background: #e9f0f7;
}


.mv-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


.mv-no-image {
    width: 100%;
    height: 100%;
    min-height: 430px;

    display: flex;

    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            135deg,
            #eaf2fa,
            #f7fafe
        );

    color: #0b3264;

    font-size: 90px;
}

@media (max-width: 991.98px) {

    .mv-hero {
        padding:
            42px 0 38px;
    }


    .mv-hero h1 {
        font-size: 31px;
    }


    .mv-section {
        padding:
            40px 0 50px;
    }


    .mv-card,
    .mv-card-reverse {
        grid-template-columns:
            1fr;
    }


    .mv-card-reverse
    .mv-content {
        order: 1;
    }


    .mv-card-reverse
    .mv-image {
        order: 2;
    }


    .mv-content {
        padding:
            38px;
    }


    .mv-image {
        min-height: 360px;
    }

}

@media (max-width: 575.98px) {

    .mv-container {
        width:
            calc(100% - 26px);
    }


    .mv-hero {
        padding:
            32px 0;
    }


    .mv-hero h1 {
        font-size: 27px;
    }


    .mv-hero p {
        font-size: 12.5px;
    }


    .mv-section {
        padding:
            30px 0 38px;
    }


    .mv-card {
        margin-bottom: 20px;

        border-radius: 11px;
    }


    .mv-content {
        padding:
            28px 20px;
    }


    .mv-number {
        top: 12px;
        right: 15px;

        font-size: 55px;
    }


    .mv-content h2 {
        font-size: 23px;
    }


    .mv-content p {
        font-size: 13px;

        line-height: 1.7;

        text-align: left;
    }


    .mv-image {
        min-height: 0;
    }


    .mv-image img {
        width: 100%;

        height: auto;

        object-fit: contain;
    }


    .mv-no-image {
        min-height: 250px;

        font-size: 65px;
    }

}