#page-error-404 {
  height: 100%;
}

#page-error-404 .page-content {
  position: relative;
}

#page-error-404 .text-container {
  position: relative;
  z-index: 2;
  text-align: center;
  padding-top: 4vh;
  padding-bottom: 30px;
  background: #FFF;
  background: -webkit-linear-gradient(-90deg, #FFF, #FFF, #FFF, rgba(255, 255, 255, 0.92));
  background: linear-gradient(180, #FFF, #FFF, #FFF, rgba(255, 255, 255, 0.92));
}

#page-error-404 .text-container h2 {
  text-transform: uppercase;
  font-weight: 100;
  font-size: 3.12rem;
  margin-bottom: .5rem;
}

#page-error-404 .text-container a {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-underline-offset: 0.3em;
  display: inline-block;
  color: #002B4A;
  font-size: 1.9rem;
  font-weight: bold;
  margin-top: 2.2rem;
}

#page-error-404 .text-container a:hover {
  color: #007bc4;
}

@media all and (max-width: 991px) {
  #page-error-404 .text-container {
    padding-top: 4vh;
  }

  #page-error-404 .text-container h2 {
    font-size: 2.3rem;
    margin-bottom: 1em;
  }

  #page-error-404 .text-container a {
    font-size: 1.45rem;
  }
}

@media all and (max-width: 767px) {
  #page-error-404 .text-container {
    padding-top: 3vh;
  }

  #page-error-404 .text-container h2 {
    font-size: 2rem;
    margin-bottom: 1em;
  }

  #page-error-404 .text-container a {
    font-size: 1.25rem;
  }
}

#page-error-404 .error-image {
  text-align: center;
}

#page-error-404 .error-image img {
  max-width: 100%;
  margin: auto;
  height: auto;
}

#page-error-404 .page-content {
  overflow: hidden;
}

#page-error-404 .error-image img {
  margin-top: -5vh;
  margin-bottom: -10%;
  width: 110%;
  margin-left: -5%;
  max-width: none;
  max-height: none;
}
