/* =========================================================================
   LM Champart â€” tunnel d'achat
   Jetons issus de la documentation : Georgia / #fff / #EBF2F8 / #629AC7 / #0D2232
   ========================================================================= */

:root {
	--lmc-white: #ffffff;
	--lmc-light: #ebf2f8;
	--lmc-blue: #629ac7;
	--lmc-navy: #0d2232;
	--lmc-font: Georgia, "Times New Roman", serif;
	--lmc-rule: rgba(13, 34, 50, 0.18);
}

.lmc-tunnel .lmc-bag,
.lmc-tunnel .lmc-checkout-head,
.lmc-tunnel .lmc-checkout-form,
.lmc-tunnel .lmc-checkout-foot,
.lmc-tunnel .lmc-accordions,
.lmc-tunnel .lmc-shipping-note,
.lmc-tunnel #side-cart .cart-panel-summary {
	font-family: var(--lmc-font);
	color: var(--lmc-navy);
}

/* Tout le tunnel — panier, étapes du checkout, confirmation — sur le fond
   bleu clair de la documentation (p.9). Les blocs restent blancs. */
body.lmc-cart,
body.lmc-cart .site-content,
body.lmc-cart #content,
body.lmc-cart .page-wrapper,
body.lmc-cart .page-wrapper-inner,
body.lmc-checkout,
body.lmc-checkout .site-content,
body.lmc-checkout #content,
body.lmc-checkout .page-wrapper,
body.lmc-checkout .page-wrapper-inner,
body.lmc-confirmation,
body.lmc-confirmation .site-content,
body.lmc-confirmation #content,
body.lmc-confirmation .page-wrapper,
body.lmc-confirmation .page-wrapper-inner {
	background-color: var(--lmc-light) !important;
}

body.lmc-cart .site-content,
body.lmc-checkout .site-content,
body.lmc-confirmation .site-content,
body.lmc-cart #content,
body.lmc-checkout #content,
body.lmc-confirmation #content {
	background-color: transparent;
}

/* --------------------------------------------------------------- Boutons */
.lmc-btn {
	display: inline-block;
	padding: 14px 34px;
	border: 1px solid var(--lmc-navy);
	border-radius: 0;
	font-family: var(--lmc-font);
	font-size: 12px;
	letter-spacing: 0.14em;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.lmc-btn--primary,
.lmc-btn--dark {
	background-color: var(--lmc-navy);
	color: var(--lmc-white);
}

.lmc-btn--primary:hover,
.lmc-btn--dark:hover,
.lmc-btn--primary:focus,
.lmc-btn--dark:focus {
	background-color: var(--lmc-blue);
	border-color: var(--lmc-blue);
	color: var(--lmc-white);
}

.lmc-visually-hidden {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* -------------------- Titres de page et doublons du thÃ¨me sur le tunnel */
body.lmc-cart .page-title,
body.lmc-checkout .page-title,
body.lmc-cart .back-to-shop,
body.lmc-checkout .back-to-cart,
body.lmc-checkout .checkout_coupon,
body.lmc-checkout .woocommerce-form-coupon-toggle,
.lmc-block--address > .woocommerce-billing-fields > h3,
.lmc-block--address #customer_details > h3 {
	display: none !important;
}

/* ------------------------------------------------------- QuantitÃ© select */
/* Le conteneur ne porte aucune dÃ©coration : le champ, c'est le <select>,
   sinon le thÃ¨me dessine un second cadre autour. */
.lmc-tunnel .lmc-qty {
	position: relative;
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

.lmc-tunnel .lmc-qty__select {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 100% !important;
	min-width: 72px;
	/* Hauteur explicite : le thÃ¨me impose la sienne, Â« auto Â» ne suffit pas
	   et le chiffre se retrouve coupÃ©. Sans marge verticale, le texte d'un
	   <select> se centre tout seul. */
	height: 52px !important;
	min-height: 52px !important;
	max-height: none !important;
	padding: 0 36px 0 14px !important;
	background: var(--lmc-white) !important;
	background-image: none !important;
	border: 1px solid var(--lmc-navy) !important;
	border-radius: 0 !important;
	font-family: var(--lmc-font) !important;
	font-size: 14px !important;
	color: var(--lmc-navy) !important;
	line-height: normal !important;
	text-align: left;
	vertical-align: middle;
}

/* Le chevron est alignÃ© sur le champ, pas sur le conteneur. */
.lmc-qty__chevron {
	position: absolute;
	top: 26px;
	right: 15px;
	margin-top: -4px;
	pointer-events: none;
	color: var(--lmc-navy);
}

/* Dans le panier, le sÃ©lecteur reste compact. */
.lmc-bag__table .lmc-qty {
	width: 92px;
	max-width: 92px;
}

.lmc-bag__table .lmc-qty__select {
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 30px 0 12px !important;
}

.lmc-bag__table .lmc-qty__chevron {
	top: 21px;
	right: 12px;
}

.lmc-tunnel .lmc-qty .quantity-nav,
.lmc-tunnel .lmc-qty .plus,
.lmc-tunnel .lmc-qty .minus {
	display: none !important;
}


.lmc-qty--fixed .lmc-qty__static {
	display: inline-block;
	min-width: 40px;
}

/* ====================================================================
   FORMAT DES IMAGES PRODUIT â€” 594 x 756 (format de la perruque CARESSE)
   Le cadre est imposÃ© cÃ´tÃ© affichage : quelle que soit la taille du
   fichier d'origine, toutes les vignettes ont exactement le mÃªme format.
   ==================================================================== */

.lmc-tunnel ul.products li.product .product_thumbnail img,
.lmc-tunnel ul.products li.product figure img,
.lmc-tunnel .woocommerce-product-gallery__image img,
.lmc-tunnel .et-quickview-image img,
.lmc-tunnel .related.products li.product figure img,
.lmc-tunnel .up-sells li.product figure img {
	width: 100% !important;
	height: auto !important;
	max-width: 100% !important;
	aspect-ratio: 594 / 756;
	object-fit: cover;
	object-position: center center;
}

/* Le conteneur suit le mÃªme format pour Ã©viter tout saut de mise en page. */
.lmc-tunnel ul.products li.product .product_thumbnail,
.lmc-tunnel .woocommerce-product-gallery__image {
	overflow: hidden;
}

/* Sans cette largeur, le conteneur de la galerie s'ajuste Ã  l'image et
   les petits fichiers restent affichÃ©s Ã  leur taille d'origine. */
.lmc-tunnel .woocommerce-product-gallery__wrapper,
.lmc-tunnel .woocommerce-product-gallery__image,
.lmc-tunnel .woocommerce-product-gallery__image > a {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
}

/* --------------------------------------------------------------------
   ACCUEIL — les trois blocs de catégories au même format que les
   visuels produit (594 x 756), quelle que soit la photo utilisée.
   -------------------------------------------------------------------- */

body.home .vc_custom_1579111806249 .et-banner,
body.home .vc_custom_1579111806249 .et-banner-main-image,
body.home .vc_custom_1579111806249 .et-banner-alt-image {
	aspect-ratio: 594 / 756;
	height: auto !important;
	min-height: 0 !important;
	background-size: cover;
	background-position: center center;
}

body.home .vc_custom_1579111806249 .et-banner img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	object-position: center center;
}

/* ------------------------------------------------------- Fiche produit */
.lmc-shipping-note {
	margin: 12px 0 0;
	font-family: var(--lmc-font);
	font-size: 12px;
	font-style: italic;
	color: rgba(13, 34, 50, 0.75);
}

/* Bouton ADD TO BAG aux couleurs de la charte. */
body.lmc-product .single_add_to_cart_button {
	background-color: var(--lmc-navy) !important;
	border-color: var(--lmc-navy) !important;
	border-radius: 0 !important;
	font-family: var(--lmc-font) !important;
	font-size: 12px !important;
	letter-spacing: 0.14em !important;
	color: var(--lmc-white) !important;
}

body.lmc-product .single_add_to_cart_button:hover:not(.disabled) {
	background-color: var(--lmc-blue) !important;
	border-color: var(--lmc-blue) !important;
}

body.lmc-product .single_add_to_cart_button.disabled {
	opacity: 0.45;
}

.lmc-accordions {
	margin-top: 34px;
	border-top: 1px solid var(--lmc-rule);
}

.lmc-accordion {
	border-bottom: 1px solid var(--lmc-rule);
}

.lmc-accordion__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 16px 0;
	background: none;
	border: 0;
	font-family: var(--lmc-font);
	font-size: 15px;
	color: var(--lmc-navy);
	text-align: left;
	cursor: pointer;
}

.lmc-accordion__head .lmc-chevron {
	flex: 0 0 auto;
	margin-left: 16px;
	transition: transform 0.2s ease;
}

.lmc-accordion.is-open .lmc-chevron {
	transform: rotate(180deg);
}

.lmc-accordion__body {
	padding: 0 0 18px;
	font-size: 13px;
	line-height: 1.7;
}

.lmc-accordion__body table {
	width: 100%;
	font-size: 13px;
}

.lmc-accordion__body th {
	width: 34%;
	padding: 4px 0;
	font-weight: normal;
	text-align: left;
	color: rgba(13, 34, 50, 0.65);
}

.lmc-accordion__body td {
	padding: 4px 0;
}

/* ------------------------------------------------- Panier dÃ©roulant */
#side-cart .lmc-minicart-checkout {
	display: block;
	width: 100%;
}

#side-cart .woocommerce-mini-cart__buttons {
	margin-bottom: 0;
}

/* ------------------------------------------------------- Page panier */
.lmc-bag {
	max-width: 1000px;
	margin: 0 auto;
	padding: 10px 0 60px;
}

.lmc-bag__back {
	display: inline-block;
	margin-bottom: 32px;
	font-size: 12px;
	color: rgba(13, 34, 50, 0.6);
	text-decoration: underline;
}

.lmc-bag__title {
	margin: 0 0 46px;
	font-family: var(--lmc-font);
	font-size: 22px;
	font-weight: normal;
	letter-spacing: 0.08em;
	color: var(--lmc-navy);
}

.lmc-bag__table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
}

.lmc-bag__table thead th {
	padding: 0 0 26px;
	border: 0;
	font-family: var(--lmc-font);
	font-size: 12px;
	font-weight: normal;
	letter-spacing: 0.12em;
	color: var(--lmc-navy);
	text-align: left;
}

.lmc-bag__table thead .lmc-col-price,
.lmc-bag__table thead .lmc-col-qty,
.lmc-bag__table thead .lmc-col-total,
.lmc-bag__table tbody .lmc-col-price,
.lmc-bag__table tbody .lmc-col-qty,
.lmc-bag__table tbody .lmc-col-total {
	text-align: left;
}

.lmc-bag__table tbody td {
	padding: 0 12px 42px 0;
	border: 0;
	vertical-align: top;
	font-size: 13px;
}

.lmc-bag__table .lmc-col-thumb {
	width: 90px;
	padding-right: 26px;
}

.lmc-bag__table .lmc-col-thumb img {
	display: block;
	width: 78px;
	height: auto;
}

.lmc-bag__table .lmc-col-name {
	width: 42%;
}

.lmc-bag__name a,
.lmc-bag__name {
	display: block;
	font-size: 13px;
	letter-spacing: 0.06em;
	color: var(--lmc-navy);
	text-decoration: none;
	text-transform: uppercase;
}

.lmc-bag__meta,
.lmc-bag__info {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	line-height: 1.6;
	color: rgba(13, 34, 50, 0.6);
}

.lmc-bag__meta p {
	margin: 0;
}

.lmc-bag__table .lmc-bag__remove {
	position: static !important;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	margin: 10px 0 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	font-size: 11px !important;
	line-height: 1.4 !important;
	color: var(--lmc-navy) !important;
	text-decoration: underline !important;
	text-indent: 0 !important;
	opacity: 1 !important;
}

.lmc-bag__table .lmc-bag__remove::before,
.lmc-bag__table .lmc-bag__remove::after {
	content: none !important;
}

.lmc-bag__rule {
	height: 0;
	margin: 6px 0 28px;
	border: 0;
	border-top: 1px solid var(--lmc-navy);
}

.lmc-bag__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
}

.lmc-coupon {
	flex: 0 1 340px;
	padding: 14px 16px;
	border: 1px solid var(--lmc-navy);
}

.lmc-coupon__intro {
	display: block;
	margin-bottom: 10px;
	font-size: 11px;
	color: var(--lmc-navy);
}

.lmc-coupon__row {
	display: flex;
	gap: 8px;
}

.lmc-coupon__input {
	flex: 1 1 auto;
	min-width: 0;
	padding: 9px 10px;
	background: var(--lmc-white);
	border: 1px solid var(--lmc-rule);
	border-radius: 0;
	font-family: var(--lmc-font);
	font-size: 12px;
	color: var(--lmc-navy);
}

.lmc-coupon__apply {
	flex: 0 0 auto;
	padding: 9px 18px;
	font-size: 11px;
}

.lmc-coupon__note {
	margin: 10px 0 0;
	font-size: 10px;
	color: rgba(13, 34, 50, 0.6);
}

/* Retour après saisie d'un code promo */
.lmc-coupon__feedback {
	margin: 0 0 26px;
	padding: 13px 16px;
	background: #fdf3f2;
	border: 1px solid #d7a9a4;
	font-size: 12px;
	color: #8f2f24;
}

.lmc-coupon__feedback ul,
.lmc-coupon__feedback .lmc-coupon__feedback-list {
	margin: 0;
	padding: 0;
	list-style: none;
	background: none;
	border: 0;
}

.lmc-coupon__feedback li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-coupon__feedback a {
	color: inherit;
	text-decoration: underline;
}

.lmc-bag__checkout {
	flex: 0 1 300px;
}

.lmc-bag__cta {
	display: block;
	width: 100%;
	padding: 16px 20px;
}

.lmc-bag__collaterals:empty {
	display: none;
}

/* --------------------------------------------------------- Checkout */
/* Le bandeau des Ã©tapes est posÃ© sur un fond blanc. */
.lmc-checkout-head {
	max-width: 1180px;
	margin: 0 auto 34px;
	padding: 22px 28px 18px;
	background: var(--lmc-white);
	border: 1px solid var(--lmc-rule);
}

.lmc-checkout-back {
	display: inline-block;
	margin-bottom: 20px;
	font-size: 12px;
	color: var(--lmc-navy);
	text-decoration: none;
}

.lmc-checkout-back:hover {
	text-decoration: underline;
}

.lmc-steps {
	display: flex;
	gap: 42px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-steps__item {
	font-family: var(--lmc-font);
	font-size: 13px;
	color: rgba(13, 34, 50, 0.4);
	white-space: nowrap;
}

.lmc-steps__item.is-current {
	color: var(--lmc-navy);
	border-bottom: 2px solid var(--lmc-navy);
	padding-bottom: 6px;
}

.lmc-steps__item.is-done {
	color: var(--lmc-blue);
	cursor: pointer;
}

.lmc-checkout-notices:empty {
	display: none;
}

.lmc-checkout-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 46px;
	max-width: 1180px;
	margin: 0 auto;
	align-items: flex-start;
}

.lmc-checkout-main {
	flex: 1 1 520px;
	min-width: 0;
}

.lmc-checkout-aside {
	flex: 0 1 360px;
	min-width: 0;
	position: sticky;
	top: 24px;
}

/* Ordre des blocs de l'Ã©tape 1 conformÃ©ment Ã  la documentation. */
.lmc-step--delivery {
	display: flex;
	flex-direction: column;
}

.lmc-step--delivery .lmc-block--address { order: 10; }
.lmc-step--delivery .lmc-block--delivery-method { order: 20; }
.lmc-step--delivery .woocommerce-additional-fields { order: 30; }
.lmc-step--delivery .lmc-block--billing-toggle { order: 40; }
.lmc-step--delivery .woocommerce-shipping-fields { order: 50; }
.lmc-step--delivery .lmc-step__actions { order: 60; }

.lmc-block {
	margin-bottom: 34px;
	padding-bottom: 30px;
	border-bottom: 1px solid var(--lmc-rule);
}

.lmc-block__title {
	margin: 0 0 20px;
	font-family: var(--lmc-font);
	font-size: 13px;
	font-weight: normal;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lmc-navy);
}

.lmc-checkout-form h3 {
	font-family: var(--lmc-font);
	font-size: 13px;
	font-weight: normal;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lmc-navy);
}

.lmc-checkout-form .form-row {
	margin-bottom: 14px;
	padding: 0;
}

.lmc-checkout-form .form-row label {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	letter-spacing: 0.06em;
	color: rgba(13, 34, 50, 0.7);
}

.lmc-checkout-form input[type="text"],
.lmc-checkout-form input[type="email"],
.lmc-checkout-form input[type="tel"],
.lmc-checkout-form input[type="password"],
.lmc-checkout-form textarea,
.lmc-checkout-form .select2-container .select2-selection--single,
.lmc-checkout-form select {
	width: 100%;
	padding: 12px 14px;
	background: var(--lmc-white);
	border: 1px solid var(--lmc-rule);
	border-radius: 0;
	font-family: var(--lmc-font);
	font-size: 13px;
	color: var(--lmc-navy);
}

.lmc-checkout-form .woocommerce-invalid input,
.lmc-checkout-form .woocommerce-invalid select,
.lmc-checkout-form .woocommerce-invalid .select2-container .select2-selection--single {
	border-color: #b3453d;
}

/* Messages de validation de l'étape 1 */
.lmc-field-error {
	display: block;
	margin-top: 5px;
	font-family: var(--lmc-font);
	font-size: 11px;
	line-height: 1.5;
	color: #b3453d;
}

.lmc-step-error {
	order: 5;
	margin: 0 0 26px;
	padding: 13px 16px;
	background: #fdf3f2;
	border: 1px solid #d7a9a4;
	font-family: var(--lmc-font);
	font-size: 12px;
	color: #8f2f24;
}

/* Case native WooCommerce remplacÃ©e par Â« billing = shipping Â». */
.lmc-step--delivery #ship-to-different-address input[type="checkbox"] {
	display: none;
}

.lmc-step--delivery #ship-to-different-address {
	margin: 0 0 20px;
}

.lmc-check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 12px;
	line-height: 1.5;
	color: var(--lmc-navy);
	cursor: pointer;
}

.lmc-check input {
	margin-top: 2px;
}

/* Modes de livraison */
.lmc-shipping-table {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}

.lmc-shipping-table th {
	display: none;
}

.lmc-shipping-table td {
	padding: 0;
	border: 0;
}

.lmc-shipping-table ul,
.lmc-delivery-method ul#shipping_method {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-delivery-method li {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 13px 14px;
	border: 1px solid var(--lmc-rule);
	background: var(--lmc-white);
	font-size: 13px;
}

.lmc-delivery-method li + li {
	margin-top: -1px;
}

.lmc-delivery-method label {
	margin: 0;
	cursor: pointer;
}

.lmc-delivery-method.lmc-invalid li {
	border-color: #b3453d;
}

.lmc-muted {
	font-size: 12px;
	color: rgba(13, 34, 50, 0.6);
}

.lmc-step__actions {
	margin-top: 6px;
}

.lmc-continue {
	min-width: 240px;
	padding: 16px 30px;
}

.lmc-step-back {
	margin-bottom: 22px;
	padding: 0;
	background: none;
	border: 0;
	font-family: var(--lmc-font);
	font-size: 12px;
	color: var(--lmc-navy);
	cursor: pointer;
}

.lmc-block--payment {
	border-bottom: 0;
}

/* Liste des moyens de paiement */
.lmc-checkout-form .wc_payment_methods {
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.lmc-checkout-form .wc_payment_method {
	margin: 0;
	padding: 0;
	list-style: none;
	background: var(--lmc-white);
	border: 1px solid var(--lmc-rule);
}

.lmc-checkout-form .wc_payment_method + .wc_payment_method {
	margin-top: -1px;
}

.lmc-checkout-form .wc_payment_method > label {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 15px 18px;
	font-family: var(--lmc-font);
	font-size: 13px;
	color: var(--lmc-navy);
	cursor: pointer;
}

.lmc-checkout-form .wc_payment_method > label img {
	max-height: 24px;
	width: auto;
	margin-left: auto;
}

.lmc-checkout-form .payment_box {
	margin: 0;
	padding: 0 18px 16px;
	background: var(--lmc-white);
	border: 0;
	font-size: 12px;
	line-height: 1.7;
	color: rgba(13, 34, 50, 0.75);
}

.lmc-checkout-form .payment_box::before {
	display: none;
}

/* Logo dans la ligne d'un moyen de paiement */
.lmc-gw-icon {
	display: inline-flex;
	align-items: center;
	margin-left: auto;
	padding: 3px 6px;
	background: var(--lmc-white);
	border: 1px solid rgba(13, 34, 50, 0.14);
	border-radius: 4px;
}

.lmc-gw-icon svg {
	display: block;
	width: 44px;
	height: 26px;
}

/* CoordonnÃ©es PayPal communiquÃ©es au client */
.lmc-paypal-manual {
	margin: 14px 0 34px;
}

.lmc-paypal-manual__intro {
	margin: 0 0 12px;
	font-size: 12px;
	line-height: 1.7;
	color: rgba(13, 34, 50, 0.8);
}

.lmc-paypal-manual__list {
	margin: 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--lmc-rule);
	background: var(--lmc-white);
}

.lmc-paypal-manual__list li {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	justify-content: space-between;
	margin: 0;
	padding: 11px 16px;
	list-style: none;
	font-size: 13px;
}

.lmc-paypal-manual__list li + li {
	border-top: 1px solid var(--lmc-rule);
}

.lmc-paypal-manual__key {
	font-size: 11px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(13, 34, 50, 0.6);
}

.lmc-paypal-manual__val {
	font-weight: bold;
	color: var(--lmc-navy);
	word-break: break-word;
}

/* Marques de paiement acceptÃ©es */
.lmc-cards {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 14px;
	margin: 0 0 22px;
	padding: 0;
	background: none;
	border: 0;
}

.lmc-cards__label {
	font-family: var(--lmc-font);
	font-size: 11px;
	color: rgba(13, 34, 50, 0.75);
}

.lmc-cards__list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-cards__mark {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 34px;
	margin: 0;
	padding: 0;
	list-style: none;
	background: var(--lmc-white);
	border: 1px solid rgba(13, 34, 50, 0.14);
	border-radius: 5px;
	box-shadow: 0 1px 2px rgba(13, 34, 50, 0.06);
}

.lmc-cards__mark svg {
	display: block;
	width: 44px;
	height: 29px;
}

.lmc-checkout-form #place_order {
	width: 100%;
	padding: 16px 30px;
	background-color: var(--lmc-navy);
	border: 1px solid var(--lmc-navy);
	border-radius: 0;
	font-family: var(--lmc-font);
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lmc-white);
}

.lmc-checkout-form #place_order:hover {
	background-color: var(--lmc-blue);
	border-color: var(--lmc-blue);
}

/* --------------------------------------------- RÃ©capitulatif commande */
.lmc-summary__panel {
	margin-bottom: 20px;
	padding: 22px 24px;
	background: var(--lmc-white);
	border: 1px solid var(--lmc-rule);
}

.lmc-summary__title {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin: 0 0 18px;
	font-family: var(--lmc-font);
	font-size: 13px;
	font-weight: normal;
	letter-spacing: 0.1em;
	color: var(--lmc-navy);
}

.lmc-summary__edit {
	font-size: 11px;
	color: var(--lmc-blue);
	text-decoration: underline;
	text-transform: none;
	letter-spacing: 0;
}

.lmc-summary__line {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 14px;
	padding: 6px 0;
	font-size: 13px;
}

.lmc-summary__line--shipping span:last-child {
	text-align: right;
}

.lmc-summary__line--total {
	margin-top: 10px;
	padding-top: 14px;
	border-top: 1px solid var(--lmc-rule);
	font-size: 15px;
}

.lmc-summary__items {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-summary__item {
	display: flex;
	gap: 14px;
	padding: 12px 0;
	border-top: 1px solid var(--lmc-rule);
}

.lmc-summary__item:first-child {
	border-top: 0;
	padding-top: 0;
}

.lmc-summary__thumb {
	flex: 0 0 58px;
	width: 58px;
	height: 58px;
	max-width: 58px;
	overflow: hidden;
}

/* Une seule vignette par ligne, quelle que soit l'image ajoutÃ©e par le thÃ¨me. */
.lmc-summary__item img,
.lmc-summary__item picture,
.lmc-summary__item noscript {
	display: none !important;
}

.lmc-summary__thumb > img,
.lmc-summary__thumb a > img {
	display: block !important;
	width: 58px !important;
	max-width: 58px !important;
	height: 58px !important;
	object-fit: cover;
}

.lmc-bag__table .lmc-col-thumb img ~ img {
	display: none !important;
}

.lmc-summary__detail {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 11px;
	line-height: 1.6;
	color: rgba(13, 34, 50, 0.7);
}

.lmc-summary__name {
	display: block;
	font-size: 12px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--lmc-navy);
}

.lmc-summary__detail dl {
	display: block;
	margin: 4px 0;
	font-size: 11px;
}

.lmc-summary__detail dt {
	display: inline;
	margin: 0;
	font-weight: normal;
}

.lmc-summary__detail dd {
	display: inline;
	margin: 0 8px 0 2px;
}

.lmc-summary__detail dd p {
	display: inline;
	margin: 0;
}

.lmc-summary__qty {
	display: block;
	margin-top: 4px;
}

.lmc-summary__price {
	flex: 0 0 auto;
	font-size: 12px;
	color: var(--lmc-navy);
}

/* ------------------------------------------------- Pied du checkout */
.lmc-checkout-foot {
	max-width: 1180px;
	margin: 46px auto 0;
	padding-top: 18px;
	border-top: 1px solid var(--lmc-rule);
	font-size: 11px;
	color: rgba(13, 34, 50, 0.65);
}

.lmc-checkout-foot a {
	color: rgba(13, 34, 50, 0.65);
	text-decoration: none;
}

.lmc-checkout-foot a:hover {
	text-decoration: underline;
}

.lmc-checkout-foot__secure {
	margin-right: 14px;
	color: var(--lmc-navy);
}

.lmc-sep {
	margin: 0 10px;
	opacity: 0.4;
}

/* ====================================================================
   PIED DE PAGE (documentation p.3)
   ==================================================================== */

#colophon.site-footer,
#colophon .footer-middle,
#colophon .footer-widgets {
	background-color: var(--lmc-navy) !important;
}

/* La barre native du thÃ¨me est remplacÃ©e par le bloc ci-dessous. */
#colophon #footer-bar {
	display: none !important;
}

#colophon .footer-middle {
	padding: 54px 0 34px;
}

.lmc-footer {
	font-family: var(--lmc-font);
	color: var(--lmc-white);
}

.lmc-footer__intro {
	margin: 0 auto;
	max-width: 640px;
	font-size: 13px;
	line-height: 1.75;
	text-align: center;
	color: var(--lmc-white);
}

.lmc-footer__intro a {
	color: var(--lmc-white);
	text-decoration: underline;
}

.lmc-footer__intro a:hover {
	opacity: 0.75;
}

.lmc-footer__mark {
	margin: 26px 0 34px;
	text-align: center;
}

.lmc-footer__mark img {
	display: inline-block !important;
	width: 190px !important;
	max-width: 70% !important;
	height: auto !important;
	opacity: 1;
}

.lmc-footer__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding-top: 6px;
}

.lmc-footer__links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 40px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-footer__links li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-footer__links a {
	font-size: 12px;
	font-style: italic;
	color: var(--lmc-white);
	text-decoration: none;
}

.lmc-footer__links a:hover {
	text-decoration: underline;
}

.lmc-footer__social {
	display: flex;
	flex: 0 0 auto;
	gap: 18px;
}

.lmc-footer__social a {
	display: inline-flex;
	color: var(--lmc-white);
	line-height: 0;
}

.lmc-footer__social a:hover {
	opacity: 0.7;
}

@media (max-width: 767px) {
	#colophon .footer-middle {
		padding: 40px 0 28px;
	}

	.lmc-footer__bar {
		flex-direction: column;
		gap: 22px;
	}

	.lmc-footer__links {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		text-align: center;
	}

	.lmc-footer__mark img {
		width: 140px !important;
	}
}

/* ================================================================
   ADAPTATION AUX Ã‰CRANS
   PC large > 1200 | PC 992-1199 | Tablette 768-991 | Mobile < 768
   ================================================================ */

/* --- PC intermÃ©diaire : on resserre la colonne de droite --- */
@media (max-width: 1199px) {
	.lmc-checkout-grid,
	.lmc-checkout-head,
	.lmc-checkout-foot {
		max-width: 100%;
	}

	.lmc-checkout-aside {
		flex: 0 1 320px;
	}

	.lmc-checkout-main {
		flex: 1 1 440px;
	}

	.lmc-footer__links {
		gap: 10px 26px;
	}
}

/* --- Tablette : le rÃ©capitulatif passe au-dessus du formulaire --- */
@media (max-width: 991px) {
	.lmc-checkout-grid {
		gap: 30px;
	}

	.lmc-checkout-aside {
		position: static;
		flex: 1 1 100%;
		order: -1;
	}

	.lmc-checkout-main {
		flex: 1 1 100%;
	}

	.lmc-steps {
		gap: 26px;
	}

	.lmc-footer__links {
		gap: 10px 20px;
	}

	.lmc-footer__links a {
		font-size: 11px;
	}
}

/* --- Tablette portrait : le tableau du panier devient une liste --- */
@media (max-width: 900px) {
	.lmc-bag__table thead {
		display: none;
	}

	.lmc-bag__table,
	.lmc-bag__table tbody,
	.lmc-bag__table tr {
		display: block;
		width: 100%;
	}

	.lmc-bag__table tbody tr {
		display: grid;
		grid-template-columns: 90px 1fr;
		gap: 0 16px;
		padding-bottom: 26px;
		margin-bottom: 26px;
		border-bottom: 1px solid var(--lmc-rule);
	}

	.lmc-bag__table tbody td {
		display: block;
		padding: 0 0 10px;
	}

	.lmc-bag__table .lmc-col-thumb {
		grid-row: 1 / span 4;
	}

	.lmc-bag__table .lmc-col-price::before,
	.lmc-bag__table .lmc-col-qty::before,
	.lmc-bag__table .lmc-col-total::before {
		content: attr(data-title) " : ";
		font-size: 10px;
		letter-spacing: 0.1em;
		color: rgba(13, 34, 50, 0.55);
	}

	.lmc-bag__footer {
		flex-direction: column;
	}

	.lmc-coupon,
	.lmc-bag__checkout {
		flex: 1 1 100%;
		width: 100%;
	}

	.lmc-steps {
		gap: 20px;
	}

	.lmc-steps__item {
		font-size: 11px;
	}
}

/* ====================================================================
   NETTETE IDENTIQUE AU REPOS ET AU SURVOL
   Le theme applique scale(1.05) au survol. Cette transformation place
   l'image sur sa propre couche graphique, que le navigateur redessine a
   la resolution reelle de l'ecran. Au repos, sans couche dediee, l'image
   etait dessinee a la taille CSS puis agrandie par le compositeur : d'ou
   une impression de flou qui disparaissait au survol.
   « will-change » cree la couche des le repos sans toucher a
   « transform », donc sans gener le zoom du theme.
   ==================================================================== */
.lmc-tunnel ul.products li.product .product_thumbnail img,
.lmc-tunnel ul.products li.product figure img,
.lmc-tunnel .woocommerce-product-gallery__image img,
.lmc-tunnel .related.products li.product figure img,
.lmc-tunnel .up-sells li.product figure img,
body.home .vc_custom_1579111806249 .et-banner img,
body.home .et-banner-image,
body.home .et-banner-alt-image {
	will-change: transform;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
/* ====================================================================
   PHOTO D'ACCUEIL — deux fichiers, un par format d'ecran
   Le fichier livre par WordPress etait bride a 2560 px de large et
   compresse a 0,087 octet/pixel : trop peu pour un plein ecran, et bien
   trop peu pour un telephone en portrait (photo panoramique etiree).
   Les deux fichiers ci-dessous sont regeneres depuis l'original
   11508 x 6443 px : cadrage paysage pour l'ordinateur, cadrage portrait
   pour le mobile.
   ==================================================================== */
body.home .slick-slide .et-banner-image,
body.home .et-banner.image-type-css .et-banner-image {
	background-image: url('/wp-content/uploads/lmc-hero/hero-desktop.jpg') !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}

@media (max-width: 900px) {
	body.home .slick-slide .et-banner-image,
	body.home .et-banner.image-type-css .et-banner-image {
		background-image: url('/wp-content/uploads/lmc-hero/hero-mobile.jpg') !important;
	}
}

/* ====================================================================
   BANDEAU BLEU DE LA DOCUMENTATION — DESACTIVE
   Retire a la demande de la cliente : l'en-tete reprend la couleur
   d'origine du theme (noir sur les pages interieures, transparent
   sur le hero). Pour le remettre, decommenter le bloc ci-dessous.
   ====================================================================
(* ====================================================================
   BANDEAU BLEU DE LA DOCUMENTATION
   Doc p.4, p.9 et p.11 : la navigation est un bandeau plein #629AC7,
   sur la page d'accueil comme sur les pages interieures. Le theme le
   laissait transparent sur le hero et noir partout ailleurs.
   ==================================================================== *)
body.lmc-tunnel header#header.site-header,
body.lmc-tunnel header#header.site-header .header-main,
body.lmc-tunnel header#header.site-header .header-mobile,
body.lmc-tunnel header#header.site-header.sticky,
body.lmc-tunnel header#header.site-header.is-sticky,
body.lmc-tunnel header#header.site-header.header-scrolled {
	background-color: var(--lmc-blue) !important;
}

(* Le theme pose une bordure sombre sous l'en-tete des pages interieures :
   elle jure avec le bleu. *)
body.lmc-tunnel header#header.site-header {
	border-bottom-color: rgba(13, 34, 50, 0.12) !important;
}

(* Texte et pictogrammes restent blancs : contraste 4,6:1 sur le bleu. *)
body.lmc-tunnel header#header.site-header .header-contents a,
body.lmc-tunnel header#header.site-header .main-menu > li > a,
body.lmc-tunnel header#header.site-header .header-icons a,
body.lmc-tunnel header#header.site-header .mobile-header-icons a {
	color: var(--lmc-white) !important;
}

*/

/* ====================================================================
   BLOCS BLANCS SUR LE FOND BLEU CLAIR
   La documentation (p.9 et p.10) pose des cartes blanches sur le fond
   bleu clair. Les panneaux lateraux et le bandeau d'etapes etaient deja
   blancs ; il manquait la colonne principale et le tableau du panier.
   ==================================================================== */
body.lmc-checkout .lmc-checkout-main .lmc-block,
body.lmc-checkout .lmc-checkout-main .woocommerce-additional-fields,
body.lmc-checkout .lmc-checkout-main .woocommerce-shipping-fields {
	margin-bottom: 20px;
	padding: 26px 28px;
	background: var(--lmc-white);
	border: 1px solid var(--lmc-rule);
	border-bottom: 1px solid var(--lmc-rule);
}

body.lmc-checkout .lmc-checkout-main .woocommerce-additional-fields:empty,
body.lmc-checkout .lmc-checkout-main .woocommerce-shipping-fields:empty {
	display: none;
	padding: 0;
	border: 0;
}

/* Les champs de saisie se detachent du blanc de la carte. */
body.lmc-checkout .lmc-checkout-form input[type="text"],
body.lmc-checkout .lmc-checkout-form input[type="email"],
body.lmc-checkout .lmc-checkout-form input[type="tel"],
body.lmc-checkout .lmc-checkout-form input[type="password"],
body.lmc-checkout .lmc-checkout-form textarea,
body.lmc-checkout .lmc-checkout-form select,
body.lmc-checkout .lmc-checkout-form .select2-container .select2-selection--single {
	background: var(--lmc-white);
	border-color: rgba(13, 34, 50, 0.28);
}

/* Le panier reste sans carte : la documentation p.9 pose le tableau
   directement sur le fond bleu clair. Seule la zone code promo garde son
   filet, il est simplement renforce pour rester lisible sur le bleu. */
body.lmc-cart .lmc-coupon,
body.lmc-cart .lmc-coupon__input {
	background: var(--lmc-white);
	border-color: rgba(13, 34, 50, 0.28);
}

/* Confirmation de commande : recapitulatif sur carte blanche. */
body.lmc-confirmation .woocommerce-order {
	padding: 30px 32px;
	background: var(--lmc-white);
	border: 1px solid var(--lmc-rule);
}

@media (max-width: 767px) {
	body.lmc-checkout .lmc-checkout-main .lmc-block,
	body.lmc-confirmation .woocommerce-order {
		padding: 20px 18px;
	}
}
/* ====================================================================
   TUNNEL ENTIEREMENT SUR LE BLEU CLAIR - documentation p.9
   La maquette du panier ne comporte aucune carte blanche : le tableau,
   la zone code promo et les champs sont poses directement sur le fond
   #EBF2F8 et structures par des filets navy. On applique le meme parti
   a tout le parcours : panier, les trois etapes du checkout, et la
   confirmation de commande.

   Seule exception assumee : les tuiles des logos de cartes bancaires
   restent blanches, la cliente les a demandees ainsi (capture a l'appui).
   ==================================================================== */

/* --- Panneaux et cartes : plus de fond blanc, un filet suffit --- */
body.lmc-cart .lmc-coupon,
body.lmc-cart .lmc-coupon__input,
body.lmc-checkout .lmc-checkout-head,
body.lmc-checkout .lmc-checkout-main .lmc-block,
body.lmc-checkout .lmc-checkout-main .woocommerce-additional-fields,
body.lmc-checkout .lmc-checkout-main .woocommerce-shipping-fields,
body.lmc-checkout .lmc-summary__panel,
body.lmc-checkout .lmc-delivery-method li,
body.lmc-checkout .lmc-checkout-form .wc_payment_method,
body.lmc-checkout .lmc-checkout-form .payment_box,
body.lmc-checkout .lmc-paypal-manual__list,
body.lmc-confirmation .woocommerce-order,
body.lmc-confirmation .lmc-summary__panel {
	background: var(--lmc-light) !important;
}

/* Les filets prennent le relais du fond blanc pour delimiter les blocs. */
body.lmc-checkout .lmc-checkout-head,
body.lmc-checkout .lmc-checkout-main .lmc-block,
body.lmc-checkout .lmc-checkout-main .woocommerce-additional-fields,
body.lmc-checkout .lmc-checkout-main .woocommerce-shipping-fields,
body.lmc-checkout .lmc-summary__panel,
body.lmc-confirmation .woocommerce-order,
body.lmc-confirmation .lmc-summary__panel {
	border: 1px solid rgba(13, 34, 50, 0.28);
}

/* Le cadre du code promo est trace en plein navy sur la maquette. */
body.lmc-cart .lmc-coupon {
	border: 1px solid rgba(13, 34, 50, 0.55);
}

/* --- Champs de saisie : meme fond, borde pour rester identifiables --- */
body.lmc-cart .lmc-coupon__input,
body.lmc-checkout .lmc-checkout-form input[type="text"],
body.lmc-checkout .lmc-checkout-form input[type="email"],
body.lmc-checkout .lmc-checkout-form input[type="tel"],
body.lmc-checkout .lmc-checkout-form input[type="password"],
body.lmc-checkout .lmc-checkout-form input[type="number"],
body.lmc-checkout .lmc-checkout-form textarea,
body.lmc-checkout .lmc-checkout-form select,
body.lmc-checkout .lmc-checkout-form .select2-container .select2-selection--single,
body.lmc-cart .lmc-qty select,
body.lmc-cart .quantity select {
	background: var(--lmc-light) !important;
	border-color: rgba(13, 34, 50, 0.4) !important;
}

/* Au focus, le filet passe en navy plein : le champ actif reste evident
   maintenant qu'il n'y a plus de contraste de fond. */
body.lmc-checkout .lmc-checkout-form input:focus,
body.lmc-checkout .lmc-checkout-form textarea:focus,
body.lmc-checkout .lmc-checkout-form select:focus,
body.lmc-cart .lmc-coupon__input:focus {
	border-color: var(--lmc-navy) !important;
	outline: none;
}

/* --- Blocs blancs poses par WooCommerce ou par le theme --- */
body.lmc-cart .site-content,
body.lmc-checkout .site-content,
body.lmc-confirmation .site-content,
body.lmc-cart .shop_table,
body.lmc-checkout .shop_table,
body.lmc-confirmation .shop_table,
body.lmc-checkout .woocommerce-checkout-review-order-table,
body.lmc-checkout #order_review,
body.lmc-confirmation .woocommerce-order-details,
body.lmc-confirmation .woocommerce-customer-details,
body.lmc-confirmation .woocommerce-order-overview,
body.lmc-cart .woocommerce-info,
body.lmc-checkout .woocommerce-info,
body.lmc-cart .woocommerce-message,
body.lmc-checkout .woocommerce-message,
body.lmc-confirmation .woocommerce-message,
body.lmc-checkout .select2-dropdown,
body.lmc-checkout .select2-container--default .select2-results__option {
	background-color: var(--lmc-light) !important;
}

/* --- Ce qui doit rester tel quel --- */
/* Les tuiles des logos de cartes : blanches, comme demande. */
body.lmc-checkout .lmc-cards__mark,
body.lmc-checkout .lmc-gw-icon {
	background: var(--lmc-white) !important;
}

/* Les boutons gardent leur aplat navy (CHECK OUT, CONTINUE, APPLY). */
body.lmc-cart .lmc-bag__cta,
body.lmc-cart .lmc-coupon__submit,
body.lmc-checkout .lmc-next,
body.lmc-checkout .lmc-checkout-form #place_order {
	background-color: var(--lmc-navy) !important;
	color: var(--lmc-white) !important;
}

/* Sur la page de paiement le theme laisse l'en-tete sans fond : le logo,
   blanc, devenait invisible sur le bleu clair. On lui remet l'aplat noir
   utilise sur toutes les autres pages interieures du site. */
body.lmc-checkout header#header.site-header,
body.checkout-distraction-free header#header.site-header {
	background-color: #000000 !important;
}
/* La page de confirmation ne porte pas la classe « lmc-checkout » : le
   bandeau d'etapes et l'encadre PayPal y restaient blancs. Ces deux
   composants n'existent que dans le tunnel, on les vise directement. */
.lmc-checkout-head,
.lmc-paypal-manual__list {
	background: var(--lmc-light) !important;
}

.lmc-checkout-head {
	border: 1px solid rgba(13, 34, 50, 0.28);
}
/* ====================================================================
   PANIER LATERAL ET MENUS DEROULANTS SUR LE BLEU CLAIR
   Meme fond #EBF2F8 que le tunnel de commande, pour que le panier et la
   navigation restent dans la meme famille visuelle que le paiement.
   ==================================================================== */

/* --- Panier lateral --------------------------------------------------
   Le theme peint le fond sur le <nav> lui-meme (classe « light »). */
#side-cart.side-panel,
#side-cart .side-panel-content,
#side-cart .side-panel-inner,
#side-cart .widget_shopping_cart_content,
#side-cart .cart-panel-summary,
#side-cart > header {
	background-color: var(--lmc-light) !important;
}

/* L'en-tete du panneau se detachait par un gris tres leger, devenu
   invisible sur le bleu : on le remplace par un filet. */
#side-cart > header {
	border-bottom: 1px solid rgba(13, 34, 50, 0.18);
}

/* --- Menus deroulants de l'en-tete -----------------------------------
   Le panneau blanc n'est pas pose sur le <ul> mais sur son pseudo-element
   ::before (c'est lui qui porte l'ombre et l'animation d'ouverture). */
.site-header .et-header-menu ul.sub-menu::before,
.site-header .et-header-menu ul.sub-menu ul.sub-menu::before,
.site-header .megamenu-wrapper::before,
.site-header .megamenu-fullwidth ul.sub-menu::before {
	background-color: var(--lmc-light) !important;
}

/* Les entrees passent au navy de la charte : meilleur contraste sur le
   bleu clair que le gris d'origine (#444). */
.site-header .et-header-menu ul.sub-menu li > a {
	color: var(--lmc-navy);
}

.site-header .et-header-menu ul.sub-menu li > a:hover,
.site-header .et-header-menu ul.sub-menu li.current-menu-item > a {
	color: var(--lmc-blue);
}

/* ====================================================================
   PAGES LEGALES
   Parti pris : un document imprime plutot qu'une page web. Colonne de
   lecture etroite, sections numerotees en chiffres fantomes, filets navy
   au lieu d'aplats — la meme grammaire que le tunnel de commande.
   ==================================================================== */

body.lmc-legal,
body.lmc-legal .site-content,
body.lmc-legal #content,
body.lmc-legal .page-wrapper,
body.lmc-legal .page-wrapper-inner {
	background-color: var(--lmc-light) !important;
}

/* Le thema centre son propre titre de page : il ferait doublon. */
body.lmc-legal .page-header,
body.lmc-legal .entry-header,
body.lmc-legal .post-title {
	display: none !important;
}

body.lmc-legal .site-content,
body.lmc-legal #content {
	padding-top: 0 !important;
}

.lmc-legal__page {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 24px 96px;
	font-family: var(--lmc-font);
	color: var(--lmc-navy);
}

/* --------------------------------------------------------- En-tete */
.lmc-legal__tete {
	padding: 86px 0 54px;
	text-align: center;
}

.lmc-legal__marque {
	margin: 0 0 22px;
	font-size: 12px;
	letter-spacing: 0.34em;
	text-transform: uppercase;
	color: var(--lmc-blue);
}

.lmc-legal__titre {
	margin: 0;
	font-family: var(--lmc-font);
	font-size: clamp(34px, 5vw, 56px);
	font-weight: 400;
	line-height: 1.15;
	letter-spacing: 0.01em;
	color: var(--lmc-navy);
}

.lmc-legal__filet {
	display: block;
	width: 96px;
	height: 1px;
	margin: 30px auto 0;
	background: var(--lmc-blue);
}

.lmc-legal__maj {
	margin: 22px 0 0;
	font-size: 13px;
	font-style: italic;
	color: rgba(13, 34, 50, 0.55);
}

/* ----------------------------------------------------------- Corps */
.lmc-legal__corps {
	display: flex;
	align-items: flex-start;
	gap: 72px;
}

.lmc-legal__texte {
	flex: 1 1 auto;
	min-width: 0;
	max-width: 720px;
}

/* --------------------------------------------------------- Sommaire */
.lmc-legal__sommaire {
	flex: 0 0 250px;
	position: sticky;
	top: 118px;
	padding: 24px 24px 26px;
	border: 1px solid rgba(13, 34, 50, 0.22);
}

.lmc-legal__sommaire-titre {
	margin: 0 0 16px;
	font-size: 11px;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--lmc-blue);
}

.lmc-legal__sommaire ol {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: none;
}

.lmc-legal__sommaire li + li {
	margin-top: 11px;
}

.lmc-legal__sommaire a {
	display: flex;
	gap: 11px;
	font-size: 14px;
	line-height: 1.45;
	color: rgba(13, 34, 50, 0.78);
	text-decoration: none;
	transition: color 0.18s ease;
}

.lmc-legal__sommaire a span {
	flex: 0 0 auto;
	font-size: 11px;
	line-height: 1.9;
	color: var(--lmc-blue);
}

.lmc-legal__sommaire a:hover {
	color: var(--lmc-blue);
}

/* -------------------------------------------------- Titres de section */
.lmc-legal__h2 {
	position: relative;
	margin: 62px 0 22px;
	padding-top: 26px;
	font-family: var(--lmc-font);
	font-size: 25px;
	font-weight: 400;
	line-height: 1.3;
	color: var(--lmc-navy);
	border-top: 1px solid rgba(13, 34, 50, 0.16);
}

.lmc-legal__texte > *:first-child.lmc-legal__h2,
.lmc-legal__h2:first-child {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

/* Le numero se detache dans la marge sur grand ecran, et passe au-dessus
   du titre quand la place manque. */
.lmc-legal__num {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
	letter-spacing: 0.24em;
	color: var(--lmc-blue);
}

/* ------------------------------------------------------ Texte courant */
.lmc-legal__texte p {
	margin: 0 0 20px;
	font-size: 16.5px;
	line-height: 1.85;
	color: rgba(13, 34, 50, 0.86);
}

.lmc-legal__texte a {
	color: var(--lmc-navy);
	text-decoration: underline;
	text-decoration-color: var(--lmc-blue);
	text-underline-offset: 4px;
	transition: color 0.18s ease;
}

.lmc-legal__texte a:hover {
	color: var(--lmc-blue);
}

.lmc-legal__texte b,
.lmc-legal__texte strong {
	font-weight: 700;
	color: var(--lmc-navy);
}

/* ------------------------------------------------------------ Listes */
.lmc-legal__liste {
	margin: 0 0 22px;
	padding: 0;
	list-style: none;
}

.lmc-legal__liste li {
	position: relative;
	margin: 0 0 11px;
	padding-left: 26px;
	font-size: 16.5px;
	line-height: 1.8;
	color: rgba(13, 34, 50, 0.86);
}

/* Un trait plutot qu'une puce ronde : plus proche de l'ecriture serif. */
.lmc-legal__liste li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 14px;
	width: 12px;
	height: 1px;
	background: var(--lmc-blue);
}

/* ------------------------------------- Informations non renseignees */
.lmc-legal__todo {
	display: inline-block;
	padding: 1px 9px;
	font-size: 12px;
	font-style: italic;
	letter-spacing: 0.04em;
	color: rgba(13, 34, 50, 0.5);
	border: 1px dashed rgba(13, 34, 50, 0.3);
}

/* ------------------------------------------------------- Bloc contact */
.lmc-legal__contact {
	margin-top: 64px;
	padding: 30px 32px;
	border: 1px solid rgba(13, 34, 50, 0.22);
}

.lmc-legal__contact-titre {
	margin: 0 0 8px !important;
	font-size: 12px !important;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	color: var(--lmc-blue) !important;
}

.lmc-legal__contact p:last-child {
	margin-bottom: 0;
}

/* --------------------------------------------------------- Ecrans */
@media (max-width: 1100px) {
	.lmc-legal__corps {
		flex-direction: column;
		gap: 40px;
	}

	.lmc-legal__sommaire {
		position: static;
		flex: 1 1 auto;
		width: 100%;
		max-width: 720px;
	}

	.lmc-legal__sommaire ol {
		columns: 2;
		column-gap: 32px;
	}

	.lmc-legal__texte {
		max-width: 720px;
	}
}

@media (max-width: 767px) {
	.lmc-legal__page {
		padding: 0 20px 64px;
	}

	.lmc-legal__tete {
		padding: 56px 0 38px;
	}

	.lmc-legal__sommaire ol {
		columns: 1;
	}

	.lmc-legal__h2 {
		margin-top: 46px;
		font-size: 21px;
	}

	.lmc-legal__texte p,
	.lmc-legal__liste li {
		font-size: 16px;
	}

	.lmc-legal__contact {
		padding: 24px 20px;
	}
}

/* ------------------------------------------------------- Impression */
@media print {
	body.lmc-legal .site-header,
	body.lmc-legal #colophon,
	body.lmc-legal .lmc-legal__sommaire,
	body.lmc-legal .back-to-top {
		display: none !important;
	}

	body.lmc-legal,
	body.lmc-legal .site-content {
		background: #fff !important;
	}

	.lmc-legal__page {
		max-width: none;
		padding: 0;
	}

	.lmc-legal__h2 {
		break-after: avoid;
	}
}

/* ====================================================================
   PAGES A PROPOS ET CONTACT
   Meme grammaire que les pages legales : fond bleu clair, filets navy,
   pas d'aplats, colonne de lecture etroite.
   ==================================================================== */

body.lmc-page-apropos,
body.lmc-page-apropos .site-content,
body.lmc-page-apropos #content,
body.lmc-page-contact,
body.lmc-page-contact .site-content,
body.lmc-page-contact #content {
	background-color: var(--lmc-light) !important;
}

body.lmc-page-apropos .page-header,
body.lmc-page-apropos .entry-header,
body.lmc-page-contact .page-header,
body.lmc-page-contact .entry-header {
	display: none !important;
}

.lmc-apropos,
.lmc-contact {
	max-width: 1080px;
	margin: 0 auto;
	padding: 0 24px 100px;
	font-family: var(--lmc-font);
	color: var(--lmc-navy);
}

/* ------------------------------------------------- En-tetes communs */
.lmc-apropos__tete,
.lmc-contact__tete {
	padding: 84px 0 46px;
	text-align: center;
}

.lmc-apropos__marque,
.lmc-contact__marque {
	margin: 0 0 22px;
	font-size: 12px;
	letter-spacing: 0.34em;
	text-transform: uppercase;
	color: var(--lmc-blue);
}

.lmc-apropos__titre,
.lmc-contact__titre {
	margin: 0;
	font-size: clamp(34px, 5vw, 58px);
	font-weight: 400;
	line-height: 1.14;
	color: var(--lmc-navy);
}

.lmc-apropos__filet,
.lmc-contact__filet {
	display: block;
	width: 96px;
	height: 1px;
	margin: 30px auto 0;
	background: var(--lmc-blue);
}

.lmc-apropos__accroche,
.lmc-contact__accroche {
	max-width: 560px;
	margin: 26px auto 0;
	font-size: 17px;
	line-height: 1.8;
	color: rgba(13, 34, 50, 0.78);
}

/* ============================================================ A PROPOS */

.lmc-apropos__visuel {
	margin: 12px 0 0;
	overflow: hidden;
}

.lmc-apropos__visuel img {
	display: block;
	width: 100%;
	height: clamp(260px, 42vw, 470px);
	object-fit: cover;
	object-position: center 28%;
}

.lmc-apropos__manifeste {
	max-width: 700px;
	margin: 64px auto 0;
}

.lmc-apropos__chapo {
	margin: 0 0 26px;
	font-size: 22px;
	line-height: 1.6;
	color: var(--lmc-navy);
}

.lmc-apropos__manifeste p,
.lmc-apropos__surmesure p {
	margin: 0 0 20px;
	font-size: 16.5px;
	line-height: 1.85;
	color: rgba(13, 34, 50, 0.86);
}

/* ------------------------------------------------------ Trois piliers */
.lmc-apropos__piliers {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	margin: 76px 0 0;
	border-top: 1px solid rgba(13, 34, 50, 0.2);
	border-bottom: 1px solid rgba(13, 34, 50, 0.2);
}

.lmc-apropos__pilier {
	padding: 42px 34px;
}

.lmc-apropos__pilier + .lmc-apropos__pilier {
	border-left: 1px solid rgba(13, 34, 50, 0.14);
}

.lmc-apropos__pilier-num {
	display: block;
	margin-bottom: 14px;
	font-size: 12px;
	letter-spacing: 0.24em;
	color: var(--lmc-blue);
}

.lmc-apropos__pilier h2 {
	margin: 0 0 14px;
	font-size: 21px;
	font-weight: 400;
	line-height: 1.3;
	color: var(--lmc-navy);
}

.lmc-apropos__pilier p {
	margin: 0;
	font-size: 15.5px;
	line-height: 1.8;
	color: rgba(13, 34, 50, 0.82);
}

/* --------------------------------------------------------- Sur-mesure */
.lmc-apropos__surmesure {
	max-width: 700px;
	margin: 72px auto 0;
}

.lmc-apropos__surmesure h2 {
	margin: 0 0 22px;
	font-size: 27px;
	font-weight: 400;
	color: var(--lmc-navy);
}

.lmc-apropos__note {
	padding-left: 20px;
	border-left: 1px solid var(--lmc-blue);
	font-size: 14.5px !important;
	font-style: italic;
	color: rgba(13, 34, 50, 0.7) !important;
}

.lmc-apropos a,
.lmc-contact a {
	color: var(--lmc-navy);
	text-decoration: underline;
	text-decoration-color: var(--lmc-blue);
	text-underline-offset: 4px;
}

.lmc-apropos a:hover,
.lmc-contact a:hover {
	color: var(--lmc-blue);
}

/* ------------------------------------------------------------- Final */
.lmc-apropos__final {
	margin: 86px auto 0;
	padding: 52px 32px;
	max-width: 760px;
	text-align: center;
	border: 1px solid rgba(13, 34, 50, 0.22);
}

.lmc-apropos__mark {
	display: block;
	width: 110px;
	height: auto;
	margin: 0 auto 24px;
	opacity: 0.85;
}

.lmc-apropos__final h2 {
	margin: 0 0 12px;
	font-size: 26px;
	font-weight: 400;
	color: var(--lmc-navy);
}

.lmc-apropos__final p {
	margin: 0 0 26px;
	font-size: 16px;
	line-height: 1.8;
	color: rgba(13, 34, 50, 0.82);
}

.lmc-apropos__actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 26px;
	flex-wrap: wrap;
	margin-bottom: 0 !important;
}

.lmc-apropos__actions .lmc-btn {
	min-width: 230px;
}

.lmc-apropos__lien {
	font-size: 15px;
}

/* ============================================================= CONTACT */

.lmc-contact__grille {
	display: flex;
	align-items: flex-start;
	gap: 64px;
	margin-top: 22px;
}

.lmc-contact__form-zone {
	flex: 1 1 auto;
	min-width: 0;
}

.lmc-contact__aside {
	flex: 0 0 300px;
}

/* ---------------------------------------------------------- Messages */
.lmc-contact__message {
	margin: 0 0 26px;
	padding: 16px 20px;
	font-size: 15px;
	line-height: 1.7;
	border: 1px solid var(--lmc-blue);
}

.lmc-contact__message--ko {
	border-color: #b4453f;
	color: #8e332e;
}

/* --------------------------------------------------------- Formulaire */
.lmc-contact__pot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.lmc-contact__duo {
	display: flex;
	gap: 18px;
}

.lmc-contact__duo .lmc-contact__champ {
	flex: 1 1 0;
	min-width: 0;
}

.lmc-contact__champ {
	margin: 0 0 20px;
}

.lmc-contact__champ label {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(13, 34, 50, 0.72);
}

.lmc-contact__champ label span {
	color: var(--lmc-blue);
}

.lmc-contact__opt {
	text-transform: none;
	letter-spacing: 0;
	font-size: 12px;
	font-style: italic;
	color: rgba(13, 34, 50, 0.5) !important;
}

.lmc-contact__champ input[type="text"],
.lmc-contact__champ input[type="email"],
.lmc-contact__champ select,
.lmc-contact__champ textarea {
	width: 100%;
	padding: 13px 14px;
	background: var(--lmc-light);
	border: 1px solid rgba(13, 34, 50, 0.4);
	border-radius: 0;
	font-family: var(--lmc-font);
	font-size: 16px;
	color: var(--lmc-navy);
	transition: border-color 0.18s ease;
}

.lmc-contact__champ textarea {
	resize: vertical;
	min-height: 150px;
	line-height: 1.7;
}

.lmc-contact__champ input:focus,
.lmc-contact__champ select:focus,
.lmc-contact__champ textarea:focus {
	border-color: var(--lmc-navy);
	outline: none;
}

.lmc-contact__rgpd {
	margin: 0 0 24px;
	font-size: 13px;
	line-height: 1.7;
	color: rgba(13, 34, 50, 0.6);
}

.lmc-contact__envoi {
	margin: 0;
}

.lmc-contact__envoi .lmc-btn {
	min-width: 230px;
}

/* ------------------------------------------------------ Colonne droite */
.lmc-contact__bloc {
	padding: 24px 24px 26px;
	border: 1px solid rgba(13, 34, 50, 0.22);
}

.lmc-contact__bloc + .lmc-contact__bloc {
	margin-top: 20px;
}

.lmc-contact__bloc-titre {
	margin: 0 0 14px;
	font-size: 11px;
	letter-spacing: 0.26em;
	text-transform: uppercase;
	color: var(--lmc-blue);
}

.lmc-contact__bloc p {
	margin: 0 0 10px;
	font-size: 15px;
	line-height: 1.75;
	color: rgba(13, 34, 50, 0.86);
}

.lmc-contact__mail {
	font-size: 16px;
	word-break: break-word;
}

.lmc-contact__petit {
	font-size: 13.5px !important;
	color: rgba(13, 34, 50, 0.6) !important;
	margin-bottom: 0 !important;
}

.lmc-contact__reseaux {
	display: flex;
	gap: 22px;
	margin-bottom: 0 !important;
}

.lmc-contact__liens {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lmc-contact__liens li + li {
	margin-top: 11px;
}

.lmc-contact__liens a {
	font-size: 15px;
	line-height: 1.5;
}

/* ------------------------------------------------------------ Ecrans */
@media (max-width: 991px) {
	.lmc-apropos__piliers {
		grid-template-columns: 1fr;
	}

	.lmc-apropos__pilier + .lmc-apropos__pilier {
		border-left: 0;
		border-top: 1px solid rgba(13, 34, 50, 0.14);
	}

	.lmc-contact__grille {
		flex-direction: column;
		gap: 44px;
	}

	.lmc-contact__aside {
		flex: 1 1 auto;
		width: 100%;
	}
}

@media (max-width: 767px) {
	.lmc-apropos,
	.lmc-contact {
		padding: 0 20px 70px;
	}

	.lmc-apropos__tete,
	.lmc-contact__tete {
		padding: 54px 0 34px;
	}

	.lmc-apropos__chapo {
		font-size: 19px;
	}

	.lmc-apropos__pilier {
		padding: 32px 22px;
	}

	.lmc-apropos__final {
		padding: 38px 22px;
	}

	.lmc-contact__duo {
		flex-direction: column;
		gap: 0;
	}

	.lmc-apropos__actions .lmc-btn,
	.lmc-contact__envoi .lmc-btn {
		width: 100%;
		min-width: 0;
	}
}

/* --------------------------------------------------------------------
   Ces deux pages n'utilisent plus WPBakery : le theme les place alors
   dans sa colonne d'article (col-lg-8, soit 66 %), prevue pour un blog
   avec barre laterale. On rend la largeur au contenu.
   -------------------------------------------------------------------- */
body.lmc-page-apropos .container,
body.lmc-page-contact .container {
	max-width: 1240px;
}

body.lmc-page-apropos .col-lg-8.main-content,
body.lmc-page-contact .col-lg-8.main-content {
	flex: 0 0 100%;
	max-width: 100%;
}

body.lmc-page-apropos .post-content,
body.lmc-page-contact .post-content {
	padding: 0;
}

/* Le bouton du theme (gris #282828) reprenait le dessus sur l'aplat navy. */
body.lmc-page-apropos .lmc-btn--primary,
body.lmc-page-contact .lmc-btn--primary {
	background-color: var(--lmc-navy) !important;
	border-color: var(--lmc-navy) !important;
	color: var(--lmc-white) !important;
}

body.lmc-page-apropos .lmc-btn--primary:hover,
body.lmc-page-contact .lmc-btn--primary:hover {
	background-color: var(--lmc-blue) !important;
	border-color: var(--lmc-blue) !important;
}

/* Le bouton du theme est en display:inline : sans cette declaration, la
   largeur minimale ne s'applique pas. */
.lmc-apropos__actions .lmc-btn,
.lmc-contact__envoi .lmc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 15px 30px;
}
/* Le theme applique padding:0 et un soulignement a tous les liens de ces
   pages : les deux boutons doivent y echapper. */
.lmc-apropos__actions a.lmc-btn,
.lmc-contact__envoi button.lmc-btn {
	padding: 16px 30px !important;
	text-decoration: none !important;
	line-height: 1.2;
}

.lmc-apropos__mark {
	width: 88px !important;
}
/* ====================================================================
   PIED DE PAGE â€” ILLUSTRATION BOTANIQUE
   Documentation p.3 : le pied de page est referme par une planche de
   cedrat, tracee en blanc sur le navy. Elle remplace le monogramme,
   comme sur la maquette.
   Source : goldy-citrons-3.pdf page 3, detouree en PNG transparent.
   ==================================================================== */
.lmc-footer__mark img {
	display: none;
}

.lmc-footer__mark::before {
	content: "";
	display: block;
	width: 118px;
	aspect-ratio: 820 / 652;
	margin: 0 auto;
	background-image: url('/wp-content/uploads/2026/08/lmc-ornement-citron.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

@media (max-width: 767px) {
	.lmc-footer__mark::before {
		width: 96px;
	}
}

/* Le monogramme du pied de page etait declare avec une specificite plus
   forte : on la depasse pour laisser la place a l'illustration. */
.lmc-footer .lmc-footer__mark img,
.site-footer .lmc-footer__mark img {
	display: none !important;
}

/* ====================================================================
   EN-TETE - documentation p.2
   FOND  : GOLDY BLUE #629AC7, opacite 75 %
   TEXTE : WHITE #ffffff, opacite 100 %
   L'aplat est aussi pose par le reglage Â« header_background_color Â» du
   theme ; la regle ci-dessous y ajoute la transparence demandee et
   couvre les trois etats (page interieure, defilement, accueil).
   ==================================================================== */
#header.site-header,
.page-header-regular #header.site-header,
.header_on_scroll #header.site-header,
body.page-header-transparent:not(.header_on_scroll) #header.site-header {
	background-color: rgba(98, 154, 199, 0.75) !important;
}

/* Le filet sous l'en-tete etait calcule pour du noir : sur le bleu il
   tirait une ligne sombre. Il passe en blanc translucide. */
#header.site-header,
#header .header-main,
#header .header-bottom {
	border-color: rgba(255, 255, 255, 0.25);
}

/* Le compteur du panier serait blanc sur bleu clair. */
#header .minicart-counter:not(.et-count-zero) {
	background-color: #0d2232;
	color: #ffffff;
}

/* --------------------------------------------------------------------
   EN-TETE - effet verre depoli
   La couleur et l'opacite ne changent pas (#629AC7 a 75 %) : on floute
   seulement ce qui defile derriere, pour que le monogramme et le menu
   restent nets au-dessus des photos produits.
   Les navigateurs qui ne gerent pas cet effet affichent simplement le
   bleu a 75 %, comme avant.
   -------------------------------------------------------------------- */
#header.site-header {
	-webkit-backdrop-filter: blur(14px) saturate(120%);
	backdrop-filter: blur(14px) saturate(120%);
}

/* ====================================================================
   PANNEAUX DE MENU - meme traitement que l'en-tete
   FOND : GOLDY BLUE #629AC7, opacite 75 %, verre depoli.
   Concerne le menu deroulant mobile et le panneau de recherche, qui
   s'ouvrent tous deux par-dessus la page.
   ==================================================================== */
nav#mobile-menu.side-panel,
nav.search-panel.side-panel,
#mobile-menu .side-panel-bar,
.search-panel .side-panel-bar {
	background-color: rgba(98, 154, 199, 0.75) !important;
	-webkit-backdrop-filter: blur(14px) saturate(120%);
	backdrop-filter: blur(14px) saturate(120%);
}

/* La barre du haut se detachait par un gris tres leger, invisible sur le
   bleu : un filet blanc translucide la remplace. */
#mobile-menu .side-panel-bar,
.search-panel .side-panel-bar {
	border-bottom: 1px solid rgba(255, 255, 255, 0.28);
}

/* Les filets entre les entrees de menu etaient calcules pour du blanc. */
#mobile-menu .sliding-menu-panel li,
#mobile-menu .sliding-menu-panel li > a {
	border-color: rgba(13, 34, 50, 0.18);
}

/* Le champ de recherche reste lisible sur le bleu. */
#mobile-menu .goya-search input,
.search-panel .goya-search input {
	color: #0d2232;
	border-bottom-color: rgba(13, 34, 50, 0.45);
}

#mobile-menu .goya-search input::placeholder,
.search-panel .goya-search input::placeholder {
	color: rgba(13, 34, 50, 0.6);
}

/* La barre superieure du menu mobile (croix, compte, favoris) est un
   element distinct du panneau, peint en gris #F8F8F8 par le theme. */
#mobile-menu .mobile-bar,
.mobile-bar.light,
.side-panel .mobile-bar {
	background-color: rgba(98, 154, 199, 0.75) !important;
	-webkit-backdrop-filter: blur(14px) saturate(120%);
	backdrop-filter: blur(14px) saturate(120%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.28);
}

/* Le bouton de fermeture etait un rond blanc sur gris. */
.mobile-bar .et-close,
.mobile-bar .side-panel-close,
.mobile-bar [class*="close"] {
	background-color: rgba(255, 255, 255, 0.22);
	color: #0d2232;
}

/* --------------------------------------------------------------------
   Accueil : respiration entre la photo principale et le bloc banniere.
   L'attribut Â« css Â» de la ligne WPBakery ne genere aucune feuille de
   style pour une classe creee a la main : la marge est donc posee ici.
   -------------------------------------------------------------------- */
.vc_row.vc_custom_lmc_n3 {
	margin-top: 30px;
}

@media (max-width: 767px) {
	.vc_row.vc_custom_lmc_n3 {
		margin-top: 18px;
	}
}

/* --------------------------------------------------------------------
   Accueil : image pleine largeur juste apres le hero.
   Â« et_full_width Â» sort bien la ligne de la grille, mais la colonne
   WPBakery garde ses 15 px de gouttiere (20 px sous 768). On les retire
   pour cette ligne seulement, afin que l'image touche les deux bords.
   -------------------------------------------------------------------- */
.vc_row.vc_custom_lmc_n2 {
	margin-left: 0;
	margin-right: 0;
}

.vc_row.vc_custom_lmc_n2 > .wpb_column,
.vc_row.vc_custom_lmc_n2 .vc_column_container,
.vc_row.vc_custom_lmc_n2 .vc_column-inner,
.vc_row.vc_custom_lmc_n2 .wpb_wrapper {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.vc_row.vc_custom_lmc_n2 .et-image,
.vc_row.vc_custom_lmc_n2 figure,
.vc_row.vc_custom_lmc_n2 img {
	display: block;
	width: 100%;
	max-width: none;
	height: auto;
	margin: 0;
}

/* La gouttiere ne vient pas de la ligne mais du conteneur que le theme
   place autour d'elle : .sec_row.container-fluid, avec 15 px (20 px sur
   mobile). On l'annule uniquement pour le conteneur qui porte notre
   ligne, grace au selecteur :has(). */
.sec_row.container-fluid:has(> .vc_custom_lmc_n2) {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Repli pour les navigateurs sans :has() â€” on ressort la ligne de la
   gouttiere par une marge negative de meme valeur. */
@supports not selector(:has(*)) {
	.vc_row.vc_custom_lmc_n2 {
		margin-left: -15px;
		margin-right: -15px;
	}

	@media (max-width: 767px) {
		.vc_row.vc_custom_lmc_n2 {
			margin-left: -20px;
			margin-right: -20px;
		}
	}
}

/* Meme traitement que la ligne precedente : on annule la gouttiere du
   conteneur que le theme place autour de la ligne pleine largeur. */
.sec_row.container-fluid:has(> .vc_custom_lmc_n3) {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

@supports not selector(:has(*)) {
	.vc_row.vc_custom_lmc_n3 {
		margin-left: -15px;
		margin-right: -15px;
	}

	@media (max-width: 767px) {
		.vc_row.vc_custom_lmc_n3 {
			margin-left: -20px;
			margin-right: -20px;
		}
	}
}

/* Une fois la gouttiere du conteneur annulee, il reste les gouttieres
   negatives de la grille WPBakery (-15 px de chaque cote) qui faisaient
   depasser la ligne de 30 px. On les remet a zero. */
.vc_row.vc_custom_lmc_n3 {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.vc_row.vc_custom_lmc_n3 > .wpb_column,
.vc_row.vc_custom_lmc_n3 .vc_column_container,
.vc_row.vc_custom_lmc_n3 .vc_column-inner {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* ====================================================================
   MENU CENTRE DANS L EN-TETE
   Le thema place le menu dans le groupe de gauche, juste apres le logo.
   On le sort du flux pour le centrer sur la largeur de l en-tete ; le
   logo reste a gauche, la recherche et le panier a droite.
   Sans Â« top Â», l element garde sa position verticale naturelle.
   ==================================================================== */
@media (min-width: 992px) {
	.site-header .header-contents {
		position: relative;
	}

	.site-header .header-left-items nav#primary-menu {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		width: auto;
		max-width: calc(100% - 260px);
	}

	/* Le groupe de gauche n a plus que le logo : il ne doit plus
	   s etirer et pousser les icones. */
	.site-header .header-left-items {
		flex: 0 0 auto;
	}
}

/* --------------------------------------------------------------------
   Accueil : les deux images se touchent.
   La marge de 30 px avait ete posee quand ce bloc suivait directement le
   hero. Depuis, l image pleine largeur s est intercalee : cette marge ne
   fait plus que creer une bande blanche entre les deux visuels.
   -------------------------------------------------------------------- */
.vc_row.vc_custom_lmc_n2 {
	margin-bottom: 0 !important;
}

.vc_row.vc_custom_lmc_n3 {
	margin-top: 0 !important;
}

.vc_row.vc_custom_lmc_n2 .et-image,
.vc_row.vc_custom_lmc_n2 .et-image-inner,
.vc_row.vc_custom_lmc_n2 .et-image-thumb {
	margin-bottom: 0;
	line-height: 0;
}

/* --------------------------------------------------------------------
   Accueil : accroche de la banniere sur deux lignes en mobile aussi.
   Le theme garde la meme taille de police (16 px) et le meme espacement
   (3,2 px) quelle que soit la largeur, alors que la zone de texte tombe
   de 720 a 312 px : la phrase partait sur cinq lignes. On elargit la
   zone et on reduit police et espacement dans la meme proportion.
   -------------------------------------------------------------------- */
@media (max-width: 767px) {
	.vc_custom_lmc_n3 .et-banner-text {
		width: 96% !important;
		max-width: 96% !important;
	}

	.vc_custom_lmc_n3 .et-banner-subtitle {
		font-size: 11px !important;
		letter-spacing: 1.2px !important;
		line-height: 1.75 !important;
	}

	.vc_custom_lmc_n3 .et-banner-link {
		font-size: 14px !important;
		letter-spacing: 1.6px !important;
	}
}

/* Palier tablette de l accroche : entre 768 et 991 px, la zone de texte
   est deja etroite mais la police restait a 16 px, d ou cinq lignes.
   Valeurs intermediaires entre le mobile et le bureau. */
@media (min-width: 768px) and (max-width: 991px) {
	.vc_custom_lmc_n3 .et-banner-text {
		width: 92% !important;
		max-width: 92% !important;
	}

	.vc_custom_lmc_n3 .et-banner-subtitle {
		font-size: 13px !important;
		letter-spacing: 1.8px !important;
		line-height: 1.75 !important;
	}

	.vc_custom_lmc_n3 .et-banner-link {
		font-size: 16px !important;
	}
}

/* ====================================================================
   ACCUEIL - BLOC FORMULES ET ACCESSOIRES
   Fond LIGHT BLUE #EBF2F8 sur toute la largeur, espacement resserre.
   Le fond est porte par un pseudo-element : la ligne garde ainsi sa
   place dans la grille, seul l aplat deborde jusqu aux bords.
   ==================================================================== */
body.home .site-content {
	overflow-x: clip;
}

.vc_row.vc_custom_lmc_formules {
	position: relative;
	padding-top: 54px !important;
	padding-bottom: 46px !important;
}

.vc_row.vc_custom_lmc_formules::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(50% - 50vw);
	width: 100vw;
	background-color: #ebf2f8;
	z-index: 0;
}

.vc_row.vc_custom_lmc_formules > * {
	position: relative;
	z-index: 1;
}

/* L illustration occupait 1011 px de large : elle ecrasait le bloc. */
.vc_row.vc_custom_lmc_formules .et-image img {
	max-width: 480px;
	height: auto;
	margin: 0 auto;
}

.vc_row.vc_custom_lmc_formules .wpb_text_column {
	margin-top: 22px;
	margin-bottom: 22px;
}

.vc_row.vc_custom_lmc_formules h3 {
	margin: 0 0 6px;
	font-size: 15px;
	line-height: 1.5;
	color: var(--lmc-navy, #0d2232);
}

@media (max-width: 767px) {
	.vc_row.vc_custom_lmc_formules {
		padding-top: 38px !important;
		padding-bottom: 34px !important;
	}

	.vc_row.vc_custom_lmc_formules .et-image img {
		max-width: 300px;
	}

	.vc_row.vc_custom_lmc_formules h3 {
		font-size: 13px;
	}
}

/* --------------------------------------------------------------------
   Le panneau du menu mobile en LIGHT BLUE #EBF2F8.
   Il etait en GOLDY BLUE a 75 % avec effet verre depoli ; la cliente
   prefere l aplat clair. Le fond etant desormais opaque, le flou n a
   plus d effet visible : on le retire pour ne pas charger l affichage.
   La barre du haut (croix, compte, favoris) reste, elle, en GOLDY BLUE.
   -------------------------------------------------------------------- */
nav#mobile-menu.side-panel {
	background-color: var(--lmc-light) !important;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

/* Les filets entre les entrees, calcules pour le bleu soutenu, sont
   assombris pour rester visibles sur le fond clair. */
#mobile-menu .sliding-menu-panel li,
#mobile-menu .sliding-menu-panel li > a {
	border-color: rgba(13, 34, 50, 0.14);
}

/* --------------------------------------------------------------------
   Bouton Â« Nos produits Â» du bloc formules : aplat GOLDY BLUE #629AC7.
   Le bouton WPBakery est declare en Â« noir Â» dans le contenu ; on le
   surcharge ici pour ne pas toucher au balisage de la page.
   -------------------------------------------------------------------- */
.vc_row.vc_custom_lmc_formules .vc_btn3,
.vc_row.vc_custom_lmc_formules a.vc_general,
.vc_row.vc_custom_lmc_formules .vc_btn3-container a {
	background-color: var(--lmc-blue) !important;
	border-color: var(--lmc-blue) !important;
	color: #ffffff !important;
	transition: background-color 0.22s ease, border-color 0.22s ease;
}

.vc_row.vc_custom_lmc_formules .vc_btn3:hover,
.vc_row.vc_custom_lmc_formules a.vc_general:hover,
.vc_row.vc_custom_lmc_formules .vc_btn3-container a:hover {
	background-color: var(--lmc-navy) !important;
	border-color: var(--lmc-navy) !important;
	color: #ffffff !important;
}

/* ====================================================================
   PIED DE PAGE - liens du pied de page centres
   Ils etaient alignes a gauche sur ordinateur et empiles un par ligne
   sur mobile. On les met en ligne, centres, dans les deux cas.
   ==================================================================== */
.lmc-footer__links {
	flex-direction: row !important;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	gap: 10px 34px;
}

/* Sur ordinateur, les reseaux sociaux passent en position absolue a
   droite : les liens peuvent alors etre centres sur toute la largeur,
   et non sur l espace qui reste a cote des icones. */
@media (min-width: 768px) {
	.lmc-footer__bar {
		position: relative;
		justify-content: center;
	}

	.lmc-footer__social {
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}
}

/* Sous 992 px, les icones reprennent leur place sous les liens. */
@media (max-width: 767px) {
	.lmc-footer__bar {
		align-items: center;
	}

	.lmc-footer__links {
		gap: 9px 20px;
	}
}

/* --------------------------------------------------------------------
   PIED DE PAGE - reseaux sociaux sous les liens, centres.
   Ils etaient ancres a droite sur ordinateur et tablette ; la cliente
   les veut centres sous les liens, comme sur mobile. Le bandeau passe
   donc en colonne centree a toutes les largeurs, et les icones
   reviennent dans le flux.
   -------------------------------------------------------------------- */
.lmc-footer__bar {
	position: static;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 18px;
}

.lmc-footer__social {
	position: static;
	right: auto;
	top: auto;
	transform: none;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 22px;
}


/* ==================================================================
   GUIDE DES TAILLES - lien rendu visible + icone metre (2026-08-10)
   Goya ne dessinait qu'un texte gris precede d'un filet de 25 px
   (.preline), quasi invisible. Passe en bouton contour navy.
   ================================================================== */
.et-product-detail .summary a.sizing_guide {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	padding: 6px 12px !important;
	margin-bottom: 16px;
	border: 1px solid rgba(13,34,50,.4);
	border-radius: 2px;
	color: #0D2232 !important;
	background-color: transparent;
	font-size: 10px;
	line-height: 1.15;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
/* Le :before de Goya portait le filet ; il devient le porte-icone. */
.et-product-detail .summary a.sizing_guide:before {
	content: "" !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	flex: 0 0 0;
	width: 0 !important;
	height: 13px !important;
	background: transparent !important;
}
/* Icone en masque : elle suit automatiquement la couleur du texte,
   donc elle passe en blanc au survol sans second fichier. */
@supports ((-webkit-mask-image: none) or (mask-image: none)) {
	.et-product-detail .summary a.sizing_guide:before {
		flex: 0 0 13px;
		width: 13px !important;
		background: currentColor !important;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='7.5' width='20' height='9' rx='1.3'/%3E%3Cpath d='M6.4 7.5v3.4M10.6 7.5v4.8M14.8 7.5v3.4M19 7.5v4.8'/%3E%3C/svg%3E") no-repeat center center;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='7.5' width='20' height='9' rx='1.3'/%3E%3Cpath d='M6.4 7.5v3.4M10.6 7.5v4.8M14.8 7.5v3.4M19 7.5v4.8'/%3E%3C/svg%3E") no-repeat center center;
		-webkit-mask-size: contain;
		mask-size: contain;
	}
}
.et-product-detail .summary a.sizing_guide:hover,
.et-product-detail .summary a.sizing_guide:focus-visible {
	background-color: #0D2232;
	border-color: #0D2232;
	color: #ffffff !important;
}
@media (max-width: 767px) {
	.et-product-detail .summary a.sizing_guide {
		font-size: 10px;
		padding: 7px 11px !important;
		gap: 6px;
		margin-bottom: 14px;
	}
}


/* ==================================================================
   ACCUEIL - photo de campagne pleine largeur, apres VOIR LA COLLECTION
   Meme recette que les lignes N2 et N3 : et_full_width sort la ligne
   de la grille, mais il reste DEUX gouttieres a annuler, celle de la
   colonne WPBakery et celle du .sec_row.container-fluid que le theme
   place autour de la ligne.
   Visuel portrait 1707x2560 : en pleine largeur il est tres haut
   (environ 1,5 fois la largeur de la fenetre). Choix assume de la
   cliente, qui veut le meme traitement que les autres photos.
   ================================================================== */
.vc_row.vc_custom_lmc_n4 {
	margin-left: 0;
	margin-right: 0;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.vc_row.vc_custom_lmc_n4 > .wpb_column,
.vc_row.vc_custom_lmc_n4 .vc_column_container,
.vc_row.vc_custom_lmc_n4 .vc_column-inner,
.vc_row.vc_custom_lmc_n4 .wpb_wrapper {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.vc_row.vc_custom_lmc_n4 .et-image,
.vc_row.vc_custom_lmc_n4 .et-image-inner,
.vc_row.vc_custom_lmc_n4 .et-image-thumb,
.vc_row.vc_custom_lmc_n4 figure,
.vc_row.vc_custom_lmc_n4 img {
	display: block;
	width: 100%;
	max-width: none;
	height: auto;
	margin: 0;
	line-height: 0;
}

.sec_row.container-fluid:has(> .vc_custom_lmc_n4) {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Repli pour les navigateurs sans :has() */
@supports not selector(:has(*)) {
	.vc_row.vc_custom_lmc_n4 {
		margin-left: -15px;
		margin-right: -15px;
	}

	@media (max-width: 767px) {
		.vc_row.vc_custom_lmc_n4 {
			margin-left: -20px;
			margin-right: -20px;
		}
	}
}


/* ==================================================================
   LIBELLES DES ATTRIBUTS SUR LA FICHE PRODUIT (2026-08-10)
   Le client ne savait pas ce qu'il choisissait : les rangees de
   pastilles s'enchainaient sans intitule. Les <th class="label">
   existent bien dans le HTML de WooCommerce, mais l'extension de
   pastilles cfvsw les masque via
     .cfvsw-label-none table.variations tr th.label { display:none !important }
   (reglage html_design = none). On repasse par-dessus avec une
   specificite superieure, sans toucher au reglage global de
   l'extension, qui est partagee avec la seconde extension de
   pastilles encore active.
   ================================================================== */
.et-product-detail form.variations_form table.variations tr th.label {
	display: block !important;
	width: 100% !important;
	padding: 14px 0 7px !important;
	border: 0 !important;
	text-align: left !important;
	font-size: 11px;
	line-height: 1.2;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #0D2232;
	font-weight: normal;
}

.et-product-detail form.variations_form table.variations tr th.label label {
	display: inline;
	margin: 0;
	padding: 0;
	font-size: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	color: inherit;
	font-weight: inherit;
}

/* La rangee de pastilles suit immediatement son intitule : on retire
   le retrait haut de la cellule pour ne pas doubler l'espacement. */
.et-product-detail form.variations_form table.variations tr td.value {
	padding-top: 0 !important;
}

/* Premiere rangee : pas de retrait superieur superflu. */
.et-product-detail form.variations_form table.variations tr:first-child th.label {
	padding-top: 4px !important;
}

@media (max-width: 767px) {
	.et-product-detail form.variations_form table.variations tr th.label {
		font-size: 10px;
		padding: 12px 0 6px !important;
	}
}


/* ==================================================================
   GRILLE - AU SURVOL (2026-08-11)
   Le prix garde le bloc gris de Goya (fond noir a 30 %, texte
   blanc) : la cliente l'a valide. Seul le bouton d'ajout est
   retire de la grille — pour un produit a variantes il ne fait que
   mener a la fiche, ce que le clic sur la carte fait deja.
   ================================================================== */
ul.products li.product .button,
ul.products li.product .add_to_cart_button,
ul.products li.product .product_type_variable,
ul.products li.product .added_to_cart {
	display: none !important;
}


/* ==================================================================
   ALIGNEMENT N2 ET N3 SUR LA TAILLE DE N4 (2026-08-11)
   N4 est un portrait 1707x2560, soit un rapport de 0,667. N2 et N3
   sont des paysages de rapport 1,5. On leur impose le rapport de N4
   et on recadre au centre : la photo garde ses proportions, elle est
   rognee sur les cotes, jamais etiree.
   Dimensions d'origine, pour revenir en arriere :
     N2 1440x959  / 1920x1279 / 390x260  (ratio 1,501)
     N3 1440x960  / 1920x1280 / 390x260  (ratio 1,500)
   ================================================================== */
.vc_row.vc_custom_lmc_n2 img,
.vc_row.vc_custom_lmc_n3 img,
.vc_row.vc_custom_lmc_n3 .et-banner-image,
.vc_row.vc_custom_lmc_n3 .et-banner-image img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1707 / 2560;
	object-fit: cover;
	/* Le cadre etant plus haut que large, « cover » met l'image a
	   l'echelle par la hauteur : toute la hauteur reste visible, seule
	   la LARGEUR est rognee. Le reglage vertical serait sans effet. */
	object-position: center center;
	max-width: none !important;
	display: block;
}

/* La banniere N3 porte un texte en surimpression : son conteneur doit
   suivre la meme hauteur, sinon le texte flotte hors de l'image. */
.vc_row.vc_custom_lmc_n3 .et-banner,
.vc_row.vc_custom_lmc_n3 .et-banner-inner,
.vc_row.vc_custom_lmc_n3 .et-image,
.vc_row.vc_custom_lmc_n3 .et-image-inner,
.vc_row.vc_custom_lmc_n2 .et-image,
.vc_row.vc_custom_lmc_n2 .et-image-inner,
.vc_row.vc_custom_lmc_n2 .et-image-thumb {
	height: auto !important;
	max-height: none !important;
}


/* ==================================================================
   DEUXIEME IMAGE DE LA BANNIERE N3 (2026-08-11)
   Le composant et_banner empile deux images : celle qui s'affiche et
   celle du survol. Rendues en block, elles se suivaient verticalement
   et doublaient la hauteur de la ligne en mobile. On superpose la
   seconde a la premiere.
   ================================================================== */
.vc_row.vc_custom_lmc_n3 .et-banner {
	position: relative;
}

.vc_row.vc_custom_lmc_n3 .et-banner-alt-image {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto !important;
	object-fit: cover;
	object-position: center center;
}
/* ====================================================================
   NOTICE D INFORMATION SOUS LA FICHE PRODUIT
   Mention legale sur le caractere definitif de l achat, avec renvoi
   vers la politique de retour.
   ==================================================================== */

.lmc-notice-achat {
	display: block;
	margin: 18px 0 0;
	padding: 14px 16px;
	background-color: #ebf2f8;
	border-left: 2px solid #629ac7;
	font-family: var(--lmc-font, Georgia, serif);
	font-size: 13.5px;
	line-height: 1.65;
	color: rgba(13, 34, 50, 0.86);
}

.lmc-notice-achat__texte {
	display: block;
}

.lmc-notice-achat__lien {
	display: inline-block;
	margin-top: 7px;
	font-size: 13px;
	color: #0d2232 !important;
	text-decoration: underline;
	text-decoration-color: #629ac7;
	text-underline-offset: 3px;
}

.lmc-notice-achat__lien:hover {
	color: #629ac7 !important;
	text-decoration-color: #629ac7;
}

@media (max-width: 767px) {
	.lmc-notice-achat {
		margin-top: 14px;
		padding: 12px 13px;
		font-size: 12.5px;
	}

	.lmc-notice-achat__lien {
		font-size: 12.5px;
	}
}
