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

.footer{

    background:#0f172a;

    color:#cbd5e1;

    padding:90px 0 35px;

}

.footer-grid{

    display:grid;

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

    gap:60px;

    margin-bottom:60px;

}

.footer-logo{

    display:inline-block;

    font-size:1.75rem;

    font-weight:800;

    color:white;

    text-decoration:none;

    margin-bottom:20px;

}

.footer-description{

    color:#94a3b8;

    line-height:1.8;

    margin-bottom:30px;

    max-width:380px;

}

.footer-column h3{

    color:white;

    font-size:1.1rem;

    margin-bottom:25px;

}

.footer-column ul{

    list-style:none;

    padding:0;

    margin:0;

}

.footer-column li{

    margin-bottom:16px;

}

.footer-column a{

    text-decoration:none;

    color:#94a3b8;

    transition:var(--transition-fast);

}

.footer-column a:hover{

    color:white;

    padding-left:6px;

}

.footer-social{

    display:flex;

    gap:15px;

}

.footer-social a{

    width:44px;

    height:44px;

    display:flex;

    align-items:center;

    justify-content:center;

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

    border-radius:50%;

    color:white;

    transition:var(--transition-base);

}

.footer-social a:hover{

    background:var(--color-primary);

    transform:translateY(-4px);

}

.footer-social svg{

    width:20px;

    height:20px;

}

.contact-list li{

    color:#94a3b8;

    line-height:1.8;

}

.footer-bottom{

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

    padding-top:30px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:20px;

}

.footer-bottom p{

    color:#64748b;

}

.footer-bottom div{

    display:flex;

    gap:30px;

}

.footer-bottom a{

    color:#94a3b8;

    text-decoration:none;

    transition:var(--transition-fast);

}

.footer-bottom a:hover{

    color:white;

}

@media (max-width: 1024px){

    .footer-grid{
        grid-template-columns: 1fr 1fr;
        gap:40px;
    }

}

@media (max-width: 1024px){

    .footer-grid{
        grid-template-columns: 1fr 1fr;
        gap:40px;
    }

}

@media (max-width: 768px){

    .footer{
        padding:70px 0 30px;
    }

    .footer-grid{
        grid-template-columns: 1fr;
        gap:35px;
    }

    .footer-description{
        max-width:100%;
    }

    .footer-bottom{
        flex-direction:column;
        align-items:flex-start;
        text-align:left;
    }

}

@media (max-width: 480px){

    .footer{
        padding:60px 0 25px;
    }

    .footer-social{
        flex-wrap:wrap;
    }

    .footer-social a{
        width:42px;
        height:42px;
    }

    .footer-column h3{
        margin-bottom:18px;
    }

    .footer-column li{
        margin-bottom:12px;
    }

    .footer-bottom div{
        flex-direction:column;
        gap:10px;
    }

}

.footer-column a{
    display:inline-block;
    padding:4px 0;
}