
* {
    -webkit-font-smoothing: antialiased;
    outline: none;
    box-sizing: border-box;
}

html, body {
    width:100%;
    height: auto;
    margin: 0px;
  overscroll-behavior: none;    
    padding: 0px;
    font-family: sans-serif;
}

body {
    background: #fff200;
    background-repeat: no-repeat;
    background-position: 50% 50%;	
    background-size: cover;
      perspective: 1px; /* e.g. */
}

#main, #about, #video, #buy, #footer {
    position: relative;
    height: 100dvh;
    width: 100dvw;
    display: block;
    margin: 0px;
    overflow-x: hidden;
}

#video, #buy {
    height: auto;
}

#video, #footer {
    background: #fff200;
}

#footer {
    height: auto;
    overflow: hidden;
}

#buy {
    background: #000;
}

#buy p, #buy a {
    color: #fff200;
    text-align: center;
    font-size: 1.1dvw;
}

#buy p {
    margin-bottom: 0px;
}

#buy p strong {
    margin-bottom: 0px;
    display: block;
    font-size: 1.5dvw;
}

.video-container {
    width: 80%;
    display: block;
    margin: 0px auto;
    padding: 100px;
}

.video-container h1 {
    display: block;
    margin: 0px auto 40px auto;
    text-align: center;
    color: black;
    font-size: 6dvw;
    line-height: 7dvw;
    font-weight: normal;
}

.buy-container {
    width: 100%;
    display: block;
    margin: 0px auto;
    padding: 100px 100px 50px 100px;
}

.buy-container h1 {
    display: block;
    margin: 0px auto 40px auto;
    text-align: center;
    color: #fff200;
    font-weight: normal;
}

#buy .buy-container h1, #buy  .buy-container h1 a {
    font-size: 6dvw;
    line-height: 7dvw;
}

#buy {
    background: #000;
}

.row {
    display: flex;
    margin: 40px auto 0px auto;
    width: 100%;
}

.col {
    flex: 1;
    padding: 30px;
    align-content: top;
    align-items: center;
    width: 50%;
}

.col:hover {
    background: #fff200;
}

#buy .col:hover p, #buy .col:hover {
    color: black;
}

.signup {
    position: absolute;
    bottom: 20px;
    right: 20px;
    font-size: 15px;
    color: #000;
    text-transform: uppercase;
    z-index: 15;
}

.col img {
    width: 100%;
}

.logo {
    display: block;
    width: 500px;
    margin: 50px auto;
}

#main {
    overflow: hidden;
}

#about {
    height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
    overflow: hidden;
}

#about.bottom {
    padding-top: 00px;
    margin-top: 0px;
}

.image {
  width: 100%;
  height: auto;
    display: block;
    position: relative;
    z-index: 10;
}

.box {
  position: relative;
  z-index: -1;
}

.yellow {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100dvw;
    height: 5000dvw;
    overflow: hidden;
    z-index: 1;
    display: block;
    background: #fff200;
}

.red {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100dvw;
    height: 5000dvw;
    overflow: hidden;
    z-index: 0;
    display: block;
    background: black;
}

.headline {
    display: block;
  position: relative;
  top: 50px;
  left: 5%;
    width: 40dvw;
  color: black;
    z-index: 20;
  font-size: 1.6dvw;
    line-height: 3.5dvw;
    padding-bottom: 200px;
  font-family: "helvetica", "arial";
}


#about.bottom .headline {
    top: -4dvw;
    right: 5%;
    text-align: right;
    left: auto;
    float: right;
}


.headline h1 {
    font-weight: normal;
    font-size: 4dvw;
    line-height: 5dvw;
    text-align: left;
}

.headline h2 {
font-weight: normal;
    text-transform: uppercase;
    font-size: 3dvw;
    line-height: 4.5dvw;
    text-align: left;
    background: #000;
    color: #fff200;
    font-style: italic;
    display: inline;
    padding: 0px 10px;
    box-decoration-break: clone;  
}

#about.bottom .headline h1, #about.bottom .headline h2 {
    text-align: right;
}


.headline p {
    margin: 50px auto 50px 0px;
    background: #fff200;
box-decoration-break: clone;
}

        #about.bottom .headline p {
            background: rgba(0,0,0,0.4);
            color: #fff200;
        }

       #about.bottom .headline h2 {
            background: #fff200;
            color: black;
        }

#about .image img {
    position: absolute;
    display: block;
    width: 50dvw;
    z-index: 10;
    height: 50dvw;
    margin-top: 5dvw;
    mix-blend-mode: multiply;
    margin-left: 55dvw;
}

#about.bottom .image img {
    position: absolute;
    display: block;
    width: 50dvw;
    z-index: 10;
    height: 50dvw;
    margin-top: 5dvw;
    mix-blend-mode: multiply;
    margin-right: 55dvw;
}

#about .image video {
    position: absolute;
    display: block;
    width: 38dvw;
    z-index: 10;
    height: 21.375dvw;
    margin-top: 5dvw;
    mix-blend-mode: unset;
    margin-left: 55dvw;
}

#about .image img.one {
    top: 0dvw;
    margin-left: 50dvw;
}

#about .image img.two {
    top: 0dvw;
    margin-left: 70dvw;
}

#about .image img.three {
    top: 45dvw;
    margin-left: 50dvw;
}

#about .image img.four {
    top: 55dvw;
    margin-left: 35dvw;
}

#about .image video.six {
    top: -45dvw;
    margin-left: 5dvw;
}


#about .image img.seven {
    top: -45dvw;
    margin-left: 10dvw;
    mix-blend-mode: unset;
}

#about .image img.eight {
    top: -45dvw;
    margin-left: 5dvw;
}

#about .image img.nine {
    top: 55vw;
    margin-left: 5dvw;
    z-index: 10;
    width: 40dvw;
}

#about .image img.ten {
    mix-blend-mode: unset;
    top: 15dvw;
    margin-left: -10dvw;
    z-index: 9;
}

        
        #about .image img.eight, #about .image img.nine {
            -webkit-filter: invert(1);
            filter: invert(1);
            mix-blend-mode: screen;
        }



.arrow-container {
    position: absolute;
    bottom: 30px;
    left: 50%;
    height: 40px;
    transform: translateX(-50%);
    z-index: 50;
}

.scroll-arrow {
  width: 16px;
  height: 16px;
  transform: rotate(45deg);
  border-right: 4px solid black;
  border-bottom: 4px solid black;
  animation: arrow-wave 1s infinite;
  animation-direction: alternate;
}
.scroll-arrow:nth-child(1) {
  animation-delay: 0.1s;
}
.scroll-arrow:nth-child(2) {
  animation-delay: 0.2s;
}
.scroll-arrow:nth-child(3) {
  animation-delay: 0.3s;
}

@keyframes arrow-wave {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}

.fadeinparallax {
  opacity: 0;
  transition: all 1.5s;
  transform: translate(0, 100px);
}

.fadeinparallax.visible {
  opacity: 1;
  transform: translate(0, 0);
}

#main {
    z-index: 10;
}

#loading {
    background-size: 34px;  
    background: #000 url('../img/loading.gif');
    background-repeat: no-repeat;
    background-position: 50% 50%;	
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.bgcontainer {
    position: relative;
    height: 100dvh;
    width: 100dvw;
    background: #fff200;
    z-index: 1;
    margin: 0px;
    display: block;    
}

.bg {
    position: relative;
    height: 100dvh;
    top: 0px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
    display: block;
}

.menu {
    position: absolute;
    z-index: 10;
    display: inline-flex;
}

#footer .menu {
    position: relative;
    display: table;
    margin: 20px auto 20px auto;
}

.menu.one {
    top: 50%;
    left: calc(20% - 188px);
    transform: translateY(-50%);
}

.menu.two {
    top: 50%;
    right: calc(20% - 188px);
    transform: translateY(-50%);
}

.menu a {
    font-size: 15px;
    padding: 10px 30px;
    letter-spacing: 2px;
    color: #fff200;
    background: #000;
    margin: 0px 10px;
    transition: 0.5s;
    text-transform: uppercase;
    text-align: center;
    min-width: 150px;
}

#footer .menu a {
    margin: 0px 10px;
    display: inline-block;
}

.menu a.first {
    transform: rotate(5deg);
clip-path: polygon(4% 9%, 94% 15%, 100% 100%, 0 92%);    
}

.menu a.second {
    transform: rotate(-3deg) translateX(-10px);
clip-path: polygon(4% 9%, 94% 6%, 96% 87%, 5% 84%);    
}

.menu a.third {
    transform: rotate(6deg) translateY(10px);
clip-path: polygon(1% 0, 96% 15%, 99% 95%, 1% 93%);
    
}

.menu a.fourth {
    transform: rotate(-5deg) translateY(-10px);
clip-path: polygon(9% 5%, 99% 3%, 95% 91%, 1% 93%);    
}

.menu a.fifth {
clip-path: polygon(1% 3%, 94% 17%, 92% 100%, 5% 75%);
    
}

.menu a:hover {
    background: #ed1c24;
}


.button {
    display: block;
    font-size: 15px;
    padding: 10px 0px;
    letter-spacing: 2px;
    color: #fff200;
    background: #000;
    margin: 0px 10px;
    transition: 0.5s;
    text-transform: uppercase;
    text-align: center;
    width: 300px;
    transform: rotate(3deg);
    clip-path: polygon(4% 9%, 94% 15%, 100% 100%, 0 92%);    
}

.bottom .button {
    background: #fff200;
    color: #000;
    margin: 0px 0px 0px auto
}

.center {
    position: absolute;
    top: 45%;
    left: 50%;
    z-index: 5;
}
.center img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%); 
    height: 85dvh;
    width: 85dvh;
    mix-blend-mode: multiply;    
}

.center img.titleone {
    z-index: 5;
}

.center img.titletwo {
    z-index: 6;
    animation: rotate 42s infinite linear;
}

@keyframes rotate {
    0% {transform: translate(-50%,-50%) rotate(0deg)}
    100% {transform: translate(-50%,-50%) rotate(360deg)}
}


h2 {
    font-weight: normal;
    font-size: 4vw;
    line-height: 4vw;
    display: block;
    margin: 0px auto;
    color: #000;
    text-transform: uppercase;
    text-align: center;
}

a {
    text-decoration: none;
    color: #000;
}

#mobile {
    display: none;
}

#lightbox {
  z-index: 50;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100dvh;
  background-size: 34px;  
  background: #000;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  display: none;
}

.close {
    position: fixed;
    top: 0px;
    right: 0px;
    padding: 13px 20px 13px 20px;
    color: #fff;
    background: #000;
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
    z-index: 10003;
    display: block;
    font-size: 28px;
    cursor: pointer;
}

#lightbox.privacy, #lightbox.bio, #lightbox.signup, #lightbox.tour {
    overflow-y: scroll;
    position: fixed;
    top: 0;
    z-index: 1000;
    display: none;
    left: 0;
    text-transform: none;
    letter-spacing: 0px;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    height: 100%;
}

#lightbox.signup {
    overflow-y: auto;
}

.privacy-wrap, .tourcontainer {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    display: block;
    overflow-y: scroll;
}

.tourwrapper {
    max-width: 800px;
    display: block;
    margin: 0 auto;
}

h3 {
    font-size: 3rem;
    line-height: 3.1rem;
    text-align: center;
    margin: 50px auto;
    color: #fff200;
    text-transform: uppercase;
    max-width: 400px;
    font-weight: normal;
}

.privacy-wrap {
    background: #ed1c24;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    display: block;
    overflow-y: scroll;
}

.privacy-container {
    background: transparent;
    position: relative;
    top: 0px;
    width: 70%;
    max-width: 1000px;
    display: block;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    box-sizing: border-box;
    word-wrap: break-word;
    padding: 0px 40px;
}

.privacy-container p {
    font-family: sans-serif;
    color: #fff200;
    font-size: 25px;
    line-height: 45px;
    text-align: left;    
}

.privacy-container ul li {
    color: #000;
    font-size: 13px;
    line-height: 20px;
    text-align: left;   
    margin: 10px 0px;
}

.privacy-container h1 {
    font-size: 60px;
    line-height: 60px;
    letter-spacing: 2px;
    margin: 80px auto;
    color: #fff200;
    text-transform: uppercase;
    text-align: center;
}

.play {
    position: absolute;
    top: calc(100dvh - 80px);
    left: 30px;
    color: #000;
    opacity: 0.8;
    z-index: 4;
    transition: 0.3s;
    padding: 15px;
}

.play span {
    position: relative;
    top: -11px;
    left: 20px;
    font-size: 14px;
    transition: 0.3s;
    opacity: 0;
    text-transform: uppercase;
}

.play svg {
    height: 35px;
    width: auto;
    fill: #000;
    color: #000;
}

.play:hover {
    opacity: 1;  
}

.play:hover span {
    opacity: 1;
}

.privacy-link {
    position: absolute;
    padding: 15px;
    top: 10px;
    right: 30px;
    color: #000;
    opacity: 0.5;
    font-size: 12px;
    z-index: 15;
    transition: 0.3s;
}

.privacy-link:hover {
    opacity: 1;   
}

#socials {
    position: fixed;
    display: table;
    top: 30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 12;  
    height: 50px;
}

#socials a {
    color: #000;
    opacity: 1;
    font-size: 16px;  
    padding: 10px;
    opacity: 0.7;
}

#socials a svg {
    height: 15px;
    width: auto;
    fill: #000;
    color: #000;
}

#socials a:hover {
    opacity: 1;
}

h4 {
    font-size: 17px;
    letter-spacing: 3px;
    line-height: 35px;
    display: block;
    margin: 0px auto 50px auto;
    text-align: center;
    font-weight: normal;
    width: auto;
    text-transform: uppercase;
    font-family: sans-serif;
}

form {
	color: #000;
	margin: 70px auto 20px auto;
	font-weight: normal;
	text-align: center;
    position: relative;
    display: table;
    z-index: 10;
    vertical-align: middle;
}

form input {
	outline: none;
    -webkit-appearance: none;
    margin: 0px;
    padding: 0px;
    border: none;
    padding: 10px;
}

form .email {
    display: block;
    color: #000;
    border: 2px dotted #000;
    width: 450px;
    text-align: center;
    font-size: 20px;
    font-family: sans-serif;
}

form .signupbutton {
    color: #000;
    background: transparent;
    cursor: pointer;
    display: block;
    margin: 0px auto;
    font-size: 20px;
    text-transform: uppercase;
    font-weight: bold;
    padding: 9px 10px;
    vertical-align: middle;
    text-align: center;
    font-family: sans-serif;
}

.webkit form input {
    padding: 10px 10px 7px 10px;
}

.webkit form .signupbutton {
    padding: 9px 10px 8px 10px;
}


::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #000;
  text-transform: uppercase;
  font-family: sans-serif;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #000;
  text-transform: uppercase;
  font-family: sans-serif;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #000;
  text-transform: uppercase;
  font-family: sans-serif;
}
:-moz-placeholder { /* Firefox 18- */
  color: #000;
  text-transform: uppercase;
  font-family: sans-serif;
}


.movedown {
    -webkit-animation: movedown 2s ease forwards;
    animation: movedown 2s ease forwards;
}

@-webkit-keyframes movedown {
    0% {
        -webkit-transform: translateY(-100px);
    }
    100% {
        -webkit-transform: translateY(0);
    }    
}

@keyframes moveup {
    0% {
        transform: translateY(-100px);
    }
    100% {
        transform: translateY(0);
    }    
}

.moveup {
    -webkit-animation: moveup 2s ease forwards;
    animation: moveup 2s ease forwards;
}

@-webkit-keyframes moveup {
    0% {
        -webkit-transform: translateY(0);
    }
    100% {
        -webkit-transform: translateY(-100px);
    }    
}

@keyframes moveup {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-100px);
    }    
}


.zoomin {
    -webkit-animation: zoomin 2s forwards ease;
    animation: zoomin 2s forwards ease;
}

@-webkit-keyframes zoomin {
    0% {-webkit-transform: scale(0)}
    100% {transform: scale(1)}
}

@keyframes zoomin {
    0% {transform: scale(0)}
    100% {transform: scale(1)}
}


.zoomout {
    -webkit-animation: zoomout 2s forwards ease;
    animation: zoomout 2s forwards ease;
}

@-webkit-keyframes zoomout {
    0% {transform: scale(1)}
    100% {transform: scale(0)}
}

@keyframes zoomout {
    0% {transform: scale(1)}
    100% {transform: scale(0)}
}


/****  MEDIA QUERIES ****/ 


@media (max-width: 800px) {
    
    html, body {
        overscroll-behavior-y: none;
    }
	
	#desktop {
		display: none;
	}	
    
    #mobile {
        display: block;
    }
    
    .video-container, .buy-container {
        padding: 40px 20px 50px 20px;
    }    

.video-container h1 {
    margin: 0px auto 40px auto;
    font-size: 10dvw;        
        line-height: 12dvw;
}      
    
    .buy-container h1 {
    margin: 0px auto 0px auto;
    font-size: 10dvw;        
        line-height: 12dvw;
    }   
    
    #buy .buy-container h1 a {
        font-size: 10dvw;
        line-height: 12dvw;
    }
    
    .row, .col {
        display: block;
    }    
    
    .row {
        margin-top: 0px;
    }
    
    .col {
        width: 100%;
        margin: 0px auto;
    }
    
    #buy p, #buy a {
            font-size: 5dvw;
        line-height: 5.5dvw;
    }
    
    #buy p strong {
        font-size: 6dvw;
        line-height: 5dvw;
    }
    
    .logo {
        width: 90%;
        margin-bottom: 20px;
    }    
 
    #about.bottom .headline p {
        color: #fff200;
    }    
    
    #about.bottom {
        margin-top: -50px;
    }
    
    #about.top .headline {
        margin-bottom: -50px;
    }
    
    .menu.one {
        left: 50%;
        top: 7%;
        transform: translateX(-50%);
    }    
    
    .menu.two {
        top: auto;
        right: auto;
        left: 50%;
        bottom: 17%;
        transform: translateX(-50%);
    }        
    
    .menu.one a, .menu.two a {
        max-width: 350px;
        width: 250px;
    }
    
    .menu.one a, .menu.two a, .menu.two, .menu.one {
        height: 60px;
    }
    
.center {
    position: absolute;
    top: 45%;
    left: 50%;
    z-index: 5;
}
.center img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%); 
    width: 100dvw;
    height: 100dvw;   
}    
    
    form .email {
        width: 100%;
        color: black;
    }    

    .headline {
        width: 70dvw;
        font-size: 5dvw;
        line-height: 9dvw;
        top: 10px;
    }
    
    .headline p {
        background: rgba(255,242,0,0.5);
        margin: 35px auto 35px 0px;
    }
    
    #about .image img {
        width: 80dvw;
        height: 80dvw;
        margin-left: 0dvw;
    }
    
    .headline h1 {
        font-size: 11dvw;
        line-height: 12dvw;
        margin-top: 0px;
    }
    
    .headline h2 {
        font-size: 6dvw;
        line-height: 10dvw;
    }
    
    #about .image img.two {
        height: 120dvw;
        width: 120dvw;
        margin-left: 20dvw;
    }
    
    #about .image img.nine {
        top: 35dvw;
    }

   
    #footer .menu, #footer .menu a {
        display: block;
        margin: 20px auto;
        max-width: 70%;
    }    
    
    body {
        background: url('../img/bg-mobile.jpg') #000200;
        background-repeat: no-repeat;
        background-position: 50% 50%;	
        background-size: cover;
    }
    
    h1 {
        font-size: 15vw;
        line-height: 15vw;
    }
    
    h2 {
        font-size: 7vw;
        line-height: 7vw;
    }
    
    .privacy-container {
        width: 100%;
    }

    
    .play span {
        display: none !important;
    }
    
    .signup {
        bottom: auto;
        right: auto;
        top: 10px;
        left: 50%;
        transform: translateX(-50%);
            -webkit-text-stroke: 2px #fff200;
        paint-order: stroke fill;
        font-weight: bold;
    }
    
    
    #standaloneform form {
        left: 50%;
        width: 100%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    #standaloneform form .email {
        width: calc(100vw - 150px);
        border-radius: 0px;
        line-height: 20px;
        vertical-align: middle;
        box-sizing: border-box;
        color: #000;
    }
    
    #socials {
        top: 10px;
        left: 50%;
        display: flex;
        right: auto;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    #socials a {
        font-size: 15px;
        opacity: 0.7;
        flex: 1;
    }

    .privacy-link {
        top: auto;
        right: 10px;
        bottom: 10px;
        left: auto;
        transform: none
        font-size: 10px;
        color: black;
        font-family: sans-serif;
        font-weight: bold;
        text-transform: uppercase;
    }
    
    h3 {
        padding-top: 30px;
        font-size: 20px;
        line-height: 24px;
    }
    
    #tour h3 {
        font-size: 30px;
        line-height: 35px;
    }
    
    #signupform .email {
        width: 70vw;
    }
    

}

@media (max-width: 335px) {
    .menu a, .webkit .menu a {
        padding-left: 10px;
        padding-right: 10px;
    }
    .menu, .webkit .menu {
        width: 255px;
    }
}

@media (min-width: 800px) and ()