/***************************************************************************
* Footer
****************************************************************************/
.footer {
    padding-bottom: 0;
    color: var(--typo-primary-color);
    border-top: 1px solid var(--typo-primary-color);
}

/***************************************************************************
* Logo
****************************************************************************/
.footer .logo_wrapper .svg_wrapper {
    width: 12rem;
}
.footer .logo_column h3 {
    margin-top: 0;
}

/***************************************************************************
* Main Menu
****************************************************************************/
.footer .main_menu {
    border-left: 0.1875rem solid var(--typo-primary-color);
    padding-left: 0.5rem;
}
.footer .main_menu li {
    position: relative;
    padding: 0.375rem 0;
}
.footer .main_menu li:after {
    content: ''; position: absolute;
    bottom: 0; left: 0.75rem; right: 0.75rem;
    width: auto; height: 1px;
    background-color: var(--typo-primary-color);
}
.footer .main_menu li:last-child:after {
    content: none;
}
.footer .main_menu a {
    font-weight: 600;
}

.footer .main_menu .sub-menu {
    display: none;
}

@media screen and (min-width:64em){
    .footer .main_menu_column,
    .footer .contact_column {
        padding-top: 7rem;
    }
}

.footer .social_link {
    text-decoration: none;
}

.footer .social_link i {
    width: 2rem;
    height: 2rem;
}

/***************************************************************************
* Bottom Line
****************************************************************************/
.footer .bottom_line {
    position: relative; z-index: 20;
    background-color: var(--typo-primary-color);
    color: #FFFFFF;
    padding-top: 1.25rem; padding-bottom: 1.25rem;
    margin-top: 2rem;
}
.footer .bottom_line:after {
    content: ''; position: absolute;
    top: 0; bottom: 0; right: -999rem;
    left: -999rem; width: auto; height: auto;
    background-color: var(--typo-primary-color);
}
.footer .bottom_line > * {
    position: relative;
    z-index: 20;
}
@media screen and (min-width:40em){
    .footer .bottom_line {
        margin-top: 3rem;
    }
}
@media screen and (min-width:64em){
    .footer .bottom_line {
        margin-top: 4rem;
    }
}