@layer base {
  body {
    padding: 0;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 0;
    margin-top: 0;
    overflow: hidden;
  }
}

#page-loader {
  z-index: 1000;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-family: 'proxima-nova-soft', sans-serif;
  -webkit-user-select: none;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  position: absolute;
  opacity: 1;
  left: 0;
  top: 0;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;

  background: linear-gradient(316deg, #6469b7, #6499b7, #6469b7);
  background-size: 600% 600%;

  -webkit-animation: AnimationName 8s ease infinite;
  -moz-animation: AnimationName 8s ease infinite;
  animation: AnimationName 8s ease infinite;

  @-webkit-keyframes AnimationName {
    0% {
      background-position: 0% 10%;
    }
    50% {
      background-position: 100% 91%;
    }
    100% {
      background-position: 0% 10%;
    }
  }
  @-moz-keyframes AnimationName {
    0% {
      background-position: 0% 10%;
    }
    50% {
      background-position: 100% 91%;
    }
    100% {
      background-position: 0% 10%;
    }
  }
  @keyframes AnimationName {
    0% {
      background-position: 0% 10%;
    }
    50% {
      background-position: 100% 91%;
    }
    100% {
      background-position: 0% 10%;
    }
  }
}
#page-loader .vertical-centered-box {
  position: absolute;
  text-align: center;
}
#page-loader .vertical-centered-box:after {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}
#page-loader .vertical-centered-box .content {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  font-size: 0;
}
#page-loader * {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}
#loader-logo {
  position: absolute;
  bottom: 0;
  right: 15px;
}

.loader-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
  margin-left: -60px;
  margin-top: -60px;
}
.loader-line-mask {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 60px;
  height: 120px;
  margin-left: -60px;
  margin-top: -60px;
  overflow: hidden;
  -webkit-transform-origin: 60px 60px;
  -moz-transform-origin: 60px 60px;
  -ms-transform-origin: 60px 60px;
  -o-transform-origin: 60px 60px;
  transform-origin: 60px 60px;
  -webkit-mask-image: -webkit-linear-gradient(top, #000000, rgba(0, 0, 0, 0));
  -webkit-animation: rotate 1.2s infinite linear;
  -moz-animation: rotate 1.2s infinite linear;
  -o-animation: rotate 1.2s infinite linear;
  animation: rotate 1.2s infinite linear;

  background: linear-gradient(316deg, #8779f9, #6bb4dd, #6391dd);
  background-size: 600% 600%;

  -webkit-animation: AnimationName 5s ease infinite;
  -moz-animation: AnimationName 5s ease infinite;
  animation: AnimationName 5s ease infinite;

  @-webkit-keyframes AnimationName {
    0% {
      background-position: 0% 10%;
    }
    50% {
      background-position: 100% 91%;
    }
    100% {
      background-position: 0% 10%;
    }
  }
  @-moz-keyframes AnimationName {
    0% {
      background-position: 0% 10%;
    }
    50% {
      background-position: 100% 91%;
    }
    100% {
      background-position: 0% 10%;
    }
  }
  @keyframes AnimationName {
    0% {
      background-position: 0% 10%;
    }
    50% {
      background-position: 100% 91%;
    }
    100% {
      background-position: 0% 10%;
    }
  }
}
.loader-line-mask .loader-line {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  box-shadow: inset 0 0 0 10px rgba(53, 133, 220, 0.5);
}
#particles-background,
#particles-foreground {
  left: -51%;
  top: -51%;
  width: 202%;
  height: 202%;
  -webkit-transform: scale3d(0.5, 0.5, 1);
  -moz-transform: scale3d(0.5, 0.5, 1);
  -ms-transform: scale3d(0.5, 0.5, 1);
  -o-transform: scale3d(0.5, 0.5, 1);
  transform: scale3d(0.5, 0.5, 1);
}
#particles-foreground {
  width: 50%;
  height: 50%;
  top: 20%;
  left: 20%;
}
lesshat-selector {
  -lh-property: 0;
}
@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@-moz-keyframes rotate {
  0% {
    -moz-transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(360deg);
  }
}
@-o-keyframes rotate {
  0% {
    -o-transform: rotate(0deg);
  }
  100% {
    -o-transform: rotate(360deg);
  }
}
@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
[not-existing] {
  zoom: 1;
}
lesshat-selector {
  -lh-property: 0;
}
@-webkit-keyframes fade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
@-moz-keyframes fade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
@-o-keyframes fade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
@keyframes fade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
[not-existing] {
  zoom: 1;
}
lesshat-selector {
  -lh-property: 0;
}
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
[not-existing] {
  zoom: 1;
}
