html {
    height: 100%;
    overflow: hidden;
}

body {
    color: #fff;
    margin: 0;
    padding: 0;
    -webkit-perspective: 1px;
    perspective: 1px;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    height: 100%;
    overflow-y: scroll;
    overflow-x: hidden;
}

header {
    box-sizing: border-box;
    min-height: 40vw;
    padding: 25vw 0 5vw;
    position: relative;
    -webkit-transform-style: inherit;
    transform-style: inherit;
    width: 100vw;
}

header,
header:before {
    background: 50% 50% / cover;
}

header::before {
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    background-color: #8a8;
    background-image: url(img/header.jpg);
    background-size: cover;
    -webkit-transform-origin: center center 0;
    -webkit-transform: translateZ(-1px) scale(2);
    transform-origin: center center 0;
    transform: translateZ(-1px) scale(2);
    z-index: -1;
    min-height: 100vh;
}

header * {
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    font-size: 4em;
    font-weight: normal;
    letter-spacing: 0.2em;
    text-align: center;
    margin: 0;
    padding: 1em 0;
}

header h1 {
    color: hsla(0, 0%, 100%, 0.8);
    background-color: hsla(175, 100%, 0%, 0.7);
}

header p {
    font-size: 2em;
    color: hsla(175, 100%, 0%, 0.7);
    background-color: hsla(0, 0%, 100%, 0.8);
}

main {
    background-color: hsl(60, 10%, 10%);
    line-height: 1.7;
    /*max-width: 32em;*/
    width: 100%;
    /*padding: 5% calc(50% - 16em) 35%;*/
    position: relative;
    z-index: 2;
}

.row {
    display: flex;
    flex-wrap: wrap;
    padding: 0 4px;
}


/* Create four equal columns that sits next to each other */

.column {
    flex: 20%;
    max-width: 25%;
    padding: 0 0.5%;
}

.column img {
    width: 100%;
    margin-top: 8px;
    vertical-align: middle;
    transition: ease .4s;
    border-radius: 5px;
}

.column img:hover {
    transform: scale(1.1);
    border-radius: 2px;
}


/* Responsive layout - makes a two column-layout instead of four columns */

@media only screen and (max-width: 1200px) {
    .column {
        flex: 45%;
        max-width: 50%;
    }
}


/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */

@media only screen and (max-width: 800px) {
    .column {
        flex: 100%;
        max-width: 100%;
    }
}

footer {
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    text-align: center;
    padding-top: 40px;
    padding-bottom: 20px;
}
