.form-container {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3000;
  padding-left: 15vw;
}
.form {
  background-color: #fff;
  border-radius: 0.25rem;
  padding: 5vh 3vw;
  padding-top: 3vh;
  position: relative;
  z-index: 100;
  opacity: 0;
  animation: fade 1000ms ease forwards;
}
@keyframes fade {
  from {
    opacity: 0;
    transform: translateY(-25%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.form__errors {
  width: 100%;
  background-color: #d08282;
  color: #d22323;
  padding-top: 3vh;
  padding-bottom: 2vh;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.form__errors span,
.form__success span {
  font-size: 1.2em;
  position: absolute;
  top: 1vh;
  right: 1.5vw;
  font-weight: 700;
  cursor: pointer;
}
.form__success {
  width: 100%;
  background-color: #79cb90;
  color: #09571f;
  padding-top: 3vh;
  padding-bottom: 2vh;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.form__go-home {
  width: 1.5vw;
  height: max-content;
  position: absolute;
  top: 0;
  left: -7%;
  z-index: 100;
  cursor: pointer;
}
.form__go-home img {
  width: 100%;
  height: auto;
}
.form__title {
  font-size: 2.3em;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1vh;
}
.form__title--gold {
  color: #d29723;
}
.form__title img {
  width: 14vw;
  height: auto;
}
.form__subtitle {
  font-size: 1.3em;
  text-align: center;
  margin-bottom: 3vh;
}
.form__subtitle a {
  color: #5b93f4;
  text-decoration: underline;
}
.form__connect-with {
  display: flex;
  justify-content: center;
  margin-bottom: 3vh;
}
.form__connect-with__item {
  padding: 1vh 1vw;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.25rem;
  font-size: 1.1em;
}
.form__connect-with__item--google {
  margin-right: 1vw;
}
.form__connect-with__item--facebook {
  background-color: #195a9d;
  color: #fff;
}
.form form {
  width: 35vw;
  display: block;
  margin: 0 auto;
  font-size: 1.1em;
}
.form--quote form {
  width: 40vw;
  display: block;
  margin: 0 auto;
  font-size: 1.1em;
}
.form input,
.form select {
  width: 100%;
  height: max-content;
  padding: 1.5vh 1vw;
  border: none;
  background-color: transparent;
  font-size: inherit;
  font-family: inherit;
  border-radius: 0.25rem;
  border: 1px solid #ddd;
  font-weight: 700;
}
.form input:focus,
.form input:active,
.form select:focus,
.form select:active {
  outline: none;
  border: 1px solid #d29723;
}
::placeholder {
  font-weight: 300;
}
.form .input--error {
  border: 1px solid #d22323;
}
.form__select-and-two-input {
  width: 100%;
  display: grid;
  grid-template-columns: 2fr 4fr 4fr;
  column-gap: 1vw;
  margin-bottom: 2vh;
}
.form__two-input {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 1vw;
  margin-bottom: 2vh;
}
.form__two-input {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 1vw;
  margin-bottom: 2vh;
}
.form__input-with-captcha {
  width: 100%;
  display: grid;
  grid-template-columns: 4fr 200px 1fr;
  margin-bottom: 2vh;
  column-gap: 1vw;
  align-items: center;
}
.form__input-with-captcha input {
  height: max-content;
}
.form__captcha__refresh {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #5b93f4;
  border-radius: 0.25rem;
  cursor: pointer;
}
.form__captcha__refresh img {
  width: 50%;
  height: auto;
}
.form__input {
  width: 100%;
  margin-bottom: 2vh;
}
.form__small-text {
  font-size: 0.9em;
  font-weight: 500;
  margin-bottom: 2vh;
}
.form__small-text a {
  font-style: italic;
}
.form__small-text a:hover {
  text-decoration: underline;
}
.form__tiny-text {
  font-size: 0.8em;
  font-weight: 500;
  margin-bottom: 4vh;
}
.form__tiny-text a {
  color: #5b93f4;
  text-decoration: underline;
}
.form__submit {
  display: block;
  width: 100%;
  text-align: center;
}
.form__submit input {
  background-color: #d29723;
  border-radius: 2rem;
  color: #fff;
  text-transform: uppercase;
  font-weight: 500;
}
.form__redirect-link {
  display: block;
  width: 100%;
  text-align: center;
  background-color: #d29723;
  border-radius: 2rem;
  color: #fff;
  text-transform: uppercase;
  font-weight: 500;
  padding: 1.5vh 0;
}
p.form__text,
ul.form__text {
  font-size: 1em;
  color: #7d7d7d;
  text-align: left;
}
ul.form__text {
  list-style: initial;
}
ul.form__text > li {
  margin-left: 2vw;
}
.form__session {
  width: 100%;
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: 2vw;
  margin-bottom: 2vh;
}
.form__session .informations__remotely {
  padding: 0;
}

@media only screen and (max-width: 1024px) {
  .form-container {
    padding: 0;
  }
}

@media only screen and (max-width: 768px) {
  .form form {
    width: 70vw;
  }
  .form__go-home {
    width: 3vw;
  }
}
