main {
    background-size: cover;
    background-position: top;
  	background-image: url(/img/nox_background.jpg);
    background-repeat: no-repeat;
    position: relative;
}

@media only screen and (orientation:portrait){
  main{
  	background-image: url(/img/nox_background_slim.jpg);
  }
}
h1 {
    position: absolute;
    font-weight: 100;
    font-size: 114px;
    text-transform: uppercase;
    bottom: 25%;
    left: 5%;
}

.promo {
    font-size: 2.5vw;
    max-width: 490px;
    width: 25vw;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate(28%,-50%);
        -ms-transform: translate(28%,-50%);
            transform: translate(28%,-50%);
}

@media only screen and (min-width: 2000px) {
    .promo {
        font-size: 48px;
        left: 20%;
        -webkit-transform: translate(-50%,-50%);
            -ms-transform: translate(-50%,-50%);
                transform: translate(-50%,-50%);
    }
}

.promo_img {
    position: relative;
}

.promo_img img {
    width: 100%;
    vertical-align: middle;
    box-shadow: 0 0 25px rgba(255,255,255,.1);
}

.promo_title {
    position: absolute;
    top: -.5em;
    left: -.5em;
    font-size: 1.6em;
    font-weight: 500;
    display: block;
    width: 120%;
    width: -webkit-calc(100% + 1em);
    width: calc(100% + 1em);
    text-shadow: 0 0 .2em #111;
    text-transform: uppercase;
    overflow: hidden;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
}

.avail {
    position: absolute;
    bottom: 1.5em;
    right: -1em;
    font-weight: 500;
    text-shadow: 0 0 .2em #111;
    font-size: 1em;
    text-transform: uppercase;
}

.promo_links {
    position: relative;
}

.promo_links > span {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%,-100%);
    font-size: .5em;
    font-weight: 400;
}

.promo_links ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1em;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

.promo_links li {
    height: .4em;
    margin-top: .3em;
    margin-right: .6em;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.promo_links li a {
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.promo_links li a img {
    height: 100%;
    vertical-align: middle;
}

@media only screen and (max-width: 1400px) {
    h1 {
        font-size: 96px;
    }
    .promo {
        font-size: 4vw;
        width: 33vw;
        -webkit-transform: translate(50%,-50%);
            -ms-transform: translate(50%,-50%);
                transform: translate(50%,-50%);
    }
}

@media only screen and (max-width: 1200px) {
    h1 {
        font-size: 72px;
    }
    .promo {
        font-size: 4vw;
        width: 50vw;
        left: 50%;
        -webkit-transform: translate(-50%,-50%);
            -ms-transform: translate(-50%,-50%);
                transform: translate(-50%,-50%);
    }
}

@media only screen and (max-width: 1000px) {
    .promo {
        font-size: 5vw;
    }
}

@media only screen and (max-width: 850px) {
    h1 {
        font-size: 15vmin;
    }
    /*main {
        background-size: 90% auto;
        background-position: 50% 100%;
    }*/
    .promo_links li {
        height: .6em;
        margin-top: .6em;
        margin-right: .6em;
    }
}

@media only screen and (max-width: 550px) {
    .promo {
        font-size: 6vw;
        width: 66vw;
        top: 24vw;
        -webkit-transform: translate(-50%,0);
            -ms-transform: translate(-50%,0);
                transform: translate(-50%,0);
    }
}

@media only screen and (max-width: 400px) and (min-height: 500px) {
    .promo {
        top: 20%;
    }
    /*main {
        background-position: 50% 85%;
    }*/
}

@media only screen and (min-width: 1401px) and (max-height: 800px) {
    .promo {
        left: 10%;
        font-size: 2vw;
        width: 15vw;
    }
}

@media only screen and (min-width: 1401px) and (max-height: 650px) {
    .promo {
        font-size: 1.6vw;
        width: 10vw;
    }
}

@media only screen and (min-width: 1201px) and (max-height: 820px) {
    .promo {
        left: 5%;
        font-size: 3.5vw;
        width: 28vw;
    }
}

@media only screen and (min-width: 1201px) and (max-height: 720px) {
    .promo {
        left: 0;
        font-size: 3vw;
        width: 25vw;
    }
}

@media only screen and (min-width: 1201px) and (max-height: 650px) {
    .promo {
        font-size: 2.5vw;
        width: 20vw;
    }
}

@media only screen and (min-width: 1001px) and (max-height: 750px) {
    .promo {
        left: 0;
        -webkit-transform: translate(50%,-50%);
            -ms-transform: translate(50%,-50%);
                transform: translate(50%,-50%);
        font-size: 3vw;
        width: 25vw;
    }
}

@media only screen and (min-width: 1001px) and (max-height: 600px) {
    .promo {
        font-size: 2.5vw;
        width: 20vw;
    }
}

@media only screen and (min-width: 851px) and (max-height: 800px) {
    .promo {
        font-size: 4vw;
        width: 30vw;
    }
}

@media only screen and (min-width: 851px) and (max-height: 620px) {
    .promo {
        left: 0;
        -webkit-transform: translate(50%,-50%);
            -ms-transform: translate(50%,-50%);
                transform: translate(50%,-50%);
        font-size: 3.3vw;
        width: 25vw;
    }
}

@media only screen and (min-width: 851px) and (max-height: 500px) {
    .promo {
        font-size: 3vw;
        width: 20vw;
        -webkit-transform: translate(50%,-40%);
            -ms-transform: translate(50%,-40%);
                transform: translate(50%,-40%);
    }
}

@media only screen and (min-width: 551px) and (max-height: 650px) {
   /* main {
        background-position: 50% 0;
    }*/
    .promo {
        font-size: 4vw;
        width: 30vw;
    }
}

@media only screen and (min-width: 551px) and (max-height: 450px) {
    .promo {
        font-size: 3vw;
        width: 20vw;
    }
}

@media only screen and (max-width: 550px) and (max-height: 450px) {
    .promo {
        top: 50%;
        -webkit-transform: translate(-50%,-50%);
            -ms-transform: translate(-50%,-50%);
                transform: translate(-50%,-50%);
        font-size: 5vw;
        width: 50vw;
    }
}

@media only screen and (max-width: 550px) and (max-height: 350px) {
    .promo {
        -webkit-transform: translate(-50%,-45%);
            -ms-transform: translate(-50%,-45%);
                transform: translate(-50%,-45%);
        font-size: 4vw;
        width: 40vw;
    }
}

@media only screen and (max-width: 550px) and (max-height: 250px) {
    .promo {
        -webkit-transform: translate(-50%,-45%);
            -ms-transform: translate(-50%,-45%);
                transform: translate(-50%,-45%);
        font-size: 3vw;
        width: 30vw;
    }
}
