.elementor-2549 .elementor-element.elementor-element-fddda55{--display:flex;--min-height:348px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.76;--margin-top:-204px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2549 .elementor-element.elementor-element-fddda55:not(.elementor-motion-effects-element-type-background), .elementor-2549 .elementor-element.elementor-element-fddda55 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;background-image:url("https://climatisationmcl.ca/wp-content/uploads/2026/03/Sainte-Adele-WEB-scaled-1-scaled.jpg");background-size:cover;}.elementor-2549 .elementor-element.elementor-element-fddda55::before, .elementor-2549 .elementor-element.elementor-element-fddda55 > .elementor-background-video-container::before, .elementor-2549 .elementor-element.elementor-element-fddda55 > .e-con-inner > .elementor-background-video-container::before, .elementor-2549 .elementor-element.elementor-element-fddda55 > .elementor-background-slideshow::before, .elementor-2549 .elementor-element.elementor-element-fddda55 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2549 .elementor-element.elementor-element-fddda55 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2549 .elementor-element.elementor-element-01bde63{width:var( --container-widget-width, 79% );max-width:79%;margin:160px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:79%;--container-widget-flex-grow:0;text-align:center;}.elementor-2549 .elementor-element.elementor-element-01bde63.elementor-element{--align-self:center;}.elementor-2549 .elementor-element.elementor-element-01bde63 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:41px;font-weight:600;line-height:46px;letter-spacing:1px;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2549 .elementor-element.elementor-element-03ac9e0{width:var( --container-widget-width, 95% );max-width:95%;margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:95%;--container-widget-flex-grow:0;text-align:center;color:#FFFFFF;}.elementor-2549 .elementor-element.elementor-element-a31340c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2549 .elementor-element.elementor-element-4e725b1 .elementor-button{background-color:#F58408;font-family:"Roboto", Sans-serif;font-weight:500;border-radius:50px 50px 50px 50px;}.elementor-2549 .elementor-element.elementor-element-7904b89{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-faaa951{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-2a003c6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-6f0e701{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-1100962{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-f56fc4c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-12d0ef9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-1e0a9a1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-cace37d{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-cdfd870{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-a457fa1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-ef8af3c.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2549 .elementor-element.elementor-element-8406b42{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-3c30953.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2549 .elementor-element.elementor-element-1980105{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2549 .elementor-element.elementor-element-d14d2bd.elementor-element{--flex-grow:1;--flex-shrink:0;}@media(max-width:767px){.elementor-2549 .elementor-element.elementor-element-01bde63{--container-widget-width:937px;--container-widget-flex-grow:0;width:var( --container-widget-width, 937px );max-width:937px;}.elementor-2549 .elementor-element.elementor-element-01bde63 .elementor-heading-title{font-size:23px;line-height:1.6em;}}/* Start custom CSS for text-editor, class: .elementor-element-03ac9e0 */.bvb,
.bvb h1,
.bvb h2,
.bvb h3,
.bvb h4,
.bvb h5,
.bvb h6,
.bvb p,
.bvb span,
.bvb li {
  color: #ffffff !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6427537 *//* --- Global Section (Fond blanc) --- */
.mcl-tremblant-intro-section {
  width: 100%;
  background-color: #ffffff;
  padding: 90px 0px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-tremblant-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 60px; /* Espace entre le texte et l'image */
}

/* --- Colonne Texte --- */
.mcl-tremblant-text-col {
  flex: 1.2; /* Donne un peu plus d'espace au texte */
}

.mcl-tremblant-title {
  font-size: 2.4rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-tremblant-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin-bottom: 30px;
  border-radius: 2px;
}

.mcl-tremblant-text-col p {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  margin: 0 0 20px 0;
}

.mcl-tremblant-text-col p:last-child {
  margin-bottom: 0;
}

/* --- Colonne Image --- */
.mcl-tremblant-image-col {
  flex: 0.8;
  display: flex;
  justify-content: center;
}

.mcl-img-wrapper {
  width: 100%;
  max-width: 480px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06);
  background-color: #f1f5f9; /* Fond d'attente gris clair */
}

.mcl-responsive-img {
  width: 100%;
  height: 450px; /* Hauteur fixe idéale pour cette quantité de texte */
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

/* Petit effet au survol de la section */
.mcl-tremblant-container:hover .mcl-responsive-img {
  transform: scale(1.02);
}

/* --- Version Mobile et Tablette --- */
@media (max-width: 991px) {
  .mcl-tremblant-intro-section {
    padding: 60px 20px;
  }

  .mcl-tremblant-container {
    flex-direction: column-reverse; /* Aligne l'image en haut sur mobile */
    gap: 40px;
  }
  
  .mcl-tremblant-title {
    font-size: 1.9rem;
  }

  .mcl-responsive-img {
    height: 300px; /* Plus adapté aux écrans verticaux */
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-394cd3f *//* --- Global Section (Fond gris ultra-léger pour marquer l'alternance) --- */
.mcl-why-section {
  width: 100%;
  background-color: #f8fafc;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-why-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 60px;
}

/* --- Colonne Image (Gauche) --- */
.mcl-why-image-col {
  flex: 0.8;
  display: flex;
  justify-content: center;
}

.mcl-why-img-wrapper {
  width: 100%;
  max-width: 450px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06);
  background-color: #ffffff;
}

.mcl-why-img {
  width: 100%;
  height: 520px; /* Plus haute pour s'aligner avec la longueur de la liste */
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.mcl-why-container:hover .mcl-why-img {
  transform: scale(1.02);
}

/* --- Colonne Texte (Droite) --- */
.mcl-why-text-col {
  flex: 1.2;
}

.mcl-why-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-why-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin-bottom: 30px;
  border-radius: 2px;
}

.mcl-why-intro, .mcl-why-outro {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
}

.mcl-why-intro {
  margin-bottom: 30px;
}

.mcl-why-outro {
  margin-top: 30px;
}

/* --- Stylisation de la Liste --- */
.mcl-why-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.mcl-why-list li {
  font-size: 1rem;
  color: #475569;
  line-height: 1.6;
  padding: 12px 16px;
  background-color: #ffffff;
  border-left: 3px solid rgb(245, 132, 8); /* Marqueur Orange MCL */
  border-radius: 0 6px 6px 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.01);
}

.mcl-why-list li strong {
  color: #1e293b;
}

/* --- Responsive --- */
@media (max-width: 991px) {
  .mcl-why-section {
    padding: 60px 20px;
  }

  .mcl-why-container {
    flex-direction: column; /* L'image passe au-dessus sur tablette/mobile */
    gap: 40px;
  }
  
  .mcl-why-title {
    font-size: 1.9rem;
  }

  .mcl-why-img {
    height: 350px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ad0cfc3 *//* --- Global Section (Fond Blanc Pur) --- */
.mcl-solutions-section {
  width: 100%;
  background-color: #ffffff;
  padding: 90px 0px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-solutions-container {
  margin: 0 auto;
}

/* --- Intro unifiée --- */
.mcl-solutions-intro {
  margin: 0 auto 60px auto;
  text-align: center;
}

.mcl-solutions-main-title {
  font-size: 2.4rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-solutions-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto 30px auto;
  border-radius: 2px;
}

.mcl-lead-text {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  margin: 0 0 20px 0;
  text-align: justify;
  text-justify: inter-word;
}

/* --- Les Boutons de Services (Paragraphes 3 & 4) --- */
.mcl-services-cta-grid {
  display: flex;
  gap: 20px;
  margin-top: 35px;
  justify-content: center;
}

.mcl-service-btn {
  flex: 1;
  max-width: 400px;
  padding: 18px 24px;
  border-radius: 8px;
  text-decoration: none;
  font-size: 1rem;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.mcl-service-btn span {
  color: #475569;
  transition: color 0.3s ease;
}

.mcl-service-btn strong {
  color: rgb(245, 132, 8);
}

/* Bouton Climatisation (Bordure fine) */
.btn-ac {
  background-color: #ffffff;
  border: 1px solid #e2e8f0;
  border-left: 4px solid #38bdf8; /* Accent bleu froid */
}

/* Bouton Chauffage (Bordure fine) */
.btn-heat {
  background-color: #ffffff;
  border: 1px solid #e2e8f0;
  border-left: 4px solid rgb(245, 132, 8); /* Accent chaud */
}

.mcl-service-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.08);
  border-color: #1e293b;
}

.mcl-service-btn:hover span {
  color: #1e293b;
}

/* --- Grille des 3 Équipements --- */
.mcl-products-grid {
  display: flex;
  gap: 30px;
  align-items: stretch;
}

.mcl-product-col {
  flex: 1;
  background-color: #f8fafc;
  padding: 40px 30px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  position: relative;
}

/* Petit label technique supérieur */
.mcl-product-badge {
  display: inline-block;
  background-color: #1e293b;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 4px 10px;
  border-radius: 4px;
  margin-bottom: 20px;
}

.mcl-product-col h3 {
  font-size: 1.4rem;
  color: #1e293b;
  font-weight: 700;
  margin: 0 0 20px 0;
  line-height: 1.3;
}

.mcl-product-col p {
  font-size: 0.98rem;
  color: #64748b;
  line-height: 1.65;
  margin: 0 0 15px 0;
}

.mcl-product-col p:last-child {
  margin-bottom: 0;
}

/* --- Responsive Layout --- */
@media (max-width: 991px) {
  .mcl-products-grid {
    flex-direction: column; /* Passage en colonne sur tablette et mobile */
    gap: 25px;
  }
}

@media (max-width: 767px) {
  .mcl-solutions-section {
    padding: 60px 15px;
  }

  .mcl-solutions-main-title {
    font-size: 1.8rem;
  }

  .mcl-services-cta-grid {
    flex-direction: column;
    align-items: center;
    gap: 12px;
  }

  .mcl-service-btn {
    width: 100%;
    max-width: 100%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-41b6226 *//* --- Global Section (Fond gris ultra-léger pour l'alternance) --- */
.mcl-install-section {
  width: 100%;
  background-color: #f8fafc;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-install-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 60px;
}

/* --- Colonne Texte (Gauche) --- */
.mcl-install-text-col {
  flex: 1.2;
}

.mcl-install-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-install-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin-bottom: 30px;
  border-radius: 2px;
}

.mcl-install-intro, .mcl-install-outro {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
}

.mcl-install-subtitle {
  font-size: 1.15rem;
  color: #1e293b;
  font-weight: 700;
  margin: 30px 0 20px 0;
}

/* --- Stylisation de la Chronologie (Timeline) --- */
.mcl-install-timeline {
  list-style: none;
  padding: 0;
  margin: 0 0 30px 0;
  counter-reset: mcl-counter; /* Initialisation du compteur CSS */
}

.mcl-install-timeline li {
  counter-increment: mcl-counter;
  position: relative;
  padding-left: 45px;
  margin-bottom: 15px;
  font-size: 1.02rem;
  color: #475569;
  font-weight: 600;
  line-height: 1.5;
  display: flex;
  align-items: center;
}

/* Création des bulles de numéros orange */
.mcl-install-timeline li::before {
  content: counter(mcl-counter);
  position: absolute;
  left: 0;
  width: 28px;
  height: 28px;
  background-color: rgb(245, 132, 8);
  color: #ffffff;
  font-size: 0.85rem;
  font-weight: 700;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(245, 132, 8, 0.2);
}

/* Ligne verticale subtile reliant les numéros */
.mcl-install-timeline li:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 13px;
  top: 28px;
  width: 2px;
  height: calc(100% - 13px);
  background-color: #cbd5e1;
}

.mcl-install-timeline li span {
  padding-top: 2px;
}

/* --- Colonne Image (Droite) --- */
.mcl-install-image-col {
  flex: 0.8;
  display: flex;
  justify-content: center;
}

.mcl-install-img-wrapper {
  width: 100%;
  max-width: 450px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06);
  background-color: #ffffff;
}

.mcl-install-img {
  width: 100%;
  height: 500px; /* Aligné sur la hauteur de la timeline */
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.mcl-install-container:hover .mcl-install-img {
  transform: scale(1.02);
}

/* --- Responsive --- */
@media (max-width: 991px) {
  .mcl-install-container {
    flex-direction: column; /* L'image passe au-dessus sur mobile */
    gap: 40px;
  }
  
  .mcl-install-title {
    font-size: 1.9rem;
  }

  .mcl-install-img {
    height: 350px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-072f6d9 *//* --- Global Section (Fond blanc pur) --- */
.mcl-maintenance-section {
  width: 100%;
  background-color: #ffffff;
  padding: 90px 0px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-maintenance-container {
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-maintenance-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
  text-align: center;
}

.mcl-maintenance-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto 35px auto;
  border-radius: 2px;
}

.mcl-maintenance-intro {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  margin-bottom: 45px;
  text-align: center;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}Suffix code

/* --- Grille des Points de Contrôle --- */
.mcl-checklist-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 4 colonnes sur ordinateur */
  gap: 20px;
  margin-bottom: 50px;
}

.mcl-checklist-item {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: all 0.2s ease;
}

.mcl-checklist-item:hover {
  border-color: rgba(245, 132, 8, 0.3);
  transform: translateY(-2px);
  background-color: #ffffff;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.04);
}

.mcl-checklist-item.check-summary {
  background-color: rgba(245, 132, 8, 0.04);
  border-color: rgba(245, 132, 8, 0.2);
}

.mcl-check-icon {
  font-size: 1.6rem;
  margin-bottom: 12px;
}

.mcl-checklist-item p {
  font-size: 0.95rem;
  color: #1e293b;
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
}

/* --- Boîte de Recommandation CTA --- */
.mcl-maintenance-box-cta {
  background-color: #1e293b;
  border-left: 4px solid rgb(245, 132, 8);
  padding: 30px 40px;
  border-radius: 0 12px 12px 0;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.mcl-maintenance-box-cta p {
  font-size: 1.05rem;
  color: #cbd5e1;
  line-height: 1.65;
  margin: 0;
}

/* Stylisation du lien SEO */
.mcl-maintenance-link {
  color: rgb(245, 132, 8);
  font-weight: 700;
  text-decoration: none;
  border-bottom: 2px solid rgba(245, 132, 8, 0.3);
  transition: all 0.2s ease;
}

.mcl-maintenance-link:hover {
  color: #ffffff;
  border-bottom-color: #ffffff;
}

/* --- Responsive Layout --- */
@media (max-width: 991px) {
  .mcl-checklist-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 colonnes sur tablette */
    gap: 15px;
  }
}

@media (max-width: 767px) {
  .mcl-maintenance-section {
    padding: 60px 15px;
  }

  .mcl-maintenance-title {
    font-size: 1.8rem;
  }

  .mcl-checklist-grid {
    grid-template-columns: 1fr; /* 1 seule colonne sur mobile */
  }

  .mcl-maintenance-box-cta {
    padding: 25px 20px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c4662f6 *//* --- Global Section (Fond gris technique léger) --- */
.mcl-repair-section {
  width: 100%;
  background-color: #f1f5f9;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-repair-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-repair-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
  text-align: center;
}

.mcl-repair-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto 35px auto;
  border-radius: 2px;
}

.mcl-repair-intro {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  margin-bottom: 40px;
  text-align: center;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.mcl-repair-subtitle {
  font-size: 1.15rem;
  color: #1e293b;
  font-weight: 700;
  margin-bottom: 25px;
}

/* --- Grille des Signes d'Anomalie --- */
.mcl-symptoms-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 colonnes sur PC */
  gap: 20px;
  margin-bottom: 50px;
}

.mcl-symptom-card {
  background-color: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 22px 25px;
  display: flex;
  align-items: flex-start;
  gap: 15px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
  transition: all 0.25s ease;
}

.mcl-symptom-card:hover {
  transform: translateY(-2px);
  border-color: rgba(245, 132, 8, 0.4);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.04);
}

/* Le petit témoin lumineux d'alerte */
.mcl-symptom-bullet {
  width: 8px;
  height: 8px;
  background-color: rgb(245, 132, 8);
  border-radius: 50%;
  margin-top: 6px;
  flex-shrink: 0;
  box-shadow: 0 0 8px rgba(245, 132, 8, 0.6);
}

.mcl-symptom-card p {
  font-size: 0.98rem;
  color: #334155;
  font-weight: 600;
  line-height: 1.5;
  margin: 0;
}

/* --- Bannière de Redirection CTA --- */
.mcl-repair-banner {
  background-color: #1e293b;
  border-radius: 12px;
  padding: 30px 40px;
  text-align: center;
  box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.1);
}

.mcl-repair-banner p {
  font-size: 1.05rem;
  color: #e2e8f0;
  line-height: 1.65;
  margin: 0;
}

/* Lien SEO */
.mcl-repair-link {
  color: rgb(245, 132, 8);
  font-weight: 700;
  text-decoration: none;
  border-bottom: 2px solid rgba(245, 132, 8, 0.3);
  transition: all 0.2s ease;
}

.mcl-repair-link:hover {
  color: #ffffff;
  border-bottom-color: #ffffff;
}

/* --- Responsive Layout --- */
@media (max-width: 991px) {
  .mcl-symptoms-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 colonnes sur tablette */
  }
}

@media (max-width: 767px) {
  .mcl-repair-section {
    padding: 60px 15px;
  }

  .mcl-repair-title {
    font-size: 1.8rem;
  }

  .mcl-symptoms-grid {
    grid-template-columns: 1fr; /* 1 seule colonne sur mobile */
    gap: 15px;
  }
  
  .mcl-symptom-card {
    padding: 18px 20px;
  }

  .mcl-repair-banner {
    padding: 25px 20px;
    text-align: left;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-eb05201 *//* --- Global Section (Fond Blanc Pro) --- */
.mcl-commercial-section {
  width: 100%;
  background-color: #ffffff;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-commercial-container {
  max-width: 1100px;
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-commercial-header {
  text-align: center;
  margin-bottom: 50px;
}

.mcl-commercial-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-commercial-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto;
  border-radius: 2px;
}

/* --- Grille Corporative à 2 Colonnes --- */
.mcl-commercial-grid {
  display: flex;
  gap: 30px;
  margin-bottom: 40px;
}

.mcl-commercial-card {
  flex: 1;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 40px 35px;
  transition: all 0.3s ease;
}

/* Accentuation subtile au survol des cartes */
.mcl-commercial-card:hover {
  border-color: #cbd5e1;
  background-color: #ffffff;
  box-shadow: 0 10px 20px -5px rgba(0, 0, 0, 0.04);
}

.mcl-comm-icon {
  font-size: 2rem;
  margin-bottom: 20px;
}

.mcl-commercial-card h3 {
  font-size: 1.3rem;
  color: #1e293b;
  font-weight: 700;
  margin: 0 0 15px 0;
}

.mcl-commercial-card p {
  font-size: 1rem;
  color: #475569;
  line-height: 1.65;
  margin: 0;
}

/* --- Bannière CTA B2B --- */
.mcl-commercial-cta {
  background-color: #1e293b;
  border-radius: 12px;
  padding: 25px 35px;
  color: #e2e8f0;
}

.mcl-comm-cta-content span {
  display: block;
  font-size: 1.1rem;
  color: #ffffff;
  margin-bottom: 8px;
}

.mcl-comm-cta-content p {
  font-size: 0.98rem;
  line-height: 1.6;
  margin: 0;
  color: #94a3b8;
}

/* Lien SEO Pro */
.mcl-comm-link {
  color: rgb(245, 132, 8);
  font-weight: 700;
  text-decoration: none;
  border-bottom: 2px solid rgba(245, 132, 8, 0.3);
  transition: all 0.2s ease;
}

.mcl-comm-link:hover {
  color: #ffffff;
  border-bottom-color: #ffffff;
}

/* --- Responsive Layout --- */
@media (max-width: 850px) {
  .mcl-commercial-grid {
    flex-direction: column;
    gap: 20px;
  }
  
  .mcl-commercial-card {
    padding: 30px 25px;
  }
}

@media (max-width: 767px) {
  .mcl-commercial-section {
    padding: 60px 15px;
  }

  .mcl-commercial-title {
    font-size: 1.8rem;
  }

  .mcl-commercial-cta {
    padding: 20px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0008c68 *//* --- Global Section (Fond gris neutre très clair) --- */
.mcl-table-section {
  width: 100%;
  background-color: #f8fafc;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-table-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-table-header {
  text-align: center;
  margin-bottom: 50px;
}

.mcl-table-main-title {
  font-size: 2.2rem;
  color: #1e293b;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 20px 0;
}

.mcl-table-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto;
  border-radius: 2px;
}

/* --- Design du Tableau Épuré --- */
.mcl-responsive-table-wrapper {
  width: 100%;
  overflow-x: auto; /* Sécurité standard */
  border-radius: 12px;
  box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.05);
}

.mcl-comparison-table {
  width: 100%;
  border-collapse: collapse;
  background-color: #ffffff;
  text-align: left;
}

/* En-tête du tableau (Th) */
.mcl-comparison-table th {
  background-color: #1e293b;
  color: #ffffff;
  font-weight: 700;
  font-size: 1.05rem;
  padding: 20px 25px;
}

/* Cellules (Td) */
.mcl-comparison-table td {
  padding: 20px 25px;
  font-size: 0.98rem;
  color: #475569;
  line-height: 1.5;
  border-bottom: 1px solid #e2e8f0;
}

/* Alternance de couleurs (Lignes paires) */
.mcl-comparison-table tbody tr:nth-child(even) {
  background-color: #f1f5f9;
}

/* Mise en valeur de la première colonne (Noms des équipements) */
.mcl-td-highlight {
  color: #1e293b !important;
  font-weight: 700;
  font-size: 1.05rem !important;
}

/* Micro-badges pour la clarté visuelle */
.mcl-badge-plus, .mcl-badge-attention {
  margin-right: 5px;
  font-size: 1.1rem;
}

/* --- VERSION MOBILE RESPONSIVE (Effet de transformation de grille) --- */
@media (max-width: 768px) {
  .mcl-table-section {
    padding: 60px 15px;
  }

  .mcl-table-main-title {
    font-size: 1.8rem;
  }

  /* Force le tableau à ne plus se comporter comme un tableau */
  .mcl-comparison-table, 
  .mcl-comparison-table thead, 
  .mcl-comparison-table tbody, 
  .mcl-comparison-table th, 
  .mcl-comparison-table td, 
  .mcl-comparison-table tr { 
    display: block; 
  }
  
  /* Cache complètement l'en-tête d'origine */
  .mcl-comparison-table thead tr { 
    position: absolute;
    top: -9999px;
    left: -9999px;
  }
  
  /* Chaque ligne devient une carte distincte */
  .mcl-comparison-table tr { 
    background-color: #ffffff !important;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    margin-bottom: 25px;
    padding: 15px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
  }
  
  /* Ajustement des cellules */
  .mcl-comparison-table td { 
    border: none;
    border-bottom: 1px solid #f1f5f9; 
    position: relative;
    padding-left: 45% !important; /* Crée l'espace à gauche pour le libellé */
    text-align: left;
    padding: 12px 5px;
  }

  .mcl-comparison-table td:last-child {
    border-bottom: none;
  }
  
  /* Injecte le libellé de la colonne en utilisant l'attribut HTML data-label */
  .mcl-comparison-table td::before { 
    content: attr(data-label);
    position: absolute;
    left: 10px;
    width: 35%; 
    padding-right: 10px; 
    white-space: nowrap;
    font-weight: 700;
    color: #64748b;
    font-size: 0.9rem;
  }

  /* Style spécifique pour la cellule titre en mode mobile */
  .mcl-td-highlight {
    background-color: rgba(245, 132, 8, 0.05);
    border-radius: 6px;
    color: rgb(245, 132, 8) !important;
    padding-left: 15px !important;
  }

  .mcl-td-highlight::before {
    display: none; /* Pas besoin de mentionner "Solution :" sur la ligne titre */
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-367b051 *//* --- Global Section (Fond Blanc Pur) --- */
.mcl-insights-section {
  width: 100%;
  background-color: #ffffff;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-insights-container {
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-insights-header {
  text-align: center;
  margin-bottom: 50px;
}

.mcl-insights-main-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-insights-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto;
  border-radius: 2px;
}

/* --- Grille à deux colonnes --- */
.mcl-insights-grid {
  display: flex;
  gap: 50px;
  align-items: center;
}

/* Encadré des problèmes (Gauche) */
.mcl-insights-box-problems {
  flex: 0.9;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-left: 4px solid rgb(245, 132, 8); /* Ligne Orange MCL */
  border-radius: 0 12px 12px 0;
  padding: 35px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
}

.mcl-insights-box-problems h3 {
  font-size: 1.2rem;
  color: #1e293b;
  font-weight: 700;
  margin: 0 0 20px 0;
}

.mcl-insights-list-problems {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.mcl-insights-list-problems li {
  font-size: 0.98rem;
  color: #475569;
  font-weight: 600;
  position: relative;
  padding-left: 22px;
}

/* Indicateur visuel discret devant chaque problème */
.mcl-insights-list-problems li::before {
  content: "•";
  color: rgb(245, 132, 8);
  font-size: 1.4rem;
  position: absolute;
  left: 5px;
  top: -4px;
}

/* Bloc de texte (Droite) */
.mcl-insights-content-right {
  flex: 1.1;
}

.mcl-insights-content-right p {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  margin: 0 0 20px 0;
}

.mcl-insights-content-right p:last-child {
  margin-bottom: 0;
}

.mcl-insights-content-right strong {
  color: #1e293b;
}

.mcl-insights-lead {
  font-size: 1.1rem !important;
  color: #334155 !important;
}

/* --- Responsive Layout --- */
@media (max-width: 991px) {
  .mcl-insights-grid {
    flex-direction: column; /* Passage sur une colonne sur tablette et mobile */
    gap: 35px;
  }

  .mcl-insights-box-problems {
    width: 100%;
    box-sizing: border-box;
  }
}

@media (max-width: 767px) {
  .mcl-insights-section {
    padding: 60px 15px;
  }

  .mcl-insights-main-title {
    font-size: 1.8rem;
  }
  
  .mcl-insights-box-problems {
    padding: 25px 20px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-da899e4 *//* --- Global Section (Fond gris technique léger) --- */
.mcl-zones-section {
  width: 100%;
  background-color: #f1f5f9;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-zones-container {
  margin: 0 auto;
}

/* --- En-tête centré --- */
.mcl-zones-header {
  text-align: center;
  margin: 0 auto 50px auto;
}

.mcl-zones-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-zones-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto 25px auto;
  border-radius: 2px;
}

.mcl-zones-intro {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  margin: 0;
}

/* --- Grille Flex/Grid de Badges --- */
.mcl-zones-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr); /* 5 colonnes sur grand écran */
  gap: 15px;
}

/* Style de base des badges de ville */
.mcl-zone-badge {
  background-color: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 18px 15px;
  text-align: center;
  font-size: 0.98rem;
  color: #334155;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
  transition: all 0.2s ease;
}

/* Effet interactif au survol */
.mcl-zone-badge:hover {
  transform: translateY(-2px);
  border-color: rgba(245, 132, 8, 0.4);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.04);
}

.mcl-pin {
  font-size: 1.1rem;
}

/* Traitement de faveur pour la ville principale de la page (Mont-Tremblant) */
.mcl-zone-badge.spec-main {
  background-color: rgba(245, 132, 8, 0.06);
  border-color: rgba(245, 132, 8, 0.3);
  color: rgb(245, 132, 8);
}

/* Traitement global pour "Ensemble des Laurentides" */
.mcl-zone-badge.spec-all {
  background-color: #1e293b;
  color: #ffffff;
  border-color: #1e293b;
  grid-column: span 1; /* Reste standard ou s'adapte */
}

.mcl-zone-badge.spec-all:hover {
  background-color: #0f172a;
}

/* --- Responsive Layout --- */
@media (max-width: 991px) {
  .mcl-zones-grid {
    grid-template-columns: repeat(3, 1fr); /* 3 colonnes sur tablette */
  }
}

@media (max-width: 767px) {
  .mcl-zones-section {
    padding: 60px 15px;
  }

  .mcl-zones-title {
    font-size: 1.8rem;
  }

  .mcl-zones-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 colonnes sur mobile */
    gap: 10px;
  }
  
  .mcl-zone-badge {
    padding: 14px 10px;
    font-size: 0.9rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ef8af3c *//* --- Global Section (Fond Blanc Pro) --- */
.mcl-faq-section {
  width: 100%;
  background-color: #ffffff;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-faq-container {
  
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-faq-header {
  text-align: center;
  margin-bottom: 45px;
}

.mcl-faq-main-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-faq-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto;
  border-radius: 2px;
}

/* --- Système d'Accordéon --- */
.mcl-accordion {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.mcl-accordion-item {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
}

/* On cache les boutons checkbox natifs */
.mcl-accordion-input {
  display: none;
}

/* Style de la ligne Question (Label) */
.mcl-accordion-title {
  display: block;
  padding: 22px 25px;
  font-size: 1.08rem;
  font-weight: 700;
  color: #1e293b;
  cursor: pointer;
  position: relative;
  padding-right: 60px; /* Espace pour la flèche */
  user-select: none;
  transition: color 0.2s ease;
}

.mcl-accordion-title:hover {
  color: rgb(245, 132, 8);
}

/* Flèche interactive (Design CSS pur) */
.mcl-accordion-title::after {
  content: "";
  position: absolute;
  right: 25px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  width: 10px;
  height: 10px;
  border-right: 2px solid rgb(245, 132, 8);
  border-bottom: 2px solid rgb(245, 132, 8);
  transition: transform 0.3s ease;
}

/* --- Logique d'ouverture CSS au clic --- */
.mcl-accordion-input:checked ~ .mcl-accordion-title {
  background-color: #f1f5f9;
  color: rgb(245, 132, 8);
}

/* Rotation de la flèche si coché */
.mcl-accordion-input:checked ~ .mcl-accordion-title::after {
  transform: translateY(-30%) rotate(135deg);
}

/* Conteneur de la réponse caché par défaut */
.mcl-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #ffffff;
}

/* Animation et affichage progressif du texte */
.mcl-accordion-content p {
  padding: 25px;
  margin: 0;
  font-size: 1rem;
  color: #475569;
  line-height: 1.65;
  border-top: 1px solid #e2e8f0;
}

/* Déploiement de la boîte si coché */
.mcl-accordion-input:checked ~ .mcl-accordion-content {
  max-height: 300px; /* Hauteur maximale de sécurité pour le déploiement */
}

/* Lien téléphonique interne */
.mcl-faq-phone-link {
  color: rgb(245, 132, 8);
  font-weight: 700;
  text-decoration: none;
}

.mcl-faq-phone-link:hover {
  text-decoration: underline;
}

/* --- Responsive --- */
@media (max-width: 767px) {
  .mcl-faq-section {
    padding: 60px 15px;
  }

  .mcl-faq-main-title {
    font-size: 1.8rem;
  }

  .mcl-accordion-title {
    padding: 18px 20px;
    font-size: 1rem;
    padding-right: 50px;
  }

  .mcl-accordion-content p {
    padding: 20px;
    font-size: 0.95rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3c30953 *//* --- Global Section (Fond gris ultra-léger) --- */
.mcl-lexicon-section {
  width: 100%;
  background-color: #f8fafc;
  padding: 90px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
}

.mcl-lexicon-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-lexicon-header {
  text-align: center;
  margin-bottom: 50px;
}

.mcl-lexicon-main-title {
  font-size: 2.3rem;
  color: #1e293b;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-lexicon-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto;
  border-radius: 2px;
}

/* --- Grille du Glossaire --- */
.mcl-lexicon-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 colonnes bien équilibrées sur PC */
  gap: 25px;
}

/* Bloc d'un terme du lexique */
.mcl-lexicon-item {
  background-color: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 25px 30px;
  transition: all 0.2s ease;
}

.mcl-lexicon-item:hover {
  border-color: rgba(245, 132, 8, 0.3);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.03);
}

/* Structure du titre du terme */
.mcl-lexicon-term {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.mcl-lexicon-bullet {
  font-size: 1.1rem;
}

.mcl-lexicon-item h3 {
  font-size: 1.15rem;
  color: #1e293b;
  font-weight: 700;
  margin: 0;
  text-transform: capitalize; /* Propre pour les expressions SEO */
}

/* Texte de définition */
.mcl-lexicon-item p {
  font-size: 0.98rem;
  color: #475569;
  line-height: 1.6;
  margin: 0;
}

/* --- Responsive Layout --- */
@media (max-width: 991px) {
  .mcl-lexicon-grid {
    grid-template-columns: 1fr; /* Passage sur une seule colonne sur tablette/mobile */
    gap: 20px;
  }
}

@media (max-width: 767px) {
  .mcl-lexicon-section {
    padding: 60px 15px;
  }

  .mcl-lexicon-main-title {
    font-size: 1.8rem;
  }

  .mcl-lexicon-item {
    padding: 20px;
  }

  .mcl-lexicon-item h3 {
    font-size: 1.05rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d14d2bd *//* --- Global Section (Fond Sombre Premium pour clore la page) --- */
.mcl-cta-final-section {
  width: 100%;
  background-color: #1e293b;
  padding: 100px 20px;
  box-sizing: border-box;
  font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
  text-align: center;
}

.mcl-cta-final-container {
  max-width: 950px; /* Plus compact pour focaliser l'attention */
  margin: 0 auto;
}

/* --- En-tête --- */
.mcl-cta-final-title {
  font-size: 2.5rem;
  color: #ffffff;
  font-weight: 800;
  line-height: 1.25;
  margin: 0 0 20px 0;
}

.mcl-cta-final-divider {
  width: 80px;
  height: 4px;
  background-color: rgb(245, 132, 8);
  margin: 0 auto 35px auto;
  border-radius: 2px;
}

.mcl-cta-final-intro {
  font-size: 1.1rem;
  color: #cbd5e1;
  line-height: 1.7;
  margin-bottom: 45px;
}

/* --- Grille des Situations Intermédiaires --- */
.mcl-cta-situations {
  display: flex;
  gap: 25px;
  margin-bottom: 50px;
  text-align: left;
}

.mcl-situation-card {
  flex: 1;
  background-color: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  padding: 25px 30px;
}

.mcl-situation-card h4 {
  font-size: 1.1rem;
  color: #ffffff;
  font-weight: 700;
  margin: 0 0 10px 0;
}

.mcl-situation-card p {
  font-size: 0.98rem;
  color: #94a3b8;
  line-height: 1.5;
  margin: 0;
}

/* --- Le Bouton d'Appel Principal (Master Call) --- */
.mcl-phone-action-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
}

.mcl-main-cta-button {
  display: inline-flex;
  align-items: center;
  background-color: rgb(245, 132, 8);
  color: #ffffff;
  text-decoration: none;
  padding: 16px 40px;
  border-radius: 50px; /* Format pilule ultra moderne */
  gap: 20px;
  box-shadow: 0 10px 25px -5px rgba(245, 132, 8, 0.4);
  transition: all 0.3s ease;
}

.mcl-cta-icon {
  font-size: 1.8rem;
}

.mcl-cta-btn-text {
  display: flex;
  flex-direction: column;
  text-align: left;
}

.mcl-btn-sub {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(255, 255, 255, 0.85);
  font-weight: 600;
}

.mcl-btn-main {
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.1;
}

/* Animations de survol */
.mcl-main-cta-button:hover {
  transform: translateY(-3px);
  background-color: #e07507;
  box-shadow: 0 15px 30px -5px rgba(245, 132, 8, 0.5);
}

.mcl-cta-guarantee {
  font-size: 0.9rem;
  color: #64748b;
  margin: 5px 0 0 0;
}

/* --- Responsive Layout --- */
@media (max-width: 850px) {
  .mcl-cta-situations {
    flex-direction: column;
    gap: 15px;
  }
}

@media (max-width: 767px) {
  .mcl-cta-final-section {
    padding: 70px 15px;
  }

  .mcl-cta-final-title {
    font-size: 1.9rem;
  }

  .mcl-situation-card {
    padding: 20px;
  }

  .mcl-main-cta-button {
    width: 100%;
    max-width: 360px;
    box-sizing: border-box;
    justify-content: center;
    padding: 14px 25px;
  }

  .mcl-btn-main {
    font-size: 1.4rem;
  }
}/* End custom CSS */