.site-footer {
    padding: 0 0 2rem;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.3fr repeat(4, 1fr);
    gap: 1.5rem;
    padding: 2rem 0 1.5rem;
    border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

.footer-grid h3 {
    margin: 0 0 0.75rem;
    color: var(--color-primary);
    font-size: 1rem;
}

.footer-grid ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.footer-grid p,
.footer-grid li + li {
    margin-top: 0.5rem;
}

.footer-grid p,
.footer-grid a,
.footer-bottom a {
    color: var(--color-text-muted);
}

.footer-grid a:hover,
.footer-bottom a:hover {
    color: var(--color-secondary);
}

.footer-bottom {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(var(--color-primary-rgb), 0.08);
}

@media (max-width: 1120px) {
    .footer-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 0.75rem;
    }
}
