/*** ================== Main Footer =================== ***/
.main_footer{
    position: relative;
    overflow: hidden;
    z-index: 99;
    background-color: var(--primary-color);
}
.footer_top{
    padding: 70px 0px;
}
.about_widget{
    max-width: 420px;
}
.footer_widget .footer_logo{
    margin-bottom: 30px;
}
.footer_widget .footer_logo a{
    display: inline-block;
    background: #fff;
    border-radius: 12px;
    padding: 12px 14px;
}
.footer_widget .footer_logo img{
    max-width: 240px;
    height: auto;
}
.footer_widget p{
    line-height: 26px;
    color: rgba(255, 255, 255, 1);
    margin-bottom: 33px;
}
h4.footer_widget_title{
    color: #FFF;
    margin-bottom: 12px;
}
.footer_widget ul li a{
    color: #FFF;
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
    display: inline-block;
    font-family: var(--secondary-font);
    margin: 10px 0px;
    transition: all 900ms ease;
    -moz-transition: all 900ms ease;
    -webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
}
.footer_widget .page_list li a,
.footer_widget .primary_page_list li a{
    font-size: 15px;
    line-height: 1.35;
    margin: 3px 0;
}
.footer_widget ul li a:hover{
    color: #4777f4;
}
.subscribe-inner .form-group{
    display: inline-flex;
    gap: 10px;
    align-items: center;
}
.subscribe-inner .form-group input{
    width: auto;
    color: #fff;
    height: 50px;
    line-height: 50px;
    border-radius: 50px;
    border: 1px solid rgba(255, 255, 255, 0.20);
    background: rgba(255, 255, 255, 0.10);
    backdrop-filter: blur(5px);
}
.subscribe-inner .form-group input:focus{
    border-color: #4777f4;
}
.footer_bottom{
    position: relative;
    background: rgba(0, 0, 0, 0.50);
    backdrop-filter: blur(5px);
}
.footer_bottom .copyright{
    display: flex;
    padding: 37px 10px;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: #ffffff;
    flex-wrap: wrap;
    font-family: var(--secondary-font)
}
.footer_bottom .copyright a{
    color: #4777f4;
}
.footer_shape{
    position: absolute;
    width: 936px;
    height: 936px;
    bottom: -443px;
    z-index: -1;
    left: calc(50% - 468px);
    background: linear-gradient(45deg, #03355a 40%, #4777f4 100%);
    opacity: 0.12;
    filter: blur(125px);
}

/* End Footer Bottom */

@media only screen and (max-width: 1200px){
    .primary_page_widget{
        margin-left: 0;
    }
}
@media only screen and (max-width: 991px){
    .footer_top{
        padding: 60px 0px 50px;
    }
    .primary_page_widget{
        margin-left: 0;
    }
    .footer_widget{
        margin-bottom: 40px;
    }
    .footer_widget .subscribe-inner .form-group{
        margin-bottom: 0;
    }
}
@media only screen and (max-width: 767px){
    
}

/* Newsletter subscribe confirmation toast */
.newsletter-toast {
    position: fixed;
    left: 50%;
    bottom: 28px;
    transform: translate3d(-50%, 120%, 0);
    max-width: min(420px, calc(100vw - 32px));
    padding: 14px 22px;
    border-radius: 12px;
    font-family: var(--secondary-font, 'Inter', sans-serif);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.45;
    color: #fff;
    text-align: center;
    box-shadow: 0 8px 32px rgba(13, 37, 67, 0.28);
    z-index: 999998;
    opacity: 0;
    transition: transform 0.35s ease, opacity 0.35s ease;
    pointer-events: none;
}
.newsletter-toast.newsletter-toast--visible {
    transform: translate3d(-50%, 0, 0);
    opacity: 1;
}
.newsletter-toast--success {
    background: linear-gradient(135deg, #0d2543 0%, #3d60c2 100%);
}
.newsletter-toast--error {
    background: linear-gradient(135deg, #6b1c2e 0%, #b33 100%);
}

/* Inline confirmation under footer newsletter form (injected by main.js) */
.newsletter-inline-msg {
    margin-top: 14px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.45;
}
.newsletter-inline-msg--success {
    color: #1a7f4c;
}
.newsletter-inline-msg--error {
    color: #b3261e;
}