/**** ===== CARTES PRODUITS - DESIGN MODERNE AMÉLIORÉ ===== ****/

.excerpt-product {
  position: relative;
  background-color: #fff;
  height: 100%;
  border: 1px solid #e5e5e5;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
}

.excerpt-product:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.excerpt-product a:before {
  display: none;
}

/* ===== IMAGE GRANDE - PREND TOUT L'ESPACE ===== */
.excerpt-product .image {
  position: relative;
  background-color: #fff; /* ✅ CHANGÉ DE #f8f8f8 À #fff */
  height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  overflow: hidden;
}

.excerpt-product .image a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.excerpt-product .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  margin: 0 auto;
  max-width: 100%;
  max-height: 100%;
}

/* IMPORTANT : Empêcher les marques d'être dans l'image */
.excerpt-product .image .cats {
  display: none !important;
}

/* ===== FAVORIS - EN HAUT À DROITE ===== */
.excerpt-product .yith-add-to-wishlist-button-block {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10;
}

.excerpt-product .yith-wcwl-add-to-wishlist-button {
  background: #fff;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
  border: 2px solid #fff;
  transition: all 0.2s ease;
}

.excerpt-product .yith-wcwl-add-to-wishlist-button:hover {
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
}

.excerpt-product .yith-add-to-wishlist-button-block svg {
  width: 26px !important;
  height: 26px !important;
}

.excerpt-product .yith-add-to-wishlist-button-block span {
  display: none;
}

/* ===== BADGES PROMO - EN HAUT À GAUCHE ===== */
.excerpt-product .badge-sale {
  position: absolute;
  z-index: 10;
  top: 12px;
  left: 12px;
  background: linear-gradient(135deg, #f06bc2 0%, #e62ca1 100%);
  color: #fff;
  padding: 10px 22px;
  font-weight: 700;
  border-radius: 24px;
  font-size: 1.05rem;
  text-transform: uppercase;
  box-shadow: 0 3px 10px rgba(230, 44, 161, 0.4);
}

.excerpt-product .badge-sale .bulk {
  font-size: 0.85rem;
}

/* ===== BADGE STOCK - EN BAS À DROITE DANS L'IMAGE ===== */
.excerpt-product .badge-low-stock {
  position: absolute;
  bottom: 12px;
  right: 12px;
  background: rgba(255, 87, 34, 0.95);
  color: #fff;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 0.7rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 4px;
  z-index: 5;
  box-shadow: 0 2px 8px rgba(255, 87, 34, 0.3);
}

.excerpt-product .badge-low-stock.critical {
  background: rgba(220, 53, 69, 0.95);
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
}

.excerpt-product .badge-low-stock svg,
.excerpt-product .badge-low-stock i {
  width: 12px;
  height: 12px;
}

/* ===== MARQUES/GAMMES - JUSTE SOUS L'IMAGE (PAS DEDANS) ===== */
.excerpt-product > .cats {
  display: flex !important;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0 16px;
  margin-top: 12px;
  margin-bottom: 0;
}

.excerpt-product > .cats .cat {
  border: 1px solid #ddd;
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 0.7rem;
  background-color: transparent;
  color: #666;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

/* ===== CONTENU ===== */
.excerpt-product .excerpt-product-content {
  padding: 12px 16px 16px 16px;
  text-align: left;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.excerpt-product .excerpt-product-content .product-attributes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}

.excerpt-product .excerpt-product-content .attribute-term {
  background-color: transparent;
  border: 1px solid #ddd;
  padding: 4px 12px;
  font-size: 0.7rem;
  border-radius: 20px;
  color: #666;
  font-weight: 500;
}

/* ===== TITRE ===== */
.excerpt-product .excerpt-product-content h3 {
  font-weight: 700;
  color: #1a1a1a;
  font-size: 0.95rem;
  margin: 0 0 8px 0;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.8em;
}

/* ===== DESCRIPTION ===== */
.excerpt-product .excerpt-product-content .excerpt {
  font-size: 0.8rem;
  color: #666;
  line-height: 1.5;
  margin: 0 0 auto 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.4em;
}

/* ===== PRIX + PANIER SUR LA MÊME LIGNE ===== */
.excerpt-product .excerpt-product-content .absolute-position {
  position: static;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #f0f0f0;
}

.excerpt-product .excerpt-product-content .price {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--wp--preset--color--color-1);
  margin: 0;
  line-height: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  flex: 1;
}

.excerpt-product .excerpt-product-content .price del {
  font-size: 0.9rem;
  font-weight: 400;
  color: #999;
}

.excerpt-product .excerpt-product-content .price ins {
  text-decoration: none;
  font-size: 1.4rem;
}

.excerpt-product .excerpt-product-content .star-rating svg {
  color: var(--wp--preset--color--color-2);
  font-size: 0.875rem;
}

/* ===== ACTIONS (PANIER) ===== */
.excerpt-product .product-actions {
  width: auto;
  height: auto;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  padding: 0;
  margin: 0;
  flex-shrink: 0;
}

/* Cacher le bouton VOIR */
.excerpt-product .product-actions .btn-white {
  display: none;
}

/* Bouton AJOUTER rond avec icône centrée */
.excerpt-product .product-actions button.add_to_cart_button,
.excerpt-product .product-actions a.btn-color-1 {
  width: 48px;
  height: 48px;
  min-width: 48px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--wp--preset--color--color-1);
  border: none;
  color: #fff;
  font-size: 0;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(230, 44, 161, 0.3);
}

.excerpt-product .product-actions button.add_to_cart_button:hover,
.excerpt-product .product-actions a.btn-color-1:hover {
  background: #c0237d;
  transform: scale(1.1);
  box-shadow: 0 6px 16px rgba(230, 44, 161, 0.4);
}

.excerpt-product .product-actions button.add_to_cart_button svg,
.excerpt-product .product-actions button.add_to_cart_button i,
.excerpt-product .product-actions a.btn-color-1 i {
  width: 20px;
  height: 20px;
  fill: #fff;
  color: #fff;
  display: block;
  margin: 0 auto;
}

.excerpt-product form.cart {
  margin: 0;
  display: flex;
}

.excerpt-product form.cart .wc-forward {
  display: none;
}

/* ===== PRODUITS EN PROMO ===== */
.excerpt-product.on-sale {
  background-color: #fff;
  border: 2px solid #e62ca1;
}

/**** ===== CARROUSEL PRODUITS - MOBILE OPTIMISÉ ===== ****/

.produits-carousel {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  gap: 15px;
  padding: 15px 10px 15px 15px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.produits-carousel::-webkit-scrollbar {
  display: none;
}

/* Cartes à 88% - FORCER avec !important */
.produits-carousel .product-slide {
  flex: 0 0 88% !important;
  max-width: 88% !important;
  min-width: 88% !important;
  scroll-snap-align: start;
}

/* Hauteur augmentée - FORCER avec !important */
.produits-carousel .excerpt-product {
  height: 560px !important;
}

/* Images GRANDES sans espace gris - object-fit: contain pour garder proportions */
.produits-carousel .excerpt-product .image {
  height: 340px !important;
  padding: 0 !important;
  background-color: #fff;
}

.produits-carousel .excerpt-product .image a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.produits-carousel .excerpt-product .image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important; /* ✅ Garde les proportions */
  object-position: center;
}

@media screen and (min-width: 576px) {
  .produits-carousel .product-slide {
    flex: 0 0 75% !important;
    max-width: 75% !important;
    min-width: 75% !important;
  }
}

@media screen and (min-width: 768px) {
  .produits-carousel .product-slide {
    flex: 0 0 48% !important;
    max-width: 48% !important;
    min-width: 48% !important;
  }
}

@media screen and (min-width: 992px) {
  .produits-carousel .product-slide {
    flex: 0 0 280px !important;
    max-width: 280px !important;
    min-width: 280px !important;
  }

  .produits-carousel .excerpt-product {
    height: auto !important;
  }

  .produits-carousel .excerpt-product .image {
    height: 280px !important;
    padding: 20px !important;
    background-color: #fff;
  }

  .produits-carousel .excerpt-product .image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }
}

@media screen and (max-width: 380px) {
  .produits-carousel .product-slide {
    flex: 0 0 92% !important;
    max-width: 92% !important;
    min-width: 92% !important;
  }

  .produits-carousel .excerpt-product {
    height: 580px !important;
  }

  .produits-carousel .excerpt-product .image {
    height: 320px !important;
  }
}

/* ===== RESPONSIVE DESKTOP - VERSION CONTAIN (garde proportions) ===== */
@media screen and (min-width: 991px) {
  /* Images avec padding = fond blanc visible */
  .excerpt-product .image {
    height: 280px;
    padding: 20px !important;
    background-color: #fff;
  }

  .excerpt-product .image a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
  }

  /* Object-fit contain = garde les proportions, ne coupe pas */
  .excerpt-product .image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  .excerpt-product .excerpt-product-content .excerpt {
    margin-bottom: 0;
  }

  .excerpt-product .product-actions {
    position: static;
    height: auto;
    opacity: 1;
  }
}

/* Large desktop - images plus grandes */
@media screen and (min-width: 1200px) {
  .excerpt-product .image {
    height: 320px;
    padding: 25px !important;
  }
}

/* Extra large desktop */
@media screen and (min-width: 1400px) {
  .excerpt-product .image {
    height: 340px;
    padding: 30px !important;
  }
}

/***** Single product ****/

.product .main-bloc {
  display: flex;

  flex-direction: row;

  justify-content: space-between;

  align-items: flex-start;

  background-color: #fdf3f9;

  padding: 2% 3% 3% 3%;

  border-radius: 5px;
}

.product .main-bloc .onsale {
  position: absolute;

  top: 5%;

  left: 5%;

  color: var(--wp--preset--color--color-1);

  background-color: var(--wp--preset--color--color-6);

  padding: 5px 15px;

  font-weight: 700;

  border-radius: 20px;

  font-size: 1.5rem;

  min-width: 0;

  min-height: 0;

  line-height: 1.2;
}

.product .main-bloc .woocommerce-product-gallery {
  width: 100% !important;

  background-color: #fff;

  border-radius: 20px;

  padding: 15px;
}

.product .main-bloc .woocommerce-product-gallery img {
  margin: 0 auto 20px auto;

  max-height: 600px;

  width: auto !important;
}

.product .main-bloc .single-product-intro .product_meta {
  display: flex;

  flex-direction: row;

  align-items: center;

  gap: 5px;
}

.product .main-bloc .yith-add-to-wishlist-button-block {
  gap: 5px;
}

.product .main-bloc .yith-add-to-wishlist-button-block a {
  font-size: 14px;
}

.product .main-bloc .yith-add-to-wishlist-button-block a svg {
  width: 20px;
}

.product .main-bloc .single-product-intro .product_meta .tagged_as {
  background-color: #fff;

  border: 1px solid var(--wp--preset--color--color-text);

  padding: 5px 15px;

  border-radius: 25px;

  margin-top: 15px;

  margin-bottom: 15px;
}

.product .main-bloc .single-product-intro h1 {
  font-size: 1.25rem;

  font-weight: 700;

  margin-bottom: 15px;

  letter-spacing: 0.5px;
}

.product .main-bloc .star-rating {
  font-size: 14px;
}

.product .main-bloc .star-rating:before {
  color: var(--wp--preset--color--color-2);
}

.product .main-bloc .woocommerce-product-rating {
  display: flex;

  align-items: baseline;

  gap: 5px;

  font-size: 14px;
}

.product .main-bloc .star-rating span:before {
  color: var(--wp--preset--color--color-2);
}

.product .main-bloc .sku_wrapper {
  display: block;

  margin-bottom: 15px;
}

.product .main-bloc .entry-summary {
  width: 100% !important;

  float: none !important;

  background-color: #fff;

  border-radius: 20px;

  padding: 15px;
}

/*** Prix ****/

.product .main-bloc .entry-summary .price {
  display: flex;

  flex-direction: column;

  color: var(--wp--preset--color--color-1);

  font-weight: 700;

  font-size: 2rem;

  line-height: 1.2;
}

.product .main-bloc .entry-summary .price del {
  font-size: 1rem;

  color: var(--wp--preset--color--color-text);

  font-weight: 400;
}

.product .main-bloc .entry-summary .price ins {
  text-decoration: none;
}

/**** Variations *****/

.product .main-bloc .entry-summary .variations .cfvsw-swatches-container {
  flex-direction: column;

  width: 100%;

  gap: 5px;
}

.product
  .main-bloc
  .entry-summary
  .variations
  .cfvsw-swatches-container
  .cfvsw-swatches-option {
  width: 100%;

  border: none;

  padding: 10px;

  background-color: #e6f2f0;

  color: var(--wp--preset--color--color-2);

  text-align: left;

  font-size: 1.125rem;

  font-weight: 500;
}

.product .main-bloc .entry-summary .variations td.value {
  display: flex;

  flex-direction: column;
}

.product
  .main-bloc
  .entry-summary
  .variations
  .cfvsw-swatches-container
  .cfvsw-swatches-option
  .cfvsw-swatch-inner {
  justify-content: flex-start;
}

.product
  .main-bloc
  .entry-summary
  .variations
  .cfvsw-swatches-container
  .cfvsw-swatches-option:not(.cfvsw-swatches-disabled):hover,
.product
  .main-bloc
  .entry-summary
  .variations
  .cfvsw-swatches-container
  .cfvsw-swatches-option.cfvsw-selected-swatch {
  background-color: var(--wp--preset--color--color-2);

  color: #fff;
}

.product
  .main-bloc
  .entry-summary
  .variations
  .cfvsw-swatches-container
  .cfvsw-swatches-disabled {
  cursor: not-allowed;

  position: relative;
}

.product
  .main-bloc
  .entry-summary
  .variations
  .cfvsw-swatches-container
  .cfvsw-swatches-disabled:before {
  opacity: 0.6;
}

.product
  .main-bloc
  .entry-summary
  .variations
  .cfvsw-swatches-container
  .cfvsw-swatches-disabled:after {
  position: absolute;

  content: "Hors stock";

  top: 0;

  right: 0;

  width: 45%;

  height: 100%;

  background-color: var(--wp--preset--color--color-2);

  color: #fff;

  text-transform: uppercase;

  font-size: 0.875rem;

  display: flex;

  align-items: center;

  justify-content: center;
}

.product .main-bloc .entry-summary .variations .reset_variations {
  display: none !important;
}

.product .main-bloc .entry-summary .woocommerce-variation-add-to-cart,
.product .main-bloc .entry-summary .single-cart {
  display: flex;

  flex-direction: row;

  justify-content: space-between;

  align-items: center;

  gap: 10px;

  margin-top: 5vh;
}

/* quantité */

.woocommerce div.product form.cart::before,
.woocommerce div.product form.cart::after {
  display: none;
}

.single-product .product .main-bloc form.cart .qib-container {
  width: fit-content;

  display: flex;

  gap: 20px;

  flex-direction: row-reverse;

  border-radius: 4px;

  border: 1px solid hsla(0, 0%, 7%, 0.21);
}

.single-product .product .main-bloc form.cart .qib-container .quantity {
  margin: 0;
}

.single-product .product .main-bloc form.cart .qib-container .quantity input {
  border: none;

  padding: 10px 0;

  margin-right: -10px;
}

.single-product .product .main-bloc form.cart .qib-container button {
  border: none;

  background-color: transparent;

  padding: 10px;

  color: hsla(0, 0%, 7%, 0.71);
}

/**** Tabs ****/

.woocommerce-tabs {
  margin-top: 5vh;
}

.woocommerce-tabs ul.tabs {
  display: flex;

  align-items: center;

  justify-content: flex-start;

  row-gap: 10px;

  column-gap: 20px;

  flex-wrap: wrap;
}

.woocommerce-tabs ul.tabs:before {
  display: none !important;
}

.woocommerce-tabs ul.tabs li {
  border: none !important;

  padding: 0 !important;

  margin: 0 !important;

  background-color: transparent !important;
}

.woocommerce-tabs ul.tabs li a {
  color: var(--wp--preset--color--color-text) !important;
}

.woocommerce-tabs ul.tabs li.active a {
  color: var(--wp--preset--color--color-1) !important;

  text-decoration: underline !important;
}

@media screen and (min-width: 991px) {
  .product .main-bloc .entry-summary .woocommerce-variation-add-to-cart,
  .product .main-bloc .entry-summary .single-cart {
    flex-direction: column;
  }

  .woocommerce-tabs ul.tabs {
    justify-content: center;
  }
}

@media screen and (min-width: 1200px) {
  .product .main-bloc .entry-summary .woocommerce-variation-add-to-cart,
  .product .main-bloc .entry-summary .single-cart {
    flex-direction: row;
  }
}

/**** Produits liés ****/

.upsells.products,
.related.products {
  margin-top: 15vh;

  margin-bottom: 5vh;
}

.upsells.products h2,
.related.products h2 {
  margin-bottom: 5vh;

  text-transform: uppercase;

  font-weight: 500;

  font-size: 2.5rem;
}

/* ==========================================
   DESKTOP PRODUCT PAGE STYLES
   ========================================== */

/* Masquer le desktop sur mobile */
@media screen and (max-width: 991px) {
  .desktop-product-layout {
    display: none !important;
  }
}

/* Afficher desktop uniquement sur grand écran */
@media screen and (min-width: 992px) {
  .desktop-product-layout {
    display: block !important;
  }

  /* ========== 1. FIL D'ARIANE ========== */
  .desktop-breadcrumb-container {
    padding: 15px 0;
  }

  .desktop-breadcrumb-container .woocommerce-breadcrumb {
    font-size: 0.875rem;
    color: #999;
  }

  .desktop-breadcrumb-container .woocommerce-breadcrumb a {
    color: #666;
    text-decoration: none;
    transition: color 0.2s;
  }

  .desktop-breadcrumb-container .woocommerce-breadcrumb a:hover {
    color: var(--wp--preset--color--color-1);
  }

  /* ========== 2. SECTION PRODUIT PRINCIPALE ========== */
  .desktop-product-main-section {
    padding: 40px 0;
    background-color: #fafafa;
    border-radius: 15px;
    margin-bottom: 50px;
  }

  /* GALERIE D'IMAGES */
  .desktop-gallery-wrapper {
    background-color: #fff;
    border-radius: 12px;
    padding: 0px;
    position: relative;
    overflow: hidden; /* Important : empêche la gommette de sortir */
    margin-left: 50px;
  }

  .desktop-gallery-wrapper .woocommerce-product-gallery {
    width: 100% !important;
    position: relative;
  }

  /* Agrandir l'image principale */
  .desktop-gallery-wrapper .woocommerce-product-gallery__wrapper {
    max-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .desktop-gallery-wrapper .woocommerce-product-gallery__image img {
    border-radius: 8px;
    max-height: 550px;
    width: auto !important;
    object-fit: contain;
  }

  /* Badge réduction - Position ABSOLUTE dans le wrapper pour rester DANS l'image */
  .desktop-gallery-wrapper .onsale {
    position: absolute !important;
    top: 45px !important;
    left: 45px !important;
    background-color: var(--wp--preset--color--color-6) !important;
    color: var(--wp--preset--color--color-1) !important;
    padding: 8px 20px !important;
    border-radius: 25px !important;
    font-weight: 700 !important;
    font-size: 1.25rem !important;
    z-index: 10 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    line-height: 1.2 !important;
  }

  /* Forcer le conteneur de l'image à ne pas avoir d'espace blanc en haut */
  .desktop-gallery-wrapper .woocommerce-product-gallery figure {
    margin: 0 !important;
    position: relative;
  }

  /* CONTENU DROITE */
  .desktop-product-right-content {
    padding: 20px;
    position: relative;
  }

  /* Wishlist - Plus visible sous le titre */
  .desktop-wishlist-wrapper {
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .desktop-wishlist-wrapper .yith-add-to-wishlist-button-block {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .desktop-wishlist-wrapper .yith-add-to-wishlist-button-block a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background-color: #fff3f8;
    border: 2px solid var(--wp--preset--color--color-1);
    border-radius: 25px;
    transition: all 0.2s;
    text-decoration: none;
  }

  .desktop-wishlist-wrapper .yith-add-to-wishlist-button-block a:hover {
    background-color: var(--wp--preset--color--color-1);
    transform: scale(1.05);
  }

  .desktop-wishlist-wrapper svg {
    width: 20px !important;
    height: 20px !important;
    color: var(--wp--preset--color--color-1) !important;
    transition: color 0.2s;
  }

  .desktop-wishlist-wrapper .yith-add-to-wishlist-button-block a:hover svg {
    color: #fff !important;
  }

  .desktop-wishlist-wrapper span {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--wp--preset--color--color-1);
    transition: color 0.2s;
  }

  .desktop-wishlist-wrapper .yith-add-to-wishlist-button-block a:hover span {
    color: #fff;
  }

  /* Titre H1 */
  .desktop-product-title {
    font-size: 2rem;
    font-weight: 700;
    color: var(--wp--preset--color--color-8);
    margin-bottom: 15px;
    line-height: 1.3;
  }

  /* Badges Marque + Gamme */
  .desktop-product-badges-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 15px;
  }

  .desktop-badge {
    padding: 6px 18px;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 500;
  }

  .desktop-badge-brand {
    background-color: #e6f2f0;
    color: var(--wp--preset--color--color-2);
  }

  .desktop-badge-gamme {
    background-color: #fff3e0;
    color: #ff9800;
  }

  /* Note */
  .desktop-product-right-content .woocommerce-product-rating {
    margin-bottom: 20px;
  }

  .desktop-product-right-content .star-rating {
    font-size: 16px;
  }

  .desktop-product-right-content .star-rating:before,
  .desktop-product-right-content .star-rating span:before {
    color: var(--wp--preset--color--color-2);
  }

  /* Prix */
  .desktop-price-section {
    margin-bottom: 25px;
    display: flex;
    align-items: baseline;
    gap: 15px;
  }

  .desktop-price-old {
    font-size: 1.5rem;
    color: #999;
    text-decoration: line-through;
    font-weight: 400;
  }

  .desktop-price-new {
    font-size: 2.5rem;
    color: var(--wp--preset--color--color-1);
    font-weight: 700;
  }

  .desktop-price-single {
    font-size: 2.5rem;
    color: var(--wp--preset--color--color-1);
    font-weight: 700;
  }

  /* Promotion Type 9 */
  .desktop-promo-banner {
    background-color: var(--wp--preset--color--color-6);
    color: var(--wp--preset--color--color-1);
    padding: 15px 20px;
    border-radius: 10px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.95rem;
  }

  .desktop-promo-banner i {
    font-size: 1.5rem;
    flex-shrink: 0;
  }

  .desktop-promo-banner a {
    color: var(--wp--preset--color--color-1);
    font-weight: 700;
    text-decoration: underline;
  }

  /* Description courte */
  .desktop-short-description {
    margin-bottom: 25px;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--wp--preset--color--color-text);
  }

  /* Variations */
  .desktop-variations-wrapper {
    margin-bottom: 25px;
  }

  /* Quantité + Stock */
  .desktop-quantity-stock-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
    padding: 20px;
    background-color: #f8f8f8;
    border-radius: 10px;
  }

  .desktop-quantity-group {
    display: flex;
    align-items: center;
    gap: 15px;
  }

  .desktop-quantity-group label {
    font-weight: 600;
    font-size: 1rem;
    margin: 0;
  }

  .desktop-qib-container {
    display: flex;
    align-items: center;
    border: 2px solid #e5e5e5;
    border-radius: 8px;
    overflow: hidden;
    background-color: #fff;
  }

  .desktop-qib-container button {
    background-color: transparent;
    border: none;
    padding: 12px 20px;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--wp--preset--color--color-2);
    cursor: pointer;
    transition: background-color 0.2s;
  }

  .desktop-qib-container button:hover {
    background-color: rgba(0, 0, 0, 0.05);
  }

  .desktop-qib-container .desktop-qty-input {
    border: none;
    width: 60px;
    text-align: center;
    padding: 12px 8px;
    font-weight: 600;
    font-size: 1.1rem;
  }

  /* Stock */
  .desktop-stock-group {
    display: flex;
    align-items: center;
  }

  .desktop-stock-available {
    color: var(--wp--preset--color--color-2);
    font-weight: 700;
    font-size: 1.125rem;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .desktop-stock-available i {
    font-size: 1.5rem;
  }

  .desktop-stock-unavailable {
    color: #dc3545;
    font-weight: 700;
    font-size: 1.125rem;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .desktop-stock-unavailable i {
    font-size: 1.5rem;
  }

  /* Bouton Ajouter au panier */
  .desktop-add-to-cart-wrapper {
    margin-bottom: 25px;
  }

  .desktop-cart-form {
    margin: 0 !important;
  }

  .desktop-btn-add-to-cart {
    width: 100%;
    padding: 18px 30px !important;
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    border: none;
    transition:
      transform 0.2s,
      box-shadow 0.2s;
  }

  .desktop-btn-add-to-cart:hover:not(.disabled) {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  }

  .desktop-btn-add-to-cart.disabled {
    opacity: 0.6;
    cursor: not-allowed;
  }

  /* Réassurances - EN LIGNE avec couleurs */
  .desktop-reassurance-badges {
    display: flex;
    gap: 15px;
    padding: 0;
    background-color: transparent;
    border-radius: 0;
  }

  .desktop-reassurance-badges .desktop-reassurance-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 10px;
    flex: 1;
    padding: 15px 20px;
    background: linear-gradient(135deg, #e6f7f5 0%, #d4f1ec 100%);
    border: 2px solid var(--wp--preset--color--color-2);
    border-radius: 10px;
    transition:
      transform 0.2s,
      box-shadow 0.2s;
  }

  .desktop-reassurance-badges .desktop-reassurance-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 4px 15px rgba(0, 189, 165, 0.2);
  }

  .desktop-reassurance-badges .desktop-reassurance-item i {
    font-size: 1.75rem;
    color: var(--wp--preset--color--color-2);
    flex-shrink: 0;
  }

  .desktop-reassurance-badges .desktop-reassurance-item span {
    font-size: 0.875rem;
    color: var(--wp--preset--color--color-8);
    font-weight: 600;
    line-height: 1.3;
  }

  /* ========== 3. SECTION CONTENU ========== */
  .desktop-content-section {
    padding: 50px 0;
  }

  /* SIDEBAR GAUCHE */
  .desktop-sidebar-wrapper {
    position: relative;
  }

  /* Menu des sections */
  .desktop-tabs-menu {
    background-color: #fff;
    border-radius: 12px;
    padding: 15px;
    margin-bottom: 30px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  }

  .desktop-tabs-menu-list {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .desktop-tab-menu-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 15px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
    margin-bottom: 5px;
  }

  .desktop-tab-menu-item:hover {
    background-color: #f8f8f8;
  }

  .desktop-tab-menu-item.active {
    background-color: var(--wp--preset--color--color-2);
    color: #fff;
  }

  .desktop-tab-icon {
    font-size: 1.25rem;
    flex-shrink: 0;
    color: var(--wp--preset--color--color-2);
  }

  .desktop-tab-menu-item.active .desktop-tab-icon {
    color: #fff;
  }

  .desktop-tab-menu-item span {
    font-size: 0.95rem;
    font-weight: 500;
  }

  /* H2 "Vous consultez" */
  .desktop-consulted-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: var(--wp--preset--color--color-8);
  }

  /* Card "Vous consultez" - VERSION CORRIGÉE */
  .desktop-consulted-card {
    background-color: #fff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  }

  /* FIX IMAGE "VOUS CONSULTEZ" - IMAGE COMPLÈTE */
  .desktop-card-image {
    height: 300px !important;
    min-height: 300px !important;
  }

  .desktop-card-image img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 280px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
  }

  .desktop-card-info {
    text-align: center;
  }

  .desktop-card-product-name {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: var(--wp--preset--color--color-8);
    line-height: 1.3;
  }

  .desktop-card-price {
    margin-bottom: 15px;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--wp--preset--color--color-1);
  }

  .desktop-card-price del {
    font-size: 0.95rem;
    color: #999;
    font-weight: 400;
    text-decoration: line-through;
    margin-right: 8px;
  }

  .desktop-card-price ins {
    text-decoration: none;
  }

  .desktop-card-btn {
    width: 100%;
    padding: 12px 20px !important;
    font-size: 0.95rem !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    border: none;
  }

  /* CONTENU DES ONGLETS */
  .desktop-tabs-content-wrapper {
    background-color: #fff;
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    min-height: 400px;
  }

  .desktop-tab-content-panel {
    display: none;
  }

  .desktop-tab-content-panel.active {
    display: block;
    animation: fadeIn 0.3s ease;
  }

  @keyframes fadeIn {
    from {
      opacity: 0;
      transform: translateY(10px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .desktop-tab-content-panel h2 {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: var(--wp--preset--color--color-8);
  }

  .desktop-tab-content-panel p {
    line-height: 1.7;
    margin-bottom: 15px;
    color: var(--wp--preset--color--color-text);
  }

  /* ========== 4. PRODUITS LIÉS ========== */
  .desktop-related-section {
    padding: 50px 0;
  }

  .desktop-related-section h2 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 30px;
    text-align: center;
    color: var(--wp--preset--color--color-8);
  }

  /* ========== 5. À PROPOS PHARMACIE ========== */
  .desktop-pharmacy-about-section {
    background-color: #fdf3f9;
    padding: 60px 0;
    margin-top: 50px;
  }

  .desktop-pharmacy-about-section h3 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: var(--wp--preset--color--color-8);
    text-align: left;
    padding: 0 20px;
  }

  .desktop-pharmacy-about-section p {
    text-align: left;
    max-width: none;
    margin: 0 0 40px 0;
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--wp--preset--color--color-text);
    padding: 0 20px;
  }

  .desktop-pharmacy-reassurance {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
  }

  .desktop-pharmacy-reassurance .desktop-reassurance-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
    background-color: #fff;
    padding: 20px 15px;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transition:
      transform 0.2s,
      box-shadow 0.2s;
  }

  .desktop-pharmacy-reassurance .desktop-reassurance-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
  }

  .desktop-pharmacy-reassurance .desktop-reassurance-item i {
    font-size: 2.5rem;
    color: var(--wp--preset--color--color-2);
  }

  .desktop-pharmacy-reassurance .desktop-reassurance-item span {
    font-size: 0.875rem;
    color: var(--wp--preset--color--color-text);
    font-weight: 600;
    line-height: 1.3;
  }

  /* Responsive pour tablettes */
  @media screen and (max-width: 1199px) {
    .desktop-pharmacy-reassurance {
      grid-template-columns: repeat(3, 1fr);
    }

    .desktop-consulted-card.is-sticky {
      position: relative !important;
      width: 100% !important;
    }
  }

  /* FIX pour écrans entre 992px et 1200px */
  @media screen and (min-width: 992px) and (max-width: 1199px) {
    /* Réduire les badges de réassurance pour qu'ils ne dépassent pas */
    .desktop-reassurance-badges {
      flex-direction: column;
      gap: 10px;
    }

    .desktop-reassurance-badges .desktop-reassurance-item {
      padding: 12px 15px;
    }

    .desktop-reassurance-badges .desktop-reassurance-item i {
      font-size: 1.5rem;
    }

    .desktop-reassurance-badges .desktop-reassurance-item span {
      font-size: 0.8rem;
    }

    /* Empêcher le label "Quantité" de passer sur deux lignes */
    .desktop-quantity-stock-row {
      flex-direction: column;
      align-items: flex-start;
      gap: 15px;
    }

    .desktop-quantity-group {
      width: 100%;
    }

    .desktop-quantity-group label {
      font-size: 0.9rem;
      white-space: nowrap; /* Empêche le retour à la ligne */
    }

    .desktop-stock-group {
      width: 100%;
    }

    /* Réduire la taille du titre si nécessaire */
    .desktop-product-title {
      font-size: 1.75rem;
    }

    /* Réduire les badges */
    .desktop-product-badges-row {
      flex-wrap: wrap;
    }

    .desktop-badge {
      font-size: 0.8rem;
      padding: 5px 14px;
    }
  }
}
