@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Oswald:wght@300;400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@300;400;600&display=swap');

/* =========================================================
   GOLDEN DUST WEAR - GLOBAL COLORS
========================================================= */

:root {
  --gdw-brown: #2b1a12;
  --gdw-gold: #D39A2D;
  --gdw-gold-soft: #c99732;
  --gdw-cream: #f8f6f0;
  --gdw-card: #fffdf8;
  --gdw-text: #2b1a12;
  --gdw-muted: #6e6258;
}

/* =========================================================
   FICHE PRODUIT - MASQUER LA LOUPE DE LA GALERIE
========================================================= */

body.single-product div.product .woocommerce-product-gallery
> a.woocommerce-product-gallery__trigger,
body.single-product div.product .woocommerce-product-gallery
.woocommerce-product-gallery__trigger,
body.single-product .woocommerce-product-gallery__trigger,
body.single-product .woocommerce-product-gallery__trigger span,
body.single-product .woocommerce-product-gallery__trigger::before,
body.single-product .woocommerce-product-gallery__trigger::after {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* =========================================================
   FIX GLOBAL - BANDE BLANCHE
========================================================= */

html {
  overflow-x: hidden !important;
  background: #f8f6f0 !important;
}

body {
  overflow-x: hidden !important;
  background: #f8f6f0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* =========================================================
   HEADER / LOGO / MENU - DESKTOP
========================================================= */

.eltdf-position-left,
.eltdf-position-left-inner,
.eltdf-logo-wrapper {
  display: flex !important;
  align-items: center !important;
}

.eltdf-logo-wrapper {
  flex-direction: row !important;
}

.eltdf-logo-wrapper img {
  height: 45px !important;
  width: auto !important;
  margin-top: -3px !important;
}

.eltdf-logo-wrapper::after {
  content: "Golden Dust Wear";
  font-family: 'Cooper Black', Georgia, serif;
  font-size: 15px;
  color: var(--gdw-gold);
  letter-spacing: 0.15em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  margin-left: 12px;
  white-space: nowrap;
  transform: scaleX(0.8);
  transform-origin: left center;
}

.eltdf-main-menu ul li a .item_text {
  color: var(--gdw-gold) !important;
}

.eltdf-main-menu ul li ul.sub-menu {
  border-bottom: none !important;
  box-shadow: none !important;
}

.eltdf-main-menu ul li ul.sub-menu::after,
.eltdf-drop-down .second .inner::after {
  display: none !important;
}

.eltdf-drop-down .second .inner {
  border-bottom: none !important;
}

.eltdf-main-menu ul li .second,
.eltdf-main-menu ul li .second .inner,
.eltdf-main-menu ul li .second .inner ul,
.eltdf-main-menu ul li .second .inner ul li,
.eltdf-drop-down .second,
.eltdf-drop-down .second .inner,
.eltdf-drop-down .second .inner ul {
  border-bottom: none !important;
  border-top: none !important;
  box-shadow: none !important;
}

/* =========================================================
   HEADER STICKY
========================================================= */

.eltdf-sticky-header .eltdf-logo-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  height: 100% !important;
}

.eltdf-sticky-header .eltdf-logo-wrapper a {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  position: relative !important;
  top: 0 !important;
  transform: none !important;
}

.eltdf-sticky-header .eltdf-logo-wrapper img {
  height: 45px !important;
  width: auto !important;
  max-height: 45px !important;
  object-fit: contain !important;
  position: relative !important;
  top: 0 !important;
  transform: none !important;
}

.eltdf-sticky-header .eltdf-position-left,
.eltdf-sticky-header .eltdf-position-left-inner {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
}

.eltdf-sticky-header .eltdf-vertical-align-containers {
  display: flex !important;
  align-items: center !important;
}

.eltdf-sticky-header .eltdf-position-left {
  padding-left: 40px !important;
  box-sizing: border-box !important;
}

.eltdf-sticky-header .eltdf-logo-wrapper img.eltdf-dark-logo {
  margin-right: -130px !important;
}

/* =========================================================
   FIX LOGO DUPLIQUÉ
========================================================= */

.eltdf-logo-wrapper img {
  display: none !important;
}

.eltdf-logo-wrapper img:first-of-type {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.eltdf-logo-wrapper img.eltdf-dark-logo,
.eltdf-logo-wrapper img.eltdf-light-logo,
.eltdf-logo-wrapper img.eltdf-sticky-logo {
  display: none !important;
}

.eltdf-logo-wrapper img.eltdf-normal-logo {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* =========================================================
   FOOTER
========================================================= */

footer.eltdf-page-footer,
footer.eltdf-page-footer *,
footer.eltdf-page-footer a,
footer.eltdf-page-footer p,
footer.eltdf-page-footer span,
footer.eltdf-page-footer div {
  color: #D29A2E !important;
}

/* =========================================================
   HOMEPAGE / CURATED PIECES / NEW IN
========================================================= */

.eltdf-iwt-icon-top .eltdf-iwt-icon {
  margin-bottom: 20px !important;
}



.eltdf-iwt-content .eltdf-iwt-title {
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 42px !important;
  text-transform: uppercase !important;
  letter-spacing: 6px !important;
  color: #1a1008 !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  margin-bottom: 8px !important;
}

.eltdf-iwt-content p {
  font-family: 'Oswald', sans-serif !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 3px !important;
  color: #2c1f0e !important;
  font-weight: 300 !important;
  text-align: center !important;
  margin-top: 4px !important;
}

.new-in-title {
  text-align: center;
  font-family: 'Cormorant', Georgia, serif;
  letter-spacing: 8px;
  color: #1A1209;
}

.new-in-title::before,
.new-in-title::after {
  content: "";
  color: #C8880A;
  margin: 0 15px;
}

/* =========================================================
   HOMEPAGE - Fond beige + header + hero
========================================================= */

body.home,
body.home .eltdf-wrapper,
body.home .eltdf-wrapper-inner,
body.home .eltdf-content,
body.home .eltdf-content-inner,
body.home .eltdf-container,
body.home .eltdf-container-inner,
body.home .eltdf-page-content-holder {
  background-color: #f8f6f0 !important;
}

body.home .eltdf-page-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
  background-color: #2a160d !important;
}

body.home .eltdf-menu-area {
  background-color: #2a160d !important;
  z-index: 99999 !important;
}

body.home .eltdf-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

body.home .rev_slider_wrapper,
body.home rs-module-wrap {
  margin-top: 88px !important;
}

body.home .rev_slider_wrapper,
body.home .rev_slider,
body.home rs-module-wrap,
body.home rs-module {
  z-index: 1 !important;
}

body.home .gdw-curated-header {
  margin-top: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 28px !important;
  background-color: #f8f6f0 !important;
  position: relative !important;
  z-index: 1 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.home .gdw-curated-header,
body.home .gdw-curated-header * {
  transform: none !important;
}



body.home .gdw-curated-icon {
  width: 150px !important;
  height: auto !important;
  display: block !important;
  margin: 0 auto -30px !important;
}

/* =========================================================
   WOOCOMMERCE GLOBAL
========================================================= */

.single-product .woocommerce-tabs {
  margin-bottom: 70px !important;
}

.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  border: none !important;
  box-shadow: none !important;
}

.woocommerce-info::before,
.woocommerce-message::before,
.woocommerce-error::before {
  display: none !important;
}

.woocommerce .woocommerce-info {
  border: none !important;
  background: transparent !important;
  padding: 20px 0 !important;
}

.woocommerce-notices-wrapper,
.woocommerce-notices-wrapper .woocommerce-info {
  border: none !important;
  outline: none !important;
}

.woocommerce-result-count {
  display: none !important;
}

.woocommerce-ordering {
  display: none !important;
}

.woocommerce ul.products {
  margin-top: 60px !important;
}

.single-product .woocommerce-tabs ul.tabs li.reviews_tab,
.single-product #tab-reviews {
  display: none !important;
}

/* =========================================================
   NEW IN PAGE ONLY
========================================================= */

body.page-id-7773 .eltdf-container-inner {
  padding-top: 0 !important;
}

body.page-id-7773 .elementor-element-ea20c61 {
  margin-top: -40px !important;
  padding-top: 0 !important;
  padding-bottom: 100px !important;
}

.gdw-newin-button-wrap {
  text-align: center;
  margin-top: 45px;
  margin-bottom: 20px;
}

.gdw-newin-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 42px;
  border: 1px solid #c8943c;
  background: transparent;
  color: #2b1209;
  font-family: 'DM Sans', Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-decoration: none;
  transition: none !important;
}

.gdw-newin-button:hover,
.gdw-newin-button:focus {
  background: transparent;
  color: #2b1209;
  border-color: #c8943c;
  text-decoration: none;
}

.gdw-newin-button span {
  font-size: 16px;
  line-height: 1;
}

/* =========================================================
   SHOP PAGE ONLY (page-id-54)
========================================================= */

body.elementor-page-54,
body.page-id-54,
body.elementor-page-54 .eltdf-wrapper,
body.elementor-page-54 .eltdf-wrapper-inner,
body.elementor-page-54 .eltdf-content,
body.elementor-page-54 .eltdf-content-inner,
body.elementor-page-54 .eltdf-container,
body.elementor-page-54 .eltdf-container-inner,
body.elementor-page-54 .eltdf-page-content-holder,
body.elementor-page-54 .elementor,
body.elementor-page-54 .elementor-section,
body.elementor-page-54 .elementor-container,
body.elementor-page-54 .e-con,
body.elementor-page-54 .e-con-inner,
body.elementor-page-54 .elementor-widget-wrap,
body.elementor-page-54 .elementor-widget-container,
body.page-id-54 .eltdf-wrapper,
body.page-id-54 .eltdf-wrapper-inner,
body.page-id-54 .eltdf-content,
body.page-id-54 .eltdf-content-inner,
body.page-id-54 .eltdf-container,
body.page-id-54 .eltdf-container-inner,
body.page-id-54 .eltdf-page-content-holder,
body.page-id-54 .elementor,
body.page-id-54 .elementor-section,
body.page-id-54 .elementor-container,
body.page-id-54 .e-con,
body.page-id-54 .e-con-inner,
body.page-id-54 .elementor-widget-wrap,
body.page-id-54 .elementor-widget-container,
div[data-elementor-id="54"] {
  background-color: #f8f6f0 !important;
}

body.page-id-54 .eltdf-wrapper-inner,
body.elementor-page-54 .eltdf-wrapper-inner {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
  box-sizing: border-box !important;
}

body.page-id-54 .eltdf-content,
body.elementor-page-54 .eltdf-content {
  flex: 1 1 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.elementor-page-54 .eltdf-container,
body.elementor-page-54 .eltdf-container-inner,
body.elementor-page-54 .eltdf-page-content-holder,
body.page-id-54 .eltdf-container,
body.page-id-54 .eltdf-container-inner,
body.page-id-54 .eltdf-page-content-holder {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

body.elementor-page-54 .eltdf-wrapper,
body.elementor-page-54 .eltdf-content-inner,
body.elementor-page-54 .eltdf-page-content-holder,
body.elementor-page-54 .elementor-54,
body.page-id-54 .eltdf-wrapper,
body.page-id-54 .eltdf-content-inner,
body.page-id-54 .eltdf-page-content-holder,
body.page-id-54 .elementor-54 {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

body.elementor-page-54 .elementor-element-2221da3,
body.page-id-54 .elementor-element-2221da3,
div[data-elementor-id="54"] .elementor-element-2221da3 {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important;
  background-color: #f8f6f0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

body.elementor-page-54 .elementor-element-2221da3 > .e-con-inner,
body.elementor-page-54 .elementor-element-2221da3 .e-con-inner,
body.page-id-54 .elementor-element-2221da3 > .e-con-inner,
body.page-id-54 .elementor-element-2221da3 .e-con-inner,
div[data-elementor-id="54"] .elementor-element-2221da3 > .e-con-inner,
div[data-elementor-id="54"] .elementor-element-2221da3 .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  left: 0 !important;
  transform: none !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

div[data-elementor-id="54"] .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

body.page-id-54 .eltdf-page-header,
body.page-id-54 .eltdf-menu-area,
body.page-id-54 .eltdf-vertical-align-containers,
body.elementor-page-54 .eltdf-page-header,
body.elementor-page-54 .eltdf-menu-area,
body.elementor-page-54 .eltdf-vertical-align-containers {
  width: 100% !important;
  max-width: none !important;
  background: #2a160d !important;
  background-color: #2a160d !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

body.page-id-54 .eltdf-wrapper,
body.page-id-54 .eltdf-wrapper-inner,
body.elementor-page-54 .eltdf-wrapper,
body.elementor-page-54 .eltdf-wrapper-inner {
  background: #f7f0e6 !important;
  background-color: #f7f0e6 !important;
}

/* =========================================================
   WOOCOMMERCE CATEGORY PAGES
   Fond uniquement ici. Le design des cartes est centralisé
   dans le bloc final GDW CATEGORY PRODUCT CARDS.
========================================================= */

body.tax-product_cat,
body.tax-product_cat .eltdf-content,
body.tax-product_cat .eltdf-content-inner,
body.tax-product_cat .eltdf-container,
body.tax-product_cat .eltdf-container-inner,
body.tax-product_cat .eltdf-page-content-holder {
  background-color: #f8f6f0 !important;
}

/* =========================================================
   DESIGNERS LISTING PAGE - PREMIUM GDW
   Cartes compactes, logo dominant, titre + Explore rapprochés
========================================================= */

/* Page Designers : on garde le header et footer du thème, on ne modifie que le contenu */
body.page-id-6126,
body.page-id-6126 .eltdf-content,
body.page-id-6126 .eltdf-content-inner,
body.page-id-6126 .eltdf-container,
body.page-id-6126 .eltdf-container-inner,
body.page-id-6126 .eltdf-page-content-holder,
body.page-id-6126 .entry-content,
body.page-id-6126 .elementor,
body.page-id-6126 .elementor-section,
body.page-id-6126 .elementor-container,
body.page-id-6126 .elementor-widget-wrap,
body.page-id-6126 .elementor-widget-container {
  background: #f8f6f0 !important;
  background-color: #f8f6f0 !important;
}

body.page-id-6126 .eltdf-content,
body.page-id-6126 .eltdf-content-inner,
body.page-id-6126 .eltdf-container,
body.page-id-6126 .eltdf-container-inner,
body.page-id-6126 .eltdf-page-content-holder {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.gdw-designers-auto {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 34px clamp(18px, 5vw, 72px) 72px !important;
  background: #f8f6f0 !important;
  box-sizing: border-box !important;
}

.gdw-designers-auto > * {
  width: 100% !important;
  max-width: 1640px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Titre page */
.gdw-designers-title {
  text-align: center !important;
  margin: 0 auto 42px !important;
  padding: 0 !important;
}

.gdw-designers-title h1 {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(38px, 4vw, 62px) !important;
  font-weight: 400 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #1f140d !important;
  margin: 0 !important;
  line-height: 1.05 !important;
}

.gdw-designers-title span {
  display: block !important;
  position: relative !important;
  width: 170px !important;
  height: 1px !important;
  margin: 22px auto 0 !important;
  background: linear-gradient(90deg, transparent, rgba(201,151,50,0.9), transparent) !important;
}

.gdw-designers-title span::after {
  content: "✦" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 26px !important;
  height: 26px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fffdf8 !important;
  color: #c99732 !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

/* On cache les filtres Dokan */
.gdw-designers-auto #dokan-store-listing-filter-wrap,
.gdw-designers-auto #filter-wrap,
.gdw-designers-auto .dokan-store-listing-filter-wrap,
.gdw-designers-auto .store-lists-other-filter-wrap,
.gdw-designers-auto .dokan-store-listing-filter-form-wrap,
.gdw-designers-auto .dokan-geolocation-location-filters {
  display: none !important;
}

/* Grille : plusieurs designers se placent bien de gauche à droite */
.gdw-designers-auto ul.dokan-seller-wrap {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 320px)) !important;
  gap: 30px !important;
  align-items: start !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 1640px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

.gdw-designers-auto ul.dokan-seller-wrap::before,
.gdw-designers-auto ul.dokan-seller-wrap::after {
  content: none !important;
  display: none !important;
}

.gdw-designers-auto ul.dokan-seller-wrap li.dokan-single-seller,
.gdw-designers-auto ul.dokan-seller-wrap li {
  display: block !important;
  width: 100% !important;
  max-width: 320px !important;
  min-width: 0 !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Carte : on affiche uniquement la bannière du designer,
   qui contient déjà son propre design (logo, tagline, EXPLORE).
   On ne rajoute plus de titre ni de bouton par-dessus. */
.gdw-designers-auto .dokan-single-seller .store-wrapper,
.gdw-designers-auto .store-wrapper {
  display: block !important;
  width: 100% !important;
  max-width: 320px !important;
  height: auto !important;
  min-height: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  text-align: center !important;
  box-shadow: 0 12px 34px rgba(43, 26, 18, 0.08) !important;
  transition: box-shadow 0.25s ease, transform 0.25s ease !important;
  position: relative !important;
  box-sizing: border-box !important;
}

.gdw-designers-auto .dokan-single-seller .store-wrapper:hover,
.gdw-designers-auto .dokan-single-seller:hover .store-wrapper {
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 44px rgba(43, 26, 18, 0.13) !important;
}

/* Zone logo/bannière : la bannière EST la carte, on l'affiche
   entière, sans recadrage ni zoom, ratio respecté */
.gdw-designers-auto .store-header,
.gdw-designers-auto .store-banner {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: none !important;
  overflow: visible !important;
  position: static !important;
  box-sizing: border-box !important;
  border-radius: 10px !important;
}

/* Le thème positionne cette image en absolute par défaut, ce qui la
   sort du flux et fait s'effondrer le conteneur parent (hauteur 0).
   On la remet en position normale pour qu'elle donne sa vraie
   hauteur à la carte. */
.gdw-designers-auto .store-header img,
.gdw-designers-auto .store-banner img,
.gdw-designers-auto .store-header a img,
.gdw-designers-auto .store-banner a img {
  display: block !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  transform-origin: center center !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.gdw-designers-auto .store-header a,
.gdw-designers-auto .store-banner a {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  position: static !important;
}

/* On cache seulement l'avatar rond Dokan, pas la vraie bannière/logo */
.gdw-designers-auto .store-logo,
.gdw-designers-auto .store-logo img,
.gdw-designers-auto .store-content .store-logo,
.gdw-designers-auto .store-header .store-logo,
.gdw-designers-auto .store-wrapper .store-logo,
.gdw-designers-auto .seller-avatar,
.gdw-designers-auto .seller-avatar img,
.gdw-designers-auto .featured-favourite {
  display: none !important;
}

/* La bannière contient déjà le nom du designer et le lien
   EXPLORE : on masque tout le bloc de texte Dokan généré en
   plus, pour ne pas dupliquer le titre / bouton. */
.gdw-designers-auto .store-content,
.gdw-designers-auto .store-data-container,
.gdw-designers-auto .store-data,
.gdw-designers-auto .store-footer {
  display: none !important;
}

/* Le lien "Explore" reste cliquable : on le superpose en
   transparent sur toute la carte (image comprise) */
.gdw-designers-auto .dokan-single-seller {
  position: relative !important;
}

.gdw-designers-auto .dokan-single-seller > a.store-link-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
}

/* =========================================================
   SINGLE DESIGNER PAGE - DOKAN STORE PAGE
========================================================= */

body .eltdf-title-holder,
body .eltdf-title-wrapper,
body .eltdf-breadcrumbs-holder,
body .eltdf-breadcrumbs {
  display: none !important;
}

body:has(#dokan-primary.dokan-single-store),
body:has(#dokan-primary.dokan-single-store) .eltdf-wrapper,
body:has(#dokan-primary.dokan-single-store) .eltdf-wrapper-inner,
body:has(#dokan-primary.dokan-single-store) .eltdf-content,
body:has(#dokan-primary.dokan-single-store) .eltdf-content-inner,
body:has(#dokan-primary.dokan-single-store) .eltdf-grid,
body:has(#dokan-primary.dokan-single-store) .content-area,
body:has(#dokan-primary.dokan-single-store) main,
body:has(#dokan-primary.dokan-single-store) #main,
body:has(#dokan-primary.dokan-single-store) #primary,
body:has(#dokan-primary.dokan-single-store) #dokan-primary,
body:has(#dokan-primary.dokan-single-store) #dokan-content,
body:has(#dokan-primary.dokan-single-store) .woocommerce-breadcrumb {
  background: #f8f6f0 !important;
}

body:has(#dokan-primary.dokan-single-store) .woocommerce-breadcrumb {
  background: #f8f6f0 !important;
  margin: 0 !important;
  padding: 18px 0 12px !important;
}

body:has(#dokan-primary.dokan-single-store) .eltdf-grid {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

#dokan-primary.dokan-single-store,
#dokan-content.store-page-wrap {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #f8f6f0 !important;
}

#dokan-content .dokan-store-wrap,
.dokan-store-wrap.layout-left,
.dokan-store-wrap {
  display: block !important;
  flex-direction: initial !important;
  width: 100% !important;
  max-width: 1050px !important;
  margin: 0 auto !important;
  padding: 10px 20px 90px !important;
  background: #f8f6f0 !important;
  box-sizing: border-box !important;
}

#dokan-secondary,
.dokan-store-sidebar,
.dokan-widget-area,
aside.dokan-store-widget {
  display: none !important;
}

/* Le fil d'Ariane affiche déjà "Designers", donc on ne rajoute plus
   ce label ici : il se superposait au titre du designer à cause du
   positionnement absolute imposé par Dokan sur les blocs suivants. */

#dokan-content .profile-info-summery-wrapper,
#dokan-content .profile-info-summery,
#dokan-content .profile-info-head {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  text-align: center !important;
  overflow: visible !important;
  padding: 0 !important;
}

#dokan-content .dokan-profile-frame-wrapper,
#dokan-content .profile-frame,
#dokan-content .profile-info-box,
#dokan-content .profile-info {
  width: 100% !important;
  max-width: 620px !important;
  margin: 0 auto !important;
  padding-top: 0 !important;
  display: block !important;
  position: static !important;
  text-align: center !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

#dokan-content .dokan-profile-frame-wrapper {
  padding-top: 24px !important;
}

#dokan-content .profile-info-head {
  display: block !important;
  width: 100% !important;
  position: static !important;
  text-align: center !important;
}

body #dokan-content .profile-info-box.profile-layout-layout1 > img.profile-info-img,
body #dokan-content .profile-info-box > img.profile-info-img,
body #dokan-content .profile-info-box > img:first-child {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body #dokan-content .profile-info-head .profile-img,
body #dokan-content .profile-info-head .profile-img-square,
body:has(#dokan-primary.dokan-single-store) #dokan-content .profile-info-head .profile-img,
body:has(#dokan-primary.dokan-single-store) #dokan-content .profile-info-head .profile-img-square {
  display: block !important;
  position: static !important;
  width: 190px !important;
  height: 190px !important;
  max-width: 190px !important;
  max-height: 190px !important;
  margin: 0 auto 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body #dokan-content .profile-info-head .profile-img img,
body #dokan-content .profile-info-head .profile-img-square img,
body:has(#dokan-primary.dokan-single-store) #dokan-content .profile-info-head .profile-img img,
body:has(#dokan-primary.dokan-single-store) #dokan-content .profile-info-head .profile-img-square img {
  display: block !important;
  position: static !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 190px !important;
  max-height: 190px !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  padding: 10px !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  mix-blend-mode: normal !important;
}

body:has(#dokan-primary.dokan-single-store) #dokan-content .profile-info-box > img.profile-info-img {
  width: 115px !important;
  height: 115px !important;
  max-width: 115px !important;
  max-height: 115px !important;
  margin: 0 auto 16px !important;
}

#dokan-content .profile-info h1,
#dokan-content .profile-info .store-name,
#dokan-content .profile-info .store-name a {
  display: block !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 34px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  color: #24150f !important;
  text-align: center !important;
  margin: 0 auto 14px !important;
  padding: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
}

#dokan-content .profile-info p,
#dokan-content .profile-info .store-bio,
#dokan-content .profile-info .seller-description,
#dokan-content .profile-info .store-description {
  display: block !important;
  max-width: 520px !important;
  margin: 0 auto 30px !important;
  padding: 0 !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  font-weight: 300 !important;
  color: #6e6258 !important;
  text-align: center !important;
}

#dokan-content .profile-info p::after,
#dokan-content .profile-info .store-bio::after,
#dokan-content .profile-info .seller-description::after,
#dokan-content .profile-info .store-description::after {
  content: "" !important;
  display: block !important;
  width: 46px !important;
  height: 1px !important;
  background: #c99732 !important;
  margin: 30px auto 0 !important;
}

/* Titre "Pieces by [Designer]" injecté en JS au-dessus de la grille produits */
.gdw-pieces-heading {
  display: block !important;
  text-align: center !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 30px !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
  color: #24150f !important;
  margin: 0 auto 10px !important;
  padding: 0 !important;
}

.gdw-pieces-heading-divider {
  width: 36px !important;
  height: 1px !important;
  background: #c99732 !important;
  margin: 0 auto 30px !important;
}

#dokan-content .profile-info ul,
#dokan-content .profile-info li,
#dokan-content .store-address,
#dokan-content .store-phone,
#dokan-content .store-email,
#dokan-content .store-rating,
#dokan-content .seller-rating,
#dokan-content .dokan-store-rating,
#dokan-content .star-rating,
#dokan-content .dokan-share-btn-wrap,
#dokan-content .store-social-wrapper,
#dokan-content .dokan-store-tabs,
#dokan-content ul.dokan-list-inline,
#dokan-content .dokan-store-products-filter-area,
#dokan-content form.dokan-store-products-ordeby {
  display: none !important;
}

#dokan-content .seller-items,
.seller-items {
  width: 100% !important;
  max-width: 1050px !important;
  margin: 32px auto 0 !important;
  padding: 0 !important;
  display: block !important;
}

#dokan-content .seller-items ul.products,
#dokan-content ul.products,
.dokan-store-wrap ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 300px)) !important;
  justify-content: center !important;
  gap: 28px !important;
  width: 100% !important;
  max-width: 1050px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
}

#dokan-content ul.products li.product,
#dokan-content .seller-items ul.products li.product,
.dokan-store-wrap ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 300px !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 0 16px !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(138, 106, 47, 0.18) !important;
  border-radius: 7px !important;
  overflow: hidden !important;
  text-align: center !important;
  box-shadow: 0 10px 30px rgba(43, 26, 18, 0.04) !important;
  box-sizing: border-box !important;
}

#dokan-content ul.products li.product a,
#dokan-content .seller-items ul.products li.product a,
.dokan-store-wrap ul.products li.product a {
  text-decoration: none !important;
}

#dokan-content ul.products li.product img,
#dokan-content .seller-items ul.products li.product img,
.dokan-store-wrap ul.products li.product img {
  width: 100% !important;
  height: 250px !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

#dokan-content ul.products li.product .eltdf-pl-category,
#dokan-content ul.products li.product .posted_in,
#dokan-content ul.products li.product .eltdf-e-categories,
#dokan-content ul.products li.product .eltdf-pl-categories {
  display: none !important;
}

/* Zone texte : on utilise la même structure que le reste du site
   (.eltdf-pl-text-wrapper / .eltdf-product-list-title) plutôt que
   les classes WooCommerce génériques, qui ne sont pas celles
   réellement utilisées par ce thème et laissaient un style par
   défaut cassé (titre géant, un mot par ligne, doublons). */
#dokan-content ul.products li.product .eltdf-pl-text-wrapper,
#dokan-content .seller-items ul.products li.product .eltdf-pl-text-wrapper {
  display: block !important;
  width: 100% !important;
  padding: 12px 14px 4px !important;
  margin: 0 !important;
  background: #fffdf8 !important;
  box-sizing: border-box !important;
}

#dokan-content ul.products li.product .eltdf-product-list-title,
#dokan-content ul.products li.product .eltdf-product-list-title a,
#dokan-content ul.products li.product h5.eltdf-product-list-title,
#dokan-content ul.products li.product h2,
#dokan-content ul.products li.product .woocommerce-loop-product__title {
  display: block !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: #24150f !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 0 6px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

/* Si le thème génère le titre WooCommerce ET le titre eltdf en même
   temps, on ne garde que le second pour éviter le texte fantôme
   superposé. */
#dokan-content ul.products li.product .eltdf-pl-text-wrapper h2,
#dokan-content ul.products li.product .eltdf-pl-text-wrapper .woocommerce-loop-product__title {
  display: none !important;
}

#dokan-content ul.products li.product .price,
#dokan-content ul.products li.product > .price {
  position: static !important;
  display: block !important;
  color: #b8872f !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  white-space: nowrap !important;
}

#dokan-content ul.products li.product .button {
  display: none !important;
}

/* =========================================================
   CART PAGE
========================================================= */

.woocommerce-cart .return-to-shop a.button,
.woocommerce-cart .wc-backward,
.woocommerce-page .return-to-shop a.button {
  background-color: #000000 !important;
  color: #d59112 !important;
  border: 1px solid #000000 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

.woocommerce-cart .return-to-shop a.button:hover,
.woocommerce-cart .wc-backward:hover,
.woocommerce-page .return-to-shop a.button:hover {
  background-color: #000000 !important;
  color: #d59112 !important;
  border-color: #000000 !important;
}

/* =========================================================
   DOKAN DASHBOARD / ACCOUNT PAGES
========================================================= */

.dokan-info {
  background: #f8f1e6 !important;
  border: 1px solid #c98b00 !important;
  border-top: 1px solid #c98b00 !important;
  color: #2b1a10 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 18px 24px !important;
  margin: 40px auto !important;
  max-width: 900px !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 0 !important;
  line-height: 1.5 !important;
}

.dokan-info::before {
  display: none !important;
}

.dokan-info::after {
  content: "No orders yet. Your future Golden Dust Wear purchases will appear here.";
  font-size: 13px !important;
  color: #2b1a10 !important;
  font-weight: 400 !important;
}

.page-template-default .eltdf-content,
.woocommerce-account .eltdf-content,
.dokan-dashboard .eltdf-content {
  min-height: calc(100vh - 220px) !important;
}

/* =========================================================
   MISC
========================================================= */

.gdw-seller-section,
.gdw-become-seller-section,
.gdw-designer-cta,
.gdw-seller-banner {
  max-width: 1280px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* =========================================================
   RESPONSIVE - TABLETTE LARGE (901px → 1200px)
========================================================= */

@media only screen and (max-width: 1200px) {

  .eltdf-mobile-header {
    display: none !important;
  }

  .eltdf-page-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 99999 !important;
    background-color: #2a160d !important;
    overflow: visible !important;
  }

  .eltdf-menu-area {
    display: flex !important;
    align-items: center !important;
    height: 56px !important;
    min-height: 56px !important;
    background-color: #2a160d !important;
    padding: 0 46px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .eltdf-menu-area .eltdf-vertical-align-containers {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    height: 56px !important;
  }

  .eltdf-position-left,
  .eltdf-position-left-inner,
  .eltdf-logo-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    flex: 0 0 auto !important;
    height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }

  .eltdf-logo-wrapper a {
    display: flex !important;
    align-items: center !important;
    height: 56px !important;
    line-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .eltdf-logo-wrapper img {
    display: block !important;
    height: 36px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  .eltdf-logo-wrapper::after {
    content: "Golden Dust Wear" !important;
    display: flex !important;
    align-items: center !important;
    margin-left: 9px !important;
    font-size: 10.5px !important;
    letter-spacing: 0.13em !important;
    color: #d39a2d !important;
    white-space: nowrap !important;
    text-transform: uppercase !important;
  }

  .eltdf-position-right,
  .eltdf-position-right-inner,
  .eltdf-main-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  .eltdf-main-menu > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .eltdf-main-menu ul li {
    display: inline-flex !important;
    align-items: center !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .eltdf-main-menu ul li a {
    display: flex !important;
    align-items: center !important;
    height: 56px !important;
    line-height: 56px !important;
    padding: 0 !important;
  }

  .eltdf-main-menu ul li a .item_text {
    font-size: 10.5px !important;
    letter-spacing: 1.8px !important;
    color: #d39a2d !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  body.home .eltdf-mobile-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    background-color: #2a160d !important;
  }

  body.home .rev_slider_wrapper,
  body.home rs-module-wrap {
    margin-top: 70px !important;
  }
}

/* =========================================================
   RESPONSIVE - TABLETTE MOYENNE (621px → 900px)
========================================================= */

@media only screen and (min-width: 621px) and (max-width: 900px) {

  .eltdf-menu-area {
    height: 50px !important;
    min-height: 50px !important;
    padding: 0 28px !important;
    overflow: visible !important;
  }

  .eltdf-menu-area .eltdf-vertical-align-containers,
  .eltdf-position-left,
  .eltdf-position-left-inner,
  .eltdf-logo-wrapper,
  .eltdf-position-right,
  .eltdf-position-right-inner,
  .eltdf-main-menu {
    height: 50px !important;
  }

  .eltdf-logo-wrapper a {
    height: 50px !important;
    line-height: 50px !important;
  }

  .eltdf-logo-wrapper img {
    height: 31px !important;
    width: auto !important;
    max-width: none !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  .eltdf-logo-wrapper::after,
  .eltdf-logo-wrapper:after {
    display: none !important;
    content: none !important;
  }

  .eltdf-main-menu > ul {
    gap: 24px !important;
  }

  .eltdf-main-menu ul li a {
    height: 50px !important;
    line-height: 50px !important;
  }

  .eltdf-main-menu ul li a .item_text {
    font-size: 10px !important;
    letter-spacing: 1.5px !important;
  }
}

/* =========================================================
   RESPONSIVE - MOBILE (max 620px)
========================================================= */

@media only screen and (max-width: 620px) {

  .eltdf-menu-area {
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 12px !important;
    background-color: #2a160d !important;
    overflow: visible !important;
    position: relative !important;
  }

  .eltdf-menu-area .eltdf-vertical-align-containers {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 38px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .eltdf-position-left,
  .eltdf-position-left-inner,
  .eltdf-logo-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    height: 38px !important;
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding-left: 4px !important;
    overflow: visible !important;
    transform: none !important;
  }

  .eltdf-logo-wrapper a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    height: 38px !important;
    line-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .eltdf-logo-wrapper img {
    display: block !important;
    height: 24px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  .eltdf-logo-wrapper::after,
  .eltdf-logo-wrapper:after {
    display: none !important;
    content: none !important;
  }

  .eltdf-position-right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: 38px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .eltdf-position-right-inner,
  .eltdf-main-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: 38px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
  }

  .eltdf-main-menu > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .eltdf-main-menu ul li {
    display: inline-flex !important;
    align-items: center !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .eltdf-main-menu ul li a {
    display: flex !important;
    align-items: center !important;
    height: 38px !important;
    line-height: 38px !important;
    padding: 0 !important;
  }

  .eltdf-main-menu ul li a .item_text {
    font-size: 8.8px !important;
    letter-spacing: 1px !important;
    color: #d39a2d !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }
}

/* =========================================================
   RESPONSIVE - DESIGNERS LISTING PREMIUM
========================================================= */

@media (max-width: 1350px) {
  .gdw-designers-auto ul.dokan-seller-wrap {
    grid-template-columns: repeat(3, minmax(0, 320px)) !important;
    gap: 26px !important;
    justify-content: center !important;
  }
}

@media (max-width: 1024px) {
  .gdw-designers-auto {
    padding: 28px 28px 66px !important;
  }

  .gdw-designers-title {
    margin-bottom: 36px !important;
  }

  .gdw-designers-title h1 {
    font-size: 46px !important;
    letter-spacing: 0.20em !important;
  }

  .gdw-designers-auto ul.dokan-seller-wrap {
    grid-template-columns: repeat(2, minmax(0, 320px)) !important;
    gap: 24px !important;
    justify-content: center !important;
  }

  #dokan-content .dokan-store-wrap,
  .dokan-store-wrap {
    padding: 28px 18px 70px !important;
  }

  #dokan-content .dokan-store-wrap::before,
  .dokan-store-wrap::before {
    font-size: 22px !important;
    letter-spacing: 4px !important;
  }

  #dokan-content .profile-info h1,
  #dokan-content .profile-info .store-name,
  #dokan-content .profile-info .store-name a {
    font-size: 30px !important;
  }

  #dokan-content ul.products,
  #dokan-content .seller-items ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  #dokan-content ul.products li.product {
    max-width: none !important;
  }

  #dokan-content ul.products li.product img {
    height: 180px !important;
    margin: 0 !important;
  }

  #dokan-content ul.products li.product .eltdf-pl-text-wrapper {
    padding: 10px 10px 4px !important;
  }

  #dokan-content ul.products li.product .eltdf-product-list-title,
  #dokan-content ul.products li.product .eltdf-product-list-title a {
    font-size: 13px !important;
  }

  body.home .gdw-curated-header {
    padding-top: 0 !important;
    padding-bottom: 28px !important;
  }

  body.home .gdw-curated-icon {
    width: 120px !important;
    margin-bottom: -14px !important;
  }
}

@media (max-width: 620px) {
  #dokan-content .dokan-store-wrap,
  .dokan-store-wrap {
    padding: 20px 12px 60px !important;
  }

  #dokan-content .profile-info h1,
  #dokan-content .profile-info .store-name,
  #dokan-content .profile-info .store-name a {
    font-size: 24px !important;
  }

  body #dokan-content .profile-info-head .profile-img,
  body #dokan-content .profile-info-head .profile-img-square {
    width: 130px !important;
    height: 130px !important;
    max-width: 130px !important;
    max-height: 130px !important;
  }

  body #dokan-content .profile-info-head .profile-img img,
  body #dokan-content .profile-info-head .profile-img-square img {
    width: 130px !important;
    height: 130px !important;
    max-width: 130px !important;
    max-height: 130px !important;
  }

  #dokan-content ul.products,
  #dokan-content .seller-items ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  #dokan-content ul.products li.product {
    max-width: none !important;
    padding-bottom: 8px !important;
  }

  #dokan-content ul.products li.product img {
    height: 130px !important;
    margin: 0 !important;
  }

  #dokan-content ul.products li.product .eltdf-pl-text-wrapper {
    padding: 8px 8px 4px !important;
  }

  #dokan-content ul.products li.product .eltdf-product-list-title,
  #dokan-content ul.products li.product .eltdf-product-list-title a,
  #dokan-content ul.products li.product h2,
  #dokan-content ul.products li.product .woocommerce-loop-product__title {
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    padding: 0 !important;
    margin: 0 0 4px !important;
  }

  #dokan-content ul.products li.product .price {
    font-size: 11px !important;
  }
}

@media (max-width: 620px) {
  .gdw-designers-auto {
    padding: 24px 16px 58px !important;
  }

  .gdw-designers-title {
    margin-bottom: 30px !important;
  }

  .gdw-designers-title h1 {
    font-size: 34px !important;
    letter-spacing: 0.16em !important;
  }

  .gdw-designers-title span {
    width: 130px !important;
    margin-top: 16px !important;
  }

  .gdw-designers-auto ul.dokan-seller-wrap {
    grid-template-columns: minmax(0, 318px) !important;
    justify-content: center !important;
    gap: 22px !important;
  }

  .gdw-designers-auto ul.dokan-seller-wrap li.dokan-single-seller,
  .gdw-designers-auto ul.dokan-seller-wrap li,
  .gdw-designers-auto .dokan-single-seller .store-wrapper,
  .gdw-designers-auto .store-wrapper {
    max-width: 318px !important;
  }
}


/* =========================================================
   HOME + NEW IN - PRODUCT CARDS - CORRIGÉ PROPRE
   Desktop : 4 colonnes
   Tablette : 2 colonnes
   Mobile : 2 colonnes lisibles, carte non coupée
========================================================= */

/* Grille produits HOME + page New In */
body.home .woocommerce ul.products,
body.home ul.products.products,
body.page-id-7773 .woocommerce ul.products,
body.page-id-7773 ul.products.products,
body.home .elementor-widget-shortcode .woocommerce ul.products,
body.page-id-7773 .elementor-widget-shortcode .woocommerce ul.products,
.gdw-new-in-section .woocommerce ul.products,
.gdw-new-in-section ul.products,
.gdw-new-in-products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: calc(100% - 48px) !important;
  max-width: 1180px !important;
  margin: 42px auto 70px !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.home .woocommerce ul.products::before,
body.home .woocommerce ul.products::after,
body.home ul.products.products::before,
body.home ul.products.products::after,
body.page-id-7773 .woocommerce ul.products::before,
body.page-id-7773 .woocommerce ul.products::after,
body.page-id-7773 ul.products.products::before,
body.page-id-7773 ul.products.products::after,
.gdw-new-in-section ul.products::before,
.gdw-new-in-section ul.products::after,
.gdw-new-in-products ul.products::before,
.gdw-new-in-products ul.products::after {
  content: none !important;
  display: none !important;
}

/* Carte produit */
body.home ul.products li.product,
body.page-id-7773 ul.products li.product,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product,
body.page-id-7773 .elementor-widget-shortcode .woocommerce ul.products li.product,
.gdw-new-in-section ul.products li.product,
.gdw-new-in-products ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 0 0 12px !important;
  background: #fffaf2 !important;
  border: 1px solid rgba(201, 151, 50, 0.24) !important;
  border-radius: 7px !important;
  overflow: hidden !important;
  text-align: left !important;
  box-shadow: 0 7px 20px rgba(43, 26, 18, 0.07) !important;
  box-sizing: border-box !important;
}

body.home ul.products li.product a,
body.page-id-7773 ul.products li.product a,
.gdw-new-in-section ul.products li.product a,
.gdw-new-in-products ul.products li.product a {
  text-decoration: none !important;
}

/* Image produit */
body.home ul.products li.product .eltdf-pl-inner,
body.page-id-7773 ul.products li.product .eltdf-pl-inner,
.gdw-new-in-section ul.products li.product .eltdf-pl-inner,
.gdw-new-in-products ul.products li.product .eltdf-pl-inner {
  display: block !important;
  width: 100% !important;
}

body.home ul.products li.product img,
body.page-id-7773 ul.products li.product img,
.gdw-new-in-section ul.products li.product img,
.gdw-new-in-products ul.products li.product img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Zone texte */
body.home ul.products li.product .eltdf-pl-text-wrapper,
body.page-id-7773 ul.products li.product .eltdf-pl-text-wrapper,
.gdw-new-in-section ul.products li.product .eltdf-pl-text-wrapper,
.gdw-new-in-products ul.products li.product .eltdf-pl-text-wrapper {
  display: block !important;
  width: 100% !important;
  padding: 10px 12px 4px !important;
  margin: 0 !important;
  background: #fffaf2 !important;
  box-sizing: border-box !important;
}

body.home ul.products li.product .eltdf-pl-text-wrapper-variations,
body.page-id-7773 ul.products li.product .eltdf-pl-text-wrapper-variations,
.gdw-new-in-section ul.products li.product .eltdf-pl-text-wrapper-variations,
.gdw-new-in-products ul.products li.product .eltdf-pl-text-wrapper-variations {
  display: block !important;
  width: 100% !important;
}

/* Titre produit */
body.home ul.products li.product .eltdf-product-list-title,
body.home ul.products li.product .eltdf-product-list-title a,
body.home ul.products li.product h5.eltdf-product-list-title,
body.page-id-7773 ul.products li.product .eltdf-product-list-title,
body.page-id-7773 ul.products li.product .eltdf-product-list-title a,
body.page-id-7773 ul.products li.product h5.eltdf-product-list-title,
.gdw-new-in-section ul.products li.product .eltdf-product-list-title,
.gdw-new-in-section ul.products li.product .eltdf-product-list-title a,
.gdw-new-in-products ul.products li.product .eltdf-product-list-title,
.gdw-new-in-products ul.products li.product .eltdf-product-list-title a {
  display: block !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.4px !important;
  color: #2b160e !important;
  text-transform: uppercase !important;
  margin: 0 0 5px !important;
  padding: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

/* Prix */
body.home ul.products li.product .price,
body.home ul.products li.product > .price,
body.page-id-7773 ul.products li.product .price,
body.page-id-7773 ul.products li.product > .price,
.gdw-new-in-section ul.products li.product .price,
.gdw-new-in-section ul.products li.product > .price,
.gdw-new-in-products ul.products li.product .price,
.gdw-new-in-products ul.products li.product > .price {
  position: static !important;
  display: block !important;
  color: #2b160e !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  margin: 0 12px 8px !important;
  padding: 0 !important;
  text-align: left !important;
  white-space: nowrap !important;
  transform: none !important;
}

/* Catégories / tags */
body.home ul.products li.product .eltdf-e-categories,
body.home ul.products li.product .eltdf-pl-categories,
body.page-id-7773 ul.products li.product .eltdf-e-categories,
body.page-id-7773 ul.products li.product .eltdf-pl-categories,
.gdw-new-in-section ul.products li.product .eltdf-e-categories,
.gdw-new-in-section ul.products li.product .eltdf-pl-categories,
.gdw-new-in-products ul.products li.product .eltdf-e-categories,
.gdw-new-in-products ul.products li.product .eltdf-pl-categories {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
  padding: 0 12px !important;
  margin: 6px 0 0 !important;
  overflow: visible !important;
}

body.home ul.products li.product .eltdf-e-categories a,
body.home ul.products li.product .eltdf-pl-categories a,
body.page-id-7773 ul.products li.product .eltdf-e-categories a,
body.page-id-7773 ul.products li.product .eltdf-pl-categories a,
.gdw-new-in-section ul.products li.product .eltdf-e-categories a,
.gdw-new-in-section ul.products li.product .eltdf-pl-categories a,
.gdw-new-in-products ul.products li.product .eltdf-e-categories a,
.gdw-new-in-products ul.products li.product .eltdf-pl-categories a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 8.5px !important;
  line-height: 1 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  color: #7b5b28 !important;
  border: 1px solid rgba(138, 106, 47, 0.35) !important;
  border-radius: 999px !important;
  padding: 5px 7px !important;
  background: transparent !important;
  white-space: nowrap !important;
  max-width: none !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

/* Cache le bouton add to cart sur les cartes */
body.home ul.products li.product .button,
body.page-id-7773 ul.products li.product .button,
.gdw-new-in-section ul.products li.product .button,
.gdw-new-in-products ul.products li.product .button {
  display: none !important;
}

/* Tablette */
@media only screen and (max-width: 900px) {
  body.home .woocommerce ul.products,
  body.home ul.products.products,
  body.page-id-7773 .woocommerce ul.products,
  body.page-id-7773 ul.products.products,
  body.home .elementor-widget-shortcode .woocommerce ul.products,
  body.page-id-7773 .elementor-widget-shortcode .woocommerce ul.products,
  .gdw-new-in-section .woocommerce ul.products,
  .gdw-new-in-section ul.products,
  .gdw-new-in-products ul.products {
    grid-template-columns: repeat(2, minmax(0, 220px)) !important;
    justify-content: center !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 38px auto 64px !important;
    padding: 0 18px !important;
  }
}

/* Mobile */
@media only screen and (max-width: 620px) {
  body.home .woocommerce ul.products,
  body.home ul.products.products,
  body.page-id-7773 .woocommerce ul.products,
  body.page-id-7773 ul.products.products,
  body.home .elementor-widget-shortcode .woocommerce ul.products,
  body.page-id-7773 .elementor-widget-shortcode .woocommerce ul.products,
  .gdw-new-in-section .woocommerce ul.products,
  .gdw-new-in-section ul.products,
  .gdw-new-in-products ul.products {
    grid-template-columns: repeat(2, minmax(145px, 165px)) !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 360px !important;
    margin: 30px auto 50px !important;
    padding: 0 14px !important;
  }

  body.home ul.products li.product,
  body.page-id-7773 ul.products li.product,
  .gdw-new-in-section ul.products li.product,
  .gdw-new-in-products ul.products li.product {
    width: 100% !important;
    max-width: 165px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding-bottom: 10px !important;
    border-radius: 8px !important;
  }

  body.home ul.products li.product .eltdf-pl-text-wrapper,
  body.page-id-7773 ul.products li.product .eltdf-pl-text-wrapper,
  .gdw-new-in-section ul.products li.product .eltdf-pl-text-wrapper,
  .gdw-new-in-products ul.products li.product .eltdf-pl-text-wrapper {
    padding: 8px 8px 4px !important;
  }

  body.home ul.products li.product .eltdf-product-list-title,
  body.home ul.products li.product .eltdf-product-list-title a,
  body.home ul.products li.product h5.eltdf-product-list-title,
  body.page-id-7773 ul.products li.product .eltdf-product-list-title,
  body.page-id-7773 ul.products li.product .eltdf-product-list-title a,
  body.page-id-7773 ul.products li.product h5.eltdf-product-list-title,
  .gdw-new-in-section ul.products li.product .eltdf-product-list-title,
  .gdw-new-in-section ul.products li.product .eltdf-product-list-title a,
  .gdw-new-in-products ul.products li.product .eltdf-product-list-title,
  .gdw-new-in-products ul.products li.product .eltdf-product-list-title a {
    font-size: 9.5px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.3px !important;
  }

  body.home ul.products li.product .price,
  body.home ul.products li.product > .price,
  body.page-id-7773 ul.products li.product .price,
  body.page-id-7773 ul.products li.product > .price,
  .gdw-new-in-section ul.products li.product .price,
  .gdw-new-in-section ul.products li.product > .price,
  .gdw-new-in-products ul.products li.product .price,
  .gdw-new-in-products ul.products li.product > .price {
    font-size: 12px !important;
    margin: 0 8px 7px !important;
    text-align: left !important;
  }

  body.home ul.products li.product .eltdf-e-categories,
  body.home ul.products li.product .eltdf-pl-categories,
  body.page-id-7773 ul.products li.product .eltdf-e-categories,
  body.page-id-7773 ul.products li.product .eltdf-pl-categories,
  .gdw-new-in-section ul.products li.product .eltdf-e-categories,
  .gdw-new-in-section ul.products li.product .eltdf-pl-categories,
  .gdw-new-in-products ul.products li.product .eltdf-e-categories,
  .gdw-new-in-products ul.products li.product .eltdf-pl-categories {
    padding: 0 8px !important;
    gap: 4px !important;
    margin-top: 6px !important;
  }

  body.home ul.products li.product .eltdf-e-categories a,
  body.home ul.products li.product .eltdf-pl-categories a,
  body.page-id-7773 ul.products li.product .eltdf-e-categories a,
  body.page-id-7773 ul.products li.product .eltdf-pl-categories a,
  .gdw-new-in-section ul.products li.product .eltdf-e-categories a,
  .gdw-new-in-section ul.products li.product .eltdf-pl-categories a,
  .gdw-new-in-products ul.products li.product .eltdf-e-categories a,
  .gdw-new-in-products ul.products li.product .eltdf-pl-categories a {
    font-size: 7.6px !important;
    padding: 4px 5px !important;
    letter-spacing: 0.35px !important;
  }
}

/* =========================================================
   FIX FINAL HEADER TABLETTE + MOBILE
   Objectif : garder le même menu visible partout
   (logo + NEW IN + SHOP + WORLDS + DESIGNERS)
   et rendre tous les liens cliquables au tactile.
   À garder tout en bas du CSS.
========================================================= */

@media only screen and (max-width: 1200px) {

  /* On utilise le header classique du thème, pas le burger mobile */
  body .eltdf-mobile-header,
  body.home .eltdf-mobile-header {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    z-index: -1 !important;
  }

  body .eltdf-page-header,
  body.home .eltdf-page-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: sticky !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 56px !important;
    background: #2a160d !important;
    background-color: #2a160d !important;
    overflow: visible !important;
    pointer-events: auto !important;
    z-index: 2147483000 !important;
    isolation: isolate !important;
  }

  body.home .eltdf-page-header {
    position: fixed !important;
    right: 0 !important;
  }

  body .eltdf-menu-area,
  body.home .eltdf-menu-area {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    background: #2a160d !important;
    background-color: #2a160d !important;
    padding: 0 34px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2147483001 !important;
  }

  body .eltdf-menu-area .eltdf-vertical-align-containers {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2147483002 !important;
    box-sizing: border-box !important;
  }

  /* Logo */
  body .eltdf-position-left,
  body .eltdf-position-left-inner,
  body .eltdf-logo-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    height: 56px !important;
    min-height: 56px !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2147483003 !important;
  }

  body .eltdf-logo-wrapper a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    height: 56px !important;
    line-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
    position: relative !important;
    z-index: 2147483004 !important;
  }

  body .eltdf-logo-wrapper img,
  body .eltdf-logo-wrapper img:first-of-type,
  body .eltdf-logo-wrapper img.eltdf-normal-logo {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: 34px !important;
    max-height: 34px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    transform: none !important;
    position: relative !important;
    top: 0 !important;
    pointer-events: none !important;
  }

  body .eltdf-logo-wrapper img.eltdf-dark-logo,
  body .eltdf-logo-wrapper img.eltdf-light-logo,
  body .eltdf-logo-wrapper img.eltdf-sticky-logo {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Pas de texte "Golden Dust Wear" sur tablette/mobile : ça évite de prendre la place du menu */
  body .eltdf-logo-wrapper::after,
  body .eltdf-logo-wrapper:after {
    display: none !important;
    content: none !important;
    pointer-events: none !important;
  }

  /* Menu visible à droite */
  body .eltdf-position-right,
  body .eltdf-position-right-inner,
  body .eltdf-main-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    height: 56px !important;
    min-height: 56px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2147483003 !important;
  }

  body .eltdf-main-menu > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 22px !important;
    width: auto !important;
    max-width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    overflow: visible !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2147483004 !important;
  }

  body .eltdf-main-menu ul li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    width: auto !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    overflow: visible !important;
    pointer-events: auto !important;
    z-index: 2147483005 !important;
  }

  body .eltdf-main-menu ul li a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: 56px !important;
    min-height: 56px !important;
    line-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    touch-action: manipulation !important;
    -webkit-tap-highlight-color: transparent !important;
    position: relative !important;
    z-index: 2147483006 !important;
  }

  body .eltdf-main-menu ul li a .item_outer,
  body .eltdf-main-menu ul li a .item_text {
    display: inline-block !important;
    color: #d39a2d !important;
    font-family: "DM Sans", Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    pointer-events: none !important;
  }

  /* Si un sticky header invisible existe au-dessus, il ne bloque plus les taps */
  body .eltdf-sticky-header:not(.header-appear):not(.eltdf-sticky-header-appear) {
    pointer-events: none !important;
    z-index: 0 !important;
  }

  body .eltdf-sticky-header.header-appear,
  body .eltdf-sticky-header.eltdf-sticky-header-appear {
    pointer-events: auto !important;
    z-index: 2147483007 !important;
  }

  body .eltdf-sticky-header.header-appear a,
  body .eltdf-sticky-header.eltdf-sticky-header-appear a {
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
  }

  /* Les sous-menus restent cliquables quand ils sont visibles, mais ne doivent pas bloquer le header */
  body .eltdf-main-menu ul li .second,
  body .eltdf-drop-down .second,
  body .eltdf-drop-down .second .inner,
  body .eltdf-main-menu ul li ul.sub-menu {
    z-index: 2147483008 !important;
    pointer-events: auto !important;
  }

  body .eltdf-main-menu ul li .second a,
  body .eltdf-drop-down .second a,
  body .eltdf-main-menu ul li ul.sub-menu a {
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
  }

  /* Les sections du site restent en dessous du header */
  body .eltdf-content,
  body .eltdf-content-inner,
  body .eltdf-wrapper,
  body .eltdf-wrapper-inner,
  body .elementor,
  body .elementor-section,
  body .elementor-container,
  body .e-con,
  body .e-con-inner,
  body .rev_slider_wrapper,
  body rs-module-wrap,
  body rs-module {
    position: relative !important;
    z-index: 1 !important;
  }

  body.home .rev_slider_wrapper,
  body.home rs-module-wrap {
    margin-top: 56px !important;
  }
}

/* Mobile : même logique que tablette, juste compacté pour que tout rentre */
@media only screen and (max-width: 620px) {

  body .eltdf-page-header,
  body.home .eltdf-page-header {
    min-height: 50px !important;
  }

  body .eltdf-menu-area,
  body.home .eltdf-menu-area,
  body .eltdf-menu-area .eltdf-vertical-align-containers,
  body .eltdf-position-left,
  body .eltdf-position-left-inner,
  body .eltdf-logo-wrapper,
  body .eltdf-logo-wrapper a,
  body .eltdf-position-right,
  body .eltdf-position-right-inner,
  body .eltdf-main-menu,
  body .eltdf-main-menu > ul,
  body .eltdf-main-menu ul li,
  body .eltdf-main-menu ul li a {
    height: 50px !important;
    min-height: 50px !important;
    line-height: 50px !important;
  }

  body .eltdf-menu-area,
  body.home .eltdf-menu-area {
    padding: 0 16px !important;
  }

  body .eltdf-logo-wrapper img,
  body .eltdf-logo-wrapper img:first-of-type,
  body .eltdf-logo-wrapper img.eltdf-normal-logo {
    height: 28px !important;
    max-height: 28px !important;
  }

  body .eltdf-main-menu > ul {
    gap: 15px !important;
  }

  body .eltdf-main-menu ul li a .item_outer,
  body .eltdf-main-menu ul li a .item_text {
    font-size: 9px !important;
    letter-spacing: 1.1px !important;
  }

  body.home .rev_slider_wrapper,
  body.home rs-module-wrap {
    margin-top: 50px !important;
  }
}

/* Très petit écran : encore plus compact, mais on garde le menu complet */
@media only screen and (max-width: 430px) {

  body .eltdf-menu-area,
  body.home .eltdf-menu-area {
    padding: 0 11px !important;
  }

  body .eltdf-logo-wrapper img,
  body .eltdf-logo-wrapper img:first-of-type,
  body .eltdf-logo-wrapper img.eltdf-normal-logo {
    height: 23px !important;
    max-height: 23px !important;
  }

  body .eltdf-main-menu > ul {
    gap: 9px !important;
  }

  body .eltdf-main-menu ul li a .item_outer,
  body .eltdf-main-menu ul li a .item_text {
    font-size: 8.3px !important;
    letter-spacing: 0.65px !important;
  }
}

@media only screen and (max-width: 370px) {

  body .eltdf-menu-area,
  body.home .eltdf-menu-area {
    padding: 0 8px !important;
  }

  body .eltdf-main-menu > ul {
    gap: 7px !important;
  }

  body .eltdf-main-menu ul li a .item_outer,
  body .eltdf-main-menu ul li a .item_text {
    font-size: 7.8px !important;
    letter-spacing: 0.65px !important;
  }
}
/* =========================================================
   FIX FINAL - BLOC INVISIBLE QUI BLOQUE LE MENU TABLETTE
========================================================= */

@media only screen and (max-width: 1200px) {

  /* Le bloc vide à droite ne doit plus capter les clics */
  .eltdf-page-header .eltdf-position-right,
  .eltdf-page-header .eltdf-position-right-inner {
    pointer-events: none !important;
  }

  /* Mais le vrai menu reste cliquable */
  .eltdf-page-header .eltdf-main-menu,
  .eltdf-page-header .eltdf-main-menu *,
  .eltdf-page-header .eltdf-main-menu ul,
  .eltdf-page-header .eltdf-main-menu li,
  .eltdf-page-header .eltdf-main-menu a {
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
  }

  /* Le vrai lien doit passer au-dessus du bloc invisible */
  .eltdf-page-header .eltdf-main-menu {
    position: relative !important;
    z-index: 9999999 !important;
  }

  .eltdf-page-header .eltdf-main-menu ul li,
  .eltdf-page-header .eltdf-main-menu ul li a {
    position: relative !important;
    z-index: 10000000 !important;
  }

  .eltdf-page-header .eltdf-main-menu ul li a .item_text {
    pointer-events: none !important;
  }
}

/* =========================================================
   FIX FINAL SOUS-MENU SHOP - ESPACE + FLÈCHE UNIQUE
   Objectif :
   - garder le menu tablette/mobile cliquable
   - enlever la flèche proche du texte
   - garder seulement une flèche propre à droite
========================================================= */

@media only screen and (max-width: 1200px) {

  /* Sous-menu propre et assez large */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu,
  .eltdf-page-header .eltdf-drop-down .second .inner ul {
    padding: 10px 0 !important;
    min-width: 185px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  /* Chaque ligne du sous-menu */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 38px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  /* Supprime toutes les flèches/traits parasites du thème */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li::before,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li::after,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a::before,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a::after,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_outer::before,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_outer::after,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_text::before,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_text::after,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li::before,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li::after,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a::before,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a::after,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_outer::before,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_outer::after,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_text::before,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_text::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
  }

  /* Cache uniquement les anciennes icônes/flèches proches du texte */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a > i,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a > .fa,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a > .eltdf-menu-arrow,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a > .arrow_carrot-right,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_outer > i,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_outer > .fa,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_outer > .eltdf-menu-arrow,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_outer > .arrow_carrot-right,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a > i,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a > .fa,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a > .eltdf-menu-arrow,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a > .arrow_carrot-right,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_outer > i,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_outer > .fa,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_outer > .eltdf-menu-arrow,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_outer > .arrow_carrot-right {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Ligne avec padding équilibré : gauche 24px / droite 42px pour la flèche */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 38px !important;
    line-height: 1.4 !important;
    padding: 10px 42px 10px 24px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
    white-space: nowrap !important;
    overflow: visible !important;
  }

  /* Texte propre */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_outer,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_outer,
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li a .item_text,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li a .item_text {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
    color: #d39a2d !important;
    line-height: 1.4 !important;
    pointer-events: none !important;
  }

  /* Une seule flèche, à droite uniquement, pour les catégories avec sous-menu */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li.menu-item-has-children > a::after,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li.menu-item-has-children > a::after {
    content: "›" !important;
    display: block !important;
    position: absolute !important;
    right: 18px !important;
    left: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #c99732 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 18px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    width: auto !important;
    height: auto !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
    z-index: 5 !important;
  }

  /* Niveau 2 du menu */
  .eltdf-page-header .eltdf-main-menu ul li ul.sub-menu li ul.sub-menu,
  .eltdf-page-header .eltdf-drop-down .second .inner ul li ul.sub-menu {
    margin-left: 0 !important;
  }
}
/* =========================================================
   NEW IN PAGE - TITRE CENTRÉ PREMIUM
   Ne touche que le titre de la page New In
========================================================= */

body.page-id-7773 .new-in-title,
body.page-id-7773 h1.new-in-title,
body.page-id-7773 .entry-title,
body.page-id-7773 .page-title,
body.page-id-7773 .elementor-widget-heading:first-of-type .elementor-heading-title {
  display: block !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 68px auto 52px !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
  text-align: center !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: clamp(44px, 5vw, 76px) !important;
  font-weight: 400 !important;
  line-height: 0.95 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #1A1209 !important;
}

/* Si le titre est dans un conteneur Elementor aligné à gauche */
body.page-id-7773 .elementor-widget-heading:first-of-type,
body.page-id-7773 .new-in-title {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Nettoie les décorations autour du titre New In uniquement */
body.page-id-7773 .new-in-title::before,
body.page-id-7773 .new-in-title::after,
body.page-id-7773 .entry-title::before,
body.page-id-7773 .entry-title::after,
body.page-id-7773 .page-title::before,
body.page-id-7773 .page-title::after {
  content: none !important;
  display: none !important;
}

@media only screen and (max-width: 768px) {
  body.page-id-7773 .new-in-title,
  body.page-id-7773 h1.new-in-title,
  body.page-id-7773 .entry-title,
  body.page-id-7773 .page-title,
  body.page-id-7773 .elementor-widget-heading:first-of-type .elementor-heading-title {
    margin: 48px auto 36px !important;
    padding: 0 18px !important;
    font-size: clamp(38px, 11vw, 56px) !important;
    letter-spacing: 0.14em !important;
  }
}
/* =========================================================
   NEW IN TITLE - STYLE BORN FROM THE DUST
========================================================= */

.gdw-new-in-section .gdw-new-in-header,
.gdw-new-in-section .gdw-new-in-title-wrap {
  width: 100% !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  display: block !important;
}

.gdw-new-in-section h2.gdw-new-in-title,
.gdw-new-in-header h2.gdw-new-in-title,
h2.gdw-new-in-title {
  display: block !important;
  width: 100% !important;
  margin: 0 auto 42px !important;
  padding: 0 !important;
  text-align: center !important;

  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 38px !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
  letter-spacing: 15px !important;
  text-transform: uppercase !important;
  color: #23140d !important;
}

/* petite ligne dorée */
.gdw-new-in-section h2.gdw-new-in-title::after,
.gdw-new-in-header h2.gdw-new-in-title::after,
h2.gdw-new-in-title::after {
  content: "" !important;
  display: block !important;
  width: 46px !important;
  height: 1px !important;
  background: #c99732 !important;
  margin: 24px auto 0 !important;
}

/* Tablette */
@media only screen and (max-width: 768px) {
  .gdw-new-in-section h2.gdw-new-in-title,
  .gdw-new-in-header h2.gdw-new-in-title,
  h2.gdw-new-in-title {
    font-size: 34px !important;
    letter-spacing: 12px !important;
    margin-bottom: 36px !important;
  }
}

/* Mobile */
@media only screen and (max-width: 480px) {
  .gdw-new-in-section h2.gdw-new-in-title,
  .gdw-new-in-header h2.gdw-new-in-title,
  h2.gdw-new-in-title {
    font-size: 28px !important;
    letter-spacing: 9px !important;
    margin-bottom: 32px !important;
  }
}
/* =========================================================
   NEW IN - TRAIT PLUS LONG + MOINS D'ESPACE AVANT PRODUITS
========================================================= */

.gdw-new-in-section h2.gdw-new-in-title,
.gdw-new-in-header h2.gdw-new-in-title,
h2.gdw-new-in-title {
  margin-bottom: 24px !important;
}

/* trait sous NEW IN */
.gdw-new-in-section h2.gdw-new-in-title::after,
.gdw-new-in-header h2.gdw-new-in-title::after,
h2.gdw-new-in-title::after {
  width: 88px !important;
  height: 1px !important;
  margin: 20px auto 0 !important;
  background: #c99732 !important;
}

/* remonte les produits sous le trait */
.gdw-new-in-section .gdw-new-in-products,
.gdw-new-in-products {
  margin-top: 34px !important;
}

/* si WooCommerce ajoute une marge en plus */
.gdw-new-in-section .woocommerce ul.products,
.gdw-new-in-section ul.products {
  margin-top: 34px !important;
}
/* NEW IN - lettres moins espacées */
.gdw-new-in-section h2.gdw-new-in-title,
.gdw-new-in-header h2.gdw-new-in-title,
h2.gdw-new-in-title {
  letter-spacing: 9px !important;
}
/* =========================================================
   YOUR BRAND - ESPACEMENT AVANT/APRÈS
   Propre, sans doublon
========================================================= */

body.home .gdw-seller-banner,
.gdw-seller-banner {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Si le blanc vient du conteneur Elementor autour du bloc */
body.home .elementor-widget-container:has(.gdw-seller-banner),
body.home .elementor-element:has(.gdw-seller-banner) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* FOOTER TAGLINE - GOLDEN DUST WEAR */
.gdw-footer-signature {
  width: 100%;
  text-align: center;
  padding: 18px 20px 12px !important;
  background: #2b160d !important;
  box-shadow: none !important;
}

.gdw-footer-tagline {
  margin: 0 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  line-height: 1.4 !important;
  color: #c99732 !important;
}

.gdw-footer-tagline::after {
  content: "" !important;
  display: block !important;
  width: 220px !important;
  height: 1px !important;
  margin: 14px auto 0 !important;
  background: linear-gradient(90deg, transparent, #c99732, transparent) !important;
}

/* enlève les traits doublons éventuels */
.gdw-footer-signature > div,
.gdw-footer-signature hr {
  display: none !important;
}

@media (max-width: 768px) {
  .gdw-footer-signature {
    padding: 16px 18px 10px !important;
  }

  .gdw-footer-tagline {
    font-size: 16px !important;
    letter-spacing: 0.12em !important;
  }

  .gdw-footer-tagline::after {
    width: 160px !important;
    margin-top: 12px !important;
  }
}

/* =========================================================
   HOME - SUPPRIMER BANDE BLANCHE AVANT FOOTER
   Réglage plus doux : ne coupe plus trop l'image
========================================================= */

body.home .gdw-seller-banner {
  margin-bottom: -60px !important;
  background-position: center 58% !important; /* coupe légèrement le haut de l'image */
}

body.home .eltdf-content,
body.home .eltdf-content-inner,
body.home .eltdf-container,
body.home .eltdf-container-inner,
body.home .eltdf-page-content-holder,
body.home .elementor,
body.home .elementor-section:last-child,
body.home .elementor-widget-wrap:last-child,
body.home .elementor-widget-container:last-child {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

body.home footer.eltdf-page-footer,
body.home .eltdf-page-footer {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

@media only screen and (max-width: 620px) {
  body.home .gdw-seller-banner {
    margin-bottom: -60px !important;
    background-position: center 60% !important; /* descend un peu l'image = coupe un peu le haut */
  }
}
@media (max-width: 768px) {
  .gdw-footer-signature {
    width: 100% !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .gdw-footer-tagline {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }
}
.gdw-universe-filter {
  width: calc(100% - 70px);
  margin: 24px auto 42px;
  padding: 10px 26px;
  border-top: 1px solid rgba(185, 135, 47, 0.34);
  border-bottom: 1px solid rgba(185, 135, 47, 0.34);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  box-sizing: border-box;
  background: #f8f6f0;
  font-family: 'DM Sans', Arial, sans-serif;
}

.gdw-universe-left {
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.gdw-universe-star {
  color: #b9872f;
  font-size: 13px;
  flex-shrink: 0;
}

.gdw-universe-name {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 17px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #1A1209;
}

.gdw-universe-divider,
.gdw-universe-separator {
  width: 1px;
  height: 24px;
  background: rgba(185, 135, 47, 0.35);
  display: inline-block;
  flex-shrink: 0;
}

.gdw-universe-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-wrap: nowrap;
}

.gdw-universe-filter-link {
  color: #1A1209;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.17em;
  padding: 7px 13px;
  border: 1px solid transparent;
  border-radius: 5px;
  line-height: 1;
  transition: all 0.2s ease;
}

.gdw-universe-filter-link:hover,
.gdw-universe-filter-link.active {
  color: #b9872f;
  border-color: rgba(185, 135, 47, 0.75);
  background: rgba(185, 135, 47, 0.06);
}

.gdw-universe-star-right {
  margin-left: 2px;
}

/* Tablette */
@media (max-width: 1024px) {
  .gdw-universe-filter {
    width: calc(100% - 36px);
    padding: 12px 18px;
    gap: 16px;
    flex-wrap: wrap;
  }

  .gdw-universe-links {
    gap: 12px;
    flex-wrap: wrap;
  }

  .gdw-universe-name {
    font-size: 15px;
    letter-spacing: 0.18em;
  }

  .gdw-universe-filter-link {
    font-size: 9.5px;
    letter-spacing: 0.13em;
    padding: 7px 10px;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .gdw-universe-filter {
    width: 100%;
    margin: 18px auto 28px;
    padding: 16px 14px;
    flex-direction: column;
    gap: 12px;
  }

  .gdw-universe-left {
    justify-content: center;
  }

  .gdw-universe-name {
    font-size: 15px;
    letter-spacing: 0.18em;
    text-align: center;
  }

  .gdw-universe-divider,
  .gdw-universe-star-right {
    display: none;
  }

  .gdw-universe-links {
    gap: 8px;
    flex-wrap: wrap;
  }

  .gdw-universe-filter-link {
    font-size: 9px;
    letter-spacing: 0.11em;
    padding: 7px 10px;
  }

  .gdw-universe-separator {
    display: none;
  }
}

/* =========================================================
   GDW - CATEGORY PRODUCT CARDS - FINAL CLEAN
   Pages univers / catégories uniquement
   Ne touche pas à la home, New In, Designers, footer ou header.
   Objectif : image plus grande, catégories cachées,
   espace image/titre quasi nul.
========================================================= */

/* Grille produits des pages catégories / univers */
body.tax-product_cat ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 320px)) !important;
  justify-content: center !important;
  gap: 32px !important;
  width: calc(100% - 48px) !important;
  max-width: 1180px !important;
  margin: 68px auto 95px !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.tax-product_cat ul.products::before,
body.tax-product_cat ul.products::after {
  content: none !important;
  display: none !important;
}

/* Carte produit */
body.tax-product_cat ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 320px !important;
  min-width: 0 !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 0 0 8px !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(138, 106, 47, 0.16) !important;
  border-radius: 7px !important;
  overflow: hidden !important;
  text-align: center !important;
  box-shadow: 0 10px 30px rgba(43, 26, 18, 0.04) !important;
  box-sizing: border-box !important;
}

body.tax-product_cat ul.products li.product a {
  text-decoration: none !important;
}

/* Image produit : plus présente */
body.tax-product_cat ul.products li.product .eltdf-pl-inner,
body.tax-product_cat ul.products li.product .eltdf-pl-image,
body.tax-product_cat ul.products li.product .woocommerce-LoopProduct-link,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__link {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.tax-product_cat ul.products li.product img,
body.tax-product_cat ul.products li.product a img,
body.tax-product_cat ul.products li.product .attachment-woocommerce_thumbnail {
  display: block !important;
  width: 100% !important;
  height: 340px !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Zone texte : quasi collée à l'image */
body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper,
body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper-variations {
  display: block !important;
  width: 100% !important;
  padding: 2px 12px 7px !important;
  margin: 0 !important;
  background: #fffdf8 !important;
  min-height: auto !important;
  box-sizing: border-box !important;
}

/* Catégories cachées sur les pages univers/catégories : le filtre est déjà au-dessus */
body.tax-product_cat ul.products li.product .eltdf-e-categories,
body.tax-product_cat ul.products li.product .eltdf-e-categories a,
body.tax-product_cat ul.products li.product .eltdf-pl-categories,
body.tax-product_cat ul.products li.product .eltdf-pl-categories a,
body.tax-product_cat ul.products li.product .eltdf-pl-category,
body.tax-product_cat ul.products li.product .eltdf-pl-category a,
body.tax-product_cat ul.products li.product .posted_in,
body.tax-product_cat ul.products li.product .posted_in a,
body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper-variations .eltdf-e-categories,
body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper-variations .eltdf-e-categories a {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  line-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Titre produit : compact, premium, sans espace au-dessus */
body.tax-product_cat ul.products li.product h5.eltdf-product-list-title,
body.tax-product_cat ul.products li.product .eltdf-product-list-title,
body.tax-product_cat ul.products li.product .eltdf-product-list-title a,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product h2 {
  display: block !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.05 !important;
  letter-spacing: 0.13em !important;
  color: #24150f !important;
  text-align: center !important;
  text-transform: uppercase !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

/* Prix */
body.tax-product_cat ul.products li.product .price,
body.tax-product_cat ul.products li.product > .price {
  display: block !important;
  position: static !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  color: #b8872f !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

body.tax-product_cat ul.products li.product .button {
  display: none !important;
}

/* Tablette */
@media only screen and (max-width: 900px) {
  body.tax-product_cat ul.products {
    grid-template-columns: repeat(2, minmax(260px, 300px)) !important;
    max-width: 660px !important;
    gap: 24px !important;
    margin: 54px auto 78px !important;
    padding: 0 18px !important;
  }

  body.tax-product_cat ul.products li.product {
    max-width: 300px !important;
  }

  body.tax-product_cat ul.products li.product img,
  body.tax-product_cat ul.products li.product a img,
  body.tax-product_cat ul.products li.product .attachment-woocommerce_thumbnail {
    height: 315px !important;
  }
}

/* Mobile */
@media only screen and (max-width: 620px) {
  body.tax-product_cat ul.products {
    grid-template-columns: minmax(260px, 300px) !important;
    max-width: 340px !important;
    gap: 22px !important;
    margin: 42px auto 70px !important;
    padding: 0 18px !important;
  }

  body.tax-product_cat ul.products li.product {
    max-width: 300px !important;
    padding-bottom: 8px !important;
  }

  body.tax-product_cat ul.products li.product img,
  body.tax-product_cat ul.products li.product a img,
  body.tax-product_cat ul.products li.product .attachment-woocommerce_thumbnail {
    height: 300px !important;
  }

  body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper,
  body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper-variations {
    padding: 2px 10px 7px !important;
  }

  body.tax-product_cat ul.products li.product h5.eltdf-product-list-title,
  body.tax-product_cat ul.products li.product .eltdf-product-list-title,
  body.tax-product_cat ul.products li.product .eltdf-product-list-title a,
  body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
  body.tax-product_cat ul.products li.product h2 {
    font-size: 14px !important;
    letter-spacing: 0.11em !important;
  }
}
/* NEW IN - product image and spacing */
.woocommerce ul.products.columns-6 li.product a img {
  width: 100% !important;
  height: 230px !important;
  object-fit: cover !important;
  object-position: center !important;
  margin-bottom: 8px !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
  margin-top: 0 !important;
  padding-top: 0 !important;
  margin-bottom: 3px !important;
  line-height: 1.05 !important;
}

.woocommerce ul.products li.product .price {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.woocommerce ul.products li.product {
  margin-bottom: 35px !important;
}

/* =========================================================
   NEW IN WOMEN / MEN / UNISEX - ESPACE IMAGE / TITRE
   Ajout final uniquement : ne modifie pas le reste du site.
========================================================= */

/* Cible les grilles produits en shortcode Elementor des pages New In filtrées */
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce.columns-6 ul.products li.product,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product {
  padding-bottom: 10px !important;
}

/* Image : aucun espace forcé sous l'image */
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product img,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product a img,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product img,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product a img {
  display: block !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Conteneur image : enlève les marges du thème */
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-inner,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-image,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-list-image,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .qodef-woo-product-image,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-inner,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-image,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-product-list-image,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .qodef-woo-product-image {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Bloc texte : presque collé à l'image */
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .qodef-woo-product-content,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .qodef-e-content,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .qodef-woo-product-content,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .qodef-e-content {
  margin-top: 0 !important;
  padding-top: 2px !important;
}

/* Titre : supprime le gros espace avant le nom produit */
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-list-title,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-list-title a,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product h5.eltdf-product-list-title,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .woocommerce-loop-product__title,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product h2,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title a,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product h5.eltdf-product-list-title,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product h2 {
  margin-top: 0 !important;
  padding-top: 0 !important;
  margin-bottom: 2px !important;
  line-height: 1.08 !important;
}

/* Prix : reste collé sous le titre */
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product .price,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product > .price,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .price,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product > .price {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* FIX FINAL — ESPACE VIDE AVANT FOOTER SUR TABLETTE / MOBILE */
@media (max-width: 1180px) {
  body.page-id-9192,
  body.page-id-9192 .eltdf-wrapper,
  body.page-id-9192 .eltdf-wrapper-inner,
  body.page-id-9192 .eltdf-content,
  body.page-id-9192 .eltdf-content-inner,
  body.page-id-9192 .eltdf-container,
  body.page-id-9192 .eltdf-container-inner,
  body.page-id-9192 .eltdf-page-content-holder,
  body.page-id-9192 .eltdf-grid-row {
    background-color: #2a160e !important;
    background: #2a160e !important;
  }

  body.page-id-9192 .gdw-worlds-page,
  body.page-id-9192 .gdw-worlds-intro,
  body.page-id-9192 .gdw-worlds-grid,
  body.page-id-9192 .gdw-worlds-note {
    background-color: #f8f3ea !important;
    background: #f8f3ea !important;
  }

  body.page-id-9192 .gdw-worlds-page {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  body.page-id-9192 .eltdf-page-footer,
  body.page-id-9192 footer.eltdf-page-footer {
    margin-top: 0 !important;
    padding-top: 0 !important;
    background-color: #2a160e !important;
    background: #2a160e !important;
  }
}

/* ÉVITE LE GRAND ESPACE DANS LE FOOTER */
@media (max-width: 1180px) {
  body.page-id-9192 .eltdf-page-footer,
  body.page-id-9192 .eltdf-footer-bottom-holder,
  body.page-id-9192 .eltdf-footer-bottom-inner,
  body.page-id-9192 .eltdf-page-footer .eltdf-full-width,
  body.page-id-9192 .eltdf-page-footer .eltdf-full-width-inner,
  body.page-id-9192 .eltdf-page-footer .eltdf-grid,
  body.page-id-9192 .eltdf-page-footer .eltdf-grid-row,
  body.page-id-9192 .eltdf-page-footer .eltdf-grid-col-12,
  body.page-id-9192 .eltdf-page-footer .eltdf-column-content,
  body.page-id-9192 .eltdf-page-footer .widget,
  body.page-id-9192 .eltdf-page-footer .widget_text,
  body.page-id-9192 .eltdf-page-footer .textwidget {
    margin-top: 0 !important;
    padding-top: 0 !important;
    background-color: #2a160e !important;
    background: #2a160e !important;
  }

  body.page-id-9192 .gdw-footer-signature {
    margin-top: 0 !important;
    padding-top: 14px !important;
    padding-bottom: 10px !important;
    background-color: #2a160e !important;
    background: #2a160e !important;
  }
}

/* =========================================================
   SHOP PAGE — CORRECTION FINALE PROPRE SANS DOUBLONS
   Page Shop : boutons compacts + cartes produit propres
========================================================= */

/* Page Shop : hauteur propre pour garder le footer en bas */
body.page-id-54 .gdw-shop-classic {
  min-height: calc(100vh - 205px) !important;
  padding-bottom: 0 !important;
}

body.page-id-54 .gdw-shop-classic-inner {
  padding-top: 18px !important;
  padding-bottom: 70px !important;
}

/* -----------------------------
   Boutons Women / Men / Unisex
------------------------------ */
body.page-id-54 .gdw-shop-gender {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 34px !important;
  margin: 0 auto 16px !important;
}

body.page-id-54 .gdw-shop-gender button {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 92px !important;
  min-height: 28px !important;
  padding: 5px 13px !important;
  border-radius: 999px !important;
  border: 1px solid transparent !important;
  background: transparent !important;
  color: #2b160e !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 9.5px !important;
  line-height: 1 !important;
  letter-spacing: 2px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: none !important;
  outline: none !important;
}

body.page-id-54 .gdw-shop-gender button.is-active,
body.page-id-54 .gdw-shop-gender button:hover {
  color: #b8792c !important;
  border-color: #c8872c !important;
}

/* -----------------------------
   Boutons catégories
------------------------------ */
body.page-id-54 .gdw-shop-categories {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 auto 22px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body.page-id-54 .gdw-shop-category {
  appearance: none !important;
  -webkit-appearance: none !important;
  flex: 0 0 96px !important;
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  min-height: 32px !important;
  padding: 0 8px !important;
  border: 1px solid rgba(155, 111, 32, 0.34) !important;
  border-radius: 6px !important;
  background: rgba(255,255,255,0.16) !important;
  color: #2b160e !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 8.8px !important;
  line-height: 1 !important;
  letter-spacing: 1.5px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: none !important;
  outline: none !important;
  box-sizing: border-box !important;
}

body.page-id-54 .gdw-shop-category.is-active,
body.page-id-54 .gdw-shop-category:hover {
  color: #b8792c !important;
  border-color: #c8872c !important;
  background: rgba(255,255,255,0.34) !important;
}

/* Ligne titre produits */
body.page-id-54 .gdw-shop-products-head {
  border-top: 1px solid rgba(155, 111, 32, 0.24) !important;
  padding-top: 18px !important;
  margin-bottom: 18px !important;
}

body.page-id-54 .gdw-shop-products-head span,
body.page-id-54 .gdw-shop-products-head a {
  color: #9b6f20 !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 2.4px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

/* -----------------------------
   Zone produits et footer bas
------------------------------ */
body.page-id-54 .gdw-shop-products,
body.page-id-54 .gdw-product-panel.is-active {
  min-height: 360px !important;
}

body.page-id-54 .gdw-product-panel {
  display: none !important;
}

body.page-id-54 .gdw-product-panel.is-active {
  display: block !important;
}

/* Grille produits */
body.page-id-54 .gdw-shop-products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

body.page-id-54 .gdw-shop-products ul.products::before,
body.page-id-54 .gdw-shop-products ul.products::after {
  content: none !important;
  display: none !important;
}

/* Carte produit */
body.page-id-54 .gdw-shop-products ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 0 0 11px !important;
  background: rgba(255,255,255,0.34) !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  list-style: none !important;
  position: relative !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

/* Image */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-inner,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-image,
body.page-id-54 .gdw-shop-products ul.products li.product .woocommerce-loop-product__link:first-child {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
}

body.page-id-54 .gdw-shop-products ul.products li.product img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 0.82 / 1 !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Cache catégories / tags / meta blancs entre l'image et le titre */
body.page-id-54 .gdw-shop-products ul.products li.product .posted_in,
body.page-id-54 .gdw-shop-products ul.products li.product .tagged_as,
body.page-id-54 .gdw-shop-products ul.products li.product .product_meta,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-category,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-category,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-woo-product-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-category,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-category-holder,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-category,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-plc-category,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-plc-category-holder,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-e-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-info-category,
body.page-id-54 .gdw-shop-products ul.products li.product .category,
body.page-id-54 .gdw-shop-products ul.products li.product .categories,
body.page-id-54 .gdw-shop-products ul.products li.product .woocommerce-loop-category__title,
body.page-id-54 .gdw-shop-products ul.products li.product a[rel="tag"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  line-height: 0 !important;
  font-size: 0 !important;
}

/* Wrapper texte : titre à gauche + prix à droite, sous l'image */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text-holder {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 7px 12px 0 !important;
  background: transparent !important;
  position: static !important;
  transform: none !important;
  box-sizing: border-box !important;
}

/* Sécurité : supprime textes fantômes hors titre/prix dans le wrapper */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper > *:not(.eltdf-product-list-title):not(.woocommerce-loop-product__title):not(.price):not(.eltdf-pl-text),
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text > *:not(.eltdf-product-list-title):not(.woocommerce-loop-product__title):not(.price),
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text > *:not(.eltdf-product-list-title):not(.woocommerce-loop-product__title):not(.price),
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text-holder > *:not(.eltdf-product-list-title):not(.woocommerce-loop-product__title):not(.price):not(.eltdf-pli-text) {
  display: none !important;
}

/* Liens produit */
body.page-id-54 .gdw-shop-products ul.products li.product a {
  color: inherit !important;
  text-decoration: none !important;
}

/* Titre */
body.page-id-54 .gdw-shop-products ul.products li.product .woocommerce-loop-product__title,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-title,
body.page-id-54 .gdw-shop-products ul.products li.product h2,
body.page-id-54 .gdw-shop-products ul.products li.product h3,
body.page-id-54 .gdw-shop-products ul.products li.product h5 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  transform: none !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  letter-spacing: 1.3px !important;
  text-transform: uppercase !important;
  color: #2b160e !important;
  font-weight: 700 !important;
  text-align: left !important;
  white-space: normal !important;
  overflow: visible !important;
}

body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-title a,
body.page-id-54 .gdw-shop-products ul.products li.product .woocommerce-loop-product__title a {
  color: #2b160e !important;
  text-decoration: none !important;
}

/* Prix : à droite du titre, jamais sur l'image */
body.page-id-54 .gdw-shop-products ul.products li.product .price,
body.page-id-54 .gdw-shop-products ul.products li.product > .price {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  align-self: start !important;
  justify-self: end !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  background: transparent !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  letter-spacing: 0.8px !important;
  color: #9b6f20 !important;
  font-weight: 600 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body.page-id-54 .gdw-shop-products ul.products li.product .price * {
  color: #9b6f20 !important;
}

/* Boutons add-to-cart cachés */
body.page-id-54 .gdw-shop-products ul.products li.product .button,
body.page-id-54 .gdw-shop-products .woocommerce-result-count,
body.page-id-54 .gdw-shop-products .woocommerce-ordering {
  display: none !important;
}

/* Message si aucun produit */
body.page-id-54 .gdw-shop-products .woocommerce-info,
body.page-id-54 .gdw-shop-products .woocommerce-message,
body.page-id-54 .gdw-shop-products .woocommerce-error {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: #9b6f20 !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 11px !important;
  line-height: 1.6 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  padding: 36px 0 !important;
  text-align: center !important;
}

/* -----------------------------
   Tablette
------------------------------ */
@media (max-width: 1024px) {
  body.page-id-54 .gdw-shop-classic-inner {
    padding-top: 17px !important;
  }

  body.page-id-54 .gdw-shop-gender {
    gap: 24px !important;
    margin-bottom: 15px !important;
  }

  body.page-id-54 .gdw-shop-gender button {
    min-width: 82px !important;
    min-height: 27px !important;
    padding: 5px 11px !important;
    font-size: 8.8px !important;
    letter-spacing: 1.7px !important;
  }

  body.page-id-54 .gdw-shop-categories {
    gap: 7px !important;
    margin-bottom: 20px !important;
  }

  body.page-id-54 .gdw-shop-category {
    flex-basis: 84px !important;
    width: 84px !important;
    min-width: 84px !important;
    max-width: 84px !important;
    min-height: 30px !important;
    padding: 0 7px !important;
    font-size: 8.2px !important;
    letter-spacing: 1.2px !important;
  }

  body.page-id-54 .gdw-shop-products ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  body.page-id-54 .gdw-shop-products,
  body.page-id-54 .gdw-product-panel.is-active {
    min-height: 340px !important;
  }
}

/* -----------------------------
   Mobile : 1 seule rangée horizontale
------------------------------ */
@media (max-width: 680px) {
  body.page-id-54 .gdw-shop-classic-inner {
    padding: 16px 0 54px !important;
  }

  body.page-id-54 .gdw-shop-gender {
    width: 100% !important;
    justify-content: center !important;
    gap: 7px !important;
    margin: 0 auto 14px !important;
    padding: 0 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    box-sizing: border-box !important;
  }

  body.page-id-54 .gdw-shop-gender::-webkit-scrollbar {
    display: none !important;
  }

  body.page-id-54 .gdw-shop-gender button {
    min-width: 68px !important;
    min-height: 25px !important;
    padding: 5px 9px !important;
    font-size: 7.8px !important;
    letter-spacing: 1.2px !important;
  }

  body.page-id-54 .gdw-shop-categories {
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    margin: 0 auto 17px !important;
    padding: 0 12px 2px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    box-sizing: border-box !important;
  }

  body.page-id-54 .gdw-shop-categories::-webkit-scrollbar {
    display: none !important;
  }

  body.page-id-54 .gdw-shop-category {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 64px !important;
    max-width: none !important;
    min-height: 28px !important;
    padding: 0 9px !important;
    font-size: 7.5px !important;
    letter-spacing: 1px !important;
    border-radius: 5px !important;
  }

  body.page-id-54 .gdw-shop-products-head,
  body.page-id-54 .gdw-shop-products {
    width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.page-id-54 .gdw-shop-products-head {
    padding-top: 16px !important;
    margin-bottom: 16px !important;
  }

  body.page-id-54 .gdw-shop-products-head span,
  body.page-id-54 .gdw-shop-products-head a {
    font-size: 8px !important;
    letter-spacing: 1.5px !important;
  }

  body.page-id-54 .gdw-shop-products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text-holder {
    gap: 7px !important;
    padding: 6px 9px 0 !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product .woocommerce-loop-product__title,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-title,
  body.page-id-54 .gdw-shop-products ul.products li.product h2,
  body.page-id-54 .gdw-shop-products ul.products li.product h3,
  body.page-id-54 .gdw-shop-products ul.products li.product h5 {
    font-size: 9px !important;
    letter-spacing: 0.8px !important;
    line-height: 1.22 !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product .price,
  body.page-id-54 .gdw-shop-products ul.products li.product > .price {
    font-size: 9.5px !important;
    letter-spacing: 0.5px !important;
    line-height: 1.22 !important;
  }

  body.page-id-54 .gdw-shop-products,
  body.page-id-54 .gdw-product-panel.is-active {
    min-height: 320px !important;
  }
}

@media (max-width: 390px) {
  body.page-id-54 .gdw-shop-gender button {
    min-width: 62px !important;
    font-size: 7.4px !important;
    letter-spacing: 1px !important;
    padding: 5px 8px !important;
  }

  body.page-id-54 .gdw-shop-category {
    min-width: 58px !important;
    min-height: 26px !important;
    padding: 0 8px !important;
    font-size: 7px !important;
    letter-spacing: 0.8px !important;
  }
}
/* =========================================================
   SHOP PAGE — TITRE + SOUS-TITRE PLUS PETITS
========================================================= */

/* DESKTOP */
body.page-id-54 .gdw-shop-classic-hero {
  padding: 30px 20px 24px !important;
}

body.page-id-54 .gdw-shop-classic-hero h1 {
  font-size: 46px !important;
  letter-spacing: 16px !important;
  margin-bottom: 14px !important;
}

body.page-id-54 .gdw-shop-classic-divider {
  margin-bottom: 16px !important;
  gap: 14px !important;
}

body.page-id-54 .gdw-shop-classic-divider span {
  width: 58px !important;
}

body.page-id-54 .gdw-shop-classic-hero p {
  font-size: 10px !important;
  letter-spacing: 5.2px !important;
  line-height: 1.7 !important;
}

/* TABLETTE */
@media (max-width: 1024px) {
  body.page-id-54 .gdw-shop-classic-hero {
    padding: 26px 18px 22px !important;
  }

  body.page-id-54 .gdw-shop-classic-hero h1 {
    font-size: 40px !important;
    letter-spacing: 13px !important;
    margin-bottom: 12px !important;
  }

  body.page-id-54 .gdw-shop-classic-divider {
    margin-bottom: 14px !important;
  }

  body.page-id-54 .gdw-shop-classic-divider span {
    width: 48px !important;
  }

  body.page-id-54 .gdw-shop-classic-hero p {
    font-size: 9px !important;
    letter-spacing: 4px !important;
  }
}

/* MOBILE */
@media (max-width: 680px) {
  body.page-id-54 .gdw-shop-classic-hero {
    padding: 22px 14px 20px !important;
  }

  body.page-id-54 .gdw-shop-classic-hero h1 {
    font-size: 34px !important;
    letter-spacing: 9px !important;
    margin-bottom: 10px !important;
  }

  body.page-id-54 .gdw-shop-classic-divider {
    gap: 10px !important;
    margin-bottom: 12px !important;
  }

  body.page-id-54 .gdw-shop-classic-divider span {
    width: 38px !important;
  }

  body.page-id-54 .gdw-shop-classic-divider em {
    font-size: 11px !important;
  }

  body.page-id-54 .gdw-shop-classic-hero p {
    font-size: 8.4px !important;
    letter-spacing: 2.6px !important;
    line-height: 1.8 !important;
  }
}
/* =========================================================
   WORLDS PAGE — TITRE MÊME TAILLE QUE SHOP
========================================================= */

/* DESKTOP */
body.page-id-9192 .gdw-worlds-intro {
  padding-top: 30px !important;
  padding-bottom: 24px !important;
}

body.page-id-9192 .gdw-worlds-intro h1 {
  font-size: 46px !important;
  letter-spacing: 16px !important;
  margin-bottom: 14px !important;
}

body.page-id-9192 .gdw-worlds-divider {
  margin: 0 0 16px !important;
  gap: 14px !important;
}

body.page-id-9192 .gdw-worlds-divider span {
  width: 58px !important;
}

body.page-id-9192 .gdw-worlds-intro p {
  font-size: 10px !important;
  letter-spacing: 5.2px !important;
  line-height: 1.7 !important;
}

/* TABLETTE */
@media (max-width: 1024px) {
  body.page-id-9192 .gdw-worlds-intro {
    padding-top: 26px !important;
    padding-bottom: 22px !important;
  }

  body.page-id-9192 .gdw-worlds-intro h1 {
    font-size: 40px !important;
    letter-spacing: 13px !important;
    margin-bottom: 12px !important;
  }

  body.page-id-9192 .gdw-worlds-divider {
    margin-bottom: 14px !important;
  }

  body.page-id-9192 .gdw-worlds-divider span {
    width: 48px !important;
  }

  body.page-id-9192 .gdw-worlds-intro p {
    font-size: 9px !important;
    letter-spacing: 4px !important;
  }
}

/* MOBILE */
@media (max-width: 680px) {
  body.page-id-9192 .gdw-worlds-intro {
    padding-top: 22px !important;
    padding-bottom: 20px !important;
  }

  body.page-id-9192 .gdw-worlds-intro h1 {
    font-size: 34px !important;
    letter-spacing: 9px !important;
    margin-bottom: 10px !important;
  }

  body.page-id-9192 .gdw-worlds-divider {
    gap: 10px !important;
    margin-bottom: 12px !important;
  }

  body.page-id-9192 .gdw-worlds-divider span {
    width: 38px !important;
  }

  body.page-id-9192 .gdw-worlds-divider small {
    font-size: 11px !important;
  }

  body.page-id-9192 .gdw-worlds-intro p {
    font-size: 8.4px !important;
    letter-spacing: 2.6px !important;
    line-height: 1.8 !important;
  }
}
/* =========================================================
   WORLDS PAGE — MÊME HAUTEUR QUE SHOP
========================================================= */

/* DESKTOP */
body.page-id-9192 .gdw-worlds-page {
  padding-top: 0 !important;
}

body.page-id-9192 .gdw-worlds-intro {
  padding-top: 30px !important;
  padding-bottom: 24px !important;
}

/* TABLETTE */
@media (max-width: 1024px) {
  body.page-id-9192 .gdw-worlds-page {
    padding-top: 0 !important;
  }

  body.page-id-9192 .gdw-worlds-intro {
    padding-top: 26px !important;
    padding-bottom: 22px !important;
  }
}

/* MOBILE */
@media (max-width: 680px) {
  body.page-id-9192 .gdw-worlds-page {
    padding-top: 0 !important;
  }

  body.page-id-9192 .gdw-worlds-intro {
    padding-top: 22px !important;
    padding-bottom: 20px !important;
  }
}
/* =========================================================
   SHOP PAGE — FULL WIDTH SANS BANDES BLANCHES SUR LES CÔTÉS
========================================================= */

/* Force toute la zone Elementor Shop en pleine largeur */
body.page-id-54 .eltdf-content,
body.page-id-54 .eltdf-content-inner,
body.page-id-54 .eltdf-container,
body.page-id-54 .eltdf-container-inner,
body.page-id-54 .elementor,
body.page-id-54 .elementor-section,
body.page-id-54 .elementor-container,
body.page-id-54 .elementor-column,
body.page-id-54 .elementor-widget-wrap,
body.page-id-54 .elementor-widget-html,
body.page-id-54 .elementor-widget-container {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  left: auto !important;
  right: auto !important;
  box-sizing: border-box !important;
}

/* Section principale Shop */
body.page-id-54 .gdw-shop-classic {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background: #ffffff !important;
  overflow-x: hidden !important;
}

/* Hero Shop pleine largeur */
body.page-id-54 .gdw-shop-classic-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background: #ffffff !important;
}

/* Contenu intérieur : reste centré mais sans créer de bandes */
body.page-id-54 .gdw-shop-classic-inner {
  width: 100% !important;
  max-width: 1188px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
}

/* Sécurité anti-scroll horizontal */
html,
body {
  overflow-x: hidden !important;
}

/* MOBILE */
@media (max-width: 680px) {
  body.page-id-54 .gdw-shop-classic-inner {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.page-id-54 .gdw-shop-gender,
  body.page-id-54 .gdw-shop-categories {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* WORLD PAGE MOBILE - titre + symbole + catégories */
@media (max-width: 767px){

  /* enlève la barre au-dessus du titre */
  .world-page hr,
  .world-header hr,
  .shop-world hr,
  .elementor-divider {
    display: none !important;
  }

  /* titre univers */
  .world-title,
  .shop-title,
  h1, 
  .elementor-heading-title {
    margin-top: 35px !important;
    margin-bottom: 8px !important;
    text-align: center !important;
  }

  /* petit symbole sous le titre */
  .world-symbol,
  .world-icon,
  .theme-symbol,
  .decor-symbol {
    display: block !important;
    text-align: center !important;
    margin: 0 auto 22px auto !important;
    order: 2 !important;
  }

  /* bloc filtres */
  .world-filters,
  .shop-filters,
  .category-filters,
  .product-filters {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 14px !important;
    justify-content: flex-start !important;
    padding: 0 16px 10px !important;
    margin: 0 auto !important;
    white-space: nowrap !important;
    scrollbar-width: none !important;
  }

  .world-filters::-webkit-scrollbar,
  .shop-filters::-webkit-scrollbar,
  .category-filters::-webkit-scrollbar,
  .product-filters::-webkit-scrollbar {
    display: none !important;
  }

  /* boutons catégories + sous-catégories sur une ligne */
  .world-filters a,
  .shop-filters a,
  .category-filters a,
  .product-filters a,
  .world-filters button,
  .shop-filters button {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    font-size: 11px !important;
    letter-spacing: 1.8px !important;
    padding: 8px 12px !important;
    margin: 0 !important;
  }

  /* espace après les filtres */
  .products,
  .woocommerce ul.products {
    margin-top: 35px !important;
  }
}
/* =========================================================
   PATCH FINAL - WORLD / UNIVERSE MOBILE
========================================================= */

@media (max-width: 768px) {

  body.tax-product_cat .gdw-universe-filter {
    width: 100% !important;
    margin: 24px auto 32px !important;
    padding: 0 14px 18px !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(185, 135, 47, 0.34) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 14px !important;
  }

  body.tax-product_cat .gdw-universe-left {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
  }

  body.tax-product_cat .gdw-universe-name {
    order: 1 !important;
    font-size: 20px !important;
    letter-spacing: 0.22em !important;
    text-align: center !important;
  }

  body.tax-product_cat .gdw-universe-star {
    order: 2 !important;
    display: block !important;
    margin: 0 auto !important;
    font-size: 13px !important;
  }

  body.tax-product_cat .gdw-universe-divider,
  body.tax-product_cat .gdw-universe-separator,
  body.tax-product_cat .gdw-universe-star-right {
    display: none !important;
  }

  body.tax-product_cat .gdw-universe-links {
    width: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    padding: 0 2px 6px !important;
    white-space: nowrap !important;
    scrollbar-width: none !important;
  }

  body.tax-product_cat .gdw-universe-links::-webkit-scrollbar {
    display: none !important;
  }

  body.tax-product_cat .gdw-universe-filter-link {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    font-size: 10px !important;
    letter-spacing: 0.13em !important;
    padding: 7px 10px !important;
  }
}
/* Enlever le trait sous le symbole + réduire espace avant articles */
@media (max-width: 768px) {

  body.tax-product_cat .gdw-universe-filter {
    border-bottom: none !important;
    margin-bottom: 14px !important;
    padding-bottom: 4px !important;
  }

  body.tax-product_cat .gdw-universe-links {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body.tax-product_cat .woocommerce ul.products,
  body.tax-product_cat ul.products {
    margin-top: 18px !important;
  }
}
/* =========================================================
   GDW - FOOTER TOUJOURS EN BAS SUR PAGES COURTES
   Version globale pour le thème Gioia / Elated (.eltdf)
   Recherche, pages vides, catégories, shop, compte, designers...
========================================================= */

html,
body {
  min-height: 100% !important;
}

body:not(.wp-admin) {
  min-height: 100vh !important;
}

/* Structure principale du thème */
body:not(.wp-admin) .eltdf-wrapper,
body:not(.wp-admin) .eltdf-wrapper-inner {
  min-height: 100vh !important;
}

/* La page devient une colonne : header / contenu / footer */
body:not(.wp-admin) .eltdf-wrapper-inner {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

/* Le contenu prend l'espace disponible quand la page est courte */
body:not(.wp-admin) .eltdf-content {
  flex: 1 0 auto !important;
  width: 100% !important;
}

/* Le footer descend en bas sans être fixe par-dessus le contenu */
body:not(.wp-admin) footer.eltdf-page-footer,
body:not(.wp-admin) .eltdf-page-footer {
  margin-top: auto !important;
  flex-shrink: 0 !important;
}

/* Sécurité pour les pages très courtes ou sans résultats */
body.search .eltdf-content,
body.search-results .eltdf-content,
body.search-no-results .eltdf-content,
body.error404 .eltdf-content,
body.woocommerce-account .eltdf-content,
body.woocommerce-cart .eltdf-content,
body.woocommerce-checkout .eltdf-content,
body.page-template-default .eltdf-content {
  min-height: calc(100vh - 220px) !important;
}

/* Sécurité spéciale page de recherche */
body.search .eltdf-content-inner,
body.search-results .eltdf-content-inner,
body.search-no-results .eltdf-content-inner,
body.search .eltdf-container,
body.search .eltdf-container-inner,
body.search .eltdf-page-content-holder,
body.search-results .eltdf-container,
body.search-results .eltdf-container-inner,
body.search-results .eltdf-page-content-holder,
body.search-no-results .eltdf-container,
body.search-no-results .eltdf-container-inner,
body.search-no-results .eltdf-page-content-holder {
  min-height: inherit !important;
}
/* GDW - bouton formulaire contact */
body #fluentform_3 .ff-btn-submit,
body .fluent_form_3 .ff-btn-submit {
  background: #2a160d !important;
  color: #d89a1f !important;
  border: 1px solid #d89a1f !important;
  border-radius: 10px !important;
  padding: 13px 28px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

/* Hover */
body #fluentform_3 .ff-btn-submit:hover,
body .fluent_form_3 .ff-btn-submit:hover {
  background: #000000 !important;
  color: #ffffff !important;
  border-color: #000000 !important;
}
/* GDW - centrer le bouton du formulaire contact */
body #fluentform_3 .ff_submit_btn_wrapper,
body .fluent_form_3 .ff_submit_btn_wrapper {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  text-align: center !important;
}

body #fluentform_3 .ff-btn-submit,
body .fluent_form_3 .ff-btn-submit {
  margin-left: auto !important;
  margin-right: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* =========================================================
   SHOP PAGE — PRIX À CÔTÉ DU TITRE
   Le prix (span.price) est un frère de .eltdf-pl-text-wrapper,
   pas un enfant : on utilise une grille sur le <li> lui-même.
========================================================= */

body.page-id-54 .gdw-shop-products ul.products li.product {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  column-gap: 10px !important;
  row-gap: 0 !important;
}

body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-inner {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
}

body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper {
  grid-column: 1 !important;
  grid-row: 2 !important;
  display: block !important;
  padding: 7px 0 0 12px !important;
}

body.page-id-54 .gdw-shop-products ul.products li.product > span.price {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  justify-self: end !important;
  padding: 7px 12px 0 0 !important;
  margin: 0 !important;
  display: block !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
  color: #9b6f20 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

body.page-id-54 .gdw-shop-products ul.products li.product > span.price * {
  color: #9b6f20 !important;
}

/* Mobile : même logique, tailles réduites */
@media (max-width: 680px) {
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper {
    padding: 6px 0 0 9px !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product > span.price {
    padding: 6px 9px 0 0 !important;
    font-size: 9.5px !important;
  }
}
/* Titres des produits sur les pages designers */
#dokan-content ul.products li.product .eltdf-product-list-title,
#dokan-content ul.products li.product .eltdf-product-list-title a {
  font-family: "Oswald", sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  color: #2a160d !important;
}

/* Version tablette */
@media (max-width: 1024px) {
  #dokan-content ul.products li.product .eltdf-product-list-title,
  #dokan-content ul.products li.product .eltdf-product-list-title a {
    font-size: 12px !important;
  }
}

/* Version mobile */
@media (max-width: 620px) {
  #dokan-content ul.products li.product .eltdf-product-list-title,
  #dokan-content ul.products li.product .eltdf-product-list-title a {
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.02em !important;
  }
}
/* Logo du header légèrement plus petit sur ordinateur */
@media (min-width: 1025px) {
  .eltdf-page-header .eltdf-logo-wrapper img {
    transform: scale(0.95);
    transform-origin: left center;
  }
}

/* =========================================================
   HEADER FIXÉ UNIQUEMENT SUR LA PAGE SHOP — PAGE ID 54
   Important : ce bloc reste limité à Shop et ne touche pas
   Worlds, New In, Designers ni les autres pages.
========================================================= */

/* ORDINATEUR : header complet fixé */
@media only screen and (min-width: 1201px) {

  body.page-id-54 .eltdf-sticky-header,
  body.page-id-54 .eltdf-sticky-header.header-appear,
  body.elementor-page-54 .eltdf-sticky-header,
  body.elementor-page-54 .eltdf-sticky-header.header-appear {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.page-id-54 .eltdf-page-header,
  body.elementor-page-54 .eltdf-page-header {
    display: block !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    z-index: 2147483000 !important;
    background: #2a160d !important;
    background-color: #2a160d !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.page-id-54 .eltdf-page-header .eltdf-menu-area,
  body.page-id-54 .eltdf-page-header .eltdf-menu-area-inner,
  body.page-id-54 .eltdf-page-header .eltdf-vertical-align-containers,
  body.elementor-page-54 .eltdf-page-header .eltdf-menu-area,
  body.elementor-page-54 .eltdf-page-header .eltdf-menu-area-inner,
  body.elementor-page-54 .eltdf-page-header .eltdf-vertical-align-containers {
    background: #2a160d !important;
    background-color: #2a160d !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  /* Compense exactement la hauteur du header sans créer de bande dessous */
  body.page-id-54 .eltdf-content,
  body.elementor-page-54 .eltdf-content {
    padding-top: 74px !important;
  }
}

/* TABLETTE : on conserve le header classique déjà utilisé par le site */
@media only screen and (min-width: 621px) and (max-width: 1200px) {

  body.page-id-54 .eltdf-page-header,
  body.elementor-page-54 .eltdf-page-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    z-index: 2147483000 !important;
    background: #2a160d !important;
    background-color: #2a160d !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.page-id-54 .eltdf-content,
  body.elementor-page-54 .eltdf-content {
    padding-top: 56px !important;
  }
}

/* MOBILE : même header complet, avec la hauteur compacte existante */
@media only screen and (max-width: 620px) {

  body.page-id-54 .eltdf-page-header,
  body.elementor-page-54 .eltdf-page-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    z-index: 2147483000 !important;
    background: #2a160d !important;
    background-color: #2a160d !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.page-id-54 .eltdf-content,
  body.elementor-page-54 .eltdf-content {
    padding-top: 50px !important;
  }
}

/* Décalage quand la barre d’administration WordPress est visible */
@media only screen and (min-width: 783px) {
  body.page-id-54.admin-bar .eltdf-page-header,
  body.elementor-page-54.admin-bar .eltdf-page-header {
    top: 32px !important;
  }
}

@media only screen and (max-width: 782px) {
  body.page-id-54.admin-bar .eltdf-page-header,
  body.elementor-page-54.admin-bar .eltdf-page-header {
    top: 46px !important;
  }
}

/* =========================================================
   GDW — CARTES PRODUITS STYLE ETSY — CORRECTION FINALE
   - Le cadre entoure uniquement l'image
   - Titre, prix et catégories sont placés librement dessous
   - Les images sont affichées entièrement, sans recadrage
   - S'applique à Shop, Home, New In, catégories/univers,
     pages designers et autres grilles de produits Elementor
   À conserver tout en bas du CSS.
========================================================= */

/* ---------------------------------------------------------
   1. SUPPRESSION DU GRAND CADRE AUTOUR DE LA CARTE ENTIÈRE
--------------------------------------------------------- */

body.page-id-54 .gdw-shop-products ul.products li.product,
body.home .woocommerce ul.products li.product,
body.home ul.products.products li.product,
body.page-id-7773 .woocommerce ul.products li.product,
body.page-id-7773 ul.products.products li.product,
.gdw-new-in-section ul.products li.product,
.gdw-new-in-products ul.products li.product,
body.tax-product_cat ul.products li.product,
#dokan-content ul.products li.product,
#dokan-content .seller-items ul.products li.product,
.dokan-store-wrap ul.products li.product,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product {
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  text-align: left !important;
}

/* ---------------------------------------------------------
   2. CONTENEUR DE L'IMAGE
--------------------------------------------------------- */

body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-inner,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-image,
body.home ul.products li.product .eltdf-pl-inner,
body.home ul.products li.product .eltdf-pl-image,
body.page-id-7773 ul.products li.product .eltdf-pl-inner,
body.page-id-7773 ul.products li.product .eltdf-pl-image,
.gdw-new-in-section ul.products li.product .eltdf-pl-inner,
.gdw-new-in-section ul.products li.product .eltdf-pl-image,
.gdw-new-in-products ul.products li.product .eltdf-pl-inner,
.gdw-new-in-products ul.products li.product .eltdf-pl-image,
body.tax-product_cat ul.products li.product .eltdf-pl-inner,
body.tax-product_cat ul.products li.product .eltdf-pl-image,
#dokan-content ul.products li.product .eltdf-pl-inner,
#dokan-content ul.products li.product .eltdf-pl-image,
.dokan-store-wrap ul.products li.product .eltdf-pl-inner,
.dokan-store-wrap ul.products li.product .eltdf-pl-image,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-inner,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fffdf8 !important;
  border: none !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 7px 20px rgba(43, 26, 18, 0.07) !important;
  box-sizing: border-box !important;
}

/* ---------------------------------------------------------
   3. IMAGE ENTIÈRE : PLUS AUCUN RECADRAGE
--------------------------------------------------------- */

body.page-id-54 .gdw-shop-products ul.products li.product img,
body.home ul.products li.product img,
body.page-id-7773 ul.products li.product img,
.gdw-new-in-section ul.products li.product img,
.gdw-new-in-products ul.products li.product img,
body.tax-product_cat ul.products li.product img,
body.tax-product_cat ul.products li.product a img,
body.tax-product_cat ul.products li.product .attachment-woocommerce_thumbnail,
#dokan-content ul.products li.product img,
#dokan-content .seller-items ul.products li.product img,
.dokan-store-wrap ul.products li.product img,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode .woocommerce ul.products li.product img,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(138, 106, 47, 0.16) !important;
  border-radius: 8px !important;
  background: #fffdf8 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* ---------------------------------------------------------
   4. TEXTE HORS DU CADRE DE L'IMAGE
--------------------------------------------------------- */

body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text-holder,
body.home ul.products li.product .eltdf-pl-text-wrapper,
body.page-id-7773 ul.products li.product .eltdf-pl-text-wrapper,
.gdw-new-in-section ul.products li.product .eltdf-pl-text-wrapper,
.gdw-new-in-products ul.products li.product .eltdf-pl-text-wrapper,
body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper,
body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper-variations,
#dokan-content ul.products li.product .eltdf-pl-text-wrapper,
#dokan-content .seller-items ul.products li.product .eltdf-pl-text-wrapper,
.dokan-store-wrap ul.products li.product .eltdf-pl-text-wrapper,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper,
body:not(.home):not(.tax-product_cat):not(.single-product) .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations {
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 8px 2px 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

/* ---------------------------------------------------------
   5. SHOP : TITRE À GAUCHE + PRIX À DROITE
--------------------------------------------------------- */

body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text-holder {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  column-gap: 10px !important;
  row-gap: 5px !important;
}

/* ---------------------------------------------------------
   6. CATÉGORIES / UNIVERS + DESIGNER :
      MÊME PRÉSENTATION COMPACTE QUE SHOP
--------------------------------------------------------- */

body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper,
#dokan-content ul.products li.product .eltdf-pl-text-wrapper,
#dokan-content .seller-items ul.products li.product .eltdf-pl-text-wrapper,
.dokan-store-wrap ul.products li.product .eltdf-pl-text-wrapper {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  column-gap: 10px !important;
  row-gap: 4px !important;
}

body.tax-product_cat ul.products li.product h5.eltdf-product-list-title,
body.tax-product_cat ul.products li.product .eltdf-product-list-title,
body.tax-product_cat ul.products li.product .eltdf-product-list-title a,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product h2,
#dokan-content ul.products li.product .eltdf-product-list-title,
#dokan-content ul.products li.product .eltdf-product-list-title a,
#dokan-content ul.products li.product h5.eltdf-product-list-title,
#dokan-content ul.products li.product .woocommerce-loop-product__title,
#dokan-content ul.products li.product h2,
.dokan-store-wrap ul.products li.product .eltdf-product-list-title,
.dokan-store-wrap ul.products li.product .eltdf-product-list-title a {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: block !important;
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 1.1px !important;
  text-transform: uppercase !important;
  text-align: left !important;
  color: #2b160e !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

body.tax-product_cat ul.products li.product .price,
body.tax-product_cat ul.products li.product > .price,
#dokan-content ul.products li.product .price,
#dokan-content ul.products li.product > .price,
#dokan-content .seller-items ul.products li.product .price,
.dokan-store-wrap ul.products li.product .price {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  align-self: start !important;
  justify-self: end !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  transform: none !important;
  background: transparent !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.5px !important;
  color: #9b6f20 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* ---------------------------------------------------------
   7. HOME / NEW IN :
      LES CATÉGORIES RESTENT VISIBLES, MAIS HORS DU CADRE
--------------------------------------------------------- */

body.home ul.products li.product .eltdf-e-categories,
body.home ul.products li.product .eltdf-pl-categories,
body.page-id-7773 ul.products li.product .eltdf-e-categories,
body.page-id-7773 ul.products li.product .eltdf-pl-categories,
.gdw-new-in-section ul.products li.product .eltdf-e-categories,
.gdw-new-in-section ul.products li.product .eltdf-pl-categories,
.gdw-new-in-products ul.products li.product .eltdf-e-categories,
.gdw-new-in-products ul.products li.product .eltdf-pl-categories {
  padding-left: 2px !important;
  padding-right: 2px !important;
  margin-top: 5px !important;
  background: transparent !important;
}

/* ---------------------------------------------------------
   8. ESPACEMENT ENTRE LES PRODUITS
--------------------------------------------------------- */

body.page-id-54 .gdw-shop-products ul.products,
body.home .woocommerce ul.products,
body.page-id-7773 .woocommerce ul.products,
.gdw-new-in-section ul.products,
.gdw-new-in-products ul.products,
body.tax-product_cat ul.products,
#dokan-content ul.products,
#dokan-content .seller-items ul.products,
.dokan-store-wrap ul.products {
  row-gap: 38px !important;
}

/* ---------------------------------------------------------
   9. MOBILE : TEXTE COMPACT ET LISIBLE
--------------------------------------------------------- */

@media only screen and (max-width: 620px) {
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper,
  body.home ul.products li.product .eltdf-pl-text-wrapper,
  body.page-id-7773 ul.products li.product .eltdf-pl-text-wrapper,
  .gdw-new-in-section ul.products li.product .eltdf-pl-text-wrapper,
  .gdw-new-in-products ul.products li.product .eltdf-pl-text-wrapper,
  body.tax-product_cat ul.products li.product .eltdf-pl-text-wrapper,
  #dokan-content ul.products li.product .eltdf-pl-text-wrapper,
  .dokan-store-wrap ul.products li.product .eltdf-pl-text-wrapper {
    padding: 7px 1px 0 !important;
    column-gap: 7px !important;
  }

  body.tax-product_cat ul.products li.product h5.eltdf-product-list-title,
  body.tax-product_cat ul.products li.product .eltdf-product-list-title,
  body.tax-product_cat ul.products li.product .eltdf-product-list-title a,
  #dokan-content ul.products li.product .eltdf-product-list-title,
  #dokan-content ul.products li.product .eltdf-product-list-title a,
  .dokan-store-wrap ul.products li.product .eltdf-product-list-title,
  .dokan-store-wrap ul.products li.product .eltdf-product-list-title a {
    font-size: 10px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.7px !important;
  }

  body.tax-product_cat ul.products li.product .price,
  #dokan-content ul.products li.product .price,
  .dokan-store-wrap ul.products li.product .price {
    font-size: 10px !important;
  }
}

/* =========================================================
   HOME — SHORTCODE NEW IN — STYLE ETSY
   Correction spécifique au shortcode [gdw_new_in]
   de la page principale.
   À conserver tout en bas du CSS.
========================================================= */

/* La carte entière ne doit plus former un cadre */
body.home .elementor-widget-shortcode ul.products li.product,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Le wrapper général du produit reste transparent */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-inner,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-inner {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Seule l'image garde un petit cadre */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-image,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(138, 106, 47, 0.16) !important;
  border-radius: 8px !important;
  box-shadow: 0 7px 20px rgba(43, 26, 18, 0.07) !important;
  overflow: hidden !important;
}

/* Image entière, sans découpe */
body.home .elementor-widget-shortcode ul.products li.product img,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(138, 106, 47, 0.16) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

/* Zone texte placée librement sous l'image */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  column-gap: 10px !important;
  row-gap: 6px !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 8px 2px 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Permet aux éléments imbriqués de participer à la grille */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations {
  display: contents !important;
}

/* Titre compact à gauche */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title a,
body.home .elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title,
body.home .elementor-widget-shortcode ul.products li.product h2,
body.home .elementor-widget-shortcode ul.products li.product h3,
body.home .elementor-widget-shortcode ul.products li.product h4,
body.home .elementor-widget-shortcode ul.products li.product h5 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  text-align: left !important;
  color: #2b160e !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

/* Prix compact à droite */
body.home .elementor-widget-shortcode ul.products li.product .price,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .price {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  align-self: start !important;
  justify-self: end !important;
  position: static !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  background: transparent !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.4px !important;
  color: #9b6f20 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Catégories sous le titre et le prix */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-e-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-e-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-categories {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

/* Bouton panier caché */
body.home .elementor-widget-shortcode ul.products li.product .button,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .button {
  display: none !important;
}

@media only screen and (max-width: 620px) {
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper {
    padding-top: 7px !important;
    column-gap: 7px !important;
  }

  body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title,
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title a,
  body.home .elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title,
  body.home .elementor-widget-shortcode ul.products li.product h2,
  body.home .elementor-widget-shortcode ul.products li.product h3,
  body.home .elementor-widget-shortcode ul.products li.product h4,
  body.home .elementor-widget-shortcode ul.products li.product h5,
  body.home .elementor-widget-shortcode ul.products li.product .price {
    font-size: 10px !important;
  }
}

/* =========================================================
   SHOP — CARTES IDENTIQUES À LA PAGE NEW IN
   - Largeur compacte
   - Produits centrés
   - Image entière
   - Titre à gauche, prix à droite
   - Catégories en pastilles dessous
   À conserver tout en bas du CSS.
========================================================= */

/* Grille compacte : les colonnes vides se referment automatiquement */
body.page-id-54 .gdw-shop-products ul.products,
body.elementor-page-54 .gdw-shop-products ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 320px)) !important;
  justify-content: center !important;
  align-items: start !important;
  gap: 30px !important;
  width: 100% !important;
  max-width: 1380px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* Carte transparente : seul le visuel conserve son cadre */
body.page-id-54 .gdw-shop-products ul.products li.product,
body.elementor-page-54 .gdw-shop-products ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 320px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Wrapper image */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-inner,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-image,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pl-inner,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pl-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 8px !important;
  box-shadow: 0 7px 20px rgba(43, 26, 18, 0.07) !important;
  overflow: hidden !important;
}

/* Image entière, sans recadrage */
body.page-id-54 .gdw-shop-products ul.products li.product img,
body.elementor-page-54 .gdw-shop-products ul.products li.product img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(138, 106, 47, 0.16) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

/* Bloc texte sous l'image */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-text-holder,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pl-text-wrapper,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pl-text,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pli-text,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pli-text-holder {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  column-gap: 10px !important;
  row-gap: 5px !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 8px 2px 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Titre */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-title,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-title a,
body.page-id-54 .gdw-shop-products ul.products li.product .woocommerce-loop-product__title,
body.page-id-54 .gdw-shop-products ul.products li.product h2,
body.page-id-54 .gdw-shop-products ul.products li.product h3,
body.page-id-54 .gdw-shop-products ul.products li.product h4,
body.page-id-54 .gdw-shop-products ul.products li.product h5 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  text-align: left !important;
  color: #2b160e !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* Prix */
body.page-id-54 .gdw-shop-products ul.products li.product .price,
body.page-id-54 .gdw-shop-products ul.products li.product > .price,
body.elementor-page-54 .gdw-shop-products ul.products li.product .price,
body.elementor-page-54 .gdw-shop-products ul.products li.product > .price {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  align-self: start !important;
  justify-self: end !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  transform: none !important;
  background: transparent !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.4px !important;
  color: #9b6f20 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Réaffiche les catégories auparavant masquées */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-e-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-categories,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pli-category-holder,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-plc-category-holder,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-e-categories,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pl-categories,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-product-categories,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-product-list-categories {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 1px 0 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  font-size: inherit !important;
  line-height: normal !important;
  background: transparent !important;
}

/* Pastilles catégories */
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-e-categories a,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-categories a,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-categories a,
body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-categories a,
body.page-id-54 .gdw-shop-products ul.products li.product a[rel="tag"],
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-e-categories a,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-pl-categories a,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-product-categories a,
body.elementor-page-54 .gdw-shop-products ul.products li.product .eltdf-product-list-categories a,
body.elementor-page-54 .gdw-shop-products ul.products li.product a[rel="tag"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  min-height: 22px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 3px 11px !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 1px solid rgba(155, 111, 32, 0.48) !important;
  border-radius: 999px !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.45px !important;
  text-transform: uppercase !important;
  color: #7c551b !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

/* Tablette */
@media only screen and (max-width: 1024px) {
  body.page-id-54 .gdw-shop-products ul.products,
  body.elementor-page-54 .gdw-shop-products ul.products {
    grid-template-columns: repeat(auto-fit, minmax(230px, 290px)) !important;
    gap: 24px !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product,
  body.elementor-page-54 .gdw-shop-products ul.products li.product {
    max-width: 290px !important;
  }
}

/* =========================================================
   GDW — ALIGNEMENT FINAL GALERIE / INFORMATIONS
========================================================= */

@media only screen and (min-width: 1025px) {
  body.single-product div.product .eltdf-single-product-content {
    display: grid !important;
    grid-template-columns: minmax(0, 58%) minmax(0, 42%) !important;
    column-gap: 34px !important;
    align-items: start !important;
    width: 100% !important;
  }

  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery {
    grid-column: 1 !important;
    justify-self: start !important;
    float: none !important;
    width: min(100%, 680px) !important;
    max-width: 680px !important;
    margin: 0 !important;
  }

  body.single-product div.product .eltdf-single-product-summary,
  body.single-product div.product div.summary {
    grid-column: 2 !important;
    justify-self: start !important;
    float: none !important;
    width: min(100%, 500px) !important;
    max-width: 500px !important;
    margin: 0 !important;
    padding: 26px 0 0 !important;
  }
}

/* Le badge Sale du thème créait le carré blanc sur la photo. */
body.single-product .woocommerce-product-gallery .eltdf-onsale {
  display: none !important;
}

/* Replace correctement le cœur dans le coin supérieur droit. */
body.single-product .woocommerce-product-gallery > .tinv-wraper {
  inset: 12px 12px auto auto !important;
  top: 12px !important;
  right: 12px !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 600 !important;
}

@media only screen and (max-width: 1024px) {
  body.single-product div.product .eltdf-single-product-content {
    display: block !important;
  }

  body.single-product .woocommerce-product-gallery > .tinv-wraper {
    inset: 10px 10px auto auto !important;
    top: 10px !important;
    right: 10px !important;
  }
}

/* GDW — PRIORITÉ ABSOLUE : CADRE IDENTIQUE POUR CHAQUE PHOTO */
body.single-product .woocommerce-product-gallery .flex-viewport,
body.single-product .woocommerce-product-gallery__wrapper {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  overflow: hidden !important;
}

body.single-product
.woocommerce-product-gallery__image.gdw-active-image,
body.single-product
.woocommerce-product-gallery__image.gdw-active-image > a {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.single-product
.woocommerce-product-gallery__image.gdw-active-image
> a > img:not(.zoomImg) {
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media only screen and (min-width: 1025px) {
  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery {
    width: min(100%, 570px) !important;
    max-width: 570px !important;
  }
}

/* =========================================================
   GDW — CADRE PHOTO PRODUIT UNIFORME 4:5
   Toutes les photos occupent exactement le même emplacement.
========================================================= */

body.single-product div.product div.woocommerce-product-gallery,
body.single-product div.product div.images.woocommerce-product-gallery {
  position: relative !important;
}

body.single-product .woocommerce-product-gallery .flex-viewport,
body.single-product .woocommerce-product-gallery__wrapper {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  overflow: hidden !important;
}

body.single-product
.woocommerce-product-gallery__image.gdw-active-image {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.single-product
.woocommerce-product-gallery__image.gdw-active-image > a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product
.woocommerce-product-gallery__image.gdw-active-image
> a > img:not(.zoomImg) {
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media only screen and (min-width: 1025px) {
  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery {
    width: min(100%, 570px) !important;
    max-width: 570px !important;
  }
}

@media only screen and (max-width: 1024px) {
  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Mobile : deux produits par ligne, comme New In */
@media only screen and (max-width: 680px) {
  body.page-id-54 .gdw-shop-products ul.products,
  body.elementor-page-54 .gdw-shop-products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: stretch !important;
    gap: 18px 12px !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product,
  body.elementor-page-54 .gdw-shop-products ul.products li.product {
    max-width: none !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-title,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-title a,
  body.page-id-54 .gdw-shop-products ul.products li.product .woocommerce-loop-product__title,
  body.page-id-54 .gdw-shop-products ul.products li.product h2,
  body.page-id-54 .gdw-shop-products ul.products li.product h3,
  body.page-id-54 .gdw-shop-products ul.products li.product h4,
  body.page-id-54 .gdw-shop-products ul.products li.product h5,
  body.page-id-54 .gdw-shop-products ul.products li.product .price {
    font-size: 10px !important;
  }

  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-e-categories a,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-pl-categories a,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-categories a,
  body.page-id-54 .gdw-shop-products ul.products li.product .eltdf-product-list-categories a,
  body.page-id-54 .gdw-shop-products ul.products li.product a[rel="tag"] {
    padding: 3px 8px !important;
    font-size: 8px !important;
  }
}

/* =========================================================
   HOME — NEW IN — ALIGNEMENT FINAL
   Ligne 1 : titre à gauche + prix à droite
   Ligne 2 : catégories sous le titre
   Titre limité à une seule ligne
   À conserver tout en bas du CSS.
========================================================= */

/* Le conteneur texte et son éventuel sous-conteneur deviennent flexibles */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
  column-gap: 10px !important;
  row-gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 8px 2px 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Pas de double padding sur le sous-conteneur */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations {
  padding: 0 !important;
}

/* Titre : première ligne, à gauche, sur une seule ligne */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title,
body.home .elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title,
body.home .elementor-widget-shortcode ul.products li.product h2,
body.home .elementor-widget-shortcode ul.products li.product h3,
body.home .elementor-widget-shortcode ul.products li.product h4,
body.home .elementor-widget-shortcode ul.products li.product h5,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-list-title,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .woocommerce-loop-product__title {
  order: 1 !important;
  flex: 1 1 0 !important;
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.65px !important;
  text-transform: uppercase !important;
  text-align: left !important;
  color: #2b160e !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Lien du titre */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title a,
body.home .elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title a,
body.home .elementor-widget-shortcode ul.products li.product h2 a,
body.home .elementor-widget-shortcode ul.products li.product h3 a,
body.home .elementor-widget-shortcode ul.products li.product h4 a,
body.home .elementor-widget-shortcode ul.products li.product h5 a {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #2b160e !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Prix : première ligne, à droite */
body.home .elementor-widget-shortcode ul.products li.product .price,
body.home .elementor-widget-shortcode ul.products li.product > .price,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .price,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product > .price {
  order: 1 !important;
  flex: 0 0 auto !important;
  display: block !important;
  align-self: flex-start !important;
  width: auto !important;
  min-width: max-content !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  position: static !important;
  transform: none !important;
  background: transparent !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.35px !important;
  color: #9b6f20 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Coupure obligatoire après la ligne titre + prix */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper::after,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper::after,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations::after,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations::after {
  content: "" !important;
  order: 2 !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Tous les conteneurs possibles de catégories passent sous le titre */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-e-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-woo-product-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pli-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pli-category-holder,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-plc-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-plc-category-holder,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-info-category,
body.home .elementor-widget-shortcode ul.products li.product .categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-e-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-list-categories {
  order: 3 !important;
  flex: 0 0 100% !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  background: transparent !important;
  clear: both !important;
}

/* Sécurité si les liens de catégories sont directement dans le conteneur */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > a[rel="tag"],
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations > a[rel="tag"],
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > a[rel="tag"],
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations > a[rel="tag"] {
  order: 3 !important;
  flex: 0 0 auto !important;
  margin-top: 0 !important;
}

/* Mobile */
@media only screen and (max-width: 620px) {
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper {
    column-gap: 7px !important;
    padding-top: 7px !important;
  }

  body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title,
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title a,
  body.home .elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title,
  body.home .elementor-widget-shortcode ul.products li.product h2,
  body.home .elementor-widget-shortcode ul.products li.product h3,
  body.home .elementor-widget-shortcode ul.products li.product h4,
  body.home .elementor-widget-shortcode ul.products li.product h5,
  body.home .elementor-widget-shortcode ul.products li.product .price {
    font-size: 10px !important;
  }
}

/* =========================================================
   HOME — NEW IN — ORDRE FINAL
   Titre d'abord, prix ensuite sur la même ligne,
   catégories en dessous.
   À conserver tout en bas du CSS.
========================================================= */

/* Le titre passe toujours en premier */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-title,
body.home .elementor-widget-shortcode ul.products li.product .woocommerce-loop-product__title,
body.home .elementor-widget-shortcode ul.products li.product h2,
body.home .elementor-widget-shortcode ul.products li.product h3,
body.home .elementor-widget-shortcode ul.products li.product h4,
body.home .elementor-widget-shortcode ul.products li.product h5,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-list-title,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .woocommerce-loop-product__title {
  order: 1 !important;
  flex: 1 1 0 !important;
  margin-right: 0 !important;
}

/* Le prix passe juste après, à droite */
body.home .elementor-widget-shortcode ul.products li.product .price,
body.home .elementor-widget-shortcode ul.products li.product > .price,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .price,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product > .price {
  order: 2 !important;
  flex: 0 0 auto !important;
  margin-left: auto !important;
}

/* La coupure vient uniquement après le prix */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper::after,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper::after,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations::after,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations::after {
  order: 3 !important;
}

/* Les catégories restent sous le titre et le prix */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-e-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-list-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-woo-product-categories,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pli-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pli-category-holder,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-plc-category,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-plc-category-holder,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-product-info-category,
body.home .elementor-widget-shortcode ul.products li.product .categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-e-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-categories,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-product-list-categories {
  order: 4 !important;
}

/* =========================================================
   HOME — NEW IN — STRUCTURE RÉELLE DU SHORTCODE
   Le shortcode génère :
   1) un premier div contenant TITRE + PRIX
   2) un deuxième div contenant les CATÉGORIES
   Cette correction cible directement ces deux div.
   À conserver tout en bas du CSS.
========================================================= */

/* Conteneur général : empile bien les deux sous-blocs */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 6px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 8px 2px 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* PREMIER SOUS-BLOC : titre à gauche + prix à droite */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  align-items: baseline !important;
  column-gap: 10px !important;
  row-gap: 0 !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Titre : première colonne, une seule ligne */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: none !important;
  order: initial !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.65px !important;
  text-transform: uppercase !important;
  text-align: left !important;
  color: #2b160e !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Lien du titre */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5 a,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title a,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5 a,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title a {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #2b160e !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Prix inclus dans le premier sous-bloc */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: inline-flex !important;
  align-items: baseline !important;
  justify-content: flex-end !important;
  justify-self: end !important;
  width: auto !important;
  min-width: max-content !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: none !important;
  order: initial !important;
  position: static !important;
  transform: none !important;
  background: transparent !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.35px !important;
  color: #9b6f20 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

/* Conserve correctement le montant WooCommerce */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-amount,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-currencySymbol,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-amount,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-currencySymbol {
  display: inline !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #9b6f20 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  white-space: nowrap !important;
}

/* DEUXIÈME SOUS-BLOC : catégories obligatoirement en dessous */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:nth-child(2),
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:nth-child(2) {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  clear: both !important;
  position: static !important;
  transform: none !important;
  background: transparent !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Les pastilles des catégories */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:nth-child(2) > *,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:nth-child(2) > * {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* Cache uniquement l'ancien prix WooCommerce dupliqué situé hors du bloc */
body.home .elementor-widget-shortcode ul.products li.product > .price,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product > .price {
  display: none !important;
}

/* Annule les pseudo-éléments de coupure ajoutés précédemment */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper::after,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper::after,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper-variations::after,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper-variations::after {
  content: none !important;
  display: none !important;
}

/* Mobile */
@media only screen and (max-width: 620px) {
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child {
    column-gap: 7px !important;
  }

  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title,
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span {
    font-size: 10px !important;
  }
}

/* =========================================================
   HOME — NEW IN — TYPOGRAPHIE ET COULEUR DU SYMBOLE EURO
   - Même typo que la page New In
   - Titre conservé sur une seule ligne
   - Montant doré
   - Symbole € marron foncé comme le titre
   À conserver tout en bas du CSS.
========================================================= */

/* Titre identique à celui de la page New In */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5 a,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title a,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5 a,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title a {
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.4px !important;
  color: #2b160e !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Montant conservé en doré */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span,
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-amount,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-amount {
  color: #9b6f20 !important;
}

/* Symbole euro assorti au titre */
body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-currencySymbol,
body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > span .woocommerce-Price-currencySymbol {
  color: #2b160e !important;
}

/* Même correction sur petit écran */
@media only screen and (max-width: 620px) {
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
  body.home .elementor-widget-shortcode ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > h5,
  body.home .elementor-widget-shortcode .woocommerce ul.products li.product .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title {
    font-size: 10px !important;
  }
}

/* =========================================================
   PAGE PRODUIT — HAUTEUR ÉCRAN + ESPACEMENTS
   - Petit espace entre le header et le produit principal
   - Image principale limitée à la hauteur visible
   - More Products rapproché des onglets
   À conserver tout en bas du CSS.
========================================================= */

/* Fond et contenu de la fiche produit */
body.single-product .eltdf-content,
body.single-product .eltdf-content-inner,
body.single-product .eltdf-container,
body.single-product .eltdf-container-inner,
body.single-product .eltdf-page-content-holder {
  background-color: #ffffff !important;
}

/* ---------------------------------------------------------
   ORDINATEUR : PRODUIT PRINCIPAL DANS LA HAUTEUR DE L'ÉCRAN
--------------------------------------------------------- */

@media only screen and (min-width: 1025px) {

  /* Petit espace sous le header */
  body.single-product .eltdf-single-product-content,
  body.single-product div.product,
  body.single-product .product.type-product {
    margin-top: 0 !important;
    padding-top: 18px !important;
    box-sizing: border-box !important;
  }

  /* Galerie principale */
  body.single-product .woocommerce-product-gallery,
  body.single-product div.product div.images,
  body.single-product .eltdf-single-product-content .images {
    height: auto !important;
    max-height: calc(100vh - 125px) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    overflow: hidden !important;
  }

  body.single-product .woocommerce-product-gallery__image > a {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    width: 100% !important;
    height: auto !important;
    max-height: calc(100vh - 125px) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  /* Ne pas écraser les largeurs calculées par le carrousel FlexSlider. */
  body.single-product .woocommerce-product-gallery .flex-viewport {
    overflow: hidden !important;
  }

  body.single-product .woocommerce-product-gallery__wrapper {
    max-height: calc(100vh - 125px) !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.single-product .woocommerce-product-gallery__image {
    max-height: calc(100vh - 125px) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  /* Image entière : jamais plus haute que l'écran disponible */
  body.single-product .woocommerce-product-gallery__image img,
  body.single-product div.product div.images img,
  body.single-product .eltdf-single-product-content .images img,
  body.single-product img.wp-post-image {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: calc(100vh - 125px) !important;
    object-fit: contain !important;
    object-position: center top !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  /* La description à droite reste alignée en haut */
  body.single-product div.product div.summary,
  body.single-product .eltdf-single-product-summary {
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
}

/* ---------------------------------------------------------
   TABLETTE ET MOBILE : GARDE UNE IMAGE FLUIDE
--------------------------------------------------------- */

@media only screen and (max-width: 1024px) {

  body.single-product .eltdf-single-product-content,
  body.single-product div.product,
  body.single-product .product.type-product {
    padding-top: 14px !important;
  }

  body.single-product .woocommerce-product-gallery__image img,
  body.single-product div.product div.images img,
  body.single-product .eltdf-single-product-content .images img,
  body.single-product img.wp-post-image {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }
}

/* ---------------------------------------------------------
   ONGLETS PRODUIT : RÉDUIT LE GRAND VIDE
--------------------------------------------------------- */

body.single-product .woocommerce-tabs {
  margin-top: 38px !important;
  margin-bottom: 55px !important;
}

body.single-product .woocommerce-tabs ul.tabs {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.single-product .woocommerce-tabs .panel {
  margin-top: 0 !important;
  padding-top: 18px !important;
}

/* More Products Dokan : rapproche directement la grille */
body.single-product #tab-more_seller_product,
body.single-product #tab-more-products,
body.single-product #tab-more_product,
body.single-product .woocommerce-Tabs-panel--more_seller_product,
body.single-product .woocommerce-Tabs-panel--more-products {
  margin-top: 0 !important;
  padding-top: 16px !important;
}

body.single-product #tab-more_seller_product .woocommerce,
body.single-product #tab-more-products .woocommerce,
body.single-product #tab-more_product .woocommerce,
body.single-product .woocommerce-Tabs-panel--more_seller_product .woocommerce,
body.single-product .woocommerce-Tabs-panel--more-products .woocommerce {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.single-product #tab-more_seller_product ul.products,
body.single-product #tab-more-products ul.products,
body.single-product #tab-more_product ul.products,
body.single-product .woocommerce-Tabs-panel--more_seller_product ul.products,
body.single-product .woocommerce-Tabs-panel--more-products ul.products,
body.single-product .woocommerce-tabs .panel ul.products {
  margin-top: 12px !important;
  padding-top: 0 !important;
}

/* Aucun espace parasite entre l'image et les informations
   des cartes affichées dans More Products */
body.single-product .woocommerce-tabs .panel ul.products li.product img,
body.single-product .woocommerce-tabs .panel ul.products li.product a img {
  margin-bottom: 0 !important;
}

body.single-product .woocommerce-tabs .panel ul.products li.product .eltdf-pl-text-wrapper,
body.single-product .woocommerce-tabs .panel ul.products li.product .eltdf-pl-text-wrapper-variations {
  margin-top: 0 !important;
  padding-top: 7px !important;
}

/* Mobile : onglets et produit un peu plus rapprochés */
@media only screen and (max-width: 680px) {
  body.single-product .woocommerce-tabs {
    margin-top: 28px !important;
    margin-bottom: 42px !important;
  }

  body.single-product .woocommerce-tabs .panel {
    padding-top: 12px !important;
  }

  body.single-product .woocommerce-tabs .panel ul.products {
    margin-top: 8px !important;
  }
}


/* =========================================================
   PAGE PRODUIT — VERSION COMPACTE CORRIGÉE
   - Conserve les dimensions et espacements existants
   - Masque les catégories techniques sous Add to cart
   - Supprime les pointillés du partage
   - Supprime le cadre parasite des produits associés
   - Place le titre et le prix sur la même ligne
   Ce bloc remplace uniquement les anciens blocs de fin
   consacrés à la page produit.
========================================================= */

/* ---------------------------------------------------------
   1. INFORMATIONS DU PRODUIT PRINCIPAL
--------------------------------------------------------- */

body.single-product div.product div.summary .price,
body.single-product .eltdf-single-product-summary .price {
  margin-top: 8px !important;
  margin-bottom: 30px !important;
}

body.single-product div.product div.summary form.cart,
body.single-product .eltdf-single-product-summary form.cart {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

/* Les catégories restent actives dans WooCommerce,
   mais ne sont plus affichées sous le bouton Add to cart. */
body.single-product div.product div.summary .product_meta,
body.single-product .eltdf-single-product-summary .product_meta {
  display: none !important;
}

/* ---------------------------------------------------------
   2. PARTAGE — SUPPRESSION DES POINTILLÉS
--------------------------------------------------------- */

body.single-product div.product div.summary .eltdf-woo-social-share-holder,
body.single-product div.product div.summary .eltdf-social-share-holder,
body.single-product .eltdf-single-product-summary .eltdf-woo-social-share-holder,
body.single-product .eltdf-single-product-summary .eltdf-social-share-holder {
  margin-top: 20px !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: none !important;
}

body.single-product div.product div.summary .eltdf-woo-social-share-holder::before,
body.single-product div.product div.summary .eltdf-woo-social-share-holder::after,
body.single-product div.product div.summary .eltdf-social-share-holder::before,
body.single-product div.product div.summary .eltdf-social-share-holder::after,
body.single-product .eltdf-single-product-summary .eltdf-woo-social-share-holder::before,
body.single-product .eltdf-single-product-summary .eltdf-woo-social-share-holder::after,
body.single-product .eltdf-single-product-summary .eltdf-social-share-holder::before,
body.single-product .eltdf-single-product-summary .eltdf-social-share-holder::after,
body.single-product .eltdf-woo-social-share-holder-inner::before,
body.single-product .eltdf-woo-social-share-holder-inner::after,
body.single-product .eltdf-social-share-holder-inner::before,
body.single-product .eltdf-social-share-holder-inner::after,
body.single-product .eltdf-social-share-links::before,
body.single-product .eltdf-social-share-links::after,
body.single-product .eltdf-social-share-links li::before,
body.single-product .eltdf-social-share-links li::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
}

body.single-product .eltdf-woo-social-share-holder *,
body.single-product .eltdf-social-share-holder * {
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}

/* ---------------------------------------------------------
   3. ONGLETS + DESCRIPTION
--------------------------------------------------------- */

body.single-product .woocommerce-tabs {
  width: 100% !important;
  margin-top: 32px !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.single-product .woocommerce-tabs ul.tabs {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce-Tabs-panel {
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-tabs .panel > *:first-child,
body.single-product .woocommerce-Tabs-panel > *:first-child {
  margin-top: 0 !important;
}

body.single-product .woocommerce-tabs .panel > *:last-child,
body.single-product .woocommerce-Tabs-panel > *:last-child {
  margin-bottom: 0 !important;
}

body.single-product .woocommerce-tabs .panel p,
body.single-product .woocommerce-Tabs-panel p {
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 1.65 !important;
}

/* ---------------------------------------------------------
   4. SECTION RELATED PRODUCTS
--------------------------------------------------------- */

body.single-product section.related.products,
body.single-product .related.products {
  width: 100% !important;
  max-width: 1380px !important;
  margin: 58px auto 0 !important;
  padding: 0 28px 52px !important;
  box-sizing: border-box !important;
  clear: both !important;
}

body.single-product section.related.products > h2,
body.single-product .related.products > h2 {
  margin: 0 0 34px !important;
  padding: 0 !important;
  text-align: center !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 27px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: 1.4px !important;
  text-transform: uppercase !important;
  color: #2b160e !important;
}

body.single-product section.related.products ul.products,
body.single-product .related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 310px)) !important;
  justify-content: center !important;
  align-items: start !important;
  gap: 30px !important;
  width: 100% !important;
  max-width: 1380px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
  clear: both !important;
}

body.single-product section.related.products ul.products::before,
body.single-product section.related.products ul.products::after,
body.single-product .related.products ul.products::before,
body.single-product .related.products ul.products::after {
  content: none !important;
  display: none !important;
}

/* Carte : image sur la première ligne, titre et prix dessous. */
body.single-product section.related.products ul.products li.product,
body.single-product .related.products ul.products li.product {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) max-content !important;
  grid-template-rows: auto auto !important;
  grid-template-areas:
    "related-image related-image"
    "related-title related-price" !important;
  column-gap: 12px !important;
  row-gap: 9px !important;
  align-items: start !important;
  float: none !important;
  clear: none !important;
  width: 100% !important;
  max-width: 310px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* ---------------------------------------------------------
   5. IMAGE — AUCUN CADRE NI TRAIT PARASITE
--------------------------------------------------------- */

body.single-product section.related.products ul.products li.product .eltdf-pl-inner,
body.single-product .related.products ul.products li.product .eltdf-pl-inner {
  grid-area: related-image !important;
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.single-product section.related.products ul.products li.product .eltdf-pl-image,
body.single-product .related.products ul.products li.product .eltdf-pl-image,
body.single-product section.related.products ul.products li.product .eltdf-pl-image a,
body.single-product .related.products ul.products li.product .eltdf-pl-image a {
  display: block !important;
  position: static !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.single-product section.related.products ul.products li.product img,
body.single-product section.related.products ul.products li.product a img,
body.single-product .related.products ul.products li.product img,
body.single-product .related.products ul.products li.product a img {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Le thème ajoute un lien transparent absolu sur l'image.
   Il reste cliquable, mais ne crée plus de bordure. */
body.single-product section.related.products ul.products li.product .eltdf-pl-inner > a.woocommerce-LoopProduct-link,
body.single-product section.related.products ul.products li.product .eltdf-pl-inner > a.woocommerce-loop-product__link,
body.single-product .related.products ul.products li.product .eltdf-pl-inner > a.woocommerce-LoopProduct-link,
body.single-product .related.products ul.products li.product .eltdf-pl-inner > a.woocommerce-loop-product__link {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

body.single-product section.related.products ul.products li.product .eltdf-pl-inner::before,
body.single-product section.related.products ul.products li.product .eltdf-pl-inner::after,
body.single-product section.related.products ul.products li.product .eltdf-pl-image::before,
body.single-product section.related.products ul.products li.product .eltdf-pl-image::after,
body.single-product section.related.products ul.products li.product .eltdf-pl-inner > a::before,
body.single-product section.related.products ul.products li.product .eltdf-pl-inner > a::after,
body.single-product .related.products ul.products li.product .eltdf-pl-inner::before,
body.single-product .related.products ul.products li.product .eltdf-pl-inner::after,
body.single-product .related.products ul.products li.product .eltdf-pl-image::before,
body.single-product .related.products ul.products li.product .eltdf-pl-image::after,
body.single-product .related.products ul.products li.product .eltdf-pl-inner > a::before,
body.single-product .related.products ul.products li.product .eltdf-pl-inner > a::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
  background: none !important;
}

/* Cache uniquement le texte de survol situé sur l'image. */
body.single-product section.related.products ul.products li.product .eltdf-pl-inner .eltdf-pl-text,
body.single-product .related.products ul.products li.product .eltdf-pl-inner .eltdf-pl-text {
  display: none !important;
}

/* ---------------------------------------------------------
   6. TITRE ET PRIX SUR LA MÊME LIGNE
--------------------------------------------------------- */

body.single-product section.related.products ul.products li.product .eltdf-pl-text-wrapper,
body.single-product .related.products ul.products li.product .eltdf-pl-text-wrapper {
  grid-area: related-title !important;
  display: block !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  transform: none !important;
  box-sizing: border-box !important;
}

body.single-product section.related.products ul.products li.product .eltdf-pl-text-wrapper-variations,
body.single-product .related.products ul.products li.product .eltdf-pl-text-wrapper-variations {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product section.related.products ul.products li.product .eltdf-product-list-title,
body.single-product section.related.products ul.products li.product .eltdf-product-list-title a,
body.single-product section.related.products ul.products li.product .eltdf-pli-title,
body.single-product section.related.products ul.products li.product .eltdf-pli-title a,
body.single-product section.related.products ul.products li.product .eltdf-pl-title,
body.single-product section.related.products ul.products li.product .eltdf-pl-title a,
body.single-product section.related.products ul.products li.product .product-title,
body.single-product section.related.products ul.products li.product .product-title a,
body.single-product section.related.products ul.products li.product .woocommerce-loop-product__title,
body.single-product section.related.products ul.products li.product h2,
body.single-product section.related.products ul.products li.product h3,
body.single-product section.related.products ul.products li.product h4,
body.single-product section.related.products ul.products li.product h5,
body.single-product .related.products ul.products li.product .eltdf-product-list-title,
body.single-product .related.products ul.products li.product .eltdf-product-list-title a,
body.single-product .related.products ul.products li.product .eltdf-pli-title,
body.single-product .related.products ul.products li.product .eltdf-pli-title a,
body.single-product .related.products ul.products li.product .eltdf-pl-title,
body.single-product .related.products ul.products li.product .eltdf-pl-title a,
body.single-product .related.products ul.products li.product .product-title,
body.single-product .related.products ul.products li.product .product-title a,
body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .related.products ul.products li.product h2,
body.single-product .related.products ul.products li.product h3,
body.single-product .related.products ul.products li.product h4,
body.single-product .related.products ul.products li.product h5 {
  display: block !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #2b160e !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.65px !important;
  text-transform: uppercase !important;
  text-align: left !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  transform: none !important;
}

/* Le prix est un élément frère du bloc titre dans la structure Gioia. */
body.single-product section.related.products ul.products li.product > .price,
body.single-product .related.products ul.products li.product > .price {
  grid-area: related-price !important;
  display: inline-flex !important;
  position: static !important;
  align-items: baseline !important;
  justify-content: flex-end !important;
  align-self: start !important;
  justify-self: end !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: auto !important;
  min-width: max-content !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #9b6f20 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  text-align: right !important;
  white-space: nowrap !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Compatibilité si le prix se trouve à l'intérieur du bloc texte. */
body.single-product section.related.products ul.products li.product .eltdf-pl-text-wrapper .price,
body.single-product .related.products ul.products li.product .eltdf-pl-text-wrapper .price {
  display: none !important;
}

/* Catégories internes des cartes associées masquées. */
body.single-product section.related.products ul.products li.product .eltdf-e-categories,
body.single-product section.related.products ul.products li.product .eltdf-pl-categories,
body.single-product section.related.products ul.products li.product .eltdf-product-categories,
body.single-product section.related.products ul.products li.product .eltdf-product-list-categories,
body.single-product .related.products ul.products li.product .eltdf-e-categories,
body.single-product .related.products ul.products li.product .eltdf-pl-categories,
body.single-product .related.products ul.products li.product .eltdf-product-categories,
body.single-product .related.products ul.products li.product .eltdf-product-list-categories {
  display: none !important;
}

/* ---------------------------------------------------------
   7. TABLETTE ET MOBILE
--------------------------------------------------------- */

@media only screen and (max-width: 1024px) {
  body.single-product section.related.products,
  body.single-product .related.products {
    margin-top: 46px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-bottom: 44px !important;
  }

  body.single-product section.related.products ul.products,
  body.single-product .related.products ul.products {
    grid-template-columns: repeat(auto-fit, minmax(220px, 280px)) !important;
    gap: 24px !important;
  }
}

@media only screen and (max-width: 680px) {
  body.single-product .woocommerce-tabs {
    margin-top: 24px !important;
  }

  body.single-product .woocommerce-tabs ul.tabs {
    margin-bottom: 18px !important;
  }

  body.single-product section.related.products,
  body.single-product .related.products {
    margin-top: 38px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-bottom: 36px !important;
  }

  body.single-product section.related.products > h2,
  body.single-product .related.products > h2 {
    margin-bottom: 24px !important;
    font-size: 22px !important;
  }

  body.single-product section.related.products ul.products,
  body.single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px 12px !important;
  }

  body.single-product section.related.products ul.products li.product,
  body.single-product .related.products ul.products li.product {
    max-width: none !important;
  }

  body.single-product section.related.products ul.products li.product .eltdf-product-list-title,
  body.single-product section.related.products ul.products li.product .eltdf-product-list-title a,
  body.single-product section.related.products ul.products li.product .eltdf-pli-title,
  body.single-product section.related.products ul.products li.product .eltdf-pli-title a,
  body.single-product section.related.products ul.products li.product .eltdf-pl-title,
  body.single-product section.related.products ul.products li.product .eltdf-pl-title a,
  body.single-product section.related.products ul.products li.product .product-title,
  body.single-product section.related.products ul.products li.product .product-title a,
  body.single-product section.related.products ul.products li.product .woocommerce-loop-product__title,
  body.single-product section.related.products ul.products li.product h2,
  body.single-product section.related.products ul.products li.product h3,
  body.single-product section.related.products ul.products li.product h4,
  body.single-product section.related.products ul.products li.product h5,
  body.single-product .related.products ul.products li.product .eltdf-product-list-title,
  body.single-product .related.products ul.products li.product .eltdf-product-list-title a,
  body.single-product .related.products ul.products li.product .eltdf-pli-title,
  body.single-product .related.products ul.products li.product .eltdf-pli-title a,
  body.single-product .related.products ul.products li.product .eltdf-pl-title,
  body.single-product .related.products ul.products li.product .eltdf-pl-title a,
  body.single-product .related.products ul.products li.product .product-title,
  body.single-product .related.products ul.products li.product .product-title a,
  body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
  body.single-product .related.products ul.products li.product h2,
  body.single-product .related.products ul.products li.product h3,
  body.single-product .related.products ul.products li.product h4,
  body.single-product .related.products ul.products li.product h5,
  body.single-product section.related.products ul.products li.product > .price,
  body.single-product .related.products ul.products li.product > .price {
    font-size: 10px !important;
  }
}

/* =========================================================
   PAGE PRODUIT — AJUSTEMENTS PREMIUM FINAUX
   Uniquement la fiche produit : aucune autre page modifiée.
========================================================= */

/* ---------------------------------------------------------
   1. TITRE PRODUIT PLUS ÉQUILIBRÉ
--------------------------------------------------------- */

@media only screen and (min-width: 1025px) {
  body.single-product .eltdf-single-product-title,
  body.single-product div.product .product_title,
  body.single-product div.product .entry-title {
    font-size: 46px !important;
    line-height: 1.08 !important;
    letter-spacing: 0.4px !important;
    margin-bottom: 14px !important;
  }
}

@media only screen and (min-width: 681px) and (max-width: 1024px) {
  body.single-product .eltdf-single-product-title,
  body.single-product div.product .product_title,
  body.single-product div.product .entry-title {
    font-size: 39px !important;
    line-height: 1.08 !important;
  }
}

@media only screen and (max-width: 680px) {
  body.single-product .eltdf-single-product-title,
  body.single-product div.product .product_title,
  body.single-product div.product .entry-title {
    font-size: 32px !important;
    line-height: 1.1 !important;
  }
}

/* ---------------------------------------------------------
   2. QUANTITÉ + PANIER SUR UNE LIGNE
   La wishlist est placée sur l’image, en haut à droite.
--------------------------------------------------------- */

body.single-product div.product div.summary form.cart,
body.single-product .eltdf-single-product-summary form.cart {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.single-product div.product div.summary form.cart .quantity,
body.single-product .eltdf-single-product-summary form.cart .quantity,
body.single-product div.product div.summary form.cart .single_add_to_cart_button,
body.single-product .eltdf-single-product-summary form.cart .single_add_to_cart_button {
  float: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ---------------------------------------------------------
   3. PARTAGE MASQUÉ POUR UNE FICHE PLUS ÉPURÉE
--------------------------------------------------------- */

body.single-product div.product div.summary .eltdf-woo-social-share-holder,
body.single-product div.product div.summary .eltdf-social-share-holder,
body.single-product .eltdf-single-product-summary .eltdf-woo-social-share-holder,
body.single-product .eltdf-single-product-summary .eltdf-social-share-holder {
  display: none !important;
}

/* ---------------------------------------------------------
   4. ONGLETS DU BAS
   Description, Shipping et Warranty restent affichés.
   Seul More Products est masqué.
--------------------------------------------------------- */

body.single-product .woocommerce-tabs ul.tabs li.more_seller_product_tab,
body.single-product .woocommerce-tabs ul.tabs li.more-products_tab,
body.single-product .woocommerce-tabs ul.tabs li.more_product_tab,
body.single-product #tab-more_seller_product,
body.single-product #tab-more-products,
body.single-product #tab-more_product,
body.single-product .woocommerce-Tabs-panel--more_seller_product,
body.single-product .woocommerce-Tabs-panel--more-products,
body.single-product .woocommerce-Tabs-panel--more_product {
  display: none !important;
}

/* ---------------------------------------------------------
   5. PRODUITS ASSOCIÉS PLUS DISCRETS
--------------------------------------------------------- */

body.single-product section.related.products,
body.single-product .related.products {
  margin-top: 48px !important;
  padding-bottom: 26px !important;
}

body.single-product section.related.products > h2,
body.single-product .related.products > h2 {
  margin-bottom: 28px !important;
}

body.single-product section.related.products ul.products,
body.single-product .related.products ul.products {
  grid-template-columns: repeat(auto-fit, minmax(250px, 300px)) !important;
  gap: 28px !important;
}

body.single-product section.related.products ul.products li.product,
body.single-product .related.products ul.products li.product {
  max-width: 300px !important;
}

@media only screen and (max-width: 1024px) {
  body.single-product section.related.products,
  body.single-product .related.products {
    margin-top: 42px !important;
    padding-bottom: 24px !important;
  }

  body.single-product section.related.products ul.products,
  body.single-product .related.products ul.products {
    grid-template-columns: repeat(auto-fit, minmax(220px, 280px)) !important;
  }

  body.single-product section.related.products ul.products li.product,
  body.single-product .related.products ul.products li.product {
    max-width: 280px !important;
  }
}

@media only screen and (max-width: 680px) {
  body.single-product section.related.products,
  body.single-product .related.products {
    margin-top: 34px !important;
    padding-bottom: 22px !important;
  }

  body.single-product section.related.products ul.products,
  body.single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 12px !important;
  }

  body.single-product section.related.products ul.products li.product,
  body.single-product .related.products ul.products li.product {
    max-width: none !important;
  }
}

/* =========================================================
   GDW — FINITIONS FICHE PRODUIT
   - Description courte sous le prix
   - Ligne dorée sous l’onglet actif
   - Mise en page prête pour 3 produits associés
   Ce bloc ne cible que les fiches produit.
========================================================= */

/* ---------------------------------------------------------
   1. DESCRIPTION COURTE SOUS LE PRIX
--------------------------------------------------------- */

body.single-product
.eltdf-single-product-summary
.woocommerce-product-details__short-description,
body.single-product
div.product div.summary
.woocommerce-product-details__short-description {
  display: block !important;
  width: 100% !important;
  max-width: 430px !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
  color: #4f443d !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.single-product
.eltdf-single-product-summary
.woocommerce-product-details__short-description p,
body.single-product
div.product div.summary
.woocommerce-product-details__short-description p {
  margin: 0 !important;
  padding: 0 !important;
}

/* Quand la description courte existe, rapproche-la du prix. */
body.single-product
.eltdf-single-product-summary:has(.woocommerce-product-details__short-description)
.price,
body.single-product
div.product div.summary:has(.woocommerce-product-details__short-description)
.price {
  margin-bottom: 14px !important;
}

/* ---------------------------------------------------------
   2. LIGNE DORÉE SOUS L’ONGLET ACTIF
--------------------------------------------------------- */

body.single-product .woocommerce-tabs ul.tabs li a {
  position: relative !important;
  display: inline-block !important;
  padding-bottom: 12px !important;
}

body.single-product .woocommerce-tabs ul.tabs li.active a::after,
body.single-product .woocommerce-tabs ul.tabs li.ui-tabs-active a::after,
body.single-product .woocommerce-tabs ul.tabs li[aria-selected="true"] a::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 0 !important;
  width: 36px !important;
  height: 1px !important;
  transform: translateX(-50%) !important;
  background: #c99732 !important;
}

/* ---------------------------------------------------------
   3. TROIS PRODUITS ASSOCIÉS SUR ORDINATEUR
   Le nombre réel est défini par le snippet PHP fourni.
--------------------------------------------------------- */

@media only screen and (min-width: 1025px) {
  body.single-product section.related.products ul.products,
  body.single-product .related.products ul.products {
    grid-template-columns: repeat(3, minmax(0, 300px)) !important;
    max-width: 960px !important;
  }

  body.single-product section.related.products ul.products li.product,
  body.single-product .related.products ul.products li.product {
    max-width: 300px !important;
  }
}

/* Tablette : deux cartes. */
@media only screen and (min-width: 681px) and (max-width: 1024px) {
  body.single-product section.related.products ul.products,
  body.single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 280px)) !important;
    max-width: 590px !important;
  }
}

/* Mobile : une carte lisible par ligne. */
@media only screen and (max-width: 680px) {
  body.single-product section.related.products ul.products,
  body.single-product .related.products ul.products {
    grid-template-columns: minmax(0, 300px) !important;
    max-width: 300px !important;
  }
}
/* =========================================================
   GDW — CORRECTION FINALE FICHE PRODUIT
   Le snippet WPCode déplace la wishlist dans la galerie et
   calcule sa position à partir de l’image principale réelle.
========================================================= */

body.single-product .woocommerce-product-gallery {
  position: relative !important;
  overflow: visible !important;
}

/* Conteneur wishlist déplacé dans la galerie par WPCode */
body.single-product
.woocommerce-product-gallery
> .tinv-wraper {
  position: absolute !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;

  display: block !important;
  width: 50px !important;
  min-width: 50px !important;
  height: 50px !important;
  min-height: 50px !important;

  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;

  z-index: 300 !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Bouton */
body.single-product
.woocommerce-product-gallery
> .tinv-wraper
a.tinvwl_add_to_wishlist_button {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 50px !important;
  min-width: 50px !important;
  height: 50px !important;
  min-height: 50px !important;

  margin: 0 !important;
  padding: 0 !important;

  color: #2b1a12 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;

  visibility: visible !important;
  opacity: 1 !important;
}

/* Cœur plus grand */
body.single-product
.woocommerce-product-gallery
> .tinv-wraper
a.tinvwl_add_to_wishlist_button::before {
  position: static !important;
  display: block !important;

  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;

  color: #2b1a12 !important;
  font-size: 31px !important;
  line-height: 1 !important;
  transform: none !important;
}

body.single-product
.woocommerce-product-gallery
> .tinv-wraper
a.tinvwl-product-in-list::before {
  color: #c58b22 !important;
}

body.single-product
.woocommerce-product-gallery
> .tinv-wraper
.tinvwl-tooltip {
  display: none !important;
}

@media only screen and (max-width: 680px) {
  body.single-product
  .woocommerce-product-gallery
  > .tinv-wraper,
  body.single-product
  .woocommerce-product-gallery
  > .tinv-wraper
  a.tinvwl_add_to_wishlist_button {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }

  body.single-product
  .woocommerce-product-gallery
  > .tinv-wraper
  a.tinvwl_add_to_wishlist_button::before {
    font-size: 28px !important;
  }
}

/* =========================================================
   GOLDEN DUST WEAR — PAGE WISHLIST
   TI WooCommerce Wishlist — version finale raffinée
   ========================================================= */

/* ---------------------------------------------------------
   1. ESPACEMENT DE LA PAGE
   Modifie uniquement la page qui contient la wishlist.
--------------------------------------------------------- */

body:has(.tinv-wishlist) .eltdf-content,
body:has(.tinv-wishlist) .eltdf-content-inner,
body:has(.tinv-wishlist) .eltdf-container,
body:has(.tinv-wishlist) .eltdf-container-inner,
body:has(.tinv-wishlist) .eltdf-page-content-holder,
body:has(.tinv-wishlist) .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.tinv-wishlist {
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 20px 30px 76px !important;
  box-sizing: border-box !important;
}

.tinv-wishlist .tinv-header {
  margin: 0 0 18px !important;
  padding: 0 !important;
}

.tinv-wishlist .tinv-header h1,
.tinv-wishlist .tinv-header h2,
.tinv-wishlist .tinv-header h3 {
  margin: 0 !important;
  padding: 0 !important;
}

/* ---------------------------------------------------------
   2. TRANSFORMATION DU TABLEAU EN GRILLE DE CARTES
   La grille reste prête à accueillir plusieurs articles.
--------------------------------------------------------- */

.tinv-wishlist table.tinvwl-table-manage-list {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-collapse: initial !important;
  border-spacing: 0 !important;
}

.tinv-wishlist table.tinvwl-table-manage-list thead,
.tinv-wishlist table.tinvwl-table-manage-list tfoot {
  display: none !important;
}

.tinv-wishlist table.tinvwl-table-manage-list tbody {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 340px)) !important;
  justify-content: flex-start !important;
  align-items: start !important;
  gap: 28px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 340px !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 12px 12px 16px !important;
  overflow: visible !important;
  background: #fffdf8 !important;
  border: 1px solid rgba(43, 26, 18, 0.10) !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

.tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item > td {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

/* ---------------------------------------------------------
   3. MASQUER COMPLÈTEMENT LE STOCK
--------------------------------------------------------- */

.tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item > td.product-stock,
.tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item > td.product-stock *,
.tinv-wishlist .product-stock,
.tinv-wishlist .product-stock p,
.tinv-wishlist .product-stock span {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* ---------------------------------------------------------
   4. ORDRE DES ÉLÉMENTS
--------------------------------------------------------- */

.tinv-wishlist td.product-thumbnail {
  order: 1 !important;
}

.tinv-wishlist td.product-name {
  order: 2 !important;
}

.tinv-wishlist td.product-price {
  order: 3 !important;
}

.tinv-wishlist td.product-action {
  order: 4 !important;
}

/* ---------------------------------------------------------
   5. IMAGE PRODUIT
--------------------------------------------------------- */

.tinv-wishlist td.product-thumbnail {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.tinv-wishlist td.product-thumbnail a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.tinv-wishlist td.product-thumbnail img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
  border: 0 !important;
  box-shadow: none !important;
  transition: transform 0.35s ease !important;
}

.tinv-wishlist tr.wishlist_item:hover td.product-thumbnail img {
  transform: scale(1.015) !important;
}

/* ---------------------------------------------------------
   6. CROIX PLUS PETITE ET PLUS DISCRÈTE
--------------------------------------------------------- */

.tinv-wishlist table.tinvwl-table-manage-list
tr.wishlist_item > td.product-remove {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 50 !important;
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.tinv-wishlist td.product-remove button {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #2a160d !important;
  background: rgba(255, 255, 255, 0.90) !important;
  border: 1px solid rgba(43, 26, 18, 0.16) !important;
  border-radius: 0 !important;
  font-size: 0 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.tinv-wishlist td.product-remove button::before,
.tinv-wishlist td.product-remove button::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  display: block !important;
  width: 7px !important;
  height: 1px !important;
  margin: 0 !important;
  background: #2a160d !important;
  transform-origin: center center !important;
}

.tinv-wishlist td.product-remove button::before {
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

.tinv-wishlist td.product-remove button::after {
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.tinv-wishlist td.product-remove button:hover {
  background: #fff !important;
  border-color: #b98221 !important;
}

/* ---------------------------------------------------------
   7. NOM, PRIX ET BOUTON
   Espacements appliqués directement aux cellules pour éviter
   que le thème ne les annule.
--------------------------------------------------------- */

.tinv-wishlist table.tinvwl-table-manage-list
tr.wishlist_item > td.product-name {
  margin: 0 !important;
  padding: 11px 2px 0 !important;
}

.tinv-wishlist td.product-name a {
  display: block !important;
  color: #2a160d !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  letter-spacing: 0.055em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.tinv-wishlist table.tinvwl-table-manage-list
tr.wishlist_item > td.product-price {
  margin: 0 !important;
  padding: 4px 2px 0 !important;
  color: #2a160d !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

.tinv-wishlist td.product-price ins {
  text-decoration: none !important;
}

.tinv-wishlist table.tinvwl-table-manage-list
tr.wishlist_item > td.product-action {
  margin: 0 !important;
  padding: 14px 0 0 !important;
}

.tinv-wishlist td.product-action .button,
.tinv-wishlist td.product-action button,
.tinv-wishlist td.product-action a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  color: #d39a27 !important;
  background: #2a160d !important;
  border: 1px solid #2a160d !important;
  border-radius: 0 !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.12em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.tinv-wishlist td.product-action .button:hover,
.tinv-wishlist td.product-action button:hover,
.tinv-wishlist td.product-action a:hover {
  color: #2a160d !important;
  background: #b98221 !important;
  border-color: #b98221 !important;
}

/* ---------------------------------------------------------
   8. TABLETTE
--------------------------------------------------------- */

@media screen and (max-width: 1024px) {
  .tinv-wishlist {
    padding: 18px 24px 66px !important;
  }

  .tinv-wishlist .tinv-header {
    margin-bottom: 18px !important;
  }

  .tinv-wishlist table.tinvwl-table-manage-list tbody {
    grid-template-columns: repeat(2, minmax(0, 320px)) !important;
    gap: 24px !important;
  }

  .tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item {
    width: 320px !important;
  }
}

/* ---------------------------------------------------------
   9. MOBILE
--------------------------------------------------------- */

@media screen and (max-width: 600px) {
  .tinv-wishlist {
    padding: 16px 16px 54px !important;
  }

  .tinv-wishlist .tinv-header {
    margin-bottom: 16px !important;
  }

  .tinv-wishlist table.tinvwl-table-manage-list tbody {
    grid-template-columns: minmax(0, 1fr) !important;
    justify-content: stretch !important;
    gap: 20px !important;
  }

  .tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item {
    width: 100% !important;
    padding: 10px 10px 14px !important;
  }

  .tinv-wishlist table.tinvwl-table-manage-list
  tr.wishlist_item > td.product-remove {
    top: 17px !important;
    right: 17px !important;
  }

  .tinv-wishlist table.tinvwl-table-manage-list
  tr.wishlist_item > td.product-name {
    padding-top: 10px !important;
  }

  .tinv-wishlist table.tinvwl-table-manage-list
  tr.wishlist_item > td.product-action {
    padding-top: 12px !important;
  }
}

/* =========================================================
   GDW - BADGE NOMBRE D'ARTICLES SUR LE PANIER DU HEADER
   Le nombre est injecté et actualisé par le snippet WPCode PHP.
========================================================= */

.eltdf-shopping-cart-holder,
.eltdf-shopping-cart-holder .eltdf-header-cart,
.eltdf-shopping-cart-holder > a {
  position: relative !important;
  overflow: visible !important;
}

.gdw-cart-count {
  position: absolute !important;
  top: -7px !important;
  right: -9px !important;
  z-index: 50 !important;

  display: none !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 16px !important;
  height: 16px !important;
  padding: 0 4px !important;
  box-sizing: border-box !important;

  border: 0 !important;
  border-radius: 999px !important;
  background: #d39a2d !important;
  box-shadow: 0 0 0 2px #2a160d !important;

  color: #2a160d !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

.gdw-cart-count.is-visible {
  display: inline-flex !important;
}

@media only screen and (max-width: 900px) {
  .gdw-cart-count {
    top: -5px !important;
    right: -8px !important;
    min-width: 15px !important;
    height: 15px !important;
    padding: 0 3px !important;
    font-size: 8px !important;
    line-height: 15px !important;
  }
}


/* =========================================================
   CORRECTIF BADGE PANIER — HEADER PERSONNALISÉ GDW
   À ajouter tout en bas du CSS actuel.
========================================================= */

html body .gdw-header-actions,
html body .gdw-header-cart,
html body a.gdw-header-cart {
  overflow: visible !important;
}

html body .gdw-header-cart,
html body a.gdw-header-cart {
  position: relative !important;
}

html body .gdw-header-cart .gdw-cart-count,
html body a.gdw-header-cart .gdw-cart-count {
  position: absolute !important;
  top: -8px !important;
  right: -10px !important;
  z-index: 999999 !important;

  display: none !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 17px !important;
  height: 17px !important;
  padding: 0 4px !important;
  box-sizing: border-box !important;

  border: 0 !important;
  border-radius: 999px !important;
  background: #d39a2d !important;
  box-shadow: 0 0 0 2px #2a160d !important;

  color: #2a160d !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  line-height: 17px !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  pointer-events: none !important;
}

html body .gdw-header-cart .gdw-cart-count.is-visible,
html body a.gdw-header-cart .gdw-cart-count.is-visible {
  display: inline-flex !important;
}

@media only screen and (max-width: 900px) {
  html body .gdw-header-cart .gdw-cart-count,
  html body a.gdw-header-cart .gdw-cart-count {
    top: -6px !important;
    right: -8px !important;
    min-width: 15px !important;
    height: 15px !important;
    padding: 0 3px !important;
    font-size: 8px !important;
    line-height: 15px !important;
  }
}

/* =========================
   HOME - NEW IN
   ========================= */

.gdw-home-newin {
  padding-bottom: 28px !important;
}

.gdw-home-newin .elementor-widget-shortcode,
.gdw-home-newin .elementor-shortcode,
.gdw-home-newin .woocommerce {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.gdw-home-newin ul.products {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center !important;
  align-items: flex-start;
  gap: 34px;
  margin: 0 auto 10px !important;
  padding: 0 !important;
}

.gdw-home-newin ul.products li.product {
  width: 100%;
  max-width: 365px; /* environ 10% plus grand */
  margin: 0 !important;
  padding: 0 !important;
}

.gdw-home-newin ul.products li.product img {
  width: 100%;
  height: auto;
  display: block;
}

.gdw-home-newin ul.products li.product .price,
.gdw-home-newin ul.products li.product .woocommerce-loop-product__title,
.gdw-home-newin ul.products li.product h2,
.gdw-home-newin ul.products li.product h3 {
  margin-bottom: 8px !important;
}

.gdw-home-newin ul.products li.product .button,
.gdw-home-newin ul.products li.product .added_to_cart,
.gdw-home-newin .woocommerce-pagination {
  display: none !important;
}

/* Réduit l’espace sous chaque carte */
.gdw-home-newin ul.products li.product,
.gdw-home-newin ul.products li.product .product-inner,
.gdw-home-newin ul.products li.product .inner,
.gdw-home-newin ul.products li.product .content {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* TAGS : on n’en garde que 2 visibles */
.gdw-home-newin .gdw-product-tags > *:nth-child(n+3),
.gdw-home-newin .product-tags > *:nth-child(n+3),
.gdw-home-newin .tagged-as > *:nth-child(n+3) {
  display: none !important;
}

/* Style du tag +X ajouté en JS */
.gdw-home-newin .gdw-tag-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 10px;
  border: 1px solid #c9a35f;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  color: #7a5a2b;
  margin: 4px 6px 0 0;
  white-space: nowrap;
}

/* Mobile */
@media (max-width: 767px) {
  .gdw-home-newin ul.products {
    gap: 22px;
  }

  .gdw-home-newin ul.products li.product {
    max-width: 100%;
  }
}
/* FOOTER PLUS COMPACT */

.eltdf-page-footer .eltdf-footer-top-holder .eltdf-footer-top-inner {
  padding-top: 34px !important;
  padding-bottom: 18px !important;
}

.eltdf-page-footer .eltdf-footer-bottom-holder .eltdf-footer-bottom-inner {
  padding-top: 14px !important;
  padding-bottom: 18px !important;
}

.eltdf-page-footer .widget {
  margin-bottom: 8px !important;
}

.eltdf-page-footer p {
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}

/* Mobile */
@media (max-width: 768px) {
  .eltdf-page-footer .eltdf-footer-top-holder .eltdf-footer-top-inner {
    padding-top: 26px !important;
    padding-bottom: 14px !important;
  }

  .eltdf-page-footer .eltdf-footer-bottom-holder .eltdf-footer-bottom-inner {
    padding-top: 12px !important;
    padding-bottom: 15px !important;
  }
}

/* =========================================================
   GDW — PANIER FINAL PROPRE
   Remplace tous les anciens correctifs empilés du panier.
   Desktop, tablette et mobile sont séparés proprement.
========================================================= */

/* ---------------------------------------------------------
   BASE COMMUNE
--------------------------------------------------------- */

/* Supprime l'espace Elementor inutile au-dessus et sous le panier. */
body.woocommerce-cart .elementor-element-3c934ec,
body.woocommerce-cart .elementor-element-3c934ec > .e-con-inner,
body.woocommerce-cart .elementor-widget-shortcode,
body.woocommerce-cart .elementor-widget-shortcode > .elementor-widget-container {
  margin-top: 0 !important;
  padding-top: 0 !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Conteneur principal. */
body.woocommerce-cart .woocommerce {
  width: calc(100% - 48px) !important;
  max-width: 1360px !important;
  margin: 0 auto !important;
  padding: 20px 0 48px !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .woocommerce-cart-form table.cart {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Le bouton Update cart reste disponible techniquement,
   mais n'est pas visible pour l'utilisateur. */
body.woocommerce-cart
.woocommerce-cart-form button[name="update_cart"],
body.woocommerce-cart
.woocommerce-cart-form input[name="update_cart"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 1px !important;
  min-height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Coupon commun. */
body.woocommerce-cart
.woocommerce-cart-form table.cart td.actions {
  box-sizing: border-box !important;
}

body.woocommerce-cart
.woocommerce-cart-form table.cart td.actions .coupon {
  float: none !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart
.woocommerce-cart-form table.cart td.actions .coupon .input-text,
body.woocommerce-cart
.woocommerce-cart-form table.cart td.actions .coupon input,
body.woocommerce-cart
.woocommerce-cart-form table.cart td.actions .coupon button {
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* Carte Cart Totals commune. */
body.woocommerce-cart .cart-collaterals .cart_totals {
  background: #fffdf8 !important;
  border: 1px solid rgba(201, 151, 50, 0.24) !important;
  box-shadow: 0 10px 30px rgba(43, 26, 18, 0.045) !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals h2 {
  color: #24150f !important;
  font-family: "Bebas Neue", sans-serif !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  letter-spacing: 1.2px !important;
  text-transform: uppercase !important;
}

/* Bouton checkout brun et or. */
body.woocommerce-cart .wc-proceed-to-checkout {
  padding: 20px 0 0 !important;
}

body.woocommerce-cart
.wc-proceed-to-checkout a.checkout-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 14px 22px !important;
  background: #2a160d !important;
  border: 1px solid #2a160d !important;
  border-radius: 0 !important;
  color: #d39a2d !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 1.8px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart
.wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart
.wc-proceed-to-checkout a.checkout-button:focus {
  background: #2a160d !important;
  border-color: #2a160d !important;
  color: #d39a2d !important;
}

/* ---------------------------------------------------------
   DESKTOP — 1025 px ET PLUS
--------------------------------------------------------- */

@media only screen and (min-width: 1025px) {

  body.woocommerce-cart
  .woocommerce-cart-form table.cart {
    table-layout: fixed !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart th,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td {
    box-sizing: border-box !important;
    vertical-align: middle !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart th.product-remove,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove {
    width: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    padding-left: 0 !important;
    padding-right: 8px !important;
    text-align: left !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart th.product-thumbnail,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail {
    width: 108px !important;
    min-width: 108px !important;
    max-width: 108px !important;
    padding-left: 0 !important;
    padding-right: 18px !important;
    text-align: left !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail img {
    display: block !important;
    width: 86px !important;
    height: 86px !important;
    max-width: 86px !important;
    margin: 0 !important;
    object-fit: cover !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart th.product-name,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name {
    width: auto !important;
    padding-left: 0 !important;
    padding-right: 26px !important;
    text-align: left !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart th.product-price,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price {
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart th.product-quantity,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity {
    width: 180px !important;
    min-width: 180px !important;
    max-width: 180px !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart th.product-subtotal,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal {
    width: 125px !important;
    min-width: 125px !important;
    max-width: 125px !important;
    padding-right: 0 !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions {
    display: block !important;
    width: 100% !important;
    min-height: 82px !important;
    padding: 26px 0 0 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon {
    display: flex !important;
    align-items: stretch !important;
    flex-wrap: nowrap !important;
    gap: 14px !important;
    width: 500px !important;
    max-width: calc(100% - 500px) !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon .input-text {
    flex: 0 0 230px !important;
    width: 230px !important;
    min-width: 0 !important;
    min-height: 54px !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon button {
    flex: 0 0 250px !important;
    width: 250px !important;
    min-width: 0 !important;
    min-height: 54px !important;
  }

  body.woocommerce-cart .cart-collaterals {
    display: block !important;
    float: none !important;
    clear: none !important;
    position: relative !important;
    z-index: 2 !important;
    width: 470px !important;
    max-width: 470px !important;
    margin: -60px 0 0 auto !important;
    padding: 0 !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 26px 26px 24px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals h2 {
    margin: 0 0 16px !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals table th {
    width: 150px !important;
    padding-right: 18px !important;
  }
}

/* ---------------------------------------------------------
   TABLETTE — 621 px À 1024 px
--------------------------------------------------------- */

@media only screen and (min-width: 621px) and (max-width: 1024px) {

  body.woocommerce-cart .woocommerce {
    width: calc(100% - 40px) !important;
    max-width: 900px !important;
    padding: 26px 0 42px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form,
  body.woocommerce-cart .woocommerce-cart-form table.cart,
  body.woocommerce-cart .woocommerce-cart-form table.cart tbody {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart thead {
    display: none !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart tr.cart_item,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  tr.woocommerce-cart-form__cart-item {
    display: grid !important;
    grid-template-columns: 28px 180px minmax(0, 1fr) !important;
    grid-template-areas:
      "remove thumb name"
      "remove thumb price"
      "remove thumb quantity"
      "remove thumb subtotal" !important;
    column-gap: 24px !important;
    row-gap: 9px !important;
    align-items: start !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 28px 0 !important;
    border-top: 1px dotted rgba(43, 26, 18, 0.38) !important;
    border-bottom: 1px dotted rgba(43, 26, 18, 0.38) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart tr.cart_item > td,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  tr.woocommerce-cart-form__cart-item > td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove {
    grid-area: remove !important;
    align-self: start !important;
    padding-top: 4px !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove a.remove::before {
    display: none !important;
    content: none !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove a.remove {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove a.remove::after {
    content: "×" !important;
    color: #2b1a12 !important;
    font-size: 24px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail {
    display: block !important;
    grid-area: thumb !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail a,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail img {
    display: block !important;
    width: 180px !important;
    max-width: 180px !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail img {
    height: 200px !important;
    margin: 0 !important;
    object-fit: cover !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name {
    grid-area: name !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name > a {
    display: block !important;
    margin: 0 0 6px !important;
    color: #c88b19 !important;
    font-size: 19px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 2px 5px !important;
    width: 100% !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation dt,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation dd,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation p {
    margin: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price {
    grid-area: price !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity {
    grid-area: quantity !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal {
    grid-area: subtotal !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    min-height: 40px !important;
    font-size: 16px !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal::before {
    display: inline-block !important;
    flex: 0 0 92px !important;
    width: 92px !important;
    color: #24150f !important;
    font-weight: 600 !important;
    text-align: left !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price::before {
    content: "Price" !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity::before {
    content: "Quantity" !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal::before {
    content: "Subtotal" !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name::before {
    display: none !important;
    content: none !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart tr:not(.cart_item) {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions {
    display: block !important;
    width: 100% !important;
    padding: 30px 0 0 !important;
    border: 0 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 1fr) !important;
    gap: 16px !important;
    width: 100% !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon .input-text,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon input,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
  }

  body.woocommerce-cart .cart-collaterals {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 720px !important;
    margin: 38px auto 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 28px 30px 26px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals h2 {
    margin: 0 0 18px !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals table th {
    width: 150px !important;
    padding-right: 18px !important;
  }
}

/* ---------------------------------------------------------
   MOBILE — 620 px ET MOINS
--------------------------------------------------------- */

@media only screen and (max-width: 620px) {

  /* Le faux sticky blanc du thème disparaît. */
  body.woocommerce-cart .eltdf-sticky-header,
  body.woocommerce-cart .eltdf-sticky-header.header-appear,
  body.woocommerce-cart
  .eltdf-sticky-header.eltdf-sticky-header-appear {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* Le véritable header brun reste sticky. */
  body.woocommerce-cart .eltdf-page-header {
    display: block !important;
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    background: #2a160d !important;
    background-color: #2a160d !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  body.woocommerce-cart .eltdf-page-header .eltdf-menu-area,
  body.woocommerce-cart .eltdf-page-header .eltdf-menu-area-inner,
  body.woocommerce-cart
  .eltdf-page-header .eltdf-vertical-align-containers {
    width: 100% !important;
    background: #2a160d !important;
    background-color: #2a160d !important;
  }

  /* Les wrappers ne créent plus de largeur ou de marge parasite. */
  body.woocommerce-cart .eltdf-content,
  body.woocommerce-cart .eltdf-content-inner,
  body.woocommerce-cart .eltdf-content .eltdf-container,
  body.woocommerce-cart .eltdf-content .eltdf-container-inner,
  body.woocommerce-cart
  .eltdf-content .eltdf-page-content-holder,
  body.woocommerce-cart
  .eltdf-content .elementor-element-3c934ec,
  body.woocommerce-cart
  .eltdf-content .elementor-element-3c934ec > .e-con-inner,
  body.woocommerce-cart
  .eltdf-content .elementor-widget-shortcode,
  body.woocommerce-cart
  .eltdf-content
  .elementor-widget-shortcode > .elementor-widget-container {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* 12 px de marge identique à gauche et à droite. */
  body.woocommerce-cart .woocommerce {
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 18px 12px 8px !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .woocommerce-cart-form,
  body.woocommerce-cart .woocommerce-cart-form table.cart,
  body.woocommerce-cart .woocommerce-cart-form table.cart tbody {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    left: auto !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart thead {
    display: none !important;
  }

  /* Produit compact, centré dans la même largeur que le coupon. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart tr.cart_item,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  tr.woocommerce-cart-form__cart-item {
    display: grid !important;
    grid-template-columns: 24px 96px minmax(0, 1fr) !important;
    grid-template-areas:
      "remove thumb name"
      ". thumb price"
      ". thumb quantity"
      ". thumb subtotal" !important;
    column-gap: 12px !important;
    row-gap: 5px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 16px 0 20px !important;
    border-top: 0 !important;
    border-bottom: 1px dotted rgba(43, 26, 18, 0.42) !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart tr.cart_item > td,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  tr.woocommerce-cart-form__cart-item > td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  /* Une seule croix, contenue dans sa colonne. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove {
    grid-area: remove !important;
    align-self: start !important;
    justify-self: start !important;
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    margin: 0 !important;
    padding: 7px 0 0 !important;
    overflow: hidden !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove a.remove::before {
    display: none !important;
    content: none !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove a.remove {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transform: none !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-remove a.remove::after {
    content: "×" !important;
    display: block !important;
    color: #2b1a12 !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    line-height: 1 !important;
  }

  /* Image produit. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail {
    display: block !important;
    grid-area: thumb !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail a,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail img {
    display: block !important;
    width: 96px !important;
    max-width: 96px !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail img {
    height: 96px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  /* Nom et vendeur. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name {
    grid-area: name !important;
    min-width: 0 !important;
    line-height: 1.35 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name > a {
    display: block !important;
    width: 100% !important;
    margin: 0 0 4px !important;
    color: #c88b19 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    gap: 1px 5px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12.5px !important;
    line-height: 1.35 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation dt,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation dd,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name dl.variation p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: inherit !important;
  }

  /* Prix, quantité et sous-total. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price {
    grid-area: price !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity {
    grid-area: quantity !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal {
    grid-area: subtotal !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    min-height: 30px !important;
    color: #24150f !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal::before {
    display: inline-block !important;
    flex: 0 0 72px !important;
    width: 72px !important;
    margin: 0 !important;
    color: #24150f !important;
    font-weight: 600 !important;
    text-align: left !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-price::before {
    content: "Price" !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity::before {
    content: "Quantity" !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-subtotal::before {
    content: "Subtotal" !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-thumbnail::before,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-name::before {
    display: none !important;
    content: none !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.product-quantity input.qty {
    width: 46px !important;
    min-width: 46px !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 5px !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  /* Coupon : même axe et même largeur que le produit. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart tr:not(.cart_item) {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 18px 0 0 !important;
    border: 0 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon .input-text,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon input,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon button {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 52px !important;
  }

  /* Cart Totals : bord extérieur aligné avec le coupon. */
  body.woocommerce-cart .cart-collaterals {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: none !important;
    margin: 20px 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 20px 18px 20px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals h2 {
    margin: 0 0 12px !important;
    font-size: 24px !important;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals table,
  body.woocommerce-cart
  .cart-collaterals .cart_totals table tbody {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals table tr {
    display: grid !important;
    grid-template-columns: minmax(100px, 1fr) auto !important;
    align-items: start !important;
    column-gap: 14px !important;
    width: 100% !important;
    margin: 0 !important;
    border-bottom: 1px dotted rgba(43, 26, 18, 0.45) !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals table th,
  body.woocommerce-cart
  .cart-collaterals .cart_totals table td {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 14px 0 !important;
    border: 0 !important;
    vertical-align: top !important;
    line-height: 1.45 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals table td {
    text-align: left !important;
  }

  /* Livraison empilée pour éviter les colonnes étroites. */
  body.woocommerce-cart
  .cart-collaterals .cart_totals
  table tr.woocommerce-shipping-totals,
  body.woocommerce-cart
  .cart-collaterals .cart_totals table tr.shipping {
    display: grid !important;
    grid-template-columns: 1fr !important;
    row-gap: 0 !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals
  table tr.woocommerce-shipping-totals th,
  body.woocommerce-cart
  .cart-collaterals .cart_totals
  table tr.woocommerce-shipping-totals td,
  body.woocommerce-cart
  .cart-collaterals .cart_totals table tr.shipping th,
  body.woocommerce-cart
  .cart-collaterals .cart_totals table tr.shipping td {
    grid-column: 1 !important;
    width: 100% !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals
  table tr.woocommerce-shipping-totals th,
  body.woocommerce-cart
  .cart-collaterals .cart_totals table tr.shipping th {
    padding-bottom: 5px !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals
  table tr.woocommerce-shipping-totals td,
  body.woocommerce-cart
  .cart-collaterals .cart_totals table tr.shipping td {
    padding-top: 0 !important;
  }

  body.woocommerce-cart
  .cart-collaterals .cart_totals
  table tr.woocommerce-shipping-totals td::before,
  body.woocommerce-cart
  .cart-collaterals .cart_totals
  table tr.shipping td::before {
    display: none !important;
    content: none !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method,
  body.woocommerce-cart .cart_totals ul#shipping_method li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method li {
    margin-bottom: 8px !important;
  }

  body.woocommerce-cart .cart_totals ul#shipping_method label,
  body.woocommerce-cart
  .cart_totals .woocommerce-shipping-destination,
  body.woocommerce-cart
  .cart_totals .shipping-calculator-button {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  body.woocommerce-cart
  .cart_totals tr.woocommerce-shipping-totals td *,
  body.woocommerce-cart
  .cart_totals tr.shipping td * {
    border-bottom: 0 !important;
    text-decoration: none !important;
  }

  body.woocommerce-cart
  .cart_totals .shipping-calculator-button {
    margin-top: 9px !important;
    color: #c88b19 !important;
  }

  /* Retire le grand vide avant le footer. */
  body.woocommerce-cart .eltdf-content,
  body.woocommerce-cart .eltdf-content-inner,
  body.woocommerce-cart .eltdf-wrapper-inner {
    min-height: 0 !important;
    height: auto !important;
  }

  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-cart .cart-collaterals .cart_totals {
    margin-bottom: 0 !important;
  }

  body.woocommerce-cart footer.eltdf-page-footer {
    margin-top: 0 !important;
  }
}

/* Coupon côte à côte sur les téléphones assez larges. */
@media only screen and (min-width: 380px) and (max-width: 620px) {

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart td.actions .coupon button {
    padding-left: 9px !important;
    padding-right: 9px !important;
    font-size: 11px !important;
    letter-spacing: 1.35px !important;
  }
}

/* =========================================================
   PANIER MOBILE — QUANTITÉ NATIVE DU THÈME
   Réaffiche les contrôles tablette − 1 + sans recréer
   leurs symboles ni modifier le reste de la page.
========================================================= */

@media only screen and (max-width: 620px) {

  /* Conteneur natif du thème */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .eltdf-quantity-buttons,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .quantity {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;

    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    float: none !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 36px !important;
    min-height: 36px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  /* Boutons natifs : on change uniquement leur placement et leur taille.
     Les traits + et − restent ceux du thème, comme sur tablette. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .eltdf-quantity-minus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .eltdf-quantity-plus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity button.minus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity button.plus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.minus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.plus {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    float: none !important;

    flex: 0 0 36px !important;
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;

    margin: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  /* Ordre identique à la tablette */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .eltdf-quantity-minus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity button.minus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.minus {
    order: 1 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.qty,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .eltdf-quantity-input {
    order: 2 !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .eltdf-quantity-plus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity button.plus,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.plus {
    order: 3 !important;
  }

  /* Chiffre central : non éditable au clavier sur mobile.
     Les boutons natifs restent cliquables et modifient la valeur. */
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.qty,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity .eltdf-quantity-input {
    display: inline-block !important;
    position: static !important;
    float: none !important;
    transform: none !important;

    flex: 0 0 28px !important;
    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    color: #24150f !important;
    font-size: 16px !important;
    line-height: 36px !important;
    text-align: center !important;

    appearance: textfield !important;
    -moz-appearance: textfield !important;

    pointer-events: none !important;
    user-select: none !important;
    caret-color: transparent !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.qty::-webkit-inner-spin-button,
  body.woocommerce-cart
  .woocommerce-cart-form table.cart
  td.product-quantity input.qty::-webkit-outer-spin-button {
    margin: 0 !important;
    -webkit-appearance: none !important;
  }
}
/* =========================================================
   GOLDEN DUST WEAR — GALERIE PRODUIT AVEC FLÈCHES
   Une seule grande image, sans miniatures
   À laisser tout en bas du CSS
========================================================= */

body.single-product .woocommerce-product-gallery {
  position: relative !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

/* Fenêtre qui ne laisse apparaître qu’une seule photo */
body.single-product
.woocommerce-product-gallery
.flex-viewport {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
}

/*
 * Important :
 * ne pas imposer width, transform ou display ici.
 * FlexSlider calcule lui-même la largeur et le déplacement.
 */
body.single-product
.woocommerce-product-gallery__wrapper {
  position: relative !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Chaque photo conserve la largeur calculée par FlexSlider */
body.single-product
.woocommerce-product-gallery__image {
  position: relative !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.single-product
.woocommerce-product-gallery__image > a {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Grande image */
body.single-product
.woocommerce-product-gallery__image > a > img:not(.zoomImg),
body.single-product
.woocommerce-product-gallery__image img.wp-post-image {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;

  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;

  object-fit: contain !important;
  object-position: center center !important;

  margin: 0 !important;
  padding: 0 !important;
}

/* Enlève l’image de zoom superposée */
body.single-product
.woocommerce-product-gallery img.zoomImg {
  display: none !important;
}

/* Cache complètement les petites miniatures */
body.single-product
.flex-control-nav.flex-control-thumbs {
  display: none !important;
}

/* Enlève les puces des flèches */
body.single-product
.woocommerce-product-gallery
.flex-direction-nav {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product
.woocommerce-product-gallery
.flex-direction-nav li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product
.woocommerce-product-gallery
.flex-direction-nav li::before,
body.single-product
.woocommerce-product-gallery
.flex-direction-nav li::marker {
  display: none !important;
  content: none !important;
}

/* Boutons gauche et droite */
body.single-product
.woocommerce-product-gallery
.flex-direction-nav a {
  position: absolute !important;
  top: 50% !important;
  z-index: 250 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;

  transform: translateY(-50%) !important;

  color: transparent !important;
  font-size: 0 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  background: rgba(255, 253, 248, 0.9) !important;
  border: 1px solid rgba(43, 26, 18, 0.18) !important;
  border-radius: 50% !important;
  box-shadow: 0 3px 14px rgba(43, 26, 18, 0.12) !important;

  opacity: 0 !important;
  visibility: visible !important;
  transition:
    opacity 0.25s ease,
    background-color 0.25s ease !important;
}

/* Affiche les flèches au passage de la souris */
body.single-product
.woocommerce-product-gallery:hover
.flex-direction-nav a {
  opacity: 1 !important;
}

body.single-product
.woocommerce-product-gallery
.flex-direction-nav a:hover {
  background: #fffdf8 !important;
}

/* Dessin des chevrons */
body.single-product
.woocommerce-product-gallery
.flex-direction-nav a::after {
  display: block !important;
  color: #2b1a12 !important;
  font-family: Arial, sans-serif !important;
  font-size: 31px !important;
  font-weight: 300 !important;
  line-height: 1 !important;
}

body.single-product
.woocommerce-product-gallery
.flex-direction-nav a.flex-prev {
  left: 16px !important;
}

body.single-product
.woocommerce-product-gallery
.flex-direction-nav a.flex-prev::after {
  content: "‹" !important;
}

body.single-product
.woocommerce-product-gallery
.flex-direction-nav a.flex-next {
  right: 16px !important;
}

body.single-product
.woocommerce-product-gallery
.flex-direction-nav a.flex-next::after {
  content: "›" !important;
}

/* Les flèches restent visibles même aux extrémités */
body.single-product
.woocommerce-product-gallery
.flex-direction-nav a.flex-disabled {
  display: flex !important;
  pointer-events: auto !important;
  filter: none !important;
}

/* Mobile et tablette : flèches toujours visibles */
@media only screen and (max-width: 1024px) {
  body.single-product
  .woocommerce-product-gallery
  .flex-direction-nav a {
    width: 40px !important;
    height: 40px !important;
    opacity: 1 !important;
  }

  body.single-product
  .woocommerce-product-gallery
  .flex-direction-nav a.flex-prev {
    left: 10px !important;
  }

  body.single-product
  .woocommerce-product-gallery
  .flex-direction-nav a.flex-next {
    right: 10px !important;
  }

  body.single-product
  .woocommerce-product-gallery
  .flex-direction-nav a::after {
    font-size: 28px !important;
  }
}

/* =========================================================
   GDW — CORRECTION ULTIME DE LA MISE EN PAGE PRODUIT
   Conserve une photo à la fois et remet les informations à droite.
   Ce bloc doit rester tout en bas du CSS.
========================================================= */

@media only screen and (min-width: 1025px) {
  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery {
    display: block !important;
    float: left !important;
    width: 48% !important;
    max-width: 570px !important;
    height: auto !important;
    margin: 0 0 35px !important;
    overflow: hidden !important;
  }

  body.single-product div.product div.summary,
  body.single-product div.product .eltdf-single-product-summary {
    display: block !important;
    float: right !important;
    width: 42% !important;
    max-width: 500px !important;
    margin: 0 !important;
    padding: 8px 0 0 !important;
  }

  body.single-product div.product div.woocommerce-product-gallery
  .woocommerce-product-gallery__image > a > img:not(.zoomImg) {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: calc(100vh - 145px) !important;
    object-fit: contain !important;
    object-position: center top !important;
    margin: 0 auto !important;
  }

  body.single-product div.product .woocommerce-tabs {
    clear: both !important;
  }
}

@media only screen and (max-width: 1024px) {
  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery,
  body.single-product div.product div.summary,
  body.single-product div.product .eltdf-single-product-summary {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.single-product div.product div.summary,
  body.single-product div.product .eltdf-single-product-summary {
    margin-top: 28px !important;
  }
}

/* =========================================================
   GDW — PRIORITÉ FINALE GALERIE / INFORMATIONS
========================================================= */

@media only screen and (min-width: 1025px) {
  body.single-product div.product .eltdf-single-product-content {
    display: grid !important;
    grid-template-columns: minmax(0, 58%) minmax(0, 42%) !important;
    column-gap: 34px !important;
    align-items: start !important;
    width: 100% !important;
  }

  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery {
    grid-column: 1 !important;
    justify-self: start !important;
    float: none !important;
    width: min(100%, 680px) !important;
    max-width: 680px !important;
    margin: 0 !important;
  }

  body.single-product div.product .eltdf-single-product-summary,
  body.single-product div.product div.summary {
    grid-column: 2 !important;
    justify-self: start !important;
    float: none !important;
    width: min(100%, 500px) !important;
    max-width: 500px !important;
    margin: 0 !important;
    padding: 26px 0 0 !important;
  }
}

body.single-product .woocommerce-product-gallery .eltdf-onsale {
  display: none !important;
}

body.single-product .woocommerce-product-gallery > .tinv-wraper {
  inset: 12px 12px auto auto !important;
  top: 12px !important;
  right: 12px !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 600 !important;
}

@media only screen and (max-width: 1024px) {
  body.single-product div.product .eltdf-single-product-content {
    display: block !important;
  }

  body.single-product .woocommerce-product-gallery > .tinv-wraper {
    inset: 10px 10px auto auto !important;
    top: 10px !important;
    right: 10px !important;
  }
}

/* =========================================================
   GDW — FORMAT FINAL IDENTIQUE POUR TOUTES LES PHOTOS
========================================================= */

body.single-product .woocommerce-product-gallery .flex-viewport,
body.single-product .woocommerce-product-gallery__wrapper {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  overflow: hidden !important;
}

body.single-product
.woocommerce-product-gallery__image.gdw-active-image,
body.single-product
.woocommerce-product-gallery__image.gdw-active-image > a {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.single-product
.woocommerce-product-gallery__image.gdw-active-image
> a > img:not(.zoomImg) {
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media only screen and (min-width: 1025px) {
  body.single-product div.product div.woocommerce-product-gallery,
  body.single-product div.product div.images.woocommerce-product-gallery {
    width: min(100%, 570px) !important;
    max-width: 570px !important;
  }
}
/* =========================================================
   FICHE PRODUIT — SUPPRIMER LE DOUBLE "CHOOSE AN OPTION"
========================================================= */

/* Cache uniquement la copie Select2 affichée à côté */
body.single-product
form.variations_form
table.variations
td.value
> .select2-container {
  display: none !important;
}

/* Conserve le véritable menu déroulant */
body.single-product
form.variations_form
table.variations
td.value
> select {
  position: static !important;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;

  width: 250px !important;
  height: 32px !important;

  margin: 0 !important;
  padding: 2px 30px 2px 8px !important;

  clip: auto !important;
  clip-path: none !important;
  overflow: visible !important;

  pointer-events: auto !important;
  appearance: auto !important;
}

/* =========================================================
   GDW — CŒUR PRODUIT : COMPATIBILITÉ AVEC LE SNIPPET V8
   Cette règle finale neutralise toutes les anciennes icônes
   générées par TI Wishlist. Le SVG du snippet reste l'unique
   cœur visible et ne se remplit qu'après un clic utilisateur.
========================================================= */

html body.single-product
.woocommerce-product-gallery
> .tinv-wraper.gdw-gallery-wishlist
a.tinvwl_add_to_wishlist_button::before,
html body.single-product
.woocommerce-product-gallery
> .tinv-wrapper.gdw-gallery-wishlist
a.tinvwl_add_to_wishlist_button::before,
html body.single-product
.woocommerce-product-gallery
.gdw-gallery-wishlist
a.tinvwl_add_to_wishlist_button::before {
  content: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  font-size: 0 !important;
  color: transparent !important;
}

html body.single-product
.woocommerce-product-gallery
.gdw-gallery-wishlist
a.tinvwl_add_to_wishlist_button {
  font-size: 0 !important;
  line-height: 0 !important;
}

html body.single-product
.woocommerce-product-gallery
.gdw-gallery-wishlist
.gdw-heart-svg {
  display: block !important;
  width: 31px !important;
  height: 31px !important;
  min-width: 31px !important;
  min-height: 31px !important;
  margin: 0 !important;
  pointer-events: none !important;
}

html body.single-product
.woocommerce-product-gallery
.gdw-gallery-wishlist
.gdw-heart-svg path {
  fill: transparent !important;
  stroke: #2b1a12 !important;
  stroke-width: 1.8 !important;
}

html body.single-product
.woocommerce-product-gallery
.gdw-gallery-wishlist
a.gdw-heart-user-liked
.gdw-heart-svg path {
  fill: #c58b22 !important;
  stroke: #c58b22 !important;
}

/* =========================================================
   GDW — HEADER ORDINATEUR AFFINÉ — CORRECTIF FINAL
   Placé en toute fin pour remplacer uniquement les dimensions
   et interactions du header sur ordinateur.
   Tablette et mobile (1200 px et moins) restent inchangés.
========================================================= */

@media only screen and (min-width: 1201px) {

  /* Header principal : environ 10 px plus fin */
  body .eltdf-page-header,
  body .eltdf-page-header .eltdf-menu-area,
  body .eltdf-page-header .eltdf-menu-area-inner,
  body .eltdf-page-header .eltdf-menu-area .eltdf-vertical-align-containers,
  body .eltdf-page-header .eltdf-position-left,
  body .eltdf-page-header .eltdf-position-left-inner,
  body .eltdf-page-header .eltdf-position-center,
  body .eltdf-page-header .eltdf-position-center-inner,
  body .eltdf-page-header .eltdf-position-right,
  body .eltdf-page-header .eltdf-position-right-inner,
  body .eltdf-page-header .eltdf-main-menu,
  body .eltdf-page-header .eltdf-main-menu > ul,
  body .eltdf-page-header .eltdf-main-menu > ul > li {
    height: 78px !important;
    min-height: 78px !important;
  }

  body .eltdf-page-header .eltdf-menu-area {
    background-color: #2a160d !important;
  }

  /* Logo œil légèrement réduit, sans modifier sa structure */
  body .eltdf-page-header .eltdf-logo-wrapper img,
  body .eltdf-page-header .eltdf-logo-wrapper img:first-of-type,
  body .eltdf-page-header .eltdf-logo-wrapper img.eltdf-normal-logo {
    height: 41px !important;
    max-height: 41px !important;
    width: auto !important;
    margin-top: -2px !important;
    transform: none !important;
  }

  /* Nom de marque associé au logo, très légèrement réduit */
  body .eltdf-page-header .eltdf-logo-wrapper::after {
    font-size: 14px !important;
    margin-left: 11px !important;
  }

  /* Transition douce des liens du premier niveau uniquement */
  body .eltdf-page-header .eltdf-main-menu > ul > li > a,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li > a {
    transition: color 0.22s ease !important;
  }

  body .eltdf-page-header .eltdf-main-menu > ul > li:hover > a .item_text,
  body .eltdf-page-header .eltdf-main-menu > ul > li:focus-within > a .item_text,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li:hover > a .item_text,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li:focus-within > a .item_text {
    color: #edb94d !important;
  }

  /* Support du trait doré, sans toucher aux éléments des sous-menus */
  body .eltdf-page-header .eltdf-main-menu > ul > li > a .item_text,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li > a .item_text {
    position: relative !important;
    display: inline-block !important;
  }

  body .eltdf-page-header .eltdf-main-menu > ul > li > a .item_text::after,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li > a .item_text::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    bottom: -8px !important;
    display: block !important;
    width: 0 !important;
    height: 1px !important;
    border: 0 !important;
    background: #c99732 !important;
    box-shadow: none !important;
    opacity: 0 !important;
    visibility: visible !important;
    transform: translateX(-50%) !important;
    transition: width 0.24s ease, opacity 0.24s ease !important;
    pointer-events: none !important;
  }

  /* Trait discret au survol */
  body .eltdf-page-header .eltdf-main-menu > ul > li:hover > a .item_text::after,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li:hover > a .item_text::after {
    width: 27px !important;
    opacity: 0.62 !important;
  }

  /* Trait permanent sous l’onglet correspondant à la page actuelle */
  body .eltdf-page-header .eltdf-main-menu > ul > li.current-menu-item > a .item_text::after,
  body .eltdf-page-header .eltdf-main-menu > ul > li.current-menu-ancestor > a .item_text::after,
  body .eltdf-page-header .eltdf-main-menu > ul > li.current_page_item > a .item_text::after,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li.current-menu-item > a .item_text::after,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li.current-menu-ancestor > a .item_text::after,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li.current_page_item > a .item_text::after {
    width: 31px !important;
    opacity: 1 !important;
  }

  /* Header sticky du thème : même univers, mais plus compact */
  body .eltdf-sticky-header {
    height: 66px !important;
  }

  body .eltdf-sticky-header .eltdf-sticky-holder,
  body .eltdf-sticky-header .eltdf-vertical-align-containers,
  body .eltdf-sticky-header .eltdf-position-left,
  body .eltdf-sticky-header .eltdf-position-left-inner,
  body .eltdf-sticky-header .eltdf-position-center,
  body .eltdf-sticky-header .eltdf-position-center-inner,
  body .eltdf-sticky-header .eltdf-position-right,
  body .eltdf-sticky-header .eltdf-position-right-inner,
  body .eltdf-sticky-header .eltdf-main-menu,
  body .eltdf-sticky-header .eltdf-main-menu > ul,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li {
    height: 66px !important;
    min-height: 66px !important;
  }

  body .eltdf-sticky-header,
  body .eltdf-sticky-header .eltdf-sticky-holder {
    background-color: #2a160d !important;
  }

  body .eltdf-sticky-header .eltdf-logo-wrapper img,
  body .eltdf-sticky-header .eltdf-logo-wrapper img:first-of-type,
  body .eltdf-sticky-header .eltdf-logo-wrapper img.eltdf-normal-logo {
    height: 37px !important;
    max-height: 37px !important;
    width: auto !important;
    margin-top: 0 !important;
    transform: none !important;
  }

  body .eltdf-sticky-header .eltdf-logo-wrapper::after {
    font-size: 13px !important;
    margin-left: 10px !important;
  }

  /* La homepage possède un header fixe : compensation exacte */
  body.home .rev_slider_wrapper,
  body.home rs-module-wrap {
    margin-top: 78px !important;
  }

  /* La page Shop possède son propre header fixe */
  body.page-id-54 .eltdf-content,
  body.elementor-page-54 .eltdf-content {
    padding-top: 78px !important;
  }

  /* Focus clavier élégant et visible */
  body .eltdf-page-header .eltdf-main-menu > ul > li > a:focus-visible,
  body .eltdf-sticky-header .eltdf-main-menu > ul > li > a:focus-visible {
    outline: 1px solid #d9a43b !important;
    outline-offset: 5px !important;
  }
}

/* =========================================================
   GDW — HOME NEW IN — CENTRAGE ET ESPACEMENTS FINAUX
   Limité à la section New In de la page d’accueil.
   Ne modifie ni la page New In, ni Shop, ni les fiches produit.
========================================================= */

@media only screen and (min-width: 1025px) {

  /* Supprime l’addition de deux marges successives sous le titre */
  body.home .gdw-new-in-section .gdw-new-in-header {
    margin-bottom: 0 !important;
  }

  body.home .gdw-new-in-section .gdw-new-in-products {
    width: 100% !important;
    max-width: none !important;
    margin-top: 0 !important;
  }

  /* Centre réellement 1, 2, 3 ou 4 produits */
  body.home .gdw-new-in-section .gdw-new-in-products .woocommerce ul.products,
  body.home .gdw-new-in-section .gdw-new-in-products ul.products,
  body.home .gdw-new-in-section .woocommerce ul.products,
  body.home .gdw-new-in-section ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(330px, 365px)) !important;
    justify-content: center !important;
    align-items: start !important;
    gap: 30px !important;
    width: calc(100% - 64px) !important;
    max-width: 1550px !important;
    margin: 24px auto 46px !important;
    padding: 0 !important;
  }

  body.home .gdw-new-in-section ul.products li.product {
    width: 100% !important;
    max-width: 365px !important;
    margin: 0 !important;
  }

  /* Texte légèrement plus lisible sur les cartes agrandies */
  body.home .gdw-new-in-section ul.products li.product
  .eltdf-pl-text-wrapper > div:first-child > h5,
  body.home .gdw-new-in-section ul.products li.product
  .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title,
  body.home .gdw-new-in-section ul.products li.product
  .eltdf-pl-text-wrapper > div:first-child > h5 a,
  body.home .gdw-new-in-section ul.products li.product
  .eltdf-pl-text-wrapper > div:first-child > .eltdf-product-list-title a {
    font-size: 12px !important;
  }

  body.home .gdw-new-in-section ul.products li.product
  .eltdf-pl-text-wrapper > div:first-child > span {
    font-size: 12px !important;
  }
}

/* =========================================================
   GDW — CORRECTION FINALE DU BADGE SALE
   Placée en dernier pour prendre la priorité sur le thème.
========================================================= */

html body .gdw-new-in-products li.product .eltdf-pl-image {
  position: relative !important;
  overflow: hidden !important;
}

html body .gdw-new-in-products li.product .eltdf-pl-image > span.eltdf-on-sale,
html body .gdw-new-in-products li.product .eltdf-pl-image > span.onsale {
  position: absolute !important;
  top: 13px !important;
  left: 13px !important;
  right: auto !important;
  bottom: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 7px 11px !important;
  background: #2a160d !important;
  background-color: #2a160d !important;
  background-image: none !important;
  border: 1px solid rgba(211, 154, 45, 0.72) !important;
  border-radius: 999px !important;
  color: #e1aa3b !important;
  font-family: "DM Sans", Arial, sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 1.2px !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  box-shadow: 0 4px 12px rgba(42, 22, 13, 0.16) !important;
  pointer-events: none !important;
  z-index: 20 !important;
}

html body .gdw-new-in-products li.product .eltdf-pl-image > span.eltdf-on-sale::before,
html body .gdw-new-in-products li.product .eltdf-pl-image > span.eltdf-on-sale::after,
html body .gdw-new-in-products li.product .eltdf-pl-image > span.onsale::before,
html body .gdw-new-in-products li.product .eltdf-pl-image > span.onsale::after {
  display: none !important;
  content: none !important;
}


/* GDW — Correctif footer mobile 2026-08-15 */
@media (max-width: 768px) {
  footer.eltdf-page-footer,
  footer.eltdf-page-footer .eltdf-footer-bottom-holder,
  footer.eltdf-page-footer .eltdf-footer-bottom-inner,
  footer.eltdf-page-footer .eltdf-full-width,
  footer.eltdf-page-footer .eltdf-grid-row,
  footer.eltdf-page-footer .eltdf-grid-col-12,
  footer.eltdf-page-footer .widget,
  footer.eltdf-page-footer .widget_text,
  footer.eltdf-page-footer .textwidget {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  footer.eltdf-page-footer .eltdf-footer-bottom-inner {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  footer.eltdf-page-footer .eltdf-grid-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  footer.eltdf-page-footer .eltdf-grid-col-12 {
    float: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  footer.eltdf-page-footer p {
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}


/* ------------------------------
 *    FIX PRIX PROMO - retirer le soulignement (trait) sous le prix actuel
 * ------------------------------ */
.woocommerce ins,
.gdw-card-price ins {
	  text-decoration: none !important;
}
.woocommerce del,
.gdw-card-price del {
	  text-decoration: line-through !important;
}
}
}

/* ------------------------------
 *    NEUTRALISE L'ANCIEN SYSTEME "FLEXBOX" DES PAGES CATEGORIE
 *    Un vieux bloc (body.tax-product_cat ul.products li.product) fixe encore
 *    un max-width et un padding-bottom avec un seuil (900px) qui n'existe
 *    nulle part sur /shop/. Ca cree un ecart de cadrage a certaines largeurs
 *    d'ecran. On neutralise ici, avec une specificite superieure, uniquement
 *    ces deux proprietes, pour laisser le systeme grille/unifie (identique a
 *    /shop/) piloter entierement la taille des cartes, a toutes les largeurs.
 *    Ajout pur : aucune regle existante n'est modifiee ni supprimee.
 * ------------------------------ */
body.tax-product_cat.tax-product_cat ul.products.products.products > li.product,
body.tax-product_cat.tax-product_cat ul.products.products.products > li.product.product {
	  max-width: none !important;
	  padding-bottom: 0 !important;
}
@media only screen and (max-width: 900px) {
	body.tax-product_cat.tax-product_cat ul.products.products.products > li.product {
		    max-width: none !important;
	}
}
@media only screen and (max-width: 620px) {
	body.tax-product_cat.tax-product_cat ul.products.products.products > li.product {
		    max-width: none !important;
		    padding-bottom: 0 !important;
	}
}
	}
}
	}
}
}

/* ======================================
 *    GOLDEN DUST WEAR - MOBILE SHOP FILTERS
 *    Amlioration du layout mobile
 *    ====================================== */

/* Pour crans mobiles - amliorer le layout des filtres */
@media only screen and (max-width: 768px) {
	  /* Rendre les filtres plus compacts */
	  .woocommerce-products-header,
	  .products-list-container,
	.products-filter-wrapper {
		    display: flex;
		    flex-wrap: wrap;
		    gap: 8px;
		    align-items: center;
		    justify-content: center;
		    padding: 10px 0;
	}
	  
	  /* Filtres individuels - plus petits en mobile */
	  a[href*="filter"],
	  .product-cat,
	  .woocommerce-widget-layered-nav a,
	.woocommerce-widget-layered-nav-list a {
		    display: inline-block;
		    padding: 6px 12px !important;
		    font-size: 12px !important;
		    margin: 4px 2px;
		    white-space: nowrap;
	}
	  
	  /* Boutons de catgorie - optimis mobile */
	  .category-buttons,
	.products-categories {
		    display: flex !important;
		    flex-wrap: wrap;
		    gap: 6px;
		    justify-content: center;
	}
	  
	  /* Grille de produits - 2 colonnes en mobile */
	  .products,
	.woocommerce ul.products {
		    display: grid !important;
		    grid-template-columns: repeat(2, 1fr) !important;
		    gap: 12px !important;
		    padding: 0 8px !important;
	}
	  
	  /* Cartes de produits */
	  .woocommerce ul.products li.product,
	.product-item {
		    margin: 0 !important;
		    flex: 0 1 calc(50% - 6px) !important;
	}
	  
	  /* Espacements rduits */
	.woocommerce-products-header {
		    margin-bottom: 12px;
	}
	  
	  /* Section des filtres - mieux compacte */
	  .woocommerce-widget-layered-nav,
	.filters-wrapper {
		    margin-bottom: 15px;
	}
	  
	  /* Texte de tri - responsive */
	  .woocommerce-result-count,
	.woocommerce-ordering {
		    font-size: 11px !important;
		    flex: 0 1 auto;
	}
}

/* Ultra mobile - trs petit cran (< 480px) */
@media only screen and (max-width: 480px) {
	  /* Encore plus compact */
	  a[href*="filter"],
	  .product-cat,
	.woocommerce-widget-layered-nav a {
		    padding: 5px 10px !important;
		    font-size: 11px !important;
		    margin: 3px 1px;
	}
	  
	  /* Grille 2 colonnes stricte */
	  .products,
	.woocommerce ul.products {
		    grid-template-columns: repeat(2, 1fr) !important;
		    gap: 8px !important;
		    padding: 0 4px !important;
	}
}
  