@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Lato:400,700,900");
html, body {
  background-color: black;
  margin: 0;
  font-family: 'Lato', sans-serif; }

.nav {
  position: absolute;
  width: 200px;
  z-index: 180;
  right: 20px;
  bottom: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: end;
          justify-content: end; }
  .nav .reset, .nav .start {
    padding: 10px;
    margin-left: 30px; }
    .nav .reset img, .nav .start img {
      width: 25px; }
  .nav .start {
    opacity: 1; }
    .nav .start.hide {
      pointer-events: none;
      opacity: 0.5;
      -webkit-transition: opacity 1s;
      transition: opacity 1s; }

#countdown, #fauxdepart {
  position: fixed;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  z-index: 170;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  color: white;
  font-size: 8vh; }
  #countdown p, #fauxdepart p {
    font-size: 3.5em;
    color: white;
    font-weight: 700;
    line-height: 0.8em; }

#countdown {
  background-color: rgba(255, 102, 0, 0.5); }
  #countdown p {
    font-size: 2.5em;
    color: white;
    font-weight: 700;
    line-height: 0.8em; }

#fauxdepart {
  display: none;
  background-color: rgba(231, 76, 60, 0.95); }

#course {
  position: fixed;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px; }
  #course.finished-wrapper .temps {
    color: white !important; }
  #course .scrollArea {
    background-color: #eaf6fe;
    position: relative;
    font-size: 10vh;
    overflow: hidden;
    height: 50%; }
    #course .scrollArea .overlay {
      pointer-events: none;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: 16;
      color: white;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
              align-items: center;
      font-weight: 700;
      font-size: 1.1em;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: all .3s ease-out;
      transition: all .3s ease-out; }
      #course .scrollArea .overlay span.player-name {
        font-weight: normal;
        font-size: 0.4em; }
      #course .scrollArea .overlay span.winner-title, #course .scrollArea .overlay span.looser-title {
        display: none;
        -webkit-transition: all .3s ease-out;
        transition: all .3s ease-out;
        -webkit-transform: scale(0);
                transform: scale(0); }
      #course .scrollArea .overlay.is-winner, #course .scrollArea .overlay.is-looser {
        opacity: 1;
        visibility: visible; }
      #course .scrollArea .overlay.is-winner {
        background-color: rgba(46, 204, 113, 0.85); }
        #course .scrollArea .overlay.is-winner .winner-title {
          display: block;
          -webkit-transform: scale(1);
                  transform: scale(1); }
      #course .scrollArea .overlay.is-looser {
        background-color: rgba(231, 76, 60, 0.85); }
        #course .scrollArea .overlay.is-looser .looser-title {
          display: block;
          -webkit-transform: scale(1);
                  transform: scale(1); }
    #course .scrollArea .velo-a, #course .scrollArea .velo-b {
      position: absolute;
      width: 500%;
      height: 100%;
      background-repeat: repeat-x;
      background-position: 0 bottom;
      background-size: 100% auto;
      bottom: 0;
      -webkit-transition: left .4s ease-out;
      transition: left .4s ease-out; }
      #course .scrollArea .velo-a.layer-0, #course .scrollArea .velo-b.layer-0 {
        z-index: 4;
        background-image: url(../assets/layer-0.svg); }
        #course .scrollArea .velo-a.layer-0 [class*="confettis-"], #course .scrollArea .velo-b.layer-0 [class*="confettis-"] {
          position: absolute;
          background-image: url(../assets/confettis.svg);
          -webkit-transform: scale(0);
                  transform: scale(0);
          opacity: 0;
          -webkit-animation-duration: 2s;
                  animation-duration: 2s;
          -webkit-animation-name: none;
                  animation-name: none;
          -webkit-animation-fill-mode: forwards;
                  animation-fill-mode: forwards;
          -webkit-animation-timing-function: ease;
                  animation-timing-function: ease; }
        #course .scrollArea .velo-a.layer-0 .confettis-1, #course .scrollArea .velo-b.layer-0 .confettis-1 {
          width: 300px;
          height: 300px;
          top: 0;
          right: 11.5%; }
          #course .scrollArea .velo-a.layer-0 .confettis-1.is-popped, #course .scrollArea .velo-b.layer-0 .confettis-1.is-popped {
            -webkit-animation-name: popped_one;
                    animation-name: popped_one; }
        #course .scrollArea .velo-a.layer-0 .confettis-2, #course .scrollArea .velo-b.layer-0 .confettis-2 {
          width: 230px;
          height: 230px;
          top: -10%;
          right: 8.3%;
          -webkit-animation-delay: 100ms;
                  animation-delay: 100ms; }
          #course .scrollArea .velo-a.layer-0 .confettis-2.is-popped, #course .scrollArea .velo-b.layer-0 .confettis-2.is-popped {
            -webkit-animation-name: popped_two;
                    animation-name: popped_two; }
      #course .scrollArea .velo-a.layer-1, #course .scrollArea .velo-b.layer-1 {
        z-index: 3;
        background-image: url(../assets/layer-1.svg); }
      #course .scrollArea .velo-a.layer-2, #course .scrollArea .velo-b.layer-2 {
        z-index: 2;
        background-image: url(../assets/layer-2.svg); }
      #course .scrollArea .velo-a.layer-3, #course .scrollArea .velo-b.layer-3 {
        z-index: 1;
        background-image: url(../assets/layer-3.svg); }
    #course .scrollArea .velo-velo {
      z-index: 4;
      display: block;
      position: absolute;
      width: 10%;
      height: 20%;
      background-repeat: no-repeat;
      background-position: center bottom;
      background-size: contain;
      left: 100px;
      bottom: 60px;
      -webkit-transition: left 8s ease-out;
      transition: left 8s ease-out; }
      #course .scrollArea .velo-velo.is-running {
        -webkit-transition: left 2s ease-out;
        transition: left 2s ease-out;
        left: 35%;
        -webkit-animation-name: running;
                animation-name: running;
        -webkit-animation-duration: 1s;
                animation-duration: 1s;
        -webkit-animation-iteration-count: infinite;
                animation-iteration-count: infinite;
        -webkit-animation-fill-mode: forwards;
                animation-fill-mode: forwards; }
      #course .scrollArea .velo-velo.startPosition {
        left: 100px;
        -webkit-transition: left 0.5s;
        transition: left 0.5s; }
    #course .scrollArea#aArea .velo-velo {
      background-image: url(../assets/velo-a.svg); }
    #course .scrollArea#bArea .velo-velo {
      background-image: url(../assets/velo-b.svg); }
    #course .scrollArea .nom {
      font-size: 0.3em;
      position: absolute;
      left: 20px;
      line-height: 1em;
      text-transform: none;
      font-weight: 700; }
    #course .scrollArea#aArea .nom {
      top: 85px; }
    #course .scrollArea#bArea .nom {
      top: 115px; }
    #course .scrollArea .temps {
      position: absolute;
      z-index: 100;
      top: 30px;
      left: 20px;
      font-size: 0.55em;
      color: #FF6600;
      font-weight: 700;
      line-height: 1.2em; }
      #course .scrollArea .temps::after {
        content: 'Gagné !';
        position: absolute;
        display: block;
        right: -60px;
        top: -29px;
        padding: 10px 16px;
        color: white;
        background-color: #FF6600;
        -webkit-transform: rotate(6deg) scale(0);
                transform: rotate(6deg) scale(0);
        border-radius: 50px;
        text-transform: uppercase;
        font-size: 0.45em;
        letter-spacing: 0.025em;
        line-height: 1.1em;
        box-shadow: 0 8px 12px 0px rgba(0, 0, 0, 0.15);
        -webkit-transition: -webkit-transform 150ms ease-out;
        transition: -webkit-transform 150ms ease-out;
        transition: transform 150ms ease-out;
        transition: transform 150ms ease-out, -webkit-transform 150ms ease-out; }
      #course .scrollArea .temps.is-winner::after {
        -webkit-transform: rotate(6deg) scale(1);
                transform: rotate(6deg) scale(1);
        -webkit-transition: -webkit-transform 150ms ease-in-out;
        transition: -webkit-transform 150ms ease-in-out;
        transition: transform 150ms ease-in-out;
        transition: transform 150ms ease-in-out, -webkit-transform 150ms ease-in-out; }
  #course #aArea .temps {
    top: 20px; }
  #course #bArea .temps {
    top: 50px; }
  #course .run-progression {
    width: 100%;
    height: 26px;
    position: absolute;
    left: 0;
    top: -18px;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 5; }
    #course .run-progression [class*="player-"] {
      position: absolute;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      left: -30px;
      width: 0;
      height: 13px;
      background-color: #FF6600;
      -webkit-transition: width .3s ease-out;
      transition: width .3s ease-out; }
      #course .run-progression [class*="player-"] .name {
        position: absolute;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
                align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
                justify-content: center;
        text-align: center;
        width: 90px;
        height: auto;
        border-radius: 50px;
        right: -30px;
        color: white;
        font-weight: 700;
        padding: 8px 20px;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 0.8em; }
    #course .run-progression .player-a {
      top: 0;
      background-color: #ff9b59;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
              align-items: flex-end; }
      #course .run-progression .player-a .name {
        background-color: #ff9b59; }
    #course .run-progression .player-b {
      bottom: 0;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
              align-items: flex-start;
      background-color: #FF6600; }
      #course .run-progression .player-b .name {
        background-color: #FF6600; }

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

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

@-webkit-keyframes popped_one {
  0% {
    -webkit-transform: scale(0) rotate(0deg) translateY(0px);
            transform: scale(0) rotate(0deg) translateY(0px);
    opacity: 0; }
  5% {
    -webkit-transform: scale(1) rotate(0deg) translateY(0px);
            transform: scale(1) rotate(0deg) translateY(0px);
    opacity: 1; }
  7% {
    -webkit-transform: scale(1.1) rotate(0deg) translateY(0px);
            transform: scale(1.1) rotate(0deg) translateY(0px);
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.3) rotate(-12deg) translateY(100px);
            transform: scale(1.3) rotate(-12deg) translateY(100px);
    opacity: 0; } }

@keyframes popped_one {
  0% {
    -webkit-transform: scale(0) rotate(0deg) translateY(0px);
            transform: scale(0) rotate(0deg) translateY(0px);
    opacity: 0; }
  5% {
    -webkit-transform: scale(1) rotate(0deg) translateY(0px);
            transform: scale(1) rotate(0deg) translateY(0px);
    opacity: 1; }
  7% {
    -webkit-transform: scale(1.1) rotate(0deg) translateY(0px);
            transform: scale(1.1) rotate(0deg) translateY(0px);
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.3) rotate(-12deg) translateY(100px);
            transform: scale(1.3) rotate(-12deg) translateY(100px);
    opacity: 0; } }

@-webkit-keyframes popped_two {
  0% {
    -webkit-transform: scale(0) rotate(0deg) translateY(0px);
            transform: scale(0) rotate(0deg) translateY(0px);
    opacity: 0; }
  5% {
    -webkit-transform: scale(1) rotate(0deg) translateY(0px);
            transform: scale(1) rotate(0deg) translateY(0px);
    opacity: 1; }
  7% {
    -webkit-transform: scale(1.1) rotate(0deg) translateY(0px);
            transform: scale(1.1) rotate(0deg) translateY(0px);
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.3) rotate(12deg) translateY(100px);
            transform: scale(1.3) rotate(12deg) translateY(100px);
    opacity: 0; } }

@keyframes popped_two {
  0% {
    -webkit-transform: scale(0) rotate(0deg) translateY(0px);
            transform: scale(0) rotate(0deg) translateY(0px);
    opacity: 0; }
  5% {
    -webkit-transform: scale(1) rotate(0deg) translateY(0px);
            transform: scale(1) rotate(0deg) translateY(0px);
    opacity: 1; }
  7% {
    -webkit-transform: scale(1.1) rotate(0deg) translateY(0px);
            transform: scale(1.1) rotate(0deg) translateY(0px);
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.3) rotate(12deg) translateY(100px);
            transform: scale(1.3) rotate(12deg) translateY(100px);
    opacity: 0; } }
/*# sourceMappingURL=style.css.map */