/* Footer */
#footer{
    margin-top: 140px;
    border-top: 1px solid var(--color-border);
    background: rgba(255,255,255,.02);
    backdrop-filter: blur(18px);
}

/* Layout */
.footer-content{
    display: grid;
    grid-template-columns: 1.2fr .8fr .8fr;
    gap: 60px;
    padding: 80px 0;
}

/* Brand */
.footer-brand h3{
    margin-bottom: 18px;
    font-family: var(--font-title);
    font-size: 2rem;
}

.footer-brand p{
    max-width: 420px;
    color: var(--color-text-secondary);
    line-height: 1.8;
}

/* Navigation */
.footer-nav{
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.footer-nav a{
    color: var(--color-text-secondary);
    transition: var(--transition-fast);
}

.footer-nav a:hover{
    color: var(--color-primary);
    transform: translateX(6px);
}

/* Social */
.footer-social{
    display: flex;
    gap: 18px;
    align-items: flex-start;
}

.footer-social a{
    width: 54px;
    height: 54px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 18px;
    background: rgba(255,255,255,.03);
    border: 1px solid var(--color-border);
    transition: var(--transition);
}

.footer-social a:hover{
    transform: translateY(-6px);
    border-color: var(--color-primary);
    box-shadow:
        0 15px 35px rgba(0,0,0,.35),
        0 0 25px rgba(0,200,83,.15);
}

.footer-social img{
    width: 24px;
}

/* Bottom */
.footer-bottom{
    border-top: 1px solid var(--color-border);
    padding: 28px 0;
    text-align: center;
}

.footer-bottom p{
    color: var(--color-text-secondary);
    font-size: .95rem;
}

/* Responsive */
@media (max-width: 900px){
    .footer-content{
        grid-template-columns: 1fr;
        text-align: center;
    }

    .footer-brand p{
        margin-inline: auto;
    }

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

    .footer-social{
        justify-content: center;
    }
}