.elementor-55673 .elementor-element.elementor-element-7e2f970{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-55673 .elementor-element.elementor-element-7e2f970 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-55673 .elementor-element.elementor-element-4f8bc47 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:20px;}.elementor-55673 .elementor-element.elementor-element-015cb60{text-align:center;}.elementor-55673 .elementor-element.elementor-element-015cb60 .elementor-heading-title{font-family:"Archivo Black", Sans-serif;font-size:3.6rem;color:#FFFFFF;}.elementor-55673 .elementor-element.elementor-element-a5cf8c3{text-align:center;}.elementor-55673 .elementor-element.elementor-element-a5cf8c3 .elementor-heading-title{font-family:"Archivo Black", Sans-serif;color:#FFFFFF;}.elementor-55673 .elementor-element.elementor-element-88015d1 > .elementor-widget-container{margin:-62px 0px 0px 0px;}.elementor-55673 .elementor-element.elementor-element-5c2a692 > .elementor-widget-container{margin:-62px 0px 0px 0px;}.elementor-55673 .elementor-element.elementor-element-0a25c10{text-align:center;}.woocommerce .elementor-55673 .elementor-element.elementor-element-0a25c10 .price{color:#FFFFFF;font-family:"Archivo Black", Sans-serif;font-size:2.5rem;}.woocommerce .elementor-55673 .elementor-element.elementor-element-6297826 .woocommerce-product-details__short-description{color:#FFFFFF;font-family:"Archivo", Sans-serif;font-weight:600;}.elementor-55673 .elementor-element.elementor-element-dfb7583{text-align:center;font-family:"Archivo", Sans-serif;font-size:14px;color:#FFFFFF;}.elementor-55673 .elementor-element.elementor-element-dfb7583 a{color:#FFFFFF;}.elementor-55673 .elementor-element.elementor-element-c262e8d{width:100%;max-width:100%;}.elementor-55673 .elementor-element.elementor-element-c262e8d .cart button, .elementor-55673 .elementor-element.elementor-element-c262e8d .cart .button{font-family:"Archivo", Sans-serif;font-size:19px;text-transform:uppercase;border-style:solid;border-width:1px 1px 1px 1px;padding:0px 0px 0px 0px;color:#FFFFFF;background-color:#1F1F1F;border-color:#C9C9C9;transition:all 0.2s;}.elementor-55673 .elementor-element.elementor-element-c262e8d .cart button:hover, .elementor-55673 .elementor-element.elementor-element-c262e8d .cart .button:hover{color:#FFFFFF;background-color:#000000;border-color:#FFFFFF;}.elementor-55673 .elementor-element.elementor-element-c262e8d .added_to_cart{color:#FFFFFF;font-size:16px;}.woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart .variations{width:80%;margin-bottom:0px;}.woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations tr th, .woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations tr td{padding-top:calc( 0px/2 );padding-bottom:calc( 0px/2 );}.woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations label{color:var( --e-global-color-f2d3831 );font-family:"Archivo", Sans-serif;font-size:16px;text-transform:uppercase;}.woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations td.value select{color:var( --e-global-color-f2d3831 );}.woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations td.value select, .woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations td.value:before{background-color:#000000F5;border:1px solid #FFFFFF;border-radius:0px;}.woocommerce .elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations td.value select, .woocommerce div.product.elementor.elementor-55673 .elementor-element.elementor-element-c262e8d form.cart table.variations td.value:before{font-size:20px;font-weight:bold;}@media(min-width:768px){.elementor-55673 .elementor-element.elementor-element-4ac0e37{width:70%;}.elementor-55673 .elementor-element.elementor-element-0dc8c97{width:30%;}}@media(max-width:767px){.elementor-55673 .elementor-element.elementor-element-e1a883c{margin-top:-65px;margin-bottom:-65px;}.elementor-55673 .elementor-element.elementor-element-4ac0e37 > .elementor-element-populated{margin:3rem 0rem 0rem 0rem;--e-column-margin-right:0rem;--e-column-margin-left:0rem;}.elementor-55673 .elementor-element.elementor-element-88015d1{grid-column:span 1;grid-row:span 1;}.elementor-55673 .elementor-element.elementor-element-5c2a692{grid-column:span 1;grid-row:span 1;}.elementor-55673 .elementor-element.elementor-element-0dc8c97 > .elementor-element-populated{margin:4rem 0rem 0rem 0rem;--e-column-margin-right:0rem;--e-column-margin-left:0rem;}.elementor-55673 .elementor-element.elementor-element-6297826 > .elementor-widget-container{margin:2rem 0rem 0rem 0rem;}.elementor-55673 .elementor-element.elementor-element-dfb7583 > .elementor-widget-container{margin:0rem 0rem 3rem 0rem;}.elementor-55673 .elementor-element.elementor-element-c262e8d > .elementor-widget-container{margin:-2rem 0rem 2rem 0rem;padding:0px 0px 0px 0px;}}/* Start custom CSS for column, class: .elementor-element-4ac0e37 */.elementor-55673 .elementor-element.elementor-element-4ac0e37 {
    position: relative !important; 
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-c262e8d */.elementor-55673 .elementor-element.elementor-element-c262e8d table {
    margin:0px auto!important;
    border-bottom: unset !important;
}
.elementor-55673 .elementor-element.elementor-element-c262e8d select {
    text-align: center;
}
.elementor-55673 .elementor-element.elementor-element-c262e8d p.ast-stock-detail{
    text-align: center!important;
}
.elementor-55673 .elementor-element.elementor-element-c262e8d span.ast-stock-avail{
    color:white;
}
.elementor-55673 .elementor-element.elementor-element-c262e8d button.single_add_to_cart_button{
    padding:20px!important;
    border-radius: 0px;
}
.reset_variations{
    color: white !important;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-7e2f970 */html, #content {
    background: black;
}

.reset_variations {

color: white ;

}



/* 1. Boutons Astra */

.ast-variation-button-group .ast-single-variation {

color: white !important;

border-color: rgba(255, 255, 255, 0.9) !important;

background-color: rgb(0 0 0 / 70%) !important;

border-radius: 4px !important;

}

.ast-variation-button-group .ast-single-variation.active {
    background-color : rgba(255, 255, 255, 0.9) !important;
    color: black !important;
}

/* 2. Style de la Galerie (Indépendant du conteneur 3D) */

/* --- AJUSTEMENT DE LA POSITION DE LA GALERIE --- */

#product-gallery {

position: absolute !important;

/* On le cale à 50% du conteneur parent */

top: 55% !important;

left: 50% !important;

/* On utilise translate pour un centrage parfait sans remonter trop haut */

transform: translate(-50%, -50%) !important;


width: 100% !important;

max-width: 500px; /* À ajuster selon la taille de vos photos */


/* On s'assure qu'aucun margin par défaut ne pousse l'image vers le haut */

margin-top: 0 !important;

margin-bottom: 0 !important;


z-index: 100 !important;

opacity: 0;

visibility: hidden;

pointer-events: none;

transition: opacity 0.3s ease;

}



/* Correction spécifique pour le slider WooCommerce (Flexslider) */

#product-gallery .woocommerce-product-gallery__wrapper {

margin: 0 !important;

padding: 0 !important;

}



#product-gallery img {

/* Évite que l'image ne soit déformée ou trop grande */

max-height: 70vh !important;

object-fit: cover !important;

}



/* 3. CLASSE ACTIVE (appliquée directement sur la galerie via JS) */

#product-gallery.active-gallery {

opacity: 1 !important;

visibility: visible !important;

pointer-events: auto !important;

}



/* Désactiver le zoom et l'interaction au survol sur l'image principale */

.woocommerce-product-gallery__image {

pointer-events: none !important;

}



/* Cacher l'image de zoom générée par Astra/WooCommerce */

.woocommerce-product-gallery__trigger {

display: none !important;

opacity: 0 !important;

visibility: hidden !important;

}



/* S'assurer que les miniatures (thumbnails) restent cliquables malgré tout */

.flex-control-nav.flex-control-thumbs img {

pointer-events: auto !important;

}



/* Permettre le clic sur le bouton de loupe si vous l'utilisez toujours */

.woocommerce-product-gallery__trigger {

pointer-events: auto !important;

z-index: 150 !important;

}



.visual-wrapper {

position: relative;

width: 100%;

height: 90vh;

display: flex;

align-items: center;

justify-content: center;

z-index: 10;

}



.nav-arrow {

position: absolute;

top: 50%;

transform: translateY(-50%);

background: rgba(0,0,0,0.4);

color: white;

border: none;

padding: 20px 15px;

cursor: pointer;

z-index: 900; /* Toujours au dessus de tout */

font-size: 24px;

border-radius: 10px;

}

.arrow-left { left: 20px; }

.arrow-right { right: 20px; }



model-viewer {

width: 100%;

height: 100%;

transition: opacity 0.3s;

}



/* Cacher le modèle quand on affiche la galerie */

.visual-wrapper.hide-3d model-viewer {

opacity: 0;

pointer-events: none;

}



/* --- FORCE LES FLÈCHES AU PREMIER PLAN --- */

.nav-arrow {

position: absolute;

top: 50%;

transform: translateY(-50%);

background: rgba(0,0,0,0.6); /* Un peu plus sombre pour le contraste */

color: white;

border: none;

padding: 20px 15px;

cursor: pointer;

/* On passe à 200 pour être au-dessus de la galerie qui est à 100 */

z-index: 900 !important;

font-size: 24px;

border-radius: 10px;

border: 1px solid #ffffffa8;

pointer-events: auto !important; /* Force la réactivité au clic */

}


/* --- ADAPTATION TABLETTES (Écrans inférieurs à 768px) --- */

@media (max-width: 1023px) {

.nav-arrow {

padding: 15px 10px; /* Taille réduite pour ne pas manger l'image */

font-size: 20px;

}


.arrow-left { left: -10px; }

.arrow-right { right: -10px; }

}


/* --- ADAPTATION MOBILE (Écrans inférieurs à 768px) --- */

@media (max-width: 767px) {

.nav-arrow {

padding: 15px 10px; /* Taille réduite pour ne pas manger l'image */

font-size: 20px;

}


.arrow-left { left: -10px; }

.arrow-right { right: -10px; }


model-viewer {
    margin-bottom:100px;
}

#second-col {
    margin-top: -170px;
}
/* On réduit légèrement la largeur de la galerie sur mobile

pour éviter qu'elle ne touche les bords et cache les flèches */

#product-gallery {

width: 80% !important;

top: 45% !important; /* On recentre verticalement sur mobile */

}
    
}




/* === FIX ARRONDI FLEXSLIDER (enfants transformés) === */
#product-gallery .flex-viewport{
  overflow: hidden !important;
  border-radius: 28px !important; /* ajuste */
  -webkit-clip-path: inset(0 round 28px);
  clip-path: inset(0 round 28px);
}

/* on garde aussi un radius sur les wrappers / images */
#product-gallery .woocommerce-product-gallery__image,
#product-gallery .woocommerce-product-gallery__image > a,
#product-gallery .woocommerce-product-gallery__image > a > img{
  border-radius: 28px !important;
}

/* si le zoomImg vient casser visuellement, on le vire */
#product-gallery img.zoomImg{
  display: none !important;
}

/* Méthode inratable : on cache le model-viewer dès que la galerie est visible */
#product-gallery.active-gallery { z-index: 9999 !important; }

/* et on force le model-viewer derrière / invisible via un état global */
body:has(#product-gallery.active-gallery) model-viewer{
  display: none !important;
}

/* --- STYLE RUPTURE DE STOCK (CLIQUABLE) --- */

.ast-single-variation.force-out-of-stock {
    /* On garde une légère transparence pour montrer que c'est "moins dispo" 
       mais assez visible pour qu'on ait envie de cliquer */
    opacity: 0.6 !important; 
    
    /* IMPORTANT : On réactive le clic */
    pointer-events: auto !important;
    cursor: pointer !important;
    
    /* Style visuel */
    position: relative;
    border: 1px solid #ccc !important;
    color: #bbb !important;
    overflow: hidden; 
}

/* La barre diagonale par-dessus */
.ast-single-variation.force-out-of-stock::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* La barre diagonale grise */
    background: linear-gradient(to top left, 
                transparent 48%, 
                #a0a0a0 48%, 
                #a0a0a0 52%, 
                transparent 52%);
    z-index: 10;
    
    /* Permet de cliquer "au travers" de la barre diagonale */
    pointer-events: none; 
}

/* Optionnel : Effet au survol pour bien montrer que c'est actif */
.ast-single-variation.force-out-of-stock:hover {
    opacity: 1 !important;
}/* End custom CSS */