/* ============================================================
   SANRIVAL — FICHE PRODUIT 2026
   Design system mobile-first, scopé sous .srp.
   ADN Sanrival : crème chaud, vert, rouge, or, Rodetta + Open Sans.
   ============================================================ */

.srp {
	/* Palette */
	--c-canvas: #fbf8f1;
	--c-surface: #ffffff;
	--c-ink: #534222;
	--c-ink-soft: rgba(83, 66, 34, .72);
	--c-green: #4a7c2f;
	--c-green-soft: #eef3ea;
	--c-red: #b3172b;
	--c-red-dark: #97102a;
	--c-gold: #c98a2e;
	--c-line: rgba(40, 30, 15, .12);
	--c-line-soft: rgba(40, 30, 15, .07);

	/* Type */
	--f-display: "Rodetta", Georgia, serif;
	--f-text: "Open Sans", system-ui, sans-serif;

	/* Espacements (échelle 4) */
	--s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px;
	--s-6: 32px; --s-7: 48px; --s-8: 64px; --s-9: 88px;

	/* Forme */
	--r-sm: 10px; --r-md: 14px; --r-lg: 20px;
	--shadow: 0 14px 40px rgba(40, 30, 15, .07);
	--shadow-sm: 0 6px 18px rgba(40, 30, 15, .06);

	--maxw: 1180px;

	width: 100%;
	max-width: var(--maxw);
	margin-inline: auto;
	color: var(--c-ink);
	font-family: var(--f-text);
}

body.single-product { background: var(--c-canvas); }

.srp *, .srp *::before, .srp *::after { box-sizing: border-box; }
.srp img { max-width: 100%; height: auto; display: block; }
.srp a { color: inherit; }

/* Titres */
.srp-stitle {
	margin: 0;
	font-family: var(--f-display);
	font-weight: 500;
	font-size: clamp(24px, 5.4vw, 32px);
	line-height: 1.08;
	letter-spacing: 0;
	color: var(--c-ink);
}
.srp-eyebrow {
	margin: 0 0 var(--s-3);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--c-green);
}
.srp-shead { margin-bottom: var(--s-6); }

/* Étoiles (mask) */
.srp-stars {
	display: inline-block;
	width: 92px; height: 16px;
	background: var(--c-line);
	-webkit-mask: repeat left center/18.4px 16px var(--sr-icon-star-mask);
	mask: repeat left center/18.4px 16px var(--sr-icon-star-mask);
	position: relative;
}
.srp-stars::before {
	content: ""; position: absolute; inset: 0; width: var(--rate, 0%);
	background: var(--c-gold);
	-webkit-mask: inherit; mask: inherit;
}

/* ============ BREADCRUMB ============ */




/* ============ HERO ============ */
.srp-hero {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--s-5);
	padding: var(--s-5) 0 var(--s-6);
}




/* Masque l'icône loupe (trigger zoom) qui flottait au-dessus de l'image */














.srp-title {
	margin: 0 0 var(--s-3);
	font-family: var(--f-display);
	font-weight: 500;
	font-size: clamp(32px, 8vw, 48px);
	line-height: 1.02;
	color: var(--c-ink);
}






/* Prix */
.srp-pricing { margin: 0 0 var(--s-4); }
.srp-pricing .price,
.srp-pricing .price ins { font-family: var(--f-display); color: var(--c-red); }
.srp-pricing .price {
	display: flex; align-items: baseline; gap: var(--s-3); flex-wrap: wrap;
	margin: 0; font-size: clamp(32px, 9vw, 48px); line-height: 1;
}
.srp-pricing .price del { color: var(--c-ink-soft); font-size: .5em; font-family: var(--f-text); opacity: .7; }
.srp-pricing .price ins { text-decoration: none; }



/* Faits clés (méta en ligne) */







/* Panier / CTA */
.srp-cart { margin: 0 0 var(--s-3); }
.srp-cart .stock { display: none; } /* on remplace par .srp-stock (plus premium) */
.srp-cart .cart { display: flex; align-items: stretch; gap: var(--s-3); margin: 0; flex-wrap: wrap; }
.srp-cart button.single_add_to_cart_button {
	flex: 1 1 auto;
	background: var(--c-red); color: #fff; border: 0;
	cursor: pointer; transition: background .18s, transform .18s, box-shadow .18s;
}
.srp-cart button.single_add_to_cart_button:hover { background: var(--c-red-dark); transform: translateY(-1px); }

/* Favoris (secondaire) — sous le CTA, parfaitement intégré */

.srp-wishlist.sr-wishlist-toggle {
	display: inline-flex; align-items: center; justify-content: center; gap: var(--s-2);
	width: 100%; min-height: 52px; padding: 0 var(--s-4);
	background: var(--c-surface); border: 1.5px solid var(--c-line); border-radius: var(--r-md);
	color: var(--c-ink-soft); font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
	cursor: pointer; transition: color .18s, border-color .18s, background .18s;
}
.srp-wishlist.sr-wishlist-toggle svg { width: var(--sc-icon-md); height: var(--sc-icon-md); fill: transparent; stroke: currentColor; }
.srp-wishlist.sr-wishlist-toggle:hover { color: var(--c-red); border-color: rgba(179,23,43,.4); }
.srp-wishlist.sr-wishlist-toggle.is-active,
.srp-wishlist.sr-wishlist-toggle[aria-pressed="true"] { color: var(--c-red); border-color: rgba(179,23,43,.5); background: rgba(179,23,43,.05); }
.srp-wishlist.sr-wishlist-toggle.is-active svg,
.srp-wishlist.sr-wishlist-toggle[aria-pressed="true"] svg { fill: var(--c-red); stroke: var(--c-red); }






/* ============ RÉASSURANCE ============ */
.srp-trust {
	display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--s-5) var(--s-4);
	padding: var(--s-6) 0; margin: var(--s-5) 0 var(--s-6);
}
.srp-trust__item { display: flex; align-items: center; gap: var(--s-3); }
.srp-trust__item svg { width: var(--sc-icon-lg); height: var(--sc-icon-lg); color: var(--c-green); flex: 0 0 auto; }
.srp-trust__item span { display: flex; flex-direction: column; font-size: 12px; color: var(--c-ink-soft); line-height: 1.35; }
.srp-trust__item strong { font-size: 14px; color: var(--c-ink); }

/* ============ NAV ANCRES — barre segmentée pleine largeur (sticky) ============ */
.srp-anchors {
	position: sticky; top: 10px; z-index: 30;
	margin: var(--s-2) 0 var(--s-7);
	padding: var(--sc-space-2);
	background: color-mix(in srgb, var(--c-surface) 92%, transparent);
	backdrop-filter: blur(12px);
	border: 1px solid var(--c-line);
	border-radius: var(--sc-r-pill);
	box-shadow: var(--shadow-sm);
}
.srp-anchors ul {
	display: flex; gap: var(--sc-space-1); margin: 0; padding: 0; list-style: none;
	overflow-x: auto; scrollbar-width: none;
}
.srp-anchors ul::-webkit-scrollbar { display: none; }
.srp-anchors li { flex: 0 0 auto; }
.srp-anchors a {
	display: inline-flex; align-items: center; justify-content: center; white-space: nowrap;
	min-height: 52px; padding: 0 var(--sc-space-5); border-radius: var(--sc-r-pill); text-decoration: none;
	font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--c-ink-soft);
	transition: color .15s, background .15s;
}
.srp-anchors a:hover { color: var(--c-ink); background: var(--c-green-soft); }
.srp-anchors a.is-active { color: #fff; background: var(--c-green); box-shadow: 0 4px 12px rgba(74,124,47,.28); }

/* ============ SECTIONS ============ */
.srp-section { padding: var(--s-7) 0; border-top: 1px solid var(--c-line-soft); }
.srp-section:first-of-type { border-top: 0; }
[id] { scroll-margin-top: 72px; }

/* Atouts */








/* Éditorial + caractéristiques */



























/* Calendrier de culture */























/* FAQ */
.srp-faq__list { display: flex; flex-direction: column; gap: var(--s-3); }
.srp-faq__item { border: 1px solid var(--c-line); border-radius: var(--r-md); background: var(--c-surface); overflow: hidden; }
.srp-faq__item summary {
	display: flex; align-items: center; justify-content: space-between; gap: var(--s-3);
	padding: var(--s-4); cursor: pointer; list-style: none;
	font-size: 16px; font-weight: 700; color: var(--c-ink);
}
.srp-faq__item summary::-webkit-details-marker { display: none; }
.srp-faq__sign { display: inline-grid; width: 18px; height: 18px; flex: 0 0 auto; place-items: center; color: var(--c-green); transition: transform .2s; }
.srp-faq__sign svg { width: var(--sc-icon-sm); height: var(--sc-icon-sm); }
.srp-faq__item[open] .srp-faq__sign { transform: rotate(45deg); }
.srp-faq__a { padding: 0 var(--s-4) var(--s-4); font-size: 14px; line-height: 1.65; color: var(--c-ink-soft); }
.srp-faq__a p { margin: 0 0 var(--s-2); }
.srp-faq__item[open] .srp-faq__a { animation: srpFade .26s ease; }
@keyframes srpFade { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* ============================================================
   AVIS — bloc unique premium (refonte dédiée)
   Container .srp-rv rendu par woocommerce/single-product-reviews.php :
   titre → note globale → liste d'avis → formulaire. Un seul système.
   ============================================================ */
.srp-rv {
	background: var(--c-surface);
	border: 1px solid var(--c-line);
	border-radius: var(--r-lg);
	padding: clamp(var(--s-5), 4vw, var(--s-7));
	box-shadow: var(--shadow);
}
.srp-rv__title {
	margin: 0 0 var(--s-5);
	font-family: var(--f-display); font-weight: 500; color: var(--c-ink);
}

/* Note globale */
.srp-rv__summary {
	display: flex; align-items: center; flex-wrap: wrap; gap: var(--s-3) var(--s-5);
	margin: 0 0 var(--s-6); padding: 0 0 var(--s-6);
	border-bottom: 1px solid var(--c-line);
}
.srp-rv__score { display: inline-flex; align-items: center; gap: var(--s-3); }
.srp-rv__score strong { font-family: var(--f-display); font-weight: 500; font-size: 48px; line-height: .9; color: var(--c-green); }
.srp-rv__summary .srp-stars { width: 125px; height: 22px; -webkit-mask-size: 25px 22px; mask-size: 25px 22px; }
.srp-rv__summary .srp-stars::before { -webkit-mask-size: 25px 22px; mask-size: 25px 22px; }
.srp-rv__count { display: inline-flex; align-items: center; gap: var(--sc-space-2); font-size: 14px; font-weight: 700; color: var(--c-ink-soft); }
.srp-rv__count::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--c-green); }

/* Liste des avis */
.srp-rv #comments { margin: 0; }
.srp-rv .commentlist { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-4); }
/* Le clearfix Woo (::before/::after) devient un item de grille et décale les cartes.
   Spécificité alignée sur `.woocommerce #reviews #comments ol.commentlist::after`. */
.woocommerce #reviews #comments ol.commentlist::before,
.woocommerce #reviews #comments ol.commentlist::after { content: none; }
.srp-rv .commentlist li { margin: 0; }
.srp-rv .comment_container {
	display: block;
	background: var(--c-canvas); border: 1px solid var(--c-line); border-radius: var(--r-md);
	padding: var(--s-5); transition: box-shadow .18s ease, transform .18s ease;
}
.srp-rv .comment_container:hover { box-shadow: var(--shadow-sm); transform: translateY(-1px); }
.srp-rv .avatar { display: none !important; }
/* Réinitialise la boîte WooCommerce native (.comment-text : margin-left 50px + bordure)
   pour reprendre la main : ordre visuel étoiles → avis → auteur/date, pleine largeur. */
.srp-rv .comment-text {
	display: flex; flex-direction: column;
	margin: 0 !important; padding: 0 !important;
	border: 0 !important; border-radius: 0 !important; background: transparent !important;
}
/* Largeur élargie de 5 × 2px : le letter-spacing tronquait la 5e étoile
   (boîte WooCommerce figée à 5.4em, overflow hidden). */
.srp-rv .star-rating { order: 1; width: calc(5.4em + 10px); margin: 0 0 var(--s-3); font-size: 16px; color: var(--c-gold); letter-spacing: 2px; }
.srp-rv .star-rating::before { color: var(--c-line); }
.srp-rv .star-rating span::before { color: var(--c-gold); }
.srp-rv .description { order: 2; color: var(--c-ink); }
.srp-rv .description p { margin: 0 0 var(--s-2); font-size: 16px; line-height: 1.66; }
.srp-rv .description p:last-child { margin-bottom: 0; }
.srp-rv .meta {
	order: 3; margin: var(--s-4) 0 0; padding-top: var(--s-3); border-top: 1px solid var(--c-line-soft);
	font-size: 12px; color: var(--c-ink-soft);
}
.srp-rv .woocommerce-review__author { font-weight: 800; color: var(--c-ink); }
.srp-rv .woocommerce-review__dash { margin: 0 var(--sc-space-1); opacity: .55; }
.srp-rv .woocommerce-noreviews {
	margin: 0; padding: var(--s-6); text-align: center;
	background: var(--c-surface); border: 1px dashed var(--c-line); border-radius: var(--r-md);
	color: var(--c-ink-soft); font-size: 14px;
}

/* Formulaire — placé sous les avis */
.srp-rv #review_form_wrapper { margin: var(--s-6) 0 0; padding: var(--s-6) 0 0; border-top: 1px solid var(--c-line); }
.srp-rv #respond { margin: 0; }
.srp-rv #reply-title, .srp-rv .comment-reply-title {
	display: block; margin: 0 0 var(--s-4);
	font-family: var(--f-display); font-weight: 500; font-size: clamp(20px, 4vw, 24px); color: var(--c-ink);
}
.srp-rv .comment-notes, .srp-rv .must-log-in { margin: 0 0 var(--s-5); font-size: 12px; color: var(--c-ink-soft); }
.srp-rv #respond label { display: block; margin: 0 0 var(--sc-space-2); font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--c-ink); }
.srp-rv .comment-form-rating { margin: 0 0 var(--s-4); }
/* étoiles cliquables (widget WooCommerce) + repli sur le select */
.srp-rv p.stars { display: inline-flex; gap: 2px; margin: 0; }
.srp-rv p.stars a { color: var(--c-gold); }
.srp-rv #respond input[type="text"],
.srp-rv #respond input[type="email"],
.srp-rv #respond textarea,
.srp-rv #respond select {
	width: 100%; margin: 0 0 var(--s-4);
}
.srp-rv #respond textarea { resize: vertical; }

.srp-rv .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: var(--sc-space-2); margin: 0 0 var(--s-4); }
.srp-rv .comment-form-cookies-consent label { display: inline; margin: 0; font-size: 12px; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--c-ink-soft); }
.srp-rv .comment-form-cookies-consent input { width: auto; margin: 2px 0 0; }
.srp-rv .required { color: var(--c-red); }
@media (min-width: 601px) {
	.srp-rv .comment-form-author, .srp-rv .comment-form-email { display: inline-block; width: calc(50% - 7px); vertical-align: top; }
	.srp-rv .comment-form-author { margin-right: var(--sc-space-3); }
}
.srp-rv #respond #submit,
.srp-rv #respond .submit,
.srp-rv #respond input[type="submit"] {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 54px; padding: 0 var(--sc-space-6); margin: var(--s-2) 0 0;
	background: var(--c-red) !important; color: #fff !important; border: 0 !important;
	font-family: var(--f-text); font-size: 16px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase;
	-webkit-appearance: none; appearance: none; cursor: pointer;
	box-shadow: 0 10px 26px rgba(179,23,43,.20); transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.srp-rv #respond #submit:hover,
.srp-rv #respond .submit:hover,
.srp-rv #respond input[type="submit"]:hover { background: var(--c-red-dark) !important; transform: translateY(-1px); box-shadow: 0 14px 32px rgba(179,23,43,.26); }

/* Recommandations (cross-sell) */
.srp-reco__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--s-4); margin: 0; padding: 0; list-style: none; }
.srp-card { display: flex; flex-direction: column; background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-md); overflow: hidden; transition: transform .18s, box-shadow .18s; }
.srp-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); }
.srp-card__media { display: block; aspect-ratio: 4 / 5; background: #f4efe4; overflow: hidden; }
.srp-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.srp-card:hover .srp-card__media img { transform: scale(1.04); }
.srp-card__body { display: flex; flex-direction: column; flex: 1 1 auto; gap: var(--sc-space-1); padding: var(--s-3); }
.srp-card__cat { font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--c-green); }
.srp-card__title { font-size: 14px; font-weight: 700; line-height: 1.25; color: var(--c-ink); text-decoration: none; }
.srp-card__foot { display: flex; align-items: center; justify-content: space-between; gap: var(--s-2); margin-top: auto; padding-top: var(--s-2); }
.srp-card__price .price,
.srp-card__price { font-family: var(--f-display); font-size: 20px; color: var(--c-red); }
.srp-card__price del { display: none; }
.srp .srp-card__foot .srp-card__add {
	display: inline-grid; place-items: center; width: 44px; height: 44px; flex: 0 0 auto;
	background: var(--c-red) !important; color: #fff !important; border: 0 !important; border-radius: var(--r-sm); text-decoration: none;
	font-size: 24px; font-weight: 700; line-height: 1; transition: background .15s, transform .15s;
}
.srp .srp-card__foot .srp-card__add:hover { background: var(--c-red-dark) !important; color: #fff !important; transform: translateY(-1px); }

/* Reveal on scroll */
.srp-reveal { opacity: 0; transform: translateY(14px); transition: opacity .5s ease, transform .5s ease; }
.srp-reveal.is-in { opacity: 1; transform: none; }

/* Focus accessible */
.srp a:focus-visible, .srp button:focus-visible, .srp summary:focus-visible, .srp input:focus-visible, .srp textarea:focus-visible {
	outline: 2px solid var(--c-green); outline-offset: 2px; border-radius: var(--sc-r-xs);
}

/* Barre ATC sticky (mobile) */
.srp-stickybar {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
	display: flex; align-items: center; gap: var(--s-3);
	padding: var(--sc-space-3) var(--sc-space-4); background: rgba(255,255,255,.96); backdrop-filter: blur(8px);
	border-top: 1px solid var(--c-line);
	transform: translateY(110%); transition: transform .28s ease;
}
.srp-stickybar.is-visible { transform: none; }
.srp-stickybar__info { display: flex; flex-direction: column; min-width: 0; flex: 1 1 auto; }
.srp-stickybar__name { font-size: 14px; font-weight: 700; color: var(--c-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.srp-stickybar__price { font-family: var(--f-display); font-size: 18px; color: var(--c-red); line-height: 1; }
.srp-stickybar__btn {
	flex: 0 0 auto; min-height: 46px; padding: 0 var(--sc-space-5); border: 0; border-radius: var(--r-md);
	background: var(--c-red); color: #fff; font-weight: 800; font-size: 14px; text-transform: uppercase; cursor: pointer;
}
.srp-stickybar__btn:hover { background: var(--c-red-dark); }

/* ============================================================
   TABLETTE ≥ 720px
   ============================================================ */
@media (min-width: 761px) {
	
	.srp-trust { grid-template-columns: repeat(4, 1fr); gap: var(--s-5); }
	
	.srp-reco__grid { grid-template-columns: repeat(4, 1fr); }
	
	.srp-stickybar { display: none; } /* sticky bar mobile uniquement */
	/* Tabs : répartis sur toute la largeur */
	.srp-anchors li { flex: 1 1 0; }
	.srp-anchors a { width: 100%; }
}

/* ============================================================
   DESKTOP ≥ 1000px
   ============================================================ */
@media (min-width: 1021px) {
	.srp-hero {
		grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
		gap: var(--s-7);
		align-items: start;
		padding: var(--s-6) 0 var(--s-8);
	}
	
	
	
	
	
	.srp-section { padding: var(--s-9) 0; }
	.srp-stitle { font-size: clamp(28px, 2vw, 32px); }
}

/* ============================================================
   UPSELL HERO — « Complétez votre culture » (module compact)
   ============================================================ */
.srp-heroups { margin-top: var(--s-4); padding-top: var(--s-4); border-top: 1px solid var(--c-line-soft); }
.srp-heroups__title { display: flex; align-items: center; gap: var(--s-2); margin: 0 0 var(--s-3); color: var(--c-ink); font-size: 14px; font-weight: 800; letter-spacing: .01em; }
.srp-heroups__ic { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; flex: 0 0 auto; color: var(--c-green); background: var(--c-green-soft); border-radius: var(--sc-r-xs); }
.srp-heroups__ic svg { width: var(--sc-icon-sm); height: var(--sc-icon-sm); }
.srp-heroups__list { display: flex; flex-direction: column; gap: var(--s-2); margin: 0; padding: 0; list-style: none; }
.srp-heroups__item { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; align-items: center; gap: var(--s-3); padding: var(--s-2); background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-sm); transition: border-color .18s, box-shadow .18s, transform .18s; }
.srp-heroups__item:hover { border-color: rgba(74,124,47,.4); box-shadow: var(--shadow-sm); transform: translateY(-1px); }
.srp-heroups__media { display: block; width: 52px; height: 52px; flex: 0 0 auto; overflow: hidden; background: #f4efe4; border-radius: var(--sc-r-xs); }
.srp-heroups__media img { width: 100%; height: 100%; object-fit: cover; }
.srp-heroups__info { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.srp-heroups__name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: var(--c-ink); font-size: 14px; font-weight: 700; line-height: 1.25; text-decoration: none; }
.srp-heroups__name:hover { color: var(--c-green); }
.srp-heroups__price { font-family: var(--f-display); font-size: 16px; color: var(--c-red); }
.srp-heroups__price del { display: none; }
.srp-heroups__price ins { text-decoration: none; }
.srp .srp-heroups__add {
	display: inline-flex !important; align-items: center; justify-content: center;
	width: 44px; height: 44px; flex: 0 0 auto; padding: 0 !important;
	color: #fff !important; background: var(--c-red) !important; border: 1px solid var(--c-red) !important;
	border-radius: 50% !important; font-size: 20px; font-weight: 700; line-height: 1; text-decoration: none !important;
	box-shadow: none !important; transition: background .18s, transform .18s;
}
.srp .srp-heroups__add:hover { background: var(--c-red-dark) !important; border-color: var(--c-red-dark) !important; transform: translateY(-1px); }
.srp .srp-heroups__add.loading { opacity: .65; pointer-events: none; }
.srp .srp-heroups__add.added { background: var(--c-green) !important; border-color: var(--c-green) !important; }
.srp .srp-heroups__add--link {
	color: var(--c-green) !important; background: transparent !important; border-color: rgba(74,124,47,.45) !important; font-size: 18px;
}
.srp .srp-heroups__add--link:hover { color: #fff !important; background: var(--c-green) !important; border-color: var(--c-green) !important; }
/* WooCommerce ajoute parfois un « View cart » après le bouton : on le neutralise dans ce module compact. */
.srp-heroups__add .added_to_cart,
.srp-heroups__item > .added_to_cart { display: none !important; }

/* ============================================================
   PHASE FINALE — MICRO POLISH (qualité perçue + conversion)
   CSS uniquement. Surcharges ciblées appendées, zéro régression.
   ============================================================ */

/* ---- 1. HERO : réassurance plus présente (mini-cartes, sans alourdir) ---- */
.srp-trust { gap: var(--s-3); padding: 0; margin: var(--s-4) 0 var(--s-7); }
.srp-trust__item {
	gap: var(--s-3); padding: var(--s-4);
	background: var(--c-surface); border: 1px solid var(--c-line-soft); border-radius: var(--r-md);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.srp-trust__item:hover { transform: translateY(-2px); box-shadow: var(--shadow-sm); border-color: rgba(74,124,47,.28); }
.srp-trust__item > svg { width: 40px; height: 40px; padding: var(--sc-space-2); background: var(--c-green-soft); border-radius: var(--sc-r-sm); }
.srp-trust__item strong { font-size: 14px; letter-spacing: -.005em; }
.srp-trust__item span { font-size: 12px; line-height: 1.4; gap: 1px; }

/* ---- 2. UPSELL HERO : module natif premium (panneau cohérent, rythme net) ---- */
.srp-heroups {
	margin-top: var(--s-5); padding: var(--s-3) var(--s-4) var(--s-4); border-top: 0;
	background: color-mix(in srgb, var(--c-green-soft) 42%, var(--c-surface));
	border: 1px solid var(--c-line-soft); border-radius: var(--r-md);
}
.srp-heroups__title {
	margin: 0 0 var(--s-3); padding-bottom: var(--s-3); border-bottom: 1px solid var(--c-line-soft);
	font-size: 12px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: var(--c-ink);
}
.srp-heroups__ic { width: 24px; height: 24px; border-radius: var(--sc-r-xs); }
.srp-heroups__ic svg { width: var(--sc-icon-sm); height: var(--sc-icon-sm); }
.srp-heroups__list { gap: 2px; }
.srp-heroups__item {
	grid-template-columns: 54px minmax(0, 1fr) auto; gap: var(--s-3); padding: var(--s-2);
	background: transparent; border: 0; border-radius: var(--r-sm);
}
.srp-heroups__item:hover { transform: none; box-shadow: var(--shadow-sm); background: var(--c-surface); border: 0; }
.srp-heroups__media { width: 54px; height: 54px; border-radius: var(--sc-r-sm); border: 1px solid var(--c-line-soft); background: var(--c-surface); }
.srp-heroups__name { font-size: 14px; font-weight: 700; }
.srp-heroups__price { font-size: 16px; line-height: 1; }
.srp .srp-heroups__add { width: 44px; height: 44px; font-size: 20px; box-shadow: 0 6px 14px rgba(179,23,43,.20) !important; }
.srp .srp-heroups__add:hover { box-shadow: 0 9px 18px rgba(179,23,43,.28) !important; }

/* ---- 3. AVIS : voir la section dédiée « AVIS — bloc unique premium » (.srp-rv) plus haut. ---- */

/* ---- 4. CROSS-SELL : profondeur, hover subtil, badge intégré ---- */
.srp-card { box-shadow: var(--shadow-sm); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.srp-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); border-color: rgba(74,124,47,.3); }
.srp-card__body { padding: var(--s-4); gap: var(--sc-space-2); }
.srp-card__cat {
	align-self: flex-start; padding: 3px var(--sc-space-2); background: var(--c-green-soft); border-radius: var(--sc-r-pill); color: var(--c-green);
}
.srp-card__title { font-size: 14px; }
.srp-card__title:hover { color: var(--c-green); }
.srp-card__price, .srp-card__price .price { font-size: 20px; }
.srp .srp-card__foot .srp-card__add { border-radius: var(--r-md); box-shadow: 0 6px 14px rgba(179,23,43,.18) !important; }
.srp .srp-card__foot .srp-card__add:hover { box-shadow: 0 9px 18px rgba(179,23,43,.26) !important; }

/* ---- 5. TABS (ancres) : actif plus présent + animation premium ---- */
.srp-anchors { box-shadow: var(--shadow-sm); }
.srp-anchors a { transition: color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.srp-anchors a:hover { color: var(--c-green); background: var(--c-green-soft); }
.srp-anchors a.is-active {
	color: #fff; transform: translateY(-1px);
	background: linear-gradient(135deg, var(--c-green), color-mix(in srgb, var(--c-green) 82%, #000));
	box-shadow: 0 7px 16px rgba(74,124,47,.34);
}

/* ---- 6. ATOUTS : padding, icônes plus grandes, respiration ---- */







/* ---- 7. MICRO POLISH GÉNÉRAL ---- */






@media (min-width: 1021px) {
	
	.srp-trust { gap: var(--s-4); }
}

/* ============================================================
   ÉVOLUTIONS FICHE — stats, paliers, calendrier, guide, réassurance
   (DA Sanrival ; mobile-first ; currentColor)
   ============================================================ */

/* ---- Stats-preuves (hero) ---- */
.srp-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-3); margin: 0 0 var(--s-5); padding: var(--s-4) 0; list-style: none; border-top: 1px solid var(--c-line-soft); border-bottom: 1px solid var(--c-line-soft); }
.srp-stat { display: flex; flex-direction: column; gap: 3px; text-align: center; }
.srp-stat__value { font-family: var(--f-display); font-weight: 500; font-size: clamp(24px, 5vw, 28px); line-height: 1; color: var(--c-green); }
.srp-stat__label { font-size: 12px; line-height: 1.3; color: var(--c-ink-soft); }

/* ---- Paliers de quantité ---- */
.srp-tiers { margin: 0 0 var(--s-4); }
.srp-tiers__title { margin: 0 0 var(--s-2); font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--c-ink); }
.srp-tiers__list { display: flex; flex-direction: column; gap: var(--s-2); }
.srp-tiers__help { margin: var(--sc-space-2) 2px 0; color: var(--c-ink-soft); font-size: 12px; line-height: 1.45; }
.srp-tier { position: relative; display: flex; align-items: center; gap: var(--s-3); padding: var(--s-3) var(--s-4); background: var(--c-surface); border: 1.5px solid var(--c-line); border-radius: var(--r-md); cursor: pointer; transition: border-color .15s, box-shadow .15s, background .15s; }
.srp-tier input { position: absolute; opacity: 0; pointer-events: none; }
.srp-tier__radio { width: 20px; height: 20px; flex: 0 0 auto; border: 2px solid var(--c-line); border-radius: 50%; position: relative; transition: border-color .15s; }
.srp-tier.is-selected { border-color: var(--c-green); background: var(--c-green-soft); box-shadow: 0 6px 16px rgba(74,124,47,.10); }
.srp-tier.is-selected .srp-tier__radio { border-color: var(--c-green); }
.srp-tier.is-selected .srp-tier__radio::after { content: ""; position: absolute; inset: 3px; background: var(--c-green); border-radius: 50%; }
.srp-tier__body { display: flex; flex-direction: column; gap: 1px; min-width: 0; flex: 1 1 auto; }
.srp-tier__name { font-size: 14px; font-weight: 800; color: var(--c-ink); }
.srp-tier__note { font-size: 12px; color: var(--c-ink-soft); }
.srp-tier__pricing { display: flex; flex-direction: column; align-items: flex-end; gap: 1px; text-align: right; flex: 0 0 auto; }
.srp-tier__total { font-family: var(--f-display); font-size: 18px; color: var(--c-red); }
.srp-tier__save { font-size: 12px; font-weight: 700; color: var(--c-green); }
.srp-tier__badge { position: absolute; top: -9px; right: 14px; padding: 2px var(--sc-space-2); background: var(--c-gold); color: #fff; border-radius: var(--sc-r-pill); font-size: 10px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.srp-tier.is-featured { border-color: rgba(201,138,46,.5); }

.srp-atc-total { font-weight: 700; }

/* ---- Calendrier semis / récolte ---- */
.srp-calendar__scroll { overflow-x: auto; scrollbar-width: thin; }
.srp-calendar__grid { min-width: 540px; }
.srp-calendar__head, .srp-calendar__row { display: grid; grid-template-columns: 88px repeat(12, 1fr); align-items: center; gap: var(--sc-space-1); }
.srp-calendar__head { margin-bottom: var(--s-2); }
.srp-calendar__rowlabel { font-size: 12px; font-weight: 800; color: var(--c-ink); }
.srp-calendar__month { text-align: center; font-size: 12px; font-weight: 700; color: var(--c-ink-soft); padding: var(--sc-space-1) 0; border-radius: var(--sc-r-xs); }
.srp-calendar__month.is-now { background: var(--c-green); color: #fff; }
.srp-calendar__row { margin-bottom: var(--sc-space-2); }
.srp-calendar__cell { height: 24px; border-radius: var(--sc-r-xs); background: var(--c-line-soft); }
.srp-calendar__cell.is-semis.is-on { background: var(--c-green); }
.srp-calendar__cell.is-recolte.is-on { background: var(--c-gold); }
.srp-calendar__legend { display: flex; flex-wrap: wrap; gap: var(--s-5); margin: var(--s-4) 0 0; padding: 0; list-style: none; font-size: 14px; color: var(--c-ink-soft); }
.srp-calendar__legend li { display: flex; align-items: center; gap: var(--sc-space-2); }
.srp-calendar__dot { width: 14px; height: 14px; border-radius: 4px; }
.srp-calendar__dot.is-semis { background: var(--c-green); }
.srp-calendar__dot.is-recolte { background: var(--c-gold); }

/* ---- Guide de culture (#guide) ---- */
.srp-guide { margin-top: var(--s-7); overflow: hidden; background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-lg); box-shadow: var(--shadow-sm); scroll-margin-top: 72px; }
.srp-guide__head { padding: clamp(var(--s-5), 5vw, var(--s-7)); background: var(--c-green); color: #fff; }
.srp-guide__badge { display: inline-block; margin: 0 0 var(--s-3); padding: var(--sc-space-1) var(--sc-space-3); background: rgba(255,255,255,.18); border-radius: var(--sc-r-pill); font-size: 12px; font-weight: 700; }
.srp-guide__title { margin: 0 0 var(--s-2); font-family: var(--f-display); font-weight: 500; font-size: clamp(24px, 4vw, 32px); line-height: 1.05; color: #fff; }
.srp-guide__sub { margin: 0; max-width: 60ch; font-size: 16px; line-height: 1.55; opacity: .92; }
.srp-guide__levels { display: grid; grid-template-columns: 1fr; gap: var(--s-3); padding: clamp(var(--s-5), 4vw, var(--s-6)); }
.srp-guide__level { padding: var(--s-4); background: var(--c-canvas); border: 1px solid var(--c-line-soft); border-left: 3px solid var(--c-green); border-radius: var(--r-md); }
.srp-guide__level-tag { display: block; margin: 0 0 var(--sc-space-2); font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--c-green); }
.srp-guide__level p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--c-ink-soft); }
.srp-guide__phases { display: flex; flex-direction: column; gap: var(--s-3); padding: 0 clamp(var(--s-5), 4vw, var(--s-6)); }
.srp-guide__phase { overflow: hidden; background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-md); }
.srp-guide__phase summary, .srp-guide__qa summary { list-style: none; cursor: pointer; }
.srp-guide__phase summary::-webkit-details-marker, .srp-guide__qa summary::-webkit-details-marker { display: none; }
.srp-guide__phase summary { display: flex; align-items: center; gap: var(--s-3); padding: var(--s-4); }
.srp-guide__phase-num { display: grid; place-items: center; width: 28px; height: 28px; flex: 0 0 auto; background: var(--c-green-soft); color: var(--c-green); border-radius: 50%; font-size: 14px; font-weight: 800; }
.srp-guide__phase-title { flex: 1 1 auto; font-size: 16px; font-weight: 800; color: var(--c-ink); }
.srp-guide__phase-body { padding: 0 var(--s-4) var(--s-4) calc(var(--s-4) + var(--sc-space-7)); }
.srp-guide__actions { margin: 0 0 var(--s-3); padding-left: var(--sc-space-4); }
.srp-guide__actions li { margin-bottom: var(--sc-space-2); font-size: 14px; line-height: 1.5; color: var(--c-ink); }
.srp-guide__alert { margin: 0 0 var(--s-2); padding: var(--s-3) var(--s-4); border-radius: var(--r-sm); font-size: 14px; line-height: 1.5; }
.srp-guide__alert strong { display: block; margin-bottom: 2px; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.srp-guide__alert--warn { background: rgba(179,23,43,.07); border-left: 3px solid var(--c-red); color: var(--c-ink); }
.srp-guide__alert--warn strong { color: var(--c-red); }
.srp-guide__alert--ok { background: var(--c-green-soft); border-left: 3px solid var(--c-green); color: var(--c-ink); }
.srp-guide__alert--ok strong { color: var(--c-green); }
.srp-guide__sign { position: relative; width: 14px; height: 14px; flex: 0 0 auto; }
.srp-guide__sign::before, .srp-guide__sign::after { content: ""; position: absolute; background: var(--c-green); transition: transform .2s; }
.srp-guide__sign::before { top: 6px; left: 0; width: 14px; height: 2px; }
.srp-guide__sign::after { top: 0; left: 6px; width: 2px; height: 14px; }
.srp-guide__phase[open] .srp-guide__sign::after, .srp-guide__qa[open] .srp-guide__sign::after { transform: scaleY(0); }
.srp-guide__faq { padding: clamp(var(--s-5), 4vw, var(--s-6)); }
.srp-guide__faq-title { margin: 0 0 var(--s-4); font-family: var(--f-display); font-weight: 500; font-size: 24px; color: var(--c-ink); }
.srp-guide__faq-list { display: flex; flex-direction: column; gap: var(--s-2); }
.srp-guide__qa { background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-md); }
.srp-guide__qa summary { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); padding: var(--s-3) var(--s-4); font-size: 14px; font-weight: 700; color: var(--c-ink); }
.srp-guide__qa-a { padding: 0 var(--s-4) var(--s-4); font-size: 14px; line-height: 1.6; color: var(--c-ink-soft); }
.srp-guide__qa-a p { margin: 0 0 var(--s-2); }
.srp-guide__cta { display: grid; grid-template-columns: 1fr; gap: var(--s-3); }
.srp-guide__cta-card { display: flex; flex-direction: column; gap: 3px; padding: var(--s-5); border-radius: var(--r-md); text-decoration: none; background: var(--c-red); color: #fff; transition: transform .15s, box-shadow .15s; }
.srp-guide__cta-card--alt { background: var(--c-green-soft); color: var(--c-ink); border: 1px solid var(--c-line); }
.srp-guide__cta-card strong { font-size: 16px; }
.srp-guide__cta-card span { font-size: 14px; opacity: .92; }
.srp-guide__cta-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-sm); }

/* ---- Réassurance (2×2) ---- */
.srp-reassure__grid { display: grid; grid-template-columns: 1fr; gap: var(--s-3); }
.srp-reassure__item { display: flex; align-items: flex-start; gap: var(--s-3); padding: var(--s-4); background: var(--c-surface); border: 1px solid var(--c-line-soft); border-radius: var(--r-md); }
.srp-reassure__ic { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 auto; color: var(--c-green); background: var(--c-green-soft); border-radius: var(--sc-r-sm); }
.srp-reassure__ic svg { width: var(--sc-icon-lg); height: var(--sc-icon-lg); }
.srp-reassure__txt { display: flex; flex-direction: column; gap: 2px; }
.srp-reassure__txt strong { font-size: 14px; color: var(--c-ink); }
.srp-reassure__txt small { font-size: 14px; line-height: 1.45; color: var(--c-ink-soft); }

@media (min-width: 601px) {
	.srp-guide__levels { grid-template-columns: repeat(3, 1fr); }
	.srp-guide__cta { grid-template-columns: 1fr 1fr; }
	.srp-reassure__grid { grid-template-columns: repeat(2, 1fr); }
}

/* ============================================================
   REFONTE PRODUIT — couche éditoriale premium Sanrival
   Surcharges scoped .srp uniquement : fiche produit active.
   ============================================================ */

.srp {
	--srp-wide: min(1240px, calc(100vw - 32px));
	--srp-soft-shadow: 0 18px 52px rgba(83,66,34,.08);
	--srp-card-shadow: 0 10px 30px rgba(83,66,34,.055);
}

.srp .price,
.srp .amount,
.srp-card__price,
.srp-heroups__price,
.srp-tier__total { font-family: var(--f-display); }

.srp-hero {
	position: relative;
	width: var(--srp-wide);
	margin: clamp(var(--sc-space-4), 3vw, var(--sc-space-6)) auto clamp(var(--sc-space-4), 3vw, var(--sc-space-6));
	padding: clamp(var(--sc-space-4), 2vw, var(--sc-space-5));
	background:
		radial-gradient(circle at 10% 10%, rgba(227,196,123,.16), transparent 30%),
		linear-gradient(135deg, rgba(255,255,255,.94), rgba(250,246,237,.96));
	border: 1px solid rgba(83,66,34,.10);
	border-radius: var(--sc-r-lg);
	box-shadow: var(--srp-soft-shadow);
}

















.srp-title {
	max-width: 10ch;
	font-size: clamp(40px, 6.2vw, 64px);
	letter-spacing: -.025em;
	line-height: .86;
	color: var(--c-green);
}











.srp-pricing {
	margin: clamp(var(--sc-space-3), 1.5vw, var(--sc-space-4)) 0;
	padding: 0;
	background: transparent;
	border: 0;
}

.srp-pricing .price {
	font-size: clamp(40px, 6vw, 56px);
	line-height: .9;
	color: var(--c-red);
}





.srp-cart form.cart {
	display: grid;
	grid-template-columns: minmax(112px, auto) minmax(190px, 1fr);
	gap: var(--sc-space-3);
	align-items: stretch;
}







.srp-trust {
	width: var(--srp-wide);
	margin: 0 auto clamp(var(--sc-space-6), 4vw, var(--sc-space-7));
	padding: clamp(var(--sc-space-3), 1.2vw, var(--sc-space-4));
	background: rgba(255,255,255,.72);
	border: 1px solid rgba(83,66,34,.10);
	border-radius: var(--sc-r-lg);
	box-shadow: var(--srp-card-shadow);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.srp-trust__item {
	padding: var(--sc-space-4);
	background: transparent;
	border: 0;
	box-shadow: none;
	border-radius: var(--sc-r-md);
}

.srp-trust__item:hover {
	background: rgba(74,124,47,.055);
	box-shadow: none;
}

.srp-trust__item > svg {
	width: 42px;
	height: 42px;
	padding: var(--sc-space-3);
	background: rgba(74,124,47,.10);
}

.srp-section,
.srp-guide,
.srp-reco,
.srp-reassure {
	width: var(--srp-wide);
	margin-left: auto;
	margin-right: auto;
}

.srp-section {
	margin-top: clamp(var(--sc-space-5), 4vw, var(--sc-space-7));
	padding: clamp(var(--sc-space-5), 4vw, var(--sc-space-7));
	background: rgba(255,255,255,.68);
	border: 1px solid rgba(83,66,34,.09);
	border-radius: var(--sc-r-lg);
	box-shadow: var(--srp-card-shadow);
}

.srp-shead {
	margin-bottom: clamp(var(--sc-space-4), 2.5vw, var(--sc-space-6));
	text-align: center;
}

.srp-stitle {
	font-size: clamp(28px, 3vw, 40px);
	line-height: 1;
	color: var(--c-green);
}





















.srp-calendar {
	background:
		linear-gradient(180deg, rgba(255,255,255,.88), rgba(250,246,237,.70)),
		radial-gradient(circle at 100% 0, rgba(227,196,123,.20), transparent 32%);
}

.srp-calendar__scroll {
	padding: clamp(var(--sc-space-3), 1.8vw, var(--sc-space-4));
	background: rgba(255,255,255,.72);
	border-radius: var(--sc-r-md);
	border: 1px solid rgba(83,66,34,.08);
}

.srp-calendar__cell {
	height: 16px;
	background: rgba(83,66,34,.08);
	border-radius: var(--sc-r-pill);
}

.srp-calendar__cell.is-semis.is-on,
.srp-calendar__dot.is-semis { background: linear-gradient(90deg, #4a7c2f, #6aad3d); }

.srp-calendar__cell.is-recolte.is-on,
.srp-calendar__dot.is-recolte { background: linear-gradient(90deg, #c88924, #efb235); }

.srp-guide {
	margin-top: clamp(var(--sc-space-5), 4vw, var(--sc-space-7));
	border: 1px solid rgba(83,66,34,.09);
	border-radius: var(--sc-r-lg);
	background: rgba(255,255,255,.72);
	box-shadow: var(--srp-card-shadow);
}

.srp-guide__head {
	background:
		linear-gradient(135deg, rgba(26,69,48,.98), rgba(74,124,47,.94)),
		radial-gradient(circle at 90% 0, rgba(227,196,123,.28), transparent 38%);
}

.srp-guide__intro {
	padding: clamp(var(--sc-space-4), 3vw, var(--sc-space-6)) clamp(var(--sc-space-5), 4vw, var(--sc-space-7)) 0;
	max-width: 82ch;
	color: rgba(83,66,34,.82);
	font-size: 16px;
	line-height: 1.72;
}

.srp-guide__intro p { margin: 0 0 var(--sc-space-3); }

.srp-guide__levels {
	gap: clamp(var(--sc-space-3), 2vw, var(--sc-space-4));
}

.srp-guide__level,
.srp-guide__phase,
.srp-guide__qa {
	border-color: rgba(83,66,34,.09);
	box-shadow: 0 7px 18px rgba(83,66,34,.035);
}

.srp-guide__phase {
	background: rgba(255,255,255,.78);
}

.srp-rv {
	display: grid;
	gap: clamp(var(--sc-space-5), 3vw, var(--sc-space-6));
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

.srp-rv__head {
	text-align: center;
}

.srp-rv__title {
	margin-bottom: var(--sc-space-2);
	color: var(--c-green);
}

.srp-rv__intro {
	max-width: 62ch;
	margin: 0 auto;
	color: var(--c-ink-soft);
	font-size: 16px;
	line-height: 1.6;
}

.srp-rv__summary {
	display: grid;
	grid-template-columns: minmax(190px, .7fr) minmax(260px, 1fr) auto;
	gap: clamp(var(--sc-space-4), 3vw, var(--sc-space-6));
	align-items: center;
	padding: clamp(var(--sc-space-4), 2.5vw, var(--sc-space-5));
	background: rgba(255,255,255,.76);
	border: 1px solid rgba(83,66,34,.09);
	border-radius: var(--sc-r-lg);
}

.srp-rv__score {
	flex-direction: column;
	align-items: flex-start;
	gap: var(--sc-space-2);
}

.srp-rv__score small {
	color: var(--c-ink-soft);
	font-size: 12px;
}

.srp-rv__hist {
	display: grid;
	gap: var(--sc-space-2);
}

.srp-rv__bar {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr) 24px;
	gap: var(--sc-space-3);
	align-items: center;
	font-size: 12px;
	color: var(--c-ink-soft);
}

.srp-rv__bar i {
	height: 7px;
	overflow: hidden;
	background: rgba(83,66,34,.10);
	border-radius: var(--sc-r-pill);
}

.srp-rv__bar b {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--c-gold), #f0b43e);
	border-radius: inherit;
}

.srp-rv .commentlist {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.srp-rv #review_form_wrapper {
	margin-top: 0;
	padding: clamp(var(--sc-space-4), 3vw, var(--sc-space-6));
	background: rgba(255,255,255,.76);
	border: 1px solid rgba(83,66,34,.09);
	border-radius: var(--sc-r-lg);
}

.srp-reco {
	margin-top: clamp(var(--sc-space-5), 4vw, var(--sc-space-7));
}

.srp-reco__grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.srp-card {
	overflow: hidden;
	border-color: rgba(83,66,34,.09);
	border-radius: var(--sc-r-md);
	background: rgba(255,255,255,.78);
	box-shadow: var(--srp-card-shadow);
}

.srp-card__media img {
	aspect-ratio: 1.1 / .92;
	object-fit: cover;
}

.srp-card__body {
	min-height: 178px;
	display: flex;
}

.srp-card__foot {
	margin-top: auto;
}

.srp-reassure__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (min-width: 1021px) {
	.srp-hero {
		grid-template-columns: minmax(0, 1.04fr) minmax(430px, .96fr);
		gap: clamp(var(--sc-space-5), 4vw, var(--sc-space-7));
	}

	.srp-trust {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}
}

@media (max-width: 1020px) {
	.srp {
		--srp-wide: min(100% - 24px, 760px);
	}

	.srp-title {
		max-width: 12ch;
	}

	.srp-editorial,
	.srp-benefits__grid,
	.srp-reco__grid,
	.srp-reassure__grid {
		grid-template-columns: 1fr 1fr;
	}

	.srp-rv__summary,
	.srp-rv .commentlist {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.srp {
		--srp-wide: min(100% - 18px, 560px);
	}

	.srp-hero {
		padding: var(--sc-space-3);
		border-radius: var(--sc-r-lg);
	}

	

	

	

	

	.srp-title {
		max-width: none;
		font-size: clamp(40px, 15vw, 56px);
	}

	.srp-cart form.cart {
		grid-template-columns: 1fr;
	}

	.srp-cart form.cart .quantity {
		width: 100%;
	}

	.srp-facts,
	.srp-trust,
	.srp-editorial,
	.srp-benefits__grid,
	.srp-reco__grid,
	.srp-reassure__grid {
		grid-template-columns: 1fr;
	}

	.srp-section {
		padding: var(--sc-space-5) var(--sc-space-4);
		border-radius: var(--sc-r-md);
	}

	.srp-shead {
		text-align: left;
	}

	

	

	

	.srp-calendar__grid {
		min-width: 500px;
	}

	.srp-guide__intro {
		padding-left: var(--sc-space-4);
		padding-right: var(--sc-space-4);
	}
}

/* ============================================================
   FICHE PRODUIT 2026 — COUCHE DESIGN FINALE (polish premium)
   Un seul système : 3 rayons, 3 ombres, transitions uniques,
   sections OUVERTES rythmées par le blanc, cartes blanches
   réservées aux vrais objets (achat, fiche technique, guide,
   FAQ, avis, produits). Scopé .srp — remplace la couche V4.
   ============================================================ */

.srp {
	--v4-max: min(1180px, calc(100vw - 32px));

	/* Encre & accents — tokens officiels : rouge de marque #B3172B,
	   titres bruns #534222, verts #4A7C2F / #6AAD3D en accent uniquement. */
	--v4-ink: #534222;
	--v4-ink-soft: rgba(83, 66, 34, .66);
	--v4-ink-mute: rgba(83, 66, 34, .52);
	--v4-green: #4a7c2f;
	--v4-green-2: #4a7c2f;
	--v4-green-light: #6aad3d;
	--v4-green-soft: #eef3ea;
	--v4-red: #b3172b;
	--v4-red-dark: #97102a;
	--v4-gold: #c88924;

	/* Surfaces & filets */
	--v4-surface: #ffffff;
	--v4-cream: #faf6ee;
	--v4-line: rgba(83, 66, 34, .12);
	--v4-line-soft: rgba(83, 66, 34, .07);

	/* Rayons — 3 valeurs, partout */
	--v4-r-sm: var(--sc-r-sm);
	--v4-r-md: var(--sc-r-md);
	--v4-r-lg: var(--sc-r-lg);

	/* Ombres — 3 profondeurs douces */
	--v4-shadow-xs: 0 1px 2px rgba(83, 66, 34, .04), 0 6px 18px rgba(83, 66, 34, .05);
	--v4-shadow-sm: 0 2px 4px rgba(83, 66, 34, .04), 0 14px 34px rgba(83, 66, 34, .07);
	--v4-shadow-md: 0 4px 8px rgba(83, 66, 34, .05), 0 22px 48px rgba(83, 66, 34, .10);

	/* Mouvement unique */
	--v4-ease: .2s ease;

	background: none;
	padding-bottom: clamp(var(--sc-space-7), 7vw, var(--sc-space-10));
}

/* ------------------------------------------------------------
   LAYOUT — largeur commune + rythme vertical par le blanc
   ------------------------------------------------------------ */
.srp-v4-hero,
.srp-v4-card,
.srp-v4-split,
.srp-v4-overview,
.srp-v4-culture,
.srp-anchors,
.srp-section,
.srp-guide,
.srp-reco,
.srp-reassure {
	width: var(--v4-max);
	margin-left: auto;
	margin-right: auto;
}

.srp-v4-card,
.srp-v4-split,
.srp-section,
.srp-reco,
.srp-reassure {
	margin-top: clamp(var(--sc-space-7), 7vw, var(--sc-space-10));
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
}
.srp-section { border-top: 0; } /* neutralise le filet de la couche de base */

/*
 * Les contenus sont regroupés en deux chapitres visuels. On conserve de
 * grandes respirations entre les chapitres, mais on évite de redémarrer le
 * rythme vertical entre chaque sous-section.
 */
.srp-v4-overview,
.srp-v4-culture {
	display: grid;
	gap: clamp(var(--sc-space-6), 4.5vw, var(--sc-space-7));
	margin-top: clamp(var(--sc-space-7), 7vw, var(--sc-space-10));
	scroll-margin-top: 90px;
}
.srp-v4-overview > :is(.srp-v4-card, .srp-v4-split),
.srp-v4-culture > :is(.srp-v4-card, .srp-section, .srp-guide) {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	margin: 0;
}
.srp-v4-culture { gap: clamp(var(--sc-space-5), 3.5vw, var(--sc-space-7)); }
.srp-v4-culture + .srp-reassure { margin-top: clamp(var(--sc-space-6), 5vw, var(--sc-space-8)); }

/* En-têtes de section — une seule hiérarchie */
.srp-v4-eyebrow,
.srp-shead .srp-eyebrow {
	display: block;
	margin: 0 0 var(--sc-space-3);
	color: var(--v4-green-2);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}
.srp-v4-card h2,
.srp-v4-split h2,
.srp-section .srp-stitle,
.srp-reco .srp-stitle {
	margin: 0 0 var(--sc-space-4);
	color: var(--v4-ink);
	font-family: var(--f-display);
	font-size: clamp(24px, 2.8vw, 32px);
	font-weight: 500;
	letter-spacing: -.01em;
	line-height: 1.02;
}
.srp-shead { margin-bottom: clamp(var(--sc-space-5), 3vw, var(--sc-space-6)); }

/* ------------------------------------------------------------
   HERO — composition, respiration, hiérarchie
   ------------------------------------------------------------ */
.srp-v4-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.02fr) minmax(420px, .98fr);
	gap: clamp(var(--sc-space-6), 5vw, var(--sc-space-8));
	margin-top: clamp(var(--sc-space-5), 3.4vw, var(--sc-space-7));
	align-items: start;
}

.srp-v4-gallery {
	position: sticky;
	top: 22px;
	min-width: 0;
}
.srp-v4-gallery .woocommerce-product-gallery {
	position: relative;
	overflow: hidden;
	padding: 0;
	background: #f4eee1;
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-sm);
}
.srp-v4-gallery .woocommerce-product-gallery__trigger { display: none !important; }
.srp-v4-gallery .woocommerce-product-gallery__wrapper { margin: 0; }
.srp-v4-gallery .woocommerce-product-gallery__image,
.srp-v4-gallery .woocommerce-product-gallery__image > a { display: block; border-radius: inherit; }
.srp-v4-gallery .woocommerce-product-gallery__image img {
	width: 100%;
	aspect-ratio: 1 / .94;
	object-fit: cover;
	border-radius: inherit;
}

.srp-v4-gallery .flex-control-thumbs {
	display: flex;
	gap: var(--sc-space-3);
	position: absolute;
	left: 16px;
	right: 16px;
	bottom: 16px;
	z-index: 4;
	margin: 0;
	padding: 0;
	list-style: none;
}
.srp-v4-gallery .flex-control-thumbs li { width: 60px; flex: 0 0 60px; }
.srp-v4-gallery .flex-control-thumbs img {
	width: 60px;
	height: 60px;
	object-fit: cover;
	border: 2px solid rgba(255, 255, 255, .85);
	border-radius: var(--v4-r-sm);
	opacity: .8;
	background: #fff;
	box-shadow: 0 6px 16px rgba(20, 49, 31, .14);
	cursor: pointer;
	transition: opacity var(--v4-ease), transform var(--v4-ease);
}
.srp-v4-gallery .flex-control-thumbs img.flex-active,
.srp-v4-gallery .flex-control-thumbs img:hover { opacity: 1; border-color: #fff; transform: translateY(-1px); }

.srp-v4-badges {
	position: absolute;
	z-index: 5;
	top: 16px;
	left: 16px;
	right: 68px;
	display: flex;
	flex-wrap: wrap;
	gap: var(--sc-space-2);
	pointer-events: none;
}
.srp-v4-badge {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: var(--sc-space-2) var(--sc-space-3) var(--sc-space-2);
	border-radius: var(--sc-r-pill);
	background: rgba(255, 255, 255, .94);
	color: var(--v4-green);
	box-shadow: 0 6px 16px rgba(20, 49, 31, .14);
	backdrop-filter: blur(8px);
	font-size: 10.5px;
	font-weight: 800;
	letter-spacing: .06em;
	line-height: 1;
	text-transform: uppercase;
}
.srp-v4-badge.is-green { background: rgba(74, 124, 47, .93); color: #fff; }
.srp-v4-badge.is-gold { background: rgba(242, 202, 103, .96); color: #3f2b12; }
.srp-v4-badge.is-red { background: rgba(179, 23, 43, .93); color: #fff; }

/* ---- Colonne achat : groupes aérés, regard qui descend ---- */
.srp-v4-buy { min-width: 0; }

.srp-v4-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--sc-space-2);
	margin-bottom: var(--sc-space-5);
	font-size: 12px;
	color: var(--v4-ink-mute);
}
.srp-v4-breadcrumb a { color: inherit; text-decoration: none; transition: color var(--v4-ease); }
.srp-v4-breadcrumb a:hover { color: var(--v4-green-2); }

.srp-v4-kicker {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sc-space-2);
	margin: 0 0 var(--sc-space-3);
	color: var(--v4-green-2);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.srp-v4-kicker span { opacity: .45; }

.srp-v4-title {
	max-width: 12ch;
	margin: 0;
	color: var(--v4-ink);
	font-family: var(--f-display);
	font-size: clamp(48px, 5.8vw, 80px);
	font-weight: 500;
	letter-spacing: -.025em;
	line-height: .88;
}

.srp-v4-ref {
	margin: var(--sc-space-3) 0 0;
	color: var(--v4-ink-mute);
	font-size: 14px;
}
.srp-v4-latin { font-style: italic; font-weight: 600; color: var(--v4-ink-soft); }

.srp-v4-rating {
	display: inline-flex;
	align-items: center;
	gap: var(--sc-space-2);
	margin: var(--sc-space-4) 0 0;
	color: var(--v4-ink);
	text-decoration: none;
	font-size: 14px;
}
.srp-v4-rating span:last-child {
	color: var(--v4-ink-soft);
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color var(--v4-ease);
}
.srp-v4-rating:hover span:last-child { color: var(--v4-green-2); }

.srp-v4-intro {
	margin: var(--sc-space-5) 0 0;
	max-width: 52ch;
	padding-left: var(--sc-space-4);
	border-left: 3px solid rgba(74, 124, 47, .4);
	color: rgba(83, 66, 34, .84);
	font-size: 16px;
	line-height: 1.7;
}
.srp-v4-note {
	margin: var(--sc-space-3) 0 0;
	max-width: 52ch;
	color: var(--v4-ink-soft);
	font-size: 14px;
	line-height: 1.6;
}

/* Stats-preuves : mini-cartes blanches alignées sur les feature cards */
.srp-v4-buy .srp-stats {
	margin: var(--sc-space-5) 0 0;
	padding: 0;
	border: 0;
	gap: var(--sc-space-3);
}
.srp-v4-buy .srp-stat {
	padding: var(--sc-space-4) var(--sc-space-3);
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
}
/* Chiffres clés commerciaux : rouge de marque (comme le prix). */
.srp-v4-buy .srp-stat__value { color: var(--v4-red); }
.srp-v4-buy .srp-stat__label { color: var(--v4-ink-soft); }

/* Repères produit : de simples pictos → feature cards */
.srp-v4-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--sc-space-3);
	margin: var(--sc-space-3) 0 0;
	padding: 0;
	list-style: none;
}
.srp-v4-facts li {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	grid-template-rows: auto auto;
	column-gap: var(--sc-space-3);
	align-items: center;
	justify-items: start;
	padding: var(--sc-space-3) var(--sc-space-4);
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
	text-align: left;
}
.srp-v4-facts svg {
	grid-row: 1 / 3;
	width: 42px;
	height: 42px;
	padding: var(--sc-space-3);
	color: var(--v4-green-2);
	background: var(--v4-green-soft);
	border-radius: var(--v4-r-sm);
}
.srp-v4-facts span {
	color: var(--v4-ink-mute);
	font-size: 10.5px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}
.srp-v4-facts strong {
	color: var(--v4-ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
}

/* ------------------------------------------------------------
   BLOC ACHAT — l'objet le plus important de la page
   ------------------------------------------------------------ */
.srp-v4-purchase {
	margin-top: var(--sc-space-5);
	padding: clamp(var(--sc-space-5), 2.4vw, var(--sc-space-6));
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-md);
}

.srp-v4-price {
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: var(--sc-space-3);
	margin-bottom: var(--sc-space-4);
}
.srp-v4-price .price,
.srp-v4-price .amount {
	color: var(--v4-red);
	font-family: var(--f-display);
	font-size: clamp(40px, 4.6vw, 56px);
	line-height: .85;
}
.srp-v4-price .price { margin: 0; }
.srp-v4-price .price del { color: var(--v4-ink-mute); font-size: .45em; font-family: var(--f-text); }
.srp-v4-price .price ins { text-decoration: none; }
.srp-v4-price small { display: block; width: 100%; margin-top: 2px; color: var(--v4-ink-soft); font-size: 14px; }

/* Paliers (packs) — harmonisés avec le système */
.srp-v4-purchase .srp-tiers { margin: 0 0 var(--sc-space-4); }
.srp-v4-purchase .srp-tiers__title {
	margin: 0 0 var(--sc-space-3);
	color: var(--v4-ink-mute);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.srp-v4-purchase .srp-tier {
	padding: var(--sc-space-3) var(--sc-space-4);
	background: var(--v4-surface);
	border: 1.5px solid var(--v4-line);
	border-radius: var(--v4-r-sm);
	transition: border-color var(--v4-ease), background var(--v4-ease), box-shadow var(--v4-ease);
}
.srp-v4-purchase .srp-tier:hover { border-color: rgba(74, 124, 47, .45); }
.srp-v4-purchase .srp-tier.is-selected {
	border-color: var(--v4-green-2);
	background: color-mix(in srgb, var(--v4-green-soft) 55%, #fff);
	box-shadow: 0 6px 16px rgba(74, 124, 47, .10);
}
.srp-v4-purchase .srp-tier__total { font-size: 20px; color: var(--v4-red); }
.srp-v4-purchase .srp-tier__badge { background: var(--v4-gold); }

/* Rangée ATC */
.srp-v4-cartrow {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--sc-space-3);
	align-items: center;
}
.srp-v4-cartrow .srp-cart { margin: 0; }
.srp-v4-cartrow .srp-cart form.cart {
	display: grid;
	grid-template-columns: minmax(112px, auto) minmax(190px, 1fr);
	gap: var(--sc-space-3);
	align-items: stretch;
	margin: 0 !important; /* le thème force `margin: var(--sc-space-5) 0 0 !important` sur .single-product form.cart */
	padding: 0;
	border-top: 0; /* neutralise le séparateur du form.cart global du thème */
}
.srp-v4-cartrow .srp-cart form.cart:has(.srp-qty-hidden) { grid-template-columns: minmax(0, 1fr); }
.srp-v4-cartrow .quantity {
	height: 60px;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--v4-line);
	border-radius: var(--v4-r-sm);
}
.srp-v4-cartrow .quantity input.qty {
	height: 60px;
	min-width: 52px;
	font-size: 16px;
	font-weight: 800;
	color: var(--v4-ink);
}
.srp-v4-cartrow .quantity .qty-btn { height: 60px; transition: background var(--v4-ease); }
.srp-v4-cartrow .quantity .qty-btn:hover { background: var(--v4-green-soft); }

/* CTA — le point focal après le prix */
.srp-v4-cartrow form.cart button.single_add_to_cart_button {
	background: var(--v4-red) !important;
	border-color: var(--v4-red) !important;
	transition: background var(--v4-ease), transform var(--v4-ease), box-shadow var(--v4-ease);
}
.srp-v4-cartrow .single_add_to_cart_button::before {
	content: "";
	width: 20px;
	height: 20px;
	flex: 0 0 auto;
	background: currentColor;
	-webkit-mask: var(--sr-icon-cart-mask) center / contain no-repeat;
	mask: var(--sr-icon-cart-mask) center / contain no-repeat;
}
.srp-v4-cartrow .single_add_to_cart_button:hover {
	background: var(--v4-red-dark) !important;
	border-color: var(--v4-red-dark) !important;
	transform: translateY(-2px);
}
.srp-v4-cartrow .single_add_to_cart_button:active { transform: translateY(0); }
.srp-atc-total { font-weight: 500; opacity: .85; }

.srp-wishlist.srp-v4-heart {
	display: inline-grid !important;
	place-items: center;
	width: 62px;
	min-width: 62px;
	height: 62px;
	min-height: 62px;
	padding: 0 !important;
	border: 1px solid var(--v4-line) !important;
	border-radius: 50% !important;
	background: #fff !important;
	color: var(--v4-green) !important;
	font-size: 0 !important;
	transition: color var(--v4-ease), border-color var(--v4-ease), transform var(--v4-ease);
}
.srp-wishlist.srp-v4-heart:hover { color: var(--v4-red) !important; border-color: rgba(179, 23, 43, .4) !important; transform: translateY(-1px); }
/* Centrage absolu du cœur : le libellé masqué (font-size 0) crée sinon une
   seconde rangée de grille qui décale le SVG vers le haut. */
.srp-wishlist.srp-v4-heart { position: relative; }
.srp-wishlist.srp-v4-heart svg {
	position: absolute;
	top: 50%;
	left: 50%;
	width: var(--sc-icon-lg);
	height: var(--sc-icon-lg);
	transform: translate(-50%, -50%);
}

.srp-v4-stock {
	display: flex;
	align-items: center;
	gap: var(--sc-space-2);
	margin: var(--sc-space-4) 0 0;
	padding-top: var(--sc-space-4);
	border-top: 1px solid var(--v4-line-soft);
	color: var(--v4-green-2);
	font-size: 14px;
	font-weight: 700;
}
.srp-v4-stock.is-in::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--v4-green-2);
	box-shadow: 0 0 0 4px rgba(74, 124, 47, .14);
}
.srp-v4-stock.is-out { color: var(--v4-red); }

/* Réassurance hero — lisible, sans mini-boîtes */
.srp-v4-trust {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--sc-space-4) var(--sc-space-4);
	margin: var(--sc-space-5) 0 0;
	padding: var(--sc-space-4) 2px 0;
	border-top: 1px solid var(--v4-line-soft);
	list-style: none;
}
.srp-v4-trust li {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr);
	column-gap: var(--sc-space-3);
	align-items: center;
	color: var(--v4-ink-soft);
	font-size: 12px;
	line-height: 1.45;
}
.srp-v4-trust svg {
	width: var(--sc-icon-xl);
	height: var(--sc-icon-xl);
	padding: var(--sc-space-2);
	color: var(--v4-green-2);
	background: var(--v4-green-soft);
	border-radius: var(--sc-r-sm);
}
.srp-v4-trust strong { display: block; color: var(--v4-ink); font-size: 12px; font-weight: 700; }

/* Module « à associer » — panneau blanc discret */
.srp-v4-buy .srp-heroups {
	margin-top: var(--sc-space-5);
	padding: var(--sc-space-4) var(--sc-space-4) var(--sc-space-3);
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
}
.srp-v4-buy .srp-heroups__title {
	margin: 0 0 var(--sc-space-3);
	padding-bottom: var(--sc-space-3);
	border-bottom: 1px solid var(--v4-line-soft);
	color: var(--v4-ink);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}
.srp-v4-buy .srp-heroups__item { border-radius: var(--v4-r-sm); transition: background var(--v4-ease); }
.srp-v4-buy .srp-heroups__item:hover { background: var(--v4-cream); box-shadow: none; }
.srp-v4-buy .srp-heroups__media { border-radius: var(--sc-r-sm); }

/* ------------------------------------------------------------
   ANCRES STICKY — segmentées, sobres
   ------------------------------------------------------------ */
.srp-anchors {
	position: sticky;
	top: 12px;
	z-index: 30;
	margin-top: clamp(var(--sc-space-6), 5vw, var(--sc-space-8));
	padding: var(--sc-space-2);
	background: rgba(255, 255, 255, .92);
	backdrop-filter: blur(12px);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--sc-r-pill);
	box-shadow: var(--v4-shadow-sm);
}
.srp-anchors a {
	min-height: 46px;
	padding: 0 var(--sc-space-4);
	font-size: 12px;
	color: var(--v4-ink-soft);
	transition: color var(--v4-ease), background-color var(--v4-ease);
}
.srp-anchors a:hover { color: var(--v4-green); background: var(--v4-green-soft); }
/* Actif discret : fond vert plat, sans halo — le composant ne doit pas
   attirer plus l'œil que le contenu. */
.srp-anchors a.is-active {
	color: #fff;
	background: var(--v4-green-2);
	box-shadow: none;
	transform: none;
}

/* ------------------------------------------------------------
   ATOUTS — section ouverte, cartes blanches
   ------------------------------------------------------------ */
.srp-v4-atouts { text-align: center; }
.srp-v4-atouts h2 { margin-bottom: clamp(var(--sc-space-5), 3vw, var(--sc-space-6)); }
.srp-v4-atouts__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--sc-space-4);
}
.srp-v4-atouts article {
	padding: var(--sc-space-5) var(--sc-space-5);
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
	text-align: left;
}
.srp-v4-atouts article > span {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	margin-bottom: var(--sc-space-4);
	background: var(--v4-green-soft);
	border-radius: var(--v4-r-sm);
	color: var(--v4-green-2);
}
.srp-v4-atouts svg { width: var(--sc-icon-lg); height: var(--sc-icon-lg); }
.srp-v4-atouts h3 {
	margin: 0 0 var(--sc-space-2);
	color: var(--v4-ink);
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .04em;
	line-height: 1.3;
	text-transform: uppercase;
}
.srp-v4-atouts p { margin: 0; color: var(--v4-ink-soft); font-size: 14px; line-height: 1.62; }

/* ------------------------------------------------------------
   DESCRIPTION + À RETENIR — éditorial ouvert, carte technique
   ------------------------------------------------------------ */
.srp-v4-split {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(320px, .85fr);
	gap: clamp(var(--sc-space-6), 4vw, var(--sc-space-8));
	align-items: start;
}
.srp-v4-split .srp-v4-card {
	width: auto;
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	box-shadow: none;
}

/* Prose éditoriale — largeur de ligne, rythme, emphases */
.srp-v4-prose {
	max-width: 64ch;
	color: rgba(83, 66, 34, .85);
	font-size: 16px;
	line-height: 1.78;
}
.srp-v4-prose :is(p, ul, ol) { margin: 0 0 var(--sc-space-4); }
.srp-v4-prose > p:first-of-type { font-size: 18px; line-height: 1.72; color: rgba(83, 66, 34, .92); }
.srp-v4-prose h2 {
	margin: var(--sc-space-6) 0 var(--sc-space-3);
	color: var(--v4-ink);
	font-family: var(--f-display);
	font-size: clamp(24px, 2.3vw, 28px);
	font-weight: 500;
	letter-spacing: -.01em;
	line-height: 1.05;
}
.srp-v4-prose h2:first-child { margin-top: 0; }
.srp-v4-prose :is(h3, h4) {
	margin: var(--sc-space-5) 0 var(--sc-space-2);
	color: var(--v4-ink);
	font-family: var(--f-text);
	font-size: 16px;
	font-weight: 800;
}
.srp-v4-prose strong { color: var(--v4-ink); font-weight: 700; }
.srp-v4-prose a { color: var(--v4-green-2); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; transition: color var(--v4-ease); }
.srp-v4-prose a:hover { color: var(--v4-red); }
.srp-v4-prose :is(ul, ol) { padding-left: 1.15em; }
.srp-v4-prose li { margin-bottom: var(--sc-space-2); }
.srp-v4-prose li::marker { color: var(--v4-green-2); }
.srp-v4-prose blockquote {
	margin: var(--sc-space-5) 0;
	padding: var(--sc-space-4) var(--sc-space-4);
	background: var(--v4-green-soft);
	border-left: 3px solid var(--v4-green-2);
	border-radius: 0 var(--v4-r-sm) var(--v4-r-sm) 0;
	color: var(--v4-ink);
	font-size: 16px;
}
.srp-v4-prose blockquote p:last-child { margin-bottom: 0; }

/* Suite éditoriale : accessible au bon moment, sans retirer un mot du document. */
.srp-v4-story__more {
	margin-top: var(--sc-space-5);
	border-top: 1px solid var(--v4-line);
	border-bottom: 1px solid var(--v4-line);
}
.srp-v4-story__more > summary,
.srp-rv__formdetails > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--sc-space-4);
	padding: var(--sc-space-4) 2px;
	color: var(--v4-green);
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	list-style: none;
}
.srp-v4-story__more > summary::-webkit-details-marker,
.srp-rv__formdetails > summary::-webkit-details-marker { display: none; }
.srp-v4-story__more > summary > span:last-child,
.srp-rv__formdetails > summary > span:last-child {
	position: relative;
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	border-radius: 50%;
	background: var(--v4-green-soft);
}
.srp-v4-story__more > summary > span:last-child::before,
.srp-v4-story__more > summary > span:last-child::after,
.srp-rv__formdetails > summary > span:last-child::before,
.srp-rv__formdetails > summary > span:last-child::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 9px;
	height: 1.5px;
	background: currentColor;
	transform: translate(-50%, -50%);
	transition: transform var(--v4-ease);
}
.srp-v4-story__more > summary > span:last-child::after,
.srp-rv__formdetails > summary > span:last-child::after { transform: translate(-50%, -50%) rotate(90deg); }
.srp-v4-story__more[open] > summary > span:last-child::after,
.srp-rv__formdetails[open] > summary > span:last-child::after { transform: translate(-50%, -50%) rotate(0); }
.srp-v4-story__more[open] > summary { margin-bottom: 2px; }
.srp-v4-story__more > .srp-v4-prose { padding: 0 2px var(--sc-space-2); }
.srp-v4-story__more .srp-v4-prose h3:first-child { margin-top: var(--sc-space-2); }

.srp-v4-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sc-space-3);
	margin-top: var(--sc-space-5);
}
.srp-v4-links a {
	display: inline-flex;
	gap: var(--sc-space-2);
	align-items: center;
	padding: var(--sc-space-2) var(--sc-space-4);
	background: var(--v4-green-soft);
	border-radius: var(--sc-r-pill);
	color: var(--v4-green-2);
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition: background var(--v4-ease), transform var(--v4-ease);
}
.srp-v4-links a:hover { background: #e2ecdb; transform: translateY(-1px); }
.srp-v4-links a span { transition: transform var(--v4-ease); }
.srp-v4-links a:hover span { transform: translateX(2px); }

/* Carte « À retenir » — objet premium, sticky */
.srp-v4-split .srp-v4-practical {
	position: sticky;
	top: 84px;
	padding: clamp(var(--sc-space-5), 2.4vw, var(--sc-space-6));
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-sm);
}
.srp-v4-practical h2 { margin-bottom: var(--sc-space-2); }
.srp-v4-practical dl { margin: var(--sc-space-3) 0 0; }
.srp-v4-practical dl > div {
	display: grid;
	grid-template-columns: minmax(120px, .9fr) minmax(0, 1fr);
	gap: var(--sc-space-4);
	align-items: center;
	padding: var(--sc-space-3) 0;
	border-bottom: 1px solid var(--v4-line-soft);
}
.srp-v4-practical dl > div:first-child { padding-top: 0; }
.srp-v4-practical dl > div:last-child { border-bottom: 0; padding-bottom: 0; }
.srp-v4-practical dt {
	display: flex;
	align-items: center;
	gap: var(--sc-space-2);
	color: var(--v4-ink-mute);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}
.srp-v4-practical dt svg { width: var(--sc-icon-sm); height: var(--sc-icon-sm); flex: 0 0 auto; color: var(--v4-green-2); }
.srp-v4-practical dd {
	margin: 0;
	color: var(--v4-ink);
	font-size: 14px;
	font-weight: 700;
	text-align: right;
}
.srp-v4-practical dd em { font-style: italic; font-weight: 600; }

/* ------------------------------------------------------------
   CALENDRIER — section ouverte, grille en carte blanche
   ------------------------------------------------------------ */
.srp-v4-calendar header { text-align: center; margin-bottom: clamp(var(--sc-space-5), 3vw, var(--sc-space-6)); }
.srp-v4-calgrid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: var(--sc-space-2);
	margin-top: var(--sc-space-1);
	padding: clamp(var(--sc-space-4), 2.4vw, var(--sc-space-5));
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-xs);
}
.srp-v4-month { display: grid; gap: var(--sc-space-2); text-align: center; }
.srp-v4-month span { color: var(--v4-ink-mute); font-size: 12px; font-weight: 800; }
.srp-v4-month i,
.srp-v4-legend span {
	display: block;
	height: 8px;
	border-radius: var(--sc-r-pill);
	background: rgba(83, 66, 34, .08);
}
.srp-v4-month i.is-semis,
.srp-v4-legend span.is-semis { background: linear-gradient(90deg, #4a7c2f, #6aad3d); }
.srp-v4-month i.is-recolte,
.srp-v4-legend span.is-recolte { background: linear-gradient(90deg, #b3172b, #e69925); }
.srp-v4-legend {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sc-space-5);
	margin: var(--sc-space-4) 0 0;
	padding: 0 var(--sc-space-1);
	list-style: none;
	color: var(--v4-ink-soft);
	font-size: 14px;
	font-weight: 600;
}
.srp-v4-legend li { display: flex; align-items: center; gap: var(--sc-space-2); }
.srp-v4-legend span { width: 18px; height: 9px; }

/* ------------------------------------------------------------
   GUIDE DE CULTURE — l'objet signature de la fiche
   ------------------------------------------------------------ */
.srp-gteaser__card {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(var(--sc-space-5), 3.4vw, var(--sc-space-7));
	padding: clamp(var(--sc-space-5), 3.4vw, var(--sc-space-7));
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-md);
	position: relative;
	overflow: hidden;
}
.srp-gteaser__card::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 4px;
	background: linear-gradient(90deg, var(--v4-green-2), #6aad3d);
}
.srp-gteaser__sub { margin: 0 0 var(--sc-space-5); max-width: 46ch; color: var(--v4-ink-soft); font-size: 16px; line-height: 1.65; }
.srp-gteaser__details {
	margin: 0 0 var(--sc-space-5);
	border-top: 1px solid var(--v4-line);
	border-bottom: 1px solid var(--v4-line);
}
.srp-gteaser__details > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--sc-space-4);
	padding: var(--sc-space-4) 2px;
	color: var(--v4-green);
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	list-style: none;
}
.srp-gteaser__details > summary::-webkit-details-marker { display: none; }
.srp-gteaser__details > summary > span:last-child {
	position: relative;
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	border-radius: 50%;
	background: var(--v4-green-soft);
}
.srp-gteaser__details > summary > span:last-child::before,
.srp-gteaser__details > summary > span:last-child::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 9px;
	height: 1.5px;
	background: currentColor;
	transform: translate(-50%, -50%);
	transition: transform var(--v4-ease);
}
.srp-gteaser__details > summary > span:last-child::after { transform: translate(-50%, -50%) rotate(90deg); }
.srp-gteaser__details[open] > summary > span:last-child::after { transform: translate(-50%, -50%) rotate(0); }
.srp-gteaser__detailsbody {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr);
	gap: clamp(var(--sc-space-5), 3vw, var(--sc-space-7));
	padding: var(--sc-space-2) 2px var(--sc-space-5);
}
.srp-gteaser__phases {
	display: grid;
	gap: var(--sc-space-4);
	margin: 0;
	padding: 0;
	list-style: none;
}
.srp-gteaser__phases li { position: relative; display: flex; align-items: center; gap: var(--sc-space-3); }
.srp-gteaser__phases li + li::before {
	content: "";
	position: absolute;
	left: 17px;
	top: -14px;
	width: 2px;
	height: 14px;
	background: var(--v4-line-soft);
}
.srp-gteaser__num {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	background: var(--v4-green-soft);
	border-radius: 50%;
	color: var(--v4-green-2);
	font-family: var(--f-display);
	font-size: 16px;
}
.srp-gteaser__phase { display: flex; flex-direction: column; min-width: 0; }
.srp-gteaser__phase strong { color: var(--v4-ink); font-size: 14px; font-weight: 700; line-height: 1.3; }
.srp-gteaser__phase small { color: var(--v4-ink-mute); font-size: 12px; margin-top: 1px; }
.srp-gteaser__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sc-space-4); }
.srp-gteaser__actions .sr-button {
	transition: background var(--v4-ease), transform var(--v4-ease), box-shadow var(--v4-ease);
}
.srp-gteaser__actions .sr-button:hover { transform: translateY(-2px); }
.srp-gteaser__qr {
	display: inline-flex;
	align-items: center;
	gap: var(--sc-space-2);
	max-width: 300px;
	color: var(--v4-ink-soft);
	font-size: 12px;
	line-height: 1.5;
}
.srp-gteaser__qr svg { width: var(--sc-icon-md); height: var(--sc-icon-md); flex: 0 0 auto; color: var(--v4-green-2); }
.srp-gteaser__specs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--sc-space-2);
	margin: 0;
	align-content: start;
}
.srp-gteaser__specs > div {
	padding: var(--sc-space-3) var(--sc-space-4);
	background: var(--v4-cream);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-sm);
}
.srp-gteaser__specs dt {
	color: var(--v4-ink-mute);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}
.srp-gteaser__specs dd { margin: 3px 0 0; color: var(--v4-ink); font-size: 14px; font-weight: 700; }

/* Guide inline legacy (repli) : mêmes surfaces */
.srp-guide { border-color: var(--v4-line-soft); border-radius: var(--v4-r-lg); box-shadow: var(--v4-shadow-sm); }

/* ------------------------------------------------------------
   FAQ — respirante, cartes fines
   ------------------------------------------------------------ */
.srp-faqsec .srp-faq__list { gap: var(--sc-space-3); }
.srp-faqsec .srp-faq__item {
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
	transition: border-color var(--v4-ease), box-shadow var(--v4-ease);
}
.srp-faqsec .srp-faq__item:hover { border-color: rgba(74, 124, 47, .3); }
.srp-faqsec .srp-faq__item[open] { border-color: rgba(74, 124, 47, .35); box-shadow: var(--v4-shadow-sm); }
.srp-faqsec .srp-faq__item summary {
	padding: var(--sc-space-4) var(--sc-space-5);
	font-size: 16px;
	color: var(--v4-ink);
	transition: color var(--v4-ease);
}
.srp-faqsec .srp-faq__item summary:hover { color: var(--v4-green); }
.srp-faqsec .srp-faq__sign { color: var(--v4-green-2); }
.srp-faqsec .srp-faq__a {
	padding: 0 var(--sc-space-5) var(--sc-space-5);
	max-width: 72ch;
	color: var(--v4-ink-soft);
	font-size: 14px;
	line-height: 1.72;
}

/* ------------------------------------------------------------
   AVIS — section ouverte, objets en cartes
   ------------------------------------------------------------ */
.srp .srp-rv {
	padding: 0;
	background: none;
	border: 0;
	box-shadow: none;
}
.srp-rv__head { max-width: 620px; margin: 0 auto clamp(var(--sc-space-5), 3vw, var(--sc-space-6)); text-align: center; }
.srp-rv__head .srp-eyebrow { margin-bottom: var(--sc-space-3); }
.srp-rv__title {
	margin: 0 0 var(--sc-space-3);
	color: var(--v4-ink);
}
.srp-rv__intro { margin: 0; color: var(--v4-ink-soft); font-size: 14px; line-height: 1.6; }

.srp .srp-rv__summary {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(var(--sc-space-5), 3vw, var(--sc-space-7));
	margin: 0 0 var(--sc-space-4);
	padding: clamp(var(--sc-space-5), 2.6vw, var(--sc-space-6));
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-sm);
}
.srp-rv__score { display: flex; flex-direction: column; align-items: center; gap: var(--sc-space-2); text-align: center; }
.srp-rv__score strong { font-family: var(--f-display); font-weight: 500; font-size: 56px; line-height: .85; color: var(--v4-red); }
.srp-rv__score small { color: var(--v4-ink-mute); font-size: 12px; }
.srp-rv__hist { display: grid; gap: var(--sc-space-2); min-width: 0; }
.srp-rv__bar { display: grid; grid-template-columns: 26px minmax(0, 1fr) 22px; align-items: center; gap: var(--sc-space-3); }
.srp-rv__bar span { color: var(--v4-ink-mute); font-size: 12px; font-weight: 700; }
.srp-rv__bar .sr-review-rating-icon { width: 11px; height: 11px; margin-left: 2px; color: var(--v4-gold); vertical-align: -1px; }
.srp-rv__bar i { display: block; height: 7px; background: rgba(83, 66, 34, .08); border-radius: var(--sc-r-pill); overflow: hidden; }
.srp-rv__bar b { display: block; height: 100%; background: linear-gradient(90deg, var(--v4-gold), #f0b43e); border-radius: inherit; }
.srp-rv__bar em { color: var(--v4-ink-mute); font-size: 12px; font-style: normal; text-align: right; }
.srp-rv__count { color: var(--v4-ink-soft); font-size: 12px; font-weight: 700; }

.srp .srp-rv .comment_container {
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
	padding: var(--sc-space-5);
	transition: box-shadow var(--v4-ease), transform var(--v4-ease);
}
.srp .srp-rv .comment_container:hover { box-shadow: var(--v4-shadow-sm); transform: translateY(-2px); }

.srp .srp-rv #review_form_wrapper {
	margin-top: 0;
	padding: clamp(var(--sc-space-5), 2.6vw, var(--sc-space-6));
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-xs);
}
.srp-rv__formdetails {
	margin-top: var(--sc-space-4);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	background: var(--v4-surface);
	box-shadow: var(--v4-shadow-xs);
}
.srp-rv__formdetails > summary { padding: var(--sc-space-4) var(--sc-space-5); }
.srp-rv__formdetails[open] > summary { border-bottom: 1px solid var(--v4-line-soft); }
.srp-rv__formdetails #review_form_wrapper {
	border: 0 !important;
	border-radius: 0 0 var(--v4-r-md) var(--v4-r-md) !important;
	box-shadow: none !important;
}
.srp .srp-rv #respond input[type="text"],
.srp .srp-rv #respond input[type="email"],
.srp .srp-rv #respond textarea,
.srp .srp-rv #respond select {
	transition: border-color var(--v4-ease), box-shadow var(--v4-ease);
}
.srp .srp-rv #respond #submit,
.srp .srp-rv #respond input[type="submit"] { }
.srp-rv__pagination { margin-top: var(--sc-space-4); }

/* ------------------------------------------------------------
   RÉASSURANCE — minimale, sans boîtes
   ------------------------------------------------------------ */
.srp-reassure__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sc-space-5) var(--sc-space-5); }
.srp .srp-reassure__item {
	padding: 0;
	background: none;
	border: 0;
	border-radius: 0;
}
.srp-reassure__ic { width: 44px; height: 44px; border-radius: var(--v4-r-sm); }
.srp-reassure__txt strong { font-size: 14px; color: var(--v4-ink); }
.srp-reassure__txt small { font-size: 12px; color: var(--v4-ink-soft); }

/* ------------------------------------------------------------
   CROSS-SELL — cartes produit premium
   ------------------------------------------------------------ */
.srp-reco .srp-shead { text-align: center; }
.srp-reco .srp-shead .srp-eyebrow { margin-left: auto; margin-right: auto; }
.srp-reco__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sc-space-4); }
.srp .srp-card {
	background: var(--v4-surface);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
	transition: transform var(--v4-ease), box-shadow var(--v4-ease), border-color var(--v4-ease);
}
.srp .srp-card:hover { transform: translateY(-4px); box-shadow: var(--v4-shadow-md); border-color: rgba(74, 124, 47, .28); }
.srp-card__media { background: #f4eee1; }
.srp-card__media img { transition: transform .35s ease; }
.srp-card:hover .srp-card__media img { transform: scale(1.035); }
.srp-card__body { padding: var(--sc-space-4); gap: var(--sc-space-2); }
.srp-card__cat {
	align-self: flex-start;
	padding: 3px var(--sc-space-3);
	background: var(--v4-green-soft);
	border-radius: var(--sc-r-pill);
	color: var(--v4-green-2);
	font-size: 10px;
}
.srp-card__title { font-size: 14px; color: var(--v4-ink); transition: color var(--v4-ease); }
.srp-card__title:hover { color: var(--v4-green-2); }
.srp-card__price,
.srp-card__price .price,
.srp-card__price .amount { font-family: var(--f-display); font-size: 20px; color: var(--v4-red); }

/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */
@media (max-width: 1100px) {
	.srp-v4-hero { grid-template-columns: 1fr; }
	.srp-v4-gallery { position: relative; top: auto; }
	.srp-v4-title { max-width: none; }
	.srp-v4-split { grid-template-columns: 1fr; }
	.srp-v4-split .srp-v4-practical { position: relative; top: auto; }
	.srp-reco__grid,
	.srp-v4-atouts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.srp-reassure__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.srp-gteaser__card { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
	.srp { --v4-max: min(100% - 20px, 560px); }
	.srp-v4-hero { gap: var(--sc-space-5); margin-top: var(--sc-space-4); }
	.srp-v4-card,
	.srp-v4-split,
	.srp-section,
	.srp-reco,
	.srp-reassure { margin-top: var(--sc-space-7); }
	.srp-v4-overview,
	.srp-v4-culture { margin-top: var(--sc-space-7); gap: var(--sc-space-6); }

	.srp-v4-gallery .woocommerce-product-gallery { border-radius: var(--v4-r-md); }
	.srp-v4-gallery .woocommerce-product-gallery__image img { aspect-ratio: 1 / .86; }
	.srp-v4-badges { top: 12px; left: 12px; right: 12px; gap: var(--sc-space-2); }
	.srp-v4-badge { min-height: 25px; padding: var(--sc-space-2) var(--sc-space-2) var(--sc-space-1); font-size: 9.5px; }
	.srp-v4-gallery .flex-control-thumbs { position: static; margin-top: var(--sc-space-3); padding: 0 2px; }
	.srp-v4-gallery .flex-control-thumbs img { box-shadow: none; border-color: var(--v4-line-soft); }

	.srp-v4-title { font-size: clamp(40px, 13vw, 56px); }
	.srp-v4-facts,
	.srp-v4-trust,
	.srp-gteaser__card,
	.srp-reco__grid,
	.srp-reassure__grid { grid-template-columns: 1fr; }
	.srp-v4-atouts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sc-space-2); }
	.srp-v4-atouts article { padding: var(--sc-space-4) var(--sc-space-4); }
	.srp-v4-atouts article > span { width: 40px; height: 40px; margin-bottom: var(--sc-space-3); }
	.srp-v4-atouts svg { width: var(--sc-icon-md); height: var(--sc-icon-md); }
	.srp-v4-atouts h3 { font-size: 12px; letter-spacing: .03em; }
	.srp-v4-atouts p { font-size: 12px; line-height: 1.52; }
	.srp-v4-buy .srp-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sc-space-2); }

	.srp-v4-purchase { padding: var(--sc-space-4) var(--sc-space-4); border-radius: var(--v4-r-md); }
	.srp-v4-cartrow,
	.srp-v4-cartrow .srp-cart form.cart { grid-template-columns: 1fr; }
	.srp-wishlist.srp-v4-heart { width: 100%; border-radius: var(--v4-r-sm) !important; }

	.srp-v4-calgrid { overflow-x: auto; grid-template-columns: repeat(12, 42px); padding: var(--sc-space-4); }
	.srp-v4-practical dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sc-space-2); }
	.srp-v4-practical dl > div {
		grid-template-columns: 1fr;
		align-content: start;
		gap: var(--sc-space-1);
		padding: var(--sc-space-3);
		border: 1px solid var(--v4-line-soft);
		border-radius: var(--v4-r-sm);
		background: var(--v4-cream);
	}
	.srp-v4-practical dl > div:first-child,
	.srp-v4-practical dl > div:last-child { padding: var(--sc-space-3); border: 1px solid var(--v4-line-soft); }
	.srp-v4-practical dt { align-items: flex-start; font-size: 9.5px; line-height: 1.35; }
	.srp-v4-practical dd { text-align: left; padding-left: var(--sc-space-5); font-size: 14px; }

	.srp-gteaser__card { padding: var(--sc-space-5) var(--sc-space-4); border-radius: var(--v4-r-md); }
	.srp-gteaser__detailsbody { grid-template-columns: 1fr; gap: var(--sc-space-5); }
	.srp-gteaser__actions { align-items: stretch; flex-direction: column; }
	.srp-gteaser__actions .sr-button { width: 100%; justify-content: center; }
	.srp-gteaser__qr { max-width: none; }

	.srp-faqsec .srp-faq__item summary { padding: var(--sc-space-4) var(--sc-space-4); font-size: 14px; }
	.srp-faqsec .srp-faq__a { padding: 0 var(--sc-space-4) var(--sc-space-4); }

	.srp .srp-rv__summary { grid-template-columns: 1fr; justify-items: center; text-align: center; gap: var(--sc-space-4); }
	.srp-rv__hist { width: 100%; max-width: 380px; }

	.srp-anchors { top: 8px; }
	.srp-anchors a { min-height: 42px; padding: 0 var(--sc-space-3); font-size: 12px; }
}
