.elementor-636 .elementor-element.elementor-element-b28d83d{--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;--gap:20px 0px;--row-gap:20px;--column-gap:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-636 .elementor-element.elementor-element-82fb996{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:020px 0px;--row-gap:020px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-636 .elementor-element.elementor-element-b403590{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-636 .elementor-element.elementor-element-b403590 .elementor-heading-title{font-family:var( --e-global-typography-cf6cef2-font-family ), Sans-serif;font-size:var( --e-global-typography-cf6cef2-font-size );font-weight:var( --e-global-typography-cf6cef2-font-weight );line-height:var( --e-global-typography-cf6cef2-line-height );color:var( --e-global-color-text );}.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-636 .elementor-element.elementor-element-4d9f7cf{font-family:var( --e-global-typography-817e9dd-font-family ), Sans-serif;font-size:var( --e-global-typography-817e9dd-font-size );font-weight:var( --e-global-typography-817e9dd-font-weight );line-height:var( --e-global-typography-817e9dd-line-height );color:#363636;}.elementor-636 .elementor-element.elementor-element-d854200{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:150px;--padding-bottom:100px;--padding-left:50px;--padding-right:50px;}.elementor-636 .elementor-element.elementor-element-d854200 > .elementor-shape-top svg, .elementor-636 .elementor-element.elementor-element-d854200 > .e-con-inner > .elementor-shape-top svg{width:calc(149% + 1.3px);height:82px;transform:translateX(-50%) rotateY(180deg);}.elementor-636 .elementor-element.elementor-element-9b78ca7{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-164810a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-636 .elementor-element.elementor-element-b26b495{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:50px;--padding-right:50px;}.elementor-636 .elementor-element.elementor-element-ff8782e{--display:flex;--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:flex-start;--padding-top:0px;--padding-bottom:10px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-1e654ea{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:left;}.elementor-636 .elementor-element.elementor-element-1e654ea .elementor-heading-title{font-family:var( --e-global-typography-f28c057-font-family ), Sans-serif;font-size:var( --e-global-typography-f28c057-font-size );font-weight:var( --e-global-typography-f28c057-font-weight );line-height:var( --e-global-typography-f28c057-line-height );color:var( --e-global-color-text );}.elementor-636 .elementor-element.elementor-element-710e7d9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:left;}.elementor-636 .elementor-element.elementor-element-710e7d9 .elementor-heading-title{font-family:var( --e-global-typography-f28c057-font-family ), Sans-serif;font-size:var( --e-global-typography-f28c057-font-size );font-weight:var( --e-global-typography-f28c057-font-weight );line-height:var( --e-global-typography-f28c057-line-height );color:var( --e-global-color-text );}.elementor-636 .elementor-element.elementor-element-5b5c0d7{width:var( --container-widget-width, 93% );max-width:93%;--container-widget-width:93%;--container-widget-flex-grow:0;text-align:left;font-family:var( --e-global-typography-817e9dd-font-family ), Sans-serif;font-size:var( --e-global-typography-817e9dd-font-size );font-weight:var( --e-global-typography-817e9dd-font-weight );line-height:var( --e-global-typography-817e9dd-line-height );color:#363636;}.elementor-636 .elementor-element.elementor-element-5b5c0d7.elementor-element{--align-self:flex-start;}.elementor-636 .elementor-element.elementor-element-558eab8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-636 .elementor-element.elementor-element-dcf8e45 img{width:400px;max-width:100%;border-style:solid;border-width:7px 7px 7px 7px;border-color:#FFFFFFA6;border-radius:20px 20px 20px 20px;}.elementor-636 .elementor-element.elementor-element-1713671{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-636 .elementor-element.elementor-element-115b6c5{--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;--border-radius:20px 20px 20px 20px;--padding-top:39px;--padding-bottom:0px;--padding-left:37px;--padding-right:37px;}.elementor-636 .elementor-element.elementor-element-115b6c5:not(.elementor-motion-effects-element-type-background), .elementor-636 .elementor-element.elementor-element-115b6c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-95b5fdc );}.elementor-636 .elementor-element.elementor-element-0a5dda1{--display:flex;--min-height:400px;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:30px;}.elementor-636 .elementor-element.elementor-element-0a5dda1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-636 .elementor-element.elementor-element-b9981b4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:left;}.elementor-636 .elementor-element.elementor-element-b9981b4 .elementor-heading-title{font-family:var( --e-global-typography-f28c057-font-family ), Sans-serif;font-size:var( --e-global-typography-f28c057-font-size );font-weight:var( --e-global-typography-f28c057-font-weight );line-height:var( --e-global-typography-f28c057-line-height );color:var( --e-global-color-text );}.elementor-636 .elementor-element.elementor-element-03510d6{width:var( --container-widget-width, 93% );max-width:93%;--container-widget-width:93%;--container-widget-flex-grow:0;text-align:left;font-family:var( --e-global-typography-817e9dd-font-family ), Sans-serif;font-size:var( --e-global-typography-817e9dd-font-size );font-weight:var( --e-global-typography-817e9dd-font-weight );line-height:var( --e-global-typography-817e9dd-line-height );color:#363636;}.elementor-636 .elementor-element.elementor-element-03510d6.elementor-element{--align-self:flex-start;}.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-636 .elementor-element.elementor-element-7d1d4f8 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-c5459f6-font-family ), Sans-serif;font-size:var( --e-global-typography-c5459f6-font-size );font-weight:var( --e-global-typography-c5459f6-font-weight );text-transform:var( --e-global-typography-c5459f6-text-transform );fill:var( --e-global-color-accent );color:var( --e-global-color-accent );border-style:solid;border-width:1px 1px 1px 1px;border-radius:20px 20px 20px 20px;}.elementor-636 .elementor-element.elementor-element-7d1d4f8 .elementor-button:hover, .elementor-636 .elementor-element.elementor-element-7d1d4f8 .elementor-button:focus{background-color:var( --e-global-color-5a17b3a );}.elementor-636 .elementor-element.elementor-element-7d1d4f8{padding:0px 0px 0px 0px;}.elementor-636 .elementor-element.elementor-element-53ff774{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1366px){.elementor-636 .elementor-element.elementor-element-b28d83d{--padding-top:50px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}.elementor-636 .elementor-element.elementor-element-b403590 .elementor-heading-title{font-size:var( --e-global-typography-cf6cef2-font-size );line-height:var( --e-global-typography-cf6cef2-line-height );}.elementor-636 .elementor-element.elementor-element-4d9f7cf{font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-d854200{--padding-top:150px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}.elementor-636 .elementor-element.elementor-element-b26b495{--padding-top:050px;--padding-bottom:50px;--padding-left:30px;--padding-right:30px;}.elementor-636 .elementor-element.elementor-element-1e654ea .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-710e7d9 .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-5b5c0d7{font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-558eab8{--justify-content:center;}.elementor-636 .elementor-element.elementor-element-dcf8e45 img{height:365px;object-fit:cover;}.elementor-636 .elementor-element.elementor-element-1713671{--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;}.elementor-636 .elementor-element.elementor-element-b9981b4 .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-03510d6{font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-7d1d4f8 .elementor-button{font-size:var( --e-global-typography-c5459f6-font-size );}}@media(max-width:1024px){.elementor-636 .elementor-element.elementor-element-b28d83d{--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;}.elementor-636 .elementor-element.elementor-element-b403590 .elementor-heading-title{font-size:var( --e-global-typography-cf6cef2-font-size );line-height:var( --e-global-typography-cf6cef2-line-height );}.elementor-636 .elementor-element.elementor-element-4d9f7cf{font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-b26b495{--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;}.elementor-636 .elementor-element.elementor-element-1e654ea .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-710e7d9 .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-5b5c0d7{font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-dcf8e45 img{width:100%;height:400px;object-fit:cover;}.elementor-636 .elementor-element.elementor-element-115b6c5{--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-636 .elementor-element.elementor-element-0a5dda1{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-b9981b4 .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-03510d6{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-7d1d4f8 .elementor-button{font-size:var( --e-global-typography-c5459f6-font-size );}}@media(max-width:767px){.elementor-636 .elementor-element.elementor-element-b28d83d{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-636 .elementor-element.elementor-element-b403590 .elementor-heading-title{font-size:var( --e-global-typography-cf6cef2-font-size );line-height:var( --e-global-typography-cf6cef2-line-height );}.elementor-636 .elementor-element.elementor-element-4d9f7cf{font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-d854200 > .elementor-shape-top svg, .elementor-636 .elementor-element.elementor-element-d854200 > .e-con-inner > .elementor-shape-top svg{width:calc(300% + 1.3px);height:46px;}.elementor-636 .elementor-element.elementor-element-d854200{--padding-top:0100px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-636 .elementor-element.elementor-element-b26b495{--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-636 .elementor-element.elementor-element-1e654ea .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-710e7d9 .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-5b5c0d7{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-558eab8{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-dcf8e45 img{height:250px;}.elementor-636 .elementor-element.elementor-element-1713671{--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-636 .elementor-element.elementor-element-115b6c5{--padding-top:20px;--padding-bottom:20px;--padding-left:14px;--padding-right:14px;}.elementor-636 .elementor-element.elementor-element-b9981b4 .elementor-heading-title{font-size:var( --e-global-typography-f28c057-font-size );line-height:var( --e-global-typography-f28c057-line-height );}.elementor-636 .elementor-element.elementor-element-03510d6{font-size:var( --e-global-typography-817e9dd-font-size );line-height:var( --e-global-typography-817e9dd-line-height );}.elementor-636 .elementor-element.elementor-element-7d1d4f8 .elementor-button{font-size:var( --e-global-typography-c5459f6-font-size );}}@media(min-width:768px){.elementor-636 .elementor-element.elementor-element-82fb996{--width:100%;}.elementor-636 .elementor-element.elementor-element-d854200{--content-width:1400px;}.elementor-636 .elementor-element.elementor-element-ff8782e{--width:80%;}.elementor-636 .elementor-element.elementor-element-558eab8{--width:50%;}.elementor-636 .elementor-element.elementor-element-0a5dda1{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-636 .elementor-element.elementor-element-82fb996{--width:100%;}.elementor-636 .elementor-element.elementor-element-ff8782e{--width:100%;}.elementor-636 .elementor-element.elementor-element-558eab8{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-b243b67 */.simulator-container {
            background: white;
            border-radius: 12px;
            padding: 30px 40px;
            box-shadow: 0px 4px 4px 0px #00000040;
            width: 100%;
            max-width: 100%;
            height: auto;
            min-height: 300px;
            display: flex;
            position: relative;
            overflow: hidden;
            margin: 0;
            box-sizing: border-box;
        }

        /* Assurer que le conteneur parent Elementor permet la pleine largeur UNIQUEMENT pour le simulateur */
        .elementor-widget-shortcode:has(.simulator-container),
        .elementor-element:has(.simulator-container) {
            width: 100% !important;
            max-width: 100% !important;
        }

        /* Fallback pour navigateurs qui ne supportent pas :has() */
        .elementor-widget-shortcode .simulator-container,
        .elementor-element .simulator-container {
            width: 100%;
            max-width: 100%;
        }

        /* S'assurer que les colonnes Elementor contenant le simulateur s'adaptent */
        .elementor-column .simulator-container {
            width: 100%;
            max-width: 100%;
        }

        /* Protection : empêcher le débordement */
        .simulator-container * {
            box-sizing: border-box;
        }

        /* Section gauche */
        .left-section {
            width: 65%;
            padding-right: 40px;
        }

        /* Section droite */
        .right-section {
            width: 35%;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            border-left: 2px solid #e8e8e8;
            padding-left: 40px;
        }

        /* Titre principal */
        .simulator-container h2 {
            font-family: 'Poppins', sans-serif;
            font-weight: 700;
            font-size: 24px;
            line-height: 100%;
            letter-spacing: 0%;
            color: #333;
            margin-bottom: 25px;
        }

        /* Groupes de formulaire */
        .simulator-container .form-group {
            margin-bottom: 20px;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .simulator-container .form-group label {
            font-size: 16px;
            font-weight: 400;
            color: #666;
            flex: 1;
        }

        /* Wrapper pour les inputs */
        .simulator-container .input-wrapper {
            display: flex;
            align-items: center;
            position: relative;
        }

        /* Inputs numériques */
        .simulator-container .form-group input[type="number"] {
            padding: 10px 35px 10px 12px;
            border: 2px solid #e8e8e8;
            border-radius: 20px;
            font-size: 14px;
            font-family: 'Raleway', sans-serif;
            width: 100px;
            text-align: center;
            transition: all 0.3s ease;
            background: #fafafa;
            box-shadow: 0px 0px 20px 0px #0000000D;
        }

        .simulator-container .form-group input[type="number"]:focus {
            outline: none;
            border-color: #24AAE2;
            background: white;
        }

        /* Unités des inputs */
        .simulator-container .unit {
            position: absolute;
            right: 12px;
            color: #999;
            font-size: 12px;
            pointer-events: none;
        }

        /* Wrapper pour les selects */
        .simulator-container .select-wrapper {
            position: relative;
        }

        /* Selects */
        .simulator-container select {
            padding: 10px 35px 10px 12px;
            border: 2px solid #e8e8e8;
            border-radius: 20px;
            font-size: 14px;
            font-family: 'Raleway', sans-serif;
            background: #fafafa;
            cursor: pointer;
            appearance: none;
            min-width: 120px;
            transition: all 0.3s ease;
            box-shadow: 0px 0px 20px 0px #0000000D;
        }

        .simulator-container select:focus {
            outline: none;
            border-color: #24AAE2;
            background: white;
        }

        /* Flèche des selects */
        .simulator-container .select-arrow {
            position: absolute;
            right: 12px;
            top: 50%;
            transform: translateY(-50%);
            pointer-events: none;
            color: #999;
            font-size: 10px;
        }

        /* Section des consommables */
        .simulator-container .consumables-section {
            margin-top: 36px;
            padding-top: 31px;
            border-top: 2px solid #e8e8e8;
            margin-bottom: 30px;
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
        }

        .simulator-container .consumables-title {
            font-size: 16px;
            font-weight: 400;
            color: #666;
            margin-bottom: 0;
            flex: 1;
        }

        /* Grille des checkboxes */
        .simulator-container .consumables-grid {
            display: flex;
            flex-direction: column;
            gap: 15px;
            margin-bottom: 0;
            width: auto;
        }

        .simulator-container .checkbox-group {
            display: flex;
            align-items: center;
            justify-content: flex-start;
        }

        .simulator-container .checkbox-wrapper {
            display: flex;
            align-items: center;
            gap: 15px;
            cursor: pointer;
            padding: 8px 12px;
            border-radius: 8px;
            transition: all 0.3s ease;
        }

        /* Checkboxes personnalisées - Plus visibles */
        .simulator-container .custom-checkbox {
            width: 22px;
            height: 22px;
            border: 2px solid #24AAE2;
            border-radius: 4px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s ease;
            flex-shrink: 0;
            background: white;
            box-shadow: 0px 2px 8px 0px #24AAE220;
        }

        .simulator-container .custom-checkbox:focus,
        .simulator-container .custom-checkbox:hover {
            border-color: #016DB8;
            box-shadow: 0px 2px 12px 0px #24AAE230;
            transform: scale(1.05);
        }

        .simulator-container .custom-checkbox.checked {
            background: #24AAE2;
            border-color: #24AAE2;
        }

        .simulator-container .custom-checkbox::after {
            content: '✓';
            color: white;
            font-size: 12px;
            font-weight: bold;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .simulator-container .custom-checkbox.checked::after {
            opacity: 1;
        }

        /* Inputs des checkboxes cachés */
        .simulator-container .checkbox-group input[type="checkbox"] {
            display: none;
        }

        /* Labels des checkboxes */
        .simulator-container .checkbox-group label {
            font-size: 16px;
            color: #666;
            cursor: pointer;
            font-weight: 400;
            user-select: none;
        }

        /* Bouton réinitialiser */
        .reset-button {
            background: #f5f5f5;
            color: #666;
            border: 2px solid #e8e8e8;
            padding: 10px 20px;
            border-radius: 20px;
            font-size: 14px;
            font-family: 'Raleway', sans-serif;
            cursor: pointer;
            transition: all 0.3s ease;
            margin-top: 20px;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        .reset-button:hover {
            background: #24AAE2;
            color: white;
            border-color: #24AAE2;
        }

        .reset-button::before {
            content: '↻';
            font-size: 16px;
        }

        /* Section de l'estimation */
        .simulator-container .estimation-title {
            font-size: 18px;
            font-weight: 500;
            color: #333;
            margin-bottom: 20px;
        }

        .simulator-container .price-display {
            font-family: 'Poppins', sans-serif;
            font-weight: 700;
            font-size: 48px;
            line-height: 100%;
            letter-spacing: 0%;
            text-align: center;
            vertical-align: middle;
            background: linear-gradient(90deg, #24AAE2 0%, #016DB8 100%);
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            margin-bottom: 8px;
        }

        .simulator-container .price-unit {
            font-family: 'Poppins', sans-serif;
            font-weight: 400;
            font-size: 15px;
            line-height: 100%;
            letter-spacing: 0%;
            text-align: center;
            vertical-align: middle;
            color: #666;
            margin-bottom: 20px;
        }

        /* Lien de contact */
        .simulator-container .contact-link {
            color: #24AAE2;
            text-decoration: none;
            font-family: 'Poppins', sans-serif;
            font-weight: 400;
            font-size: 16px;
            line-height: 100%;
            letter-spacing: 0%;
            text-align: center;
            vertical-align: middle;
            transition: all 0.3s ease;
        }

        .simulator-container .contact-link:hover {
            color: #016DB8;
        }

        .simulator-container .contact-link::before {
            content: '› ';
            margin-right: 5px;
        }

        /* Style pour demander un devis */
        .simulator-container .quote-request {
            font-family: 'Poppins', sans-serif;
            font-weight: 600;
            font-size: 20px;
            color: #24AAE2;
            margin-bottom: 8px;
            text-align: center;
        }

        .simulator-container .quote-link {
            background: linear-gradient(90deg, #24AAE2 0%, #016DB8 100%);
            color: white;
            text-decoration: none;
            padding: 12px 24px;
            border-radius: 25px;
            font-family: 'Poppins', sans-serif;
            font-weight: 500;
            font-size: 16px;
            transition: all 0.3s ease;
            display: inline-block;
        }

        .simulator-container .quote-link:hover {
            transform: translateY(-2px);
            box-shadow: 0px 4px 15px rgba(36, 170, 226, 0.3);
        }

        /* ===== STYLES DE LA POPUP - RESPONSIVE OPTIMISÉ ===== */

        .popup-overlay {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.6);
            z-index: 1000;
            opacity: 0;
            transition: opacity 0.3s ease;
            padding: 20px;
            box-sizing: border-box;
        }

        .popup-overlay.show {
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 1;
        }

        .popup-content {
            background: white;
            border-radius: 12px;
            padding: 40px;
            max-width: 500px;
            width: 100%;
            max-height: calc(100vh - 40px);
            overflow-y: auto;
            position: relative;
            transform: scale(0.7);
            transition: transform 0.3s ease;
            box-shadow: 0px 4px 4px 0px #00000040;
            margin: 0 auto;
        }

        .popup-overlay.show .popup-content {
            transform: scale(1);
        }

        .popup-close {
            position: absolute;
            top: 15px;
            right: 20px;
            background: none;
            border: none;
            font-size: 24px;
            cursor: pointer;
            color: #666;
            width: 30px;
            height: 30px;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: color 0.3s ease;
            z-index: 10;
        }

        .popup-close:hover {
            color: #24AAE2;
        }

        .popup-header {
            text-align: center;
            margin-bottom: 30px;
            padding-right: 40px;
        }

        .popup-header h2 {
            color: #24AAE2;
            margin-bottom: 10px;
            font-size: 24px;
            font-family: 'Poppins', sans-serif;
            font-weight: 700;
        }

        .popup-header p {
            color: #666;
            margin: 0;
            font-size: 16px;
            font-weight: 400;
        }

        .popup-form {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        .popup-form .form-row {
            display: flex;
            gap: 15px;
        }

        .popup-form .form-group {
            flex: 1;
            margin-bottom: 0;
            display: block;
        }

        .popup-form label {
            display: block;
            margin-bottom: 8px;
            font-weight: 500;
            color: #333;
            font-size: 16px;
            font-family: 'Poppins', sans-serif;
        }

        .popup-form input {
            width: 100%;
            padding: 12px 16px;
            border: 2px solid #e8e8e8;
            border-radius: 12px;
            font-size: 14px;
            font-family: 'Raleway', sans-serif;
            transition: all 0.3s ease;
            background: #fafafa;
            box-shadow: 0px 0px 10px 0px #0000000A;
            box-sizing: border-box;
        }

        .popup-form input:focus {
            outline: none;
            border-color: #24AAE2;
            background: white;
            box-shadow: 0 0 0 3px rgba(36, 170, 226, 0.1);
        }

        .simulation-summary {
            background: linear-gradient(180deg, #E9F7FC 0%, #FFFFFF 100%);
            padding: 20px;
            border-radius: 12px;
            margin: 20px 0;
            border: 2px solid #24AAE21A;
        }

        .simulation-summary h3 {
            color: #24AAE2;
            margin-bottom: 15px;
            font-size: 18px;
            font-family: 'Poppins', sans-serif;
            font-weight: 700;
        }

        .summary-item {
            display: flex;
            justify-content: space-between;
            margin-bottom: 8px;
            color: #666;
            font-size: 16px;
            font-weight: 400;
        }

        .summary-item:last-child {
            margin-bottom: 0;
            padding-top: 10px;
            border-top: 2px solid #24AAE21A;
            font-weight: 700;
            color: #24AAE2;
        }

        .popup-submit {
            background: linear-gradient(90deg, #24AAE2 0%, #016DB8 100%);
            color: white;
            border: none;
            padding: 15px 30px;
            border-radius: 12px;
            font-size: 16px;
            font-weight: 600;
            font-family: 'Poppins', sans-serif;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: 0px 0px 20px 0px #24AAE21A;
            min-height: 52px;
        }

        .popup-submit:hover {
            transform: translateY(-2px);
            box-shadow: 0px 4px 20px 0px #24AAE240;
        }

        .required {
            color: #ff5722;
        }

        /* ===== RESPONSIVE ===== */
        @media (max-width: 768px) {
            .simulator-container {
                flex-direction: column;
                padding: 20px;
            }
            
            .left-section {
                width: 100%;
                padding-right: 0;
                margin-bottom: 30px;
            }
            
            .right-section {
                width: 100%;
                padding-left: 0;
                border-left: none;
                border-top: 2px solid #e8e8e8;
                padding-top: 25px;
            }

            .simulator-container .form-group {
                flex-direction: column;
                align-items: stretch;
                gap: 12px;
            }

            .simulator-container .consumables-section {
                flex-direction: column;
                gap: 15px;
            }

            .reset-button {
                align-self: center;
            }
        }/* End custom CSS */