.elementor-462 .elementor-element.elementor-element-03bb9b6{--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:10rem;--padding-bottom:5rem;--padding-left:2rem;--padding-right:2rem;}.elementor-462 .elementor-element.elementor-element-03bb9b6:not(.elementor-motion-effects-element-type-background), .elementor-462 .elementor-element.elementor-element-03bb9b6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.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-462 .elementor-element.elementor-element-64aac9b img{width:100%;max-width:100%;height:100%;object-fit:cover;object-position:center center;}.elementor-462 .elementor-element.elementor-element-b8feb7b{--display:flex;--position:absolute;top:0px;--z-index:1;}.elementor-462 .elementor-element.elementor-element-b8feb7b:not(.elementor-motion-effects-element-type-background), .elementor-462 .elementor-element.elementor-element-b8feb7b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-c8a9ed0 );}body:not(.rtl) .elementor-462 .elementor-element.elementor-element-b8feb7b{left:0px;}body.rtl .elementor-462 .elementor-element.elementor-element-b8feb7b{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-462 .elementor-element.elementor-element-4e3ac52{z-index:1;text-align:start;}.elementor-462 .elementor-element.elementor-element-4e3ac52 .elementor-heading-title{font-family:var( --e-global-typography-fb5d64b-font-family ), Sans-serif;font-size:var( --e-global-typography-fb5d64b-font-size );font-weight:var( --e-global-typography-fb5d64b-font-weight );line-height:var( --e-global-typography-fb5d64b-line-height );letter-spacing:var( --e-global-typography-fb5d64b-letter-spacing );color:var( --e-global-color-64df594 );}.elementor-462 .elementor-element.elementor-element-ed79683{--display:flex;--min-height:4px;--border-radius:50px 50px 50px 50px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-462 .elementor-element.elementor-element-ed79683:not(.elementor-motion-effects-element-type-background), .elementor-462 .elementor-element.elementor-element-ed79683 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-b8c1405 );}.elementor-462 .elementor-element.elementor-element-ed79683.e-con{--align-self:flex-start;}.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-462 .elementor-element.elementor-element-8a10f9e{width:var( --container-widget-width, 50% );max-width:50%;margin:0.5rem 0rem calc(var(--kit-widget-spacing, 0px) + 0rem) 0rem;--container-widget-width:50%;--container-widget-flex-grow:0;z-index:1;text-align:start;font-family:"Inter", Sans-serif;font-size:1.4rem;font-weight:500;line-height:1.4;color:var( --e-global-color-64df594 );}.elementor-462 .elementor-element.elementor-element-8a10f9e p{margin-block-end:0px;}.elementor-462 .elementor-element.elementor-element-8a10f9e a{color:var( --e-global-color-64df594 );}.elementor-462 .elementor-element.elementor-element-279f168{--display:flex;--padding-top:4rem;--padding-bottom:4rem;--padding-left:2rem;--padding-right:2rem;}.elementor-462 .elementor-element.elementor-element-279f168:not(.elementor-motion-effects-element-type-background), .elementor-462 .elementor-element.elementor-element-279f168 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-462 .elementor-element.elementor-element-4e3ac52 .elementor-heading-title{font-size:var( --e-global-typography-fb5d64b-font-size );line-height:var( --e-global-typography-fb5d64b-line-height );letter-spacing:var( --e-global-typography-fb5d64b-letter-spacing );}}@media(max-width:767px){.elementor-462 .elementor-element.elementor-element-03bb9b6{--padding-top:7rem;--padding-bottom:4rem;--padding-left:1rem;--padding-right:1rem;}.elementor-462 .elementor-element.elementor-element-4e3ac52 .elementor-heading-title{font-size:var( --e-global-typography-fb5d64b-font-size );line-height:var( --e-global-typography-fb5d64b-line-height );letter-spacing:var( --e-global-typography-fb5d64b-letter-spacing );}.elementor-462 .elementor-element.elementor-element-8a10f9e{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-462 .elementor-element.elementor-element-279f168{--padding-top:2rem;--padding-bottom:2rem;--padding-left:1rem;--padding-right:1rem;}}/* Start custom CSS for image, class: .elementor-element-64aac9b */.elementor-462 .elementor-element.elementor-element-64aac9b{
    inset: 0
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b8feb7b */.elementor-462 .elementor-element.elementor-element-b8feb7b{
    inset: 0
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ed79683 */.elementor-462 .elementor-element.elementor-element-ed79683{
    width: 160px;
    max-width: 40%;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b5e3c58 */#room-buttons 
   { display: grid;
   grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
   gap: 20px; margin-bottom: 40px; }
   .room-button { background: #fff;
   padding: 20px;
   border-radius: 16px;
   text-align: center;
   cursor: pointer;
   transition: 0.3s;
   border: 1px solid #eee;
   } 
.room-button.selected
   { background: #f0f0f0;
   border-color: var(--e-global-color-primary, #0073e6);
   }
.circle-img { width: 150px; height: 150px; object-fit: cover; border-radius: 50%!important; } .room-button div { font-size: 20px; font-weight: 600; color: #333; } /* Furniture list */ 
#furniture-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 20px; margin-bottom: 40px; } 
.furniture-card { background: #fff; border-radius: 16px; padding: 20px; text-align: center; border: 1px solid #f0f0f0; transition: 0.3s; } 
.furniture-card img { width: 100%; object-fit: cover; border-radius: 12px; margin-bottom: 15px; height: 120px; } 
.furniture-card h4{ height: 40px; margin-bottom: 10px; font-size: 16px; color: #333; } 
.furniture-card p { color: #22427c; font-weight: 600; margin-bottom: 15px; } 
.quantity-control { display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 12px; } 
.quantity-control button { background: var(--e-global-color-primary, #0073e6); color: white; border: none; min-width: 40px; border-radius: 8px; padding: 4px 12px; font-size: 20px; cursor: pointer; transition: background 0.3s; } 
.quantity-control button:hover { background: var(--e-global-color-accent, #005bb5); } 
.quantity-control span { font-size: 20px; width: 30px; text-align: center; color: #333; } /* Selected items list (en bas) */ 
#selected-list-container { background: #fff;; margin-top: 40px; padding: 20px; } 
.selected-item { display: flex; justify-content: space-between; align-items: center; background: #fafafa; padding: 10px; border-radius: 8px; margin-bottom: 10px; } 
.selected-item img { width: 50px; height: 50px; object-fit: cover; border-radius: 8px; margin-right: 10px; } 
.selected-item span { font-size: 16px; } 
.remove-button { background: none; border: none; color: red; font-size: 16px; cursor: pointer; }
.remove-button:hover { background: red;
opacity: 60% ;border: none; color: white;}
#sticky-summary { position: sticky; bottom: 12px; background: #fff; border-top: 2px solid #ddd; padding: 12px 20px; display: flex; justify-content: space-between; align-items: center; z-index: 999; } .summary-info { display: flex; flex-direction: column; font-size: 14px; } #sticky-summary button { background: var(--e-global-color-primary, #0073e6); color: #fff; padding: 10px 18px; border-radius: 6px; font-weight: bold; cursor: pointer; border: none; } /* Responsive */ 
@media (max-width: 768px) { #furniture-list { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap:10px; } #room-buttons { display: flex !important; flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; gap: 10px; -webkit-overflow-scrolling: touch; } .room-button { flex: 0 0 auto; min-width: 120px; scroll-snap-align: start; }} 

/* Mobile + tablette (≤ 1024px) */
@media (max-width: 1024px) {
    #room-buttons {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 12px; /* espace entre les cartes  /* permet de laisser un bout du 3e visible */
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    .room-button {
        flex: 0 0 clamp(130px, 45%, 180px); /* largeur adaptative */
        scroll-snap-align: start;
        background: #fff;
        padding: 18px;
        border-radius: 16px;
        border: 1px solid #eee;
        text-align: center;
    }

    .circle-img {
        width: clamp(80px, 25vw, 100px);
        height: clamp(80px, 25vw, 100px);
        border-radius: 50%!important;
        object-fit: cover;
        margin: 0 auto 10px;
    }
}


#room-pagination {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-top: 8px;
}

#room-pagination .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ccc;
    transition: background 0.3s;
}

#room-pagination .dot.active {
    background: var(--e-global-color-primary, #0073e6);
}/* End custom CSS */