.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* ==========================================================================
   Formulaire newsletter du footer (Gravity Forms #2, thème Orbital)
   À coller dans le CSS personnalisé de la page (ou du footer).
   Même méthode que le formulaire de soutien : tout est préfixé par
   #gform_wrapper_2 pour passer devant Orbital sans !important.

   Repères maquette (Component 18, footer 1440 × 213, fond sombre) :
   - champ : 249 px de large, texte blanc 16 px, trait blanc fin à 14 px sous le texte
   - bouton : 208 × 40 px, contour blanc fin, rayon 8 px, texte 16 px
   - petit rond 30 × 30 avec chevron à 11 px à droite du bouton (décoratif ici)
   - écart champ → bouton : 17 px
   Police : Inter (variable globale police-texte), comme le reste du site.
   ========================================================================== */

#gform_wrapper_2 {
  --nl-couleur: var(--blanc, #ffffff);        /* trait, texte, contour du bouton, rond */
  --nl-erreur: var(--jaune, #ffbc00);         /* lisible sur fond sombre */
  --nl-trait: 1px;
  --nl-police: var(--police-texte, "Inter", sans-serif);

  width: 100%;
  max-width: 249px;
  margin: 0;
  padding: 0;
  color: var(--nl-couleur);
  font-family: var(--nl-police);
}

#gform_wrapper_2 .gform_heading {
  display: none;
}

#gform_wrapper_2 .gform_fields {
  display: block;
  margin: 0;
  padding: 0;
}

#gform_wrapper_2 .gfield {
  margin: 0;
  padding: 0;
  min-width: 0;
}

#gform_wrapper_2 .ginput_container {
  margin: 0;
}

/* ---------- Champ e-mail : simple soulignement ---------- */
#gform_wrapper_2 input[type="email"],
#gform_wrapper_2 input[type="text"] {
  display: block;
  width: 100%;
  block-size: auto;
  min-height: 0;
  margin: 0;
  padding: 0 0 14px;
  border: 0;
  border-bottom: var(--nl-trait) solid var(--nl-couleur);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font-family: var(--nl-police);
  font-size: 16px;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 0;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

/* Placeholder : même police que le champ, graisse régulière (d'après la capture) */
#gform_wrapper_2 input::placeholder {
  color: inherit;
  opacity: 1;
  font-family: var(--nl-police);
  font-size: 16px;
  font-weight: 400;
  line-height: 120%;
  letter-spacing: 0;
}

/* Focus : trait épaissi, bien visible */
#gform_wrapper_2 input[type="email"]:focus,
#gform_wrapper_2 input[type="text"]:focus {
  box-shadow: 0 1px 0 0 var(--nl-couleur);
}

/* ---------- Bouton « S'inscrire à la newsletter » ---------- */
#gform_wrapper_2 .gform-footer,
#gform_wrapper_2 .gform_footer {
  display: flex;
  flex-wrap: nowrap;                /* Orbital met wrap : c'est ce qui faisait passer le rond à la ligne */
  justify-content: space-between;   /* bouton à gauche, rond calé sur la fin du trait */
  align-items: center;
  gap: 11px;
  margin: 17px 0 0;
  padding: 0;
}

/* Petit rond avec chevron à droite du bouton (30 × 30, décoratif).
   Dessiné en masque : il prend la couleur du texte (--nl-couleur). */
#gform_wrapper_2 .gform_footer::after,
#gform_wrapper_2 .gform-footer::after {
  content: "";
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  background-color: var(--nl-couleur);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none' stroke='black' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='15' cy='15' r='14.5'/%3E%3Cpath d='M13 10.5L17.5 15 13 19.5'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none' stroke='black' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='15' cy='15' r='14.5'/%3E%3Cpath d='M13 10.5L17.5 15 13 19.5'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  pointer-events: none;
}

#gform_wrapper_2 .gform_button,
#gform_wrapper_2 .gform-footer button[type="submit"],
#gform_wrapper_2 .gform-footer input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  inline-size: auto;
  block-size: 40px;
  min-height: 0;
  margin: 0;
  padding: 0 10px;                  /* 10 px (maquette : 12) car Inter est un peu plus large que la police de la maquette : 206,7 + 11 + 30 ≤ 249 */
  border: var(--nl-trait) solid var(--nl-couleur);
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
  color: inherit;
  font-family: var(--nl-police);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

#gform_wrapper_2 .gform_button:hover,
#gform_wrapper_2 .gform-footer button[type="submit"]:hover {
  background: transparent;
  color: inherit;
  opacity: 0.8;
  text-decoration: underline;
  text-underline-offset: 3px;
}

#gform_wrapper_2 .gform_button:focus-visible {
  outline: 3px solid var(--nl-couleur);
  outline-offset: 3px;
}

/* ---------- Erreurs ---------- */
#gform_wrapper_2 .gform_validation_errors {
  margin: 0 0 14px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

#gform_wrapper_2 .gform_validation_errors > h2,
#gform_wrapper_2 .gform_submission_error {
  margin: 0;
  color: var(--nl-erreur);
  font-family: var(--nl-police);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

#gform_wrapper_2 .gform_validation_errors > h2 .gform-icon,
#gform_wrapper_2 .gform_validation_errors ol {
  display: none;
}

#gform_wrapper_2 .gfield_error input[type="email"],
#gform_wrapper_2 .gfield_error input[type="text"] {
  border-bottom-color: var(--nl-erreur);
}

#gform_wrapper_2 .gfield_validation_message,
#gform_wrapper_2 .validation_message {
  margin: 6px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--nl-erreur);
  font-family: var(--nl-police);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
}

#gform_wrapper_2 .gfield_required {
  display: none;
}

/* ---------- Confirmation après envoi (AJAX) ---------- */
#gform_confirmation_wrapper_2,
#gform_confirmation_wrapper_2 .gform_confirmation_message {
  color: inherit;
  font-family: var(--police-texte, "Inter", sans-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 120%;
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
  #gform_wrapper_2 {
    max-width: 320px;
  }
}

/* ---------- Mouvement réduit ---------- */
@media (prefers-reduced-motion: reduce) {
  #gform_wrapper_2 .gform_button,
  #gform_wrapper_2 input {
    transition: none;
  }
}/* End custom CSS */