.elementor-85 .elementor-element.elementor-element-100a6ef{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-85 .elementor-element.elementor-element-100a6ef{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-85 .elementor-element.elementor-element-0212567{width:100%;max-width:100%;}}/* Start custom CSS for html, class: .elementor-element-0212567 */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Roboto:wght@400;500;600;700&display=swap');

:root{
    --zfx-navy:#12384f;
    --zfx-navy-dark:#0d2b3d;
    --zfx-orange:#ff571c;
    --zfx-orange-light:#ff7448;
    --zfx-white:#ffffff;
}


/* =========================================================
   RESET
========================================================= */

.zfx-footer,
.zfx-footer *,
.zfx-footer *::before,
.zfx-footer *::after{
    box-sizing:border-box;
}

.zfx-footer a{
    text-decoration:none;
}

.zfx-footer img{
    max-width:100%;
}


/* =========================================================
   FOOTER
========================================================= */

.zfx-footer{
    position:relative;

    width:100%;

    overflow:hidden;

    padding:
        68px
        0
        0;

    background:
        radial-gradient(
            circle at 92% 0%,
            rgba(255,87,28,.10),
            transparent 26%
        ),
        linear-gradient(
            120deg,
            #173e56 0%,
            #103247 55%,
            #0b293b 100%
        );

    color:#fff;

    font-family:"Roboto",sans-serif;
}


/* =========================================================
   GHOST WORD
========================================================= */

.zfx-footer__ghost{
    position:absolute;

    left:18px;
    bottom:-20px;

    z-index:0;

    font-family:"Montserrat",sans-serif;

    font-size:
        clamp(110px,15vw,250px);

    font-weight:800;

    line-height:.75;

    letter-spacing:-.075em;

    color:transparent;

    -webkit-text-stroke:
        1px rgba(255,255,255,.045);

    pointer-events:none;

    user-select:none;
}


/* =========================================================
   ORBIT
========================================================= */

.zfx-footer__orbit{
    position:absolute;

    width:280px;
    height:280px;

    right:-140px;
    top:-165px;

    border-radius:50%;

    border:
        38px solid var(--zfx-orange);

    opacity:.98;

    pointer-events:none;
}

.zfx-footer__orbit::before{
    content:"";

    position:absolute;

    inset:22px;

    border-radius:50%;

    border:
        1px solid rgba(255,255,255,.22);
}


/* =========================================================
   INNER
========================================================= */

.zfx-footer__inner{
    position:relative;
    z-index:2;

    width:min(
        1450px,
        calc(100% - 80px)
    );

    margin:0 auto;

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:80px;

    padding-bottom:60px;
}


/* =========================================================
   BRAND
========================================================= */

.zfx-footer__brand{
    display:flex;

    align-items:center;

    gap:44px;

    min-width:0;
}


/* =========================================================
   LOGO ZONE
========================================================= */

.zfx-footer__logo-zone{
    position:relative;

    width:180px;
    height:170px;

    flex:0 0 180px;
}


/* clickable */

.zfx-footer__logo-card{
    position:relative;

    display:block;

    width:165px;
    height:165px;
}


/* same orange backing as header */

.zfx-footer__logo-back{
    position:absolute;

    width:158px;
    height:158px;

    left:17px;
    top:13px;

    background:var(--zfx-orange);

    border-radius:4px;

    transform:
        rotate(-3deg);

    z-index:1;
}


/* image */

.zfx-footer__logo-image{
    position:absolute;

    left:0;
    top:0;

    width:165px;
    height:165px;

    overflow:hidden;

    border-radius:7px;

    background:#173b73;

    box-shadow:
        0 20px 44px
        rgba(0,0,0,.2);

    transform:
        rotate(-1.5deg);

    z-index:2;

    transition:
        transform .4s cubic-bezier(.2,.8,.2,1),
        box-shadow .4s ease;
}


/* force image size */

.zfx-footer__logo-image img{
    display:block !important;

    width:100% !important;
    height:100% !important;

    max-width:100% !important;

    margin:0 !important;
    padding:0 !important;

    border:0 !important;
    outline:0 !important;

    object-fit:cover !important;
    object-position:center !important;

    transform:
        scale(1.03);
}


/* hover */

.zfx-footer__logo-card:hover
.zfx-footer__logo-image{
    transform:
        rotate(0deg)
        translateY(-3px);

    box-shadow:
        0 24px 50px
        rgba(0,0,0,.25);
}


/* =========================================================
   BRAND COPY
========================================================= */

.zfx-footer__brand-copy{
    max-width:430px;
}


.zfx-footer__eyebrow{
    display:block;

    margin-bottom:15px;

    color:var(--zfx-orange);

    font-family:"Montserrat",sans-serif;

    font-size:11px;

    font-weight:700;

    letter-spacing:.16em;
}


.zfx-footer__brand-copy p{
    max-width:420px;

    margin:0;

    color:rgba(255,255,255,.9);

    font-family:"Montserrat",sans-serif;

    font-size:
        clamp(22px,1.7vw,28px);

    font-weight:500;

    line-height:1.42;

    letter-spacing:-.025em;
}


/* =========================================================
   SOCIAL
========================================================= */

.zfx-footer__social{
    position:relative;

    flex:0 0 auto;

    margin-left:auto;
}


.zfx-footer__mini{
    display:block;

    margin-bottom:18px;

    color:rgba(255,255,255,.48);

    font-family:"Montserrat",sans-serif;

    font-size:10px;

    font-weight:700;

    letter-spacing:.18em;
}


.zfx-footer__social-list{
    display:flex;

    align-items:center;

    gap:12px;
}


/* icon button */

.zfx-footer__social-list a{
    width:50px;
    height:50px;

    flex:0 0 50px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid rgba(255,255,255,.18);

    border-radius:50%;

    color:#fff;

    transition:
        background .3s ease,
        border-color .3s ease,
        transform .3s ease;
}


.zfx-footer__social-list svg{
    width:19px;
    height:19px;

    fill:currentColor;
}


.zfx-footer__social-list a:hover{
    background:var(--zfx-orange);

    border-color:var(--zfx-orange);

    transform:
        translateY(-4px);
}


/* =========================================================
   BOTTOM
========================================================= */

.zfx-footer__bottom{
    position:relative;
    z-index:3;

    width:min(
        1450px,
        calc(100% - 80px)
    );

    min-height:78px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        auto
        1fr;

    align-items:center;

    gap:40px;

    border-top:
        1px solid rgba(255,255,255,.14);
}


/* =========================================================
   COPYRIGHT
========================================================= */

.zfx-footer__copyright{
    color:
        rgba(255,255,255,.48);

    font-size:13px;

    white-space:nowrap;
}


/* =========================================================
   LEGAL
========================================================= */

.zfx-footer__legal{
    display:flex;

    align-items:center;

    justify-content:flex-end;

    flex-wrap:wrap;

    gap:
        9px
        25px;
}


.zfx-footer__legal a{
    position:relative;

    color:
        rgba(255,255,255,.55);

    font-size:13px;

    transition:
        color .25s ease;
}


.zfx-footer__legal a:not(:last-child)::after{
    content:"";

    position:absolute;

    right:-15px;
    top:50%;

    width:4px;
    height:4px;

    transform:
        translateY(-50%);

    border-radius:50%;

    background:var(--zfx-orange);
}


.zfx-footer__legal a:hover{
    color:#fff;
}


/* =========================================================
   LAPTOP
========================================================= */

@media(max-width:1200px){

    .zfx-footer{
        padding-top:60px;
    }


    .zfx-footer__inner{
        width:
            calc(100% - 60px);

        gap:50px;
    }


    .zfx-footer__brand{
        gap:32px;
    }


    .zfx-footer__logo-zone{
        width:155px;
        height:150px;

        flex-basis:155px;
    }


    .zfx-footer__logo-card,
    .zfx-footer__logo-image{
        width:145px;
        height:145px;
    }


    .zfx-footer__logo-back{
        width:138px;
        height:138px;

        left:15px;
        top:11px;
    }


    .zfx-footer__brand-copy p{
        font-size:
            clamp(20px,1.7vw,25px);
    }


    .zfx-footer__bottom{
        width:
            calc(100% - 60px);
    }

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

    .zfx-footer{
        padding-top:55px;
    }


    .zfx-footer__inner{
        width:
            calc(100% - 48px);

        display:grid;

        grid-template-columns:1fr;

        gap:45px;

        padding-bottom:48px;
    }


    .zfx-footer__brand{
        max-width:680px;
    }


    .zfx-footer__social{
        margin-left:0;
    }


    .zfx-footer__bottom{
        width:
            calc(100% - 48px);

        grid-template-columns:1fr;

        justify-items:start;

        gap:18px;

        padding:
            24px
            0;
    }


    .zfx-footer__legal{
        justify-content:flex-start;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .zfx-footer{
        padding:
            44px
            0
            22px;
    }


    .zfx-footer__orbit{
        width:175px;
        height:175px;

        right:-105px;
        top:-100px;

        border-width:25px;
    }


    .zfx-footer__orbit::before{
        inset:14px;
    }


    .zfx-footer__inner{
        width:
            calc(100% - 30px);

        display:block;

        padding-bottom:40px;
    }


    /* =====================================================
       BRAND MOBILE
    ===================================================== */

    .zfx-footer__brand{
        display:flex;

        flex-direction:column;

        align-items:flex-start;

        gap:28px;
    }


    /* logo larger on mobile */

    .zfx-footer__logo-zone{
        width:150px;
        height:145px;

        flex:0 0 auto;
    }


    .zfx-footer__logo-card,
    .zfx-footer__logo-image{
        width:140px;
        height:140px;
    }


    .zfx-footer__logo-back{
        width:134px;
        height:134px;

        left:13px;
        top:10px;
    }


    /* brand text */

    .zfx-footer__eyebrow{
        font-size:9px;
    }


    .zfx-footer__brand-copy p{
        max-width:310px;

        font-size:21px;

        line-height:1.4;
    }


    /* =====================================================
       SOCIAL MOBILE
    ===================================================== */

    .zfx-footer__social{
        margin:
            38px
            0
            0;

        padding-top:28px;

        border-top:
            1px solid rgba(255,255,255,.12);
    }


    .zfx-footer__social-list{
        gap:10px;
    }


    .zfx-footer__social-list a{
        width:46px;
        height:46px;

        flex-basis:46px;
    }


    .zfx-footer__social-list svg{
        width:17px;
        height:17px;
    }


    /* =====================================================
       BOTTOM MOBILE
    ===================================================== */

    .zfx-footer__bottom{
        width:
            calc(100% - 30px);

        padding:
            22px
            0
            0;

        grid-template-columns:1fr;

        gap:18px;
    }


    .zfx-footer__copyright{
        font-size:12px;

        white-space:normal;
    }


    .zfx-footer__legal{
        flex-direction:column;

        align-items:flex-start;

        gap:10px;
    }


    .zfx-footer__legal a{
        font-size:12px;
    }


    .zfx-footer__legal
    a:not(:last-child)::after{
        display:none;
    }


    .zfx-footer__ghost{
        left:-10px;

        bottom:35px;

        font-size:95px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:390px){

    .zfx-footer__inner,
    .zfx-footer__bottom{
        width:
            calc(100% - 24px);
    }


    .zfx-footer__logo-zone{
        width:135px;
        height:130px;
    }


    .zfx-footer__logo-card,
    .zfx-footer__logo-image{
        width:125px;
        height:125px;
    }


    .zfx-footer__logo-back{
        width:120px;
        height:120px;

        left:12px;
        top:9px;
    }


    .zfx-footer__brand-copy p{
        font-size:19px;
    }

}

/* =========================================================
   FIX DEFINITIF — ESPACE BLANC SOUS LE FOOTER
========================================================= */

/* Le footer doit réellement terminer la page */
html,
body{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Footer */
.zfx-footer{
    display: block !important;
    width: 100% !important;

    margin: 0 !important;
    margin-bottom: 0 !important;

    padding-bottom: 0 !important;

    background: #12384d !important;
}


/* Dernier élément du footer */
.zfx-footer__bottom{
    margin-bottom: 0 !important;
}


/* Empêche le dernier enfant de créer une marge externe */
.zfx-footer > *:last-child,
.zfx-footer__bottom > *:last-child{
    margin-bottom: 0 !important;
}


/* =========================================================
   ELEMENTOR
========================================================= */

/* Widget HTML qui contient le footer */
.elementor-widget-html:has(.zfx-footer){
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.elementor-widget-html:has(.zfx-footer) > .elementor-widget-container{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}


/* Container Elementor contenant le footer */
.e-con:has(.zfx-footer),
.elementor-section:has(.zfx-footer),
.elementor-container:has(.zfx-footer),
.elementor-column:has(.zfx-footer){
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}


/* =========================================================
   WORDPRESS / THEME
========================================================= */

/* évite une marge après le contenu */
.site-main,
main,
#content,
.site-content,
.entry-content{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}


/* Aucun paragraphe vide après le footer */
.zfx-footer + p:empty,
.zfx-footer + br{
    display: none !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px){

    html,
    body{
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    .zfx-footer{
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    .zfx-footer__bottom{
        margin-bottom: 0 !important;
        padding-bottom: 28px !important;
    }

}
/* =========================================================
   FIX IOS SAFARI OVERSCROLL SOUS LE FOOTER
========================================================= */

html{
    background:#17384f !important;
}

body{
    margin:0 !important;
    background:#17384f !important;
    overflow-x:hidden !important;
}


/* couche fixe derrière toute la page */
body::before{
    content:"";

    position:fixed;

    inset:0;

    z-index:-9999;

    background:#17384f;

    pointer-events:none;
}


/* contenu principal */
main,
.site-main,
.elementor,
.elementor-page,
.elementor-location-single{
    position:relative;

    z-index:0;

    background:#fbfaf7;
}


/* footer */
footer,
.site-footer,
.zb-footer,
.elementor-location-footer{
    position:relative;

    z-index:1;

    background:#17384f !important;
}


/* =========================================================
   IOS / SAFARI
========================================================= */

@supports (-webkit-touch-callout:none){

    html,
    body{
        background:#17384f !important;

        min-height:100%;
    }

    body::before{
        display:block !important;

        background:#17384f !important;
    }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-100a6ef */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700&family=Roboto:wght@400;500;600;700&display=swap');

:root{
    --zbf-navy:#12384f;
    --zbf-navy-dark:#0d2a3b;
    --zbf-orange:#ff591f;
    --zbf-white:#ffffff;
    --zbf-cream:#f5f1ea;
}


/* =========================================================
   RESET
========================================================= */

.zb-footer,
.zb-footer *,
.zb-footer *::before,
.zb-footer *::after{
    box-sizing:border-box;
}

.zb-footer{
    position:relative;

    width:100%;

    font-family:"Roboto",sans-serif;

    background:var(--zbf-navy-dark);

    color:#fff;
}

.zb-footer a{
    text-decoration:none;
}


/* =========================================================
   CTA AREA
========================================================= */

.zb-footer__cta-wrap{
    padding:
        65px
        50px
        0;

    background:var(--zbf-cream);
}


.zb-footer__cta{
    position:relative;

    width:min(1500px,100%);

    min-height:260px;

    margin:auto;

    padding:
        48px
        55px;

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:70px;

    overflow:hidden;

    border-radius:
        28px
        28px
        0
        0;

    background:
        radial-gradient(
            circle at 90% -15%,
            rgba(255,89,31,.18),
            transparent 30%
        ),
        linear-gradient(
            130deg,
            #163d55,
            #0f2e41
        );
}


/* orange arc */

.zb-footer__cta::after{
    content:"";

    position:absolute;

    width:270px;
    height:270px;

    right:-135px;
    top:-150px;

    border-radius:50%;

    border:
        38px solid var(--zbf-orange);

    opacity:.95;
}


/* =========================================================
   CTA CONTENT
========================================================= */

.zb-footer__cta-content{
    position:relative;

    z-index:2;

    max-width:900px;
}


.zb-footer__eyebrow{
    display:block;

    margin-bottom:20px;

    color:rgba(255,255,255,.52);

    font-size:9px;

    font-weight:700;

    letter-spacing:.2em;
}


.zb-footer__cta-content h2{
    margin:0;

    font-family:"Montserrat",sans-serif;

    color:#fff;

    font-size:
        clamp(36px,3.3vw,56px);

    font-weight:700;

    line-height:1.05;

    letter-spacing:-.045em;
}


.zb-footer__cta-content h2 span{
    color:var(--zbf-orange);
}


.zb-footer__cta-content p{
    max-width:700px;

    margin:
        22px
        0
        0;

    color:rgba(255,255,255,.72);

    font-size:16px;

    font-weight:500;

    line-height:1.7;
}


/* =========================================================
   CTA BUTTON
========================================================= */

.zb-footer__cta-button{
    position:relative;

    z-index:3;

    min-width:215px;

    padding:
        7px
        7px
        7px
        24px;

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:25px;

    overflow:hidden;

    border-radius:100px;

    background:#fff;

    color:var(--zbf-navy);

    font-family:"Montserrat",sans-serif;

    font-size:14px;

    font-weight:700;

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.zb-footer__cta-icon{
    width:46px;
    height:46px;

    flex:none;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:var(--zbf-orange);

    color:#fff;

    font-size:18px;

    transition:
        transform .35s ease;
}


.zb-footer__cta-button:hover{
    transform:translateY(-3px);

    box-shadow:
        0 14px 30px rgba(0,0,0,.16);
}


.zb-footer__cta-button:hover
.zb-footer__cta-icon{
    transform:rotate(45deg);
}


/* =========================================================
   FOOTER MAIN
========================================================= */

.zb-footer__main{
    padding:
        65px
        50px
        28px;

    background:
        radial-gradient(
            circle at 10% 100%,
            rgba(255,89,31,.08),
            transparent 28%
        ),
        var(--zbf-navy-dark);
}


/* =========================================================
   INNER GRID
========================================================= */

.zb-footer__inner{
    width:min(1500px,100%);

    margin:auto;

    display:grid;

    grid-template-columns:
        1.4fr
        repeat(4,1fr);

    gap:
        clamp(35px,5vw,75px);
}


/* =========================================================
   BRAND
========================================================= */

.zb-footer__brand{
    max-width:300px;
}


.zb-footer__logo{
    display:block;

    width:100px;
    height:78px;

    overflow:hidden;

    border-radius:6px;
}


.zb-footer__logo img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    transform:scale(1.08);
}


.zb-footer__brand p{
    margin:
        22px
        0
        0;

    color:rgba(255,255,255,.58);

    font-size:14px;

    font-weight:500;

    line-height:1.65;
}


/* =========================================================
   SOCIAL
========================================================= */

.zb-footer__socials{
    margin-top:25px;

    display:flex;

    align-items:center;

    gap:10px;
}


.zb-footer__socials a{
    width:42px;
    height:42px;

    display:flex;

    align-items:center;
    justify-content:center;

    border:
        1px solid rgba(255,255,255,.13);

    border-radius:50%;

    color:#fff;

    transition:
        background .3s ease,
        transform .3s ease,
        border-color .3s ease;
}


.zb-footer__socials svg{
    width:17px;
    height:17px;

    fill:currentColor;
}


.zb-footer__socials a:hover{
    transform:translateY(-3px);

    border-color:var(--zbf-orange);

    background:var(--zbf-orange);
}


/* =========================================================
   COLUMNS
========================================================= */

.zb-footer__column{
    display:flex;

    flex-direction:column;

    align-items:flex-start;

    gap:13px;
}


.zb-footer__column-title{
    position:relative;

    margin-bottom:10px;

    color:#fff;

    font-family:"Montserrat",sans-serif;

    font-size:15px;

    font-weight:600;
}


.zb-footer__column-title::after{
    content:"";

    display:block;

    width:24px;
    height:2px;

    margin-top:10px;

    background:var(--zbf-orange);
}


.zb-footer__column a{
    position:relative;

    color:rgba(255,255,255,.59);

    font-size:14px;

    font-weight:500;

    line-height:1.45;

    transition:
        color .3s ease,
        transform .3s ease;
}


.zb-footer__column a::before{
    content:"";

    position:absolute;

    left:-12px;
    top:8px;

    width:4px;
    height:4px;

    border-radius:50%;

    background:var(--zbf-orange);

    opacity:0;

    transition:
        opacity .3s ease;
}


.zb-footer__column a:hover{
    color:#fff;

    transform:translateX(8px);
}


.zb-footer__column a:hover::before{
    opacity:1;
}


/* =========================================================
   BOTTOM
========================================================= */

.zb-footer__bottom{
    width:min(1500px,100%);

    margin:
        55px
        auto
        0;

    padding-top:24px;

    display:grid;

    grid-template-columns:
        auto
        1fr
        auto;

    align-items:center;

    gap:35px;

    border-top:
        1px solid rgba(255,255,255,.11);
}


/* copyright */

.zb-footer__copyright{
    color:rgba(255,255,255,.42);

    font-size:12px;

    white-space:nowrap;
}


/* legal */

.zb-footer__legal{
    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:
        10px
        24px;
}


.zb-footer__legal a{
    color:rgba(255,255,255,.50);

    font-size:12px;

    transition:color .3s ease;
}


.zb-footer__legal a:hover{
    color:#fff;
}


/* =========================================================
   BACK TO TOP
========================================================= */

.zb-footer__top-link{
    display:flex;

    align-items:center;

    gap:11px;

    color:rgba(255,255,255,.55);

    font-size:12px;

    white-space:nowrap;
}


.zb-footer__top-link span:last-child{
    width:30px;
    height:30px;

    display:flex;

    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.07);

    color:var(--zbf-orange);

    transition:
        transform .3s ease,
        background .3s ease;
}


.zb-footer__top-link:hover{
    color:#fff;
}


.zb-footer__top-link:hover
span:last-child{
    transform:translateY(-3px);

    background:rgba(255,255,255,.12);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1100px){

    .zb-footer__inner{
        grid-template-columns:
            repeat(2,1fr);

        gap:50px;
    }

    .zb-footer__brand{
        max-width:none;
    }

    .zb-footer__cta{
        gap:40px;
    }

    .zb-footer__bottom{
        grid-template-columns:1fr;

        text-align:center;

        justify-items:center;

        gap:18px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:700px){

    .zb-footer__cta-wrap{
        padding:
            35px
            15px
            0;
    }


    .zb-footer__cta{
        min-height:auto;

        padding:
            38px
            24px;

        display:block;

        border-radius:
            20px
            20px
            0
            0;
    }


    .zb-footer__cta-content h2{
        font-size:
            clamp(32px,9vw,42px);
    }


    .zb-footer__cta-content p{
        font-size:15px;
    }


    .zb-footer__cta-button{
        width:100%;

        margin-top:30px;
    }


    .zb-footer__cta::after{
        width:160px;
        height:160px;

        right:-95px;
        top:-95px;

        border-width:24px;
    }


    .zb-footer__main{
        padding:
            45px
            20px
            25px;
    }


    .zb-footer__inner{
        grid-template-columns:1fr;

        gap:40px;
    }


    .zb-footer__brand{
        max-width:320px;
    }


    .zb-footer__column{
        padding-bottom:25px;

        border-bottom:
            1px solid rgba(255,255,255,.08);
    }


    .zb-footer__column:last-child{
        border-bottom:0;
    }


    .zb-footer__column-title{
        font-size:16px;
    }


    .zb-footer__column a{
        font-size:15px;
    }


    .zb-footer__bottom{
        margin-top:35px;

        padding-top:22px;
    }


    .zb-footer__legal{
        flex-direction:column;

        align-items:center;

        gap:10px;
    }

}/* End custom CSS */