:root {
  --noir_txt: rgba(115,115,115, 1);
  --noir_logo: #222221; 
  --doree: #BB9D7B; 
}

body{
    font-family: "dinot", sans-serif;
    font-size: 20px;
    line-height: 1.2em;
    color: var(--noir_logo);
    position: relative;
    overflow-x: hidden;
}

*{
    box-sizing: border-box;
}

section, footer, header, article, main, aside, .row, .container{
    position: relative;
}

* > p:last-child{
    margin-bottom: 0 !important;
}

a{
    text-decoration: none; 
}

ul, ol{
    margin: 0;
    padding: 0;
}

ul{
    list-style: none;
}

img{
    max-width: 100%;
    height: auto;
}

b, strong{
    font-weight: 700;
}

a, button{
    transition: all 0.5s ease;
}

figure{
    margin: 0;
}


/*general*/

.clear{
    clear:both !important; 
    display:block; 
    float:none !important; 
    width:100% !important; 
    height:0px !important; 
    margin:0 !important; 
    padding:0 !important; 
    border:none !important; 
    min-height:0px !important;
}

.notDisplay{
    display:none;
}

.displayBlock{
    display: block;
}

.displayInlineBlock{
    display: inline-block;
    vertical-align: top;
}

.position_absolute{
    position: absolute !important;
    top: 0;
    left: 0;
}

.position_relative{
    position: relative;
}

.object_fit_cover{
    width:100%; 
    height:100% !important; 
    object-fit:cover;
}

.margin, .wrap{
    margin: 0 auto;
}

.full{
    height: 100%;
    width: 100%;
}

.width_100{
    width: 100%;
}

.height_100{
    height: 100%;
}

.cover{
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.z_index_0{
    z-index: 0;
}

.z_index_1{
    z-index: 1;
}

.z_index_2{
    z-index: 2;
}

.no_margin{
    margin: 0 !important;
}

.nowrap{
    white-space: nowrap;
}

.color_inherit{
    color: inherit !important;
}

.pointer{
    cursor: pointer;
}

.overflow_hidden{
    overflow: hidden;
}

.currentColor, .currentColor:hover{
    color: currentColor;
}


/* structure */

.no_padding, .no_flex{
    padding: 0;
}

.row_noflex{
    display: block;
}

.row_noflex:after{
    content:'';
    display: block;
    clear: both;
}

.row_noflex *[class*="col-"]{
    max-width: none;
    flex: none;
    float: left;
}

.float_left, .row_noflex *[class*="col-"].float_left{
    float:left;
}

.float_right, .row_noflex *[class*="col-"].float_right{
    float:right;
}

.row.no_padding *[class*="col-"]:not(.padding), .container.no_padding *[class*="col-"]:not(.padding){
    padding-left:0; 
    padding-right: 0;
}

.container.no_padding .row:not(.padding), .row.no_padding, .row.no_padding .row:not(.padding){
    margin-right:auto; 
    margin-left: auto;
}


/* general site */

p{
    margin-bottom: 25px;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .elementor-heading-title{
    margin-bottom: .65em;
    font-family: dinot_bold;    
    font-weight: normal;
    letter-spacing: -.05em;
}

h1, .h1{
    font-size: 4rem;
    line-height: 4.125rem;
}

h2, .h2, h2.elementor-heading-title{
    font-size: 3rem;
    line-height: 3.125rem;
}

h3, .h3{
    font-size: 2rem;
}

h4, .h4{
    font-size: 1.5em;
}

a{
    color: inherit;
}

a:hover{
    color: #000;
}

.fond_sombre, .fond_blanc{
    position: relative;
}

.fond_sombre:after, .fond_blanc:after, .fond_bleu:after{
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    content:'';
    background-color: #000;
    opacity: 0.55;
}

.fond_blanc:after{
    background-color: #fff;
}

.fond_bleu:after{
    background-color: rgba(0, 24, 55, 0.8);
}

.fond_0_95:after{
    opacity: 0.95;
}

.fond_0_92:after{
    opacity: 0.92;
}

.fond_0_8:after{
    opacity: 0.8;
}

.fond_0_7:after{
    opacity: 0.7;
}

.fond_sombre > *, .fond_blanc > *, .fond_bleu > *{
    position: relative;
    z-index: 2;
}

.white{
    color: #fff;
}

a.btn_cta, button.btn_cta, .btn_cta .elementor-button, .elementor-button, .elementor-button:focus, .elementor-button:visited{
    border-radius: 50px;
    display: inline-block;
    padding: 22px 40px;
    line-height: 1em;
    font-size: 13px;
    font-family: dinot_bold;
    text-transform: uppercase;
    background-color: transparent;
    color: var(--noir_logo);
    border: 2px solid var(--noir_logo);
    transition: background-color 0.3s ease;
    text-align: left;
}

a.btn_cta:hover, button.btn_cta:hover, .btn_cta .elementor-button:hover, .elementor-button:hover{
    background-color: var(--noir_logo);
    border-color: transparent;
    color: #fff;
}

a.btn_cta.simple{
    background: none !important;
    padding: 0 !important;
    border: none !important
    color: currentColor;
}

a.btn_cta.simple:hover{
    color: var(--doree);
}

a.btn_cta.simple:after{
    content:'';
    display: inline-block;
    position: relative;
    height: 24px;
    width: 24px;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-image: url(../../../wp-content/uploads/fleche-1.svg);
}

.elementor-widget-text-editor ul, .post_content ul, .section_content_produit ul{
    list-style: disc;
    margin-bottom: 25px;
}

.elementor-widget-text-editor ol, .post_content ol, .section_content_produit ol{
    margin-bottom: 25px;
}

.elementor-widget-text-editor li, .post_content li, .section_content_produit li{
    margin-left: 20px;
    margin-bottom: 10px;
}


/* reset */

.elementor-widget-heading.mb-0 .elementor-heading-title{
    margin-bottom: 0 !important;
}

.e-con>.e-con-inner{
    row-gap:0;
}


/* main */

.container{
    width: 1774px;
    max-width: 95%;
}

.container.w_1500{
    width: 1500px;
}

.container.w_1170{
    width: 1170px;
}

.e-con>.e-con-inner, .elementor-section.elementor-section-boxed > .elementor-container{
    width: 95%;
}
 
.section_large >.e-con-inner{
    max-width: 1774px !important;
    width: 95%;
}


/* header */

#header{
    z-index: 10;
    color: #000;
    /*padding: 10px 0;*/
    width: 100%;
    background-color: rgba(255,255,255, 1);
}

#header .row, #header .container{
    position: static;
}

.col_header_left{
    width: 20%;
    max-width: 120px;
}

.logo_header{}

.col_header_right{
    width: 57%;
}

.zone_header_right .menu-main-menu-container > ul{
    display: flex;
    column-gap: 2rem;
}

.zone_header_right .menu-main-menu-container > ul > li{
    height: 86px;
    display: flex;
    align-items: center;
}

.zone_header_right .menu-main-menu-container > ul > li > a{
    font-family: dinot_bold;
    font-size: 17px;
    line-height: 1em;
    color: var(--noir_logo);
    display: block;
    position: relative;
    text-transform: uppercase;
    line-height: 1em;
    cursor: pointer;
}

.zone_header_right .menu-main-menu-container > ul > li > a:after{
    content:'';
    display: block;
    position: absolute;
    left: 0;
    bottom: -3px;
    background: var(--noir_logo);
    width: 0px;
    height: 1px;
    opacity: 0;
    transition: width 0.5s ease;
}

.zone_header_right .menu-main-menu-container > ul > li > a:hover:after, .zone_header_right .menu-main-menu-container > ul > li.current-menu-item > a:after{
    width: 100%;
    opacity: 1;
}

.zone_header_right .menu-main-menu-container > ul > li > ul{
    display: none;
    position: absolute;
    top: 85px;
    left: 0;
    width: 100%;
    padding: 50px;
    background-color: var(--noir_logo);
    color: #fff;
    row-gap: 30px;
    column-gap: 30px;
    flex-direction: row;
    justify-content: center;
    column-count: 5;
}

.zone_header_right .menu-main-menu-container > ul > li:hover > ul{
    display: flex;
}

.zone_header_right .menu-main-menu-container > ul > li > ul li{

}

.zone_header_right .menu-main-menu-container > ul > li > ul li > a{
    color:#fff;
    text-transform: uppercase;
    color: #fff;
    opacity: 0;
}

.zone_header_right .menu-main-menu-container > ul > li > ul li > a:hover{
    color: #eee;
}

.zone_header_right .menu-main-menu-container > ul > li:hover > ul li > a{
    opacity: 1;
}

.header_woocommerce{
    display: flex;
    column-gap: 27px;
}

.header_woocommerce svg{
    stroke: currentColor;
}


/* hp */

.section_slider{}

.section_cat_produits{}

.carousel_visuel_texte .listing{
    column-gap: /*32px*/1.803833145434047%;
}

.carousel_visuel_texte .listing .item{
    width: /*570px*/32.13077790304397%;
    height: 845px;
    position: relative;
    overflow: hidden;
    border-radius: .25rem;
}

.carousel_visuel_texte .listing .item .img{
    background-color: var(--noir_logo);
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.carousel_visuel_texte .listing .item .img:before{
    content:'';
    display: block;
    position: absolute;
    top: 0;
    width: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg,transparent 30%,#000);
}

.carousel_visuel_texte .listing .item .txt{
    position: relative;
    z-index: 1;
    color: #fff;
    height: 100%;
    width: 100%;
    --padding_item_visuel: 20px 20px;
    padding: var(--padding_item_visuel);
}

.carousel_visuel_texte .listing .item .txt .title{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: var(--padding_item_visuel);
    z-index: 2;
    margin-bottom: 0;
}

.carousel_visuel_texte .listing .item .txt .title .wrap{
    position: relative;
    display: inline-block;
}

.carousel_visuel_texte .listing .item .txt .title .wrap:after{
    content:'';
    display: block;
    position: absolute;
    left: 0;
    bottom: -3px;
    background: #fff;
    width: 0px;
    height: 2px;
    opacity: 0;
    transition: width 0.5s ease;
}

.carousel_visuel_texte .listing .item:hover .txt .title .wrap:after{
    opacity: 1;
    width: 100%;
}

.carousel_visuel_texte .listing .item .txt .title svg{
    transform: rotate(-45deg);
    position: relative;
    top: 1000px;
    margin-left: 2px;
    opacity: 0;
    transition: all 0.5s ease;
    stroke: currentColor;
}

.carousel_visuel_texte .listing .item:hover .txt .title svg{
    opacity: 1;
    top: -7px;
}

.carousel_visuel_texte .listing .item .txt .desc{
    position: relative;
    z-index: 1;
    text-align: center;
    font-size: 18px;
    width: 60%;
    bottom: -200%;
    opacity: 0;
    transition: all 0.5s;
    backdrop-filter: blur(3px);
    padding: 10px;
    /*background: linear-gradient(180deg,transparent 30%, rgba(0,0,0,0.3));*/
}

.carousel_visuel_texte .listing .item:hover .txt .desc{
    bottom: 0;
    opacity: 1;
}

.carousel-indicators{
    position: relative;
    margin: 20px 0 0 0;
    justify-content: start;
}

.carousel-indicators [data-bs-target]{
    background-color: var(--noir_logo);
    width: 70px;
    height: 2px;
}

.carousel-indicators [data-bs-target].active{
    opacity: 0.2;
}

.produits-swiper{
    width: 100%;
    overflow: visible !important;
}

.listing_produits{
    width: 100%;
}

.item_produit{

}

.item_produit .img{
    position: relative;
    height: 600px;
    border-radius: .25rem;
    overflow: hidden;
    display: block;
    margin-bottom: 20px;
    background-color: var(--noir_logo);
}

.item_produit .img img{
    transition: all 0.5s;
}

.item_produit .img:hover img{
    transform: scale(1.05);
}

.produit-badge-solde{
    background-color: var(--noir_logo);
    color: #fff;
    font-weight: bold;
    padding: 7px 10px;
    position: absolute;
    top: 15px;
    left: 15px;
    border-radius: .25rem;
    font-size: 12px;
    line-height: 1em;
}

.item_produit .produit_couleurs{
    display: flex;
    gap: 8px;
    margin-bottom: 10px;
}

.color-image{
    margin-right: 4px;
}

.color-image img {
    width: 40px !important;
    height: 40px !important;
    object-fit: cover;
    border-radius: 4px;
    border: 1px solid #ddd;
    transition: transform .2s ease;
}

.color-image:hover img {
    transform: scale(1.05);
}

.color-badge{
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid #ccc;
    transition-duration: 0s;
}

.color-image.active .color-badge{
    border: 3px double /*#EFBF04*/#ccc;
}

.item_produit .title{
    font-size: 16px;
    margin-bottom: 5px;
}

.item_produit .produit_categories{
    font-size: 15px;
    margin-bottom: 7px;
}

.produit_prix{
    font-size: 15px;
    line-height: 1em;
}

.wrap_navigation{
    display:flex;
    align-items: center;
    gap: 0.25rem;
    margin-top: 20px;
    margin-left: -12px;
}

.wrap_navigation .nav_swiper{
    position: static;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: transparent;
    opacity: 1 !important;
    color: var(--noir_logo);
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    margin: 0;
    cursor: pointer;
}

.wrap_navigation .nav_swiper:hover{
    background-color: #e5e5e5;
}

.wrap_navigation .nav_swiper:after{
    display: none !important;
}

.wrap_navigation .nav_swiper svg{
    stroke: currentColor;
}

.wrap_navigation .swiper-scrollbar.swiper-scrollbar-horizontal{
    position: relative;
    left: auto;
    bottom: auto;
    height: 2px;
    width: 19rem;
    margin: 0;
    margin-left: 1.5rem;
}

.wrap_navigation .swiper-scrollbar .swiper-scrollbar-drag{
    background: var(--noir_logo);
    height: 100%;
    left: 0;
    position: relative;
    top: -0.0625rem;
}

.bloc_img_txt_moza, .bloc_img_txt_moza{
    align-items: center;
    color: #fff;
    padding: 0;
    /*padding-left: max(2rem,3.33vw);*/
}

.bloc_img_txt_moza .col_img{
    width: 46%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 7% !important;
    padding-right: 150px !important;
    position: relative;
    z-index: 1;
    min-height: 500px;
    flex-direction: column;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.bloc_img_txt_moza .col_txt{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5% !important;
    background-color: #111;
    margin-left: -5%;
    width: 59%;
    position: relative;
    z-index: 2;
    line-height: 1.4em;
    color: var(--noir_logo);
    flex-direction: column;
    background-position: 0 0;
}

.section_boxes .wrap_title_section{
    padding: 150px 0;
    /*padding-top: 175px;*/
    min-height: 800px;
    background-attachment: fixed;
    display: flex;
    align-items: center;
}

.section_boxes .wrap_title_section:after{
    background-color: rgba(0, 24, 55, 0.8);
}

.section_boxes .logo{
    width: 250px;
    height: 250px;
    display: flex;
    align-items: center;
    padding: 40px;
    justify-content: center;
    margin: 0 auto 30px;
    border: 20px double rgba(255,255,255, 0.92);
    border-radius: 50%;
    /*background-color: rgba(255,255,255, 0.1);*/
}

.section_boxes .title{
    max-width: 500px;
    margin: 0 auto;
    line-height: 1.15em;
}

.listing_boxes .item{
    width: 20%;
    position: relative;
    min-height: 395px;
    overflow: hidden;
    border-right: 4px solid #000;
}

.listing_boxes .item:last-child{
    border-right: none !important;
}

.listing_boxes .item .img img{
    z-index: 0;
    transition: all 0.5s;
}

.listing_boxes .item:hover .img:after{
    opacity: 0.8;
    transition: all 0.5s;
}

.listing_boxes .item:hover .img img{
    transform: scale(1.3);
}

.listing_boxes .item .data_item{
    margin: 60px;
    transition: all 0.5s;
}

.listing_boxes .item:hover .data_item{
    transform: scale(0.9);
}

.listing_boxes .item .icone{
    margin-bottom: 30px;
    transition: all 0.5s;
}

.listing_boxes .item:hover .icone_{
    transform: rotate(15deg);
}

.listing_boxes .item .icone svg{
    height: 73px;
    width: auto;
    max-width: 100%;
    fill: currentColor;
}

.listing_boxes .item .icone svg path{
    stroke: currentColor;
}

.listing_boxes .item .titre{
    font-family: dinot_medium;
}

.listing_boxes .item .desc{
    font-size: 14px;
    margin-bottom: 20px;
}

.listing_boxes .item:hover .link svg{
    transform: rotate(-25deg);
    transition: all 0.5s;
}

.ligne_section{
    position: absolute;
    top: -10px;
    left: 0;
    width: 100%;
    z-index: 5;
}

.ligne_section svg{
    stroke: currentColor;
    fill: currentColor;
}

.section_about_produits{}

.wrap_about_produits .bloc_img_txt_moza .col_img{
    width: 25%;
    background-color: var(--noir_logo);
    padding: 70px 150px 70px 70px !important;
    min-height: 612px;
}

.wrap_about_produits .bloc_img_txt_moza .col_img h2{
    font-size: 28px;
    line-height: 1.3em;
}

.wrap_about_produits .bloc_img_txt_moza .col_img .desc{
    font-size: 17px;
}

.wrap_about_produits .bloc_img_txt_moza .col_img .desc a{
    
}

.wrap_about_produits .bloc_img_txt_moza .col_txt{
    width: 80%;
    padding: 0 !important;
    background-color: transparent;
}

.wrap_about_produits .carousel_visuel_texte .listing{
    column-gap: 0;
}

.wrap_about_produits .carousel_visuel_texte .listing .item{
    width: auto;
    height: 480px;
    display: block;
}

.wrap_about_produits .carousel_visuel_texte .listing .item .produit_prix{
    position: absolute;
    right: 20px;
    top: 20px;
    font-family: dinot_black;
    text-shadow: 1px 1px 3px #000;
}

.wrap_about_produits .carousel_visuel_texte .listing .item .img{
    height: 100%;
}

.wrap_about_produits .carousel_visuel_texte .listing .item .txt .title svg{
    position: absolute;
    top: -1000px;
    width: 25px;
    margin-left: 7px;
}

.wrap_about_produits .carousel_visuel_texte .listing .item:hover .txt .title svg{
    top: 0;
}

.wrap_about_produits .wrap_navigation{
    margin: 0;
}

.wrap_about_produits .wrap_navigation .nav_swiper{
    position: absolute;
    background: var(--noir_logo);
    color: #fff;
}


/* pages internes */

.header_visuel > .e-con-inner{
    width: 900px;
    text-align: center;
}

body:not(.home) div[data-elementor-type="wp-page"] .elementor-widget-text-editor{
    line-height: 1.4em;
    font-size: 18.5px;
}

.elementor-widget-n-accordion .e-n-accordion-item-title{
    color: currentColor !important;
    padding: 15px;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-text{
    font-family: dinot;
    font-size: 18px;
}

.elementor-widget-n-accordion .e-n-accordion-item .elementor-widget-text-editor{
    font-size: 16px !important;
    background-color: #fdfdfd;
    padding: 20px;
}

.wrap_faq{}


/* listing produits */

.wrap_listing_produits > .row{
    column-gap: /*32px*/1.803833145434047%;
    row-gap: /*32px*/70px;
}

.wrap_listing_produits .item_produit{
    width: /*419.5px*/23.64712514092446%;
    max-width: 419px;
}


/* wooocommerce */

.woocommerce h2{
    font-size: 2.2rem;
    margin-bottom: .45em;
}


/* archive produit */

.woocommerce .woocommerce-breadcrumb{
    font-size: inherit !important;
    color: #fff !important;
    margin: 20px 0 0;
    text-align: center;
}

.woocommerce .woocommerce-breadcrumb a{
    color: #fff;
}

.section_archive_produit{
    padding: 80px 0;
}

.head_archive_produit{
    margin-bottom: 40px;
}

.btn_opener_filtres{
    border: 1px solid #222221;
    color: #222221;
    border-radius: 2.5rem;
    cursor: pointer;
    display: inline-flex;
    font-size: 1rem;
    font-weight: 400;
    font-family: 'dinot_medium';
    min-height: 3rem;
    justify-content: center;
    line-height: 1.25;
    max-width: 100%;
    padding: 0 1.5rem;
    padding-left: 1rem;
    align-items: center;
    background-color: transparent;
}

.btn_opener_filtres .txt{
    padding-left: 10px;
}

.btn_opener_filtres .txt2{
    display: none;
}

.btn_opener_filtres.open .txt1{
    display: none;
}

.btn_opener_filtres.open .txt2{
    display: inline-block;
}

.nb_products{
    text-transform: uppercase;
    line-height: 1em;
    font-size: 18px;
}

.wrap_form_filters{
    display: none;
}

.form_filters{
    margin-bottom: 50px;
    padding-top: 10px;
}

.form_filters .wrap_fields{
    gap: 50px;
    padding-bottom: 30px;
    border-bottom: 1px solid #eee;
    padding-top: 40px;
    border-top: 1px solid #eee;
    margin-bottom: 40px;
}

.wrap_fields .field{
    margin-bottom: 25px;
}

.wrap_fields .field .label{
    font-family: 'dinot_medium';
    display: block; 
    margin-bottom: 20px;
}

.wrap_fields .field label{
    display: flex;
    margin-bottom: 5px;
    align-items:center;
}

.wrap_fields .field label input[type="checkbox"]{
    margin-right: 10px;
}

.bloc_submit button{
    
}

.filter-block{
margin-bottom:20px;
}

.filter-option{
    display:flex;
    margin-bottom:5px;
    cursor:pointer;
    align-items: center;
}

.filter-colors{

}

.color-option{
    cursor:pointer;
}

.swatch{
width:25px;
height:25px;
border-radius:50%;
display:inline-block;
border:1px solid #ddd;
}


.woocommerce nav.woocommerce-pagination{
    margin-top: 70px;
}

.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span{
    min-width: 2em;
}

.woocommerce nav.woocommerce-pagination ul li a:focus, .woocommerce nav.woocommerce-pagination ul li a:hover, .woocommerce nav.woocommerce-pagination ul li span.current{
    background: var(--noir_logo);
    color: #fff;
}


/* single produit */

.wrap_breadcrumb{
    background: #f2f2f2;
    padding: 20px 0 20px 0;
    margin-bottom: 50px;
    line-height: 1em;
}

.wrap_breadcrumb .titleBoutique{
    font-family: dinot_bold;
}

.wrap_breadcrumb .woocommerce-breadcrumb{
    margin: 0 !important;
}

.wrap_breadcrumb .woocommerce-breadcrumb, .wrap_breadcrumb .woocommerce-breadcrumb *{
    color: var(--noir_logo) !important;
    font-size: 15px !important;
}

.woocommerce img.pswp__img, .woocommerce-page img.pswp__img{
    width: auto !important;
    max-width: 100% !important;
}

.left_product{
    width: /*850px*/56.66666666666667%;
}

.right_product{
    width: /*585px*/39%;
}

.miniatures_produit{
    width: 130px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.thumb-item {
    cursor: pointer;
    opacity: 1;
    transition: 0.2s;
    overflow: hidden;
}

.thumb-item.active,
.thumb-item:hover {
    opacity: 1;
}

.thumb-item img{
    border-radius: 10px;
    width: 100%;
    max-height: 120px;
    object-fit: cover;
}

.main_img_produit{
    cursor: zoom-in;
    overflow: hidden;
    width: calc(100% - 170px);
    min-height: 300px;
    background: #f5f5f5;
    border-radius: 10px;
}

.main_img_produit img {
    transition: opacity 200ms ease, transform 300ms ease;
    width: auto;
    height: auto;
    max-width: 100%;
}

.main_img_produit:hover img {
    transform: scale(1.15);
}

.main_img_produit img.is-changing {
    opacity: 0;
}

/* Miniatures slider tactile mobile */

@media (max-width: 767px) {

    .custom-gallery-wrapper {
        flex-direction: column;
    }

    .custom-thumbnails {
        flex-direction: row;
        overflow-x: auto;
        gap: 10px;
        padding-bottom: 10px;
        scroll-snap-type: x mandatory;
    }

    .thumb-item {
        min-width: 80px;
        scroll-snap-align: start;
    }
}

.infos_produit{
    padding-top: 30px;
    font-size: 18px;
}

.product_title{
    font-size: /*4rem*/45px;
    line-height: 1.2em;
    margin-bottom: /*35px*/25px;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price{
    color: var(--noir_logo);
    font-size: 1.6em;
    line-height: 1em;
    /*font-family: 'dinot_light';*/
}

.woocommerce div.product form.cart{
    margin-top: 15px;
}

.woocommerce div.product form.cart .variations{
    margin-bottom: 5px;
}

.woocommerce div.product form.cart .variations td, .woocommerce div.product form.cart .variations th{
    display: block;
    line-height: 1em;
}

.woocommerce div.product form.cart .variations th{
    margin-bottom: 10px;
    margin-top: 25px;
}

.woocommerce div.product form.cart .variations label{
    font-family: 'dinot_medium';
    font-weight: normal;
}

.woocommerce div.product form.cart .variations select{
    padding: 17px 25px;
    border-radius: 15px;
    border: 1px solid #0000001a !important;
    outline: none;
}

#pa_couleur{
    display: none;
}

.color-swatch {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    cursor: pointer;
    border: 2px solid #eee;
    transition: all 200ms ease;
    margin-right: 5px;
    display: inline-block;
}

.color-swatch:hover {
    transform: scale(1.1);
}

.color-swatch.selected {
    border-color: #000;
}

.color-swatch.disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.single_variation{
    margin: 15px 0 25px;
}

.woocommerce-variation-add-to-cart{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.woocommerce div.product form.cart div.quantity{
    margin: 0;
    float: none;
}

.woocommerce .quantity .qty{
    width: 58px;
    height: 58px;
    text-align: center;
    padding-left: 15px;
    border: 1px solid #0000001a;
    border-radius: 10px;
}

.woocommerce div.product form.cart .button{
    width: calc(100% - 70px);
    background-color: var(--noir_logo) !important;
    border-radius: 10px;
    padding: 20px 40px;
    text-align: center;
    opacity: 1 !important;
    float: none;
}

.product_meta > span{
    display: block;
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 1em;
}

svg{
    max-width: 100%;
}

.garanties_produit{
    margin-top: 30px;
    font-size: 18px;
    gap: 20px;
}

.garanties_produit .item{
    gap: 15px;
    width: 40%;
    flex : 0 0 auto;
    /*font-family: 'dinot_medium';*/
}

.garanties_produit .item .icone{
    max-width: 90px;
}

.garanties_produit .item .icone svg path{
    fill: var(--noir_logo);
}

.section_content_produit{
    padding-top: 70px;
    padding-bottom: 70px;
    font-size: 18px;
    line-height: 1.4em;
}

.section_content_produit .section_item{
    margin-bottom: 50px;
}

.woocommerce .section_content_produit h2{
    font-size: /*40px*/36px;
    line-height: 1.3em;
    margin-bottom: 25px;
}

.woocommerce .section_content_produit h3{
    font-size: 23px;
    line-height: 1.3em;
}

.section_content_produit .section_item .content{
    border-left: 1px solid #eee;
    padding: 10px 0 10px 30px;
}

.related_products .item_produit{
    width: 48%;
}

.related_products .item_produit .img{
    height: 400px;
}


/* tunnel de commande */

.tunnel_cmd{
    padding-bottom: 70px;
}

.woocommerce-message, .woocommerce-info, .woocommerce-error{
    border-top-color: var(--noir_logo);
    outline: none !important;
    font-size: 18px;
    line-height: 1.5em;
}

.woocommerce-message::before, .woocommerce-info:before{
    color: var(--noir_logo);
}

.title_tunnel_cmd{
    font-size: 3.2rem;
}

.woocommerce table.shop_table td{
    padding: 15px 12px;
}

#coupon_code{
    width: 150px !important;
    padding: 6px 20px !important;
}

.woocommerce .cart .button, 
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:hover, .checkout-button,
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{
    background-color: var(--noir_logo) !important;
    color: #fff !important;
    font-family: 'dinot_medium' !important;
    font-weight: 400 !important;
}

.woocommerce table.cart td.actions button{
    height: 44px;
    font-size: 18px;
}


/* formulaire de commande */

#customer_details{
    margin-bottom: 40px;
}

.woocommerce form .form-row{
    margin-bottom: 15px;
}

form input[type="text"], form select, form textarea, form input.input-text,
.woocommerce form .form-row .input-text, .woocommerce form .form-row select, .select2-container .select2-dropdown, .select2-container .select2-selection{
    padding: 17px 25px;
    border-radius: 15px;
    border: 1px solid #0000001a !important;
    outline: none !important;
    font-size: 15px;
}

.woocommerce form .form-row textarea.input-text, form textarea{
    height: 300px;
}

form input[type="checkbox"], form input[type="radio"]{
    width: 20px;
    height: 20px;
    border: 1px solid #0000001a !important;
    outline: none !important;
}

.cart-collaterals{
    margin-top: 50px;
}

.woocommerce table.shop_table.woocommerce-checkout-review-order-table{
    font-size: 15px;
}

.woocommerce-checkout #payment{
    max-width: 800px;
    font-size: 18px;
    line-height: 1.5em;
    border-radius: 0;
}

.woocommerce-checkout #payment ul.payment_methods, .woocommerce-checkout #payment div.form-row{
    padding: 40px;
}

.woocommerce-checkout #payment ul.payment_methods .woocommerce-info{
    margin-bottom: 0;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{
    text-transform: uppercase;
    font-size: 20px;
}


/* mon compte */

.woocommerce form.login, .woocommerce form.register{
    padding: 50px;
    border-radius: 0;
    max-width: 800px;
}

.woocommerce-account .woocommerce-MyAccount-navigation{
    width: 28%;
}

.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(0,0,0,0.1);
}

.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link a{
    display: block;
    font-size: 15px;
}

.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link.is-active a {
    font-family: 'dinot_bold';
}

.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link a:hover{
    opacity: 0.8;
}

.woocommerce-MyAccount-content{
    font-size: 15px;
    padding-top: 30px;
}

.woocommerce-address-fields__field-wrapper{
    margin-bottom: 35px;
}

.woocommerce-Address address{
    margin: 20px 0;
}

.woocommerce-account .addresses .title .edit{
    font-family: 'dinot_medium';
    float: none;
}

.woocommerce-EditAccountForm button[name="save_account_details"]{
    margin-top: 35px;
}


/* page interne par défaut */

.post_content{
    padding: 80px 0;
    font-size: 18px;
    line-height: 1.6em;
}




/* footer */

.color_grey{
    color: #F0F0F0;    
}

#footer{
    color: #F0F0F0;
    font-size: 15px;
}

#footer a{
    color: #F0F0F0;
}

#footer a:hover{
    color: var(--doree);
}

#footer .elementor-heading-title{
    font-size: 20px;
    font-family: dinot;
    text-transform: uppercase;
    line-height: 1.3em;
}

#footer ul{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.wrap_garanties:before{
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    content:'';
    display: block !important;
    height: 1px;
    background-color: #fff;
    z-index: 0;
}

.wrap_garanties > .e-con-inner{
    justify-content: space-between !important;
    width: 1580px;
    max-width: 95%;
}

.wrap_garanties .e-con-inner > .e-con-full{
    padding: 0 50px;
    background-color: #000;
    position: relative;
    z-index: 1;
    max-width: 365px;
}

.wrap_garanties .elementor-icon-box-wrapper{
    gap: 20px !important;
    align-items: center !important;
}

.wrap_garanties .elementor-icon{
    font-size: 70px;
}

.fill_opacity .elementor-icon svg{
    fill-opacity: 0.7;
}

.wrap_garanties .elementor-icon-box-title{
    font-family: dinot_medium;
    color: #F0F0F0;
    line-height: 1.3em;
    font-size: 20px;
    text-transform: uppercase;
    margin-bottom: 0;
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item{
    margin: 0 !important;
    height: 380px;
    position: relative;
    color: #fff;
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item *{
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item a{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item a:before{
    content:'';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    transition: all 0.5s;
    opacity: 0;
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item a:hover:before{
    opacity: 0.8;
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item a:after{
    content:'';
    width: 32px;
    height: 32px;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url(../images/instagram-icon-svgrepo-com.svg);
    position: absolute;
    top: auto;
    left: auto;
    z-index: 2;
    transform: scale(0);
    transition: all 0.5s;
    display: inline-block;
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item a:hover:after{
    transform: scale(1);
}

.wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item img{
    object-fit: cover;
    border: none !important;
    z-index: 0;
}

.row_footer .e-con-inner{
    border-bottom: 1px solid #3C3C3C;
}

.col_about .logo_footer{
    width: 150px;
}

.col_about .logo_footer a{
    display: block;
}

.col_about .logo_footer img{
    width: 100% !important;
}

.col_menu_footer{}

.col_nos_sports{}

.col_contact_footer{}

.copyright_footer .gallery-item{
    margin-top: 0 !important;
    margin-right: 10px !important;
}


/* responsive */

@media (max-width:1599px) /* testé sur 1366px */ 
{
    .col_header_right{
        width: 70%;
    } 
    
    /* hp */
    
    .section_slider .title, .section_slider .desc, .section_slider .btn{
        margin-left: 150px !important;
    } 
    
    .bloc_img_txt_moza .col_img h2{
        font-size: 2.5rem;
    }  
    
    .listing_boxes .item .data_item{
        margin: 50px;
    }
    
    .listing_boxes .item .titre{
        font-size: 1.7rem;
    }
    
    .item_produit .img{
        height: 500px;
    }
    
    .wrap_about_produits .bloc_img_txt_moza .col_img{
        width: 30%;
        padding-right: 100px !important;
    }
    
    .wrap_about_produits .bloc_img_txt_moza .col_txt{
        width: 75%;
    }
    
    /* footer */
    
    .wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item{
        height: 300px;
    } 

    .wrap_garanties > .e-con-inner{
        padding: 40px 0;
    }
    
    .wrap_garanties .e-con-inner > .e-con-full{
        padding: 0 30px;
        width: 22%;
    }
    
    .wrap_garanties .elementor-icon{
        font-size: 60px;
    }
    
    .wrap_garanties .elementor-icon-box-title{
        font-size: 15px;
    }
    
    .row_footer > .e-con-inner{
        padding: 80px 0 40px;
    }
}

@media (max-width:1365px) /* testé sur 1200px */
{
    body{}
    
    .container{
        max-width: 1140px;
    }
    
    .e-con>.e-con-inner{
        width: 1140px !important;
    }
    
    .col_header_left{
        max-width: 100px;
    }
    
    .col_header_right{
        width: 80%;
    }
    
    /* hp */
    
    .carousel_visuel_texte .listing .item{
        height: 600px;
    }
    
    .bloc_img_txt_moza .col_img{
        padding-right: 100px !important;
    }
    
    .listing_boxes .item .titre{
        font-size: 1.5rem;
    }
}

@media (max-width:1199px) /* testé sur 992px */
{
    body{}

    .container{
        max-width: 900px;
    }
    
    .e-con>.e-con-inner{
        width: 900px !important;
    }
    
    .zone_header_right .menu-main-menu-container > ul > li > a{
        font-size: 14px;
    }   
    
    /* hp */
    
    .bloc_img_txt_moza .col_img h2{
        font-size: 2rem;
        line-height: 1.3em;
    }
    
    .bloc_img_txt_moza .col_txt{
        font-size: 17px;
    }

    .listing_boxes .item .data_item{
        margin: 30px;
    }
    
    .listing_boxes .item .icone svg{
        height: 60px;
    }
    
    .wrap_about_produits .bloc_img_txt_moza .col_img{
        width: 40%;
    }
    
    .wrap_about_produits .bloc_img_txt_moza .col_txt{
        width: 65%;
    }
    
    /* footer */
    
    #footer{
        font-size: 13px;
    }
    
    #footer ul{
        gap: 15px;
    }
    
    #footer .elementor-heading-title{
        font-size: 18px;
        margin-bottom: 10px;
    }
    
    .wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item{
        height: 200px;
    }
}
   
@media (max-width:991px) 
{
    body{}
    
    .hidden_sm{display: none !important;}
    
    .visible_sm{display: block !important;}

    .no_float_sm{float:none !important; flex: none !important; width:100% !important; margin-right:auto !important; margin-left:auto !important; 
    display:block !important; max-width: none;}
    
    .container{
        max-width: 730px;
    }
    
    .e-con>.e-con-inner{
        width: 730px !important;
    }
    
    /* header */
    
    .zone_header_right{
        opacity: 0;
    }
    
    /* hp */
    
    .carousel_visuel_texte .listing .item{
        height: 400px;
    }
    
    .carousel_visuel_texte .listing .item .txt .title{
        font-size: 1.4rem;
    }
    
    .bloc_img_txt_moza .col_img h2{
        font-size: 1.5rem;
    }
    
    .listing_boxes .item{
        width: 33.333333333%;
    }
    
    .wrap_about_produits .bloc_img_txt_moza .col_img{
        width: 60%;
    }
    
    .wrap_about_produits .bloc_img_txt_moza .col_txt{
        width: 45%;
    }
    
    /* footer */
    
    .wrap_garanties{
        overflow: hidden;
    }
    
    .wrap_garanties .e-con-inner > .e-con-full{
        padding: 0 10px;
    }
    
    .wrap_garanties .elementor-icon-box-title{
        font-size: 13px;
    }
    
    .row_footer > .e-con-inner{
        flex-wrap: wrap !important;
    }
    
    .row_footer > .e-con-inner > .e-con{
        width: 33.33333% !important;
        flex: 0 0 auto !important;
        margin-bottom: 30px;
    }

}

@media (max-width:767px) 
{
    body{}

    .no_float_xs{float:none !important; flex: none !important; width:100% !important; margin-right:auto !important; margin-left:auto !important; 
    display:block !important;}
    
    .row .no_float_xs, .row_noflex .no_float_xs{max-width: none;}

    .hidden_xs{display: none !important;}
    
    .visible_xs{display: block !important;}

    .container{
        max-width: 90% !important;
    }
    
    .e-con>.e-con-inner{
        width: 90% !important;
    }
    
    h2, .h2, h2.elementor-heading-title{
        font-size: 2rem;
    }
    
    /* hp */
    
    #SR7_1_1 .hebe.sr7-arrows{
        transform: scale(0.5) !important;
    }
    
    .section_slider .title, .section_slider .desc, .section_slider .btn{
        margin-left: 0 !important;
    }
    
    .wrap_navigation{
        margin-left: 0;
    }
    
    .bloc_img_txt_moza .col_img{
        padding: 50px !important;
        min-height: 0 !important;
    }
    
    .bloc_img_txt_moza .col_txt{
        padding: 30px !important;
    }
    
    .item_produit .img{
        height: 350px;
    }
    
    .section_boxes .wrap_title_section{
        padding: 100px 0;
        min-height: 0;
    }
    
    .section_boxes .logo{
        width: 200px;
        height: 200px;
    }
    
    .section_boxes .title{
        font-size: 1.7rem;
    }
    
    .wrap_about_produits .bloc_img_txt_moza .col_img{
        padding: 50px !important;
    }
    
    .wrap_about_produits .carousel_visuel_texte .listing .item{
        height: 400px;
    }
    
    .carousel_visuel_texte .listing .item .txt .title{
        font-size: 1rem;
    }
    
    /* archive produits */
    
    .head_archive_produit{
        align-items: center !important;
    }
    
    .form_filters .wrap_fields{
        flex-direction: column;
        row-gap: 0px;
    }
    
    /* footer */
    
    .wrap_garanties .e-con-inner > .e-con-full{
        width: 100%;
        margin-bottom: 25px;
    }
    
    .wrap_galerie_footer .elementor-image-gallery .gallery .gallery-item{
        width: 50% !important;
        height: 150px !important;
    }
    
    .wrap_galerie_footer .elementor-image-gallery .gallery > .gallery-item:last-of-type{
        display: none !important;
    }
    
    .row_footer > .e-con-inner > .e-con{
        width: 50% !important;
        padding: 0 15px;
    }
    
    .row_footer > .e-con-inner > .col_contact_footer{
        width: 100% !important;
        margin-bottom: 0 !important;
    }
    
    .row_footer > .e-con-inner .col_menu_footer{
        margin-top: 100px;
    }
    
}



/* elementor repost */

.elementor-271 .elementor-element.elementor-element-b42da95{--display:flex;--min-height:500px;--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;--padding-top:150px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-271 .elementor-element.elementor-element-b42da95:not(.elementor-motion-effects-element-type-background), .elementor-271 .elementor-element.elementor-element-b42da95 > .elementor-motion-effects-container > .elementor-motion-effects-layer{}.elementor-271 .elementor-element.elementor-element-3b0f731{--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:0px;--padding-right:0px;}.elementor-271 .elementor-element.elementor-element-1c1fbf4{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-271 .elementor-element.elementor-element-40d79c2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;}.elementor-271 .elementor-element.elementor-element-4b7ed2d{--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:0px;--padding-bottom:0px;--padding-left:50px;--padding-right:0px;}.elementor-271 .elementor-element.elementor-element-ab2ff9c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-271 .elementor-element.elementor-element-ab2ff9c .elementor-heading-title{font-size:40px;line-height:1.2em;}.elementor-271 .elementor-element.elementor-element-6d613ed{--display:flex;}.elementor-271 .elementor-element.elementor-element-07995c8{padding:20px 20px 20px 20px;}.elementor-271 .elementor-element.elementor-element-9d1429e{--display:flex;}.elementor-271 .elementor-element.elementor-element-b707e45{padding:20px 20px 20px 20px;}.elementor-271 .elementor-element.elementor-element-738d62b{--display:flex;}.elementor-271 .elementor-element.elementor-element-bf4702f{padding:20px 20px 20px 20px;}.elementor-271 .elementor-element.elementor-element-18f9b9a{--display:flex;}.elementor-271 .elementor-element.elementor-element-58a8a7f{padding:20px 20px 20px 20px;}.elementor-271 .elementor-element.elementor-element-7b57807{--display:flex;}.elementor-271 .elementor-element.elementor-element-8efa6d5{padding:20px 20px 20px 20px;}.elementor-271 .elementor-element.elementor-element-2e87e5a{--n-accordion-title-font-size:1,75rem;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:15px;}.elementor-271 .elementor-element.elementor-element-6b5c10b{--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:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-271 .elementor-element.elementor-element-524d73e{text-align:center;}.elementor-271 .elementor-element.elementor-element-bb8e400{--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:0px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-271 .elementor-element.elementor-element-b42da95{--content-width:600px;}.elementor-271 .elementor-element.elementor-element-1c1fbf4{--width:50%;}.elementor-271 .elementor-element.elementor-element-4b7ed2d{--width:50%;}.elementor-271 .elementor-element.elementor-element-6b5c10b{--content-width:600px;}}