.elementor-117 .elementor-element.elementor-element-97766f7{--display:flex;}/* Start custom CSS for html, class: .elementor-element-bc96ace *//* =====================================================
   PREMIUM FOOTER
   ROYAL BLUE THEME
===================================================== */

.pb-footer{

    width:100%;

    box-sizing:border-box;

    background:
        linear-gradient(
            135deg,
            #061638 0%,
            #0b2463 50%,
            #123d91 100%
        );

    color:#ffffff;

    position:relative;

    overflow:hidden;
}


/* =====================================================
   BACKGROUND GLOW
===================================================== */

.pb-footer::before{

    content:"";

    position:absolute;

    width:500px;
    height:500px;

    top:-300px;
    right:-150px;

    background:rgba(96,165,250,.13);

    border-radius:50%;

    filter:blur(90px);

    pointer-events:none;
}


.pb-footer::after{

    content:"";

    position:absolute;

    width:400px;
    height:400px;

    bottom:-250px;
    left:-200px;

    background:rgba(37,99,235,.12);

    border-radius:50%;

    filter:blur(90px);

    pointer-events:none;
}


/* =====================================================
   CONTAINER
===================================================== */

.pb-footer-container{

    width:100%;

    max-width:1250px;

    margin:auto;

    padding:70px 6% 0;

    box-sizing:border-box;

    position:relative;

    z-index:2;
}


/* =====================================================
   FOOTER GRID
===================================================== */

.pb-footer-grid{

    display:grid;

    grid-template-columns:
        1.5fr
        1fr
        1.2fr
        1.3fr;

    gap:55px;

    padding-bottom:55px;
}


/* =====================================================
   LOGO AREA
===================================================== */

.pb-footer-brand{

    max-width:330px;
}


/* Logo box */

.pb-footer-logo{

    width:210px;

    height:70px;

    display:flex;

    align-items:center;

    justify-content:flex-start;

    margin-bottom:20px;

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,255,255,.12);

    border-radius:10px;

    padding:8px 15px;

    box-sizing:border-box;
}


/* Logo image */

.pb-footer-logo img{

    max-width:100%;

    max-height:54px;

    width:auto;

    height:auto;

    object-fit:contain;

    display:block;
}


/* Brand description */

.pb-footer-brand > p{

    margin:0;

    color:#cbd5e1;

    font-size:14px;

    line-height:25px;
}


/* =====================================================
   SOCIAL ICONS
===================================================== */

.pb-footer-social{

    display:flex;

    gap:10px;

    margin-top:23px;
}


.pb-footer-social a{

    width:36px;

    height:36px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.15);

    color:#ffffff !important;

    text-decoration:none !important;

    font-size:13px;

    font-weight:700;

    transition:all .3s ease;
}


.pb-footer-social a:hover{

    background:#2563eb;

    border-color:#60a5fa;

    transform:translateY(-3px);

    box-shadow:
        0 8px 20px rgba(37,99,235,.30);
}


/* =====================================================
   FOOTER HEADINGS
===================================================== */

.pb-footer-column h3{

    margin:4px 0 22px;

    color:#ffffff;

    font-size:17px;

    font-weight:700;

    position:relative;

    padding-bottom:11px;
}


/* Heading underline */

.pb-footer-column h3::after{

    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:32px;

    height:2px;

    background:#60a5fa;

    border-radius:5px;
}


/* =====================================================
   FOOTER LINKS
===================================================== */

.pb-footer-column ul{

    list-style:none;

    padding:0;

    margin:0;
}


.pb-footer-column li{

    margin-bottom:12px;
}


.pb-footer-column li a{

    color:#cbd5e1 !important;

    text-decoration:none !important;

    font-size:13px;

    transition:
        color .3s ease,
        padding-left .3s ease;
}


.pb-footer-column li a:hover{

    color:#ffffff !important;

    padding-left:5px;
}


/* =====================================================
   CONTACT DETAILS
===================================================== */

.pb-contact-detail{

    display:flex;

    align-items:flex-start;

    gap:12px;

    margin-bottom:16px;
}


.pb-contact-detail > span{

    width:30px;

    height:30px;

    flex-shrink:0;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(96,165,250,.12);

    border:1px solid rgba(96,165,250,.18);

    font-size:13px;
}


.pb-contact-detail p{

    margin:3px 0 0;

    color:#cbd5e1;

    font-size:13px;

    line-height:20px;
}


.pb-contact-detail a{

    color:#cbd5e1 !important;

    text-decoration:none !important;

    transition:color .3s ease;
}


.pb-contact-detail a:hover{

    color:#ffffff !important;
}


/* =====================================================
   FOOTER BOTTOM
===================================================== */

.pb-footer-bottom{

    min-height:65px;

    border-top:1px solid rgba(255,255,255,.12);

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:20px;
}


.pb-footer-bottom p{

    margin:0;

    color:#94a3b8;

    font-size:12px;
}


/* Legal links */

.pb-footer-legal{

    display:flex;

    align-items:center;

    gap:10px;
}


.pb-footer-legal a{

    color:#94a3b8 !important;

    text-decoration:none !important;

    font-size:12px;

    transition:color .3s ease;
}


.pb-footer-legal a:hover{

    color:#ffffff !important;
}


.pb-footer-legal span{

    color:#475569;

    font-size:11px;
}


/* =====================================================
   TABLET
===================================================== */

@media(max-width:1000px){

    .pb-footer-grid{

        grid-template-columns:
            1.5fr 1fr 1fr;

        gap:40px;
    }

    .pb-footer-contact{

        grid-column:span 3;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media(max-width:700px){

    .pb-footer-container{

        padding:55px 6% 0;
    }


    .pb-footer-grid{

        grid-template-columns:1fr;

        gap:38px;

        padding-bottom:40px;
    }


    .pb-footer-brand{

        max-width:100%;
    }


    .pb-footer-logo{

        width:200px;

        height:65px;
    }


    .pb-footer-contact{

        grid-column:auto;
    }


    .pb-footer-column h3{

        margin-bottom:18px;
    }


    .pb-footer-bottom{

        padding:20px 0;

        flex-direction:column;

        justify-content:center;

        text-align:center;

        gap:12px;
    }


    .pb-footer-legal{

        justify-content:center;

        flex-wrap:wrap;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media(max-width:400px){

    .pb-footer-container{

        padding-left:5%;

        padding-right:5%;
    }


    .pb-footer-logo{

        width:185px;

        height:60px;
    }


    .pb-footer-brand > p{

        font-size:13px;

        line-height:23px;
    }

}/* End custom CSS */