@font-face{
  font-family:'Maison Neue';
  src:  url("./assets/fonts/maisonneue-bi.woff2") format("woff2"),
        url("./assets/fonts/maisonneue-bi.woff") format("woff");
  font-weight:300;
  font-style:normal;
}

* {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  -webkit-tap-highlight-color: rgba(0,0,0,0);
  -moz-tap-highlight-color: rgba(0,0,0,0);
  -ms-tap-highlight-color: rgba(0,0,0,0);

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -moz-osx-font-smooth: grayscale;

}

html, body {
  background: #161616;
}

html, body, canvas {
  overflow: hidden;
  width: 100%;
  height: 100%;
  margin: 0;
  color: white;
}

section {
  position : absolute;
  display : none;
  width : 100%;
  height : 100%;
  top:0;
  left:0;
}

#section-loading {
  background: #161616;
}

.white-layer {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  background: rgba( 255, 255, 255, 0.05 );
  pointer-events: none;
}

.share-images {
  position: absolute;
  top: 100%;
  left: 100%;
  width: 0;
  height: 0;
  z-index: 0;
}

.spinner {
  width : 108px;
  height: 108px;
  padding: 0;

  position: absolute;
  top: 50%;
  left: 50%;

  margin: -54px 0 0 -54px;

  opacity : 0;
  transition : opacity .9s;

}

.bigyear,
.bigyear-mobile {
  width : 70%;
  fill : none;
  stroke : white;
  opacity: .3;

  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.cursor-pointer {
  cursor: pointer;
}

.loader {
  font-size: 40px;
  width : 100%;
  text-align: center;
}

.nav-debug {
  width : 100%;
  position : absolute;
  bottom:0;
  text-align: center;
}

.mouse-cursor {
  position: absolute;
  width: 44px;
  height: 44px;
  top: 0;
  left: 0;
  pointer-events: none;
}

.mouse-cursor.disabled {
  display: none;
}

/**
* Logo
*/
.logo {
  position: absolute;
  width: 50px;
  height: 15px;
  top: 65px;
  left: 50%;
  z-index: 3;
  margin-left: -25px;
}

.logo svg {
  width: 100%;
  height: 100%;
}

/**
* Mouse
*/

html, body, a {
  user-select: none;
  cursor: none !important;
}

.mouse-cursor span {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  border: 2px solid white;
  border-radius: 50%;
}

/**
* Circle Loader
*/

.circle-loader {
  width: 100px;
  height: 100px;
  background: rgba( 255, 0, 0, 0.5 );
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  position: absolute;
  margin: auto;
}

/**
* Navigation
*/

.navigation {
  position: absolute;
  width: 340px; /* 320 + 100 */
  height: 80px;
  bottom: 45px;
  left: 0;
  right: 0;
  margin: auto;
}

.dragger-area {
  position: relative;
  width: 100%;
  height: 80px;
}

.dragger-cursor {
  position: absolute;
  left: 20px;
  top: 15px;
  border-radius: 50%;
  width: 50px;
  height: 50px;
}

/**
* Outro
*/

#section-outro .section-outro__container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  margin: auto;
  text-align: center;
}

#section-outro .section-outro__container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-left: -0.25em;
}

#section-outro .section-outro__content {
  display: inline-block;
  height: 80px;
  vertical-align: middle;
  font-family:'Maison Neue';
  font-size: 36px;
  text-shadow: rgba(104, 35, 35, .1) 0px 0px 5px;
}

.btn-replay {
  display: inline-block;
  width: 100px;
  margin: auto;
  margin-top: 30px;
  padding: 7px 6px;
  background-color: white;
  border-radius: 20px;
  text-decoration: none;
  text-align: center;
  text-transform: uppercase;
  box-shadow: rgba(104, 35, 35, .1) 0px 0px 5px 0px;
}

.btn-replay svg {
  width: 18px;
  height: 18px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.btn-replay span {
  display: block;
  color: #e88e8f;
  font-family: "Maison Neue";
  font-size: 14px;
  text-shadow: none;
}

.btn-replay svg path {
  fill: #ec9fa0;
}

.socials {
  list-style: none;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 2;
  width: 210px;
  margin: auto;
  padding: 0;
  bottom: 75px;
  text-align: center;
}

.socials li {
  /*float: left;*/
  display: inline-block;
  height: 18px;
  margin: 0 15px;
  padding: 0 5px;
  transition: all 0.15s ease-in-out;
}

.socials li:first-child {
  margin-left: 0
}

.socials li:last-child {
  margin-right: 0
}

.socials li a {
  display: block;
}

.facebook svg{
  width: 10px;
  height: 18px;
}

.twitter svg{
  width: 21px;
  height: 18px;
}

.instagram svg{
  width: 18px;
  height: 18px;
}

/**
* Animations
*/

.logo,
.navigation,
.socials,
.btn-replay,
#section-outro .section-outro__content {
  opacity: 1;
  visibility: visible;
}

.logo,
.navigation {
  -webkit-transition: visibility 0s ease-out, opacity 1s ease-out;
  -moz-transition: visibility 0s ease-out, opacity 1s ease-out;
  -ms-transition: visibility 0s ease-out, opacity 1s ease-out;
  transition: visibility 0s ease-out, opacity 1s ease-out;
}

.hidden,
#section-outro .section-outro__content.hidden {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility 0s ease-out 0.5s, opacity 0.2s ease-out;
  -moz-transition: visibility 0s ease-out 0.5s, opacity 0.2s ease-out;
  -ms-transition: visibility 0s ease-out 0.5s, opacity 0.2s ease-out;
  transition: visibility 0s ease-out 0.5s, opacity 0.2s ease-out;
}

.socials,
.btn-replay,
#section-outro .section-outro__content {
  -webkit-transition: visibility 0s linear 0s, opacity 0.5s ease-out;
  -moz-transition: visibility 0s linear 0s, opacity 0.5s ease-out;
  -ms-transition: visibility 0s linear 0s, opacity 0.5s ease-out;
  transition: visibility 0s linear 0s, opacity 0.5s ease-out;
}


/**
* Mobile Navigation
*/

.tablet .logo,
.mobile .logo {
  top: 35px;
}

.tablet .navigation,
.mobile .navigation {
  width: 75%;
  max-width: 240px;
  height: 80px;
  bottom: 25px;
  position: fixed;
}

.mobile #section-outro .section-outro__content,
.tablet #section-outro .section-outro__content{
  width: 220px;
  font-size: 22px;
  margin-top: -80px;
}

.mobile #section-outro .section-outro__content br,
.tablet #section-outro .section-outro__content br{
  display: none;
}

.bigyear-mobile{
  display: none;
}

.mobile .bigyear,
.tablet .bigyear{
  display: none;
}

.mobile .bigyear-mobile,
.tablet .bigyear-mobile{
  display: block
}

.tablet .btn-replay{
  bottom: 32%;
}
.mobile .btn-replay{
  bottom: 28%;
}

.mobile .socials,
.tablet .socials{
  bottom: 35px;
}

@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2) {

  .desktop #section-outro .section-outro__content {
    height: 60px;
    font-size: 28px;
  }

}

@media
only screen and (-webkit-min-device-pixel-ratio: 3),
only screen and (   min--moz-device-pixel-ratio: 3),
only screen and (     -o-min-device-pixel-ratio: 3/1),
only screen and (        min-device-pixel-ratio: 3) {

  .desktop #section-outro .section-outro__content {
    font-size: 28px;
  }

}

