* {
}

#page h2.gform_submission_error {
  letter-spacing: normal;
}

.entete:has(+ .formulaire) {
  margin-bottom: var(--gap-125);
}

#page .form_contact .gform_fields {
  row-gap: 0;
}

@media (min-width: 1024px) {
  #page .form_contact .gform_fields {
    width: 80%;
  }
}

#page .form_contact .gfield {
  position: relative;
}
#page .form_contact .gfield--type-phone .gfield_label,
#page .form_contact .gfield--type-text .gfield_label,
#page .form_contact .gfield--type-email .gfield_label,
#page .form_contact .gfield--type-textarea .gfield_label {
  top: 1.5px;
  left: 1.5px;
  padding: var(--gap-125) var(--gap-188);
  position: absolute;
  line-height: normal;
  font-size: var(--fs-base);
  font-weight: var(--semi-bold);
  z-index: 2;
  color: var(--primary);
  margin-bottom: 0;
  pointer-events: none;
}

#page .form_contact .ginput_container_consent input {
  margin-bottom: 0;
}

#page .form_contact .ginput_container_consent,
#page .form_contact .gform-field-label {
  font-size: var(--fs-base);
  line-height: normal;
  margin-bottom: 0;
  color: var(--primary);
  font-weight: var(--semi-bold);
}

#page .form_contact .gfield_consent_description {
  font-weight: var(--semi-bold);
  color: var(--primary);
  font-size: var(--fs-base);
  line-height: normal;
  margin-top: 0;
  padding: 0;
  border: 0;
}

#page .gfield--type-phone:focus-within .gfield_label,
#page .gfield--type-text:focus-within .gfield_label,
#page .gfield--type-email:focus-within .gfield_label,
#page .gfield--type-textarea:focus-within .gfield_label {
  display: none;
}
/*Pour que cela marche il faut un placeholder avec un espace blanc*/
#page .gfield--type-phone:has(input:not(:placeholder-shown)) .gfield_label,
#page .gfield--type-text:has(input:not(:placeholder-shown)) .gfield_label,
#page .gfield--type-email:has(input:not(:placeholder-shown)) .gfield_label,
#page
  .gfield--type-textarea:has(textarea:not(:placeholder-shown))
  .gfield_label {
  display: none;
}

#page .gfield--type-fileupload {
  border-left: 1px solid;
  padding-left: 20px;
  margin: 20px 0 30px 0 !important;
}
#page .gfield--type-fileupload label {
  font-weight: normal !important;
}
#page .gform_fileupload_rules {
  margin-top: 0;
  padding-top: 0;
  font-style: italic;
  color: #666;
}
.ginput_container.ginput_container_fileupload input {
  margin-top: 10px;
}
.cf-turnstile > div:nth-child(2) {
  display: none;
}
.ginput_container input::placeholder,
.ginput_container textarea::placeholder {
  color: transparent;
}

#page .form_contact .gfield--type-textarea textarea,
#page .form_contact .gfield--type-email input,
#page .form_contact .gfield--type-text input,
#page .form_contact .gfield--type-phone input {
  padding: var(--gap-125) var(--gap-188);
  border-radius: 1.875rem;
  border: 2px solid var(--primary);
  color: var(--primary);
  font-weight: var(--semi-bold);
  font-size: var(--fs-base);
  line-height: normal;
}

#page .form_contact textarea {
  resize: vertical;
  height: 160px;
}

#page .form_contact .gfield_contains_required span.gfield_required {
  display: none;
}

#page
  .form_contact
  .gfield_contains_required
  label:not(.gfield_consent_label):before {
  display: inline-block;
  content: "*";
}

#page .form_contact .gfield_contains_required label.gfield_consent_label:after {
  display: inline-block;
  content: "(Nécessaire)";
  color: #c1001e;
  padding-left: 0.1em;
}

#page .form_contact .ginput_counter {
  font-weight: var(--semi-bold);
  padding-top: 0;
  margin-top: 0;
  font-size: var(--fs-base);
  color: var(--primary);
}

#page .form_contact .gform_footer {
  padding: 0;
  margin: 0;
}

#page .form_contact .gform_footer input {
  cursor: pointer;
  margin-bottom: 0;
  display: block;
  font-size: var(--fs-s);
  color: var(--primary);
  font-weight: var(--bold);
  line-height: normal;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  border: 3px solid var(--primary);
  border-radius: var(--rounded-l);
  text-decoration: none;
  padding: 0.59rem 1.44rem;
  padding-right: calc(1.44rem + 1.88rem + 31px);
  position: relative;
  background-color: transparent;
  width: fit-content;
  background: url("../images/custom/arrow_primary.svg") no-repeat
    calc(100% - 1.88rem) center / contain;
  background-size: 31px 20px;
}

#page .form_contact .gform_footer input:hover {
  border-color: var(--tertiary);
  color: var(--tertiary);
  background-color: var(--blanc);
  background-image: url("../images/custom/arrow_tertiary.svg");
}
