/* =========================================================
   14ᵉ feuille — bandeau « Nos expertises » et formulaire
   ========================================================= */

/* ---------------------------------------------------------
   1. BANDEAU EXPERTISES
   --------------------------------------------------------- */

/* Les cartes ne « montent » plus au survol (préférence : zoom de
   l'image et bouton, pas de translation ni d'ombre portée). */
.cq-mcard:hover,
.cq-mcard--cta:hover{transform:none!important;box-shadow:none!important}

/* Le texte des cartes passait DERRIÈRE le panneau de titre sans être
   masqué : le panneau n'avait aucun fond. On lui rend un aplat pétrole
   qui se fond vers la droite — les cartes disparaissent proprement
   dessous au lieu de se superposer au titre. */
@media(min-width:1025px){
  .cq-exp__titre{
    background:linear-gradient(90deg,
      #2A4854 0%, #2A4854 72%,
      rgba(42,72,84,.97) 84%,
      rgba(42,72,84,.8) 93%,
      rgba(42,72,84,0) 100%)!important;
  }
}

/* Lisibilité du texte sur l'image : voile un peu plus haut et plus dense
   dans le bas de la carte, là où se trouvent le titre et l'extrait. */
.cq-mcard__voile{
  background:linear-gradient(180deg,
    rgba(16,32,40,0) 30%,
    rgba(16,32,40,.45) 55%,
    rgba(13,26,33,.88) 78%,
    rgba(13,26,33,.96) 100%)!important;
}

/* Carte contact : bouton « split » identique aux autres boutons du site.
   PIXEL PERFECT : pilule et cercle font exactement 48 px de haut.
   Au survol, la pilule s'étire de 40 px et glisse SOUS le cercle immobile. */
.cq-mcard--cta .cq-mcard__btn{
  display:inline-flex;align-items:center;gap:8px;
  margin-top:20px;background:none;padding:0;border-radius:0;
}
.cq-mcard--cta .cq-mcard__btn-t{
  position:relative;z-index:1;box-sizing:border-box;
  height:48px;display:inline-flex;align-items:center;
  background:#fff;color:#E83E33;border-radius:999px;padding:0 24px;
  font-family:'Libre Franklin',sans-serif;font-weight:600;font-size:13px;line-height:1;
  letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
  transition:padding-right .38s cubic-bezier(.22,1,.36,1),margin-right .38s cubic-bezier(.22,1,.36,1),border-radius .28s;
}
.cq-mcard--cta .cq-mcard__btn-i{
  position:relative;z-index:2;flex:none;box-sizing:border-box;
  width:48px;height:48px;border-radius:50%;
  background:#fff;color:#E83E33;
  display:flex;align-items:center;justify-content:center;
}
.cq-mcard--cta .cq-mcard__btn-i svg{display:block}
.cq-mcard--cta:hover .cq-mcard__btn-t{
  border-top-right-radius:0;border-bottom-right-radius:0;
  padding-right:64px;margin-right:-40px;
}

/* ---------------------------------------------------------
   2. FORMULAIRE — deux champs par ligne
   Contact Form 7 enveloppait chaque rangée dans un <p> avec un <br>
   (wpautop) : la grille ne recevait qu'un seul enfant et les champs
   s'empilaient sur une demi-largeur. L'autop est désactivé côté PHP ;
   ces règles neutralisent en plus tout <p>/<br> résiduel.
   --------------------------------------------------------- */
.cq-form__rang > p{display:contents}
.cq-form__rang br{display:none}
.cq-form br{display:none}
.cq-form p:empty{display:none}

/* ---------------------------------------------------------
   3. FORMULAIRE — bouton d'envoi « split », pixel perfect
   Pilule et cercle à 48 px exactement, comme les boutons du site.
   L'indicateur de chargement de CF7 s'intercalait entre la pilule et
   la flèche (d'où l'écart) : on le sort du flux.
   --------------------------------------------------------- */
.cq-envoi{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.cq-envoi input[type=submit]{
  position:relative;z-index:1;box-sizing:border-box;
  height:48px;border:0;cursor:pointer;
  background:#E83E33;color:#fff;border-radius:999px;padding:0 24px;
  font-family:'Libre Franklin',sans-serif;font-weight:600;font-size:13px;
  letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
  transition:padding-right .38s cubic-bezier(.22,1,.36,1),margin-right .38s cubic-bezier(.22,1,.36,1),border-radius .28s;
}
.cq-envoi::after{
  content:"";position:relative;z-index:2;flex:none;box-sizing:border-box;
  width:48px;height:48px;border-radius:50%;pointer-events:none;
  background:#E83E33 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M13.2 4.8 20.4 12l-7.2 7.2-1.7-1.7 4.3-4.3H3.6v-2.4h12.2l-4.3-4.3 1.7-1.7z'/%3E%3C/svg%3E") center/15px no-repeat;
}
.cq-envoi:hover input[type=submit],
.cq-envoi:hover::after{filter:none}
.cq-envoi:hover input[type=submit]:not(:disabled){
  border-top-right-radius:0;border-bottom-right-radius:0;
  padding-right:64px;margin-right:-40px;
}

/* État désactivé (consentement non coché) : la pilule ET la flèche se
   grisent ensemble — l'opacité est portée par le GROUPE, pas par l'input. */
.cq-envoi:has(input[type=submit]:disabled){opacity:.45;cursor:not-allowed}
.cq-envoi input[type=submit]:disabled{opacity:1;cursor:not-allowed}

/* l'indicateur de chargement ne doit pas écarter la pilule de la flèche */
.cq-form .wpcf7-spinner{
  position:absolute;right:-34px;top:50%;transform:translateY(-50%);margin:0;
}

/* ---------------------------------------------------------
   4. Pictogrammes des coordonnées : bleu Coquelle PAR DÉFAUT
   (sans !important : la « couleur de l'icône » du widget Liste
   d'icônes reste administrable dans Elementor)
   --------------------------------------------------------- */
.cq-coord .elementor-icon-list-icon,
.cq-coord .elementor-icon-list-icon i{color:#006BCA}
.cq-coord .elementor-icon-list-icon svg{fill:#006BCA}
