footer {
    background: 
    linear-gradient(to top, var(--dark-bkgd) 0%, transparent 10%),
    linear-gradient(to bottom, var(--dark-bkgd) 0%, transparent 10%),
    radial-gradient(circle at 20% 50%, var(--dark-bkgd) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, var(--dark-bkgd) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, var(--dark-bkgd) 0%, transparent 80%),
    radial-gradient(circle at 30% 50%, var(--accent-rgb) 0%, transparent 40%),
    radial-gradient(circle at 70% 60%, var(--dark-bkgd) 0%, transparent 50%);
background-blend-mode: screen;
background-color: var(--dark-bkgd);
    padding-top: 75px;
    padding-bottom: 25px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: var(--light-text);
    z-index: 3;
    position: relative;
    padding-left: 30px;
    padding-right: 30px;
}

footer .social-links {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    column-gap: 15px;
}

footer .content_div {
    background-color: var(--dark-bkgd);
    padding: 50px;
    border-radius: var(--button-radius);
    border: 1px solid var(--secondary);
}

.footer_columns {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
}

footer .site_logo_container {
    width: 20%;
    align-items: flex-start;
}

footer .contact_icon_link {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    color: var(--light-link);
    text-decoration: underline;
    font-size: 18px;
    margin-bottom: 15px;
}

footer .contact_icon_link:hover {
    text-decoration: none;
}

.contact_icon {
    width: 35px;
    height: 35px;
    margin-right: 25px;
}

.footer_link_container {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
}

.footer_title, span.footer_title {
    font-size: 22px;
    margin-bottom: 25px;
    color: var(--accent);
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1.2px;
    display: block;
}

.footer_link {
    color: var(--light-text);
    text-decoration: none;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    margin-bottom: 18px;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.footer_link .social_icon {
    margin-right: 15px;
}

.footer_link:hover, .footer_title:hover {
    text-decoration: underline;
}

footer .logo_column {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 20%;
}

footer .footer_logo_container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: 100%;
}

footer .custom-logo-link {
    max-width: 350px;
    padding-bottom: 15px;

}

footer img.custom-logo {

    max-height: 200px;
}


footer .right_column {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 25px;
    row-gap: 25px;
    width: 100%;
    margin-top: 150px;
}

.hours {
    margin-top: 20px;
    color: var(--light-text);
}

footer .copyright {
    width: 100%;
    margin-top: 75px;
    border-top: 1px solid var(--secondary);
}

.copyright p {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
    color: var(--light-text) !important;
    font-size: 14px;
}

.footer .location_columns {
    display: flex;
    flex-direction: row;
    width: 80%;
    padding-left: 100px;
}

footer .locations_container {
    width: 100%;
    padding-left: 100px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 50px;
    row-gap: 50px;
    align-items: flex-start;
}


@media (max-width: 992px)
{

    .logo_column {
        width: 100%;
    }

    .copyright {
        align-items: center;
        justify-content: center;
        text-align: center;
    }
}

@media (max-width: 768px)
{
    footer .footer_logo_container {
        flex-direction: column;
    }

    footer .site_logo_container {
        width: 100%;
    }

    footer .locations_container {
        display: flex;
        padding-left: 0px;
        flex-direction: column;
        row-gap: 50px;
        margin-top: 55px;
    }
    
    .footer_columns {
        width: 100%;
    }

    footer .right_column {
        flex-direction: column;
        display: flex;
        margin-top: 75px;
            }
}

@media (max-width: 480px)
{
    .contact_icon_link {
        font-size: 14px;
        flex-wrap: wrap;
    }

    .footer_link {
        font-size: 14px;
        flex-wrap: wrap;
    }


    footer .custom-logo-link {
        max-width: 100%;
    }
}