:root {
  --color-primary-dark: #000000;
  --color-primary-light: #00143c;
  --color-grey-dark: rgb(235, 222, 222);
}

* {
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

html,
body {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 62.5%;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-grey-dark);
  background-image: -webkit-gradient(linear, left top, right bottom, from(var(--color-primary-dark)), to(var(--color-primary-light)));
  background-image: linear-gradient(to right bottom, var(--color-primary-dark), var(--color-primary-light));
  background-size: cover;
  background-repeat: no-repeat;
}

.content {
  min-height: calc(100vh - 80px);
}

.container__error {
  display: -ms-grid;
  display: grid;
  row-gap: 15px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
}

.container__error--img img {
  border-radius: 5px;
  width: 100%;
  max-width: 500px;
  height: auto;
}

.container__error--description {
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2 / 3;
  font-size: 2rem;
}

@media only screen and (max-width: 420px) {
  .container__error--description {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 240px) {
  .container__error--description {
    font-size: 1.2rem;
  }
}

.footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-image: linear-gradient(260deg, #324450 0%, #18182b 100%);
  height: 80px;
  padding: 0 20px;
}

.footer__sprite {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-filter: invert(0.8);
          filter: invert(0.8);
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.096)), to(rgba(0, 0, 0, 0.253)));
  background-image: linear-gradient(rgba(0, 0, 0, 0.096), rgba(0, 0, 0, 0.253));
  border-radius: 50px;
  stroke: #000;
  stroke-width: 0px;
  width: 2.6rem;
  height: 2.6rem;
  margin-left: 5px;
}

.footer__sprite:not(:nth-child(3)) {
  margin-right: 15px;
}

@media screen and (max-width: 700px) {
  .footer__sprite:not(:nth-child(3)) {
    margin-bottom: 5px;
  }
}

.footer__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 80%;
      grid-template-columns: 1fr 80%;
  width: 100%;
  font-size: 1rem;
  list-style: none;
  -ms-grid-row-align: center;
      align-self: center;
  padding: 10px;
}

@media screen and (max-width: 700px) {
  .footer__list {
    -ms-grid-columns: 100%;
        grid-template-columns: 100%;
    -ms-grid-rows: 30px 20px;
        grid-template-rows: 30px 20px;
  }
}

.footer__list--credits {
  display: -ms-grid;
  display: grid;
  grid-column: 2 / -1;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
}

.footer__list--credits-item-1 {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1 / 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.footer__list--credits-item-2 {
  grid-column: 2 / -1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
}

@media screen and (max-width: 700px) {
  .footer__list--credits {
    -ms-grid-columns: 100%;
        grid-template-columns: 100%;
    grid-column: 1 / -1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2 / 3;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
  }
  .footer__list--credits li:not(:nth-child(1)) {
    display: none;
  }
}

.footer__list--social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1 / 2;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  list-style: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 700px) {
  .footer__list--social {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1 / 2;
    -ms-flex-item-align: start;
        -ms-grid-row-align: start;
        align-self: start;
  }
}

.container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 80px;
  padding: 20px;
}

@media only screen and (max-width: 860px) {
  .container {
    padding: 0 20px;
    margin-top: -20px;
  }
}

.container__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 3rem;
}

@media only screen and (max-width: 860px) {
  .container__header {
    font-size: 2rem;
    padding: 0;
  }
}

@media only screen and (max-width: 480px) {
  .container__header {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 390px) {
  .container__header {
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 275px) {
  .container__header {
    font-size: 1rem;
  }
}

.container__header--sprite-icon {
  fill: #e2eaef;
  width: 80px;
  height: auto;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 15px;
}

@media only screen and (max-width: 860px) {
  .container__header--sprite {
    width: 10vw;
    margin-top: 0;
    margin-right: 10px;
  }
}

.container__header--main {
  color: #e2d285;
  font-family: cursive;
}

.container__txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-size: 2rem;
  padding-bottom: 80px;
}

@media only screen and (max-width: 420px) {
  .container__txt {
    font-size: 1.6rem;
    margin-top: -10px;
  }
}

@media only screen and (max-width: 240px) {
  .container__txt {
    font-size: 1.2rem;
  }
}

.container__form {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 40% 1fr;
      grid-template-columns: 1fr 40% 1fr;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: -80px;
  padding-bottom: 20px;
}

@media screen and (max-width: 780px) {
  .container__form {
    -ms-grid-columns: 1fr 90% 1fr;
        grid-template-columns: 1fr 90% 1fr;
  }
}

.container__form--header {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2 / 3;
  font-size: 2.2rem;
  color: #ca7009;
}

.container__form--fields {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2 / 3;
}

@media screen and (max-width: 780px) {
  .container__form--fields {
    grid-column: 1 / -1;
  }
}

.container__form--fields label {
  font-size: 1.2rem;
  justify-items: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 5px;
  margin-bottom: 10px;
}

.container__form--fields input {
  font-size: 1.8rem;
  margin-top: 5px;
  margin-bottom: 15px;
  border-radius: 5px;
  padding: 10px;
  height: 35px;
  width: 100%;
}

.container__form--fields input:active, .container__form--fields input:focus {
  outline: none;
  background-color: #eee4ca;
}

.container__form--fields .errorlist.nonfield li {
  list-style: none;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 2px;
  background-color: #ca7009;
  padding: 1px 5px;
}

.container__form--button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 140px;
  border: none;
  margin-top: 20px;
  border-radius: 5px;
  background-color: #ec840d;
  padding: 12px;
  text-transform: capitalize;
  font-size: 1.8rem;
  cursor: pointer;
  -webkit-transition: all .2s;
  transition: all .2s;
}

@media screen and (max-width: 390px) {
  .container__form--button {
    width: 100%;
  }
}

.container__form--button-svg {
  height: 2rem;
  width: 2rem;
  float: left;
  margin-right: 10px;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.container__form--button:hover {
  background-color: #ca7009;
}

.container__form--button:hover svg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: translateX(4px) scale(1.1);
          transform: translateX(4px) scale(1.1);
}

.container__form--button:active, .container__form--button:focus {
  outline: none;
}

.navbar {
  background-image: linear-gradient(260deg, #324450 0%, #18182b 100%);
  font-size: 2.5rem;
  padding: 0 15px;
  -webkit-transition: -webkit-transform 4s;
  transition: -webkit-transform 4s;
  transition: transform 4s;
  transition: transform 4s, -webkit-transform 4s;
}

.navbar__nav {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 90vw 10vw;
      grid-template-columns: 90vw 10vw;
  font-size: 2.3rem;
  padding: 5px 0px;
}

.navbar__nav--item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  margin-right: 20px;
  font-size: 2.2rem;
  list-style-type: none;
  cursor: pointer;
}

.navbar__nav--item:first-child {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1 / 2;
  -ms-grid-column-align: start;
      justify-self: start;
  padding-right: 10px;
}

.navbar__nav--item:last-child {
  grid-column: 2 / -1;
  -ms-grid-column-align: center;
      justify-self: center;
}

.navbar__nav--item-link {
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
}

.navbar__nav--item-link:hover {
  color: orangered;
  cursor: pointer;
}

.navbar__brand, .navbar a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1 / 2;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  outline: none;
  text-decoration: none;
  -webkit-transition: -webkit-transform .4s;
  transition: -webkit-transform .4s;
  transition: transform .4s;
  transition: transform .4s, -webkit-transform .4s;
}

.navbar__brand--sprite, .navbar a--sprite {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background-color: #650165;
  padding: 2px;
  border-radius: 50px;
  width: 2.6rem;
  height: 2.6rem;
  margin-right: 2px;
}

.navbar__brand--sprite:hover, .navbar a--sprite:hover {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.navbar__brand--sprite-icon, .navbar a--sprite-icon {
  fill: #fff;
}

.navbar__brand--sprite:not(:last-of-type), .navbar a--sprite:not(:last-of-type) {
  background-color: #fff;
}

.navbar__brand--txt, .navbar a--txt {
  margin: 0 5px;
  color: #fff;
}

.navbar__mobile {
  display: -ms-grid;
  display: grid;
  grid-column: 2 / -1;
  font-size: 3rem;
  padding: 10px 0px;
  -ms-grid-columns: 90vw 10vw;
      grid-template-columns: 90vw 10vw;
  -ms-grid-rows: (3rem)[4];
      grid-template-rows: repeat(4, 3rem);
  padding-left: 10px;
}

.navbar__mobile li:not(:first-child) {
  grid-column: 1 / -1;
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  grid-row: 3 / 4;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 780px) {
  .navbar__nav {
    padding: 10px;
  }
  .navbar__nav li:not(:first-child) {
    display: none;
  }
}

@media screen and (max-width: 882px) {
  .navbar__brand--txt {
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 780px) {
  .navbar-toggle {
    position: absolute;
    top: 25px;
    right: 20px;
  }
  .navbar-toggle, .navbar-toggle::before, .navbar-toggle::after {
    display: inline-block;
    width: 25px;
    height: 1.5px;
    background-color: #9c9999;
    margin-right: 0;
    cursor: pointer;
  }
  .navbar-toggle::before, .navbar-toggle::after {
    content: " ";
    position: absolute;
  }
  .navbar-toggle::before {
    top: -8px;
  }
  .navbar-toggle::after {
    top: 8px;
  }
}
/*# sourceMappingURL=main.css.map */