/* ================================================================== */
/* CSS COMPLET MA TYPO — VERSION FINALE V2                              */
/* WooCommerce + WPForms + Boutique                                     */
/* À COLLER DANS : Apparence > Personnaliser > CSS additionnel          */
/* (remplace TOUT le CSS additionnel existant)                          */
/* ================================================================== */






/* ╔══════════════════════════════════════════════════════════════════╗ */
/* ║   PARTIE 1 — CSS WOOCOMMERCE (cards produits — format CARRÉ 1:1) ║ */
/* ╚══════════════════════════════════════════════════════════════════╝ */


/* 1.1 NEUTRALISATION */
.woocommerce ul.products li.product .onsale,
ul.products li.product .onsale,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product a.add_to_cart_button,
ul.products li.product .button,
ul.products li.product .add_to_cart_button,
ul.products li.product .added_to_cart,
.woocommerce ul.products li.product .star-rating,
ul.products li.product .star-rating,
.woocommerce ul.products li.product .woo-archive-product-actions,
ul.products li.product .product-action-wrap,
ul.products li.product .kadence-woocommerce-product-action-wrap {
  display: none !important;
}


/* 1.2 GRILLE */
.woocommerce ul.products,
ul.products.content-wrap.product-archive {
  font-family: 'Arya', Georgia, serif !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: clamp(40px, 4vw, 56px) clamp(20px, 2.5vw, 36px) !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}


/* 1.3 CARTE PRODUIT + ANIMATION */
.woocommerce ul.products li.product,
ul.products li.product,
ul.products li.loop-entry {
  font-family: 'Arya', Georgia, serif !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  list-style: none !important;
  position: relative !important;
  overflow: visible !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: column !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent !important;

  opacity: 0 !important;
  transform: translateY(30px) !important;
  transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.woocommerce ul.products li.product.is-revealed,
ul.products li.product.is-revealed,
ul.products li.loop-entry.is-revealed {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.woocommerce ul.products li.product:hover,
ul.products li.product:hover {
  background: transparent !important;
  border: none !important;
}

ul.products li.product::before,
ul.products li.product::after,
ul.products li.product .product-details::before,
ul.products li.product .product-details::after,
ul.products li.product .entry-content-wrap::before,
ul.products li.product .entry-content-wrap::after {
  display: none !important;
  content: none !important;
}


/* 1.4 LIEN PRINCIPAL */
.woocommerce ul.products li.product > a,
ul.products li.product > a.woocommerce-LoopProduct-link,
ul.products li.product .woocommerce-loop-image-link {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  -webkit-tap-highlight-color: transparent !important;
}


/* 1.5 IMAGE — FORMAT CARRÉ 1:1 */
.woocommerce ul.products li.product .woocommerce-loop-image-link,
ul.products li.product .woocommerce-loop-image-link {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ede9e0 !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  height: 0 !important;
  padding-bottom: 100% !important;
  transition: box-shadow 0.5s ease, transform 0.5s ease !important;
}

.woocommerce ul.products li.product img,
ul.products li.product img,
ul.products li.product .attachment-woocommerce_thumbnail,
ul.products li.product .woocommerce-loop-image-link img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  max-width: none !important;
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1) !important;
}


/* 1.6 OVERLAY VERT */
.woocommerce ul.products li.product .woocommerce-loop-image-link::before,
ul.products li.product .woocommerce-loop-image-link::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg,
    rgba(22, 90, 11, 0) 0%,
    rgba(22, 90, 11, 0) 60%,
    rgba(22, 90, 11, 0.7) 100%) !important;
  opacity: 0 !important;
  transition: opacity 0.5s ease !important;
  z-index: 1 !important;
  pointer-events: none !important;
  display: block !important;
}


/* 1.7 BOUTON "DÉCOUVRIR" */
.woocommerce ul.products li.product .woocommerce-loop-image-link::after,
ul.products li.product .woocommerce-loop-image-link::after {
  content: 'Découvrir →' !important;
  position: absolute !important;
  bottom: 16px !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(8px) !important;
  background: rgba(255, 255, 255, 0.95) !important;
  color: #165a0b !important;
  padding: 8px 18px !important;
  border-radius: 999px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  opacity: 0 !important;
  transition: opacity 0.4s ease, transform 0.4s ease !important;
  z-index: 2 !important;
  white-space: nowrap !important;
  pointer-events: none !important;
  display: block !important;
}


/* 1.8 EFFETS HOVER + TAP */
@media (hover: hover) {
  ul.products li.product:hover .woocommerce-loop-image-link {
    box-shadow: 0 12px 32px rgba(22, 90, 11, 0.18) !important;
    transform: translateY(-3px) !important;
  }
  ul.products li.product:hover img {
    transform: scale(1.06) !important;
  }
  ul.products li.product:hover .woocommerce-loop-image-link::before {
    opacity: 1 !important;
  }
  ul.products li.product:hover .woocommerce-loop-image-link::after {
    opacity: 1 !important;
    transform: translateX(-50%) translateY(0) !important;
  }
}

ul.products li.product:active .woocommerce-loop-image-link,
ul.products li.product:focus-within .woocommerce-loop-image-link {
  box-shadow: 0 12px 32px rgba(22, 90, 11, 0.18) !important;
  transform: translateY(-3px) !important;
}
ul.products li.product:active img,
ul.products li.product:focus-within img {
  transform: scale(1.06) !important;
}
ul.products li.product:active .woocommerce-loop-image-link::before,
ul.products li.product:focus-within .woocommerce-loop-image-link::before {
  opacity: 1 !important;
}
ul.products li.product:active .woocommerce-loop-image-link::after,
ul.products li.product:focus-within .woocommerce-loop-image-link::after {
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) !important;
}


/* 1.9 CONTENU SOUS L'IMAGE */
.woocommerce ul.products li.product .product-details,
ul.products li.product .product-details,
ul.products li.product .entry-content-wrap {
  padding: 18px 4px 0 !important;
  margin: 0 !important;
  background: transparent !important;
  text-align: center !important;
  border: none !important;
  box-shadow: none !important;
  position: static !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transform: none !important;
}


/* 1.10 EYEBROW */
.woocommerce ul.products li.product .product-loop-categories,
ul.products li.product .product-loop-categories,
ul.products li.product .loop-categories {
  display: block !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 10px !important;
  color: rgba(22, 90, 11, 0.65) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.18em !important;
  font-weight: 700 !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  text-align: center !important;
  line-height: 1.4 !important;
  transition: color 0.3s ease !important;
}

.woocommerce ul.products li.product .product-loop-categories a,
ul.products li.product .product-loop-categories a,
ul.products li.product .loop-categories a {
  color: inherit !important;
  text-decoration: none !important;
  font-weight: inherit !important;
}

@media (hover: hover) {
  ul.products li.product:hover .product-loop-categories,
  ul.products li.product:hover .loop-categories {
    color: #165a0b !important;
  }
}

ul.products li.product:active .product-loop-categories,
ul.products li.product:focus-within .product-loop-categories,
ul.products li.product:active .loop-categories,
ul.products li.product:focus-within .loop-categories {
  color: #165a0b !important;
}


/* 1.11 TITRE */
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2,
ul.products li.product h3,
ul.products li.product .woocommerce-loop-product__title {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(13px, 1.2vw, 15px) !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  margin: 0 0 10px !important;
  padding: 0 0 4px !important;
  line-height: 1.4 !important;
  transition: color 0.3s ease !important;
  text-align: center !important;
  position: relative !important;
  background: transparent !important;
  border: none !important;
  display: inline-block !important;
}

.woocommerce ul.products li.product h2::after,
.woocommerce ul.products li.product h3::after,
.woocommerce ul.products li.product .woocommerce-loop-product__title::after,
ul.products li.product h2::after,
ul.products li.product h3::after,
ul.products li.product .woocommerce-loop-product__title::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 0 !important;
  height: 1.5px !important;
  background: #165a0b !important;
  transition: width 0.5s ease !important;
  display: block !important;
}

@media (hover: hover) {
  ul.products li.product:hover h2,
  ul.products li.product:hover h3,
  ul.products li.product:hover .woocommerce-loop-product__title {
    color: #165a0b !important;
  }
  ul.products li.product:hover h2::after,
  ul.products li.product:hover h3::after,
  ul.products li.product:hover .woocommerce-loop-product__title::after {
    width: 100% !important;
  }
}

ul.products li.product:active h2,
ul.products li.product:focus-within h2,
ul.products li.product:active h3,
ul.products li.product:focus-within h3,
ul.products li.product:active .woocommerce-loop-product__title,
ul.products li.product:focus-within .woocommerce-loop-product__title {
  color: #165a0b !important;
}

ul.products li.product:active h2::after,
ul.products li.product:focus-within h2::after,
ul.products li.product:active h3::after,
ul.products li.product:focus-within h3::after,
ul.products li.product:active .woocommerce-loop-product__title::after,
ul.products li.product:focus-within .woocommerce-loop-product__title::after {
  width: 100% !important;
}


/* 1.12 PRIX */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product span.price,
ul.products li.product .price,
ul.products li.product span.price {
  font-family: 'Arya', Georgia, serif !important;
  color: #165a0b !important;
  font-size: clamp(12px, 1.1vw, 13px) !important;
  font-weight: 600 !important;
  margin: 6px 0 0 !important;
  padding: 0 !important;
  display: block !important;
  text-align: center !important;
  letter-spacing: 0.02em !important;
  position: static !important;
  background: transparent !important;
  border: none !important;
}

.woocommerce ul.products li.product .price del,
ul.products li.product .price del {
  color: rgba(22, 90, 11, 0.4) !important;
  font-weight: 400 !important;
  margin-right: 8px !important;
  text-decoration: line-through !important;
}

.woocommerce ul.products li.product .price ins,
ul.products li.product .price ins {
  background: transparent !important;
  color: #165a0b !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}


/* 1.13 RESPONSIVE MOBILE 2 COLONNES */
@media (max-width: 768px) {
  .woocommerce ul.products,
  ul.products.content-wrap.product-archive {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 32px 14px !important;
  }

  ul.products li.product .product-details,
  ul.products li.product .entry-content-wrap {
    padding: 14px 2px 0 !important;
  }

  .woocommerce ul.products li.product .product-loop-categories,
  ul.products li.product .product-loop-categories,
  ul.products li.product .loop-categories {
    font-size: 9px !important;
    margin-bottom: 6px !important;
    letter-spacing: 0.15em !important;
  }

  .woocommerce ul.products li.product h2,
  .woocommerce ul.products li.product h3,
  ul.products li.product h2,
  ul.products li.product h3 {
    font-size: 13px !important;
    margin-bottom: 8px !important;
    line-height: 1.35 !important;
  }

  .woocommerce ul.products li.product .price,
  ul.products li.product .price {
    font-size: 12px !important;
  }
}


.elementor-widget-woocommerce-products {
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}




/* ╔══════════════════════════════════════════════════════════════════╗ */
/* ║              PARTIE 2 — CSS WPFORMS                              ║ */
/* ╚══════════════════════════════════════════════════════════════════╝ */


.wpforms-container,
div.wpforms-container-full,
.wpforms-form {
  font-family: 'Arya', Georgia, serif !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.wpforms-form .wpforms-field {
  padding: 0 !important;
  margin-bottom: 24px !important;
}

.wpforms-form .wpforms-field-label,
.wpforms-form label.wpforms-field-label {
  font-family: 'Arya', Georgia, serif !important;
  color: #165a0b !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  margin-bottom: 12px !important;
  display: block !important;
  line-height: 1.4 !important;
}

.wpforms-form .wpforms-required-label {
  color: #165a0b !important;
  font-weight: 700 !important;
  margin-left: 4px !important;
}

.wpforms-form .wpforms-field-sublabel,
.wpforms-form label.wpforms-field-sublabel {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  color: rgba(42, 61, 36, 0.6) !important;
  font-size: 12px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  margin-top: 6px !important;
  display: block !important;
}

.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form input[type="url"],
.wpforms-form input[type="number"],
.wpforms-form input[type="password"],
.wpforms-form input[type="search"],
.wpforms-form input[type="date"],
.wpforms-form textarea,
.wpforms-form select {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 15px !important;
  padding: 14px 18px !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 8px !important;
  background: #fafaf7 !important;
  color: #2a3d24 !important;
  transition: all 0.3s ease !important;
  width: 100% !important;
  box-sizing: border-box !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.wpforms-form textarea {
  min-height: 140px !important;
  resize: vertical !important;
  font-family: Georgia, 'Times New Roman', serif !important;
}

.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder {
  color: rgba(42, 61, 36, 0.4) !important;
  font-style: italic !important;
}

.wpforms-form input[type="text"]:focus,
.wpforms-form input[type="email"]:focus,
.wpforms-form input[type="tel"]:focus,
.wpforms-form input[type="url"]:focus,
.wpforms-form input[type="number"]:focus,
.wpforms-form input[type="password"]:focus,
.wpforms-form input[type="search"]:focus,
.wpforms-form input[type="date"]:focus,
.wpforms-form textarea:focus,
.wpforms-form select:focus {
  border-color: #165a0b !important;
  background: #ffffff !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(22, 90, 11, 0.1) !important;
}

@media (hover: hover) {
  .wpforms-form input[type="text"]:hover,
  .wpforms-form input[type="email"]:hover,
  .wpforms-form input[type="tel"]:hover,
  .wpforms-form textarea:hover,
  .wpforms-form select:hover {
    border-color: rgba(22, 90, 11, 0.4) !important;
    background: #ffffff !important;
  }
}

.wpforms-form .wpforms-field-name .wpforms-field-row {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

.wpforms-form .wpforms-field-name .wpforms-field-row-block {
  flex: 1 !important;
  min-width: 200px !important;
  padding: 0 !important;
}

@media (max-width: 600px) {
  .wpforms-form .wpforms-field-name .wpforms-field-row {
    flex-direction: column !important;
    gap: 16px !important;
  }
}

.wpforms-form button[type="submit"],
.wpforms-form .wpforms-submit-container button.wpforms-submit,
.wpforms-form input[type="submit"] {
  font-family: 'Arya', Georgia, serif !important;
  background: #165a0b !important;
  color: #ffffff !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 14px 32px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
  box-shadow: 0 4px 12px rgba(22, 90, 11, 0.15) !important;
  -webkit-tap-highlight-color: transparent !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  outline: none !important;
  width: auto !important;
  display: inline-block !important;
}

@media (hover: hover) {
  .wpforms-form button[type="submit"]:hover,
  .wpforms-form .wpforms-submit-container button.wpforms-submit:hover,
  .wpforms-form input[type="submit"]:hover {
    background: #ffffff !important;
    color: #165a0b !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(22, 90, 11, 0.2) !important;
  }
}

.wpforms-form button[type="submit"]:active,
.wpforms-form .wpforms-submit-container button.wpforms-submit:active,
.wpforms-form input[type="submit"]:active {
  transform: translateY(0) !important;
}

.wpforms-form .wpforms-submit-container {
  margin-top: 8px !important;
  text-align: left !important;
}

.wpforms-form .wpforms-error,
.wpforms-form label.wpforms-error,
.wpforms-form em.wpforms-error {
  font-family: Georgia, serif !important;
  font-style: italic !important;
  color: #b91c1c !important;
  font-size: 13px !important;
  margin-top: 6px !important;
  display: block !important;
}

.wpforms-form input.wpforms-error,
.wpforms-form textarea.wpforms-error,
.wpforms-form select.wpforms-error {
  border-color: #b91c1c !important;
  background: rgba(185, 28, 28, 0.03) !important;
}

.wpforms-confirmation-container,
.wpforms-confirmation-container-full,
div.wpforms-confirmation-container-full {
  font-family: 'Arya', Georgia, serif !important;
  background: rgba(22, 90, 11, 0.08) !important;
  border: 1px solid rgba(22, 90, 11, 0.25) !important;
  border-radius: 12px !important;
  padding: clamp(20px, 3vw, 28px) clamp(20px, 3vw, 32px) !important;
  color: #165a0b !important;
  margin: 0 !important;
}

.wpforms-confirmation-container p,
.wpforms-confirmation-container-full p {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(15px, 1.6vw, 17px) !important;
  color: #165a0b !important;
  margin: 0 !important;
  line-height: 1.6 !important;
  font-style: italic !important;
}

.wpforms-form .wpforms-field-checkbox ul,
.wpforms-form .wpforms-field-radio ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.wpforms-form .wpforms-field-checkbox li,
.wpforms-form .wpforms-field-radio li {
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  color: #2a3d24 !important;
  margin-bottom: 8px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.wpforms-form input[type="checkbox"],
.wpforms-form input[type="radio"] {
  accent-color: #165a0b !important;
  width: 16px !important;
  height: 16px !important;
  cursor: pointer !important;
}

.wpforms-form .wpforms-title {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: clamp(20px, 2.4vw, 26px) !important;
  font-weight: 500 !important;
  color: #165a0b !important;
  margin: 0 0 16px !important;
  letter-spacing: -0.01em !important;
}

.wpforms-form .wpforms-description {
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  color: rgba(42, 61, 36, 0.75) !important;
  margin: 0 0 24px !important;
  line-height: 1.6 !important;
  font-style: italic !important;
}

.wpforms-submit-spinner img {
  filter: hue-rotate(90deg) saturate(1.2) !important;
}




/* ╔══════════════════════════════════════════════════════════════════╗ */
/* ║                PARTIE 3 — CSS BOUTIQUE                            ║ */
/* ║         (filtres WOOF, slider IRS, pagination)                    ║ */
/* ╚══════════════════════════════════════════════════════════════════╝ */


/* 3.1 ANTI-BLEU GLOBAL */
.bo-shop a:not(.bo-not-found-btn):not(.bo-filter-toggle),
.bo-shop a:not(.bo-not-found-btn):not(.bo-filter-toggle):link,
.bo-shop a:not(.bo-not-found-btn):not(.bo-filter-toggle):visited,
.bo-shop a:not(.bo-not-found-btn):not(.bo-filter-toggle):active,
.bo-shop a:not(.bo-not-found-btn):not(.bo-filter-toggle):focus {
  color: #2a3d24 !important;
  text-decoration: none !important;
}

.bo-shop ::selection,
.bo-not-found-section ::selection {
  background: rgba(22, 90, 11, 0.2) !important;
  color: #165a0b !important;
}

.bo-shop *:focus,
.bo-shop *:focus-visible {
  outline: 2px solid rgba(22, 90, 11, 0.4) !important;
  outline-offset: 2px !important;
}

.bo-shop input:focus,
.bo-shop button:focus,
.bo-shop select:focus {
  outline: none !important;
}


/* 3.2 STYLES WOOF (filtres) */
.bo-sidebar-content .woof_container,
.bo-sidebar-content .woof_container_inner,
.bo-sidebar-content .woof_redraw_zone {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

.bo-sidebar-content .woof_block_html_items {
  margin: 0 0 36px !important;
  padding: 0 0 36px !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.1) !important;
  background: transparent !important;
}

.bo-sidebar-content .woof_block_html_items:last-of-type {
  border-bottom: none !important;
  margin-bottom: 8px !important;
  padding-bottom: 8px !important;
}

.bo-sidebar-content .woof_block_html_items h4,
.bo-sidebar-content .woof_container_inner h4,
.bo-sidebar-content h4 {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  color: #165a0b !important;
  text-transform: uppercase !important;
  letter-spacing: 0.22em !important;
  font-weight: 700 !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  line-height: 1.3 !important;
  background: transparent !important;
  border: none !important;
}

.bo-sidebar-content .woof_list,
.bo-sidebar-content ul.woof_list,
.bo-sidebar-content .woof_childs_list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.bo-sidebar-content .woof_list li,
.bo-sidebar-content ul.woof_list li,
.bo-sidebar-content .woof_childs_list li {
  margin: 0 0 6px !important;
  padding: 0 !important;
  background: transparent !important;
  list-style: none !important;
  border: none !important;
}

.bo-sidebar-content .woof_list label,
.bo-sidebar-content ul.woof_list li label,
.bo-sidebar-content .woof_childs_list label,
.bo-sidebar-content label {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 14px !important;
  color: #2a3d24 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 9px 12px !important;
  margin: 0 -12px !important;
  line-height: 1.4 !important;
  transition: all 0.25s ease !important;
  font-weight: 400 !important;
  border-radius: 8px !important;
  background: transparent !important;
}

@media (hover: hover) {
  .bo-sidebar-content .woof_list label:hover,
  .bo-sidebar-content ul.woof_list li label:hover,
  .bo-sidebar-content label:hover {
    color: #165a0b !important;
    background: rgba(22, 90, 11, 0.05) !important;
  }
}

.bo-sidebar-content input[type="checkbox"] {
  accent-color: #165a0b !important;
  width: 16px !important;
  height: 16px !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

.bo-sidebar-content input[type="checkbox"]:checked {
  animation: woofBounce 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes woofBounce {
  0% { transform: scale(1); }
  40% { transform: scale(1.3); }
  70% { transform: scale(0.9); }
  100% { transform: scale(1); }
}

.bo-sidebar-content .woof_list .woof_count_container,
.bo-sidebar-content .woof_list .woof_text_container .count,
.bo-sidebar-content .count {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  color: rgba(42, 61, 36, 0.45) !important;
  font-weight: 400 !important;
  margin-left: auto !important;
  letter-spacing: 0.05em !important;
}

.bo-sidebar-content input[type="text"],
.bo-sidebar-content input[type="search"] {
  font-family: Georgia, serif !important;
  font-size: 13px !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(22, 90, 11, 0.18) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #2a3d24 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: all 0.25s ease !important;
  margin: 0 !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.bo-sidebar-content input[type="text"]:focus,
.bo-sidebar-content input[type="search"]:focus {
  border-color: #165a0b !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(22, 90, 11, 0.1) !important;
}

.bo-sidebar-content input::placeholder {
  color: rgba(42, 61, 36, 0.4) !important;
  font-style: italic !important;
}

.bo-sidebar-content button:not(.bo-sidebar-close),
.bo-sidebar-content input[type="submit"] {
  font-family: 'Arya', Georgia, serif !important;
  background: #165a0b !important;
  color: #ffffff !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 11px 22px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  margin: 12px 0 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  width: auto !important;
  display: inline-block !important;
  box-shadow: 0 2px 6px rgba(22, 90, 11, 0.15) !important;
}

.bo-sidebar-content button:not(.bo-sidebar-close):hover {
  background: #1f7a14 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(22, 90, 11, 0.25) !important;
}

.bo-sidebar-content .woof_reset_button_2,
.bo-sidebar-content button.woof_reset_search_form,
.bo-sidebar-content .woof_reset_button {
  background: transparent !important;
  color: #165a0b !important;
  border: 1px solid #165a0b !important;
  box-shadow: none !important;
}

.bo-sidebar-content .woof_reset_button_2:hover,
.bo-sidebar-content button.woof_reset_search_form:hover {
  background: #165a0b !important;
  color: #ffffff !important;
}

.bo-sidebar-content .woof_show_text_value {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  color: #165a0b !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  margin-top: 14px !important;
  display: inline-block !important;
  cursor: pointer !important;
}

.bo-sidebar-content .woof_show_text_value:hover {
  opacity: 0.7 !important;
}


/* 3.3 SLIDER IRS */
.bo-shop-sidebar .irs,
.bo-shop-sidebar .irs--round,
.bo-sidebar-content .irs,
.bo-sidebar-content .irs--round {
  font-family: 'Arya', Georgia, serif !important;
  margin: 8px 0 !important;
}

.bo-shop-sidebar .irs--round .irs-line,
.bo-sidebar-content .irs--round .irs-line {
  background: rgba(22, 90, 11, 0.15) !important;
  border-radius: 999px !important;
  height: 4px !important;
  top: 26px !important;
}

.bo-shop-sidebar .irs--round .irs-bar,
.bo-sidebar-content .irs--round .irs-bar {
  background: #165a0b !important;
  height: 4px !important;
  top: 26px !important;
}

.bo-shop-sidebar .irs--round .irs-handle,
.bo-sidebar-content .irs--round .irs-handle {
  background-color: #ffffff !important;
  background-image: none !important;
  border: 2px solid #165a0b !important;
  border-radius: 50% !important;
  width: 18px !important;
  height: 18px !important;
  top: 19px !important;
  box-shadow: 0 2px 8px rgba(22, 90, 11, 0.25) !important;
  cursor: grab !important;
  transition: transform 0.2s ease !important;
}

.bo-shop-sidebar .irs--round .irs-handle > i:first-child,
.bo-sidebar-content .irs--round .irs-handle > i:first-child {
  display: none !important;
}

.bo-shop-sidebar .irs--round .irs-handle:hover,
.bo-sidebar-content .irs--round .irs-handle:hover {
  transform: scale(1.15) !important;
  box-shadow: 0 4px 12px rgba(22, 90, 11, 0.35) !important;
}

.bo-shop-sidebar .irs--round .irs-from,
.bo-shop-sidebar .irs--round .irs-to,
.bo-shop-sidebar .irs--round .irs-single,
.bo-sidebar-content .irs--round .irs-from,
.bo-sidebar-content .irs--round .irs-to,
.bo-sidebar-content .irs--round .irs-single {
  background: #165a0b !important;
  background-color: #165a0b !important;
  color: #ffffff !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  padding: 3px 9px !important;
  border-radius: 6px !important;
  top: 0 !important;
  box-shadow: 0 2px 8px rgba(22, 90, 11, 0.2) !important;
}

.bo-shop-sidebar .irs--round .irs-from::before,
.bo-shop-sidebar .irs--round .irs-to::before,
.bo-shop-sidebar .irs--round .irs-single::before,
.bo-sidebar-content .irs--round .irs-from::before,
.bo-sidebar-content .irs--round .irs-to::before,
.bo-sidebar-content .irs--round .irs-single::before {
  border-top-color: #165a0b !important;
}

.bo-shop-sidebar .irs--round .irs-min,
.bo-shop-sidebar .irs--round .irs-max,
.bo-sidebar-content .irs--round .irs-min,
.bo-sidebar-content .irs--round .irs-max {
  background: transparent !important;
  color: rgba(42, 61, 36, 0.5) !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.05em !important;
  padding: 0 !important;
  top: 38px !important;
}

.bo-shop-sidebar .irs--round .irs-grid-text,
.bo-sidebar-content .irs--round .irs-grid-text {
  color: rgba(42, 61, 36, 0.5) !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
}

.bo-shop-sidebar .irs--round .irs-grid-pol,
.bo-sidebar-content .irs--round .irs-grid-pol {
  background: rgba(22, 90, 11, 0.2) !important;
}

.bo-shop-sidebar .irs--round .irs-grid-pol.small,
.bo-sidebar-content .irs--round .irs-grid-pol.small {
  background: rgba(22, 90, 11, 0.15) !important;
}


/* 3.4 BOUTON "Clear All" */
.bo-shop-main button[class*="clear"],
.bo-shop-main a[class*="clear"][class*="all"],
.bo-shop-main button.clear-all,
.bo-shop-main a.clear-all,
.bo-shop-main .woof_clear_button {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #165a0b !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 8px 18px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  display: inline-block !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

.bo-shop-main button[class*="clear"]:hover,
.bo-shop-main a[class*="clear"]:hover {
  background: #165a0b !important;
  color: #ffffff !important;
}


/* 3.5 PAGINATION horizontale */
.bo-shop-main .woocommerce-pagination,
.bo-shop-main nav.woocommerce-pagination {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 48px 0 0 !important;
  padding: 0 !important;
  width: 100% !important;
  text-align: center !important;
}

.bo-shop-main .woocommerce-pagination ul,
.bo-shop-main .woocommerce-pagination ul.page-numbers,
.bo-shop-main nav.woocommerce-pagination ul {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  width: auto !important;
}

.bo-shop-main .woocommerce-pagination ul li,
.bo-shop-main nav.woocommerce-pagination ul li {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  list-style: none !important;
  float: none !important;
}

.bo-shop-main .page-numbers,
.bo-shop-main a.page-numbers,
.bo-shop-main span.page-numbers {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #2a3d24 !important;
  background: transparent !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 50% !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  letter-spacing: 0.05em !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
}

.bo-shop-main .page-numbers.current,
.bo-shop-main span.page-numbers.current {
  background: #165a0b !important;
  color: #ffffff !important;
  border-color: #165a0b !important;
  box-shadow: 0 4px 12px rgba(22, 90, 11, 0.25) !important;
}

@media (hover: hover) {
  .bo-shop-main a.page-numbers:hover {
    background: rgba(22, 90, 11, 0.08) !important;
    border-color: #165a0b !important;
    color: #165a0b !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 14px rgba(22, 90, 11, 0.15) !important;
  }
}

.bo-shop-main .page-numbers.prev,
.bo-shop-main .page-numbers.next,
.bo-shop-main a.prev.page-numbers,
.bo-shop-main a.next.page-numbers {
  font-size: 16px !important;
}


/* 3.6 "Affichage de X-Y sur Z résultats" + Tri */
.bo-shop-main .woocommerce-result-count,
p.woocommerce-result-count {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: 13px !important;
  color: rgba(42, 61, 36, 0.7) !important;
  margin: 0 0 24px !important;
  background: transparent !important;
}

.bo-shop-main .woocommerce-ordering {
  margin: 0 0 24px !important;
}

.bo-shop-main .woocommerce-ordering select {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 12px !important;
  padding: 10px 36px 10px 16px !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 999px !important;
  background-color: #ffffff !important;
  color: #165a0b !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23165a0b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 11px !important;
  transition: all 0.25s ease !important;
  outline: none !important;
}

.bo-shop-main .woocommerce-ordering select:focus {
  border-color: #165a0b !important;
  box-shadow: 0 0 0 3px rgba(22, 90, 11, 0.1) !important;
}

/* ================================================ */
/* BANDEAU "Filtres actifs" en haut de la grille    */
/* ================================================ */

/* Conteneur du bandeau filtres actifs */
.woof_current_filters_block,
.woof_text_redraw,
.woof_clear_filters_block,
.woof_redraw_links_zone,
[class*="woof_redraw_links_zone"],
.woof_filters_active_zone {
  font-family: 'Arya', Georgia, serif !important;
  margin: 0 0 28px !important;
  padding: 14px 18px !important;
  background: rgba(22, 90, 11, 0.04) !important;
  border: 1px solid rgba(22, 90, 11, 0.12) !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

/* Bouton "Tout effacer" / "Clear all" — vert au lieu de bleu */
.woof_clear_all,
button.woof_clear_filters_button,
a.woof_clear_filters_button,
button[class*="clear_all"],
button[class*="clear-all"],
a[class*="clear_all"],
a[class*="clear-all"],
.woof_text_redraw button,
.woof_clear_filters_block button,
.woof_clear_filters_block a {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #165a0b !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  box-shadow: none !important;
  cursor: pointer !important;
  margin: 0 !important;
}

.woof_clear_all:hover,
button.woof_clear_filters_button:hover,
.woof_text_redraw button:hover,
.woof_clear_filters_block button:hover,
.woof_clear_filters_block a:hover {
  background: #165a0b !important;
  color: #ffffff !important;
}

/* Tags des filtres actifs (price range, en stock, etc.) */
.woof_current_filters_block_inner,
.woof_filters_active_zone span,
.woof_filters_active_zone a,
.woof_remove_link,
.woof_redraw_links_zone span,
.woof_redraw_links_zone a {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  color: #2a3d24 !important;
  background: #ffffff !important;
  padding: 5px 12px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  text-decoration: none !important;
}

/* La petite croix rouge pour retirer un filtre */
.woof_remove_link img,
.woof_filters_active_zone img {
  width: 12px !important;
  height: 12px !important;
  opacity: 0.6 !important;
  filter: grayscale(100%) !important;
  transition: opacity 0.2s ease !important;
}

.woof_remove_link:hover img,
.woof_filters_active_zone img:hover {
  opacity: 1 !important;
  filter: none !important;
}

/* ================================================================== */
/* CSS PANIER WOOCOMMERCE — VERSION FINALE V2                           */
/* À AJOUTER À LA FIN DE TON CSS ADDITIONNEL                            */
/* (remplace l'ancien CSS panier au complet)                            */
/* ================================================================== */


/* ============================================ */
/* CONTENEUR GLOBAL DU PANIER                    */
/* ============================================ */
.woocommerce-cart .woocommerce,
.woocommerce-cart-form,
.cart-collaterals,
.elementor-widget-woocommerce-cart {
  font-family: 'Arya', Georgia, serif !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}


/* ============================================ */
/* BOUTON "POURSUIVRE LES ACHATS" (anti-bleu)    */
/* ============================================ */
.woocommerce-message a.button.wc-forward,
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-notices-wrapper a.button,
a.button.wc-forward {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #165a0b !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 12px 24px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

.woocommerce-message a.button.wc-forward:hover,
a.button.wc-forward:hover {
  background: #165a0b !important;
  color: #ffffff !important;
}


/* ============================================ */
/* MESSAGES DE NOTIFICATION                       */
/* ============================================ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-notices-wrapper > .woocommerce-message {
  background: rgba(22, 90, 11, 0.05) !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 12px !important;
  padding: 18px 24px !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  color: #165a0b !important;
  margin-bottom: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  box-shadow: none !important;
  border-left: 3px solid #165a0b !important;
}

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


/* ============================================ */
/* TABLEAU PANIER — Style éditorial premium      */
/* ============================================ */
.woocommerce-cart-form table.shop_table.cart,
table.cart.woocommerce-cart-form__contents {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  border-collapse: collapse !important;
}

.woocommerce-cart-form table.shop_table.cart thead {
  border-bottom: 1px solid rgba(22, 90, 11, 0.15) !important;
}

.woocommerce-cart-form table.shop_table.cart th {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  color: rgba(22, 90, 11, 0.7) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.18em !important;
  padding: 18px 12px !important;
  background: transparent !important;
  border: none !important;
  text-align: left !important;
}

.woocommerce-cart-form table.shop_table.cart td {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.08) !important;
  padding: 28px 12px !important;
  vertical-align: middle !important;
  font-family: Georgia, serif !important;
}


/* ============================================ */
/* COLONNE SUPPRIMER (croix)                     */
/* ============================================ */
.woocommerce-cart-form .product-remove {
  width: 40px !important;
  text-align: center !important;
  padding-right: 0 !important;
}

.woocommerce-cart-form .product-remove a.remove {
  font-family: Georgia, serif !important;
  font-size: 18px !important;
  color: rgba(42, 61, 36, 0.4) !important;
  background: transparent !important;
  width: 28px !important;
  height: 28px !important;
  line-height: 26px !important;
  border-radius: 50% !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.3s ease !important;
  font-weight: 400 !important;
  border: 1px solid transparent !important;
}

.woocommerce-cart-form .product-remove a.remove:hover {
  background: rgba(185, 28, 28, 0.08) !important;
  color: #b91c1c !important;
  border-color: rgba(185, 28, 28, 0.2) !important;
  transform: scale(1.05) !important;
}


/* ============================================ */
/* COLONNE PHOTO PRODUIT — format CARRÉ          */
/* ============================================ */
.woocommerce-cart-form .product-thumbnail {
  width: 110px !important;
  padding-right: 0 !important;
}

.woocommerce-cart-form .product-thumbnail a {
  display: block !important;
  width: 90px !important;
  height: 90px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: #ede9e0 !important;
  transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.woocommerce-cart-form .product-thumbnail a:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(22, 90, 11, 0.15) !important;
}

.woocommerce-cart-form .product-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transition: transform 0.5s ease !important;
}

.woocommerce-cart-form .product-thumbnail a:hover img {
  transform: scale(1.05) !important;
}


/* ============================================ */
/* COLONNE NOM PRODUIT                           */
/* ============================================ */
.woocommerce-cart-form .product-name {
  padding-left: 8px !important;
}

.woocommerce-cart-form .product-name a {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
  transition: color 0.3s ease !important;
  display: inline-block !important;
}

.woocommerce-cart-form .product-name a:hover {
  color: #165a0b !important;
}


/* ============================================ */
/* COLONNE PRIX                                  */
/* ============================================ */
.woocommerce-cart-form .product-price,
.woocommerce-cart-form .product-subtotal {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #165a0b !important;
  letter-spacing: 0.02em !important;
}


/* ============================================ */
/* COLONNE QUANTITÉ — avec boutons +/-           */
/* ============================================ */
.woocommerce-cart-form .product-quantity {
  width: 130px !important;
}

.woocommerce-cart-form .product-quantity .quantity {
  display: inline-flex !important;
  align-items: center !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  height: 40px !important;
  transition: border-color 0.25s ease !important;
}

.woocommerce-cart-form .product-quantity .quantity:hover {
  border-color: rgba(22, 90, 11, 0.4) !important;
}

/* Boutons +/- premium */
.woocommerce-cart-form .pn-qty-btn {
  background: transparent !important;
  border: none !important;
  width: 32px !important;
  height: 38px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  color: #165a0b !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  transition: all 0.2s ease !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  -webkit-tap-highlight-color: transparent !important;
  line-height: 1 !important;
  user-select: none !important;
}

.woocommerce-cart-form .pn-qty-btn:hover {
  background: rgba(22, 90, 11, 0.08) !important;
  color: #165a0b !important;
}

.woocommerce-cart-form .pn-qty-btn:active {
  transform: scale(0.92) !important;
}

.woocommerce-cart-form .pn-qty-minus {
  border-right: 1px solid rgba(22, 90, 11, 0.12) !important;
  border-radius: 999px 0 0 999px !important;
}

.woocommerce-cart-form .pn-qty-plus {
  border-left: 1px solid rgba(22, 90, 11, 0.12) !important;
  border-radius: 0 999px 999px 0 !important;
}

/* Input quantité */
.woocommerce-cart-form .product-quantity input.qty {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #165a0b !important;
  background: transparent !important;
  border: none !important;
  width: 44px !important;
  height: 38px !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  -moz-appearance: textfield !important;
  appearance: textfield !important;
  -webkit-appearance: none !important;
  pointer-events: none !important;
}

.woocommerce-cart-form .product-quantity input.qty::-webkit-outer-spin-button,
.woocommerce-cart-form .product-quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.woocommerce-cart-form .product-quantity input.qty:focus {
  outline: none !important;
  box-shadow: none !important;
}


/* ============================================ */
/* LIGNE "ACTIONS" + Mise à jour panier          */
/* ============================================ */
.woocommerce-cart-form .actions {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

.woocommerce-cart-form .actions button[name="update_cart"],
.woocommerce-cart-form button.button[name="update_cart"] {
  display: none !important;
}


/* ============================================ */
/* CODE PROMO — caché sur la page panier         */
/* (info redirigée à l'étape de paiement)        */
/* ============================================ */
.woocommerce-cart-form .actions .coupon,
.woocommerce-cart-form .actions form.coupon,
.woocommerce-cart-form .actions .coupon-form,
.bo-coupon-toggle {
  display: none !important;
}


/* ============================================ */
/* TOTAUX DU PANIER (à droite)                   */
/* ============================================ */
.cart_totals,
.cart-collaterals .cart_totals {
  background: #fafaf7 !important;
  border: 1px solid rgba(22, 90, 11, 0.12) !important;
  border-radius: 16px !important;
  padding: 32px !important;
  box-shadow: 0 4px 16px rgba(22, 90, 11, 0.04) !important;
  font-family: 'Arya', Georgia, serif !important;
}

.cart_totals h2 {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  color: #165a0b !important;
  margin: 0 0 24px !important;
  padding: 0 0 18px !important;
  line-height: 1 !important;
  letter-spacing: -0.01em !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.12) !important;
}

.cart_totals table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  background: transparent !important;
}

.cart_totals table th,
.cart_totals table td {
  padding: 14px 0 !important;
  border: none !important;
  background: transparent !important;
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  vertical-align: top !important;
}

.cart_totals table th {
  font-family: 'Arya', Georgia, serif !important;
  font-weight: 700 !important;
  color: rgba(22, 90, 11, 0.8) !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  letter-spacing: 0.15em !important;
  text-align: left !important;
  width: 45% !important;
}

.cart_totals table td {
  text-align: right !important;
  color: #2a3d24 !important;
}

.cart_totals .cart-subtotal,
.cart_totals .shipping {
  border-bottom: 1px solid rgba(22, 90, 11, 0.08) !important;
}

/* TOTAL final mis en avant */
.cart_totals .order-total {
  background: rgba(22, 90, 11, 0.04) !important;
  border-radius: 8px !important;
  margin: 8px -8px 0 !important;
}

.cart_totals .order-total th {
  font-family: 'Arya', Georgia, serif !important;
  color: #165a0b !important;
  font-size: 13px !important;
  padding-left: 8px !important;
}

.cart_totals .order-total td {
  font-family: 'Arya', Georgia, serif !important;
  color: #165a0b !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  padding-right: 8px !important;
}

.cart_totals .order-total .woocommerce-Price-amount {
  color: #165a0b !important;
}


/* ============================================ */
/* MENTIONS LIVRAISON                            */
/* ============================================ */
.cart_totals .shipping td p,
.cart_totals .shipping td .woocommerce-shipping-destination,
.cart_totals .shipping .shipping-calculator-button {
  font-family: Georgia, serif !important;
  font-style: italic !important;
  font-size: 13px !important;
  color: rgba(42, 61, 36, 0.7) !important;
  margin: 4px 0 !important;
  text-align: right !important;
  display: block !important;
}

.cart_totals .shipping a.shipping-calculator-button {
  color: #165a0b !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(22, 90, 11, 0.3) !important;
  text-underline-offset: 3px !important;
  font-weight: 600 !important;
  font-style: normal !important;
  transition: text-decoration-color 0.25s ease !important;
}

.cart_totals .shipping a.shipping-calculator-button:hover {
  text-decoration-color: #165a0b !important;
}


/* ============================================ */
/* BOUTON "PASSER À LA COMMANDE"                 */
/* ============================================ */
.wc-proceed-to-checkout {
  margin-top: 24px !important;
  padding: 0 !important;
  position: relative !important;
}

.wc-proceed-to-checkout a.checkout-button,
.wc-proceed-to-checkout .button.alt {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background: #165a0b !important;
  background-color: #165a0b !important;
  background-image: none !important;
  color: #ffffff !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 18px 32px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
  box-shadow: 0 4px 14px rgba(22, 90, 11, 0.2) !important;
  margin: 0 !important;
  text-shadow: none !important;
}

.wc-proceed-to-checkout a.checkout-button:hover,
.wc-proceed-to-checkout .button.alt:hover {
  background: #1f7a14 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(22, 90, 11, 0.3) !important;
}

/* Petite info "code promo" sous le bouton checkout */
.wc-proceed-to-checkout::after {
  content: "Vous avez un code promo ? Vous pourrez l'appliquer à l'étape de paiement." !important;
  display: block !important;
  margin: 16px 0 0 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: 12px !important;
  color: rgba(42, 61, 36, 0.6) !important;
  text-align: center !important;
  line-height: 1.5 !important;
  padding: 0 8px !important;
}


/* ============================================ */
/* BOUTON G PAY (Google Pay) — sobre             */
/* ============================================ */
.wc-proceed-to-checkout .gpay-card-info-container,
.gpay-card-info-container,
.wc-proceed-to-checkout > .gpay-button-container,
.cart_totals .gpay-button-container {
  margin-top: 12px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.gpay-card-info-container .gpay-card-info-iframe,
.gpay-button-container button {
  border-radius: 999px !important;
  height: 56px !important;
}


/* ============================================ */
/* CALCULATEUR FRAIS DE PORT (popup)             */
/* ============================================ */
.shipping-calculator-form input[type="text"],
.shipping-calculator-form select,
.shipping-calculator-form .select2-selection {
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #2a3d24 !important;
  width: 100% !important;
  margin-bottom: 10px !important;
  outline: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.shipping-calculator-form input:focus,
.shipping-calculator-form select:focus {
  border-color: #165a0b !important;
  box-shadow: 0 0 0 3px rgba(22, 90, 11, 0.1) !important;
}

.shipping-calculator-form button[type="submit"] {
  font-family: 'Arya', Georgia, serif !important;
  background: #165a0b !important;
  color: #ffffff !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 11px 22px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.shipping-calculator-form button[type="submit"]:hover {
  background: #1f7a14 !important;
}


/* ============================================ */
/* PANIER VIDE                                   */
/* ============================================ */
.cart-empty.woocommerce-info,
.wc-empty-cart-message {
  font-family: Georgia, serif !important;
  font-style: italic !important;
  font-size: 16px !important;
  text-align: center !important;
  padding: 48px 24px !important;
  background: rgba(22, 90, 11, 0.04) !important;
  border: 1px solid rgba(22, 90, 11, 0.15) !important;
  border-radius: 16px !important;
  color: #165a0b !important;
}

.return-to-shop a.button.wc-backward {
  display: inline-block !important;
  margin-top: 24px !important;
  background: #165a0b !important;
  color: #ffffff !important;
  border-radius: 999px !important;
  padding: 14px 32px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

.return-to-shop a.button.wc-backward:hover {
  background: #1f7a14 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(22, 90, 11, 0.2) !important;
}


/* ============================================ */
/* RESPONSIVE MOBILE                             */
/* ============================================ */
@media (max-width: 768px) {

  /* CACHER les labels Kadence "Produit :", "Prix :", etc. */
  .woocommerce-cart-form td.product-name::before,
  .woocommerce-cart-form td.product-price::before,
  .woocommerce-cart-form td.product-quantity::before,
  .woocommerce-cart-form td[data-title]::before,
  .woocommerce table.shop_table_responsive tr td::before,
  .woocommerce table.shop_table_responsive tr td[data-title]::before,
  .woocommerce-page table.shop_table_responsive tr td::before {
    display: none !important;
    content: none !important;
  }

  /* Layout colonnes empilées */
  .woocommerce-cart .woocommerce-cart-form,
  .woocommerce-cart .cart-collaterals {
    width: 100% !important;
    float: none !important;
    margin: 0 0 24px !important;
  }

  /* Cacher l'en-tête du tableau */
  .woocommerce-cart-form table.shop_table.cart thead {
    display: none !important;
  }

  /* CHAQUE LIGNE PRODUIT = une carte mobile claire */
  .woocommerce-cart-form table.shop_table.cart tbody tr.cart_item {
    display: grid !important;
    grid-template-columns: 80px 1fr 28px !important;
    grid-template-areas:
      "thumb name remove"
      "thumb price price"
      "thumb qty qty"
      "subtotal subtotal subtotal" !important;
    gap: 8px 14px !important;
    padding: 20px 0 !important;
    border-bottom: 1px solid rgba(22, 90, 11, 0.08) !important;
    align-items: start !important;
    background: transparent !important;
  }

  .woocommerce-cart-form table.shop_table.cart td {
    display: block !important;
    border: none !important;
    padding: 0 !important;
    text-align: left !important;
    width: auto !important;
    background: transparent !important;
  }

  /* PHOTO produit */
  .woocommerce-cart-form td.product-thumbnail {
    grid-area: thumb !important;
    width: 80px !important;
  }

  .woocommerce-cart-form td.product-thumbnail a {
    width: 80px !important;
    height: 80px !important;
    border-radius: 8px !important;
  }

  /* NOM produit */
  .woocommerce-cart-form td.product-name {
    grid-area: name !important;
    padding-left: 0 !important;
  }

  .woocommerce-cart-form td.product-name a {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  /* PRIX unitaire */
  .woocommerce-cart-form td.product-price {
    grid-area: price !important;
    font-size: 13px !important;
    color: rgba(42, 61, 36, 0.6) !important;
    font-weight: 400 !important;
  }

  /* QUANTITÉ */
  .woocommerce-cart-form td.product-quantity {
    grid-area: qty !important;
    width: auto !important;
    margin-top: 4px !important;
  }

  .woocommerce-cart-form td.product-quantity .quantity {
    display: inline-flex !important;
  }

  /* SOUS-TOTAL en bas, mis en avant */
  .woocommerce-cart-form td.product-subtotal {
    grid-area: subtotal !important;
    text-align: right !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid rgba(22, 90, 11, 0.08) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  .woocommerce-cart-form td.product-subtotal::before {
    content: "Total" !important;
    font-family: 'Arya', Georgia, serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: rgba(22, 90, 11, 0.7) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    display: inline-block !important;
  }

  /* CROIX SUPPRIMER */
  .woocommerce-cart-form td.product-remove {
    grid-area: remove !important;
    width: 28px !important;
    text-align: right !important;
    align-self: start !important;
  }

  /* Totaux du panier — pleine largeur, plus aéré */
  .cart_totals {
    padding: 24px 20px !important;
  }

  .cart_totals h2 {
    font-size: 20px !important;
  }

  .cart_totals .order-total td {
    font-size: 20px !important;
  }
}

/* ================================================================== */
/* CSS CHECKOUT — VERSION POLISH LÉGER                                  */
/* Garde le layout natif WooCommerce/Kadence intact                     */
/* Ajoute juste les finitions premium DA Ma typo                        */
/* À AJOUTER À LA FIN DE TON CSS ADDITIONNEL                            */
/* ================================================================== */


/* ============================================ */
/* TITRES (Détails de facturation, Votre commande) */
/* ============================================ */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3 {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: clamp(20px, 2.4vw, 26px) !important;
  font-weight: 500 !important;
  color: #165a0b !important;
  margin: 0 0 24px !important;
  padding: 0 0 14px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.15) !important;
}


/* ============================================ */
/* LABELS (Prénom *, Nom *, etc.)                */
/* ============================================ */
.woocommerce-checkout .form-row label {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  color: #165a0b !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  margin-bottom: 8px !important;
  display: block !important;
}

.woocommerce-checkout .form-row label .optional {
  font-family: Georgia, serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
  color: rgba(42, 61, 36, 0.5) !important;
  text-transform: lowercase !important;
  letter-spacing: 0 !important;
  font-size: 12px !important;
  margin-left: 4px !important;
}

.woocommerce-checkout .form-row .required {
  color: #165a0b !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}


/* ============================================ */
/* CHAMPS DE SAISIE (input, textarea)            */
/* ============================================ */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 15px !important;
  padding: 13px 16px !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 10px !important;
  background: #fafaf7 !important;
  color: #2a3d24 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  line-height: 1.5 !important;
  transition: all 0.25s ease !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  height: auto !important;
  outline: none !important;
}

.woocommerce-checkout .form-row textarea {
  min-height: 100px !important;
  resize: vertical !important;
}

.woocommerce-checkout .form-row input::placeholder,
.woocommerce-checkout .form-row textarea::placeholder {
  color: rgba(42, 61, 36, 0.4) !important;
  font-style: italic !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus {
  border-color: #165a0b !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(22, 90, 11, 0.1) !important;
  outline: none !important;
}

@media (hover: hover) {
  .woocommerce-checkout .form-row input.input-text:hover,
  .woocommerce-checkout .form-row textarea:hover {
    border-color: rgba(22, 90, 11, 0.4) !important;
  }
}


/* ============================================ */
/* SELECT2 (sélecteur Pays)                       */
/* ============================================ */
.woocommerce-checkout .select2-container .select2-selection--single {
  height: 48px !important;
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 10px !important;
  background: #fafaf7 !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  font-family: Georgia, serif !important;
  font-size: 15px !important;
  color: #2a3d24 !important;
  padding: 13px 16px !important;
  line-height: 1.5 !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 48px !important;
  right: 12px !important;
}

.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single,
.woocommerce-checkout .select2-container--default.select2-container--focus .select2-selection--single {
  border-color: #165a0b !important;
  box-shadow: 0 0 0 3px rgba(22, 90, 11, 0.1) !important;
  background: #ffffff !important;
}

.select2-dropdown {
  border: 1px solid rgba(22, 90, 11, 0.2) !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 24px rgba(22, 90, 11, 0.08) !important;
  background: #ffffff !important;
}

.select2-results__option {
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  padding: 10px 16px !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted {
  background: #165a0b !important;
  color: #ffffff !important;
}


/* ============================================ */
/* BOUTON G PAY EXPRESS (limiter largeur)        */
/* ============================================ */
.gpay-card-info-container {
  max-width: 480px !important;
  margin: 0 auto 32px !important;
  display: block !important;
}

.gpay-card-info-iframe,
.gpay-card-info-container .gpay-card-info-iframe {
  border-radius: 999px !important;
  overflow: hidden !important;
  width: 100% !important;
  height: 56px !important;
  display: block !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.gpay-card-info-iframe:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}

/* "OU" en italique élégant */
.gpay-card-info-container ~ p,
p.gpay-or-separator,
.wcpay-or-separator {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: 13px !important;
  color: rgba(42, 61, 36, 0.5) !important;
  text-align: center !important;
  margin: 16px 0 32px !important;
  letter-spacing: 0.05em !important;
}


/* ============================================ */
/* RÉCAP COMMANDE — encadré crème               */
/* ============================================ */
.woocommerce-checkout #order_review_heading {
  background: #fafaf7 !important;
  border: 1px solid rgba(22, 90, 11, 0.12) !important;
  border-bottom: none !important;
  border-radius: 16px 16px 0 0 !important;
  padding: 28px 28px 14px !important;
  margin: 0 !important;
}

.woocommerce-checkout #order_review {
  background: #fafaf7 !important;
  border: 1px solid rgba(22, 90, 11, 0.12) !important;
  border-top: none !important;
  border-radius: 0 0 16px 16px !important;
  padding: 0 28px 28px !important;
  margin: 0 0 24px !important;
  box-shadow: 0 4px 16px rgba(22, 90, 11, 0.04) !important;
}


/* Tableau récap */
table.shop_table.woocommerce-checkout-review-order-table {
  background: transparent !important;
  border: none !important;
  margin: 0 !important;
  width: 100% !important;
  border-collapse: collapse !important;
}

table.woocommerce-checkout-review-order-table thead th {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  color: rgba(22, 90, 11, 0.7) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.18em !important;
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.15) !important;
  background: transparent !important;
}

table.woocommerce-checkout-review-order-table thead th:last-child {
  text-align: right !important;
}

table.woocommerce-checkout-review-order-table tbody td,
table.woocommerce-checkout-review-order-table tbody th {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.08) !important;
  padding: 16px 0 !important;
  font-family: Georgia, serif !important;
  font-size: 14px !important;
}

table.woocommerce-checkout-review-order-table .product-name {
  font-family: Georgia, serif !important;
  color: #1a1a1a !important;
  font-weight: 500 !important;
}

table.woocommerce-checkout-review-order-table .product-name strong {
  font-weight: 500 !important;
  color: rgba(42, 61, 36, 0.5) !important;
  font-size: 12px !important;
  margin-left: 6px !important;
}

table.woocommerce-checkout-review-order-table .product-total {
  font-family: 'Arya', Georgia, serif !important;
  color: #165a0b !important;
  font-weight: 600 !important;
  text-align: right !important;
}

/* Tfoot */
table.woocommerce-checkout-review-order-table tfoot th {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  color: rgba(22, 90, 11, 0.8) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  padding: 14px 0 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.08) !important;
  text-align: left !important;
}

table.woocommerce-checkout-review-order-table tfoot td {
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  color: #2a3d24 !important;
  text-align: right !important;
  padding: 14px 0 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.08) !important;
}

/* TOTAL final mis en avant */
table.woocommerce-checkout-review-order-table tfoot tr.order-total {
  background: rgba(22, 90, 11, 0.04) !important;
}

table.woocommerce-checkout-review-order-table tfoot tr.order-total th {
  font-family: 'Arya', Georgia, serif !important;
  color: #165a0b !important;
  font-size: 13px !important;
  padding: 18px 14px 18px 16px !important;
  border: none !important;
  border-radius: 8px 0 0 8px !important;
}

table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
  font-family: 'Arya', Georgia, serif !important;
  color: #165a0b !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  padding: 18px 16px 18px 14px !important;
  border: none !important;
  border-radius: 0 8px 8px 0 !important;
}


/* ============================================ */
/* MÉTHODES DE PAIEMENT (Carte, etc.)            */
/* ============================================ */
.woocommerce-checkout-payment {
  background: transparent !important;
  margin-top: 24px !important;
  padding: 0 !important;
}

.woocommerce-checkout-payment ul.payment_methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 20px !important;
  border: none !important;
  background: transparent !important;
}

.woocommerce-checkout-payment ul.payment_methods li {
  background: #ffffff !important;
  border: 1px solid rgba(22, 90, 11, 0.15) !important;
  border-radius: 12px !important;
  margin: 0 0 10px !important;
  padding: 14px 18px !important;
  list-style: none !important;
  transition: all 0.25s ease !important;
}

.woocommerce-checkout-payment ul.payment_methods li:hover {
  border-color: rgba(22, 90, 11, 0.35) !important;
}

.woocommerce-checkout-payment ul.payment_methods li.payment_method_selected,
.woocommerce-checkout-payment ul.payment_methods li:has(input[type="radio"]:checked) {
  border-color: #165a0b !important;
  background: rgba(22, 90, 11, 0.03) !important;
  box-shadow: 0 0 0 2px rgba(22, 90, 11, 0.08) !important;
}

.woocommerce-checkout-payment ul.payment_methods input[type="radio"] {
  accent-color: #165a0b !important;
  width: 16px !important;
  height: 16px !important;
  cursor: pointer !important;
  margin-right: 10px !important;
  vertical-align: middle !important;
}

.woocommerce-checkout-payment ul.payment_methods label {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #165a0b !important;
  cursor: pointer !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  display: inline-flex !important;
  align-items: center !important;
}

.woocommerce-checkout-payment ul.payment_methods label img {
  max-height: 22px !important;
  margin-left: 8px !important;
  vertical-align: middle !important;
}

.woocommerce-checkout-payment ul.payment_methods .payment_box {
  background: transparent !important;
  border: none !important;
  padding: 12px 0 0 26px !important;
  margin: 0 !important;
  font-family: Georgia, serif !important;
  font-size: 13px !important;
  color: rgba(42, 61, 36, 0.7) !important;
}

.woocommerce-checkout-payment ul.payment_methods .payment_box::before {
  display: none !important;
}


/* ============================================ */
/* DONNÉES PERSONNELLES + CGV                    */
/* ============================================ */
.woocommerce-privacy-policy-text,
.woocommerce-terms-and-conditions-wrapper {
  font-family: Georgia, serif !important;
  font-size: 13px !important;
  color: rgba(42, 61, 36, 0.7) !important;
  line-height: 1.6 !important;
  margin: 16px 0 !important;
}

.woocommerce-privacy-policy-text a,
.woocommerce-terms-and-conditions-wrapper a {
  color: #165a0b !important;
  text-decoration: underline !important;
  text-decoration-color: rgba(22, 90, 11, 0.3) !important;
  text-underline-offset: 2px !important;
}

.woocommerce-form__label-for-checkbox {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  cursor: pointer !important;
}

.woocommerce-form__input-checkbox,
.woocommerce-checkout input[type="checkbox"] {
  accent-color: #165a0b !important;
  width: 16px !important;
  height: 16px !important;
  margin-top: 3px !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
}


/* ============================================ */
/* BOUTON COMMANDER — pilule verte premium       */
/* ============================================ */
.woocommerce-checkout #place_order,
button#place_order {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background: #165a0b !important;
  background-color: #165a0b !important;
  background-image: none !important;
  color: #ffffff !important;
  border: 1px solid #165a0b !important;
  border-radius: 999px !important;
  padding: 16px 32px !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
  box-shadow: 0 4px 14px rgba(22, 90, 11, 0.2) !important;
  margin: 16px 0 0 !important;
  text-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  height: auto !important;
  line-height: 1.4 !important;
}

.woocommerce-checkout #place_order:hover,
button#place_order:hover {
  background: #1f7a14 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(22, 90, 11, 0.3) !important;
}


/* ============================================ */
/* LOADING SPINNER — vert au lieu de gris        */
/* ============================================ */
.woocommerce-checkout .blockUI.blockOverlay {
  background: rgba(255, 255, 255, 0.85) !important;
  border-radius: 16px !important;
}

.woocommerce-checkout .blockUI.blockOverlay::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 32px !important;
  height: 32px !important;
  margin: -16px 0 0 -16px !important;
  border: 3px solid rgba(22, 90, 11, 0.2) !important;
  border-top-color: #165a0b !important;
  border-radius: 50% !important;
  animation: ckSpin 0.8s linear infinite !important;
}

@keyframes ckSpin {
  to { transform: rotate(360deg); }
}


/* ============================================ */
/* MOBILE                                         */
/* ============================================ */
@media (max-width: 768px) {
  .gpay-card-info-container {
    max-width: 100% !important;
    margin-bottom: 24px !important;
  }

  .woocommerce-checkout #order_review_heading {
    padding: 22px 20px 12px !important;
  }

  .woocommerce-checkout #order_review {
    padding: 0 20px 22px !important;
  }
}

/* ================================================================== */
/* CSS PAGE PRODUIT SINGLE — VERSION V2 FINALE                          */
/* Remplace l'ancien CSS produit + patches au complet                   */
/* ================================================================== */


/* ============================================ */
/* CONTENEUR PAGE PRODUIT                        */
/* ============================================ */
.single-product .product,
.single-product div.product {
  font-family: 'Arya', Georgia, serif !important;
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding: clamp(20px, 3vw, 40px) clamp(20px, 4vw, 48px) !important;
}


/* ============================================ */
/* FIL D'ARIANE                                  */
/* ============================================ */
.single-product .woocommerce-breadcrumb {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  color: rgba(42, 61, 36, 0.6) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  font-weight: 700 !important;
  margin: 0 0 32px !important;
  padding: 0 !important;
  border: none !important;
}

.single-product .woocommerce-breadcrumb a {
  color: rgba(42, 61, 36, 0.6) !important;
  text-decoration: none !important;
  transition: color 0.25s ease !important;
}

.single-product .woocommerce-breadcrumb a:hover {
  color: #165a0b !important;
}


/* ============================================ */
/* GALERIE PRODUIT                               */
/* ============================================ */
.single-product .woocommerce-product-gallery {
  width: 50% !important;
  position: relative !important;
}

.single-product .woocommerce-product-gallery__wrapper {
  border-radius: 16px !important;
  overflow: hidden !important;
  background: #fafaf7 !important;
  box-shadow: 0 8px 32px rgba(22, 90, 11, 0.06) !important;
}

.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery__image a img {
  border-radius: 16px !important;
  transition: transform 0.6s ease !important;
}

.single-product .woocommerce-product-gallery__image:hover img {
  transform: scale(1.02) !important;
}


/* Badge "Promo !" */
.single-product .onsale,
.single-product span.onsale {
  position: absolute !important;
  top: 20px !important;
  left: 20px !important;
  background: #165a0b !important;
  color: #ffffff !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 8px 16px !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 12px rgba(22, 90, 11, 0.25) !important;
  z-index: 10 !important;
  border: none !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1 !important;
}


/* ============================================ */
/* LOUPE ZOOM — propre, sans doublon              */
/* ============================================ */
.single-product .woocommerce-product-gallery__trigger {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  background: rgba(255, 255, 255, 0.95) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  backdrop-filter: blur(8px) !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
  z-index: 10 !important;
  text-decoration: none !important;
  text-indent: -9999px !important;
  font-size: 0 !important;
  transition: all 0.3s ease !important;
  border: none !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Icône loupe via SVG en background (remplace toute icône native) */
.single-product .woocommerce-product-gallery__trigger::before,
.single-product .woocommerce-product-gallery__trigger::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  text-indent: 0 !important;
}

.single-product .woocommerce-product-gallery__trigger::before {
  content: '' !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23165a0b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 18px 18px !important;
  width: 24px !important;
  height: 24px !important;
}

.single-product .woocommerce-product-gallery__trigger::after {
  display: none !important;
}

.single-product .woocommerce-product-gallery__trigger img {
  display: none !important;
}

.single-product .woocommerce-product-gallery__trigger:hover {
  background: #165a0b !important;
  transform: scale(1.05) !important;
}

.single-product .woocommerce-product-gallery__trigger:hover::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E") !important;
}


/* ============================================ */
/* MINIATURES                                    */
/* ============================================ */
.single-product .flex-control-thumbs,
.single-product .flex-control-nav {
  margin: 16px 0 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(75px, 1fr)) !important;
  gap: 8px !important;
}

.single-product .flex-control-thumbs li,
.single-product .flex-control-nav li {
  width: 100% !important;
  margin: 0 !important;
  list-style: none !important;
  float: none !important;
}

.single-product .flex-control-thumbs li img,
.single-product .flex-control-nav li img {
  border-radius: 8px !important;
  border: 2px solid transparent !important;
  opacity: 0.7 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 !important;
  object-fit: cover !important;
  background: #ede9e0 !important;
}

.single-product .flex-control-thumbs li img:hover,
.single-product .flex-control-nav li img:hover {
  opacity: 1 !important;
  transform: translateY(-2px) !important;
}

.single-product .flex-control-thumbs li img.flex-active,
.single-product .flex-control-nav li img.flex-active {
  opacity: 1 !important;
  border-color: #165a0b !important;
  box-shadow: 0 4px 8px rgba(22, 90, 11, 0.15) !important;
}


/* ============================================ */
/* COLONNE INFOS PRODUIT                         */
/* ============================================ */
.single-product .summary,
.single-product .summary.entry-summary {
  width: 46% !important;
  padding: 0 0 0 clamp(20px, 3vw, 40px) !important;
}


/* ============================================ */
/* TITRE PRODUIT                                 */
/* ============================================ */
.single-product .summary .product_title,
.single-product .summary h1.product_title {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: clamp(28px, 3.6vw, 42px) !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
  margin: 0 0 24px !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
}

.single-product .summary .product_title::after {
  content: '' !important;
  display: block !important;
  width: 50px !important;
  height: 1px !important;
  background: rgba(22, 90, 11, 0.4) !important;
  margin: 20px 0 0 !important;
}


/* ============================================ */
/* PRIX                                          */
/* ============================================ */
.single-product .summary .price,
.single-product .summary p.price,
.single-product .summary span.price {
  font-family: 'Arya', Georgia, serif !important;
  font-size: clamp(26px, 3.2vw, 36px) !important;
  font-weight: 700 !important;
  color: #165a0b !important;
  margin: 0 0 28px !important;
  letter-spacing: -0.01em !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
}

.single-product .summary .price del,
.single-product .summary p.price del,
.single-product .summary del .woocommerce-Price-amount {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  color: rgba(42, 61, 36, 0.4) !important;
  text-decoration: line-through !important;
  text-decoration-color: rgba(185, 28, 28, 0.6) !important;
  text-decoration-thickness: 1.5px !important;
  opacity: 1 !important;
}

.single-product .summary .price ins,
.single-product .summary p.price ins {
  background: transparent !important;
  text-decoration: none !important;
  color: #165a0b !important;
  font-weight: 700 !important;
  font-size: clamp(28px, 3.5vw, 38px) !important;
}

.single-product .summary .price .screen-reader-text,
.single-product .summary del .screen-reader-text,
.single-product .summary ins .screen-reader-text {
  display: none !important;
  position: absolute !important;
  left: -9999px !important;
}


/* ============================================ */
/* DESCRIPTION COURTE                            */
/* ============================================ */
.single-product .summary .woocommerce-product-details__short-description {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(15px, 1.55vw, 17px) !important;
  line-height: 1.7 !important;
  color: #2a3d24 !important;
  margin: 0 0 32px !important;
  padding: 0 0 28px !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.1) !important;
  opacity: 0.85 !important;
}


/* ============================================ */
/* STOCK STATUS                                  */
/* ============================================ */
.single-product .summary .stock,
.single-product .summary p.stock {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: transparent !important;
  border: none !important;
}

.single-product .summary .stock.in-stock {
  color: #165a0b !important;
}

.single-product .summary .stock.in-stock::before {
  content: '✓' !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  background: rgba(22, 90, 11, 0.1) !important;
  color: #165a0b !important;
  border-radius: 50% !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

.single-product .summary .stock.out-of-stock {
  color: #b91c1c !important;
}


/* ============================================ */
/* QUANTITÉ + BOUTON AJOUTER AU PANIER (PC)      */
/* ============================================ */
@media (min-width: 769px) {
  .single-product .summary form.cart {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 0 20px !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
  }

  .single-product .summary form.cart .quantity {
    flex: 0 0 auto !important;
    width: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid rgba(22, 90, 11, 0.25) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    height: 56px !important;
    transition: border-color 0.25s ease !important;
  }

  .single-product .summary form.cart .quantity:hover {
    border-color: rgba(22, 90, 11, 0.5) !important;
  }

  .single-product .summary form.cart .quantity input.qty {
    font-family: 'Arya', Georgia, serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #165a0b !important;
    background: transparent !important;
    border: none !important;
    width: 70px !important;
    height: 54px !important;
    text-align: center !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
    -moz-appearance: textfield !important;
    appearance: textfield !important;
    -webkit-appearance: none !important;
  }

  .single-product .summary form.cart button.single_add_to_cart_button {
    flex: 1 1 auto !important;
    min-width: 220px !important;
    background: #165a0b !important;
    color: #ffffff !important;
    border: 1px solid #165a0b !important;
    border-radius: 999px !important;
    padding: 0 28px !important;
    height: 56px !important;
    font-family: 'Arya', Georgia, serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1) !important;
    box-shadow: 0 4px 14px rgba(22, 90, 11, 0.2) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-shadow: none !important;
    white-space: nowrap !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    text-decoration: none !important;
    margin: 0 !important;
    line-height: 1.4 !important;
  }

  .single-product .summary form.cart button.single_add_to_cart_button:hover {
    background: #1f7a14 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 24px rgba(22, 90, 11, 0.3) !important;
  }
}


/* ============================================ */
/* QUANTITÉ + BOUTON AJOUTER AU PANIER (MOBILE)  */
/* ⚠️ FIX : input qty caché complètement, valeur 1 par défaut */
/* ============================================ */
@media (max-width: 768px) {

  .single-product .summary form.cart {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 0 20px !important;
  }

  /* CACHER complètement le wrapper .quantity sur mobile */
  /* (les gens prennent rarement plus d'1 unité d'une machine) */
  .single-product .summary form.cart .quantity {
    display: none !important;
  }

  /* Garder l'input quantité dans le DOM mais invisible */
  /* pour que la valeur 1 soit envoyée au panier */
  .single-product .summary form.cart .quantity input.qty {
    display: none !important;
  }

  /* Bouton "Ajouter au panier" pleine largeur */
  .single-product .summary form.cart button.single_add_to_cart_button {
    width: 100% !important;
    flex: 0 0 auto !important;
    min-height: 56px !important;
    background: #165a0b !important;
    color: #ffffff !important;
    border: 1px solid #165a0b !important;
    border-radius: 999px !important;
    padding: 16px 24px !important;
    font-family: 'Arya', Georgia, serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: all 0.4s ease !important;
    box-shadow: 0 4px 14px rgba(22, 90, 11, 0.2) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    line-height: 1.3 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
  }
}


/* ============================================ */
/* G PAY / APPLE PAY EXPRESS                     */
/* ============================================ */
.single-product .gpay-card-info-container,
.single-product [class*="payment-request"],
.single-product [class*="apple-pay"] {
  max-width: 100% !important;
  margin: 0 0 24px !important;
}

.single-product .gpay-card-info-iframe {
  border-radius: 999px !important;
  height: 56px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  transition: all 0.25s ease !important;
}

.single-product .gpay-card-info-iframe:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}


/* ============================================ */
/* BANDEAU RÉASSURANCE — Premium 3 lignes propres */
/* ============================================ */

/* Reset complet du product_meta natif */
.single-product .summary .product_meta {
  background: linear-gradient(135deg, #f5f1e8 0%, #ede8db 100%) !important;
  border: 1px solid rgba(22, 90, 11, 0.12) !important;
  border-left: 3px solid #165a0b !important;
  border-radius: 0 12px 12px 0 !important;
  padding: 20px 24px !important;
  margin: 28px 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  list-style: none !important;
}

/* CACHER les éléments natifs (catégorie + tag + sku) */
.single-product .summary .product_meta .posted_in,
.single-product .summary .product_meta .tagged_as,
.single-product .summary .product_meta .sku_wrapper {
  display: none !important;
}

/* CRÉER les 3 lignes de bénéfices via pseudo-element multi-ligne */
.single-product .summary .product_meta::before {
  display: block !important;
  content: '✓  Machine entièrement révisée\A✓  Livraison soignée sous 48h\A✓  Paiement 100% sécurisé' !important;
  white-space: pre-line !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: 14px !important;
  line-height: 2 !important;
  color: #2a3d24 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-weight: 400 !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Cacher l'autre pseudo-element pour pas qu'il fasse doublon */
.single-product .summary .product_meta::after {
  display: none !important;
}


/* ============================================ */
/* SECTION DESCRIPTION (ONGLETS)                 */
/* ============================================ */
.single-product .woocommerce-tabs {
  margin: clamp(60px, 8vw, 100px) 0 !important;
  padding: clamp(40px, 5vw, 60px) clamp(24px, 4vw, 48px) !important;
  background: #fafaf7 !important;
  border-radius: 16px !important;
  border: 1px solid rgba(22, 90, 11, 0.08) !important;
}

.single-product .woocommerce-tabs ul.tabs {
  list-style: none !important;
  padding: 0 0 16px !important;
  margin: 0 0 32px !important;
  border-bottom: 1px solid rgba(22, 90, 11, 0.15) !important;
  display: flex !important;
  gap: 24px !important;
  background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after {
  display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after {
  display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(42, 61, 36, 0.5) !important;
  text-decoration: none !important;
  padding: 6px 0 !important;
  transition: color 0.25s ease !important;
  position: relative !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li a:hover {
  color: #165a0b !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a::after {
  content: '' !important;
  position: absolute !important;
  bottom: -17px !important;
  left: 0 !important;
  width: 100% !important;
  height: 2px !important;
  background: #165a0b !important;
}

.single-product .woocommerce-tabs .panel,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: #2a3d24 !important;
  padding: 0 !important;
  margin: 0 !important;
}

.single-product .woocommerce-tabs .panel h2 {
  display: none !important;
}

.single-product .woocommerce-tabs .panel p {
  margin: 0 0 18px !important;
  font-family: Georgia, serif !important;
  font-size: clamp(15px, 1.55vw, 17px) !important;
  line-height: 1.75 !important;
  color: #2a3d24 !important;
  opacity: 0.9 !important;
}

.single-product .woocommerce-tabs .panel ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 18px 0 !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 8px 24px !important;
}

.single-product .woocommerce-tabs .panel ul li {
  font-family: Georgia, serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: #2a3d24 !important;
  padding: 8px 0 8px 24px !important;
  position: relative !important;
  border-bottom: 1px dashed rgba(22, 90, 11, 0.15) !important;
}

.single-product .woocommerce-tabs .panel ul li::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 17px !important;
  width: 8px !important;
  height: 8px !important;
  background: #165a0b !important;
  border-radius: 50% !important;
}


/* ============================================ */
/* PRODUITS SIMILAIRES                           */
/* ============================================ */
.single-product .related.products,
.single-product section.related,
.single-product .related,
.single-product .upsells.products {
  margin: clamp(60px, 8vw, 100px) 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

.single-product .related.products h2,
.single-product .upsells.products h2 {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-size: clamp(26px, 3vw, 36px) !important;
  font-weight: 500 !important;
  color: #165a0b !important;
  text-align: center !important;
  margin: 0 0 8px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.01em !important;
}

.single-product .related.products::before {
  content: 'Continuez votre exploration' !important;
  display: block !important;
  font-family: 'Arya', Georgia, serif !important;
  font-size: 11px !important;
  color: rgba(22, 90, 11, 0.7) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.25em !important;
  font-weight: 700 !important;
  text-align: center !important;
  margin: 0 0 14px !important;
}

.single-product .related.products::after {
  content: '' !important;
  display: block !important;
  width: 60px !important;
  height: 1px !important;
  background: rgba(22, 90, 11, 0.4) !important;
  margin: 16px auto 40px !important;
}

.single-product .related.products .products,
.single-product .upsells.products .products {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: 32px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.single-product .related.products .products li,
.single-product .related.products li.product,
.single-product .upsells.products li.product {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: transparent !important;
  border: none !important;
  float: none !important;
}


/* ============================================ */
/* RESPONSIVE                                    */
/* ============================================ */
@media (max-width: 1024px) {
  .single-product .product,
  .single-product div.product {
    display: block !important;
  }

  .single-product .woocommerce-product-gallery,
  .single-product .summary,
  .single-product .summary.entry-summary {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 0 32px !important;
  }
}

@media (max-width: 768px) {
  .single-product .product,
  .single-product div.product {
    padding: 16px 16px 32px !important;
  }

  .single-product .flex-control-thumbs {
    grid-template-columns: repeat(auto-fill, minmax(60px, 1fr)) !important;
    gap: 6px !important;
  }

  .single-product .summary .product_title {
    font-size: 28px !important;
  }

  .single-product .summary .price {
    font-size: 26px !important;
  }

  .single-product .woocommerce-tabs {
    padding: 28px 20px !important;
    margin: 40px 0 !important;
  }

  .single-product .woocommerce-tabs ul.tabs {
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .single-product .woocommerce-tabs .panel ul {
    grid-template-columns: 1fr !important;
  }

  .single-product .summary .product_meta::before {
    font-size: 13px !important;
    line-height: 1.9 !important;
  }
}


/* Panier EN (page 8203) : frais de port calcules a l etape suivante */
.page-id-8203 .woocommerce-shipping-totals.shipping td { font-size: 0 !important; }
.page-id-8203 .woocommerce-shipping-totals.shipping td > * { display: none !important; }
.page-id-8203 .woocommerce-shipping-totals.shipping td::after { content: "Calculated at checkout"; display: block; font-size: 16px; line-height: 1.5; }