#label-form {
    margin-top: -40px !important; 
}

#rester-informe {
    margin-bottom: 20px; /* Ajoute de l'espace sous tout le label si souhaité */
}

/* OU uniquement pour l’espace sous le texte avant la checkbox */
#rester-informe br:first-of-type {
    display: block;
    margin-bottom: 20px;
    content: "";
}


/* Styles uniquement pour les ordinateurs (écrans ≥ 1025px) */
@media screen and (min-width: 1025px) {
    #serenite,
    #vitalite,
    #singularite {
        display: flex;              /* Active le mode flexbox */
        flex-direction: column;     /* Pour que le texte reste vertical */
        justify-content: center;    /* Centre verticalement le contenu */
        height: 100%;               /* Hérite de la hauteur du parent si besoin */
        min-height: 300px;          /* Hauteur minimum */
        box-sizing: border-box;     /* Inclut padding/border dans la hauteur */
        padding: 40px;              /* Espace intérieur */
    }
}



/* Neutraliser soulignage lien par défaut */
.elementor-widget-heading a {
  text-decoration: none !important;
}


/* Neutralise seulement le style actif par défaut d’Astra/HFE sur le premier lien */
#menu-item-39.hfe-creative-menu > a.hfe-menu-item {
    background: none;   /* supprime le fond appliqué par Astra/HFE */
    box-shadow: none;   /* supprime l’ombre/surlignage par défaut */
    border: none;       /* supprime la bordure par défaut */
    /* Ne touche pas à color ni text-decoration pour laisser Elementor gérer */
}

/* Premier lien du menu : fond vert et texte blanc au survol */
#menu-item-39.hfe-creative-menu > a.hfe-menu-item:hover {
    background-color: #92A27D; /* fond vert */
    color: #ffffff;            /* texte blanc */
}

/* Premier lien du menu : fond vert et texte blanc lorsque l’onglet est actif */
#menu-item-39.hfe-creative-menu.current-menu-item > a.hfe-menu-item {
    background-color: #92A27D; /* fond vert */
    color: #ffffff;            /* texte blanc */
}

/* === FORMULAIRE CONTACT CANDIDAT MUNICIPAL === */
.wpcf7 form {
  max-width: 700px;
  margin: 1.5rem auto;
  background: #f8f9f5;
  padding: 1.5rem 2rem;
  border-radius: 14px;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.04);
  font-family: "Montserrat", "Helvetica", sans-serif;
  color: #333;
}

/* Titre au-dessus du formulaire */
.wpcf7 form::before {
  content: "Nous contacter";
  display: block;
  text-align: center;
  color: #92A27D;
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

#wpcf7-f484-p19-o1 form::before {
  content: "Proposer une idée";
  display: block;
  text-align: center;
  color: #92A27D;
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

/* Labels */
.wpcf7 form label {
  display: block;
  font-weight: 500;
  margin: 0px 0px !important; /* Réduit l’espace sous le label */
  color: #4a4a4a;
  font-size: 0.95rem;
}

/* Champs texte et email */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"] {
  width: 100%;
  border: 1px solid #cfd5c9;
  border-radius: 6px;
  padding: 0.45rem 0.7rem; /* Champs plus fins */
  font-size: 0.95rem;
  background: #fff;
  transition: border-color 0.3s, box-shadow 0.3s;
  margin-bottom: 0.6rem; /* Réduit l’espace entre les champs */
}

/* Champ MESSAGE plus petit */
.wpcf7 textarea[name="your-message"] {
  width: 100%;
  height: 100px; /* 🔹 plus compact */
  border: 1px solid #cfd5c9;
  border-radius: 6px;
  padding: 0.45rem 0.7rem;
  font-size: 0.95rem;
  background: #fff;
  transition: border-color 0.3s, box-shadow 0.3s;
  resize: none;
  margin-bottom: 0.6rem;
}

/* Focus */
.wpcf7 input:focus,
.wpcf7 textarea:focus {
  border-color: #92A27D;
  box-shadow: 0 0 0 2px rgba(146, 162, 125, 0.25);
  outline: none;
}

/* Bouton Envoyer */
.wpcf7 input[type="submit"] {
  background-color: #92A27D;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 0.6rem 1.2rem;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
  display: block;
  margin: 0.8rem auto 0;
  transition: background-color 0.3s, transform 0.1s;
}

/* Effets bouton */
.wpcf7 input[type="submit"]:hover {
  background-color: #7f916c;
  transform: translateY(-1px);
}

.wpcf7 input[type="submit"]:active {
  background-color: #6c7f5a;
  transform: translateY(0);
}

/* Messages de retour */
.wpcf7-response-output {
  text-align: center;
  margin-top: 0.8rem;
  padding: 0.6rem 0.8rem;
  border-radius: 6px;
  font-weight: 500;
  font-size: 0.95rem;
}

.wpcf7 form.sent .wpcf7-response-output {
  background-color: #e7f1e1;
  border: 1px solid #92A27D;
  color: #3f4f2e;
}

.wpcf7 form.invalid .wpcf7-response-output {
  background-color: #fbecec;
  border: 1px solid #c76c6c;
  color: #822;
}

.wpcf7 form>p{
    margin: 0px 0px !important;
}



/* DECO TEXTE JX ACCUEIL*/
#texte-jx {
  position: relative;
  display: inline-block;
  padding: 20px; /* très proche du texte */
  background: transparent;
}

/* Coins en haut à gauche et bas à droite */
#texte-jx::before {
  content: '';
  position: absolute;
  top: 2px; left: 2px;       /* décale les coins légèrement vers l’intérieur */
  width: 100%;
  height: 100%;
  pointer-events: none;
  background:
    /* Coin supérieur gauche */
    linear-gradient(white, white) top left / 20px 3px no-repeat,
    linear-gradient(white, white) top left / 3px 20px no-repeat,
    /* Coin inférieur droit */
    linear-gradient(white, white) bottom right / 20px 3px no-repeat,
    linear-gradient(white, white) bottom right / 3px 20px no-repeat;
  background-repeat: no-repeat;
}




#menu-nav {
    position: fixed;       /* fixe le menu en haut de l’écran */
    top: 0;                /* distance par rapport au haut */
    left: 0;               /* aligné à gauche */
    width: 100%;           /* prend toute la largeur de la page */
    z-index: 9999;         /* reste au-dessus des autres contenus */
    background-color: #ffffff; /* fond blanc pour lisibilité */
}