.elementor-40 .elementor-element.elementor-element-c7a7bca{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-3ecd0de */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Roboto:wght@400;500;600;700&display=swap');

:root{
    --mv-blue:#21489A;
    --mv-orange:#ff571c;

    --mv-light:#fbfaf7;
    --mv-beige:#f4eee6;

    --mv-text:#647c8a;
    --mv-line:rgba(33,72,154,.11);
}


/* =========================================================
   RESET
========================================================= */

.mv-page,
.mv-page *,
.mv-page *::before,
.mv-page *::after{
    box-sizing:border-box;
}

.mv-page{
    width:100%;
    overflow:hidden;

    background:var(--mv-light);

    color:var(--mv-blue);

    font-family:"Roboto",sans-serif;
}

.mv-page a{
    text-decoration:none;
}

.mv-container{
    width:min(
        1040px,
        calc(100% - 90px)
    );

    margin:0 auto;
}


/* =========================================================
   HERO
========================================================= */

.mv-hero{
    position:relative;

    overflow:hidden;

    padding:
        clamp(55px,5vw,75px)
        0
        clamp(50px,4.5vw,65px);

    background:
        radial-gradient(
            circle at 92% 0%,
            rgba(255,87,28,.055),
            transparent 29%
        ),
        linear-gradient(
            115deg,
            var(--mv-light),
            var(--mv-beige)
        );
}


/* =========================================================
   GRID
========================================================= */

.mv-hero__grid{
    position:absolute;

    inset:0;

    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(33,72,154,.025) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(33,72,154,.025) 1px,
            transparent 1px
        );

    background-size:
        92px
        92px;
}


/* =========================================================
   LABEL
========================================================= */

.mv-label{
    position:relative;

    z-index:2;

    display:flex;

    align-items:center;

    gap:16px;

    margin-bottom:
        clamp(30px,3vw,42px);
}

.mv-label > span{
    width:42px;
    height:2px;

    flex:0 0 42px;

    background:var(--mv-orange);
}

.mv-label small{
    color:#748a97;

    font-family:"Montserrat",sans-serif;

    font-size:16px;

    font-weight:800;

    line-height:1;

    letter-spacing:.17em;

    text-transform:uppercase;
}


/* =========================================================
   H1
========================================================= */

.mv-title{
    position:relative;

    z-index:2;

    width:fit-content;

    max-width:100%;

    margin:0;

    font-family:"Montserrat",sans-serif;

    font-size:
        clamp(58px,5.6vw,90px);

    font-weight:800;

    line-height:.88;

    letter-spacing:-.06em;
}

.mv-title > span{
    display:block;

    color:var(--mv-blue);
}

.mv-title > strong{
    position:relative;

    display:block;

    width:fit-content;

    margin-top:8px;

    margin-left:
        clamp(38px,4vw,64px);

    color:var(--mv-orange);

    font-weight:800;
}


/* =========================================================
   DOT
========================================================= */

.mv-title__dot{
    position:absolute;

    left:
        calc(100% + .11em);

    bottom:.08em;

    width:.14em;
    height:.14em;

    background:var(--mv-blue);
}


/* =========================================================
   ACCROCHE
========================================================= */

.mv-hook{
    position:relative;

    z-index:2;

    max-width:900px;

    margin:
        clamp(30px,3vw,42px)
        0
        0;

    padding-left:22px;

    color:var(--mv-blue);

    font-family:"Montserrat",sans-serif;

    font-size:
        clamp(17px,1.3vw,21px);

    font-weight:600;

    line-height:1.55;
}

.mv-hook::before{
    content:"";

    position:absolute;

    left:0;
    top:4px;
    bottom:4px;

    width:2px;

    background:var(--mv-orange);
}


/* =========================================================
   CONTENT
========================================================= */

.mv-content{
    padding:
        clamp(52px,5vw,70px)
        0
        clamp(70px,7vw,95px);

    background:
        linear-gradient(
            115deg,
            #fbfaf7,
            #f6f0e9
        );
}


/* =========================================================
   BLOCK
========================================================= */

.mv-block{
    max-width:860px;

    margin-top:
        clamp(48px,5vw,68px);

    padding-top:
        clamp(30px,3vw,40px);

    border-top:
        1px solid
        var(--mv-line);
}

.mv-block:first-child{
    margin-top:0;

    padding-top:0;

    border-top:0;
}

.mv-block--last{
    margin-bottom:0;
}


/* =========================================================
   H2
========================================================= */

.mv-block h2{
    max-width:760px;

    margin:
        0
        0
        22px;

    color:var(--mv-blue);

    font-family:"Montserrat",sans-serif;

    font-size:
        clamp(30px,2.8vw,44px);

    font-weight:800;

    line-height:1.04;

    letter-spacing:-.045em;
}


/* =========================================================
   TEXT
========================================================= */

.mv-text{
    max-width:850px;
}

.mv-text p{
    margin:
        0
        0
        20px;

    color:var(--mv-text);

    font-size:
        clamp(15px,1vw,17px);

    line-height:1.82;
}

.mv-text p:last-child{
    margin-bottom:0;
}


/* =========================================================
   CTA
========================================================= */

.mv-cta{
    padding:
        clamp(65px,6vw,90px)
        0;

    background:#fbfaf7;

    border-top:
        1px solid
        var(--mv-line);
}

.mv-cta__layout{
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    align-items:center;

    gap:
        clamp(60px,8vw,130px);
}

.mv-cta__copy{
    max-width:680px;
}


/* =========================================================
   CTA KICKER
========================================================= */

.mv-kicker{
    display:flex;

    align-items:center;

    gap:13px;

    margin-bottom:22px;

    color:#748a97;

    font-family:"Montserrat",sans-serif;

    font-size:11px;

    font-weight:700;

    line-height:1;

    letter-spacing:.15em;

    text-transform:uppercase;
}

.mv-kicker::before{
    content:"";

    width:34px;
    height:2px;

    flex:0 0 34px;

    background:var(--mv-orange);
}


/* =========================================================
   CTA TITLE
========================================================= */

.mv-cta h2{
    margin:
        0
        0
        20px;

    font-family:"Montserrat",sans-serif;

    font-size:
        clamp(35px,3.5vw,55px);

    font-weight:800;

    line-height:.98;

    letter-spacing:-.045em;
}

.mv-cta h2 > span{
    display:block;

    color:var(--mv-blue);
}

.mv-cta h2 > strong{
    display:block;

    margin-top:5px;

    color:var(--mv-orange);

    font-weight:800;
}

.mv-cta__copy p{
    max-width:580px;

    margin:0;

    color:var(--mv-text);

    font-size:16px;

    line-height:1.7;
}


/* =========================================================
   CTA BUTTON
========================================================= */

.mv-cta__button{
    width:330px;

    min-height:64px;

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        64px;

    overflow:hidden;

    border-radius:18px;

    background:var(--mv-blue);

    box-shadow:
        0 12px 26px
        rgba(33,72,154,.10);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.mv-cta__text{
    min-height:64px;

    display:flex;

    align-items:center;
    justify-content:center;

    padding:
        0
        20px;

    color:#fff;

    font-family:"Montserrat",sans-serif;

    font-size:17px;

    font-weight:700;

    line-height:1;
}

.mv-cta__action{
    min-height:64px;

    display:flex;

    align-items:center;
    justify-content:center;

    background:var(--mv-orange);
}

.mv-cta__action svg{
    width:38px;

    height:auto;

    overflow:visible;

    transition:
        transform .3s
        cubic-bezier(.2,.8,.2,1);
}

.mv-cta__action path{
    fill:#fff;

    stroke:#fff;

    stroke-width:.5;

    stroke-linejoin:round;
}

.mv-cta__button:hover{
    transform:
        translateY(-3px);

    box-shadow:
        0 17px 34px
        rgba(33,72,154,.15);
}

.mv-cta__button:hover
.mv-cta__action svg{
    transform:
        translate(4px,-2px)
        rotate(-3deg);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

    .mv-container{
        width:
            calc(100% - 50px);
    }


    .mv-cta__layout{
        grid-template-columns:1fr;

        gap:38px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .mv-container{
        width:
            calc(100% - 32px);
    }


    /* HERO */

    .mv-hero{
        padding:
            42px
            0
            46px;
    }


    .mv-hero__grid{
        background-size:
            58px
            58px;
    }


    /* LABEL */

    .mv-label{
        gap:11px;

        margin-bottom:26px;
    }


    .mv-label > span{
        width:28px;

        flex-basis:28px;
    }


    .mv-label small{
        font-size:11px;

        letter-spacing:.14em;
    }


    /* TITLE */

    .mv-title{
        font-size:
            clamp(42px,11.5vw,56px);
    }


    .mv-title > strong{
        margin-left:
            clamp(24px,7vw,34px);
    }


    /* HOOK */

    .mv-hook{
        margin-top:25px;

        padding-left:16px;

        font-size:16px;

        line-height:1.55;
    }


    /* CONTENT */

    .mv-content{
        padding:
            44px
            0
            60px;
    }


    /* BLOCK */

    .mv-block{
        margin-top:42px;

        padding-top:30px;
    }


    .mv-block h2{
        margin-bottom:20px;

        font-size:
            clamp(27px,7.5vw,36px);
    }


    .mv-text p{
        font-size:14px;

        line-height:1.74;
    }


    /* CTA */

    .mv-cta{
        padding:
            55px
            0
            65px;
    }


    .mv-cta__layout{
        display:block;
    }


    .mv-cta h2{
        font-size:
            clamp(30px,8.5vw,39px);
    }


    .mv-cta__copy p{
        font-size:14px;
    }


    .mv-cta__button{
        width:100%;

        margin-top:32px;

        grid-template-columns:
            minmax(0,1fr)
            62px;
    }


    .mv-cta__text,
    .mv-cta__action{
        min-height:62px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:390px){

    .mv-container{
        width:
            calc(100% - 28px);
    }


    .mv-title{
        font-size:39px;
    }


    .mv-block h2{
        font-size:26px;
    }

}/* End custom CSS */