.elementor-468 .elementor-element.elementor-element-48b7b4d{--display:flex;--min-height:680px;--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:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-b23b2e0.elementor-element{--align-self:center;}.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-468 .elementor-element.elementor-element-5fc88d7{padding:10px 0px 0px 0px;text-align:center;}.elementor-468 .elementor-element.elementor-element-5fc88d7 .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:64px;font-weight:800;color:#FFFFFF;}.elementor-468 .elementor-element.elementor-element-124120d{padding:50px 300px 0px 300px;text-align:center;}.elementor-468 .elementor-element.elementor-element-124120d .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:20px;font-weight:300;color:#FFFFFF;}.elementor-468 .elementor-element.elementor-element-7b5d4f8.elementor-element{--align-self:center;}.elementor-468 .elementor-element.elementor-element-27744e9{--display:flex;--min-height:410px;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;}.elementor-468 .elementor-element.elementor-element-27744e9:not(.elementor-motion-effects-element-type-background), .elementor-468 .elementor-element.elementor-element-27744e9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F9FB;}.elementor-468 .elementor-element.elementor-element-2bd45b6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:10px 20px 50px 20px;}.elementor-468 .elementor-element.elementor-element-1e27a63{--display:flex;--min-height:410px;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;}.elementor-468 .elementor-element.elementor-element-1e27a63:not(.elementor-motion-effects-element-type-background), .elementor-468 .elementor-element.elementor-element-1e27a63 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F9FB;}.elementor-468 .elementor-element.elementor-element-ba059d2{--display:flex;--justify-content:flex-start;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:50px;--padding-left:50px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-ba059d2.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-468 .elementor-element.elementor-element-ad58aa0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-468 .elementor-element.elementor-element-ad58aa0 .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:48px;font-weight:800;color:#000000;}.elementor-468 .elementor-element.elementor-element-9ae66ec .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:16px;font-weight:300;line-height:48px;color:#000000;}.elementor-468 .elementor-element.elementor-element-35a57e6 .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:16px;font-weight:300;line-height:77px;color:#000000;}.elementor-468 .elementor-element.elementor-element-97be0e0{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-468 .elementor-element.elementor-element-544706a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 10px 50px 10px;}.elementor-468 .elementor-element.elementor-element-8c20c08{--display:flex;--min-height:410px;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:100px;--padding-right:100px;}.elementor-468 .elementor-element.elementor-element-8c20c08:not(.elementor-motion-effects-element-type-background), .elementor-468 .elementor-element.elementor-element-8c20c08 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F5FE;}.elementor-468 .elementor-element.elementor-element-8c20c08.e-con{--align-self:center;}.elementor-468 .elementor-element.elementor-element-2a63fd7{padding:20px 0px 0px 0px;}.elementor-468 .elementor-element.elementor-element-dbb5559{--display:flex;--min-height:410px;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;}.elementor-468 .elementor-element.elementor-element-dbb5559:not(.elementor-motion-effects-element-type-background), .elementor-468 .elementor-element.elementor-element-dbb5559 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-468 .elementor-element.elementor-element-a577df6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:10px 20px 50px 20px;}.elementor-468 .elementor-element.elementor-element-6e8b5f2{--display:flex;--min-height:410px;--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;}.elementor-468 .elementor-element.elementor-element-6e8b5f2:not(.elementor-motion-effects-element-type-background), .elementor-468 .elementor-element.elementor-element-6e8b5f2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-468 .elementor-element.elementor-element-2b503f9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:10px 20px 50px 20px;}.elementor-468 .elementor-element.elementor-element-b7dd06b{--display:flex;--min-height:410px;--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;--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-468 .elementor-element.elementor-element-b7dd06b:not(.elementor-motion-effects-element-type-background), .elementor-468 .elementor-element.elementor-element-b7dd06b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-468 .elementor-element.elementor-element-3759065{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-468 .elementor-element.elementor-element-ba059d2{--width:62%;}}@media(max-width:767px){.elementor-468 .elementor-element.elementor-element-48b7b4d{--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-5fc88d7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:50px 0px 0px 20px;text-align:start;}.elementor-468 .elementor-element.elementor-element-5fc88d7 .elementor-heading-title{font-size:25px;line-height:1.5em;}.elementor-468 .elementor-element.elementor-element-124120d{padding:0px 20px 0px 20px;text-align:justify;}.elementor-468 .elementor-element.elementor-element-124120d .elementor-heading-title{font-size:12px;line-height:1.4em;}.elementor-468 .elementor-element.elementor-element-27744e9{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-2bd45b6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 20px 0px 20px;}.elementor-468 .elementor-element.elementor-element-1e27a63{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-ba059d2{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-468 .elementor-element.elementor-element-ad58aa0{text-align:start;}.elementor-468 .elementor-element.elementor-element-ad58aa0 .elementor-heading-title{font-size:20px;line-height:1.4em;}.elementor-468 .elementor-element.elementor-element-9ae66ec{text-align:justify;}.elementor-468 .elementor-element.elementor-element-35a57e6{text-align:justify;}.elementor-468 .elementor-element.elementor-element-34aa1d8{padding:0px 0px 0px 0px;}.elementor-468 .elementor-element.elementor-element-8c20c08{--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-468 .elementor-element.elementor-element-2a63fd7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-468 .elementor-element.elementor-element-dbb5559{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-a577df6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 20px 50px 20px;}.elementor-468 .elementor-element.elementor-element-6e8b5f2{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-2b503f9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 20px 50px 20px;}.elementor-468 .elementor-element.elementor-element-b7dd06b{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-468 .elementor-element.elementor-element-3759065{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-b23b2e0 */.badge-clim-container {
        width: 100%;
        display: flex;
        justify-content: center;
        padding: 15px 0;
    }

    .badge-glass-clim {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background-color: rgba(255, 255, 255, 0.1); 
        border: 1px solid rgba(255, 255, 255, 0.3);
        padding: 10px 25px;
        border-radius: 100px;
        color: #89cff0;
        font-family: 'Plus Jakarta Sans', sans-serif;
        font-weight: 700;
        font-size: 15px;
        letter-spacing: 0.3px;
        backdrop-filter: blur(4px); /* Effet flou pour le glassmorphism */
        -webkit-backdrop-filter: blur(4px);
        transition: all 0.3s ease;
        text-align: center;
    }

    .badge-glass-clim i {
        margin-right: 10px;
        font-size: 1.1rem;
        flex-shrink: 0; /* Empêche l'icône de s'écraser */
    }

    /* --- OPTIMISATION MOBILE --- */
    @media (max-width: 768px) {
        .badge-clim-container {
            padding: 10px;
        }

        .badge-glass-clim {
            padding: 8px 16px;
            font-size: 13px; /* Taille de police lisible mais compacte */
            line-height: 1.2;
            max-width: 95%; /* Évite de toucher les bords de l'écran */
        }
        
        .badge-glass-clim i {
            font-size: 14px;
            margin-right: 6px;
        }
    }

    /* Pour les très petits écrans (320px) */
    @media (max-width: 380px) {
        .badge-glass-clim {
            font-size: 11px;
            padding: 6px 12px;
        }
    }/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-5fc88d7 */.text-orange-light { color: #ffe0b2; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-48b7b4d */.elementor-468 .elementor-element.elementor-element-48b7b4d{
      background: radial-gradient(circle at center, rgba(108, 52, 175, 0.85) 0%, rgba(74, 29, 138, 0.95) 100%),
                        linear-gradient(135deg, #6c34af 0%, #4a1d8a 100%);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2bd45b6 */.trust-box {
        background: #ffffff;
        padding: 30px 20px;
        border-radius: 15px;
        text-align: center;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        transition: transform 0.3s ease;
        border-top: 4px solid transparent;
        height: 100%;
    }
 .border-red { border-top-color: #dc3545; }
    .border-orange { border-top-color: #fd7e14; }
    .border-yellow { border-top-color: #ffc107; }
    .border-green { border-top-color: #198754; }
    .trust-box:hover {
        transform: translateY(-5px);
    }
     .trust-icon-bg {
        width: 50px;
        height: 50px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 20px;
        font-size: 1.4rem;
    }

    /* Couleurs icônes et fonds pastels */
    .bg-red-soft { background-color: #fff5f5; }
    .text-red { color: #dc3545; }

    .bg-orange-soft { background-color: #fff9f2; }
    .text-orange { color: #fd7e14; }

    .bg-yellow-soft { background-color: #fffdf2; }
    .text-yellow { color: #ffc107; }

    .bg-green-soft { background-color: #f2faf6; }
    .text-green { color: #198754; }

    .x-small { font-size: 0.75rem; }

    /* Responsive mobile : 2 par ligne */
    @media (max-width: 767px) {
        .trust-box { padding: 20px 10px; }
        .trust-box h3 { font-size: 0.85rem; }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-34aa1d8 */.clim-services-page {
        font-family: 'Plus Jakarta Sans', sans-serif;
        color: #1a1a1a;
        line-height: 1.6;
    }

    .main-section-title {
        font-size: 24px;
        font-weight: 800;
        margin: 40px 0 25px 0;
    }

    /* 1. TYPES DE SYSTÈMES (Box Bleue) */
    .systems-types-box {
        background: #f0f7ff;
        border: 1px solid #e0eeff;
        border-radius: 20px;
        padding: 30px;
        margin-bottom: 50px;
    }
    .box-title {
        color: #007bff;
        font-size: 18px;
        font-weight: 800;
        margin-bottom: 25px;
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .systems-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
    .system-item {
        display: flex;
        gap: 12px;
        font-size: 13px;
    }
    .system-item i { color: #007bff; font-size: 18px; margin-top: 2px; }
    .system-item span { color: #666; display: block; margin-top: 4px; }

    /* 2. SERVICES (Icônes Carrées) */
    .service-block {
        display: flex;
        gap: 20px;
        margin-bottom: 35px;
        align-items: flex-start;
    }
    .service-icon-sq {
        width: 45px; height: 45px;
        border-radius: 12px;
        display: flex; align-items: center; justify-content: center;
        flex-shrink: 0; font-size: 20px;
    }
    .s-red { background: #fff1f2; color: #e11d48; }
    .s-orange { background: #fff7ed; color: #ea580c; }
    .s-pink { background: #fdf2f8; color: #db2777; }
    
    .service-content h4 { font-size: 17px; font-weight: 800; margin-bottom: 8px; }
    .service-content p { font-size: 14px; color: #555; margin: 0; }

    /* 3. MARQUES GRID */
    .brands-repair-grid {
        background: #f8fafc;
        border: 1px solid #f1f5f9;
        border-radius: 20px;
        padding: 40px;
        margin: 50px 0;
    }
    .brands-title-inner { text-align: center; font-size: 18px; font-weight: 800; margin-bottom: 30px; }
    .brands-row {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }
    .brand-item { text-align: center; font-size: 14px; }
    .brand-item span { color: #888; font-size: 12px; }

    /* 4. AVANTAGES (Timeline) */
    .benefits-timeline { width: 100%; }
    .benefit-card {
        background: #fff;
        border: 1px solid #f1f5f9;
        border-left: 5px solid #ccc;
        border-radius: 12px;
        padding: 20px;
        margin-bottom: 15px;
        display: flex;
        align-items: center;
        gap: 20px;
        box-shadow: 0 4px 10px rgba(0,0,0,0.03);
    }
    .benefit-card i { font-size: 24px; flex-shrink: 0; }
    .benefit-card div { font-size: 13px; }
    .benefit-card span { color: #666; }

    .b-red { border-left-color: #e11d48; } .b-red i { color: #e11d48; }
    .b-yellow { border-left-color: #eab308; } .b-yellow i { color: #eab308; }
    .b-blue { border-left-color: #2563eb; } .b-blue i { color: #2563eb; }
    .b-green { border-left-color: #16a34a; } .b-green i { color: #16a34a; }

    /* RESPONSIVE */
    @media (max-width: 768px) {
        .systems-grid, .brands-row { grid-template-columns: 1fr; }
        .brands-row { grid-template-columns: repeat(2, 1fr); }
        .benefit-card { flex-direction: column; align-items: flex-start; gap: 10px; }
        .main-section-title { font-size: 20px; }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-544706a *//* LOGIQUE STICKY */
    .sticky-sidebar-region {
        position: -webkit-sticky;
        position: sticky;
        top: 100px;
        z-index: 120;
        display: flex;
        flex-direction: column;
        gap: 20px;
        font-family: 'Plus Jakarta Sans', sans-serif;
    }

    /* CARTE PRINCIPALE (VIOLETTE) */
    .card-intervention-sticky {
        border-radius: 20px;
        overflow: hidden;
        background: white;
        border: 1px solid #f1f5f9;
    }

    .header-purple {
        background: #5d2b9d; /* Violet de l'image */
        padding: 30px 20px;
        color: white;
    }

    .header-purple i { font-size: 2.8rem; display: block; margin-bottom: 10px; }
    .header-purple .x-small { opacity: 0.85; font-size: 0.75rem; }

    .body-white { padding: 25px; background: white; }

    /* BOUTONS */
    .btn-outline-purple-phone {
        display: flex !important;
        justify-content: center;
        width: 100%;
        background-color: transparent !important;
        color: #5d2b9d !important;
        border: 2px solid #5d2b9d !important;
        font-weight: 700 !important;
        padding: 12px !important;
        border-radius: 12px !important;
        margin-bottom: 12px;
        text-decoration: none;
        transition: 0.3s;
    }

    .btn-outline-purple-phone:hover {
        background-color: #5d2b9d !important;
        color: white !important;
    }

    .btn-solid-purple-quote {
        display: flex !important;
        justify-content: center;
        width: 100%;
        background-color: #4a1d82 !important; /* Violet plus foncé */
        color: white !important;
        border: none !important;
        border-radius: 12px !important;
        padding: 14px !important;
        font-weight: 700 !important;
        margin-bottom: 20px;
        text-decoration: none;
        transition: 0.3s;
    }

    .btn-solid-purple-quote:hover {
        background-color: #381463 !important;
        transform: translateY(-2px);
    }

    /* LISTES */
    .list-bullet-purple { list-style: none; padding: 0; margin: 0; font-size: 13px; color: #64748b; }
    .list-bullet-purple li { margin-bottom: 8px; display: flex; align-items: center; gap: 10px; }
    .list-bullet-purple i { color: #5d2b9d; font-size: 1.1rem; }

    .card-info-sidebar {
        background: white;
        border: 1px solid #f1f5f9;
        border-radius: 20px;
        padding: 25px;
    }

    .sidebar-title {
        font-size: 16px;
        font-weight: 800;
        margin-bottom: 18px;
        padding-bottom: 10px;
        border-bottom: 1px solid #f1f5f9;
        color: #1e293b;
    }

    /* ZONES SPÉCIFIQUES */
    .list-zones-sidebar { list-style: none; padding: 0; margin: 0; }
    .list-zones-sidebar li { display: flex; align-items: center; gap: 12px; margin-bottom: 15px; font-size: 14px; color: #475569; }
    .color-purple { color: #5d2b9d; font-size: 1.2rem; }

    /* SERVICES SPÉCIFIQUES */
    .list-links-sidebar { list-style: none; padding: 0; margin: 0; }
    .list-links-sidebar li { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
    .list-links-sidebar a { text-decoration: none; color: #334155; font-weight: 600; font-size: 14px; transition: 0.2s; }
    .list-links-sidebar a:hover { color: #5d2b9d; }

    .mini-icon-circle-purple {
        width: 36px; height: 36px;
        background: #f5f3ff; /* Fond lilas très clair */
        border-radius: 10px;
        display: flex; align-items: center; justify-content: center;
        font-size: 16px; color: #5d2b9d;
    }

    /* ANIMATION */
    .animate-pulse { animation: pulse-purple 2s infinite; }
    @keyframes pulse-purple {
        0% { transform: scale(1); opacity: 1; }
        50% { transform: scale(1.15); opacity: 0.8; }
        100% { transform: scale(1); opacity: 1; }
    }

    @media (max-width: 991px) {
        .sticky-sidebar-region { position: static; margin-top: 30px; }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2a63fd7 *//* 1. STYLE DU CONTENEUR (ELEMENTOR) */

/* 2. STYLE DU TITRE */
.services-main-title {
    font-size: 22px;
    font-weight: 800;
    color: #1a1a1a;
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.services-main-title i {
    color: #6d28d9; /* Violet */
    font-size: 24px;
}

/* 3. GRILLE RESPONSIVE */
.services-grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

/* 4. DESIGN DES CARTES */
.service-card-item {
    background: #ffffff;
    border-radius: 16px;
    padding: 25px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid #f1f5f9;
}

.service-card-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* 5. WRAPPERS D'ICÔNES */
.icon-wrap {
    width: 45px;
    height: 45px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 20px;
}

/* COULEURS DES ICÔNES */
.bg-soft-purple { background: #f5f3ff; color: #7c3aed; }
.bg-soft-red    { background: #fef2f2; color: #dc2626; }
.bg-soft-blue   { background: #eff6ff; color: #2563eb; }
.bg-soft-orange { background: #fff7ed; color: #ea580c; }
.bg-soft-green  { background: #f0fdf4; color: #16a34a; }
.bg-soft-teal   { background: #f0fdfa; color: #0d9488; }

/* 6. TEXTES */
.service-details h3 {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 8px;
    color: #111827;
}

.service-details p {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.5;
    margin: 0;
}

/* 7. RESPONSIVE MOBILE */
@media (max-width: 991px) {
    .services-grid-container {
        grid-template-columns: 1fr; /* Passage en 1 colonne */
    }
    
    .service-card-item {
        padding: 20px;
    }
    
    .services-main-title {
        font-size: 18px;
        justify-content: center;
        text-align: center;
    }
}
</style>/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8c20c08 *//* Style du conteneur parent global */
.elementor-468 .elementor-element.elementor-element-8c20c08 {
    /* Fond lilas/gris très clair de l'image */
    background-color: #f8f7ff !important; 

    /* Bordure supérieure violette épaisse (Élément clé du design) */
    border-top: 10px solid #6d28d9 !important; 
        border-bottom: 10px solid #6d28d9 !important; 
    /* Espacement interne pour aérer le bloc */
    padding: 80px 20px !important;
    
    /* Alignement et centrage */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Optimisation pour le mobile */
@media (max-width: 768px) {
    .elementor-468 .elementor-element.elementor-element-8c20c08 {
        padding: 50px 15px !important;
        /* Bordure légèrement plus fine sur mobile pour l'équilibre visuel */
        border-top-width: 8px !important; 
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a577df6 *//* TITRE */

.faq-title-main{
text-align:center !important;
font-weight:800 !important;
margin-bottom:50px !important;
font-size:clamp(1.5rem,4vw,2.5rem) !important;
color:#1a1a1a !important;
}

/* ITEM */

.faq-item{
border-radius:15px !important;
border:1px solid #f0f0f0 !important;
margin-bottom:20px !important;
background:#ffffff !important;
overflow:hidden !important;
transition:all .3s ease !important;
}

.faq-item:hover{
box-shadow:0 10px 25px rgba(0,0,0,0.05) !important;
}

/* QUESTION */

.faq-question{
width:100% !important;
text-align:left !important;
padding:25px 30px !important;
font-size:1.05rem !important;
font-weight:700 !important;
border:none !important;
background:#ffffff !important;
color:#1a1a1a !important;
cursor:pointer !important;
display:flex !important;
justify-content:space-between !important;
align-items:center !important;
outline:none !important;
}

/* PROTECTION HOVER ELEMENTOR */

.faq-question:hover{
background:#ffffff !important;
color:#1a1a1a !important;
}

.faq-question:focus{
background:#ffffff !important;
color:#1a1a1a !important;
}

.faq-question:active{
background:#ffffff !important;
color:#1a1a1a !important;
}

/* ICON */

.faq-question::after{
content:"▾";
font-size:20px !important;
color:#d8348b !important;
transition:transform .3s ease !important;
}

/* OPEN STATE */

.faq-item.active .faq-question::after{
transform:rotate(180deg) !important;
}

/* ANSWER */

.faq-answer{
max-height:0 !important;
overflow:hidden !important;
padding:0 30px !important;
font-size:.95rem !important;
color:#64748b !important;
line-height:1.6 !important;
background:#ffffff !important;
transition:max-height .4s ease,padding .3s ease !important;
}

/* OPEN ANSWER */

.faq-item.active .faq-answer{
max-height:350px !important;
padding:0 30px 25px 30px !important;
}

/* MOBILE */

@media(max-width:768px){

.faq-question{
padding:20px !important;
font-size:.95rem !important;
}

.faq-answer{
padding:0 20px 20px 20px !important;
font-size:.9rem !important;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2b503f9 *//* 1. CONTENEUR PRINCIPAL */
.choose-us-section {
    max-width: 1000px;
    margin: 40px auto;
    padding: 20px;
    font-family: 'Plus Jakarta Sans', sans-serif;
}

/* 2. TITRE */
.choose-title {
    font-size: 24px;
    font-weight: 800;
    color: #1a1a1a;
    margin-bottom: 40px;
    text-align: left;
}

/* 3. LISTE DES ARGUMENTS */
.choose-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.choose-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

/* 4. STYLE DES ICÔNES */
.choose-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.choose-item:hover .choose-icon {
    transform: scale(1.05);
}

/* COULEURS SPÉCIFIQUES */
.bg-soft-purple { background-color: #f5f3ff; color: #7c3aed; }
.bg-soft-red    { background-color: #fef2f2; color: #dc2626; }
.bg-soft-orange { background-color: #fff7ed; color: #ea580c; }
.bg-soft-green  { background-color: #f0fdf4; color: #16a34a; }

/* 5. CONTENU TEXTUEL */
.choose-content h3 {
    font-size: 16px;
    font-weight: 700;
    color: #111827;
    margin: 0 0 6px 0;
}

.choose-content p {
    font-size: 14px;
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

/* 6. RESPONSIVE MOBILE */
@media (max-width: 768px) {
    .choose-title {
        text-align: center;
        font-size: 20px;
    }
    
    .choose-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 15px;
    }
    
    .choose-content p {
        font-size: 13.5px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3759065 *//* 1. SECTION PARENTE (PLEINE LARGEUR) */
.full-width-cta-section {

    background-color: #9d6cd2; /* Violet fidèle à l'image */
    padding: 80px 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Plus Jakarta Sans', sans-serif;
}

/* 2. CONTENEUR INTERNE */
.cta-inner-content {
    max-width: 1000px;
    text-align: center;
    color: #ffffff;
}

/* 3. ICÔNE SUPÉRIEURE */
.location-icon-top {
    font-size: 35px;
    margin-bottom: 20px;
    opacity: 0.9;
}

/* 4. TYPOGRAPHIE */
.cta-main-title {
    font-size: clamp(1.8rem, 4vw, 2.5rem);
    font-weight: 800;
    margin-bottom: 15px;
    letter-spacing: -0.5px;
}

.cta-subtitle {
    font-size: 16px;
    line-height: 1.6;
    max-width: 700px;
    margin: 0 auto 40px auto;
    opacity: 0.95;
}

/* 5. BOUTONS */
.cta-button-group {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 30px;
    border-radius: 12px;
    font-weight: 700;
    font-size: 15px;
    text-decoration: none !important;
    transition: all 0.3s ease;
}

/* Bouton Blanc */
.btn-white-call {
    background-color: #ffffff;
    color: #9d6cd2;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.btn-white-call:hover {
    transform: translateY(-3px);
    background-color: #f8f9fa;
}

/* Bouton Glassmorphism (Transparent) */
.btn-glass-quote {
    background-color: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(5px);
}

.btn-glass-quote:hover {
    background-color: rgba(255, 255, 255, 0.25);
    transform: translateY(-3px);
}

/* 6. RESPONSIVE MOBILE */
@media (max-width: 768px) {
    .full-width-cta-section {
        padding: 60px 20px;
    }
    
    .cta-button-group {
        flex-direction: column;
        align-items: center;
    }
    
    .cta-btn {
        width: 100%;
        max-width: 300px;
        justify-content: center;
    }
}/* End custom CSS */