/*
 * Renov'2CV - fiche produit (refonte du 15/10/2026)
 * -----------------------------------------------------------------------------
 * Complète catalogue.css, dont elle reprend les jetons (--rn-*), et se charge
 * après elle sur les seules fiches produits. La portée triple (.rn-fiche x3)
 * passe devant la portée doublée du catalogue sans !important.
 *
 * Direction : la photographie d'abord, une colonne d'achat lisible comme une
 * addition, des blocs éditoriaux aérés. L'orange reste réservé au tarif
 * réellement appliqué et au bouton d'achat. Fonds blancs et gris chauds
 * légers, textes marine, arrondis 12 px (commandes) et 16 px (cartes), filets
 * fins, aucune ombre portée lourde.
 *
 * Rien ici ne touche à la logique : les montants, les tarifs par profil, la
 * consigne, les options et l'ajout au panier restent produits par les
 * extensions existantes. Cette feuille ne fait que les disposer.
 */

/* ---------------------------------------------------------------------------
 * Jetons propres à la fiche
 * ------------------------------------------------------------------------ */
.rn-fiche,
.rn-achat-fixe {
	--rn-chaud:      #F7F5F2;   /* fond gris chaud léger : galerie, encarts */
	--rn-chaud-2:    #EFEBE5;   /* filet et survol sur fond chaud */
	--rn-r-carte:    16px;
	--rn-r-cmd:      12px;
	--rn-galerie:    54fr;   /* 58fr avant le 19/10/2026 : image un peu moins large */
	--rn-colonne:    46fr;
}

/* ---------------------------------------------------------------------------
 * Ossature
 *   Mobile    : en-tête, galerie, accroche, achat.
 *   Ordinateur: galerie à gauche (≈ 58 %), le reste à droite.
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-haut {
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas:
		"entete"
		"media"
		"intro"
		"achat";
	gap: var(--rn-5);
	margin-top: var(--rn-3);
}

/* Une seule famille sur toute la fiche : certains paragraphes héritaient de
   la police de texte du thème. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-haut,
.rn-fiche.rn-fiche.rn-fiche .rn-sections,
.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe { font-family: var(--rn-texte); }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-haut :is(p, span, li, td, th, label, small) { font-family: inherit; }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-entete { grid-area: entete; min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: var(--rn-3) var(--rn-4); }

/* Titre sur toute la largeur ; référence et compatibilité partagent la ligne
   suivante quand la place le permet. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-entete > .rn-fiche-titre { flex: 1 1 100%; }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-entete > .rn-fiche-compat.is-vide { flex: 1 1 100%; }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-media  { grid-area: media; min-width: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-intro  { grid-area: intro; min-width: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-achat  { grid-area: achat; min-width: 0; display: flex; flex-direction: column; gap: var(--rn-4); }

@media (min-width: 1024px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-haut {
		grid-template-columns: minmax(0, var(--rn-galerie)) minmax(0, var(--rn-colonne));
		grid-template-rows: auto auto 1fr;
		grid-template-areas:
			"media entete"
			"media intro"
			"media achat";
		column-gap: clamp(32px, 4vw, 64px);
		row-gap: 0;
		align-items: start;
		margin-top: var(--rn-5);
	}

	/* Pas d'écart de grille : une accroche absente ne laisse aucun vide. */
	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-entete,
	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-intro { margin-bottom: var(--rn-5); }

	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-media { align-self: start; }


}

/* Entre 1024 et 1279 px, la colonne d'achat a besoin d'un peu plus de place. */
@media (min-width: 1024px) and (max-width: 1279px) {
	.rn-fiche { --rn-galerie: 50fr; --rn-colonne: 50fr; }
}

/* La galerie accompagne le défilement (16/10/2026).
   Le thème pose overflow-x: hidden sur html et body : body devient alors un
   conteneur de défilement qui ne défile jamais, et position: sticky reste sans
   effet. overflow-x: clip coupe aussi le débordement horizontal, sans créer de
   conteneur de défilement. Limité aux fiches produits ; les navigateurs qui ne
   connaissent pas clip gardent le comportement du thème (galerie non fixe). */
@supports (overflow: clip) {
	html:has(> body.single-product),
	body.single-product { overflow-x: clip; overflow-y: visible; }
}

/* L'image principale est bornée à la hauteur de l'écran (voir Galerie) : la
   galerie tient dans la fenêtre dès 560 px de haut. En dessous, elle défile. */
@media (min-width: 1024px) and (min-height: 560px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-media { position: sticky; top: var(--rn-6); }
	body.admin-bar .rn-fiche.rn-fiche.rn-fiche .rn-fiche-media { top: calc(32px + var(--rn-6)); }
	body.admin-bar .rn-fiche.rn-fiche.rn-fiche .rn-galerie-lien { max-height: min(620px, calc(100vh - 282px)); }
}

/* ---------------------------------------------------------------------------
 * Fil d'Ariane : discret, sur une ligne
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-fil {
	display: flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	font-size: 13px;
	color: var(--rn-doux);
	white-space: nowrap;
	overflow: hidden;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fil > [aria-current] { overflow: hidden; text-overflow: ellipsis; color: var(--rn-encre-2); }

/* ---------------------------------------------------------------------------
 * Galerie
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-galerie { gap: var(--rn-3); }

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-scene {
	background: var(--rn-chaud);
	border: 0;
	border-radius: var(--rn-r-carte);
}

/* Le cadre est presque carré : les photos du catalogue sont carrées et les
   pièces techniques doivent rester grandes. La pièce entière, jamais
   recadrée ni déformée. */
.rn-fiche.rn-fiche.rn-fiche .rn-galerie-lien { aspect-ratio: 1 / 1; max-height: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-img {
	padding: clamp(12px, 3%, 32px);
	object-fit: contain;
	object-position: center;
	mix-blend-mode: multiply; /* les fonds blancs des photos se fondent dans le gris chaud */
}

/* Ordinateur : grande image, mais jamais plus haute que l'écran ; la galerie
   et ses vignettes restent visibles ensemble pendant le défilement. */
@media (min-width: 1024px) {
	/* 19/10/2026 : 620 px et 250 px de marge (720 et 210 avant), l'image
	   gagne de l'air sans perdre en lisibilité. */
	.rn-fiche.rn-fiche.rn-fiche .rn-galerie-lien { max-height: min(620px, calc(100vh - 250px)); width: 100%; }
	.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vues { grid-auto-columns: 96px; }
}

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-lien:focus-visible {
	outline: 3px solid var(--rn-encre);
	outline-offset: -3px;
	border-radius: var(--rn-r-carte);
}

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-loupe {
	right: var(--rn-4);
	bottom: var(--rn-4);
	background: rgba(255, 255, 255, .92);
	border: 0;
	box-shadow: var(--rn-ombre-1);
}

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-compteur {
	left: var(--rn-4);
	bottom: var(--rn-4);
	padding: 4px 10px;
	background: rgba(255, 255, 255, .92);
	color: var(--rn-encre-2);
	font-size: 12px;
	font-weight: 600;
}

/* Vignettes : une rangée de cases carrées, assez grandes pour être lues. */
.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vues {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 4 * var(--rn-3)) / 5);
	gap: var(--rn-3);
	padding: 2px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vues::-webkit-scrollbar { display: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vue {
	width: auto;
	height: auto;
	aspect-ratio: 1 / 1;
	padding: 6px;
	background: var(--rn-chaud);
	border: 0;
	border-radius: var(--rn-r-cmd);
	box-shadow: inset 0 0 0 1px transparent;
	cursor: pointer;
	scroll-snap-align: start;
	transition: box-shadow var(--rn-transition), background-color var(--rn-transition);
}

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vue img { mix-blend-mode: multiply; }
.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vue:hover { background: var(--rn-chaud-2); }

/* Vue retenue : un anneau marine net, sans décaler la vignette. */
.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vue.is-on { box-shadow: inset 0 0 0 2px var(--rn-encre); }

.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vue:focus-visible {
	outline: 3px solid var(--rn-corail-500);
	outline-offset: 2px;
}

/* ---------------------------------------------------------------------------
 * En-tête : titre, référence, compatibilité
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-titre {
	margin: 0;
	font-size: clamp(22px, 1.2rem + 1vw, 32px);
	font-weight: 700;
	line-height: 1.18;
	letter-spacing: -.4px;
	color: var(--rn-encre);
	overflow-wrap: anywhere;
	text-wrap: balance;
}

.rn-fiche.rn-fiche.rn-fiche .rn-refs { display: flex; flex-wrap: wrap; gap: var(--rn-2); margin: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-ref,
.rn-fiche.rn-fiche.rn-fiche .rn-ref-oem {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	margin: 0;
	padding: 5px 12px;
	background: var(--rn-chaud);
	border: 0;
	border-radius: var(--rn-r-pill);
	font-family: var(--rn-chiffres);
	font-size: 14px;
	line-height: 1.3;
	color: var(--rn-encre);
}

.rn-fiche.rn-fiche.rn-fiche .rn-ref-oem { background: transparent; box-shadow: inset 0 0 0 1px var(--rn-trait); color: var(--rn-encre-2); }

.rn-fiche.rn-fiche.rn-fiche .rn-ref-lib { color: var(--rn-doux); font-size: 13px; font-weight: 500; }

.rn-fiche.rn-fiche.rn-fiche .rn-ref-val {
	font-weight: 700;
	letter-spacing: .04em;
	font-variant-numeric: tabular-nums;
	user-select: all;
}

/* Compatibilité : un libellé, des pastilles cliquables, sans cadre autour. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-compat {
	align-self: center;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	border-radius: 0;
	font-size: 14px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-compat-lib {
	margin-right: 2px;
	color: var(--rn-doux);
	font-family: var(--rn-texte);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-compat-lib::after { content: " :"; }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-compat .rn-compat-item {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 12px;
	background: var(--rn-fond);
	border: 1px solid var(--rn-trait-fort);
	border-radius: var(--rn-r-pill);
	color: var(--rn-encre);
	font-size: 13.5px;
	font-weight: 600;
	text-decoration: none;
}

.rn-fiche.rn-fiche.rn-fiche a.rn-compat-item:hover { border-color: var(--rn-encre); color: var(--rn-encre); background: var(--rn-chaud); }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-compat.is-vide {
	flex-wrap: nowrap;
	align-items: flex-start;
	padding: 10px 14px;
	background: var(--rn-ambre-50);
	border-radius: var(--rn-r-cmd);
	color: var(--rn-ambre);
	font-size: 13.5px;
	line-height: 1.45;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-compat.is-vide svg { flex: 0 0 auto; margin-top: 2px; }

/* Accroche : deux à quatre lignes, le reste dans la description. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-accroche {
	max-height: 4.8em; /* trois lignes, puis « Lire la suite » */
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--rn-encre-2);
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-accroche p { margin: 0; font-size: inherit; line-height: inherit; }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-accroche p + p { margin-top: var(--rn-2); }
.rn-fiche.rn-fiche.rn-fiche .rn-accroche-plus { margin-top: var(--rn-1); }

/* ---------------------------------------------------------------------------
 * Colonne d'achat
 * ------------------------------------------------------------------------ */

/* Disponibilité : une pastille posée au-dessus de la carte. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-dispo { margin: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-dispo .rn-stock {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 5px 12px 5px 10px;
	border-radius: var(--rn-r-pill);
	background: var(--rn-chaud);
	font-size: 14px;
	font-weight: 600;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-dispo .rn-stock.is-ok { background: var(--rn-vert-50); }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-dispo .rn-stock.is-attente { background: var(--rn-ambre-50); }

/* La carte d'achat : tarifs, consigne, options, quantité, panier. */
.rn-fiche.rn-fiche.rn-fiche .rn-achat-carte {
	display: flex;
	flex-direction: column;
	padding: var(--rn-6);
	background: var(--rn-fond);
	border: 1px solid var(--rn-trait);
	border-radius: var(--rn-r-carte);
}

/* Tarifs.
   Le tarif réellement facturé passe en tête, en grand et en orange, quel que
   soit son rang dans la liste du moteur. Les autres tarifs autorisés au profil
   deviennent des lignes de repère : libellé à gauche, montant à droite, gris,
   sur fond chaud. On ne change ni le nombre de lignes ni leur contenu. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-prix { margin: 0; padding: 0; border: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-prices { display: flex; flex-direction: column; gap: 4px; }

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line.rp-active {
	order: -1;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 6px;
	margin-bottom: var(--rn-2);
	color: var(--rn-corail-600);
	font-size: clamp(30px, 1.6rem + .8vw, 38px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -.8px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line.rp-active .rp-label {
	flex: 0 0 100%;
	margin-bottom: 4px;
	color: var(--rn-encre-2);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.3;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line.rp-active .tax_label {
	color: var(--rn-doux);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line:not(.rp-active):not(.rp-economie) {
	align-self: stretch;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: var(--rn-3);
	margin: 0;
	padding: 7px 12px;
	background: var(--rn-chaud);
	border-radius: 8px;
	color: var(--rn-doux);
	font-size: 13.5px;
	font-weight: 500;
	letter-spacing: 0;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line:not(.rp-active) .rp-label { min-width: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line:not(.rp-active) .rp-amount { white-space: nowrap; font-weight: 600; }

/* Pour un visiteur, la ligne Club reste une offre : même ligne, teinte corail
   pâle, texte corail sombre (contraste 5,1). */
.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line.rp-club:not(.rp-active) {
	background: var(--rn-corail-50);
	color: var(--rn-corail-texte, #C0442F);
	font-weight: 600;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line.rp-club:not(.rp-active) .rp-amount,
.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line.rp-club:not(.rp-active) .woocommerce-Price-amount,
.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line.rp-club:not(.rp-active) .woocommerce-Price-currencySymbol { color: var(--rn-corail-texte, #C0442F); }

/* Deux mentions d'économie disaient la même chose : celle du moteur, dans la
   liste des tarifs, s'efface quand la fiche donne la version détaillée. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-prix:has(.rn-economie) .rp-economie { display: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-economie,
.rn-fiche.rn-fiche.rn-fiche .rn-economie { margin: var(--rn-1) 0 0; font-size: 13.5px; }

/* Consigne : la suite de l'addition, dans la même carte. */
.rn-fiche.rn-fiche.rn-fiche .rn-consigne {
	margin: var(--rn-4) 0 0;
	padding: var(--rn-3) 0 0;
	background: none;
	border: 0;
	border-top: 1px dashed var(--rn-trait-fort);
	border-radius: 0;
}

.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: var(--rn-3);
	margin: 0;
	padding: 6px 0;
	border: 0;
	font-size: 14.5px;
	line-height: 1.4;
}

.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne + .rn-consigne-ligne { border-top: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne > span { color: var(--rn-encre-2); }
.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne strong { color: var(--rn-encre); font-weight: 700; white-space: nowrap; }

.rn-fiche.rn-fiche.rn-fiche .rn-consigne-signe {
	display: inline-block;
	width: 1.1em;
	color: var(--rn-doux);
	font-weight: 700;
}

.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne--total {
	margin-top: var(--rn-2);
	padding: 12px 14px;
	background: var(--rn-chaud);
	border-radius: var(--rn-r-cmd);
}

.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne--total > span { color: var(--rn-encre); font-weight: 700; }
.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne--total strong { font-size: 19px; letter-spacing: -.3px; }

.rn-fiche.rn-fiche.rn-fiche .rn-consigne .tax_label {
	margin-left: 3px;
	color: var(--rn-doux);
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
}

.rn-fiche.rn-fiche.rn-fiche .rn-consigne-note {
	margin: var(--rn-2) 0 0;
	color: var(--rn-doux);
	font-size: 12.5px;
	line-height: 1.5;
}

/* Formulaire : options, quantité, bouton. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form {
	margin: var(--rn-5) 0 0;
	padding: 0;
	border: 0;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form:empty { display: none; }

/* Un produit sans prix ni consigne ouvre directement sur le formulaire. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-prix:empty + .rn-fiche-form { margin-top: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form form.cart { gap: var(--rn-3); }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form table.variations { margin-bottom: var(--rn-4); }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form table.variations th.label,
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form table.variations td.label { padding: 0 0 4px; }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form table.variations label { color: var(--rn-encre); font-size: 14px; font-weight: 700; }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form table.variations select { min-height: 48px; border-radius: var(--rn-r-cmd); }

.rn-fiche.rn-fiche.rn-fiche .rn-option {
	min-height: 44px;
	padding: 8px 16px;
	border-radius: var(--rn-r-cmd);
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .reset_variations { font-size: 13px; color: var(--rn-doux); }

.rn-fiche.rn-fiche.rn-fiche .rn-var-aide { margin: 0; font-size: 13.5px; color: var(--rn-encre-2); }

/* Quantité imposée (article vendu à l'unité) : WooCommerce ne rend qu'un
   champ caché ; le cadre vide ne s'affiche pas. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity:not(:has(input:not([type="hidden"]))) { display: none; }

/* Quantité : un seul contrôle arrondi, trois zones. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity {
	height: 56px;
	border: 1px solid var(--rn-trait-fort);
	border-radius: var(--rn-r-cmd);
	overflow: hidden;
	background: var(--rn-fond);
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity :is(.minus, .plus, .qty-minus, .qty-plus, button) {
	width: 44px;
	height: 100%;
	background: var(--rn-fond);
	border: 0;
	border-radius: 0;
	color: var(--rn-encre);
	font-size: 20px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity :is(.minus, .plus, .qty-minus, .qty-plus):hover { background: var(--rn-chaud); }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity input.qty,
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity:has(.minus) input.qty {
	width: 52px;
	height: 100%;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	font-size: 17px;
	-moz-appearance: textfield;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity input.qty::-webkit-outer-spin-button,
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form .quantity:focus-within { border-color: var(--rn-encre); box-shadow: 0 0 0 1px var(--rn-encre); }

/* Bouton d'achat : la seule surface orange de la colonne. */
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form button.single_add_to_cart_button {
	flex: 1 1 200px;
	min-height: 56px;
	padding: 0 var(--rn-6);
	border-radius: var(--rn-r-cmd);
	font-size: 17px;
	box-shadow: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form button.single_add_to_cart_button:hover { background: var(--rn-corail-500); }

.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form button.single_add_to_cart_button:focus-visible {
	outline: 3px solid var(--rn-encre);
	outline-offset: 3px;
}

/* Variation : seule sa description éventuelle reste sous les options. */
.rn-fiche.rn-fiche.rn-fiche .woocommerce-variation-description:empty { display: none; }
.rn-fiche.rn-fiche.rn-fiche .woocommerce-variation-description { margin: 0 0 var(--rn-3); font-size: 14px; color: var(--rn-encre-2); }

/* Lots : la composition se lit comme une liste dans la carte. */
.rn-fiche.rn-fiche.rn-fiche .woosb-wrap { width: 100%; margin: 0 0 var(--rn-3); }
.rn-fiche.rn-fiche.rn-fiche .woosb-products { border: 0; border-top: 1px solid var(--rn-trait); }
.rn-fiche.rn-fiche.rn-fiche .woosb-products .woosb-product { padding: 10px 0; border-bottom: 1px solid var(--rn-trait); }
.rn-fiche.rn-fiche.rn-fiche .woosb-products .woosb-product .woosb-thumb { width: 52px; }
.rn-fiche.rn-fiche.rn-fiche .woosb-products .woosb-product .woosb-thumb img { border-radius: 8px; background: var(--rn-chaud); }
.rn-fiche.rn-fiche.rn-fiche .woosb-products .woosb-product .woosb-title { font-size: 14px; color: var(--rn-encre); }
.rn-fiche.rn-fiche.rn-fiche .woosb-products .woosb-product .woosb-price { font-size: 13px; color: var(--rn-doux); }
.rn-fiche.rn-fiche.rn-fiche .woosb-summary,
.rn-fiche.rn-fiche.rn-fiche .woosb-total,
.rn-fiche.rn-fiche.rn-fiche .wooco-summary { font-size: 14px; color: var(--rn-encre-2); }

/* Produit composite : les zones vides de l'extension ne réservent plus
   d'espace (résumé vide, alerte masquée). Le formulaire n'est pas touché. */
.rn-fiche.rn-fiche.rn-fiche .wooco_wrap { display: block; width: 100%; }
.rn-fiche.rn-fiche.rn-fiche .wooco_wrap > .wooco_components { margin-bottom: 0; }
.rn-fiche.rn-fiche.rn-fiche .wooco_wrap > .wooco_summary { margin: 0; }
.rn-fiche.rn-fiche.rn-fiche .wooco_wrap > .wooco_summary > :empty { display: none; }
.rn-fiche.rn-fiche.rn-fiche table.alg-product-input-fields-table:not(:has(tr)) { display: none; }
.rn-fiche.rn-fiche.rn-fiche .wooco_wrap > .wooco_alert { margin: 0; }
.rn-fiche.rn-fiche.rn-fiche .wooco_wrap > .wooco_alert:not([style*="none"]) { margin: 0 0 var(--rn-3); }
.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form form.cart { margin-bottom: 0; padding-bottom: 0; }

/* Composants d'un produit composite (hors consigne, déjà masquée). */
.rn-fiche.rn-fiche.rn-fiche .wooco_component { margin-bottom: var(--rn-3); }
.rn-fiche.rn-fiche.rn-fiche .wooco_component_name { color: var(--rn-encre); font-size: 14px; font-weight: 700; }
.rn-fiche.rn-fiche.rn-fiche .wooco_component_desc { color: var(--rn-doux); font-size: 13px; }

/* Alerte de retour en stock : le formulaire de l'extension, aligné sur la carte. */
.rn-fiche.rn-fiche.rn-fiche .cwginstock-subscribe-form { margin: 0; }
.rn-fiche.rn-fiche.rn-fiche .cwginstock-subscribe-form .panel { margin: 0; border-radius: var(--rn-r-cmd); border-color: var(--rn-trait); box-shadow: none; }

/* Actions secondaires : « Poser une question » en bouton discret, favoris et
   comparateur en liens. */
.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--rn-2) var(--rn-4);
	margin: 0;
	padding: 0;
	font-size: 14px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 .yith-wcwl-add-to-wishlist-button,
.rn-fiche.rn-fiche.rn-fiche .rn-lien-conseil {
	order: -1;
	display: inline-flex;
	align-items: center;
	gap: var(--rn-2);
	min-height: 44px;
	padding: 0 18px;
	background: var(--rn-fond);
	border: 1px solid var(--rn-trait-fort);
	border-radius: var(--rn-r-cmd);
	color: var(--rn-encre);
	font-weight: 600;
	text-decoration: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 .yith-wcwl-add-to-wishlist-button { order: 0; margin: 0; font-size: 14px; cursor: pointer; }
.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 .yith-wcwl-add-to-wishlist-button svg,
.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 .yith-wcwl-add-to-wishlist-button img { width: 18px; height: 18px; }
.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 .yith-wcwl-add-to-wishlist-button:hover,
.rn-fiche.rn-fiche.rn-fiche .rn-lien-conseil:hover { border-color: var(--rn-encre); background: var(--rn-chaud); color: var(--rn-encre); }
.rn-fiche.rn-fiche.rn-fiche .rn-lien-conseil:focus-visible { outline: 3px solid var(--rn-encre); outline-offset: 2px; }
.rn-fiche.rn-fiche.rn-fiche .rn-lien-conseil svg { color: var(--rn-doux); }

.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 .rn-action-2:not(.rn-lien-conseil) { margin: 0; padding: 0; border: 0; background: none; color: var(--rn-doux); }

/* ---------------------------------------------------------------------------
 * Encart « Besoin d'aide ? »
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-aide {
	margin: 0;
	padding: var(--rn-4) var(--rn-5);
	background: var(--rn-chaud);
	border-radius: var(--rn-r-carte);
}

.rn-fiche.rn-fiche.rn-fiche .rn-aide-titre {
	margin: 0 0 2px;
	font-family: var(--rn-titre);
	font-size: 15px;
	font-weight: 700;
	color: var(--rn-encre);
}

.rn-fiche.rn-fiche.rn-fiche .rn-aide-liste { margin: 0; padding: 0; list-style: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-aide-ligne {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 2px 8px;
	margin: 0;
	list-style: none;
	font-size: 14.5px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-aide-ligne + .rn-aide-ligne { border-top: 1px solid var(--rn-chaud-2); }
.rn-fiche.rn-fiche.rn-fiche .rn-aide-ico { flex: 0 0 auto; color: var(--rn-doux); }
.rn-fiche.rn-fiche.rn-fiche .rn-aide-service { color: var(--rn-encre-2); font-weight: 500; }

/* Le numéro est la cible : 44 px de haut, souligné, contraste marine. */
.rn-fiche.rn-fiche.rn-fiche .rn-aide-tel {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin-left: auto;
	color: var(--rn-encre);
	font-family: var(--rn-chiffres);
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	text-decoration: underline;
	text-decoration-color: var(--rn-trait-fort);
	text-underline-offset: 4px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-aide-tel:hover { color: var(--rn-corail-600); text-decoration-color: currentColor; }
.rn-fiche.rn-fiche.rn-fiche .rn-aide-tel:focus-visible { outline: 3px solid var(--rn-encre); outline-offset: 2px; border-radius: 4px; }

/* ---------------------------------------------------------------------------
 * Contenu sous la fiche
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-sections {
	display: flex;
	flex-direction: column;
	gap: var(--rn-6);
	margin: clamp(40px, 6vw, 80px) 0 0;
}

.rn-fiche.rn-fiche.rn-fiche .rn-section,
.rn-fiche.rn-fiche.rn-fiche .rn-section + .rn-section {
	margin: 0;
	padding: clamp(24px, 3vw, 48px);
	background: var(--rn-fond);
	border: 1px solid var(--rn-trait);
	border-radius: var(--rn-r-carte);
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-titre {
	margin: 0 0 var(--rn-5);
	font-size: clamp(21px, 1.1rem + .6vw, 26px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -.3px;
	color: var(--rn-encre);
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-sur {
	margin: 0 0 var(--rn-3);
	color: var(--rn-corail-texte, #C0442F);
	font-family: var(--rn-titre);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-corps { font-size: 16px; line-height: 1.7; color: var(--rn-encre-2); }

/* Prose : largeur de lecture, titres hiérarchisés, listes et tableaux nets. */
.rn-fiche.rn-fiche.rn-fiche .rn-section-corps > .rn-prose,
.rn-fiche.rn-fiche.rn-fiche .rn-description-texte { max-width: none; min-width: 0; }

/* catalogue.css bornait la prose à 76ch et 14,5 px. */
.rn-fiche.rn-fiche.rn-fiche .rn-prose { max-width: 80ch; font-size: 16px; line-height: 1.7; }

/* Deux colonnes sur toute la largeur de la carte (16/10/2026) : les parties
   H2 forment des blocs qui se répartissent sans être coupés ; un texte libre
   long se répartit de même. Pas de vide à droite, page deux fois moins haute. */
@media (min-width: 1024px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs,
	.rn-fiche.rn-fiche.rn-fiche .rn-prose--longue {
		max-width: none;
		columns: 2;
		column-gap: clamp(40px, 5vw, 80px);
		column-rule: 1px solid var(--rn-trait);
	}

	.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs .rn-bloc {
		break-inside: avoid;
		padding-bottom: var(--rn-6);
	}

	.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs .rn-bloc > h2:first-child { margin-top: 0; }
	.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs .rn-bloc > :last-child { margin-bottom: 0; }
	.rn-fiche.rn-fiche.rn-fiche .rn-prose--longue > * { break-inside: avoid; }

	/* Dans une demi-colonne, une liste reste sur une colonne. */
	.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs ul:has(> li:nth-child(8)) { columns: 1; }
}

/* Le thème fixe une taille sur chaque paragraphe : on la rend à la prose. */
.rn-fiche.rn-fiche.rn-fiche .rn-prose :is(p, li, td, th, blockquote) { font-size: inherit; }

/* Sommaire en ligne d'ancres au-dessus du texte (16/10/2026). Une seule
   colonne de lecture : plus de colonne latérale ni de grand vide. */
.rn-fiche.rn-fiche.rn-fiche .rn-sommaire {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--rn-2) var(--rn-3);
	margin: 0 0 var(--rn-6);
	padding: 0 0 var(--rn-5);
	border-bottom: 1px solid var(--rn-trait);
}

.rn-fiche.rn-fiche.rn-fiche .rn-sommaire-titre {
	margin: 0;
	color: var(--rn-doux);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rn-fiche.rn-fiche.rn-fiche .rn-sommaire ol { display: flex; flex-wrap: wrap; gap: var(--rn-2); margin: 0; padding: 0; list-style: none; }
.rn-fiche.rn-fiche.rn-fiche .rn-sommaire li { margin: 0; list-style: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-sommaire a {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 0 14px;
	background: var(--rn-chaud);
	border-radius: var(--rn-r-pill);
	color: var(--rn-encre);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color var(--rn-transition);
}

.rn-fiche.rn-fiche.rn-fiche .rn-sommaire a:hover { background: var(--rn-chaud-2); color: var(--rn-encre); }
.rn-fiche.rn-fiche.rn-fiche .rn-sommaire a:focus-visible { outline: 3px solid var(--rn-encre); outline-offset: 2px; }

/* Mobile : les ancres défilent sur une ligne au lieu de s'empiler. */
@media (max-width: 639px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-sommaire ol { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: calc(var(--rn-4) * -1); padding-inline: var(--rn-4); }
	.rn-fiche.rn-fiche.rn-fiche .rn-sommaire ol::-webkit-scrollbar { display: none; }
	.rn-fiche.rn-fiche.rn-fiche .rn-sommaire a { white-space: nowrap; }
}

.rn-fiche.rn-fiche.rn-fiche .rn-prose h2[id] { scroll-margin-top: var(--rn-6); }

.rn-fiche.rn-fiche.rn-fiche .rn-prose > :first-child { margin-top: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-prose > :last-child { margin-bottom: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-prose p { margin: 0 0 var(--rn-4); }

/* Liens dans la description : reconnaissables sans dépendre de la couleur seule. */
.rn-fiche.rn-fiche.rn-fiche .rn-prose a:not(.rn-btn) {
	color: var(--rn-corail-600);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.rn-fiche.rn-fiche.rn-fiche .rn-prose a:not(.rn-btn):hover { color: var(--rn-corail-700); }
.rn-fiche.rn-fiche.rn-fiche .rn-prose a:not(.rn-btn):focus-visible { outline: 2px solid var(--rn-encre); outline-offset: 2px; border-radius: 2px; }

.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose h2 {
	margin: var(--rn-10) 0 var(--rn-3);
	font-size: clamp(20px, 1.05rem + .5vw, 24px);
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.3px;
	color: var(--rn-encre);
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose h3 {
	margin: var(--rn-6) 0 var(--rn-2);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--rn-encre);
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose ul {
	margin: 0 0 var(--rn-5);
	padding: 0;
	list-style: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose ul > li {
	position: relative;
	margin: 0;
	padding: 6px 0 6px 22px;
	list-style: none;
	border-bottom: 1px solid var(--rn-trait);
	break-inside: avoid;
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose ul > li::before {
	content: "";
	position: absolute;
	left: 4px;
	top: calc(6px + .85em - 3px);
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--rn-corail-500);
}

.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose ol { margin: 0 0 var(--rn-5) var(--rn-5); }
.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose ol > li { margin-bottom: var(--rn-2); list-style: decimal; }

/* Une longue liste de composants passe sur deux colonnes. */
@media (min-width: 768px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-section-corps .rn-prose ul:has(> li:nth-child(8)) { columns: 2; column-gap: var(--rn-8); }
}

.rn-fiche.rn-fiche.rn-fiche .rn-prose strong { color: var(--rn-encre); }

/* Encadré d'information (citation de l'éditeur WordPress) : délai, point de
   vigilance. Un fond chaud et un filet orange, sans italique. */
.rn-fiche.rn-fiche.rn-fiche .rn-prose blockquote {
	margin: 0 0 var(--rn-5);
	padding: var(--rn-4) var(--rn-5);
	background: var(--rn-chaud);
	border: 0;
	border-left: 4px solid var(--rn-corail-500);
	border-radius: 0 var(--rn-r-cmd) var(--rn-r-cmd) 0;
	color: var(--rn-encre);
	font-size: 15.5px;
	font-style: normal;
	line-height: 1.6;
	quotes: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prose blockquote::before,
.rn-fiche.rn-fiche.rn-fiche .rn-prose blockquote::after { content: none; display: none; }
.rn-fiche.rn-fiche.rn-fiche .rn-prose blockquote p { margin: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-prose blockquote p + p { margin-top: var(--rn-2); }

/* Tableaux : ceux du texte et le tableau technique, même dessin. */
.rn-fiche.rn-fiche.rn-fiche .rn-prose table,
.rn-fiche.rn-fiche.rn-fiche .rn-technique {
	width: 100%;
	max-width: none;
	margin: 0 0 var(--rn-5);
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--rn-trait);
	border-radius: var(--rn-r-cmd);
	overflow: hidden;
	font-size: 15px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prose table th,
.rn-fiche.rn-fiche.rn-fiche .rn-prose table td,
.rn-fiche.rn-fiche.rn-fiche .rn-technique th,
.rn-fiche.rn-fiche.rn-fiche .rn-technique td {
	padding: 12px 16px;
	border: 0;
	border-bottom: 1px solid var(--rn-trait);
	background: none;
	text-align: left;
	vertical-align: top;
	line-height: 1.5;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prose table tr:last-child > *,
.rn-fiche.rn-fiche.rn-fiche .rn-technique tr:last-child > * { border-bottom: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-prose table th,
.rn-fiche.rn-fiche.rn-fiche .rn-technique th {
	width: 38%;
	background: var(--rn-chaud);
	color: var(--rn-encre-2);
	font-weight: 600;
}

.rn-fiche.rn-fiche.rn-fiche .rn-prose table td,
.rn-fiche.rn-fiche.rn-fiche .rn-technique td { color: var(--rn-encre); font-weight: 500; }

.rn-fiche.rn-fiche.rn-fiche .rn-technique tr:nth-child(odd) th,
.rn-fiche.rn-fiche.rn-fiche .rn-technique tr:nth-child(odd) td { background: none; }
.rn-fiche.rn-fiche.rn-fiche .rn-technique th { background: var(--rn-chaud); }

.rn-fiche.rn-fiche.rn-fiche .rn-technique-titre {
	margin: var(--rn-8) 0 var(--rn-3);
	font-size: 17px;
	font-weight: 700;
	color: var(--rn-encre);
}

/* Les tableaux larges défilent dans leur cadre plutôt que la page. */
@media (max-width: 767px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-prose table { display: block; overflow-x: auto; }
	.rn-fiche.rn-fiche.rn-fiche .rn-prose table th,
	.rn-fiche.rn-fiche.rn-fiche .rn-technique th { width: 42%; }
}

/* Documents : planches techniques. */
.rn-fiche.rn-fiche.rn-fiche .rn-documents-intro { margin: calc(var(--rn-2) * -1) 0 var(--rn-4); font-size: 15px; }

.rn-fiche.rn-fiche.rn-fiche .rn-documents {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: var(--rn-3);
	margin: 0;
	padding: 0;
	list-style: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-documents li { margin: 0; list-style: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-document {
	display: flex;
	align-items: center;
	gap: var(--rn-3);
	min-height: 56px;
	padding: 10px 14px;
	background: var(--rn-chaud);
	border-radius: var(--rn-r-cmd);
	color: var(--rn-encre);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	transition: background-color var(--rn-transition);
}

.rn-fiche.rn-fiche.rn-fiche .rn-document:hover { background: var(--rn-chaud-2); color: var(--rn-encre); }
.rn-fiche.rn-fiche.rn-fiche .rn-document:focus-visible { outline: 3px solid var(--rn-encre); outline-offset: 2px; }
.rn-fiche.rn-fiche.rn-fiche .rn-document > svg { flex: 0 0 auto; color: var(--rn-corail-600); }
.rn-fiche.rn-fiche.rn-fiche .rn-document span { flex: 1 1 auto; min-width: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-document .rn-document-fleche { color: var(--rn-doux); }

/* ---------------------------------------------------------------------------
 * Questions fréquentes : titre à gauche, accordéon à droite
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq { background: var(--rn-chaud); border-color: transparent; }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-cote:empty { display: none; }
.rn-fiche.rn-fiche.rn-fiche .rn-faq-cote .rn-liens-docs { margin: 0 0 var(--rn-4); }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-cote .rn-lien-doc {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 40px;
	padding: 0 14px;
	background: var(--rn-fond);
	border-radius: var(--rn-r-pill);
	color: var(--rn-encre);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq-cote .rn-lien-doc:hover { color: var(--rn-corail-600); }

/* FAQ : le titre, le renvoi vers la page FAQ sur la même ligne à droite,
   puis les groupes (commande, paiement, général) côte à côte. */
@media (min-width: 1024px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-faq {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
		align-items: start;
		gap: var(--rn-5) clamp(24px, 3vw, 48px);
	}
	.rn-fiche.rn-fiche.rn-fiche .rn-faq-bloc .rn-faq-groupe { margin-top: 0; }
}
@media (min-width: 640px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq { position: relative; }
	.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-cote {
		position: absolute;
		top: clamp(24px, 3vw, 48px);
		right: clamp(24px, 3vw, 48px);
	}
	.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-cote .rn-liens-docs { margin: 0; }
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq { max-width: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-groupe {
	margin: var(--rn-6) 0 var(--rn-2);
	color: var(--rn-doux);
	font-family: var(--rn-titre);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq-groupe:first-child { margin-top: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-liste {
	border: 0;
	border-radius: var(--rn-r-cmd);
	background: var(--rn-fond);
	overflow: hidden;
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq-item { border-bottom: 1px solid var(--rn-trait); }
.rn-fiche.rn-fiche.rn-fiche .rn-faq-item:last-child { border-bottom: 0; }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--rn-4);
	min-height: 56px;
	margin: 0;
	padding: var(--rn-3) var(--rn-5);
	color: var(--rn-encre);
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.4;
	list-style: none;
	cursor: pointer;
	transition: background-color var(--rn-transition);
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq-q::-webkit-details-marker { display: none; }
.rn-fiche.rn-fiche.rn-fiche .rn-faq-q::marker { content: ""; }
.rn-fiche.rn-fiche.rn-fiche .rn-faq-q:hover { background: var(--rn-chaud); color: var(--rn-encre); }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-q:focus-visible {
	outline: 3px solid var(--rn-encre);
	outline-offset: -3px;
	border-radius: var(--rn-r-cmd);
}

/* Le signe : un chevron qui pivote à l'ouverture. */
.rn-fiche.rn-fiche.rn-fiche .rn-faq-signe {
	position: relative;
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	border: 0;
	border-radius: 50%;
	background: none;
	color: var(--rn-encre-2);
	transition: transform var(--rn-transition);
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq-signe::before {
	content: "";
	position: absolute;
	top: 6px;
	left: 7px;
	width: 9px;
	height: 9px;
	margin: 0;
	background: none;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	border-radius: 1px;
	transform: rotate(45deg);
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq-signe::after { content: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-item[open] .rn-faq-signe { transform: rotate(180deg); background: none; border-color: transparent; color: var(--rn-encre); }
.rn-fiche.rn-fiche.rn-fiche .rn-faq-item[open] .rn-faq-signe::after { content: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-faq-r {
	padding: 0 var(--rn-5) var(--rn-5);
	color: var(--rn-encre-2);
	font-size: 15px;
	line-height: 1.65;
}

.rn-fiche.rn-fiche.rn-fiche .rn-faq-r > :last-child { margin-bottom: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-faq-r ul { margin: var(--rn-2) 0 0 var(--rn-5); }
.rn-fiche.rn-fiche.rn-fiche .rn-faq-item[open] .rn-faq-r { animation: rn-faq-ouvre 180ms ease-out; }

@keyframes rn-faq-ouvre {
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: none; }
}

/* ---------------------------------------------------------------------------
 * Pièces de la même catégorie
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-associes { margin-top: clamp(40px, 6vw, 72px); }
.rn-fiche.rn-fiche.rn-fiche .rn-associes-titre { margin: 0 0 var(--rn-5); font-size: clamp(21px, 1.1rem + .6vw, 26px); letter-spacing: -.3px; }
.rn-fiche.rn-fiche.rn-fiche .rn-associes .rn-grille { align-items: stretch; }
.rn-fiche.rn-fiche.rn-fiche .rn-associes .rn-carte { height: 100%; }

/* ---------------------------------------------------------------------------
 * Barre d'achat fixe (mobile et tablette)
 * ------------------------------------------------------------------------ */
@media (max-width: 1023px) {

	.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe {
		gap: var(--rn-3);
		min-height: 68px;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
		background: rgba(255, 255, 255, .97);
		border-top: 1px solid var(--rn-trait);
		box-shadow: 0 -4px 16px rgba(26, 29, 62, .08);
	}

	.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe .rn-achat-fixe-info { display: flex; flex-direction: column; gap: 1px; }

	.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe .rn-achat-fixe-nom { font-size: 12px; color: var(--rn-doux); }

	.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe .rp-line.rp-active { font-size: 18px; letter-spacing: -.3px; }

	.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe .rn-achat-fixe-consigne {
		color: var(--rn-doux);
		font-size: 12px;
		font-weight: 500;
		white-space: nowrap;
	}

	.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe .rn-achat-fixe-consigne .tax_label { font-size: 10px; text-transform: uppercase; }

	/* Le bouton « haut de page » du thème monte au-dessus de la barre au lieu
	   de recouvrir son bouton d'achat. */
	#btn-to-top { transition: transform 240ms cubic-bezier(.4, 0, .2, 1); }
	body:has(.rn-achat-fixe.is-visible) #btn-to-top { transform: translateY(calc(-68px - env(safe-area-inset-bottom))); }

	.rn-achat-fixe.rn-achat-fixe.rn-achat-fixe .rn-btn {
		min-height: 48px;
		padding: 0 20px;
		border-radius: var(--rn-r-cmd);
		font-size: 15.5px;
	}
}

/* ---------------------------------------------------------------------------
 * Tablette
 * ------------------------------------------------------------------------ */
@media (min-width: 640px) and (max-width: 1023px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-galerie-lien { aspect-ratio: 4 / 3; }
	.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vues { grid-auto-columns: 96px; }
}

/* ---------------------------------------------------------------------------
 * Mobile
 * ------------------------------------------------------------------------ */
@media (max-width: 639px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-haut { gap: var(--rn-4); }
	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-entete { gap: var(--rn-2); }
	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-titre { letter-spacing: -.2px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-ref, .rn-fiche.rn-fiche.rn-fiche .rn-ref-oem { font-size: 13.5px; }

	/* La galerie occupe toute la largeur, coins conservés. */
	.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vues { grid-auto-columns: 64px; gap: var(--rn-2); }
	.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vue { padding: 4px; border-radius: 10px; }

	.rn-fiche.rn-fiche.rn-fiche .rn-achat-carte { padding: var(--rn-4); border-radius: 14px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-prix--fiche .rp-line:not(.rp-active):not(.rp-economie) { font-size: 13px; padding: 7px 10px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne { font-size: 14px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne--total { padding: 10px 12px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-consigne-ligne--total strong { font-size: 17px; }

	.rn-fiche.rn-fiche.rn-fiche .rn-fiche-form button.single_add_to_cart_button { flex: 1 1 160px; padding: 0 var(--rn-4); font-size: 16px; }

	.rn-fiche.rn-fiche.rn-fiche .rn-actions-2 { gap: var(--rn-2) var(--rn-3); }
	.rn-fiche.rn-fiche.rn-fiche .rn-lien-conseil { flex: 1 1 100%; justify-content: center; }

	.rn-fiche.rn-fiche.rn-fiche .rn-aide { padding: var(--rn-3) var(--rn-4); }
	.rn-fiche.rn-fiche.rn-fiche .rn-aide-ligne { font-size: 14px; }

	.rn-fiche.rn-fiche.rn-fiche .rn-sections { gap: var(--rn-4); }
	.rn-fiche.rn-fiche.rn-fiche .rn-section,
	.rn-fiche.rn-fiche.rn-fiche .rn-section + .rn-section { padding: var(--rn-5) var(--rn-4); border-radius: 14px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-section-corps { font-size: 15.5px; }

	.rn-fiche.rn-fiche.rn-fiche .rn-faq-q { padding: var(--rn-3) var(--rn-4); font-size: 15px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-faq-r { padding: 0 var(--rn-4) var(--rn-4); }
}

@media (prefers-reduced-motion: reduce) {
	.rn-fiche.rn-fiche.rn-fiche .rn-faq-item[open] .rn-faq-r { animation: none; }
	.rn-fiche.rn-fiche.rn-fiche .rn-faq-signe,
	.rn-fiche.rn-fiche.rn-fiche .rn-galerie-vue,
	.rn-fiche.rn-fiche.rn-fiche .rn-document,
	.rn-fiche.rn-fiche.rn-fiche .rn-faq-q { transition: none; }
}

/* Mobile et tablette : les groupes de questions restent espacés. */
@media (max-width: 1023px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-faq-bloc + .rn-faq-bloc { margin-top: var(--rn-6); }
}

/* Description courte et planches techniques côte à côte sur grand écran,
   au lieu de deux cartes pleine largeur à moitié vides (16/10/2026). */
@media (min-width: 1024px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-sections:has(> .rn-section--court + .rn-section--rn-documents) {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}
	.rn-fiche.rn-fiche.rn-fiche .rn-sections:has(> .rn-section--court + .rn-section--rn-documents) > .rn-section { grid-column: 1 / -1; }
	.rn-fiche.rn-fiche.rn-fiche .rn-sections:has(> .rn-section--court + .rn-section--rn-documents) > .rn-section--court,
	.rn-fiche.rn-fiche.rn-fiche .rn-sections:has(> .rn-section--court + .rn-section--rn-documents) > .rn-section--rn-documents { grid-column: auto; }
	.rn-fiche.rn-fiche.rn-fiche .rn-section--court + .rn-section--rn-documents .rn-documents { grid-template-columns: 1fr; }
}

/* ===========================================================================
 * Couleur (16/10/2026) : quelques touches de la charte dans le bas de fiche.
 * Corail pâle pour repérer, marine pour la FAQ ; le corail vif reste réservé
 * à l'achat.
 * ======================================================================== */

/* Liens du sommaire : numérotés en corail, survol corail pâle. */
.rn-fiche.rn-fiche.rn-fiche .rn-sommaire ol { counter-reset: rn-ancre; }
.rn-fiche.rn-fiche.rn-fiche .rn-sommaire li { counter-increment: rn-ancre; }
.rn-fiche.rn-fiche.rn-fiche .rn-sommaire a::before {
	content: counter(rn-ancre, decimal-leading-zero);
	margin-right: 8px;
	color: var(--rn-corail-texte, #C0442F);
	font-variant-numeric: tabular-nums;
}
.rn-fiche.rn-fiche.rn-fiche .rn-sommaire a:hover { background: var(--rn-corail-50); color: var(--rn-encre); }

/* Chaque partie ouvre sur son numéro, dans une pastille corail pâle. */
.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs { counter-reset: rn-bloc; }
.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs .rn-bloc { counter-increment: rn-bloc; }
.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs .rn-bloc > h2 { display: flex; align-items: center; gap: 12px; }
.rn-fiche.rn-fiche.rn-fiche .rn-prose--blocs .rn-bloc > h2::before {
	content: counter(rn-bloc, decimal-leading-zero);
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: var(--rn-corail-50);
	color: var(--rn-corail-texte, #C0442F);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
}

/* Encadré du délai et tableau : teinte corail pâle plutôt que gris. */
.rn-fiche.rn-fiche.rn-fiche .rn-prose blockquote { background: var(--rn-corail-50); border-left-color: var(--rn-corail-500); }
.rn-fiche.rn-fiche.rn-fiche .rn-prose table th,
.rn-fiche.rn-fiche.rn-fiche .rn-technique th { background: #FFF7F4; color: var(--rn-encre); }
.rn-fiche.rn-fiche.rn-fiche .rn-prose table,
.rn-fiche.rn-fiche.rn-fiche .rn-technique { border-color: var(--rn-corail-100); }
.rn-fiche.rn-fiche.rn-fiche .rn-prose table th,
.rn-fiche.rn-fiche.rn-fiche .rn-prose table td,
.rn-fiche.rn-fiche.rn-fiche .rn-technique th,
.rn-fiche.rn-fiche.rn-fiche .rn-technique td { border-bottom-color: var(--rn-corail-100); }

/* Planches techniques : carte gris chaud, liens blancs. */
.rn-fiche.rn-fiche.rn-fiche .rn-section.rn-section--rn-documents { background: var(--rn-chaud); border-color: transparent; }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-documents .rn-document { background: var(--rn-fond); }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-documents .rn-document:hover { background: var(--rn-corail-50); }

/* FAQ sur fond marine : le bloc se détache, les réponses restent sur blanc. */
.rn-fiche.rn-fiche.rn-fiche .rn-section.rn-section--rn-faq {
	background: var(--rn-encre);
	border-color: var(--rn-encre);
	color: #fff;
}
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-section-titre { color: #fff; }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-groupe { color: var(--rn-corail-200); }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-liste { background: var(--rn-fond); }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-cote .rn-lien-doc { background: rgba(255, 255, 255, .12); color: #fff; }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-cote .rn-lien-doc:hover { background: rgba(255, 255, 255, .2); color: #fff; }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-item[open] .rn-faq-q { color: var(--rn-corail-texte, #C0442F); }
.rn-fiche.rn-fiche.rn-fiche .rn-section--rn-faq .rn-faq-q:focus-visible { outline-color: var(--rn-corail-400); }


/* ---------------------------------------------------------------------------
 * Avis Google (Rich Showcase for Google Reviews), bande sous la FAQ (16/10/2026,
 * déplacée le 19/10/2026). Le widget garde son propre dessin ; la bande
 * l'aligne seulement sur la grille de la fiche.
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-avis-google {
	margin: clamp(32px, 4vw, 56px) 0 0;
	min-width: 0;
}

.rn-fiche.rn-fiche.rn-fiche .rn-avis-google + .rn-sections { margin-top: clamp(24px, 3vw, 40px); }
/* Titre et présentation de la bande (19/10/2026), au dessin des titres de
   section de la fiche. */
.rn-fiche.rn-fiche.rn-fiche .rn-avis-google-tete { margin: 0 0 var(--rn-5); }

.rn-fiche.rn-fiche.rn-fiche .rn-avis-google-titre {
	margin: 0;
	color: var(--rn-encre);
	font-family: var(--rn-titre);
	font-size: clamp(21px, 1.1rem + .6vw, 26px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -.3px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-avis-google-texte {
	max-width: 70ch;
	margin: var(--rn-2) 0 0;
	color: var(--rn-doux);
	font-size: 15.5px;
	line-height: 1.55;
}

/* 19/10/2026 : la bande passe sous la FAQ, avant les produits associés. */
.rn-fiche.rn-fiche.rn-fiche .rn-sections + .rn-avis-google { margin-top: clamp(24px, 3vw, 40px); }

/* ---------------------------------------------------------------------------
 * Fiche Carte Club (17/10/2026)
 *   Présentation dédiée rendue par RN_Carte_Club_Fiche. Couleurs unies, pas
 *   de dégradé, pas de filet coloré latéral. Orange réservé aux numéros
 *   d'étape et au bouton ; le reste en marine sur blanc et gris chaud.
 * ------------------------------------------------------------------------ */
.rn-fiche.rn-fiche.rn-fiche .rn-cc { color: var(--rn-encre-2); font-size: 16px; line-height: 1.65; }
.rn-fiche.rn-fiche.rn-fiche .rn-cc :where(h2, h3, p, dl, dt, dd, ol) { margin: 0; padding: 0; }
.rn-fiche.rn-fiche.rn-fiche .rn-cc :is(p, li, dd) { font-size: inherit; }

/* Accroche : texte à gauche, chiffres clés à droite. */
.rn-fiche.rn-fiche.rn-fiche .rn-cc-une {
	display: grid;
	gap: var(--rn-6);
	padding: clamp(20px, 3.5vw, 44px);
	background: var(--rn-chaud);
	border-radius: var(--rn-r-carte);
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-une-texte { display: flex; flex-direction: column; gap: var(--rn-4); align-self: center; }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-titre {
	max-width: 22ch;
	color: var(--rn-encre);
	font-family: var(--rn-titre);
	font-size: clamp(26px, 1.1rem + 1.6vw, 40px);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -.5px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-chapo { max-width: 58ch; font-size: 17px; color: var(--rn-encre-2); }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-etat {
	align-self: flex-start;
	padding: var(--rn-3) var(--rn-4);
	background: var(--rn-fond);
	border: 1px solid var(--rn-trait);
	border-radius: var(--rn-r-cmd);
	color: var(--rn-encre);
	font-size: 15px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-etat--ok { background: var(--rn-vert-50); border-color: transparent; }
.rn-fiche.rn-fiche.rn-fiche .rn-cc-etat a { margin-left: var(--rn-2); color: var(--rn-encre); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-cote {
	padding: var(--rn-2) var(--rn-6) var(--rn-5);
	background: var(--rn-fond);
	border: 1px solid var(--rn-trait);
	border-radius: var(--rn-r-carte);
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-chiffre { padding: var(--rn-4) 0; border-bottom: 1px solid var(--rn-trait); }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-chiffre dt {
	color: var(--rn-encre);
	font-family: var(--rn-chiffres);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-chiffre dt span { font-size: 15px; font-weight: 600; color: var(--rn-doux); }
.rn-fiche.rn-fiche.rn-fiche .rn-cc-chiffre dd { margin-top: 2px; color: var(--rn-doux); font-size: 15px; line-height: 1.45; }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-seuil {
	margin-top: var(--rn-4);
	padding: var(--rn-3) var(--rn-4);
	background: var(--rn-corail-50);
	border-radius: var(--rn-r-cmd);
	color: var(--rn-encre);
	font-size: 14.5px;
	line-height: 1.5;
}

/* Blocs suivants. */
.rn-fiche.rn-fiche.rn-fiche .rn-cc-bloc { margin-top: clamp(36px, 5vw, 60px); }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-h2 {
	margin-bottom: var(--rn-5);
	color: var(--rn-encre);
	font-family: var(--rn-titre);
	font-size: clamp(21px, 1.1rem + .6vw, 26px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -.3px;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-etapes { display: grid; gap: var(--rn-4); list-style: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape {
	margin: 0;
	padding: var(--rn-6);
	border: 1px solid var(--rn-trait);
	border-radius: var(--rn-r-carte);
	list-style: none;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape::before { content: none; }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-num {
	display: inline-grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--rn-corail-50);
	color: var(--rn-corail-700);
	font-family: var(--rn-chiffres);
	font-size: 16px;
	font-weight: 700;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape h3 {
	margin: var(--rn-4) 0 var(--rn-2);
	color: var(--rn-encre);
	font-family: var(--rn-titre);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape p { font-size: 15.5px; line-height: 1.6; }

/* Conditions : liste de définitions, filets fins. */
.rn-fiche.rn-fiche.rn-fiche .rn-cc-conditions { display: grid; column-gap: clamp(32px, 4vw, 64px); }
.rn-fiche.rn-fiche.rn-fiche .rn-cc-conditions > div { padding: var(--rn-4) 0; border-top: 1px solid var(--rn-trait); }
.rn-fiche.rn-fiche.rn-fiche .rn-cc-conditions dt { color: var(--rn-encre); font-weight: 700; font-size: 15.5px; }
.rn-fiche.rn-fiche.rn-fiche .rn-cc-conditions dd { margin-top: 2px; font-size: 15.5px; line-height: 1.55; }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-faq {
	background: var(--rn-fond);
	border: 1px solid var(--rn-trait);
	border-radius: var(--rn-r-carte);
	overflow: hidden;
}

/* Appel final : bandeau marine uni. */
.rn-fiche.rn-fiche.rn-fiche .rn-cc-fin {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--rn-4) var(--rn-6);
	margin-top: clamp(36px, 5vw, 60px);
	padding: var(--rn-6) clamp(20px, 3vw, 36px);
	background: var(--rn-encre);
	border-radius: var(--rn-r-carte);
	color: #fff;
}

.rn-fiche.rn-fiche.rn-fiche .rn-cc-fin-texte { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px var(--rn-3); color: #D9DBE6; font-size: 16px; }
.rn-fiche.rn-fiche.rn-fiche .rn-cc-fin-texte strong { color: #fff; font-family: var(--rn-chiffres); font-size: 26px; font-weight: 700; }

.rn-fiche.rn-fiche.rn-fiche .rn-cc-fin-btn { min-height: 48px; padding: 0 var(--rn-6); font-size: 15px; }
.rn-fiche.rn-fiche.rn-fiche .rn-cc-fin-btn:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

@media (min-width: 768px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-etapes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-conditions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-une { grid-template-columns: minmax(0, 1fr) minmax(320px, 400px); gap: clamp(32px, 4vw, 64px); }
}

@media (max-width: 767px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape { display: grid; grid-template-columns: 36px minmax(0, 1fr); column-gap: var(--rn-3); align-items: center; }
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape h3 { margin: 0; }
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape p { grid-column: 2; margin-top: var(--rn-2); }
}

@media (max-width: 600px) {
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-cote { padding: var(--rn-1) var(--rn-4) var(--rn-4); }
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-chiffre dt { font-size: 26px; }
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-etape { padding: var(--rn-5); }
	.rn-fiche.rn-fiche.rn-fiche .rn-cc-fin-btn { width: 100%; }
}
