html, body {
    height: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1;
    margin-bottom: 60px; /* adds space between content and footer */
}

footer {
    padding-top: 80px;
    background-color: #222;
    color: white;
}

/* This ensures white space just above footer visually 
footer::before {
    content: "";
    display: block;
    height: 40px;
    background-color: #fff;
}
*/