.footer {
    background-color: #fff;
    padding-top: 60px;
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-top: 1px solid #ccc
}

.footer.front-page {
    background-color: #C7BC9F;
}

.footer.shift-up {
    margin-top: -5px;
}

.footer-logo {
    max-width: 200px;
    width: 100%;
    height: auto;
    margin-bottom: 30px;
    transition: all .3s ease-in-out
}

.footer-logo:hover {
    opacity: .6
}

.footer-links {
    display: flex;
    gap: 20px;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 30px;
    font-family: sweet-sans-pro, sans-serif;
    flex-direction: row;
    align-items: center;
}

.footer-links>* {
    display: flex;
    flex-direction: row;
    align-items: center
}

.footer-divider {
    text-align: center;
    font-size: 2rem;
    font-weight: 400
}

.social-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px;
    margin-bottom: 50px
}

.social-links>a>img {
    height: 32px;
    width: auto
}

.social-links>a {
    margin: auto
}

.footer-link {
    text-decoration: none;
    color: #000;
    transition: all .3s ease-in-out
}

.footer-link:hover {
    opacity: .5;
    color: #000
}

@media (max-width: 768px) {
    .footer {
        padding-left: 30px;
        padding-right: 30px
    }

    .footer-links {
        grid-gap: 0;
        font-size: 1.2rem;
        font-weight: 800
    }

    .footer-divider {
        font-size: 1.5rem
    }

    .footer-links>div {
        padding-top: 5px
    }
}