:root {
  --purple: rgb(88, 53, 170);
  --green: #2FA296;
  --teal: #2DA094;
  --black: #000;
  --blue-background: #ECF8F9;
  --overlay: #00000087;
  --menu-link-open: rgb(88, 53, 170);
  --border-select-featured-product: #3AB0BB;
  --white: #fff;
  --text-dark: #090909;
  --box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  --transition-fast: 0.3s;
  --transition-medium: 0.5s;
  --border-radius: 25px;
}

/* ============================================================
   Outfit auto-hébergée (Google Fonts désactivé dans Creative Elements)
   Fichiers déposés dans themes/cbdpurple/assets/fonts/ (noms gwfh : outfit-v15-latin-*).
   font-display: swap → titre visible immédiatement en repli, bascule sur
   Outfit dès chargement = LCP mobile débloqué. La 400 = "...-regular".
   ============================================================ */
@font-face { font-family: 'Outfit'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/outfit-v15-latin-regular.woff2') format('woff2'); }
@font-face { font-family: 'Outfit'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/outfit-v15-latin-500.woff2') format('woff2'); }
@font-face { font-family: 'Outfit'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/outfit-v15-latin-600.woff2') format('woff2'); }
@font-face { font-family: 'Outfit'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/outfit-v15-latin-700.woff2') format('woff2'); }
@font-face { font-family: 'Outfit'; font-style: normal; font-weight: 800; font-display: swap; src: url('../fonts/outfit-v15-latin-800.woff2') format('woff2'); }
@font-face { font-family: 'Outfit'; font-style: normal; font-weight: 900; font-display: swap; src: url('../fonts/outfit-v15-latin-900.woff2') format('woff2'); }
/** MOBILE MENU **/
.separator_mobile_menu {
  margin-top: 10px;
  padding-top: 10px !important;
  border-top: 1px solid var(--black);
}

.separator_mobile_menu a {
  color: var(--purple) !important;
  font-weight: 600;
}

/* === Mobile Menu Header === */
.mobile-menu-header {
  height: 70px;
  width: auto;
  display: flex;
  align-items: center;
  position: relative;
  margin-left: 70px;
  padding: 10px;
}

.mobile-menu-header form,
.mobile-menu-header .search-widget__group {
  height: 100%;
  min-height: 0;
}

.mobile-menu-header span {
  color: var(--purple);
  font-weight: 600;
}

.mobile-menu-header h4 {
  font-weight: 400;
  font-size: 20px !important;
}

.mobile-menu-header .search-widget__group {
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius);
  overflow: hidden;
}

.mobile-menu-header .form-control {
  font-family: "Roboto", 'Roboto', sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-transform: none;
  font-style: normal;
  box-shadow: var(--box-shadow);
  border-radius: var(--border-radius);
  height: 50px;
}

.mobile-menu-header .search-widget__btn {
  background: var(--teal);
  color: var(--white);
  height: 100%;
  outline: none;
}

/* Account */
.account-container {
    max-width: 900px;
    margin: 0 auto;
    font-family: 'Poppins', sans-serif;
    padding: 20px;
}

@media (min-width: 769px) {
    .account-recurring-referral-container {
        display: flex;
        gap: 20px;
    }
    .account-recurring-referral-container .subscription-recap, .account-recurring-referral-container .account-referral {
      flex-grow: 1;
    }
    .account-top-section {
        display: flex;
        gap: 20px;
    }

    .account-header {
        flex: 1;
    }

    .account-orders {
        flex: 1.5;
    }
}

.account-header {
    background-color: #E0EDF5;
    padding: 30px;
    text-align: center;
    border-radius: 5px;
    margin-bottom: 20px;
    transition: transform 0.3s, box-shadow 0.3s;
}

.account-header h3 {
    font-size: 1.8em !important;
    color: #2c3e50 !important;
    margin-bottom: 10px;
    font-weight: 400 !important;
}
.account-header p {
    font-size: 1em;
    color: black;
    margin-top: 10%;
    margin-bottom: 10%;
}
.account-header .account-button {
    display: inline-block;
    margin: 10px 5px;
    padding: 12px 25px;
    background-color: #1A2933;
    color: #fff;
    border-radius: 8px;
    font-size: 0.9em;
    text-decoration: none;
    transition: background-color 0.3s, transform 0.3s;
}
.account-header .account-button:hover {
    background-color: #1A2933;
    transform: scale(1.05);
}
.account-orders .account-button, .subscription-recap .account-button {
    display: inline-block;
    margin: 10px 5px;
    padding: 12px 25px;
    background-color: #1A2933;
    color: #fff;
    border-radius: 8px;
    font-size: 0.9em;
    text-decoration: none;
    transition: background-color 0.3s, transform 0.3s;
}
.account-orders .account-button, .subscription-recap .account-button{
    background-color: #1A2933;
    transform: scale(1.05);
}

.account-orders {
    background-color: #DAF4E5;
    padding: 30px;
    text-align: center;
    border-radius: 5px;
    margin-bottom: 20px;
}
.account-orders-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.account-orders h6 {
    font-size: 1.4em !important;
    color: #2e4053 !important;
    margin-bottom: 20px;
    font-weight: 400 !important;
}
.order-card {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 20px;
    margin: 10px auto;
    max-width: 400px;
    text-align: left;
}

.order-card h4 {
    font-size: 1.1em;
    color: #2c3e50;
    font-weight: bold;
    margin: 0;
    text-align: center;
}
.order-card .order-date,
.order-card .order-total,
.order-card .order-status {
    font-size: 0.95em;
    color: #555;
    margin: 10px 0;
}
.order-card .order-status span {
    font-weight: bold;
    color: #28a745;
}
.order-card .order-details-link {
    display: inline-block;
    margin-top: 15px;
    padding: 8px 16px;
    background-color: #1A2933;
    color: #fff;
    border-radius: 8px;
    text-decoration: none;
    font-size: 0.9em;
    transition: background-color 0.3s, transform 0.3s;
}
.order-card .order-details-link:hover {
    background-color: #444;
    transform: scale(1.05);
}

.account-referral {
    background-color: #F5E7D0;
    padding: 30px;
    border-radius: 5px;
    text-align: center;
    margin-bottom: 20px;
}

.account-referral h6 {
    font-size: 1.2em;
    color: #784212;
    margin-bottom: 10px;
    font-weight: 900 !important;
}
.account-referral p {
    font-size: 17px;
    color: #784212;
}
.account-referral .account-button {
    display: inline-block;
    margin: 10px 5px;
    padding: 12px 25px;
    background-color: #784212;
    color: #fff;
    border-radius: 8px;
    font-size: 0.9em;
    text-decoration: none;
    transition: background-color 0.3s, transform 0.3s;
}
.account-referral .account-button:hover {
    background-color: #a04000;
    transform: scale(1.05);
}

.account-referral .h-filleul {
    margin: 1em;
}

.referral-form {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 15px;
}
.referral-form input[type="email"] {
    padding: 12px;
    width: 60%;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 0.9em;
}
.referral-form button {
    padding: 12px 20px;
    background-color: #1a2933;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 0.9em;
    cursor: pointer;
    transition: background-color 0.3s, transform 0.3s;
}
.referral-form button:hover {
    background-color: #5d6d7e;
    transform: scale(1.05);
}

.account-help {
    background-color: #F6D4D5;
    padding: 30px;
    border-radius: 5px;
    text-align: center;
    margin-bottom: 20px;
}

.account-help h6 {
    font-size: 1.2em;
    font-weight: 900 !important;
    color: #333;
    margin-bottom: 15px;
}

.account-help .help-buttons {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 30px;
}

.account-help .help-button {
    padding: 12px 24px;
    background-color: transparent;
    color: #BB3C3F;
    border: 2px solid #BB3C3F;
    border-radius: 25px;
    font-size: 0.9em;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.3s, color 0.3s, transform 0.3s;
    width: 29%;
}

.account-help .help-button:hover {
    background-color: #c0392b;
    color: #fff;
    transform: scale(1.05);
}

/* Mode mobile : help */
@media (max-width: 768px) {
    .account-help .help-buttons {
        flex-direction: column;
        align-items: center; 
        gap: 0px;
    }

    .account-help .help-button {
        width: 80%; 
        margin-bottom: 10px; 
    }

    .account-help .help-button:last-child {
        margin-bottom: 0; 
    }
}

/* Logout Button */
.account-logout {
    background-color: #DAD4F6;
    padding: 30px;
    border-radius: 5px;
    text-align: center;
    margin-left: inherit;
    width: 25%;
}
.account-logout a {
    color: #333;
    font-weight: bold;
    text-decoration: none;
    font-size: 1.1em;
}
.account-logout a:hover {
    color: #5b2c6f;
}

@media (max-width: 768px) {
    .account-container {
        padding: 10px;
    }
    .account-top-section {
        display: block;
    }
    .referral-form {
        flex-direction: column;
    }
    .referral-form input[type="email"], .referral-form button {
        width: 100%;
    }
    .help-button {
        width: 100%;
    }
    .account-logout {
        width: 100%;
    }
}


/* === Cart Header Badge === */
.cart-header:before {
  display: none;
}

.cart-header:after {
  z-index: 1;
  content: attr(data-count);
  color: var(--white);
  background: var(--green);
  width: auto;
  height: auto;
  padding: 1px 5px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: 400;
  text-align: center;
  position: absolute;
  right: 12px;
  top: -8px;
  line-height: normal;
}

/* === Mobile Menu Container === */
.mobile-menu-container {
  position: relative;
}

.menu__burger_container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 0;
  min-width: 60px;
}

/* === Overlay === */
div#overlay-menu.open {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 999;
  background: var(--overlay);
  will-change: opacity, transform;
}

/* === Toggle Button === */
#mobile-menu-toggle {
  width: 50px;
  height: 50px;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 1001;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  outline: none !important;
  transition-duration: var(--transition-medium);
}

#mobile-menu-toggle.active {
  position: fixed;
  transform: translateY(-43px) translateX(10px);
  height: 70px;
  will-change: transform;
}

.burger-line {
  width: 30px;
  height: 5px;
  background-color: var(--black);
  margin: 2px 0;
  border-radius: var(--border-radius);
  transition: all var(--transition-fast);
}

#mobile-menu-toggle.active .burger-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
  border-radius: 0;
  height: 3px;
}

#mobile-menu-toggle.active .burger-line:nth-child(2) {
  margin: 0;
  opacity: 0;
}

#mobile-menu-toggle.active .burger-line:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
  border-radius: 0;
  height: 3px;
  margin-top: 4px;
}

/* === Mobile Menu Panel === */
#mobile-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 360px;
  height: -webkit-fill-available;
  max-height: 100vh;
  background-color: var(--white);
  z-index: 1000;
  transform: translateX(-390px);
  transition: transform var(--transition-fast) ease-in-out;
  overflow-y: auto;
  max-width: 100%;
  padding: 10px 15px;
}

#mobile-menu.open {
  transform: translateX(0);
}

/* === Menu List === */
.mobile-menu__list:not(.mobile-submenu .mobile-menu__list) {
  list-style: none;
  margin-bottom: 0;
  border-top: 1px solid var(--black);
}

.mobile-menu__list:not(.mobile-submenu .mobile-menu__list) {
  padding: 20px 0 0 0;
}

.mobile-menu__item {
  padding: 5px 8px;
  position: relative;
}

.mobile-menu__list li:first-child a:not(.mobile-submenu .mobile-menu__list a) {
  font-weight: 600;
  color: var(--purple) !important;
}

li.mobile-menu__item:last-child a:not(li.mobile-menu__item.has-children a) {
  color: var(--white);
}

.mobile-menu__link {
  display: block;
  padding: 8px;
  color: var(--text-dark);
  font-weight: 400;
  text-decoration: none;
  letter-spacing: 0.5px;
  font-size: 16px;
  white-space: nowrap;
}

/* === Submenu Toggle === */
.has-children > .mobile-menu__link {
  display: flex;
  justify-content: space-between;
}

button.mobile-menu__toggle {
  background: none;
  border: none;
  font-size: 1.2rem;
  cursor: pointer;
  position: absolute;
  top: 10px;
  right: 0;
  outline: none !important;
  transition-duration: var(--transition-fast);
}

button.mobile-menu__toggle[aria-expanded="true"] {
  transform: rotate(180deg) translateY(5px);
}

.mobile-menu__toggle i {
  color: var(--purple);
  font-size: 36px;
}

/* === Submenu === */
.mobile-submenu {
  list-style: none;
  display: none;
  padding-left: 20px;
  overflow: hidden;
}

.mobile-submenu.open {
  display: block;
  max-height: 100vh;
  -webkit-overflow-scrolling: touch;
}

/* === Active Link Highlight === */
.menu-link-open {
  color: var(--menu-link-open);
}

/** MOBILE MENU **/

/*** PRODUCT FEATURED **/
.pmh__desc_pack {
  margin: 4px 0 0;
  font-size: 14px;
  line-height: 1.4;
  color: var(--text-2, #6a5d72);   /* gris du design */
  white-space: nowrap;             /* force une seule ligne */
  overflow: hidden;
  text-overflow: ellipsis;         /* … en bout de ligne */
  min-height: 1.4em;               /* réserve la hauteur même si vide */
}

/* ===== Produit du moment — hero ===== */
.pmh{
  --pmh-magenta:rgb(88, 53, 170);--pmh-purple:#9747ff;--pmh-violet:#7c43e8;
  --pmh-teal:#2ea6b3;--pmh-ink:#1a0f24;--pmh-text:#211726;--pmh-muted:#6a5d72;
  --pmh-border:#ece7f0;--pmh-tint:#f6eefb;--pmh-soft:#faf7fc;--pmh-radius:32px;
  color:var(--pmh-text);
}
.pmh *,.pmh *::before,.pmh *::after{box-sizing:border-box;}
.pmh__card{
  display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center; 
  background:#fff;border:1px solid var(--pmh-border);border-radius:var(--pmh-radius);
  padding:34px;box-shadow:0 18px 50px rgba(26,15,36,.06);
}

/* ---- Visuel : image responsive, plafonnée, centrée verticalement ---- */
/* La zone image a une hauteur FIXE -> le srcset peut servir n'importe
   quelle source, la hauteur de la carte ne bouge plus. */
.pmh__media{
  align-self:stretch;                 /* occupe toute la hauteur de la rangée */
  position:relative;display:flex;align-items:center;justify-content:center;
  padding:8px;background:transparent;
  min-height:460px;                   /* hauteur de référence de la zone image */
  contain:layout paint;
}
.pmh__media-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.pmh__media-link picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.pmh__img{
  display:block;width:100%;height:100%;max-width:440px;
  object-fit:contain;                 /* l'image se cale dans la boîte sans la déformer */
  /* plus de mix-blend-mode (source de recompositing) */
  filter:brightness(1.06) contrast(1.04);
  background:#fff;
  transform:translateZ(0);
}

.pmh__badge{
  position:absolute;top:18px;left:18px;z-index:2;display:inline-flex;align-items:center;gap:7px;
  padding:8px 14px;border-radius:999px;background:var(--pmh-ink);color:#fff;
  font-size:.8rem;font-weight:700;letter-spacing:-.01em;box-shadow:0 6px 16px rgba(26,15,36,.22);
}
.pmh__badge svg{width:13px;height:13px;color:#fff;}

/* ---- Colonne infos ---- */
.pmh__info{
  min-width:0;display:flex;flex-direction:column;
  min-height:420px;                  /* réserve la hauteur max de la colonne ; ajuste à ton contenu */
}
.pmh__top{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;}

/* Badges issus de displayCustomProductFeatureBlock */
.pmh__tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;}
.pmh__tags .container_feature{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.pmh__tags .feature_group{display:inline-flex;align-items:center;gap:8px;}
.pmh__tags .feature_name,
.pmh__tags .feature_value{
  display:inline-flex;align-items:center;white-space:nowrap;line-height:16px;
  padding:5px 12px;border-radius:999px;font-size:.76rem;font-weight:700;
}
.pmh__tags .feature_name{background:var(--pmh-tint);color:var(--pmh-violet);}
.pmh__tags .feature_value{background:#e3f5f3;color:var(--pmh-teal);}

.pmh__rating{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--pmh-muted);white-space:nowrap;}

/* Titre : forcé sur le <a> pour battre le thème */
.pmh .pmh__title{line-height:42px;margin:0 0 10px;font-size:2.6rem;font-weight:800;letter-spacing:-.02em;color:var(--pmh-ink);}
.pmh .pmh__title a{
  color:var(--pmh-ink)!important;
  font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;
  text-decoration:none!important;
}
.pmh .pmh__title a:hover,.pmh .pmh__title a:focus{color:var(--pmh-magenta)!important;text-decoration:none!important;}

.pmh__desc{
  margin:0 0 22px;max-width:48ch;color:var(--pmh-muted);
  font-size:1.05rem;
  line-height:24px;
  /* hauteur fixe = 3 lignes, indépendante du reflow */
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Puces caractéristiques (Effets / Saveurs / Type) */
/* Puces caractéristiques : grille auto, plusieurs par ligne (cf. maquette) */
.pmh__chips{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:10px;margin-bottom:22px;
}
.pmh__chip{display:flex;align-items:center;gap:10px;min-width:0;
  padding:11px 14px;border:1px solid var(--pmh-border);border-radius:16px;background:var(--pmh-soft);}
.pmh__chip-ic{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  width:30px;height:30px;border-radius:9px;background:var(--pmh-tint);color:var(--pmh-violet);}
.pmh__chip-ic svg{width:16px;height:16px;}
.pmh__chip-txt{display:flex;flex-direction:column;min-width:0;}
.pmh__chip-label{font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--pmh-muted);line-height:14px; }
.pmh__chip-value{font-size:.92rem;font-weight:700;color:var(--pmh-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:18px;}

/* Réassurance + masquage automatique si déclinaison épuisée */
/* Réassurance : on réserve toujours sa hauteur (pas de display:none) */
.pmh__reassure{
  display:flex;align-items:center;gap:8px;margin-top:14px;
  font-size:.86rem;font-weight:600;color:var(--pmh-teal);
  min-height:1.2rem;                 /* hauteur réservée */
}
.pmh__reassure svg{width:16px;height:16px;flex:0 0 auto;}

/* Déclinaison épuisée : on cache le contenu SANS retirer la place */
.pmh__info:has(.cwvvs__button.is-disabled) .pmh__reassure{
  visibility:hidden;                 /* au lieu de display:none */
}

/* ---- Responsive ---- */
/* Tablette : 2 colonnes de chips */
@media (max-width:991px){
  .pmh__card{grid-template-columns:1fr;gap:24px;padding:20px;}
  .pmh__media{align-self:auto;min-height:340px;}
  .pmh__img{max-width:360px;}
  .pmh .pmh__title{font-size:2rem!important;}
  .pmh__chips{gap:8px;}
}
@media (max-width:480px){
  .pmh .pmh__title{font-size:1.6rem!important;}
  .pmh__media{min-height:280px;}
  .pmh__img{max-width:280px;}
  .pmh__info{min-height:0;}
  .pmh__chips{gap:8px;}
  .pmh__chip{padding:10px 12px;}
  .pmh__chip-ic{width:28px;height:28px;}
}

/*** PRODUCT FEATURED **/
.slick-prev:before, .slick-next:before {
  color: var(--purple);
}

.ce-product-grid .product {
  height:100%;
}


@media(max-width: 640px) {
  .product-miniature .add-to-cart-custom-button {
    padding:3px;
  }
  .product-miniature .price_advanced { 
    font-size:12px;
  }
  .product-miniature .product-title a {
    font-size:16px;
  }
  .product-miniature .price-regular-item {
    font-size:12px;
  }
  .pmh__desc_pack  {
    display: none;
  }
}

/* code css page blog */
#index #blog_list_1-7 li.tiers,
#module-prestablog-blog #blog_list_1-7 li.blog-grid {
    width: 25%
}

@media (min-width: 1200px) {
    #index #blog_list_1-7 li.tiers,
    #module-prestablog-blog #blog_list_1-7 li.blog-grid {
        width: 33.3333% !important;
    }
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(3n + 1),
    #index #blog_list_1-7 li.tiers:nth-child(3n + 1) {
        clear: left;
    }
}

@media (min-width:1025px) and (max-width:1199px) {
    .right-col-header {
        width: 50% !important;
        padding-left: 15px
    }
}

@media (min-width: 1200px) {
    #index #blog_list_1-7 li.tiers,
    #module-prestablog-blog #blog_list_1-7 li.blog-grid {
        width: 25% !important; 
    }
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(4n + 1),
    #index #blog_list_1-7 li.tiers:nth-child(4n + 1) {
        clear: left;
    }
}

@media (min-width:576px) and (max-width:1024px) {
    #index #blog_list_1-7 li.tiers,
    #module-prestablog-blog #blog_list_1-7 li.blog-grid {
        width: 50%
    }
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(11),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(13),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(15),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(17),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(19),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(21),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(23),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(25),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(27),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(29),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(3),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(31),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(33),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(35),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(37),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(39),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(41),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(43),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(45),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(47),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(49),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(5),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(51),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(53),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(55),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(57),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(7),
    #module-prestablog-blog #blog_list_1-7 li.blog-grid:nth-child(9) {
        clear: left
    }
}

@media (max-width:575px) {
    #index #blog_list_1-7 li.tiers,
    #module-prestablog-blog #blog_list_1-7 li.blog-grid {
        width: 100%
    }
}

#blog_list_1-7 .blog-grid .block_bas {
    padding: 15px 17px 0px
}

#blog_list_1-7 .block_cont {
    background : #fff;
    border:none;
    border-radius:20px;
    box-shadow:0 6px 20px rgba(0,0,0,.08);
    overflow:hidden;
    display:flex;
    flex-direction:column;
    transition:transform .3s ease,box-shadow .3s ease;
}

#blog_list_1-7 li .block_cont .block_top img {
    border-top-left-radius: 15px;
    border-top-right-radius: 15px
}

#blog_list_1-7 .blog-grid .block_bas h3 a{
    font-size:1.2rem;
    font-weight:700;
    line-height:1.35;
    color:#000;
    text-decoration:none;
    margin-bottom:.6rem;
}

#blog_list_1-7 .block_cont .blog_desc,
#blog_list_1-7 .block_cont .date_blog-cat,
#blog_list_1-7 .block_cont .date_blog-cat a {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    color: #777;
    font-weight: 400;
    line-height: 22px;
    margin: 0
}

#blog_list_1-7 .blog-grid .block_bas .date_blog-cat{
    font-size:.85rem;
    color:#888;
    margin-bottom:1.1rem;
}
#blog_list_1-7 .blog-grid .prestablog_desc{
    font-size:.95rem;
    line-height:1.6;
    color:#555;
    /* margin-bottom:2rem; */
    flex-grow:1;
}
#blog_list_1-7 .blog-grid .prestablog_more{
    margin-top:auto;
    padding:1rem 1.75rem 1.75rem;
    background:transparent;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
}
#blog_list_1-7 .blog-grid .prestablog_more .blog_link{
    background:#BB3AB0;
    color:#fff;
    padding:0.6rem 2.25rem;
    border-radius:32px;
    font-weight:700;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    transition:transform .25s ease,box-shadow .25s ease;
}
#blog_list_1-7 .blog-grid .prestablog_more .blog_link:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 20px rgba(187,58,176,.35);
}
#blog_list_1-7 .blog-grid .prestablog_more i.material-icons{
    font-size:18px;
    margin-right:6px;
}
#blog_list_1-7 .blog-grid .prestablog_more .comments{
    font-size:.9rem;
    color:#666;
}
#blog_list_1-7 .comments:hover{
    background:#3AB0BB;
    color:#fff;
    border-radius:20px;
}

#wrapper #module-prestablog-blog h1,
.products-section-title.blog-title .elementor-heading-title {
    font-family: Roboto, Roboto, sans-serif;
    font-size: 24px;
    font-weight: bold;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.5em;
    letter-spacing: .15px;
    color: #2da094;
    margin-bottom: 37px
}

/* les tableaux dans les articles de blogs */
#module-prestablog-blog #wrapper thead tr {
    background: #C6EBDE !important;
    color: #000 !important;
}
#module-prestablog-blog #wrapper table {
    overflow-x: auto;
}
#module-prestablog-blog #wrapper td {
    border: 1px solid #ccc;
}
#module-prestablog-blog #wrapper th {
    border: 1px solid;
    border-bottom: none;
}

@media (max-width: 991px) {
  #module-prestablog-blog #wrapper table {
    display: block;
    width: 100%;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch; 
  }

  #module-prestablog-blog #wrapper th,
  #module-prestablog-blog #wrapper td {
    white-space: nowrap;
    padding: 10px;
    border: 1px solid #ccc;
    text-align: left;
  }

  #module-prestablog-blog #wrapper table::-webkit-scrollbar {
    height: 6px;
  }

  #module-prestablog-blog #wrapper table::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 3px;
  }
}

#wrapper #module-prestablog-blog h2 {
    font-family: Roboto, Roboto, sans-serif;
    font-weight: bold;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.5em;
    /* letter-spacing: .15px; */
    letter-spacing: 0;
    color: #2da094;
    margin-bottom: 16px;
    margin-top: 8px;
    font-size: 24px;
}

#wrapper #module-prestablog-blog h3{
    font-family: Roboto, Roboto, sans-serif;
    font-weight: bold;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
    line-height: 1.5em;
    color: #2da094;
    font-size: 20px;
    letter-spacing: 0;
    margin-bottom: 16px;
    margin-top: 8px;
}

#wrapper #module-prestablog-blog h4 {
font-size: 18px;
letter-spacing: 0;
margin-bottom: 16px;
margin-top: 8px;
font-weight: 700;
color: #000;
}

#wrapper #module-prestablog-blog a {
color: #2ca195 !important;
text-decoration: underline !important;
}

#wrapper #module-prestablog-blog a:hover {
color:#000;
}

#module-prestablog-blog .elementor-text-editor a {
  color: #2ca195 !important;
  text-decoration: underline !important;
}


#module-prestablog-blog .elementor-tab-content p:not(#e),
#module-prestablog-blog .elementor-widget-text-editor p:not(#e) {
  color: #333;
  font: inherit;
  line-height: 1.33;
  letter-spacing: 0;
  font-size: 16px;
}

.date_blog-cat,
.info_blog,
.info_blog a,
p.cat_desc_blog,
time.date,
ul#blog_list_1-7 li .date_blog-cat a {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    color: #777;
    font-weight: 400;
    line-height: 22px
}

.avis-garantis-title-product a#comment-product-tab,
.bootstrap-touchspin>input,
.menu-mobile-cbd .elementor-menu-toggle span.elementor-screen-only {
    font-family: Roboto, Roboto, sans-serif;
    text-transform: none;
    font-style: normal;
    text-decoration: none
}

#module-prestablog-blog #content-wrapper .soc-buttons {
    max-width: 767px
}

#module-prestablog-blog #content-wrapper .soc-buttons.large-format li a {
    padding: 14px
}