* {
  font-family: "Roboto", sans-serif;
  margin: 0;
  padding: 0;
  text-decoration: none;
}

body {
  background-color: black;
  overflow: hidden;
}

#videoBackground {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  background-color: #333;
  z-index: -2;
  background-size: cover;
  -moz-background-size: cover;
  background-position: center center;
  opacity: 1;
  transition: opacity 3s ease;
}

h1 {
  text-align: left;
  font: normal normal medium 72px/85px Rubik;
  font-size: 72px;
  letter-spacing: 0px;
  color: #84ddff;
  opacity: 1;
  margin-bottom: 60px;
}

h2 {
  text-align: left;
  font: normal normal 300 48px/57px Rubik;
  font-size: 48px;
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 1;
  margin-bottom: 36px;
}
h3 {
  font: normal normal 100 18px/24px Rubik;
  color: #ffffff;
  font-size: 18px;
}
p {
  font: normal normal 100 16px/24px Rubik;
  color: #84ddff;
  font-size: 16px;
}

#main-tickets {
  position: fixed;
  z-index: -1;
  top: 45%;
  left: -60px;
  animation: main-ticket 2s ease-in-out infinite alternate;
}

#main-tickets img {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: 0 50%;
}

#main-tickets img:nth-child(1) {
  transform: rotate(-20deg);
  opacity: 0.2;
  animation: ticket-1 2s ease-in-out infinite alternate;
}

#main-tickets img:nth-child(2) {
  transform: rotate(-30deg);
  opacity: 0.4;
  animation: ticket-2 2s ease-in-out infinite alternate;
}
#main-tickets img:nth-child(3) {
  transform: rotate(-40deg);
  animation: ticket-3 2s ease-in-out infinite alternate;
}
@keyframes main-ticket {
  from {
    transform: rotate(-10deg);
    left: -96px;
  }
  to {
    transform: rotate(30deg);
    left: -48px;
  }
}

@keyframes ticket-3 {
  from {
    transform: rotate(-50deg);
  }
  to {
    transform: rotate(-15deg);
  }
}
@keyframes ticket-2 {
  from {
    transform: rotate(-35deg);
  }
  to {
    transform: rotate(-13deg);
  }
}
@keyframes ticket-1 {
  from {
    transform: rotate(-20deg);
  }
  to {
    transform: rotate(-10deg);
  }
}

#logo {
  position: absolute;
  top: 60px;
  left: 72px;
}

#logo img {
  max-width: 336px;
  max-height: 86px;
}

#content {
  display: flex;
  flex-direction: row;
  padding: 72px;
  box-sizing: border-box;
}

#content > div:first-child {
  flex: 7;
}
#content > div:last-child {
  flex: 5;
}

#explanation-container {
  padding-left: 206px;
  padding-top: 192px;
}
#explanation-container p {
  text-align: left;
  font: normal normal 300 24px/48px Rubik;
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 1;
  font-size: 24px;
}

#qr-container {
  text-align: center;
  padding-top: 192px;
}

#qrcode {
  width: 100%;
  text-align: center;
}

#qrcode img {
  display: inline-block !important;
}

#qr-container p {
  text-align: center;
  font: normal normal 300 30px/36px Rubik;
  font-size: 30px;
  letter-spacing: 0px;
  color: #84ddff;
  opacity: 1;
  margin-top: 48px;
}

#qr-container p#qr-instructions {
  font: normal normal normal 24px/28px Rubik;
  font-size: 24px;

  opacity: 0.6;
}

#footer {
  display: block;
  position: absolute;
  bottom: 48px;
  left: 0;
  padding-left: 72px;
  box-sizing: border-box;
  width: 100%;
}
#footer p {
  display: inline-block;
  font: normal normal normal 16px/19px Rubik;
  font-size: 16px;
  letter-spacing: 0px;
  color: #ffffff;
  opacity: 0.5;
}
#footer div {
  position: relative;
  top: 12px;
  display: inline-flex;
  height: 96px;
  padding-left: 12px;
}
.quiz {
  width: 600px;
  background-color: #fafafa;
  display: flex;
  flex-direction: column;
}

.quiz div,
.quiz a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100px;
  position: relative;
  color: black;
  text-decoration: none;
}

.quiz a.selected {
  background-color: cornflowerblue;
}
.quiz-question {
  background-color: #eeeeee;
}

.quiz div div,
.quiz a div {
  background-color: blue;
  width: 100%;
  position: absolute;
  top: 0;
  width: 0%;
  left: 0;
  opacity: 0.4;
  transition: all 0.3s ease-in-out;
  color: white;
  font-weight: 700;
  font-size: 48px;
  justify-content: left;
  box-sizing: border-box;
  opacity: 0;
}

.quiz div div.reveal {
  opacity: 0.6;
  width: 0%;
}

#timer {
  height: 12px;
  width: 100%;
  background-color: #eee;
  position: fixed;
  left: 0;
  bottom: 0;
}

#timer div {
  height: 12px;
  width: 100%;
  background-color: blue;
  position: fixed;
  left: 0;
  bottom: 0;
  transition: all 1s ease;
}

#players {
  color: blue;
  font-size: 48px;
}

input {
  height: 48px;
}

#mobile-container {
  display: block;
  width: 100%;
  height: 100%;
  padding: 24px 24px;
  box-sizing: border-box;
  overflow: hidden;
}

.mobile-message {
  padding: 0px 12px;
}

#mobile-header-logo {
  width: 100%;
  display: block;
  text-align: center;
}

#mobile-header-logo img {
  width: 50%;
}

#mobile-instructions {
  display: block;
  position: absolute;
  bottom: -160px;
  left: 0;
  padding-bottom: 72px;
  box-sizing: border-box;
  width: 100%;
  transition: bottom 0.3s ease;
  overflow: hidden;
}

#mobile-instructions.active {
  bottom: -24px;
}

#mobile-instructions div:first-child {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 87%;
  height: 100%;
  background: transparent linear-gradient(102deg, #84ddff 0%, #84ddff00 100%) 0%
    0% no-repeat padding-box;
  border-radius: 24px;
  opacity: 0.5;
  margin: auto;

  box-sizing: border-box;
}

#mobile-instructions div:last-child {
  padding: 48px;
}
#mobile-instructions h3 {
}

#mobile-instructions p {
  margin-top: 12px;
}

.movie-title {
  text-align: center;
  font: normal normal normal 12px/14px Rubik;
  letter-spacing: 1.76px;
  color: #84ddff;
  text-transform: uppercase;
  opacity: 1;
  margin-top: 24px;
}

p.movie-question {
  text-align: center;
  font: normal normal 500 18px/22px Rubik;
  letter-spacing: 0px;
  color: #84ddff;
  opacity: 1;
  margin-top: 48px;
}

.vote-question-container{
  display: block;
  margin-left:0;
  transition: all 0.6s ease-in-out;

}

.vote-question-container .vote-question{
  display: inline-block;

  margin-right:24px;
}


.vote-question{
  transition: all 0.6s ease-in-out;
}
.vote-answer-container {
  margin-top: 48px;
}
.vote-answer {
  background: transparent linear-gradient(92deg, #84dcff71 0%, #84ddff00 100%)
    0% 0% no-repeat padding-box;
  border-radius: 24px;
  display: flex;
  height: 60px;
  text-align: center;
  align-items: center;
  position: relative;
  margin-bottom: 12px;
  transition: all 0.3s ease;

}

.vote-answer div {
  background: transparent linear-gradient(92deg, #84dcff71 0%, #84dcff23 100%)
    0% 0% no-repeat padding-box;
  display: block;
  width: 0%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 24px;
  transition: all 1s ease;
}

.vote-answer.selected{
  background: transparent linear-gradient(92deg, #84dcffa8 0%, #84dcff56 100%)
    0% 0% no-repeat padding-box;
}

.vote-answer p {
  flex: 1;
  z-index: 1;
}

.vote-answer .vote-answer-index {
font-size: 14px;
}


.vote-answer .vote-answer-text {
  flex: 5;
  font: normal normal 300 20px/24px Rubik;
  font-size:20px;
  color: #84ddff;
  opacity: 1;
}

p.vote-answer-percent {
  position: relative;
  left:-18px;  
  color: #84ddff;
  font: normal normal 500 28px/17px Rubik;
  font-size: 28px;
  text-shadow: 0px 0px 12px #84ddff7d;
  opacity: 0;
  transition: opacity 1s ease;
}

.results p.vote-answer-percent {
  opacity: 1;
}
p.vote-answer-percent span {
  font-size: 14px;
}

.vote-button {
  text-align: center;

  margin-top: 48px;
  height: 60px;
  width: 100%;
}

.vote-button a {
  text-align: center;

  display: inline-block;
  height: 60px;
  width: 60%;
  text-decoration: none;
  position: relative;
}

.vote-button a p {
  text-align: center;
  font: normal normal 500 18px/22px Rubik;
  letter-spacing: 0px;
  color: #84ddff;
  margin-top: 18px;
  opacity: 1;
  transition: all 0.3s ease;
}

.vote-button a div {
  display: inline-block;
  background-color: #84ddff;
  width: 100%;
  margin-left: -50%;

  height: 4px;
  position: absolute;
  bottom: 0;
  border-radius: 4px;
  box-shadow: 0px 0px 12px #84ddff;
  transition: all 0.3s ease;
}

.vote-button.disabled a p {
  opacity: 0.5;
}
.vote-button.disabled a div {
  background-color: #000000;
  box-shadow: none;
  width: 24px;
  margin-left: -12px;
}
#end-ticket #main-tickets {

  top: 22%;
  left: 15%;
  animation:none;
  transform:rotateZ(20deg);
}

#end-ticket  #main-tickets img {

  width:280px;
}

#end-ticket h1{
  padding-top:65%
}



#end-ticket .input {
  background-color: transparent;
  border: none;
  border-bottom: 2px solid #0082D2;
  box-sizing: border-box;
  text-align: left;
  font: normal normal 300 18px/24px Rubik;
  letter-spacing: 0px;
  color: #0082D2;
  opacity: 1;
  font-size:18px;
  height: 48px;
  margin-top:36px;
  width: 100%;


}

#end-ticket .input:focus{
  outline: none;
}


#end-ticket input::-webkit-input-placeholder {
  color: #0082D2;
}


#end-ticket input:focus {
  color: #84ddff;
  border-bottom: 2px solid #84ddff;
  

}


#end-ticket label {
  display: block;
  text-align: left;
  font: normal normal 300 12px/24px Rubik;
  font-size:12px;
  letter-spacing: 0px;
  color: #FFFFFF;
  margin-top:0px;
  opacity: 0;

}

#end-ticket label.active {

  margin-top:12px;
  opacity: 1;

}

#end-ticket a.button{
margin-top:24px;
display: inline-flex;
width:100%;
height:48px;
background-color: #0082D2 ;
align-items: center;
justify-content: center;
text-align: center;
font: normal normal 300 16px/19px Rubik;
text-transform: uppercase;
font-size:16px;
letter-spacing: 0px;
color: #FFFFFF;
opacity: 1;
border-radius: 24px;

}


#end-ticket .end-agree-terms{
  margin-top:24px;
  display: flex;
  align-items: center;
}

#end-ticket .end-agree-terms div{
  width:36px;
  height:36px;
  background-color: #0082D2;
  display: inline-block;
  margin-right: 18px;
  border-radius: 12px;
  opacity:0.4;
  transition:all 0.3s ease;

}

#end-ticket .end-agree-terms.selected div{
opacity: 1;
border-radius: 36px;
margin:6px;
margin-right: 18px;
width:24px;
height:24px;
background-color: #84ddff;
box-shadow: 0px 0px 12px #84ddff7d;
}

#end-ticket .end-agree-terms p{
  font-size:12px;
  display: inline-block;

}
p a{
  color:#ffffff;
  text-decoration: underline;
}

#terms-conditions{
  width:100%;
  height: 100%;
  z-index: 2;
  background-color: #142B51;
  position: fixed;
  top:-100vh;
  padding:36px;
  box-sizing: border-box;
  overflow-y: scroll;
  transition: all 1s ease;
  opacity: 0;
}

#terms-conditions.active{
  opacity: 1;
  top:0;


}

#terms-conditions li,#terms-conditions ul{
  color:#84ddff;
}

#terms-conditions h1 {
  padding-top:24px;
}

#terms-conditions h2 {
  font-size:24px
}

#terms-conditions .closebutton{
  display: none;
  position: fixed;
  z-index: 3;
  top:24px;
  right:24px;
}

#terms-conditions.active .closebutton{
  display: block;

}

#terms-conditions .closebutton img{
  width:18px;
}

@media only screen and (max-width: 960px) {
  h1 {
    font: normal normal medium 28px/85px Rubik;
    font-size: 28px;
    padding-top: 140px;
    margin-bottom: 24px;
  }
}