/**************************/
/********ERROR_500*********/
/**************************/
body.bodyError500{ 
  display: flex;
  flex-direction: column;
  width: 100vw;
  height: 100vh;
  align-items: center;
  justify-content: center;
  margin: 0;
  background: #131313;
  color: #fff;
  font-family: 'Fira Mono', monospace;
}

.bodyError500 h3.title {}
.bodyError500 p.txt-support {}
.bodyError500 a.btn {
  border:1px solid #777;
  border-radius: 3px;
  padding:10px 20px;
  color:#777;
  text-decoration: none;
  font-size: 0.8em;
}
.bodyError500 a.btn:hover {
  border:1px solid #aaa;
  color:#aaa;
}

.bodyError500 div.error500 {
  animation: glitch 1s linear infinite;
  font-size: 96px;
  letter-spacing: -7px;
}

.bodyError500 div.error500:before,
.bodyError500 div.error500:after{
  content: attr(title);
  position: absolute;
  left: 0;
}

.bodyError500 div.error500:before{
  animation: glitchTop 1s linear infinite;
  clip-path: polygon(0 0, 100% 0, 100% 33%, 0 33%);
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 33%, 0 33%);
}

.bodyError500 div.error500:after{
  animation: glitchBottom 1.5s linear infinite;
  clip-path: polygon(0 67%, 100% 67%, 100% 100%, 0 100%);
  -webkit-clip-path: polygon(0 67%, 100% 67%, 100% 100%, 0 100%);
}

@keyframes glitch{
  2%,64%{
    transform: translate(2px,0) skew(0deg);
  }
  4%,60%{
    transform: translate(-2px,0) skew(0deg);
  }
  62%{
    transform: translate(0,0) skew(5deg); 
  }
}

@keyframes glitchTop{
  2%,64%{
    transform: translate(2px,-2px);
  }
  4%,60%{
    transform: translate(-2px,2px);
  }
  62%{
    transform: translate(13px,-1px) skew(-13deg); 
  }
}


@keyframes glitchBottom{
  2%,64%{
    transform: translate(-2px,0);
  }
  4%,60%{
    transform: translate(-2px,0);
  }
  62%{
    transform: translate(-22px,5px) skew(21deg); 
  }
}

/**************************/
/********ERROR_404*********/
/**************************/
body.bodyError404 {
  display: flex;
  flex-direction: column;
  width: 100vw;
  height: 100vh;
  align-items: center;
  justify-content: center;
  margin: 0;
  background: #131313;
  color: #fff;
  font-family: Roboto, sans-serif;
  overflow: hidden;
}

::selection {
  background: #CDD4DE;
}

/*--------------------
Page
--------------------*/
.bodyError404 .page {
  width: 100vw;
  height: 100vh;
  z-index: 1;
}

/*--------------------
Content
--------------------*/
.bodyError404 .content {
  text-align: center;
  padding-top: 118px;
  color: #CDD4DE;
}
.bodyError404 .content h1 {
  font-weight: 900;
  font-size: 165px;
  line-height: 1;
  margin-bottom: -10px;
  opacity: 0.6;
}
.bodyError404 .content h2 {
  font-weight: 700;
  font-size: 34px;
  margin-bottom: 6px;
  opacity: 0.9;
}
.bodyError404 .content p {
  font-weight: 300;
  font-size: 14px;
  opacity: 0.7;
  margin-bottom: 140px;
}
.bodyError404 .content a {
  display: inline-block;
  font-weight: 300;
  font-size: 12px;
  text-transform: uppercase;
  border: 1px solid #CDD4DE;
  padding: 8px 14px;
  border-radius: 4px;
  opacity: 0.4;
  cursor: pointer;
  color: #fff;
}

/*--------------------
Image
--------------------*/
.bodyError404 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  z-index: -1;
  transform: scale(1.1);
  opacity: 0.3;
}



