.elementor-2494 .elementor-element.elementor-element-f795980{--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:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2494 .elementor-element.elementor-element-f795980:not(.elementor-motion-effects-element-type-background), .elementor-2494 .elementor-element.elementor-element-f795980 > .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-2494 .elementor-element.elementor-element-f795980::before, .elementor-2494 .elementor-element.elementor-element-f795980 > .elementor-background-video-container::before, .elementor-2494 .elementor-element.elementor-element-f795980 > .e-con-inner > .elementor-background-video-container::before, .elementor-2494 .elementor-element.elementor-element-f795980 > .elementor-background-slideshow::before, .elementor-2494 .elementor-element.elementor-element-f795980 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2494 .elementor-element.elementor-element-f795980 > .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-2494 .elementor-element.elementor-element-df5342a{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-2494 .elementor-element.elementor-element-df5342a.elementor-element{--align-self:center;}.elementor-2494 .elementor-element.elementor-element-df5342a .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-2494 .elementor-element.elementor-element-47b302f{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-2494 .elementor-element.elementor-element-a66e73b{--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-2494 .elementor-element.elementor-element-f5754f4 .elementor-button{background-color:#F58408;font-family:"Roboto", Sans-serif;font-weight:500;border-radius:50px 50px 50px 50px;}.elementor-2494 .elementor-element.elementor-element-5ad5825{--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-2494 .elementor-element.elementor-element-1ff0683{--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-2494 .elementor-element.elementor-element-82189e3{--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-2494 .elementor-element.elementor-element-7ce6421{--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-2494 .elementor-element.elementor-element-fe5d0d4{--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-2494 .elementor-element.elementor-element-e4e3939{--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-2494 .elementor-element.elementor-element-5f7f24d{--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-2494 .elementor-element.elementor-element-03e3d68{--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-2494 .elementor-element.elementor-element-b7da893{--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-2494 .elementor-element.elementor-element-8a5e7ad{--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-2494 .elementor-element.elementor-element-a259018.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2494 .elementor-element.elementor-element-20f5bd7{--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-2494 .elementor-element.elementor-element-c544a37.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2494 .elementor-element.elementor-element-7d8591f{--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-2494 .elementor-element.elementor-element-cfc2d9d{--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-2494 .elementor-element.elementor-element-da386f0.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2494 .elementor-element.elementor-element-e7026e2{--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;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-2494 .elementor-element.elementor-element-df5342a{--container-widget-width:937px;--container-widget-flex-grow:0;width:var( --container-widget-width, 937px );max-width:937px;}.elementor-2494 .elementor-element.elementor-element-df5342a .elementor-heading-title{font-size:23px;line-height:1.6em;}}/* Start custom CSS for text-editor, class: .elementor-element-47b302f */.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-d38f5d6 *//* Import Roboto */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700;900&display=swap');

.mcl-heating-section {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 80px 0 !important; /* On laisse Elementor gérer le inline */
    background-color: #ffffff;
}

.mcl-flex-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
}

/* Zone Image à gauche */
.mcl-image-box {
    flex: 1;
    min-width: 350px;
    height: 500px;
    background-color: #f4f4f4; /* Fond de secours en attendant ton image */
    position: relative;
    overflow: hidden;
}

/* L'accent orange MCL sur l'image */
.mcl-image-box::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px;
    background-color: #F58408;
}

.mcl-image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Zone Texte à droite */
.mcl-text-content {
    flex: 1.2;
    min-width: 350px;
    padding: 60px 5% !important; /* Padding interne pour respirer sans briser le max-width global */
}

/* Titre Roboto 38px en Gris Foncé */
.mcl-text-content h2 {
    font-family: 'Roboto', sans-serif;
    font-size: 38px !important;
    font-weight: 900;
    color: #222222; /* Le boss n'aime pas le orange ici */
    line-height: 1.2;
    margin-bottom: 30px !important;
    position: relative;
}

/* Barre d'accentuation Orange MCL sous le titre */
.mcl-text-content h2::after {
    content: "";
    display: block;
    width: 60px;
    height: 5px;
    background-color: #F58408;
    margin-top: 15px;
}

.mcl-text-content p {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #444;
    margin-bottom: 25px !important;
}

/* Mise en avant du dernier paragraphe */
.mcl-text-content p:last-of-type {
    font-weight: 700;
    color: #222;
    border-left: 4px solid #F58408;
    padding-left: 20px;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-image-box {
        height: 350px;
        flex: 0 0 100%;
    }
    .mcl-text-content {
        flex: 0 0 100%;
        padding: 40px 20px !important;
    }
    .mcl-text-content h2 {
        font-size: 30px !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d76f479 *//* Section Sainte-Adèle MCL */
.mcl-adele-section {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 80px 0 !important;
    background-color: #ffffff;
}

.mcl-flex-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center; /* Aligne verticalement le texte et l'image */
    width: 100%;
}

/* Zone Texte */
.mcl-text-content {
    flex: 1.2;
    min-width: 350px;
    padding: 60px 8% 60px 10% !important;
}

.mcl-text-content h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    line-height: 1.2;
    margin-bottom: 30px !important;
}

/* Accentuation Orange MCL sous le titre */
.mcl-text-content h2::after {
    content: "";
    display: block;
    width: 60px;
    height: 5px;
    background-color: #F58408;
    margin-top: 15px;
}

.mcl-text-content p {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #444;
    margin-bottom: 25px !important;
}

/* Liste de caractéristiques */
.mcl-feature-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 30px 0 !important;
}

.mcl-feature-list li {
    position: relative;
    padding-left: 35px !important;
    margin-bottom: 15px !important;
    font-size: 1.05rem;
    color: #333;
}

/* Puces personnalisées Orange */
.mcl-feature-list li::before {
    content: "→";
    position: absolute;
    left: 0;
    color: #F58408;
    font-weight: 900;
    font-size: 1.3rem;
    line-height: 1;
}

/* Zone Image à droite */
.mcl-image-box {
    flex: 1;
    min-width: 350px;
    position: relative;
    overflow: hidden;
    padding: 20px 10% 20px 0 !important;
}

.mcl-image-box img {
    width: 100%;
    height: auto;
    border-radius: 4px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.1);
    display: block;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-flex-container {
        flex-direction: column; /* Image passe en dessous sur mobile */
    }
    .mcl-text-content {
        padding: 40px 20px !important;
    }
    .mcl-image-box {
        padding: 0 20px 40px 20px !important;
        width: 100%;
    }
    .mcl-text-content h2 {
        font-size: 30px !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b340b3b *//* Section Services Saint-Sauveur MCL */
.mcl-services-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-sauveur-intro {
    padding: 0 0% 60px 0%;
}

.mcl-sauveur-intro h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin-bottom: 25px !important;
}

.mcl-sauveur-intro p {
    font-size: 1.15rem;
    line-height: 1.7;
    color: #666;
}

/* Grille interactive */
.mcl-sauveur-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    padding: 0 0% !important;
}

.mcl-sauveur-item {
    flex: 1 1 calc(33.33% - 30px);
    background-color: #fcfcfc;
    padding: 40px !important;
    border: 1px solid #eee;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

.mcl-sauveur-item:hover {
    background-color: #ffffff;
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
    border-color: #F58408;
    transform: translateY(-5px);
}

.mcl-item-header {
    margin-bottom: 20px !important;
}

.mcl-item-number {
    display: block;
    font-size: 0.85rem;
    font-weight: 900;
    color: #F58408;
    margin-bottom: 5px;
    letter-spacing: 1px;
}

.mcl-sauveur-item h3 {
    font-size: 1.4rem !important;
    font-weight: 800;
    color: #222;
    margin: 0 !important;
    line-height: 1.3;
}

.mcl-sauveur-item p {
    font-size: 1rem;
    line-height: 1.6;
    color: #555;
    margin-bottom: 25px !important;
    flex-grow: 1;
}

/* Lien CTA discret */
.mcl-item-link {
    font-size: 0.9rem;
    font-weight: 800;
    color: #222;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 1px;
    border-bottom: 2px solid #F58408;
    align-self: flex-start;
    padding-bottom: 4px;
    transition: all 0.2s ease;
}

.mcl-item-link:hover {
    color: #F58408;
    border-bottom-color: #222;
}

/* Responsive */
@media (max-width: 1024px) {
    .mcl-sauveur-item { flex: 1 1 calc(50% - 30px); }
}

@media (max-width: 768px) {
    .mcl-sauveur-item { flex: 1 1 100%; }
    .mcl-sauveur-intro { padding: 0 20px 40px 20px; }
    .mcl-sauveur-grid { padding: 0 20px !important; }
    .mcl-sauveur-intro h2 { font-size: 30px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f1ed689 *//* Section Choix de Système Saint-Sauveur */
.mcl-choix-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-choix-header {
    padding: 0 0% 50px 0%;
}

.mcl-choix-header h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin-bottom: 20px !important;
}

.mcl-choix-header p {
    font-size: 1.1rem;
    color: #666;
}

/* Structure de la table custom */
.mcl-solutions-table {
    margin: 0 0% !important;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden;
}

.mcl-table-head {
    display: flex;
    background-color: #222222;
    color: #ffffff;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 1px;
}

.mcl-table-row {
    display: flex;
    border-bottom: 1px solid #eee;
    transition: background 0.3s ease;
}

.mcl-table-row:last-child {
    border-bottom: none;
}

.mcl-table-row:hover {
    background-color: #f9f9f9;
}

.mcl-col {
    flex: 1;
    padding: 25px 30px !important;
    display: flex;
    align-items: center;
    font-size: 1.05rem;
    color: #444;
}

/* Style spécifique colonnes */
.mcl-highlight {
    color: #F58408 !important;
    font-weight: 700;
}

.mcl-dot {
    width: 8px;
    height: 8px;
    background-color: #F58408;
    border-radius: 50%;
    margin-right: 15px;
    display: inline-block;
}

/* Footer de section */
.mcl-choix-footer {
    padding: 40px 0% 0 0%;
}

.mcl-choix-footer p {
    font-size: 1.05rem;
    line-height: 1.6;
    color: #555;
    padding: 20px !important;
    background-color: #fcfcfc;
    border-left: 4px solid #F58408;
}

/* Responsive Mobile */
@media (max-width: 768px) {
    .mcl-table-head { display: none; }
    .mcl-table-row {
        flex-direction: column;
        padding: 20px 0 !important;
    }
    .mcl-col {
        padding: 10px 30px !important;
    }
    .mcl-col::before {
        content: attr(data-label) " : ";
        font-weight: 900;
        font-size: 0.75rem;
        color: #999;
        display: block;
        width: 100%;
        margin-bottom: 5px;
    }
    .mcl-col {
        flex-wrap: wrap;
    }
    .mcl-choix-header h2 { font-size: 28px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-be7e76b *//* Section Vigilance Saint-Sauveur */
.mcl-vigilance-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #fcfcfc;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-vigilance-header {
    padding: 0 0% 60px 0%;
    text-align: center;
}

.mcl-vigilance-header h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin-bottom: 20px !important;
}

.mcl-vigilance-header p {
    font-size: 1.15rem;
    color: #666;
    margin: 0 auto !important;
}

/* Grille d'alertes */
.mcl-alert-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 0 0% !important;
}

.mcl-alert-card {
    background: #ffffff;
    padding: 30px !important;
    border: 1px solid #eee;
    border-radius: 4px;
    text-align: center;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.mcl-alert-card:hover {
    border-color: #F58408;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    transform: translateY(-5px);
}

/* Icône d'alerte CSS avec animation */
.mcl-alert-icon {
    width: 50px;
    height: 50px;
    background: #222;
    border-radius: 50%;
    margin-bottom: 20px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mcl-alert-card:hover .mcl-alert-icon {
    background: #F58408;
}

.mcl-alert-icon span {
    width: 4px;
    height: 18px;
    background: #fff;
    position: relative;
}

.mcl-alert-icon span::after {
    content: "";
    position: absolute;
    width: 4px;
    height: 4px;
    background: #fff;
    bottom: -8px;
    left: 0;
}

/* Animation Pulse Orange au hover */
.mcl-alert-card:hover .mcl-alert-icon::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 2px solid #F58408;
    animation: pulse-mcl-alert 1.5s infinite;
}

@keyframes pulse-mcl-alert {
    0% { transform: scale(1); opacity: 0.8; }
    100% { transform: scale(1.6); opacity: 0; }
}

.mcl-alert-card p {
    font-size: 0.95rem;
    font-weight: 700;
    color: #444;
    line-height: 1.4;
    margin: 0 !important;
}

/* Footer avec barre de statut */
.mcl-vigilance-footer {
    padding: 60px 0% 0 0%;
}

.mcl-status-bar {
    background: #222;
    color: #fff;
    padding: 25px 40px !important;
    border-radius: 4px;
    border-left: 6px solid #F58408;
    text-align: center;
}

.mcl-status-bar p {
    margin: 0 !important;
    font-size: 1.1rem;
}

.mcl-status-bar strong {
    color: #F58408;
}

/* Responsive */
@media (max-width: 1100px) {
    .mcl-alert-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
    .mcl-alert-grid { grid-template-columns: 1fr; }
    .mcl-vigilance-header h2 { font-size: 28px !important; }
    .mcl-status-bar { padding: 20px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5504d35 *//* Section Résidentiel Sainte-Adèle */
.mcl-residential-adele {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-res-content {
    padding: 0 0% !important;
}

/* Titre avec ligne d'accentuation */
.mcl-res-title-group {
    margin-bottom: 50px !important;
}

.mcl-res-title-group h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin: 0 0 15px 0 !important;
    line-height: 1.2;
}

.mcl-title-line {
    width: 80px;
    height: 6px;
    background-color: #F58408; /* Orange MCL */
}

/* Grille de texte */
.mcl-res-text-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    align-items: flex-start;
}

.mcl-res-main-text {
    flex: 1 1 400px;
}

.mcl-res-main-text p {
    font-size: 1.2rem;
    line-height: 1.8;
    color: #444;
    margin: 0 !important;
}

/* Boîte de mise en valeur (Highlight) */
.mcl-res-highlight-box {
    flex: 1 1 400px;
    background: linear-gradient(to right, #fcfcfc, #f7f7f7);
    padding: 40px !important;
    border-left: 5px solid #222222; /* Gris Anthracite */
    position: relative;
}

.mcl-res-highlight-box p {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #555;
    margin: 0 !important;
    font-style: italic;
}

/* Petit rappel orange sur la boîte */
.mcl-res-highlight-box::after {
    content: "";
    position: absolute;
    top: 0;
    left: -5px;
    height: 30px;
    width: 5px;
    background-color: #F58408;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-res-content {
        padding: 0 20px !important;
    }
    .mcl-res-title-group h2 {
        font-size: 30px !important;
    }
    .mcl-res-highlight-box {
        padding: 30px !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ceae55e *//* Section Résidentielle Saint-Sauveur */
.mcl-residential-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 120px 0 !important;
    background-color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-res-flex-container {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0% !important;
    gap: 60px;
}

/* Header Latéral */
.mcl-res-side-header {
    flex: 1 1 300px;
}

.mcl-badge-stability {
    display: inline-flex;
    align-items: center;
    background: #f4f4f4;
    padding: 8px 15px !important;
    border-radius: 50px;
    margin-bottom: 25px;
}

.mcl-badge-icon {
    width: 10px;
    height: 10px;
    background: #F58408;
    border-radius: 50%;
    margin-right: 10px;
}

.mcl-badge-stability p {
    font-size: 0.8rem;
    font-weight: 900;
    text-transform: uppercase;
    color: #222;
    margin: 0 !important;
    letter-spacing: 1px;
}

.mcl-res-side-header h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    line-height: 1.1;
    margin-bottom: 25px !important;
}

.mcl-orange-bar-small {
    width: 50px;
    height: 6px;
    background: #F58408;
}

/* Corps de texte */
.mcl-res-main-content {
    flex: 2 1 500px;
}

.mcl-lead-text {
    font-size: 1.4rem;
    color: #222;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 30px !important;
}

.mcl-res-main-content p {
    font-size: 1.1rem;
    color: #555;
    line-height: 1.8;
    margin-bottom: 30px !important;
}

/* Encadré Spécial Chalet */
.mcl-chalet-special {
    background-color: #f9f9f9;
    padding: 40px !important;
    border-radius: 4px;
    border-left: 5px solid #222;
}

.mcl-chalet-special h3 {
    font-size: 1.2rem !important;
    font-weight: 800;
    color: #222;
    margin-bottom: 15px !important;
}

.mcl-chalet-special p {
    font-size: 1rem;
    font-style: italic;
    color: #666;
    margin: 0 !important;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-res-flex-container {
        padding: 0 20px !important;
        gap: 40px;
    }
    .mcl-res-side-header h2 {
        font-size: 30px !important;
    }
    .mcl-lead-text {
        font-size: 1.2rem;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f3d1500 *//* Section Commerciale Saint-Sauveur */
.mcl-commercial-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #f4f4f4; /* Fond technique gris léger */
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-comm-sauveur-box {
    margin: 0 0% !important;
    background: #ffffff;
    border-top: 10px solid #222222; /* Ligne de force anthracite */
    box-shadow: 0 30px 60px rgba(0,0,0,0.05);
}

/* Header B2B */
.mcl-comm-header-b2b {
    padding: 60px 60px 40px 60px !important;
}

.mcl-comm-tag {
    display: inline-block;
    color: #F58408;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 0.85rem;
    margin-bottom: 15px;
}

.mcl-comm-header-b2b h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin: 0 !important;
    line-height: 1.1;
}

/* Layout Split */
.mcl-comm-split-layout {
    display: flex;
    flex-wrap: wrap;
    padding: 0 60px 60px 60px !important;
    gap: 50px;
}

.mcl-comm-text-side {
    flex: 1.5 1 400px;
}

.mcl-comm-impact {
    font-size: 1.3rem;
    font-weight: 700;
    color: #222;
    line-height: 1.4;
    margin-bottom: 25px !important;
}

.mcl-comm-text-side p {
    font-size: 1.1rem;
    color: #555;
    line-height: 1.7;
}

/* Boîte de Focus technique */
.mcl-comm-focus-box {
    flex: 1 1 300px;
    background-color: #222;
    color: #fff;
    padding: 40px !important;
    position: relative;
}

.mcl-comm-focus-box h3 {
    color: #F58408 !important;
    font-size: 1.25rem !important;
    font-weight: 800;
    margin-bottom: 15px !important;
}

.mcl-comm-focus-box p {
    font-size: 0.95rem;
    line-height: 1.6;
    color: #bbb;
    margin-bottom: 25px !important;
}

.mcl-focus-footer {
    font-size: 0.85rem;
    font-weight: 900;
    color: #ffffff;
    border-top: 1px solid rgba(255,255,255,0.1);
    padding-top: 20px;
}

/* Illustration CSS discrète (Engrenage) */
.mcl-focus-icon {
    width: 30px;
    height: 30px;
    border: 4px dotted #F58408;
    border-radius: 50%;
    margin-bottom: 20px;
    opacity: 0.6;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-comm-sauveur-box { margin: 0 20px !important; }
    .mcl-comm-header-b2b, .mcl-comm-split-layout { padding: 40px 30px !important; }
    .mcl-comm-header-b2b h2 { font-size: 28px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-959f5d3 *//* Section Efficacité Énergétique Saint-Sauveur */
.mcl-efficacite-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-eff-container {
    margin: 0 0% !important;
}

/* Header avec icône CSS */
.mcl-eff-header {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 50px !important;
}

.mcl-eff-icon-box {
    width: 70px;
    height: 70px;
    background-color: #F58408;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* Petite feuille stylisée en CSS */
.mcl-icon-leaf {
    width: 25px;
    height: 25px;
    background-color: #fff;
    border-radius: 0 15px;
    transform: rotate(-10deg);
}

.mcl-eff-header h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin: 0 !important;
    line-height: 1.2;
}

/* Grille de contenu */
.mcl-eff-content {
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
    margin-bottom: 50px !important;
}

.mcl-eff-text {
    flex: 1.5 1 400px;
}

.mcl-eff-text p {
    font-size: 1.15rem;
    line-height: 1.8;
    color: #555;
    margin-bottom: 25px !important;
}

/* Liste des facteurs */
.mcl-eff-factors {
    flex: 1 1 300px;
    background-color: #f9f9f9;
    padding: 40px !important;
    border-top: 5px solid #222;
}

.mcl-factors-title {
    font-weight: 900;
    font-size: 1.1rem;
    color: #222;
    margin-bottom: 20px !important;
    text-transform: uppercase;
}

.mcl-factors-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.mcl-factors-list li {
    font-size: 1.05rem;
    color: #444;
    padding: 10px 0 10px 25px;
    position: relative;
    border-bottom: 1px solid #eee;
}

.mcl-factors-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #F58408;
    font-weight: 900;
}

/* Footer Section */
.mcl-eff-footer {
    border-left: 6px solid #F58408;
    padding: 20px 40px !important;
    background-color: #222;
    color: #ffffff;
}

.mcl-eff-footer p {
    font-size: 1.1rem;
    font-weight: 300;
    margin: 0 !important;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-eff-container { margin: 0 20px !important; }
    .mcl-eff-header { flex-direction: column; align-items: flex-start; gap: 20px; }
    .mcl-eff-header h2 { font-size: 28px !important; }
    .mcl-eff-content { gap: 40px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a259018 *//* Section Zones Desservies MCL */
.mcl-zones-section {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #222222; /* Fond sombre pour faire ressortir l'orange */
    color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-zones-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0 10% !important;
    gap: 80px;
}

/* Illustration Radar CSS */
.mcl-zones-visual {
    flex: 1 1 300px;
    text-align: center;
}

.mcl-radar-map {
    position: relative;
    width: 150px;
    height: 150px;
    margin: 0 auto 40px auto;
    background: rgba(245, 132, 8, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mcl-center-pin {
    width: 12px;
    height: 12px;
    background: #F58408;
    border-radius: 50%;
    z-index: 5;
    box-shadow: 0 0 15px #F58408;
}

.mcl-wave {
    position: absolute;
    width: 100%;
    height: 100%;
    border: 2px solid #F58408;
    border-radius: 50%;
    opacity: 0;
    animation: radar-pulse 3s infinite;
}

.delay-1 { animation-delay: 1.5s; }

@keyframes radar-pulse {
    0% { transform: scale(0.2); opacity: 0.8; }
    100% { transform: scale(1.5); opacity: 0; }
}

.mcl-hq-box {
    background: rgba(255,255,255,0.05);
    padding: 25px !important;
    border-radius: 4px;
    border-left: 4px solid #F58408;
}

.mcl-hq-label {
    color: #F58408;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 0.75rem;
    margin-bottom: 10px !important;
}

.mcl-hq-box address {
    font-style: normal;
    font-size: 1.1rem;
    line-height: 1.4;
}

/* Liste des Villes */
.mcl-zones-content {
    flex: 1.5 1 400px;
}

.mcl-zones-content h2 {
    color: #ffffff !important;
    font-size: 38px !important;
    font-weight: 900;
    margin-bottom: 30px !important;
    line-height: 1.1;
}

.mcl-zones-content p {
    color: #bbbbbb;
    font-size: 1.15rem;
    margin-bottom: 40px !important;
}

.mcl-villes-grid {
    list-style: none !important;
    padding: 0 !important;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.mcl-villes-grid li {
    font-size: 1rem;
    font-weight: 700;
    color: #ffffff;
    padding: 12px 20px;
    background: rgba(255,255,255,0.05);
    border-left: 3px solid #F58408;
    transition: background 0.3s ease;
}

.mcl-villes-grid li:hover {
    background: rgba(245, 132, 8, 0.2);
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-zones-container { padding: 0 20px !important; gap: 50px; }
    .mcl-zones-content h2 { font-size: 30px !important; }
    .mcl-villes-grid { grid-template-columns: 1fr; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c544a37 *//* Section Comparaison SEO Saint-Sauveur */
.mcl-seo-comparison-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-seo-header-v2 {
    text-align: center;
    padding: 0 0% 60px 0%;
}

.mcl-seo-header-v2 h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin-top: 30px !important;
    line-height: 1.2;
}

/* Illustration Search & Data CSS */
.mcl-visual-search {
    position: relative;
    width: 80px;
    height: 80px;
    margin: 0 auto;
}

.mcl-data-lines {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    gap: 5px;
}

.mcl-data-lines span {
    width: 4px;
    height: 20px;
    background: #F58408;
    animation: data-flow 1.5s infinite ease-in-out;
}

.mcl-data-lines span:nth-child(2) { animation-delay: 0.2s; height: 35px; }
.mcl-data-lines span:nth-child(3) { animation-delay: 0.4s; }

@keyframes data-flow {
    0%, 100% { transform: scaleY(1); opacity: 0.5; }
    50% { transform: scaleY(1.5); opacity: 1; }
}

.mcl-search-lens {
    position: absolute;
    width: 40px;
    height: 40px;
    border: 4px solid #222;
    border-radius: 50%;
    top: 10px;
    left: 10px;
    background: rgba(255,255,255,0.8);
    z-index: 2;
}

.mcl-search-lens::after {
    content: "";
    position: absolute;
    width: 4px;
    height: 20px;
    background: #222;
    bottom: -15px;
    right: -8px;
    transform: rotate(-45deg);
}

/* Tableau d'intentions */
.mcl-table-responsive-wrapper {
    padding: 0 0% !important;
}

.mcl-intent-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 10px;
}

.mcl-intent-table thead th {
    background-color: #222222;
    color: #ffffff;
    padding: 20px !important;
    text-align: left;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 1px;
}

.mcl-intent-table tbody tr {
    background-color: #f9f9f9;
    transition: transform 0.2s ease;
}

.mcl-intent-table tbody tr:hover {
    transform: scale(1.01);
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.mcl-intent-table td {
    padding: 20px !important;
    color: #555;
    font-size: 1rem;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.mcl-intent-table td:first-child {
    font-weight: 700;
    color: #222;
    border-left: 1px solid #eee;
}

.mcl-intent-table td:last-child {
    font-weight: 800;
    color: #F58408;
    border-right: 4px solid #F58408;
}

/* Responsive Mobile */
@media (max-width: 768px) {
    .mcl-intent-table thead { display: none; }
    .mcl-intent-table tbody tr { display: block; margin-bottom: 25px; border: 1px solid #eee; }
    .mcl-intent-table td {
        display: block;
        text-align: right;
        padding-left: 50% !important;
        position: relative;
        border: none !important;
    }
    .mcl-intent-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 20px;
        font-weight: 900;
        text-transform: uppercase;
        font-size: 0.7rem;
        color: #999;
    }
    .mcl-seo-header-v2 h2 { font-size: 28px !important; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b9f15a1 *//* Section FAQ Saint-Sauveur MCL */
.mcl-faq-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #f9f9f9;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-faq-sauveur-header {
    text-align: center;
    padding: 0 0% 60px 0%;
}

.mcl-faq-sauveur-header h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin-bottom: 20px !important;
}

.mcl-faq-divider {
    width: 60px;
    height: 5px;
    background-color: #F58408;
    margin: 0 auto;
}

/* Grille de cartes FAQ */
.mcl-faq-sauveur-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    padding: 0 0% !important;
}

.mcl-faq-card {
    flex: 1 1 calc(50% - 30px);
    background-color: #ffffff;
    padding: 40px !important;
    border-radius: 4px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    border-top: 4px solid #eee;
    transition: all 0.3s ease;
}

.mcl-faq-card:hover {
    border-top-color: #F58408;
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
}

/* Icône de Question */
.mcl-faq-icon-q {
    width: 30px;
    height: 30px;
    background-color: #F58408;
    border-radius: 50%;
    margin-bottom: 20px;
    position: relative;
}

.mcl-faq-icon-q::after {
    content: "?";
    position: absolute;
    color: white;
    font-weight: 900;
    width: 100%;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.1rem;
}

.mcl-faq-card h3 {
    font-size: 1.3rem !important;
    font-weight: 800;
    color: #222;
    margin-bottom: 20px !important;
    line-height: 1.3;
}

.mcl-faq-card p {
    font-size: 1rem;
    line-height: 1.6;
    color: #666;
    margin: 0 !important;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-faq-card {
        flex: 1 1 100%;
    }
    .mcl-faq-sauveur-header h2 {
        font-size: 30px !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-da386f0 *//* Section Lexique Saint-Sauveur MCL */
.mcl-lexique-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #ffffff;
}

.mcl-full-width {
    width: 100% !important;
}

.mcl-lexique-header {
    padding: 0 0% 60px 0%;
}

.mcl-lexique-header h2 {
    font-size: 38px !important;
    font-weight: 900;
    color: #222222;
    margin-bottom: 20px !important;
}

.mcl-accent-line {
    width: 60px;
    height: 5px;
    background-color: #F58408;
}

/* Structure en lignes */
.mcl-lexique-container {
    padding: 0 0% !important;
}

.mcl-lexique-entry {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #eee;
    padding: 30px 0 !important;
    transition: all 0.3s ease;
}

.mcl-lexique-entry:hover {
    background-color: #fcfcfc;
}

.mcl-lexique-entry:last-child {
    border-bottom: none;
}

/* Bloc Terme */
.mcl-term-box {
    flex: 1 1 250px;
}

.mcl-term {
    font-size: 1.15rem;
    font-weight: 900;
    color: #F58408; /* Orange MCL */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    padding-left: 20px;
}

.mcl-term::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background-color: #222;
}

/* Bloc Définition */
.mcl-def-box {
    flex: 2 1 400px;
}

.mcl-def-box p {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #555;
    margin: 0 !important;
}

/* Responsive */
@media (max-width: 768px) {
    .mcl-lexique-entry {
        flex-direction: column;
    }
    .mcl-term-box {
        margin-bottom: 10px;
    }
    .mcl-lexique-header h2 {
        font-size: 30px !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a3d4fa1 *//* Section Finale Saint-Sauveur MCL */
.mcl-final-cta-sauveur {
    font-family: 'Roboto', sans-serif;
    width: 100% !important;
    margin: 0 !important;
    padding: 100px 0 !important;
    background-color: #ffffff;
}

.mcl-cta-container {
    padding: 0 0% !important;
}

.mcl-cta-main-box {
    background-color: #222222;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 30px 60px rgba(0,0,0,0.15);
}

.mcl-cta-intro {
    padding: 60px 60px 40px 60px !important;
    text-align: center;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.mcl-cta-intro h2 {
    color: #ffffff !important;
    font-size: 38px !important;
    font-weight: 900;
    margin-bottom: 20px !important;
}

.mcl-cta-intro p {
    color: #bbbbbb;
    font-size: 1.2rem;
    max-width: 800px;
    margin: 0 auto !important;
}

/* Grille des 3 CTA */
.mcl-cta-grid-actions {
    display: flex;
    flex-wrap: wrap;
    padding: 40px !important;
    gap: 20px;
}

.mcl-action-card {
    flex: 1 1 300px;
    background: rgba(255,255,255,0.03);
    padding: 30px !important;
    border: 1px solid rgba(255,255,255,0.1);
    text-align: center;
    transition: all 0.3s ease;
}

.mcl-action-card:hover {
    background: rgba(255,255,255,0.07);
    border-color: #F58408;
    transform: translateY(-5px);
}

.mcl-action-card h3 {
    color: #ffffff !important;
    font-size: 1.2rem !important;
    font-weight: 800;
    margin-bottom: 15px !important;
}

.mcl-action-card p {
    color: #999;
    font-size: 0.95rem;
    margin-bottom: 25px !important;
    height: 40px;
}

/* Boutons */
.mcl-btn-cta {
    display: block;
    padding: 15px !important;
    text-decoration: none;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 1px;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.mcl-btn-cta.orange {
    background-color: #F58408;
    color: #ffffff !important;
}

.mcl-btn-cta.dark {
    background-color: transparent;
    color: #ffffff !important;
    border: 2px solid #ffffff;
}

.mcl-btn-cta:hover {
    background-color: #ffffff;
    color: #222222 !important;
}

/* Footer de la box */
.mcl-footer-brand-info {
    background: #1a1a1a;
    padding: 30px 60px !important;
    text-align: center;
    font-size: 0.9rem;
    color: #777;
}

.mcl-info-row p {
    margin: 5px 0 !important;
}

/* Responsive */
@media (max-width: 991px) {
    .mcl-cta-container { padding: 0 20px !important; }
    .mcl-cta-intro { padding: 40px 20px !important; }
    .mcl-cta-intro h2 { font-size: 28px !important; }
    .mcl-cta-grid-actions { padding: 20px !important; }
}/* End custom CSS */