/* -- FIXES -- */

header a,
footer a {
    text-decoration: none;
}

/* -- LAYOUT -- */

header,
footer {
    display: flex;
    flex-direction: column;
}

.top_logo_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top_logo_row .left_spacer {
    flex-grow: 2;
}

.top_logo_row .right_spacer {
    flex-grow: 1;
}

.top_menu_row {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}

.top_menu_row .icon_block {
    align-self: stretch;
}

.top_menu_row .right_block {
    display: flex;
}

.top_menu_row .icon_block {
    display: flex;
}

.page-center-horz-glue {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
}

.page-side-vert-glue {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
}

.bottom_menu_row {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
}

.bottom_copyright_row {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

/* -- STYLING -- */

.top_logo_row {
    background-color: #eeeeee;
}

.top_menu_row {
    background-color: #ee1d25;
}

.top_menu_row .icon_block {
    background-color: #454545;
}

.bottom_menu_row {
    background-color: #454545;
}

.bottom_copyright_row {
    background-color: #212121;
    color: #757575;
    font-size: 10px;
}

/* -- SPACING -- */

.top_logo_row .right_spacer {
    max-width: 60px;
}

.top_menu_row .icon_block {
    padding-right: 70px;
    height: 40px;
}

.page-center-horz-glue {
    margin-top: 29px;
}

.bottom_menu_row {
    padding-bottom: 60px;
}

.bottom_menu_row > * {
    margin-top: 40px;
}

.bottom_copyright_row {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 30px;
}

/* == MOBILE == */

@media screen and (max-width: 950px) {
    /* -- LAYOUT -- */
    .bottom_menu_row {
        justify-content: left;
    }
    /* -- SPACING -- */
    .page-center-horz-glue {
        margin-top: 5px;
    }
}
