/* Coin des Princesses — V3.20 : tiroir panier, zone d'achat, onglets de la fiche, cartes produit.
   Chargé partout, après les autres feuilles. */

/* =========================================================================
 * 1. Tiroir panier : vignette à gauche, texte à côté (la photo ne chevauche plus le nom)
 * ====================================================================== */
body.cdp .cdp-minicart ul.woocommerce-mini-cart { list-style: none; margin: 0 0 14px; padding: 0; }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item { position: relative; display: block; min-height: 104px; margin: 0; padding: 14px 40px 14px 86px !important; border-bottom: 1px solid var(--line); font-size: 14px; line-height: 1.35; }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item img { position: absolute; left: 0; top: 14px; width: 70px !important; height: 88px !important; margin: 0 !important; float: none; object-fit: cover; border-radius: 12px; box-shadow: 0 1px 4px rgba(43, 37, 48, .1); }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a:not(.remove) { display: block; font-weight: 700; color: var(--ink); text-decoration: none; }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item .quantity { display: block; margin-top: 6px; color: var(--muted); font-size: 13.5px; }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item .quantity .amount { font-family: var(--font-serif); color: var(--plum); font-weight: 700; }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item dl.variation { margin: 4px 0 0; font-size: 12px; color: var(--muted); }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a.remove { position: absolute; left: auto; right: 0; top: 12px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; font-size: 22px; line-height: 1; color: var(--muted) !important; background: none; }
body.cdp .cdp-minicart ul.woocommerce-mini-cart li.woocommerce-mini-cart-item a.remove:hover { background: var(--danger-soft); color: var(--danger) !important; }

/* =========================================================================
 * 2. Zone d'achat : « Commander en 1 minute » en vedette, « Ajouter au panier » en second
 * ====================================================================== */
body.cdp div.product .summary .cdp-stock ~ p.stock.in-stock { display: none; }
body.cdp div.product form.cart:not(.variations_form), body.cdp div.product form.cart .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; }
body.cdp div.product form.cart .quantity { flex: 0 0 auto; margin: 0 !important; }
body.cdp div.product form.cart .single_add_to_cart_button { flex: 1 1 0; min-height: 54px; margin: 0 !important; border-radius: 16px !important; background: #fff !important; color: var(--plum) !important; border: 1.5px solid var(--plum) !important; box-shadow: none !important; outline: none; font-size: 15.5px !important; }
body.cdp div.product form.cart .single_add_to_cart_button:hover { background: var(--rose-tint, #f8e9ef) !important; }
body.cdp div.product form.cart .single_add_to_cart_button:focus-visible, body.cdp .cdp-btn--express-hero:focus-visible { outline: 3px solid rgba(194, 85, 127, .35) !important; outline-offset: 2px; }
body.cdp div.product form.cart .single_add_to_cart_button.disabled { opacity: .55; }
body.cdp div.product form.cart .single_add_to_cart_button.is-done { background: #2e7d4f !important; border-color: #2e7d4f !important; color: #fff !important; }

body.cdp .cdp-btn--express-hero { position: relative; overflow: hidden; flex: 1 1 100%; display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 64px; padding: 10px 20px; border: 0 !important; border-radius: 18px; background: linear-gradient(120deg, var(--plum, #73304a) 0%, #8e3c5e 55%, #b0517a 100%) !important; color: #fff !important; box-shadow: 0 10px 24px rgba(115, 48, 74, .28); text-align: left; transition: transform .15s, box-shadow .2s; }
body.cdp .cdp-btn--express-hero:hover { transform: translateY(-1px); box-shadow: 0 14px 30px rgba(115, 48, 74, .34); }
body.cdp .cdp-btn--express-hero:active { transform: scale(.985); }
body.cdp .cdp-btn--express-hero > .cdp-icon { flex: none; width: 40px; height: 40px; padding: 9px; border-radius: 12px; background: rgba(255, 255, 255, .16); box-sizing: border-box; }
.cdp-express__txt { display: grid; gap: 1px; line-height: 1.2; }
.cdp-express__txt strong { font-size: 16.5px; font-weight: 800; }
.cdp-express__txt small { font-size: 12.5px; font-weight: 600; opacity: .85; }
body.cdp .cdp-btn--express-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, .28) 50%, transparent 65%); transform: translateX(-120%); animation: cdp-r-shine 4.5s 1.5s ease-in-out infinite; pointer-events: none; }
@keyframes cdp-r-shine { 0%, 65% { transform: translateX(-120%); } 100% { transform: translateX(120%); } }
/* Le bouton vedette passe au-dessus : quantité + ajout au panier dessous. */
body.cdp div.product form.cart:not(.variations_form) .cdp-btn--express-hero, body.cdp div.product form.cart .woocommerce-variation-add-to-cart .cdp-btn--express-hero { order: -1; }
body.cdp div.product form.cart .cdp-btn--wa { flex: 1 1 100%; }

/* Barre du bas (mobile) : « Commander en 1 min » plein, « Ajouter » en contour. */
@media (max-width: 760px) {
	body.single-product .cdp-stickycta { gap: 8px; }
	body.single-product .cdp-stickycta__express { order: 3; flex: 1 1 auto !important; width: auto !important; min-width: 0; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 12px !important; border: 0 !important; background: linear-gradient(120deg, var(--plum, #73304a), #a24a70) !important; color: #fff !important; font-size: 14px; font-weight: 800; white-space: nowrap; box-shadow: 0 6px 16px rgba(115, 48, 74, .3); }
	body.single-product .cdp-stickycta__express span { overflow: hidden; text-overflow: ellipsis; }
	body.single-product .cdp-stickycta [data-cdp-sticky-btn] { order: 2; flex: 0 1 auto !important; max-width: 128px !important; padding: 0 12px !important; background: #fff !important; color: var(--plum) !important; border: 1.5px solid var(--plum) !important; font-size: 13.5px; }
	body.single-product .cdp-stickycta [data-cdp-sticky-btn].is-done { background: #2e7d4f !important; border-color: #2e7d4f !important; color: #fff !important; }
	body.single-product .cdp-stickycta__info { order: 1; flex: 0 1 auto !important; max-width: 96px; }
	body.single-product .cdp-stickycta__price { font-size: 15px !important; }
	body.cdp .cdp-btn--express-hero { min-height: 58px; }
	.cdp-express__txt strong { font-size: 15.5px; }
}
@media (max-width: 480px) {
	/* Petit écran : le prix est déjà sur la fiche, la barre garde ses deux boutons lisibles. */
	body.single-product .cdp-stickycta__info { display: none !important; }
	body.single-product .cdp-stickycta [data-cdp-sticky-btn] { flex: 0 0 42% !important; max-width: none !important; }
	body.single-product .cdp-stickycta__express { flex: 1 1 0 !important; }
}

/* =========================================================================
 * 3. Onglets de la fiche (ordinateur) : pastilles dans une carte, contenu qui apparaît
 * ====================================================================== */
@media (min-width: 761px) {
	body.cdp div.product .woocommerce-tabs { padding: 26px 30px 30px; border-radius: 26px; background: #fff; border: 1px solid var(--line); box-shadow: 0 1px 2px rgba(43, 37, 48, .04); }
	body.cdp div.product .woocommerce-tabs ul.tabs { display: inline-flex !important; gap: 4px; margin: 0 0 22px !important; padding: 5px !important; border: 0 !important; border-radius: 999px; background: var(--paper-soft, #f6efea); overflow: visible; }
	body.cdp div.product .woocommerce-tabs ul.tabs li a { min-height: 42px; padding: 0 20px !important; border: 0 !important; border-radius: 999px; color: var(--muted); font-weight: 700; font-size: 14.5px; transition: background .2s, color .2s, box-shadow .2s; }
	body.cdp div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--plum); background: rgba(255, 255, 255, .6); }
	body.cdp div.product .woocommerce-tabs ul.tabs li.active a { background: #fff; color: var(--plum); box-shadow: 0 2px 10px rgba(115, 48, 74, .14); }
	body.cdp div.product .woocommerce-tabs ul.tabs li a::after { display: none !important; }
	body.cdp div.product .woocommerce-tabs .panel { max-width: 760px; font-size: 15.5px; line-height: 1.75; color: var(--ink); animation: cdp-r-panel .35s ease both; }
	body.cdp div.product .woocommerce-tabs .panel p { margin: 0 0 12px; }
	body.cdp div.product .woocommerce-tabs .panel table { border-radius: 14px; overflow: hidden; }
	@keyframes cdp-r-panel { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
}

/* =========================================================================
 * 4. Cartes produit : plus fines, 2e photo au survol, tailles, ajout rapide
 * ====================================================================== */
.cdp-card-product__media { border-radius: 18px !important; isolation: isolate; }
.cdp-card-product__media::after { content: ""; position: absolute; inset: auto 0 0; height: 38%; z-index: 1; background: linear-gradient(to top, rgba(43, 37, 48, .18), transparent); opacity: 0; transition: opacity .3s; pointer-events: none; }
.cdp-card-product__media .cdp-card-product__alt { position: absolute; inset: 0; opacity: 0; transition: opacity .45s ease, transform .6s ease; }
.cdp-card-product__media .cdp-badges { z-index: 2; }
.cdp-card-product__media .cdp-badge { padding: 4px 9px !important; font-size: 10.5px !important; letter-spacing: .02em; border-radius: 999px; backdrop-filter: blur(4px); }
.cdp-card-product__media .cdp-heart { z-index: 3; }
.cdp-card-product__sizes { position: absolute; z-index: 2; left: 10px; right: 10px; bottom: 10px; padding: 7px 10px; border-radius: 12px; background: rgba(255, 255, 255, .92); backdrop-filter: blur(6px); color: var(--ink); font: 700 11.5px var(--font-sans); letter-spacing: .04em; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; opacity: 0; transform: translateY(8px); transition: opacity .25s, transform .25s; pointer-events: none; }

.cdp-card-product__body { padding: 12px 4px 0 !important; gap: 3px !important; }
.cdp-card-product__fam { margin: 0 !important; font-size: 10.5px !important; font-weight: 700 !important; letter-spacing: .12em !important; color: var(--muted) !important; }
body.cdp ul.products li.product .cdp-card-product__title, .cdp-card-product__title { font: 500 15px/1.35 var(--font-sans) !important; color: var(--ink); -webkit-line-clamp: 1 !important; }
.cdp-card-product__pricerow { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px !important; margin-top: 2px !important; }
.cdp-card-product__pricerow .cdp-price { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 0 6px; font-size: 17px !important; }
.cdp-card-product__pricerow .cdp-price del { order: 2; font-size: 12.5px; color: var(--muted); opacity: .8; font-family: var(--font-sans); }
.cdp-card-product__pricerow .cdp-price ins { order: 1; text-decoration: none; }
.cdp-card-product.sale .cdp-price ins, .cdp-card-product.sale .cdp-price ins .amount { color: var(--rose, #c2557f) !important; }
.cdp-card-product__pricerow .cdp-pct { order: 3; padding: 2px 7px; border-radius: 6px; background: var(--rose, #c2557f); color: #fff; font: 800 11px var(--font-sans); }
.cdp-card-product__hint { font-size: 12px !important; color: var(--muted) !important; }
.cdp-card-product__low { font-size: 12px !important; font-weight: 600 !important; }

/* Ajout rapide : rond sur mobile, barre « Ajout rapide » au survol sur ordinateur. */
.cdp-quickadd__label { display: none; }
@media (hover: hover) and (min-width: 761px) {
	.cdp-card-product:hover .cdp-card-product__media::after { opacity: 1; }
	.cdp-card-product:hover .cdp-card-product__alt { opacity: 1; }
	.cdp-card-product:hover .cdp-card-product__media img { transform: scale(1.04); }
	.cdp-card-product:hover .cdp-card-product__sizes { opacity: 1; transform: none; }
	.cdp-card-product .cdp-quickadd { z-index: 2; left: 10px !important; right: 10px !important; bottom: 10px !important; width: auto !important; height: 42px !important; border-radius: 12px !important; display: flex !important; align-items: center; justify-content: center; gap: 8px; background: rgba(255, 255, 255, .94) !important; color: var(--plum) !important; box-shadow: 0 6px 16px rgba(43, 37, 48, .14) !important; opacity: 0; transform: translateY(10px); transition: opacity .25s, transform .25s, background .2s !important; }
	.cdp-card-product:hover .cdp-quickadd, .cdp-card-product .cdp-quickadd:focus-visible { opacity: 1; transform: none; }
	.cdp-card-product .cdp-quickadd:hover { background: var(--plum) !important; color: #fff !important; }
	.cdp-card-product .cdp-quickadd .cdp-quickadd__plus { display: none; }
	.cdp-card-product .cdp-quickadd__label { display: inline; font: 800 13px var(--font-sans); }
	.cdp-card-product .cdp-quickadd ~ .cdp-card-product__sizes, .cdp-card-product:has(.cdp-quickadd) .cdp-card-product__sizes { display: none; }
}
@media (max-width: 760px) {
	.cdp-card-product__media { border-radius: 16px !important; }
	.cdp-card-product__body { padding-top: 8px !important; }
	body.cdp ul.products li.product .cdp-card-product__title, .cdp-card-product__title { font-size: 13.5px !important; }
	.cdp-card-product__pricerow .cdp-price { font-size: 15px !important; }
	.cdp-card-product__alt, .cdp-card-product__sizes { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
	body.cdp .cdp-btn--express-hero::after { animation: none; }
	body.cdp div.product .woocommerce-tabs .panel { animation: none; }
}

/* =========================================================================
 * V3.22 — Accueil mobile plus compact, menu clair, pied de page, en-tête fixe
 * ====================================================================== */
@media (max-width: 760px) {
	/* En-tête toujours visible. */
	body.cdp .cdp-site-header { position: sticky; top: 0; z-index: 60; transform: none !important; transition: box-shadow .2s; }
	body.cdp.cdp-scrolled .cdp-site-header { box-shadow: 0 6px 18px rgba(43, 37, 48, .08); }
	body.cdp-hide-header .cdp-site-header { transform: none !important; }
	.cdp-mbar { top: var(--cdp-hdr-h, 0px) !important; }

	/* Récits : moins hauts, toujours sur toute la largeur. */
	.cdp-m-stories { aspect-ratio: auto !important; max-height: none !important; height: clamp(250px, 80vw, 380px); margin: 4px 12px 0 !important; border-radius: 22px !important; }
	.cdp-m-story__title { font-size: clamp(24px, 7.4vw, 32px) !important; }
	.cdp-m-story__body { padding: 18px !important; gap: 4px !important; }
	.cdp-m-story__cta { min-height: 40px !important; padding: 0 16px !important; font-size: 13.5px !important; }
	.cdp-mhome .cdp-stories__list { padding-block: 6px 4px !important; gap: 10px !important; }
	.cdp-mhome .cdp-story__ring { width: 58px !important; height: 58px !important; }
	.cdp-mhome .cdp-story__label { font-size: 11px !important; }

	/* Ventes flash : cartes blanches nettes (photo carrée, nom, prix + remise sur une ligne). */
	.cdp-m-flash { padding: 16px 0 14px !important; }
	.cdp-m-flash__head, .cdp-m-flash__all { margin-inline: 16px !important; }
	.cdp-m-flash ul.products.cdp-m-row { grid-auto-columns: 42% !important; padding: 2px 16px 4px !important; margin: 0 !important; scroll-padding-inline: 16px; scroll-snap-type: x mandatory; }
	.cdp-m-flash ul.products.cdp-m-row > li { scroll-snap-align: start; }
	.cdp-m-flash .cdp-card-product { padding: 0 !important; overflow: hidden; border-radius: 16px !important; }
	.cdp-m-flash .cdp-card-product__media { aspect-ratio: 1 / 1 !important; border-radius: 0 !important; }
	.cdp-m-flash .cdp-card-product__body { padding: 8px 10px 10px !important; }
	.cdp-m-flash .cdp-card-product__title { font-size: 12.5px !important; }
	.cdp-m-flash .cdp-card-product__pricerow { flex-wrap: nowrap !important; gap: 6px !important; }
	.cdp-m-flash .cdp-card-product__pricerow .cdp-price { font-size: 14px !important; white-space: nowrap; }
	.cdp-m-flash .cdp-card-product__pricerow .cdp-price del { display: none; }
	.cdp-m-flash .cdp-card-product__pricerow .cdp-pct { flex: none; }
	.cdp-m-flash .cdp-card-product__hint, .cdp-m-flash .cdp-card-product__low, .cdp-m-flash .cdp-card-product__fam { display: none !important; }
	.cdp-m-flash .cdp-heart { width: 30px !important; height: 30px !important; }
	.cdp-m-flash .cdp-quickadd { width: 34px !important; height: 34px !important; }

	/* Carte cadeau : la carte au-dessus, le texte dessous, centré. */
	.cdp-m-gift { grid-template-columns: 1fr !important; justify-items: center; gap: 16px !important; padding: 22px 18px 18px !important; text-align: center; background: radial-gradient(120% 90% at 50% 0%, #fbeef3, #fff 70%) !important; }
	.cdp-m-gift__card { width: min(78%, 280px); transform: none !important; animation: cdp-r-giftfloat 4s ease-in-out infinite !important; }
	@keyframes cdp-r-giftfloat { 0%, 100% { transform: rotate(-3deg) translateY(0); } 50% { transform: rotate(-1deg) translateY(-6px); } }
	.cdp-m-gift__body { align-items: center; }
	.cdp-m-gift__title { font-size: 22px !important; }
	.cdp-m-gift .cdp-m-banner__cta { margin-top: 6px; padding: 10px 18px; border-radius: 999px; background: var(--plum); color: #fff !important; }

	/* Pied de page : marque centrée, raccourcis, accordéons, bas de page sans grand vide. */
	.cdp-footer__grid { padding-block: 30px 6px !important; }
	.cdp-footer__brand { display: flex !important; flex-direction: column; align-items: center; gap: 12px !important; padding-bottom: 20px !important; text-align: center; }
	.cdp-footer__logo { display: inline-flex; align-items: center; gap: 10px; text-decoration: none !important; }
	.cdp-footer__logo .cdp-logo__mark { flex: none; width: 18px !important; height: 38px !important; }
	.cdp-footer__logotext { display: grid; text-align: left; line-height: 1.1; }
	.cdp-footer__name { margin: 0; font-family: var(--font-display, var(--font-serif)); font-size: 21px; color: #fff; }
	.cdp-footer__sub { margin: 2px 0 0; font-size: 9.5px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--gold-soft, #f6eedd); }
	.cdp-footer__text { max-width: 320px; margin: 0 !important; font-size: 13px; line-height: 1.55; color: rgba(255, 255, 255, .72) !important; }
	.cdp-footer__quick { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
	.cdp-footer__quick a { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 14px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .22); color: #fff !important; font-size: 12.5px; font-weight: 700; text-decoration: none !important; }
	details.cdp-footer__col > summary { min-height: 52px !important; font-size: 12.5px; letter-spacing: .1em; }
	.cdp-footer__col li a { display: flex; align-items: center; min-height: 38px !important; color: rgba(255, 255, 255, .82) !important; }
	.cdp-footer__shop { margin-bottom: 10px; }
	.cdp-footer__shop p { margin: 0; color: rgba(255, 255, 255, .78); }
	.cdp-footer__bottom { flex-direction: column !important; align-items: center; gap: 6px !important; padding-block: 16px 18px !important; text-align: center; border-top: 1px solid rgba(255, 255, 255, .14); }
	.cdp-footer__bottom p { margin: 0; font-size: 12px; color: rgba(255, 255, 255, .6); }
	body.cdp .cdp-footer { padding-bottom: 0 !important; }

}
@media (max-width: 760px) { .cdp-m-flash .cdp-card-product__pricerow .cdp-pct { display: none !important; } }

/* Menu (téléphone et tablette) : en-tête et recherche fixes, liste lisible. */
	.cdp-menu .cdp-drawer__panel { overflow: hidden !important; display: flex; flex-direction: column; }
.cdp-menu__top { flex: none; background: var(--paper, #fffdfb); border-bottom: 1px solid var(--line); box-shadow: 0 4px 14px rgba(43, 37, 48, .05); }
.cdp-menu__top .cdp-menu__search { margin: 0 16px 12px !important; }
.cdp-menu__scroll { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 14px 0 calc(24px + env(safe-area-inset-bottom)); }
.cdp-menu__quick { grid-template-columns: repeat(4, 1fr) !important; gap: 8px !important; margin: 0 16px 18px !important; }
.cdp-menu__quick a { gap: 6px !important; padding: 10px 4px !important; border-radius: 14px !important; font-size: 12px !important; font-weight: 700; }
.cdp-menu__quick a > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--rose-tint, #f8e9ef); }
.cdp-menu__sec { margin: 0 16px 18px; }
.cdp-menu__sec .cdp-menu__label { margin: 0 4px 8px !important; }
.cdp-menu__list { list-style: none; margin: 0; padding: 4px 0; border-radius: 18px; background: #fff; border: 1px solid var(--line); }
.cdp-menu__list li { margin: 0; }
.cdp-menu__list li + li { border-top: 1px solid var(--line); }
.cdp-menu__list a { display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 8px 14px; color: var(--ink) !important; text-decoration: none !important; }
.cdp-menu__list a:active { background: var(--paper-soft, #f6efea); }
.cdp-menu__list a > .cdp-icon:last-child { margin-left: auto; color: var(--muted); flex: none; }
.cdp-menu__list--plain a { min-height: 54px; }
.cdp-menu__thumb { display: grid; place-items: center; width: 44px; height: 44px; flex: none; overflow: hidden; border-radius: 12px; background: var(--rose-tint, #f8e9ef); color: var(--plum); }
.cdp-menu__thumb img { width: 100%; height: 100%; object-fit: cover; }
.cdp-menu__thumb--icon { width: 38px; height: 38px; border-radius: 11px; }
.cdp-menu__name { display: grid; font-size: 15px; font-weight: 700; line-height: 1.25; }
.cdp-menu__name small { font-size: 12px; font-weight: 500; color: var(--muted); }
.cdp-menu__occ { margin: 0 !important; }
.cdp-menu__foot { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 4px 16px 0; font-size: 12px; color: var(--muted); text-align: center; }
.cdp-menu__cats { display: none !important; }
/* Carrousel « Complétez votre panier » : il défile dans son cadre, sans élargir la page. */
.cdp-cart__suggest, .cdp-cart__main { min-width: 0; max-width: 100%; }
.cdp-cart__suggest { overflow: hidden; }
body.cdp .cdp-cart__side, body.cdp .cdp-cart__side .cart-collaterals, body.cdp .cdp-cart__side .cart_totals, body.cdp .cdp-cart__trust { min-width: 0 !important; width: auto !important; max-width: 100%; float: none; }

/* Récits de l'accueil : texte toujours blanc et lisible, même au survol. */
.cdp-m-story, .cdp-m-story:hover, .cdp-m-story:focus, .cdp-m-story:visited { color: #fff !important; }
.cdp-m-story__title, .cdp-m-story__text { color: #fff !important; text-shadow: 0 2px 12px rgba(0, 0, 0, .45); }
.cdp-m-story__eyebrow { color: #fff !important; background: rgba(43, 37, 48, .45) !important; border-color: rgba(255, 255, 255, .45) !important; backdrop-filter: blur(4px); }
.cdp-m-story::after { background: linear-gradient(180deg, rgba(43, 37, 48, .28) 0%, transparent 25%, rgba(43, 37, 48, .35) 50%, rgba(43, 37, 48, .85) 100%) !important; }
.cdp-m-story__cta, .cdp-m-story:hover .cdp-m-story__cta { color: var(--plum) !important; background: #fff !important; }
.cdp-m-banner:hover, .cdp-m-banner:hover * { text-decoration: none; }

/* Panier vide / suggestions : alignées sur la largeur du titre, sans barre de défilement visible. */
body.cdp .cdp-cart__suggest .woocommerce { max-width: none !important; width: 100% !important; margin: 0 !important; }
body.cdp .cdp-cart__suggest ul.products { scrollbar-width: none; }
body.cdp .cdp-cart__suggest ul.products::-webkit-scrollbar { display: none; }
body.cdp .cdp-cart__suggest .cdp-m__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
@media (min-width: 761px) {
	body.cdp .cdp-cart__suggest--empty { max-width: 1192px; margin: 26px auto 0; }
	body.cdp .cdp-cart__suggest--empty .cdp-m__head { margin-bottom: 14px; }
	body.cdp .cdp-cart__suggest--empty .cdp-m__head h2 { font-size: 28px; }
	body.cdp .cdp-cart__suggest--empty ul.products.cdp-m-row { display: grid !important; grid-auto-flow: row !important; grid-auto-columns: auto !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 30px 22px !important; overflow: visible !important; padding: 0 !important; margin: 0 !important; }
	body.cdp .cdp-cart__suggest--empty ul.products.cdp-m-row > li { width: auto !important; }
	body.cdp .cdp-cart-empty { padding-top: 48px; }
}
@media (min-width: 761px) and (max-width: 1000px) {
	body.cdp .cdp-cart__suggest--empty ul.products.cdp-m-row { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
