/**
 * Fond général MRS.
 *
 * L'image conserve ses dimensions naturelles : elle est répétée et n'est
 * volontairement ni étirée ni redimensionnée.
 */
/* CTA final premium de la page d'accueil. */
body.home.page-id-752 .home-ms section.cta-final-ms {
	position: relative;
	isolation: isolate;
	display: flex !important;
	width: min(calc(100% - 48px), 1180px) !important;
	margin: 0 auto clamp(52px, 5vw, 76px) !important;
	padding: clamp(48px, 5vw, 68px) clamp(28px, 6vw, 84px) !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0 !important;
	overflow: hidden;
	border: 1px solid rgba(183, 134, 74, 0.42) !important;
	border-radius: 18px !important;
	background:
		radial-gradient(circle at 50% 0%, rgba(183, 134, 74, 0.09), transparent 42%),
		rgba(255, 253, 249, 0.9) !important;
	box-shadow: 0 18px 44px rgba(15, 21, 99, 0.08) !important;
	color: #0f1563 !important;
	text-align: center !important;
	box-sizing: border-box;
}

/* Totaux TTC et lecture des CGV — checkout/panier MRS uniquement. */
.mrs-cart-page .order-total .mrs-total-ttc,
.mrs-checkout-page .order-total .mrs-total-ttc {
	display: inline-block;
	margin-left: .28em;
	color: #76644f;
	font-family: Arial, sans-serif;
	font-size: .46em;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1;
	vertical-align: .2em;
}

.mrs-checkout-page .woocommerce-terms-and-conditions { display: none !important; }
body.mrs-cgv-modal-open { overflow: hidden; }
.mrs-checkout-terms-modal[hidden] { display: none !important; }
.mrs-checkout-terms-modal {
	position: fixed;
	inset: 0;
	z-index: 1000000;
	display: grid;
	place-items: center;
	padding: 24px;
}
.mrs-checkout-terms-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 18, 35, .42);
	-webkit-backdrop-filter: blur(7px);
	backdrop-filter: blur(7px);
}
.mrs-checkout-terms-dialog {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	width: min(860px, 100%);
	max-height: 84vh;
	overflow: hidden;
	border: 1px solid rgba(183, 134, 74, .48);
	border-radius: 14px;
	background: #fffaf3;
	box-shadow: 0 22px 60px rgba(15, 21, 99, .2), 0 5px 18px rgba(0, 0, 0, .12);
	outline: none;
}
.mrs-checkout-terms-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 22px 26px 18px;
	border-bottom: 1px solid rgba(183, 134, 74, .26);
}
.mrs-checkout-terms-header h2 {
	margin: 0;
	color: #0f1563;
	font-family: "Goudy Old Style", "goudy-old-style", Georgia, serif;
	font-size: clamp(26px, 3vw, 34px);
	line-height: 1.15;
}
.mrs-checkout-terms-close {
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 1px solid rgba(183, 134, 74, .55);
	border-radius: 50%;
	background: transparent;
	color: #0f1563;
	font-size: 27px;
	font-weight: 400;
	line-height: 1;
	cursor: pointer;
}
.mrs-checkout-terms-content {
	overflow-x: hidden;
	overflow-y: auto;
	padding: 22px 28px;
	color: #454c5e;
	font-size: 15px;
	line-height: 1.65;
	overscroll-behavior: contain;
}
.mrs-checkout-terms-content section { margin: 0 0 24px; }
.mrs-checkout-terms-content section:last-child { margin-bottom: 0; }
.mrs-checkout-terms-content h2 {
	margin: 0 0 8px;
	color: #0f1563;
	font-family: "Goudy Old Style", "goudy-old-style", Georgia, serif;
	font-size: 23px;
	line-height: 1.25;
}
.mrs-checkout-terms-content p { margin: 0 0 11px; }
.mrs-checkout-terms-footer {
	padding: 16px 26px 20px;
	border-top: 1px solid rgba(183, 134, 74, .26);
	text-align: center;
}
.mrs-checkout-terms-footer .mrs-checkout-terms-button {
	min-width: 150px;
	border: 1px solid #0f1563;
	border-radius: 7px;
	background: #0f1563;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
}

@media (max-width: 767px) {
	.mrs-checkout-terms-modal { padding: 10px; }
	.mrs-checkout-terms-dialog { width: 100%; max-height: calc(100dvh - 20px); border-radius: 11px; }
	.mrs-checkout-terms-header { padding: 17px 16px 14px; }
	.mrs-checkout-terms-header h2 { font-size: 25px; }
	.mrs-checkout-terms-close { width: 36px; height: 36px; }
	.mrs-checkout-terms-content { padding: 17px 18px; font-size: 14px; line-height: 1.58; }
	.mrs-checkout-terms-content h2 { font-size: 21px; }
	.mrs-checkout-terms-footer { padding: 13px 16px 15px; }
	.mrs-checkout-terms-footer .mrs-checkout-terms-button { width: 100%; min-height: 46px; }
}
body.home.page-id-752 .home-ms section.cta-final-ms::before {
	content: "";
	width: 54px;
	height: 1px;
	margin-bottom: 20px;
	background: #b7864a;
}

/* Checkout premium V1 : habillage strictement limité à la validation de commande. */
body.woocommerce-checkout:not(.woocommerce-order-received) { overflow-x:clip; }
body.mrs-order-success-page #main-content>.container { width:min(calc(100% - 36px),900px)!important; max-width:none!important; margin-inline:auto; padding:48px 0 76px!important; }
body.mrs-order-success-page #left-area { width:100%!important; padding:0!important; }
body.mrs-order-success-page #sidebar,body.mrs-order-success-page #main-content>.container::before,body.mrs-order-success-page h1.entry-title.main_title { display:none!important; }
.mrs-order-success,.mrs-order-success * { box-sizing:border-box; }
.mrs-order-success { width:100%; color:#35405c; text-align:center; }
.mrs-order-success-hero { margin:0 auto 26px; }
.mrs-order-success-check { position:relative; display:grid; width:88px; height:88px; margin:0 auto 22px; place-items:center; border:1px solid rgba(20,122,90,.28); border-radius:50%; background:#edf8f3; box-shadow:0 14px 34px rgba(20,122,90,.17); color:#147a5a; }
.mrs-order-success-check span { font-size:45px; font-weight:700; line-height:1; transform:translateY(-1px); }
.mrs-order-success-check i { position:absolute; width:2px; height:12px; border-radius:2px; background:#b7864a; opacity:.75; }
.mrs-order-success-check i:nth-of-type(1) { top:-15px; left:50%; }
.mrs-order-success-check i:nth-of-type(2) { top:8px; right:-10px; transform:rotate(58deg); }
.mrs-order-success-check i:nth-of-type(3) { bottom:3px; left:-8px; transform:rotate(58deg); }
.mrs-order-success-check i:nth-of-type(4) { top:7px; left:-9px; transform:rotate(-58deg); }
.mrs-order-success-hero h1 { margin:0 0 8px; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:clamp(40px,6vw,58px); font-weight:700; line-height:1.05; }
.mrs-order-success-hero p { margin:0; color:#59627a; font-size:17px; line-height:1.5; }
.mrs-order-success-email { display:grid; width:min(100%,680px); grid-template-columns:46px minmax(0,1fr); align-items:center; gap:15px; margin:0 auto 24px; padding:19px 22px; border:1px solid rgba(183,134,74,.34); border-radius:14px; background:#fff8ec; box-shadow:0 9px 25px rgba(8,25,74,.045); text-align:left; }
.mrs-order-success-email-icon { display:grid; width:46px; height:46px; place-items:center; border-radius:50%; background:rgba(183,134,74,.12); color:#9b642d; font-size:21px; }
.mrs-order-success-email strong { display:block; margin-bottom:2px; color:#9b642d; font-family:"goudy-old-style",Georgia,serif; font-size:21px; }
.mrs-order-success-email p { margin:0; color:#0f1563; font-size:13px; line-height:1.45; }
.mrs-order-success-email b { display:block; margin-top:3px; color:#0f1563; font-size:13px; overflow-wrap:anywhere; }
.mrs-order-success-details { width:min(100%,680px); margin:0 auto; padding:26px 28px; border:1px solid rgba(8,25,74,.1); border-radius:17px; background:rgba(255,253,249,.97); box-shadow:0 15px 38px rgba(8,25,74,.075); text-align:left; }
.mrs-order-success-details-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:18px; }
.mrs-order-success-details-heading h2 { margin:0; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:28px; line-height:1.1; }
.mrs-order-success-paid { display:inline-flex; min-height:30px; align-items:center; gap:5px; padding:5px 11px; border:1px solid rgba(20,122,90,.2); border-radius:999px; background:#edf8f3; color:#147a5a; font-size:12px; font-weight:800; white-space:nowrap; }
.mrs-order-success-details dl { margin:0; }
.mrs-order-success-details dl>div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; padding:10px 0; border-bottom:1px solid rgba(8,25,74,.075); }
.mrs-order-success-details dt,.mrs-order-success-details dd { margin:0; font-size:13px; line-height:1.4; }
.mrs-order-success-details dt { color:#687087; }
.mrs-order-success-details dd { color:#0f1563; font-weight:700; text-align:right; }
.mrs-order-success-details .mrs-order-success-total { margin-top:4px; padding-top:14px; border-top:1px solid rgba(183,134,74,.38); border-bottom:0; }
.mrs-order-success-total dt,.mrs-order-success-total dd { color:#0f1563; font-size:17px; font-weight:800; }
.mrs-order-success-next-step { margin:18px 0 0; padding:14px 16px; border-radius:10px; background:#f7f3eb; color:#59627a; font-size:12px; line-height:1.55; text-align:center; }
.mrs-order-success-footer { margin:32px auto 0; }
.mrs-order-success-footer h2 { margin:0 0 4px; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:32px; line-height:1.1; }
.mrs-order-success-footer>strong { display:block; color:#9b642d; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.mrs-order-success-footer>p { margin:8px auto 20px; color:#687087; font-size:13px; }
.mrs-order-success-contact { display:inline-flex; min-width:210px; min-height:52px; align-items:center; justify-content:center; padding:13px 24px; border:2px solid #0f1563; border-radius:8px; background:#0f1563; color:#fff!important; font-size:13px; font-weight:800; letter-spacing:.05em; text-decoration:none; transition:background-color 180ms ease,color 180ms ease; }
.mrs-order-success-contact:hover,.mrs-order-success-contact:focus-visible { background:transparent; color:#0f1563!important; outline:0; }
.mrs-order-success-contact:focus-visible { box-shadow:0 0 0 4px rgba(183,134,74,.28); }
.mrs-order-success-home { display:block; width:max-content; margin:13px auto 0; color:#687087!important; font-size:12px; text-underline-offset:3px; }
@media (max-width:600px) {
	body.mrs-order-success-page #main-content>.container { width:min(calc(100% - 24px),540px)!important; padding:30px 0 52px!important; }
	.mrs-order-success-check { width:78px; height:78px; margin-bottom:18px; }
	.mrs-order-success-check span { font-size:40px; }
	.mrs-order-success-hero { margin-bottom:21px; }
	.mrs-order-success-hero h1 { font-size:39px; }
	.mrs-order-success-hero p { font-size:15px; }
	.mrs-order-success-email { grid-template-columns:40px minmax(0,1fr); gap:12px; padding:16px; border-radius:12px; }
	.mrs-order-success-email-icon { width:40px; height:40px; font-size:18px; }
	.mrs-order-success-details { padding:21px 18px; border-radius:14px; }
	.mrs-order-success-details-heading { align-items:flex-start; margin-bottom:15px; }
	.mrs-order-success-details-heading h2 { font-size:25px; }
	.mrs-order-success-details dl>div { gap:12px; padding:9px 0; }
	.mrs-order-success-details dt,.mrs-order-success-details dd { font-size:12px; }
	.mrs-order-success-total dt,.mrs-order-success-total dd { font-size:16px; }
	.mrs-order-success-footer { margin-top:27px; }
	.mrs-order-success-footer h2 { font-size:29px; }
	.mrs-order-success-contact { width:100%; }
}
@media (max-width:360px) {
	body.mrs-order-success-page #main-content>.container { width:calc(100% - 18px)!important; padding-top:24px!important; }
	.mrs-order-success-email { grid-template-columns:1fr; justify-items:center; text-align:center; }
	.mrs-order-success-details-heading { display:grid; }
	.mrs-order-success-paid { width:max-content; }
}
body.woocommerce-checkout:not(.woocommerce-order-received) #main-content>.container { width:min(calc(100% - 48px),1280px)!important; max-width:none!important; margin-inline:auto; padding:42px 0 76px!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) #left-area { width:100%!important; padding:0!important; }
body.woocommerce-checkout:not(.woocommerce-order-received) h1.entry-title.main_title { display:none!important; }
.mrs-checkout-page,.mrs-checkout-page * { box-sizing:border-box; }
.mrs-checkout-hero { margin:0 auto 34px; text-align:center; }
.mrs-checkout-kicker { margin:0 0 7px; color:#9b642d; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.mrs-checkout-hero h1 { margin:0; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:clamp(40px,5vw,58px); font-weight:400; line-height:1.05; }
.mrs-checkout-hero p:last-child { margin:0; color:#566079; font-size:15px; }
.mrs-checkout-page>.woocommerce { max-width:none; }
.mrs-checkout-page .woocommerce-form-coupon-toggle,.mrs-checkout-page form.checkout_coupon { display:none!important; }
.mrs-checkout-page form.checkout { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,390px); grid-template-areas:"customer order"; gap:0 34px; align-items:start; }
.mrs-checkout-page #customer_details { grid-area:customer; min-width:0; }
.mrs-checkout-order-panel { grid-area:order; width:100%; max-width:390px; min-width:0; justify-self:center; }
.mrs-checkout-page #customer_details>.col-1 { float:none!important; width:100%!important; }
.mrs-checkout-page #customer_details>.col-2 { display:none!important; }
.mrs-checkout-page #order_review_heading { position:static; margin:0; padding:27px 28px 0; border:1px solid rgba(8,25,74,.1); border-bottom:0; border-radius:18px 18px 0 0; background:rgba(255,253,249,.97); color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:34px; font-weight:700; }
.mrs-checkout-page #order_review_heading::after { content:"Vérifiez vos plaques avant de commander"; display:block; margin-top:5px; color:#6a7288; font-family:Arial,sans-serif; font-size:12px; font-weight:400; }
.mrs-checkout-page #order_review { position:static; min-width:0; padding:24px 28px 27px; border:1px solid rgba(8,25,74,.1); border-top:0; border-radius:0 0 18px 18px; background:rgba(255,253,249,.97); box-shadow:0 16px 42px rgba(8,25,74,.08); }
.mrs-checkout-page .woocommerce-billing-fields,.mrs-checkout-receipt,.mrs-delivery-address,.mrs-checkout-coupon,.mrs-checkout-payment-section { margin:0 0 18px; padding:26px; border:1px solid rgba(8,25,74,.1); border-radius:16px; background:rgba(255,253,249,.97); box-shadow:0 11px 30px rgba(8,25,74,.055); }
.mrs-checkout-page .woocommerce-billing-fields { margin-bottom:46px; }
.mrs-checkout-page .woocommerce-billing-fields>.mrs-checkout-receipt { margin-top:24px; }
.mrs-checkout-page .woocommerce-billing-fields>h3 { display:none; }
.mrs-checkout-section-heading { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.mrs-checkout-section-heading>span { display:grid; flex:0 0 30px; width:30px; height:30px; place-items:center; border:1px solid rgba(183,134,74,.54); border-radius:50%; background:#fffaf2; color:#9b642d; font-size:12px; font-weight:800; }
.mrs-checkout-section-heading p { margin:0; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:25px; font-weight:700; line-height:1.1; }
.mrs-checkout-section-heading small { display:block; margin-top:3px; color:#72798d; font-size:11px; line-height:1.35; }
.mrs-checkout-page .woocommerce-billing-fields__field-wrapper,.mrs-delivery-fields { display:grid; grid-template-columns:1fr 1fr; gap:15px 14px; }
.mrs-checkout-page .form-row { float:none!important; width:auto!important; margin:0!important; padding:0!important; }
.mrs-checkout-page .form-row-wide { grid-column:1/-1; }
.mrs-delivery-fields #billing_address_1_field,.mrs-delivery-fields #billing_address_2_field,.mrs-delivery-fields #billing_country_field { grid-column:1/-1; }
.mrs-checkout-page .form-row label,.mrs-checkout-coupon-panel label { display:block; margin:0 0 6px; color:#35405c; font-size:12px; font-weight:700; line-height:1.35; }
.mrs-checkout-page #billing_address_2-description { display:block!important; margin:7px 0 0; padding:7px 10px; border:1px solid rgba(183,134,74,.28); border-radius:6px; background:#fffaf2!important; color:#9b642d!important; font-size:11px; font-weight:400; line-height:1.4; visibility:visible!important; opacity:1!important; box-shadow:none!important; }
.mrs-checkout-page #billing_address_2-description::before { border-color:#9b642d transparent transparent!important; }
.mrs-checkout-page .required { color:#9b5656; }
.mrs-checkout-page .input-text,.mrs-checkout-page select,.mrs-checkout-coupon-panel input { width:100%!important; min-height:50px; padding:0 14px!important; border:1px solid rgba(15,21,99,.19)!important; border-radius:8px!important; background:#fff!important; color:#0f1563!important; font-size:16px!important; box-shadow:none!important; transition:border-color 180ms ease,box-shadow 180ms ease; }
.mrs-checkout-page .input-text:focus,.mrs-checkout-page select:focus,.mrs-checkout-coupon-panel input:focus { border-color:#b7864a!important; outline:0; box-shadow:0 0 0 3px rgba(183,134,74,.14)!important; }
.mrs-checkout-page .woocommerce-invalid .input-text,.mrs-checkout-page .woocommerce-invalid select { border-color:#9b5656!important; box-shadow:0 0 0 3px rgba(155,86,86,.1)!important; }
.mrs-checkout-page .woocommerce-invalid label { color:#783b3b; }
.mrs-checkout-page .checkout-inline-error-message { margin:7px 0 0; color:#8c3434; font-size:12px; font-weight:600; line-height:1.4; }
.mrs-checkout-page .mrs-checkout-label-with-error { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 8px; }
.mrs-checkout-page .mrs-checkout-label-error { color:#8c3434; font-size:11px; font-weight:600; line-height:1.35; }
.mrs-checkout-page .mrs-checkout-error-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; clip-path:inset(50%)!important; border:0!important; white-space:nowrap!important; }
.mrs-checkout-page .woocommerce-error .mrs-checkout-global-field-error { display:none!important; }
.mrs-checkout-page #billing_address_1_field { position:relative; min-width:0; }
.mrs-address-suggestions { position:absolute; z-index:10020; top:100%; left:0; width:100%; max-height:min(320px,45vh); margin:4px 0 0; overflow-x:hidden; overflow-y:auto; border:1px solid rgba(15,21,99,.18); border-radius:8px; background:#fff; box-shadow:0 12px 28px rgba(15,21,99,.14); }
.mrs-address-suggestion { display:block; width:100%; padding:11px 14px; border:0; border-bottom:1px solid rgba(15,21,99,.08); background:#fff; color:#0f1563; font:inherit; font-size:14px; line-height:1.35; text-align:left; cursor:pointer; }
.mrs-address-suggestion:hover,.mrs-address-suggestion:focus-visible { background:#f8f1e4; outline:0; }
.mrs-address-geoapify-attribution { padding:7px 12px; color:#687087; font-size:10px; line-height:1.2; text-align:right; }
.mrs-address-geoapify-attribution a { color:inherit; text-decoration:underline; }
.mrs-checkout-page .woocommerce-error.mrs-checkout-only-field-errors { display:none!important; }
.mrs-checkout-page .mrs-country-locked select { background-color:#f6f4ef!important; cursor:default; }
.mrs-receipt-options { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.mrs-receipt-card { position:relative; display:grid; grid-template-columns:20px 1fr; gap:11px; min-width:0; min-height:150px; padding:17px; border:1px solid rgba(15,21,99,.16); border-radius:12px; background:#fff; cursor:pointer; transition:border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease; }
.mrs-receipt-card:hover { border-color:rgba(183,134,74,.72); transform:translateY(-1px); }
.mrs-receipt-card.is-selected { border-color:#0f1563; box-shadow:0 0 0 2px rgba(15,21,99,.08),0 8px 20px rgba(8,25,74,.06); }
.mrs-receipt-card input { position:absolute; width:1px; height:1px; opacity:0; }
.mrs-receipt-card:has(input:focus-visible) { outline:3px solid rgba(183,134,74,.4); outline-offset:3px; }
.mrs-receipt-radio { position:relative; width:18px; height:18px; margin-top:1px; border:2px solid rgba(15,21,99,.38); border-radius:50%; }
.mrs-receipt-card.is-selected .mrs-receipt-radio { border-color:#0f1563; }
.mrs-receipt-card.is-selected .mrs-receipt-radio::after { content:""; position:absolute; inset:3px; border-radius:50%; background:#0f1563; }
.mrs-receipt-copy { display:flex; min-width:0; flex-direction:column; }
.mrs-receipt-copy strong { color:#0f1563; font-size:15px; line-height:1.3; }
.mrs-receipt-copy b { margin:4px 0 8px; color:#9b642d; font-size:13px; }
.mrs-receipt-copy small { color:#626b81; font-size:11px; line-height:1.48; }
.mrs-delivery-address { overflow:hidden; animation:mrs-checkout-reveal 220ms ease both; }
.mrs-delivery-address[hidden] { display:none!important; }
@keyframes mrs-checkout-reveal { from { opacity:0; transform:translateY(-7px); } to { opacity:1; transform:none; } }
.mrs-checkout-coupon { padding-block:18px; }
.mrs-checkout-disclosure,.mrs-checkout-personalization-toggle { display:flex; width:100%; align-items:center; justify-content:space-between; padding:0; border:0; background:transparent; color:#9b642d; font-size:13px; font-weight:800; cursor:pointer; text-align:left; }
.mrs-checkout-disclosure span,.mrs-checkout-personalization-toggle span { font-size:20px; font-weight:400; }
.mrs-checkout-coupon-panel { padding-top:16px; }
.mrs-checkout-coupon-panel>div { display:grid; grid-template-columns:1fr auto; gap:9px; }
.mrs-checkout-coupon-panel button { min-height:50px; padding:0 20px; border:2px solid #0f1563; border-radius:8px; background:#0f1563; color:#fff; font-size:12px; font-weight:800; cursor:pointer; }
.mrs-checkout-coupon-panel button:hover,.mrs-checkout-coupon-panel button:focus-visible { background:transparent; color:#0f1563; }
.mrs-checkout-coupon-panel button:disabled { cursor:wait; opacity:.65; }
.mrs-coupon-feedback { min-height:18px; margin:7px 0 0; color:#147a5a; font-size:12px; }
.mrs-coupon-feedback.is-error { color:#8c3434; }
.mrs-checkout-page table.shop_table { display:block; margin:0!important; border:0!important; border-radius:0!important; background:transparent!important; }
.mrs-checkout-page table.shop_table thead { display:none; }
.mrs-checkout-page table.shop_table tbody,.mrs-checkout-page table.shop_table tfoot { display:block; }
.mrs-checkout-page table.shop_table tbody { margin-bottom:16px; }
.mrs-checkout-page table.shop_table tr.cart_item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 12px; margin-bottom:13px; padding:12px; border:1px solid rgba(8,25,74,.1); border-radius:13px; background:#fff; }
.mrs-checkout-page table.shop_table tr.cart_item:last-child { margin-bottom:0; }
.mrs-checkout-page table.shop_table tr.cart_item td { display:block; padding:0!important; border:0!important; }
.mrs-checkout-page td.product-name { min-width:0; }
.mrs-checkout-page td.product-total { align-self:end; justify-self:end; padding-top:2px!important; color:#0f1563; font-size:15px; font-weight:800; text-align:right!important; white-space:nowrap; }
.mrs-checkout-product { display:grid; width:100%; min-width:0; justify-content:center; align-items:center; }
.mrs-checkout-product-preview { width:100%; max-width:310px; margin:0 auto; padding:0; border:0; border-radius:0; background:transparent; }
.mrs-checkout-product-info { width:100%; margin-top:8px; padding:8px 2px 0; border:0; border-radius:0; background:transparent; }
.mrs-checkout-product h3 { grid-area:title; align-self:center; margin:0; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:20px; font-weight:700; line-height:1.15; }
.mrs-checkout-product h3>span { display:block; white-space:nowrap; }
.mrs-checkout-product-preview>.mrs-cart-plate-preview { width:100%; max-width:298px; margin:0 auto; }
.mrs-checkout-product .mrs-cart-plate-expand { display:none; }
.mrs-checkout-fixation-summary { display:none; grid-area:summary; }
.mrs-checkout-product-meta { display:flex; width:100%; min-width:0; align-items:baseline; justify-content:space-between; gap:14px; margin-top:8px; padding-top:8px; border-top:1px solid rgba(8,25,74,.08); }
.mrs-checkout-product-quantity { display:block; margin:0; color:#687087; font-size:11px; font-weight:600; line-height:1.3; }
.mrs-checkout-product-price { display:block; margin:0; color:#0f1563; font-size:15px; font-weight:800; line-height:1.3; text-align:right; white-space:nowrap; }
.mrs-checkout-page td.product-total:empty { display:none!important; }
.mrs-checkout-product .mrs-checkout-personalization-toggle { min-height:28px; justify-content:flex-start; gap:7px; margin:0; padding:3px 0; font-size:11px; letter-spacing:.04em; }
.mrs-checkout-product .mrs-checkout-personalization-toggle span { flex:0 0 auto; color:#b7864a; line-height:1; }
.mrs-checkout-personalization { padding-top:10px; }
.mrs-checkout-personalization>p { margin:0 0 8px; color:#697187; font-size:10px; }
.mrs-checkout-personalization-table { display:grid; gap:1px; color:#45516d; font-size:11px; }
.mrs-checkout-personalization-table>span { display:grid; grid-template-columns:38px 65px minmax(0,1fr); gap:7px; padding:5px 0; border-bottom:1px solid rgba(8,25,74,.07); }
.mrs-checkout-personalization-table .is-heading { color:#0f1563; font-size:9px; letter-spacing:.06em; text-transform:uppercase; }
.mrs-checkout-fixation { display:block; margin-top:8px; color:#9b642d; font-size:11px; }
.mrs-checkout-page dl.variation,.mrs-checkout-page .wc-item-meta { display:none!important; }
.mrs-checkout-page table.shop_table tfoot tr { display:grid; min-height:34px; grid-template-columns:1fr auto; align-items:center; }
.mrs-checkout-page table.shop_table tfoot th,.mrs-checkout-page table.shop_table tfoot td { display:block; padding:8px 0!important; border:0!important; color:#59627a; font-size:12px; line-height:1.35; text-align:right; }
.mrs-checkout-page table.shop_table tfoot th { text-align:left; }
.mrs-checkout-page table.shop_table tfoot .cart-subtotal { border-top:1px solid rgba(8,25,74,.1); }
.mrs-checkout-page table.shop_table tfoot .fee td,.mrs-checkout-page table.shop_table tfoot .fee th { color:#0f1563; }
.mrs-checkout-page table.shop_table tfoot tr.cart-discount { align-items:start; }
.mrs-checkout-page table.shop_table tfoot tr.cart-discount td { min-width:0; text-align:right; }
.mrs-checkout-page table.shop_table tfoot tr.cart-discount .woocommerce-remove-coupon { display:block; width:max-content; margin:4px 0 0; color:#9b642d; font-size:10px; font-weight:600; line-height:1.4; text-decoration:none; transition:color 160ms ease; }
.mrs-checkout-page table.shop_table tfoot tr.cart-discount .woocommerce-remove-coupon:hover,.mrs-checkout-page table.shop_table tfoot tr.cart-discount .woocommerce-remove-coupon:focus-visible { color:#0f1563; text-decoration:none; }
.mrs-checkout-page table.shop_table tfoot .order-total { min-height:45px; margin-top:4px; padding-top:7px; border-top:1px solid rgba(183,134,74,.34); }
.mrs-checkout-page table.shop_table tfoot .order-total th { color:#0f1563; font-size:13px; }
.mrs-checkout-page table.shop_table tfoot .order-total td { color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:25px; font-weight:700; }
.mrs-payment-mount #payment { margin:0!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; }
.mrs-payment-mount #payment ul.payment_methods { margin:0!important; padding:0!important; border:0!important; }
.mrs-payment-mount #payment ul.payment_methods li.wc_payment_method { margin:0 0 10px!important; padding:13px!important; border:1px solid rgba(15,21,99,.14); border-radius:11px; background:#fff; transition:border-color 160ms ease,background-color 160ms ease,box-shadow 160ms ease; }
.mrs-payment-mount #payment ul.payment_methods li.wc_payment_method:has(>input:checked) { border-color:rgba(15,21,99,.68); background:#f7f7fc; box-shadow:0 0 0 2px rgba(15,21,99,.06); }
.mrs-payment-mount #payment ul.payment_methods li.wc_payment_method>input.input-radio { width:18px!important; height:18px!important; margin:2px 9px 0 0!important; accent-color:#0f1563; vertical-align:top; }
.mrs-payment-mount #payment ul.payment_methods li.wc_payment_method>label { display:inline-flex; min-width:0; max-width:calc(100% - 32px); align-items:center; gap:10px; color:#0f1563; font-size:13px; font-weight:800; vertical-align:top; white-space:nowrap; cursor:pointer; }
.mrs-payment-card-icon { display:block; flex:0 0 auto; width:28px; height:20px; margin:0 0 0 auto; fill:none; stroke:#536079; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.mrs-payment-mount #payment .payment_box { border-radius:9px!important; background:#f7f3eb!important; color:#566079!important; font-size:12px; }
.mrs-payment-mount #payment li.payment_method_stripe_applepay .payment_box,
.mrs-payment-mount #payment li.payment_method_stripe_googlepay .payment_box { display:none!important; width:0!important; height:0!important; margin:0!important; padding:0!important; border:0!important; overflow:hidden!important; }
.mrs-payment-mount #payment .place-order { margin:14px 0 0!important; padding:14px 0 0!important; border-top:1px solid rgba(8,25,74,.1); }
.mrs-payment-mount #place_order { width:100%!important; min-height:56px; margin:0!important; padding:14px 20px!important; border:2px solid #0f1563!important; border-radius:8px!important; background:#0f1563!important; color:#fff!important; font-size:14px!important; font-weight:800!important; letter-spacing:.07em; text-transform:uppercase; transition:background-color 180ms ease,color 180ms ease,box-shadow 180ms ease; }
.mrs-payment-mount #place_order:hover,.mrs-payment-mount #place_order:focus-visible { background:transparent!important; color:#0f1563!important; box-shadow:none!important; }
.mrs-payment-mount #place_order:disabled,.mrs-payment-mount #place_order.processing { cursor:wait; opacity:.62; pointer-events:none; }
.mrs-checkout-page .woocommerce-privacy-policy-text { display:none!important; }
.mrs-checkout-page .woocommerce-error,.mrs-checkout-page .woocommerce-message,.mrs-checkout-page .woocommerce-info { margin:0 0 18px!important; padding:14px 17px!important; border:1px solid rgba(15,21,99,.12)!important; border-left:3px solid #0f1563!important; border-radius:10px; background:#fff!important; color:#35405c!important; font-size:13px!important; box-shadow:0 8px 22px rgba(8,25,74,.05); }
.mrs-checkout-page .woocommerce-error { border-left-color:#8c3434!important; }
.mrs-checkout-page .woocommerce-message { border-left-color:#147a5a!important; }
.mrs-checkout-lightbox .mrs-cart-lightbox-content { max-width:min(900px,90vw); }
@media (min-width:981px) {
	.mrs-checkout-page form.checkout { grid-template-columns:minmax(0,1fr) 370px; gap:0 30px; }
	.mrs-checkout-order-panel { position:sticky; top:116px; width:370px; max-width:370px; }
	.mrs-checkout-page #order_review_heading { padding:24px 20px 0; }
	.mrs-checkout-page #order_review { padding:20px 16px 23px; }
	.mrs-checkout-page table.shop_table tr.cart_item { padding:8px; }
	.mrs-checkout-product { grid-template-columns:minmax(0,1fr); justify-content:stretch; justify-items:stretch; }
	.mrs-checkout-product-preview { width:min(100%,322px); max-width:322px; min-width:0; box-sizing:border-box; justify-self:center; margin-inline:auto; }
	.mrs-checkout-product-preview>.mrs-cart-plate-preview { display:block; width:100%; max-width:none; height:auto; margin-inline:auto; }
	.mrs-checkout-product-info,.mrs-checkout-personalization,.mrs-checkout-personalization-table,.mrs-checkout-personalization-table>span { width:100%; min-width:0; }
	.mrs-checkout-product-meta { align-items:center; padding-inline:4px; box-sizing:border-box; }
}
@media (max-width:980px) {
	body.woocommerce-checkout:not(.woocommerce-order-received) #main-content>.container { width:min(calc(100% - 30px),780px)!important; padding-block:30px 58px!important; }
	.mrs-checkout-page form.checkout { grid-template-columns:1fr; grid-template-areas:"customer" "order"; gap:0; }
	.mrs-checkout-order-panel { position:static; }
	.mrs-checkout-page #order_review_heading { margin-top:4px; }
	.mrs-checkout-page #order_review { margin-bottom:18px; }
	.mrs-checkout-payment-section { margin-bottom:0; }
}
@media (max-width:600px) {
	body.woocommerce-checkout:not(.woocommerce-order-received) #main-content>.container { width:calc(100% - 24px)!important; }
	.mrs-checkout-hero { margin-bottom:24px; }
	.mrs-checkout-hero h1 { font-size:36px; }
	.mrs-checkout-hero p:last-child { font-size:13px; }
	.mrs-checkout-page .woocommerce-billing-fields,.mrs-checkout-receipt,.mrs-delivery-address,.mrs-checkout-coupon,.mrs-checkout-payment-section { padding:19px; border-radius:13px; }
	.mrs-checkout-page .woocommerce-billing-fields__field-wrapper,.mrs-delivery-fields,.mrs-receipt-options { grid-template-columns:1fr; }
	.mrs-checkout-page .form-row,.mrs-delivery-fields .form-row { grid-column:1!important; }
	.mrs-receipt-card { min-height:0; }
	.mrs-checkout-page #order_review_heading { padding:22px 19px 0; font-size:29px; }
	.mrs-checkout-page #order_review { padding:14px 19px 21px; }
	.mrs-checkout-page table.shop_table tr.cart_item { grid-template-columns:1fr; padding:14px; }
	.mrs-checkout-page td.product-total { padding-left:0!important; }
	.mrs-checkout-product { grid-template-columns:minmax(0,max-content) 187px; gap:0 10px; }
	.mrs-checkout-product-preview { max-width:201px; }
	.mrs-checkout-product-preview>.mrs-cart-plate-preview { max-width:187px; }
	.mrs-checkout-product h3 { font-size:15px; }
	.mrs-checkout-coupon-panel>div { grid-template-columns:1fr; }
	.mrs-checkout-coupon-panel button { width:100%; }
}
@media (max-width:360px) {
	body.woocommerce-checkout:not(.woocommerce-order-received) #main-content>.container { width:calc(100% - 18px)!important; }
	.mrs-checkout-page .woocommerce-billing-fields,.mrs-checkout-receipt,.mrs-delivery-address,.mrs-checkout-coupon,.mrs-checkout-payment-section { padding:16px; }
	.mrs-checkout-page table.shop_table tr.cart_item { padding:10px; }
	.mrs-checkout-product-preview { max-width:169px; }
	.mrs-checkout-product-preview>.mrs-cart-plate-preview { max-width:155px; }
	.mrs-checkout-product { grid-template-columns:minmax(0,max-content) 155px; gap:0 8px; }
	.mrs-checkout-product h3 { font-size:14px; }
	.mrs-checkout-page td.product-total { padding-left:0!important; }
}
@media (max-width:480px) {
	.mrs-payment-mount #payment ul.payment_methods li.wc_payment_method>label { gap:6px; }
	.mrs-payment-card-icon { width:25px; height:18px; }
	.mrs-checkout-page table.shop_table tfoot tr.cart-discount { grid-template-columns:minmax(0,1fr) auto; gap:10px; }
}
@media (max-width:767px) {
	body.woocommerce-checkout:not(.woocommerce-order-received) #main-content>.container { width:min(calc(100% - 20px),540px)!important; padding:26px 0 46px!important; }
	.mrs-checkout-hero { margin:0 auto 16px; }
	.mrs-checkout-kicker { margin-bottom:4px; font-size:9px; letter-spacing:.13em; }
	.mrs-checkout-hero h1 { font-size:31px; line-height:1.08; }
	.mrs-checkout-page form.checkout { display:grid; grid-template-columns:minmax(0,1fr); grid-template-areas:"customer" "order"; gap:0; }
	.mrs-checkout-page .woocommerce-billing-fields,.mrs-checkout-receipt,.mrs-delivery-address,.mrs-checkout-coupon,.mrs-checkout-payment-section { margin:0 0 12px; padding:18px; border-color:rgba(8,25,74,.09); border-radius:14px; box-shadow:0 7px 20px rgba(8,25,74,.045); }
	.mrs-checkout-page .woocommerce-billing-fields { margin-bottom:12px; }
	.mrs-checkout-section-heading { gap:10px; margin-bottom:16px; }
	.mrs-checkout-section-heading>span { flex-basis:28px; width:28px; height:28px; }
	.mrs-checkout-section-heading p { font-size:21px; line-height:1.12; }
	.mrs-checkout-section-heading small { margin-top:2px; font-size:10px; }
	.mrs-checkout-page .woocommerce-billing-fields__field-wrapper,.mrs-delivery-fields { grid-template-columns:minmax(0,1fr); gap:13px; }
	.mrs-checkout-page .form-row,.mrs-delivery-fields .form-row { grid-column:1!important; }
	.mrs-checkout-page .form-row label,.mrs-checkout-coupon-panel label { margin-bottom:6px; font-size:12px; }
	.mrs-checkout-page .mrs-checkout-label-with-error { gap:2px 6px; }
	.mrs-checkout-page .mrs-checkout-label-error { flex-basis:100%; font-size:11px; }
	.mrs-checkout-page .input-text,.mrs-checkout-page select,.mrs-checkout-coupon-panel input { min-height:50px; }
	.mrs-checkout-page #billing_address_2::placeholder { color:#7a8298; opacity:1; font-size:13px; }
	.mrs-receipt-options { grid-template-columns:minmax(0,1fr); gap:9px; }
	.mrs-receipt-card { min-height:0; grid-template-columns:19px minmax(0,1fr); gap:10px; padding:14px; border-radius:10px; }
	.mrs-receipt-card:hover { transform:none; }
	.mrs-receipt-copy { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:2px 10px; }
	.mrs-receipt-copy strong { font-size:14px; }
	.mrs-receipt-copy b { margin:0; font-size:12px; }
	.mrs-receipt-copy small { grid-column:1/-1; font-size:10px; line-height:1.4; }
	.mrs-delivery-address { overflow:visible; }
	.mrs-address-suggestions { max-height:min(330px,42dvh); }
	.mrs-address-suggestion { min-height:46px; padding:12px 13px; font-size:13px; }
	.mrs-address-geoapify-attribution { padding:8px 10px; font-size:9px; }
	.mrs-checkout-page #order_review_heading { margin:0; padding:20px 18px 0; border-radius:14px 14px 0 0; font-size:28px; }
	.mrs-checkout-page #order_review_heading::after { margin-top:3px; font-size:10px; }
	.mrs-checkout-page #order_review { margin:0 0 12px; padding:13px 18px 19px; border-radius:0 0 14px 14px; box-shadow:0 8px 24px rgba(8,25,74,.055); }
	.mrs-checkout-page table.shop_table tbody { margin-bottom:15px; }
	.mrs-checkout-page table.shop_table tr.cart_item { grid-template-columns:minmax(0,1fr); gap:0; margin-bottom:12px; padding:0; border:0; border-radius:0; background:transparent; }
	.mrs-checkout-page td.product-name { width:100%; }
	.mrs-checkout-product { width:100%; grid-template-columns:minmax(0,1fr); gap:0; justify-items:center; }
	.mrs-checkout-product-preview { width:min(100%,310px); max-width:310px; margin:0 auto 9px; padding:0; }
	.mrs-checkout-product-preview>.mrs-cart-plate-preview { width:100%; max-width:298px; margin:0 auto; }
	.mrs-checkout-product-preview>.mrs-cart-plate-preview { cursor:default; pointer-events:none; }
	.mrs-checkout-product-info { margin:0; padding:7px 1px 0; border-radius:0; }
	.mrs-checkout-fixation-summary { display:none; }
	.mrs-checkout-product-meta { margin-top:7px; padding-top:8px; }
	.mrs-checkout-product-quantity { margin:0; padding:0; border:0; color:#687087; font-size:11px; text-align:left; }
	.mrs-checkout-product-price { margin:0; font-size:17px; }
	.mrs-checkout-product .mrs-checkout-personalization-toggle { width:100%; justify-content:flex-start; margin:0; padding:0; font-size:11px; }
	.mrs-checkout-personalization { width:100%; padding-top:9px; }
	.mrs-checkout-personalization-table>span { grid-template-columns:32px 58px minmax(0,1fr); gap:6px; }
	.mrs-checkout-page table.shop_table tfoot tr { min-height:34px; }
	.mrs-checkout-page table.shop_table tfoot th,.mrs-checkout-page table.shop_table tfoot td { padding:8px 0!important; font-size:12px; }
	.mrs-checkout-page table.shop_table tfoot .order-total { margin-top:3px; padding-top:7px; }
	.mrs-checkout-page table.shop_table tfoot .order-total th { font-size:14px; font-weight:800; }
	.mrs-checkout-page table.shop_table tfoot .order-total td { font-size:24px; }
	.mrs-checkout-page #order_review_heading { scroll-margin-top:104px; }
	.mrs-checkout-page table.shop_table tfoot tr.cart-discount { grid-template-columns:minmax(0,1fr) auto; align-items:start; column-gap:10px; }
	.mrs-checkout-page table.shop_table tfoot tr.cart-discount th { min-width:0; color:#59627a; }
	.mrs-checkout-page table.shop_table tfoot tr.cart-discount td { color:#9b642d; font-size:13px; font-weight:700; white-space:nowrap; }
	.mrs-checkout-page table.shop_table tfoot tr.cart-discount th .woocommerce-remove-coupon { display:block; width:max-content; margin:3px 0 0; color:#9b642d; font-size:10px; font-weight:600; line-height:1.4; text-decoration:none; }
	.mrs-checkout-page table.shop_table tfoot tr.cart-discount th .woocommerce-remove-coupon:hover,.mrs-checkout-page table.shop_table tfoot tr.cart-discount th .woocommerce-remove-coupon:focus-visible { color:#0f1563; }
	.mrs-checkout-page table.shop_table tfoot .order-total .mrs-total-ttc { display:none; }
	.mrs-checkout-coupon { padding-block:15px; }
	.mrs-checkout-payment-section { padding:18px; }
	.mrs-payment-mount #payment ul.payment_methods li.wc_payment_method { margin:0 0 9px!important; padding:13px!important; }
	.mrs-payment-mount #payment ul.payment_methods li.wc_payment_method:last-child { padding-bottom:0; }
	.mrs-payment-mount #payment ul.payment_methods li>label { max-width:calc(100% - 32px); gap:8px; font-size:13px; }
	.mrs-payment-mount #payment .payment_box { width:100%!important; margin:10px 0 0!important; padding:14px!important; overflow:visible; }
	.mrs-payment-mount #payment .place-order { margin-top:13px!important; padding-top:13px!important; }
	.mrs-payment-mount #place_order { min-height:58px; font-size:14px!important; }
	.mrs-checkout-page .woocommerce-error,.mrs-checkout-page .woocommerce-message,.mrs-checkout-page .woocommerce-info { margin-bottom:12px!important; padding:12px 14px!important; font-size:12px!important; }
}
@media (max-width:360px) {
	body.woocommerce-checkout:not(.woocommerce-order-received) #main-content>.container { width:calc(100% - 16px)!important; padding-top:22px!important; }
	.mrs-checkout-hero { margin-bottom:13px; }
	.mrs-checkout-hero h1 { font-size:28px; }
	.mrs-checkout-page .woocommerce-billing-fields,.mrs-checkout-receipt,.mrs-delivery-address,.mrs-checkout-coupon,.mrs-checkout-payment-section { padding:15px; }
	.mrs-checkout-page #order_review_heading { padding:18px 15px 0; font-size:26px; }
	.mrs-checkout-page #order_review { padding:12px 15px 17px; }
	.mrs-checkout-product-preview { width:min(100%,280px); }
	.mrs-checkout-product-preview>.mrs-cart-plate-preview { width:100%; max-width:268px; }
	.mrs-payment-mount #payment .payment_box { padding:12px!important; }
}
@media (prefers-reduced-motion:reduce) { .mrs-delivery-address,.mrs-receipt-card { animation:none!important; transition:none!important; } }

body.home.page-id-752 .home-ms .cta-final-ms__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	margin: 0 0 16px;
	color: #a8763e !important;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 12px !important;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

body.home.page-id-752 .home-ms .cta-final-ms__eyebrow svg {
	display: none;
	width: 17px;
	height: 17px;
	flex: 0 0 17px;
	color: currentColor;
}

body.home.page-id-752 .home-ms .cta-final-ms__title {
	max-width: 22ch;
	margin: 0 auto;
	padding: 0;
	color: #0f1563 !important;
	font-family: "Goudy Old Style", "goudy-old-style", Garamond, serif;
	font-size: clamp(34px, 3.2vw, 48px) !important;
	font-weight: 400;
	line-height: 1.08;
	text-align: center;
}

body.home.page-id-752 .home-ms .cta-final-ms__text {
	max-width: 46ch;
	margin: 16px auto 0;
	color: #59637c !important;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 16px !important;
	font-weight: 400;
	line-height: 1.55;
	text-align: center;
}

body.home.page-id-752 .home-ms .cta-final-ms__button {
	display: inline-flex !important;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	margin: 28px 0 0;
	padding: 14px 34px !important;
	border: 1px solid #0f1563 !important;
	border-radius: 7px !important;
	background: #0f1563 !important;
	box-shadow: 0 8px 20px rgba(15, 21, 99, 0.16);
	color: #fff !important;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 15px !important;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0.07em;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: transform 250ms ease, box-shadow 250ms ease, background-color 250ms ease, border-color 250ms ease !important;
}

body.home.page-id-752 .home-ms .cta-final-ms__button:hover {
	border-color: #b7864a !important;
	background: #171e78 !important;
	box-shadow: 0 12px 26px rgba(15, 21, 99, 0.22);
	color: #fff !important;
	transform: translateY(-1px);
}

body.home.page-id-752 .home-ms section.cta-final-ms > a {
	background: #0f1563 !important;
	color: #fff !important;
}

body.home.page-id-752 .home-ms section.cta-final-ms > a:hover {
	background: #0f1563 !important;
	color: #fff !important;
}

body.home.page-id-752 .home-ms .cta-final-ms__button:focus-visible {
	outline: 3px solid #b7864a;
	outline-offset: 4px;
}

@media (max-width: 600px) {
	body.home.page-id-752 .home-ms section.cta-final-ms {
		width: min(calc(100% - 32px), 1180px) !important;
		margin-bottom: 42px !important;
		padding: 38px 20px !important;
		border-radius: 14px !important;
	}

	body.home.page-id-752 .home-ms .cta-final-ms__eyebrow {
		margin-bottom: 13px;
		font-size: 11px !important;
		letter-spacing: 0.13em;
	}

	body.home.page-id-752 .home-ms .cta-final-ms__title {
		max-width: 18ch;
		margin-bottom: 0;
		font-size: clamp(29px, 9vw, 36px) !important;
	}

	body.home.page-id-752 .home-ms .cta-final-ms__text {
		max-width: 30ch;
		margin-top: 12px;
		font-size: 14px !important;
		line-height: 1.5;
	}

	body.home.page-id-752 .home-ms .cta-final-ms__button {
		width: min(100%, 280px) !important;
		min-height: 54px;
		margin-top: 24px;
		padding-inline: 22px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.home.page-id-752 .home-ms .cta-final-ms__button {
		transition: none !important;
	}

	body.home.page-id-752 .home-ms .cta-final-ms__button:hover {
		transform: none;
	}
}

html,
body {
	background-color: #fff;
	background-image: url("../images/fond-site-v2.png") !important;
	background-image: image-set(url("../images/fond-site-optimized.webp") type("image/webp"), url("../images/fond-site-v2.png") type("image/png")) !important;
	background-repeat: repeat !important;
	background-position: top left !important;
	background-size: auto !important;
	background-attachment: scroll;
}

/* Accueil : galerie Inspiration sur une seule ligne et visualisateur isolé. */
body.home .inspiration-ms .galerie-ms {
	display: flex !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	gap: 18px !important;
	padding-bottom: 12px;
	box-sizing: border-box;
	contain: inline-size;
	overscroll-behavior-x: contain;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-color: rgba(15, 21, 99, 0.45) transparent;
	scrollbar-width: thin;
}

body.home .inspiration-ms .galerie-ms::-webkit-scrollbar {
	height: 7px;
}

body.home .inspiration-ms .galerie-ms::-webkit-scrollbar-track {
	background: transparent;
}

body.home .inspiration-ms .galerie-ms::-webkit-scrollbar-thumb {
	border-radius: 999px;
	background: rgba(15, 21, 99, 0.45);
}

body.home .inspiration-ms .photo-ms {
	display: block;
	overflow: hidden;
	flex: 0 0 clamp(260px, 22vw, 292px) !important;
	width: clamp(260px, 22vw, 292px) !important;
	height: 230px !important;
	background-size: cover !important;
	background-position: center !important;
	cursor: pointer;
}

body.home .inspiration-ms .photo-ms > img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

@media (max-width: 767px) {
	body.home .inspiration-ms .galerie-ms {
		gap: 12px !important;
	}

	body.home .inspiration-ms .photo-ms {
		flex-basis: min(44vw, 180px) !important;
		width: min(44vw, 180px) !important;
		height: 165px !important;
	}
}

.mrs-lightbox[hidden] {
	display: none !important;
}

.mrs-lightbox {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 48px 76px;
	background: rgba(5, 10, 25, 0.88);
	opacity: 0;
	transition: opacity 180ms ease;
}

.mrs-lightbox.is-open {
	opacity: 1;
}

.mrs-lightbox-stage {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	max-height: 100%;
}

.mrs-lightbox-image {
	display: block;
	max-width: min(90vw, 1500px);
	max-height: 86vh;
	width: auto;
	height: auto;
	object-fit: contain;
}

.mrs-lightbox-close,
.mrs-lightbox-prev,
.mrs-lightbox-next {
	position: absolute;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fffaf0;
	font-family: Arial, sans-serif;
	font-weight: 300;
	line-height: 1;
	cursor: pointer;
	transition: color 160ms ease, opacity 160ms ease;
}

.mrs-lightbox-close:hover,
.mrs-lightbox-prev:hover,
.mrs-lightbox-next:hover {
	color: #b7864a;
}

.mrs-lightbox-close:focus-visible,
.mrs-lightbox-prev:focus-visible,
.mrs-lightbox-next:focus-visible {
	outline: 2px solid #b7864a;
	outline-offset: 2px;
}

.mrs-lightbox-close {
	top: 24px;
	right: 28px;
	font-size: 38px;
}

.mrs-lightbox-prev,
.mrs-lightbox-next {
	top: 50%;
	transform: translateY(-50%);
	font-size: 54px;
}

.mrs-lightbox-prev {
	left: 22px;
}

.mrs-lightbox-next {
	right: 22px;
}

@media (max-width: 767px) {
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel {
		--mrs-mobile-grid-inset: 14px;
		font-family: "myriad-pro", Arial, sans-serif;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-configurator-steps {
		grid-template-columns: repeat(3, minmax(0,1fr));
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formats {
		grid-template-columns: repeat(2, minmax(0,1fr));
		gap: 10px;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format {
		min-height: 112px;
		padding: 14px 12px;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format-name { font-size: 14px; }
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format-dimensions { font-size: 12px; }
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format-price { font-size: 17px; }

	.mrs-lightbox {
		padding: 58px 38px 42px;
	}

	.mrs-lightbox-image {
		max-width: 94vw;
		max-height: 82vh;
	}

	.mrs-lightbox-close {
		top: 14px;
		right: 14px;
	}

	.mrs-lightbox-prev {
		left: 2px;
	}

	.mrs-lightbox-next {
		right: 2px;
	}
}

/* Page 664 — configurateur premium, strictement isolé. */
body.page-id-664 .mrs-configurateur {
	--mrs-config-navy: #08194a;
	--mrs-config-blue: #0f1563;
	--mrs-config-copper: #b7864a;
	--mrs-config-text: #26324d;
	--mrs-config-muted: #667085;
	position: relative;
	left: auto;
	width: min(calc(100% - 48px), 1440px) !important;
	max-width: 1440px !important;
	margin-inline: auto !important;
	padding: 14px 32px 72px;
	box-sizing: border-box;
	color: var(--mrs-config-text);
	transform: none;
}

body.page-id-664 .mrs-configurateur *,
body.page-id-664 .mrs-configurateur *::before,
body.page-id-664 .mrs-configurateur *::after {
	box-sizing: border-box;
}

body.page-id-664,
body.page-id-664 #page-container,
body.page-id-664 #main-content,
body.page-id-664 #main-content .et_pb_section,
body.page-id-664 #main-content .et_pb_row,
body.page-id-664 #main-content .et_pb_code,
body.page-id-664 .mrs-configurateur,
body.page-id-664 .mrs-configurateur .mrs-corps,
body.page-id-664 .mrs-configurateur .mrs-formulaire,
body.page-id-664 .mrs-configurateur .mrs-apercu-zone,
body.page-id-664 .mrs-preview-stage {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

body.page-id-664 .mrs-configurateur .mrs-titre {
	max-width: 900px;
	margin: 0 auto 14px;
	font-family: "goudy-old-style", Georgia, serif !important;
	font-size: clamp(44px, 4vw, 52px);
	font-weight: 400;
	line-height: 1.04;
	color: var(--mrs-config-blue);
	text-align: center;
}

body.page-id-664 .mrs-configurateur .mrs-intro {
	max-width: 740px;
	margin: 0 auto 26px;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.65;
	color: var(--mrs-config-text);
	text-align: center;
}

body.page-id-664 .mrs-configurator-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-width: 760px;
	margin: 0 auto 50px;
	position: relative;
}

body.page-id-664 .mrs-configurator-steps::before {
	content: "";
	position: absolute;
	top: 15px;
	left: 16.66%;
	right: 16.66%;
	height: 1px;
	background: rgba(183, 134, 74, 0.42);
}

body.page-id-664 .mrs-configurator-step {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--mrs-config-muted);
	text-align: center;
}

body.page-id-664 .mrs-configurator-step-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 1px solid rgba(183, 134, 74, 0.75);
	border-radius: 50%;
	background: #fffaf2;
	color: var(--mrs-config-copper);
	font-size: 13px;
	font-weight: 700;
}

body.page-id-664 .mrs-configurator-format-heading,
body.page-id-664 .mrs-configurator-kicker {
	margin: 0 0 14px;
	color: var(--mrs-config-copper);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

body.page-id-664 .mrs-configurator-format-heading {
	text-align: center;
}

body.page-id-664 .mrs-configurateur .mrs-formats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 360px));
	justify-content: center;
	gap: 18px;
	margin: 0 auto 52px;
}

body.page-id-664 .mrs-configurateur .mrs-format {
	position: relative;
	display: block;
	min-width: 0;
	min-height: 136px;
	padding: 24px 28px;
	border: 1px solid rgba(8, 25, 74, 0.25);
	border-radius: 14px;
	background: rgba(255, 252, 246, 0.9);
	color: var(--mrs-config-blue);
	box-shadow: 0 8px 24px rgba(8, 25, 74, 0.04);
	cursor: pointer;
	transition: border-color 220ms ease, background-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

body.page-id-664 .mrs-configurateur .mrs-format:hover {
	border-color: rgba(8, 25, 74, 0.55);
	background: #fffdf9 !important;
	color: var(--mrs-config-blue) !important;
	box-shadow: 0 10px 28px rgba(8, 25, 74, 0.08);
	transform: translateY(-1px);
}

body.page-id-664 .mrs-configurateur .mrs-format:has(input:checked),
body.page-id-664 .mrs-configurateur .mrs-format.is-selected {
	border-color: var(--mrs-config-copper);
	background: var(--mrs-config-blue) !important;
	color: #fff !important;
	box-shadow: 0 10px 26px rgba(8, 25, 74, 0.14);
}

body.page-id-664 .mrs-configurateur .mrs-format input {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	opacity: 0;
	display: block !important;
}

body.page-id-664 .mrs-configurateur .mrs-format:focus-within {
	outline: 3px solid rgba(183, 134, 74, 0.3);
	outline-offset: 3px;
}

body.page-id-664 .mrs-format-content {
	display: grid;
	gap: 5px;
	text-align: left;
}

body.page-id-664 .mrs-format-name {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.page-id-664 .mrs-format-dimensions {
	font-size: 17px;
	font-weight: 500;
}

body.page-id-664 .mrs-format-price {
	margin-top: 3px;
	font-size: 21px;
	font-weight: 700;
}

body.page-id-664 .mrs-format-check {
	position: absolute;
	top: 14px;
	right: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: 14px;
	opacity: 0;
}

body.page-id-664 .mrs-format.is-selected .mrs-format-check {
	opacity: 1;
}

body.page-id-664 .mrs-configurateur .mrs-corps {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 48px;
	align-items: start;
	transition: grid-template-columns 250ms ease;
}

@media (min-width: 981px) {
	body.page-id-664 .mrs-configurateur .mrs-corps {
		grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	}
}

body.page-id-664 .mrs-configurateur .mrs-formulaire,
body.page-id-664 .mrs-configurateur .mrs-apercu-zone {
	min-width: 0;
	border: 1px solid rgba(8, 25, 74, 0.1);
	border-radius: 18px;
	background: rgba(255, 253, 249, 0.94);
	box-shadow: 0 14px 36px rgba(8, 25, 74, 0.055);
}

body.page-id-664 .mrs-configurateur .mrs-formulaire {
	padding: 36px 38px;
}

body.page-id-664 .mrs-configurateur .mrs-formulaire > .mrs-configurator-kicker,
body.page-id-664 .mrs-configurateur .mrs-formulaire > .mrs-configurator-card-title,
body.page-id-664 .mrs-configurateur .mrs-formulaire > .mrs-configurator-card-intro {
	text-align: center;
}

body.page-id-664 .mrs-configurator-card-title {
	margin: 0 0 8px;
	font-family: "goudy-old-style", Georgia, serif !important;
	font-size: 33px;
	font-weight: 400;
	line-height: 1.12;
	color: var(--mrs-config-blue);
}

body.page-id-664 .mrs-configurator-card-intro {
	margin: 0 0 28px;
	font-size: 14px;
	line-height: 1.55;
	color: var(--mrs-config-muted);
}

body.page-id-664 .mrs-configurateur .mrs-champ {
	margin: 0;
	padding: 23px 0 25px;
	border-bottom: 1px solid rgba(8, 25, 74, 0.09);
}

body.page-id-664 .mrs-configurateur .mrs-champ:first-of-type {
	padding-top: 4px;
}

body.page-id-664 .mrs-configurateur .mrs-champ:nth-of-type(4) {
	border-bottom: 0;
	padding-bottom: 10px;
}

body.page-id-664 .mrs-line-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 14px;
}

body.page-id-664 .mrs-line-labels,
body.page-id-664 .mrs-line-controls {
	display: grid;
	grid-template-columns: 160px minmax(260px, 1fr);
	gap: 18px;
	align-items: center;
}

body.page-id-664 .mrs-line-labels {
	margin-bottom: 7px;
}

body.page-id-664 .mrs-input-label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

body.page-id-664 .mrs-input-label .mrs-size-label {
	white-space: nowrap;
}

body.page-id-664 .mrs-configurateur .mrs-champ label {
	margin: 0;
	color: var(--mrs-config-navy);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.035em;
	text-transform: uppercase;
}

body.page-id-664 .mrs-configurateur .mrs-champ label span {
	font-size: 12px;
	font-weight: 400;
	color: var(--mrs-config-muted);
	letter-spacing: 0;
	text-transform: none;
}

body.page-id-664 .mrs-size-label {
	display: block;
	margin: 0;
	font-size: 12px;
	font-weight: 500;
	color: var(--mrs-config-muted);
}

body.page-id-664 .mrs-configurateur .mrs-taille {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 7px;
	width: 100%;
	margin: 0;
}

body.page-id-664 .mrs-configurateur .mrs-size {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 46px;
	border: 1px solid rgba(8, 25, 74, 0.28);
	border-radius: 8px;
	background: #fff;
	color: var(--mrs-config-blue);
	transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

body.page-id-664 .mrs-configurateur .mrs-size.large {
	font-size: 28px;
}

body.page-id-664 .mrs-configurateur .mrs-size.medium {
	font-size: 21px;
}

body.page-id-664 .mrs-configurateur .mrs-size.small {
	font-size: 16px;
}

body.page-id-664 .mrs-configurateur .mrs-size:hover {
	background: #f2f4fb;
	border-color: rgba(8, 25, 74, 0.5);
}

body.page-id-664 .mrs-configurateur .mrs-size.active {
	border-color: var(--mrs-config-blue);
	background: var(--mrs-config-blue);
	color: #fff;
}

body.page-id-664 .mrs-configurateur .mrs-size:focus-visible,
body.page-id-664 .mrs-configurateur .mrs-btn:focus-visible {
	outline: 3px solid rgba(183, 134, 74, 0.35);
	outline-offset: 2px;
}

body.page-id-664 .mrs-configurateur .mrs-champ input[type="text"] {
	width: 92%;
	height: 44px;
	padding: 0 17px;
	border: 1px solid rgba(8, 25, 74, 0.2);
	border-radius: 9px;
	background: #fff;
	color: #111a32;
	font-family: "myriad-pro", Arial, sans-serif !important;
	font-size: 16px;
	box-shadow: none;
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

body.page-id-664 .mrs-configurateur .mrs-champ input[type="text"]:focus {
	border-color: var(--mrs-config-blue);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(15, 21, 99, 0.09);
}

body.page-id-664 .mrs-configurateur .mrs-champ input::placeholder {
	color: #8b94a7;
	opacity: 1;
}

body.page-id-664 .mrs-configurateur .mrs-size.is-unavailable,
body.page-id-664 .mrs-configurateur .mrs-size.is-unavailable:hover {
	border-color: rgba(77, 85, 105, .2);
	background: #f1f1ef;
	color: rgba(77, 85, 105, .48);
	box-shadow: none;
	cursor: not-allowed;
}

body.page-id-664 .mrs-size-notice {
	position: fixed;
	top: 22px;
	left: 50%;
	z-index: 10020;
	width: max-content;
	max-width: min(420px, calc(100vw - 32px));
	padding: 11px 16px;
	border: 1px solid rgba(183, 134, 74, .72);
	border-radius: 11px;
	background: #08194a;
	box-shadow: 0 10px 26px rgba(8, 25, 74, .2);
	color: #fffaf2;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
	text-align: center;
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, -8px);
	transition: opacity 160ms ease, transform 160ms ease;
}

body.page-id-664 .mrs-size-notice.is-visible {
	opacity: 1;
	transform: translate(-50%, 0);
}

body.page-id-664 .mrs-configurateur .mrs-champ.is-format-disabled .mrs-size,
body.page-id-664 .mrs-configurateur .mrs-champ.is-format-disabled .mrs-size:hover {
	border-color: rgba(8, 25, 74, 0.14);
	background: #eceef2;
	color: #8a91a0;
	cursor: not-allowed;
}

body.page-id-664 .mrs-configurateur .mrs-champ.is-format-disabled input[type="text"],
body.page-id-664 .mrs-configurateur .mrs-champ.is-format-disabled input[type="text"]:focus {
	border-color: rgba(8, 25, 74, 0.12);
	background: #f1f2f5;
	color: #747c8d;
	box-shadow: none;
	cursor: not-allowed;
}

body.page-id-664 .mrs-configurateur .mrs-champ.is-format-disabled input::placeholder {
	color: #747c8d;
	opacity: 1;
}

body.page-id-664 .mrs-configurateur .mrs-aide {
	margin: 24px 0 0;
	padding: 15px 17px;
	border: 0;
	border-left: 3px solid var(--mrs-config-copper);
	border-radius: 9px;
	background: rgba(239, 242, 250, 0.78);
	gap: 12px;
}

body.page-id-664 .mrs-configurateur .mrs-aide > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	border: 1px solid var(--mrs-config-copper);
	border-radius: 50%;
	color: var(--mrs-config-copper);
	font-family: Georgia, serif;
	font-size: 15px;
	font-weight: 700;
}

body.page-id-664 .mrs-configurateur .mrs-aide p {
	font-size: 13px;
	line-height: 1.5;
	color: var(--mrs-config-text);
}

body.page-id-664 .mrs-configurateur .mrs-apercu-zone {
	position: sticky;
	top: 132px;
	display: flex;
	flex-direction: column;
	align-self: start;
	padding: 30px 30px 28px;
	align-items: stretch;
	text-align: center;
}

body.page-id-664 .mrs-configurateur .mrs-apercu-titre {
	margin: 0 0 18px;
	font-family: "goudy-old-style", Georgia, serif !important;
	font-size: 33px;
	font-weight: 400;
	line-height: 1.12;
	color: var(--mrs-config-blue);
}

body.page-id-664 .mrs-preview-stage {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 0;
	padding: 14px 0 18px;
	border-radius: 0;
	background: transparent;
	overflow: hidden;
}

body.page-id-664 .mrs-preview-frame {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	max-width: 100%;
	padding: 0;
	border: 0;
	border-radius: 0;
	overflow: hidden;
}

body.page-id-664 .mrs-configurateur .mrs-plaque,
body.page-id-664 .mrs-configurator-lightbox .mrs-plaque {
	--mrs-plate-safe-left: 1.71%;
	--mrs-plate-safe-right: 1.71%;
	--mrs-plate-safe-top: 4.45%;
	--mrs-plate-safe-bottom: 4.07%;
	--mrs-text-vertical-offset: 2px;
	position: relative;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 2 / 1;
	overflow: hidden;
}

body.page-id-664 .mrs-configurateur .mrs-plaque img,
body.page-id-664 .mrs-configurator-lightbox .mrs-plaque img {
	position: relative;
	inset: auto;
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

body.page-id-664 .mrs-configurateur .mrs-plaque.format-petit,
body.page-id-664 .mrs-configurator-lightbox .mrs-plaque.format-petit {
	width: 87.5%;
}

body.page-id-664 .mrs-configurateur .mrs-plaque.format-grand,
body.page-id-664 .mrs-configurator-lightbox .mrs-plaque.format-grand {
	width: 87.5%;
}

body.page-id-664 .mrs-configurateur .mrs-plate-safe-area,
body.page-id-664 .mrs-configurator-lightbox .mrs-plate-safe-area {
	position: absolute;
	inset: var(--mrs-plate-safe-top) var(--mrs-plate-safe-right) var(--mrs-plate-safe-bottom) var(--mrs-plate-safe-left);
	display: block;
	width: auto;
	height: auto;
	transform: none;
	overflow: hidden;
}

body.page-id-664 .mrs-configurateur .mrs-preview-text-layer,
body.page-id-664 .mrs-configurator-lightbox .mrs-preview-text-layer {
	position: absolute;
	top: var(--mrs-text-vertical-offset, 0px);
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 1px;
	color: #FFFFFF;
	font-family: "Goudy Old Style", "goudy-old-style", Goudy, serif;
	font-weight: 700;
	visibility: hidden;
	transform-origin: top left;
	pointer-events: none;
	contain: layout paint;
}

body.page-id-664 .mrs-configurateur .mrs-preview-text-layer.is-font-ready,
body.page-id-664 .mrs-configurator-lightbox .mrs-preview-text-layer.is-font-ready {
	visibility: visible;
}

body.page-id-664 .mrs-configurateur .mrs-preview-line,
body.page-id-664 .mrs-configurator-lightbox .mrs-preview-line {
	width: auto;
	max-width: 100%;
	min-height: 0;
	line-height: 1.12;
	white-space: pre;
	overflow: hidden;
	text-overflow: clip;
}

body.page-id-664 .mrs-configurateur .mrs-preview-line.is-empty,
body.page-id-664 .mrs-configurator-lightbox .mrs-preview-line.is-empty {
	display: none;
}

body.page-id-664 .mrs-configurateur .mrs-preview-line.is-spacer,
body.page-id-664 .mrs-configurator-lightbox .mrs-preview-line.is-spacer {
	display: block;
	flex: 0 0 1.12em;
	width: 0;
	height: 1.12em;
	min-height: 1.12em;
	overflow: hidden;
}

body.page-id-664 .mrs-configurateur .mrs-plaque.is-refreshing {
	animation: mrs-config-preview-refresh 260ms ease-out;
}

@keyframes mrs-config-preview-refresh {
	0% { opacity: 0.82; }
	100% { opacity: 1; }
}

body.page-id-664 .mrs-preview-summary {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px 22px;
	align-items: end;
	margin-top: 14px;
	padding: 14px 16px;
	border-top: 1px solid rgba(8, 25, 74, 0.1);
	border-bottom: 1px solid rgba(8, 25, 74, 0.1);
	text-align: left;
}

body.page-id-664 .mrs-preview-summary-label {
	font-size: 12px;
	color: var(--mrs-config-muted);
}

body.page-id-664 .mrs-preview-summary-value {
	color: var(--mrs-config-blue);
	font-size: 14px;
	font-weight: 700;
	text-align: right;
}

body.page-id-664 .mrs-preview-summary-price {
	font-size: 20px;
}

body.page-id-664 .mrs-configurateur .mrs-note {
	max-width: 420px;
	margin: 15px auto 0;
	font-size: 12px;
	line-height: 1.55;
	color: var(--mrs-config-muted);
}

body.page-id-664 .mrs-preview-action {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
	padding-top: 0;
}

body.page-id-664 .mrs-configurateur .mrs-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	min-height: 58px;
	padding: 14px 26px;
	border: 2px solid var(--mrs-config-blue);
	border-radius: 9px;
	background: #fff;
	color: var(--mrs-config-blue) !important;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.035em;
	transition: background-color 200ms ease, color 200ms ease, box-shadow 200ms ease;
}

body.page-id-664 .mrs-configurateur .mrs-btn-primary {
	background: var(--mrs-config-blue);
	color: #fff !important;
	box-shadow: 0 8px 18px rgba(8, 25, 74, 0.12);
}

body.page-id-664 .mrs-configurateur .mrs-btn-primary::after {
	content: "→";
	margin-left: 10px;
	font-size: 18px;
	font-weight: 400;
}

body.page-id-664 .mrs-configurateur .mrs-btn:hover {
	background: var(--mrs-config-blue);
	color: #fff !important;
}

body.page-id-664 .mrs-configurateur .mrs-btn-primary:hover {
	background: #162079;
}

body.page-id-664 .mrs-configurateur .mrs-preview-add-to-cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 56px;
	min-height: 56px;
	padding: 0 36px;
	border: 2px solid #0f1563;
	border-radius: 7px;
	background-color: #0f1563;
	color: #fff !important;
	box-shadow: 0 4px 12px rgba(15, 21, 99, 0.1);
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	transition: background-color 0.25s ease, color 0.25s ease;
}

body.page-id-664 .mrs-configurateur .mrs-preview-add-to-cart::after {
	content: none;
}

body.page-id-664 .mrs-configurateur .mrs-preview-add-to-cart:hover,
body.page-id-664 .mrs-configurateur .mrs-preview-add-to-cart:focus-visible {
	background-color: transparent;
	color: #0f1563 !important;
	box-shadow: none;
}

@media (max-width: 980px) {
	body.page-id-664 {
		max-width: 100%;
		overflow-x: clip;
	}

	body.page-id-664 #main-content .et_pb_section.et_pb_section_0,
	body.page-id-664 #main-content .et_pb_row.et_pb_row_0 {
		padding-top: 0 !important;
	}

	body.page-id-664 #main-content .et_pb_row.et_pb_row_0,
	body.page-id-664 #main-content .et_pb_code_0 {
		margin-top: 0 !important;
	}

	body.page-id-664 .mrs-configurateur {
		left: auto;
		width: min(calc(100% - 24px), 860px) !important;
		margin-top: -50px !important;
		padding: 30px 12px 52px;
		transform: none;
	}

	body.page-id-664 .mrs-configurator-steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-width: 520px;
		margin-bottom: 34px;
	}

	body.page-id-664 .mrs-configurator-steps::before {
		left: 25%;
		right: 25%;
	}

	body.page-id-664 .mrs-configurator-step:nth-child(3) {
		display: none;
	}

	body.page-id-664 .mrs-configurateur .mrs-formats {
		margin-bottom: 24px;
	}

	body.page-id-664 .mrs-configurateur .mrs-corps {
		grid-template-columns: 1fr;
		gap: 0;
	}

	body.page-id-664 .mrs-configurateur .mrs-apercu-zone {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		z-index: 20;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto 24px;
		padding: 22px 12px 14px;
		border-radius: 20px;
		box-sizing: border-box;
		transform: none;
		transition: width 260ms cubic-bezier(.22, .61, .36, 1), border-radius 260ms cubic-bezier(.22, .61, .36, 1), box-shadow 260ms cubic-bezier(.22, .61, .36, 1), padding 260ms cubic-bezier(.22, .61, .36, 1);
	}


	body.page-id-664 .mrs-configurateur .mrs-apercu-zone > .mrs-configurator-kicker {
		display: none;
	}

	body.page-id-664 .mrs-configurateur .mrs-apercu-titre {
		margin-bottom: 20px;
		font-size: clamp(34px, 5vw, 40px);
		line-height: 1.05;
		transition: margin 180ms ease, font-size 180ms ease, opacity 180ms ease;
	}


	body.page-id-664 .mrs-preview-stage {
		min-height: 0;
		padding: 0;
	}

	body.page-id-664 .mrs-preview-frame {
		width: 100%;
		max-width: 100%;
		padding: 0;
		box-sizing: border-box;
	}

	body.page-id-664 .mrs-configurateur .mrs-plaque.format-petit,
	body.page-id-664 .mrs-configurateur .mrs-plaque.format-grand {
		width: 87.5%;
		max-width: 100%;
	}

	body.page-id-664 .mrs-configurateur .mrs-plaque img {
		max-width: 100%;
		height: auto;
		object-fit: contain;
	}


	body.page-id-664 .mrs-configurateur .mrs-formulaire {
		padding: 28px 26px;
		border-radius: 20px;
	}

	body.page-id-664 .mrs-configurator-card-title {
		font-size: clamp(36px, 5vw, 40px);
		line-height: 1.05;
	}

	body.page-id-664 .mrs-configurator-card-intro {
		margin-bottom: 22px;
		font-size: 17px;
		line-height: 1.5;
	}

	body.page-id-664 .mrs-configurateur .mrs-champ {
		padding: 18px 0 20px;
	}

	body.page-id-664 .mrs-configurateur .mrs-champ:first-of-type {
		padding-top: 2px;
	}

	body.page-id-664 .mrs-line-heading {
		margin-bottom: 10px;
	}

	body.page-id-664 .mrs-line-labels,
	body.page-id-664 .mrs-line-controls {
		grid-template-columns: 202px minmax(0, 1fr);
		gap: 14px;
		min-width: 0;
	}

	body.page-id-664 .mrs-line-controls > * {
		min-width: 0;
	}

	body.page-id-664 .mrs-line-labels {
		margin-bottom: 8px;
	}

	body.page-id-664 .mrs-configurateur .mrs-taille {
		grid-template-columns: repeat(3, 62px);
		gap: 8px;
		width: 202px;
		max-width: 100%;
	}

	body.page-id-664 .mrs-configurateur .mrs-size {
		width: 62px;
		height: 54px;
		border-radius: 11px;
	}

	body.page-id-664 .mrs-configurateur .mrs-size.large {
		font-size: 26px;
	}

	body.page-id-664 .mrs-configurateur .mrs-size.medium {
		font-size: 21px;
	}

	body.page-id-664 .mrs-configurateur .mrs-size.small {
		font-size: 16px;
	}

	body.page-id-664 .mrs-configurateur .mrs-champ input[type="text"] {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		height: 52px;
		padding-inline: 15px;
		border-radius: 11px;
		font-size: 17px;
	}

	body.page-id-664 .mrs-configurateur .mrs-aide {
		margin-top: 20px;
		padding: 18px 20px;
	}

	body.page-id-664 .mrs-configurateur .mrs-aide > span {
		flex-basis: 21px;
		width: 21px;
		height: 21px;
		font-size: 13px;
	}

	body.page-id-664 .mrs-configurateur .mrs-aide p {
		font-size: 15px;
		line-height: 1.5;
	}

	body.page-id-664 .mrs-formulaire > .mrs-preview-summary {
		margin-top: 22px;
		padding: 12px 14px;
	}

	body.page-id-664 .mrs-formulaire > .mrs-note {
		margin-top: 12px;
		font-size: 12px;
	}

	body.page-id-664 .mrs-formulaire > .mrs-preview-action {
		width: 100%;
		margin-top: 18px;
	}

	body.page-id-664 .mrs-configurateur .mrs-preview-add-to-cart {
		width: 100%;
		height: 60px;
		min-height: 60px;
	}
}

@media (max-width: 700px) {
	body.page-id-664 .mrs-line-labels,
	body.page-id-664 .mrs-line-controls {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	body.page-id-664 .mrs-line-controls {
		gap: 14px;
	}

	body.page-id-664 .mrs-configurateur .mrs-taille {
		width: 202px;
	}

	body.page-id-664 .mrs-configurateur .mrs-size {
		height: 54px;
	}

	body.page-id-664 .mrs-configurateur .mrs-champ input[type="text"] {
		width: 100%;
	}
}

@media (max-width: 767px) {
	body.page-id-664 .mrs-line-labels {
		display: none;
	}
}

@media (max-width: 560px) {
	body.page-id-664 .mrs-configurateur {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		padding: 30px 14px 44px;
	}

	body.page-id-664 .mrs-configurator-steps,
	body.page-id-664 .mrs-configurateur .mrs-formats,
	body.page-id-664 .mrs-configurateur .mrs-corps,
	body.page-id-664 .mrs-configurateur .mrs-formulaire,
	body.page-id-664 .mrs-configurateur .mrs-apercu-zone {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body.page-id-664 .mrs-configurateur .mrs-titre {
		font-size: clamp(34px, 10vw, 38px);
	}

	body.page-id-664 .mrs-configurateur .mrs-intro {
		font-size: 16px;
	}

	body.page-id-664 .mrs-configurator-steps {
		margin-bottom: 30px;
	}

	body.page-id-664 .mrs-configurator-step {
		font-size: 10px;
	}

	body.page-id-664 .mrs-configurator-step-label {
		overflow-wrap: anywhere;
	}

	body.page-id-664 .mrs-configurateur .mrs-formats {
		grid-template-columns: 1fr;
	}

	body.page-id-664 .mrs-configurateur .mrs-format {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		min-height: 96px;
		padding: 16px 20px;
	}

	body.page-id-664 .mrs-configurateur .mrs-formulaire,
	body.page-id-664 .mrs-configurateur .mrs-apercu-zone {
		border-radius: 19px;
	}

	body.page-id-664 .mrs-configurateur .mrs-formulaire {
		padding: 22px 18px;
	}

	body.page-id-664 .mrs-configurateur .mrs-apercu-zone {
		width: 100% !important;
		max-width: 100% !important;
		padding: 20px 10px 12px;
	}

	body.page-id-664 .mrs-configurator-card-title {
		font-size: clamp(36px, 9.5vw, 40px);
	}

	body.page-id-664 .mrs-configurateur .mrs-apercu-titre {
		font-size: clamp(34px, 9vw, 38px);
	}

	body.page-id-664 .mrs-preview-frame {
		padding: 0;
	}

	body.page-id-664 .mrs-configurateur .mrs-champ {
		padding-block: 16px 18px;
	}
}

@media (max-width: 980px) and (prefers-reduced-motion: reduce) {
	body.page-id-664 .mrs-configurateur .mrs-apercu-zone {
		transition: none !important;
	}
}

/* Accueil : bande des quatre avantages. */
body.home .avantages-section-ms {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background-color: #fbfaf7 !important;
	background-image: url("../images/fond-clair-bloc.png") !important;
	background-image: image-set(url("../images/fond-site-optimized.webp") type("image/webp"), url("../images/fond-clair-bloc.png") type("image/png")) !important;
	background-repeat: repeat !important;
	background-position: top left !important;
	background-size: auto !important;
	box-sizing: border-box;
}

body.home .avantages-inner-ms {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: min(calc(100% - 48px), 1280px);
	margin-inline: auto;
	padding-block: 42px;
	box-sizing: border-box;
}

body.home .avantage-ms {
	position: relative;
	display: flex;
	min-width: 0;
	padding-inline: 30px;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	text-align: center;
	box-sizing: border-box;
}

body.home .avantage-ms:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 78px;
	background: rgba(8, 25, 74, 0.12);
	transform: translateY(-50%);
}

body.home .avantage-icon-wrap-ms {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 90px;
	height: 58px;
	min-height: 58px;
	margin-bottom: 14px;
}

body.home .avantage-icon-ms {
	display: block;
	width: 48px;
	height: 48px;
	object-fit: contain;
	transition: transform 220ms ease, opacity 220ms ease;
}

body.home .avantage-ms--premium .avantage-icon-ms {
	width: 109.2px;
	height: 59.8px;
}

body.home .avantage-ms:hover .avantage-icon-ms {
	transform: translateY(-2px);
}

body.home .avantage-title-ms {
	margin: 0;
	color: #b7864a;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

body.home .avantage-text-ms {
	margin: 7px 0 0;
	color: #08194a;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.45;
}

@media (max-width: 980px) {
	body.home .avantages-inner-ms {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding-block: 24px;
	}

	body.home .avantage-ms {
		padding: 28px 24px;
	}

	body.home .avantage-ms::after {
		display: none;
	}

	body.home .avantage-ms:nth-child(odd) {
		border-right: 1px solid rgba(8, 25, 74, 0.09);
	}

	body.home .avantage-ms:nth-child(-n + 2) {
		border-bottom: 1px solid rgba(8, 25, 74, 0.09);
	}
}

@media (max-width: 560px) {
	body.home .avantages-inner-ms {
		grid-template-columns: 1fr;
		width: min(calc(100% - 32px), 480px);
		padding-block: 8px;
	}

	body.home .avantage-ms {
		padding: 19px 12px;
		border-right: 0 !important;
	}

	body.home .avantage-ms:not(:last-child) {
		border-bottom: 0;
	}

	body.home .avantage-ms:not(:last-child)::after {
		display: block;
		position: static;
		width: 38px;
		height: 1px;
		margin: 17px auto 0;
		background: #b7864a;
		opacity: 0.65;
		transform: none;
	}

	body.home .avantage-icon-wrap-ms {
		width: 66px;
		height: 44px;
		min-height: 44px;
		margin-bottom: 9px;
	}

	body.home .avantage-icon-ms {
		width: 40px;
		height: 40px;
	}

	body.home .avantage-ms--premium .avantage-icon-ms {
		width: 81.5px;
		height: 45px;
	}

	body.home .avantage-title-ms {
		font-size: 14.7px;
	}

	body.home .avantage-text-ms {
		margin-top: 5px;
		font-size: 13px;
	}

	@media (prefers-reduced-motion: reduce) {
		body.home .avantage-ms {
			animation: none;
			opacity: 1;
			transform: none;
		}
	}
}

@media (prefers-reduced-motion: reduce) {
	body.home .avantage-icon-ms {
		transition: none;
	}

	body.home .avantage-ms:hover .avantage-icon-ms {
		transform: none;
	}
}

#page-container,
#et-main-area,
#main-content,
.et-l,
.et_builder_inner_content {
	background-color: transparent !important;
}

/*
 * Divi donne un fond blanc à chaque section par défaut. Cette règle ne touche
 * que cette couleur de base : les images et couleurs configurées sur une
 * section conservent leurs règles dynamiques Divi, chargées après celle-ci.
 */
.et-l .et_pb_section {
	background-color: transparent;
}

/* Remplace uniquement l'ancien fond FOND-SITE.png encore affecté par Divi. */
body.home .et_pb_section_0,
body.page-id-662 .et_pb_section_0,
body.page-id-664 .et_pb_section_0,
body.page-id-720 .et_pb_section_0 {
	background-image: url("../images/fond-site-v2.png") !important;
	background-image: image-set(url("../images/fond-site-optimized.webp") type("image/webp"), url("../images/fond-site-v2.png") type("image/png")) !important;
	background-repeat: repeat !important;
	background-size: auto !important;
	background-position: top left !important;
}

/* Hero d'accueil pleine largeur, immédiatement sous le header. */
body.home {
	overflow-x: hidden;
}

body.home #main-content .et_pb_section_0.et_pb_section {
	padding-top: 0 !important;
}

body.home #main-content .et_pb_section_0 > .et_pb_row {
	width: 100% !important;
	max-width: none !important;
	padding-top: 0 !important;
}

/* Header global : conteneur autonome et interactions du menu. */
.et-l--header .et_pb_image_0_tb_header .et_pb_image_wrap img {
	transition: transform 250ms ease;
	transform-origin: center;
}

.et-l--header .et_pb_image_0_tb_header:hover .et_pb_image_wrap img,
.et-l--header .et_pb_image_0_tb_header:focus-within .et_pb_image_wrap img,
.et-l--header .et_pb_image_0_tb_header:has(a:focus-visible) .et_pb_image_wrap img {
	transform: scale(1.03);
}

@media (min-width: 981px) {
	.et-l--header .et_pb_row_0_tb_header {
		display: grid !important;
		grid-template-columns: 300px minmax(0, 1fr);
		align-items: center;
		column-gap: clamp(24px, 4vw, 64px);
		flex-wrap: nowrap !important;
		width: min(100%, 1600px) !important;
		max-width: 1600px !important;
		margin-inline: auto !important;
		padding-left: clamp(48px, 5vw, 80px) !important;
		padding-right: clamp(48px, 5vw, 80px) !important;
		box-sizing: border-box;
	}

	.et-l--header .et_pb_row_0_tb_header > [class*="et_flex_column"] {
		--horizontal-gap-parent: 0%;
		width: 100% !important;
		max-width: none !important;
		min-width: 0;
		margin-inline: 0 !important;
	}

	.et_pb_image_0_tb_header {
		justify-content: flex-start !important;
		margin-left: 0 !important;
		margin-right: auto !important;
	}

	.et_pb_image_0_tb_header .et_pb_image_wrap {
		position: relative;
		display: inline-block;
		overflow: visible;
	}

	.et_pb_image_0_tb_header .et_pb_image_wrap img {
		display: block;
		width: auto;
		max-width: min(272px, 100%);
		height: auto;
		max-height: 125px;
	}

	.et_pb_image_0_tb_header:hover .et_pb_image_wrap img,
	.et_pb_image_0_tb_header:focus-within .et_pb_image_wrap img,
	.et_pb_image_0_tb_header:has(a:focus-visible) .et_pb_image_wrap img {
		transform: scale(1.03);
	}

	.et_pb_menu_0_tb_header {
		width: 100% !important;
		max-width: none !important;
	}

	.et_pb_menu_0_tb_header .et_pb_menu__wrap {
		justify-content: flex-end !important;
		padding-right: 0;
		box-sizing: border-box;
	}

	.et_pb_menu_0_tb_header .et-menu {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		flex-wrap: nowrap !important;
		white-space: nowrap;
	}

	.et_pb_menu_0_tb_header .et-menu > li {
		flex: 0 0 auto;
	}

	.et_pb_menu_0_tb_header .et-menu > li > a {
		position: relative;
		color: #fff !important;
		text-decoration-line: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 5px;
		transition: color 200ms ease, text-decoration-color 200ms ease;
	}

	.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a:hover,
	.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li > a:focus-visible,
	.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li.current-menu-item > a,
	.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li.current_page_item > a,
	.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li.current-menu-ancestor > a,
	.et_pb_menu_0_tb_header.et_pb_menu .et-menu > li.current_page_ancestor > a {
		color: #fff !important;
		opacity: 1;
		text-decoration-color: #fff;
	}

}

@media (min-width: 981px) and (prefers-reduced-motion: reduce) {
	.et_pb_menu_0_tb_header .et-menu > li > a {
		transition: none;
	}

	.et_pb_image_0_tb_header .et_pb_image_wrap img {
		transition: none;
	}

	.et_pb_image_0_tb_header:hover .et_pb_image_wrap img,
	.et_pb_image_0_tb_header:focus-within .et_pb_image_wrap img,
	.et_pb_image_0_tb_header:has(a:focus-visible) .et_pb_image_wrap img {
		transform: none;
	}
}

.mrs-mobile-menu-overlay[hidden],
.mrs-mobile-menu-panel[hidden] {
	display: none !important;
}

.mrs-mobile-header-cart-link,
.mrs-header-cart-label {
	display: none;
}

/* Header mobile global : rangée compacte et panneau latéral accessible. */
@media (max-width: 980px) {
	.et-l--header {
		position: sticky;
		top: 0;
		z-index: 99999;
		max-height: 92px;
		overflow: clip;
		transition: max-height 140ms ease, opacity 120ms ease, visibility 120ms ease;
	}

	body.page-id-664.mrs-mobile-creation-active .et-l--header {
		max-height: 0;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}

	.et-l--header .et_pb_section_0_tb_header {
		height: 92px !important;
		min-height: 92px;
		padding: 0 !important;
	}

	.et-l--header .et_pb_row_0_tb_header {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		width: 100% !important;
		max-width: none !important;
		min-height: 92px;
		margin: 0 !important;
		padding: 5px 16px !important;
		box-sizing: border-box;
	}

	.et-l--header .et_pb_row_0_tb_header > .et_pb_column_0_tb_header,
	.et-l--header .et_pb_row_0_tb_header > .et_pb_column_1_tb_header {
		--horizontal-gap-parent: 0%;
		display: flex !important;
		align-items: center !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0;
		margin: 0 !important;
	}

	.et-l--header .et_pb_row_0_tb_header > .et_pb_column_0_tb_header {
		flex: 1 1 auto !important;
	}

	.et-l--header .et_pb_row_0_tb_header > .et_pb_column_1_tb_header {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		flex: 0 0 auto !important;
		justify-content: flex-end !important;
		gap: 8px;
		margin-left: auto !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.mrs-mobile-header-cart-link {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 44px;
		width: 44px;
		height: 44px;
		padding: 0;
		border: 1px solid rgba(255, 255, 255, 0.38);
		border-radius: 50%;
		color: #ffffff !important;
		text-decoration: none;
		box-sizing: border-box;
		touch-action: manipulation;
	}

	.mrs-mobile-header-cart-link[hidden] {
		display: none !important;
	}

	.mrs-mobile-header-cart-link:focus-visible {
		outline: 2px solid #ffffff;
		outline-offset: 4px;
	}

	.et-l--header .et_pb_image_0_tb_header {
		display: flex !important;
		align-items: center;
		justify-content: flex-start !important;
		width: auto !important;
		max-width: calc(100vw - 104px) !important;
		margin: 0 !important;
	}

	.et-l--header .et_pb_image_0_tb_header .et_pb_image_wrap,
	.et-l--header .et_pb_image_0_tb_header a {
		display: block;
		max-width: 100%;
	}

	.et-l--header .et_pb_image_0_tb_header a {
		-webkit-tap-highlight-color: transparent;
		background: transparent !important;
		border-color: transparent !important;
		box-shadow: none !important;
		opacity: 1 !important;
		text-decoration: none;
		touch-action: manipulation;
		transform: none !important;
		transition: none !important;
	}

	.et-l--header .et_pb_image_0_tb_header a:hover,
	.et-l--header .et_pb_image_0_tb_header a:active,
	.et-l--header .et_pb_image_0_tb_header a:focus:not(:focus-visible) {
		background: transparent !important;
		border-color: transparent !important;
		box-shadow: none !important;
		opacity: 1 !important;
		outline: 0;
		transform: none !important;
	}

	.et-l--header .et_pb_image_0_tb_header a:focus-visible {
		outline: 2px solid #ffffff;
		outline-offset: 4px;
	}

	.et-l--header .et_pb_image_0_tb_header img {
		display: block;
		width: auto !important;
		max-width: min(142px, 100%) !important;
		height: auto !important;
		max-height: 65px;
		object-fit: contain;
	}

	.et-l--header .et_pb_menu_0_tb_header,
	.et-l--header .et_pb_menu_0_tb_header .et_pb_menu_inner_container,
	.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__wrap {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		width: 48px !important;
		height: 48px !important;
		min-height: 48px !important;
		margin: 0 !important;
		padding: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.et-l--header .et_pb_menu_0_tb_header .et_pb_menu__menu {
		display: none !important;
	}

	.et-l--header .et_pb_menu_0_tb_header .et_mobile_nav_menu {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 48px;
		height: 48px;
		margin: 0 !important;
	}

	.et-l--header .et_pb_menu_0_tb_header .mobile_nav {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		margin: 0;
		padding: 0;
		background: transparent !important;
		border: 0;
		border-radius: 8px;
		box-shadow: none !important;
		cursor: pointer;
		touch-action: manipulation;
	}

	.et-l--header .et_pb_menu_0_tb_header .mobile_menu_bar {
		position: relative;
		display: block;
		width: 28px;
		height: 18px;
		margin: 0;
		padding: 0;
		background: linear-gradient(
			to bottom,
			#ffffff 0 1.5px,
			transparent 1.5px 8.25px,
			#ffffff 8.25px 9.75px,
			transparent 9.75px 16.5px,
			#ffffff 16.5px 18px
		);
		border: 0;
		transform: none !important;
	}

	.et-l--header .et_pb_menu_0_tb_header .mobile_menu_bar::before,
	.et-l--header .et_pb_menu_0_tb_header .mobile_menu_bar::after {
		content: none !important;
	}

	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li > a {
		color: #fff !important;
		text-decoration-line: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 5px;
		transition: color 200ms ease, text-decoration-color 200ms ease;
	}

	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li > a:hover,
	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li > a:focus-visible,
	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li.current-menu-item > a,
	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li.current_page_item > a,
	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li.current-menu-ancestor > a,
	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li.current_page_ancestor > a {
		color: #fff !important;
		opacity: 1;
		text-decoration-color: #fff;
	}

	.et-l--header .et_pb_menu_0_tb_header .mobile_nav:focus-visible,
	.mrs-mobile-menu-close:focus-visible,
	.mrs-mobile-menu-panel a:focus-visible {
		outline: 2px solid #ffffff;
		outline-offset: 4px;
	}

	.mrs-mobile-menu-overlay {
		position: fixed;
		inset: 0;
		z-index: 999998;
		background: rgba(5, 10, 30, 0.56);
		opacity: 0;
		backdrop-filter: blur(2px);
		-webkit-backdrop-filter: blur(2px);
		transition: opacity 280ms cubic-bezier(0.22, 0.61, 0.36, 1);
		pointer-events: none;
	}

	.mrs-mobile-menu-panel {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 999999;
		display: flex;
		flex-direction: column;
		width: min(86vw, 380px);
		max-width: 100%;
		height: 100vh;
		height: 100dvh;
		padding: 0 24px 28px;
		box-sizing: border-box;
		background: #111a70;
		color: #ffffff;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		transform: translateX(100%);
		visibility: hidden;
		box-shadow: -18px 0 46px rgba(5, 10, 30, 0.24);
		transition: transform 280ms cubic-bezier(0.22, 0.61, 0.36, 1), visibility 0s linear 280ms;
	}

	body.mrs-mobile-menu-open {
		overflow: hidden !important;
	}

	body.mrs-mobile-menu-open .mrs-mobile-menu-overlay {
		opacity: 1;
		pointer-events: auto;
	}

	body.mrs-mobile-menu-open .mrs-mobile-menu-panel {
		transform: translateX(0);
		visibility: visible;
		transition-delay: 0s;
	}

	.mrs-mobile-menu-panel-header {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex: 0 0 auto;
		min-height: 96px;
		gap: 18px;
		border-bottom: 0;
	}

	.mrs-mobile-menu-panel-header::after {
		content: "";
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		height: 7px;
		background:
			linear-gradient(45deg, transparent 38%, #b7864a 40% 60%, transparent 62%) center / 7px 7px no-repeat,
			linear-gradient(90deg, transparent, rgba(183, 134, 74, 0.82) 12%, #b7864a 50%, rgba(183, 134, 74, 0.82) 88%, transparent) center / 100% 1px no-repeat;
		pointer-events: none;
	}

	.mrs-mobile-menu-brand {
		display: inline-flex;
		align-items: center;
		max-width: calc(100% - 62px);
		-webkit-tap-highlight-color: transparent;
		background: transparent !important;
		border-color: transparent !important;
		box-shadow: none !important;
		color: #ffffff !important;
		font-family: "Goudy Old Style", Goudy, Georgia, serif;
		font-size: 23px;
		opacity: 1 !important;
		text-decoration: none;
		touch-action: manipulation;
		transform: none !important;
		transition: none !important;
	}

	.mrs-mobile-menu-brand:hover,
	.mrs-mobile-menu-brand:active,
	.mrs-mobile-menu-brand:focus:not(:focus-visible) {
		background: transparent !important;
		border-color: transparent !important;
		box-shadow: none !important;
		color: #ffffff !important;
		opacity: 1 !important;
		outline: 0;
		transform: none !important;
	}

	.mrs-mobile-menu-brand img {
		display: block;
		width: 140px;
		max-width: 100%;
		height: auto;
		max-height: 53px;
		object-fit: contain;
	}

	.mrs-mobile-menu-close {
		position: relative;
		flex: 0 0 48px;
		width: 48px;
		height: 48px;
		margin: 0;
		padding: 0;
		background: transparent;
		border: 0;
		border-radius: 8px;
		box-shadow: none;
		cursor: pointer;
	}

	.mrs-mobile-menu-close span::before,
	.mrs-mobile-menu-close span::after {
		content: "";
		position: absolute;
		top: 23px;
		left: 11px;
		width: 26px;
		height: 2px;
		background: #ffffff;
		border-radius: 999px;
	}

	.mrs-mobile-menu-close span::before {
		transform: rotate(45deg);
	}

	.mrs-mobile-menu-close span::after {
		transform: rotate(-45deg);
	}

	.mrs-mobile-menu-navigation {
		display: block;
		flex: 1 1 auto;
		padding-top: 24px;
	}

	.mrs-mobile-menu-links {
		display: flex;
		flex-direction: column;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.mrs-mobile-menu-links > li {
		position: relative;
		margin: 0;
		padding: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.13);
	}

	.mrs-mobile-menu-links > li > a {
		display: flex;
		align-items: center;
		min-height: 64px;
		padding: 12px 8px 12px 18px;
		box-sizing: border-box;
		color: #ffffff !important;
		font-family: "Goudy Old Style", Goudy, Georgia, serif;
		font-size: clamp(22px, 6vw, 25px);
		font-weight: 400;
		line-height: 1.25;
		text-align: left;
		text-decoration: none;
		transition: transform 180ms ease-out, opacity 180ms ease-out;
	}

	.mrs-mobile-menu-links .mrs-header-cart-menu-item {
		display: block !important;
		margin: 0 !important;
	}

	.mrs-mobile-menu-links .mrs-header-cart-link {
		display: flex !important;
		align-items: center;
		width: 100% !important;
		height: auto !important;
		min-height: 64px;
		gap: 12px;
		margin: 0 !important;
		padding: 12px 8px 12px 18px !important;
		border: 0;
		border-radius: 0;
		box-sizing: border-box;
	}

	.mrs-mobile-menu-links .mrs-header-cart-label {
		display: inline;
	}

	.mrs-mobile-menu-links .mrs-header-cart-badge {
		position: static;
		flex: 0 0 auto;
		border-color: #111a70;
	}

	.mrs-mobile-menu-links > li.current-menu-item::before,
	.mrs-mobile-menu-links > li.current_page_item::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 2px;
		height: 24px;
		background: #b7864a;
		transform: translateY(-50%);
	}

	.mrs-mobile-menu-links > li > a:hover,
	.mrs-mobile-menu-links > li > a:focus-visible {
		opacity: 0.88;
		transform: translateX(4px);
	}

	@media (orientation: landscape) and (max-height: 560px) {
		.mrs-mobile-menu-panel-header {
			min-height: 74px;
		}

		.mrs-mobile-menu-brand img {
			max-height: 52px;
		}

		.mrs-mobile-menu-navigation {
			padding-top: 10px;
		}

		.mrs-mobile-menu-links > li > a {
			min-height: 56px;
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.mrs-mobile-menu-overlay,
		.mrs-mobile-menu-panel,
		.mrs-mobile-menu-links > li > a {
			transition: none;
		}
	}
}

@media (max-width: 980px) and (prefers-reduced-motion: reduce) {
	.et-l--header .et_pb_menu_0_tb_header .et_mobile_menu > li > a {
		transition: none;
	}
}

body.home .home-ms {
	margin-top: 0 !important;
	overflow: visible !important;
}

body.home .home-ms .hero-ms {
	position: relative !important;
	display: flex !important;
	align-items: stretch !important;
	width: min(100%, 1600px) !important;
	max-width: 1600px !important;
	height: auto !important;
	min-height: clamp(640px, 68vh, 720px) !important;
	margin: 0 auto 20px !important;
	overflow: visible !important;
	background-color: transparent !important;
	background-image: url("../images/hero-background-texture.webp.png") !important;
	background-image: image-set(url("../images/fond-site-optimized.webp") type("image/webp"), url("../images/hero-background-texture.webp.png") type("image/png")) !important;
	background-repeat: repeat !important;
	background-position: top left !important;
	background-size: auto !important;
}

body.home .home-ms .hero-left {
	position: relative !important;
	z-index: 3 !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: flex-start !important;
	width: clamp(480px, 42%, 620px) !important;
	max-width: 620px !important;
	height: auto !important;
	padding: 64px 42px 64px clamp(48px, 5vw, 80px) !important;
	text-align: left !important;
}

body.home .home-ms .hero-left h1 {
	max-width: 7.5ch;
	margin: 0 0 22px !important;
	font-family: "goudy-old-style", Georgia, serif !important;
	font-size: clamp(66px, 5.2vw, 86px) !important;
	font-weight: 400 !important;
	line-height: 0.78 !important;
	color: #0f1563 !important;
}

body.home .home-ms .hero-subtitle-ms {
	max-width: 470px;
	margin: 0 0 34px !important;
	font-family: "goudy-old-style", Georgia, serif !important;
	font-size: clamp(26px, 2.15vw, 36px) !important;
	font-style: italic;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #b7864a !important;
}

body.home .home-ms .hero-subtitle-ms::after {
	content: "";
	display: block;
	width: 56px;
	height: 2px;
	margin-top: 14px;
	background-color: currentColor;
}

body.home .home-ms .hero-left > p:not(.hero-subtitle-ms) {
	max-width: 480px !important;
	margin: 4px 0 34px !important;
	font-size: 17px !important;
	font-weight: 400 !important;
	line-height: 1.75 !important;
	color: #252b46 !important;
}

body.home .home-ms .hero-left .btn-ms {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	align-self: flex-start;
	flex-shrink: 0;
	width: auto !important;
	height: 56px;
	min-width: 0;
	margin: 0 !important;
	padding: 0 36px !important;
	border: 2px solid #0f1563 !important;
	border-radius: 7px !important;
	background-color: #0f1563 !important;
	color: #fff !important;
	box-shadow: 0 4px 12px rgba(15, 21, 99, 0.1);
	font-weight: 600 !important;
	letter-spacing: 0.08em;
	line-height: 1 !important;
	text-transform: uppercase;
	transition: background-color 0.25s ease, color 0.25s ease !important;
}

body.home .home-ms .hero-left .btn-ms:hover {
	background-color: transparent !important;
	color: #0f1563 !important;
	box-shadow: none;
}

body.home .home-ms .hero-photo-ms {
	--mrs-hero-edge-extension: clamp(0px, calc((100vw - 1600px) / 2), 160px);
	position: absolute !important;
	top: 0 !important;
	right: calc(-1 * var(--mrs-hero-edge-extension)) !important;
	bottom: 0 !important;
	width: min(
		calc(62% + var(--mrs-hero-edge-extension)),
		calc(980px + var(--mrs-hero-edge-extension))
	) !important;
	max-width: calc(980px + var(--mrs-hero-edge-extension)) !important;
	height: 100% !important;
	margin: 0 !important;
	border-radius: 0 !important;
	clip-path: none !important;
	background-image: url("../images/hero-salon-rue-carouge.png") !important;
	background-image: image-set(url("../images/hero-salon-rue-carouge.webp") type("image/webp"), url("../images/hero-salon-rue-carouge.png") type("image/png")) !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	background-position: 62% center !important;
	-webkit-mask-image: linear-gradient(
		to right,
		transparent 0%,
		transparent 6%,
		rgba(0, 0, 0, 0.06) 14%,
		rgba(0, 0, 0, 0.22) 25%,
		rgba(0, 0, 0, 0.48) 38%,
		rgba(0, 0, 0, 0.72) 51%,
		rgba(0, 0, 0, 0.9) 64%,
		#000 76%,
		#000 100%
	) !important;
	mask-image: linear-gradient(
		to right,
		transparent 0%,
		transparent 6%,
		rgba(0, 0, 0, 0.06) 14%,
		rgba(0, 0, 0, 0.22) 25%,
		rgba(0, 0, 0, 0.48) 38%,
		rgba(0, 0, 0, 0.72) 51%,
		rgba(0, 0, 0, 0.9) 64%,
		#000 76%,
		#000 100%
	) !important;
	-webkit-mask-repeat: no-repeat !important;
	mask-repeat: no-repeat !important;
	-webkit-mask-size: 100% 100% !important;
	mask-size: 100% 100% !important;
}

@media (min-width: 901px) {
	body.home .home-ms .hero-left {
		transform: none;
	}

	body.home .home-ms .hero-left h1 {
		max-width: none;
		white-space: nowrap;
	}
}

/* Ordinateurs portables : transition plus compacte sans chevauchement. */
@media (min-width: 901px) and (max-width: 1100px) {
	body.home .home-ms .hero-ms {
		height: clamp(620px, 62vw, 680px) !important;
		min-height: 620px !important;
	}

	body.home .home-ms .hero-left {
		width: 46% !important;
		padding: 52px 30px 52px 40px !important;
	}

	body.home .home-ms .hero-left h1 {
		font-size: 60px !important;
	}

	body.home .home-ms .hero-subtitle-ms {
		font-size: 29px !important;
	}

	body.home .home-ms .hero-photo-ms {
		width: 60vw !important;
	}
}

/* Tablette : deux colonnes conservées jusqu'à 767 px. */
@media (min-width: 768px) and (max-width: 900px) {
	body.home .home-ms .hero-ms {
		height: clamp(540px, 70vw, 620px) !important;
		min-height: 540px !important;
		display: block !important;
	}

	body.home .home-ms .hero-left {
		width: 46% !important;
		max-width: 46% !important;
		padding: 42px 22px 42px 32px !important;
	}

	body.home .home-ms .hero-left h1 {
		font-size: 48px !important;
	}

	body.home .home-ms .hero-subtitle-ms {
		font-size: 25px !important;
	}

	body.home .home-ms .hero-left .btn-ms {
		min-width: 210px;
		padding: 15px 22px !important;
	}

	body.home .home-ms .hero-photo-ms {
		width: 56vw !important;
		background-position: 62% center !important;
	}
}

/* Smartphone : texte en haut, image 16:9 en dessous. */
@media (max-width: 767px) {
	body.home .home-ms {
		overflow: hidden !important;
	}

	body.home .home-ms .hero-ms {
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		margin: 0 auto !important;
		display: flex !important;
		flex-direction: column !important;
	}

	body.home .home-ms .hero-left {
		display: contents !important;
	}

	body.home .home-ms .hero-left h1 {
		order: 1;
		width: min(calc(100% - 40px), 360px) !important;
		max-width: 360px !important;
		margin: 30px auto 28px !important;
		font-size: clamp(42px, 11vw, 52px) !important;
		line-height: 0.96 !important;
		letter-spacing: -0.01em;
		text-align: center !important;
	}

	body.home .home-ms .hero-subtitle-ms {
		order: 2;
		max-width: 100%;
		margin: 0 auto !important;
		font-size: clamp(24px, 6.5vw, 30px) !important;
		line-height: 1.15 !important;
		text-align: center !important;
	}

	body.home .home-ms .hero-subtitle-ms::after {
		width: 56px;
		height: 2px;
		margin: 20px auto 0;
	}

	body.home .home-ms .hero-left > p:not(.hero-subtitle-ms) {
		order: 3;
		width: calc(100% - 40px);
		max-width: 355px !important;
		margin: 32px auto 0 !important;
		font-size: 17.5px !important;
		line-height: 1.6 !important;
		text-align: center !important;
	}

	body.home .home-ms .hero-left .btn-ms {
		order: 5;
		align-self: center;
		box-sizing: border-box;
		width: min(82vw, 320px) !important;
		max-width: calc(100% - 16px) !important;
		min-height: 56px;
		margin: 27px auto 38px !important;
	}

	body.home .home-ms .hero-photo-ms {
		order: 4;
		position: relative !important;
		top: auto !important;
		right: auto !important;
		display: block !important;
		width: 100% !important;
		height: auto !important;
		margin: 32px 0 0 !important;
		aspect-ratio: 16 / 9;
		background-image: url("../images/hero-salon-rue-carouge.png") !important;
		background-image: image-set(url("../images/hero-salon-rue-carouge-900.webp") type("image/webp"), url("../images/hero-salon-rue-carouge.png") type("image/png")) !important;
		background-size: 129% auto !important;
		background-position: right center !important;
		-webkit-mask-image: linear-gradient(
			to bottom,
			transparent 0%,
			rgba(0, 0, 0, 0.55) 10%,
			#000 22%,
			#000 100%
		) !important;
		mask-image: linear-gradient(
			to bottom,
			transparent 0%,
			rgba(0, 0, 0, 0.55) 10%,
			#000 22%,
			#000 100%
		) !important;
	}

	@media (min-width: 390px) {
		body.home .home-ms .hero-subtitle-ms {
			white-space: nowrap;
		}
	}
}

/* Page 662 — Ma Rue Signature : récit de marque. */
body.page-id-662 .mrs-story-page {
	--mrs-story-navy: #0f1563;
	--mrs-story-deep-navy: #08194a;
	--mrs-story-copper: #b7864a;
	--mrs-story-copy: #252b46;
	--mrs-story-cream: #fffdf9;
	width: 100%;
	overflow: hidden;
	color: var(--mrs-story-copy);
	font-family: "myriad-pro", Arial, sans-serif;
}

body.page-id-662 .mrs-story-page *,
body.page-id-662 .mrs-story-page *::before,
body.page-id-662 .mrs-story-page *::after {
	box-sizing: border-box;
}

body.page-id-662 .mrs-story-hero,
body.page-id-662 .mrs-story-section,
body.page-id-662 .mrs-story-cta {
	position: relative;
	width: 100%;
}

body.page-id-662 .mrs-story-hero-inner,
body.page-id-662 .mrs-story-section-inner,
body.page-id-662 .mrs-story-cta-inner {
	width: min(calc(100% - 48px), 1320px);
	margin-inline: auto;
}

body.page-id-662 .mrs-story-hero {
	padding: 82px 0 96px;
}

body.page-id-662 .mrs-story-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 0.94fr) minmax(480px, 1.06fr);
	gap: clamp(48px, 6vw, 82px);
	align-items: center;
}

body.page-id-662 .mrs-story-hero-content {
	max-width: 610px;
}

body.page-id-662 .mrs-story-eyebrow {
	margin: 0 0 18px;
	color: var(--mrs-story-copper);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

body.page-id-662 .mrs-story-title,
body.page-id-662 .mrs-story-section-title,
body.page-id-662 .mrs-story-cta-title,
body.page-id-662 .mrs-story-quote {
	font-family: "goudy-old-style", Georgia, serif;
	font-weight: 400;
	color: var(--mrs-story-navy);
}

body.page-id-662 .mrs-story-title {
	max-width: 12ch;
	margin: 0 0 30px;
	font-size: clamp(50px, 4.3vw, 72px);
	line-height: 0.98;
}

body.page-id-662 .mrs-story-lead,
body.page-id-662 .mrs-story-copy,
body.page-id-662 .mrs-story-section-intro,
body.page-id-662 .mrs-story-cta-copy {
	font-size: 17px;
	font-weight: 400;
	line-height: 1.72;
}

body.page-id-662 .mrs-story-lead {
	max-width: 64ch;
}

body.page-id-662 .mrs-story-lead p,
body.page-id-662 .mrs-story-copy p,
body.page-id-662 .mrs-story-cta-copy p {
	margin: 0 0 1.15em;
}

body.page-id-662 .mrs-story-lead p:last-child,
body.page-id-662 .mrs-story-copy p:last-child,
body.page-id-662 .mrs-story-cta-copy p:last-child {
	margin-bottom: 0;
}

body.page-id-662 .mrs-story-hero-media {
	position: relative;
	margin: 0;
}

body.page-id-662 .mrs-story-hero-media img {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	border: 0;
	border-radius: 16px;
	object-fit: cover;
	object-position: center;
	filter: brightness(1.02) contrast(1.04) saturate(0.96);
	box-shadow: 0 24px 60px rgba(8, 25, 74, 0.14), 0 8px 22px rgba(8, 25, 74, 0.08);
	transition: transform 280ms ease, box-shadow 280ms ease;
}

@media (min-width: 981px) {
	body.page-id-662 .mrs-story-hero-inner,
	body.page-id-662 .mrs-story-section-inner {
		width: min(calc(100% - 96px), 1280px);
	}

	body.page-id-662 .mrs-story-hero-content {
		max-width: none;
	}

	body.page-id-662 .mrs-story-title {
		max-width: 100%;
	}

	body.page-id-662 .mrs-story-hero-media {
		padding: 6px;
		border: 1px solid var(--mrs-story-copper);
		border-radius: 23px;
	}

	body.page-id-662 .mrs-story-hero-media img {
		border: 0;
	}
}

@media (min-width: 981px) and (hover: hover) {
	body.page-id-662 .mrs-story-hero-media img:hover {
		transform: translateY(-2px);
	}
}

body.page-id-662 .mrs-story-section {
	padding: 94px 0;
}

body.page-id-662 .mrs-story-section--soft {
	background: rgba(255, 253, 249, 0.72);
}

body.page-id-662 .mrs-story-section--bordered .mrs-story-section-inner {
	padding-top: 92px;
	border-top: 1px solid rgba(183, 134, 74, 0.28);
}

body.page-id-662 .mrs-story-section-inner {
	display: grid;
	grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(48px, 7vw, 100px);
	align-items: start;
}

body.page-id-662 .mrs-story-section-heading {
	position: sticky;
	top: 138px;
}

body.page-id-662 .mrs-story-section-title {
	max-width: 13ch;
	margin: 0;
	font-size: clamp(38px, 3.3vw, 54px);
	line-height: 1.04;
}

body.page-id-662 .mrs-story-section-heading::after {
	content: "";
	display: block;
	width: 58px;
	height: 2px;
	margin-top: 24px;
	background: var(--mrs-story-copper);
}

body.page-id-662 .mrs-story-copy {
	max-width: 68ch;
}

body.page-id-662 .mrs-story-quote {
	max-width: 28ch;
	margin: 38px 0 0;
	padding: 22px 0 22px 28px;
	border-left: 2px solid var(--mrs-story-copper);
	font-size: clamp(25px, 2.25vw, 34px);
	font-style: italic;
	line-height: 1.25;
}

body.page-id-662 .mrs-story-values {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 13px 36px;
	margin: 28px 0 34px;
	padding: 0;
	list-style: none;
}

body.page-id-662 .mrs-story-values li {
	position: relative;
	min-height: 34px;
	padding: 5px 0 5px 28px;
	font-size: 16px;
	line-height: 1.5;
}

body.page-id-662 .mrs-story-values li::before {
	content: "";
	position: absolute;
	top: 15px;
	left: 0;
	width: 14px;
	height: 1px;
	background: var(--mrs-story-copper);
}

body.page-id-662 .mrs-story-intimate {
	width: min(100%, 920px);
	margin-inline: auto;
	padding: 64px clamp(30px, 5vw, 72px);
	border: 1px solid rgba(8, 25, 74, 0.1);
	border-radius: 18px;
	background: rgba(255, 253, 249, 0.86);
	box-shadow: 0 14px 38px rgba(8, 25, 74, 0.045);
	text-align: center;
}

body.page-id-662 .mrs-story-intimate .mrs-story-section-title {
	max-width: none;
}

body.page-id-662 .mrs-story-intimate .mrs-story-copy {
	max-width: 64ch;
	margin: 30px auto 0;
}

body.page-id-662 .mrs-story-closing {
	margin: 36px auto 0;
	font-family: "goudy-old-style", Georgia, serif;
	font-size: clamp(27px, 2.5vw, 38px);
	font-weight: 400;
	line-height: 1.24;
	color: var(--mrs-story-navy);
}

body.page-id-662 .mrs-story-cta {
	padding: 52px 0 110px;
}

body.page-id-662 .mrs-story-cta-inner {
	padding: 68px clamp(36px, 6vw, 88px);
	border: 1px solid rgba(183, 134, 74, 0.32);
	border-radius: 20px;
	background: rgba(255, 253, 249, 0.9);
	text-align: center;
}

body.page-id-662 .mrs-story-cta-title {
	max-width: 20ch;
	margin: 0 auto 26px;
	font-size: clamp(40px, 3.5vw, 58px);
	line-height: 1.04;
}

body.page-id-662 .mrs-story-cta-copy {
	max-width: 62ch;
	margin-inline: auto;
}

body.page-id-662 .mrs-story-signature {
	margin: 30px 0;
	font-family: "goudy-old-style", Georgia, serif;
	font-size: clamp(24px, 2.2vw, 34px);
	line-height: 1.25;
	color: var(--mrs-story-copper);
}

body.page-id-662 .mrs-story-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 56px;
	padding: 0 36px;
	border: 2px solid var(--mrs-story-navy);
	border-radius: 7px;
	background: var(--mrs-story-navy);
	color: #fff !important;
	box-shadow: 0 4px 12px rgba(15, 21, 99, 0.1);
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.08em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color 0.25s ease, color 0.25s ease;
}

body.page-id-662 .mrs-story-button:hover,
body.page-id-662 .mrs-story-button:focus-visible {
	background: transparent;
	color: var(--mrs-story-navy) !important;
	box-shadow: none;
}

body.page-id-662 .mrs-story-button:focus-visible {
	outline: 3px solid rgba(183, 134, 74, 0.35);
	outline-offset: 3px;
}

@media (max-width: 980px) {
	body.page-id-662 .mrs-story-hero {
		padding: 62px 0 76px;
	}

	body.page-id-662 .mrs-story-hero-inner {
		grid-template-columns: 1fr;
		gap: 44px;
	}

	body.page-id-662 .mrs-story-hero-content {
		max-width: 720px;
	}

	body.page-id-662 .mrs-story-hero-media {
		width: min(100%, 760px);
	}

	body.page-id-662 .mrs-story-section {
		padding: 74px 0;
	}

	body.page-id-662 .mrs-story-section-inner {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	body.page-id-662 .mrs-story-section-heading {
		position: static;
		top: auto;
	}

	body.page-id-662 .mrs-story-section-title {
		max-width: 18ch;
	}
}

@media (max-width: 600px) {
	body.page-id-662 .mrs-story-hero-inner,
	body.page-id-662 .mrs-story-section-inner,
	body.page-id-662 .mrs-story-cta-inner {
		width: min(calc(100% - 40px), 1320px);
	}

	body.page-id-662 .mrs-story-hero {
		padding: 48px 0 58px;
	}

	body.page-id-662 .mrs-story-title {
		font-size: clamp(43px, 13vw, 56px);
	}

	body.page-id-662 .mrs-story-lead,
	body.page-id-662 .mrs-story-copy,
	body.page-id-662 .mrs-story-section-intro,
	body.page-id-662 .mrs-story-cta-copy {
		font-size: 16px;
	}

	body.page-id-662 .mrs-story-section {
		padding: 58px 0;
	}

	body.page-id-662 .mrs-story-section--bordered .mrs-story-section-inner {
		padding-top: 58px;
	}

	body.page-id-662 .mrs-story-values {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	body.page-id-662 .mrs-story-intimate {
		padding: 46px 24px;
	}

	body.page-id-662 .mrs-story-cta {
		padding: 26px 0 76px;
	}

	body.page-id-662 .mrs-story-cta-inner {
		padding: 48px 22px;
	}

	body.page-id-662 .mrs-story-button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.page-id-662 .mrs-story-button {
		transition: none;
	}
}

/* Page Contact — styles entièrement limités à la page WordPress 720. */
body.page-id-720 .mrs-contact-page {
	--mrs-contact-navy: #0f1563;
	--mrs-contact-deep-navy: #08194a;
	--mrs-contact-copper: #b7864a;
	--mrs-contact-copy: #252b46;
	--mrs-contact-muted: #657087;
	width: 100%;
	padding: 82px 0 110px;
	overflow: hidden;
	color: var(--mrs-contact-copy);
	font-family: "myriad-pro", Arial, sans-serif;
}

body.page-id-720 .mrs-contact-page *,
body.page-id-720 .mrs-contact-page *::before,
body.page-id-720 .mrs-contact-page *::after {
	box-sizing: border-box;
}

body.page-id-720 .mrs-contact-inner {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(480px, 1fr);
	gap: clamp(64px, 6vw, 80px);
	align-items: start;
	width: min(calc(100% - 48px), 1320px);
	margin-inline: auto;
}

body.page-id-720 .mrs-contact-intro {
	min-width: 0;
	padding-top: 22px;
}

body.page-id-720 .mrs-contact-eyebrow,
body.page-id-720 .mrs-contact-form-eyebrow {
	margin: 0 0 18px;
	color: var(--mrs-contact-copper);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

body.page-id-720 .mrs-contact-title,
body.page-id-720 .mrs-contact-form-title {
	font-family: "goudy-old-style", Georgia, serif;
	font-weight: 400;
	color: var(--mrs-contact-navy);
}

body.page-id-720 .mrs-contact-title {
	max-width: 14ch;
	margin: 0 0 34px;
	font-size: clamp(50px, 4.1vw, 68px);
	line-height: 0.99;
}

body.page-id-720 .mrs-contact-copy {
	max-width: 58ch;
	font-size: 17px;
	line-height: 1.72;
}

body.page-id-720 .mrs-contact-copy p {
	margin: 0 0 1.15em;
}

body.page-id-720 .mrs-contact-workshop-note {
	max-width: 50ch;
	margin: 30px 0 38px;
	padding: 3px 0 3px 22px;
	border-left: 2px solid var(--mrs-contact-copper);
	font-family: "goudy-old-style", Georgia, serif;
	font-size: 22px;
	font-style: italic;
	line-height: 1.35;
	color: var(--mrs-contact-deep-navy);
}

body.page-id-720 .mrs-contact-details {
	display: grid;
	gap: 17px;
	margin: 0;
}

body.page-id-720 .mrs-contact-detail {
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr);
	gap: 15px;
	align-items: start;
}

body.page-id-720 .mrs-contact-detail-icon {
	display: block;
	width: 24px;
	height: 24px;
	margin-top: 2px;
	fill: none;
	stroke: var(--mrs-contact-copper);
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

body.page-id-720 .mrs-contact-detail span,
body.page-id-720 .mrs-contact-detail strong {
	display: block;
}

body.page-id-720 .mrs-contact-detail span {
	margin-bottom: 3px;
	color: var(--mrs-contact-copper);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

body.page-id-720 .mrs-contact-detail strong {
	font-size: 15px;
	font-weight: 600;
	line-height: 1.45;
	color: var(--mrs-contact-deep-navy);
}

body.page-id-720 .mrs-contact-geneva {
	width: min(100%, 540px);
	margin: 18px auto 0;
}

body.page-id-720 .mrs-contact-geneva-image {
	display: block;
	width: 100%;
	height: auto;
	filter: contrast(1.02) brightness(1.01);
	-webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.15) 7%, #000 20%, #000 80%, rgba(0, 0, 0, 0.15) 93%, transparent 100%), linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.15) 7%, #000 20%, #000 78%, rgba(0, 0, 0, 0.15) 92%, transparent 100%);
	-webkit-mask-composite: source-in;
	mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.15) 7%, #000 20%, #000 80%, rgba(0, 0, 0, 0.15) 93%, transparent 100%), linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.15) 7%, #000 20%, #000 78%, rgba(0, 0, 0, 0.15) 92%, transparent 100%);
	mask-composite: intersect;
}

body.page-id-720 .mrs-contact-form-card {
	padding: clamp(36px, 4vw, 44px);
	border: 1px solid rgba(8, 25, 74, 0.11);
	border-radius: 18px;
	background: rgba(255, 253, 249, 0.93);
	box-shadow: 0 15px 40px rgba(8, 25, 74, 0.065);
	animation: mrs-contact-card-in 500ms ease-out both;
}

@keyframes mrs-contact-card-in {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

body.page-id-720 .mrs-contact-form-header {
	margin-bottom: 30px;
}

body.page-id-720 .mrs-contact-form-title {
	margin: 0 0 14px;
	font-size: clamp(35px, 3vw, 46px);
	line-height: 1.05;
}

body.page-id-720 .mrs-contact-form-header > p:last-child {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	color: var(--mrs-contact-muted);
}

body.page-id-720 .mrs-contact-form {
	display: grid;
	gap: 20px;
}

body.page-id-720 .mrs-contact-field {
	min-width: 0;
}

body.page-id-720 .mrs-contact-field > label {
	display: block;
	margin: 0 0 8px;
	color: var(--mrs-contact-deep-navy);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
}

body.page-id-720 .mrs-contact-field > label small {
	font-size: 12px;
	font-weight: 400;
	color: var(--mrs-contact-muted);
}

body.page-id-720 .mrs-contact-field > input:not([type="checkbox"]),
body.page-id-720 .mrs-contact-field > select,
body.page-id-720 .mrs-contact-field > textarea {
	display: block;
	width: 100%;
	border: 1px solid rgba(8, 25, 74, 0.25);
	border-radius: 9px;
	background: #fff;
	color: #111a32;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 16px;
	box-shadow: none;
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

body.page-id-720 .mrs-contact-field > input:not([type="checkbox"]),
body.page-id-720 .mrs-contact-field > select {
	height: 50px;
	padding: 0 16px;
}

body.page-id-720 .mrs-contact-field > select {
	padding-right: 42px;
	cursor: pointer;
}

body.page-id-720 .mrs-contact-field > textarea {
	min-height: 165px;
	padding: 14px 16px;
	line-height: 1.55;
	resize: vertical;
}

body.page-id-720 .mrs-contact-attachments-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
}

body.page-id-720 .mrs-contact-attachments-heading label {
	color: var(--mrs-contact-deep-navy);
	font-size: 14px;
	font-weight: 600;
}

body.page-id-720 .mrs-contact-attachments-heading small {
	color: var(--mrs-contact-muted);
	font-size: 12px;
}

body.page-id-720 .mrs-contact-attachments {
	min-width: 0;
	padding: 16px;
	border: 1px solid rgba(183, 134, 74, .45);
	border-radius: 9px;
	background: rgba(255, 253, 249, .62);
}

body.page-id-720 .mrs-contact-attachments-input {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

body.page-id-720 .mrs-contact-attachments-button {
	display: inline-flex;
	min-height: 42px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 0 16px;
	border: 1px solid var(--mrs-contact-navy);
	border-radius: 7px;
	background: #fff;
	color: var(--mrs-contact-navy);
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}

body.page-id-720 .mrs-contact-attachments-button:hover,
body.page-id-720 .mrs-contact-attachments-input:focus-visible + .mrs-contact-attachments-button {
	background: var(--mrs-contact-navy);
	color: #fff;
}

body.page-id-720 .mrs-contact-attachments-input:focus-visible + .mrs-contact-attachments-button {
	outline: 3px solid rgba(183, 134, 74, .35);
	outline-offset: 3px;
}

body.page-id-720 .mrs-contact-attachments-input[aria-invalid="true"] + .mrs-contact-attachments-button {
	border-color: #87525a;
	box-shadow: inset 3px 0 0 var(--mrs-contact-copper);
}

body.page-id-720 .mrs-contact-attachments-help {
	margin: 10px 0 0;
	color: var(--mrs-contact-muted);
	font-size: 12px;
	line-height: 1.45;
}

body.page-id-720 .mrs-contact-attachments-list {
	display: grid;
	gap: 8px;
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}

body.page-id-720 .mrs-contact-attachments-list:empty { display: none; }

body.page-id-720 .mrs-contact-attachments-list li {
	display: grid;
	min-width: 0;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	padding-top: 8px;
	border-top: 1px solid rgba(183, 134, 74, .2);
}

body.page-id-720 .mrs-contact-attachment-icon {
	color: var(--mrs-contact-copper);
	font-size: 15px;
	transform: rotate(45deg);
}

body.page-id-720 .mrs-contact-attachment-name {
	min-width: 0;
	overflow: hidden;
	color: var(--mrs-contact-copy);
	font-size: 13px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.page-id-720 .mrs-contact-attachment-remove {
	padding: 4px 0;
	border: 0;
	background: transparent;
	color: #713d46;
	font: inherit;
	font-size: 12px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: pointer;
}

body.page-id-720 .mrs-contact-field > input:focus,
body.page-id-720 .mrs-contact-field > select:focus,
body.page-id-720 .mrs-contact-field > textarea:focus {
	border-color: var(--mrs-contact-navy);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(15, 21, 99, 0.09);
}

body.page-id-720 .mrs-contact-field > input[aria-invalid="true"],
body.page-id-720 .mrs-contact-field > select[aria-invalid="true"],
body.page-id-720 .mrs-contact-field > textarea[aria-invalid="true"] {
	border-color: #87525a;
	box-shadow: inset 3px 0 0 var(--mrs-contact-copper);
}

body.page-id-720 .mrs-contact-field--consent {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 3px 11px;
	align-items: start;
}

body.page-id-720 .mrs-contact-field--consent > input {
	width: 18px;
	height: 18px;
	margin: 2px 0 0;
	accent-color: var(--mrs-contact-navy);
}

body.page-id-720 .mrs-contact-field--consent > label {
	margin: 0;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
}

body.page-id-720 .mrs-contact-field--consent .mrs-contact-error {
	grid-column: 2;
}

body.page-id-720 .mrs-contact-error {
	display: block;
	min-height: 0;
	margin-top: 6px;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	color: #713d46;
}

body.page-id-720 .mrs-contact-error:empty {
	display: none;
}

body.page-id-720 .mrs-contact-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

body.page-id-720 .mrs-contact-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	min-height: 56px;
	margin-top: 2px;
	padding: 0 36px;
	border: 2px solid var(--mrs-contact-navy);
	border-radius: 7px;
	background: var(--mrs-contact-navy);
	color: #fff;
	box-shadow: 0 4px 12px rgba(15, 21, 99, 0.1);
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color 250ms ease, color 250ms ease, opacity 180ms ease;
}

body.page-id-720 .mrs-contact-submit:hover,
body.page-id-720 .mrs-contact-submit:focus-visible {
	background: transparent;
	color: var(--mrs-contact-navy);
}

body.page-id-720 .mrs-contact-submit:focus-visible {
	outline: 3px solid rgba(183, 134, 74, 0.35);
	outline-offset: 3px;
}

body.page-id-720 .mrs-contact-submit:disabled {
	cursor: wait;
	opacity: 0.68;
}

body.page-id-720 .mrs-contact-feedback {
	display: none;
	padding: 15px 17px;
	border-left: 3px solid var(--mrs-contact-copper);
	background: rgba(239, 242, 250, 0.72);
	color: var(--mrs-contact-deep-navy);
	font-size: 14px;
	line-height: 1.55;
}

body.page-id-720 .mrs-contact-feedback.is-visible {
	display: block;
	animation: mrs-contact-feedback-in 260ms ease-out both;
}

body.page-id-720 .mrs-contact-feedback.is-error {
	border-left-color: #87525a;
	background: rgba(252, 246, 245, 0.92);
}

@keyframes mrs-contact-feedback-in {
	from { opacity: 0; transform: translateY(4px); }
	to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 980px) {
	body.page-id-720 .mrs-contact-page {
		padding: 64px 0 86px;
	}

	body.page-id-720 .mrs-contact-inner {
		grid-template-columns: 1fr;
		gap: 52px;
		width: min(calc(100% - 40px), 760px);
	}

	body.page-id-720 .mrs-contact-intro {
		padding-top: 0;
	}
}

@media (max-width: 600px) {
	body.page-id-662 .mrs-story-hero-media img {
		box-shadow: 0 16px 36px rgba(8, 25, 74, 0.11), 0 6px 16px rgba(8, 25, 74, 0.06);
	}

	body.page-id-720 .mrs-contact-page {
		padding: 48px 0 70px;
	}

	body.page-id-720 .mrs-contact-inner {
		width: min(calc(100% - 40px), 760px);
		gap: 42px;
	}

	body.page-id-720 .mrs-contact-title {
		font-size: clamp(44px, 13vw, 56px);
	}

	body.page-id-720 .mrs-contact-copy {
		font-size: 16px;
	}

	body.page-id-720 .mrs-contact-workshop-note {
		font-size: 20px;
	}

	body.page-id-720 .mrs-contact-geneva {
		width: min(100%, 500px);
		margin-top: 14px;
	}

	body.page-id-720 .mrs-contact-form-card {
		padding: 30px 22px;
		border-radius: 15px;
	}

	body.page-id-720 .mrs-contact-form-title {
		font-size: 34px;
	}

	body.page-id-720 .mrs-contact-submit {
		width: 100%;
	}

	body.page-id-720 .mrs-contact-attachments {
		padding: 14px;
	}

	body.page-id-720 .mrs-contact-attachments-button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.page-id-720 .mrs-contact-form-card,
	body.page-id-720 .mrs-contact-feedback {
		animation: none;
	}

	body.page-id-720 .mrs-contact-submit,
	body.page-id-720 .mrs-contact-field > input,
	body.page-id-720 .mrs-contact-field > select,
	body.page-id-720 .mrs-contact-field > textarea {
		transition: none;
	}
}
/* ==========================================================
   FOOTER GLOBAL — MA RUE SIGNATURE
   ========================================================== */
html,
body {
	min-height: 100%;
}

#page-container {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
}

#et-main-area {
	display: flex;
	flex: 1 0 auto;
	flex-direction: column;
}

#main-content {
	flex: 1 0 auto;
}

.et-l--footer {
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
	background: #0f1563 !important;
}

.et-l--footer > .et_builder_inner_content {
	min-height: 0;
	margin: 0;
	padding: 0;
}

.mrs-site-footer {
	--mrs-footer-navy: #0f1563;
	--mrs-footer-copper: #b7864a;
	--mrs-footer-white: #f8f5ef;
	--mrs-footer-copyright-width: 277.4375px;
	width: 100%;
	margin: 0;
	background: var(--mrs-footer-navy);
	color: var(--mrs-footer-white);
	font-family: Montserrat, Arial, sans-serif;
	box-sizing: border-box;
}

.mrs-site-footer *,
.mrs-site-footer *::before,
.mrs-site-footer *::after {
	box-sizing: border-box;
}

.mrs-footer-inner {
	width: 100%;
	max-width: 1480px;
	margin-inline: auto;
	padding: 64px clamp(48px, 4.5vw, 72px) 0;
}

.mrs-footer-grid {
	display: grid;
	grid-template-columns: minmax(300px, 1.55fr) minmax(150px, .75fr) minmax(220px, 1fr) minmax(150px, .65fr);
	gap: clamp(40px, 4vw, 72px);
	align-items: start;
}

.mrs-footer-brand {
	display: flex;
	flex-direction: column;
	align-items: center;
}

@media (min-width: 768px) {
	.mrs-footer-brand {
		width: min(var(--mrs-footer-copyright-width), 100%);
		justify-self: start;
	}
}

.mrs-footer-brand-logo-link {
	display: block;
	width: min(220px, 100%);
	margin: 0 0 22px;
	line-height: 0;
	transition: transform 250ms ease;
	transform-origin: center;
}

.mrs-footer-brand-logo {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

.mrs-footer-brand-logo-link:hover,
.mrs-footer-brand-logo-link:focus-visible {
	transform: scale(1.03);
}

.mrs-footer-brand-logo-link:focus-visible {
	outline: 2px solid var(--mrs-footer-copper);
	outline-offset: 5px;
	border-radius: 3px;
}

.mrs-footer-tagline {
	max-width: 350px;
	margin: 0 0 16px;
	padding: 0;
	color: var(--mrs-footer-white);
	font-family: "Goudy Old Style", Garamond, serif;
	font-size: clamp(20px, 1.45vw, 23px);
	font-weight: 400;
	line-height: 1.35;
	text-align: center;
}

.mrs-footer-description {
	max-width: 360px;
	margin: 0;
	padding: 0;
	color: rgba(248, 245, 239, .74);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.58;
	text-align: center;
}

.mrs-footer-title {
	margin: 2px 0 20px;
	padding: 0;
	color: var(--mrs-footer-copper);
	font-family: Montserrat, Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.mrs-footer-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mrs-footer-list li {
	margin: 0;
	padding: 0;
}

.mrs-footer-link {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 3px 0;
	color: var(--mrs-footer-white);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
	text-decoration: none;
	text-underline-offset: 5px;
	transition: color 200ms ease, transform 200ms ease, text-decoration-color 200ms ease;
}

a.mrs-footer-link:hover {
	color: #fff;
	text-decoration: underline;
	text-decoration-color: rgba(183, 134, 74, .75);
	text-decoration-thickness: 1px;
	transform: translateX(3px);
}

.mrs-footer-link.is-unavailable {
	color: rgba(248, 245, 239, .72);
	cursor: default;
}

.mrs-footer-socials {
	display: flex;
	gap: 18px;
	align-items: center;
	margin: 0;
}

.mrs-footer-social {
	display: inline-flex;
	width: 46px;
	height: 46px;
	align-items: center;
	justify-content: center;
	color: var(--mrs-footer-copper);
	transition: color 200ms ease, transform 200ms ease, filter 200ms ease;
}

a.mrs-footer-social:hover {
	color: #c99a60;
	filter: brightness(1.08);
	transform: translateY(-2px);
}

.mrs-footer-social.is-unavailable {
	cursor: default;
}

.mrs-footer-social svg,
.mrs-footer-social img {
	display: block;
	width: 34px;
	height: 34px;
	object-fit: contain;
}

.mrs-footer-link:focus-visible,
.mrs-footer-social:focus-visible {
	outline: 2px solid var(--mrs-footer-copper);
	outline-offset: 4px;
	border-radius: 3px;
}

.mrs-footer-bottom {
	display: flex;
	justify-content: space-between;
	gap: 28px;
	margin-top: 52px;
	padding: 22px 0 24px;
	border-top: 1px solid rgba(255, 255, 255, .12);
	color: rgba(248, 245, 239, .7);
	font-size: 13px;
	line-height: 1.5;
}

.mrs-footer-bottom p {
	margin: 0;
	padding: 0;
}

@media (max-width: 980px) {
	.mrs-footer-inner {
		padding: 58px 44px 0;
	}

	.mrs-footer-grid {
		grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
		gap: 46px 64px;
	}

	.mrs-footer-brand-logo-link {
		width: 210px;
	}
}

@media (max-width: 767px) {
	.mrs-footer-inner {
		width: calc(100% - 40px);
		max-width: 520px;
		padding: 50px 0 0;
	}

	.mrs-footer-grid {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 34px;
	}

	.mrs-footer-brand {
		width: 100%;
		text-align: center;
	}

	.mrs-footer-brand-logo-link {
		width: 195px;
		margin: 0 0 20px;
	}

	.mrs-footer-column {
		width: 100%;
		text-align: center;
	}

	.mrs-footer-list {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.mrs-site-footer .mrs-footer-grid > nav.mrs-footer-column .mrs-footer-list {
		padding-left: 0;
		list-style: none;
	}

	.mrs-site-footer .mrs-footer-grid > nav.mrs-footer-column .mrs-footer-list > li::marker {
		content: "";
	}

	.mrs-site-footer .mrs-footer-grid > nav.mrs-footer-column .mrs-footer-list > li::before {
		content: none;
		display: none;
	}

	.mrs-footer-link {
		justify-content: center;
	}

	.mrs-footer-title {
		margin-bottom: 12px;
	}

	.mrs-footer-link {
		min-height: 44px;
	}

	.mrs-footer-social-column {
		text-align: center;
	}

	.mrs-footer-socials {
		justify-content: center;
	}

	.mrs-footer-social {
		width: 46px;
		height: 46px;
	}

	.mrs-footer-social svg,
	.mrs-footer-social img {
		width: 32px;
		height: 32px;
	}

	.mrs-footer-bottom {
		flex-direction: column;
		align-items: center;
		gap: 8px;
		margin-top: 38px;
		padding: 20px 0 22px;
		text-align: center;
	}
}

@media (max-width: 480px) {
	.et-l--header .et_pb_image_0_tb_header img {
		max-width: min(132px, 100%) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mrs-site-footer a {
		transition: none !important;
	}

	.et-l--header .et_pb_image_0_tb_header .et_pb_image_wrap img {
		transition: none;
	}

	.et-l--header .et_pb_image_0_tb_header:hover .et_pb_image_wrap img,
	.et-l--header .et_pb_image_0_tb_header:focus-within .et_pb_image_wrap img,
	.et-l--header .et_pb_image_0_tb_header:has(a:focus-visible) .et_pb_image_wrap img,
	.mrs-footer-brand-logo-link:hover,
	.mrs-footer-brand-logo-link:focus-visible {
		transform: none;
	}
}

/* Commerce Ma Rue Signature : configurateur, header et panier. */
body.page-id-664 .mrs-preview-fixation { min-width: 0; margin: 18px 0 0; padding: 0; border: 0; text-align: left; }
body.page-id-664 .mrs-preview-section-title { display: block; margin-bottom: 12px; color: var(--mrs-config-blue); font-size: 12px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
body.page-id-664 .mrs-fixation-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
body.page-id-664 .mrs-fixation-card { position: relative; display: grid; grid-template-columns: 20px minmax(0,1fr); gap: 11px; align-items: start; min-height: 94px; margin: 0; padding: 16px; border: 1px solid rgba(183,134,74,.52); border-radius: 10px; background: rgba(255,253,249,.88); cursor: pointer; transition: border-color 180ms ease,background-color 180ms ease,box-shadow 180ms ease,transform 180ms ease; }
body.page-id-664 .mrs-fixation-card:hover { transform: translateY(-1px); border-color: #b7864a; }
body.page-id-664 .mrs-fixation-card.is-selected { border-color: var(--mrs-config-blue); background: #fff; box-shadow: 0 0 0 2px rgba(15,21,99,.1),0 8px 18px rgba(8,25,74,.07); }
body.page-id-664 .mrs-fixation-card input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; }
body.page-id-664 .mrs-fixation-card:has(input:focus-visible) { outline: 3px solid rgba(183,134,74,.5); outline-offset: 3px; }
body.page-id-664 .mrs-fixation-radio { position: relative; width: 18px; height: 18px; margin-top: 1px; border: 2px solid rgba(15,21,99,.4); border-radius: 50%; }
body.page-id-664 .mrs-fixation-card.is-selected .mrs-fixation-radio { border-color: var(--mrs-config-blue); }
body.page-id-664 .mrs-fixation-card.is-selected .mrs-fixation-radio::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: var(--mrs-config-blue); }
body.page-id-664 .mrs-fixation-copy { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
body.page-id-664 .mrs-fixation-copy strong { color: var(--mrs-config-blue); font-size: 15px; font-weight: 700; line-height: 1.3; }
body.page-id-664 .mrs-fixation-price { color: #9b642d; font-size: 14px; font-weight: 800; line-height: 1.25; }
body.page-id-664 .mrs-fixation-copy small { margin-top: 4px; color: #566079; font-size: 12px; line-height: 1.48; }
body.page-id-664 .mrs-preview-total { display: flex; align-items: end; justify-content: space-between; margin-top: 14px; padding: 14px 16px; border-radius: 10px; background: #0f1563; text-align: left; }
body.page-id-664 .mrs-preview-total .mrs-preview-section-title { margin: 0; color: rgba(255,255,255,.72); }
body.page-id-664 .mrs-preview-total-price { color: #fff; font-family: "goudy-old-style",Georgia,serif; font-size: 28px; font-weight: 700; line-height: 1; }
body.page-id-664 .mrs-preview-cart-form { width: 100%; }
body.page-id-664 .mrs-preview-add-to-cart:disabled { cursor: wait; opacity: .82; }
body.page-id-664 .mrs-preview-add-to-cart.is-loading::before { content: ""; width: 15px; height: 15px; margin-right: 10px; border: 2px solid rgba(15,21,99,.28); border-top-color: var(--mrs-config-blue,#0f1563); border-radius: 50%; background: rgba(255,255,255,.94); animation: mrs-cart-spin 650ms linear infinite; }

body.page-id-664 .mrs-configurateur .mrs-plaque {
	opacity: 0;
	transition: opacity 140ms ease;
}

body.page-id-664 .mrs-configurateur .mrs-plaque.mrs-preview-initial-ready,
body.page-id-664 .mrs-configurateur .mrs-success-modal .mrs-plaque,
body.page-id-664 .mrs-configurateur .mrs-configurator-lightbox .mrs-plaque {
	opacity: 1;
}
body.page-id-664 .mrs-preview-add-to-cart.is-success,
body.page-id-664 .mrs-preview-add-to-cart.is-success:hover,
body.page-id-664 .mrs-preview-add-to-cart.is-success:focus-visible { border-color: #147a5a; background: linear-gradient(135deg,#188763 0%,#0f6d51 100%); color: #fff!important; box-shadow: 0 10px 24px rgba(15,109,81,.26),inset 0 1px 0 rgba(255,255,255,.18); }
body.page-id-664 .mrs-preview-add-to-cart.is-success:hover { border-color: #0f6d51; background: linear-gradient(135deg,#147a5a 0%,#0c6248 100%); box-shadow: 0 12px 28px rgba(15,109,81,.3),inset 0 1px 0 rgba(255,255,255,.16); }
body.page-id-664 .mrs-preview-add-to-cart.is-success:focus-visible { outline: 3px solid rgba(24,135,99,.28); outline-offset: 3px; }
body.page-id-664 .mrs-preview-add-to-cart.is-error { border-color: #a83c3c; background: #a83c3c; }
body.page-id-664 .mrs-configurateur .mrs-preview-view-cart { width: 100%; min-height: 52px; border-color: rgba(15,21,99,.42); background: rgba(255,255,255,.82); color: #0f1563!important; box-shadow: 0 4px 14px rgba(8,25,74,.07); opacity: 0; transform: translateY(8px); transition: opacity 220ms ease,transform 220ms ease,background-color 200ms ease,border-color 200ms ease,box-shadow 200ms ease; }
body.page-id-664 .mrs-configurateur .mrs-preview-view-cart[hidden] { display: none!important; }
body.page-id-664 .mrs-configurateur .mrs-preview-view-cart.is-visible { opacity: 1; transform: translateY(0); }
body.page-id-664 .mrs-configurateur .mrs-preview-view-cart:hover,
body.page-id-664 .mrs-configurateur .mrs-preview-view-cart:focus-visible { border-color: #0f1563; background: #f5f3ee; color: #0f1563!important; box-shadow: 0 7px 18px rgba(8,25,74,.11); }
body.page-id-664 .mrs-configurateur .mrs-preview-view-cart:focus-visible { outline: 3px solid rgba(183,134,74,.42); outline-offset: 3px; }
@keyframes mrs-cart-spin { to { transform: rotate(360deg); } }
.mrs-cart-flyer { position: fixed!important; z-index: 100000; display: block; max-width: none!important; margin: 0!important; padding: 0!important; border: 0!important; border-radius: 0; background: transparent; box-shadow: none!important; object-fit: contain; pointer-events: none; transform-origin: center; will-change: transform,opacity; }
.mrs-cart-toast { position: fixed; right: 24px; bottom: 24px; z-index: 100001; display: flex; min-width: min(310px,calc(100vw - 32px)); max-width: min(390px,calc(100vw - 32px)); flex-direction: column; align-items: flex-start; gap: 5px; box-sizing: border-box; padding: 15px 18px; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; background: linear-gradient(135deg,#188763 0%,#0f6d51 100%); box-shadow: 0 16px 38px rgba(8,70,52,.28),inset 0 1px 0 rgba(255,255,255,.14); color: #fff; opacity: 0; transform: translateY(12px); transition: opacity 220ms ease,transform 220ms ease; }
.mrs-cart-toast.is-visible { opacity: 1; transform: none; }
.mrs-cart-toast-message { font-weight: 750; letter-spacing: .01em; }
.mrs-cart-toast a { color: #fff!important; font-size: 13px; font-weight: 700; text-decoration: underline; text-decoration-color: rgba(255,255,255,.62); text-underline-offset: 3px; }
.mrs-cart-toast a:hover,.mrs-cart-toast a:focus-visible { color: #fff!important; text-decoration-color: #fff; }

.et-l--header .et_pb_menu_0_tb_header .et-menu { align-items: center!important; }
.et-l--header .et_pb_menu_0_tb_header .et-menu>li.mrs-header-cart-menu-item { display: flex!important; align-items: center!important; align-self: center!important; height: 44px; margin: 0 0 0 2px!important; padding-block: 0!important; transform: none!important; }
.et-l--header .mrs-header-cart-link { position: relative!important; display: inline-flex!important; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0!important; border: 1px solid rgba(255,255,255,.38); border-radius: 50%; text-decoration: none!important; }
.mrs-header-cart-icon { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.mrs-header-cart-badge { position: absolute; top: -6px; right: -7px; display: grid; place-items: center; min-width: 19px; height: 19px; padding: 0 5px; border: 2px solid #0f1563; border-radius: 99px; background: #d59a52; color: #08194a; font-size: 10px; font-weight: 800; line-height: 1; }
.mrs-header-cart-badge.is-empty { display: none; }
.mrs-header-cart-badge.is-pulsing { animation: mrs-cart-badge-pulse 520ms ease; }
@keyframes mrs-cart-badge-pulse { 50% { transform: scale(1.35); } }

body.woocommerce-cart { background-color: #fbfaf7; background-image: url("../images/fond-clair-bloc.png"); }
body.woocommerce-cart #sidebar,body.woocommerce-checkout #sidebar,body.single-product #sidebar,body.woocommerce-account #sidebar,body.woocommerce-cart .widget-area,body.woocommerce-checkout .widget-area,body.single-product .widget-area,body.woocommerce-account .widget-area,body.woocommerce-cart #main-content .container::before,body.woocommerce-checkout #main-content .container::before,body.single-product #main-content .container::before,body.woocommerce-account #main-content .container::before { display: none!important; }
body.woocommerce-cart #main-content .container,body.woocommerce-cart #left-area { width: 100%!important; max-width: none!important; padding: 0!important; }
body.woocommerce-checkout #left-area,body.single-product #left-area,body.woocommerce-account #left-area { width: 100%!important; max-width: none!important; padding-right: 0!important; }
body.woocommerce-cart #main-content .container { width: min(calc(100% - 48px),1520px)!important; margin-inline: auto; padding-block: 46px 72px!important; }
.mrs-cart-hero { margin-bottom: 34px; text-align: center; }
.mrs-cart-kicker { margin: 0 0 8px; color: #a56e35; font-size: 11px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.mrs-cart-hero h1 { margin: 0 0 10px; color: #0f1563; font-family: "goudy-old-style",Georgia,serif; font-size: clamp(42px,5vw,62px); font-weight: 400; }
.mrs-cart-hero p:last-child { color: #45516d; font-size: 17px; }
body.woocommerce-cart .woocommerce-cart-form,body.woocommerce-cart .cart-collaterals .cart_totals { border: 1px solid rgba(8,25,74,.1); border-radius: 18px; background: rgba(255,253,249,.96); box-shadow: 0 16px 42px rgba(8,25,74,.07); }
body.woocommerce-cart table.shop_table { margin: 0; border: 0; border-radius: 18px; background: transparent; }
body.woocommerce-cart table.shop_table th { color: #0f1563; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
body.woocommerce-cart table.shop_table td { border-top-color: rgba(8,25,74,.1); padding-block: 18px; }
body.woocommerce-cart td.product-thumbnail { width: 285px; padding: 18px 20px; }
body.woocommerce-cart td.product-name { width: 42%; }
body.woocommerce-cart td.product-name,body.woocommerce-cart td.product-name>a { color: #0f1563; font-family: "goudy-old-style",Georgia,serif; font-size: 23px; font-weight: 700; }
body.woocommerce-cart th.product-price,body.woocommerce-cart td.product-price { display: none!important; }
body.woocommerce-cart .product-name .woocommerce-product-details__short-description,body.woocommerce-cart .product-name .product_meta,body.woocommerce-cart .product-name .wc-item-meta+p,body.woocommerce-cart .product-name>p:not(.backorder_notification) { display: none!important; }
.mrs-cart-plate-preview { display: block; width: 100%; padding: 0; border: 0; background: transparent; cursor: zoom-in; text-align: center; }
.mrs-cart-plate-canvas { position: relative; display: block; width: 100%; container-type: inline-size; }
.mrs-cart-plate-canvas img {
	display: block;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	padding: 0 !important;
	object-fit: contain;
	object-position: center;
	filter: none !important;
	transform: none !important;
}
.mrs-cart-plate-expand { display: inline-block; margin-top: 8px; color: #6c5772; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.mrs-cart-meta-list { display: flex; flex-direction: column; gap: 2px; }.mrs-cart-meta-list span { display: block; }
body.woocommerce-cart dl.variation { display: grid; grid-template-columns: 78px minmax(0,1fr); gap: 6px 14px; margin-top: 12px; }
body.woocommerce-cart dl.variation dt,body.woocommerce-cart dl.variation dd { margin: 0!important; padding: 0!important; }
body.woocommerce-cart dl.variation dt { color: #0f1563; font-size: 12px; font-weight: 800; }
body.woocommerce-cart dl.variation dd { color: #45516d; font-size: 13px; }
body.woocommerce-cart .cart-collaterals { margin-top: 28px; }body.woocommerce-cart .cart-collaterals .cart_totals { padding: 28px; }
@media (min-width:981px) { body.woocommerce-cart .cart-collaterals .cart_totals { position: sticky; top: 30px; } }
body.woocommerce-cart .cart_totals h2 { color: #0f1563; font-family: "goudy-old-style",Georgia,serif; font-size: 34px; }
body.woocommerce-cart .checkout-button { border-radius: 8px!important; background: #0f1563!important; font-size: 14px!important; letter-spacing: .08em; }
body.woocommerce-cart .mrs-create-another-plate { margin-top: 20px; border: 2px solid #0f1563!important; border-radius: 8px!important; background: transparent!important; color: #0f1563!important; text-transform: uppercase; }
.mrs-cart-lightbox[hidden] { display: none!important; }.mrs-cart-lightbox { position: fixed; inset: 0; z-index: 100010; display: grid; place-items: center; padding: 28px; background: rgba(4,10,34,.88); }
.mrs-cart-lightbox-dialog { position: relative; width: min(88vw,1200px); max-height: 84vh; }.mrs-cart-lightbox-content { width: 100%; }.mrs-cart-lightbox-content .mrs-cart-plate-canvas { width: 100%; max-height: 84vh; }
.mrs-cart-lightbox-close { position: absolute; top: -48px; right: 0; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.6); border-radius: 50%; background: #fff; color: #08194a; font-size: 30px; line-height: 1; cursor: pointer; }
body.mrs-cart-lightbox-open { overflow: hidden; }

@media (max-width:980px) {
	body.page-id-664 .mrs-formulaire>.mrs-preview-fixation,body.page-id-664 .mrs-formulaire>.mrs-preview-total { width: 100%; box-sizing: border-box; }
	.et-l--header .et_pb_menu_0_tb_header .et-menu>li.mrs-header-cart-menu-item { margin: 0 0 0 2px!important; }
	body.woocommerce-cart #main-content .container { width: min(calc(100% - 28px),1380px)!important; padding-block: 36px 60px!important; }
	body.woocommerce-cart td.product-thumbnail { width: auto; }body.woocommerce-cart .mrs-cart-plate-preview { max-width: 440px; margin-inline: auto; }
}
@media (max-width:560px) {
	body.page-id-664 .mrs-fixation-options { grid-template-columns: 1fr; }body.page-id-664 .mrs-fixation-card { min-height: 0; }
	.mrs-cart-toast { right: 16px; bottom: 16px; }
	body.woocommerce-cart table.shop_table_responsive tr { padding: 18px; border-bottom: 1px solid rgba(8,25,74,.1); }
	body.woocommerce-cart table.shop_table_responsive td { padding: 11px 0!important; }
	body.woocommerce-cart dl.variation { grid-template-columns: 72px minmax(0,1fr); text-align: left; }.mrs-cart-lightbox { padding: 16px; }
}
@media (prefers-reduced-motion:reduce) {
	body.page-id-664 .mrs-fixation-card,body.page-id-664 .mrs-preview-view-cart,.mrs-cart-toast,.mrs-cart-flyer { transition: none!important; animation: none!important; }
	body.page-id-664 .mrs-preview-add-to-cart.is-loading::before,.mrs-header-cart-badge.is-pulsing { animation: none!important; }
}

/* Panier premium : présentation isolée de la page panier. */
body.woocommerce-cart h1.entry-title.main_title:empty { display:none!important; }
body.woocommerce-cart #main-content .container { width:min(calc(100% - 48px),1280px)!important; }
.mrs-cart-page>.woocommerce { display:grid; grid-template-columns:minmax(0,2fr) minmax(310px,1fr); gap:32px; align-items:start; }
.mrs-cart-page .woocommerce-notices-wrapper,.mrs-cart-page .woocommerce-message,.mrs-cart-page .woocommerce-error,.mrs-cart-page .woocommerce-info { grid-column:1/-1; }
.mrs-cart-page .woocommerce-notices-wrapper { width:100%; margin:0; }
.mrs-cart-page .woocommerce-message,
.mrs-cart-page .woocommerce-info,
.mrs-cart-page .woocommerce-error {
	position:relative;
	box-sizing:border-box;
	width:100%;
	margin:0 0 20px;
	padding:14px 18px 14px 48px!important;
	border:1px solid rgba(15,21,99,.12);
	border-top:1px solid rgba(15,21,99,.12);
	border-left:3px solid #b7864a;
	border-radius:10px;
	background:#fffdf9!important;
	box-shadow:0 8px 24px rgba(8,25,74,.06);
	color:#263252!important;
	font-size:14px!important;
	line-height:1.5;
	list-style:none;
}
.mrs-cart-page .woocommerce-message::before,
.mrs-cart-page .woocommerce-info::before,
.mrs-cart-page .woocommerce-error::before {
	content:"✓";
	position:absolute;
	top:50%;
	left:17px;
	display:flex;
	width:20px;
	height:20px;
	align-items:center;
	justify-content:center;
	margin:0;
	border:1px solid rgba(183,134,74,.42);
	border-radius:50%;
	color:#9b642d;
	font-family:Arial,sans-serif;
	font-size:12px;
	font-weight:800;
	line-height:1;
	transform:translateY(-50%);
}
.mrs-cart-page .woocommerce-error {
	border-left-color:#9b5656;
}
.mrs-cart-page .woocommerce-error::before {
	content:"!";
	border-color:rgba(155,86,86,.35);
	color:#8c3434;
}
.mrs-cart-page .woocommerce-message .restore-item,
.mrs-cart-page .woocommerce-message .button.wc-forward,
.mrs-cart-page .woocommerce-info .button.wc-forward {
	float:none;
	margin-left:8px;
	padding:0;
	border:0;
	background:transparent;
	box-shadow:none;
	color:#8a5929;
	font-size:inherit;
	font-weight:800;
	line-height:inherit;
	text-decoration:underline;
	text-underline-offset:3px;
}
.mrs-cart-page .woocommerce-message .restore-item:hover,
.mrs-cart-page .woocommerce-message .button.wc-forward:hover,
.mrs-cart-page .woocommerce-info .button.wc-forward:hover {
	background:transparent;
	color:#0f1563;
}
.mrs-cart-page .woocommerce-cart-form { min-width:0; border:0!important; background:transparent!important; box-shadow:none!important; }
.mrs-cart-page .woocommerce-cart-form table,.mrs-cart-page .woocommerce-cart-form tbody { display:block; }
.mrs-cart-page .woocommerce-cart-form thead { display:none; }
.mrs-cart-page .woocommerce-cart-form tbody { display:grid; gap:22px; }
.mrs-cart-page .woocommerce-cart-form tr.cart_item { position:relative; display:grid; grid-template-columns:minmax(264px,312px) minmax(0,1fr) 132px; grid-template-areas:"preview details quantity" "preview details subtotal"; gap:8px 26px; align-items:center; padding:24px; border:1px solid rgba(8,25,74,.1); border-radius:18px; background:rgba(255,253,249,.96); box-shadow:0 14px 36px rgba(8,25,74,.07); }
.mrs-cart-page .woocommerce-cart-form tr.cart_item>td { display:block; width:auto!important; padding:0!important; border:0!important; text-align:left!important; }
.mrs-cart-page td.product-remove { position:absolute; right:22px; bottom:19px; }
.mrs-cart-page td.product-thumbnail { grid-area:preview; }
.mrs-cart-page td.product-name { grid-area:details; align-self:start; padding-top:4px!important; }
.mrs-cart-page td.product-quantity { grid-area:quantity; align-self:end; }
.mrs-cart-page td.product-subtotal { grid-area:subtotal; align-self:start; }
.mrs-cart-page .mrs-cart-plate-preview { max-width:312px; margin-inline:auto; }
.mrs-cart-page .mrs-cart-product-title { margin:0 0 3px; padding:0; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:clamp(24px,2.1vw,31px); font-weight:700; line-height:1.15; }
.mrs-cart-page .mrs-cart-product-format { margin:0 0 20px; padding:0; color:#697187; font-size:13px; line-height:1.45; }
.mrs-cart-page .mrs-cart-personalization { padding-top:16px; border-top:1px solid rgba(8,25,74,.1); }
.mrs-cart-page .mrs-cart-personalization h3 { margin:0 0 9px; padding:0; color:#9b642d; font-size:11px; font-weight:800; letter-spacing:.12em; line-height:1.3; text-transform:uppercase; }
.mrs-cart-page .mrs-cart-text-lines { display:grid; gap:2px; margin-bottom:11px; }
.mrs-cart-page .mrs-cart-text-lines p { margin:0; padding:0; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:18px; font-weight:700; line-height:1.28; }
.mrs-cart-page .mrs-cart-compact-detail { margin:3px 0 0; padding:0; color:#566079; font-size:12px; line-height:1.45; }
.mrs-cart-page .mrs-cart-compact-detail strong { color:#263252; }
.mrs-cart-page .quantity { display:inline-flex; align-items:center; overflow:hidden; border:1px solid rgba(15,21,99,.22); border-radius:8px; background:#fff; }
.mrs-cart-page .quantity .qty { width:44px!important; height:40px; padding:0!important; border:0!important; background:transparent; color:#0f1563; font-size:14px; font-weight:800; text-align:center!important; -moz-appearance:textfield; }
.mrs-cart-page .quantity .qty::-webkit-inner-spin-button,.mrs-cart-page .quantity .qty::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
.mrs-cart-page .mrs-quantity-button { width:40px; height:40px; padding:0; border:0; background:#f2eee6; color:#0f1563; font-size:20px; font-weight:700; cursor:pointer; }
.mrs-cart-page .mrs-quantity-button:hover { background:#e8dfd1; }
.mrs-cart-page .mrs-quantity-button:focus-visible { position:relative; z-index:1; outline:2px solid #b7864a; outline-offset:-2px; }
.mrs-cart-page td.product-subtotal { padding-bottom:38px!important; color:#0f1563; font-size:17px; font-weight:800; text-align:center!important; }
.mrs-cart-page td.product-subtotal::before { content:"Sous-total"; display:block; margin-bottom:2px; color:#697187; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.mrs-cart-page .product-remove .remove { display:inline-flex!important; width:auto!important; height:auto!important; align-items:center; gap:6px; padding:3px!important; border-radius:0!important; color:#697187!important; font-size:12px!important; font-weight:600!important; line-height:1.3!important; text-decoration:underline; text-underline-offset:3px; }
.mrs-cart-page .product-remove .remove:hover { background:transparent!important; color:#8c3434!important; }
.mrs-cart-page .product-remove svg { width:14px; height:14px; }
.mrs-cart-page .woocommerce-cart-form tr:not(.cart_item) .actions { padding:4px 0 0!important; border:0!important; }
.mrs-cart-page button[name="update_cart"] { display:none!important; }
.mrs-cart-page .mrs-coupon-toggle { padding:4px 0; border:0; background:transparent; color:#566079; font-size:12px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.mrs-cart-page .mrs-coupon-toggle[hidden] { display:none!important; }
.mrs-cart-page .coupon { display:flex; gap:8px; margin-top:12px; }
.mrs-cart-page .coupon[hidden] { display:none!important; }
.mrs-cart-page .coupon #coupon_code { width:min(260px,100%); min-height:43px; border:1px solid rgba(15,21,99,.2); border-radius:7px; }
.mrs-cart-page .coupon button { min-height:43px; border-radius:7px!important; color:#0f1563!important; font-size:12px!important; }
.mrs-cart-page .cart-collaterals { min-width:0; margin:0!important; }
.mrs-cart-page .cart-collaterals .cart_totals { float:none!important; width:100%!important; padding:28px!important; }
.mrs-cart-page .cart_totals h2 { margin-bottom:20px; padding:0; font-size:33px; }
.mrs-cart-page .cart_totals table { margin-bottom:22px!important; border-radius:0!important; }
.mrs-cart-page .cart_totals th,.mrs-cart-page .cart_totals td { padding:13px 0!important; border-color:rgba(8,25,74,.1)!important; }
.mrs-cart-page .cart_totals th { width:44%; }
.mrs-cart-page .woocommerce-shipping-totals td { font-size:0; }
.mrs-cart-page .woocommerce-shipping-totals td::after { content:"Calculée à l’étape suivante"; color:#566079; font-size:12px; font-weight:400; line-height:1.4; }
.mrs-cart-page .order-total th { color:#0f1563!important; font-size:14px!important; }
.mrs-cart-page .order-total td { color:#0f1563; font-size:24px; font-weight:800; }
.mrs-cart-page .wc-proceed-to-checkout { padding:0!important; }
.mrs-cart-page .checkout-button,.mrs-cart-page .mrs-create-another-plate { display:flex!important; width:100%; min-height:51px; align-items:center; justify-content:center; box-sizing:border-box; margin:0 0 11px!important; padding:12px 16px!important; line-height:1.25!important; }
.mrs-cart-page .mrs-empty-cart { grid-column:1/-1; max-width:680px; margin:10px auto 0; padding:58px 34px 36px; border:1px solid rgba(8,25,74,.1); border-radius:18px; background:rgba(255,253,249,.96); box-shadow:0 16px 42px rgba(8,25,74,.07); text-align:center; }
.mrs-cart-page .mrs-empty-cart-icon { display:block; margin-bottom:16px; color:#b7864a; font-size:35px; }
.mrs-cart-page .mrs-empty-cart h2 { margin:0 0 9px; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:clamp(31px,4vw,43px); }
.mrs-cart-page .mrs-empty-cart p { margin:0; color:#566079; }
.mrs-cart-page .return-to-shop { grid-column:1/-1; margin:0 auto; }
.mrs-cart-page .return-to-shop .button { padding:14px 24px!important; border-radius:8px!important; background:#0f1563!important; color:#fff!important; font-size:13px!important; letter-spacing:.08em; }
@media (min-width:981px) { .mrs-cart-page .cart-collaterals .cart_totals { position:sticky; top:30px; } }
@media (max-width:1050px) {
	.mrs-cart-page>.woocommerce { grid-template-columns:minmax(0,1.72fr) minmax(285px,1fr); gap:22px; }
	.mrs-cart-page .woocommerce-cart-form tr.cart_item { grid-template-columns:246px minmax(0,1fr); grid-template-areas:"preview details" "quantity subtotal"; }
	.mrs-cart-page td.product-quantity { justify-self:start; }
	.mrs-cart-page td.product-subtotal { justify-self:end; align-self:center; padding:0 0 31px!important; }
}
@media (max-width:820px) {
	body.woocommerce-cart #main-content .container { width:min(calc(100% - 28px),1280px)!important; }
	.mrs-cart-page>.woocommerce { grid-template-columns:1fr; }
	.mrs-cart-page .cart-collaterals { grid-column:1; }
	.mrs-cart-page .cart-collaterals .cart_totals { position:static; }
}
@media (max-width:560px) {
	.mrs-cart-page .woocommerce-message,
	.mrs-cart-page .woocommerce-info,
	.mrs-cart-page .woocommerce-error {
		margin-bottom:16px;
		padding:13px 14px 13px 43px!important;
		font-size:13px!important;
	}
	.mrs-cart-page .woocommerce-message::before,
	.mrs-cart-page .woocommerce-info::before,
	.mrs-cart-page .woocommerce-error::before { left:14px; }
	.mrs-cart-page .woocommerce-cart-form tr.cart_item { grid-template-columns:1fr 1fr; grid-template-areas:"preview preview" "details details" "quantity subtotal"; gap:17px 12px; padding:18px; }
	.mrs-cart-page .mrs-cart-plate-preview { max-width:420px; }
	.mrs-cart-page td.product-subtotal { padding:0 0 32px!important; }
	.mrs-cart-page td.product-remove { right:17px; bottom:17px; }
	.mrs-cart-page .cart-collaterals .cart_totals { padding:22px!important; }
	.mrs-cart-page .coupon { flex-direction:column; }
	.mrs-cart-page .coupon #coupon_code { width:100%; }
}

/* Ajustements ciblés : carte épurée, récapitulatif sticky et CTA principal. */
.mrs-cart-page>.woocommerce,
.mrs-cart-page .woocommerce-cart-form,
.mrs-cart-page .cart-collaterals {
	overflow:visible!important;
	transform:none!important;
}

body.woocommerce-cart #main-content,
body.woocommerce-cart #main-content>.container,
body.woocommerce-cart #left-area,
.mrs-cart-page {
	overflow:visible!important;
	transform:none!important;
}

.mrs-cart-page .woocommerce-cart-form tr.cart_item {
	grid-template-columns:minmax(288px,336px) minmax(0,1fr) 132px;
	gap:8px 22px;
}

.mrs-cart-page .mrs-cart-plate-preview { max-width:336px; }
.mrs-cart-page dl.variation[hidden] { display:none!important; }
.mrs-cart-page .mrs-cart-product-format { display:none!important; }
.mrs-cart-page .mrs-cart-product-title { margin-bottom:12px; }
.mrs-cart-page .mrs-cart-personalization { padding-top:12px; }

body.woocommerce-cart .mrs-cart-page .checkout-button,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward {
	display:flex!important;
	width:100%!important;
	min-height:56px!important;
	align-items:center;
	justify-content:center;
	box-sizing:border-box;
	padding:17px 20px!important;
	border:2px solid #0f1563!important;
	border-radius:8px!important;
	background:#0f1563!important;
	box-shadow:0 8px 20px rgba(15,21,99,.18)!important;
	color:#fff!important;
	font-size:16px!important;
	font-weight:800!important;
	line-height:1.2!important;
	letter-spacing:.07em!important;
	opacity:1!important;
	pointer-events:auto!important;
	text-align:center;
	text-transform:uppercase;
	transition:background-color 180ms ease,box-shadow 180ms ease,transform 180ms ease!important;
}

body.woocommerce-cart .mrs-cart-page .checkout-button:hover,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward:hover {
	background:#19217a!important;
	border-color:#19217a!important;
	box-shadow:0 11px 24px rgba(15,21,99,.24)!important;
	color:#fff!important;
	transform:none;
}

body.woocommerce-cart .mrs-cart-page .checkout-button:focus-visible,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward:focus-visible {
	outline:3px solid #b7864a!important;
	outline-offset:3px!important;
	color:#fff!important;
}

.mrs-cart-page .mrs-create-another-plate {
	min-height:48px;
	box-shadow:none!important;
	font-size:13px!important;
	font-weight:700!important;
	opacity:1!important;
}
.mrs-cart-page .wc-proceed-to-checkout .mrs-create-another-plate { margin-bottom:0!important; }

@media (min-width:981px) {
	.mrs-cart-page .cart-collaterals {
		position:sticky;
		top:125px;
		align-self:start;
	}
	.mrs-cart-page .cart-collaterals .cart_totals {
		position:static;
		top:auto;
	}
}

@media (max-width:1050px) and (min-width:981px) {
	.mrs-cart-page .woocommerce-cart-form tr.cart_item {
		grid-template-columns:220px minmax(0,1fr);
	}
}

@media (max-width:980px) {
	.mrs-cart-page .cart-collaterals,
	.mrs-cart-page .cart-collaterals .cart_totals {
		position:static;
		top:auto;
	}
}

@media (max-width:560px) {
	.mrs-cart-page .mrs-cart-product-title { margin-bottom:9px; }
	.mrs-cart-page .mrs-cart-personalization { padding-top:10px; }
}

/* Finition premium panier: expédition, code promo, total et animations unifiées. */
.mrs-cart-page .cart-collaterals .cart_totals {
	padding: 32px !important;
	border-radius: 18px !important;
	border: 1px solid rgba(15, 21, 99, 0.14) !important;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(251, 247, 239, 0.96) 100%) !important;
	box-shadow: 0 16px 40px rgba(8, 25, 74, 0.1) !important;
}

.mrs-cart-page .cart_totals h2 {
	margin-bottom: 24px;
	font-family: "goudy-old-style", Georgia, serif;
	font-size: clamp(30px, 2.8vw, 36px);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: 0.01em;
}

.mrs-cart-page .cart_totals table {
	margin-bottom: 26px !important;
	border-collapse: separate;
	border-spacing: 0;
}

.mrs-cart-page .cart_totals th,
.mrs-cart-page .cart_totals td {
	padding: 14px 0 !important;
	border-color: rgba(8, 25, 74, 0.1) !important;
	vertical-align: top;
}

.mrs-cart-page .cart_totals th {
	color: #5b647d;
	font-size: 11px !important;
	font-weight: 800;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.mrs-cart-page .cart_totals tr.cart-discount td {
	min-width: 0;
	text-align: right;
}

.mrs-cart-page .cart_totals tr.cart-discount .woocommerce-remove-coupon {
	display: block;
	width: max-content;
	margin: 5px 0 0;
	color: #9b642d;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none;
	transition: color 160ms ease;
}

.mrs-cart-page .cart_totals tr.cart-discount .woocommerce-remove-coupon:hover,
.mrs-cart-page .cart_totals tr.cart-discount .woocommerce-remove-coupon:focus-visible {
	color: #0f1563;
	text-decoration: none;
}

.mrs-cart-page .woocommerce-shipping-totals th {
	position: relative;
	padding-left: 0 !important;
	color: #0f1563;
}

.mrs-cart-page .woocommerce-shipping-totals th::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 10px;
	vertical-align: -2px;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f1563' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v10H3zM14 10h4l3 3v4h-7z'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E");
	opacity: .9;
}

.mrs-cart-page .woocommerce-shipping-totals td {
	font-size: 0;
	padding: 0 !important;
	border: 0 !important;
}

.mrs-cart-page .woocommerce-shipping-totals td .woocommerce-shipping-methods,
.mrs-cart-page .woocommerce-shipping-totals td .shipping-calculator-form,
.mrs-cart-page .woocommerce-shipping-totals td .shipping-calculator-button,
.mrs-cart-page .woocommerce-shipping-totals td p {
	display: none !important;
}

.mrs-cart-page .woocommerce-shipping-totals td::after {
	content: "Calculée à l’étape suivante";
	display: block;
	margin-top: 8px;
	padding: 11px 14px;
	border: 1px solid rgba(183, 134, 74, 0.42);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.86);
	color: #5e6780;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
}

.mrs-cart-page .order-total th {
	color: #0f1563 !important;
	font-size: 12px !important;
	letter-spacing: 0.12em;
}

.mrs-cart-page .order-total td {
	color: #0f1563;
	font-family: "goudy-old-style", Georgia, serif;
	font-size: clamp(28px, 2.6vw, 34px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.01em;
}

.mrs-cart-page .coupon {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	align-items: stretch;
	margin-top: 14px;
}

.mrs-cart-page .coupon #coupon_code,
.mrs-cart-page .coupon button[name="apply_coupon"] {
	height: 50px;
	min-height: 50px;
	border-radius: 9px !important;
	box-sizing: border-box;
}

.mrs-cart-page .coupon #coupon_code {
	width: 100%;
	padding: 0 14px;
	border: 1px solid rgba(15, 21, 99, 0.2);
	background: rgba(255, 255, 255, 0.95);
	color: #0f1563;
	font-size: 14px;
	font-weight: 600;
}

.mrs-cart-page .coupon #coupon_code::placeholder {
	color: #7a8298;
	opacity: 1;
}

.mrs-cart-page .coupon button[name="apply_coupon"] {
	padding: 0 20px !important;
	border: 2px solid #0f1563 !important;
	background: #0f1563 !important;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mrs-cart-page .coupon button[name="apply_coupon"]:hover,
.mrs-cart-page .coupon button[name="apply_coupon"]:focus-visible {
	background: transparent !important;
	color: #0f1563 !important;
	box-shadow: none !important;
}

.mrs-cart-page .coupon button,
.mrs-cart-page .checkout-button,
.mrs-cart-page .mrs-create-another-plate,
.mrs-cart-page .button,
.mrs-cart-page a.button {
	transition: background-color 300ms ease, color 300ms ease, border-color 300ms ease, box-shadow 300ms ease !important;
}

body.woocommerce-cart .mrs-cart-page .checkout-button::before,
body.woocommerce-cart .mrs-cart-page .checkout-button::after,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward::before,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward::after,
body.woocommerce-cart .mrs-cart-page .mrs-create-another-plate::before,
body.woocommerce-cart .mrs-cart-page .mrs-create-another-plate::after {
	content: none !important;
	display: none !important;
}

body.woocommerce-cart .mrs-cart-page .checkout-button,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward {
	border-color: #0f1563 !important;
	background: #0f1563 !important;
	box-shadow: 0 8px 18px rgba(8, 25, 74, 0.14) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.085em !important;
}

body.woocommerce-cart .mrs-cart-page .checkout-button:hover,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward:hover,
body.woocommerce-cart .mrs-cart-page .checkout-button:focus-visible,
body.woocommerce-cart .mrs-cart-page a.checkout-button.button.alt.wc-forward:focus-visible {
	background: transparent !important;
	color: #0f1563 !important;
	border-color: #0f1563 !important;
	box-shadow: none !important;
	transform: none;
	outline: none !important;
}

@media (max-width: 560px) {
	.mrs-cart-page .coupon {
		grid-template-columns: 1fr;
	}

	.mrs-cart-page .cart_totals tr.cart-discount th,
	.mrs-cart-page .cart_totals tr.cart-discount td {
		display: block;
		width: 100%;
		text-align: left;
	}

	.mrs-cart-page .cart_totals tr.cart-discount th {
		padding-bottom: 3px !important;
	}

	.mrs-cart-page .cart_totals tr.cart-discount td {
		padding-top: 0 !important;
	}
}

.mrs-cart-page .mrs-cart-personalization-toggle {
	display: none;
}

.mrs-cart-page .mrs-cart-mobile-preview-title,
.mrs-cart-page .mrs-cart-mobile-personalization-table,
.mrs-cart-page .mrs-cart-mobile-fixation {
	display: none;
}

@media (max-width: 767px) {
	.mrs-cart-page .woocommerce-cart-form tbody {
		gap: 16px;
	}

	.mrs-cart-page .woocommerce-cart-form tr.cart_item {
		grid-template-columns: minmax(0, 1fr) minmax(118px, auto);
		grid-template-areas:
			"preview preview"
			"details details"
			"quantity subtotal";
		gap: 12px 14px;
		padding: 15px;
		border-radius: 16px;
		box-shadow: 0 10px 28px rgba(8, 25, 74, 0.07);
	}

	.mrs-cart-page .woocommerce-cart-form tr.cart_item > td {
		background-color: transparent !important;
	}

	.mrs-cart-page td.product-name {
		padding-top: 0 !important;
	}

	.mrs-cart-page td.product-thumbnail::before {
		content: none !important;
		display: none !important;
	}

	.mrs-cart-page .mrs-cart-mobile-preview-title {
		display: block;
		margin: 0 0 10px;
		overflow: hidden;
		color: #0f1563;
		font-family: "goudy-old-style", Georgia, serif;
		font-size: clamp(14px, 4vw, 17px);
		font-weight: 700;
		line-height: 1.2;
		text-align: center;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	body.woocommerce-cart .mrs-cart-page .mrs-cart-plate-preview {
		width: 80%;
		max-width: 352px;
	}

	.mrs-cart-page .mrs-cart-plate-expand {
		margin-top: 5px;
		font-size: 11px;
		font-weight: 400;
		line-height: 1.3;
	}

	.mrs-cart-page .mrs-cart-product-title {
		display: none;
	}

	.mrs-cart-page .mrs-cart-personalization {
		margin-top: 9px;
		padding-top: 0;
		border-top: 1px solid rgba(8, 25, 74, 0.09);
	}

	.mrs-cart-page .mrs-cart-personalization-toggle {
		display: flex;
		width: 100%;
		min-height: 42px;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 10px 2px 8px;
		border: 0;
		background: transparent;
		color: #59637c;
		font-size: 12px;
		font-weight: 750;
		letter-spacing: 0.035em;
		text-align: left;
		cursor: pointer;
	}

	.mrs-cart-page .mrs-cart-personalization-toggle::after {
		content: "";
		width: 7px;
		height: 7px;
		flex: 0 0 7px;
		border-right: 1.5px solid #9b642d;
		border-bottom: 1.5px solid #9b642d;
		transform: rotate(45deg);
		transition: transform 180ms ease;
	}

	.mrs-cart-page .mrs-cart-personalization-toggle[aria-expanded="true"]::after {
		transform: rotate(225deg);
	}

	.mrs-cart-page .mrs-cart-personalization-content {
		padding: 4px 2px 10px;
	}

	.mrs-cart-page .mrs-cart-personalization-content[hidden] {
		display: none;
	}

	.mrs-cart-page .mrs-cart-personalization-content h3 {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	.mrs-cart-page .mrs-cart-text-lines {
		display: none;
	}

	.mrs-cart-page .mrs-cart-compact-detail {
		display: none;
	}

	.mrs-cart-page .mrs-cart-mobile-personalization-table {
		display: grid;
		width: 100%;
		gap: 7px;
		margin-top: 4px;
	}

	.mrs-cart-page .mrs-cart-mobile-personalization-row {
		display: grid;
		grid-template-columns: minmax(38px, .55fr) minmax(64px, .85fr) minmax(0, 2.6fr);
		gap: 10px;
		align-items: baseline;
		color: #566079;
		font-size: 12px;
		line-height: 1.35;
	}

	.mrs-cart-page .mrs-cart-mobile-personalization-row.is-heading {
		padding-bottom: 4px;
		border-bottom: 1px solid rgba(8, 25, 74, 0.09);
		color: #0f1563;
		font-weight: 700;
	}

	.mrs-cart-page .mrs-cart-mobile-personalization-row span {
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.mrs-cart-page .mrs-cart-mobile-fixation {
		display: block;
		margin: 11px 0 0;
		padding: 9px 0 0;
		border-top: 1px solid rgba(8, 25, 74, 0.09);
		color: #0f1563;
		font-size: 12px;
		font-weight: 600;
		line-height: 1.35;
	}

	.mrs-cart-page td.product-quantity {
		align-self: center;
		justify-self: start;
	}

	.mrs-cart-page td.product-subtotal {
		align-self: center;
		justify-self: end;
		min-width: 108px;
		padding: 0 0 31px !important;
	}

	.mrs-cart-page .quantity .qty,
	.mrs-cart-page .mrs-quantity-button {
		height: 42px;
	}

	.mrs-cart-page .mrs-quantity-button {
		width: 42px;
	}

	.mrs-cart-page td.product-remove {
		right: 15px;
		bottom: 14px;
	}
}

/* Smartphone : supprime uniquement le voile tactile natif du navigateur. */
@media (max-width: 767px) {
	body * {
		-webkit-tap-highlight-color: transparent;
	}
}

/* Moteur visuel partagé : configurateur interactif et aperçu panier en lecture seule. */
.mrs-shared-plate {
	--mrs-plate-safe-left: 1.71%;
	--mrs-plate-safe-right: 1.71%;
	--mrs-plate-safe-top: 4.45%;
	--mrs-plate-safe-bottom: 4.07%;
	--mrs-text-vertical-offset: 2px;
	position: relative;
	display: block;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 2 / 1;
	overflow: hidden;
}

.mrs-shared-plate > .mrs-shared-plate-image {
	position: relative;
	inset: auto;
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	object-fit: contain;
}

.mrs-shared-plate > .mrs-plate-safe-area {
	position: absolute;
	inset: var(--mrs-plate-safe-top) var(--mrs-plate-safe-right) var(--mrs-plate-safe-bottom) var(--mrs-plate-safe-left);
	display: block;
	width: auto;
	height: auto;
	overflow: hidden;
	transform: none;
}

.mrs-plate-holes {
	position: absolute;
	inset: 0;
	z-index: 4;
	pointer-events: none;
}
.mrs-plate-holes[hidden] { display: none !important; }
.mrs-plate-hole {
	position: absolute;
	width: 1.35%;
	aspect-ratio: 1;
	border: 1px solid rgba(8,25,74,.22);
	border-radius: 50%;
	background: radial-gradient(circle at 50% 54%,#fafaf8 0%,#f2f3f4 56%,#d8dce3 82%,rgba(8,25,74,.38) 100%);
	box-shadow: inset 0 1px 1.2px rgba(3,12,45,.34),inset 0 -.45px .7px rgba(255,255,255,.78);
	box-sizing: border-box;
	transform: translate(-50%,-50%);
}
.mrs-plate-hole.is-top-left { left: 3.939655%; top: 7.866009%; }
.mrs-plate-hole.is-top-right { left: 96.060345%; top: 7.866009%; }
.mrs-plate-hole.is-bottom-left { left: 3.939655%; top: 92.133991%; }
.mrs-plate-hole.is-bottom-right { left: 96.060345%; top: 92.133991%; }

.mrs-success-modal {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	display: grid;
	place-items: center;
	padding: 20px;
	background: rgba(8,16,50,.52);
	backdrop-filter: blur(4px);
	isolation: isolate;
	pointer-events: auto;
	touch-action: manipulation;
	opacity: 0;
	transition: opacity 220ms ease;
}
.mrs-success-modal.is-visible { opacity: 1; }
.mrs-success-modal-dialog {
	position: relative;
	width: min(100%,520px);
	padding: 30px;
	border: 1px solid rgba(183,134,74,.28);
	border-radius: 20px;
	background: #fffdf9;
	box-shadow: 0 28px 70px rgba(8,25,74,.26);
	text-align: center;
	transform: translateY(10px) scale(.985);
	transition: transform 220ms cubic-bezier(.2,.75,.25,1);
}
.mrs-success-modal.is-visible .mrs-success-modal-dialog { transform: none; }
.mrs-success-modal-close { position:absolute; top:12px; right:14px; width:38px; height:38px; padding:0; border:0; border-radius:50%; background:transparent; color:#536079; font-size:28px; line-height:1; cursor:pointer; }
.mrs-success-modal-close:hover,.mrs-success-modal-close:focus-visible { background:#f3efe8; color:#0f1563; outline:none; }
.mrs-success-modal-close:focus-visible { box-shadow:0 0 0 3px rgba(183,134,74,.3); }
.mrs-success-modal-check { display:grid; width:54px; height:54px; margin:0 auto 12px; place-items:center; border-radius:50%; background:linear-gradient(145deg,#20a875,#147a5a); box-shadow:0 10px 24px rgba(20,122,90,.25); color:#fff; font-size:28px; animation:mrs-success-check 420ms cubic-bezier(.2,.8,.2,1) both; }
.mrs-success-modal h2 { margin:0 0 20px; color:#0f1563; font-family:"goudy-old-style",Georgia,serif; font-size:32px; }
.mrs-success-modal-preview { width:min(100%,390px); margin:0 auto 22px; }
.mrs-success-modal-preview > .mrs-shared-plate {
	box-shadow:
		0 8px 22px rgba(0,0,0,.18),
		0 2px 6px rgba(0,0,0,.10);
}
.mrs-success-modal .mrs-btn { display:flex!important; width:100%; min-height:52px; align-items:center; justify-content:center; border-radius:8px!important; opacity:1!important; text-decoration:none!important; text-transform:uppercase; -webkit-text-fill-color:currentColor; }
.mrs-success-modal-cart,.mrs-success-modal-cart:visited { border:1px solid #0f1563!important; background:#0f1563!important; color:#fff!important; -webkit-text-fill-color:#fff!important; }
.mrs-success-modal-cart { position:relative; z-index:1; touch-action:manipulation; transform:none!important; transition:none!important; }
.mrs-success-modal-cart:hover,.mrs-success-modal-cart:focus-visible,.mrs-success-modal-cart:active { border-color:#0f1563!important; background:#0f1563!important; color:#fff!important; -webkit-text-fill-color:#fff!important; transform:none!important; }
.mrs-success-modal-new,.mrs-success-modal-new:visited { margin-top:10px; border:1px solid #0f1563!important; background:#fffdf9!important; color:#0f1563!important; -webkit-text-fill-color:#0f1563!important; }
.mrs-success-modal-new:hover,.mrs-success-modal-new:focus-visible,.mrs-success-modal-new:active { border-color:#0f1563!important; background:#eef0fb!important; color:#0f1563!important; -webkit-text-fill-color:#0f1563!important; }
.mrs-cart-edit-plate { display:table; margin-top:8px; color:#9b642d!important; font-family:Arial,sans-serif; font-size:11px!important; font-weight:400!important; line-height:1.3; text-decoration:underline; text-underline-offset:3px; }
.mrs-cart-edit-plate:hover,.mrs-cart-edit-plate:focus-visible { color:#0f1563!important; }
@keyframes mrs-success-check { 0% { opacity:0; transform:scale(.72); } 70% { transform:scale(1.06); } 100% { opacity:1; transform:scale(1); } }
@media (max-width:768px) {
	body.mrs-success-modal-open { overflow:hidden!important; overscroll-behavior:none; }
	body.mrs-success-modal-open .et-l--header { pointer-events:none!important; }
	.mrs-success-modal { width:100%; min-height:100dvh; padding:8px 16px; overflow-x:hidden; box-sizing:border-box; }
	.mrs-success-modal-dialog { width:100%; max-width:480px; min-width:0; max-height:92dvh; margin-inline:auto; padding:clamp(14px,2.2dvh,20px) clamp(14px,4vw,20px); border-radius:16px; box-sizing:border-box; }
	.mrs-success-modal-dialog>* { max-width:100%; min-width:0; box-sizing:border-box; }
	.mrs-success-modal-close { top:8px; right:9px; width:34px; height:34px; font-size:25px; }
	.mrs-success-modal-check { width:clamp(40px,7.5dvh,48px); height:clamp(40px,7.5dvh,48px); margin-bottom:clamp(6px,1.2dvh,9px); font-size:clamp(22px,4.2dvh,26px); }
	.mrs-success-modal h2 { margin-bottom:clamp(10px,1.8dvh,15px); font-size:clamp(24px,4dvh,29px); line-height:1.05; }
	.mrs-success-modal-preview { width:min(86%,340px,48dvh); max-width:100%; min-width:0; margin-bottom:clamp(10px,1.8dvh,15px); box-sizing:border-box; }
	.mrs-success-modal-preview>.mrs-shared-plate,
	.mrs-success-modal-preview>.mrs-shared-plate>img { width:100%; max-width:100%; min-width:0; box-sizing:border-box; }
	.mrs-success-modal .mrs-btn { width:100%; max-width:100%; min-width:0; min-height:clamp(42px,6.8dvh,48px); padding:8px 12px!important; box-sizing:border-box; white-space:normal; overflow-wrap:anywhere; font-size:clamp(11px,2.8vw,13px)!important; line-height:1.15!important; }
	.mrs-success-modal-new { margin-top:clamp(6px,1.2dvh,9px); }
}
@media (prefers-reduced-motion:reduce) { .mrs-success-modal,.mrs-success-modal-dialog,.mrs-success-modal-check { transition:none!important; animation:none!important; } }

.mrs-shared-plate .mrs-preview-text-layer {
	position: absolute;
	top: var(--mrs-text-vertical-offset, 0px);
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	color: #fff;
	font-family: "Goudy Old Style", "goudy-old-style", Goudy, serif;
	font-style: normal;
	font-weight: 700;
	letter-spacing: normal;
	text-align: center;
	visibility: hidden;
	transform-origin: top left;
	pointer-events: none;
	contain: layout paint;
}

.mrs-shared-plate .mrs-preview-text-layer.is-font-ready {
	visibility: visible;
}

.mrs-shared-plate .mrs-preview-line {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	min-height: 0;
	line-height: 1.12;
	white-space: pre;
	overflow: hidden;
	text-overflow: clip;
}
.mrs-shared-plate .mrs-preview-line.has-edit-caret { display:block; overflow:visible; }
.mrs-preview-caret { position:absolute; top:50%; width:1.15px; height:.88em; border-radius:1px; background:#fff; box-shadow:0 0 1px rgba(0,0,0,.2); transform:translate(-50%,-48%); pointer-events:none; animation:mrs-preview-caret-blink 1s step-end infinite; }
@keyframes mrs-preview-caret-blink { 0%,48%,100% { opacity:1; } 49%,99% { opacity:0; } }
@media (prefers-reduced-motion:reduce) { .mrs-preview-caret { animation:none; opacity:1; } }

.mrs-shared-plate .mrs-preview-line.is-empty {
	display: none;
}
.mrs-shared-plate .mrs-preview-line.is-spacer {
	display: block;
	flex: 0 0 1.12em;
	width: 0;
	height: 1.12em;
	min-height: 1.12em;
	overflow: hidden;
}
.mrs-shared-plate .mrs-preview-line.is-empty.has-edit-caret { display:block!important; overflow:visible; }

.mrs-shared-preview-shell {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 2 / 1;
	overflow: hidden;
	box-shadow:
		0 8px 22px rgba(0, 0, 0, 0.18),
		0 2px 6px rgba(0, 0, 0, 0.10);
}

@media (max-width: 768px) {
	.mrs-shared-preview-shell,
	.mrs-success-modal-preview > .mrs-shared-plate {
		box-shadow:
			0 6px 16px rgba(0, 0, 0, 0.16),
			0 2px 5px rgba(0, 0, 0, 0.09);
	}
}

.mrs-shared-preview-shell > .mrs-shared-plate {
	display: none;
}

.mrs-shared-preview-shell > .mrs-shared-preview-fallback {
	display: block;
	width: 100%;
	height: auto;
	visibility: hidden;
}

.mrs-shared-preview-shell.is-component-pending > .mrs-shared-preview-fallback {
	visibility: hidden;
}

.mrs-shared-preview-shell.is-component-fallback > .mrs-shared-preview-fallback {
	visibility: visible;
}

.mrs-shared-preview-shell.is-component-ready > .mrs-shared-plate {
	display: block;
}

.mrs-shared-preview-shell.is-component-ready > .mrs-shared-preview-fallback {
	display: none;
}

/* Le composant complet du panier vaut 70 % de son espace de référence. */
body.woocommerce-cart .mrs-cart-page .mrs-cart-plate-preview {
	width: 84%;
	margin-inline: auto;
}

.mrs-cart-lightbox-content .mrs-shared-preview-shell {
	width: 100%;
}

/* Configurateur : zone d’aperçu stable, cadre cuivré et agrandissement. */
body.page-id-664 .mrs-preview-frame {
	--mrs-preview-frame-gap: 10px;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	place-items: center;
	overflow: visible;
}

body.page-id-664 .mrs-preview-frame::before,
body.page-id-664 .mrs-preview-plate-frame {
	grid-area: 1 / 1;
}

body.page-id-664 .mrs-preview-frame::before {
	content: "";
	width: 87.5%;
	padding: 0;
	border: 1px solid transparent;
	aspect-ratio: 2 / 1;
	box-sizing: content-box;
	pointer-events: none;
}

body.page-id-664 .mrs-preview-plate-frame {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 87.5%;
	max-width: calc(100% - (2 * var(--mrs-preview-frame-gap)) - 2px);
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow:
		0 8px 22px rgba(0, 0, 0, 0.18),
		0 2px 6px rgba(0, 0, 0, 0.10);
	box-sizing: content-box;
	cursor: zoom-in;
	transition: box-shadow 180ms ease;
	touch-action: pan-y;
}

body.page-id-664 .mrs-preview-plate-frame.is-format-petit {
	width: 72.9167%;
}

@media (min-width: 768px) {
	body.page-id-664 .mrs-preview-plate-frame {
		border-radius: 0;
	}

	body.page-id-664 .mrs-preview-plate-frame.is-format-petit {
		width: 61.25%;
		padding: 0;
	}
}

body.page-id-664 .mrs-preview-plate-frame:focus-visible {
	outline: 3px solid rgba(0, 0, 0, 0.28);
	outline-offset: 4px;
}

@media (hover: hover) {
	body.page-id-664 .mrs-preview-plate-frame:hover {
		box-shadow:
			0 10px 26px rgba(0, 0, 0, 0.19),
			0 3px 7px rgba(0, 0, 0, 0.11);
	}
}

body.page-id-664 .mrs-preview-plate-frame > .mrs-plaque.format-petit,
body.page-id-664 .mrs-preview-plate-frame > .mrs-plaque.format-grand {
	width: 100%;
	max-width: none;
}

.mrs-configurator-lightbox .mrs-cart-lightbox-dialog {
	width: min(92vw, 1280px);
	max-height: 88vh;
}

.mrs-configurator-lightbox .mrs-cart-lightbox-content,
.mrs-configurator-lightbox-stage {
	width: 100%;
}

.mrs-configurator-lightbox-stage {
	position: relative;
	max-height: 78vh;
	aspect-ratio: 2 / 1;
	overflow: hidden;
}

.mrs-configurator-lightbox-stage > .mrs-plaque {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: none;
	transform-origin: center;
}

@media (max-width: 980px) {
	body.page-id-664 .mrs-preview-frame {
		--mrs-preview-frame-gap: 8px;
	}

	.mrs-configurator-lightbox {
		padding: 18px;
	}

	.mrs-configurator-lightbox .mrs-cart-lightbox-dialog {
		width: min(94vw, 900px);
		max-height: 86vh;
	}

	.mrs-configurator-lightbox .mrs-cart-lightbox-close {
		top: -50px;
		width: 44px;
		height: 44px;
	}
}

@media (orientation: landscape) and (max-height: 600px) {
	.mrs-configurator-lightbox .mrs-cart-lightbox-dialog {
		width: min(82vw, 1000px);
	}

	.mrs-configurator-lightbox-stage {
		max-height: 70vh;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.page-id-664 .mrs-preview-plate-frame {
		transition: none;
	}
}

/* Panier : titres cohérents et détails mobiles harmonisés. */
/* Header secondaire premium de l'aperçu sticky mobile. */
body.page-id-664 .mrs-preview-enlarge-label { display: none; }

/* Smartphone : aperçu simple et personnalisation des lignes dans la page. */
.mrs-mobile-lines-heading,
.mrs-mobile-lines-panel {
	display: none;
}

@media (max-width: 767px) {
	body.page-id-664 .mrs-mobile-lines-heading:not([hidden]),
	body.page-id-664 .mrs-mobile-lines-panel:not([hidden]) {
		display: block;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-configurator-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		width: 100%;
		max-width: 100%;
	}
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-configurator-steps::before { left: 16.6667%; right: 16.6667%; }
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-configurator-step {
		display: flex;
		min-width: 0;
		padding-inline: 3px;
		font-size: 10px;
	}
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-configurator-step-label {
		max-width: 100%;
		overflow-wrap: normal;
	}
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format:has(input:checked),
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format.is-selected { border-color: #b7864a; }
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format:has(input:checked),
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format.is-selected {
		box-shadow: none;
	}
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format:focus-within {
		outline: 0;
		outline-offset: 0;
	}
	@media (hover: hover) and (pointer: fine) {
		body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-format:has(input:focus-visible) {
			outline: 2px solid rgba(183, 134, 74, .5);
			outline-offset: 2px;
		}
	}
	body.page-id-664 .mrs-configurator-lightbox {
		padding: 16px;
		background: rgba(6, 18, 55, .84);
		-webkit-backdrop-filter: blur(12px);
		backdrop-filter: blur(12px);
	}
	body.page-id-664 .mrs-configurator-lightbox .mrs-cart-lightbox-dialog {
		width: 100%; max-width: 100%; max-height: calc(100dvh - 32px);
	}
	body.page-id-664 .mrs-configurator-lightbox .mrs-cart-lightbox-close { display: none; }
	body.page-id-664 .mrs-configurator-lightbox-stage {
		width: 100%; max-width: 100%; max-height: calc(100dvh - 32px);
	}
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-configurator-kicker,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-configurator-card-title,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-configurator-card-intro,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-champ,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-aide,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-preview-summary,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-preview-fixation,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire > .mrs-note {
		display: none !important;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-formulaire {
		padding-top: 0;
		background: transparent;
		box-shadow: none;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-apercu-zone {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		z-index: 4;
		width: 100% !important;
		max-width: 100% !important;
		max-height: none;
		margin: 0 auto 24px;
		padding: 16px var(--mrs-mobile-grid-inset) 14px;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		overflow: visible;
		transition: margin 180ms ease, padding 180ms ease, border-radius 180ms ease, box-shadow 180ms ease;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-apercu-titre {
		display: block;
		margin: 0 0 12px;
		font-size: 18px;
		letter-spacing: .08em;
		text-align: center;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-plate-frame {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		width: 100%;
		max-width: 100%;
		padding: 0;
		border: 0;
		border-radius: 0;
		gap: 10px;
		box-shadow: none;
		isolation: isolate;
		cursor: default;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-plate-frame::after {
		content: none;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-plate-frame > .mrs-plaque {
		position: relative;
		z-index: 1;
		outline: 0;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-frame::before { display: none; }

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-enlarge-label {
		display: none;
	}

	.mrs-mobile-lines-panel {
		width: 100%;
		min-width: 0;
		margin: 0 auto 24px;
		padding: 0 0 12px;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		overflow: visible;
	}
	.mrs-mobile-lines-panel::before,
	.mrs-mobile-lines-panel::after,
	.mrs-mobile-line-carousel::before,
	.mrs-mobile-line-carousel::after,
	.mrs-mobile-line-carousel-track::before,
	.mrs-mobile-line-carousel-track::after,
	.mrs-mobile-line-pagination::before,
	.mrs-mobile-line-pagination::after {
		content: none;
	}

	.mrs-mobile-lines-panel[hidden] { display: none !important; }
	.mrs-mobile-lines-heading[hidden] { display: none !important; }

	.mrs-mobile-lines-heading {
		margin: 0 var(--mrs-mobile-grid-inset) 16px !important;
		font-family: "myriad-pro", Arial, sans-serif;
	}

	.mrs-mobile-line-carousel {
		width: calc(100% + var(--mrs-mobile-grid-inset) + var(--mrs-mobile-grid-inset));
		max-width: none;
		margin-inline: calc(-1 * var(--mrs-mobile-grid-inset));
		border: 0;
		background: transparent;
		box-shadow: none;
		clip-path: none;
		-webkit-mask-image: none;
		mask-image: none;
		overflow-x: auto;
		overflow-y: visible;
		scroll-behavior: smooth;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 11vw;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.mrs-mobile-line-carousel::-webkit-scrollbar { display: none; }

	.mrs-mobile-line-carousel-track {
		display: flex;
		width: max-content;
		gap: 12px;
		padding-inline: 11vw;
		border: 0;
		background: transparent;
		box-shadow: none;
		clip-path: none;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.mrs-mobile-line-card {
		width: 78vw;
		min-width: 78vw;
		max-width: 336px;
		height: 145px;
		min-height: 145px;
		box-sizing: border-box;
		padding: 14px 13px 13px;
		border: 1px solid #b7864a;
		border-radius: 14px;
		background: #fffaf2;
		box-shadow: 0 6px 16px rgba(8,25,74,.05);
		color: #59637c;
		opacity: .7;
		scroll-snap-align: center;
		scroll-snap-stop: always;
		transition: border-color 180ms ease, box-shadow 180ms ease, opacity 180ms ease, transform 180ms ease;
	}

	.mrs-mobile-line-card[hidden] { display: none !important; }

	.mrs-mobile-line-card.is-active {
		border-color: #b7864a;
		box-shadow: 0 8px 20px rgba(8,25,74,.075);
		opacity: 1;
		transform: none;
	}

	.mrs-mobile-line-card.is-empty:not(.is-active) { opacity: .56; }

	.mrs-mobile-line-card-title {
		margin: 0 0 9px;
		color: #0f1563;
		font-family: "myriad-pro", Arial, sans-serif;
		font-size: 10px;
		font-weight: 650;
		letter-spacing: .13em;
		line-height: 1.2;
		text-align: center;
	}

	.mrs-mobile-line-card-input {
		display: block;
		width: 100%;
		min-width: 0;
		height: 40px;
		padding: 9px 10px;
		border: 1px solid rgba(15,21,99,.16);
		border-radius: 7px;
		outline: 0;
		background: rgba(255,253,249,.34);
		box-shadow: none;
		color: #0f1563;
		font-family: "myriad-pro", Arial, sans-serif;
		font-size: 16px;
		line-height: 1.2;
		text-align: center;
	}

	.mrs-mobile-line-card-input::placeholder { color: #8b91a0; }

	.mrs-mobile-line-card-input:focus {
		border-color: #b7864a;
		box-shadow: 0 0 0 2px rgba(183,134,74,.13);
	}

	.mrs-mobile-line-card-sizes {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 6px;
		margin-top: 10px;
	}

	.mrs-mobile-card-size {
		min-width: 0;
		min-height: 29px;
		padding: 4px;
		border: 1px solid rgba(15,21,99,.18);
		border-radius: 999px;
		background: rgba(255,253,249,.62);
		color: #0f1563;
		font-family: "myriad-pro", Arial, sans-serif;
		font-size: 9px;
		font-weight: 700;
		letter-spacing: .03em;
	}

	.mrs-mobile-card-size.is-active {
		border-color: #b7864a;
		background: #0f1563;
		color: #fffaf2;
		box-shadow: 0 4px 10px rgba(15,21,99,.12);
	}

	.mrs-mobile-card-size.is-unavailable,
	.mrs-mobile-card-size.is-unavailable:hover {
		border-color: rgba(77, 85, 105, .18);
		background: #efefec;
		color: rgba(77, 85, 105, .48);
		box-shadow: none;
	}

	.mrs-mobile-line-card.has-size-feedback {
		height: auto;
		min-height: 174px;
	}

	.mrs-mobile-size-feedback {
		margin: 7px 0 0;
		padding: 5px 7px;
		border: 1px solid rgba(155, 100, 45, .24);
		border-radius: 6px;
		background: rgba(183, 134, 74, .08);
		color: #895527;
		font-family: "myriad-pro", Arial, sans-serif;
		font-size: 10px;
		font-weight: 600;
		line-height: 1.3;
		text-align: center;
	}

	.mrs-mobile-size-feedback[hidden] { display: none !important; }

	.mrs-mobile-line-pagination {
		display: flex;
		min-height: 12px;
		align-items: center;
		justify-content: center;
		gap: 6px;
		margin: 0 0 10px;
		border: 0;
		background: transparent;
		box-shadow: none;
		clip-path: none;
		-webkit-mask-image: none;
		mask-image: none;
	}

	.mrs-mobile-line-dot {
		width: 5px;
		height: 5px;
		padding: 0;
		border: 0;
		border-radius: 50%;
		background: rgba(15,21,99,.22);
		transition: width 160ms ease, background-color 160ms ease;
	}

	.mrs-mobile-line-dot[hidden] { display: none !important; }
	.mrs-mobile-line-dot.is-active { width: 11px; border-radius: 999px; background: #b7864a; }

	.mrs-mobile-card-size:focus-visible,
	.mrs-mobile-line-dot:focus-visible {
		outline: 3px solid rgba(183,134,74,.38);
		outline-offset: 2px;
	}

	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation {
		display: block !important;
		width: 100%;
		max-width: 100%;
		margin: 0 auto 24px;
		padding: 0;
		border: 0;
		background: transparent;
		box-sizing: border-box;
	}

	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-preview-section-title {
		margin-bottom: 14px;
		color: var(--mrs-config-copper);
		font-family: "myriad-pro", Arial, sans-serif;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.3;
		letter-spacing: .14em;
		text-align: center;
	}

	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-options {
		display: grid;
		grid-template-columns: repeat(2, minmax(0,1fr));
		gap: 10px;
	}

	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card {
		position: relative;
		display: flex;
		min-height: 112px;
		align-items: center;
		justify-content: center;
		padding: 14px 12px;
		border: 1px solid rgba(183,134,74,.55);
		border-radius: 14px;
		background: #fffaf2;
		box-shadow: 0 6px 16px rgba(8,25,74,.05);
		text-align: center;
	}

	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card.is-selected {
		border-color: #b7864a;
		background: #0f1563;
		box-shadow: 0 8px 20px rgba(8,25,74,.1);
	}

	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-radio {
		position: absolute;
		top: 11px;
		right: 11px;
		width: 18px;
		height: 18px;
		margin: 0;
		border: 0;
		border-radius: 50%;
		opacity: 0;
	}
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card.is-selected .mrs-fixation-radio { opacity: 1; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card.is-selected .mrs-fixation-radio::after {
		display: grid;
		inset: 0;
		place-items: center;
		background: transparent;
		color: #fff;
		content: "✓";
		font-size: 12px;
		font-weight: 800;
		line-height: 1;
	}
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-copy { align-items: center; gap: 5px; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-copy strong { color: #0f1563; font-family: "myriad-pro", Arial, sans-serif; font-size: 14px; line-height: 1.25; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-price { color: #9b642d; font-size: 12px; line-height: 1.25; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-copy small { margin-top: 2px; color: #667086; font-family: "myriad-pro", Arial, sans-serif; font-size: 11px; line-height: 1.35; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-price { display: none; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-copy small { font-size: 0; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card[data-mrs-fixation-value="NON"] .mrs-fixation-copy small::after { content: "Sans perforation"; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card[data-mrs-fixation-value="OUI"] .mrs-fixation-copy small::after { content: "4 trous de fixation"; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-copy small::after { font-size: 11px; }
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card.is-selected .mrs-fixation-copy strong,
	body.page-id-664 .mrs-preview-fixation.mrs-mobile-external-fixation .mrs-fixation-card.is-selected .mrs-fixation-copy small { color: #fff; }

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-total {
		display: none !important;
	}
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-total .mrs-preview-section-title,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-preview-total-price { color: #0f1563; }

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.is-mobile-keyboard-open .mrs-mobile-lines-heading {
		margin-bottom: 8px !important;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.is-mobile-keyboard-open .mrs-mobile-line-card {
		padding-block: 10px;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.is-mobile-keyboard-open .mrs-mobile-line-card-input {
		height: 38px;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.is-mobile-keyboard-open .mrs-mobile-line-card-sizes {
		margin-top: 7px;
	}

	/* Mode de saisie : l'aperçu et la carte active forment un seul poste de création. */
	body.page-id-664.mrs-mobile-creation-active {
		overflow: hidden;
		overscroll-behavior: none;
	}
	body.page-id-664 .mrs-configurateur .mrs-character-validation-message,
	body.page-id-664 .mrs-configurateur .mrs-size-notice {
		display: none !important;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-apercu-zone {
		position: relative !important;
		top: auto !important;
		z-index: 4;
		margin-bottom: 12px;
		padding: 6px var(--mrs-mobile-grid-inset) 0;
		border-radius: 0;
		background: transparent;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-apercu-titre,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-preview-enlarge-label,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing + .mrs-mobile-lines-heading,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-lines-heading {
		display: none !important;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-preview-plate-frame {
		padding: 0;
		gap: 0;
		border: 0;
		background: transparent;
		box-shadow: none;
		cursor: default;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-preview-plate-frame > .mrs-plaque {
		width: min(100%, max(120px, calc((var(--mrs-mobile-viewport-height, 100dvh) - 210px) * 2)));
		box-shadow: none;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing ~ .mrs-mobile-lines-heading,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-lines-panel {
		margin-top: 0 !important;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-lines-panel {
		position: relative;
		z-index: 4;
		isolation: isolate;
		margin-bottom: 8px;
		padding: 4px 0 2px;
		border-radius: 0;
		background: transparent;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-lines-panel::before {
		content: none;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-line-carousel {
		overflow-y: hidden;
		touch-action: pan-x;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-line-card {
		height: 132px;
		min-height: 132px;
		padding: 10px 12px;
		opacity: 1;
	}

	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-line-card-title { margin-bottom: 6px; }
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-mobile-line-card-sizes { margin-top: 7px; }
	body.page-id-664.mrs-mobile-creation-active .mrs-preview-fixation,
	body.page-id-664.mrs-mobile-creation-active .mrs-preview-total,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-preview-fixation,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-preview-total,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel.mrs-mobile-editing .mrs-preview-add-to-cart { display: none !important; }
}

@media (max-width: 360px) {
	.mrs-mobile-line-carousel-track { gap: 10px; }
	.mrs-mobile-line-card { padding: 12px; }
}

@media (prefers-reduced-motion: reduce) {
	.mrs-mobile-line-card,
	.mrs-mobile-line-dot,
	body.page-id-664 .mrs-configurateur.has-mobile-line-carousel .mrs-apercu-zone,
	body.page-id-664 .mrs-size-notice { transition: none; }
}

.mrs-cart-page td.product-name::before {
	content: none !important;
	display: none !important;
}

@media (max-width: 767px) {
	.mrs-cart-page .mrs-cart-personalization-toggle {
		color: #b7864a;
	}

	.mrs-cart-page .mrs-cart-personalization-toggle::after {
		border-color: #b7864a;
	}

	.mrs-cart-page td.product-subtotal {
		display: flex !important;
		min-width: 142px;
		align-items: baseline;
		justify-content: space-between;
		gap: 14px;
		color: #0f1563;
		font-size: 18px;
		font-weight: 800;
		line-height: 1.25;
	}

	.mrs-cart-page td.product-subtotal::before {
		display: inline;
		margin: 0;
		color: #697187;
		font-size: 12px;
		font-weight: 600;
		letter-spacing: normal;
		text-transform: none;
	}
}

/* Jonction panier/récapitulatif mobile : une seule source de séparation visuelle. */
@media (max-width: 768px) {
	.mrs-cart-page .woocommerce-cart-form,
	.mrs-cart-page .woocommerce-cart-form table,
	.mrs-cart-page .woocommerce-cart-form tbody {
		border-top: 0;
		border-bottom: 0;
		background-image: none;
		box-shadow: none;
	}

	.mrs-cart-page .woocommerce-cart-form tbody > tr:not(.cart_item) {
		display: none;
	}

	.mrs-cart-page .woocommerce-cart-form tr.cart_item.mrs-cart-last-item {
		border-bottom: 0;
	}

	.mrs-cart-page .cart-collaterals {
		position: relative;
		padding: 72px 0 0;
		border-top: 0;
		border-bottom: 0;
		background-image: none;
		box-shadow: none;
	}

	.mrs-cart-page .cart-collaterals::before {
		content: "";
		position: absolute;
		top: 36px;
		left: 14%;
		width: 72%;
		height: 1px;
		background: rgba(183, 134, 74, 0.3);
	}

	.mrs-cart-page .cart-collaterals .cart_totals {
		border-top: 0 !important;
	}
}

/* Carte plaque mobile : quatre zones visuelles, sans modifier les cellules WooCommerce. */
@media (max-width: 767px) {
	.mrs-cart-page .woocommerce-cart-form tr.cart_item {
		grid-template-columns: minmax(0, 1fr) minmax(118px, auto);
		grid-template-areas:
			"preview preview"
			"details details"
			"divider divider"
			"quantity subtotal"
			"remove remove";
		gap: 10px 14px;
		padding: 16px;
		border-color: rgba(8, 25, 74, 0.11);
		border-radius: 17px;
		background: #fffdf9;
		box-shadow: 0 10px 28px rgba(8, 25, 74, 0.065);
	}

	.mrs-cart-page .woocommerce-cart-form tr.cart_item::after {
		content: "";
		grid-area: divider;
		width: calc(100% - 12px);
		height: 1px;
		margin: 2px auto 1px;
		background: rgba(183, 134, 74, 0.25);
	}

	.mrs-cart-page td.product-thumbnail {
		width: 100% !important;
		min-width: 0;
	}

	.mrs-cart-page .mrs-cart-mobile-preview-title {
		display: flex;
		margin: 0 0 11px;
		align-items: baseline;
		justify-content: center;
		gap: 7px;
		font-family: Arial, sans-serif;
		white-space: normal;
	}

	.mrs-cart-page .mrs-cart-mobile-preview-title span {
		color: #0f1563;
		font-size: 14px;
		font-weight: 800;
		letter-spacing: .055em;
		text-transform: uppercase;
	}

	.mrs-cart-page .mrs-cart-mobile-preview-title small {
		color: #697187;
		font-size: 12px;
		font-weight: 600;
		letter-spacing: 0;
	}

	body.woocommerce-cart .mrs-cart-page .mrs-cart-plate-preview {
		display: block;
		width: min(88%, 352px);
		margin: 0 auto;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		cursor: default;
		pointer-events: none;
	}

	.mrs-cart-page .mrs-cart-plate-expand {
		display: none;
	}

	.mrs-cart-page .mrs-cart-item-actions {
		display: grid;
		width: min(88%, 352px);
		margin: 9px auto 0;
		grid-template-columns: minmax(0, 1fr);
		gap: 8px;
	}

	.mrs-cart-page .mrs-cart-enlarge-action,
	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate {
		display: inline-flex;
		width: 100%;
		min-height: 38px;
		align-items: center;
		justify-content: center;
		gap: 6px;
		box-sizing: border-box;
		margin: 0;
		padding: 8px 10px;
		border: 1px solid rgba(183, 134, 74, 0.42);
		border-radius: 8px;
		background: rgba(183, 134, 74, 0.055);
		color: #795128 !important;
		font-family: Arial, sans-serif;
		font-size: 11px !important;
		font-weight: 700 !important;
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
		transition: border-color 170ms ease, background-color 170ms ease, color 170ms ease;
	}

	.mrs-cart-page .mrs-cart-enlarge-action::before { content: "↗"; font-size: 13px; }
	.mrs-cart-page .mrs-cart-enlarge-action { display: none !important; }
	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate::before { content: "✎"; font-size: 13px; }
	.mrs-cart-page .mrs-cart-enlarge-action:hover,
	.mrs-cart-page .mrs-cart-enlarge-action:focus-visible,
	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate:hover,
	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate:focus-visible {
		border-color: rgba(15, 21, 99, 0.48);
		background: rgba(15, 21, 99, 0.045);
		color: #0f1563 !important;
		outline: none;
	}

	.mrs-cart-page .mrs-cart-personalization {
		margin: 0;
		padding: 0;
		border-top: 0;
	}

	.mrs-cart-page td.product-name {
		padding-right: 6px !important;
		padding-left: 6px !important;
	}

	.mrs-cart-page .mrs-cart-personalization-toggle {
		min-height: 40px;
		padding: 9px 2px 7px;
		border-top: 1px solid rgba(8, 25, 74, 0.075);
		color: #b7864a;
		font-size: 11px;
		font-weight: 700;
		letter-spacing: .055em;
		text-transform: uppercase;
	}

	.mrs-cart-page td.product-quantity {
		display: flex !important;
		grid-area: quantity;
		align-self: start;
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
		margin-left: 6px;
	}

	.mrs-cart-page td.product-quantity::before {
		content: "Quantité";
		display: block;
		margin: 0;
		color: #697187;
		font-size: 11px;
		font-weight: 600;
		line-height: 1.2;
		text-transform: none;
	}

	.mrs-cart-page .quantity .qty,
	.mrs-cart-page .mrs-quantity-button {
		height: 38px;
	}

	.mrs-cart-page .quantity .qty { width: 39px !important; }
	.mrs-cart-page .mrs-quantity-button { width: 38px; }

	.mrs-cart-page td.product-subtotal {
		display: flex !important;
		grid-area: subtotal;
		min-width: 0;
		align-self: start;
		align-items: flex-end;
		justify-self: end;
		flex-direction: column;
		gap: 3px;
		padding: 0 !important;
		color: #0f1563;
		font-size: 19px;
		font-weight: 800;
		line-height: 1.2;
		text-align: right !important;
		margin-right: 6px;
	}

	.mrs-cart-page td.product-subtotal::before {
		display: block;
		margin: 0;
		color: #697187;
		font-size: 11px;
		font-weight: 600;
		line-height: 1.2;
	}

	.mrs-cart-page td.product-remove {
		position: static;
		display: flex !important;
		grid-area: remove;
		justify-content: flex-end;
		margin-top: -4px;
		padding-right: 6px !important;
	}

	.mrs-cart-page .product-remove .remove {
		gap: 5px;
		padding: 4px 0 !important;
		color: #7a6770 !important;
		font-size: 11px !important;
		font-weight: 600 !important;
		text-decoration: none;
	}

	.mrs-cart-page .product-remove .remove:hover,
	.mrs-cart-page .product-remove .remove:focus-visible {
		background: transparent !important;
		color: #8c4d4d !important;
		outline: none;
	}
}

@media (max-width: 360px) {
	.mrs-cart-page .woocommerce-cart-form tr.cart_item { padding: 14px; }
	.mrs-cart-page .mrs-cart-item-actions,
	body.woocommerce-cart .mrs-cart-page .mrs-cart-plate-preview { width: 94%; }
}

/* Carte produit panier — finition desktop uniquement. */
@media (min-width: 769px) {
	.mrs-cart-page .mrs-cart-product-title-name,
	.mrs-cart-page .mrs-cart-product-dimensions {
		display: block;
	}

	.mrs-cart-page .mrs-cart-product-dimensions {
		margin-top: 4px;
		color: #242733;
		font-family: "myriad-pro", Arial, sans-serif;
		font-size: 14px;
		font-weight: 400;
		line-height: 1.35;
	}

	.mrs-cart-page td.product-thumbnail {
		text-align: center;
	}

	.mrs-cart-page .mrs-cart-enlarge-action {
		display: none;
	}

	.mrs-cart-page .mrs-cart-item-actions {
		display: flex;
		width: 100%;
		max-width: 336px;
		justify-content: center;
		margin: 10px auto 0;
	}

	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate {
		display: inline-flex;
		width: auto;
		min-height: 36px;
		align-items: center;
		justify-content: center;
		gap: 7px;
		margin: 0;
		padding: 7px 14px;
		border: 1px solid rgba(183, 134, 74, .72);
		border-radius: 7px;
		background: rgba(183, 134, 74, .045);
		color: #875b2d !important;
		font-family: "myriad-pro", Arial, sans-serif;
		font-size: 12px !important;
		font-weight: 600 !important;
		line-height: 1.2;
		text-align: center;
		text-decoration: none;
		transition: border-color 170ms ease, background-color 170ms ease, color 170ms ease;
	}

	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate::before {
		content: "✎";
		font-size: 13px;
		line-height: 1;
	}

	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate:hover,
	.mrs-cart-page .mrs-cart-item-actions .mrs-cart-edit-plate:focus-visible {
		border-color: #b7864a;
		background: rgba(183, 134, 74, .085);
		color: #0f1563 !important;
		outline: none;
	}

	.mrs-cart-page .mrs-cart-edit-label-mobile {
		display: none;
	}
}

@media (max-width: 768px) {
	.mrs-cart-page .mrs-cart-edit-label-desktop {
		display: none;
	}
}
body.page-id-664 .mrs-configurateur .mrs-character-validation-message {
	display: none;
	margin-top: 6px;
	padding: 6px 9px;
	border: 1px solid rgba(173, 122, 69, 0.42);
	border-radius: 5px;
	background: #fbf7ef;
	color: #9b6938;
	font-size: 13px;
	line-height: 1.35;
}

body.page-id-664 .mrs-configurateur .mrs-character-validation-message.is-visible {
	display: block;
}

body.page-id-664 .mrs-preview-plate-frame > .mrs-plate-message {
	position: absolute;
	z-index: 30;
	top: 50%;
	left: 50%;
	width: min(78%, 360px);
	padding: 11px 14px;
	border: 1px solid rgba(183, 134, 74, .68);
	border-radius: 9px;
	background: rgba(255, 250, 242, .94);
	box-shadow: 0 8px 22px rgba(8, 25, 74, .18);
	color: #0f1563;
	font-family: "myriad-pro", Arial, sans-serif;
	font-size: clamp(11px, 2.8vw, 15px);
	font-weight: 700;
	line-height: 1.35;
	text-align: center;
	transform: translate(-50%, -46%);
	opacity: 0;
	pointer-events: none;
	transition: opacity 160ms ease, transform 160ms ease;
}

body.page-id-664 .mrs-preview-plate-frame > .mrs-plate-message.is-visible {
	transform: translate(-50%, -50%);
	opacity: 1;
}
