/* ============================================================
   MADEMOISELLE TRÉSORS — HABILLAGE WOOCOMMERCE NATIF
   ------------------------------------------------------------
   Met les pages WooCommerce réelles (boutique, produit, panier,
   commande) à la charte sombre or/bleu. WooCommerce pilote les
   données ; ce fichier ne fait qu'habiller.
   Ces sélecteurs visent le balisage WooCommerce standard. Si un
   module Divi WooCommerce génère des classes légèrement
   différentes, ajustez via l'inspecteur (clic droit ▸ Inspecter).
   ============================================================ */

/* ---------- prix ---------- */
.woocommerce .price,
.woocommerce-Price-amount,
.woocommerce ul.products li.product .price {
  color: var(--mt-gold);
  font-family: 'Abril Fatface', Georgia, serif;
  font-weight: 400;
}
.woocommerce .price del,
.woocommerce del .woocommerce-Price-amount {
  color: #6f6a61;
  opacity: .8;
}
.woocommerce .price ins {
  text-decoration: none;
}

/* ---------- boutons WooCommerce → style « bouton bleu » de la marque ---------- */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce .single_add_to_cart_button {
  background: var(--mt-blue);
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: .82rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  border: 1px solid transparent;
  border-radius: 2px;
  padding: 1em 2em;
  transition: transform .35s cubic-bezier(.22,.61,.36,1), box-shadow .35s, background .3s;
  box-shadow: 0 10px 30px -12px rgba(31,43,143,.9);
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce .single_add_to_cart_button:hover {
  background: var(--mt-blue-glow);
  transform: translateY(-2px);
  box-shadow: 0 16px 44px -10px rgba(58,73,201,.95), 0 0 0 1px var(--mt-gold);
}

/* bouton secondaire / « voir le produit » → contour or */
.woocommerce ul.products li.product .button.add_to_cart_button:not(.added) {
  background: transparent;
  border-color: var(--mt-line);
  color: var(--mt-gold);
  box-shadow: none;
}
.woocommerce ul.products li.product .button.add_to_cart_button:hover {
  background: var(--mt-blue);
  color: #fff;
  border-color: var(--mt-blue);
}

/* ---------- grille produits ---------- */
.woocommerce ul.products li.product {
  background: #141417;
  border: 1px solid var(--mt-line-soft);
  border-radius: 5px;
  overflow: hidden;
  padding: 0 0 18px;
  transition: transform .5s cubic-bezier(.22,.61,.36,1), border-color .4s, box-shadow .5s;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-5px);
  border-color: var(--mt-line);
  box-shadow: 0 26px 60px -28px rgba(0,0,0,.9);
}
.woocommerce ul.products li.product a img {
  margin: 0 0 14px;
  border-radius: 0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Abril Fatface', Georgia, serif;
  color: #f2efe8;
  font-size: 1.12rem;
  padding: 0 18px;
}
.woocommerce ul.products li.product .button { margin: 0 18px; }

/* badge promo */
.woocommerce span.onsale {
  background: var(--mt-gold);
  color: #161616;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .62rem;
  border-radius: 2px;
  min-height: auto;
  min-width: auto;
  padding: 5px 9px;
  line-height: 1;
  top: 12px;
  left: 12px;
}

/* ---------- fiche produit ---------- */
.woocommerce div.product .product_title {
  font-family: 'Abril Fatface', Georgia, serif;
  color: #fff;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--mt-gold);
  font-size: 2rem;
}
.woocommerce div.product .woocommerce-product-rating .star-rating span::before,
.woocommerce .star-rating span::before { color: var(--mt-gold); }

/* onglets produit */
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
  border-bottom-color: var(--mt-line-soft);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: transparent;
  border: none;
  border-radius: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  color: #a39e94;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .78rem;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--mt-gold); }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }

/* sélecteurs de variations (formules / durées) */
.woocommerce div.product form.cart .variations td.value select {
  background: rgba(255,255,255,.03);
  border: 1px solid var(--mt-line-soft);
  color: #f1ece3;
  border-radius: 3px;
  padding: 12px 14px;
}
.woocommerce div.product form.cart .variations td.value select:focus {
  outline: none;
  border-color: var(--mt-gold);
}

/* ---------- quantité ---------- */
.woocommerce .quantity .qty {
  background: rgba(255,255,255,.03);
  border: 1px solid var(--mt-line);
  color: #fff;
  border-radius: 2px;
}

/* ---------- notices ---------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-top-color: var(--mt-gold);
  background: rgba(18,18,22,.7);
  color: #ece8e1;
}
.woocommerce-message::before,
.woocommerce-info::before { color: var(--mt-gold); }

/* ---------- panier & commande ---------- */
.woocommerce table.shop_table,
.woocommerce-checkout #payment {
  border-color: var(--mt-line-soft);
  background: rgba(18,18,22,.5);
  border-radius: 6px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-checkout .form-row input,
.woocommerce-checkout .form-row select {
  background: rgba(255,255,255,.03);
  border: 1px solid var(--mt-line-soft);
  color: #f1ece3;
  border-radius: 3px;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce-checkout .form-row input:focus {
  border-color: var(--mt-gold);
  outline: none;
}
.woocommerce .cart-collaterals .cart_totals > h2,
.woocommerce-checkout #order_review_heading {
  font-family: 'Abril Fatface', Georgia, serif;
  color: #fff;
}

/* ---------- fil d'Ariane WooCommerce ---------- */
.woocommerce .woocommerce-breadcrumb {
  font-size: .74rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #8f8a80;
}
.woocommerce .woocommerce-breadcrumb a { color: #a39e94; }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--mt-gold); }


/* ============================================================
   DIVI 5 — module « Woo Products » (Produits Woo)
   ------------------------------------------------------------
   Les modules WooCommerce de Divi 5 remplacent les templates Woo
   et n'enveloppent pas la grille dans .woocommerce. On cible donc
   directement le balisage WooCommerce du loop, qui reste stable.
   ============================================================ */
.et_pb_woo_products ul.products li.product,
ul.products li.product {
  background: #141417 !important;
  border: 1px solid var(--mt-line-soft) !important;
  border-radius: 5px;
  overflow: hidden;
  padding-bottom: 18px;
  transition: transform .5s cubic-bezier(.22,.61,.36,1), border-color .4s, box-shadow .5s;
}
.et_pb_woo_products ul.products li.product:hover,
ul.products li.product:hover {
  transform: translateY(-5px);
  border-color: var(--mt-line) !important;
  box-shadow: 0 26px 60px -28px rgba(0,0,0,.9);
}
ul.products li.product img {
  margin: 0 0 14px;
}
ul.products li.product h2,
ul.products li.product h3,
ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Abril Fatface', Georgia, serif !important;
  color: #f2efe8 !important;
  font-size: 1.12rem;
  padding: 0 16px;
}
ul.products li.product .price,
ul.products li.product .woocommerce-Price-amount {
  color: var(--mt-gold) !important;
  font-family: 'Abril Fatface', Georgia, serif !important;
  display: block;
  padding: 0 16px;
}
ul.products li.product .price del,
ul.products li.product del .woocommerce-Price-amount {
  color: #6f6a61 !important;
  opacity: .8;
}
ul.products li.product .price ins { text-decoration: none; }
ul.products li.product a.button,
ul.products li.product a.add_to_cart_button,
ul.products li.product button.button {
  background: var(--mt-blue) !important;
  color: #fff !important;
  border: 1px solid transparent !important;
  border-radius: 2px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin: 14px 16px 0;
  transition: transform .35s, box-shadow .35s, background .3s;
}
ul.products li.product a.button:hover,
ul.products li.product a.add_to_cart_button:hover {
  background: var(--mt-blue-glow) !important;
  transform: translateY(-2px);
  box-shadow: 0 16px 44px -10px rgba(58,73,201,.95), 0 0 0 1px var(--mt-gold);
}
ul.products li.product .onsale,
ul.products span.onsale {
  background: var(--mt-gold) !important;
  color: #161616 !important;
  border-radius: 2px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}


/* ============================================================
   NOTICES WOOCOMMERCE  (fin des bandeaux jaunes)
   .woocommerce-message = « … ajouté au panier »
   .woocommerce-info    = « Déjà client / code promo », boîte CCBill
   ============================================================ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
  background: #0d0d10 !important;
  border: 1px solid rgba(229,192,104,.22) !important;
  border-left: 3px solid var(--mt-gold) !important;
  border-radius: 6px !important;
  color: #e8e3d9 !important;
  box-shadow: none !important;
  padding: 16px 20px !important;
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before { color: var(--mt-gold) !important; }
.woocommerce-error { border-left-color: #c98b8b !important; }
.woocommerce-message a,
.woocommerce-info a,
.showcoupon, .showlogin {
  color: var(--mt-gold) !important; text-decoration: none; font-weight: 600;
}
.woocommerce-message a.button,
.woocommerce-info a.button { background: transparent !important; color: var(--mt-gold) !important;
  border: 1px solid rgba(229,192,104,.4) !important; }

/* le bandeau « ajouté au panier » en haut de page */
.et-l .woocommerce-message, body .woocommerce-message { font-family: 'Montserrat', sans-serif; }


/* ============================================================
   CHAMPS DE FORMULAIRE (panier, commande)
   ============================================================ */
.woocommerce form .form-row label,
.woocommerce-billing-fields label,
.woocommerce-additional-fields label,
.woocommerce form .form-row .required_field { color: #cdd2ff !important; font-family: 'Montserrat', sans-serif; }
.woocommerce form .form-row .required { color: var(--mt-gold) !important; }
.woocommerce .optional { color: #7c776e !important; }

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce #order_comments,
.woocommerce-cart table.cart td.actions .input-text,
.woocommerce .input-text,
.woocommerce select {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  color: #f4f1ea !important;
  border-radius: 6px !important;
  padding: 14px 16px !important;
  box-shadow: none !important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce .input-text:focus,
.woocommerce select:focus { border-color: var(--mt-gold) !important; outline: none !important; }
.woocommerce form .form-row input::placeholder,
.woocommerce textarea::placeholder { color: #7c776e !important; }

/* select2 (pays/région) */
.select2-container--default .select2-selection--single {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 6px !important;
  height: 50px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered { color: #f4f1ea !important; line-height: 50px !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 48px !important; }
.select2-dropdown {
  background: #0d0d10 !important; border: 1px solid rgba(229,192,104,.25) !important; color: #e8e3d9 !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: rgba(229,192,104,.14) !important; color: var(--mt-gold) !important; }
.select2-search--dropdown .select2-search__field { background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.14) !important; color: #f4f1ea !important; }


/* ============================================================
   TABLEAUX : panier + récap commande
   ============================================================ */
.woocommerce table.shop_table {
  background: #0d0d10 !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 10px !important;
  border-collapse: separate !important;
  overflow: hidden;
}
.woocommerce table.shop_table thead th,
.woocommerce table.shop_table th { color: #cdc8be !important; border-bottom: 1px solid rgba(255,255,255,.08) !important; font-family: 'Montserrat', sans-serif; text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; }
.woocommerce table.shop_table td { border-top: 1px solid rgba(255,255,255,.06) !important; color: #e8e3d9 !important; }
.woocommerce table.shop_table td.product-name a,
.woocommerce-checkout-review-order-table .product-name { color: #f4f1ea !important; text-decoration: none; }
.woocommerce table.shop_table td.product-name a:hover { color: var(--mt-gold) !important; }
.woocommerce .woocommerce-Price-amount,
.woocommerce table.shop_table .amount { color: var(--mt-gold) !important; font-family: 'Abril Fatface', Georgia, serif; }
.woocommerce table.shop_table .order-total .amount,
.woocommerce table.shop_table tr.order-total th { font-size: 1.05rem; }
.woocommerce a.remove {
  color: var(--mt-gold) !important; border: 1px solid rgba(229,192,104,.4); border-radius: 50%;
  font-weight: 400; line-height: 1.4;
}
.woocommerce a.remove:hover { background: var(--mt-blue) !important; color: #fff !important; border-color: var(--mt-blue); }
.woocommerce .quantity .qty { width: 70px; text-align: center; }

/* totaux du panier */
.cart_totals h2, .cart-collaterals h2 { font-family: 'Abril Fatface', Georgia, serif; color: #fff; }


/* ============================================================
   RÉCAP COMMANDE + PAIEMENT
   ============================================================ */
#order_review_heading, #order_review h3 { font-family: 'Abril Fatface', Georgia, serif; color: #fff !important; }
.woocommerce-checkout #payment,
#payment.woocommerce-checkout-payment {
  background: #0d0d10 !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 10px !important;
}
.woocommerce-checkout #payment ul.payment_methods { border-bottom: 1px solid rgba(255,255,255,.08) !important; }
.woocommerce-checkout #payment ul.payment_methods li label { color: #f4f1ea !important; font-family: 'Montserrat', sans-serif; }
.woocommerce-checkout #payment div.payment_box {
  background: rgba(31,43,143,.10) !important;
  border: 1px solid rgba(229,192,104,.2) !important;
  border-radius: 6px !important;
  color: #c2bdb3 !important;
}
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: rgba(31,43,143,.10) !important; }
.woocommerce-checkout #payment input[type=radio]:checked + label { color: var(--mt-gold) !important; }
.woocommerce #payment .input-radio, .woocommerce-checkout #payment input[type=radio] { accent-color: var(--mt-gold); }

/* CGV + politique */
.woocommerce-terms-and-conditions-wrapper { color: #a39e94; }
.woocommerce-terms-and-conditions-wrapper a,
.woocommerce-privacy-policy-link { color: var(--mt-gold) !important; }
.woocommerce form .woocommerce-terms-and-conditions { background: rgba(255,255,255,.02) !important; border: 1px solid rgba(255,255,255,.08); border-radius: 6px; }


/* ============================================================
   BOUTONS (commande, panier)
   primaire bleu : Valider / Commander / Place order / button.alt
   secondaire : Mettre à jour / Appliquer le code (contour or)
   ============================================================ */
.woocommerce #place_order,
.woocommerce button.button.alt,
.woocommerce a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button.button {
  background: var(--mt-blue) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 3px !important;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-weight: 600;
  padding: 16px 34px !important;
  box-shadow: 0 10px 30px -12px rgba(31,43,143,.9);
  transition: transform .35s, box-shadow .35s, background .3s;
}
.woocommerce #place_order:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.checkout-button:hover {
  background: var(--mt-blue-glow) !important;
  transform: translateY(-2px);
  box-shadow: 0 16px 44px -10px rgba(58,73,201,.95), 0 0 0 1px var(--mt-gold);
}
.woocommerce-cart table.cart td.actions .button,
.woocommerce button[name="apply_coupon"],
.woocommerce button[name="update_cart"] {
  background: transparent !important;
  color: var(--mt-gold) !important;
  border: 1px solid rgba(229,192,104,.4) !important;
  border-radius: 2px !important;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 600;
}
.woocommerce-cart table.cart td.actions .button:hover,
.woocommerce button[name="apply_coupon"]:hover {
  background: var(--mt-blue) !important; color: #fff !important; border-color: var(--mt-blue) !important;
}
.woocommerce button[name="update_cart"][disabled] { opacity: .5; }

/* en-têtes de page (Panier / Validation de la commande) */
.woocommerce-cart .entry-title,
.et_pb_wc_checkout_billing + * h1,
h1.entry-title { font-family: 'Abril Fatface', Georgia, serif !important; }


/* ---------- note du Tribut de la Mademoiselle (sous le total) ---------- */
.woocommerce .mt-tribut-note td { border-top: none !important; padding-top: 4px !important; }
.woocommerce .mt-tribut-note small { color: #8f8a80 !important; font-size: .72rem; line-height: 1.5; display: block; font-family: 'Montserrat', sans-serif; }
/* la ligne de frais elle-même, en or discret */
.woocommerce .fee th, .woocommerce .fee td { color: #cdc8be !important; }
.woocommerce .fee .amount { color: var(--mt-gold) !important; }
