/* ============================================================
   SANRIVAL — CHECKOUT & PANIER PREMIUM
   Surcouche du checkout WooCommerce natif, tokens du design
   system de la fiche pilote. Chargée sur checkout + panier.
   ============================================================ */

body.woocommerce-checkout,
body.woocommerce-cart {
	--v4-ink: #534222;
	--v4-ink-soft: rgba(83, 66, 34, .66);
	--v4-ink-mute: rgba(83, 66, 34, .52);
	--v4-green: #4a7c2f;
	--v4-green-light: #6aad3d;
	--v4-green-soft: #eef3ea;
	--v4-red: #b3172b;
	--v4-red-dark: #97102a;
	--v4-gold: #c88924;
	--v4-cream: #faf6ee;
	--v4-line: rgba(83, 66, 34, .12);
	--v4-line-soft: rgba(83, 66, 34, .07);
	--v4-r-sm: var(--sc-r-sm);
	--v4-r-md: var(--sc-r-md);
	--v4-r-lg: var(--sc-r-lg);
	--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);
	--v4-ease: .2s ease;

	background: #fbf8f1;
	color: var(--v4-ink);
}

/* Échelle de rythme propre au checkout : 8 / 12 / 16 / 24 / 32 px. */
body.woocommerce-checkout {
	--ck-space-xs: 8px;
	--ck-space-sm: 12px;
	--ck-space-md: 16px;
	--ck-space-lg: 24px;
	--ck-space-xl: 32px;
	--ck-card-pad: clamp(18px, 2.4vw, 28px);
}

body.woocommerce-checkout .sr-page-content,
body.woocommerce-cart .sr-page-content { padding-top: clamp(var(--sc-space-5), 3vw, var(--sc-space-6)); padding-bottom: clamp(var(--sc-space-7), 6vw, var(--sc-space-9)); }

/* ------------------------------------------------------------
   EN-TÊTE : titre + étapes
   ------------------------------------------------------------ */
body.woocommerce-checkout .sr-ck-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--sc-space-4) var(--sc-space-5);
	margin: 0 0 var(--ck-space-lg);
}
.sr-ck-eyebrow {
	margin: 0 0 var(--sc-space-2);
	color: var(--v4-green);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}
.sr-ck-title {
	margin: 0;
	color: var(--v4-ink);
	font-family: var(--sr-display);
	font-size: clamp(28px, 3.4vw, 40px);
	font-weight: 500;
	letter-spacing: -.01em;
	line-height: 1;
}
.sr-ck-steps {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sc-space-2) var(--sc-space-4);
	margin: 0;
	padding: 0;
	list-style: none;
	color: var(--v4-ink-mute);
	font-size: 12px;
	font-weight: 700;
}
.sr-ck-steps li { display: inline-flex; align-items: center; gap: var(--sc-space-2); }
.sr-ck-steps span {
	display: grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(83, 66, 34, .10);
	color: var(--v4-ink-mute);
	font-size: 12px;
	font-weight: 800;
}
.sr-ck-steps .is-done { color: var(--v4-green); }
.sr-ck-steps .is-done span { background: var(--v4-green-soft); color: var(--v4-green); }
.sr-ck-steps .is-current { color: var(--v4-ink); }
.sr-ck-steps .is-current span { background: var(--v4-red); color: #fff; }

/* ------------------------------------------------------------
   BARRE LIVRAISON OFFERTE
   ------------------------------------------------------------ */
.sr-ck-freeship {
	margin: 0 0 var(--sc-space-5);
	padding: var(--sc-space-4) var(--sc-space-4) var(--sc-space-4);
	background: #fff;
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
}
.sr-ck-freeship__row { display: flex; align-items: center; gap: var(--sc-space-3); margin-bottom: var(--sc-space-3); }
body.woocommerce-checkout .sr-ck-freeship { margin-bottom: var(--ck-space-lg); }
body.woocommerce-checkout .sr-ck-freeship__row { margin-bottom: var(--ck-space-sm); }
.sr-ck-freeship__icon {
	display: grid;
	place-items: center;
	width: var(--sc-icon-xl);
	height: var(--sc-icon-xl);
	flex: 0 0 auto;
	background: var(--v4-green-soft);
	border-radius: var(--sc-r-sm);
	color: var(--v4-green);
}
.sr-ck-freeship__icon svg { width: var(--sc-icon-md); height: var(--sc-icon-md); }
.sr-ck-freeship__text { margin: 0; font-size: 14px; line-height: 1.45; color: var(--v4-ink-soft); }
.sr-ck-freeship__text strong { color: var(--v4-ink); font-weight: 800; }
.sr-ck-freeship__text .amount { color: var(--v4-red); }
.sr-ck-freeship__track {
	position: relative;
	height: 8px;
	background: rgba(83, 66, 34, .08);
	border-radius: var(--sc-r-pill);
	overflow: hidden;
}
.sr-ck-freeship__track span {
	display: block;
	height: 100%;
	background: linear-gradient(90deg, var(--v4-green), var(--v4-green-light));
	border-radius: inherit;
	transition: width .45s ease;
}
.sr-ck-freeship.is-unlocked .sr-ck-freeship__track span { background: linear-gradient(90deg, var(--v4-green), var(--v4-green-light)); }
.sr-ck-freeship.is-unlocked .sr-ck-freeship__text strong { color: var(--v4-green); }

/* ------------------------------------------------------------
   COUPON + NOTICES
   ------------------------------------------------------------ */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
	margin: 0 0 var(--ck-space-lg);
	padding: var(--sc-space-3) var(--sc-space-4) !important;
	background: #fff !important;
	border: 1px dashed var(--v4-line) !important;
	border-radius: var(--v4-r-sm);
	color: var(--v4-ink-soft) !important;
	font-size: 14px;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before { content: none; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle a,
body.woocommerce-checkout .woocommerce-form-login-toggle a { color: var(--v4-red); font-weight: 700; }
/* Formulaire coupon : champ + bouton en un seul bloc compact */
body.woocommerce-checkout form.checkout_coupon {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: var(--ck-space-sm);
	max-width: 520px;
	margin: 0 0 var(--ck-space-lg);
	padding: var(--ck-space-md);
	background: #fff;
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
	box-shadow: var(--v4-shadow-xs);
}
body.woocommerce-checkout form.checkout_coupon > p { margin: 0; }
body.woocommerce-checkout form.checkout_coupon .form-row-first { flex: 1 1 220px; float: none; width: auto; }
body.woocommerce-checkout form.checkout_coupon .form-row-last { flex: 0 0 auto; float: none; width: auto; }
body.woocommerce-checkout form.checkout_coupon .clear { display: none; }
body.woocommerce-checkout form.checkout_coupon input[type="text"] {
	width: 100%;
	transition: border-color var(--v4-ease), box-shadow var(--v4-ease);
}

body.woocommerce-checkout form.checkout_coupon button {
	min-height: 50px;
	padding: var(--sc-space-3) var(--sc-space-5) !important;
	border-radius: var(--v4-r-sm) !important;
	background: var(--v4-red) !important;
	border-color: var(--v4-red) !important;
	box-shadow: none !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	transition: background var(--v4-ease), transform var(--v4-ease);
}
body.woocommerce-checkout form.checkout_coupon button:hover {
	background: var(--v4-red-dark) !important;
	border-color: var(--v4-red-dark) !important;
	transform: translateY(-1px);
}

/* ------------------------------------------------------------
   LAYOUT 2 COLONNES + CARTES
   ------------------------------------------------------------ */
body.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(380px, .9fr);
	grid-template-rows: auto 1fr;
	gap: 0 var(--ck-space-lg);
	align-items: start;
}
body.woocommerce-checkout #customer_details {
	grid-column: 1;
	grid-row: 1 / 3; /* s'étend sur les 2 rangées : le récap colle sous son titre */
	padding: var(--ck-card-pad);
	background: #fff;
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-lg);
	box-shadow: var(--v4-shadow-sm);
}
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 { width: 100%; float: none; }
body.woocommerce-checkout #order_review_heading {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	padding: var(--ck-card-pad) var(--ck-card-pad) 0;
	background: #fff;
	border: 1px solid var(--v4-line-soft);
	border-bottom: 0;
	border-radius: var(--v4-r-lg) var(--v4-r-lg) 0 0;
	color: var(--v4-ink);
	font-family: var(--sr-display);
	font-size: 24px;
	font-weight: 500;
}
body.woocommerce-checkout #order_review {
	grid-column: 2;
	grid-row: 2;
	position: sticky;
	top: 20px;
	padding: var(--ck-space-md) var(--ck-card-pad) var(--ck-card-pad);
	background: #fff;
	border: 1px solid var(--v4-line-soft);
	border-top: 0;
	border-radius: 0 0 var(--v4-r-lg) var(--v4-r-lg);
	box-shadow: var(--v4-shadow-sm);
}

/* Titres de blocs de formulaire */
body.woocommerce-checkout #customer_details h3,
body.woocommerce-checkout #ship-to-different-address {
	margin: 0 0 var(--ck-space-md);
	color: var(--v4-ink);
	font-family: var(--sr-display);
	font-size: 24px;
	font-weight: 500;
}
#ship-to-different-address label { font-size: 14px; font-weight: 600; font-family: var(--sr-font); color: var(--v4-ink-soft); }

/* ------------------------------------------------------------
   CHAMPS — grands, tactiles, focus vert doux
   ------------------------------------------------------------ */
body.woocommerce-checkout .form-row label {
	margin-bottom: var(--sc-space-2);
	color: var(--v4-ink);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .03em;
	text-transform: uppercase;
}
body.woocommerce-checkout .form-row label .optional { color: var(--v4-ink-mute); font-weight: 500; text-transform: none; }
body.woocommerce-checkout .form-row .required { color: var(--v4-red); text-decoration: none; }
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .select2-container--default .select2-selection--single {
	width: 100%;
	min-height: 52px;
	padding: var(--sc-space-3) var(--sc-space-4);
	background: #fff;
	border: 1px solid var(--v4-line);
	border-radius: var(--v4-r-sm);
	color: var(--v4-ink);
	font-family: var(--sr-font);
	font-size: 16px;
	transition: border-color var(--v4-ease), box-shadow var(--v4-ease);
}

body.woocommerce-checkout .select2-container--default .select2-selection--single { display: flex; align-items: center; }
body.woocommerce-checkout .select2-container--default .select2-selection__arrow { top: 50%; transform: translateY(-50%); right: 10px; }

body.woocommerce-checkout .form-row { margin-bottom: var(--ck-space-md); }


/* ------------------------------------------------------------
   RÉCAPITULATIF — table premium
   ------------------------------------------------------------ */
body.woocommerce-checkout table.shop_table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: 14px;
}
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td { padding: var(--ck-space-sm) 0; border: 0; border-bottom: 1px solid var(--v4-line-soft); vertical-align: middle; }
body.woocommerce-checkout table.shop_table thead { display: none; }
body.woocommerce-checkout table.shop_table td.product-total,
body.woocommerce-checkout table.shop_table tr > td:last-child,
body.woocommerce-checkout table.shop_table tr > th + td { text-align: right; }
body.woocommerce-checkout table.shop_table tfoot th,
body.woocommerce-checkout table.shop_table .cart-subtotal th,
body.woocommerce-checkout table.shop_table .woocommerce-shipping-totals th {
	color: var(--v4-ink-soft);
	font-size: 12px;
	font-weight: 700;
	text-align: left;
}
body.woocommerce-checkout table.shop_table .order-total th { color: var(--v4-ink); font-size: 14px; font-weight: 800; }
body.woocommerce-checkout table.shop_table .order-total td { font-family: var(--sr-display); font-size: 28px; color: var(--v4-red); }
body.woocommerce-checkout table.shop_table .order-total td small { font-family: var(--sr-font); font-size: 12px; color: var(--v4-ink-mute); }

/* Ligne produit : miniature (badge quantité posé dessus) + nom + économie */
.sr-ck-item { display: flex; align-items: center; gap: var(--sc-space-3); text-align: left; }
.sr-ck-item__media { position: relative; flex: 0 0 48px; }
.sr-ck-item__thumb { display: block; width: 48px; height: 48px; object-fit: cover; border-radius: var(--sc-r-sm); border: 1px solid var(--v4-line-soft); background: #f4eee1; }
.sr-ck-item__qty {
	position: absolute;
	top: -7px;
	right: -7px;
	display: grid;
	place-items: center;
	min-width: 20px;
	height: 20px;
	padding: 0 var(--sc-space-1);
	background: var(--v4-ink);
	border: 2px solid #fff;
	border-radius: var(--sc-r-pill);
	color: #fff;
	font-size: 10.5px;
	font-weight: 800;
	line-height: 1;
}
.sr-ck-item__label { display: flex; flex-direction: column; gap: 3px; font-weight: 600; color: var(--v4-ink); line-height: 1.3; }

body.woocommerce-checkout table.shop_table .cart_item dl.variation { margin: 3px 0 0; font-size: 12px; color: var(--v4-ink-mute); }
body.woocommerce-checkout table.shop_table .cart_item dl.variation dt,
body.woocommerce-checkout table.shop_table .cart_item dl.variation dd { display: inline; margin: 0; padding: 0; font-weight: 500; }

/* Économies + note d'expédition */
.sr-ck-savings th { color: var(--v4-green) !important; }
.sr-ck-savings td { color: var(--v4-green); font-weight: 800; }
.sr-ck-dispatch td {
	display: flex;
	align-items: center;
	gap: var(--sc-space-2);
	padding-top: var(--sc-space-3) !important;
	border-bottom: 0 !important;
	color: var(--v4-ink-soft);
	font-size: 12px;
	line-height: 1.5;
	text-align: left !important;
}
.sr-ck-dispatch svg { width: var(--sc-icon-md); height: var(--sc-icon-md); flex: 0 0 auto; color: var(--v4-green); }

/* Livraison : options radio propres */
body.woocommerce-checkout ul#shipping_method { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sc-space-2); }
body.woocommerce-checkout ul#shipping_method li { display: flex; align-items: center; gap: var(--sc-space-2); }
body.woocommerce-checkout ul#shipping_method label { font-size: 14px; color: var(--v4-ink); }

/* Ligne coupon appliqué : lien « Enlever » discret */
body.woocommerce-checkout table.shop_table .cart-discount td { color: var(--v4-green); font-weight: 700; }
body.woocommerce-checkout table.shop_table .cart-discount .woocommerce-remove-coupon {
	display: inline-block;
	margin-left: var(--sc-space-2);
	color: var(--v4-ink-mute);
	font-size: 12px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}
body.woocommerce-checkout table.shop_table .cart-discount .woocommerce-remove-coupon:hover { color: var(--v4-red); }

/* États focus clavier cohérents sur tous les boutons du checkout */
body.woocommerce-checkout #place_order:focus-visible,
body.woocommerce-checkout form.checkout_coupon button:focus-visible,
.sr-ck-upsells__add:focus-visible {
	outline: 2px solid var(--v4-ink);
	outline-offset: 2px;
}

/* ------------------------------------------------------------
   RECOMMANDATIONS « Complétez votre commande »
   ------------------------------------------------------------ */
.sr-ck-upsells {
	margin: var(--ck-space-lg) 0 0;
	padding: var(--ck-space-md);
	background: var(--v4-cream);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-md);
}
.sr-ck-upsells__title {
	margin: 0 0 var(--ck-space-sm);
	color: var(--v4-ink);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}
.sr-ck-upsells ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sc-space-2); }
.sr-ck-upsells li { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: var(--sc-space-3); }
.sr-ck-upsells__media img { width: 44px; height: 44px; object-fit: cover; border-radius: var(--sc-r-sm); border: 1px solid var(--v4-line-soft); background: #fff; display: block; }
.sr-ck-upsells__info { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.sr-ck-upsells__info a {
	color: var(--v4-ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.sr-ck-upsells__info a:hover { color: var(--v4-red); }
.sr-ck-upsells__info b { font-family: var(--sr-display); font-size: 14px; font-weight: 500; color: var(--v4-red); }
.sr-ck-upsells__info b del { opacity: .55; margin-right: var(--sc-space-1); }
.sr-ck-upsells__add {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 50%;
	background: var(--v4-red);
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 5px 12px rgba(179, 23, 43, .22);
	transition: background var(--v4-ease), transform var(--v4-ease);
}
.sr-ck-upsells__add:hover { background: var(--v4-red-dark); transform: translateY(-1px); }
.sr-ck-upsells__add.is-loading { opacity: .6; pointer-events: none; }
.sr-ck-upsells__add.is-added { background: var(--v4-green); box-shadow: none; }

/* ------------------------------------------------------------
   PAIEMENT + BOUTON DE COMMANDE
   ------------------------------------------------------------ */
body.woocommerce-checkout #payment {
	margin-top: var(--ck-space-lg);
	background: transparent;
	border-radius: 0;
}
body.woocommerce-checkout #payment ul.payment_methods {
	margin: 0;
	padding: 0 0 var(--ck-space-md);
	list-style: none;
	border-bottom: 1px solid var(--v4-line-soft);
}
body.woocommerce-checkout #payment ul.payment_methods li {
	margin-bottom: var(--ck-space-xs);
	padding: var(--ck-space-sm) var(--sc-space-4);
	background: var(--v4-cream);
	border: 1px solid var(--v4-line-soft);
	border-radius: var(--v4-r-sm);
}
body.woocommerce-checkout #payment ul.payment_methods li:last-child { margin-bottom: 0; }
body.woocommerce-checkout #payment ul.payment_methods label { font-size: 14px; font-weight: 700; color: var(--v4-ink); }
body.woocommerce-checkout #payment div.payment_box {
	margin: var(--ck-space-sm) 0 0;
	padding: var(--ck-space-sm);
	background: #fff;
	border-radius: var(--sc-r-sm);
	color: var(--v4-ink-soft);
	font-size: 12px;
}
body.woocommerce-checkout #payment div.payment_box::before { display: none; }
body.woocommerce-checkout .woocommerce-privacy-policy-text p { font-size: 12px; line-height: 1.55; color: var(--v4-ink-mute); }
body.woocommerce-checkout .woocommerce-privacy-policy-text a { color: var(--v4-red); }
body.woocommerce-checkout #payment .form-row.place-order {
	margin: 0;
	padding: var(--ck-space-lg) var(--ck-space-md) 0;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text p { margin: 0; }

body.woocommerce-checkout #place_order {
	width: 100%;
	margin: var(--ck-space-md) 0 0;
	margin-bottom: 0 !important; /* neutralise la marge responsive injectée par WooCommerce */
	padding: var(--sc-space-4) var(--sc-space-5) !important;
	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);
}
body.woocommerce-checkout #place_order:hover {
	background: var(--v4-red-dark) !important;
	border-color: var(--v4-red-dark) !important;
	transform: translateY(-2px);
}
body.woocommerce-checkout #place_order:active { transform: translateY(0); }

/* ------------------------------------------------------------
   RÉASSURANCE + AIDE
   ------------------------------------------------------------ */
.sr-ck-trust {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--ck-space-sm) var(--ck-space-md);
	margin: var(--ck-space-lg) 0 0;
	padding: var(--ck-space-md) 2px 0;
	border-top: 1px solid var(--v4-line-soft);
	list-style: none;
}
.sr-ck-trust li {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	column-gap: var(--sc-space-3);
	align-items: center;
	color: var(--v4-ink-soft);
	font-size: 12px;
	line-height: 1.4;
}
.sr-ck-trust svg {
	width: var(--sc-icon-xl);
	height: var(--sc-icon-xl);
	padding: var(--sc-space-2);
	color: var(--v4-green);
	background: var(--v4-green-soft);
	border-radius: var(--sc-r-sm);
}
.sr-ck-trust strong { display: block; color: var(--v4-ink); font-size: 12px; font-weight: 700; }
.sr-ck-help { margin: var(--ck-space-md) 0 0; font-size: 12px; line-height: 1.55; color: var(--v4-ink-mute); }
.sr-ck-help a { color: var(--v4-red); font-weight: 700; }

/* ------------------------------------------------------------
   PANIER — mêmes composants
   ------------------------------------------------------------ */
body.woocommerce-cart .sr-ck-freeship { max-width: none; }
body.woocommerce-cart .sr-ck-savings th { color: var(--v4-green); }
body.woocommerce-cart .sr-ck-savings td { color: var(--v4-green); font-weight: 800; }

/* ------------------------------------------------------------
   RESPONSIVE
   ------------------------------------------------------------ */
@media (max-width: 1020px) {
	body.woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
	body.woocommerce-checkout #order_review_heading,
	body.woocommerce-checkout #order_review { grid-column: 1; }
	body.woocommerce-checkout #order_review_heading { grid-row: auto; margin-top: var(--ck-space-xl); }
	body.woocommerce-checkout #order_review { grid-row: auto; position: static; }
}

@media (max-width: 600px) {
	body.woocommerce-checkout .sr-ck-head { margin-bottom: var(--ck-space-md); }
	.sr-ck-steps { width: 100%; }
	.sr-ck-freeship { padding: var(--sc-space-4) var(--sc-space-4) var(--sc-space-3); }
	body.woocommerce-checkout .sr-ck-freeship { padding: var(--ck-space-md); }
	body.woocommerce-checkout #customer_details { padding: var(--ck-card-pad); border-radius: var(--v4-r-md); }
	body.woocommerce-checkout #order_review_heading { margin-top: var(--ck-space-lg); padding: var(--ck-card-pad) var(--ck-card-pad) 0; border-radius: var(--v4-r-md) var(--v4-r-md) 0 0; }
	body.woocommerce-checkout #order_review { padding: var(--ck-space-md) var(--ck-card-pad) var(--ck-card-pad); border-radius: 0 0 var(--v4-r-md) var(--v4-r-md); }
	body.woocommerce-checkout .form-row input.input-text,
	body.woocommerce-checkout .form-row select { /* évite le zoom iOS */ }
	.sr-ck-trust { grid-template-columns: 1fr; }
	
}

/* Lisibilité (audit du 2 octobre, S-03) : plus de texte sous 13 px ; les informations passent à 14 px.
 * Mêmes sélecteurs que les règles d'origine, placés en fin de fichier pour l'emporter. */
.sr-ck-eyebrow { font-size: 14px; }
.sr-ck-steps { font-size: 14px; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info, body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info { font-size: 14px; }
body.woocommerce-checkout .form-row label { font-size: 14px; }
body.woocommerce-checkout table.shop_table tfoot th, body.woocommerce-checkout table.shop_table .cart-subtotal th, body.woocommerce-checkout table.shop_table .woocommerce-shipping-totals th { font-size: 14px; }
body.woocommerce-checkout table.shop_table .order-total td small { font-size: 14px; }
.sr-ck-item__qty { font-size: 14px; }

body.woocommerce-checkout table.shop_table .cart_item dl.variation { font-size: 14px; }
.sr-ck-dispatch td { font-size: 14px; }
body.woocommerce-checkout ul#shipping_method label { font-size: 14px; }
body.woocommerce-checkout table.shop_table .cart-discount .woocommerce-remove-coupon { font-size: 14px; }
.sr-ck-upsells__title { font-size: 14px; }
.sr-ck-upsells__info a { font-size: 14px; }
body.woocommerce-checkout #payment div.payment_box { font-size: 14px; }
body.woocommerce-checkout .woocommerce-privacy-policy-text p { font-size: 14px; }
.sr-ck-trust li { font-size: 14px; }
.sr-ck-trust strong { font-size: 14px; }
.sr-ck-help { font-size: 14px; }

/* =====================================================================
 * Page commande v3 — maquettes « Panier et commande » (section 3) et « bande brune » (section 5), validées le 7 octobre 2026.
 * Gabarit : woocommerce/checkout/form-checkout.php (.sr-ck3). Contenu 1072 px (1200 − 2 × 64), colonnes 1fr / 420 px, écart 56 px.
 * Rien ne change dans les champs, les paiements (FunnelKit Stripe) ni les totaux. Rollback : SANRIVAL_BANDE_BRUNE.
 * ===================================================================== */
body.sr-charte.woocommerce-checkout { --q-brun: var(--sc-ink, #2a1a12); --q-brun-d: var(--sc-ink-soft, #4a2f22); --q-brun-m: var(--sc-ink-mute, #6b4a38); --q-creme: var(--sc-cream, #fdf6ea); --q-fond: var(--sc-canvas, #fffcf5); --q-filet: var(--sc-line, #eadfc4); --q-trait: rgba(42, 26, 18, .14); --q-rouge: var(--sc-red, #b21c2d); --q-vert: #3f7a26; --q-semer: var(--sc-semer, #b7d34a); --q-display: var(--sc-display, "Bricolage Grotesque", sans-serif); --q-texte: var(--sc-font, "Figtree", sans-serif); }
/* En-tête réduit : lien brun (le rouge reste à l'achat), filet dessous, cadenas brun */
body.sr-checkout-minimal .sr-header-main { border-bottom: 1px solid var(--q-trait, rgba(42, 26, 18, .14)); }
body.sr-checkout-minimal .sr-checkout-head { gap: var(--sc-space-5); font: 600 14px/1.3 var(--q-texte, inherit); }
body.sr-checkout-minimal .sr-checkout-head__secure { font-weight: 600; }
body.sr-checkout-minimal .sr-checkout-head__secure svg { color: var(--q-brun, #2a1a12); width: var(--sc-icon-sm); height: var(--sc-icon-sm); }
body.sr-checkout-minimal .sr-checkout-head__cart { color: var(--q-brun, #2a1a12); font-weight: 600; }
/* Page */
body.sr-charte.woocommerce-checkout .sr-page-content { max-width: 1200px; margin: 0 auto !important; padding-top: 0 !important; }
@media (min-width: 1021px) { body.sr-charte.woocommerce-checkout .sr-page-content { padding-inline: var(--sc-space-8); } }
body.sr-charte.woocommerce-checkout .woocommerce > .sr-ck-bande, body.sr-charte.woocommerce-checkout .woocommerce > .sr-ruban { margin-inline: calc(50% - 50vw); }
body.sr-charte.woocommerce-checkout .woocommerce > .sr-ruban { margin-bottom: var(--sc-space-7); }
body.sr-charte.woocommerce-checkout .sr-ck3 { display: grid; grid-template-columns: minmax(0, 1fr) 420px; column-gap: var(--sc-space-8); align-items: start; padding-bottom: var(--sc-space-9); }
body.sr-charte.woocommerce-checkout .sr-ck3 > .sr-ck3__haut { grid-column: 1; grid-row: 1; }
body.sr-charte.woocommerce-checkout .sr-ck3 > .woocommerce-notices-wrapper { grid-column: 1; grid-row: 2; }
body.sr-charte.woocommerce-checkout .sr-ck3 > form.sr-ck3__form { display: contents; }
body.sr-charte.woocommerce-checkout .sr-ck3__gauche { grid-column: 1; grid-row: 3; display: grid; gap: var(--sc-space-6); min-width: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3__droite { grid-column: 2; grid-row: 1 / span 3; position: sticky; top: 20px; min-width: 0; }
/* Haut de colonne : jauge, accès client et code promo côte à côte */
body.sr-charte.woocommerce-checkout .sr-ck3__haut { display: grid; grid-template-columns: 1fr 1fr; grid-auto-flow: row dense; gap: var(--sc-space-6) var(--sc-space-3); margin-bottom: var(--sc-space-6); }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > * { grid-column: 1 / -1; margin: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > :is(.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle) { grid-column: auto; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > .sr-checkout-reassurance { display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship { padding: var(--sc-space-4) var(--sc-space-4); border: 0 !important; border-radius: var(--sc-r-md); background: var(--q-creme) !important; box-shadow: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship.is-unlocked { background: #eef4d4 !important; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship__icon { display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship__row { display: block; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship__text { margin: 0; font: 400 14px/1.5 var(--q-texte); color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck-freeship__text :is(strong, .amount) { font: 800 18px/1.2 var(--q-display); letter-spacing: -0.03em; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship__track { position: relative; height: 10px; margin-top: var(--sc-space-3); border-radius: var(--sc-r-pill); background: rgba(42, 26, 18, .1) !important; overflow: hidden; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship__track > * { display: block; height: 100%; border-radius: var(--sc-r-pill); background: linear-gradient(90deg, var(--q-semer) 0 33%, var(--sc-arroser, #8cc5e8) 33% 55%, var(--sc-attendre, #f0c96a) 55% 77%, var(--q-rouge) 77%) !important; background-size: calc(10000% / var(--sr-fill, 100)) 100% !important; }
body.sr-charte.woocommerce-checkout .sr-ck-freeship.is-unlocked .sr-ck-freeship__track > * { background: var(--sc-fam-potageres, #4e8f2f) !important; }
body.sr-charte.woocommerce-checkout :is(.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle) .woocommerce-info { display: flex; align-items: center; gap: var(--sc-space-3); min-height: 58px; margin: 0; padding: 0 var(--sc-space-4) !important; border: 0 !important; border-radius: var(--sc-r-md) !important; background: var(--q-creme) !important; box-shadow: none !important; font: 700 16px/1.2 var(--q-texte); color: var(--q-brun); white-space: nowrap; }
body.sr-charte.woocommerce-checkout :is(.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle) .woocommerce-info::after { display: none !important; }
body.sr-charte.woocommerce-checkout :is(.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle) .woocommerce-info::before { content: "" !important; position: static !important; flex: 0 0 26px; width: 26px; height: 26px; margin: 0; border-radius: 50%; background: var(--q-brun) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='5.6' r='2.6' fill='none' stroke='%23fdf6ea' stroke-width='1.6'/%3E%3Cpath d='M3.2 13.2c.8-2.4 2.6-3.6 4.8-3.6s4 1.2 4.8 3.6' fill='none' stroke='%23fdf6ea' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center/16px no-repeat; font-size: 0; color: transparent; }
body.sr-charte.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { content: "%" !important; display: grid; place-items: center; background: var(--q-rouge); font: 800 12px/1 var(--q-texte); color: var(--q-creme); }
body.sr-charte.woocommerce-checkout :is(.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle) .woocommerce-info a { margin-left: auto; font: 600 14px/1.2 var(--q-texte); color: var(--q-brun) !important; text-decoration: underline; text-underline-offset: 3px; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > :is(form.woocommerce-form-login, form.checkout_coupon) { padding: var(--sc-space-4) !important; border: 1px solid var(--q-filet) !important; border-radius: var(--sc-r-md) !important; background: #fff !important; }
/* Titres de section numérotés */
body.sr-charte.woocommerce-checkout .sr-ck3 :is(.woocommerce-billing-fields > h3, .sr-ck3__h) { display: flex; font-family: var(--q-display); font-weight: 800; align-items: baseline; gap: var(--sc-space-3); margin: 0 0 var(--sc-space-5) !important; padding: 0 0 var(--sc-space-3) !important; border: 0; border-bottom: 1px solid var(--q-trait); text-transform: lowercase; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 :is(.woocommerce-billing-fields > h3, .sr-ck3__h)::before { content: "1"; flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; background: var(--q-brun); color: var(--q-creme); display: grid; place-items: center; font: 800 14px/1 var(--q-display); letter-spacing: 0; transform: translateY(-3px); }
body.sr-charte.woocommerce-checkout .sr-ck3 .sr-ck3__h::before { content: "2"; }
/* Champs : grille à 16 px */
body.sr-charte.woocommerce-checkout .sr-ck3 .col2-set, body.sr-charte.woocommerce-checkout .sr-ck3 .col2-set > :is(.col-1, .col-2) { width: auto !important; float: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .col2-set .col-2 { margin-top: 2px !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 :is(.woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper) { display: flex; flex-wrap: wrap; gap: var(--sc-space-4); }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row { flex: 1 1 100%; width: auto !important; float: none !important; margin: 0 !important; padding: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row:is(.form-row-first, .form-row-last) { flex: 1 1 calc(50% - 8px); }
body.sr-charte.woocommerce-checkout .sr-ck3 :is(#billing_postcode_field, #shipping_postcode_field) { flex: 1 1 calc((100% - 16px) / 3); }
body.sr-charte.woocommerce-checkout .sr-ck3 :is(#billing_city_field, #shipping_city_field) { flex: 2 1 calc((100% - 16px) * 2 / 3); }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row:has(> .woocommerce-input-wrapper > input[type="hidden"]), body.sr-charte.woocommerce-checkout .sr-ck3 .form-row[style*="display: none"] { display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row > label { display: block; margin: 0 0 var(--sc-space-2); font: 600 14px/1.3 var(--q-texte) !important; color: var(--q-brun) !important; text-transform: none !important; letter-spacing: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row label .required { color: var(--q-rouge); text-decoration: none; border: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row label .optional { font-weight: 500; color: var(--q-brun-m); }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row :is(input.input-text, select, textarea), body.sr-charte.woocommerce-checkout .sr-ck3 .form-row .select2-selection--single { box-sizing: border-box; width: 100%; height: 48px; min-height: 48px; padding: 0 var(--sc-space-4); border: 1.5px solid var(--q-filet) !important; border-radius: var(--sc-r-sm) !important; background-color: #fff !important; box-shadow: none !important; font: 400 16px/1.4 var(--q-texte); color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row .select2-selection--single .select2-selection__rendered { line-height: 45px; padding: 0; color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row .select2-selection--single .select2-selection__arrow { height: 45px; right: 10px; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row textarea { resize: vertical; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row :is(input.input-text, textarea)::placeholder { color: #9a8576; opacity: 1; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row :is(input.input-text, select, textarea):focus { border-color: var(--q-brun) !important; outline: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3 .form-row.woocommerce-invalid :is(input.input-text, select) { border-color: var(--q-rouge) !important; }
/* Cases à cocher et boutons radio de la charte */
body.sr-charte.woocommerce-checkout .sr-ck3 input[type="checkbox"].input-checkbox, body.sr-charte.woocommerce-checkout .sr-ck3 input[type="checkbox"]#terms { -webkit-appearance: none; appearance: none; flex: 0 0 24px; width: 24px; height: 24px; margin: 0 var(--sc-space-3) 0 0 !important; border: 2px solid var(--sc-ink); border-radius: var(--sc-r-xs); background: var(--sc-surface); vertical-align: middle; cursor: pointer; }
body.sr-charte.woocommerce-checkout .sr-ck3 input[type="checkbox"]:checked { border-color: var(--sc-ink); background: var(--sc-green-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a1a12' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/15px no-repeat; }
body.sr-charte.woocommerce-checkout .sr-ck3 input[type="checkbox"]:focus-visible, body.sr-charte.woocommerce-checkout .sr-ck3 input[type="radio"]:focus-visible { outline: 2px solid var(--q-brun); outline-offset: 2px; }
body.sr-charte.woocommerce-checkout .sr-ck3 :is(.create-account, #ship-to-different-address) label.checkbox, body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-terms-and-conditions-checkbox-text { display: flex !important; align-items: center; margin: 0; font: 600 14px/1.3 var(--q-texte) !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--q-brun) !important; cursor: pointer; }
body.sr-charte.woocommerce-checkout .sr-ck3 #ship-to-different-address { margin: 0 !important; padding: 0 !important; border: 0 !important; font: 600 14px/1.3 var(--q-texte) !important; text-transform: none !important; letter-spacing: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-account-fields { margin-top: var(--sc-space-4); }
body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-shipping-fields { margin-top: var(--sc-space-4); }
body.sr-charte.woocommerce-checkout .sr-ck3 .shipping_address { margin-top: var(--sc-space-4); }
body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-additional-fields { margin-top: var(--sc-space-4); }
body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-additional-fields > h3 { display: none; }
body.sr-charte.woocommerce-checkout .sr-ck3 input[type="radio"] { -webkit-appearance: none; appearance: none; flex: 0 0 22px; width: 22px; height: 22px; margin: 0 !important; border: 2px solid var(--sc-ink); border-radius: 50%; background: var(--sc-surface); vertical-align: middle; cursor: pointer; }
body.sr-charte.woocommerce-checkout .sr-ck3 input[type="radio"]:checked { border-color: var(--sc-ink); background: radial-gradient(circle, var(--sc-ink) 0 4px, var(--sc-green-light) 4.5px); }
/* Paiement */
body.sr-charte.woocommerce-checkout .sr-ck3 #payment { border: 0 !important; border-radius: 0 !important; background: transparent !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods { display: grid; gap: var(--sc-space-3); margin: 0 !important; padding: 0 !important; border: 0 !important; list-style: none; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li { display: grid; gap: var(--sc-space-3); margin: 0 !important; padding: var(--sc-space-4) !important; border: 1.5px solid var(--q-filet); border-radius: var(--sc-r-md); background: #fff; list-style: none; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li:has(> input:checked), body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li:only-child { border-color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > :is(input, label) { grid-row: 1; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li:has(> input) { grid-template-columns: 20px minmax(0, 1fr); column-gap: var(--sc-space-3); align-items: center; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sc-space-2); margin: 0; font: 700 14px/1.3 var(--q-texte) !important; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label img { max-height: 22px; margin: 0 0 0 var(--sc-space-1) !important; float: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .payment_box { grid-column: 1 / -1; margin: 0 !important; padding: var(--sc-space-4) !important; border-radius: var(--sc-r-sm); background: var(--q-creme) !important; font-size: 14px; color: var(--q-brun-d); }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .payment_box::before { display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .place-order { display: grid; gap: var(--sc-space-4); margin: var(--sc-space-6) 0 0 !important; padding: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-privacy-policy-text p { margin: 0; font: 400 12px/1.5 var(--q-texte); color: var(--q-brun-m); }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment :is(.woocommerce-privacy-policy-text, .woocommerce-terms-and-conditions-wrapper) a { color: var(--q-brun) !important; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-terms-and-conditions-wrapper .form-row { margin: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment #place_order { float: none; width: 100%; margin: 0; border: 0 !important; background: var(--q-rouge) !important; color: var(--q-creme) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment #place_order:hover { background: var(--sc-red-dark, #8e1424) !important; }
/* Récapitulatif « votre commande » */
body.sr-charte.woocommerce-checkout .sr-ck3__recap { margin: 0 !important; padding: var(--sc-space-5) !important; border: 1px solid var(--q-filet) !important; border-radius: var(--sc-r-md) !important; background: #fff !important; box-shadow: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap > #order_review_heading { display: block; margin: 0 !important; padding: 0 0 var(--sc-space-4) !important; border: 0; border-bottom: 1px solid var(--q-trait); background: none; font: 800 24px/1.05 var(--q-display) !important; letter-spacing: -0.045em !important; text-transform: lowercase; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table { display: block; width: 100%; margin: 0 !important; border: 0 !important; border-radius: 0; background: none; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table :is(thead) { display: none; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table :is(tbody, tfoot) { display: block; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table tr { display: flex; justify-content: space-between; align-items: baseline; gap: var(--sc-space-4); padding: var(--sc-space-3) 0; border-bottom: 1px solid var(--q-trait); }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table :is(th, td) { display: block; padding: 0 !important; border: 0 !important; background: none !important; font: 600 14px/1.4 var(--q-texte); color: var(--q-brun); text-align: left; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table td:last-child { font-weight: 700; text-align: right; white-space: nowrap; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.cart_item { align-items: center; padding: var(--sc-space-4) 0; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.cart_item td.product-name { flex: 1 1 auto; min-width: 0; }
body.sr-charte.woocommerce-checkout .sr-ck-item { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: var(--sc-space-4); align-items: center; }
body.sr-charte.woocommerce-checkout .sr-ck-item__media { position: relative; display: block; width: 64px; height: 64px; border: 1px solid var(--q-filet); border-radius: var(--sc-r-sm); background: #fff; }
body.sr-charte.woocommerce-checkout .sr-ck-item__media img { display: block; width: 100% !important; height: 100% !important; object-fit: contain; border-radius: var(--sc-r-sm); }
body.sr-charte.woocommerce-checkout .sr-ck-item__qty { position: absolute; top: -8px; right: -8px; width: 24px; height: 24px; border-radius: 50%; background: var(--q-brun); color: var(--q-creme); display: grid; place-items: center; font: 800 12px/1 var(--q-texte); }
body.sr-charte.woocommerce-checkout .sr-ck-item__nom { display: block; font: 800 18px/1.1 var(--q-display); letter-spacing: -0.03em; text-transform: lowercase; color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck-item__deg { display: flex; align-items: center; gap: var(--sc-space-2); margin-top: var(--sc-space-1); font: 400 12px/1.4 var(--q-texte); color: var(--q-brun-d); white-space: nowrap; }
body.sr-charte.woocommerce-checkout .sr-ck-item__pct { display: inline-flex; align-items: center; height: 24px; padding: 0 var(--sc-space-3); border-radius: var(--sc-r-pill); background: var(--q-semer); color: var(--q-brun); font: 700 12px/1 var(--q-display); }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.cart_item td.product-total { font: 700 16px/1.3 var(--q-texte); }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.cart_item td.product-total del { display: block; font: 400 12px/1.3 var(--q-texte); color: var(--q-brun-m); }
body.sr-charte.woocommerce-checkout .sr-ck3__recap tr.woocommerce-shipping-totals { display: grid; gap: var(--sc-space-3); }
body.sr-charte.woocommerce-checkout .sr-ck3__recap tr.woocommerce-shipping-totals td { text-align: left; white-space: normal; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-shipping-methods { display: grid; gap: var(--sc-space-2); margin: 0; padding: 0; list-style: none; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-shipping-methods li, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: var(--sc-space-3); align-items: center; margin: 0; padding: var(--sc-space-3) var(--sc-space-4); border: 1.5px solid var(--q-filet); border-radius: var(--sc-r-sm); background: #fff; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-shipping-methods li:has(input:checked), body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-shipping-methods li:only-child, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li:has(input:checked), body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li:only-child { border-color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-shipping-methods li:only-child, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li:only-child { grid-template-columns: minmax(0, 1fr); }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-shipping-methods label { display: flex; justify-content: space-between; align-items: baseline; gap: var(--sc-space-3); margin: 0; font: 600 14px/1.35 var(--q-texte); color: var(--q-brun); cursor: pointer; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .sr-ck-ship__p { font-weight: 700; white-space: nowrap; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.sr-ck-savings :is(th, td), body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.sr-ck-savings .amount { color: var(--q-vert) !important; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.order-total { flex-wrap: wrap; align-items: flex-end; padding: var(--sc-space-4) 0 var(--sc-space-1); border-bottom: 0; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.order-total th { font-weight: 700; font-size: 16px; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.order-total td { display: grid; justify-items: end; gap: var(--sc-space-1); }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.order-total td strong, body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.order-total td strong .amount { font: 800 32px/1 var(--q-display) !important; letter-spacing: -0.05em; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.order-total td :is(small, .includes_tax), body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.order-total td :is(small, .includes_tax) .amount { font: 400 12px/1.4 var(--q-texte) !important; letter-spacing: 0; color: var(--q-brun-m) !important; white-space: normal; text-align: right; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-Price-currencySymbol { font: inherit !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap tr:has(.sr-ck-dispatch), body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) tr.sr-ck-dispatch { display: block; padding: var(--sc-space-3) 0 0; border: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .sr-ck-dispatch, body.sr-charte.woocommerce-checkout .sr-ck3__recap .sr-ck-dispatch :is(th, td, p, span) { display: block; margin: 0; padding: 0 !important; border: 0; background: none; font: 400 12px/1.45 var(--q-texte) !important; color: var(--q-brun-d) !important; text-align: left !important; white-space: normal !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .sr-ck-dispatch svg { display: none; }
/* Réassurance à plat sous le récapitulatif */
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--sc-space-5); margin: var(--sc-space-4) 0 0; padding: 0; border: 0; list-style: none; }
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust li { display: block; margin: 0; padding: var(--sc-space-3) 0 !important; border: 0 !important; border-top: 1px solid var(--q-trait) !important; border-radius: 0; background: none !important; font: 400 12px/1.45 var(--q-texte); color: var(--q-brun-d); }
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust li > svg, body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust li > .sr-icon { display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust li strong { display: block; font: 600 14px/1.4 var(--q-texte); color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-help { margin: var(--sc-space-3) 0 0; font: 400 12px/1.45 var(--q-texte); color: var(--q-brun-m); }
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-help a { font-weight: 700; color: var(--q-brun) !important; text-decoration: none; }
/* Récapitulatif repliable (mobile) */
body.sr-charte.woocommerce-checkout .sr-ck-summary { display: none; }
@media (max-width: 1020px) {
	body.sr-charte.woocommerce-checkout .sr-ck3 { grid-template-columns: minmax(0, 1fr); }
	body.sr-charte.woocommerce-checkout .sr-ck3 > *, body.sr-charte.woocommerce-checkout .sr-ck3__gauche, body.sr-charte.woocommerce-checkout .sr-ck3__droite { grid-column: 1 !important; grid-row: auto !important; }
	/* La livraison se choisit dans le récapitulatif : il passe entre les coordonnées et le paiement. */
	body.sr-charte.woocommerce-checkout .sr-ck3__gauche { display: contents; }
	body.sr-charte.woocommerce-checkout .sr-ck3__gauche > * { order: 1; margin-bottom: var(--sc-space-5); }
	body.sr-charte.woocommerce-checkout .sr-ck3__droite { order: 2; position: static; margin-bottom: var(--sc-space-5); }
	body.sr-charte.woocommerce-checkout .sr-ck3__gauche > .sr-ck3__paiement { order: 3; }
	body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust, body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-help { display: none; }
	body.sr-charte.woocommerce-checkout .sr-ck-summary { display: block; grid-column: 1 / -1; }
}
@media (max-width: 760px) {
	body.sr-charte.woocommerce-checkout .woocommerce > .sr-ruban { margin-bottom: var(--sc-space-5); }
	body.sr-charte.woocommerce-checkout .sr-ck3 { padding-bottom: var(--sc-space-6); }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-3); margin-bottom: var(--sc-space-5); }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut > .sr-ck-freeship { margin-bottom: var(--sc-space-3) !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut > .sr-ck-summary { margin-bottom: var(--sc-space-3) !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut > :is(.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle) { grid-column: 1; }
	body.sr-charte.woocommerce-checkout .sr-ck3__recap { padding: var(--sc-space-4) !important; }
}
/* Corrections après capture : numéro « 2 » du paiement, ligne de livraison pleine largeur, ordre mobile, pictos des accès. */
body.sr-charte.woocommerce-checkout .sr-ck3 .sr-ck3__paiement > .sr-ck3__h::before { content: "2"; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap table.shop_table tr.woocommerce-shipping-totals { display: grid; gap: var(--sc-space-3); }
body.sr-charte.woocommerce-checkout .sr-ck3__recap table.shop_table tr.woocommerce-shipping-totals td { width: 100%; text-align: left; white-space: normal; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .woocommerce-shipping-methods li > label { min-width: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut :is(.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle) .woocommerce-info::before { display: block !important; top: auto !important; left: auto !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut .woocommerce-form-coupon-toggle .woocommerce-info::before { display: grid !important; }
@media (max-width: 1020px) {
	body.sr-charte.woocommerce-checkout .sr-ck3 > .sr-ck3__haut { order: -1; }
	body.sr-charte.woocommerce-checkout .sr-ck3 > .woocommerce-notices-wrapper { order: 0; }
}
body.sr-charte.woocommerce-checkout .sr-ck3 #customer_details { grid-row: auto !important; grid-column: auto !important; }
body.sr-checkout-minimal.woocommerce-checkout .sr-checkout-head .sr-checkout-head__cart { color: var(--q-brun, #2a1a12); }
body.sr-charte.woocommerce-checkout .sr-ck3__recap table.shop_table .woocommerce-shipping-methods li > label, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li > label { display: flex !important; justify-content: space-between; align-items: baseline; gap: var(--sc-space-3); margin: 0 !important; font: 600 14px/1.35 var(--q-texte) !important; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap table.shop_table .woocommerce-shipping-methods li > input, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li > input { margin: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-terms-and-conditions-checkbox-text { display: inline !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-terms-and-conditions-wrapper label.checkbox { display: flex !important; align-items: center; margin: 0; font: 600 14px/1.3 var(--q-texte) !important; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap table.shop_table .woocommerce-shipping-methods li { column-gap: var(--sc-space-3); }
/* =====================================================================
 * Page commande alignée sur la version allégée du panier et de la confirmation (7 octobre 2026) :
 * bloc vert de livraison offerte, carte « votre commande » à en-tête, produits sur tuiles blanches avec pastille de famille.
 * ===================================================================== */
body.sr-charte.woocommerce-checkout .sr-ck3__haut > .sr-cart3-offert { margin: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap { padding: 0 var(--sc-space-5) var(--sc-space-5) !important; border: 0 !important; border-radius: var(--sc-r-lg) !important; box-shadow: 0 0 0 1px var(--q-filet) !important; overflow: hidden; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap-haut { margin: 0 -24px var(--sc-space-2); padding: var(--sc-space-5) var(--sc-space-5) var(--sc-space-4); border-bottom: 1px solid var(--q-trait); }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .sr-ck3__recap-haut > #order_review_heading { padding: 0 !important; border: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap-haut p { margin: var(--sc-space-1) 0 0; font: 600 14px/1.4 var(--q-texte); color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck-item__media { border: 0 !important; border-radius: var(--sc-r-sm) !important; box-shadow: 0 0 0 1px var(--q-filet); }
body.sr-charte.woocommerce-checkout .sr-ck-item__media img { padding: var(--sc-space-2); box-sizing: border-box; border-radius: var(--sc-r-sm) !important; }
body.sr-charte.woocommerce-checkout .sr-ck-item__label { display: flex; flex-direction: column; align-items: flex-start; gap: var(--sc-space-1); min-width: 0; }
body.sr-charte.woocommerce-checkout .sr-ck-item__label .sr-fam { order: 2; }
body.sr-charte.woocommerce-checkout .sr-ck-item__deg { order: 3; margin-top: 0; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table tr.order-total td strong, body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table tr.order-total td strong .amount { font-size: 40px !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust li strong { font: 800 14px/1.1 var(--q-display); letter-spacing: -0.03em; text-transform: lowercase; margin-bottom: var(--sc-space-1); }
/* Options de livraison : bouton radio dans sa colonne (mobile compris) */
body.sr-charte.woocommerce-checkout #order_review .woocommerce-shipping-methods li, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li { display: grid !important; grid-template-columns: 22px minmax(0, 1fr) !important; column-gap: var(--sc-space-3) !important; align-items: center; }
body.sr-charte.woocommerce-checkout #order_review .woocommerce-shipping-methods li > input, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li > input { position: static !important; grid-column: 1; margin: 0 !important; }
body.sr-charte.woocommerce-checkout #order_review .woocommerce-shipping-methods li > label, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li > label { grid-column: 2; padding: 0 !important; }
body.sr-charte.woocommerce-checkout #order_review .woocommerce-shipping-methods li:only-child, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li:only-child { grid-template-columns: minmax(0, 1fr) !important; }
body.sr-charte.woocommerce-checkout #order_review .woocommerce-shipping-methods li:only-child > label, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li:only-child > label { grid-column: 1; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .sr-ck3__recap-haut > #order_review_heading { text-transform: lowercase !important; color: var(--q-brun) !important; }
body.sr-charte.woocommerce-checkout #order_review tr.woocommerce-shipping-totals > td, body.sr-charte.woocommerce-checkout #order_review .woocommerce-shipping-methods { width: 100% !important; max-width: none !important; box-sizing: border-box; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap table.shop_table tr.woocommerce-shipping-totals { grid-template-columns: minmax(0, 1fr) !important; }
/* =====================================================================
 * Corrections du 8 octobre 2026 (revue de la page commande) :
 * case CGV cochée visible, moyens de paiement alignés, plus de fond crème dans le bloc de carte,
 * rythme d'espacement 12 / 16 / 24, une colonne sous 1100 px (tablette).
 * ===================================================================== */
/* La case des CGV portait un identifiant : son état coché n'était jamais dessiné (elle semblait impossible à cocher). */
body.sr-charte.woocommerce-checkout .sr-ck3 input[type="checkbox"]#terms:checked, body.sr-charte.woocommerce-checkout .sr-ck3 input[type="checkbox"].input-checkbox:checked { border-color: var(--sc-ink); background: var(--sc-green-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a1a12' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/15px no-repeat; }
body.sr-charte.woocommerce-checkout .sr-ck3 .woocommerce-terms-and-conditions-wrapper label.checkbox { gap: 0; line-height: 1.4 !important; cursor: pointer; }
/* Moyens de paiement : radio, libellé et logos sur une ligne centrée ; logos calés à droite */
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods { gap: var(--sc-space-3); }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li { grid-template-columns: 20px minmax(0, 1fr) !important; column-gap: var(--sc-space-4) !important; row-gap: var(--sc-space-4) !important; align-items: center !important; min-height: 60px; padding: var(--sc-space-4) var(--sc-space-4) !important; box-sizing: border-box; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > input { grid-column: 1; grid-row: 1; align-self: center; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label { grid-column: 2; grid-row: 1; display: flex !important; flex-wrap: nowrap !important; justify-content: space-between !important; align-items: center !important; gap: var(--sc-space-3) !important; min-height: 24px; margin: 0 !important; line-height: 1.2 !important; cursor: pointer; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label > span { display: inline-flex !important; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: var(--sc-space-1); margin: 0 0 0 auto !important; line-height: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label img { display: block; width: auto !important; height: 22px !important; max-height: 22px !important; margin: 0 !important; float: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > .payment_box { grid-column: 1 / -1; grid-row: 2; margin: 0 !important; padding: var(--sc-space-4) 0 0 !important; border-top: 1px solid var(--q-trait); border-radius: 0 !important; background: transparent !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > .payment_box > p:first-child { margin: 0 0 var(--sc-space-3); font-size: 14px; color: var(--q-brun-d); }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > .payment_box p:last-child { margin-bottom: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li:not(:has(> input:checked)) > .payment_box { display: none !important; }
/* Fin de parcours : texte, CGV et bouton au même rythme */
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .place-order { gap: var(--sc-space-4); margin-top: var(--sc-space-5) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 .sr-ck3__paiement { margin-top: var(--sc-space-2); }
/* Récapitulatif : rythme interne */
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table tr.order-total { padding-bottom: var(--sc-space-3); border-bottom: 1px solid var(--q-trait) !important; }
body.sr-charte.woocommerce-checkout :is(.sr-ck3__recap, .sr-ck-summary__body) table.shop_table tr:last-child { border-bottom: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__recap .sr-ck-dispatch, body.sr-charte.woocommerce-checkout .sr-ck3__recap tr:has(.sr-ck-dispatch) { padding-top: var(--sc-space-3) !important; border: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust { margin-top: var(--sc-space-5); }
/* Bloc vert dans une colonne étroite */
body.sr-charte.woocommerce-checkout .sr-cart3-offert__t { font-size: clamp(32px, 3.2vw, 48px); }
/* Tablette : une seule colonne sous 1100 px (le récapitulatif ne recouvre plus le formulaire) */
@media (max-width: 1100px) {
	body.sr-charte.woocommerce-checkout .sr-ck3 { grid-template-columns: minmax(0, 1fr) !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3 > *, body.sr-charte.woocommerce-checkout .sr-ck3__gauche, body.sr-charte.woocommerce-checkout .sr-ck3__droite { grid-column: 1 !important; grid-row: auto !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3 > .sr-ck3__haut { order: -1; }
	body.sr-charte.woocommerce-checkout .sr-ck3__gauche { display: contents; }
	body.sr-charte.woocommerce-checkout .sr-ck3__gauche > * { order: 1; margin-bottom: var(--sc-space-5); }
	body.sr-charte.woocommerce-checkout .sr-ck3__droite { order: 2; position: static; margin-bottom: var(--sc-space-5); }
	body.sr-charte.woocommerce-checkout .sr-ck3__gauche > .sr-ck3__paiement { order: 3; }
	body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-trust, body.sr-charte.woocommerce-checkout .sr-ck3__droite .sr-ck-help { display: none; }
	body.sr-charte.woocommerce-checkout .sr-ck-summary { display: block; }
	body.sr-charte.woocommerce-checkout .sr-page-content { padding-inline: clamp(var(--sc-space-4), 4vw, var(--sc-space-7)); }
}
@media (max-width: 760px) {
	body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li { padding: var(--sc-space-4) var(--sc-space-4) !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label > span { max-width: 55%; }
	body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label img { height: 18px !important; }
}
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label { width: 100% !important; justify-self: stretch !important; box-sizing: border-box; }
@media (max-width: 760px) {
	body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label { flex-wrap: wrap !important; row-gap: var(--sc-space-2) !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li > label > span { flex: 1 0 100%; max-width: none; justify-content: flex-start; margin: 0 !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li.payment_method_fkwcs_stripe_google_pay > label, body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li.payment_method_fkwcs_stripe_apple_pay > label { flex-wrap: nowrap !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li.payment_method_fkwcs_stripe_google_pay > label > span, body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li.payment_method_fkwcs_stripe_apple_pay > label > span { flex: 0 0 auto; margin-left: auto !important; justify-content: flex-end; }
}
/* Le « r » qui dépassait : la carte était collante en plus de sa colonne et glissait sur la réassurance. Une seule chose colle : la colonne entière. */
body.sr-charte.woocommerce-checkout .sr-ck3__droite #order_review { position: static !important; top: auto !important; }
@media (max-height: 860px) { body.sr-charte.woocommerce-checkout .sr-ck3__droite { position: static !important; } }
/* Lignes Google Pay / Apple Pay trop hautes : le « clearfix » de WooCommerce créait une rangée vide dans la grille. */
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li::before, body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li::after, body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods::before, body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods::after { content: none !important; display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment ul.payment_methods > li { min-height: 56px; }
/* Texte de confidentialité, case des CGV, bouton : 16 px entre chaque, case alignée sur sa ligne */
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-terms-and-conditions-wrapper { display: grid; gap: var(--sc-space-4); }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-terms-and-conditions-wrapper > * { margin: 0 !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-terms-and-conditions-wrapper label.checkbox { align-items: center !important; min-height: 22px; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-terms-and-conditions-wrapper input#terms { margin: 0 var(--sc-space-3) 0 0 !important; align-self: center; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text { line-height: 22px !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .place-order > #place_order { margin-top: var(--sc-space-2) !important; }
/* Formulaires « Déjà client ? » et « Code promo ? » (revue du 8 octobre) : même champs que les coordonnées, rythme 16 px. */
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--sc-space-4) !important; padding: var(--sc-space-5) !important; border-radius: var(--sc-r-md) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > * { grid-column: 1 / -1; margin: 0 !important; padding: 0 !important; float: none !important; width: auto !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > p:first-child { font: 400 14px/1.55 var(--q-texte); color: var(--q-brun-d); }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > .form-row-first { grid-column: 1; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > .form-row-last { grid-column: 2; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > .clear { display: none; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form :is(.woocommerce-form-login, .checkout_coupon) label:not(.woocommerce-form__label-for-checkbox), body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .form-row > label:not(.woocommerce-form__label-for-checkbox) { display: block; margin: 0 0 var(--sc-space-2); font: 600 14px/1.3 var(--q-texte); color: var(--q-brun); }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .required { color: var(--q-rouge); text-decoration: none; border: 0; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form :is(input.input-text, input[type="text"], input[type="password"], input[type="email"]) { box-sizing: border-box; width: 100%; }

body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .password-input { display: block; position: relative; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .show-password-input { top: 50% !important; right: 14px !important; transform: translateY(-50%); }
/* Ligne « Se souvenir de moi » + bouton, puis « Mot de passe perdu ? » */
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > .form-row:not(.form-row-first):not(.form-row-last) { display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sc-space-3) var(--sc-space-4); padding-top: var(--sc-space-1) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .woocommerce-form-login__rememberme { display: inline-flex !important; align-items: center; gap: var(--sc-space-3); margin: 0 !important; font: 600 14px/1.3 var(--q-texte) !important; color: var(--q-brun); cursor: pointer; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .woocommerce-form-login__rememberme input[type="checkbox"] { -webkit-appearance: none; appearance: none; flex: 0 0 24px; width: 24px; height: 24px; margin: 0 !important; border: 2px solid var(--sc-ink); border-radius: var(--sc-r-xs); background: var(--sc-surface); cursor: pointer; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .woocommerce-form-login__rememberme input[type="checkbox"]:checked { border-color: var(--sc-ink); background: var(--sc-green-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a1a12' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/15px no-repeat; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form :is(.woocommerce-form-login__submit, .checkout_coupon button.button) { display: inline-flex !important; align-items: center; justify-content: center; margin: 0 !important; border: 0 !important; background: var(--q-brun) !important; color: var(--sc-canvas, #fffcf5) !important; float: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form :is(.woocommerce-form-login__submit, .checkout_coupon button.button):hover { background: var(--q-brun-d) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .lost_password { margin-top: -4px !important; font: 400 14px/1.4 var(--q-texte); }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .lost_password a { color: var(--q-brun) !important; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
/* Code promo : champ + bouton sur une ligne */
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon { display: flex !important; flex-wrap: wrap; align-items: flex-end; gap: var(--sc-space-3) !important; padding: var(--sc-space-5) !important; border-radius: var(--sc-r-md) !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon > p:not(.form-row) { flex: 1 0 100%; margin: 0 !important; font: 400 14px/1.55 var(--q-texte); color: var(--q-brun-d); }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon > .form-row-first { flex: 1 1 220px; margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon > .form-row-last { flex: 0 0 auto; margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon > .clear { display: none; }
@media (max-width: 760px) {
	body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login { grid-template-columns: minmax(0, 1fr); padding: var(--sc-space-4) !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > :is(.form-row-first, .form-row-last) { grid-column: 1; }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .woocommerce-form-login__submit { width: 100%; }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon { padding: var(--sc-space-4) !important; }
	body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon > .form-row-last, body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon button.button { flex: 1 0 100%; width: 100%; }
}
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login > .form-row:not(.form-row-first):not(.form-row-last) { justify-content: space-between !important; text-align: left !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.woocommerce-form-login input[type="hidden"] { display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .woocommerce-form-login__rememberme { order: 1; margin-right: auto !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form.woocommerce-form-login .woocommerce-form-login__submit { order: 2; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form.checkout_coupon { width: 100% !important; box-sizing: border-box; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut form :is(.form-row, .woocommerce-form-login, .checkout_coupon)::before, body.sr-charte.woocommerce-checkout .sr-ck3__haut form :is(.form-row)::after, body.sr-charte.woocommerce-checkout .sr-ck3__haut > form::before, body.sr-charte.woocommerce-checkout .sr-ck3__haut > form::after { content: none !important; display: none !important; }
body.sr-charte.woocommerce-checkout .sr-ck3__haut > form:is(.checkout_coupon, .woocommerce-form-login) { max-width: none !important; }

/* Récapitulatif repliable du haut (une colonne, sous 1100 px) : une seule définition.
   Le tableau copié reprend les règles du récapitulatif principal (:is(.sr-ck3__recap, .sr-ck-summary__body)). */
@media (max-width: 1100px) {
	body.sr-charte.woocommerce-checkout .sr-ck-summary { display: block; margin: 0 0 var(--sc-space-3) !important; border: 1px solid var(--q-filet); border-radius: var(--sc-r-md); background: #fff; overflow: hidden; }
	body.sr-charte.woocommerce-checkout .sr-ck-summary > summary { display: flex; justify-content: space-between; align-items: center; gap: var(--sc-space-3); min-height: 52px; padding: 0 var(--sc-space-4); list-style: none; cursor: pointer; font: 700 14px/1.2 var(--q-texte); color: var(--q-brun); }
	body.sr-charte.woocommerce-checkout .sr-ck-summary > summary::-webkit-details-marker { display: none; }
	body.sr-charte.woocommerce-checkout .sr-ck-summary__label { display: inline-flex; align-items: center; gap: var(--sc-space-3); color: var(--sc-red, #b21c2d); }
	body.sr-charte.woocommerce-checkout .sr-ck-summary__label::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .2s; }
	body.sr-charte.woocommerce-checkout .sr-ck-summary[open] .sr-ck-summary__label::after { transform: translateY(2px) rotate(-135deg); }
	body.sr-charte.woocommerce-checkout .sr-ck-summary__total, body.sr-charte.woocommerce-checkout .sr-ck-summary__total .amount { font: 800 20px/1 var(--q-display) !important; letter-spacing: -0.04em; color: var(--q-brun); }
	body.sr-charte.woocommerce-checkout .sr-ck-summary__total .woocommerce-Price-currencySymbol { font: inherit !important; }
	body.sr-charte.woocommerce-checkout .sr-ck-summary__body { padding: var(--sc-space-4); border-top: 1px solid var(--q-filet); }
	body.sr-charte.woocommerce-checkout .sr-ck-summary__body tr.woocommerce-shipping-totals th { flex: 1 1 auto; min-width: 0; }
	body.sr-charte.woocommerce-checkout .sr-ck-summary__body tr.woocommerce-shipping-totals th small { display: block; margin-top: 3px; font: 400 14px/1.35 var(--q-texte); color: var(--q-brun-m); }
}
@media (prefers-reduced-motion: reduce) { body.sr-charte.woocommerce-checkout .sr-ck-summary__label::after { transition: none; } }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods { display: grid; gap: var(--sc-space-2); margin: 0 0 var(--sc-space-4) !important; padding: 0 !important; list-style: none; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li > label { display: block !important; }
body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li::before, body.sr-charte.woocommerce-checkout .sr-ck3 #payment .woocommerce-SavedPaymentMethods li::after { display: none !important; }
