.elementor-5390 .elementor-element.elementor-element-da321bb{--display:flex;}.elementor-5390 .elementor-element.elementor-element-0d9b5df{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:120px;--padding-left:40px;--padding-right:40px;}.elementor-5390 .elementor-element.elementor-element-0d9b5df:not(.elementor-motion-effects-element-type-background), .elementor-5390 .elementor-element.elementor-element-0d9b5df > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor4 );}.elementor-5390 .elementor-element.elementor-element-86861e5{--display:flex;--justify-content:center;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5390 .elementor-element.elementor-element-86861e5.e-con{--align-self:center;}.elementor-5390 .elementor-element.elementor-element-290be16.elementor-element{--align-self:center;}.elementor-5390 .elementor-element.elementor-element-8b50fbf > .elementor-widget-container{margin:0px 0px 0px 0px;padding:20px 0px 0px 0px;}.elementor-5390 .elementor-element.elementor-element-8b50fbf.elementor-element{--align-self:center;}.elementor-5390 .elementor-element.elementor-element-8b50fbf{z-index:10;}.elementor-5390 .elementor-element.elementor-element-31cbe96{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-5390 .elementor-element.elementor-element-28666de.elementor-element{--align-self:center;}@media(min-width:768px){.elementor-5390 .elementor-element.elementor-element-86861e5{--width:82%;}}@media(max-width:1024px) and (min-width:768px){.elementor-5390 .elementor-element.elementor-element-0d9b5df{--content-width:100%;}}@media(max-width:1024px){.elementor-5390 .elementor-element.elementor-element-0d9b5df{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5390 .elementor-element.elementor-element-86861e5{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5390 .elementor-element.elementor-element-8b50fbf.elementor-element{--align-self:center;}}@media(max-width:767px){.elementor-5390 .elementor-element.elementor-element-0d9b5df{--content-width:100%;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-5390 .elementor-element.elementor-element-86861e5{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-8b50fbf */.cf7-titre {
  margin-bottom: 8px;
  padding-left: 20px;
}
.cf7-sous-titre {
  margin-bottom: 32px !important;
  padding-left: 20px !important;
}
.cf7-parlons {
  background: #e6f4f9;
  padding: 20px 20px;
  border-radius: 12px;
  width: 100%;
  box-sizing: border-box;
  margin-top: 20px;
  margin-bottom: auto;
  align-self: center;
}
.cf7-parlons .cf7-row {
  display: flex;
  gap: 12px;
}
.cf7-parlons .cf7-col {
  flex: 1;
}
.cf7-parlons .cf7-col p,
.cf7-parlons > p:not(.cf7-sous-titre) {
  margin: 0 !important;
  padding: 0 !important;
}
.cf7-parlons label {
  display: block;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.07em;
  color: #000000;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.cf7-parlons input[type="text"],
.cf7-parlons input[type="email"],
.cf7-parlons input[type="tel"],
.cf7-parlons select,
.cf7-parlons textarea {
  width: 100%;
  padding: 8px 12px;
  border: none;
  border-radius: 6px;
  background: #ffffff;
  font-size: 13px;
  color: #3b3a35;
  margin-top: 4px;
  box-sizing: border-box;
}
.cf7-parlons textarea {
  height: 70px;
  resize: none;
}
.cf7-parlons input[type="submit"] {
  width: 100%;
  background: #E9511E;
  color: #fff;
  border: none;
  padding: 12px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  margin-top: 12px;
  margin-bottom: 0;
}
.cf7-parlons input[type="submit"]:hover {
  background: #d04418;
}
.wpcf7 br {
  display: none !important;
}
.wpcf7 {
  margin: 0 !important;
  padding: 0 !important;
}
.cf7-phone-block {
  margin: 0 !important;
  padding: 0 !important;
}
.cf7-separator {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 6px 0;
  width: 100%;
}
.cf7-separator p {
  margin: 0 !important;
  padding: 0 !important;
  display: contents;
}
.cf7-sep-line {
  flex: 1;
  height: 1px;
  background: rgba(0,0,0,0.15);
  min-width: 50px;
}
.cf7-sep-text {
  font-size: 15px;
  color: #888;
  white-space: nowrap;
  flex-shrink: 0;
}
.cf7-phone-block > p {
  margin: 0 !important;
  padding: 0 !important;
  display: contents;
}
.cf7-phone-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 22px;
  font-weight: 700;
  color: #E9511E;
  text-decoration: none;
  line-height: 1;
  margin: 0 !important;
  padding-bottom: 0 !important;
}
.cf7-phone-link img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  background: #E9511E;
  border-radius: 4px;
  padding: 3px;
  box-sizing: content-box;
}
.cf7-phone-link:hover {
  opacity: 0.85;
}
@media (max-width: 768px) {
  .cf7-parlons .cf7-row {
    flex-direction: column;
    gap: 0;
  }
  .cf7-parlons h2,
  .cf7-parlons p {
    text-align: center;
  }
  .cf7-parlons label {
    text-align: left;
  }
  .cf7-parlons input[type="text"],
  .cf7-parlons input[type="email"],
  .cf7-parlons input[type="tel"],
  .cf7-parlons textarea {
    text-align: left;
  }
}
/* Icône de chargement CF7 : placée dans le bouton d'envoi pour ne plus créer d'espace */
.cf7-parlons > p:has(input[type="submit"]) {
  position: relative;
}
.cf7-parlons .wpcf7-spinner {
  position: absolute;
  right: 12px;
  top: calc(50% + 6px);
  transform: translateY(-50%);
  margin: 0;
}

/* Bouton prise de rendez-vous */
.cf7-rdv-block {
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
}
.cf7-rdv-block > p {
  margin: 0 !important;
  padding: 0 !important;
  display: contents;
}
.cf7-rdv-ou {
  display: block;
  text-align: center;
  font-size: 15px;
  color: #888;
  margin: 8px 0;
}
.cf7-parlons .cf7-rdv-link {
  display: block;
  width: 100%;
  box-sizing: border-box;
  background: transparent;
  color: #E9511E;
  border: 2px solid #E9511E;
  padding: 10px 12px;
  border-radius: 8px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  margin-top: 0;
  margin-bottom: 0;
  transition: background 0.2s ease, color 0.2s ease;
}
.cf7-parlons .cf7-rdv-link:hover,
.cf7-parlons .cf7-rdv-link:focus {
  background: #E9511E;
  color: #ffffff;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-86861e5 */.cf7-titre {
  margin-bottom: 8px;
  padding-left: 20px;
}
.cf7-sous-titre {
  margin-bottom: 32px !important;
  padding-left: 20px !important;
}
.cf7-parlons {
  background: #e6f4f9;
  padding: 20px 20px;
  border-radius: 12px;
  width: 100%;
  box-sizing: border-box;
  margin-top: 20px;
  margin-bottom: auto;
  align-self: center;
}
.cf7-parlons .cf7-row {
  display: flex;
  gap: 12px;
}
.cf7-parlons .cf7-col {
  flex: 1;
}
.cf7-parlons .cf7-col p,
.cf7-parlons > p:not(.cf7-sous-titre) {
  margin: 0 !important;
  padding: 0 !important;
}
.cf7-parlons label {
  display: block;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.07em;
  color: #000000;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.cf7-parlons input[type="text"],
.cf7-parlons input[type="email"],
.cf7-parlons input[type="tel"],
.cf7-parlons select,
.cf7-parlons textarea {
  width: 100%;
  padding: 8px 12px;
  border: none;
  border-radius: 6px;
  background: #ffffff;
  font-size: 13px;
  color: #3b3a35;
  margin-top: 4px;
  box-sizing: border-box;
}
.cf7-parlons textarea {
  height: 70px;
  resize: none;
}
.cf7-parlons input[type="submit"] {
  width: 100%;
  background: #E9511E;
  color: #fff;
  border: none;
  padding: 12px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  margin-top: 12px;
  margin-bottom: 0;
}
.cf7-parlons input[type="submit"]:hover {
  background: #d04418;
}
.wpcf7 br {
  display: none !important;
}
.wpcf7 {
  margin: 0 !important;
  padding: 0 !important;
}
.cf7-phone-block {
  margin: 0 !important;
  padding: 0 !important;
}
.cf7-separator {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin: 6px 0;
  width: 100%;
}
.cf7-separator p {
  margin: 0 !important;
  padding: 0 !important;
  display: contents;
}
.cf7-sep-line {
  flex: 1;
  height: 1px;
  background: rgba(0,0,0,0.15);
  min-width: 50px;
}
.cf7-sep-text {
  font-size: 15px;
  color: #888;
  white-space: nowrap;
  flex-shrink: 0;
}
.cf7-phone-block > p {
  margin: 0 !important;
  padding: 0 !important;
  display: contents;
}
.cf7-phone-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 22px;
  font-weight: 700;
  color: #E9511E;
  text-decoration: none;
  line-height: 1;
  margin: 0 !important;
  padding-bottom: 0 !important;
}
.cf7-phone-link img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  background: #E9511E;
  border-radius: 4px;
  padding: 3px;
  box-sizing: content-box;
}
.cf7-phone-link:hover {
  opacity: 0.85;
}
@media (max-width: 768px) {
  .cf7-parlons .cf7-row {
    flex-direction: column;
    gap: 0;
  }
  .cf7-parlons h2,
  .cf7-parlons p {
    text-align: center;
  }
  .cf7-parlons label {
    text-align: left;
  }
  .cf7-parlons input[type="text"],
  .cf7-parlons input[type="email"],
  .cf7-parlons input[type="tel"],
  .cf7-parlons textarea {
    text-align: left;
  }
}
/* Icône de chargement CF7 : placée dans le bouton d'envoi pour ne plus créer d'espace */
.cf7-parlons > p:has(input[type="submit"]) {
  position: relative;
}
.cf7-parlons .wpcf7-spinner {
  position: absolute;
  right: 12px;
  top: calc(50% + 6px);
  transform: translateY(-50%);
  margin: 0;
}

/* Bouton prise de rendez-vous (ancienne version, à garder tant qu'elle est en ligne) */
.cf7-rdv-block {
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
}
.cf7-rdv-block > p {
  margin: 0 !important;
  padding: 0 !important;
  display: contents;
}
.cf7-rdv-ou {
  display: block;
  text-align: center;
  font-size: 15px;
  color: #888;
  margin: 8px 0;
}
.cf7-parlons .cf7-rdv-link {
  display: block;
  width: 100%;
  box-sizing: border-box;
  background: transparent;
  color: #E9511E;
  border: 2px solid #E9511E;
  padding: 10px 12px;
  border-radius: 8px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  margin-top: 0;
  margin-bottom: 0;
  transition: background 0.2s ease, color 0.2s ease;
}
.cf7-parlons .cf7-rdv-link:hover,
.cf7-parlons .cf7-rdv-link:focus {
  background: #E9511E;
  color: #ffffff;
}

/* ==========================================================
   Version à onglets (conteneur Elementor .cf7-tabs)
   ========================================================== */

/* La carte bleue est portée par le conteneur */
.cf7-tabs {
  background: #e6f4f9;
  padding: 20px !important;
  border-radius: 12px;
  box-sizing: border-box;
  margin-top: 20px;
}

/* Titre et sous-titre dans la carte */
.cf7-tabs .cf7-titre {
  margin: 4px 0 8px !important;
  padding: 0 !important;
  text-align: center;
}
.cf7-tabs .cf7-sous-titre {
  margin: 0 0 10px !important;
  padding: 0 !important;
  text-align: center;
}

/* Le formulaire perd son propre fond, déjà porté par la carte */
.cf7-tabs .cf7-parlons {
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  width: 100% !important;
  max-width: none !important;
  align-self: stretch;
}

/* Le formulaire occupe toute la largeur de la carte */
.cf7-tabs .elementor-widget,
.cf7-tabs .cf7-panel {
  width: 100% !important;
  max-width: 100% !important;
  align-self: stretch !important;
}
.cf7-tabs .cf7-panel .elementor-widget-container,
.cf7-tabs .cf7-panel .elementor-shortcode,
.cf7-tabs .wpcf7,
.cf7-tabs .wpcf7-form {
  width: 100% !important;
  max-width: 100% !important;
}

/* Sélecteur d'onglets */
.cf7-tabs .cf7-tablist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
  background: #ffffff;
  padding: 4px;
  border-radius: 10px;
  margin-bottom: 20px;
}
.cf7-tabs .cf7-tab {
  min-height: 44px;
  margin: 0;
  padding: 6px 8px;
  border: none !important;
  border-radius: 8px;
  background: transparent !important;
  color: #1a1a1a !important;
  box-shadow: none !important;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: normal;
  text-transform: none;
  text-align: center;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.cf7-tabs .cf7-tab:hover {
  color: #E9511E !important;
}
.cf7-tabs .cf7-tab.is-active,
.cf7-tabs .cf7-tab.is-active:hover {
  background: #E9511E !important;
  color: #ffffff !important;
  font-weight: 700;
}
.cf7-tabs .cf7-tab:focus-visible {
  outline: 2px solid #E9511E;
  outline-offset: 2px;
}

/* Panneau Axonaut */
.cf7-tabs #panel-rdv {
  background: #ffffff;
  border-radius: 10px;
  overflow: hidden;
}
.cf7-tabs #panel-rdv iframe {
  display: block;
  width: 100% !important;
  min-height: 700px;
  border: 0;
}

/* Bloc téléphone, commun aux deux onglets */
.cf7-tabs .cf7-phone-block {
  margin: 18px 0 12px !important;
}
.cf7-tabs .cf7-separator {
  margin: 0 0 10px;
}

@media (max-width: 480px) {
  .cf7-tabs {
    padding: 16px !important;
  }
  .cf7-tabs .cf7-tab {
    font-size: 13px;
  }
}/* End custom CSS */