body {
  margin: 0;
  font-family: BERNIER;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  height: 100vh; 
  overflow: hidden;
  width: 100vw;
  position: relative;
}

code {
  font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace;
}

.full-screen {
  position: absolute;
  width: 100%;
  height: 100%;
}

.camera-switch {
    position: absolute;
    width: 48px;
    height: 48px;
    top: 8px;
    right: 8px;
    z-index: 1;
    background-image: url("switch.png");
    background-size: contain;
    background-color: transparent;
    border: none;
}

/**/


#background {
  position: absolute;
  width: 100vw;
  height: 100vh;
  left: 50%;
  transform: translate(-50%);
  z-index: 1;
}

/*
.welcome {
  position: absolute;
  width: 100vw;
  height: 17.5vh;
  top: 8px;
  left: 50%;
  transform: translate(-50%);
  z-index: 1;
  background-image: url("Top Frame Element.png");
  background-color: transparent;
  border: none;
  background-repeat: no-repeat;
}*/
.container-background {
  background-image: url('Football Stadium Background.png');
  background-size: cover;
  background-color: transparent;
  border: none;
  background-repeat: no-repeat;
}
#background-video {
  position: absolute;
    width: 100vw;
    height: 100vh;
    left: 50%;
    transform: translate(-50%);
    z-index: 1;
    display: none;
}
#background-animations-container {
  position: absolute;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
#background-animations {
  position: absolute;
    width: 100%;
    height: 100%;
    background-image: url('spritesheet (3).png');
    background-size: cover;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
    /*background-position: 0px -838px;*/
    background-position: 0px -861.53846152vw;
}
.background-zoom {
  animation: zoom;
  animation-duration: 4s;
  /*animation-fill-mode: forwards;*/
  animation-iteration-count: 4;
}
@keyframes zoom {
  0% {
      transform: scale(1);
      -webkit-transform: scale(1);
       /*top : 40%;*/
  }
  100% {
      transform: scale(1.05);
      /*top : 80%;*/
      -webkit-transform: scale(1.05);
  }
}
.score-board {
  position: absolute;
  width: 100vw;
  height: 10vh;
  display: flex;
  justify-content: center;
  top: 9vh;
  margin-left: auto;
  margin-right: auto;
  left: 50%;
  right: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.score-board div {
  width: 80vw;
  min-width: 300px;
  min-height: 10vw;
  height: 10vh;
  background-image: url("Scoreboard + Timer.png");
  background-size: contain;
  background-color: transparent;
  border: none;
  background-repeat: no-repeat;
  background-position: center;
}

#score {
  position: absolute;
    top: 10.2vh;
    text-align: center;
    left: 24.5%;
    right: 50%;
    font-size: 5.5vw;
    transform: translate(-50%, -50%);
    z-index: 2;
    color: white;
    margin: 0;
}

#time {
  position: absolute;
    top: 10.2vh;
    left: 76%;
    width: 4vw;
    text-align: start;
    right: 50%;
    font-size: 5.5vw;
    transform: translate(-50%, -50%);
    z-index: 2;
    color: white;
    margin: 0;
}

#colon {
  position: absolute;
  top: 9.9vh;
  left: 72.5%;
    right: 50%;
    font-size: 5.5vw;
    transform: translate(-50%, -50%);
    z-index: 2;
    color: white;
    margin: 0;
}

#info-box-txt-imgs {
  width: 30vw;
    height: auto;
    position: absolute;
    top: 25vh;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#info-box-txt-imgs img {
  width: 100%;
  margin: 5px;
}
#agonist {
  position: absolute;
  width: 30vw;
  height: auto;
  top: 70%;
  left: 50%;
  right: 50%;
  transform: translate(-50%);
  z-index: 5;
  user-select: none;
  touch-action: none;
  display: none;
}
#agonist-animations {
  position: absolute;
  width: 60vw;
  height: 49vh;
  top: 60%;
  left: 50%;
  right: 50%;
  transform: translate(-50%);
  z-index: 5;
  user-select: none;
  touch-action: none;
    background-image: url('spritesheet (5).png');
    background-size: cover;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
    /*background-position: 0px -838px;*/
    display: none;
}
.obsticle {
  position: absolute;
    width: 30vw;
    height: 20vh;
    top: 40vh;
  left: 50%;
  right: 50%;
  transform: translate(-50%, -50%);
    background-image: url('spritesheet (4).png');
    background-size: cover;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
    background-position: 0px 0px;
    scale: 0.1;
    z-index: 2;
}
.obsticle-animation {
  animation: run;
  animation-duration: 3s;
  animation-fill-mode: forwards;
}
@keyframes run {
  0% {
      transform: scale(5);
      -webkit-transform: scale(5);
       /*top : 40%;*/
  }
  100% {
      transform: scale(20);
      /*top : 80%;*/
      -webkit-transform: scale(20);
  }
}
.obsticle-animation-two {
  animation: run-two;
  animation-duration: 3s;
  animation-fill-mode: forwards;
}
@keyframes run-two {
  0% {
      transform: scale(10);
      -webkit-transform: scale(10);
       /*top : 40%;*/
  }
  100% {
      transform: scale(20);
      /*top : 80%;*/
      -webkit-transform: scale(20);
  }
}

.points {
  position: absolute;
    width: 10vw;
    height: auto;
    top: 60vh;
    left: 50%;
    right: 50%;
    transform: translate(-50%);
    z-index: 1;
    display: none;
}

#logo{
  position: absolute;
  width: 30vw;
    height: 17.5vh;
    top: 85%;
  left: 50%;
  right: 50%;
  transform: translate(-50%, -50%);
    z-index: 1;
    background-image: url("JM Ground Logo.png");
    background-size: contain;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
}

#continue {
  position: absolute;
  top: 70vh;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90vw;
  background: transparent;
  color: white;
  border: 0;
  font-size: 9.5vw;
  font-family: 'BERNIER';
  letter-spacing: 2px;
  z-index: 5;
  display: none;
}


#Cleatus-gif {
  position: absolute;
  width: 60vw;
    height: 60vh;
    /*bottom: 0; */
    top: 70vh;
    left: 65%;
    scale: 1.5;
    transform: translate(-50%, -50%);
    z-index: 6;
    animation: mymove;
    animation-duration: 1s;
}

#Cleatus{
  position: absolute;
  width: 40vw;
    height: 40vh;
    /*bottom: 0; */
    top: 80vh;
    left: 65%;
    scale: 1.5;
    transform: translate(-50%, -50%);
    z-index: 6;
    background-image: url("Skype_Picture_2022_09_05T11_14_42_027Z.jpeg");
    background-size: contain;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
    /* animation: mymove; */
    /* animation-duration: 1s; */
}

@keyframes mymove {
  from {left: -20%;}
  to {left: 65%;}
}

#QR{
  position: absolute;
  width: 36vw;
  height: 20vh;
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  background-image: url("QR Code.png");
  background-size: contain;
  background-color: transparent;
  border: none;
  background-repeat: no-repeat;
}

#play-again-button{
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 1;
  background-image: url("Play Again Button.png");
  background-size: contain;
  background-color: transparent;
  border: none;
  background-repeat: no-repeat;
}

#info-box {
  position: absolute;
  width: 70vw;
    height: 8vh;
    top: 30vh;
    left: 50%;
    right: 50%;
  transform: translate(-50%, -50%);
    z-index: 1;
    /*background-image: url("Info Box.png");*/
    background-size: contain;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
}
#drag-icon {
  position: absolute;
  width: 10vw;
  height: auto;
  top: -20%;
  left: 28%;
  right: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
#drag_left_right-txt-img {
  position: absolute;
  width: 70vw;
    height: auto;
    top: 25%;
    left: 50%;
    right: 50%;
  transform: translate(-50%, -50%);
    z-index: 1;
}

#guide{
  position: absolute;
  width: 70vw;
    height: 40.5vh;
    top: 45%;
    left: 50%;
    right: 50%;
  transform: translate(-50%, -50%);
    z-index: 1;
    background-image: url("JM-TT-Mobile-Experience_0003s_0008_Instruction-Pop-up-Small.png");
    background-size: contain;
    background-color: transparent;
    border: none;
    background-repeat: no-repeat;
    /*display: flex;
    flex-direction: column;
    align-items: center;*/
}
#guide h2  {
  font-size: 36px;
  color: white;
}
#guide p  {
  color: white;
}
#guide-first-img {
  position: absolute;
  width: 40vw;
    height: auto;
    top: 20%;
    left: 50%;
    right: 50%;
  transform: translate(-50%, -50%);
    z-index: 1;
}
#guide-second-img {
  position: absolute;
  width: 60vw;
    height: auto;
    top: 35%;
    left: 50%;
    right: 50%;
  transform: translate(-50%, -50%);
    z-index: 1;
}
#video {
  position: absolute;
    width: 80vw;
    height: 70vh;
    top: 52vh;
    left: 50vw;
    transform: translate(-50%, -50%);
    z-index: 4;
    object-fit: cover;
    display: none;
}
#photo {

  position: absolute;
    max-width: 80vw;
    height: 60vh;
    top: 50vh;
    left: 50%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    display: none;
    border: 5px solid white;
    outline: 5px solid red;
}
#Touchdown-Blitz-img {
  position: absolute;
    width: 60vw;
    height: auto;
    top: 16vh;
    left: 65%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    display: none;
}
#points-img {
  position: absolute;
  width: 3vw;
  height: auto;
  top: 10vh;
  left: 93%;
  right: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
    display: none;
}
#i-scored {
  position: absolute;
    width: 50vw;
    height: auto;
    top: 10vh;
    left: 30%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
  display: none;
}
#on {
  position: absolute;
    width: 10vw;
    height: auto;
    top: 16vh;
    left: 25%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    display: none;
}
#total-points {
  position: absolute;
    text-align: center;
    width: 40vw;
    color: white;
    font-weight: 500;
    font-size: 19vw;
    top: 9vh;
    left: 76%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
}
#Tap-to-download {
  position: absolute;
  text-align: center;
  width: 75vw;
  color: white;
  /* font-weight: 500; */
  /* font-size: 19vw; */
  top: 5.5vh;
  left: 50%;
  right: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
  display: none;
}
#redeem-shore-points {
  position: absolute;
    text-align: center;
    width: 50vw;
    color: white;
    /* font-weight: 500; */
    /* font-size: 19vw; */
    top: 82vh;
    left: 50%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
  display: none;
}
#play-again {
  position: absolute;
    text-align: center;
    width: 35vw;
    color: white;
    /* font-weight: 500; */
    /* font-size: 19vw; */
    top: 87vh;
    left: 50%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
  display: none;
}
#camera-button {
  position: absolute;
  max-width: 25vw;
    height: 11vh;
    top: 80vh;
    left: 50%;
    right: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    border-radius: 100vw;
    border: none;
    padding: 0;
}
/*
#camera-button img {
  width: 25vw;
}*/
/*
#bottom-frame {
  position: absolute;
  width: 100vw;
  height: 7vh;
  bottom: 8px;
  left: 50%;
  transform: translate(-50%);
  z-index: 1;
  background-image: url("Bottom Frame Element.png");
  background-color: transparent;
  border: none;
  background-repeat: no-repeat;
}
*/



/**/

.avatar-switch {
    position: absolute;
    width: 48px;
    height: 48px;
    top: 64px;
    right: 8px;
    z-index: 1;
    background-image: url("avatar.png");
    background-size: contain;
    background-color: transparent;
    border: none;
}

.avatar-switch:checked {
    background-image: url("outfit.png");
}

input.avatar-switch[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
}

.record {
    position: absolute;
    width: 48px;
    height: 48px;
    top: 8px;
    left: 8px;
    z-index: 1;
    background-image: url("snapshot.png");
    background-size: contain;
    background-color: transparent;
    border: none;
}

.carousel {
    position: absolute;
    width: 100%;
    height: 64px;
    bottom: 16px;
    z-index: 1;
    display: flex;
    justify-content: center;
}

.carousel-item {
    background-size: contain;
    background-color: transparent;
    border: double 4px #008080;
    border-radius: 50%;
    overflow: hidden;
    height: 64px;
    width: 64px;
    margin: auto 4px;
    transition: .6s;
}

.carousel input[type="radio"] {
    background-color: #fff;
    appearance: none;
    -webkit-appearance: none;
}

.carousel-item:checked {
    border: solid 4px #008080;
}

.dots {
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: linear-gradient(45deg, #709dff 0%, #91fdb7 100%);
  z-index: 2;
}

.dots > div {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 2px;
  border-radius: 100%;
  background-color: #008080;
  animation: dot-pulse 1.4s infinite ease-in-out both;
  -webkit-animation: dot-pulse 1.4s infinite ease-in-out both;
}

.dots .pulse1 {
  animation-delay: -0.32s;
  -webkit-animation-delay: -0.32s;
}

.dots .pulse2 {
  animation-delay: -0.16s;
  -webkit-animation-delay: -0.16s;
}

@keyframes dot-pulse {
  0%, 80%, 100% {
    transform: scale(0);
    -webkit-transform: scale(0);
  }
  40% {
    transform: scale(1.0);
    -webkit-transform: scale(1.0);
  }
}

@-webkit-keyframes dot-pulse {
  0%, 80%, 100% { -webkit-transform: scale(0) }
  40% { -webkit-transform: scale(1.0) }
}

.spinner {
  position: absolute;
  width: 100%;
  height: 100%;
  margin: auto;
  animation: spinner 2.5s infinite linear both;
  -webkit-animation: spinner 2.5s infinite linear both;
}

.spinner-dot {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  animation: spinner-dot 2.0s infinite ease-in-out both;
  -webkit-animation: spinner-dot 2.0s infinite ease-in-out both;
}

.spinner-dot:before {
  content: '';
  display: block;
  width: 25%;
  height: 25%;
  background-color: #008080;
  border-radius: 100%;
  animation: spinner-dot-before 2.0s infinite ease-in-out both;
  -webkit-animation: spinner-dot-before 2.0s infinite ease-in-out both;
}

.spinner-dot:nth-child(1) { animation-delay: -1.1s; }
.spinner-dot:nth-child(2) { animation-delay: -1.0s; }
.spinner-dot:nth-child(3) { animation-delay: -0.9s; }
.spinner-dot:nth-child(4) { animation-delay: -0.8s; }
.spinner-dot:nth-child(5) { animation-delay: -0.7s; }
.spinner-dot:nth-child(6) { animation-delay: -0.6s; }
.spinner-dot:nth-child(1):before { animation-delay: -1.1s; }
.spinner-dot:nth-child(2):before { animation-delay: -1.0s; }
.spinner-dot:nth-child(3):before { animation-delay: -0.9s; }
.spinner-dot:nth-child(4):before { animation-delay: -0.8s; }
.spinner-dot:nth-child(5):before { animation-delay: -0.7s; }
.spinner-dot:nth-child(6):before { animation-delay: -0.6s; }

.spinner-container {
  position: absolute;
  width: 100px;
  height: 100px;
  top: 50%;
  left: 50%;
  margin: auto;
  z-index: 1;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

@keyframes spinner {
  100% {
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
  }
}

@-webkit-keyframes spinner {
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spinner-dot {
  80%, 100% {
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
  }
}

@-webkit-keyframes spinner-dot {
  80%, 100% { -webkit-transform: rotate(360deg); }
}

@keyframes spinner-dot-before {
  50% {
    transform: scale(0.4);
    -webkit-transform: scale(0.4);
  }
  100%, 0% {
    transform: scale(1.0);
    -webkit-transform: scale(1.0);
  }
}

@-webkit-keyframes spinner-dot-before {
  50% { -webkit-transform: scale(0.4); }
  100%, 0% { -webkit-transform: scale(1.0); }
}

@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}

.progress-ring__circle {
  transition: 0.35s stroke-dashoffset;
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
}

@font-face {
  font-family:"BERNIER";
  src: url("fonts/BERNIERRegular-Regular.otf") format("truetype");
}

.confettiVideo
{
  object-fit: cover;
  opacity: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  top: 0;
  left: 0;
  z-index: 2;
}
