/* Gusto Naturale — Prévente et boutique : styles (chargés après le CSS du thème). */

/* ---------- Cartes produit (liste) ---------- */
/* Le badge « Exclu web » est posé sur l'image : toutes les cartes restent alignées. */
.woocommerce ul.products li.product,
.products .product { position: relative; }
.gusto-badge-exclu,
.products .product .gusto-badge-exclu,
.woocommerce ul.products li.product .gusto-badge-exclu {
	position: absolute !important;
	top: 12px;
	left: 12px;
	z-index: 20 !important;
	margin: 0;
	background: #000;
	color: #fff;
	font-size: 12px;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: 4px 10px;
	border-radius: 3px;
	line-height: 1.4;
}
/* Sur la fiche produit le badge reste dans le flux, sous le titre. */
.single-product .summary .gusto-badge-exclu { position: static !important; display: inline-block; margin: 0 0 10px; }

/* Rappel de retrait : noir, jamais bleu (lien), et toujours au-dessus du fond blanc du survol. */
.products .product .gusto-prevente-loop,
.products .product .gusto-prevente-loop * {
	position: relative;
	z-index: 9;
	color: #141414 !important;
	text-decoration: none !important;
	font-size: 13px;
	line-height: 1.4;
	margin: 6px 0 0;
}
.products .product .gusto-prevente-loop { padding: 5px 10px !important; }
@media only screen and (min-width: 1441px) { .products .product .gusto-prevente-loop { padding: 5px 20px !important; } }
/* Survol : le fond blanc + ombre couvre toute la carte (image comprise), pas seulement le bas. */
.products .product:after {
	height: 100% !important;
	top: 0;
	bottom: auto;
	border-radius: 4px;
}
.products .product { transition: transform .35s ease; }
.products .product:hover { transform: translateY(-4px); }

/* Page de catégorie (/category/prevente/) : même visuel que la boutique, sans le texte de description de la catégorie (il chevauchait la grille) */
body.tax-product_cat .term-description,
body.tax-product_tag .term-description { display: none !important; }
/* Colonne des produits : le thème la fixe à 91,67 % sur les catégories (`.tax-product_cat .col-xxl-9 { flex: 0 0 91.6667% !important }`) ; on reprend la largeur de la boutique (toute la largeur, puis 75 % dès 1441 px, à côté de la colonne du tri) */
body.tax-product_cat .col-xxl-9, body.tax-product_tag .col-xxl-9 { flex: 0 0 auto !important; width: 100% !important; max-width: 100% !important; }
@media only screen and (min-width: 1441px) { body.tax-product_cat .col-xxl-9, body.tax-product_tag .col-xxl-9 { flex: 0 0 75% !important; width: auto !important; max-width: 75% !important; } }
/* « Trier par » : le thème le masque sur les catégories (`.tax-product_cat .content-filter { display: none !important }`) ; on le remet comme sur la boutique (flex dès 992 px, bloc dès 1441 px) */
body.tax-product_cat .content-filter,
body.tax-product_tag .content-filter { display: block !important; }
@media only screen and (min-width: 992px) { body.tax-product_cat .content-filter, body.tax-product_tag .content-filter { display: flex !important; } }
@media only screen and (min-width: 1441px) { body.tax-product_cat .content-filter, body.tax-product_tag .content-filter { display: block !important; } }

/* Mention TTC / TVA : toujours sous le prix */
.woocommerce-price-suffix { display: block !important; margin-top: 4px; font-size: .55em; font-weight: 400; white-space: nowrap; }

/* ---------- Fiche produit ---------- */
.gusto-prevente-notice { margin: 12px 0; font-size: 15px; line-height: 1.5; }

/* Fiche produit : titre à gauche, comme le reste de la colonne */
.single-product .summary .product_title { text-align: left !important; }
/* Loupe de la galerie : WooCommerce 11 la dessine avec un cercle blanc sans fond, donc invisible sur une photo claire */
.woocommerce-product-gallery__trigger { background: #fff !important; box-shadow: 0 1px 6px rgba(0, 0, 0, .28); }
.woocommerce-product-gallery__trigger:before { border-color: #000 !important; }
.woocommerce-product-gallery__trigger:after { border-color: #000 !important; }

/* ---------- Messages WooCommerce (erreurs, infos, succès) ---------- */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info,
.woocommerce-NoticeGroup .woocommerce-error {
	list-style: none;
	margin: 0 0 24px;
	padding: 16px 20px 16px 52px;
	background: #f7f5f0;
	border: 0;
	border-left: 4px solid #8c8063;
	border-radius: 3px;
	color: #141414;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	position: relative;
}
.woocommerce-error,
.woocommerce-NoticeGroup .woocommerce-error { border-left-color: #ac301c; background: #fbf1ef; }
.woocommerce-error:before,
.woocommerce-message:before,
.woocommerce-info:before { left: 18px; top: 16px; }
.woocommerce-error li,
.woocommerce-message li { margin: 0 0 4px; padding: 0; color: inherit; font-weight: 400; }
.woocommerce-error li:last-child { margin-bottom: 0; }
.woocommerce-error strong,
.woocommerce-message strong,
.woocommerce-info strong { font-weight: 600; color: inherit; }
.woocommerce-error a,
.woocommerce-message a,
.woocommerce-info a { color: #8c8063; text-decoration: underline; font-weight: 500; }
.woocommerce-error .button,
.woocommerce-message .button,
.woocommerce-info .button { float: right; margin-left: 16px; }

/* ---------- Commande : retrait en magasin ---------- */
#gusto-retrait { margin: 36px 0; padding: 24px; background: #f7f5f0; border-radius: 4px; }
#gusto-retrait h3 { margin: 0 0 8px; }
#gusto-retrait > p { font-size: 14px; line-height: 1.5; margin: 0 0 16px; }
#gusto-retrait > p.gusto-retrait-items { padding: 10px 12px; margin: 0 0 16px; background: #fff; border-left: 3px solid #8c8063; }
#gusto-retrait .gusto-sub { font-weight: 600; margin: 18px 0 8px; display: block; }
#gusto-retrait select { width: 100%; max-width: 420px; }
#gusto-retrait .gusto-js-hidden { display: none !important; }

/* Calendrier */
.gusto-cal { max-width: 360px; background: #fff; border-radius: 4px; padding: 14px; box-shadow: 0 1px 6px rgba(0, 0, 0, .08); }
.gusto-cal-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.gusto-cal-title { font-weight: 600; text-transform: capitalize; }
.gusto-cal-nav { width: 34px; height: 34px; border: 1px solid #8c8063; border-radius: 50%; background: #fff; color: #141414; cursor: pointer; line-height: 1; font-size: 16px; padding: 0; }
.gusto-cal-nav:disabled { opacity: .3; cursor: default; }
.gusto-cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; text-align: center; }
.gusto-cal-dow { font-size: 12px; color: #777; text-transform: uppercase; padding: 4px 0; }
.gusto-cal-day { height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 50%; font-size: 14px; color: #bdbdbd; }
button.gusto-cal-day { border: 1px solid #8c8063; background: #fff; color: #141414; cursor: pointer; font-weight: 600; padding: 0; }
button.gusto-cal-day:hover { background: #8c8063; color: #fff; }
button.gusto-cal-day.is-selected { background: #141414; border-color: #141414; color: #fff; }
.gusto-cal-chosen { margin-top: 10px; font-size: 14px; }

/* Créneaux */
.gusto-slots { display: flex; flex-wrap: wrap; gap: 8px; max-width: 520px; }
.gusto-slot { border: 1px solid #8c8063; background: #fff; color: #141414; border-radius: 20px; padding: 7px 14px; font-size: 14px; cursor: pointer; }
.gusto-slot:hover { background: #8c8063; color: #fff; }
.gusto-slot.is-selected { background: #141414; border-color: #141414; color: #fff; }
.gusto-slots-empty { font-size: 14px; color: #777; }

/* ---------- Popup « ajouté au panier » (plugin Added to Cart Popup) ---------- */
/* Gauche : toutes les informations du produit (photo, nom, quantité, prix, total). Droite : les boutons. */
/* inline-flex : le plugin centre la fenêtre verticalement grâce à un bloc en ligne, un display:flex la ferait tomber sous l'écran. */
body.woocommerce .xoo-cp-container { display: inline-flex !important; width: calc(100% - 24px); max-width: 1135px !important; box-sizing: border-box; text-align: left; align-items: center; gap: 40px; padding: 36px 48px !important; }
body.woocommerce .xoo-cp-container .xoo-cp-outer { position: absolute; }
body.woocommerce .xoo-cp-container .xoo-cp-content { flex: 1 1 auto; min-width: 0; text-align: left; }
body.woocommerce .xoo-cp-container .xoo-cp-content,
body.woocommerce .xoo-cp-container .xoo-cp-content * { color: #fff; }
body.woocommerce .xoo-cp-container .xoo-cp-atcn { display: block; margin: 0 0 18px; padding: 0 !important; color: #cbb98a !important; text-align: left; }

body.woocommerce .xoo-cp-container .xoo-cp-pdetails { display: block; width: 100%; margin: 0; border: 0; }
body.woocommerce .xoo-cp-container .xoo-cp-pdetails tbody { display: block; }
body.woocommerce .xoo-cp-container .xoo-cp-pdetails tr { display: grid; grid-template-columns: 110px auto minmax(0, 1fr); grid-template-areas: "img title title" "img price qty"; column-gap: 24px; row-gap: 10px; align-items: center; padding: 0; border: 0; }
body.woocommerce .xoo-cp-container .xoo-cp-pdetails td { display: block !important; width: auto !important; padding: 0 !important; border: 0 !important; vertical-align: middle; }
body.woocommerce .xoo-cp-container .xoo-cp-pdetails .xoo-cp-remove { display: none !important; }
body.woocommerce .xoo-cp-container .xoo-cp-pimg { grid-area: img; }
body.woocommerce .xoo-cp-container .xoo-cp-pimg img { display: block; width: 110px !important; height: 110px !important; max-width: none; object-fit: cover; border-radius: 4px; }
body.woocommerce .xoo-cp-container .xoo-cp-ptitle { grid-area: title; min-width: 0; }
body.woocommerce .xoo-cp-container .xoo-cp-ptitle a { color: #fff !important; font-size: 22px !important; line-height: 1.3 !important; text-decoration: none; }
body.woocommerce .xoo-cp-container .xoo-cp-pprice { grid-area: price; position: static !important; text-align: left; font-size: 24px !important; line-height: 1.2 !important; }
body.woocommerce .xoo-cp-container .xoo-cp-pqty { grid-area: qty; justify-self: start; position: static !important; width: auto !important; left: auto !important; }
body.woocommerce .xoo-cp-container .xoo-cp-pqty:after { display: none !important; }
body.woocommerce .xoo-cp-container .xoo-cp-pqty, body.woocommerce .xoo-cp-container .xoo-cp-qtybox { overflow: visible !important; border: 0 !important; }
body.woocommerce .xoo-cp-container .xoo-cp-qtybox { display: inline-flex !important; align-items: center; gap: 10px; }
body.woocommerce .xoo-cp-container .xoo-cp-qtybox span.xcp-chng { display: inline-flex !important; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid #fff; border-radius: 50%; font-size: 20px; line-height: 1; cursor: pointer; user-select: none; }
body.woocommerce .xoo-cp-container .xoo-cp-qtybox span.xcp-chng:hover { background: #fff; color: #000; }
body.woocommerce .xoo-cp-container .xoo-cp-qty { width: 56px !important; min-width: 0; padding: 6px 0 !important; text-align: center; font-size: 22px !important; line-height: 1.2 !important; border: 0 !important; background: transparent !important; color: #fff !important; -moz-appearance: textfield; }
body.woocommerce .xoo-cp-container .xoo-cp-qty::-webkit-outer-spin-button,
body.woocommerce .xoo-cp-container .xoo-cp-qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
body.woocommerce .xoo-cp-container .xoo-cp-content .xoo-cp-ptotal { display: flex !important; float: none !important; width: 100%; align-items: baseline; gap: 12px; margin: 22px 0 0; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, .35); font-size: 22px; }

body.woocommerce .xoo-cp-container .xoo-cp-btns { position: static !important; flex: 0 0 auto; display: flex; flex-direction: row; align-items: center; gap: 20px; width: auto !important; height: auto !important; }
body.woocommerce .xoo-cp-container .xoo-cp-btns .xcp-btn,
body.woocommerce .xoo-cp-container .xoo-cp-btns .xoo-cp-btn-vc,
body.woocommerce .xoo-cp-container .xoo-cp-btns .xoo-cp-close { position: static !important; right: auto !important; top: auto !important; display: flex !important; align-items: center; justify-content: center; width: 124px !important; height: 124px !important; padding: 0 12px !important; margin: 0 !important; text-align: center; box-sizing: border-box; }
body.woocommerce .xoo-cp-container .xoo-cp-btns a.xoo-cp-btn-ch.xcp-btn { display: none !important; }

@media only screen and (max-width: 900px) {
	body.woocommerce .xoo-cp-container { flex-direction: column; align-items: stretch; gap: 24px; padding: 28px 20px !important; }
		body.woocommerce .xoo-cp-container .xoo-cp-pdetails tr { grid-template-columns: 80px auto minmax(0, 1fr); column-gap: 16px; }
	body.woocommerce .xoo-cp-container .xoo-cp-pimg img { width: 80px !important; height: 80px !important; }
	body.woocommerce .xoo-cp-container .xoo-cp-btns { justify-content: center; gap: 14px; }
	body.woocommerce .xoo-cp-container .xoo-cp-btns .xcp-btn,
	body.woocommerce .xoo-cp-container .xoo-cp-btns .xoo-cp-btn-vc,
	body.woocommerce .xoo-cp-container .xoo-cp-btns .xoo-cp-close { width: 112px !important; height: 112px !important; }
}
@media only screen and (max-width: 600px) {
	body.woocommerce .xoo-cp-container .xoo-cp-pdetails tr { grid-template-columns: 80px minmax(0, 1fr); grid-template-areas: "img title" "img price" "img qty"; row-gap: 6px; }
	body.woocommerce .xoo-cp-container .xoo-cp-pimg img { width: 80px !important; height: 80px !important; }
}

.woocommerce-MyAccount-content a.gusto-back { display: block !important; margin: 8px 0 26px !important; color: #141414 !important; font-size: 16px !important; line-height: 1.3 !important; text-align: left !important; text-decoration: underline !important; }
/* ---------- Panier : le mot « Supprimer » est le lien (il n'était qu'un texte à côté d'une icône de 21 px invisible) ---------- */
.woocommerce-cart-form td.product-remove a.remove { position: static !important; display: inline-block !important; width: auto !important; height: auto !important; font-size: 16px !important; line-height: 1.3 !important; color: #141414 !important; background: none !important; text-indent: 0 !important; text-decoration: underline; border-radius: 0; transform: none !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; margin: 0 !important; padding: 0 !important; white-space: nowrap; }
.woocommerce-cart-form td.product-remove a.remove:hover { color: #ac301c !important; }
.woocommerce-cart-form td.product-remove a.remove:before, .woocommerce-cart-form td.product-remove a.remove:after { content: none !important; }

/* ---------- Mon compte : bandeau des adresses (titre noir sur noir, lien « Modifier » invisible) ---------- */
.woocommerce-MyAccount-content .woocommerce-Address-title.title { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 12px; padding: 10px 16px; background: #000; }
.woocommerce-MyAccount-content .woocommerce-Address-title.title h3 { margin: 0; color: #fff; font-size: 16px; line-height: 1.3; text-transform: uppercase; letter-spacing: .04em; }
.woocommerce-MyAccount-content .woocommerce-Address-title.title a.edit { display: inline-block; color: #fff; font-size: 14px; text-decoration: underline; white-space: nowrap; }
.woocommerce-MyAccount-content .woocommerce-Address { max-width: 520px; margin: 0 0 28px; }

/* Écran de vérification d'e-mail d'une commande */
.gusto-verify-title { margin: 30px 0 18px; }
.woocommerce-verify-email .form-row { margin: 0 0 18px; }
.woocommerce-verify-email .input-text { width: 100%; max-width: 420px; }

/* ---------- Commande : bouton « Commander avec obligation de paiement » ----------
   Le thème en fait un cercle de 140 px (règle `.woocommerce-checkout .button`) : trop petit pour la mention légale. Même cercle noir, plus grand,
   texte sur plusieurs lignes ; le haut du bouton reste au même endroit (bottom = -(taille + 50 px)). */
body.woocommerce-checkout #place_order {
	width: 200px !important; height: 200px !important; bottom: -250px !important;
	padding: 0 26px !important; box-sizing: border-box !important;
	display: flex !important; align-items: center !important; justify-content: center !important;
	font-size: 16px !important; line-height: 1.25 !important; white-space: normal !important; overflow-wrap: break-word; text-align: center !important;
}
@media (max-width: 480px) {
	body.woocommerce-checkout #place_order { width: 184px !important; height: 184px !important; bottom: -234px !important; padding: 0 22px !important; font-size: 15px !important; }
}

/* ---------- Pied de page : le bouton « Envoyer » de la newsletter ----------
   Les règles `.woocommerce-checkout .button` / `.woocommerce-account .button` du thème (cercle noir, position absolue) l'attrapaient : un grand cercle
   « Envoyer » s'affichait sur la barre du bas. Sur la commande et Mon compte, il retrouve l'aspect de l'accueil (rectangle rouge #892021). */
body.woocommerce-checkout .footer .newsletter #mc-embedded-subscribe,
body.woocommerce-account .footer .newsletter #mc-embedded-subscribe {
	position: static !important; transform: none !important; float: none !important; z-index: auto !important; display: inline-block !important;
	width: 37% !important; height: auto !important; padding: 15px 0 !important; border: none !important; border-radius: 5px !important;
	background-color: #892021 !important; color: #fff !important; font-family: museo, serif !important; font-size: 16px !important; font-weight: 100 !important; line-height: normal !important; text-align: center !important;
}
body.woocommerce-checkout .footer .newsletter #mc-embedded-subscribe:hover,
body.woocommerce-account .footer .newsletter #mc-embedded-subscribe:hover { background-color: #760e19 !important; transform: none !important; }

/* ---------- Pied de page : titre « Newsletter » ----------
   La règle `.woocommerce-checkout h3` du thème (30 px, graisse 900, décalage de -15 px) s'appliquait aussi à ce titre : on rétablit celui de l'accueil. */
body.woocommerce-checkout .footer .newsletter h3 { font-size: 25px !important; line-height: 1.1em !important; font-weight: 700 !important; margin-bottom: 10px !important; left: 0 !important; position: static !important; }

/* ---------- En-tête de la boutique en mobile : le bouton du menu (burger) recouvrait le début du titre « L'épicerie » ----------
   Le thème le pose en absolu à `top:80px` (même hauteur que le titre centré) ; sous 768 px on le remonte dans le coin haut gauche,
   au niveau du logo (centré), donc plus de recouvrement. Menu ouvert (:hover / toucher) : comportement du thème inchangé. */
@media only screen and (max-width: 767px) {
	body.woocommerce .burger_menu:not(:hover) { top: 12px; left: 15px; }
}

/* ---------- Boutique : menu des catégories (sous « Trier par ») ---------- */
.content-filter .gusto-cats { clear: both; margin: 16px 0 28px; } /* le formulaire de tri du thème est flottant à droite */
.content-filter .gusto-cats-title { margin: 0; padding: 8px 8px 12px 0; font-size: 24px; line-height: 30px; font-weight: 900; text-transform: uppercase; color: #303030; }
.content-filter .gusto-cats ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid #303030; }
.content-filter .gusto-cats li { margin: 0; padding: 0; }
.content-filter .gusto-cats a { display: block; padding: 9px 0; font-size: 16px; line-height: 1.3; font-weight: 300; color: #141414; text-decoration: none; border-bottom: 1px solid #e6e1d6; }
.content-filter .gusto-cats a:hover, .content-filter .gusto-cats a:focus { color: #892021; }
.content-filter .gusto-cats a.is-active { color: #892021; font-weight: 700; }

/* ---------- Produits similaires : carrousel (pastilles aux couleurs du site) ---------- */
.wt-related-products .owl-dots { text-align: center; margin-top: 22px; }
.wt-related-products .owl-theme .owl-dots .owl-dot, .wt-related-products .owl-dots .owl-dot { display: inline-block; padding: 0; background: none; border: 0; }
.wt-related-products .owl-theme .owl-dots .owl-dot span, .wt-related-products .owl-dots .owl-dot span { display: block; width: 10px !important; height: 10px !important; margin: 0 5px !important; border-radius: 50%; background: #cbc5b4 !important; border: 0 !important; box-shadow: none !important; }
.wt-related-products .owl-theme .owl-dots .owl-dot.active span, .wt-related-products .owl-dots .owl-dot.active span { background: #141414 !important; }

/* ---------- Boutique : menu des catégories, adaptation aux écrans ----------
   ≥ 1441 px : colonne de gauche sous « Trier par » (liste verticale).
   ≤ 1440 px : le bloc filtre passe pleine largeur, « Trier par » puis les catégories en pastilles qui passent à la ligne. */
@media only screen and (max-width: 1440px) {
	body .content-filter { display: block !important; flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; }
	body .content-filter .woocommerce-ordering { float: none !important; width: 100%; max-width: 420px; }
	body .content-filter .gusto-cats { margin: 4px 0 26px; }
	body .content-filter .gusto-cats-title { padding: 0 0 8px; font-size: 18px; line-height: 24px; }
	body .content-filter .gusto-cats ul { display: flex; flex-wrap: wrap; gap: 8px; border-top: 0; }
	body .content-filter .gusto-cats a { display: inline-block; padding: 8px 16px; border: 1px solid #8c8063; border-radius: 20px; font-size: 14px; line-height: 1.2; font-weight: 400; background: #fff; }
	body .content-filter .gusto-cats a:hover, body .content-filter .gusto-cats a:focus { background: #8c8063; border-color: #8c8063; color: #fff; }
	body .content-filter .gusto-cats a.is-active { background: #141414; border-color: #141414; color: #fff; font-weight: 600; }
}

/* ---------- Produits similaires : flèches précédent / suivant ----------
   Le plugin dessine ses flèches avec la police Dashicons, absente du site : les boutons s'affichaient comme deux ronds gris vides.
   On masque l'icône vide et on met un symbole ‹ › ; boutons sur les côtés du carrousel (par-dessus les bords sur petit écran). */
.wt-related-products .carousel-wrap { position: relative; }
.wt-related-products .owl-nav { position: static; margin: 0; }
.wt-related-products .owl-nav button.owl-prev, .wt-related-products .owl-nav button.owl-next {
	position: absolute; top: 38%; z-index: 20; width: 44px; height: 44px; margin: 0; padding: 0;
	border: 1px solid #8c8063 !important; border-radius: 50%; background: #fff !important; color: #141414;
	box-shadow: 0 1px 6px rgba(0, 0, 0, .15); cursor: pointer; transition: background .2s, color .2s, opacity .2s;
}
.wt-related-products .owl-nav button i { display: none !important; }
.wt-related-products .owl-nav button.owl-prev::before { content: "‹" !important; }
.wt-related-products .owl-nav button.owl-next::before { content: "›" !important; }
.wt-related-products .owl-nav button.owl-prev::before, .wt-related-products .owl-nav button.owl-next::before { display: block; font-size: 32px !important; line-height: 38px !important; font-family: museo, serif !important; font-weight: 400; text-align: center; color: #141414 !important; }
.wt-related-products .owl-nav button:hover:not(.disabled)::before, .wt-related-products .owl-nav button:focus:not(.disabled)::before { color: #fff !important; }
.wt-related-products .owl-nav button.owl-prev { left: 6px; }
.wt-related-products .owl-nav button.owl-next { right: 6px; }
.wt-related-products .owl-nav button:hover:not(.disabled), .wt-related-products .owl-nav button:focus:not(.disabled) { background: #141414 !important; border-color: #141414 !important; color: #fff; }
.wt-related-products .owl-nav button.disabled { opacity: .3; cursor: default; }

/* ---------- Fiche produit : bouton « Ajouter au panier » et description, sur petits écrans ----------
   Le bouton du thème (cercle de 100 px, texte à 16 px et 20 px de marge) laissait « AJOUTER AU PANIER » déborder du cercle. */
@media only screen and (max-width: 991px) {
	.single-product .summary .single_add_to_cart_button {
		width: 112px !important; height: 112px !important; padding: 0 12px !important;
		display: flex !important; align-items: center; justify-content: center; text-align: center;
		font-size: 13px !important; line-height: 1.15 !important; letter-spacing: 0; overflow: hidden; white-space: normal; word-break: keep-all;
	}
}

/* Description du produit (onglet du thème) : même gabarit que le bloc « Informations produit » (titre 20 px, texte 16 px), sur tous les écrans */
.single-product .woocommerce-Tabs-panel h2 { margin: 0 0 12px; font-size: 20px !important; line-height: 1.3 !important; letter-spacing: .01em; text-transform: none !important; font-weight: 700; }
.single-product .woocommerce-Tabs-panel p { font-size: 16px !important; line-height: 1.6 !important; font-weight: 300; margin: 0 0 14px; }
