.elementor-98110 .elementor-element.elementor-element-c8d633e{--display:flex;--margin-top:3%;--margin-bottom:3%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-98110 .elementor-element.elementor-element-aede9dd .woocommerce-breadcrumb > a{color:#BEBBBB;}.elementor-98110 .elementor-element.elementor-element-5722832{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-98110 .elementor-element.elementor-element-74efd84{--display:flex;--gap:1px 1px;--row-gap:1px;--column-gap:1px;}.elementor-widget-woocommerce-product-title .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-98110 .elementor-element.elementor-element-787d516 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:23px;font-weight:600;line-height:35px;}.elementor-98110 .elementor-element.elementor-element-6505c7b{--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:space-between;--gap:35px 35px;--row-gap:35px;--column-gap:35px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-4334a4b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-4334a4b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-98110 .elementor-element.elementor-element-5ae2ead{--display:flex;--min-height:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-d0033ee{--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;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-ad8b691{--display:flex;--gap:1px 1px;--row-gap:1px;--column-gap:1px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-98110 .elementor-element.elementor-element-a0e4ccd{--display:flex;--gap:1px 1px;--row-gap:1px;--column-gap:1px;}.elementor-98110 .elementor-element.elementor-element-11d25f4 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:23px;font-weight:600;line-height:35px;}.elementor-98110 .elementor-element.elementor-element-c183bf5{--display:flex;}.elementor-98110 .elementor-element.elementor-element-5044314{--display:flex;}.elementor-98110 .elementor-element.elementor-element-fe2f942{text-align:start;}.woocommerce .elementor-98110 .elementor-element.elementor-element-fe2f942 .woocommerce-product-details__short-description{font-size:14px;}.elementor-98110 .elementor-element.elementor-element-a153543{--display:flex;}.elementor-98110 .elementor-element.elementor-element-7579543{--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:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-98110 .elementor-element.elementor-element-d757fd2{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-98110 .elementor-element.elementor-element-9edfb7d .cart button, .elementor-98110 .elementor-element.elementor-element-9edfb7d .cart .button{padding:14px 10px 14px 10px;color:#FFFFFF;background-color:var( --e-global-color-accent );transition:all 0.2s;}.elementor-98110 .elementor-element.elementor-element-9edfb7d{--button-spacing:9px;}.elementor-98110 .elementor-element.elementor-element-9edfb7d .quantity .qty{padding:0px 0px 0px 0px;color:#000000;transition:all 0.2s;}.elementor-98110 .elementor-element.elementor-element-a0d2dfe{--display:flex;--min-height:39px;--justify-content:flex-end;--margin-top:-52px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:0;}.woocommerce .elementor-widget-woocommerce-product-price .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-98110 .elementor-element.elementor-element-59fd336{text-align:end;}.woocommerce .elementor-98110 .elementor-element.elementor-element-59fd336 .price{color:#000000;font-family:"Inter", Sans-serif;font-size:28px;font-weight:700;line-height:17px;}.elementor-98110 .elementor-element.elementor-element-81342d3{--display:flex;--margin-top:8%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.woocommerce .elementor-98110 .elementor-element.elementor-element-a59198b .woocommerce-tabs .woocommerce-Tabs-panel{border-width:1px 1px 1px 1px;margin-top:-1px;}.elementor-98110 .elementor-element.elementor-element-9884389{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0%;--padding-bottom:20%;--padding-left:0%;--padding-right:0%;}.elementor-98110 .elementor-element.elementor-element-a9cfc01{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-db8a1c4{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:1px 1px;--row-gap:1px;--column-gap:1px;--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-98110 .elementor-element.elementor-element-2ab66e1 .elementor-heading-title{font-family:"Inter", Sans-serif;font-weight:600;text-transform:uppercase;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-98110 .elementor-element.elementor-element-4bdf5f2{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-98110 .elementor-element.elementor-element-4bdf5f2 .elementor-divider-separator{width:100%;}.elementor-98110 .elementor-element.elementor-element-4bdf5f2 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-98110 .elementor-element.elementor-element-5dd9371{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.woocommerce .elementor-widget-woocommerce-product-related.elementor-wc-products .products > h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del {font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products ul.products li.product{text-align:center;--button-align-display:flex;--button-align-direction:column;--button-align-justify:space-between;border-style:solid;border-width:0px 0px 0px 0px;border-radius:5px;padding:21px 21px 21px 21px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products  ul.products{grid-column-gap:26px;grid-row-gap:11px;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products .attachment-woocommerce_thumbnail{border-style:none;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:"Inter", Sans-serif;font-size:11px;font-weight:600;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products ul.products li.product .price del {font-family:"Inter", Sans-serif;font-weight:600;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products ul.products li.product .button{color:var( --e-global-color-secondary );background-color:var( --e-global-color-accent );font-family:"Inter", Sans-serif;font-size:11px;font-weight:500;margin-top:14px;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products .added_to_cart{font-family:"Inter", Sans-serif;font-weight:500;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products ul.products li.product span.onsale{display:block;min-width:0px;}@media(max-width:1024px){.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-98110 .elementor-element.elementor-element-c8d633e{--justify-content:center;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:9%;--padding-bottom:0%;--padding-left:10%;--padding-right:10%;}.elementor-98110 .elementor-element.elementor-element-aede9dd .woocommerce-breadcrumb{font-size:9px;}.elementor-98110 .elementor-element.elementor-element-5722832{--padding-top:9%;--padding-bottom:9%;--padding-left:9%;--padding-right:9%;}.elementor-98110 .elementor-element.elementor-element-74efd84{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-787d516 .elementor-heading-title{font-size:19px;line-height:1.5em;}.elementor-98110 .elementor-element.elementor-element-6505c7b{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-98110 .elementor-element.elementor-element-5ae2ead{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-a0e4ccd{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-11d25f4 .elementor-heading-title{font-size:19px;line-height:1.5em;}.elementor-98110 .elementor-element.elementor-element-5044314{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-98110 .elementor-element.elementor-element-9edfb7d .cart button, .elementor-98110 .elementor-element.elementor-element-9edfb7d .cart .button{font-size:10px;}.woocommerce .elementor-98110 .elementor-element.elementor-element-a59198b .woocommerce-tabs ul.wc-tabs li a{font-size:11px;}.woocommerce .elementor-98110 .elementor-element.elementor-element-a59198b .woocommerce-tabs .woocommerce-Tabs-panel{font-size:10px;}.woocommerce .elementor-98110 .elementor-element.elementor-element-a59198b .woocommerce-tabs .woocommerce-Tabs-panel h2{font-size:16px;}.elementor-98110 .elementor-element.elementor-element-9884389{--margin-top:10%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-98110 .elementor-element.elementor-element-a9cfc01{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-98110 .elementor-element.elementor-element-db8a1c4{--padding-top:10%;--padding-bottom:0%;--padding-left:10%;--padding-right:8%;}.elementor-98110 .elementor-element.elementor-element-2ab66e1 .elementor-heading-title{font-size:18px;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-98110 .elementor-element.elementor-element-2db5094.elementor-wc-products .added_to_cart{font-size:6px;}}@media(min-width:768px){.elementor-98110 .elementor-element.elementor-element-4334a4b{--width:43.98%;}.elementor-98110 .elementor-element.elementor-element-5ae2ead{--width:100%;}.elementor-98110 .elementor-element.elementor-element-a9cfc01{--width:100%;}.elementor-98110 .elementor-element.elementor-element-db8a1c4{--width:100%;}}/* Start custom CSS for woocommerce-product-title, class: .elementor-element-787d516 */.elementor-98110 .elementor-element.elementor-element-787d516{
    line-height: 1.3;
        display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-images, class: .elementor-element-641ace9 *//* =========================================================
   GALERIE PRODUIT WOOCOMMERCE
   3 miniatures + +N / Réduire
   ========================================================= */


.woocommerce-product-gallery {
    --gallery-gap: 10px;
}

/* Grille des miniatures */
.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--gallery-gap);
    margin: 12px 0 0 !important;
    padding: 0 !important;
}

/* Toutes les miniatures masquées par défaut */
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs li {
    display: none !important;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Les 3 premières toujours visibles */
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs li:nth-child(-n+3) {
    display: block !important;
}

/* =========================================================
   BOUTON +N
   ========================================================= */

.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs li.gallery-more {
    display: block !important;
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 8px;
    cursor: pointer;
    background: #222;
}

/* Image utilisée comme fond du bouton */
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs li.gallery-more img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
    margin: 0 !important;
    opacity: .45;
    transition: opacity .25s ease, transform .25s ease;
}

/* Voile sombre */
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs li.gallery-more::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .38);
    pointer-events: none;
}

/* Texte du bouton */
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs li.gallery-more::before {
    content: attr(data-more);
    position: absolute;
    z-index: 2;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    pointer-events: none;
}

/* Hover */
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs li.gallery-more:hover img {
    opacity: .3;
    transform: scale(1.04);
}


/* =========================================================
   GALERIE OUVERTE
   ========================================================= */

.woocommerce-product-gallery.gallery-expanded
.flex-control-nav.flex-control-thumbs li {
    display: block !important;
}

/* Le bouton reste visible en 4e position */
.woocommerce-product-gallery.gallery-expanded
.flex-control-nav.flex-control-thumbs li.gallery-more {
    display: block !important;
}

/* On enlève l'image/voile du bouton */
.woocommerce-product-gallery.gallery-expanded
.flex-control-nav.flex-control-thumbs li.gallery-more::after {
    display: none;
}

.woocommerce-product-gallery.gallery-expanded
.flex-control-nav.flex-control-thumbs li.gallery-more img {
    opacity: 0;
}

/* Texte "− Réduire" */
.woocommerce-product-gallery.gallery-expanded
.flex-control-nav.flex-control-thumbs li.gallery-more::before {
    content: "− Réduire";
    background: #222;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 767px) {

    .woocommerce-product-gallery
    .flex-control-nav.flex-control-thumbs {
        grid-template-columns: repeat(4, 1fr);
        gap: 7px;
    }

    .woocommerce-product-gallery
    .flex-control-nav.flex-control-thumbs li.gallery-more::before {
        font-size: 16px;
    }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-title, class: .elementor-element-11d25f4 */.elementor-98110 .elementor-element.elementor-element-11d25f4{
    line-height: 1.3;
        display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-short-description, class: .elementor-element-fe2f942 */.elementor-98110 .elementor-element.elementor-element-fe2f942 {
    position: relative;
}

.elementor-98110 .elementor-element.elementor-element-fe2f942 .woocommerce-product-details__short-description {
    display: -webkit-box;
    -webkit-line-clamp: 20;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media (max-width: 767px) {
    .elementor-98110 .elementor-element.elementor-element-fe2f942 .woocommerce-product-details__short-description {
        -webkit-line-clamp: 13;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-9c9ba3e *//* =========================================================
   MA SERVANTE — ACCESSOIRES PRODUIT
   SNIPPET 2 / 2 : STYLES

   WPCode > Add Snippet > CSS Snippet
   Insertion : Auto Insert / Site Wide Header

   Préfixe msx- : aucun croisement avec le thème,
   Elementor ou WooCommerce.
   ========================================================= */

#msx-block {
    /* Largeur d'une carte dans le carrousel */
    --msx-w: 220px;
    --msx-gap: 16px;
    --msx-radius: 20px;

    --msx-line: #e5e5e5;
    --msx-line-hover: #b0b0b0;
    --msx-line-on: #222;

    --msx-bg: #fff;
    --msx-text: #222;
    --msx-price: #111;

    display: block;
    width: 100%;
    max-width: 100%;
    margin: 32px 0;
    clear: both;
    box-sizing: border-box;
}

#msx-block *,
#msx-block *::before,
#msx-block *::after {
    box-sizing: border-box;
}

#msx-block .msx-heading {
    margin: 0 0 16px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--msx-text);
}

/* =========================================================
   DÉFILEMENT HORIZONTAL
   ========================================================= */

#msx-block .msx-scroll {
    width: 100%;
    max-width: 100%;

    overflow-x: auto;
    overflow-y: hidden;

    padding: 4px 0 14px;

    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;

    scrollbar-width: thin;
    scrollbar-color: #cfcfcf transparent;
}

#msx-block .msx-scroll::-webkit-scrollbar {
    height: 6px;
}

#msx-block .msx-scroll::-webkit-scrollbar-track {
    background: transparent;
}

#msx-block .msx-scroll::-webkit-scrollbar-thumb {
    background: #cfcfcf;
    border-radius: 3px;
}

#msx-block .msx-row {
    display: flex;
    flex-wrap: nowrap;
    gap: var(--msx-gap);
    width: max-content;
    min-width: 100%;
    margin: 0;
    padding: 0;
}

/* =========================================================
   CARTE
   Le cadre n'entoure que l'image ;
   nom et prix se placent en dessous.
   ========================================================= */

#msx-block .msx-card {
    flex: 0 0 var(--msx-w);
    width: var(--msx-w);
    max-width: 100%;
    min-width: 0;

    display: flex;
    flex-direction: column;

    margin: 0;
    padding: 0;

    scroll-snap-align: start;
}

#msx-block .msx-frame {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    aspect-ratio: 1 / 1;

    margin: 0 0 12px;
    padding: 20px;

    background: var(--msx-bg);
    border: 1px solid var(--msx-line);
    border-radius: var(--msx-radius);

    overflow: hidden;

    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

@media (hover: hover) {
    #msx-block .msx-card:hover .msx-frame {
        border-color: var(--msx-line-hover);
        box-shadow: 0 6px 18px rgba(0, 0, 0, .07);
        transform: translateY(-2px);
    }
}

/* Sélectionné */
#msx-block .msx-card.msx-on .msx-frame {
    border-color: var(--msx-line-on);
    box-shadow: 0 0 0 2px rgba(0, 0, 0, .08);
}

#msx-block .msx-frame img {
    display: block;

    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;

    object-fit: contain;

    pointer-events: none;
}

/* =========================================================
   ZONE CLIQUABLE
   Le label couvre tout le cadre : c'est lui qui bascule
   la case, sans JavaScript.
   ========================================================= */

#msx-block .msx-hit {
    position: absolute;
    inset: 0;

    display: block;
    margin: 0;
    padding: 0;

    cursor: pointer;
    z-index: 2;
}

#msx-block .msx-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* =========================================================
   CASE À COCHER
   ========================================================= */

#msx-block .msx-check {
    position: absolute;
    top: 12px;
    right: 12px;

    width: 26px;
    height: 26px;

    margin: 0;
    padding: 0;

    appearance: none;
    -webkit-appearance: none;

    background: #fff;
    border: 2px solid #d8d8d8;
    border-radius: 8px;

    cursor: pointer;
    opacity: 1;

    transition:
        background-color .15s ease,
        border-color .15s ease;

    z-index: 3;
}

#msx-block .msx-check:checked {
    background: var(--msx-line-on);
    border-color: var(--msx-line-on);
}

#msx-block .msx-check:checked::after {
    content: "";

    position: absolute;
    left: 7px;
    top: 3px;

    width: 6px;
    height: 12px;

    border: solid #fff;
    border-width: 0 2px 2px 0;

    transform: rotate(45deg);
}

#msx-block .msx-check:focus-visible {
    outline: 2px solid var(--msx-line-on);
    outline-offset: 2px;
}

/* Repli si :has() est disponible : l'état visuel
   ne dépend alors même plus du JavaScript. */
#msx-block .msx-card:has(.msx-check:checked) .msx-frame {
    border-color: var(--msx-line-on);
    box-shadow: 0 0 0 2px rgba(0, 0, 0, .08);
}

/* =========================================================
   NOM ET PRIX
   ========================================================= */

#msx-block .msx-name {
    display: block;
    width: 100%;

    margin: 0 0 6px;

    font-size: 15px;
    line-height: 1.35;
    font-weight: 400;

    color: var(--msx-text);
}

#msx-block .msx-price {
    display: block;
    width: 100%;

    margin: auto 0 0;

    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;

    color: var(--msx-price);
}

#msx-block .msx-price .amount,
#msx-block .msx-price bdi,
#msx-block .msx-price ins {
    font: inherit;
    color: inherit;
    text-decoration: none;
    background: none;
}

#msx-block .msx-price del {
    font: inherit;
    font-size: .7em;
    font-weight: 400;
    opacity: .5;
    margin-right: 6px;
}

@media (prefers-reduced-motion: reduce) {
    #msx-block .msx-frame {
        transition: none;
        transform: none !important;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #msx-block {
        --msx-w: 160px;
        --msx-gap: 12px;
        --msx-radius: 16px;
    }

    #msx-block .msx-frame {
        padding: 14px;
    }

    #msx-block .msx-name {
        font-size: 14px;
    }

    #msx-block .msx-price {
        font-size: 18px;
    }

    #msx-block .msx-check {
        top: 9px;
        right: 9px;
        width: 22px;
        height: 22px;
    }

    #msx-block .msx-check:checked::after {
        left: 5px;
        top: 2px;
        width: 5px;
        height: 10px;
    }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-9edfb7d *//* =========================================================
   TM EXTRA PRODUCT OPTIONS — CARTES CHECKBOX
   v3 : la carte est l'élément portant .tm-card-surface
        (posée par le JS : <li> ou <label> selon le markup)
   ========================================================= */

/* =========================================================
   VARIABLES
   ========================================================= */

.tm-card-container {
    --tmc-gap: 20px;
    --tmc-col-min: 220px;
    --tmc-radius: 16px;

    --tmc-border: #e2e2e2;
    --tmc-border-hover: #9a9a9a;
    --tmc-border-active: #222;

    --tmc-bg: #fff;
    --tmc-bg-active: #fafafa;
    --tmc-bg-image: #f5f5f5;

    --tmc-text: #1a1a1a;
    --tmc-price: #a89d28;
}

/* Libellé du groupe : visible par défaut.
   Décommenter pour le masquer.
.tm-card-container > .tc-element-inner-wrap > .tc-epo-element-label,
.tm-card-container > .tc-epo-element-label {
    display: none !important;
}
*/

/* =========================================================
   GRILLE
   ========================================================= */

.tm-card-grid {
    display: grid !important;

    grid-template-columns:
        repeat(auto-fill, minmax(var(--tmc-col-min), 1fr));

    gap: var(--tmc-gap);

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}

.tm-card-grid::before,
.tm-card-grid::after {
    display: none !important;
}

/* =========================================================
   CELLULE DE GRILLE (le <li>)
   ========================================================= */

.tm-card-option {
    float: none !important;
    width: auto !important;

    margin: 0 !important;

    list-style: none !important;
}

/* Si la carte n'est pas le <li> lui-même, le <li> ne sert
   que de cellule : aucun style propre. */
.tm-card-option:not(.tm-card-surface) {
    display: block !important;
    padding: 0 !important;
}

/* =========================================================
   CARTE
   ========================================================= */

.tm-card-surface {
    position: relative;

    display: flex !important;
    flex-direction: column;

    height: 100%;

    margin: 0 !important;
    padding: 16px !important;

    box-sizing: border-box;

    background: var(--tmc-bg);
    border: 1px solid var(--tmc-border);
    border-radius: var(--tmc-radius);

    cursor: pointer;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease,
        background-color 0.2s ease;
}

@media (hover: hover) {
    .tm-card-surface:hover {
        border-color: var(--tmc-border-hover);
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.07);
        transform: translateY(-2px);
    }
}

/* Sélectionné (classe posée sur le <li>) */
.tm-card-option.tm-card-selected .tm-card-surface,
.tm-card-option.tm-card-selected.tm-card-surface {
    background: var(--tmc-bg-active);
    border-color: var(--tmc-border-active);
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.08);
}

.tm-card-option input.tmcp-checkbox:focus-visible {
    outline: 2px solid var(--tmc-border-active);
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .tm-card-surface {
        transition: none;
        transform: none !important;
    }
}

/* =========================================================
   ORDRE INTERNE : image → titre → prix
   ========================================================= */

.tm-card-surface > .tm-card-option-image {
    order: 1;
}

.tm-card-surface > .tc-label-wrap {
    order: 2;
}

.tm-card-surface > .tc-price-wrap {
    order: 3;
}

/* La case n'occupe pas de place dans le flux */
.tm-card-surface > .tc-input-wrap {
    order: 0;

    position: static;

    width: 0;
    height: 0;

    margin: 0;
    padding: 0;
}

/* =========================================================
   IMAGE
   ========================================================= */

.tm-card-option-image {
    width: 100%;
    aspect-ratio: 4 / 3;

    margin: 0 0 14px;
    padding: 10px;

    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    background: var(--tmc-bg-image);
    border-radius: 10px;
}

.tm-card-option-image img {
    display: block;

    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;

    object-fit: contain;
}

/* Image éventuellement rendue par le plugin : on la masque,
   c'est la nôtre qui est positionnée. */
.tm-card-surface > .tc-images,
.tm-card-surface .tmhexcolorimage {
    display: none !important;
}

/* =========================================================
   TITRE
   ========================================================= */

.tm-card-surface > .tc-label-wrap {
    display: block;

    margin: 0 0 10px;

    font-size: 16px;
    line-height: 1.35;
    font-weight: 600;

    color: var(--tmc-text);
}

.tm-card-surface .tm-label,
.tm-card-surface .tc-label,
.tm-card-surface .tm-epo-element-label {
    display: block;

    margin: 0;
    padding: 0;

    font: inherit;
    color: inherit;

    cursor: pointer;
}

/* Sans image, le titre laisse la place à la case */
.tm-card-option.tm-card-no-image .tc-label-wrap {
    padding-right: 38px;
}

/* =========================================================
   PRIX
   ========================================================= */

.tm-card-surface > .tc-price-wrap {
    display: block;

    margin: auto 0 0;
    padding-top: 8px;

    font-size: 17px;
    line-height: 1.3;
    font-weight: 700;

    color: var(--tmc-price);
}

.tm-card-surface .tc-price,
.tm-card-surface .price,
.tm-card-surface .amount,
.tm-card-surface bdi {
    font: inherit;
    color: inherit;
}

.tm-card-surface .tc-price-hidden,
.tm-card-surface .tm-hide {
    display: none !important;
}

/* =========================================================
   CHECKBOX
   ========================================================= */

.tm-card-option input.tmcp-checkbox {
    position: absolute !important;

    top: 14px !important;
    right: 14px !important;

    width: 24px !important;
    height: 24px !important;

    margin: 0 !important;
    padding: 0 !important;

    appearance: none !important;
    -webkit-appearance: none !important;

    background: #fff !important;

    border: 2px solid #b5b5b5 !important;
    border-radius: 6px !important;

    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);

    cursor: pointer;
    opacity: 1 !important;

    transition:
        background-color 0.15s ease,
        border-color 0.15s ease;

    z-index: 2;
}

.tm-card-option input.tmcp-checkbox:checked {
    background: var(--tmc-border-active) !important;
    border-color: var(--tmc-border-active) !important;
}

.tm-card-option input.tmcp-checkbox:checked::after {
    content: "";

    position: absolute;
    left: 6px;
    top: 2px;

    width: 6px;
    height: 12px;

    border: solid #fff;
    border-width: 0 2px 2px 0;

    transform: rotate(45deg);
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .tm-card-container {
        --tmc-gap: 14px;
        --tmc-col-min: 150px;
    }

    .tm-card-surface {
        padding: 12px !important;
        border-radius: 14px;
    }

    .tm-card-surface > .tc-label-wrap {
        font-size: 15px;
        margin-bottom: 8px;
    }

    .tm-card-surface > .tc-price-wrap {
        font-size: 16px;
    }

    .tm-card-option input.tmcp-checkbox {
        top: 10px !important;
        right: 10px !important;

        width: 22px !important;
        height: 22px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-db8a1c4 *//* ─── Avis masqués ─────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-db8a1c4 .grc-category-stars {
    display: none !important;
}

/* ─── Conteneur relatif pour les flèches ───────── */
.elementor-98110 .elementor-element.elementor-element-db8a1c4 section.related {
    position: relative;
}

/* ─── Piste scrollable ─────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-db8a1c4 ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    gap: 6px;
    margin:5px;
    padding: 20px 15px 15px 15px;
    list-style: none;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.elementor-98110 .elementor-element.elementor-element-db8a1c4 ul.products::-webkit-scrollbar {
    height: 6px;
}
.elementor-98110 .elementor-element.elementor-element-db8a1c4 ul.products::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 3px;
}
.elementor-98110 .elementor-element.elementor-element-db8a1c4 ul.products::-webkit-scrollbar-thumb {
    background: #c4c4c4;
    border-radius: 3px;
}

/* ─── Cartes ───────────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-db8a1c4 ul.products li.product {
    flex: 0 0 calc((100% - 48px) / 4);
    max-width: calc((100% - 48px) / 4);
    width: auto !important;
    margin: 0 !important;
    scroll-snap-align: start;
    clear: none !important;
    float: none !important;
}

/* ─── Image / titre / prix ─────────────────────── */
.elementor-98110 .elementor-element.elementor-element-db8a1c4 li.product img {
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: cover;
    display: block;
    margin: 0 0 10px;
}

.elementor-98110 .elementor-element.elementor-element-db8a1c4 .woocommerce-loop-product__title {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    min-height: 0;
    margin: 0 0 6px;
    line-height: 1.3;
}

.elementor-98110 .elementor-element.elementor-element-db8a1c4 li.product .price {
    display: block;
    margin: 0 0 10px;
    line-height: 1.2;
}

.elementor-98110 .elementor-element.elementor-element-db8a1c4 .woocommerce-loop-product__buttons,
.elementor-98110 .elementor-element.elementor-element-db8a1c4 .woocommerce-loop-product__buttons .button {
    margin: 0;
}

/* ─── Flèches ──────────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-db8a1c4 .cm-nav {
    position: absolute;
    top: 38%;
    transform: translateY(-50%);
    z-index: 5;
    width: 40px;
    height: 40px;
    border: 1px solid #ddd;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: opacity .2s, background .2s;
}

.elementor-98110 .elementor-element.elementor-element-db8a1c4 .cm-nav:hover {
    background: #f7f7f7;
}

.elementor-98110 .elementor-element.elementor-element-db8a1c4 .cm-nav[disabled] {
    opacity: 0;
    pointer-events: none;
}

.elementor-98110 .elementor-element.elementor-element-db8a1c4 .cm-nav--prev { left: -18px; }
.elementor-98110 .elementor-element.elementor-element-db8a1c4 .cm-nav--next { right: -18px; }

.elementor-98110 .elementor-element.elementor-element-db8a1c4 .cm-nav svg {
    width: 18px;
    height: 18px;
    stroke: #222;
    stroke-width: 2.5;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* ─── Responsive ───────────────────────────────── */
@media (max-width: 1024px) {
    .elementor-98110 .elementor-element.elementor-element-db8a1c4 ul.products li.product {
        flex: 0 0 calc((100% - 32px) / 3);
        max-width: calc((100% - 32px) / 3);
    }
}

@media (max-width: 767px) {
    .elementor-98110 .elementor-element.elementor-element-db8a1c4 ul.products li.product {
        flex: 0 0 calc((100% - 16px) / 2);
        max-width: calc((100% - 16px) / 2);
    }
    .elementor-98110 .elementor-element.elementor-element-db8a1c4 .cm-nav { display: none; }
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-related, class: .elementor-element-2db5094 *//* ═══════════════════════════════════════════════════
   Clic Monkey — Ma Servante
   Produits similaires : carrousel horizontal
   ═══════════════════════════════════════════════════ */

/* ─── Avis GRC masqués ──────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 .grc-category-stars {
    display: none !important;
}

/* ─── Conteneur (ancrage des flèches) ───────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 section.related {
    position: relative;
}

.elementor-98110 .elementor-element.elementor-element-2db5094 section.related > h2 {
    margin: 0 0 20px;
}

/* ─── Piste scrollable ──────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products,
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.elementor-grid,
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.columns-4 {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    --e-grid-columns: none !important;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    gap: 24px !important;
    margin: 0 !important;
    padding: 15px 10px 40px 20px !important;
    list-style: none;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #c4c4c4 #f0f0f0;
}

.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products::-webkit-scrollbar {
    height: 6px;
}
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 3px;
}
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products::-webkit-scrollbar-thumb {
    background: #c4c4c4;
    border-radius: 3px;
}
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}

/* ─── Cartes : 3 visibles sur desktop ───────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product,
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.columns-4 li.product,
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.elementor-grid li.product,
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product.first,
.elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product.last {
    flex: 0 0 calc((0% - 48px) / 3) !important;
    width: calc((100% - 48px) / 3) !important;
    min-width: calc((50% - 48px) / 3) !important;
    max-width: calc((60% - 48px) / 3) !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 28px !important;
    float: none !important;
    clear: none !important;
    scroll-snap-align:none;
    display: flex;
    flex-direction: column;
}

.elementor-98110 .elementor-element.elementor-element-2db5094 li.product a.woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* ─── Images : carrées, gabarit identique ───────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 li.product img {
    width: 100% !important;
    aspect-ratio: 1 / 1;
    height: auto !important;
    object-fit: cover;
    object-position: center;
    display: block;
    margin: 0 0 12px !important;
}

/* ─── Titre : une seule ligne ───────────────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 .woocommerce-loop-product__title {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    min-height: 0;
    margin: 0 0 6px;
    line-height: 1.3;
}

/* ─── Prix : calé en bas du lien ────────────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 li.product .price {
    display: block;
    margin: auto 0 12px;
    line-height: 1.2;
}

/* ─── Bouton ────────────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 .woocommerce-loop-product__buttons,
.elementor-98110 .elementor-element.elementor-element-2db5094 .woocommerce-loop-product__buttons .button {
    margin: 0;
   
}

/* ─── Flèches de navigation ─────────────────────── */
.elementor-98110 .elementor-element.elementor-element-2db5094 .cm-nav {
    position: absolute;
    top: 34%;
    transform: translateY(-50%);
    z-index: 5;
    width: 40px;
    height: 40px;
    border: 1px solid #e0e0e0;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: opacity .2s ease, background .2s ease;
}

.elementor-98110 .elementor-element.elementor-element-2db5094 .cm-nav:hover {
    background: #f7f7f7;
}

.elementor-98110 .elementor-element.elementor-element-2db5094 .cm-nav[disabled] {
    opacity: 0;
    pointer-events: none;
}

.elementor-98110 .elementor-element.elementor-element-2db5094 .cm-nav--prev { left: -18px; }
.elementor-98110 .elementor-element.elementor-element-2db5094 .cm-nav--next { right: -18px; }

.elementor-98110 .elementor-element.elementor-element-2db5094 .cm-nav svg {
    width: 18px;
    height: 18px;
    stroke: #222;
    stroke-width: 2.5;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* ─── Tablette : 2 cartes ───────────────────────── */
@media (max-width: 1024px) {
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.columns-4 li.product,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.elementor-grid li.product,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product.first,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product.last {
        flex: 0 0 calc((80% - 24px) / 2) !important;
        width: calc((40% - 24px) / 2) !important;
        min-width: calc((20% - 24px) / 2) !important;
        max-width: calc((80% - 24px) / 2) !important;
    }
}

/* ─── Mobile : 1 carte + amorce ─────────────────── */
@media (max-width: 767px) {
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products {
        gap: 16px !important;
    }
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.columns-4 li.product,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products.elementor-grid li.product,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product.first,
    .elementor-98110 .elementor-element.elementor-element-2db5094 ul.products li.product.last {
        flex: 0 0 78% !important;
        width: 78% !important;
        min-width: 78% !important;
        max-width: 40px !important;
    }
    .elementor-98110 .elementor-element.elementor-element-2db5094 .cm-nav {
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5dd9371 *//* ─── Avis masqués ─────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-5dd9371 .grc-category-stars {
    display: none !important;
}

/* ─── Conteneur relatif pour les flèches ───────── */
.elementor-98110 .elementor-element.elementor-element-5dd9371 section.related {
    position: relative;
}

/* ─── Piste scrollable ─────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-5dd9371 ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    gap: 6px;
    margin:5px;
    padding: 20px 15px 15px 15px;
    list-style: none;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.elementor-98110 .elementor-element.elementor-element-5dd9371 ul.products::-webkit-scrollbar {
    height: 6px;
}
.elementor-98110 .elementor-element.elementor-element-5dd9371 ul.products::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 3px;
}
.elementor-98110 .elementor-element.elementor-element-5dd9371 ul.products::-webkit-scrollbar-thumb {
    background: #c4c4c4;
    border-radius: 3px;
}

/* ─── Cartes ───────────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-5dd9371 ul.products li.product {
    flex: 0 0 calc((100% - 48px) / 4);
    max-width: calc((100% - 48px) / 4);
    width: auto !important;
    margin: 0 !important;
    scroll-snap-align: start;
    clear: none !important;
    float: none !important;
}

/* ─── Image / titre / prix ─────────────────────── */
.elementor-98110 .elementor-element.elementor-element-5dd9371 li.product img {
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: cover;
    display: block;
    margin: 0 0 10px;
}

.elementor-98110 .elementor-element.elementor-element-5dd9371 .woocommerce-loop-product__title {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    min-height: 0;
    margin: 0 0 6px;
    line-height: 1.3;
}

.elementor-98110 .elementor-element.elementor-element-5dd9371 li.product .price {
    display: block;
    margin: 0 0 10px;
    line-height: 1.2;
}

.elementor-98110 .elementor-element.elementor-element-5dd9371 .woocommerce-loop-product__buttons,
.elementor-98110 .elementor-element.elementor-element-5dd9371 .woocommerce-loop-product__buttons .button {
    margin: 0;
}

/* ─── Flèches ──────────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-5dd9371 .cm-nav {
    position: absolute;
    top: 38%;
    transform: translateY(-50%);
    z-index: 5;
    width: 40px;
    height: 40px;
    border: 1px solid #ddd;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: opacity .2s, background .2s;
}

.elementor-98110 .elementor-element.elementor-element-5dd9371 .cm-nav:hover {
    background: #f7f7f7;
}

.elementor-98110 .elementor-element.elementor-element-5dd9371 .cm-nav[disabled] {
    opacity: 0;
    pointer-events: none;
}

.elementor-98110 .elementor-element.elementor-element-5dd9371 .cm-nav--prev { left: -18px; }
.elementor-98110 .elementor-element.elementor-element-5dd9371 .cm-nav--next { right: -18px; }

.elementor-98110 .elementor-element.elementor-element-5dd9371 .cm-nav svg {
    width: 18px;
    height: 18px;
    stroke: #222;
    stroke-width: 2.5;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* ─── Responsive ───────────────────────────────── */
@media (max-width: 1024px) {
    .elementor-98110 .elementor-element.elementor-element-5dd9371 ul.products li.product {
        flex: 0 0 calc((100% - 32px) / 3);
        max-width: calc((100% - 32px) / 3);
    }
}

@media (max-width: 767px) {
    .elementor-98110 .elementor-element.elementor-element-5dd9371 ul.products li.product {
        flex: 0 0 calc((100% - 16px) / 2);
        max-width: calc((100% - 16px) / 2);
    }
    .elementor-98110 .elementor-element.elementor-element-5dd9371 .cm-nav { display: none; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a9cfc01 *//* ─── Avis masqués ─────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-a9cfc01 .grc-category-stars {
    display: none !important;
}

/* ─── Conteneur relatif pour les flèches ───────── */
.elementor-98110 .elementor-element.elementor-element-a9cfc01 section.related {
    position: relative;
}

/* ─── Piste scrollable ─────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-a9cfc01 ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    gap: 6px;
    margin:5px;
    padding: 20px 15px 15px 15px;
    list-style: none;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.elementor-98110 .elementor-element.elementor-element-a9cfc01 ul.products::-webkit-scrollbar {
    height: 6px;
}
.elementor-98110 .elementor-element.elementor-element-a9cfc01 ul.products::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 3px;
}
.elementor-98110 .elementor-element.elementor-element-a9cfc01 ul.products::-webkit-scrollbar-thumb {
    background: #c4c4c4;
    border-radius: 3px;
}

/* ─── Cartes ───────────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-a9cfc01 ul.products li.product {
    flex: 0 0 calc((100% - 48px) / 4);
    max-width: calc((100% - 48px) / 4);
    width: auto !important;
    margin: 0 !important;
    scroll-snap-align: start;
    clear: none !important;
    float: none !important;
}

/* ─── Image / titre / prix ─────────────────────── */
.elementor-98110 .elementor-element.elementor-element-a9cfc01 li.product img {
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: cover;
    display: block;
    margin: 0 0 10px;
}

.elementor-98110 .elementor-element.elementor-element-a9cfc01 .woocommerce-loop-product__title {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    min-height: 0;
    margin: 0 0 6px;
    line-height: 1.3;
}

.elementor-98110 .elementor-element.elementor-element-a9cfc01 li.product .price {
    display: block;
    margin: 0 0 10px;
    line-height: 1.2;
}

.elementor-98110 .elementor-element.elementor-element-a9cfc01 .woocommerce-loop-product__buttons,
.elementor-98110 .elementor-element.elementor-element-a9cfc01 .woocommerce-loop-product__buttons .button {
    margin: 0;
}

/* ─── Flèches ──────────────────────────────────── */
.elementor-98110 .elementor-element.elementor-element-a9cfc01 .cm-nav {
    position: absolute;
    top: 38%;
    transform: translateY(-50%);
    z-index: 5;
    width: 40px;
    height: 40px;
    border: 1px solid #ddd;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: opacity .2s, background .2s;
}

.elementor-98110 .elementor-element.elementor-element-a9cfc01 .cm-nav:hover {
    background: #f7f7f7;
}

.elementor-98110 .elementor-element.elementor-element-a9cfc01 .cm-nav[disabled] {
    opacity: 0;
    pointer-events: none;
}

.elementor-98110 .elementor-element.elementor-element-a9cfc01 .cm-nav--prev { left: -18px; }
.elementor-98110 .elementor-element.elementor-element-a9cfc01 .cm-nav--next { right: -18px; }

.elementor-98110 .elementor-element.elementor-element-a9cfc01 .cm-nav svg {
    width: 18px;
    height: 18px;
    stroke: #222;
    stroke-width: 2.5;
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* ─── Responsive ───────────────────────────────── */
@media (max-width: 1024px) {
    .elementor-98110 .elementor-element.elementor-element-a9cfc01 ul.products li.product {
        flex: 0 0 calc((100% - 32px) / 3);
        max-width: calc((100% - 32px) / 3);
    }
}

@media (max-width: 767px) {
    .elementor-98110 .elementor-element.elementor-element-a9cfc01 ul.products li.product {
        flex: 0 0 calc((100% - 16px) / 2);
        max-width: calc((100% - 16px) / 2);
    }
    .elementor-98110 .elementor-element.elementor-element-a9cfc01 .cm-nav { display: none; }
}/* End custom CSS */
/* Start custom CSS *//* =========================================================
   ALMA — STYLE UNIFIÉ
   Compatible :
   - fiche produit : .alma-product-eligibility
   - panier : .alma-cart-eligibility
   ========================================================= */


/* =========================================================
   CARTE PRINCIPALE
   ========================================================= */

.alma-product-eligibility,
.cart_totals .alma-cart-eligibility {
    width: 100% !important;

    margin: 0 0 12px !important;
    padding: 12px !important;

    background: var(--msc-soft, #f7f7f7) !important;

    border: 1px solid #ececec !important;
    border-radius: 11px !important;

    box-shadow: none !important;

    box-sizing: border-box !important;
}


/* =========================================================
   SUPPRESSION DE LA DOUBLE CARTE ALMA
   ========================================================= */

.alma-product-eligibility .alma-payment-plans-container,
.cart_totals .alma-cart-eligibility .alma-payment-plans-container {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;

    box-sizing: border-box !important;
}


/* =========================================================
   LIGNE :
   LOGO ALMA + 2x + 3x + 4x
   ========================================================= */

.alma-product-eligibility .alma-payment-plans-eligibility-line,
.cart_totals .alma-cart-eligibility .alma-payment-plans-eligibility-line {
    display: flex !important;

    align-items: center !important;

    gap: 8px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   BOUTON / LOGO ALMA
   ========================================================= */

.alma-product-eligibility .alma-payment-plans-know-more-action,
.cart_totals .alma-cart-eligibility .alma-payment-plans-know-more-action {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 68px !important;

    width: 68px !important;
    min-width: 68px !important;
    height: 36px !important;

    margin: 0 !important;
    padding: 6px 10px !important;

    background: #fff !important;

    border: 1px solid #e5235f !important;
    border-radius: 8px !important;

    box-shadow: none !important;

    cursor: pointer !important;

    box-sizing: border-box !important;
}


/* logo SVG */

.alma-product-eligibility
.alma-payment-plans-know-more-action svg,

.cart_totals
.alma-cart-eligibility
.alma-payment-plans-know-more-action svg {
    display: block !important;

    width: 47px !important;
    max-width: 47px !important;

    height: auto !important;

    margin: 0 !important;
}


/* couleur du logo */

.alma-product-eligibility
.alma-payment-plans-know-more-action svg path,

.cart_totals
.alma-cart-eligibility
.alma-payment-plans-know-more-action svg path {
    fill: #181818 !important;
}


/* =========================================================
   CONTENEUR DES OPTIONS 2x / 3x / 4x
   ========================================================= */

.alma-product-eligibility .alma-payment-plans-eligibility-options,
.cart_totals .alma-cart-eligibility .alma-payment-plans-eligibility-options {
    display: flex !important;

    flex: 1 1 auto !important;

    align-items: center !important;

    gap: 7px !important;

    width: auto !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   BOUTONS 2x / 3x / 4x
   ========================================================= */

.alma-product-eligibility
.alma-payment-plans-eligibility-options
button,

.cart_totals
.alma-cart-eligibility
.alma-payment-plans-eligibility-options
button {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    flex: 1 1 0 !important;

    min-width: 42px !important;
    height: 36px !important;

    margin: 0 !important;
    padding: 0 8px !important;

    background: #fff !important;

    border: 1px solid #e5235f !important;
    border-radius: 7px !important;

    box-shadow: none !important;

    color: #e5235f !important;

    font-size: 11px !important;
    line-height: 1 !important;

    font-family: inherit !important;
    font-weight: 650 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   OPTION SÉLECTIONNÉE
   ========================================================= */

.alma-product-eligibility
.alma-payment-plans-eligibility-options
button[aria-selected="true"],

.cart_totals
.alma-cart-eligibility
.alma-payment-plans-eligibility-options
button[aria-selected="true"] {
    background: #181818 !important;

    border-color: #181818 !important;

    color: #fff !important;
}


/* =========================================================
   OPTION NON SÉLECTIONNÉE
   ========================================================= */

.alma-product-eligibility
.alma-payment-plans-eligibility-options
button[aria-selected="false"],

.cart_totals
.alma-cart-eligibility
.alma-payment-plans-eligibility-options
button[aria-selected="false"] {
    background: #fff !important;

    border-color: #e5235f !important;

    color: #e5235f !important;
}


/* =========================================================
   OPTIONS NON ÉLIGIBLES / DISABLED

   On garde visuellement les boutons propres même si Alma
   injecte aria-disabled="true".
   ========================================================= */

.alma-product-eligibility
.alma-payment-plans-eligibility-options
button[aria-disabled="true"],

.cart_totals
.alma-cart-eligibility
.alma-payment-plans-eligibility-options
button[aria-disabled="true"] {
    opacity: 1 !important;
}


/* sélectionné + disabled */

.alma-product-eligibility
.alma-payment-plans-eligibility-options
button[aria-selected="true"][aria-disabled="true"],

.cart_totals
.alma-cart-eligibility
.alma-payment-plans-eligibility-options
button[aria-selected="true"][aria-disabled="true"] {
    background: #181818 !important;

    border-color: #181818 !important;

    color: #fff !important;
}


/* =========================================================
   CONTENEUR DU TEXTE SOUS LES OPTIONS
   ========================================================= */

.alma-product-eligibility ._infoContainer_v4hon_121,
.cart_totals .alma-cart-eligibility ._infoContainer_v4hon_121 {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;
}


/* =========================================================
   TEXTE :
   "À partir de 250,00 €"
   ========================================================= */

.alma-product-eligibility .alma-payment-plans-payment-info,
.cart_totals .alma-cart-eligibility .alma-payment-plans-payment-info {
    width: 100% !important;

    margin: 8px 0 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;

    font-size: 10px !important;
    line-height: 1.35 !important;

    font-family: inherit !important;
    font-weight: 500 !important;

    color: #555 !important;

    box-sizing: border-box !important;
}


.alma-product-eligibility .alma-payment-plans-payment-info p,
.cart_totals .alma-cart-eligibility .alma-payment-plans-payment-info p {
    margin: 0 !important;
    padding: 0 !important;

    font: inherit !important;

    color: inherit !important;
}


/* =========================================================
   RESPONSIVE MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .alma-product-eligibility,
    .cart_totals .alma-cart-eligibility {
        padding: 10px !important;

        border-radius: 10px !important;
    }


    .alma-product-eligibility .alma-payment-plans-eligibility-line,
    .cart_totals .alma-cart-eligibility .alma-payment-plans-eligibility-line {
        gap: 6px !important;
    }


    /* logo */

    .alma-product-eligibility .alma-payment-plans-know-more-action,
    .cart_totals .alma-cart-eligibility .alma-payment-plans-know-more-action {
        flex: 0 0 60px !important;

        width: 60px !important;
        min-width: 60px !important;

        height: 34px !important;

        padding: 5px 8px !important;
    }


    .alma-product-eligibility
    .alma-payment-plans-know-more-action svg,

    .cart_totals
    .alma-cart-eligibility
    .alma-payment-plans-know-more-action svg {
        width: 43px !important;
    }


    /* espace entre boutons */

    .alma-product-eligibility .alma-payment-plans-eligibility-options,
    .cart_totals .alma-cart-eligibility .alma-payment-plans-eligibility-options {
        gap: 5px !important;
    }


    /* boutons */

    .alma-product-eligibility
    .alma-payment-plans-eligibility-options
    button,

    .cart_totals
    .alma-cart-eligibility
    .alma-payment-plans-eligibility-options
    button {
        min-width: 0 !important;

        height: 34px !important;

        padding: 0 5px !important;

        font-size: 10px !important;
    }


    /* texte inférieur */

    .alma-product-eligibility .alma-payment-plans-payment-info,
    .cart_totals .alma-cart-eligibility .alma-payment-plans-payment-info {
        margin-top: 7px !important;

        font-size: 9.5px !important;
    }
}/* End custom CSS */