/*==================================================
            FOOTER
==================================================*/

.footer{

    position:relative;

    background:#111827;

    color:#ffffff;

    padding:80px 0 0;

    overflow:hidden;

}

/*==================================
        FOOTER TOP
===================================*/

.footer-top{

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1fr 1.2fr;

    gap:40px;

    padding-bottom:50px;

    border-bottom:1px solid rgba(255,255,255,.08);

}

/*==================================
        LOGO
===================================*/

.footer-logo{

    margin-bottom:25px;

}

.footer-logo img{

    height:42px;

}

.footer-column p{

    color:#9ca3af;

    font-size:15px;

    line-height:28px;

    margin-bottom:25px;

}

/*==================================
        TITLE
===================================*/

.footer-column h4{

    font-size:20px;

    font-weight:600;

    margin-bottom:22px;

    color:#ffffff;

}

/*==================================
        LINKS
===================================*/

.footer-column ul{

    list-style:none;

}

.footer-column ul li{

    margin-bottom:15px;

}

.footer-column ul li a{

    color:#9ca3af;

    font-size:15px;

    transition:.3s;

}

.footer-column ul li a:hover{

    color:#5B3DF5;

    padding-left:8px;

}

/*==================================
        CONTACT
===================================*/

.footer-column ul li i{

    width:22px;

    color:#5B3DF5;

    margin-right:8px;

}

/*==================================
        SOCIAL
===================================*/

.social-links{

    display:flex;

    gap:12px;

}

.social-links a{

    width:42px;

    height:42px;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    display:flex;

    align-items:center;

    justify-content:center;

    color:#ffffff;

    transition:.35s;

}

.social-links a:hover{

    background:#5B3DF5;

    transform:translateY(-5px);

}

/*==================================
        FOOTER BOTTOM
===================================*/

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:25px 0;

}

.footer-bottom p{

    color:#9ca3af;

    font-size:14px;

}

.footer-links{

    display:flex;

    gap:25px;

}

.footer-links a{

    color:#9ca3af;

    font-size:14px;

    transition:.3s;

}

.footer-links a:hover{

    color:#ffffff;

}

/*==================================
        BACK TO TOP
===================================*/

.back-to-top{

    position:fixed;

    right:30px;

    bottom:30px;

    width:50px;

    height:50px;

    border-radius:50%;

    background:#5B3DF5;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    cursor:pointer;

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:999;

    box-shadow:0 10px 30px rgba(91,61,245,.35);

}

.back-to-top.active{

    opacity:1;

    visibility:visible;

}

.back-to-top:hover{

    transform:translateY(-5px);

    background:#4728e8;

}

/*==================================
        GLOBAL RESPONSIVE
===================================*/

@media(max-width:1200px){

.footer-top{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:992px){

.footer{

padding:70px 0 0;

}

.footer-top{

grid-template-columns:repeat(2,1fr);

gap:35px;

}

.footer-bottom{

flex-direction:column;

gap:15px;

text-align:center;

}

}

@media(max-width:768px){

.footer{

padding:60px 0 0;

}

.footer-top{

grid-template-columns:1fr;

gap:30px;

}

.footer-column{

text-align:left;

}

.footer-links{

flex-wrap:wrap;

justify-content:center;

gap:15px;

}

.social-links{

justify-content:flex-start;

}

.back-to-top{

width:45px;

height:45px;

right:20px;

bottom:20px;

}

}

@media(max-width:576px){

.footer{

padding:50px 0 0;

}

.footer-column h4{

font-size:18px;

}

.footer-column p,

.footer-column ul li a{

font-size:14px;

}

.footer-bottom{

padding:20px 0;

}

.footer-bottom p{

font-size:13px;

}

.footer-links{

flex-direction:column;

gap:10px;

}

.social-links a{

width:38px;

height:38px;

}

.back-to-top{

width:42px;

height:42px;

font-size:16px;

}

}

/*==================================================
        COMMON UTILITIES
==================================================*/

.text-center{
    text-align:center;
}

.mt-30{
    margin-top:30px;
}

.mt-50{
    margin-top:50px;
}

.mb-30{
    margin-bottom:30px;
}

.mb-50{
    margin-bottom:50px;
}

.py-80{
    padding:80px 0;
}

.bg-white{
    background:#fff;
}

.bg-light{
    background:#f8fafc;
}

.rounded{
    border-radius:16px;
}

.shadow{
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.transition{
    transition:.35s ease;
}

.d-flex{
    display:flex;
}

.align-center{
    align-items:center;
}

.justify-between{
    justify-content:space-between;
}