*:hover {
  cursor: default;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  background: #fff;
}
html,
body {
  -webkit-overflow-scrolling: touch !important;
}
li,
a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
div,
p,
ul,
ol,
li,
header,
footer,
section,
nav,
h1,
h2,
h3,
h4,
h5,
h6,
form,
article,
main,
adress {
  display: block;
  float: left;
  width: 100%;
  font-size: inherit;
  margin: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0);
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
}
a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
a:focus {
  outline: 0;
}
a:active {
  outline: 0;
}
@-webkit-keyframes crawling-line {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(-100vw, 0, 0);
    transform: translate3d(-100vw, 0, 0);
  }
}
@keyframes crawling-line {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
  to {
    -webkit-transform: translate3d(-100vw, 0, 0);
    transform: translate3d(-100vw, 0, 0);
  }
}
@keyframes change {
  0% {
    transform: translateY(110%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes change-span {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-100%);
    opacity: 0;
  }
}
* {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@keyframes pulse {
  0% {
    transform: translate(-50%, -50%) scale(0.5);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0;
  }
}
@keyframes award {
  0% {
    top: 0;
    opacity: 0;
  }
  100% {
    top: 50%;
    opacity: 1;
  }
}
.glitch {
  position: relative;
}
@keyframes noise-anim {
  0% {
    clip: rect(20px, 9999px, 54px, 0);
  }
  5% {
    clip: rect(54px, 9999px, 28px, 0);
  }
  10% {
    clip: rect(28px, 9999px, 40px, 0);
  }
  15% {
    clip: rect(60px, 9999px, 100px, 0);
  }
  20% {
    clip: rect(14px, 9999px, 23px, 0);
  }
  25% {
    clip: rect(97px, 9999px, 96px, 0);
  }
  30% {
    clip: rect(2px, 9999px, 21px, 0);
  }
  35% {
    clip: rect(50px, 9999px, 31px, 0);
  }
  40% {
    clip: rect(39px, 9999px, 63px, 0);
  }
  45% {
    clip: rect(5px, 9999px, 29px, 0);
  }
  50% {
    clip: rect(4px, 9999px, 34px, 0);
  }
  55% {
    clip: rect(47px, 9999px, 64px, 0);
  }
  60% {
    clip: rect(74px, 9999px, 78px, 0);
  }
  65% {
    clip: rect(83px, 9999px, 18px, 0);
  }
  70% {
    clip: rect(100px, 9999px, 32px, 0);
  }
  75% {
    clip: rect(83px, 9999px, 14px, 0);
  }
  80% {
    clip: rect(56px, 9999px, 68px, 0);
  }
  85% {
    clip: rect(86px, 9999px, 51px, 0);
  }
  90% {
    clip: rect(60px, 9999px, 52px, 0);
  }
  95% {
    clip: rect(98px, 9999px, 73px, 0);
  }
  100% {
    clip: rect(65px, 9999px, 46px, 0);
  }
}
@keyframes noise-anim-2 {
  0% {
    clip: rect(22px, 9999px, 44px, 0);
  }
  5% {
    clip: rect(92px, 9999px, 57px, 0);
  }
  10% {
    clip: rect(47px, 9999px, 96px, 0);
  }
  15% {
    clip: rect(74px, 9999px, 18px, 0);
  }
  20% {
    clip: rect(69px, 9999px, 43px, 0);
  }
  25% {
    clip: rect(89px, 9999px, 88px, 0);
  }
  30% {
    clip: rect(6px, 9999px, 8px, 0);
  }
  35% {
    clip: rect(24px, 9999px, 74px, 0);
  }
  40% {
    clip: rect(46px, 9999px, 71px, 0);
  }
  45% {
    clip: rect(87px, 9999px, 87px, 0);
  }
  50% {
    clip: rect(94px, 9999px, 6px, 0);
  }
  55% {
    clip: rect(4px, 9999px, 94px, 0);
  }
  60% {
    clip: rect(61px, 9999px, 4px, 0);
  }
  65% {
    clip: rect(16px, 9999px, 74px, 0);
  }
  70% {
    clip: rect(15px, 9999px, 47px, 0);
  }
  75% {
    clip: rect(93px, 9999px, 13px, 0);
  }
  80% {
    clip: rect(66px, 9999px, 99px, 0);
  }
  85% {
    clip: rect(97px, 9999px, 79px, 0);
  }
  90% {
    clip: rect(14px, 9999px, 64px, 0);
  }
  95% {
    clip: rect(33px, 9999px, 15px, 0);
  }
  100% {
    clip: rect(75px, 9999px, 77px, 0);
  }
}
.glitch:after {
  content: attr(data-text);
  position: absolute;
  display: block;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: -1px 0 red;
  overflow: hidden;
  clip: rect(0, 900px, 0, 0);
  animation: noise-anim 2s infinite linear alternate-reverse;
  font-size: inherit;
}
.glitch:before {
  content: attr(data-text);
  position: absolute;
  display: block;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: 1px 0 blue;
  overflow: hidden;
  clip: rect(0, 900px, 0, 0);
  animation: noise-anim-2 3s infinite linear alternate-reverse;
  font-size: inherit;
}
a:hover,
button:hover {
  cursor: pointer;
}
a:hover *,
button:hover * {
  cursor: pointer;
}
.wrap {
  width: 100%;
  max-width: 1780px;
  float: none;
  margin: 0 auto;
}
body {
  margin: 0;
  padding: 0;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  color: #000;
}
main {
  background: #fff;
}
* {
  box-sizing: border-box;
}
/*------------------------------------------------------------------
1. Top panel
-------------------------------------------------------------------*/
.top-panel {
  position: absolute;
  padding: 64px 0;
  z-index: 3;
}
.top-panel .logo {
  width: 142px;
  float: left;
  display: block;
}
.top-panel .logo .for-day-mode {
  display: block;
}
.top-panel .logo .for-night-mode {
  display: none;
}
.top-panel .logo img {
  width: 100%;
  display: block;
  float: left;
}

/*------------------------------------------------------------------
7. Footer
-------------------------------------------------------------------*/
.footer {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  text-transform: uppercase;
}
.footer .footer-top {
  font-size: 20px;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.footer .footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 35px 0;
}
.footer .footer-bottom > * {
  width: auto;
}
.footer .footer-bottom ._left {
  max-width: 300px;
}
.footer .footer-bottom ._center a {
  display: inline-block;
  vertical-align: top;
}
.change:before {
  animation-name: change;
  -webkit-animation-name: change;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
}
.change-span {
  animation-name: change-span;
  -webkit-animation-name: change-span;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
}
.dot {
  width: 40px;
  height: 40px;
  position: fixed;
  margin-top: -20px;
  margin-left: -20px;
  background: #fff;
  border-radius: 50%;
  pointer-events: none;
  z-index: 444;
  mix-blend-mode: difference;
  transition: all .2s linear;
}
.mobile .dot,
.tablet .dot {
  display: none !important;
}
.header .wrap_float {
  position: relative;
  min-height: 600px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 90vh;
}
.header .header-title {
  font-size: 146px;
  text-align: center;
}
/*------------------------------------------------------------------
12. Media
-------------------------------------------------------------------*/
@media screen and (min-width: 2000px) {
  .wrap {
    max-width: 92vw;
  }
  .header .header-title {
    font-size: 160px;
  }
}

@media screen and (max-width: 1800px) {
  .wrap {
    max-width: 1500px;
  }
  .header .header-title {
    font-size: 127px;
  }
}
@media screen and (max-width: 1540px) {
  .wrap {
    max-width: 1300px;
  }
  .header .header-title {
    font-size: 148px;
  }
}
@media screen and (max-width: 1320px) {
  .wrap {
    max-width: 1100px;
  }
}
@media screen and (max-width: 1130px) {
  .wrap {
    max-width: 960px;
  }
  .top-panel {
    padding: 35px 0;
  }
  .top-panel .logo {
    width: 120px;
  }
  .header .header-title {
    font-size: 140px;
  }
}

@media screen and (max-width: 1000px) {
  .wrap {
    width: 90vw;
    max-width: 90vw;
  }
  .top-panel .logo {
    width: 150px;
  }
  main {
    overflow: visible !important;
    position: static !important;
    width: 100% !important;
    height: inherit!important;
  }
  body {
    height: inherit !important;
  }
  .container {
    transform: none !important;
  }
  .dot {
    display: none;
  }
  .header .header-title {
    font-size: 106px;
  }
}
@media screen and (max-width: 760px) {
  .header .header-title {
    font-size: 78px;
  }
  .header .wrap_float {
    height: auto;
    min-height: inherit;
    padding-top: 200px;
    padding-bottom: 90px;
  }
  .page-404 .container {
    height: 100vh;
    min-height: 460px;
    position: relative;
  }
  .page-404 main {
    width: 100% !important;
  }
  .mobile .page-404 .container,
  .tablet .page-404 .container {
    height: 87vh;
  }
}
@media screen and (max-width: 590px) {
  .top-panel .logo {
    width: 130px;
  }
  .header.section-404 .header-title {
    font-size: 66px;
  }
}
@media screen and (max-width: 400px) {
  .header .wrap_float {
    padding-top: 180px;
  }
}