/* Kautzmann — Boutique 1.2.0, fiche produit (phase A).
   Epilogue (titres), Gabarito (texte), prune #663864. Tout est sous body.kzb-fiche. */

body.kzb-fiche {
	--p6: #663864; --p7: #582a56; --p8: #4e274c; --p05: #f4eff4; --ink: #2b2530;
	--titre: Epilogue, "PT Sans", "Helvetica Neue", Arial, sans-serif;
	--texte: Gabarito, "PT Sans", "Helvetica Neue", Arial, sans-serif;
}

/* Titre et prix */
body.kzb-fiche .product--summary .product_title {
	font: 800 clamp(30px, 3.4vw, 46px)/1.02 var(--titre); letter-spacing: -.02em;
	text-transform: uppercase; color: var(--p6); text-wrap: balance; margin: 6px 0 14px;
}
body.kzb-fiche .product--summary .label-price { font: 400 15px/1.2 var(--texte); color: #5a5a5a; margin: 0 0 2px; }
body.kzb-fiche.kzb-prix-unique .product--summary .label-price { display: none; }
body.kzb-fiche .product--summary .single-price-wrapper .price { font: 800 clamp(26px, 2.4vw, 34px)/1.1 var(--titre); color: var(--p6); margin: 0 0 14px; }
body.kzb-fiche .product--summary .single-price-wrapper .price,
body.kzb-fiche .product--summary .single-price-wrapper .price *,
body.kzb-fiche .product--summary .single-price-wrapper .price { color: var(--p6) !important; }
body.kzb-fiche .product--summary .single-price-wrapper .price > span[aria-hidden="true"]:not(.amount) { display: inline !important; margin: 0 .15em; }
body.kzb-fiche .product--summary .single-price-wrapper .price del { font-weight: 400; font-size: .6em; opacity: .65; }
body.kzb-fiche .product--summary .single-price-wrapper .price ins { text-decoration: none; }

/* Texte courant : lisible, allergènes bien visibles */
body.kzb-fiche .product--summary .woocommerce-product-details__short-description { font: 400 17px/1.6 var(--texte); color: var(--ink); }
body.kzb-fiche .product--summary .woocommerce-product-details__short-description p { margin: 0 0 .8em; }
body.kzb-fiche .product--summary .product_item--category-link { font: 400 15px/1.4 var(--texte); color: #5a5a5a; margin: 6px 0 14px; }
body.kzb-fiche .product--summary .product_item--category-link a { color: var(--p6); font-weight: 700; }

/* Boutons : « Acheter » en premier et plein, « Ajouter au panier » en second, au trait. */
body.kzb-fiche .product--summary .wrap-cart-cta { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; }
body.kzb-fiche .product--summary .wrap-cart-cta > .btn,
body.kzb-fiche .product--summary .wrap-cart-cta > .single_add_to_cart_button { flex: 1 1 200px; min-height: 52px; border-radius: 999px; font: 700 17px/1 var(--texte); display: inline-flex; align-items: center; justify-content: center; gap: 10px; cursor: pointer; transition: background .25s, color .25s, border-color .25s, transform .2s; }
body.kzb-fiche .product--summary #buy_now_button { background: var(--p6) !important; color: #fff !important; border: 2px solid var(--p6); order: 1; }
body.kzb-fiche .product--summary #buy_now_button:hover { background: var(--p8); border-color: var(--p8); }
body.kzb-fiche .product--summary .wrap-cart-cta .single_add_to_cart_button.button { background: #fff !important; color: var(--p6) !important; border: 2px solid var(--p6) !important; order: 2; box-shadow: none; }
body.kzb-fiche .product--summary .wrap-cart-cta .single_add_to_cart_button.button:hover { background: var(--p05) !important; }
body.kzb-fiche .product--summary .wrap-cart-cta .single_add_to_cart_button.button * { color: var(--p6) !important; }
body.kzb-fiche .product--summary .wrap-cart-cta .single_add_to_cart_button svg, body.kzb-fiche .product--summary .wrap-cart-cta .single_add_to_cart_button svg * { fill: var(--p6) !important; }
body.kzb-fiche .product--summary #buy_now_button * { color: #fff !important; }
body.kzb-fiche .product--summary #buy_now_button:active,
body.kzb-fiche .product--summary .single_add_to_cart_button:active { transform: scale(.98); }
body.kzb-fiche .product--summary .wrap-cart-cta svg { flex: 0 0 auto; }
body.kzb-fiche .product--summary #buy_now_button:focus-visible,
body.kzb-fiche .product--summary .single_add_to_cart_button:focus-visible { outline: 3px solid #e4a400; outline-offset: 3px; }

/* Bloc retrait */
.kzb-retrait { display: flex; gap: 14px; align-items: flex-start; margin: 20px 0 0; padding: 16px 18px; border-radius: 18px; background: var(--p05, #f4eff4); color: #2b2530; }
.kzb-retrait__icone { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: #fff; color: #663864; }
.kzb-retrait__texte { margin: 0; font: 400 16px/1.5 Gabarito, "PT Sans", Arial, sans-serif; }
.kzb-retrait__texte strong { color: #4e274c; font-weight: 800; }

/* Variantes en rupture */
body.kzb-fiche .variations select option:disabled { color: #9a9a9a; }

@media (max-width: 640px) {
	body.kzb-fiche .product--summary .wrap-cart-cta > .btn,
	body.kzb-fiche .product--summary .wrap-cart-cta > .single_add_to_cart_button { flex-basis: 100%; }
	.kzb-retrait { padding: 14px; }
}
@media (prefers-reduced-motion: reduce) {
	body.kzb-fiche .product--summary .wrap-cart-cta > * { transition: none; }
}
