* {
     box-sizing: border-box;
}
 *:before, *:after {
     box-sizing: border-box;
}
 html, body {
     height: 100%;
     position: relative;
     min-width: 320px;
}
 body {
     font-family: monospace, sans-serif;
     color:#231F20;
     background: #fff;
     text-align:center;
line-height:140%;
}
 .main-container {
     min-height: 100vh;
    /* will cover the 100% of viewport */
     overflow: hidden;
     display: block;
     max-width:1280px;
     margin:0 auto;
     position: relative;
     padding-bottom: 2rem;
    /* height of your footer */
}
 footer {
     position: absolute;
     bottom: 0;
     width: 100%;
}
 h2 {
     font-size: 1.75rem;
     font-weight: normal;
     line-height: 1.3;
     text-transform:uppercase;
}
 h2 span {
     white-space:nowrap;
}
 a {
     text-decoration: none;
}
 a:hover {
     text-decoration: underline;
}
/* misc */
 .logo {
     width: 100%;
     max-width: 320px;
     height: auto;
     margin-top:1rem;
}
 .row {
     display:flex;
}
 .column {
     flex:33.33%;
     padding:.5rem;
}
 footer .column {
     flex:50%;
     padding:0 .5rem 1rem;
}
 .column img {
     width:100%;
     height:auto;
}
/* end misc */
/* footer */
 footer {
     text-align:left;
     font-size:0.6875rem;
}
 footer a {
     color:initial;
}
 footer .links {
     text-align:right;
}
 footer a {
     text-decoration:none;
}
 footer a:hover {
     text-decoration:underline;
}
/* end footer */
/* mobile */
 @media only screen and (max-width: 900px) {
     html {
         font-size: 14px;
    }
     .main .row {
         display:block;
    }
     .column {
         padding:12px 10px;
    }
}
