/*
 *  Bootstrap TouchSpin - v3.1.1
 *  A mobile and touch friendly input spinner component for Bootstrap 3.
 *  http://www.virtuosoft.eu/code/bootstrap-touchspin/
 *
 *  Made by Istv�n Ujj-M�sz�ros
 *  Under Apache License v2.0 License
 */
 /*
 :root {
    --header-top-bg-color: #67a16c; 
    --footer-link-hvr-color: #67a16c;
 }
 */
/************************* MODIF CORINNE
*/
:root {
    --primary-bg-color: #B3141B;
    --primary-text-color: #fff;
    --secondary-bg-color: #95b219;
    --secondary-text-color: #fff;
    --tertiary-bg-color:#A17D5C;
    --tertiary-text-color:#7C4B07;
    --body-text-color: #666;
    --body-background-color: #fff;
    --header-nav-text-color: #fff;
    --header-nav-text-hover-color: #eee;
    --header-nav-bg-color: #95b219;
    --header-menu-text-color: #222;
    --header-background-color: #fff;
    --header-top-text-color: #222;
    --header-top-texthvr-color: #95b219;
    --price-color: #95b219;
    --border-color: #f7f4ef;
    --main-title-color: #B3141B;
    --product-title-color: #B3141B;
    --footer-news-bg-color: #222;
    --footer-news-title-color: #fff;
    --footer-news-desc-color: #ffffff;
    --footer-title-color: #fff;
    --footer-link-color: #ffffff;
    --footer-link-hvr-color: #95b219;
    --main-title-font: 'Gloria Hallelujah',cursive;
    --primary-font: 'Nunito',sans-serif;
    --secondary-font: 'Roboto',Helvetica,sans-serif;
}



/* scrooll infini */
.page-load-status {
  text-align: center;
  padding: 1rem 0;
}
.page-load-status img {
  animation: spin 4s linear infinite;
}
.loader-img {
  display: block;
  margin: 0 auto;
  width: 8cqmin;
}


/* Scroll infini*/
.pagination {
  display: none;
}

/* COCO correction des bugs */
/*mise en page sur le checkout */
/* pourl e bouton ok entreprise en mode telephone*/
.delivery-option .row {
    margin-right: -15px;
}
.carriere-name-container{
    padding-left: 0;
}
body#checkout section.checkout-step .my-2 .btn:hover,
body#checkout section.checkout-step .my-2 .btn.active,
body#checkout section.checkout-step .my-2 .btn:focus {
    background-color:var(--header-nav-bg-color);
    /*! border-color:#e6e6e6 */
}
@media(max-width: 437px) {
    .nav-inline .nav-item + .nav-item,
    .nav-inline .nav-link + .nav-link {
        margin-left: 0;
        margin-top: 5px;
   }
}
/*menu de tri trop au dessus*/
.dropdown-menu{
    z-index: 100;
}


/*COCO fenetre de resultat de recherche*/
#ui-id-1 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
 .ui-front.ui-menu .ui-menu-item {
  display: flex;
  flex-direction: column;
  /*width: calc(50% - 10px); /* 2 par ligne */
  box-sizing: border-box;
}
@media (max-width: 480px) {
    .ui-front.ui-menu .ui-menu-item{
        width:45%;
    }
}

.products .thumbnail-container {
    float: left;
    margin: 0 0 15px;
    position: relative;
    text-align: center;
    overflow: hidden;
    border: 1px solid var(--header-nav-bg-color);
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
    width: 100%;
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -khtml-border-radius: 8px;
    padding: 8px;
    transition: all 400ms ease-in-out 0s;
    -webkit-transition: all 400ms ease-in-out;
    -moz-transition: all 400ms ease-in-out;
    -o-transition: all 400ms ease-in-out;
    -ms-transition: all 400ms ease-in-out;
}
/* sinon l'image du block produit depasse le bloc */
.products .product-thumbnail {
  padding: 5px;
}
/* Modif pour enlever la barre de scroll horizontale them.css ligne 729-768*/
/* Modif pour enlever la barre de scroll verticale notemment sur la page de checkout*/

.container {
    overflow-x: hidden !important; 
    overflow-y: hidden !important;
}
/* modif pour enlever le decalage a gauche dans les listing produits*/
/* il faudrait peut être changer uniquement la propriété pour la classe .products.product-thumbs.row*/
@media (max-width: 767px) {
    #order-items > .row{
        display: none
    }
    .row {
        margin-left: auto; 
        margin-right: auto; 
    }
}
.row {
    margin-left: 0px;
}

/* Pour les petits écrans centrage des bloc produitsur une colonne*/
@media (max-width: 767px) {
    .product-thumbs .product-miniature {
      max-width: 400px;
      float: none !important;   /* neutralise le float */
      margin-left: auto;
      margin-right: auto;
    }
  }


/* AJOUT Style pour redaction des contenus */
#cms .page-content > h1{
    color: var(--tertiary-text-color);
    font: 700 26px/30px ;
    margin: 20px 0 ;
}
#cms .page-content > h2{
    color: var(--tertiary-text-color);
    font-size: 20px;
    font-weight: 500;   
    margin: 20px 20px 12px;
}
#cms .page-content > ul{
    margin-left: 50px ;
    line-height: 1.6;
}
#cms .page-content > ul2{
    margin-left: 70px ;
    line-height: 1.6;
}


/*COCO modif pour mise en forme header avec des elements sur plusieurs lignes*/
/*******************************HEADER********************************************/
@media (min-width: 1200px) {
    #header {
        min-height: unset !important;
    }
}
#header .position-static {
  width: 100%;
  text-align: center;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
/* dimension maximum du logo */
#header .logo {
	max-width: 125px;
	max-height: 76px;
}
#_desktop_logo {
    margin: 0;
    display: flex;
    order : 1;
    align-items: flex-start;
    margin-right: 249px;
}
#_desktop_cart {
    display: flex;
    order:6;
    align-items: flex-end;
    margin-right: 10px; /* Optionnel : ajoutez un espace à droite pour espacer du contenu suivant */
    margin-left : 5px; /* Optionnel : ajoutez un espace à droite pour espacer du contenu suivant */
}
.blockcart .header {
    width : 40px
}
#_desktop_user_info {
    display: flex;
    order:5;
    align-items: flex-end;
    margin-left: 5px;
    margin-right: 5px; 
}
.search-widget {
    display: flex;
    order: 4;
    width: auto;
    align-items: flex-end;
    margin-left: 5px;
    margin-right: 5px; 
}
.search-widget .ttsearch_button {
    cursor: pointer;
    width: auto;
    justify-content: center; 
    display: flex;
    align-items: center;
    padding-left: 0px;
    padding-right: 0px;
}
.search-widget .ttsearch_button span {
    color: var(--body-text-color);
}
.psd_store_selector {
    display: flex;
    order: 3;
    align-items: center; /* Final alignment */
    /*margin: 35px 15px 0 0;*/
    margin: 0 5px; /* Simplification de margin-left et margin-right */
    padding: 0;
    background-color: transparent; /* Animable */
    /*box-shadow: 2px 2px 8px 0 rgba(0,0,0,.2);*/
    box-shadow: none;
    color: var(--body-text-color);
    cursor: pointer;
    border-radius: 3px;
    float: right;
    position: relative;
  	justify-content: center;
    /*width: 210px;*/
    width: auto;
    height: auto;
    transition: background-color 0.2s ease, color 0.2s ease; /* Plus précis */
    overflow: hidden;
    z-index: 100;
}
.psd_store_selector.fixed.closed {
	right: 0;
}

.psd_store_selector.fixed {
	position: relative;
    bottom: 0px;
    border-radius: 5px;
    height:auto;
    width: auto;
    /*top: inherit;
    right: 0;
    left: inherit;
    width:230px;
*/
}
.psd_store_selector i {
	top: 0px;
	position: relative;
	float: left;
	margin-left: 5px;
  }
.psd_store_selector.active {
	background: transparent;
    color: var(--header-top-text-color);
    top: -2px;
    position: relative;
    padding-left: 17px;
}
.ttuserheading {
  height: 110px;
    padding: 0;
  display: flex;
  align-items: center;   /* centre verticalement l'icône par rapport au bloc texte */
  gap: 10px;             /* espace entre icône et texte */
  color: var(--header-top-text-color)
}

.ttuserheading .user-title {
  max-width: 90px;
  display: -webkit-box;        
  -webkit-box-orient: vertical; 
  -webkit-line-clamp: 3;      
  overflow: hidden;            
  text-overflow: ellipsis;     
  word-break: break-word;      
}
.user-info .user-title{
    padding-bottom: 5px;
}
@media (max-width: 991px) {
    .blockcart .header,
    .search-widget .ttsearch_button{
        padding: 0;
        height:110px;
        display: flex;            /* on active flexbox */
        align-items: center;      /* centre verticalement le contenu */
        justify-content: center;  /* centre horizontalement si nécessaire */
    }
    .user-info {
		width: 200px;
		padding:10px 12px;
	}
}
@media(min-width:1199px){
    .ttuserheading svg{
        display: block ; 
    }
}
@media (max-width: 1199px) {
    #_desktop_logo {
        margin-right: 127px;
    }
    #_desktop_user_info .ttuserheading {
        width: 40px;
        justify-content: center;
        display: flex;
    }
    .search-widget .ttsearch_button {
        width: 40px;
        justify-content: center;
        display: flex;
    }
    .ttuserheading .user-title {
        display: none; 
    }       

}
@media (min-width: 1199px) {
    .user-info .user-title{
        display: none;
    }
}
/* mode grand ecran grand menu au centre*/
@media (min-width: 992px) {
    #tt-menu-horizontal {
      display: flex;
      order : 2;
      align-items: flex-start;
      margin-right: auto ;
      margin-left: auto;
    }
}
/**Modif pour le mode telephone*/
@media (max-width: 991px) {
    .tt-menu-horizontal .title-menu-mobile {
        padding: 0;
        cursor: pointer;
        margin-right: 120px;
        width:40px; 
    }
    #header .tt-menu-horizontal ul li > a {
        padding: 12px 15px;
    }

    #_mobile_logo {
        display: flex;
        order : 1;
        align-items: flex-start;
        margin-right: auto;
        margin-left: auto;
        margin-top: 0;
        margin-bottom: 0;
    }
    
    .hidden-md-up.text-sm-center.mobile {
        display: flex;
        order: 6;
        align-items: flex-end;
        margin-right: 0px;
    }
    .search-widget {
        display: flex;
        width: 40px;
        align-items: center;
        margin-left: 5px;
        margin-right: 5px; 
    }
    #_mobile_user_info {
        width: 40px;
    }
    .ttuserheading{
        display: flex;
        width: 40px;
        align-items: center;
        margin: 0;
    }
    #_desktop_cart {
        display: none;
    }
    #_desktop_user_info {
        display: none;
    }
   
}
@media (max-width: 767px) {
    .tt-menu-horizontal .title-menu-mobile {
        width:40px; 
        margin-right: 120px;
    }
    #_mobile_logo img{
        max-width: 90px;
    }
    #header .logo {
        max-width: 104px;
        max-height: 65px;
     }
    .psd_store_selector {
        width: 40px;  
    }
}
@media (max-width: 500px) {
    .tt-menu-horizontal .title-menu-mobile {
        width:40px; 
        margin-right: auto;
    }

}
/* Mettre la petite fenetre de connexion user devant le panier*/
.user-info {
    z-index: 3;
 }
/*FIN modif COCO*/
/* MIS EN COMMENTAIRE CAR CE CHANGEAIT DES TRUC AVEC LES MODIF DU DESSUS*/
/*
@media (max-width: 767px) {
    /* enleve la marge */
    /*
     {
        box-sizing: border-box;
      }
      
      body, html {
        margin: 0;
        padding: 0;
        overflow-x: hidden;
      }
   
    }
    */

/****** Modif mise en forme du bandeau subcategories*/
.breadcrumb .h1.title-category {
	color: var(--main-title-color);
	float: left;
	width: 100%;
	font: 700 20px/24px var(--main-title-font);
}
#subcategories .subcat li {
    background: var(--secondary-bg-color);
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -khtml-border-radius: 8px;
    padding: 10px;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    width: 100%;
  }
/*#subcategories {
    text-align: center;
    float: none;
    width: auto;
    max-width: 1100px;
    margin:auto;
  }*/
  #subcategories {
    width: 100vw;                  /* 100% de la largeur de la fenêtre */
    max-width: none !important;   /* désactive toute contrainte de max-width */
    margin-left: calc(-50vw + 50%); /* recentre l’élément */
    padding: 0 1rem;
    box-sizing: border-box;
  }
/*  .breadcrumb .parallax {
	width: 100%;
	background: #f7f4ef;
	background-repeat: no-repeat;
	padding: 10px 0px;
}
*/

  
  @media screen and (max-width: 768px) {
    .parallax-container {
      /*min-height: 150px;*/
      background-position: center top;
    }
  }
 /* .breadcrumb .parallax {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
  }*/
  #wrapper .breadcrumb {
    border-bottom: 1px double var(--secondary-bg-color);
    /*padding-bottom: 1rem;*/
  }
  
  #wrapper .breadcrumb ol {
    display: inline-block;
    float: none;
    margin: 0 auto;
    width: max-content;
    max-width: 80%;
    padding: 5px;
    vertical-align: top;
    /*background-color:  rgba(255, 255, 255, 0.85);*/
    /*text-shadow: 0 0 5px rgba(255, 255, 255, 0.7);*/
    background-color: rgba(255, 255, 255, 0.568);
    backdrop-filter: blur(4px);
    border-radius: 8px;

  }

    body.menu-open #wrapper .breadcrumb ol {
    background: none;
    }

  
  .parallax-container {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    overflow: hidden;
  }
  
  /* Images à gauche et droite */
  .parallax-left,
  .parallax-right {
    position: absolute;
    top: 0; bottom: 0;
    min-width: 400px;
    background-size: auto 100%; /*l'image s'adapte à la hauteur*/
    /*background-position: center;*/
    background-repeat: no-repeat;
    /*background-attachment: fixed; */
    z-index: 1;
  }
  
  .parallax-left {
    background-position: left center;
   left: 0;
  }
  
  .parallax-right {
    background-position: right center;
    right: 0;
  }
  
  /* Contenu central */
  .parallax-content {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 1rem;
    /*background: rgba(255,255,255,0.35);*/
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  
/* Changement du chemin d'acces pour l'affichage des icones de catégories*/

#subcategories ul li .subcategory-image a::before {
    background-image: url(../../../PRS002_04_child/assets/img/cat-shape.png);
    content: '';
    display: flex;
    align-items: center;
    margin: auto;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    background-size: cover;
}
#subcategories ul li .subcategory-image a {
    border: 1px solid #e5e5e5;
    display: block;
    overflow: hidden;
    padding: 0px;
    border-radius: 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
}
#subcategories ul li {
    float: none;
    width: auto;
    /*margin: 5px ;*/
    text-align: center;
    min-height: 50px; 
}
/* images des sous catégories */

.subcategory-image a{
    width : 170px;
    height : auto;
}



#subcategories ul li .subcategory-name {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;     /* max 2 lignes */
    line-clamp: 2;             /* standard property for compatibility */
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    height: auto;
    line-height: 1.4em;        /* ajustable selon police */
    max-height: 2.8em;         /* 2 * line-height */
  }
#subcategories ul li:hover .subcategory-name {
    color: var(--header-nav-text-hover-color);
}
/* Changement du format du titre sur les categorie de la page d'acceuil */
.tt-title {
	color: var(--price-color);
    font: 400 38px/42px var(--main-title-font);
    margin: 0 0 20px;
	float: left;
	text-align: center;
	width: 100%;
	position: relative;
	background: url("../img/seperator.png") no-repeat scroll center bottom;
	padding: 0 0 30px;
}

/*********************** Modif page produit ************************/
.product-info-grid .title-block,
.product-info-grid .lot-block,
.product-info-grid .desc-block,
.product-info-grid .supplier-block,
.product-info-grid .product-price-and-cart ,
.product-info-grid .custom-block,
.product-info-grid .pack-block,
.product-info-grid .features-block {
  width: 100%;

}

.title-block h1, .title-block h2 {
  margin: 0;
}
.pb-right-column .tt-producttitle {
    border-bottom: none;
    color: var(--main-title-color);
    font: 600 25px/30px var(--main-title-font);
    padding: 0;
    position: relative;
    margin: 0 ;
}
.pb-right-column .value_lot {
    border-bottom: none;
	color: var(--body-text-color);
	font: 500 20px/22px var(--secondary-font);
	padding: 0;
	position: relative;
    margin: 0 ;
}

.pb-right-column .prod {
    color: var(--tertiary-text-color);
    text-align: right;
    font-size: 13px;
    margin: 0px 0px 5px;
    /*display: -webkit-box;
    -webkit-line-clamp: 1;
    -moz-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;*/
    line-height: 14px;
}

.pb-right-column .product_description_short{
    border-bottom: none; 
    margin: 0px;
}
.pb-right-column .product-additional-info {
	margin-top:0px;
	padding:0;
    border-bottom: none; 
}
/* marge supérieur pour le prix */
.pb-right-column .product-price,
.ttstickyAddToCart-price .product-price {
    margin: 0;
}
.pb-right-column .product-prices div, 
.ttstickyAddToCart-price .product-prices div {
    margin-bottom:0px; 
}
.ttstickyAddToCart-price .product-prices {
    padding-left:0px; 
    padding-right: 0px;
}
.ttstickyAddToCart-price .discount {
    font: 600 13px/16px var(--primary-font);
}
/* largeur du front page produit point relais */
.pb-right-column .product-additional-info {
    width: 100%;
}
.product-price-and-cart .product-add-to-cart{
    margin : 0;
}
.product-price-and-cart .product-add-to-cart .product-quantity {
    float: left;
    width: 100%;
    padding: 0 0 0px; 
    border-bottom: none; 
    margin: 0 0 0px;
}
.product-info-grid .product-price-and-cart {
    display: flex;
    align-items: center;
    justify-content: center; /* utile si les enfants doivent aussi être centrés entre eux */
    gap: 1rem;
    width: 100%; /* largeur = contenu */
    max-width: 300px;
    margin: 0 auto; /* centre horizontalement dans le paresnt */
    margin: 0 0 0 0 ;
  
    border-radius: 8px;
    border: 2px solid var(--secondary-bg-color);
    padding: 0.5rem 2rem 0.5rem 2rem; /* important pour éviter que le contenu touche la bordure */
  }

  


.product-price-and-cart > .product-prices,
.product-price-and-cart > .product-btn-content {
    flex: 0 0 auto;         /* Ne pas s'étirer */
    width: auto !important; /* Empêche le 100% */
    display: inline-block;  /* Sécurité */
    float: none !important; /* Annule un float éventuel */
    border-bottom: none;
    margin: 10px;
    padding: 0;

  }
  .product-price-and-cart {
  display: flex;
  /*flex-wrap: wrap;*/
  justify-content: space-between;

}

.product-price-right {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 10px 0 10px 10px ;

}
.product-price-and-cart .product-price-left {
    margin: 10px 0 10px 10px ;
}
   .product-price-and-cart .product-price-left > .product-prices {
    margin: 0;
    margin-left: auto;
    padding: 0;
    border-bottom: none;
    float: none !important;
  }  
  .product-price-and-cart .product-price-left .product-prices,
   .product-price-and-cart  .product-price-left .discount,
   .ttstickyAddToCart-price .product-prices  {
 display: flex;
 align-items: center;
   }

.product-price-right,
.product-price-and-cart .product-price-right > .product-btn-content { 
    margin-left: 10px;
    /*margin-right: auto;*/
    border-bottom: none;
    padding: 0;
}
.pb-right-column .product-price .current-price{
	font: 700 1.3em var(--primary-font);
	margin:0;
}


/* Conteneur global (garde ton existant si déjà OK) */
.product-price-and-cart{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}

/* --- Bloc prix à gauche --- */
.product-price-and-cart .product-prices{
  display:flex;
  flex-wrap:wrap;           /* autorise une 2e ligne */
  align-items:baseline;     /* aligne visuellement les prix */
  gap:.4rem .8rem;
  margin:0; padding:0;
  float:none; width:auto;   /* évite les floats / 100% agressifs */
}

/* LIGNE 1 : ancien + actuel */
.product-prices .product-discount,
.product-prices .product-price{
  order:1;                  /* en premier sur la 1re ligne */
  white-space:nowrap;
  margin:0;
}
.product-prices .product-discount .regular-price{
  text-decoration:line-through;
  opacity:.6;
}

/* LIGNE 2 : % de remise, sous les prix */
.product-prices .discount.discount-percentage{
  order:2;                  /* passe après la ligne des prix */
  flex:0 0 100%;            /* occupe toute la ligne => descend dessous */
  margin:.3rem 0 0;
  line-height:1.1;
  white-space:normal;       /* peut se couper si besoin */
}

/* --- Bouton à droite (inchangé) --- */
.product-price-right{
  margin-left:auto;
  display:flex; align-items:center; justify-content:flex-end;
}
.product-add-to-cart .product-quantity{ float:none; width:auto; margin:0; padding:0; }

/* Responsive : si trop serré, le bouton passe dessous à droite */
@media (max-width:576px){
  .product-price-and-cart{ flex-wrap:wrap; }
  .product-price-right{ width:100%; justify-content:flex-end; margin-top:.5rem; }
}

/* 1) Cadre : pas de fuite + largeur correcte */
.product-info-grid .product-price-and-cart{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  width:100%;
  padding:.6rem 1rem;
  border:2px solid var(--secondary-bg-color);
  border-radius:10px;
  box-sizing:border-box;   /* évite le calcul width + padding + border */
  overflow:hidden;         /* coupe tout débordement visuel */
}

/* IMPORTANT : permettre aux enfants de rétrécir dans un flex */
.product-price-and-cart > *{ min-width:0; }

/* 2) Bloc prix à gauche : 1re ligne (ancien+actuel), 2e ligne (remise) */
.product-price-and-cart .product-prices{
  display:grid;
  grid-template-columns:auto auto;
  grid-auto-rows:min-content;
  column-gap:.5rem;
  row-gap:.2rem;
  align-items:baseline;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
  max-width:100%;
  float:none !important;         /* neutralise col-xx */
}
.product-prices .product-discount{ grid-column:1; grid-row:1; margin:0; }
.product-prices .product-price   { grid-column:2; grid-row:1; margin:0; }
.product-prices .discount.discount-percentage{
  grid-column:1 / -1;            /* passe en dessous sur toute la largeur */
  grid-row:2;
  margin:0;
}

/* 3) Neutralise les styles de grille bootstrap à l’intérieur */
.product-price-and-cart .product-prices[class*="col-"]{
  padding-left:0; padding-right:0;  /* évite le “décalage” latéral */
}

/* 4) Esthétique des valeurs */
.product-prices .product-discount .regular-price{
  text-decoration:line-through;
  opacity:.6;
  white-space:nowrap;
}
.product-prices .current-price .current-price-value{
  font-weight:700;
  font-size:1.3em;
  line-height:1;
  white-space:nowrap;
}

/* 5) Colonne droite inchangée */
.product-price-right{
  flex:0 0 auto;
  display:flex; align-items:center; justify-content:flex-end;
  margin:0;
}
.product-add-to-cart .product-quantity{ float:none; width:auto; margin:0; padding:0; border:0; }






.pb-right-column .product-features ul li {
  display: flex;
  justify-content: flex-start; /* ou flex-start si tu ne veux pas d'espacement */
  gap: 1rem;
  padding: 4px 0;
}
.pb-right-column .product-features .feature-list {
    display: grid;
    grid-template-columns: 1fr 2fr; /* ou 50% 50%, ou auto auto selon ton besoin */
    gap: 0.5rem 1rem; /* espace entre lignes et colonnes */
    list-style: none;
    padding: 0 0 15px 0 !important;
    margin: 0;
  }

  .feature-list li.name {
    font-weight: bold;
    text-align: left;
  }
  
  .feature-list li.value {
    text-align: left;
  }

.product-info-grid {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 1.5rem;
    align-items: start;
    justify-items: start;
    max-width: 100%;
  }
  .product-info-grid > div:empty {
    display: none !important;
} 

 /* .supplier-block {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }*/


@media (max-width: 768px) {
    .product-info-grid .title-block,
    .product-info-grid .lot-block,
    .product-info-grid .supplier-block{
    width: 100%;
    text-align: center;
    }  
    .product-info-grid .product-price-and-cart,
    .product-info-grid .product-actions{
        margin: 0 auto;
    }  
}
/* COCO modif du carrousel des miniatures pour qu'en mode telephone il se trouve a droite de la photo*/
/*********************************************************/
/*@media (max-width: 767.98px) {
.product-cover{
    width: 75%;
    margin: 0 auto;
    float: left

}
 #product .images-container .js-qv-mask.mask {
    width: auto !important;
    float: right;
    margin: 0 auto;
 } 

  }*/
@media (max-width: 768px) {  
    .js-images-container {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    }
    .js-qv-mask .owl-stage-outer {
    height: auto !important;
    }
    .js-qv-mask .owl-stage {
    display: flex !important;
    flex-direction: column;
    }
    .js-qv-mask .owl-item {
    margin-bottom: 8px;
    }
    .js-qv-mask {
    width: 100px;
    height: auto;
    max-height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    }
    .js-qv-product-images.owl-carousel .owl-stage-outer {
    height: auto !important;
    }
    .js-qv-product-images.owl-carousel .owl-stage {
    display: flex !important;
    flex-direction: column;
    }
    .js-qv-product-images.owl-carousel .owl-item {
    margin-bottom: 8px !important;
    width: 90px !important;
    }
    .images-container {
  align-items: stretch; /* important pour synchroniser les hauteurs */
}
@media (min-width: 544px) and (max-width: 767px) {
    #product .pb-left-column #content {
        float: none;
        max-width: 95%;
        text-align: center;
    }

}
}
@media (max-width: 543px) {
    #product .images-container .js-qv-mask.mask {
        width: 336px !important; 
    }
    .js-qv-product-images.owl-carousel .owl-item {
    margin-bottom: 8px !important;
    width: 70px !important;
    }

}

/************************* FIN MODIF CORINNE
*/
/* header sticky */
#header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;  
    border-bottom-color : var(--secondary-bg-color);
    border-bottom-width: 1px;
    border-bottom-style: double;
}

/* marge supérieur pour le prix */
/*.pb-right-column .product-prices{
    margin-top : 15px;
}*/
/* largeur du front page produit point relais */
/*.pb-right-column .product-additional-info {
    width: 100%;
}*/


/* retirer espace vide inutile dnas la page produit */
.product-add-to-cart .btn-content{
    float: left;
    padding: 0 0 0px;
    border-bottom : none;
}



/* marge pour l'affichage des caractéristiques dans le listing produit */
.caracteristiques{
    margin-bottom: 5px;
}

/* retirer les icones de changement de grid */
.grid_list{
    display : none;
}



.block-categories{
    display : none;
}

@media (min-width: 1500px) {
	.product-thumbs .product-list .thumbnail-container .ttproduct-image {
        width: 100px;
	}
}


/* ne pas afficher le bouton quickview */
.quick-view{
    display : none;
}

/* side panier */
.cart_block {
	background: #ffffff none repeat scroll 0 0;
	border: 1px solid var(--border-color);
	position: fixed;
	right: 0;
	top: 30%; /* taille en hauteur */
	width: 320px; /* 320px à faire varier en fonction taille ecran */
	z-index: 2;
	bottom: 0;
    transition: none;
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    -ms-transition: none;
    transform: translateX(0);
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -o-transform: translateX(100%);
    -ms-transform: translateX(100%);
    flex-direction: column;
    display: flex; 
}
.cart_block.active{
	transform: translateX(0);
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-o-transform: translateX(0);
	-ms-transform: translateX(0);
}

.blockcart .cart-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 30px;
    padding: 30px 30px 0 30px;
}
.cart_block_list .productname {
	margin: 0 0 10px;
	line-height: 17px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;               /* optionnel : espace entre les éléments */
  max-height: calc(2 * 40px); /* si chaque ligne fait 40px */
  overflow: hidden;
  max-width: 160px;
}
/* taille de l'image dans le panier */
.cart_block .products .cart_img {
    width: 45px;
    float: left;
    margin: 0 15px 0 0;
    border: none;
}


/* ne pas afficher les icones de panier et connexion sur le côté */
.sticky-link-icon .sticky-user .ttuser, 
.sticky-link-icon .compare .bt_compare, 
.sticky-link-icon .top-wishlist .wishtlist_top,
.sticky-link-icon .sticky-cart .sticky-inner {
    display : none;
}

.product-pack .pack-product-container .pack-product-name {
    -webkit-box-flex: 0;
    -moz-box-flex: 0;
    box-flex: 0;
    -webkit-flex: 0 0 50%;
    -moz-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    font-size: 13px;
    display: flex;
    flex-direction: column;
    justify-content: center; 
}
/* alignement au centre des élements dans l'affichage du pack */
.product-pack .pack-product-container .pack-product-name{
    display: -webkit-box;
    display: -moz-box;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    -js-display: flex;
    display: flex;
    align-items: baseline;
}
.product-pack .pack-product-container .pack-product-price{
    flex-direction: column;
    justify-content: center;
}

@media (max-width: 543px) {
  .product-container .pb-right-column{
    padding-left: 5px;
    padding-right: 5px;
  }  
}
/* alignement à gauche du nom du produit/producteur dans l'affichage du pack */
.product-pack .pack-product-container .pack-product-price, .product-pack .pack-product-container .pack-product-quantity {
    display: -webkit-box;
    display: -moz-box;
    display: box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    -js-display: flex;
    display: flex;
    align-items: center;
}
.pack-product-price{
    flex-wrap: wrap;
}
.pack-product-price .product-discount {
    font-size: 10px;
    text-decoration:line-through; 
    line-height: 1.1;
}
.pack-product-price .product-price {
    color: var(--price-color) ;
    line-height: 1.1;
}


.pack-item--disabled {
  opacity: .45;
  /* pointer-events: none;       bloque les clics */
  filter: grayscale(1);
    transform: none !important;

  /* z-index: 1000; */
}


/* checkbox remove pour chaque produit du pack*/
/*.remove-product-checkbox{
    margin : 0px;
    margin-top : 0px;
}*/
/* Cache la vraie checkbox */
.remove-product-checkbox {
    display: none;
  }
  
  /* Style du label qui remplace la checkbox */
 .pack-product-quantity .custom-checkbox {
    display: inline-block;
    width: 30px;
    height: 30px;
    border-radius: 50%; /* rend la forme ronde */
    border: 2px solid #ccc;
    background-color: white;
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
    margin:0 0 0 6px;   

  }
  
  /* Quand la checkbox est cochée */
  .remove-product-checkbox:checked + .custom-checkbox {
    background-color: var(--price-color); 
    border-color:var(--price-color);
  }
  
  /* Ajout d'un check visuel (optionnel) */
  .remove-product-checkbox:checked + .custom-checkbox::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 10px;
    width: 7px;
    height: 15px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
  }
  
/* les images des produits dans le détail du pack*/
.thumb-mask > .mask img {
    height: auto;
    width: 40px;
}
.thumb-mask > .mask {
    position: relative;
    width: 40px;
    height: auto;
    overflow: hidden;
    margin: 0.625rem 0;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -khtml-border-radius: 8px;
}

/* affichage du lot dans le panier sticky */
.caracteristiques-lot-sticky{
    font-weight : normal;
    color : var(--body-text-color);
    font-size: 12px;
}
.pack-items {  
    font-weight : normal;
    color : var(--body-text-color);
    font-size: 12px;
 
}

/* détails produits contenu dans le pack */
.detail-pack-line{
    width: 100%;
    text-align: left;
    padding-left: 60px;
}
label, .label {
    color: #414141;
    text-align: left;
    font-size: 13px;
}
.cart-info{
    width: 75%;
}

/* alignement et padding du bouton ajout au panier */
#products .product-list .thumbnail-container .tt-button-container .btn.select-btn, #products .product-list .thumbnail-container .tt-button-container .btn.add-to-cart, #products .product-sort .thumbnail-container .tt-button-container .btn.select-btn, #products .product-sort .thumbnail-container .tt-button-container .btn.add-to-cart {
    padding: 0 10px;
}
#products .product-list .thumbnail-container .add-to-cart svg, #products .product-list .thumbnail-container .select-btn svg, #products .product-sort .thumbnail-container .add-to-cart svg, #products .product-sort .thumbnail-container .select-btn svg {
    margin: 0 0 0 0;
}

/* div qui contient le + - et ajout au panier */
.tt-button-container{
    width: 100%;
}

/* bloc produit global */
.products .thumbnail-container {
    height: 150px; /* hauteur du bloc */
    padding: 3px;
    max-width: 400px;
}

/* ne pas couper le nom du produit */
#tab-shortview .product-description {
    padding: 5px;
    text-align: left;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;

}

/* retirer le padding en trop à gauche */
.products .product-sort .product-price-and-shipping {
    padding: 0;
}
#products .product-list .thumbnail-container .tt-button-container, 
#products .product-sort .thumbnail-container .tt-button-container {
    padding: 0;
    margin-top: auto; /* pousse le prix en bas */
}

/* ne pas enlever la quantité */
@media(max-width:480px) {
    #tab-shortview .product-quantity,#tab-listview .product-quantity{
        display: flex !important;
    }
    .product-sort .thumbnail-container .ttproduct-desc{
        padding: 0 0 0 10px;
    }
}

/* permet de mettre l'image à gauche et le texte à droite */

.thumbnail-container {
    display: flex;
    align-items: center;
    width: 100%;
}
.ttproduct-image {
    flex: 0 0 auto;
}
.ttproduct-desc {
    flex: 1;
    height: 100%;
    padding : 3px;
}
/* Optionnel : espacer proprement les enfants dans .product-description */
.product-description > * {
    margin-bottom: 10px;
}
@media(min-width: 768px){
    .product-list .ttproduct-desc,.product-sort .ttproduct-desc{
        padding: 3px;
    }
}

 
.products .product-title >a{
    color: var(--header-top-text-color);
    float: left;
    font-weight: bold;
    width: 100%;
    font-size: 14px;
    margin: 0 0 6px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;             /* standard property for compatibility */
   -webkit-box-orient: vertical;
    /*overflow: hidden;*/
    text-overflow: ellipsis;
    /*height: 3em; /* ~2 lignes selon la taille */
    /*line-height: 1.5em;*/
}
/* Affiche tout le titre au survol */
/*.products .product-title >a:hover {
    -webkit-line-clamp: unset;
    height: auto;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    padding: 8px;
    position: absolute;
    z-index: 100;
    width: 100%; 
}*/
.ttproduct-desc .product-description{
    margin-bottom: 0px;
}

.ttproduct-desc .value_lot{
    color: var(--tertiary-text-color);
    float: left;
    width: 100%;
    font-size: 13px;
    margin: 0 0 6px;
    display: block; /* Ensures the element behaves as a block */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    height: 1.5em;
    line-height: 1.2em;
}
.ttproduct-desc .value .empty-value {
    visibility: hidden; /* garde l'espace sans afficher */
}
.ttproduct-desc .prod {
    color: var(--tertiary-text-color);
    float: right;
    width: auto;
    text-align: right;
    font-size: 13px;
    margin: 0 0 6px;
    overflow: hidden;    display: -webkit-box;
    -webkit-line-clamp: 1;
    line-clamp: 1;             /* standard property for compatibility */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    /*height: 1.2em; */
    line-height: 15px;
}
.ttproduct-desc .prod .empty-supplier {
    visibility: hidden; /* garde l'espace sans afficher */
}

.products .product-price-and-shipping {
	color:var(--price-color);
	font: 700 1.3em var(--primary-font);
	float: none;
	display: inline-block;
	vertical-align: top;
    margin: 0 0 12px; 
    text-align: center;
    max-width: 40%;
}
@media (max-width: 767px) {
	.products .product-sort .product-price-and-shipping {
		text-align:center;
	}
}
@media (max-width:543px){
    .products .product-sort .product-price-and-shipping{
        font-size:1.3em;
    }
}

.tt-button-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap; /* pour éviter les débordements */
}
  
.product-add-to-cart {
    display: flex;
    align-items: center;
    gap: 0.5rem; /* espace entre - qty + */
    justify-content: center;
    margin-bottom: 0.5rem;
}
  







/* empeche le texte de dépasser de la case */
.products .product-title a, #product_comparison .product-miniature .product-description .product-title > a {
    white-space: normal;
}

/* ne pas avoir le zoom hover sur la page produit */
.ttimage-zoom #zoom1 .js-qv-product-cover1 {
    display: none !important;
    height:100% !important;
    width:100% !important;
}

/* retire le filtre gris quand on clique sur le panier */
body.cart-active #wrapper::before{
    visibility: hidden;
}



.product-price-and-shipping {
    width: 90%;
}

/* prix promo */
#discount{
	background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
	font: 600 14px/16px var(--primary-font);
}
#original_price{
	background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
	color: #666;
	font: 600 14px/16px var(--primary-font);
    text-decoration:line-through;
}
.products .product-price-and-shipping, #product_comparison .product-miniature .product-price-and-shipping {
    margin: 0 0 5px;
}



/* ne pas rendre le background invisible dans le choix des points relais */
body#checkout section.checkout-step.-current .content ul li:hover {
    /*background: var(--secondary-bg-color);
    background: color-mix(in srgb,var(--secondary-bg-color) 40%, white 60%); */
    color:  var(--secondary-bg-color);
    border-radius: 4px;
}


/* Correction visuel Arrivage fraicheur page d'accueil */
/*.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
    padding-left: 0px; 
}*/
.product-list .ttproduct-desc .product-description, .product-sort .ttproduct-desc .product-description, .product-list .ttproduct-desc .product-flags, .product-list .ttproduct-desc .highlighted-informations .variant-links, .product-list .ttproduct-desc .product-description .product-title, .product-list .ttproduct-desc .product-description .product-price-and-shipping {
    width: 100%;
}
/*annule le remise en forme de la photo du shortlist en mode telephone*/
@media (max-width:480px) {
  .product-accessories .products .thumbnail-container .ttproduct-image {
    float: left !important;
    width: 50% !important; /* ou ce que tu veux */
    display: block !important;
    /*vertical-align: baseline !important;*/
  }
}

/* permet d'afficher le label d'un produit dans le listing produit*/
.products .thumbnail-container .ttproduct-logo {
    position: absolute;
    width: 50px;
    right: 20px;
    /*bottom: 0;*/
    top:3px;
    left:3px;
    overflow: visible;
    z-index:1;
    /*transform: translateX(50%);*/
    max-width: 50px;
    background-color: transparent;
}
/* permet d'afficher le label d'un produit dans la page produit*/
.ttimage-zoom .ttproduct-logo {
    position: absolute;
    width: 100px;
    right: 20px;
    /*bottom: 0;*/
    top:5px;
    left:5px;
    overflow: visible;
    z-index:1;
    /*transform: translateX(50%);*/
    max-width: 100px;
    background-color: transparent;
}
/* Jusqu'à 543px */
@media (max-width: 543px) {
  .ttimage-zoom .ttproduct-logo {
    width: 70px;
  }
}

/* Entre 544px et 767px */
@media (min-width: 544px) and (max-width: 767px) {
  .ttimage-zoom .ttproduct-logo {
    width: 100px;
  }
}

/* Entre 768px et 999px */
@media (min-width: 768px) and (max-width: 999px) {
  .ttimage-zoom .ttproduct-logo {
    width: 70px;
  }
}

/* logo mode de livraison dans la panier */
.carrier-logo{
    width: 50px;
    height: auto;
    margin-left: 10px;
}

/* barre de pertinence page à la carte */
@media (max-width: 1199px) {
    .products-sort-order .select-title {
        margin-left: 7px;
    }
}
.products-sort-order.open > .dropdown-menu {
    margin-left: 7px;
}

/* listing produit telephone */
@media (max-width: 543px) {
    .product-miniature {
        padding-left: 15px;
    }
}

/* taille de l'image service-cms sur la page d'accueil */
.ttservice-img img{
    max-width: 70%;
}

.disabled-link {
    pointer-events: none;
    cursor: default;
    color: grey; /* Indiquer visuellement que le lien est désactivé */
}

/* ajustement sur la page du recap commande */
.product-line-grid{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.product-line-grid-left img {
    max-height: 80px;
    border: none;
}
.product-line-grid .row {
  display: flex;
  align-items: center; 
}
.product-line-grid .qty,
.product-line-grid .price,
.product-line-grid .text-xs-right {
  display: flex;
  align-items: center;
  height: 100%;
}
.product-line-grid .qty,
.product-line-grid .price {
  justify-content: center;
}

.product-line-grid .text-xs-right {
  justify-content: flex-end;
}

/*********** MODIF DE LA RECHERCHE *************/
/*correction de l'icone de fermeture de la recherche invisible*/
#search_widget .ttsearchtoggle .ttsearch_close i {
	position: absolute;
	/*top: -40px;*/
    top : 0px;
	bottom: auto;
	left: auto;
	right: 0;
	transition: all 400ms ease-in-out 0s;
	-webkit-transition: all 400ms ease-in-out 0s;
	-moz-transition: all 400ms ease-in-out 0s;
	-o-transition: all 400ms ease-in-out 0s;
	-ms-transition: all 400ms ease-in-out 0s;
}
/* ajustement du padding car trop grand */
.header-top #search_widget .ttsearchtoggle {
	position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: auto;
    z-index: 1000;
    height: auto;
    background: #fff;
    display: none;
    padding: 20px 0;
}
/*--------------------------- Start newsletter du PRS03 et FOOTER--------------------------*/
#newslatter .tt-content {
	position: relative;
	padding: 0px 0px;
}

#newslatter p.alert .close {
    position: absolute;
    top: 0;
    right: 20px;
	left:auto;
	bottom:0;
	margin:auto 0;
}
#newslatter form {
    position: relative;
}
#newslatter form input[type="email"] {
	background: #fff;
	border: medium none;
	color: #666;
	float: left;
	overflow: hidden;
	padding: 0 125px 0 15px;
	width: 100%;
	font-weight: 400;
	font-size: 13px;
	height: 50px;
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -khtml-border-radius: 8px;    
}
#newslatter form input[type=email]:focus + button .search {
    color: #666;
}
#newslatter form input[type=email]::-webkit-input-placeholder {
    color: #666;
    text-indent: 0.625rem;
}
#newslatter form input[type=email]::-moz-placeholder {
    color: #666;
    text-indent: 0.625rem;
}
#newslatter form input[type=email]:-moz-placeholder {
    color: #666;
    text-indent: 0.625rem;
}
#newslatter form input[type=email]:-ms-input-placeholder {
    color: #666;
    text-indent: 0.625rem;
}
#newslatter form button[type=submit] {
    position: absolute;
    background: none;
    border: none;
    bottom: 0.3125rem;
    right: 0.125rem;
    color: #878787;
}
#newslatter form button[type=submit] .search:hover {
    color: #111111;
}
#newslatter p.alert {
    height: 46px;
    line-height: 46px;
    margin: 0;
    float: none;
    padding: 0 0 0 20px;
    position: absolute;
    top: 55px;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    text-align: left;
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -khtml-border-radius: 8px;
}
#newslatter p.alert .close:hover{
color: inherit;
}
#newslatter .close {
    font-size: 26px;
}
#newslatter form .input-wrapper {
    overflow: hidden;
}
.newslatter {
    max-width: 600px; /* Définit une largeur maximale */
    margin: 0 auto;  /* Centre la div dans le footer */
    text-align: center;
}

.footer-container {
	background:#A17D5C;
	float: left;
	position: relative;
	width: 100%;
}	
#newslatter {
    background: none;
    padding-top: 0px;
}
.contact .phone-number {
    display: block;
    margin-top: 5px;
    margin-left: 10px; /* Optionnel pour espacer légèrement le numéro du texte */
}

.contact-rich .block .contact .service-title {
    color: var(--footer-title-color);
    font: 700 14px/22px var(--secondary-font);
    float: left;
    width: auto;
    padding: 0 5px 0px;
}



/*
.footer-container .footer-block{
	padding:50px 0;
	border-bottom: 1px solid #444;
}*/
#newslatter .news_desc{
	display:none;
}
#newslatter .tt-title {
    color: var(--primary-text-color);
    font: 600 18px/20px var(--primary-font);
    margin: 0;
    text-align: left;
    background: 0;
    display: inline-block;
    vertical-align: middle;
    padding: 0;
    float: none;
    width: auto;
}
#newslatter i.mail {
    font-size: 22px;
    line-height: 25px;
    color: var(--secondary-text-color);
    display: inline-block;
    vertical-align: middle;
    position: static;
}
#newslatter .news-desc{
    font: 400 14px/28px var(--secondary-font);
    color: var(--footer-news-desc-color);
    float: left;
    width: 100%;
    margin: 8px 0 10px;
}
#newslatter .tt-description {
    float: none;
    width: auto;
    display: inline-block;
    vertical-align: top;
}
#newslatter .block_content {
    float: none !important;
  }
  
#newslatter .block_content .btn {
	color: var(--primary-text-color);
	font: 400 14px/16px var(--secondary-font);
	height: 50px;
	padding: 5px 25px;
	position: absolute;
	right: 0;
	left: auto;
	border:none;
}
#newslatter .block_content .btn:focus,
#newslatter .block_content .btn:hover {
	opacity: 0.7;
	-moz-opacity: 0.7; 
	-khtml-opacity: 0.7; 
	-webkit-opacity: 0.7;
    background: var(--primary-bg-color);
}
#newslatter .msg .psgdpr_consent_message {
	margin: 0;
}
#newslatter .msg {
	padding: 0;
}
#gdpr_consent {
	padding: 10px 0 0;
}
#gdpr_consent span {
	color: #fff;
	cursor:pointer;
}
.contact-form #gdpr_consent span {
	color:#666;
}
#gdpr_consent .custom-checkbox input[type="checkbox"] + span {
	border: 1px solid #ccc;
}
#gdpr_consent .custom-checkbox input[type="checkbox"]:checked + span .checkbox-checked {
	color:#fff;
}
.contact-form #gdpr_consent .custom-checkbox input[type="checkbox"]:checked + span .checkbox-checked {
	color:#666;
}
#module-psgdpr-gdpr .page_content h2 {
    font-size: 16px;
    font-weight: 500;
    color: var(--body-text-color);
}

#footer .contact-rich .block .data {
	display: flex;
    margin:0 0 8px;
	align-items: center;
}
#footer .block-social ul li a::before {
    height: 25px !important;
    display: inline-block !important; /* Assure que l'élément respecte la hauteur */
    line-height: 25px !important; /* Aligne l'icône verticalement */
    font-size: 25px !important; /* Ajuste la taille si c'est une icône */
    width: 25px !important; /* Aligne l'icône verticalement */
}
#footer .block-social ul li a::before {
    background-size: contain;
}

#footer h3{
    font-family: var(--main-title-font);
}
#newslatter .tt-title{
    font-family: var(--main-title-font);
}

#footer .block-social ul li a:hover:before {
    background-color: var(--footer-link-hvr-color);
}
.footer-container .block-contact a[href^="mailto:"]:hover {
    color: inherit !important; 
}

#footer .contact-rich .block .icon i {
    line-height: 25px;
    font-size: 25px;
    border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-khtml-border-radius: 50%;
    height: 40px;
    padding: 8px;
    width: 40px;
    background: var(--secondary-bg-color);
    color: var(--primary-text-color);
    transition: all 0.4s ease 0s;
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -ms-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
}   
#footer .contact-rich .block .data:hover .icon i {
    background: var(--primary-bg-color);
    color: var(--footer-news-title-color);
 
}
.footer-container h3{
	color: var(--footer-title-color);
	font: 600 18px/20px var(--primary-font);
	margin: 0 0 20px;
	position: relative;
}
.ttfooter-logo img{
    padding-bottom: 20px;
}
.footer-container li a:hover {
    color: var(--footer-link-hvr-color);
}
.footer-container li.fax a:hover {
    color: inherit; /* Annule l'effet hover sur .fax a */
}

#footer .contact-rich .block:hover .data .icon i {
	color:var(--footer-news-title-color);
}
#footer .contact-rich .block .contact .icon i {
 	line-height: 25px;
    font-size: 25px;
    border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-khtml-border-radius: 50%;
    height: 40px;
    padding: 8px;
    width: 40px;
    background: var(--secondary-bg-color);
    color: var(--primary-text-color);
    transition: all 0.4s ease 0s;
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -ms-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
}

#footer .contact-rich .block:hover {
	color:var(--footer-link-hvr-color);
}
.bottom-footer p a {
    color: var(--body-text-color);
    font-size: 14px;
    line-height: 20px;
  }

@media (min-width: 992px) {
	#newslatter .container {
        max-width: 1200px;
		display: flex;
		align-items: center;
	}
}
@media (max-width: 1199px) {
    #newslatter .tt-title{
        font-size: 16px;
        line-height: 18px;
    }
    #newslatter form input[type="email"]{
        height: 44px;
    }
    #newslatter .block_content .btn{
        height: 44px;
    }
}
@media (max-width: 991px) {
    .footer-container .footer-block {
        padding: 0;
    }
    #footer .footer-container .links {
        margin: 0;
        width:100%;
		float: left;
    }
    #footer .footer-container .block-social.links {
        padding: 20px 0 0;
    }
	.footer-container {
		padding: 25px 0 0;
	}    
    .footer-container .links .title:hover,
	.footer-container .links .title[aria-expanded="true"] {
		background: var(--footer-link-hvr-color);
        margin-bottom: 5px;
    }
    .footer-container .links .float-xs-right .navbar-toggler i {
        color: var(--footer-link-color);
        font-size: 18px;
        line-height:24px;
    }
    .block-social ul li a::before {
        background-color:  var(--primary-text-color)  !important; 
    }

	#newslatter {
		width: 100%;
		float: left;
		text-align: center;
        margin: 0 0 10px;
	}
	#newslatter .tt-content {
		float:none;
		width:100%;
		margin:0 0 15px;
		text-align: center;
		display: inline-block;
		vertical-align: top;
	}
	#newslatter .block_content {
        float: none;
        display: inline-block;
        vertical-align: top;
        width: 60%;
	}
    #newslatter .news-desc{
        margin: 0px 0;
        line-height: 18px;
        font-size: 12px;        
    }
}
@media (max-width: 543px) {
    #newslatter .tt-content{
        margin: 0 0 10px;
		padding: 0px 0 0;
    }
	#newslatter .tt-title {
		font-size: 18px;
		line-height: 22px;
		text-align: center;
	}
	#newslatter form input[type="email"] {
        padding: 0 75px 0 15px;
        height:40px;
	}
	#newslatter .block_content .btn{
        height:40px;
	}
}
@media (max-width: 480px) {
    #newslatter .block_content{
        width: 70%;
    }
}
/*---------------------------- Newsletter and FOOTER CSS End -------------------------------------*/





/***************AJOUT COCO + et - *********************/
.quantity-wrapper,
.product-action-cart-shopping{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.1em;
    background:var(--secondary-bg-color);
    border-radius: 2em;
    padding: 0.2em 0.2em;
    width: fit-content;
    margin: auto;
    font-family: sans-serif;
}

.btn_moins svg,
.btn_plus svg,
.btn_plus_pack svg,
.btn_moins-shopping svg,
.btn_plus-shopping svg,
.btn_moins-sticky svg,
.btn_plus-sticky svg{
    width: 14px;
    height: 14px;
}

.btn_moins,
.btn_plus,
.btn_plus_pack,
.btn_moins-shopping,
.btn_plus-shopping,
.btn_moins-sticky,
.btn_plus-sticky {    
    background: transparent;
    color: var(--primary-text-color);
    border: none;
    font-size: 2em;
    font-weight: 600;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    outline: none;           /* supprime le contour par défaut */
    box-shadow: none;        /* supprime toute ombre si appliquée par le thème */
   
}
button.btn_plus.is-pack-btn,
.btn_plus_pack{
    width: 55px;    
}


/*correction du decalage du moins*/
/*.btn_moins,.btn_moins-shopping,
.btn_moins:hover,.btn_moins-shopping:hover{
    transform: translateY(-14px); 
}*/
@media (hover: hover) and (pointer: fine) {
.btn_moins:hover svg line ,
.btn_plus:hover svg line ,
.btn_plus_pack:hover svg line ,
.btn_moins-shopping:hover svg line ,
.btn_plus-shopping:hover svg line,
.btn_moins-sticky:hover svg line,
.btn_plus-sticky:hover svg line  {
    stroke: var(--product-title-color);
    /*transform: scale(1.3);*/
}}
.btn_moins:active svg line ,
.btn_plus:active svg line ,
.btn_plus_pack:active svg line ,
.btn_moins-shopping:active svg line ,
.btn_plus-shopping:active svg line,
.btn_moins-sticky:active svg line,
.btn_plus-sticky:active svg line  {
    stroke: var(--product-title-color);
    /*transform: scale(1.3);*/
}
/* pourl el mobile*/
/*.btn-plus:active svg line,
.btn-minus:active svg line {
  stroke: #18bc9c;
 background-color: red !important;
  
  
}*/

.cart-quantity,
.cart-quantity-sticky{
    color:var(--product-title-color);
    font-size: 1.3em;
    min-width: 1.2em;
    text-align: center;
    font-weight: 700;
}

button.button.add-to-cart.add-to-cart-disable.btn.btn-secondary[disabled] , .button_indisponible{
    background-color: var(--secondary-bg-color);
    color: var(--primary-text-color);
    cursor: not-allowed;
    /*pointer-events: none;*/
    border-radius: 2em;
    padding: 0.2em 0.2em;
    width: fit-content;
    margin: auto;
    font-family: sans-serif;
    font-size: 1.3em;
    font-weight: 700;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.1em;
    background: var(--header-nav-bg-color);
    opacity: 0.5;
    margin: 0;
    font-family: sans-serif;

    
}




#products .product-sort .thumbnail-container .tt-button-container .btn.add-to-cart {
    /*padding: 0 10px;*/
    border-radius: 50% !important;
    border: none !important;
    padding: 0;
    width: 30px;
    height: 30px;
  }
#products .product-sort .thumbnail-container .add-to-cart svg {
    margin: 0 0 0 0;
    width: 15px;
    height: 15px;
}
button.button.add-to-cart.add-to-cart-disable.btn.btn-secondary::after{
    transform: none;
    -webkit-transform: none;
    background-color: transparent  !important;
}

/*.action-cart,
.action-cart-shopping{
    width: 30px;
    height: 30px;
}*/


/*
.product-action-cart{
    display: flex; 
    align-items: center; 
    position: relative;
    height: 34px;
    width: 102px;
    border: none;
    background-color: var(--body-background-color);
}

.cart-quantity {
    display: flex;
    font-size: 16px;
    background-color: var(--secondary-bg-color);
    color: var(--body-background-color);
    height: 34px;
    width: 68px;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 17px;
}*/

/*.btn_moins {
    position: absolute;
    padding: 0;
    left: 0px;
}

.btn_plus {
    position: absolute;
    padding: 0;
    left: 68px;
}
*/

/*
.action-cart{
	background-color: transparent;
    border: none;
    z-index: 1;
    width: 34px;
    height: 34px;
}*/

/*@media (min-width: 767px) {

.btn_plus.action-cart:hover img{
    content: url('/themes/PRS002_04_child/assets/img/plus_marron.svg'); 
}
.btn_moins.action-cart:hover img {
    content: url('/themes/PRS002_04_child/assets/img/moins_marron.svg');
}*/
/*
.product-action-cart{
    height: 40px;
    width: 120px;
}
.cart-quantity {
    font-size: 16px;
    height: 40px;
    width: 80px;
    left: 20px;
}*/
/*
.btn_moins {
    left: 0px;
}
.btn_plus {
    left: 80px;
}*/
/*
.action-cart{
    width: 40px;
    height: 40px;
}
}*/
/*
.product-action-cart-shopping{
    display: flex; 
    align-items: center; 
    position: relative;
    height: 34px;
    width: 102px;
    border: none;
    background-color: var(--body-background-color);
}

.cart-quantity-shopping {
    display: flex;
    font-size: 16px;
    background-color: var(--secondary-bg-color);
    color: var(--body-background-color);
    height: 34px;
    width: 68px;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 17px;
}*/
/*
.btn_moins-shopping {
    position: absolute;
    padding: 0;
    left: 0px;
}

.btn_plus-shopping {
    position: absolute;
    padding: 0;
    left: 68px;
}
.action-cart-shopping{
	background-color: transparent;
    border: none;
    z-index: 1;
    width: 34px;
    height: 34px;
}
.btn_plus-shopping.action-cart-shopping:hover img {
    content: url('/themes/PRS002_04_child/assets/img/plus_marron.svg');
}
.btn_moins-shopping.action-cart-shopping:hover img {
    content: url('/themes/PRS002_04_child/assets/img/moins_marron.svg');
}

*/

#goToTop {
    z-index: 2;
    background-color: var(--secondary-bg-color);
}

@media (max-width: 767px) {
    #goToTop {
        left: 20px;
    }
}
/*
.product-line-cart{
  display: flex;
  flex-direction: row;        
  align-items: center;       
  justify-content: space-between; 
  gap: 1rem;
}

.product-line-cart .ttPrice,
.product-line-cart .product-action-cart-shopping {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}*/
.product-line-cart {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
  width: 100%;
}

.product-line-cart .ttPrice {
  /*min-width: 70px;*/
  font-weight: 500;
  color: var(--body-text-color);
  font-family: var(--secondary-font);
  color: var(--body-text-color);
  font-size: 13px;
  
}


.product-line-cart .ttPrice:last-child {
  margin-left: auto; /* ✅ pousse vers la droite */
  /*min-width: 70px;*/
  justify-content: flex-end;
  font-weight: 600;
}

.product-line-cart .ttPrice {
  display: flex;
  align-items: center;
}

/* ✅ Responsive: mobile = colonne */
/*@media (max-width: 600px) {
  .product-line-cart {
    flex-direction: column;
    align-items: flex-start;
  }

  .product-line-cart .ttPrice:last-child {
    margin-left: 0;
    justify-content: flex-start;
  }
}*/

.custom-radio {
    display: inline-block;
    position: relative;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    cursor: pointer;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    -khtml-border-radius: 50%;
    border:#777 2px solid;
    background: white;
    margin-right: 2px;
}

.alert-success hr {
    border-top-color: #c1e2b3;
}
.alert-success .alert-link {
    color: #2b542c;
}
.alert-info {
    background-color:color-mix(in srgb, #95B219 20%, white 80%);
    border-color: #95B219;
    color: #95b219;
}
#drive_order_detail .alert-info {
    color: var(--header-top-text-color);
}
.alert-info hr {
    border-top-color: #a6d5ec;
}
.alert-info .alert-link {
    color: #245269;
}
.alert-warning {
    background-color: rgba(255, 154, 82, 0.3);
    border-color: #FF9A52;
    color: #414141;
}
.alert-warning hr {
    border-top-color: #ff8b39;
}
.alert-warning .alert-link {
    color: #282828;
}
.alert-danger {
    background-color: #f2dede;
    border-color: #ebcccc;
    color: #a94442;
}
.alert-danger hr {
    border-top-color: #e4b9b9;
}
.alert-danger .alert-link {
    color: #843534;
}
/* bordures plus  */
input,
select,
textarea {
    --border-color:color-mix(in srgb, #95B219 50%, white 50%);
    border: 1px;
}

.form-control {
	display: block;
	width: 100%;
	padding: 11px;
	font-size: 13px;
	line-height: 1.25;
	color: var(--body-text-color);
	background-color: #fff;
	background-image: none;
	background-clip: padding-box;
	border: 1px solid color-mix(in srgb, #95B219 50%, white 50%);
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	-khtml-border-radius: 0;
}
body#checkout,
body#identity,
body#my-account {
    --border-color:color-mix(in srgb, #95B219 50%, white 50%);
    border: 1px;
}