.footer {
    padding-bottom: 2rem !important;
    background: var(--color-2);
}

.footer .columns {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-large);
    justify-content: space-between;
    font-size: var(--font-size-small);
}

.footer .column {
    max-width: 50ch;
    font-size: var(--font-size-small);
}

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

.footer .footer-menu li {
    display: flex;
    padding: 0;
}

.footer .footer-menu li:first-child a {
    padding-top: 0;
}

.footer .footer-menu li:last-child a {
    padding-bottom: 0;
}

.footer .footer-menu a {
    color: var(--text-color);
    padding: .3em 0;
}

.footer .footer-menu a:hover {
    color: var(--link-color-hover);
}

@media (max-width: 640px) {
    .footer .columns {
        flex-direction: column;
        gap: var(--spacing-medium);
    }
}

.footer .bottom-bar {
    display: flex;
    justify-content: space-between;
    align-items: end;
    flex-wrap: wrap;
    column-gap: 2em;
    row-gap: .75em;
    margin-top: var(--spacing-large);
    border-top: var(--border-width-default) solid rgba(247, 240, 232, .35);
    padding-top: 1.5rem;
    font-size: var(--font-size-small);
}

.footer .bottom-bar > div:first-child {
    display: flex;
    column-gap: 2em;
    row-gap: .75em;
    flex-wrap: wrap;
    justify-content: center;
}

@media (max-width: 960px) {
    .footer .bottom-bar {
        flex-direction: column;
        justify-content: start;
        align-items: center;
    }
}