.elementor-40 .elementor-element.elementor-element-224a8bf{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-05c8402 */.footer-section{
    position:relative;
    padding:80px 50px 0;
    background:#18222D;
    overflow:hidden;
}

.footer-section .container{
    max-width:1400px;
    margin:0 auto;
}

.footer-top{
    display:grid;
    grid-template-columns:1.3fr .7fr;
    gap:100px;
    padding:0 0 60px;
    border-bottom:1px solid rgba(255,255,255,.12);
}

.footer-left{
    max-width:560px;
}

.footer-logo{
    display:inline-block;
    margin-bottom:30px;
}

.footer-logo img{
    max-width:180px;
    display:block;
}

.footer-description{
    margin:0;
    font-family:'Instrument Sans',sans-serif;
    font-size:17px;
    line-height:32px;
    color:rgba(255,255,255,.75);
}

.footer-right{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:35px;
}

.footer-contact h4{
    margin:0 0 10px;
    font-family:'Fraunces',serif;
    font-size:24px;
    font-weight:500;
    color:#FFFFFF;
}

.footer-contact a{
    display:inline-block;
    text-decoration:none;
    font-family:'Instrument Sans',sans-serif;
    font-size:17px;
    font-weight:500;
    color:rgba(255,255,255,.75);
    transition:.3s ease;
}

.footer-contact a:hover{
    color:#F2D38D;
}

.footer-social{
    display:flex;
    align-items:center;
    gap:15px;
}
.footer-social a{
    width:50px;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,.15);
    border-radius:50%;
    background:rgba(255,255,255,.05);
    color:#FFFFFF;
    text-decoration:none;
    font-size:18px;
    transition:.3s ease;
}

.footer-social a:hover{
    background:#19643D;
    border-color:#19643D;
    color:#FFFFFF;
}

.footer-bottom{
    padding:30px 0;
}

.footer-menu{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:45px;
    margin:0;
    padding:0;
    list-style:none;
}

.footer-menu li{
    position:relative;
}

.footer-menu li:not(:last-child)::after{
    content:"";
    position:absolute;
    top:50%;
    right:-23px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:rgba(255,255,255,.25);
    transform:translateY(-50%);
}

.footer-menu a{
    position:relative;
    display:inline-block;
    text-decoration:none;
    font-family:'Instrument Sans',sans-serif;
    font-size:16px;
    font-weight:500;
    color:rgba(255,255,255,.75);
    transition:.3s ease;
}

.footer-menu a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-6px;
    width:0;
    height:2px;
    background:#F2D38D;
    transition:width .3s ease;
}

.footer-menu a:hover{
    color:#FFFFFF;
}

.footer-menu a:hover::after{
    width:100%;
}

.footer-section::before{
    content:"";
    position:absolute;
    top:-180px;
    left:-180px;
    width:360px;
    height:360px;
    border:1px solid rgba(242,211,141,.08);
    border-radius:50%;
}

.footer-section::after{
    content:"";
    position:absolute;
    right:-150px;
    bottom:-150px;
    width:300px;
    height:300px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:50%;
}


@media (max-width:1024px){

    .footer-section{
        padding:50px 30px 0;
    }

    .footer-top{
        grid-template-columns:1.2fr .8fr;
        gap:60px;
        padding-bottom:45px;
    }

    .footer-left{
        max-width:480px;
    }

    .footer-logo{
        margin-bottom:24px;
    }

    .footer-logo img{
        max-width:160px;
    }

    .footer-description{
        font-size:16px;
        line-height:29px;
    }

    .footer-right{
        gap:28px;
    }

    .footer-contact h4{
        margin-bottom:8px;
        font-size:22px;
    }

    .footer-contact a{
        font-size:16px;
    }

    .footer-social{
        gap:12px;
    }

    .footer-social a{
        width:46px;
        height:46px;
        font-size:16px;
    }

    .footer-bottom{
        padding:26px 0;
    }

    .footer-menu{
        gap:35px;
    }

    .footer-menu li:not(:last-child)::after{
        right:-19px;
        width:5px;
        height:5px;
    }

    .footer-menu a{
        font-size:15px;
    }

}

@media (max-width:767px){

    .footer-section{
        padding:30px 10px 0;
    }

    /* Top Layout */

    .footer-top{
        grid-template-columns:1fr;
        gap:35px;
        padding-bottom:35px;
    }

    .footer-left{
        max-width:100%;
    }

    .footer-logo{
        margin-bottom:20px;
    }

    .footer-logo img{
        max-width:145px;
    }

    .footer-description{
        max-width:100%;
        font-size:15px;
        line-height:27px;
    }


    /* Contact Area */

    .footer-right{
        display:grid;
        grid-template-columns:1fr;
        gap:25px;
        align-items:start;
    }

    .footer-contact h4{
        margin-bottom:7px;
        font-size:20px;
    }

    .footer-contact a{
        font-size:15px;
        line-height:1.6;
        word-break:break-word;
    }


    /* Social Icons */

    .footer-social{
        gap:10px;
        flex-wrap:wrap;
    }

    .footer-social a{
        width:44px;
        height:44px;
        font-size:15px;
    }


    /* Bottom */

    .footer-bottom{
        padding:25px 0;
    }

    .footer-menu{
        justify-content:flex-start;
        flex-wrap:wrap;
        gap:15px 28px;
    }

    .footer-menu li:not(:last-child)::after{
        right:-16px;
        width:4px;
        height:4px;
    }

    .footer-menu a{
        font-size:14px;
    }


    /* Decorative Circles */

    .footer-section::before{
        top:-120px;
        left:-120px;
        width:240px;
        height:240px;
    }

    .footer-section::after{
        right:-100px;
        bottom:-100px;
        width:200px;
        height:200px;
    }

}
@media (max-width:480px){

    .footer-top{
        gap:30px;
        padding-bottom:30px;
    }

    .footer-logo img{
        max-width:135px;
    }

    .footer-description{
        font-size:14px;
        line-height:26px;
    }

    .footer-contact h4{
        font-size:19px;
    }

    .footer-contact a{
        font-size:14px;
    }

    .footer-social a{
        width:42px;
        height:42px;
        font-size:14px;
    }


    /* Menu - 2 Columns */

    .footer-menu{
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:16px 20px;
    }

    /* Remove dots in small mobile */

    .footer-menu li::after{
        display:none;
    }

    .footer-menu a{
        font-size:14px;
    }

    .footer-bottom{
        padding:22px 0;
    }

}

@media (max-width:360px){

    .footer-menu{
        grid-template-columns:1fr;
        gap:14px;
    }

    .footer-social{
        gap:8px;
    }

}/* End custom CSS */