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

.footer{
    background:#020617;
    padding:90px 0 30px;
    border-top:1px solid rgba(255,255,255,.08);
}

.footer-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:40px;
    margin-bottom:60px;
}

.footer-column h3,
.footer-column h4{
    color:var(--white);
    margin-bottom:20px;
}

.footer-column p,
.footer-column li{
    color:var(--muted);
    margin-bottom:12px;
    list-style:none;
}

.footer-column a{
    transition:var(--transition);
}

.footer-column a:hover{
    color:var(--accent);
}

.footer-social{
    display:flex;
    gap:15px;
    margin-top:25px;
}

.footer-social a{
    width:45px;
    height:45px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.05);
    transition:var(--transition);
}

.footer-social a:hover{
    background:var(--primary);
    color:#fff;
}

.newsletter{
    text-align:center;
    padding:50px 30px;
    border-top:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.newsletter-form{
    display:flex;
    gap:15px;
    justify-content:center;
    flex-wrap:wrap;
    margin-top:25px;
}

.newsletter-form input{
    width:350px;
    max-width:100%;
    padding:15px 18px;
    border:none;
    border-radius:12px;
    background:var(--card);
    color:var(--white);
}

.footer-bottom{
    margin-top:40px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
}

.footer-legal{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
}

.footer-legal a:hover{
    color:var(--accent);
}

@media (max-width:768px){

    .footer-bottom{
        flex-direction:column;
        text-align:center;
    }

    .newsletter-form{
        flex-direction:column;
    }

    .newsletter-form input{
        width:100%;
    }

}

