.footer-content {
    display: flex;
    flex-direction: column;
    row-gap: var(--spacing-medium);
}

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

.footer .footer-column {
    max-width: 50ch;
}

@media (max-width: 640px) {
    .footer .footer-column {
        border-top: 1px solid var(--black-alpha-2);
        margin-top: 2.5rem;
        padding-top: 1rem;
    }

    .footer .footer-column:first-child {
        margin-top: 0;
    }
}

.footer .footer-menu .menu-list {
    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 .footer-columns-row {
        flex-direction: column;
        gap: 0;
    }
}

.bottom-bar {
    display: flex;
    justify-content: space-between;
    align-items: end;
    flex-wrap: wrap;
    column-gap: 2em;
    row-gap: .75em;
    font-size: var(--font-size-small);
    color: var(--black-alpha-3) !important;
}

.bottom-bar .copyright {
    color: var(--black-alpha-3) !important;
}

.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;
    }
}

.footer-contact-info > div {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

footer .footer-content .footer-bottom-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    margin-top: var(--spacing-medium);
}

.footer-social-icon-wrapper {
    display: flex;
    flex-direction: row !important;
    gap: 1rem;
    width: auto;
}

@media (max-width: 640px) {
    .footer-desktop-button {
        display: none !important;
    }
}

.footer-mobile-button {
    display: none !important;
}

@media (max-width: 640px) {
    .footer-mobile-button {
        display: flex !important;
        flex-direction: column !important;
        margin-bottom: var(--spacing-default);
    }
}

footer .bottom-bar .footer-created-by {
    color: var(--black-alpha-2) !important;
}

@media (max-width: 640px) {
    .footer-created-by {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}