@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&display=swap');

@font-face {
	font-family: 'Gliker';
	src: url('../fonts/gliker/gliker-bold.woff2') format('woff2'),
	     url('../fonts/gliker/gliker-bold.woff') format('woff'),
	     url('../fonts/gliker/gliker-bold.eot') format('embedded-opentype');
	font-weight: 400 700;
	font-style: normal;
	font-display: swap;
}

/* =============================================================================
   La Petite Herboristerie — Homepage
   ============================================================================= */

:root {
	--lph-blue:          #002689;
	--lph-lavender:      #8A97FE;
	--lph-green:         #24D26D;
	--lph-red:           #FE4B4B;
	--lph-lavender-bg:   #DCE0FF;
	--lph-yellow:        #F6FE78;
	--lph-pink:        #FE81CC;
	--lph-lightblue:        #81D8FE;
	--lph-orange:        #FEBF81;
	--lph-gray:          #4A5565;
	--lph-gray-muted:    #99A1AF;
	--lph-border:        #E9EBEF;
}

/* =============================================================================
   RESET FOR LPH SECTIONS
   ============================================================================= */
/* Police par défaut du site */
html {
	overflow-x: clip; /* empêche le scrollbar horizontal sans casser position:sticky */
}

body {
	font-family: 'Montserrat', sans-serif;
	overflow-x: clip;
}

.lph-header,
.lph-hero,
.lph-section {
	box-sizing: border-box;
	font-family: 'Gliker', sans-serif;
}

.lph-footer {
	box-sizing: border-box;
	font-family: 'Montserrat', sans-serif;
}

.lph-header *,
.lph-hero *,
.lph-section *,
.lph-footer * {
	box-sizing: border-box;
}

:where(.wp-site-blocks) > * {
	margin-block-start: 0;
}
:where(.wp-site-blocks :focus) {
    outline-style: none;
}

/* =============================================================================
   HEADER
   ============================================================================= */
.lph-header {
	position: sticky;
	top: 0;
	z-index: 200;
	width: 100%;
	background: var(--lph-blue);
	box-shadow: 0 4px 6px -4px rgba(0,0,0,.1), 0 10px 15px -3px rgba(0,0,0,.1);
}

.lph-header-inner {
	max-width: 1445px;
	margin: 0 auto;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 61px 0 43px;
}

.lph-logo-link {
	display: flex;
	align-items: center;
	flex: 0 1 238px; /* peut rétrécir si le nav est chargé */
	min-width: 80px;
	overflow: hidden;
}

.lph-logo-link img {
	width: 100%;
	height: auto;
	max-height: 52px;
	object-fit: contain;
}

.lph-nav {
	display: flex;
	align-items: center;
	gap: 42px;
	flex: 1;
	justify-content: center;
}

.lph-nav-list {
	display: flex;
	align-items: center;
	gap: 42px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.lph-nav-list > li { list-style: none; }

.lph-nav-list > li > a {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: #fff;
	text-decoration: none;
	white-space: nowrap;
	display: flex;
	align-items: center;
	gap: 4px;
}

.lph-nav-list > li > a:hover { text-decoration: none; }

.lph-nav-list > li.lph-nav-item.has-mega > a::after {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' width%3D'12' height%3D'12' viewBox%3D'0 0 12 12' fill%3D'none'%3E%3Cpath d%3D'M3 4.5l3 3 3-3' stroke%3D'%23ffffff' stroke-width%3D'1.8' stroke-linecap%3D'round' stroke-linejoin%3D'round'%2F%3E%3C%2Fsvg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

.lph-header-actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-shrink: 0;
}

.lph-action-btn {
	background: none;
	border: none;
	cursor: pointer;
	color: #fff;
	padding: 6px;
	display: flex;
	align-items: center;
	text-decoration: none;
	position: relative;
}

.lph-cart-count {
	position: absolute;
	top: 0;
	right: 0;
	background: var(--lph-red);
	color: #fff;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 10px;
	line-height: 1;
	min-width: 16px;
	height: 16px;
	border-radius: 99px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 4px;
}

.lph-cart-count[hidden] { display: none; }

/* =============================================================================
   SEARCH OVERLAY
   ============================================================================= */
.lph-search-overlay {
	position: fixed;
	inset: 0;
	z-index: 9998;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(0, 38, 137, 0.88);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility .2s ease;
}

.lph-search-overlay[aria-hidden="false"] {
	opacity: 1;
	visibility: visible;
}

.lph-search-overlay__close {
	position: fixed;
	top: 20px;
	right: 24px;
	background: transparent;
	border: none;
	cursor: pointer;
	padding: 8px;
	line-height: 0;
	opacity: .8;
	transition: opacity .15s;
}

.lph-search-overlay__close:hover { opacity: 1; }

.lph-search-overlay__form {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	max-width: 800px;
	background: #fff;
	border-radius: 9999px;
	padding: 8px 8px 8px 24px;
	box-shadow: 0px 10px 7.5px rgba(0,0,0,.15), 0px 4px 3px rgba(0,0,0,.10);
	height: 64px;
	box-sizing: border-box;
}

.lph-search-overlay__input {
	flex: 1;
	border: none;
	padding: 0;
	font-size: 16px;
	height: 100%;
	outline: none;
	background: transparent;
	color: rgba(0,0,0,.8);
	font-family: 'Montserrat', sans-serif;
	min-width: 0;
}

.lph-search-overlay__input::placeholder { color: rgba(0,0,0,.25); }

body.lph-search-open { overflow: hidden; }

/* =============================================================================
   MINI-CART DRAWER
   ============================================================================= */
.lph-minicart {
	position: fixed;
	inset: 0;
	z-index: 500;
	pointer-events: none;
}

.lph-minicart[aria-hidden="false"] { pointer-events: auto; }

.lph-minicart-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.4);
	opacity: 0;
	transition: opacity .3s;
}

.lph-minicart[aria-hidden="false"] .lph-minicart-overlay { opacity: 1; }

.lph-minicart-panel {
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 576px;
	max-width: 100vw;
	background: var(--lph-lavender-bg);
	color: var(--lph-blue);
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform .3s ease;
	box-shadow: -8px 0 32px rgba(0,0,0,.12);
}

.lph-minicart[aria-hidden="false"] .lph-minicart-panel { transform: translateX(0); }

.lph-minicart-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 24px 24px 20px;
	border-bottom: 1px solid var(--lph-border);
	flex-shrink: 0;
}

.lph-minicart-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 20px;
	color: var(--lph-blue);
	margin: 0;
	display: flex;
	align-items: center;
	gap: 10px;
}

.lph-cart-count--panel {
	position: static;
	min-width: 22px;
	height: 22px;
	font-size: 12px;
}

.lph-minicart-close {
	background: var(--lph-lavender);
	border: none;
	cursor: pointer;
	padding: 6px;
	display: flex;
	align-items: center;
	color: var(--lph-lavender-bg);
	border-radius: 8px;
	transition: background .15s;
}

.lph-minicart-close:hover { 
	background: #fff; 
}

.widget_shopping_cart_content {
	flex: 1;
	overflow-y: auto;
	padding: 16px 24px;
}

/* WooCommerce mini-cart product list */
.widget_shopping_cart_content .woocommerce-mini-cart {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Nombre de produits */
.lph-minicart-product-count {
	text-align: right;
	margin: 0 0 12px;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: var(--lph-blue);
}

/* ── Card produit ─────────────────────────────────────────────────────────── */
.lph-cart-item {
	display: flex;
	flex-direction: row;
	gap: 16px;
	background: #fff;
	border: 1px solid #E5E7EB;
	border-radius: 10px;
	padding: 16px;
	list-style: none;
}

.lph-cart-item__img {
	flex-shrink: 0;
	display: block;
	width: 96px;
	height: 96px;
	border-radius: 10px;
	overflow: hidden;
}

.lph-cart-item__img img {
	width: 96px !important;
	height: 96px !important;
	object-fit: cover;
	border-radius: 10px;
	display: block;
}

.lph-cart-item__body {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Ligne 1 : nom / cat / suppression */
.lph-cart-item__row1 {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
}

.lph-cart-item__meta {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.lph-cart-item__name {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 18px;
	line-height: 27px;
	color: var(--lph-blue);
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
}

.lph-cart-item__cat {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 12px;
	line-height: 16px;
	color: #6A7282;
}

.lph-cart-item__remove {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px !important;
	height: 18px !important;
	margin: 8px 8px 0 0;
	text-decoration: none;
	color: #6A7282;
	transition: color .15s;
}

.lph-cart-item__remove img {
	width: 18px !important;
	height: 18px !important;
	display: block;
}

.lph-cart-item__remove:hover { background: var(--lph-red) !important; }
.lph-cart-item__remove svg path { transition: stroke .15s; }
.lph-cart-item__remove:hover svg path { stroke: var(--lph-red) !important; }

/* Ligne 2 : stepper + prix */
.lph-cart-item__row2 {
	display: flex;
	align-items: center;
	gap: 16px;
}

.lph-cart-item__stepper {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100px;
	height: 32px;
	padding: 4px 12px;
	background: rgba(138, 151, 254, .3);
	border-radius: 999px;
	box-sizing: border-box;
}

.lph-cart-stepper-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	flex-shrink: 0;
	color: var(--lph-blue);
}

.lph-cart-stepper-btn:hover { opacity: .7; }

.lph-cart-stepper-qty {
	flex: 1;
	text-align: center;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue);
}

.lph-cart-item__price {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue);
	white-space: nowrap;
	margin-left: auto;
}

.lph-cart-item__price .woocommerce-Price-amount { color: inherit; }

/* Pendant le chargement : bloquer tous les clics (overlay inclus) + dimmer le panel */
.lph-minicart.lph-minicart--loading { pointer-events: none; }
.lph-minicart.lph-minicart--loading .lph-minicart-panel { opacity: .6; transition: opacity .2s; }

/* ── Champ code promo ─────────────────────────────────────────────────────── */
.lph-coupon-row {
	padding: 14px 0 2px;
}

.lph-coupon-label {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue);
	margin-bottom: 8px;
}

.lph-coupon-field {
	display: flex;
	align-items: center;
	gap: 8px;
}

.lph-coupon-input {
	flex: 1;
	height: 27px;
	padding: 0 16px;
	background: #fff;
	border: 1px solid #E5E7EB;
	border-radius: 104px;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	outline: none;
	transition: border-color .15s;
}

.lph-coupon-input:focus { border-color: var(--lph-lavender); }

.lph-coupon-submit {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 27px;
	background: var(--lph-lavender, var(--lph-lavender));
	border: none;
	border-radius: 104px;
	cursor: pointer;
	flex-shrink: 0;
	transition: opacity .15s;
}

.lph-coupon-submit:hover { opacity: .85; }

.lph-coupon-submit img {
	display: block;
	width: 15px;
	height: 17px;
}

.lph-coupon-msg {
	margin: 6px 0 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	line-height: 1.4;
	color: var(--lph-blue);
}

.lph-coupon-msg--error { color: var(--lph-red, #e53e3e); }
.lph-coupon-msg--ok    { color: #4ab866; }
.lph-coupon-msg[hidden] { display: none; }

.widget_shopping_cart_content .woocommerce-mini-cart__total {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: var(--lph-blue);
	padding: 16px 24px 8px;
	border-top: 1px solid rgba(0,0,0,.1);
}

/* Ligne coupon appliqué */
.lph-minicart-coupon-line {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 4px 24px;
	gap: 8px;
}

.lph-minicart-coupon-line__code {
	display: flex;
	align-items: center;
	gap: 6px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 12px;
	color: var(--lph-lavender, var(--lph-lavender));
	letter-spacing: .04em;
}

.lph-minicart-coupon-line__remove {
	color: var(--lph-lavender, var(--lph-lavender));
	text-decoration: none;
	font-size: 14px;
	line-height: 1;
	opacity: .7;
	transition: opacity .15s;
}

.lph-minicart-coupon-line__remove:hover { opacity: 1; }

.lph-minicart-coupon-line__discount {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 13px;
	color: #4ab866;
	white-space: nowrap;
}

.lph-minicart-coupon-line__discount .woocommerce-Price-amount { color: inherit; }

/* Total final */
.lph-minicart-total-final {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 24px 16px;
	border-bottom: 1px solid rgba(0,0,0,.1);
}

.lph-minicart-total-final__label {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: var(--lph-blue);
}

.lph-minicart-total-final__amount {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: var(--lph-blue);
}

.lph-minicart-total-final__amount .woocommerce-Price-amount { color: inherit; }

.widget_shopping_cart_content .woocommerce-mini-cart__buttons {
	padding: 0 24px 24px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons a {
	display: block;
	text-align: center;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 15px;
	text-transform: uppercase;
	padding: 14px;
	border-radius: 99px;
	text-decoration: none;
	transition: background .15s;
}

.widget_shopping_cart_content .button.wc-forward {
	background: var(--lph-blue);
	color: #fff;
}

.widget_shopping_cart_content .button.wc-forward:hover { background: color-mix(in srgb, var(--lph-blue) 85%, #fff); }

.widget_shopping_cart_content .checkout.wc-forward {
	background: var(--lph-green);
	color: #fff;
}

.widget_shopping_cart_content .checkout.wc-forward:hover { background: var(--lph-lavender); }

/* Panier vide */
.widget_shopping_cart_content .woocommerce-mini-cart__empty-message {
	font-family: 'Gliker', sans-serif;
	font-size: 15px;
	color: var(--lph-gray);
	text-align: center;
	padding: 40px 0;
}

body.lph-minicart-open { overflow: hidden; }

/* ── Barre livraison gratuite ─────────────────────────────────────────────── */
.lph-free-shipping-bar {
	padding: 16px 20px 12px;
	background: #fff;
	border-bottom: 1px solid var(--lph-border, #e8e8e8);
}

.lph-fsb__inner {
	margin-bottom: 10px;
}

.lph-fsb__track {
	flex: 1;
	position: relative;
	height: 23px;
	background: rgba(138, 151, 254, .3);
	border-radius: 104px;
	box-shadow: 0 4px 4px rgba(0, 0, 0, .25);
	overflow: visible;
}

.lph-fsb__fill {
	position: relative;
	z-index: 1;
	height: 100%;
	background: #FE81CC;
	border-radius: 104px;
	transition: width .4s ease;
	min-width: 0;
}

.lph-fsb__cursor {
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	pointer-events: none;
	z-index: 2;
	transition: left .4s ease;
	width: 80px;
	height: 80px;
}

.lph-fsb__cursor img {
	display: block;
	width: 80px !important;
	height: 80px !important;
	max-width: none !important;
	object-fit: contain;
	filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .2));
}

.lph-fsb__label-max {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 10px;
	line-height: 1;
	color: var(--lph-blue);
	white-space: nowrap;
	pointer-events: none;
	z-index: 0;
}

.lph-fsb__text {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 10px;
	line-height: 16px;
	color: var(--lph-lavender, var(--lph-lavender));
	text-align: center;
	margin: 0;
}

.lph-fsb__text strong,
.lph-fsb__text .woocommerce-Price-amount {
	font-weight: 700;
	color: var(--lph-lavender, var(--lph-lavender));
}

.lph-fsb__threshold {
	opacity: .75;
}

.lph-fsb__text--done {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 12px;
	color: #4ab866;
}

.wc-block-components-notice-banner__content, .wc-block-components-notice-banner__content a{
	font-size:16px;
}

/* =============================================================================
   USP BAR
   ============================================================================= */
.lph-usp-bar {
	width: 100%;
	height: 64px;
	background: #E8EAFF;
	display: flex;
	align-items: center;
	margin-block-start: 0;
}

.lph-usp-inner {
	max-width: 1417px;
	margin: 0 auto;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 93px;
	padding: 0 40px;
}

.lph-usp-item {
	display: flex;
	align-items: center;
	gap: 8px;
}

.lph-usp-item img {
	width: 32px;
	height: 32px;
	object-fit: contain;
	flex-shrink: 0;
}

.lph-usp-item span,
.lph-usp-text {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 14px;
	color: var(--lph-blue);
	white-space: nowrap;
	margin: 0;
}

.lph-usp-inner > *,
.lph-usp-item > * {
	margin-block-start: 0;
}

/* =============================================================================
   HERO
   ============================================================================= */
.lph-hero {
	width: 100%;
	height: 496px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	margin-block-start:0;
}


/* =============================================================================
   SHARED SECTION STYLES
   ============================================================================= */
.lph-section-inner {
	max-width: 1365px;
	margin: 0 auto;
	padding: 0 40px;
	position: relative;
}

.lph-section-head {
	margin-bottom: 32px;
}

.lph-section-label {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 8px;
	justify-content: center;
}

.lph-section-label-icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
}

.lph-section--promos .lph-section-label, .lph-section--bestsellers .lph-section-label {
	flex-direction: column;
	align-items: center;
	gap: 10px;
}

.lph-section-label-icon img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lph-section-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 30px;
	color: var(--lph-blue);
	margin: 0;
	line-height: 1.2;
}

.lph-section-subtitle {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	color: var(--lph-gray);
	margin: 6px 0 0;
	text-align: center;
}

/* =============================================================================
   BESTSELLERS
   ============================================================================= */
.lph-products-scroll-wrapper{
	position: relative;
	overflow: hidden;
	padding:0 30px;
}

.lph-products-scroll {
	display: flex;
	gap: 22px;
	overflow-x: auto;
	padding: 4px 20px 36px;
}

.lph-products-scroll::-webkit-scrollbar { height: 8px; }
.lph-products-scroll::-webkit-scrollbar-track { background: var(--lph-lavender-bg); border-radius: 2px; }
.lph-products-scroll::-webkit-scrollbar-thumb { background: var(--lph-lavender); border-radius: 2px; }

/* Product Card */
.lph-product-card {
	flex-shrink: 0;
	width: 411px;
	background: #fff;
	border: 2px solid var(--lph-lavender-bg);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 8px 10px -6px rgba(0,0,0,.1), 0 20px 25px -5px rgba(0,0,0,.1);
}

.lph-product-image {
	display: block;
	position: relative;
	width: 100%;
	height: 323px;
	overflow: hidden;
	text-decoration: none;
}

.lph-product-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.lph-product-image::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(0,0,0,.3) 0%, transparent 100%);
	pointer-events: none;
}

.lph-product-badges {
	position: absolute;
	top: 18px;
	left: 18px;
	z-index: 2;
	display: flex;
	flex-direction: row;
	gap: 6px;
}

.lph-badge {
	font-family: 'Gliker', sans-serif;
	font-size: 12px;
	font-weight: 600;
	padding: 4px 12px;
	border-radius: 99px;
	line-height: 1.4;
}

.lph-badge--promo {
	background: var(--lph-red);
	color: #fff;
}

.lph-badge--discount {
	background: var(--lph-red);
	color: #fff;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 20px;
	padding: 8px 16px;
	box-shadow: 0px 4px 6px -4px rgba(0,0,0,.1), 0px 10px 15px -3px rgba(0,0,0,.1);
}

.lph-product-info {
	padding: 9px 24px 16px;
}

/* Tags come first in DOM — margin-bottom pushes the name down */
.lph-product-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 7px;
}

.lph-product-tag {
	background: rgba(0,38,137,.1);
	color: var(--lph-blue);
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	line-height: 16px;
	padding: 4px 8px;
	border-radius: 100px;
}

.lph-product-name {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	color: var(--lph-blue);
	margin: 0 0 0;
}

.lph-product-name a {
	color: inherit;
	text-decoration: none;
}

.lph-product-rating {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 0;
	margin-bottom: 8px;
}

.lph-stars {
	color: #F6FE78;
	font-size: 20px;
	line-height: 20px;
	letter-spacing: 3px;
}

.lph-stars .empty{
	color: #D1D5DC;
}

.lph-rating-count {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: var(--lph-gray);
}

.lph-product-desc {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-gray);
	margin: 0 0 16px;
	line-height: 20px;
}

.lph-product-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

/* Static price markup (lph-homepage pattern) */
.lph-price-old {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	color: var(--lph-gray-muted);
	text-decoration: line-through;
	line-height: 28px;
}

.lph-price-new {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 30px;
	color: var(--lph-red);
	line-height: 36px;
}

/* WooCommerce get_price_html() price markup */
.lph-product-prices {
	display: flex;
	align-items: center;
	gap: 12px;
}

/* Prix courant — bleu par défaut */
.lph-product-prices .woocommerce-Price-amount {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 30px;
	line-height: 36px;
	color: var(--lph-blue);
}

/* Ancien prix barré */
.lph-product-prices del,
.lph-product-prices del .woocommerce-Price-amount {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 28px;
	color: var(--lph-gray-muted);
	text-decoration: line-through;
}

/* Prix promo (ins) — rouge */
.lph-product-prices ins,
.lph-product-prices ins .woocommerce-Price-amount {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 30px;
	line-height: 36px;
	color: var(--lph-red);
	text-decoration: none;
}

/* Prix au gramme — get_prix_gramme() */
.lph-product-prices .price_gramme_wrap {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	color: var(--lph-gray-muted);
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.lph-product-prices .price_gramme_value {
	font-weight: 700;
	font-size: 30px;
	line-height: 36px;
	color: var(--lph-blue);
}

/* Prix/gramme en promo : présence d'un <s> → rouge */
.lph-product-prices .price_gramme_value:has(s) {
	color: var(--lph-red);
}

.lph-product-prices .price_gramme_value s {
	font-weight: 400;
	font-size: 18px;
	line-height: 28px;
	color: var(--lph-gray-muted);
	text-decoration: line-through;
	vertical-align: middle;
	margin-right: 4px;
}

.lph-product-prices .price_gramme_unit {
	font-size: 16px;
	font-weight: 400;
}

.lph-btn-add,
.lph-product-add-btn, 
.lph-product-footer .wp-element-button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--lph-lavender);
	color: #F8F9FF;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	padding: 8px 20px;
	border: none;
	border-radius: 99px;
	cursor: pointer;
	height: 40px;
	text-decoration: none;
	flex-shrink: 0;
	transition: background .15s;
}

.lph-btn-add:hover,
.lph-product-add-btn:hover, 
.lph-product-footer .wp-element-button:hover { background: var(--lph-blue); color: #F8F9FF; }

.lph-see-more {
	text-align: center;
	margin-top: 40px;
	padding-bottom:20px;
}

.lph-btn-outline {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: transparent;
	color: var(--lph-blue);
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 16px;
	padding: 12px 32px;
	border: 2px solid var(--lph-blue);
	border-radius: 99px;
	text-decoration: none;
	cursor: pointer;
	transition: background .15s;
}

.lph-btn-outline:hover { background: rgba(0,38,137,.06); color: var(--lph-blue); }

a.lph-btn-cta,
.lph-btn-cta .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--lph-lavender-bg);
	color: var(--lph-blue);
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	padding: 16px 30px;
	border: none;
	border-radius: 99px;
	text-decoration: none;
	cursor: pointer;
	box-shadow: 0px 4px 6px -4px rgba(0,0,0,.1), 0px 10px 15px -3px rgba(0,0,0,.1);
	transition: background .15s;
}

a.lph-btn-cta:hover,
.lph-btn-cta .wp-block-button__link:hover { background: var(--lph-blue); color: #fff; }

/* =============================================================================
   CATEGORIES
   ============================================================================= */
.lph-categories-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 45px;
	color: var(--lph-blue);
	text-align: center;
	margin: 0 0 48px;
	line-height: 1.15;
}

.lph-categories-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 24px;
	max-width: 1200px;
	margin: 0 auto;
}

.lph-categories-grid > * {
	margin-block-start: 0;
}

.lph-category-card {
	position: relative;
	padding: 24px 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	width: 180px;
	text-decoration: none;
	transition: transform .2s;
}

.lph-category-card:hover {
	transform: scale(1.1);
}

.lph-category-icon {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: var(--lph-lavender-bg);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin: 0;
}

.lph-category-icon img {
	width: 40px;
	height: 40px;
	object-fit: contain;
}

.lph-category-name {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: var(--lph-blue);
	text-align: center;
	margin: 0;
}

.lph-category-name a {
	color: inherit;
	text-decoration: none;
}

.lph-category-name a::after {
	content: '';
	position: absolute;
	inset: 0;
}

/* =============================================================================
   COMMITMENT
   ============================================================================= */
.lph-commitment-inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 95px ;
}

.lph-commitment-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 48px;
	color: #fff;
	text-align: center;
	margin: 0 0 48px;
}

.lph-commitment-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}

.lph-commitment-card {
	background: #fff;
	border-radius: 16px;
	padding: 32px;
	display: flex;
	align-items: flex-start;
	gap: 20px;
	box-shadow: 0 4px 6px rgba(0,0,0,.07), 0 10px 15px rgba(0,0,0,.07);
}

.lph-commitment-icon {
	width: 48px;
	height: 48px;
	overflow: hidden;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
}

.lph-commitment-icon img {
	width: 48px;
	height: 48px;
	object-fit: cover;
}

.lph-commitment-text { flex: 1; }

.lph-commitment-text h3 {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: var(--lph-blue);
	margin: 0 0 8px;
}

.lph-commitment-text p {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	margin: 0;
	line-height: 1.6;
}

.lph-commitment-grid > *,
.lph-commitment-card > *,
.lph-commitment-text > * {
	margin-block-start: 0;
}

/* =============================================================================
   QUIZ / PRODUCT FINDER
   ============================================================================= */
.lph-quiz-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 36px;
	color: #fff;
	margin: 0 0 16px;
	line-height: 1.2;
}

.lph-quiz-subtitle {
	font-family: 'Gliker', sans-serif;
	font-size: 18px;
	color: rgba(255,255,255,.8);
	margin: 0 0 40px;
}

.lph-btn-quiz {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: var(--lph-green);
	color: #fff;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 16px;
	padding: 14px 36px;
	border-radius: 99px;
	border: none;
	cursor: pointer;
	text-decoration: none;
	transition: background .15s;
}

.lph-btn-quiz:hover { background: var(--lph-lavender); color: #fff; }

/* =============================================================================
   FOOTER
   ============================================================================= */
.lph-footer {
	background: var(--lph-blue);
	padding: 48px 28px 0;
}

.lph-footer-inner {
	max-width: 1280px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 48px;
	padding-bottom: 48px;
}

.lph-footer-col-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 18px;
	margin: 0 0 16px;
}

.lph-footer-col:nth-child(1) .lph-footer-col-title { color: var(--lph-lavender); }
.lph-footer-col:nth-child(2) .lph-footer-col-title { color: var(--lph-green); }
.lph-footer-col:nth-child(3) .lph-footer-col-title { color: var(--lph-lavender); }
.lph-footer-col:nth-child(4) .lph-footer-col-title { color: var(--lph-lavender); }

.lph-footer-col p {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: rgba(255,255,255,.8);
	margin: 0 0 8px;
	line-height: 1.6;
}

.lph-footer-col a {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: rgba(255,255,255,.8);
	text-decoration: none;
	margin-bottom: 8px;
	line-height: 1.6;
}

.lph-footer-col a:hover { color: #fff; text-decoration: underline; }

.lph-footer-nav { list-style: none; margin: 0; padding: 0; }
.lph-footer-nav li { margin: 0; }
.lph-footer-nav li a { display: block; font-family: 'Montserrat', sans-serif; font-size: 14px; color: rgba(255,255,255,.8); text-decoration: none; margin-bottom: 8px; line-height: 1.6; }
.lph-footer-nav li a:hover { color: #fff; text-decoration: underline; }

.lph-footer-bottom {
	max-width: 1280px;
	margin: 0 auto;
	border-top: 1px solid rgba(255,255,255,.2);
	padding: 24px 0 32px;
	text-align: center;
}

.lph-footer-copyright,
.lph-footer-disclaimer {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: rgba(255,255,255,.6);
	margin: 0 0 6px;
}

/* =============================================================================
   BOUTON WHATSAPP
   ============================================================================= */

.cb_whatsapp{
  bottom: 50px;
  left: 10px;
  position: fixed;
  display: inline;
  z-index:9999999;
}

.cb_whatsapp a{
  display: inline-block;
  padding-left: 12px;
  padding-right: 12px;
  padding-top: 0px;
  padding-bottom: 0px;
  border-radius: 25px;
  font-size: 13px;
  line-height: 32px;
  background-color: #cfcdca;
  color:#261f1b;
  text-decoration: none;
}

.cb_whatsapp a img{
  float: left;
  margin: 0 8px 0 -12px;
  height: 32px;
  width: 32px;
}

.cb_whatsapp a:hover{
  color:#261f1b;
  animation: wobble 2s ease 0s infinite normal none;
}

@media (max-width: 768px) {

  .cb_whatsapp{
    bottom: 20px;
  }

  .cb_whatsapp a{
    background-color: transparent;
    padding:0;
    border-radius: 0;
    animation: wobble 2s ease 0s 1 normal none;
  }
  .cb_whatsapp span{
    display:none;
  }

  .cb_whatsapp a img{
    margin: 0;
    height: 45px;
    width: 45px;
  }

  .cb_whatsapp a:hover{
    animation: none;
  }

}

/* =============================================================================
   SECTION BACKGROUNDS
   ============================================================================= */
.lph-section { width: 100%; }
.lph-section--bestsellers  { padding: 40px 0; background: #fff;                   overflow-x: clip; }
.lph-section--huiles       { padding: 80px 0; background: #F6FE78;                overflow-x: clip; }
.lph-section--promos       { padding: 40px 0; background: rgba(254,75,75,.05);    overflow-x: clip; }
.lph-section--categories   { padding: 40px 40px; background: #fff; }
.lph-section--commitment   { padding: 80px 0 80px; background: linear-gradient(180deg, rgb(138, 151, 254) 0%, rgb(255,255,255) 100%); }
.lph-section--carousel-jaune  { padding: 80px 0; background: var(--lph-yellow); overflow-x: clip; margin-block-start:0;}
.lph-section--carousel-rose   { padding: 80px 0; background: var(--lph-pink);   overflow-x: clip; margin-block-start:0;}
.lph-section--carousel-vert   { padding: 80px 0; background: var(--lph-green);  overflow-x: clip; margin-block-start:0;}
.lph-section--carousel-orange { padding: 80px 0; background: var(--lph-orange); overflow-x: clip; margin-block-start:0;}

/* =============================================================================
   CAROUSEL PRODUITS - JAUNE / ROSE / VERT / ORANGE
   ============================================================================= */
.lph-section--carousel-jaune > *,
.lph-section--carousel-rose > *,
.lph-section--carousel-vert > *,
.lph-section--carousel-orange > * { margin-block-start: 0; }

.lph-section--carousel-jaune .lph-carousel-title,
.lph-section--carousel-rose .lph-carousel-title,
.lph-section--carousel-vert .lph-carousel-title,
.lph-section--carousel-orange .lph-carousel-title {
	font-family: 'Gliker', sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	color: var(--lph-blue);
	margin-bottom: 16px;
}

.lph-section--carousel-rose .lph-carousel-title,
.lph-section--carousel-vert .lph-carousel-title {
	color: #fff;
}

.lph-section--carousel-jaune .lph-carousel-desc,
.lph-section--carousel-rose .lph-carousel-desc,
.lph-section--carousel-vert .lph-carousel-desc,
.lph-section--carousel-orange .lph-carousel-desc {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 600;
	color: var(--lph-blue);
	max-width: 672px;
	margin-inline: auto;
	margin-bottom: 40px;
}

.lph-section--carousel-rose .lph-carousel-desc,
.lph-section--carousel-vert .lph-carousel-desc {
	color: #fff;
}

/* WooCommerce collection wrapper — passthrough pour lph-products-scroll */
.lph-section--carousel-jaune .wp-block-woocommerce-product-collection,
.lph-section--carousel-rose .wp-block-woocommerce-product-collection,
.lph-section--carousel-vert .wp-block-woocommerce-product-collection,
.lph-section--carousel-orange .wp-block-woocommerce-product-collection {
	display: block !important;
	width: 100%;
}

/* Flèches de navigation natives WooCommerce masquées */
.lph-section--carousel-jaune .wc-block-next-previous-buttons,
.lph-section--carousel-rose .wc-block-next-previous-buttons,
.lph-section--carousel-vert .wc-block-next-previous-buttons,
.lph-section--carousel-orange .wc-block-next-previous-buttons { display: none !important; }

/* CTA bouton */
.lph-section--carousel-jaune .lph-carousel-cta-wrap,
.lph-section--carousel-rose .lph-carousel-cta-wrap,
.lph-section--carousel-vert .lph-carousel-cta-wrap,
.lph-section--carousel-orange .lph-carousel-cta-wrap { margin-top: 20px; }

.lph-section--carousel-jaune .lph-carousel-cta .wp-block-button__link,
.lph-section--carousel-rose .lph-carousel-cta .wp-block-button__link,
.lph-section--carousel-vert .lph-carousel-cta .wp-block-button__link,
.lph-section--carousel-orange .lph-carousel-cta .wp-block-button__link {
	box-shadow: 0px 4px 6px -4px rgba(0,0,0,.1), 0px 10px 15px -3px rgba(0,0,0,.1);
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 16px;
	transition: background .15s;
}
.lph-section--carousel-jaune .lph-carousel-cta .wp-block-button__link:hover,
.lph-section--carousel-rose .lph-carousel-cta .wp-block-button__link:hover,
.lph-section--carousel-vert .lph-carousel-cta .wp-block-button__link:hover,
.lph-section--carousel-orange .lph-carousel-cta .wp-block-button__link:hover {
	background-color: var(--lph-blue) !important;
	color: #fff !important;
}

/* =============================================================================
   QUIZ SECTION
   ============================================================================= */
.lph-section--quiz {
	background: linear-gradient(180deg, rgba(138,151,254,1) 0%, rgba(255,255,255,.8) 100%);
	padding: 80px 40px;
	display: flex;
	justify-content: center;
}

.lph-quiz-card {
	background: #fff;
	border-radius: 24px;
	padding: 48px;
	max-width: 900px;
	width: 100%;
	box-shadow: 0 20px 40px rgba(0,38,137,.08);
}

.lph-quiz-header { margin-bottom: 32px; }

.lph-quiz-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 32px;
	color: var(--lph-blue);
	margin: 0 0 8px;
}

.lph-quiz-subtitle {
	font-family: 'Gliker', sans-serif;
	font-size: 16px;
	color: var(--lph-gray);
	margin: 0;
}

.lph-quiz-progress {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 28px;
}

.lph-quiz-step {
	font-family: 'Gliker', sans-serif;
	font-size: 14px;
	color: var(--lph-gray);
	white-space: nowrap;
}

.lph-quiz-bar {
	flex: 1;
	height: 8px;
	background: var(--lph-lavender-bg);
	border-radius: 99px;
	overflow: hidden;
}

.lph-quiz-bar-fill {
	height: 100%;
	background: var(--lph-blue);
	border-radius: 99px;
}

.lph-quiz-question {
	font-family: 'Gliker', sans-serif;
	font-weight: 600;
	font-size: 18px;
	color: var(--lph-blue);
	margin: 0 0 24px;
}

.lph-quiz-options {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.lph-quiz-option {
	display: flex;
	align-items: center;
	gap: 16px;
	background: rgba(0,38,137,.05);
	border: 2px solid rgba(0,38,137,.2);
	border-radius: 16px;
	padding: 20px 24px;
	cursor: pointer;
	text-align: left;
	transition: border-color .15s, background .15s;
}

.lph-quiz-option:hover {
	border-color: var(--lph-blue);
	background: rgba(0,38,137,.08);
}

.lph-quiz-option-emoji { font-size: 28px; flex-shrink: 0; }

.lph-quiz-option strong {
	display: block;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: var(--lph-blue);
	margin-bottom: 4px;
}

.lph-quiz-option span {
	font-family: 'Gliker', sans-serif;
	font-size: 13px;
	color: var(--lph-gray);
}

/* =============================================================================
   RÉASSURANCE
   ============================================================================= */
.lph-section--reassurance {
	background: #fff;
	padding: 0;
	border-top: 1px solid var(--lph-border);
	border-bottom: 1px solid var(--lph-border);
}

.lph-reassurance-inner {
	max-width: 1418px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	height: 120px;
}

.lph-reassurance-item {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 0 32px;
	border-right: 1px solid var(--lph-border);
}

.lph-reassurance-item:last-child { border-right: none; }

.lph-reassurance-icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: rgba(0,38,137,.08);
	overflow: hidden;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.lph-reassurance-icon img { width: 28px; height: 28px; object-fit: contain; }

.lph-reassurance-item strong {
	display: block;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 15px;
	color: var(--lph-blue);
}

.lph-reassurance-item span {
	font-family: 'Gliker', sans-serif;
	font-size: 13px;
	color: var(--lph-gray);
}

/* =============================================================================
   RÉASSURANCE COMPLÈTE
   ============================================================================= */
.lph-reassurance-full {
	background: #fff;
	padding: 48px 0;
}

.lph-reassurance-full__grid.wp-block-columns {
	gap: 0;
	margin: 0;
}

.lph-reassurance-full__card {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 24px;
	padding: 0 32px;
}
.lph-reassurance-full__card:last-child { border-right: none; }
.lph-reassurance-full__card > * { margin-block-start: 0; }

.lph-reassurance-full__icon {
	width: 80px;
	height: 80px;
	margin: 0;
	flex-shrink: 0;
}
.lph-reassurance-full__icon img {
	width: 80px;
	height: 80px;
	object-fit: contain;
}

.lph-reassurance-full__title {
	font-family: 'Gliker', sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 32px;
	color: var(--lph-blue);
	margin: 0;
}

.lph-reassurance-full__desc {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 24px;
	color: var(--lph-gray);
	margin: 0;
}

@media (max-width: 768px) {
	.lph-reassurance-full__grid.wp-block-columns { flex-wrap: wrap; }
	.lph-reassurance-full__card.wp-block-column {
		flex-basis: calc(50% - 1px) !important;
		min-width: calc(50% - 1px);
		border-right: none;
	}
	.lph-reassurance-full__card.wp-block-column:nth-last-child(-n+2) {
		border-bottom: none;
	}
}

/* =============================================================================
   NEWSLETTER
   ============================================================================= */

/* Decorative tile strip above the section */
.lph-newsletter-deco {
	height: 82px;
	background: conic-gradient(
		transparent 90deg,
		var(--lph-lavender) 90deg 180deg,
		transparent 180deg 270deg,
		var(--lph-lavender) 270deg
	) 0 0 / 61px 55px;
	margin-block-start: 0;
}

.lph-section--newsletter {
	background: var(--lph-lavender-bg);
	padding: 55px 40px 60px;
	text-align: center;
	margin-block-start:0;
}

/* Logo */
.lph-newsletter-logo.wp-block-image { margin: 0 auto 20px; }
.lph-newsletter-logo img {
	height: 80px;
	width: auto;
	display: inline-block;
}

/* Title */
.lph-newsletter-title.wp-block-heading,
.lph-newsletter-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 30px;
	line-height: 36px;
	color: var(--lph-blue);
	text-align: center;
	margin: 0 0 8px;
}

/* Subtitle */
.lph-newsletter-subtitle {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 20px;
	color: var(--lph-blue);
	opacity: .9;
	text-align: center;
	margin: 0 0 28px;
}

/* sibwp_form container */
.lph-section--newsletter .sib-form,
.lph-section--newsletter .sibwp-form,
.lph-section--newsletter #sib_embed_signup {
	display: flex;
	justify-content: center;
}

.lph-section--newsletter .sib-form form,
.lph-section--newsletter .sibwp-form form,
.lph-section--newsletter #sib_embed_signup form {
	display: flex;
	align-items: center;
	gap: 12px;
	max-width: 780px;
	width: 100%;
	background: none !important;
	border: none !important;
	padding: 0 !important;
}

/* Reset inner sibwp wrappers */
.lph-section--newsletter .sib-form-block,
.lph-section--newsletter .sib-container,
.lph-section--newsletter .sib-input,
.lph-section--newsletter .form__entry {
	flex: 1;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	min-width: 0;
}

/* Email input */
.lph-section--newsletter input[type="email"],
.lph-section--newsletter input[name="EMAIL"] {
	width: 100% !important;
	height: 64px !important;
	background: rgba(255, 255, 255, .8) !important;
	border: none !important;
	border-radius: 148px !important;
	padding: 0 28px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	color: var(--lph-blue) !important;
	outline: none !important;
	box-shadow: none !important;
}

.lph-section--newsletter input[type="email"]::placeholder,
.lph-section--newsletter input[name="EMAIL"]::placeholder {
	color: var(--lph-lavender) !important;
	opacity: .5;
}

/* Submit button */
.lph-section--newsletter input[type="submit"],
.lph-section--newsletter button[type="submit"],
.lph-section--newsletter .sib-form-block__button {
	flex-shrink: 0;
	height: 64px !important;
	background: var(--lph-green) !important;
	color: #fff !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	padding: 0 36px !important;
	border: none !important;
	border-radius: 148px !important;
	cursor: pointer;
	white-space: nowrap;
	transition: background .15s;
}

.lph-section--newsletter input[type="submit"]:hover,
.lph-section--newsletter button[type="submit"]:hover {
	background: var(--lph-lavender) !important;
}

/* Static form (pattern mockup + shortcode template) */
.lph-newsletter-form {
	display: flex;
	justify-content: center;
}

.lph-newsletter-field-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 40px;
	width: 100%;
	max-width: 780px;
}

.lph-newsletter-input {
	flex: 1;
	min-width: 220px;
	height: 64px;
	background: rgba(255, 255, 255, .8);
	border: none;
	border-radius: 148px;
	padding: 0 28px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: var(--lph-blue);
	outline: none;
}

.lph-newsletter-input::placeholder {
	color: var(--lph-lavender);
	opacity: 1;
}

.lph-newsletter-submit {
	flex-shrink: 0;
	height: 64px;
	background: var(--lph-green);
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 16px;
	padding: 0 36px;
	border: none;
	border-radius: 148px;
	cursor: pointer;
	white-space: nowrap;
	transition: background .15s;
}

.lph-newsletter-submit:hover {
	background: var(--lph-lavender);
}

@media (max-width: 560px) {
	.lph-newsletter-field-row { flex-direction: column; align-items: stretch; gap:12px;}
	.lph-newsletter-input,
	.lph-newsletter-submit { width: 100%; flex: none; }
}

/* =============================================================================
   FAQ
   ============================================================================= */
.lph-section--faq {
	background: var(--lph-lavender);
	padding: 80px 40px;
	margin-block-start:0;
}

.lph-faq-inner {
	max-width: 900px;
	margin: 0 auto;
}

.lph-faq-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 48px;
	color: #fff;
	margin: 0 0 40px;
	text-align: center;
}

.lph-faq-list { display: flex; flex-direction: column; gap: 12px; }
.lph-faq-list > * { margin-block-start: 0; }

.lph-faq-item {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 6px rgba(0,0,0,.07), 0 10px 15px rgba(0,0,0,.05);
	overflow: hidden;
}

/* Accordéon natif details/summary */
details.lph-faq-item summary {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 24px;
	cursor: pointer;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: var(--lph-blue);
	text-align: left;
	list-style: none;
	outline: none;
	-webkit-tap-highlight-color: transparent;
}
details.lph-faq-item summary:focus-visible {
	outline: 2px solid var(--lph-blue);
	outline-offset: -2px;
}

details.lph-faq-item summary::-webkit-details-marker { display: none; }

details.lph-faq-item summary::after {
	content: '';
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' width%3D'20' height%3D'20' viewBox%3D'0 0 20 20' fill%3D'none'%3E%3Cpath d%3D'M5 7.5l5 5 5-5' stroke%3D'%23002689' stroke-width%3D'1.8' stroke-linecap%3D'round' stroke-linejoin%3D'round'%2F%3E%3C%2Fsvg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	transition: transform .25s;
}

details.lph-faq-item[open] > summary::after {
	transform: rotate(180deg);
}

details.lph-faq-item > :not(summary) {
	padding: 0 24px 20px;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	margin: 0;
	line-height: 1.6;
}

/* =============================================================================
   PAGE CATEGORIE
   ============================================================================= */
.page-categorie-header {
	background-color: var(--lph-lavender);
	color: #fff;
	padding: 2rem clamp(16px, 4vw, 32px);
	margin-bottom: 2rem;
}

/* Empêcher le wp-block-group alignfull interne d'échapper au padding via marges négatives */
.page-categorie-header .wp-block-group {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	padding:0 !important;
}

.page-categorie-header h1{
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: clamp(40px, 5vw, 64px);
	line-height: 1;
	color: #fff;
	margin: 0;
	padding:30px 80px;
	text-align: center;
}

.page-categorie-header .lph-page-subtitle .wp-block-post-excerpt__excerpt {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: clamp(16px, 5vw, 16px) !important;
	line-height: 1.5 !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 !important;
}

.page-categorie-header .lph-page-subtitle {
	margin: 0 auto 40px !important;
	padding: 0 80px !important;
}

.page-categorie-header .lph-page-subtitle .wp-block-post-excerpt__more-link {
	display: none !important;
}

.lph-breadcrumb {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	margin-bottom: 8px;
}

/* Éléments parents (liens + séparateurs) */
.lph-breadcrumb span {
	color: rgba(255,255,255,.6);
	font-weight: 400;
}

.lph-breadcrumb a {
	color: rgba(255,255,255,.6);
	text-decoration: none;
}

/* Élément actif (page courante) */
.lph-breadcrumb .breadcrumb_last {
	font-weight: 600;
	color: rgba(255,255,255,1);
}

/* =============================================================================
   BLOCS LIENS
   ============================================================================= */
.lph_blocs_lien{
	position: relative;
}
.lph_blocs_lien--titre{
	font-family: 'Montserrat', sans-serif;
	color: var(--lph-blue);
	font-size:1.5em;
	font-weight: 700;
	margin:1em 0 1em;
}
.lph_blocs_lien--items{
	display: flex;
	flex-wrap: wrap;
    gap: 10px;
}
.lph_blocs_lien--items a{
	display: flex;
    color: var(--lph-gray);
    border: solid 1px #D1D5DC;
    padding: 1em 1em;
    border-radius: 2em;
    justify-content: center;
    text-wrap: nowrap;
    text-decoration: none;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 600;
}
.lph_blocs_lien--items a:hover{
	background-color: var(--lph-green);
	border-color: var(--lph-green);
	color: #fff;
}



/* =============================================================================
   SELECTEUR PRODUTIS
   ============================================================================= */
   	#selecteur-produits #filters-wrap{
		margin-left: -15px;
    	margin-right: -15px;
	}
	#selecteur-produits #filters-wrap .sticky{
		background-color: #fff;
	}
	#selecteur-produits #filters-wrap .sticky #btn-hide-filters-panel{
		background-color: var(--lph-blue);
		color: #fff;
		font-weight: 700;
		border:none;
		border-radius: 2em;
	}
	#selecteur-produits .filters{
		border-radius: 16px;
		background: #d0d5ff;
		box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.10), 0 4px 6px -4px rgba(0, 0, 0, 0.10);
		color: var(--lph-blue);
		font-family: 'Monserrat', sans-serif;
		padding:clamp(12px, 12px, 26px);
	}
	#selecteur-produits .filter{
		border-bottom:solid 1px #E5E7EB;
		padding-bottom:.8em;
		margin-bottom:.8em;
	}
	#selecteur-produits #filters-wrap .filter-title{
		border-bottom: none;
		font-size: 18px;
		font-weight: 700;
	}
	#selecteur-produits .filter .prix-inputs .btn_reset {
		background-color: rgba(255,255,255,.6);
		color: var(--lph-blue);
		border-radius: 2em;
		top:1.5em;
		right:2.5rem;
		font-size: 1rem;
	}
	#selecteur-produits #prix-slider{
		height: 16px !important;
		background-color: var(--lph-lavender) !important;
		border-radius: 8px;
	}
	#selecteur-produits #prix-slider .noUi-connect, #selecteur-produits #prix-slider .noUi-handle {
		background-color: var(--lph-blue) !important;
	}
	#selecteur-produits #prix-slider .noUi-handle {
		background-color: #fff !important;
		top:-1px;
	}
	#selecteur-produits .filter .prix-inputs .prix-input-wrapper input {
		color: var(--lph-blue);
		border: none;
		border-radius: 2rem !important;
		background-color: #fff;
		width: auto;
		max-width: 4.5em;
	}
	#selecteur-produits .filter .prix-inputs .btn-filter{
		background-color: var(--lph-lavender);
		color: var(--lph-blue);
		border-radius: 2em;
		border: none;
		top:2em;
		font-weight: 700;
	}
	@media (max-width: 960px) {
		#selecteur-produits .filter .prix-inputs .btn-filter,
		#selecteur-produits .filter .prix-inputs .btn_reset{
			font-size:.75em;
		}
	}
	#selecteur-produits .filter .custom-checkbox .control {
		border-radius: 4px;
		background: #F8F9FF;
		border: none;
		box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
		width: 16px;
		height: 16px;
	}
	#selecteur-produits .filter .custom-checkbox{
		color: #364153;
		font-size: 16px;
		font-weight: 700;
		line-height: 24px; /* 150% */
	}
	#selecteur-produits .filter .custom-checkbox:hover input~.control, #selecteur-produits .filter .custom-checkbox input:focus~.control, #selecteur-produits #filters-wrap .filters .filter .custom-checkbox input:checked~.control, #selecteur-produits #filters-wrap .filters .filter .custom-checkbox:hover input:checked~.control{
		background-color: var(--lph-blue) !important;
	}
	#selecteur-produits .filter .custom-checkbox input:checked~.control:after{
		display: none;
	}
	#selecteur-produits .filter .count{
		color: rgba(#364153, 0.6);
		font-weight: 400;
	}
	#selecteur-produits .star, #selecteur-produits .star-0, #selecteur-produits .star-10, #selecteur-produits .star-20, #selecteur-produits .star-30, #selecteur-produits .star-40, #selecteur-produits .star-50, #selecteur-produits .star-60, #selecteur-produits .star-70, #selecteur-produits .star-80, #selecteur-produits .star-90 {
		color: #fff;
	}
	#selecteur-produits .star {
		color: #F6FE78;
	}
	#selecteur-produits .star-10:after, #selecteur-produits .star-20:after, #selecteur-produits .star-30:after, #selecteur-produits .star-40:after, #selecteur-produits .star-50:after, #selecteur-produits .star-60:after, #selecteur-produits .star-70:after, #selecteur-produits .star-80:after, #selecteur-produits .star-90:after{
		color: #F6FE78;
	}
	#selecteur-produits .articles{
		color: var(--lph-blue);
	}

/* Cartes produits — style lph-product-card */
#selecteur-produits .articles #sortfilterWrap{
	margin-bottom:1em;
}
#selecteur-produits .articles .count{
	margin:1em 0 0 1em;
	display: block;
}
#selecteur-produits .articles #btn-show-filters-panel{
	padding: .8rem 3.5rem;
	justify-content: center;
	align-items: flex-end;
	gap: 4px;
	border-radius: 8.75px;
	border: 2px solid var(--lph-blue);
	font-size:.875rem;
	color: var(--lph-blue);
}
#selecteur-produits .articles .amcustom-select-wrap{
	padding: .8rem 2rem;
	justify-content: center;
	align-items: flex-end;
	gap: 4px;
	border-radius: 8.75px;
	border: 1px solid #D1D5DC;
	font-size:.875rem;
	color: var(--lph-blue);
	margin:0;
}
#selecteur-produits .amcustom-select-wrap:after {
    content: "";
    width: 1em;
    height: .5em;
    background-color: var(--lph-gray);
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    position: absolute;
    top: 1.5em;
    right: 1em;
	
}
#selecteur-produits select.amcustom-select{
	font-size:.875rem;
	color: var(--lph-blue);
	margin:.2em 0 0;
}
#selecteur-produits .articles .wc-block-grid__products {
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
	list-style: none;
	padding: 0;
	margin: 0;
}

#selecteur-produits .articles .wc-block-grid__product {
	flex: 0 0 calc((100% - 44px) / 2) !important;
	max-width: calc((100% - 44px) / 2) !important;
	width: auto;
	background: #fff;
	border: 2px solid var(--lph-lavender-bg);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 8px 10px -6px rgba(0,0,0,.1), 0 20px 25px -5px rgba(0,0,0,.1);
	list-style: none;
}

#selecteur-produits .articles .wc-block-grid__product-link {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
}

/* Zone image */
#selecteur-produits .articles .wc-product-image {
	position: relative;
	width: 100%;
	height: 323px;
	overflow: hidden;
	flex-shrink: 0;
}

#selecteur-produits .articles .wc-product-image::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(0,0,0,.3) 0%, transparent 100%);
	pointer-events: none;
}

#selecteur-produits .articles .inside-wc-product-image {
	width: 100%;
	height: 100%;
	position: relative;
}

#selecteur-produits .articles .inside-wc-product-image img.fluid-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	max-width: none;
}

/* Badge promo */
#selecteur-produits .articles .inside-wc-product-image .onsale {
	position: absolute;
	top: 18px;
	left: 18px;
	z-index: 2;
	background: var(--lph-red);
	color: #fff;
	font-family: 'Gliker', sans-serif;
	font-size: 12px;
	font-weight: 600;
	padding: 4px 12px;
	border-radius: 99px;
	line-height: 1.4;
	text-decoration: none;
}

/* Titre */
#selecteur-produits .articles .wc-block-grid__product-wrap {
	padding: 10px 24px 0;
}

#selecteur-produits .articles .wc-block-grid__product-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 1.25rem;
	color: var(--lph-blue);
	line-height: 1.4;
	text-align: left;
	margin-bottom:0;
}

/* Footer : rating + prix */
#selecteur-produits .articles .wc-block-grid__product-price-rating {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	padding: 8px 24px 0;
	margin-top: 0;
	margin-bottom: 0 !important;
	gap: 8px;
	height: auto;
}

/* Rating SAG */
#selecteur-produits .articles .productRating.rating {
	display: flex;
	align-items: center;
	gap: 6px;
}

#selecteur-produits .articles-wrap .articles-item .rating .stars{
	margin:0;
}

#selecteur-produits .articles .star, #selecteur-produits .articles .star-0, #selecteur-produits .articles .star-10, #selecteur-produits .articles .star-20, #selecteur-produits .articles .star-30, #selecteur-produits .articles .star-40, #selecteur-produits .articles .star-50, #selecteur-produits .articles .star-60, #selecteur-produits .articles .star-70, #selecteur-produits .articles .star-80, #selecteur-produits .articles .star-90 {
		color: #D1D5DC;
	}
	#selecteur-produits .articles .star {
		color: #F6FE78;
	}
	#selecteur-produits .articles .star-10:after, #selecteur-produits .articles .star-20:after, #selecteur-produits .articles .star-30:after, #selecteur-produits .articles .star-40:after, #selecteur-produits .articles .star-50:after, #selecteur-produits .articles .star-60:after, #selecteur-produits .articles .star-70:after, #selecteur-produits .articles .star-80:after, #selecteur-produits .articles .star-90:after{
		color: #F6FE78;
	}

#selecteur-produits .articles .productRating .logoAg {
	display:none;
}

#selecteur-produits .articles .categoryStarsMain.stars {
	display: flex;
	align-items: center;
	gap: 3px;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
}

#selecteur-produits .articles .categoryStarsMain .note {
	display:none
}

#selecteur-produits .articles .categoryStarsMain .label {
	display:none;
}

#selecteur-produits .articles .categoryStarsMain .avis {
	color: var(--lph-blue);
	font-size: 16px;
}

/* Prix */
#selecteur-produits .wc-block-grid__product-price{
	position: relative !important;
	margin:0 !important;
}

#selecteur-produits .articles .price_gramme_wrap {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	color: var(--lph-gray-muted);
	display: flex;
	flex-direction: column;
	gap: 0;
	text-align: left;
}

#selecteur-produits .articles .price_gramme_value{
	display: flex;
	gap:10px;
	align-items:center;
}

#selecteur-produits .articles .price_gramme_value b {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 1.9rem;
	line-height: 1.2;
	color: var(--lph-blue);
}

/* Ancien prix barré */
#selecteur-produits .articles .price_gramme_value strike {
	font-weight: 400;
	font-size: 1.2rem;
	color: var(--lph-gray-muted);
	text-decoration: line-through;
}

/* Prix promo → rouge */
#selecteur-produits .articles .price_gramme_value:has(strike) b {
	color: var(--lph-red);
}

@media (max-width: 540px) {
	/* sortfilterWrap : éléments empilés pleine largeur */
	#selecteur-produits .articles #sortfilterWrap {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 8px;
	}
	#selecteur-produits .articles #sortfilterWrap > *,
	#selecteur-produits .articles #btn-show-filters-panel,
	#selecteur-produits .articles .amcustom-select-wrap {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		box-sizing: border-box;
	}

	/* Articles-item du sélecteur : 1 colonne */
	#selecteur-produits .articles-wrap .articles-item {
		flex: 0 0 100% !important;
		max-width: 100% !important;
		width: 100% !important;
	}
	/* WC block grid (mode vitrine) : 1 colonne */
	#selecteur-produits .articles .wc-block-grid__product {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
}

/* =============================================================================
   GUIDE
   ============================================================================= */
.lph-guide {
	padding: 80px 0;
}
.lph-guide > * { margin-block-start: 0; }
.lph-guide > * + * { margin-block-start: 48px; }

.lph-guide__header {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.lph-guide__header > * { margin-block-start: 0; }
.lph-guide__header-icon {
	width: 48px;
	height: 48px;
	margin: 0 0 20px;
	flex-shrink: 0;
}

.lph-guide__title {
	font-family: 'Gliker', sans-serif;
	font-size: 52px;
	font-weight: 700;
	line-height: 1.15;
	color: var(--lph-blue);
	margin-bottom: 16px;
}
.lph-guide__subtitle {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 400;
	color: #6B7280;
	margin: 0;
}

/* Carte principale */
.lph-guide__card {
	background: #fff;
	border: 1px solid rgba(229, 231, 235, 0.5);
	border-radius: 16px;
	box-shadow: 0 4px 40px 0 rgba(0, 0, 0, 0.08);
	padding: 33px !important;
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.lph-guide__card > * { margin-block-start: 0; }

.lph-guide__card-header {
	display: flex !important;
	align-items: center;
	gap: 12px;
}
.lph-guide__card-icon {
	width: 48px;
	height: 48px;
	border-radius: 12px;
	flex-shrink: 0;
	margin: 0;
}
.lph-guide__card-title {
	font-family: 'Gliker', sans-serif;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.15;
	color: var(--lph-blue);
	margin: 0;
}

/* Méthodes */
.lph-guide__methods.wp-block-columns { gap: 16px; margin: 0; }
.lph-guide__method {
	background: rgba(138, 151, 254, 0.3);
	border: 2px solid rgba(167, 139, 250, 0.2);
	border-radius: 12px;
	padding: 22px !important;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.lph-guide__method > * { margin-block-start: 0; }
.lph-guide__method-icon {
	width: 48px;
	height: 48px;
	border-radius: 12px;
	flex-shrink: 0;
	margin: 0;
}

.lph-guide__method-title {
	font-family: 'Gliker', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--lph-blue);
	margin: 0;
}
.lph-guide__method-desc {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: var(--lph-gray);
	margin: 0;
	flex: 1;
}
.lph-guide__method-badge {
	background: rgba(255, 255, 255, 0.6);
	border-radius: 8px;
	padding: 8px 12px !important;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 13px;
	line-height: 1.4;
	color: var(--lph-blue);
	margin: 0;
	display: flex;
	align-items: center;
	gap: 6px;
}
.lph-guide__check { font-weight: 700; }
.lph-guide__method-badge--lavender .lph-guide__check { color: var(--lph-lavender); }
.lph-guide__method-badge--purple  .lph-guide__check { color: #A78BFA; }
.lph-guide__method-badge--amber   .lph-guide__check { color: #F59E0B; }

/* Conseils */
.lph-guide__tips-cols.wp-block-columns { gap: 24px; }

.lph-guide__tips-wrap {
	background: var(--lph-lavender);
	border-radius: 12px;
	padding: 25px !important;
}
.lph-guide__tips-wrap > * { margin-block-start: 0; }

.lph-guide__tip-item {
	background: #fff;
	border-radius: 10px;
	padding: 16px 16px 16px 56px !important;
	position: relative;
	min-height: 70px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
}
.lph-guide__tip-item > * { margin-block-start: 0; }
.lph-guide__tip-item::before {
	content: '✓';
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--lph-lavender-bg);
	border-radius: 8px;
	color: var(--lph-blue);
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 14px;
}
.wp-block-column > .lph-guide__tip-item + .lph-guide__tip-item { margin-top: 16px; }

.lph-guide__tip-title {
	font-family: 'Gliker', sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--lph-blue);
	margin: 0;
}
.lph-guide__tip-desc {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 1.5;
	color: var(--lph-gray);
	margin: 0;
}

/* Conservation */
.lph-guide__storage-sub {
	background: rgba(138, 151, 254, 0.3);
	border-radius: 12px;
	padding: 22px !important;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.lph-guide__storage-sub > * { margin-block-start: 0; }
.lph-guide__storage-sub--conditions { background: rgba(138, 151, 254, 0.4); }

.lph-guide__storage-sub-header {
	display: flex !important;
	align-items: center;
	gap: 8px;
}
.lph-guide__storage-icon {
	width: 28px;
	height: 28px;
	border-radius: 6px;
	flex-shrink: 0;
	margin: 0;
}
.lph-guide__storage-sub-title {
	font-family: 'Gliker', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--lph-blue);
	margin: 0;
}

/* Tuiles conditions */
.lph-guide__conditions.wp-block-columns { gap: 16px; margin: 0; }
.lph-guide__condition-tile {
	background: #fff;
	border: 1px solid rgba(138, 151, 254, 0.2);
	border-radius: 10px;
	padding: 15px 17px !important;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.lph-guide__condition-tile > * { margin-block-start: 0; }
.lph-guide__condition-emoji { font-size: 24px; line-height: 1.5; margin: 0; }
.lph-guide__condition-name {
	font-family: 'Gliker', sans-serif;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--lph-blue);
	margin: 0;
}
.lph-guide__condition-value {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 1.4;
	color: var(--lph-blue);
	margin: 0;
}

/* Listes stockage */
.lph-guide__storage-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.lph-guide__storage-list > * { margin-block-start: 0; }

.lph-guide__storage-item {
	background: rgba(255, 255, 255, 0.7);
	border-radius: 10px;
	padding: 12px 16px 12px 48px !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 1.4;
	color: var(--lph-blue);
	position: relative;
	min-height: 50px;
	display: flex;
	align-items: center;
	margin: 0;
}
.lph-guide__storage-item::before {
	content: '';
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 700;
}
.lph-guide__storage-item--ok::before {
	content: '✓';
	background: rgba(36, 210, 109, 0.2);
	color: #24D26D;
}
.lph-guide__storage-item--no::before {
	content: '✕';
	background: rgba(254, 75, 75, 0.2);
	color: var(--lph-red);
}

/* Durée */
.lph-guide__duration {
	background: linear-gradient(90deg, var(--lph-lavender) 0%, #6B7AED 100%);
	border-radius: 12px;
	padding: 20px !important;
	display: flex !important;
	align-items: center;
	gap: 12px;
}
.lph-guide__duration > * { margin-block-start: 0; }
.lph-guide__duration-emoji { font-size: 24px; line-height: 1.5; flex-shrink: 0; margin: 0; }
.lph-guide__duration-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: #fff;
	margin: 0;
}
.lph-guide__duration-text strong {
	font-family: 'Gliker', sans-serif;
	font-size: 16px;
	font-weight: 700;
}

/* =============================================================================
   COMMENT CHOISIR
   ============================================================================= */
.lph-section--comment-choisir {
	background: var(--lph-lavender);
	padding: 60px 20px 80px;
}
.lph-section--comment-choisir > * { margin-block-start: 0; }

.lph-comment-choisir__title {
	font-family: 'Gliker', sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	color: #fff;
	margin-bottom: 48px;
}

.lph-comment-choisir__cards { margin-bottom: 26px; }

.lph-comment-choisir__card {
	border-radius: 14px;
	padding: 25px !important;
}

.lph-comment-choisir__card--debutants { background: #fff; }

.lph-comment-choisir__card--debutants .lph-comment-choisir__card-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--lph-blue);
	margin-bottom: 12px;
}

.lph-comment-choisir__card--debutants .lph-comment-choisir__list { color: var(--lph-blue); }
.lph-comment-choisir__card--debutants .lph-comment-choisir__list li::marker { color: var(--lph-blue); }

.lph-comment-choisir__card--habitues { background: rgba(0, 38, 137, 0.1); }

.lph-comment-choisir__card--habitues .lph-comment-choisir__card-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	color: #fff;
	margin-bottom: 12px;
}

.lph-comment-choisir__card--habitues .lph-comment-choisir__list { color: #fff; }
.lph-comment-choisir__card--habitues .lph-comment-choisir__list li::marker { color: var(--lph-yellow); }

.lph-comment-choisir__list {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 1.6;
	list-style: disc;
	padding-inline-start: 18px;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.lph-comment-choisir__tip {
	background: var(--lph-blue);
	border-radius: 10px;
	border-left: 4px solid #fff;
	padding: 24px 24px 24px 28px !important;
}

.lph-comment-choisir__tip-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: #fff;
	margin: 0;
}

/* =============================================================================
	COMPTEUR D'HEURE FICHE PRODUIT
   ============================================================================= */
.shipping-countdown-wrapper {
	margin-top: 15px;
	margin-bottom: 10px;
	width: 100%;
}

.shipping-countdown-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	background: #f5f5f5;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	padding: 12px 20px;
	width: 100%;
	box-sizing: border-box;
}

.shipping-content {
	width: 100%;
}

.countdown-message {
	font-size: 15px;
	font-weight: 600;
	color: #1f2937;
	line-height: 1.4;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	flex-wrap: wrap;
}

.countdown-message svg {
	flex-shrink: 0;
}

.countdown-timer {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	justify-content: center;
}

.time-unit {
	background: #2563eb;
	color: white;
	padding: 8px 10px;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 700;
	min-width: 55px;
	text-align: center;
	box-shadow: 0 2px 4px rgba(37, 99, 235, 0.3);
	transition: transform 0.2s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}

.time-value {
	font-size: 16px;
	line-height: 1;
}

.time-label {
	font-size: 10px;
	font-weight: 500;
	opacity: 0.9;
	line-height: 1;
	text-transform: lowercase;
}

.time-unit.updating {
	transform: scale(1.05);
}

.shipping-details {
	font-size: 13px;
	color: #6b7280;
	font-weight: 500;
	margin-top: 6px;
}

@media (max-width: 768px) {
	.shipping-countdown-container {
		padding: 10px 16px;
	}
	
	.countdown-message {
		font-size: 14px;
	}
	
	.time-unit {
		font-size: 13px;
		padding: 6px 8px;
		min-width: 50px;
	}
	
	.time-value {
		font-size: 15px;
	}
	
	.time-label {
		font-size: 9px;
	}
	
	.shipping-details {
		font-size: 12px;
	}
}


/* =============================================================================
   RESPONSIVE
   ============================================================================= */
@media (max-width: 1100px) {
	.lph-header-inner        { padding: 0 24px; gap: 16px; }
	.lph-nav                 { gap: 16px; }
	.lph-nav-list            { gap: 16px; }
	.lph-commitment-inner    { padding: 0 40px; }
	.lph-footer-inner        { grid-template-columns: 1fr 1fr; gap: 32px; }
	.lph-reassurance-inner   { grid-template-columns: repeat(2, 1fr); height: auto; }
	.lph-reassurance-item    { padding: 24px; border-right: none; border-bottom: 1px solid var(--lph-border); }
}

@media (max-width: 768px) {
	.lph-usp-bar              { height: auto; padding: 12px 0; }
	.lph-usp-inner            { flex-direction: column; gap: 12px; }
	.lph-usp-item span        { font-size: 12px; }
	.lph-nav                  { display: none; }
	.lph-hero                 { height: 300px; }
	.lph-section-inner        { padding: 0 16px; }
	.lph-section--bestsellers,
	.lph-section--huiles,
	.lph-section--promos,
	.lph-section--cosmetiques { padding: 12px 0; }
	.lph-section--carousel-jaune, .lph-section--carousel-rose,
	.lph-section--carousel-vert, .lph-section--carousel-orange { padding: 48px 16px; }
	.lph-section--carousel-jaune .lph-carousel-title, .lph-section--carousel-rose .lph-carousel-title,
	.lph-section--carousel-vert .lph-carousel-title, .lph-section--carousel-orange .lph-carousel-title { font-size: 32px; }
	.lph-product-card         { width: 300px; }
	.lph-product-image        { height: 220px; }
	.lph-categories-title     { font-size: 28px; }
	.lph-section--categories  { padding: 48px 16px; }
	.lph-category-card        { width: 140px; padding: 16px; }
	.lph-commitment-grid      { grid-template-columns: 1fr; }
	.lph-commitment-inner     { padding: 0 16px; }
	.lph-section--commitment  { padding: 48px 0 0; }
	.lph-quiz-card            { padding: 24px; }
	.lph-quiz-title           { font-size: 22px; }
	.lph-quiz-options         { grid-template-columns: 1fr; }
	.lph-section--quiz        { padding: 48px 16px; }
	.lph-faq-inner            { max-width: 100%; }
	.lph-section--faq         { padding: 48px 16px; }
	.lph-newsletter-title     { font-size: 22px; }
	.lph-section--newsletter  { padding: 48px 16px; }
	.lph-footer-inner         { grid-template-columns: 1fr 1fr; gap: 24px; }
}

@media (max-width: 480px) {
	.lph-categories-grid      { gap: 12px; }
	.lph-category-card        { width: 120px; }
	.lph-footer-inner         { grid-template-columns: 1fr; }
	.lph-reassurance-inner    { grid-template-columns: 1fr; }
	.lph-reassurance-item     { border-right: none; }
}

@media (max-width: 768px) {
	#selecteur-produits .articles .wc-block-grid__product-title { font-size: 14px; }
	#selecteur-produits .articles .price_gramme_value b         { font-size: 16px; }
	#selecteur-produits .articles .price_gramme_value strike    { font-size: 14px; }
	#selecteur-produits .articles .productRating .avis    { font-size: 11px; }
}

/* =============================================================================
   FICHE PRODUIT
   ============================================================================= */

/* ── Override colonnes WooCommerce pour le layout grid ──────────────────── */
.lph-product-hero.wp-block-columns {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	grid-template-rows: auto auto !important;
	grid-template-areas:
		"gallery  summary"
		"benefits summary" !important;
	gap: 0 48px !important;
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 24px 56px !important;
	align-items: start !important;
}
.lph-product-hero .wp-block-column {
	flex: none !important;
	min-width: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}
.lph-product-gallery      { grid-area: gallery; }
.lph-product-summary      { grid-area: summary; grid-row: 1 / 3 !important; }
.lph-product-benefits-col { grid-area: benefits; }

/* wp:post-title dans la colonne résumé */
.lph-product-summary .wp-block-post-title {
	font-family: 'Gliker', sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	color: var(--lph-blue);
	margin: 0;
}

/* wp:woocommerce/product-rating dans la colonne résumé */
.lph-product-summary .wp-block-woocommerce-product-rating {
	display: flex;
	align-items: center;
	gap: 8px;
}

/* wp:woocommerce/add-to-cart-form wrapper */
.lph-product-summary .wp-block-woocommerce-add-to-cart-form { margin: 0; }

.lph-product-summary .wp-block-woocommerce-add-to-cart-form table.variations{
	margin-bottom:0 !important;
}
.lph-product-summary .wp-block-woocommerce-add-to-cart-form table.variations .value{
	padding:0;
}

.woocommerce .single_variation_wrap .woocommerce-variation{
	margin-bottom:0;
}

/* Store notices : centré et contraint comme le reste du contenu produit */
.wc-block-store-notices {
	display: block !important;
	width: 100% !important;
	max-width: 1200px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	box-sizing: border-box !important;
	align-self: center !important;
}
.wc-block-store-notices .woocommerce-notices-wrapper {
	width: 100%;
}

/* Ligne breadcrumb : 2 colonnes miroir du hero, colonne gauche = spacer */
.lph-breadcrumb-row {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 0 48px !important;
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 24px 24px 0 !important;
}

/* Colonne breadcrumb */
.wp-block-woocommerce-breadcrumbs {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	margin: 0;
}
.wp-block-woocommerce-breadcrumbs a { color: var(--lph-gray-muted); text-decoration: none; }
.wp-block-woocommerce-breadcrumbs a:hover { color: var(--lph-blue); }
.wp-block-woocommerce-breadcrumbs .breadcrumb_last,
.wp-block-woocommerce-breadcrumbs [aria-current="page"] {
	color: var(--lph-blue);
	font-weight: 600;
}

/* Badge onsale WooCommerce — masqué dans la galerie produit */
.lph-product-gallery .onsale { display: none !important; }

/* wp:woocommerce/product-details — tabs section */
.lph-product-detail .wc-tabs { display: none; }
.lph-product-detail .woocommerce-Tabs-panel { display: block !important; }
.lph-product-detail .woocommerce-tabs { background: none; }
.lph-product-detail .woocommerce-product-details__short-description,
.lph-product-detail .woocommerce-Tabs-panel p {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 26px;
	color: var(--lph-gray);
}

/* ── Wrapper ──────────────────────────────────────────────────────────────── */
.lph-single-product {
	width: 100%;
	background: #fff;
}

/* ── Hero : 2 colonnes (défini aussi sur le sélecteur spécifique ci-dessus) ── */
.lph-product-hero {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
	max-width: 1200px;
	margin: 0 auto;
	padding: 40px 24px 56px;
	align-items: start;
}

/* ── Gallery ─────────────────────────────────────────────────────────────── */
.lph-product-gallery {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.lph-product-gallery .woocommerce-product-gallery {
	/*position: sticky;
	top: 100px;*/
}

.lph-product-gallery .woocommerce-product-gallery__image img,
.lph-product-gallery .flex-viewport img {
	border-radius: 24px;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.lph-product-gallery .flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px !important;
	padding: 0;
	list-style: none;
	width: 100%;
}

.lph-product-gallery .flex-control-thumbs li {
	flex: 0 0 calc(25% - 9px);
	min-width: 0;
}

.lph-product-gallery .flex-control-thumbs img {
	width: 100%;
	aspect-ratio: 1;
	height: auto;
	object-fit: cover;
	border-radius: 12px;
	border: 2px solid transparent;
	cursor: pointer;
	transition: border-color .2s;
}

.lph-product-gallery .flex-control-thumbs .flex-active {
	border-color: var(--lph-blue);
}

/* Supprime les <p> vides générés par wpautop autour des shortcodes block */
.lph-product-summary > p:empty,
.lph-product-summary > p:not([class]) {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Decorative tile strip */
.lph-damier-lavande,
.lph-damier-vert,
.lph-damier-bleu,
.lph-damier-bleuclair,
.lph-damier-rose,
.lph-damier-orange,
.lph-damier-jaune {
	--damier-color: var(--lph-lavender);
	height: 82px;
	background: conic-gradient(
		transparent 90deg,
		var(--damier-color) 90deg 180deg,
		transparent 180deg 270deg,
		var(--damier-color) 270deg
	) 0 0 / 61px 55px;
	margin-block-start: 0;
}
.lph-damier-vert  { --damier-color: var(--lph-green);  }
.lph-damier-bleu  { --damier-color: var(--lph-blue);   }
.lph-damier-rose  { --damier-color: var(--lph-pink);   }
.lph-damier-jaune { --damier-color: var(--lph-yellow); }
.lph-damier-bleuclair { --damier-color: var(--lph-lightblue); }
.lph-damier-orange { --damier-color: var(--lph-orange); }

/* ── Summary ─────────────────────────────────────────────────────────────── */
.lph-product-summary {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

/* Breadcrumb */
.woocommerce-breadcrumb {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: var(--lph-gray-muted);
	margin: 0;
}

.woocommerce-breadcrumb a {
	color: var(--lph-gray-muted);
	text-decoration: none;
}

.woocommerce-breadcrumb .lph-bc-current {
	color: var(--lph-blue);
	font-weight: 600;
}

.woocommerce-breadcrumb a:hover { color: var(--lph-blue); }

/* Badges */
.lph-product-summary__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-block-start:0;
}

.lph-product-summary__badges .lph-badge {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 13px;
	line-height: 1;
	padding: 6px 14px;
	border-radius: 99px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.lph-badge--promo {
	background: var(--lph-red);
	color: #fff;
}

.lph-badge--bio {
	background: var(--lph-green);
	color: #fff;
}

.lph-badge--new {
	background: var(--lph-lavender);
	color: #fff;
}

/* Title */
.lph-product-summary__title {
	font-family: 'Montserrat', sans-serif;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2;
	color: var(--lph-blue);
	margin: 0;
}

/* Rating */
.lph-product-summary__rating {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin-block-start: 0;
}

.lph-stars {
	display: flex;
	gap: 2px;
	align-items: center;
}

.lph-rating-score {
	font-family: 'Montserrat', sans-serif;
	font-weight: 900;
	font-size: 18px;
	color: var(--lph-blue);
}

.lph-rating-count {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 14px;
	color: var(--lph-gray-muted);
}

/* ── Pricing block ───────────────────────────────────────────────────────── */
.lph-product-pricing {
	background: var(--lph-blue);
	border-radius: 16px;
	padding: 20px 24px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	box-shadow: 0 8px 24px rgba(0, 38, 137, .25);
	margin-block-start: 0;
}

.lph-pricing__from {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 15px;
	color: rgba(255,255,255,.75);
	margin-bottom:-15px;
}

.lph-pricing__badge {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .04em;
	background: var(--lph-red);
	color: #fff;
	padding: 6px 16px;
	border-radius: 99px;
	display: inline-block;
	align-self: flex-start;
}

.lph-pricing__offer-countdown {
	display: flex;
	align-items: center;
	gap: 6px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 13px;
	color: rgba(255,255,255,.8);
	margin-top: 4px;
}

.lph-pricing__offer-countdown svg {
	flex-shrink: 0;
	opacity: .9;
}

.lph-pricing__offer-countdown #lph-offer-timer {
	font-weight: 700;
	color: #fff;
}

.lph-pricing__value {
	color: #fff;
	line-height: 1;
}

.lph-product-pricing .price_gramme_wrap,
.lph-product-pricing .price_gramme_value {
	color: #fff;
	display: flex;
	align-items: baseline;
	gap: 4px;
}

.lph-product-pricing .price_gramme_value {
	font-family: 'Montserrat', sans-serif;
	font-weight: 900;
	font-size: 48px;
	line-height: 1;
}

.lph-product-pricing .price_gramme_unit {
	font-family: 'Gliker', sans-serif;
	font-weight: 400;
	font-size: 22px;
	font-weight: 700;
	color: var(--lph-lavender);
}

.lph-product-pricing .price_gramme_value s {
	font-size: 24px;
	color: rgba(255,255,255,.5);
	text-decoration: line-through;
	font-weight: 400;
}

/* Prix produit simple : get_price_html() → .price > [del] [ins] */
.lph-product-pricing .lph-pricing__value .price {
	display: flex;
	align-items: baseline;
	gap: 8px;
}
.lph-product-pricing ins {
	text-decoration: none;
}
/* Prix courant (simple sans promo, ou ins du prix soldé) */
.lph-product-pricing .woocommerce-Price-amount {
	font-family: 'Montserrat', sans-serif;
	font-weight: 900;
	font-size: 48px;
	color: #fff;
	line-height: 1;
}
.lph-product-pricing .woocommerce-Price-amount .woocommerce-Price-currencySymbol {
	margin-right:8px;
}
/* Prix barré (del) : même style que .price_gramme_value s */
.lph-pricing__value del{
	text-decoration-line:none;
}
.lph-product-pricing .lph-pricing__value del .woocommerce-Price-amount {
	font-size: 24px;
	font-weight: 400;
	color: rgba(255,255,255,.5);
	text-decoration-line: line-through;
}

/* ── Countdown override (Figma style) ────────────────────────────────────── */
.lph-product-summary .shipping-countdown-wrapper { margin: 0; }

.lph-product-summary .shipping-countdown-container {
	background: rgba(138, 151, 254, .18);
	border: none;
	border-radius: 14px;
	padding: 16px 20px;
}

.lph-product-summary .countdown-message {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 15px;
	color: var(--lph-blue);
}

.lph-product-summary .countdown-message span {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 15px;
}

.lph-product-summary .time-unit {
	background: var(--lph-blue);
	border-radius: 8px;
	min-width: 48px;
	padding: 6px 10px;
}

.lph-product-summary .time-value {
	font-family: 'Montserrat', sans-serif;
	font-weight: 900;
	font-size: 18px;
}

.lph-product-summary .time-label {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 10px;
}

.lph-product-summary .shipping-details {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	color: var(--lph-gray);
	margin-top: 6px;
}

/* ── Quantity label ──────────────────────────────────────────────────────── */
.lph-quantity-label {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 18px;
	line-height: 28px;
	color: var(--lph-blue);
	margin: 0 0 -20px;
}

/* ── Custom select (dropdown variation) ─────────────────────────────────── */
.lph-custom-select {
	position: relative;
	width: 100%;
	flex: 1 1 auto;
	min-width: 0;
	user-select: none;
}

.lph-cs-trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	background: #fff;
	border: 2px solid #E5E7EB;
	border-radius: 14px;
	padding: 16px;
	height: 32px;
	cursor: pointer;
	transition: border-color .2s;
}

.lph-custom-select.is-open .lph-cs-trigger,
.lph-cs-trigger:focus { border-color: var(--lph-lavender); }

.lph-cs-left {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}

.lph-cs-weight {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: var(--lph-blue);
	white-space: nowrap;
}

.lph-cs-badge {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: var(--lph-blue);
	background: var(--lph-lavender);
	border-radius: 99px;
	padding: 3px 8px;
	white-space: nowrap;
	height: 17px;
    line-height: 17px;
}

.lph-cs-price {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 900;
	color: var(--lph-blue);
	white-space: nowrap;
	margin-right: 4px;
}

.lph-cs-ph {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	color: var(--lph-gray-muted);
}

.lph-cs-arrow {
	flex-shrink: 0;
	transition: transform .2s;
}
.lph-custom-select.is-open .lph-cs-arrow { transform: rotate(180deg); }

.woocommerce div.product form.cart{
	margin-bottom:0;
}

/* Dropdown panel */
.lph-cs-panel {
	display: none;
	position: absolute;
	top: calc(100% + 6px);
	left: 0; right: 0;
	background: #fff;
	border: 2px solid #E5E7EB;
	border-radius: 14px;
	box-shadow: 0 8px 24px rgba(0, 38, 137, .12);
	z-index: 200;
	overflow: hidden;
}
.lph-custom-select.is-open .lph-cs-panel { display: block; }

.lph-cs-option {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 14px 16px;
	cursor: pointer;
	transition: background .15s;
}
.lph-cs-option:not(:last-child) { border-bottom: 1px solid #F3F4F6; }
.lph-cs-option:hover { background: #F8F9FF; }
.lph-cs-option.is-selected { background: #EEF0FF; }
.lph-cs-option.is-disabled { opacity: .45; cursor: not-allowed; }

/* ── WooCommerce add-to-cart form ──────────────────────────────────────────── */

/* Produits simples uniquement (pas de .variations_form) */
.lph-product-summary .cart:not(.variations_form) {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin: 0;
}
.lph-product-summary .cart:not(.variations_form) .quantity { display: none !important; }

/* Produits variables : colonne [select] puis [bouton] */
.lph-product-summary .variations_form {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	margin: 0;
}

/* Table de variation : occupe tout l'espace disponible */
.lph-product-summary .variations {
	flex: 1 1 auto;
	min-width: 0;
	border: none;
	margin: 0;
}

.lph-product-summary .variations tbody,
.lph-product-summary .variations tr { display: block; }

.lph-product-summary .variations td { display: block; padding: 0; }

/* Label masqué — remplacé par le shortcode [lph_quantity_label] */
.lph-product-summary .variations .label { display: none; }

/* Native select (masqué par le JS custom dropdown) */
.lph-product-summary .variations select {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: var(--lph-blue);
	background: #fff;
	border: 2px solid #E5E7EB;
	border-radius: 14px;
	padding: 16px 48px 16px 16px;
	width: 100%;
	height: 60px;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 8L10 13L15 8' stroke='%23002689' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	cursor: pointer;
}

.lph-product-summary .variations select:focus {
	outline: none;
	border-color: var(--lph-lavender);
	box-shadow: 0 0 0 3px rgba(138, 151, 254, .2);
}

/* Masqués */
.lph-product-summary .reset_variations { display: none !important; }
.lph-product-summary .single_variation_wrap .woocommerce-variation-price { display: none; }
.lph-product-summary .single_variation_wrap .woocommerce-variation-availability { display: none; }
.lph-product-summary .single_variation_wrap .woocommerce-variation-description { display: none; }

/* Wrapper bouton : flex-item droit — toujours visible (bat WC .hide()) */
.lph-product-summary .single_variation_wrap {
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end;
	flex: 0 0 auto;
}

/* Conteneur bouton : toujours visible */
.lph-product-summary .woocommerce-variation-add-to-cart {
	display: flex !important;
	align-items: center;
}

/* Quantity masqué — portée par la variation */
.lph-product-summary .woocommerce-variation-add-to-cart .quantity { display: none !important; }


/* Add to cart button */
.lph-product-summary .single_add_to_cart_button,
.lph-product-summary .woocommerce-variation-add-to-cart .button {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: .04em;
	background: var(--lph-lavender);
	color: #fff;
	border: none;
	border-radius: 30px;
	padding: 0 24px;
	height: 60px;
	white-space: nowrap;
	cursor: pointer;
	text-transform: uppercase;
	transition: background .2s, transform .1s;
}

.lph-product-summary .single_add_to_cart_button:hover { background: var(--lph-blue); }
.lph-product-summary .single_add_to_cart_button:active { transform: scale(.98); }

/* ── Puissance ───────────────────────────────────────────────────────────── */
.lph-product-short-desc {
	font-size: 18px;
	line-height: 1.6;
	color: var(--lph-text, #1a2340);
	margin-block-start: 0;
}
.lph-product-short-desc p { margin: 0 0 8px; }
.lph-product-short-desc p:last-child { margin-bottom: 0; }

.lph-product-puissance {
	display: flex;
	flex-direction: column;
	gap: 4px;
	background: #fff;
	border: 2px solid var(--lph-lavender);
	border-radius: 16px;
	padding: 8px 14px;
	box-shadow: 0 4px 16px rgba(0, 38, 137, .08);
	margin-block-start: 0;
}

.lph-product-puissance__label {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 22px;
	color: var(--lph-blue);
	margin: 0;
}

.lph-puissance__track {
	position: relative;
	height: 8px;
	border-radius: 5px;
	overflow: visible;
	margin: 10px 16px 8px;
}

.lph-puissance__gradient {
	width: 100%;
	height: 100%;
	border-radius: 5px;
	background: linear-gradient(to right, #22c55e, #eab308, #f97316, #ef4444);
}

.lph-puissance__cursor {
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 60px;
	height: 60px;
	pointer-events: none;
	z-index: 1;
}

.lph-puissance__cursor img {
	display: block;
	width: 60px;
	height: 60px;
	object-fit: contain;
	filter: drop-shadow(0 2px 8px rgba(0,0,0,.2));
}

.lph-puissance__labels {
	display: flex;
	margin:0 22px;
}

.lph-puissance__labels span {
	font-family: 'Gliker', sans-serif;
	font-size: 15px;
	font-weight: 700;
	color: var(--lph-gray-muted);
	flex: 1;
	text-align: center;
}

.lph-puissance__labels span:first-child { text-align: left; }
.lph-puissance__labels span:last-child  { text-align: right; }

.lph-puissance__labels span.is-active {
	font-weight: 700;
	color: var(--lph-blue);
}

/* ── Benefits grid ───────────────────────────────────────────────────────── */
.lph-product-benefits {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	background: #fff;
	border: 2px solid var(--lph-border);
	border-radius: 14px;
	padding: 20px;
}

.lph-benefit {
	display: flex;
	align-items: center;
	gap: 12px;
}

.lph-benefit img {
	width: 36px;
	height: 36px;
	object-fit: contain;
	flex-shrink: 0;
}

.lph-benefit__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.lph-benefit__text strong {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 14px;
	color: var(--lph-blue);
}

.lph-benefit__text span {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 13px;
	color: var(--lph-gray-muted);
}

/* ── Detail accordion ────────────────────────────────────────────────────── */
.lph-product-detail {
	padding: 0 24px;
}

.lph-product-detail__inner {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.lph-product-detail__heading {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 32px;
	line-height: 1.2;
	color: var(--lph-blue);
	margin: 0 0 8px;
}

.lph-detail-tab {
	border: none;
	border-radius: 14px;
	overflow: hidden;
	background: rgba(138, 151, 254, .12);
}

.lph-detail-tab__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 24px;
	cursor: pointer;
	list-style: none;
	user-select: none;
	gap: 16px;
}

.lph-detail-tab__toggle::-webkit-details-marker { display: none; }

.lph-detail-tab__toggle span {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 20px;
	color: var(--lph-blue);
}

.lph-detail-tab__arrow {
	flex-shrink: 0;
	transition: transform .25s ease;
}

.lph-detail-tab[open] .lph-detail-tab__arrow {
	transform: rotate(180deg);
}

.lph-detail-tab__body {
	padding: 0 24px 24px;
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 26px;
	color: var(--lph-gray);
}

.lph-detail-tab__body p { margin: 0 0 12px; }
.lph-detail-tab__body p:last-child { margin-bottom: 0; }

/* Specs table */
.lph-specs-table {
	width: 100%;
	border-collapse: collapse;
}

.lph-specs-table tr { border-bottom: 1px solid var(--lph-border); }
.lph-specs-table tr:last-child { border-bottom: none; }

.lph-specs-table th,
.lph-specs-table td {
	padding: 12px 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	text-align: left;
}

.lph-specs-table th {
	font-weight: 700;
	color: var(--lph-blue);
	width: 40%;
}

.lph-specs-table td {
	font-weight: 400;
	color: var(--lph-gray);
}

/* ── Reviews ─────────────────────────────────────────────────────────────── */
.lph-product-reviews {
	background: #f8f9ff;
	border-top: 1px solid var(--lph-border);
	padding: 56px 24px;
}

.lph-product-reviews__inner {
	max-width: 1200px;
	margin: 0 auto;
}

.lph-product-reviews #reviews h2,
.lph-product-reviews #review_form_wrapper h3 {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 28px;
	color: var(--lph-blue);
}

.lph-product-reviews .comment-form-rating label,
.lph-product-reviews .comment-form-comment label,
.lph-product-reviews .comment-form-author label,
.lph-product-reviews .comment-form-email label {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	color: var(--lph-blue);
}

.lph-product-reviews .comment-form-rating .stars a,
.lph-product-reviews .comment-form-rating .stars a::before {
	color: var(--lph-yellow);
}

.lph-product-reviews .comment-list .comment-text {
	border: 1px solid var(--lph-border);
	border-radius: 16px;
	padding: 20px;
	margin-bottom: 16px;
}

.lph-product-reviews input[type="text"],
.lph-product-reviews input[type="email"],
.lph-product-reviews textarea {
	border: 2px solid var(--lph-border);
	border-radius: 12px;
	padding: 12px 16px;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	width: 100%;
	box-sizing: border-box;
}

.lph-product-reviews input[type="submit"] {
	background: var(--lph-lavender);
	color: #fff;
	border: none;
	border-radius: 99px;
	padding: 14px 32px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 16px;
	cursor: pointer;
	transition: background .2s;
}

.lph-product-reviews input[type="submit"]:hover {
	background: color-mix(in srgb, var(--lph-lavender) 85%, #000);
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
	.lph-product-hero.wp-block-columns {
		grid-template-columns: 1fr !important;
		grid-template-rows: auto !important;
		grid-template-areas: none !important;
		gap: 32px !important;
		padding: 24px 16px 40px !important;
	}

	/* Remet les zones auto pour l'empilement en colonne unique */
	.lph-product-gallery,
	.lph-product-summary,
	.lph-product-benefits-col {
		grid-area: auto !important;
		grid-row: auto !important;
	}

	/* Ligne breadcrumb : 1 colonne, spacer masqué */
	.lph-breadcrumb-row {
		grid-template-columns: 1fr !important;
		padding: 16px 16px 0 !important;
		gap: 0 !important;
	}
	.lph-breadcrumb-spacer { display: none !important; }

	/* Galerie centrée sur mobile */
	.lph-product-gallery {
		align-items: center;
	}
	.lph-product-gallery .woocommerce-product-gallery,
	.lph-product-gallery .wp-block-woocommerce-product-image-gallery {
		position: static;
		width: 100% !important;
		max-width: 512px !important;
	}
	.lph-product-gallery .flex-viewport { width: 100% !important; }
	.lph-product-gallery .flex-control-thumbs {
		width: 100% !important;
		justify-content: center;
	}

	.lph-product-summary .wp-block-post-title,
	.lph-product-pricing .woocommerce-Price-amount{
		font-size: 36px;
	}

	/* Damier masqué sur mobile */
	[class^="lph-damier-"] { display: none !important; }

	.lph-product-summary__title { font-size: 26px; }
	.lph-product-pricing .price_gramme_value { font-size: 36px; }
}

@media (max-width: 480px) {
	.lph-product-benefits { grid-template-columns: 1fr; }
	.lph-product-summary__title { font-size: 22px; }
	.lph-product-pricing { padding: 16px 18px; }
	.lph-product-detail { padding: 40px 16px; }
	.lph-product-reviews { padding: 40px 16px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Pattern : LPH Description Produit
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Section wrapper ──────────────────────────────────────────────────────── */
.lph-desc-produit {
	padding: 64px 24px;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

/* ── Titre principal ──────────────────────────────────────────────────────── */
.lph-desc-heading {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 48px !important;
	line-height: 1.1 !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
}

/* ── Intro : dégradé + bordure gauche ────────────────────────────────────── */
.lph-desc-intro {
	background: linear-gradient(90deg, rgba(138, 151, 254, .1) 0%, transparent 100%);
	border-left: 4px solid var(--lph-lavender);
	padding: 20px 24px 20px 28px;
}

.lph-desc-intro__text {
	margin: 0;
	font-size: 15px;
	line-height: 1.7;
	color: var(--lph-gray);
}

/* ── Grille 2 colonnes (section visible) ─────────────────────────────────── */
.lph-desc-grid {
	gap: 24px !important;
	align-items: stretch;
}

.lph-desc-grid .wp-block-column {
	display: flex;
	flex-direction: column;
}

.lph-desc-grid .wp-block-column > .wp-block-group {
	flex: 1;
}

/* ── Cartes ───────────────────────────────────────────────────────────────── */
.lph-desc-card {
	border-radius: 20px;
	padding: 28px 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.lph-desc-card--strong {
	background: rgba(138, 151, 254, .3);
}

.lph-desc-card--light {
	background: rgba(138, 151, 254, .2);
}

.lph-desc-card .lph-desc-card__title,
.lph-desc-card .lph-desc-card__text {
	color: var(--lph-blue) !important;
}

.lph-desc-card--bordered {
	background: #fff;
	border: 2px solid var(--lph-lavender-bg);
}

.lph-desc-card--bordered .lph-desc-card__title,
.lph-desc-card--bordered .lph-desc-card__text {
	color: var(--lph-blue) !important;
}

.lph-desc-card--full {
	width: 100%;
}

/* ── En-tête de carte ────────────────────────────────────────────────────── */
.lph-desc-card__header {
	display: flex;
	align-items: center;
	gap: 14px;
}

.lph-desc-card__icon {
	width: 40px !important;
	height: 40px !important;
	flex-shrink: 0;
	margin: 0 !important;
}

.lph-desc-card__icon img {
	width: 40px !important;
	height: 40px !important;
	object-fit: contain;
}

.lph-desc-card__title {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 20px !important;
	line-height: 1.2 !important;
	margin: 0 !important;
}

.lph-desc-card__text {
	font-size: 14px !important;
	line-height: 1.7 !important;
	margin: 0 !important;
}

/* ── Bouton Lire plus / Lire moins ──────────────────────────────────────── */
.lph-desc-btn-wrap {
	display: flex;
	justify-content: center;
	margin-top: 8px;
}

.lph-desc-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--lph-blue);
	color: #fff;
	border: none;
	border-radius: 99px;
	padding: 14px 32px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
	transition: background .2s;
}

.lph-desc-btn:hover {
	background: color-mix(in srgb, var(--lph-blue) 85%, #000);
}

/* ── Section étendue (3 cartes pleine largeur) ──────────────────────────── */
.lph-desc-expanded {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* ── Mobile ──────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
	.lph-desc-produit { padding: 40px 16px; gap: 24px; }
	.lph-desc-heading { font-size: 32px !important; }
	.lph-desc-grid { flex-direction: column !important; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Pattern : LPH Fiche Technique
   ═══════════════════════════════════════════════════════════════════════════ */

.lph-fiche-tech {
	padding: 48px 24px;
	max-width: 750px;
	margin: 0 auto;
}

/* ── Titre ───────────────────────────────────────────────────────────────── */
.lph-fiche-tech__heading {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 28px !important;
	line-height: 1.28 !important;
	color: var(--lph-blue) !important;
	margin-top: 0 !important;
	margin-bottom: 24px !important;
}

/* ── Carte ───────────────────────────────────────────────────────────────── */
.lph-fiche-tech__card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, .15);
	border-left: 6px solid var(--fiche-border, var(--lph-lavender));
	overflow: hidden;
}

/* ── Lignes label / valeur ───────────────────────────────────────────────── */
.lph-fiche-tech__row {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	padding: 16px 40px !important;
	border-bottom: 1px solid var(--lph-border);
	gap: 16px !important;
	margin: 0 !important;
}

.lph-fiche-tech__row:last-child {
	border-bottom: none;
}

.lph-fiche-tech__label {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 14px !important;
	line-height: 20px !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
	flex-shrink: 0;
}

.lph-fiche-tech__value {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
	text-align: right !important;
}

/* ── Mobile ──────────────────────────────────────────────────────────────── */
@media (max-width: 600px) {
	.lph-fiche-tech { padding: 32px 16px; }
	.lph-fiche-tech__row {
		flex-direction: column !important;
		align-items: flex-start !important;
		padding: 14px 20px !important;
		gap: 4px !important;
	}
	.lph-fiche-tech__value { text-align: left !important; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Mega menu
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Items L1 ────────────────────────────────────────────────────────────── */
/* .lph-nav doit s'étirer à la hauteur complète du header (80px) */
.lph-nav {
	align-self: stretch;
	align-items: stretch;
}

.lph-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	height: 100%;
	display: flex;
	align-items: stretch; /* les <li> prennent toute la hauteur du header */
	gap: 4px;
}

/* Le <li> s'étire à 100% de hauteur et centre son lien */
.lph-nav-item {
	position: static;
	display: flex;
	align-items: center;
	align-self: stretch;
}

.lph-nav-link {
	display: flex;
	align-items: center;
	padding: 8px 14px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 14px;
	color: #fff;
	text-decoration: none;
	border-radius: 8px;
	transition: background .15s;
	white-space: nowrap;
	height: 100%;
}
.lph-nav-link:hover,
.has-mega:hover .lph-nav-link { background: rgba(255,255,255,.12); }

/* ── Panneau mega ─────────────────────────────────────────────────────────── */
.lph-mega {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%) translateY(-6px);
	width: 100%;
	max-width: 1330px;
	z-index: 201;
	display: flex;
	pointer-events: none;
	opacity: 0;
	transition: opacity .2s ease, transform .2s ease;
	box-shadow: 0 10px 30px rgba(0,0,0,.15);
	border-bottom-left-radius: 14px;
	border-bottom-right-radius: 14px;
	overflow: hidden;
}

/* Ouverture par CSS :hover — plus fiable que JS mouseleave */
.has-mega:hover .lph-mega {
	opacity: 1;
	pointer-events: all;
	transform: translateX(-50%) translateY(0);
}

.lph-mega-inner {
	display: flex;
	width: 100%;
	min-height: 380px;
	background-color: #fff;
}

/* ── Colonne 1 — catégories L2 (fond bleu, 200px) ───────────────────────── */
.lph-mega__col1 {
	flex: 0 0 200px;
	background: var(--lph-blue);
	padding: 24px 0 0;
	display: flex;
	flex-direction: column;
}

.lph-mega__l2 {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 12px 4px;
	text-decoration: none;
	padding: 12px 13px;
	width: calc(100% - 24px);
	border: none;
	background: transparent;
	border-radius: 10px;
	cursor: pointer;
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.5;
	text-align: left;
	transition: background .15s;
}

.lph-mega__l2.is-active {
	background: #fff;
	color: var(--lph-blue);
	box-shadow: 0 2px 4px -2px rgba(0,0,0,.1), 0 4px 6px -1px rgba(0,0,0,.1);
}

.lph-mega__l2-icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 6px;
	background-size: cover;
	background-position: center;
}

.lph-mega__l2-icon--placeholder {
	background: rgba(255,255,255,.2);
}

.lph-mega__l2.is-active .lph-mega__l2-icon--placeholder {
	background: rgba(0,38,137,.1);
}

/* ── Colonne 2 — sous-menus L3/L4 (fond blanc) ───────────────────────────── */
.lph-mega__col2 {
	flex: 1;
	background: #fff;
	padding: 32px 32px 24px;
	overflow-y: auto;
}

.lph-mega__sub {
	display: none;
	flex-wrap: wrap;
	gap: 32px 24px;
	align-content: flex-start;
}

.lph-mega__sub.is-active { display: flex; }

.lph-mega__section {
	flex: 0 1 auto;
	min-width: 0;
	max-width: 100%;
}

.lph-mega__section-title {
	display: flex;
	align-items: center;
	gap: 6px;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 12px;
	line-height: 1.375;
	letter-spacing: .046em;
	text-transform: uppercase;
	color: var(--lph-blue);
	margin: 0 0 12px;
}

.lph-mega__section-icon {
	width: 20px;
	height: 20px;
	border-radius: 4px;
	object-fit: cover;
	flex-shrink: 0;
}

.lph-mega__section-title a {
	color: inherit;
	text-decoration: none;
}
.lph-mega__section-title a:hover { text-decoration: underline; }

.lph-mega__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.lph-mega__pill-icon {
	width: 16px;
	height: 16px;
	border-radius: 3px;
	object-fit: cover;
	flex-shrink: 0;
	margin-right: 4px;
}

.lph-mega__pill {
	display: inline-flex;
	align-items: center;
	padding: 8px 14px;
	background: var(--lph-lavender-bg);
	border: 1px solid transparent;
	border-radius: 999px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 13px;
	color: var(--lph-blue);
	text-decoration: none;
	transition: background .15s;
	white-space: nowrap;
}

.lph-mega__pill:hover { background: var(--lph-blue); color: #fff; }

/* ── Colonne 3 — CTA + best-sellers + lien (280px, fond lavande) ─────────── */
.lph-mega__col3 {
	flex: 0 0 280px;
	max-width: 280px;
	background: rgba(138, 151, 254, .22);
	padding: 24px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* Bouton CTA rouge */
.lph-mega__cta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 15px 20px;
	background: var(--lph-red);
	border-radius: 14px;
	box-shadow: 0 4px 6px -4px rgba(0,0,0,.1), 0 10px 15px -3px rgba(0,0,0,.1);
	text-decoration: none;
	color: #fff;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 16px;
	transition: opacity .15s;
}
.lph-mega__cta:hover { opacity: .9; }

.lph-mega__cta-icon {
	flex-shrink: 0;
	width: 30px;
	height: 30px;
	background-size: cover;
	background-position: center;
	border-radius: 4px;
}

/* Best-sellers */
.lph-mega__bestsellers {
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.lph-mega__bs-title {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.43;
	color: var(--lph-blue);
	margin: 0;
}

.lph-mega__bs-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.lph-mega__product {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px;
	background: #fff;
	border-radius: 10px;
	text-decoration: none;
	transition: box-shadow .15s;
}
.lph-mega__product:hover { box-shadow: 0 4px 12px rgba(0,0,0,.08); }

.lph-mega__product-img {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	overflow: hidden;
}
.lph-mega__product-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.lph-mega__product-info {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.lph-mega__product-name {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 13px;
	color: var(--lph-blue);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.lph-mega__product-price {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 13px;
	color: #00C896;
}
.lph-mega__product-price .woocommerce-Price-amount { color: inherit; }

/* Séparateur + lien bas */
.lph-mega__sep {
	border: none;
	border-top: 1px solid rgba(59, 47, 217, .2);
	margin: 0;
}

.lph-mega__link {
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-decoration: none;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 14px;
	color: var(--lph-blue);
	transition: gap .15s;
}
.lph-mega__link:hover { gap: 8px; }
.lph-mega__link svg { flex-shrink: 0; }

/* ── Masquer le mega sur mobile ──────────────────────────────────────────── */
@media (max-width: 900px) {
	.lph-mega { display: none !important; }
}

/* ── Burger : caché sur desktop ─────────────────────────────────────────── */
.lph-burger { display: none; }

/* ══════════════════════════════════════════════════════════════════════════
   MENU MOBILE
   ══════════════════════════════════════════════════════════════════════════ */
.lph-mobile-menu {
	position: fixed;
	inset: 0;
	z-index: 2147483647; /* maximum CSS z-index */
	display: flex;
	pointer-events: none;
}

/* Passer les widgets tiers sous le menu mobile quand il est ouvert */
body.lph-mobile-menu-open #sag_b_classic,
body.lph-mobile-menu-open [id*="sag_b"],
body.lph-mobile-menu-open [class*="sag_b"],
body.lph-mobile-menu-open #cb_whatsapp,
body.lph-mobile-menu-open [id*="whatsapp"],
body.lph-mobile-menu-open [class*="cb_whatsapp"] {
	z-index: 1 !important;
}
.lph-mobile-menu[aria-hidden="false"] { pointer-events: auto; }

.lph-mobile-menu-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .45);
	opacity: 0;
	transition: opacity .3s ease;
}
.lph-mobile-menu[aria-hidden="false"] .lph-mobile-menu-overlay { opacity: 1; }

.lph-mobile-menu-panel {
	position: relative;
	width: 300px;
	max-width: 85vw;
	height: 100%;
	background: var(--lph-blue);
	display: flex;
	flex-direction: column;
	transform: translateX(-100%);
	transition: transform .3s ease;
	overflow-y: auto;
}
.lph-mobile-menu[aria-hidden="false"] .lph-mobile-menu-panel { transform: translateX(0); }

.lph-mobile-menu-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	border-bottom: 1px solid rgba(255,255,255,.15);
	flex-shrink: 0;
}
.lph-mobile-logo-link img { height: 36px; width: auto; }

.lph-mobile-menu-close {
	background: none;
	border: none;
	cursor: pointer;
	padding: 6px;
	color: #fff;
	display: flex;
	align-items: center;
}

/* Nav liste mobile */
.lph-mobile-nav { flex: 1; padding: 8px 0; }

.lph-mobile-nav-list,
.lph-mobile-nav-list ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Items L1 */
.lph-mobile-nav-list > li {
	border-bottom: 1px solid rgba(255,255,255,.1);
}
.lph-mobile-nav-list > li > a {
	display: flex;
	align-items: center;
	padding: 14px 20px;
	color: #fff;
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 15px;
	text-decoration: none;
}
.lph-mobile-nav-list > li > a:hover { background: rgba(255,255,255,.08); }

/* Items avec sous-menu : flex pour aligner lien + flèche sur la même ligne */
.lph-mobile-nav-list .menu-item-has-children {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
.lph-mobile-nav-list .menu-item-has-children > a {
	flex: 1;
	min-width: 0;
}
/* Bouton toggle sous-menu */
.lph-mobile-submenu-toggle {
	flex: 0 0 auto;
	background: none;
	border: none;
	cursor: pointer;
	color: #fff;
	padding: 0 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-left: 1px solid rgba(255,255,255,.1);
}
.lph-mobile-submenu-toggle svg {
	transition: transform .25s ease;
}
.lph-mobile-nav-list .menu-item-has-children.is-open > .lph-mobile-submenu-toggle svg {
	transform: rotate(180deg);
}

/* Le sous-menu prend toute la largeur sur la ligne suivante */
.lph-mobile-nav-list .menu-item-has-children > ul {
	flex: 0 0 100%;
}

/* Sous-menus masqués par défaut */
.lph-mobile-nav-list ul {
	display: none;
	background: rgba(0,0,0,.2);
}
.lph-mobile-nav-list .menu-item-has-children.is-open > ul {
	display: block;
}

/* Liens L2 */
.lph-mobile-nav-list ul > li > a {
	display: flex;
	padding: 11px 20px 11px 28px;
	color: rgba(255,255,255,.85);
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}
.lph-mobile-nav-list ul > li > a:hover { color: #fff; background: rgba(255,255,255,.06); }

/* Liens L3 */
.lph-mobile-nav-list ul ul > li > a {
	padding-left: 40px;
	font-size: 12px;
	font-weight: 400;
	color: rgba(255,255,255,.75);
}

/* Liens L4 */
.lph-mobile-nav-list ul ul ul > li > a {
	padding-left: 54px;
	font-size: 12px;
	color: rgba(255,255,255,.65);
}

/* Icônes dans le menu mobile */
.lph-mobile-item-icon {
	display: inline-block;
	flex-shrink: 0;
	border-radius: 50%;
	background: no-repeat center / cover;
	margin-right: 10px;
}
.lph-mobile-item-icon--d0 { width: 28px; height: 28px; }
.lph-mobile-item-icon--d1 { width: 20px; height: 20px; }
.lph-mobile-item-icon--d2,
.lph-mobile-item-icon--d3 { width: 16px; height: 16px; }

/* Réduire l'indentation gauche quand une icône est présente */
.lph-mobile-nav-list ul > li > a.has-icon { padding-left: 20px; }
.lph-mobile-nav-list ul ul > li > a.has-icon { padding-left: 28px; }
.lph-mobile-nav-list ul ul ul > li > a.has-icon { padding-left: 36px; }


/* Bloquer le scroll quand le menu est ouvert */
body.lph-mobile-menu-open { overflow: hidden; }

@media (max-width: 768px) {
	.lph-burger { display: flex; }

	/* Header mobile : burger | logo centré | panier — layout 3 colonnes flex */
	.lph-header-inner {
		padding: 0 12px;
		gap: 0;
		justify-content: space-between;
	}
	/* Logo : colonne centrale, centré */
	.lph-logo-link {
		flex: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		width: auto;
		min-width: 0;
	}
	.lph-logo-link img {
		height: 36px;
		width: auto;
		max-width: 100%;
		object-fit: contain;
	}
	/* Burger et actions : taille minimale fixe pour que le logo reste centré */
	.lph-burger,
	.lph-header-actions {
		flex: 0 0 auto;
		min-width: 36px;
		gap:0;
	}
}

/* ══════════════════════════════════════════════════════════════════════════
   PAGE PANIER
   ══════════════════════════════════════════════════════════════════════════ */

/* H1 */
h1 {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 32px;
	color: var(--lph-blue);
}

/* Layout principal */
.woocommerce-cart .woocommerce {
	display: flex;
	align-items: flex-start;
	max-width: none !important;
	margin: 0 auto;
	padding: 0 0 32px;
	box-sizing: border-box;
}
.woocommerce-cart form.woocommerce-cart-form {
	flex: 1;
	min-width: 0;
}
.woocommerce-cart .cart-collaterals {
	width: 360px;
	flex-shrink: 0;
	position: sticky;
	top: 100px;
	margin-left: 32px;
}

/* ── Liste des articles ── */
.lph-cart-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 20px;
}

/* Stepper quantité — page panier : unwrap le div.quantity dans le stepper */
.woocommerce-cart .lph-cart-item__stepper .quantity {
	display: contents;
}
.woocommerce-cart .lph-cart-item__stepper .screen-reader-text {
	position: absolute;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}
.woocommerce-cart .lph-cart-item__stepper input.qty {
	background: none;
	border: none;
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: var(--lph-blue);
	width: 28px;
	text-align: center;
	padding: 0;
	outline: none;
	-moz-appearance: textfield;
	appearance: textfield;
}
.woocommerce-cart .lph-cart-item__stepper input.qty::-webkit-inner-spin-button,
.woocommerce-cart .lph-cart-item__stepper input.qty::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Prix unitaire (avant stepper) */
.lph-cart-item__unit-price {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	color: #6A7282;
	white-space: nowrap;
}
.lph-cart-item__unit-price .woocommerce-Price-amount { color: inherit; }

/* ── Ligne actions (coupon + update cart) ── */
.lph-cart-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	align-items: center;
}
.lph-cart-actions .coupon {
	display: flex;
	gap: 8px;
	align-items: center;
	flex: 1;
	min-width: 0;
}
.lph-cart-actions .coupon label { display: none; }
.lph-cart-actions .coupon input#coupon_code {
	flex: 1;
	max-width: 220px;
	height: 40px;
	padding: 0 16px;
	border: 1.5px solid #E5E7EB;
	border-radius: 104px;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	background: #fff;
	outline: none;
}
.lph-cart-actions .coupon input#coupon_code:focus { border-color: var(--lph-lavender); }
.lph-cart-actions .lph-coupon-submit-cart {
	height: 40px;
	padding: 0 20px;
	background: var(--lph-lavender);
	color: #fff;
	border: none;
	border-radius: 104px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
	transition: opacity .15s;
}
.lph-cart-actions .lph-coupon-submit-cart:hover { opacity: .85; }
.lph-cart-update-btn {
	height: 40px;
	padding: 0 20px;
	background: transparent;
	color: var(--lph-blue);
	border: 1.5px solid var(--lph-blue);
	border-radius: 104px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
	transition: background .15s, color .15s;
}
.lph-cart-update-btn:hover {
	background: var(--lph-blue);
	color: #fff;
}

/* ── Bloc totaux ── */
.woocommerce-cart .cart_totals {
	background: #fff;
	border: 1px solid #E5E7EB;
	border-radius: 16px;
	padding: 24px;
	width: calc(100% - 48px) !important;
}
.woocommerce-cart .cart_totals h2 {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: var(--lph-blue);
	margin: 0 0 16px;
	text-transform: uppercase;
	letter-spacing: .05em;
}
.woocommerce-cart .cart_totals .shop_table {
	display: block;
	width: 100%;
	border: none;
	background: transparent;
}
.woocommerce-cart .cart_totals .shop_table tbody { display: block; }
.woocommerce-cart .cart_totals .shop_table tr {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid #F3F4F6;
}
.woocommerce-cart .cart_totals .shop_table tr:last-child { border-bottom: none; }
.woocommerce-cart .cart_totals .shop_table th {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: #6A7282;
	border: none;
	padding: 0;
	background: transparent;
	text-align: left;
	border:none !important;
}
.woocommerce-cart .cart_totals .shop_table td {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: var(--lph-blue);
	border: none;
	padding: 0;
	background: transparent;
	text-align: right;
}
.woocommerce-cart .cart_totals .shop_table td::before { display: none; }
.woocommerce-cart .cart_totals .shop_table td .woocommerce-Price-amount { color: inherit; }

/* Remise coupon */
.woocommerce-cart .cart_totals .cart-discount td { color: #4ab866; border: none !important; }
.woocommerce-cart .cart_totals .cart-discount .woocommerce-Price-amount { color: inherit; }
.woocommerce-cart .cart_totals .cart-discount a.wc-remove-coupon {
	color: #6A7282;
	font-size: 12px;
	margin-left: 6px;
	text-decoration: none;
}
.woocommerce-cart .cart_totals .cart-discount a.wc-remove-coupon:hover { color: #e53e3e; }

/* ── Calculateur de frais d'expédition ── */
.woocommerce-cart .cart_totals tr.shipping {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
}
.woocommerce-cart .cart_totals tr.shipping th {
	font-size: 14px;
	color: #6A7282;
	letter-spacing: .04em;
	padding-bottom: 4px;
}
.woocommerce-cart .cart_totals tr.shipping td {
	text-align: left;
	padding-top: 0;
}

.woocommerce-shipping-totals.shipping td{
	border: none !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected]{
	background-color: var(--lph-lavender);
}

/* Bouton toggle "Calculer les frais" */
.woocommerce-cart .shipping-calculator-button {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	color: var(--lph-lavender);
	text-decoration: none;
}
.woocommerce-cart .shipping-calculator-button:hover { text-decoration: underline; }

/* Formulaire */
.woocommerce-cart .shipping-calculator-form {
	margin-top: 12px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.woocommerce-cart .shipping-calculator-form .form-row {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}
.woocommerce-cart .shipping-calculator-form label {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 400;
	color: #6A7282;
}
.woocommerce-cart .shipping-calculator-form input.input-text,
.woocommerce-cart .shipping-calculator-form select {
	width: 100%;
	height: 36px;
	padding: 0 12px;
	border: 1.5px solid #E5E7EB;
	border-radius: 104px;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	color: var(--lph-blue);
	background: #fff;
	outline: none;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
}
.woocommerce-cart .shipping-calculator-form input.input-text:focus,
.woocommerce-cart .shipping-calculator-form select:focus {
	border-color: var(--lph-lavender);
}
.woocommerce-cart .shipping-calculator-form p:last-child {
	margin: 4px 0 0;
	padding: 0;
}
.woocommerce-cart .shipping-calculator-form button[name=calc_shipping] {
	height: 36px;
	padding: 0 20px;
	background: var(--lph-lavender);
	color: #fff;
	border: none;
	border-radius: 104px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 13px;
	cursor: pointer;
	transition: opacity .15s;
}
.woocommerce-cart .shipping-calculator-form button[name=calc_shipping]:hover { opacity: .85; }

/* Ligne total final */
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: var(--lph-blue);
	padding-top: 4px;
	border:none !important;
}
.woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount { color: inherit; }

/* Bouton passer la commande */
.woocommerce-cart .wc-proceed-to-checkout { margin-top: 20px; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	display: block;
	width: auto;
	padding: 14px;
	background: var(--lph-blue);
	color: #fff;
	border: none;
	border-radius: 99px;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 16px !important;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: opacity .15s;
}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover { opacity: .85; }

/* ── Notices WooCommerce sur la page panier ── */
.wc-block-components-notice-banner:focus-visible{ outline-style: none;}

.woocommerce-cart .woocommerce-notices-wrapper { margin-bottom: 16px; max-width:1200px; margin:0 auto;}
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-error,
.woocommerce-cart .woocommerce-info,
.wc-block-components-notice-banner {
	border-radius: 14px;
	padding: 12px 16px;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	margin-bottom: 12px;
}
.woocommerce-cart .woocommerce-info, .wc-block-components-notice-banner { border: none !important; background: #cdd2fe; color: var(--lph-blue); }
.woocommerce-cart .woocommerce-message, .wc-block-components-notice-banner.is-success { background: #cdffe1; color: #2d7a4f; }
.woocommerce-cart .woocommerce-error, .wc-block-components-notice-banner.is-error { background: #ffd6d6; color: #c53030; }
.wc-block-components-notice-banner.is-info>svg{ background-color: var(--lph-lavender);}

/* ── Mobile ── */
@media (max-width: 768px) {
	.woocommerce-cart .woocommerce {
		flex-direction: column;
		padding: 24px 16px;
	}
	.woocommerce-cart form.woocommerce-cart-form,
	.woocommerce-cart .cart-collaterals,
	.lph-cart-list {
		width: 100%;
		box-sizing: border-box;
	}
	.woocommerce-cart .cart-collaterals {
		position: static;
		margin-left: 0;
	}

	/* Cartes produit : image réduite + body contraint */
	.woocommerce-cart .lph-cart-item {
		gap: 12px;
		padding: 12px;
	}
	.woocommerce-cart .lph-cart-item__img {
		width: 72px;
		height: 72px;
		flex-shrink: 0;
	}
	.woocommerce-cart .lph-cart-item__img img {
		width: 72px;
		height: 72px;
	}
	.woocommerce-cart .lph-cart-item__body {
		min-width: 0;
		flex: 1;
	}
	.woocommerce-cart .lph-cart-item__name {
		font-size: 14px;
		line-height: 1.3;
	}

	/* Row2 : réduire le stepper pour tenir sur petit écran */
	.woocommerce-cart .lph-cart-item__stepper {
		width: 88px;
		gap: 8px;
		padding: 4px 8px;
	}
	.woocommerce-cart .lph-cart-item__unit-price {
		font-size: 12px;
	}

	.lph-cart-actions{ margin-bottom:24px;}
	.lph-cart-actions .coupon { width: 100%; }
	.lph-cart-actions .coupon input#coupon_code { max-width: none; }
	.lph-cart-update-btn { width: 100%; }
}

/* ══════════════════════════════════════════════════════════════════════════
   PAGE MON COMPTE
   ══════════════════════════════════════════════════════════════════════════ */

/* Pas de fond sur l'en-tête de page + pas de fil d'ariane */
.woocommerce-account .page-categorie-header {
	background: none;
	padding-bottom: 0;
	margin-bottom: 0;
}
.woocommerce-account .page-categorie-header h1 { color: var(--lph-blue); margin-bottom:24px;}
.woocommerce-account .lph-breadcrumb,
.woocommerce-account .yoast-breadcrumbs { display: none !important; }

/* Layout principal */
.woocommerce-account .woocommerce {
	display: flex;
	align-items: flex-start;
	gap: 24px;
	max-width: 1340px !important;
	margin:0 auto;
}

/* ── Navigation sidebar ── */
.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 256px;
	flex-shrink: 0;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px -1px rgba(0,0,0,.1);
	padding: 16px 16px 0;
	box-sizing: border-box;
	position: sticky;
	top: 100px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
	border-radius: 8px;
	padding: .4em 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 12px;
	text-decoration: none !important;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 20px;
	color: var(--lph-blue);
	border-radius: 8px;
	transition: background .15s;
}
/* Icône via ::before */
.woocommerce-account .woocommerce-MyAccount-navigation li a::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex-shrink: 0;
}
.woocommerce-MyAccount-navigation-link--dashboard a::before {
	background-image: url('../images/lph/myaccount-dashboard.png');
}
.woocommerce-MyAccount-navigation-link--orders a::before {
	background-image: url('../images/lph/myaccount-orders.png');
}
.woocommerce-MyAccount-navigation-link--edit-address a::before {
	background-image: url('../images/lph/myaccount-address.png');
}
.woocommerce-MyAccount-navigation-link--payment-methods a::before {
	background-image: url('../images/lph/myaccount-payment.png');
}
.woocommerce-MyAccount-navigation-link--edit-account a::before {
	background-image: url('../images/lph/myaccount-account.png');
}
/* Déconnexion : séparateur, style discret, sans icône */
.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: 8px;
	padding-top: 4px;
	border-top: 1px solid #F3F4F6;
}
.woocommerce-MyAccount-navigation-link--customer-logout a {
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 13px;
	color: #6A7282;
}
.woocommerce-MyAccount-navigation-link--customer-logout a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M8 3.5H5a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h3' stroke='%236A7282' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M13 13.5l3.5-3.5L13 6.5M16.5 10H8' stroke='%236A7282' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation-link--customer-logout a:hover { color: #e53e3e; }
/* Masquer Téléchargements */
.woocommerce-MyAccount-navigation-link--downloads, .woocommerce-MyAccount-navigation-link--payment-methods { display: none !important; }

/* État actif */
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--lph-lavender);
	color: #fff;
}

/* ── Zone de contenu ── */
.woocommerce-account .woocommerce-MyAccount-content {
	flex: 1;
	min-width: 0;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px -1px rgba(0,0,0,.1);
	padding: 32px;
	box-sizing: border-box;
}

/* Dashboard — "Bonjour Prénom" */
.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	color: var(--lph-blue);
	margin-bottom: 16px;
}
.woocommerce-account .woocommerce-MyAccount-content > p:first-child a {
	color: var(--lph-lavender);
	font-weight: 600;
	text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-content > p:first-child a:hover { text-decoration: underline; }

/* Dashboard — description */
.woocommerce-account .woocommerce-MyAccount-content > p {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: var(--lph-blue);
	margin-bottom: 12px;
}
.woocommerce-account .woocommerce-MyAccount-content > p a {
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	color: var(--lph-lavender);
	text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-content > p a:hover { text-decoration: underline; }

/* ── Formulaires (détails du compte, adresses) ── */
.woocommerce-account .woocommerce-form-row,
.woocommerce-account .form-row {
	margin: 0 0 16px;
	padding: 0;
}
.woocommerce-account .woocommerce-form-row label,
.woocommerce-account .form-row label {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 400;
	color: #6A7282;
	margin-bottom: 4px;
}
.woocommerce-account .woocommerce-form-row label abbr,
.woocommerce-account .form-row label abbr {
	color: var(--lph-lavender);
	text-decoration: none;
}
.woocommerce-account .woocommerce-Input,
.woocommerce-account input.input-text,
.woocommerce-account textarea.input-text,
.woocommerce-account .woocommerce-address-fields input.input-text,
.woocommerce-account .woocommerce-EditAccountForm input.input-text,
.woocommerce-account .woocommerce-EditAccountForm fieldset input.input-text {
	width: 100%;
	padding: 10px 16px;
	border: 1px solid #D1D5DC;
	border-radius: 10px;
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	background: #fff;
	outline: none;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
	transition: border-color .15s;
}
.woocommerce-account .woocommerce-Input:focus,
.woocommerce-account input.input-text:focus,
.woocommerce-account textarea.input-text:focus {
	border-color: var(--lph-lavender);
}
/* Select2 : border + radius identiques aux inputs */
.woocommerce-account .select2-container .select2-selection--single,
.woocommerce-account .select2-container .select2-selection--multiple {
	border: 1px solid #D1D5DC !important;
	border-radius: 10px !important;
	height: 44px;
	display: flex;
	align-items: center;
	padding: 0 36px 0 16px;
	box-sizing: border-box;
}
.woocommerce-account .select2-container--open .select2-selection--single,
.woocommerce-account .select2-container--focus .select2-selection--single {
	border-color: var(--lph-lavender) !important;
	outline: none;
}
.woocommerce-account .select2-container .select2-selection__rendered {
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	padding: 0;
	line-height: normal;
}
.woocommerce-account .select2-container .select2-selection__arrow {
	top: 50%;
	transform: translateY(-50%);
	right: 12px;
}
/* Champs côte-à-côte */
.woocommerce-account .woocommerce-address-fields__field-wrapper {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
}
.woocommerce-account .form-row-first,
.woocommerce-account .form-row-last {
	flex: 1;
	min-width: 180px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
/* Checkbox "Se souvenir de moi" */
.woocommerce-account .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	color: var(--lph-blue);
	cursor: pointer;
}
/* Bouton soumettre */
.woocommerce-account .woocommerce-Button,
.woocommerce-account button.button[type=submit],
.woocommerce-account input[type=submit].button,
.woocommerce-account .woocommerce-Button.wc-forward {
	display: inline-block !important;
	height: 48px;
	padding: 0 32px !important;
	background: var(--lph-green) !important;
	color: #fff !important;
	border: none;
	border-radius: 99px !important;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 16px;
	cursor: pointer;
	text-decoration: none;
	opacity: 1;
	transition: opacity .15s;
	line-height: 48px;
}
.woocommerce-account .woocommerce-Button:hover,
.woocommerce-account button.button[type=submit]:hover,
.woocommerce-account input[type=submit].button:hover { background: var(--lph-lavender) !important; }

/* ── Tableau des commandes ── */
.woocommerce-account .woocommerce-orders-table {
	width: 100%;
	border-collapse: collapse;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
}
.woocommerce-account .woocommerce-orders-table thead th {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #6A7282;
	padding: 0 12px 12px 0;
	border-bottom: 1px solid #E5E7EB;
	text-align: left;
}
.woocommerce-account .woocommerce-orders-table td {
	padding: 14px 12px 14px 0;
	border-bottom: 1px solid #F3F4F6;
	vertical-align: middle;
}
.woocommerce-account .woocommerce-orders-table .button {
	display: inline-block;
	padding: 6px 16px;
	background: var(--lph-lavender);
	color: #fff;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 12px;
	text-decoration: none;
	transition: opacity .15s;
}
.woocommerce-account .woocommerce-orders-table .button:hover { opacity: .85; }

/* ── Titres des sous-pages ── */
.woocommerce-account .woocommerce-MyAccount-content h2 {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 20px;
	color: var(--lph-blue);
	margin: 0 0 24px;
}

/* ── Page Commandes : badges statut ── */
.woocommerce-account .woocommerce-orders-table__cell-order-number a {
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	color: var(--lph-lavender);
	text-decoration: none;
}
.woocommerce-account .woocommerce-orders-table__cell-order-number a:hover { text-decoration: underline; }
.woocommerce-account mark.order-status {
	display: inline-flex;
	align-items: center;
	padding: 3px 10px;
	border-radius: 99px;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 600;
	background: #F3F4F6;
	color: #6A7282;
}
.woocommerce-account mark.status-processing,
.woocommerce-account mark.status-on-hold { background: #FFF7ED; color: #ea580c; }
.woocommerce-account mark.status-completed { background: #ECFDF5; color: #059669; }
.woocommerce-account mark.status-cancelled,
.woocommerce-account mark.status-refunded,
.woocommerce-account mark.status-failed { background: #FEF2F2; color: #dc2626; }
/* Message aucune commande / notices */
.woocommerce-account .woocommerce-Message {
	background: #F9FAFB;
	border: 1.5px solid #E5E7EB;
	border-radius: 12px;
	padding: 24px;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	margin-bottom: 0;
}
.woocommerce-account .woocommerce-Message .button {
	display: inline-block;
	padding: 6px 20px;
	background: var(--lph-lavender);
	color: #fff;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 13px;
	text-decoration: none;
	margin-top: 12px;
}

.woocommerce-column--billing-address{
	margin-bottom:24px;
}

/* ── Page Adresses ── */
.woocommerce-account .woocommerce-Addresses {
	display: flex;
	gap: 24px;
}
.woocommerce-account .woocommerce-Address {
	flex: 1;
	min-width: 0;
	padding: 20px;
	border: 1.5px solid #E5E7EB;
	border-radius: 12px;
}
.woocommerce-account .woocommerce-Address-title.title {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
	padding-bottom: 12px;
	border-bottom: 1px solid #F3F4F6;
}
.woocommerce-account .woocommerce-Address-title h3 {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 15px;
	color: var(--lph-blue);
	margin: 0;
}
.woocommerce-account .woocommerce-Address-title h2 {
	margin-bottom:8px;
}
.woocommerce-account .woocommerce-Address-title .edit {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	color: var(--lph-lavender);
	text-decoration: none;
	font-weight: 500;
	margin:0;
}
.woocommerce-account .woocommerce-Address-title .edit:hover { text-decoration: underline; }
.woocommerce-account .woocommerce-Address address {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	font-style: normal;
	line-height: 22px;
}

/* ── Formulaire Détails du compte ── */
.woocommerce-account .woocommerce-EditAccountForm {
	display: flex;
	flex-wrap: wrap;
	gap: 0 16px;
}
.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
.woocommerce-account .woocommerce-EditAccountForm .form-row-last {
	flex: 1;
	min-width: 160px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
.woocommerce-account .woocommerce-EditAccountForm .form-row-wide,
.woocommerce-account .woocommerce-EditAccountForm .woocommerce-form-row--wide {
	flex: 0 0 100%;
	width: 100%;
}
.woocommerce-account .woocommerce-EditAccountForm fieldset {
	flex: 0 0 100%;
	border: 1px solid #D1D5DC;
	border-radius: 10px;
	padding: 20px;
	margin: 8px 0 16px;
}
.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
	font-family: 'Gliker', sans-serif;
	font-weight: 700;
	font-size: 14px;
	color: var(--lph-blue);
	padding: 0 8px;
}
.woocommerce-account .woocommerce-EditAccountForm fieldset .form-row {
	margin-bottom: 12px;
}
.woocommerce-account .woocommerce-EditAccountForm .clear { display: none; }

.woocommerce-account .form-row label.screen-reader-text{
	clip-path: none;
	height: auto;
	position: relative !important;
	width: auto;
}

/* ── Moyens de paiement ── */
.woocommerce-account .woocommerce-PaymentMethods table {
	width: 100%;
	border-collapse: collapse;
}
.woocommerce-account .woocommerce-PaymentMethods th,
.woocommerce-account .woocommerce-PaymentMethods td {
	padding: 12px 12px 12px 0;
	border-bottom: 1px solid #F3F4F6;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	text-align: left;
}
.woocommerce-account .woocommerce-PaymentMethods th {
	font-family: 'Gliker', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: #6A7282;
}

#account_display_name_description{
	font-size:14px;
}

/* ── Mobile ── */
@media (max-width: 768px) {
	.woocommerce-account .woocommerce {
		flex-direction: column;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation {
		width: 100%;
		position: static;
	}
	.woocommerce-account .woocommerce-MyAccount-content {
		padding: 20px 16px;
	}
	.woocommerce-account .form-row-first,
	.woocommerce-account .form-row-last {
		flex: 0 0 100%;
	}
	.woocommerce-account .woocommerce-Addresses { flex-direction: column; width: calc(100% - 40px) !important;}
	.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
	.woocommerce-account .woocommerce-EditAccountForm .form-row-last { flex: 0 0 100%; }
	.woocommerce-account #customer_login.col2-set { flex-direction: column; }

	
}

/* =============================================================================
   PAGE SE CONNECTER / S'INSCRIRE
   ══════════════════════════════════════════════════════════════════════════ */

/* Deux colonnes login + register */
.woocommerce-account #customer_login.col2-set {
	display: flex;
	align-items: flex-start;
	gap: 48px;
}
.woocommerce-account .u-column1,
.woocommerce-account .u-column2 {
	flex: 1;
	min-width: 0;
}

/* Titres h2 des formulaires (Gliker Bold 20px) */
.woocommerce-account .u-column1 > h2,
.woocommerce-account .u-column2 > h2,
.woocommerce-account .woocommerce-MyAccount-content > h2:first-child {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 30px;
	color: var(--lph-blue);
	margin: 0 0 24px;
}

/* Labels des champs : Gliker Bold 16px */
.woocommerce-account .woocommerce-form-login .form-row label:not(.woocommerce-form__label-for-checkbox),
.woocommerce-account .woocommerce-form-register .form-row label {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.2;
	color: var(--lph-blue);
	margin-bottom: 8px;
	display: block;
}

/* Inputs : fond lavande clair, sans border */
.woocommerce-account .woocommerce-form-login input.input-text,
.woocommerce-account .woocommerce-form-register input.input-text {
	background: rgba(138, 151, 254, 0.2) !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 10px 12px !important;
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	color: var(--lph-blue) !important;
	box-shadow: none !important;
}
.woocommerce-account .woocommerce-form-login input.input-text:focus,
.woocommerce-account .woocommerce-form-register input.input-text:focus {
	border: none !important;
	box-shadow: 0 0 0 2px rgba(138, 151, 254, 0.5) !important;
	outline: none !important;
}

/* Espacement entre champs */
.woocommerce-account .woocommerce-form-login .form-row,
.woocommerce-account .woocommerce-form-register .form-row {
	margin-bottom: 24px;
	padding: 0;
}

/* Ligne rememberme + bouton : flex space-between */
.woocommerce-account .woocommerce-form-login p.form-row:not(.form-row-wide) {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 0;
}

/* Bouton CTA : vert pill 56px */
.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit {
	height: 56px !important;
	padding: 0 32px !important;
	background: #24D26D !important;
	color: #fff !important;
	border: none !important;
	border-radius: 99px !important;
	font-family: Montserrat, sans-serif !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 56px !important;
	cursor: pointer;
	box-shadow: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1);
	transition: opacity .15s;
}
.woocommerce-account .woocommerce-form-login__submit:hover,
.woocommerce-account .woocommerce-form-register__submit:hover { opacity: .88; }

/* Lien mot de passe oublié */
.woocommerce-account .woocommerce-LostPassword {
	margin-top: 0;
}
.woocommerce-account .woocommerce-LostPassword a {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	text-decoration: none;
}
.woocommerce-account .woocommerce-LostPassword a:hover { text-decoration: underline; }

/* Texte info (ex: "Un lien sera envoyé…") */
.woocommerce-account .woocommerce-form-register > p:not(.form-row) {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	color: #6A7282;
	margin-bottom: 16px;
}

.woocommerce-privacy-policy-text{
	font-size:14px;
}
.woocommerce-password-strength{
	font-size:14px;
	font-weight: 400;
	font-family: Montserrat, sans-serif;
	margin-top:4px;
	border-radius: 10px;
	padding:8px;
}
.woocommerce-password-hint{
	font-size:14px;
	font-style: italic;
	color: var(--lph-lavender);
}

/* =============================================================================
   MES COMMANDES (MY ACCOUNT — ORDERS)
   ══════════════════════════════════════════════════════════════════════════ */

/* En-tête de la liste */
.lph-orders-header {
	margin-bottom: 24px;
}
.lph-orders-title {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 24px !important;
	line-height: 1.5 !important;
	color: var(--lph-blue) !important;
	margin: 0 0 8px !important;
}
.lph-orders-desc {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(0,38,137,.7);
	margin: 0;
}

/* Liste des cartes */
.lph-orders-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Carte commande */
.lph-order-card {
	border: 1px solid rgba(0,38,137,.1);
	border-radius: 8px;
	padding: 25px 25px 0;
}

/* Partie haute : numéro + date + badge */
.lph-order-card__top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	padding-bottom: 16px;
}
.lph-order-card__meta {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.lph-order-card__number {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.5;
	color: var(--lph-blue);
}
.lph-order-card__date {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(0,38,137,.6);
}

/* Badge statut */
.lph-order-badge {
	display: inline-block;
	padding: 6px 16px;
	border-radius: 20px;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.5;
	color: #fff;
	white-space: nowrap;
	flex-shrink: 0;
}
.lph-order-badge--completed { background: #24D26D; }
.lph-order-badge--processing,
.lph-order-badge--on-hold   { background: var(--lph-lavender, var(--lph-lavender)); }
.lph-order-badge--cancelled,
.lph-order-badge--failed    { background: #dc2626; }
.lph-order-badge--pending,
.lph-order-badge--refunded  { background: #9CA3AF; }

/* Partie basse : stats + bouton */
.lph-order-card__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-top: 1px solid rgba(0,38,137,.1);
	padding: 16px 0 25px;
	gap: 16px;
}
.lph-order-card__stats {
	display: flex;
	gap: 32px;
}
.lph-order-card__stat {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.lph-order-card__stat-label {
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(0,38,137,.6);
}
.lph-order-card__stat-value {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.5;
	color: var(--lph-blue);
}
.lph-order-card__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 41px;
	padding: 0 24px;
	background: var(--lph-blue);
	color: #fff !important;
	border-radius: 8px;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.5;
	text-decoration: none !important;
	white-space: nowrap;
	transition: opacity .15s;
	flex-shrink: 0;
}
.lph-order-card__btn:hover { opacity: .85; }

/* Vide / Pagination */
.lph-orders-empty {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	color: rgba(0,38,137,.7);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}
.lph-orders-shop-link {
	display: inline-flex;
	align-items: center;
	height: 41px;
	padding: 0 24px;
	background: var(--lph-blue);
	color: #fff !important;
	border-radius: 8px;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 14px;
	text-decoration: none !important;
	transition: opacity .15s;
}
.lph-orders-shop-link:hover { opacity: .85; }
.lph-orders-pagination {
	display: flex;
	justify-content: space-between;
	margin-top: 24px;
}
.lph-orders-pagination__btn {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: var(--lph-blue);
	text-decoration: none;
	transition: opacity .15s;
}
.lph-orders-pagination__btn:hover { opacity: .65; }

/* =============================================================================
   DÉTAIL COMMANDE (VIEW ORDER)
   ══════════════════════════════════════════════════════════════════════════ */

.lph-view-order { display: flex; flex-direction: column; gap: 24px; }

/* En-tête */
.lph-view-order__header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(0,38,137,.1);
}
.lph-view-order__header-left {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.lph-view-order__number {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 24px !important;
	line-height: 1.5 !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
}
.lph-view-order__date {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: rgba(0,38,137,.6);
}

/* Notes */
.lph-view-order__section-title {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	color: var(--lph-blue) !important;
	margin: 0 0 12px !important;
}
.lph-view-order__notes-list {
	list-style: none;
	margin: 0; padding: 0;
	display: flex; flex-direction: column; gap: 8px;
}
.lph-view-order__note {
	background: #F9FAFB;
	border-radius: 8px;
	padding: 12px 16px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.lph-view-order__note-date {
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	color: rgba(0,38,137,.5);
}
.lph-view-order__note-text {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
}
.lph-view-order__note-text p { margin: 0; }

/* Tableau produits WooCommerce dans le détail */
.woocommerce-account .woocommerce-order-details { margin: 0; }
.woocommerce-account .woocommerce-order-details__title {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	color: var(--lph-blue) !important;
	margin: 0 0 16px !important;
}
.woocommerce-account .woocommerce-table--order-details {
	width: 100% !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	border: none !important;
	border-radius: 0 !important;
}
.woocommerce-account .woocommerce-table--order-details thead th {
	font-family: Montserrat, sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: rgba(0,38,137,.6) !important;
	padding: 0 0 10px !important;
	border-bottom: 1px solid rgba(0,38,137,.1) !important;
	text-align: left !important;
}
.woocommerce-account .woocommerce-table--order-details thead th.product-total {
	text-align: right !important;
}
.woocommerce-account .woocommerce-table--order-details tbody td,
.woocommerce-account .woocommerce-table--order-details tfoot th,
.woocommerce-account .woocommerce-table--order-details tfoot td {
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	padding: 10px 0 !important;
	border: none !important;
	border-top: 1px solid rgba(0,38,137,.06) !important;
	color: var(--lph-blue) !important;
	vertical-align: middle !important;
}
.woocommerce-account .woocommerce-table--order-details tbody .product-name a {
	font-weight: 500;
	color: var(--lph-blue);
	text-decoration: none;
}
.woocommerce-account .woocommerce-table--order-details tbody .product-name a:hover {
	text-decoration: underline;
}
.woocommerce-account .woocommerce-table--order-details tbody .product-total,
.woocommerce-account .woocommerce-table--order-details tfoot td {
	text-align: right !important;
}
.woocommerce-account .woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-account .woocommerce-table--order-details tfoot tr:last-child td {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	border-top: 1px solid rgba(0,38,137,.15) !important;
	padding-top: 14px !important;
}

/* Adresses livraison/facturation */
.woocommerce-account .woocommerce-customer-details {
	margin-top: 0;
	max-width: 100%;
	overflow: hidden;
}
/* WC génère un .col2-set avec float — remplacé par un grid */
.woocommerce-account .woocommerce-customer-details .col2-set {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 16px !important;
	max-width: 100% !important;
}
/* Clearfix WC neutralisé — deviendrait un grid item fantôme */
.woocommerce-account .woocommerce-customer-details .col2-set::before,
.woocommerce-account .woocommerce-customer-details .col2-set::after {
	content: none !important;
	display: none !important;
}
/* min-width:0 indispensable : par défaut les grid items ont min-width:auto
   et refusent de rétrécir sous leur min-content, causant le débordement */
.woocommerce-account .woocommerce-customer-details .col-1,
.woocommerce-account .woocommerce-customer-details .col-2 {
	float: none !important;
	width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}
.woocommerce-account .woocommerce-customer-details address {
	background: #F9FAFB;
	border-radius: 8px;
	padding: 16px 20px;
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	font-style: normal;
	line-height: 1.6;
	box-sizing: border-box;
	max-width: 100%;
	overflow-wrap: break-word;
	word-break: break-word;
}
.woocommerce-account .woocommerce-customer-details .woocommerce-column__title {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	color: var(--lph-blue) !important;
	margin: 0 0 8px !important;
}

/* Boutons actions (re-order etc.) */
.woocommerce-account .woocommerce-table--order-details .order-actions-button {
	display: inline-flex;
	align-items: center;
	height: 36px;
	padding: 0 16px;
	background: var(--lph-blue);
	color: #fff !important;
	border-radius: 8px;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 13px;
	text-decoration: none !important;
	transition: opacity .15s;
}
.woocommerce-account .woocommerce-table--order-details .order-actions-button:hover { opacity: .85; }

/* Mobile */
@media (max-width: 768px) {
	.lph-order-card__bottom { flex-wrap: wrap; }
	.lph-orders-pagination { flex-direction: column; gap: 12px; }
	.lph-view-order__header { flex-wrap: wrap; }
	.woocommerce-account .woocommerce-customer-details .col2-set {
		grid-template-columns: 1fr !important;
	}
}

/* =============================================================================
   PAGE COMMANDER (CHECKOUT)
   ══════════════════════════════════════════════════════════════════════════ */

/* Fond de page et conteneur */

.woocommerce-checkout main .woocommerce {
	max-width: 1340px;
	padding-top: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 32px !important;
}

/* Reset des marges WooCommerce sur la colonne gauche */
form.woocommerce-checkout #customer_details,
form.woocommerce-checkout #customer_details .col-1,
form.woocommerce-checkout #customer_details .col-2 {
	margin-top: 0 !important;
	padding-top: 0 !important;
	float: none !important;
	width: 100% !important;
}
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
	margin-top: 0 !important;
}
.woocommerce-billing-fields h3:first-child,
.woocommerce-shipping-fields h3:first-child {
	margin-top: 0 !important;
}

/* Titre de page */
.woocommerce-checkout .entry-title,
.woocommerce-checkout h1.entry-title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 24px;
	color: var(--lph-blue);
	margin-bottom: 32px;
}

/* Layout : formulaires à gauche, résumé à droite */
form.woocommerce-checkout {
	display: grid;
	grid-template-columns: 1fr 395px;
	gap: 0 32px;
	align-items: start;
}
form.woocommerce-checkout #customer_details {
	grid-column: 1;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	gap: 24px;
}
/* #order_review_heading est maintenant à l'intérieur de #order_review (form-checkout.php) */
form.woocommerce-checkout #order_review_heading {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
	display: block !important;
	padding-bottom:24px;
}
form.woocommerce-checkout #order_review {
	grid-column: 2;
	grid-row: 1 / 3;
	position: sticky;
	top: 100px;
	align-self: start;
}

/* Colonnes billing/shipping : empilées verticalement */
form.woocommerce-checkout #customer_details.col2-set {
	display: flex !important;
	flex-direction: column !important;
	gap: 24px;
}
/* Supprime le clearfix WC (::before/::after content:" " display:table) qui deviendrait un flex item */
form.woocommerce-checkout #customer_details.col2-set::before,
form.woocommerce-checkout #customer_details.col2-set::after {
	content: none !important;
	display: none !important;
}

/* Sections billing / shipping / additional : cartes blanches */
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
	background: #fff !important;
	border-radius: 14px !important;
	box-shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px -1px rgba(0,0,0,.1) !important;
	padding: 25px !important;
	margin-top: 0 !important;
}
.woocommerce-additional-fields {
	margin-top: 24px !important;
}

/* Titres de section h3 */
.woocommerce-checkout h3 {
	font-family: Gliker, sans-serif !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	color: var(--lph-blue) !important;
	margin: 0 0 20px !important;
	line-height: 1.3 !important;
}

/* Checkbox "Livrer à une adresse différente" */
.woocommerce-checkout h3#ship-to-different-address {
	display: flex;
	align-items: center;
	margin-bottom: 0;
}
.woocommerce-checkout h3#ship-to-different-address label {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: var(--lph-blue);
	cursor: pointer;
}
.woocommerce-checkout h3#ship-to-different-address input[type=checkbox] {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	accent-color: var(--lph-lavender);
}
.woocommerce-checkout .shipping_address { margin-top: 24px; }

/* Labels */
.woocommerce-checkout .form-row label:not(.woocommerce-form__label-for-checkbox) {
	display: block !important;
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: var(--lph-blue) !important;
	margin-bottom: 6px !important;
	line-height: 1.2 !important;
}
.woocommerce-checkout label abbr {
	color: var(--lph-lavender);
	text-decoration: none;
}

/* Inputs */
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
	width: 100% !important;
	min-height: 44px !important;
	padding: 10px 16px !important;
	border: 1px solid #D1D5DC !important;
	border-radius: 10px !important;
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	color: var(--lph-blue) !important;
	background: #fff !important;
	outline: none !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	transition: border-color .15s !important;
}
.woocommerce-checkout input.input-text::placeholder,
.woocommerce-checkout textarea::placeholder {
	color: #9CA3AF !important;
	opacity: 1 !important;
}
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout textarea:focus {
	border-color: var(--lph-lavender) !important;
	box-shadow: 0 0 0 3px rgba(138,151,254,.12) !important;
}

/* Select2 */
.woocommerce-checkout .select2-container .select2-selection--single {
	border: 1px solid #D1D5DC !important;
	border-radius: 10px !important;
	height: 44px !important;
	display: flex !important;
	align-items: center !important;
	padding: 0 36px 0 16px !important;
	box-sizing: border-box !important;
	box-shadow: none !important;
	outline: none !important;
}
.woocommerce-checkout .select2-container--open .select2-selection--single,
.woocommerce-checkout .select2-container--focus .select2-selection--single {
	border-color: var(--lph-lavender) !important;
	outline: none !important;
}
.woocommerce-checkout .select2-container .select2-selection__rendered {
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	color: var(--lph-blue) !important;
	padding: 0 !important;
	line-height: normal !important;
}
.woocommerce-checkout .select2-container .select2-selection__arrow {
	top: 50% !important;
	transform: translateY(-50%) !important;
	right: 12px !important;
}

/* Champs côte-à-côte */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper {
	gap: 0 16px;
}
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
	flex: 1 !important;
	min-width: 150px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-end !important;
	float: none !important;
	width: auto !important;
	overflow: visible !important;
}
.woocommerce-checkout .form-row-wide {
	flex: 0 0 100%;
	width: 100%;
}
.woocommerce-checkout .form-row {
	margin-bottom: 16px !important;
	padding: 0 !important;
}
.woocommerce-checkout .clear { display: none; }

.checkout-inline-error-message{
	font-size:12px !important;
	margin:4px 0 0 8px;
	font-style: italic;
}

/* Résumé commande — wrapper */
.woocommerce-checkout-review-order {
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px -1px rgba(0,0,0,.1);
	padding: 16px 25px 25px;
	border-top: 1px solid #F3F4F6;
}

/* Liste des produits (flex) */
.lph-order-products {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 16px;
}

/* Ligne produit */
.lph-order-product {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 16px;
}

/* Image produit */
.lph-order-product__img {
	flex-shrink: 0;
	width: 64px;
	height: 64px;
	border-radius: 10px;
	overflow: hidden;
}
.lph-order-product__img img {
	width: 64px;
	height: 64px;
	object-fit: cover;
	display: block;
}

/* Infos produit */
.lph-order-product__info {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.lph-order-product__name {
	font-family: Montserrat, sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.4;
	color: var(--lph-blue);
}
.lph-order-product__info .wc-item-meta,
.lph-order-product__info dl.variation {
	margin: 0;
	padding: 0;
}
.lph-order-product__info .wc-item-meta dt,
.lph-order-product__info dl.variation dt {
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 12px;
	color: #6A7282;
	display: inline;
}
.lph-order-product__info .wc-item-meta dd,
.lph-order-product__info dl.variation dd {
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 12px;
	color: #6A7282;
	display: inline;
	margin: 0;
}
.lph-order-product__qty {
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.35;
	color: #6A7282;
}

/* Prix produit */
.lph-order-product__price {
	flex-shrink: 0;
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.4;
	color: var(--lph-blue);
	text-align: right;
	white-space: nowrap;
}

/* Wrapper AJAX — contient produits + table totaux */
.woocommerce-checkout-review-order-table {
	display: block;
}

/* Tableau des totaux */
.lph-order-totals-table {
	width: 100% !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	border-radius: 0 !important;
	border: none !important;
	border-top: 1px solid #E5E7EB !important;
	margin-top: 4px;
}
.lph-order-totals-table tfoot tr th,
.lph-order-totals-table tfoot tr td {
	padding: 6px 0 !important;
	border: none !important;
	border-top: none !important;
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	vertical-align: middle !important;
}
.lph-order-totals-table tfoot tr th {
	font-weight: 400 !important;
	color: var(--lph-blue) !important;
}
.lph-order-totals-table tfoot tr td {
	font-weight: 400 !important;
	color: var(--lph-blue) !important;
	text-align: right !important;
}
.lph-order-totals-table tr.cart-subtotal th,
.lph-order-totals-table tr.cart-subtotal td {
	padding-top: 14px !important;
}
.lph-order-totals-table tr.order-total th,
.lph-order-totals-table tr.order-total td {
	font-weight: 700 !important;
	font-size: 16px !important;
	color: var(--lph-blue) !important;
	border-top: 1px solid #E5E7EB !important;
	border-bottom: none !important;
	padding-top: 14px !important;
	padding-bottom: 4px !important;
}
/* Remise coupon appliqué — valeur en vert */
.lph-order-totals-table tr.cart-discount td {
	color: #16a34a !important;
}

/* Formulaire coupon — ligne dans le résumé */
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .checkout_coupon.woocommerce-form-coupon {
	display: none !important;
}
.lph-coupon-checkout-row td {
	padding: 10px 0 6px !important;
}
.lph-coupon-checkout-row .lph-coupon-row {
	display: flex;
	gap: 8px;
}
.lph-coupon-checkout-row .lph-coupon-input {
	flex: 1;
	height: 40px !important;
	min-height: 40px !important;
	padding: 0 12px !important;
	border: 1px solid #D1D5DC !important;
	border-radius: 10px !important;
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	color: var(--lph-blue) !important;
	background: #fff !important;
	box-shadow: none !important;
	outline: none !important;
	box-sizing: border-box !important;
}
.lph-coupon-checkout-row .lph-coupon-input::placeholder {
	color: #9CA3AF;
}
.lph-coupon-checkout-row .lph-coupon-input:focus {
	border-color: var(--lph-lavender) !important;
}
.lph-coupon-checkout-row .lph-coupon-submit {
	height: 40px;
	padding: 0 16px;
	border: 2px solid var(--lph-lavender);
	border-radius: 10px;
	background: transparent;
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: var(--lph-lavender);
	cursor: pointer;
	white-space: nowrap;
	transition: background .15s, color .15s;
}
.lph-coupon-checkout-row .lph-coupon-submit:hover {
	background: var(--lph-lavender);
	color: #fff;
}
.lph-coupon-checkout-row .lph-coupon-msg {
	display: block;
	margin-top: 6px;
	font-family: Montserrat, sans-serif;
	font-size: 12px;
}
.lph-coupon-checkout-row .lph-coupon-msg--ok  { color: #16a34a; }
.lph-coupon-checkout-row .lph-coupon-msg--error { color: #dc2626; }

/* Méthodes de paiement */
#payment.woocommerce-checkout-payment {
	margin-top: 24px;
	background: #fff !important;
	border-radius: 14px !important;
	box-shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px -1px rgba(0,0,0,.1) !important;
	padding: 25px !important;
}
#payment.woocommerce-checkout-payment h3 {
	margin-bottom: 16px !important;
}
.woocommerce-checkout .wc_payment_methods {
	list-style: none !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 8px;
	border: none !important;
}
.woocommerce-checkout .wc_payment_methods li {
	border: 1px solid #E5E7EB !important;
	border-radius: 10px !important;
	padding: 12px 16px !important;
	transition: background .15s, border-color .15s;
}
.woocommerce-checkout .wc_payment_methods li:has(input[type=radio]:checked) {
	background: #F0FDF4 !important;
	border: 2px solid var(--lph-lavender) !important;
}
.woocommerce-checkout .wc_payment_methods label {
	display: flex !important;
	align-items: center !important;
	gap: 10px;
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: var(--lph-blue) !important;
	cursor: pointer;
	line-height: 1.2 !important;
}
.woocommerce-checkout .wc_payment_methods input[type=radio] {
	accent-color: var(--lph-lavender);
	width: 16px !important;
	height: 16px !important;
	flex-shrink: 0;
}
.woocommerce-checkout .payment_box {
	background: #F9FAFB !important;
	border-radius: 10px !important;
	padding: 12px 16px !important;
	margin-top: 10px;
	font-family: Montserrat, sans-serif !important;
	font-size: 13px !important;
	color: #6A7282 !important;
}

/* Bouton commander */
#place_order {
	display: block !important;
	float: none !important;
	width: 100% !important;
	height: 56px !important;
	background: var(--lph-lavender) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 99px !important;
	font-family: Montserrat, sans-serif !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	cursor: pointer;
	box-shadow: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1) !important;
	transition: opacity .15s;
	margin-top: 20px !important;
	box-sizing: border-box !important;
}
#place_order:hover { opacity: .85; }

/* Mentions CGV */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	color: #6A7282;
	margin-bottom: 12px;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a {
	color: var(--lph-lavender);
	text-decoration: none;
}

/* Pas de fond ni breadcrumb sur la page commander */
.woocommerce-checkout .page-categorie-header,
.woocommerce-checkout .lph-breadcrumb,
.woocommerce-checkout .yoast-breadcrumbs {
	display: none !important;
}

/* ── Mobile ── */
@media (max-width: 768px) {
	form.woocommerce-checkout {
		grid-template-columns: 1fr;
	}
	form.woocommerce-checkout #customer_details {
		grid-column: 1;
		grid-row: 1;
	}
	form.woocommerce-checkout #order_review {
		grid-column: 1;
		grid-row: 2;
		position: static;
	}
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields {
		padding: 20px 16px;
	}
	#payment.woocommerce-checkout-payment { padding: 20px 16px; }
	.woocommerce-checkout .form-row-first,
	.woocommerce-checkout .form-row-last { flex: 0 0 100%; }
}

/* =============================================================================
   PAGE 404
   ══════════════════════════════════════════════════════════════════════════ */

.lph-404-section {
	background: var(--lph-lavender, var(--lph-lavender));
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 48px;
	padding: 80px 24px;
	min-height: calc(100vh - 80px);
	box-sizing: border-box;
}

/* Textes héro */
.lph-404-hero {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	text-align: center;
}
.lph-404-number {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: clamp(100px, 15vw, 180px);
	line-height: 1;
	color: #fff;
	margin: 0;
}
.lph-404-title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: clamp(28px, 4vw, 48px);
	line-height: 1;
	color: var(--lph-blue);
	margin: 0;
}

/* Carte */
.lph-404-card {
	background: #fff;
	border-radius: 24px;
	box-shadow: 0 8px 10px -6px rgba(0,0,0,.1), 0 20px 25px -5px rgba(0,0,0,.1);
	width: 100%;
	max-width: 640px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	padding: 48px;
	box-sizing: border-box;
	text-align: center;
}

/* Image plante */
.lph-404-card__image {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
}
.lph-404-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Texte */
.lph-404-card__text {
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5;
	color: var(--lph-blue);
	margin: 0;
}

/* Bouton */
.lph-404-card__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 56px;
	padding: 0 48px;
	background: var(--lph-green);
	color: #fff !important;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.5;
	text-decoration: none !important;
	transition: opacity .15s;
	white-space: nowrap;
}
.lph-404-card__btn:hover { background: var(--lph-lavender); }

@media (max-width: 768px) {
	.lph-404-section { padding: 60px 16px; gap: 32px; }
	.lph-404-card { padding: 32px 24px; }
	.lph-404-card__btn { padding: 0 32px; }
}

/* ════════════════════════════════════════════════════════════
   BLOG LISTING
   ═════════════════════════════════════════════════════════ */

.lph-blog-page {
	display: flex;
	flex-direction: column;
	width: 100%;
}

/* ── Tag badge ─────────────────────────────────────────────── */
.lph-blog-tag {
	display: inline-block;
	align-self: flex-start;
	border-radius: 99px;
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 12px;
	padding: 4px 12px;
	line-height: 1.4;
	white-space: nowrap;
	border: 2px solid transparent;
}

/* Outlined — cartes articles (color + border-color via inline style) */
.lph-blog-tag--outline {
	background: transparent !important;
}

/* ── HEADER LAVANDE ────────────────────────────────────────── */
.lph-blog-header {
	width: 100%;
	background: var(--lph-lavender);
	padding: 0;
	min-height: 300px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.lph-blog-header__inner {
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
	padding: 80px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	text-align: center;
}

.lph-blog-header__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: clamp(40px, 5vw, 64px);
	line-height: 1.5;
	color: #fff;
	margin: 0;
}

.lph-blog-header__desc {
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 28px;
	color: var(--lph-blue);
	margin: 0;
}

/* ── FILTRES ───────────────────────────────────────────────── */
.lph-blog-filters {
	top: 0;
	z-index: 50;
	background: #fff;
	box-shadow: 0 1px 2px -1px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.1);
}

.lph-blog-filters__inner {
	margin: 0 auto;
	padding: 24px 80px;
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.lph-blog-filters__cats {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	flex: 1;
}

.lph-blog-filter-btn {
	display: inline-flex;
	align-items: center;
	height: 44px;
	padding: 0 20px;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue) !important;
	text-decoration: none !important;
	border: 2px solid var(--lph-lavender);
	background: transparent;
	transition: background .15s, border-color .15s, color .15s;
	white-space: nowrap;
}
.lph-blog-filter-btn:hover {
	background: rgba(138,151,254,.1);
}
.lph-blog-filter-btn--active {
	background: var(--lph-blue) !important;
	border-color: var(--lph-blue) !important;
	color: #fff !important;
}

/* Recherche */
.lph-blog-search {
	display: flex;
	align-items: center;
	gap: 8px;
	border: 2px solid var(--lph-lavender);
	border-radius: 99px;
	background: #fff;
	padding: 0 16px;
	height: 44px;
	flex-shrink: 0;
}
.lph-blog-search__icon { flex-shrink: 0; }
.lph-blog-search__input {
	border: none !important;
	background: transparent !important;
	outline: none !important;
	box-shadow: none !important;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	color: var(--lph-blue);
	padding: 0;
	height: 100%;
	width: 220px;
}
.lph-blog-search__input::placeholder { color: rgba(10,10,10,.5); }

/* ── HERO — carte article mis en avant ─────────────────────── */
.lph-blog-hero-wrap {
	padding: 56px 24px;
	width: 100%;
	box-sizing: border-box;
	background-color: #fafafa;
}

.lph-blog-hero {
	max-width: 1280px;
	margin: 0 auto;
	background: rgba(138, 151, 254, .2);
	border-radius: 24px;
	padding: 48px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px;
	align-items: center;
}

.lph-blog-hero__img-wrap {
	display: block;
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 576 / 480;
	box-shadow: 0 25px 50px -12px rgba(0,0,0,.25);
}
.lph-blog-hero__img-placeholder {
	aspect-ratio: 576 / 480;
	border-radius: 16px;
	background: rgba(138,151,254,.2);
	box-shadow: 0 25px 50px -12px rgba(0,0,0,.1);
}

.lph-blog-hero__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s;
}
.lph-blog-hero__img-wrap:hover .lph-blog-hero__img { transform: scale(1.03); }

.lph-blog-hero__content {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.lph-blog-hero__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: clamp(28px, 3vw, 40px);
	line-height: 1.5;
	color: var(--lph-blue);
	margin: 0;
}
.lph-blog-hero__title a {
	color: inherit !important;
	text-decoration: none !important;
}
.lph-blog-hero__title a:hover { opacity: .8; }

.lph-blog-hero__excerpt {
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 28px;
	color: var(--lph-blue);
	margin: 0;
}

.lph-blog-hero__meta {
	display: flex;
	align-items: center;
	gap: 24px;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue);
}
.lph-blog-hero__meta svg { flex-shrink: 0; }
.lph-blog-hero__meta > span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.lph-blog-hero__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 48px;
	padding: 0 28px;
	border-radius: 99px;
	background: var(--lph-lavender);
	color: #fff !important;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	text-decoration: none !important;
	transition: opacity .15s;
	align-self: flex-start;
}
.lph-blog-hero__btn:hover { opacity: .85; }

/* ── GRILLE ARTICLES ───────────────────────────────────────── */
.lph-blog-grid-section {
	max-width: 1280px;
	margin: 0 auto;
	padding: 64px 80px 0;
	width: 100%;
	box-sizing: border-box;
}

.lph-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}

/* Card */
.lph-blog-card {
	background: #fff;
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 2px 4px -2px rgba(0,0,0,.1), 0 4px 6px -1px rgba(0,0,0,.1);
	display: flex;
	flex-direction: column;
	transition: transform .2s, box-shadow .2s;
}
.lph-blog-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 16px -4px rgba(0,0,0,.15);
}

.lph-blog-card__img-wrap {
	display: block;
	overflow: hidden;
	aspect-ratio: 405 / 192;
}
.lph-blog-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .3s;
}
.lph-blog-card__img-wrap:hover .lph-blog-card__img { transform: scale(1.04); }

.lph-blog-card__img-placeholder {
	aspect-ratio: 405 / 192;
	background: #F3F4F6;
}

.lph-blog-card__body {
	padding: 24px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.lph-blog-card__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 30px;
	color: var(--lph-blue);
	margin: 0;
}
.lph-blog-card__title a {
	color: inherit !important;
	text-decoration: none !important;
}
.lph-blog-card__title a:hover { opacity: .8; }

.lph-blog-card__excerpt {
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: #4A5565;
	margin: 0;
	flex: 1;
}

.lph-blog-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding-top: 12px;
	margin-top: auto;
}

.lph-blog-card__meta {
	display: flex;
	align-items: center;
	gap: 6px;
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: #6A7282;
}
.lph-blog-card__meta svg { flex-shrink: 0; }

.lph-blog-card__link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 20px;
	color: var(--lph-lavender) !important;
	text-decoration: none !important;
	white-space: nowrap;
	flex-shrink: 0;
}
.lph-blog-card__link:hover { opacity: .75; }

/* Voir plus */
.lph-blog-more {
	display: flex;
	justify-content: center;
	padding: 48px 0 64px;
}

.lph-blog-more-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 56px;
	padding: 0 36px;
	border-radius: 99px;
	background: rgba(138,151,254,.3);
	color: var(--lph-blue) !important;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 24px;
	text-decoration: none !important;
	box-shadow: 0 4px 6px -4px rgba(0,0,0,.1), 0 10px 15px -3px rgba(0,0,0,.1);
	transition: opacity .15s;
	border: none;
}
.lph-blog-more-btn:hover { background: var(--lph-blue) !important; color:#fff !important; }
.lph-blog-more-btn.is-loading {
	opacity: .6;
	cursor: wait;
	pointer-events: none;
}

/* ── LES PLUS LUS ──────────────────────────────────────────── */
.lph-blog-popular {
	background: var(--lph-lavender);
	padding: 64px 0;
	width: 100%;
}

.lph-blog-popular__inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 80px;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.lph-blog-popular__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 40px;
	line-height: 60px;
	color: #fff;
	margin: 0;
}

.lph-blog-popular__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

/* Popular card */
.lph-blog-popular-card {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	text-decoration: none !important;
	box-shadow: 0 4px 6px -4px rgba(0,0,0,.1), 0 10px 15px -3px rgba(0,0,0,.1);
	transition: transform .2s, box-shadow .2s;
}
.lph-blog-popular-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 20px rgba(0,0,0,.15);
}

.lph-blog-popular-card__img-wrap {
	overflow: hidden;
	height: 128px;
}
.lph-blog-popular-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .3s;
}
.lph-blog-popular-card:hover .lph-blog-popular-card__img { transform: scale(1.04); }

.lph-blog-popular-card__img-placeholder {
	height: 128px;
	background: rgba(138,151,254,.2);
}

.lph-blog-popular-card__body {
	padding: 16px 16px 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex: 1;
}

.lph-blog-popular-card__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue);
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.lph-blog-popular-card__meta {
	display: flex;
	align-items: center;
	gap: 4px;
	font-family: Montserrat, sans-serif;
	font-size: 14px;
	line-height: 20px;
	color: #6A7282;
	margin-top: auto;
	padding-bottom: 16px;
}

/* ── RESPONSIVE ────────────────────────────────────────────── */
@media (max-width: 1200px) {
	.lph-blog-header__inner,
	.lph-blog-filters__inner,
	.lph-blog-hero-wrap,
	.lph-blog-grid-section,
	.lph-blog-popular__inner,
	.page-categorie-header h1 { padding-left: 40px; padding-right: 40px; }
}

@media (max-width: 1024px) {
	.lph-blog-grid { grid-template-columns: repeat(2, 1fr); }
	.lph-blog-popular__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
	.lph-blog-header { min-height: auto; }
	.lph-blog-header__inner { padding: 48px 24px; }
	.page-categorie-header h1 { padding: 0 24px; }
	.page-categorie-header .lph-page-subtitle { margin: 0 auto !important; padding: 0 12px !important;}
	.lph-blog-header__desc { font-size: 16px; }

	.lph-blog-filters__inner { padding: 16px 24px; }
	.lph-blog-search__input { width: 140px; }
	.lph-blog-filter-btn { height: 38px; font-size: 14px; padding: 0 14px; }

	.lph-blog-hero-wrap { margin-top: 32px; padding: 0 24px; }
	.lph-blog-hero { padding: 24px; grid-template-columns: 1fr; gap: 24px; }
	.lph-blog-hero__title { font-size: clamp(22px, 5vw, 32px); }
	.lph-blog-hero__excerpt { font-size: 15px; }
	.lph-blog-hero__meta { font-size: 14px; gap: 16px; }

	.lph-blog-grid-section { padding: 32px 24px 0; }
	.lph-blog-grid { grid-template-columns: 1fr; gap: 20px; }

	.lph-blog-popular { padding: 48px 0; }
	.lph-blog-popular__inner { padding: 0 24px; }
	.lph-blog-popular__title { font-size: 28px; line-height: 1.4; }
	.lph-blog-popular__grid { grid-template-columns: 1fr 1fr; gap: 16px; }
}

@media (max-width: 480px) {
	.lph-blog-header__inner { padding: 40px 16px; }
	.page-categorie-header h1 { padding: 0 16px 16px; }
	.lph-blog-filters__inner { padding: 12px 16px; }
	.lph-blog-filters__cats { display: none; }
	.lph-blog-hero-wrap { padding: 0 16px; }
	.lph-blog-popular__inner { padding: 0 16px; }
	.lph-blog-popular__grid { grid-template-columns: 1fr; }
	.lph-blog-grid-section { padding: 24px 16px 0; }
}

/* ════════════════════════════════════════════════════════════
   SINGLE ARTICLE
   ═════════════════════════════════════════════════════════ */

/* ── Hero ──────────────────────────────────────────────────── */
.lph-article-hero {
	background: #fff;
	padding: 48px 0 0;
}
.lph-article-hero__inner {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.lph-article-breadcrumb { font-family: Montserrat, sans-serif; font-size: 14px; }
.lph-article-breadcrumb a,
.lph-article-breadcrumb span { color: var(--lph-lavender) !important; text-decoration: none; }
.lph-article-tag {
	display: inline-block;
	align-self: flex-start;
	padding: 8px 20px;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 20px;
	color: #fff;
}
.lph-article-title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: clamp(32px, 4vw, 48px);
	line-height: 1.25;
	color: var(--lph-blue);
	margin: 0;
}
.lph-article-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px 20px;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue);
}
.lph-article-meta svg { flex-shrink: 0; }
.lph-article-meta > span { display: inline-flex; align-items: center; gap: 6px; }
.lph-article-share {
	display: flex;
	align-items: center;
	gap: 8px;
}
.lph-share-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--lph-lavender);
	color: #fff !important;
	font-family: Montserrat, sans-serif;
	font-weight: 500;
	font-size: 16px;
	text-decoration: none !important;
	border: none;
	cursor: pointer;
	transition: opacity .15s;
	flex-shrink: 0;
}
.lph-share-btn:hover { opacity: .8; }

.lph-share-btn--copy { position: relative; }
.lph-share-btn--copy::after {
	content: 'Lien copié';
	position: absolute;
	bottom: calc(100% + 8px);
	left: 50%;
	transform: translateX(-50%);
	background: var(--lph-blue);
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 500;
	white-space: nowrap;
	padding: 4px 10px;
	border-radius: 6px;
	pointer-events: none;
	opacity: 0;
	transition: opacity .2s;
}
.lph-share-btn--copy.is-copied::after { opacity: 1; }
.lph-article-hero__img-wrap {
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 1120 / 480;
	margin-top: 8px;
}
.lph-article-hero__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ── Layout 2 colonnes ─────────────────────────────────────── */
.lph-article-layout {
	max-width: 1280px;
	margin: 48px auto 0;
	padding: 0 80px;
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 64px;
	align-items: start;
	box-sizing: border-box;
}

/* ── TOC ───────────────────────────────────────────────────── */
.lph-toc {
	background: rgba(138, 151, 254, .1);
	border-radius: 12px;
	padding: 24px 32px;
	margin-bottom: 36px;
}
.lph-toc__heading {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 20px;
	line-height: 28px;
	color: var(--lph-blue);
	margin: 0 0 16px;
}
.lph-toc__list {
	margin: 0;
	padding: 0 0 0 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.lph-toc__list li { margin: 0; }
.lph-toc__list a {
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 15px;
	line-height: 22px;
	color: var(--lph-lavender) !important;
	text-decoration: none;
	transition: opacity .15s;
}
.lph-toc__list a:hover { opacity: .75; text-decoration: underline; }

/* ── Corps de l'article ────────────────────────────────────── */
.lph-article-body { font-family: Montserrat, sans-serif; }

.lph-article-body h2 {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 30px;
	line-height: 36px;
	color: var(--lph-blue);
	margin: 40px 0 16px;
	scroll-margin-top: 100px;
}
.lph-article-body h3 {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 22px;
	line-height: 30px;
	color: var(--lph-blue);
	margin: 28px 0 12px;
}
.lph-article-body p {
	font-size: 18px;
	line-height: 1.625;
	color: #333;
	margin: 0 0 20px;
}
.lph-article-body ul,
.lph-article-body ol {
	font-size: 18px;
	line-height: 1.625;
	color: #333;
	margin: 0 0 20px;
	padding-left: 28px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.lph-article-body li { margin: 0; }
.lph-article-body strong { font-weight: 700; color: var(--lph-blue); }
.lph-article-body a { color: var(--lph-lavender); text-decoration: underline; }
.lph-article-body img {
	max-width: 100%;
	border-radius: 12px;
	margin: 8px 0;
}
.lph-article-body figure { margin: 24px 0; }
.lph-article-body figcaption {
	font-size: 13px;
	color: #6A7282;
	text-align: center;
	margin-top: 8px;
}

/* Tables dans le contenu */
.lph-article-body table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: 2px solid var(--lph-lavender);
	border-radius: 16px;
	overflow: hidden;
	margin: 24px 0;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
}
.lph-article-body table thead tr {
	background: rgba(138, 151, 254, .2);
}
.lph-article-body table th,
.lph-article-body table td { border: none; }
.lph-article-body table th {
	font-weight: 700;
	color: var(--lph-blue);
	padding: 14px 20px;
	text-align: left;
	border-bottom: 1px solid rgba(138, 151, 254, .3);
}
.lph-article-body table td {
	padding: 14px 20px;
	color: #0A0A0A;
	border-top: 1px solid rgba(138, 151, 254, .3);
}
.lph-article-body table tbody tr:first-child td { border-top: none; }
.lph-article-body table td:not(:first-child) { background: rgba(138, 151, 254, .05); }

/* Blocs callout */
.lph-callout {
	border-radius: 10px;
	padding: 20px 24px 20px 28px;
	margin: 24px 0;
	display: flex;
	gap: 14px;
	align-items: flex-start;
}
.lph-callout--info {
	background: rgba(138, 151, 254, .1);
	border-left: 4px solid var(--lph-lavender);
}
.lph-callout--fact {
	background: var(--lph-blue);
	border-left: 8px solid #24D26D;
	border-radius: 16px;
}
.lph-callout__icon { font-size: 22px; flex-shrink: 0; line-height: 1.5; }
.lph-callout__heading {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 24px !important;
	line-height: 28px !important;
	color: #fff !important;
	margin: 0 0 8px !important;
}
.lph-callout__text {
	font-family: Montserrat, sans-serif;
	font-style: italic;
	font-size: 16px !important;
	line-height: 26px !important;
	margin: 0 !important;
}
.lph-callout--info .lph-callout__text { color: var(--lph-blue); font-style: italic; }
.lph-callout--fact .lph-callout__text { color: #fff; font-style: normal; }
.lph-callout--fact { flex-direction: column; }

/* CTA button block */
.lph-cta-block {
	display: flex;
	justify-content: center;
	padding: 32px 0;
}
.lph-cta-block__btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	height: 56px;
	padding: 0 36px;
	background: var(--lph-lavender);
	color: #fff !important;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 16px;
	text-decoration: none !important;
	transition: opacity .15s;
}
.lph-cta-block__btn:hover { opacity: .85; }

/* Formats de consommation */
.lph-formats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
	margin: 24px 0;
}
.lph-formats__card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 20px 16px;
	background: #fff;
	border: 2px solid rgba(138, 151, 254, .3);
	border-radius: 16px;
	text-align: center;
	box-shadow: 0 2px 4px -2px rgba(0,0,0,.06);
}
.lph-formats__icon-wrap { margin: 0; }
.lph-formats__icon-wrap img,
.lph-formats__icon { width: 64px; height: 64px; object-fit: contain; }
.lph-formats__card > * { margin-block: 0 !important; }
.lph-formats > .wp-block-group { margin-block: 0 !important; }
.lph-formats__card { position: relative; cursor: pointer; transition: border-color .2s, box-shadow .2s, transform .2s; }
.lph-formats__card:hover { border-color: var(--lph-lavender); box-shadow: 0 8px 24px -4px rgba(138,151,254,.3); transform: translateY(-3px); }
.lph-formats__card .wp-block-image a { display: contents; }
.lph-formats__name {
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: var(--lph-blue);
}
.lph-formats__sub {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	color: rgba(0, 38, 137, .7);
}

/* ── Sidebar ───────────────────────────────────────────────── */
.lph-article-sidebar {
	position: sticky;
	top: 100px;
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.lph-sidebar-widget {
	background: #fff;
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 4px 6px -4px rgba(0,0,0,.1), 0 10px 15px -3px rgba(0,0,0,.1);
}
.lph-sidebar-widget__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 18px;
	line-height: 26px;
	color: var(--lph-blue);
	margin: 0 0 16px;
}
/* Author */
.lph-sidebar-author {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 10px;
}
.lph-sidebar-author__avatar {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--lph-lavender);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.lph-sidebar-author__name {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 15px;
	line-height: 22px;
	color: var(--lph-blue);
	margin: 0;
}
.lph-sidebar-author__bio {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	line-height: 20px;
	color: #666;
	margin: 0;
}
/* Products */
.lph-sidebar-products__list { display: flex; flex-direction: column; gap: 12px; }
.lph-sidebar-product {
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none !important;
	padding: 8px 0;
	border-bottom: 1px solid rgba(138, 151, 254, .15);
}
.lph-sidebar-product:last-child { border-bottom: none; }
.lph-sidebar-product__img { width: 64px; height: 64px; flex-shrink: 0; border-radius: 8px; overflow: hidden; }
.lph-sidebar-product__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lph-sidebar-product__info { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.lph-sidebar-product__name {
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 13px;
	color: var(--lph-blue);
}
.lph-sidebar-product__price {
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 14px;
	color: var(--lph-lavender);
}
.lph-sidebar-product__btn {
	padding: 4px 12px;
	background: var(--lph-lavender);
	color: #fff !important;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 500;
	font-size: 12px;
	flex-shrink: 0;
}
/* Related sidebar */
.lph-sidebar-related__list { display: flex; flex-direction: column; gap: 14px; }
.lph-sidebar-related-item {
	display: flex;
	gap: 12px;
	align-items: center;
	text-decoration: none !important;
}
.lph-sidebar-related-item__img {
	width: 64px;
	height: 64px;
	flex-shrink: 0;
	border-radius: 10px;
	overflow: hidden;
}
.lph-sidebar-related-item__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lph-sidebar-related-item__img--placeholder { background: rgba(138, 151, 254, .15); }
.lph-sidebar-related-item__info { flex: 1; display: flex; flex-direction: column; gap: 4px; }
.lph-sidebar-related-item__title {
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 13px;
	line-height: 18px;
	color: var(--lph-blue);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.lph-sidebar-related-item__meta {
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	color: #6A7282;
}

/* ── Section "Vous aimerez aussi" ──────────────────────────── */
.lph-article-related {
	background: #fff;
	padding: 64px 0;
}
.lph-article-related__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 80px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
}
.lph-article-related__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 36px;
	line-height: 40px;
	color: var(--lph-blue);
	margin: 0;
	text-align: center;
}
.lph-article-related__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	width: 100%;
}
.lph-related-card {
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 2px 4px -2px rgba(0,0,0,.1), 0 4px 6px -1px rgba(0,0,0,.1);
	display: flex;
	flex-direction: column;
	transition: transform .2s, box-shadow .2s;
}
.lph-related-card:hover { transform: translateY(-4px); box-shadow: 0 8px 16px -4px rgba(0,0,0,.15); }
.lph-related-card__img-wrap {
	display: block;
	position: relative;
	overflow: hidden;
	aspect-ratio: 352 / 192;
}
.lph-related-card__img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s; }
.lph-related-card__img-wrap:hover .lph-related-card__img { transform: scale(1.04); }
.lph-related-card__img-placeholder { width: 100%; aspect-ratio: 352/192; background: rgba(138,151,254,.15); }
.lph-related-card__tag {
	position: absolute;
	top: 16px;
	left: 16px;
	padding: 4px 12px;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 12px;
	color: #fff;
}
.lph-related-card__body { padding: 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.lph-related-card__title {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 24px;
	color: var(--lph-blue);
	margin: 0;
}
.lph-related-card__title a { color: inherit !important; text-decoration: none !important; }
.lph-related-card__excerpt {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	line-height: 20px;
	color: #666;
	margin: 0;
	flex: 1;
}
.lph-related-card__footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 10px;
	border-top: 1px solid rgba(0,38,137,.08);
	margin-top: auto;
}
.lph-related-card__meta { font-family: Montserrat, sans-serif; font-size: 12px; color: #6A7282; }
.lph-related-card__link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 12px;
	color: var(--lph-lavender);
}
.lph-article-related__cta-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 56px;
	padding: 0 36px;
	background: var(--lph-lavender);
	color: #fff !important;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 16px;
	text-decoration: none !important;
	transition: opacity .15s;
}
.lph-article-related__cta-btn:hover { opacity: .85; }

/* ── Commentaires ──────────────────────────────────────────── */
.lph-article-comments {
	background: #fff;
	padding: 64px 0;
}
.lph-article-comments__inner {
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 80px;
}
.lph-article-comments__heading {
	font-family: Gliker, sans-serif;
	font-weight: 700;
	font-size: 36px;
	line-height: 40px;
	color: var(--lph-blue);
	margin: 0 0 40px;
}
.lph-comment-form-wrap { margin: 0; }
.lph-comment-form { display: flex; flex-direction: column; gap: 16px; }
.lph-comment-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.lph-comment-field { display: flex; flex-direction: column; }
.lph-comment-field--full { grid-column: 1 / -1; }
.lph-comment-input,
.lph-comment-textarea {
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	color: var(--lph-blue);
	background: #fff;
	border: 2px solid rgba(138, 151, 254, .3);
	outline: none;
	transition: border-color .15s;
}
.lph-comment-input {
	height: 52px;
	border-radius: 99px;
	padding: 0 24px;
}
.lph-comment-textarea {
	min-height: 160px;
	border-radius: 24px;
	padding: 16px 24px;
	resize: vertical;
}
.lph-comment-input::placeholder,
.lph-comment-textarea::placeholder { color: rgba(10,10,10,.5); }
.lph-comment-input:focus,
.lph-comment-textarea:focus { border-color: var(--lph-lavender); }
.lph-comment-submit-wrap { display: flex; justify-content: flex-start; }
.lph-comment-submit {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 48px;
	padding: 0 28px;
	background: var(--lph-lavender);
	color: #fff;
	border: none;
	border-radius: 99px;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 16px;
	cursor: pointer;
	transition: opacity .15s;
}
.lph-comment-submit:hover { opacity: .85; }

/* Existing comments */
.lph-comments__list { display: flex; flex-direction: column; gap: 16px; margin-bottom: 40px; }
.lph-comment {
	display: flex;
	gap: 16px;
	padding: 20px 24px;
	background: rgba(138, 151, 254, .05);
	border-radius: 16px;
}
.lph-comment__avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--lph-lavender);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: #fff;
	flex-shrink: 0;
}
.lph-comment__body { flex: 1; display: flex; flex-direction: column; gap: 8px; }
.lph-comment__header { display: flex; justify-content: space-between; align-items: center; }
.lph-comment__author {
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 16px;
	color: var(--lph-blue);
}
.lph-comment__date {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	color: #666;
}
.lph-comment__text {
	font-family: Montserrat, sans-serif;
	font-size: 15px;
	line-height: 24px;
	color: #333;
}
.lph-comment__text p { margin: 0; }
.lph-comment__reply a {
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 13px;
	color: #24D26D !important;
	text-decoration: none;
}

/* Masquer les labels par défaut */
.lph-comment-form label { display: none; }
.lph-comment-form p.comment-notes { display: none; }

/* ── Responsive ────────────────────────────────────────────── */
@media (max-width: 1200px) {
	.lph-article-layout { padding: 0 40px; }
	.lph-article-related__inner { padding: 0 40px; }
	.lph-article-comments__inner { padding: 0 40px; }
}
@media (max-width: 1024px) {
	.lph-article-layout { grid-template-columns: 1fr; gap: 40px; }
	.lph-article-sidebar { position: static; }
	.lph-article-related__grid { grid-template-columns: repeat(2, 1fr); }
	.lph-formats { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
	.lph-article-hero { padding: 32px 0 0; }
	.lph-article-hero__inner { padding: 0 16px; gap: 16px; }
	.lph-article-title { font-size: clamp(24px, 6vw, 36px); }
	.lph-article-layout { padding: 0 16px; margin-top: 32px; }
	.lph-article-related__inner { padding: 0 16px; }
	.lph-article-related__grid { grid-template-columns: 1fr; }
	.lph-article-comments__inner { padding: 0 16px; }
	.lph-article-comments__heading { font-size: 26px; }
	.lph-comment-row { grid-template-columns: 1fr; }
	.lph-formats { grid-template-columns: repeat(2, 1fr); }
	.lph-article-body h2 { font-size: 24px; }
	.lph-article-body p,
	.lph-article-body ul,
	.lph-article-body ol { font-size: 16px; }
	.lph_blocs_lien--items { flex-wrap: nowrap; overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth; scroll-snap-type: x mandatory; transition: all .2s; -ms-overflow-style: none; max-width: 100%; position: relative; scroll-padding-inline: 0; scrollbar-width: auto; width: 100%; padding-bottom:15px;}
	.lph-product-name{ font-size:16px;}
	.lph-product-footer{ flex-direction: column;}
	.lph-products-scroll-wrapper{ padding: 0;}
}
@media (max-width: 480px) {
	.lph-formats { grid-template-columns: 1fr 1fr; }
	.lph-article-related__title { font-size: 26px; }
}

/* ── Home Hero ──────────────────────────────────────────────────── */
/* ── Hero desktop ── */
.lph-home-hero {
	overflow: hidden !important;
	position: relative !important;
}
.lph-home-hero > .wp-block-cover__inner-container,
.lph-home-hero > .wp-block-cover__background { display: none; }

.lph-hero-edge {
	position: absolute;
	top: 0;
	height: 496px;
	background-repeat: repeat-x;
	pointer-events: none;
}
.lph-hero-edge--left  { left: 0; }
.lph-hero-edge--right { right: 0; }

/* ── Hero mobile : masqué sur desktop ── */
.lph-home-hero--mobile { display: none !important; }
.lph-home-hero--mobile > .wp-block-cover__inner-container,
.lph-home-hero--mobile > .wp-block-cover__background { display: none; }

@media (max-width: 768px) {
	/* Desktop hero masqué sur mobile */
	.lph-home-hero--desktop { display: none !important; }

	/* Mobile hero visible */
	.lph-home-hero--mobile {
		display: block !important;
		margin-block-start:0 !important;
	}
	.lph-hero-edge { display: none !important; }
}

@media (max-width: 540px) {
	.lph-home-hero--mobile {
		aspect-ratio: 1 / 0.8 !important;
		min-height: 0 !important;
		height: auto !important;
	}
}

/* ── Boutiques ──────────────────────────────────────────────── */
.lph-section--boutiques {
	position: relative;
	background: #fff;
	padding: 40px 80px 40px !important;
	overflow: hidden;
	display: flex !important;
	flex-wrap: wrap;
	gap: 32px;
	justify-content: center;
	align-items: stretch;
}

.lph-boutique-card {
	flex: 1 1 calc(50% - 16px);
	max-width: 624px;
	min-width: 280px;
	border-radius: 24px !important;
	border: 2px solid rgba(138, 151, 254, 0.2) !important;
	box-shadow: 0 8px 10px -6px rgba(0,0,0,.10), 0 20px 25px -5px rgba(0,0,0,.10) !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	padding: 0 !important;
}

.lph-boutique-card__header {
	background: var(--lph-blue) !important;
	padding: 24px !important;
	min-height: 92px;
	width: 100% !important;
	box-sizing: border-box !important;
	align-self: stretch !important;
	display: flex !important;
	align-items: flex-start !important;
}

.lph-boutique-card__title.wp-block-heading {
	font-family: 'Gliker', serif !important;
	font-weight: 700 !important;
	font-size: 30px !important;
	line-height: 36px !important;
	color: #fff !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Image zone */
.lph-boutique-card__img.wp-block-image {
	margin: 0 !important;
	padding: 0 !important;
	height: 284px !important;
	flex-shrink: 0 !important;
	overflow: hidden !important;
	display: block !important;
	width: 100% !important;
}

.lph-boutique-card__img.wp-block-image img {
	object-fit: cover !important;
	width: 100% !important;
	height: 100% !important;
	display: block !important;
}

/* Info zone */
.lph-boutique-card__info {
	padding: 32px !important;
	gap: 24px !important;
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto;
	width: 100%;
}

.lph-boutique-card__details {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Info rows with icon */
.lph-boutique-detail {
	display: flex !important;
	align-items: flex-start;
	gap: 0;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
	padding-left: 32px !important;
	position: relative;
}

.lph-boutique-detail::before {
	content: '';
	position: absolute;
	left: 0;
	top: 2px;
	width: 20px;
	height: 20px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex-shrink: 0;
}

.lph-boutique-detail--address::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M10 10.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z' stroke='%2325D26D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10 18S3.5 12.5 3.5 8a6.5 6.5 0 1 1 13 0c0 4.5-6.5 10-6.5 10z' stroke='%2325D26D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lph-boutique-detail--hours::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Ccircle cx='10' cy='10' r='7.5' stroke='%2325D26D' stroke-width='1.5'/%3E%3Cpath d='M10 6v4l2.5 2.5' stroke='%2325D26D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lph-boutique-detail--phone::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M4 3.5h3.5l1.5 4-2 1.5A10.5 10.5 0 0 0 13 14.5l1.5-2 4 1.5V17.5A1.5 1.5 0 0 1 17 19C8.16 19 1 11.84 1 3a1.5 1.5 0 0 1 1.5-1.5z' stroke='%2325D26D' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Buttons */
.lph-boutique-card__buttons.wp-block-buttons {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 16px !important;
	margin: 0 !important;
	width: 100% !important;
	align-self: stretch !important;
}

.lph-boutique-card__buttons .wp-block-button {
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 0 !important;
}

.lph-boutique-card__buttons .wp-block-button .wp-block-button__link {
	width: 100% !important;
	box-sizing: border-box !important;
}

.lph-boutique-btn .wp-block-button__link {
	height: 52px;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	text-decoration: none !important;
	border-radius: 100px !important;
	padding: 14px 24px !important;
}

.lph-boutique-btn--primary .wp-block-button__link {
	background: var(--lph-green) !important;
	color: #fff !important;
	border: none !important;
}

.lph-boutique-btn--secondary .wp-block-button__link {
	background: transparent !important;
	color: var(--lph-green) !important;
	border: 2px solid var(--lph-green) !important;
	box-shadow: none !important;
}

.lph-boutique-btn--primary .wp-block-button__link:hover { background: var(--lph-blue) !important; color:#fff; }
.lph-boutique-btn--secondary .wp-block-button__link:hover { background: var(--lph-green) !important; color: #fff !important; }

@media (max-width: 1100px) {
	.lph-section--boutiques { padding:40px !important; }
	.lph-section--boutiques::before { display: none; }
}

@media (max-width: 1024px) {
	.lph-boutique-card__buttons.wp-block-buttons { flex-direction: column !important; }
	.lph-boutique-card__buttons .wp-block-button { flex: 0 0 auto !important; width: 100% !important; }
	.lph-boutique-card__buttons .wp-block-button .wp-block-button__link { width: 100% !important; }
}

@media (max-width: 768px) {
	.lph-section--boutiques { padding: 32px 16px !important; gap: 20px; }
	.lph-boutique-card { flex: 1 1 100%; max-width: 500px; }
	.lph-boutique-card__header { padding: 16px !important; min-height: unset; }
	.lph-boutique-card__title.wp-block-heading { font-size: 22px !important; line-height: 28px !important; }
	.lph-boutique-card__img.wp-block-image { height: 180px !important; }
	.lph-boutique-card__info { padding: 20px !important; gap: 16px !important; }
	.lph-boutique-card__details { gap: 10px !important; }
	.lph-boutique-detail { font-size: 14px !important; line-height: 20px !important; padding-left: 28px !important; }
	.lph-boutique-btn .wp-block-button__link { height: 44px !important; font-size: 14px !important; padding: 10px 16px !important; }
}

/* ── Pourquoi nous rendre visite ───────────────────────────── */
.lph-section--visite {
	background: var(--lph-lavender) !important;
	width: 100% !important;
	padding: 0 !important;
	overflow: visible !important;
}

.lph-visite-inner {
	max-width: 1440px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 80px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.lph-visite__title.wp-block-heading {
	font-family: 'Gliker', serif !important;
	font-weight: 700 !important;
	font-size: 48px !important;
	line-height: 48px !important;
	color: #fff !important;
	margin: 0 0 48px !important;
	padding: 0 !important;
	text-align: center !important;
}

.lph-visite-grid {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	justify-content: center !important;
	align-items: stretch !important;
	max-width: 1280px;
	margin: 0 auto !important;
	padding: 0 !important;
}

.lph-visite-card {
	flex: 1 1 calc(25% - 18px);
	max-width: 302px;
	min-width: 220px;
	align-self: stretch !important;
	background: #fff !important;
	border-radius: 16px !important;
	box-shadow: 0 4px 6px -4px rgba(0,0,0,.10), 0 10px 15px -3px rgba(0,0,0,.10) !important;
	padding: 32px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 0 !important;
	margin: 0 !important;
}

.lph-visite-card__icon.wp-block-image {
	display: flex !important;
	justify-content: center;
	margin: 0 0 16px !important;
	padding: 0 !important;
	width: 64px !important;
}

.lph-visite-card__icon img {
	width: 64px !important;
	height: 64px !important;
	object-fit: contain;
	display: block;
}

.lph-visite-card__title.wp-block-heading {
	font-family: 'Gliker', serif !important;
	font-weight: 700 !important;
	font-size: 20px !important;
	line-height: 28px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
}

.lph-visite-card__text {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 14px !important;
	line-height: 20px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 1100px) {
	.lph-visite-inner { padding: 60px 40px !important; }
	.lph-visite__title.wp-block-heading { font-size: 36px !important; line-height: 40px !important; }
	.lph-visite-card { flex: 1 1 calc(50% - 12px); max-width: calc(50% - 12px); }
}

@media (max-width: 600px) {
	.lph-visite-inner { padding: 48px 16px !important; }
	.lph-visite__title.wp-block-heading { font-size: 28px !important; line-height: 32px !important; margin-bottom: 32px !important; }
	.lph-visite-card { flex: 1 1 100%; max-width: 100%; }
}

/* ── Contact Info ───────────────────────────────────────────── */
.lph-section--contact-info {
	background: #fff !important;
	width: 100% !important;
	padding: 40px 0 !important
}

.lph-contact-info-inner {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 32px !important;
	justify-content: center !important;
	align-items: stretch !important;
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 0 80px !important;
	box-sizing: border-box !important;
}

.lph-contact-card {
	flex: 1 1 calc(33.333% - 22px);
	max-width: 352px;
	min-width: 240px;
	align-self: stretch !important;
	background: #fff !important;
	border: 2px solid rgba(138, 151, 254, 0.2) !important;
	border-radius: 16px !important;
	box-shadow: 0 4px 6px 0 rgba(0,0,0,.10), 0 10px 15px 0 rgba(0,0,0,.10) !important;
	padding: 34px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 24px !important;
	margin: 0 !important;
	position: relative;
	overflow: hidden;
}

.lph-contact-card__link {
	position: absolute;
	inset: 0;
	display: block;
	border-radius: 14px;
	z-index: 1;
}

.lph-contact-card__icon.wp-block-image {
	display: flex !important;
	justify-content: center;
	margin: 0 !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
}

.lph-contact-card__icon img {
	width: 64px !important;
	height: 64px !important;
	object-fit: contain;
	display: block;
}

.lph-contact-card__text {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 4px !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.lph-contact-card__label.wp-block-heading {
	font-family: 'Gliker', serif !important;
	font-weight: 700 !important;
	font-size: 20px !important;
	line-height: 28px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 !important;
	padding: 0 !important;
}

.lph-contact-card__value {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 14px !important;
	line-height: 20px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 !important;
	padding: 0 !important;
}

.lph-contact-card__sub {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 14px !important;
	line-height: 20px !important;
	color: rgba(0, 38, 137, 0.6) !important;
	text-align: center !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 1024px) {
	.lph-contact-info-inner { padding: 0 40px !important; }
}

@media (max-width: 768px) {
	.lph-section--contact-info { padding: 0 !important; }
	.lph-contact-info-inner { padding: 0 16px !important; gap: 16px !important; }
	.lph-contact-card { flex: 1 1 100%; max-width: 100%; padding: 24px !important; gap: 16px !important; }
	.lph-contact-card__icon img { width: 48px !important; height: 48px !important; }
}

/* ── Contact Form Pattern ───────────────────────────────────── */
.lph-section--contact-form {
	background: var(--lph-lavender) !important;
	width: 100% !important;
	padding: 0 !important;
}

.lph-contact-form-inner {
	max-width: 800px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 80px 0 !important;
	box-sizing: border-box;
}

.lph-contact-form__title.wp-block-heading {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 48px !important;
	line-height: 48px !important;
	color: #fff !important;
	text-align: center !important;
	width: 100% !important;
	display: block !important;
	margin: 0 0 8px !important;
}

.lph-contact-form__subtitle {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	width: 100% !important;
	display: block !important;
	margin: 0 0 48px !important;
}

.lph-contact-form-card {
	background: #fff !important;
	border-radius: 24px !important;
	box-shadow: 0 8px 10px -6px rgba(0,0,0,.1), 0 20px 25px -5px rgba(0,0,0,.1) !important;
	padding: 48px 48px 24px !important;
}

.lph-contact-form-card .wpcf7-form {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.lph-contact-form-card .wpcf7-form > p {
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.lph-contact-form-card .lph-cf7-row {
	display: flex;
	gap: 24px;
}

.lph-contact-form-card .lph-cf7-row > p {
	flex: 1;
	margin: 0 !important;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.lph-contact-form-card label {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 20px;
	color: var(--lph-blue);
	display: block;
}

.lph-contact-form-card input[type="text"],
.lph-contact-form-card input[type="email"],
.lph-contact-form-card input[type="tel"],
.lph-contact-form-card textarea {
	width: 100%;
	background: rgba(138, 151, 254, 0.1);
	border: 2px solid rgba(138, 151, 254, 0.2);
	border-radius: 12px;
	padding: 12px 16px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 16px;
	color: var(--lph-blue);
	box-sizing: border-box;
	outline: none;
	transition: border-color 0.2s;
	-webkit-appearance: none;
	appearance: none;
}

.lph-contact-form-card input[type="text"]::placeholder,
.lph-contact-form-card input[type="email"]::placeholder,
.lph-contact-form-card input[type="tel"]::placeholder,
.lph-contact-form-card textarea::placeholder {
	color: rgba(0, 0, 0, 0.25);
}

.lph-contact-form-card input[type="text"]:focus,
.lph-contact-form-card input[type="email"]:focus,
.lph-contact-form-card input[type="tel"]:focus,
.lph-contact-form-card textarea:focus {
	border-color: rgba(138, 151, 254, 0.6);
}

.lph-contact-form-card textarea {
	min-height: 160px;
	resize: vertical;
}

.lph-contact-form-card .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.lph-contact-form-card input[type="submit"] {
	width: 100%;
	height: 56px;
	background: #24D26D;
	border: none;
	border-radius: 28px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 24px;
	color: #fff;
	cursor: pointer;
	transition: background 0.2s;
}

.lph-contact-form-card input[type="submit"]:hover {
	background: var(--lph-blue);
}

.lph-contact-form-card .wpcf7 form .wpcf7-response-output{
	background: var(--lph-green) !important;
	border:none !important;
	color: #fff !important;
	font-size: 16px !important;
	margin-top: 0 !important;
}

.lph-contact-form-card .wpcf7 form.invalid .wpcf7-response-output, 
.lph-contact-form-card .wpcf7 form.unaccepted .wpcf7-response-output, 
.lph-contact-form-card .wpcf7 form.payment-required .wpcf7-response-output{
	background: var(--lph-red) !important;
}

.lph-contact-form-card .wpcf7-spinner{
	margin: -50px auto 12px;
	width: 32px;
	height: 32px;
}
.lph-contact-form-card .wpcf7-spinner::before{
	transform-origin: 12px 12px;
	width: 10px;
	height: 10px;
}

@media (max-width: 768px) {
	.lph-contact-form-inner { padding: 48px 24px !important; }
	.lph-contact-form__title.wp-block-heading { font-size: 32px !important; line-height: 38px !important; }
	.lph-contact-form__subtitle { margin-bottom: 32px !important; }
	.lph-contact-form-card { padding: 32px 24px 0 !important; }
	.lph-cf7-row { flex-direction: column !important; gap: 24px; }
}

/* ── FAQ Pattern ─────────────────────────────────────────────── */
html { scroll-behavior: smooth; }

.lph-section--faq-categories {
	background: #fff;
	width: 100% !important;
	padding: 40px 0 !important;
}

.lph-faq-categories-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 80px;
}

.lph-faq-cat-grid {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 24px !important;
	justify-content: center !important;
	align-items: stretch !important;
}

.lph-faq-cat-card {
	position: relative;
	flex: 1 1 0 !important;
	min-width: 0;
	min-height: 160px;
	background: #fff !important;
	border: 2px solid rgba(138, 151, 254, 0.2) !important;
	border-radius: 16px !important;
	box-shadow: 0 4px 6px 0 rgba(0,0,0,.1), 0 10px 15px 0 rgba(0,0,0,.1) !important;
	padding: 26px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 12px !important;
	overflow: hidden;
}

.lph-faq-cat-card__icon.wp-block-image {
	margin: 0 !important;
	display: flex !important;
	justify-content: center;
	flex-shrink: 0 !important;
}

.lph-faq-cat-card__icon img {
	object-fit: contain;
	display: block;
}

.lph-faq-cat-card__label.wp-block-heading {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	line-height: 24px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 !important;
}

.lph-faq-cat-card__link {
	position: absolute;
	inset: 0;
	display: block;
	border-radius: 14px;
	z-index: 1;
}

.lph-section--faq-questions {
	width: 100% !important;
	padding: 0 !important;
}

.lph-section--faq-lavande {
	background: var(--lph-lavender) !important;
}

.lph-section--faq-white {
	background: #fff !important;
}

.lph-faq-questions-inner {
	max-width: 1000px;
	margin: 0 auto;
	padding: 80px 40px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 48px !important;
}

.lph-faq-section-title.wp-block-heading {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 48px !important;
	line-height: 48px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	width: 100% !important;
	margin: 0 !important;
}

.lph-section--faq-lavande .lph-faq-section-title.wp-block-heading {
	color: #fff !important;
}

.lph-faq-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
}

.lph-faq-card {
	background: #fff !important;
	border-radius: 16px !important;
	box-shadow: 0 4px 6px 0 rgba(0,0,0,.1), 0 10px 15px 0 rgba(0,0,0,.1) !important;
	padding: 32px !important;
	margin: 0 !important;
}

.lph-faq-card--bordered {
	border: 2px solid rgba(138, 151, 254, 0.2) !important;
}

.lph-faq-card__inner {
	display: flex !important;
	flex-direction: row !important;
	gap: 16px !important;
	align-items: flex-start !important;
}

.lph-faq-badge {
	flex: 0 0 32px !important;
	width: 32px !important;
	min-width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-family: 'Arimo', 'Arial', sans-serif !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	line-height: 1 !important;
	color: #fff !important;
	text-align: center !important;
	margin: 4px 0 0 0 !important;
	padding: 0 !important;
}

.lph-faq-badge--green {
	background: #24D26D !important;
}

.lph-faq-badge--lavande {
	background: var(--lph-lavender) !important;
}

.lph-faq-card__content {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	flex: 1 !important;
	min-width: 0;
	margin-block-start: 0 !important;
}

.lph-faq-card__question.wp-block-heading {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 20px !important;
	line-height: 28px !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
}

.lph-faq-card__answer {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	color: var(--lph-blue) !important;
	margin: 0 !important;
}

.lph-section--faq-cta {
	background: var(--lph-lavender) !important;
	width: 100% !important;
	padding: 80px 0 !important;
}

.lph-faq-cta-inner {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 !important;
}

.lph-faq-cta-card {
	background: #fff !important;
	border-radius: 24px !important;
	box-shadow: 0 8px 10px -6px rgba(0,0,0,.1), 0 20px 25px -5px rgba(0,0,0,.1) !important;
	padding: 48px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 16px !important;
}

.lph-faq-cta-card__title.wp-block-heading {
	font-family: 'Gliker', sans-serif !important;
	font-weight: 700 !important;
	font-size: 36px !important;
	line-height: 40px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 !important;
	width: 100% !important;
}

.lph-faq-cta-card__subtitle {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	color: var(--lph-blue) !important;
	text-align: center !important;
	margin: 0 0 8px !important;
}

.lph-faq-cta-buttons {
	gap: 16px !important;
	justify-content: center !important;
}

.lph-faq-btn--primary .wp-block-button__link {
	background: var(--lph-green) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 28px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	padding: 16px 32px !important;
}

.lph-faq-btn--primary .wp-block-button__link:hover {
	background: var(--lph-blue) !important;
}

.lph-faq-btn--secondary .wp-block-button__link {
	background: transparent !important;
	color: var(--lph-green) !important;
	border: 2px solid var(--lph-green) !important;
	border-radius: 28px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 24px !important;
	padding: 16px 32px !important;
}

.lph-faq-btn--secondary .wp-block-button__link:hover {
	background: var(--lph-green) !important;
	color: #fff !important;
}

@media (max-width: 1024px) {
	.lph-faq-categories-inner { padding: 0 40px; }
}

@media (max-width: 768px) {
	.lph-section--faq-categories { padding: 24px 0 !important; }
	.lph-faq-categories-inner { padding: 0 16px; }
	.lph-faq-cat-grid { flex-wrap: wrap !important; }
	.lph-faq-cat-card { flex: 0 0 calc(50% - 12px) !important; min-height: 130px; }
	.lph-faq-questions-inner { padding: 48px 16px !important; gap: 32px !important; }
	.lph-faq-section-title.wp-block-heading { font-size: 32px !important; line-height: 36px !important; }
	.lph-faq-card { padding: 24px !important; }
	.lph-section--faq-cta { padding: 48px 24px !important; }
	.lph-faq-cta-card { padding: 32px 24px !important; border-radius: 16px !important; }
	.lph-faq-cta-card__title.wp-block-heading { font-size: 28px !important; line-height: 34px !important; }
}

@media (max-width: 480px) {
	.lph-faq-cat-card { flex: 0 0 100% !important; }
	.lph-faq-badge { flex: 0 0 28px !important; font-size: 14px !important; }
}

/* ── Pages Principales ──────────────────────────────────────── */
.lph-pages-principales {
	background: #fff;
	padding: 80px 80px;
}
.lph-pp-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 48px;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0 0 48px;
}
.lph-pp-grid.wp-block-group {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 24px !important;
	justify-content: center !important;
	align-items: stretch !important;
}
.lph-pp-card.wp-block-group {
	position: relative;
	flex: 1 1 0 !important;
	background: #fff;
	border: 2px solid rgba(138, 151, 254, 0.2);
	border-radius: 16px;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1), 0px 10px 15px rgba(0, 0, 0, 0.1);
	padding: 34px 24px 20px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 12px !important;
	overflow: hidden;
}
.lph-pp-card .wp-block-image {
	margin: 0;
	line-height: 0;
}
.lph-pp-card .wp-block-image img {
	width: 48px;
	height: 48px;
	object-fit: contain;
}
.lph-pp-card-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0;
}
.lph-pp-card-subtitle.wp-block-paragraph {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	color: rgba(0, 38, 137, 0.7);
	text-align: center !important;
	margin: 0;
}
.lph-pp-card__link {
	position: absolute;
	inset: 0;
}
@media (max-width: 768px) {
	.lph-pages-principales { padding: 48px 24px 0; }
	.lph-pp-title.wp-block-heading { font-size: 32px !important; line-height: 36px !important; }
	.lph-pp-grid.wp-block-group { flex-wrap: wrap !important; gap: 16px !important; }
	.lph-pp-card.wp-block-group { flex: 0 0 calc(50% - 8px) !important; }
}
@media (max-width: 480px) {
	.lph-pp-card.wp-block-group { flex: 0 0 100% !important; }
}

/* ── Catégories Principales ─────────────────────────────────── */
.lph-cat-principales {
	background-color: var(--lph-lavender);
	padding: 80px 80px 48px;
}
.lph-cp-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 48px;
	color: #fff;
	text-align: center !important;
	margin: 0 0 48px;
}
.lph-cp-grid.wp-block-group {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	align-items: stretch !important;
}
.lph-cp-card.wp-block-group {
	position: relative;
	flex: 1 1 calc(33.333% - 16px) !important;
	background: #fff;
	border: 2px solid rgba(138, 151, 254, 0.3);
	border-radius: 16px;
	box-shadow: 0px 4px 6px -4px rgba(0, 0, 0, 0.1), 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
	padding: 20px 16px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 4px !important;
	min-height: 168px;
	overflow: hidden;
}
.lph-cp-card .wp-block-image {
	margin: 0 0 4px;
	line-height: 0;
}
.lph-cp-card .wp-block-image img {
	width: 64px;
	height: 64px;
	object-fit: contain;
}
.lph-cp-card-title.wp-block-heading {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 28px;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0;
}
.lph-cp-card-subtitle.wp-block-paragraph {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	color: rgba(0, 38, 137, 0.7);
	text-align: center !important;
	margin: 0;
}
.lph-cp-card__link {
	position: absolute;
	inset: 0;
}
@media (max-width: 900px) {
	.lph-cat-principales { padding: 48px 24px 32px; }
	.lph-cp-title.wp-block-heading { font-size: 32px !important; line-height: 36px !important; }
	.lph-cp-grid.wp-block-group { gap: 16px !important; }
	.lph-cp-card.wp-block-group { flex: 0 0 calc(50% - 8px) !important; }
}
@media (max-width: 480px) {
	.lph-cp-card.wp-block-group { flex: 0 0 100% !important; }
}

/* ── Besoin d'aide ──────────────────────────────────────────── */
.lph-besoin-aide {
	background: #fff;
	padding: 80px 80px;
}
.lph-ba-card.wp-block-group {
	max-width: 540px;
	margin: 0 auto !important;
	background: rgba(138, 151, 254, 0.1);
	border: 2px solid rgba(138, 151, 254, 0.2);
	border-radius: 24px;
	padding: 50px 25px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 16px !important;
}
.lph-ba-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 36px;
	font-weight: 700;
	line-height: 36px;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0;
}
.lph-ba-text.wp-block-paragraph {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0 0 16px;
}
.lph-ba-buttons.wp-block-buttons {
	gap: 16px !important;
	justify-content: center !important;
	flex-wrap: nowrap !important;
}
.lph-ba-btn-phone .wp-block-button__link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 16px 32px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 24px !important;
}
.lph-ba-btn-phone .wp-block-button__link::before {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url('../images/lph/besoin-aide-icon-phone.svg') center / contain no-repeat;
	flex-shrink: 0;
}
.lph-ba-btn-email .wp-block-button__link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 14px 32px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 24px !important;
}
.lph-ba-btn-email .wp-block-button__link::before {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url('../images/lph/besoin-aide-icon-email.svg') center / contain no-repeat;
	flex-shrink: 0;
}
@media (max-width: 768px) {
	.lph-besoin-aide { padding: 48px 24px; }
	.lph-ba-card.wp-block-group { padding: 32px 24px !important; }
	.lph-ba-title.wp-block-heading { font-size: 28px !important; line-height: 32px !important; }
	.lph-ba-buttons.wp-block-buttons { flex-wrap: wrap !important; }
}

/* =============================================================================
   LPH Aide Produit
   ============================================================================= */
.lph-aide-produit {
	padding: 80px clamp(16px, 6vw, 80px);
}

.lph-ap-card.wp-block-group {
	max-width: 1000px;
	margin: 0 auto !important;
	background: rgba(138, 151, 254, 0.1);
	border: 2px solid rgba(138, 151, 254, 0.2);
	border-radius: 24px;
	padding: 56px clamp(24px, 8vw, 86px) !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 16px !important;
}

.lph-ap-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: clamp(26px, 4vw, 36px);
	font-weight: 700;
	line-height: 1.2;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0;
}

.lph-ap-text.wp-block-paragraph {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0 0 8px;
	max-width: 700px;
}

.lph-ap-buttons.wp-block-buttons {
	gap: 16px !important;
	justify-content: center !important;
	flex-wrap: wrap !important;
	margin-top: 8px !important;
}

.lph-ap-btn-inscrit .wp-block-button__link,
.lph-ap-btn-phone .wp-block-button__link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 183px !important;
	height: 56px !important;
	padding: 0 32px !important;
	border-radius: 9999px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: opacity .2s !important;
}

.lph-ap-btn-inscrit .wp-block-button__link {
	background: var(--lph-green) !important;
	color: #fff !important;
	border: none !important;
	box-shadow: 0px 10px 7.5px rgba(0,0,0,.10), 0px 4px 3px rgba(0,0,0,.10) !important;
}

.lph-ap-btn-phone .wp-block-button__link {
	background: transparent !important;
	color: var(--lph-green) !important;
	border: 2px solid var(--lph-green) !important;
}

.lph-ap-btn-inscrit .wp-block-button__link:hover{
	background: var(--lph-blue) !important;
	color:#fff !important;
}
.lph-ap-btn-phone .wp-block-button__link:hover{
	background: var(--lph-green) !important;
	color:#fff !important;
}

@media (max-width: 768px) {
	.lph-aide-produit { padding: 48px 16px; }
	.lph-ap-card.wp-block-group { padding: 40px 24px !important; }
	.lph-ap-title.wp-block-heading { font-size: 26px !important; line-height: 32px !important; }
}

/* =============================================================================
   LPH Guide Débutant CBD
   ============================================================================= */

.lph-guide { width: 100%; }

/* ── Badge ── */
.lph-guide-badge {
	display: inline-block !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--lph-blue);
	background: rgba(255,255,255,0.9);
	border-radius: 9999px;
	padding: 6px 16px;
	margin: 0 auto 24px !important;
	text-align: center;
}
.lph-guide-badge--grey {
	background: #F7F8FC;
	color: var(--lph-blue);
}

/* ── Shared text ── */
.lph-guide-section-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 40px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 16px;
	line-height: 1.15;
}
.lph-guide-section-title--white.wp-block-heading { color: #fff; }
.lph-guide-section-subtitle {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	color: rgba(0,38,137,0.7);
	margin: 0 0 48px;
}
.lph-guide-section-subtitle--white { color: rgba(255,255,255,0.85) !important; }
.lph-guide-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 1.75;
	color: #1A1F5E;
	margin: 0 0 16px;
}

/* ── Infobox ── */
.lph-guide-infobox.wp-block-group {
	background: #F0F0FF;
	border-left: 4px solid var(--lph-lavender);
	border-radius: 12px;
	padding: 24px 28px !important;
	margin: 32px 0 !important;
}
.lph-guide-infobox--green.wp-block-group {
	background: rgba(46,204,143,0.08);
	border-left-color: #2ECC8F;
}
.lph-guide-infobox__title.wp-block-heading {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 8px;
}
.lph-guide-infobox__text {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 1.65;
	color: #1A1F5E;
	margin: 0;
}

/* ── Hero ── */
.lph-guide-hero.wp-block-group {
	background: var(--lph-lavender);
	padding: 80px 80px 64px;
	text-align: center;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
}
.lph-guide-hero .lph-guide-badge {
	margin-bottom: 32px !important;
	background: var(--lph-green);
	color: #fff;
}
.lph-guide-hero__title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 60px;
	font-weight: 700;
	color: #fff;
	text-align: center !important;
	margin: 0 0 20px;
	line-height: 1.1;
}
.lph-guide-hero__subtitle {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	text-align: center !important;
	max-width: 640px;
	margin: 0 auto 16px !important;
	line-height: 1.6;
}
.lph-guide-hero__meta {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: rgba(26,31,94,0.7);
	text-align: center;
	margin: 0 0 40px;
}
.lph-guide-hero__meta-item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.lph-guide-hero__meta-item svg { flex-shrink: 0; }
.lph-guide-hero__meta-sep { color: rgba(26,31,94,0.4); }
.lph-guide-hero__nav {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}
.lph-guide-hero__nav-btn {
	display: inline-block;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #1A1F5E;
	background: rgba(255,255,255,0.9);
	border-radius: 9999px;
	padding: 10px 20px;
	text-decoration: none;
	transition: background 0.2s, color 0.2s;
}
.lph-guide-hero__nav-btn:hover {
	background: #fff;
	color: var(--lph-blue);
}

/* ── Bases ── */
.lph-guide-bases.wp-block-group {
	padding: 80px 80px 64px;
	margin-block-start: 0;
}
.lph-guide-bases__inner.wp-block-group {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 64px !important;
	align-items: flex-start !important;
	margin-top: 32px;
}
.lph-guide-bases__text.wp-block-group {
	flex: 1 1 0 !important;
	min-width: 0;
}
.lph-guide-bases__illus.wp-block-group {
	flex: 0 0 420px !important;
	width: 420px;
	border-radius: 16px;
	overflow: hidden;
}
.lph-guide-bases__illus .wp-block-image img {
	width: 100%;
	height: auto;
	display: block;
}
.lph-guide-infobox.wp-block-group {
	background: #F0F0FF;
	border-left: 4px solid var(--lph-lavender);
	border-radius: 10px;
	padding: 20px 24px !important;
	margin-top: 24px;
}
.lph-guide-infobox__header {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 8px;
}
.lph-guide-infobox__header svg { flex-shrink: 0; }
.lph-guide-infobox__title {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: var(--lph-blue);
}
.lph-guide-infobox__text {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 1.65;
	color: #1A1F5E;
	margin: 0;
}

/* ── Bénéfices ── */
.lph-guide-benefices.wp-block-group {
	background: #F7F8FC;
	padding: 80px 80px 64px;
}
.lph-guide-benefices__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	margin-top: 40px;
}
.lph-guide-benefices__card {
	background: #fff;
	border: 1px solid rgba(138,151,254,0.2);
	border-radius: 14px;
	box-shadow: 0px 4px 6px -4px rgba(0,0,0,0.08), 0px 10px 15px -3px rgba(0,0,0,0.08);
	padding: 24px;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 16px;
}
.lph-guide-benefices__card img {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	object-fit: contain;
}
.lph-guide-benefices__card-body {
	flex: 1 1 0;
	min-width: 0;
}
.lph-guide-benefices__card-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 6px;
}
.lph-guide-benefices__card-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: rgba(0,38,137,0.7);
	margin: 0;
	line-height: 1.5;
}
.lph-guide-benefices__disclaimer {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 700;
	font-style: italic;
	color: #fff;
	text-align: center;
	margin: 32px 0 0;
	padding: 16px 24px;
	background: var(--lph-lavender);
	border-radius: 8px;
}

/* ── Formes ── */
.lph-guide-formes.wp-block-group {
	padding: 80px 80px 64px;
}
.lph-guide-formes__grid.wp-block-group {
	display: flex !important;
	flex-direction: column !important;
	gap: 24px !important;
	margin-top: 40px;
}
.lph-guide-formes__card.wp-block-group {
	border-radius: 16px;
	border: 1px solid #E5E7EB;
	background: rgba(138, 151, 254, 0.20);
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.10), 0 1px 2px -1px rgba(0, 0, 0, 0.10);
	overflow: hidden;
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 0 !important;
}
.lph-guide-formes__card-photo.wp-block-group {
	flex: 0 0 420px !important;
	width: 420px;
	padding:32px;
}
.lph-guide-formes__card-photo .wp-block-image {
	margin: 0 !important;
	height: 100%;
}
.lph-guide-formes__card-photo .wp-block-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 14px;
}
.lph-guide-formes__card-body.wp-block-group {
	flex: 1 1 0 !important;
	padding: 32px !important;
	min-width: 0;
}
.lph-guide-formes__card-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 8px;
}
.lph-guide-formes__card-desc {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	color: rgba(0,38,137,0.65);
	margin: 0 0 24px;
	line-height: 1.5;
}
.lph-guide-formes__proscons.wp-block-group {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 24px !important;
	align-items: flex-start !important;
	margin-bottom: 20px;
}
.lph-guide-formes__pros.wp-block-group,
.lph-guide-formes__cons.wp-block-group {
	flex: 1 1 0 !important;
	padding: 16px !important;
	border-radius: 10px;
}
.lph-guide-formes__pros.wp-block-group { background: rgba(46,204,143,0.07); }
.lph-guide-formes__cons.wp-block-group { background: rgba(254,75,75,0.06); }
.lph-guide-formes__pros-label,
.lph-guide-formes__cons-label {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin: 0 0 8px;
}
.lph-guide-formes__pros-label { color: #2ECC8F; }
.lph-guide-formes__cons-label { color: #FE4B4B; }
.lph-guide-formes__list.wp-block-list {
	margin: 0;
	padding-left: 18px;
}
.lph-guide-formes__list li {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	line-height: 1.6;
	color: #1A1F5E;
	margin: 2px 0;
}
.lph-guide-formes__list--pros li::marker { color: #2ECC8F; }
.lph-guide-formes__list--cons li::marker { color: #FE4B4B; }
.lph-guide-formes__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 4px;
}
.lph-guide-formes__badge {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	background: var(--lph-lavender);
	border-radius: 9999px;
	padding: 4px 14px;
}

/* ── Choix ── */
.lph-guide-choix.wp-block-group {
	background: var(--lph-lavender);
	padding: 80px 80px 72px;
}
.lph-guide-choix__grid.wp-block-group {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 16px !important;
	align-items: stretch !important;
	margin: 0 0 48px;
}
.lph-guide-choix__card.wp-block-group {
	flex: 1 1 calc(33.333% - 12px) !important;
	background: rgba(255,255,255,0.95);
	border-radius: 14px;
	padding: 20px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	min-width: 200px;
}
.lph-guide-choix__card-need {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0;
	line-height: 1.4;
}
.lph-guide-choix__card-reco {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: #444;
	margin: 0;
	line-height: 1.3;
}
.lph-guide-choix__btns.wp-block-buttons {
	justify-content: center !important;
	gap: 16px !important;
}
.lph-guide-choix__btn-primary .wp-block-button__link,
.lph-guide-choix__btn-secondary .wp-block-button__link {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	padding: 14px 32px !important;
	border-radius: 99999px;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.10), 0 4px 6px -4px rgba(0, 0, 0, 0.10);
}
.lph-guide-choix__btn-primary .wp-block-button__link{
	background: var(--lph-green);
	color: #fff;
	display: inline-flex !important;
	align-items: center !important;
}
.lph-guide-choix__btn-secondary .wp-block-button__link{
	background: #fff;
	color: ;
}
.lph-guide-choix__btn-primary .wp-block-button__link:hover,
.lph-guide-choix__btn-secondary .wp-block-button__link:hover{
	background: var(--lph-blue);
}

/* ── Dosage ── */
.lph-guide-dosage.wp-block-group {
	background: #fff;
	padding: 80px 80px 64px;
}
.lph-guide-dosage__rulebox.wp-block-group {
	background: var(--lph-lavender);
	border-radius: 14px;
	padding: 28px 32px !important;
	margin: 32px 0;
}
.lph-guide-dosage__rulebox-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 10px;
}
.lph-guide-dosage__rulebox-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	line-height: 1.65;
	color: #fff;
	margin: 0;
}
.lph-guide-dosage__table {
	width: 100%;
	overflow-x: auto;
	margin: 0 0 32px;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.10), 0 1px 2px -1px rgba(0, 0, 0, 0.10);
	border-radius: 14px;
	overflow: hidden;
}
.lph-guide-dosage__table table {
	width: 100%;
	border-collapse: collapse;
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
}
.lph-guide-dosage__table thead,
.lph-guide-dosage__table tbody{
	border:none;
	border: 1px solid rgba(0, 0, 0, 0.10);
}
.lph-guide-dosage__table thead th{
	border:none;
}
.lph-guide-dosage__table thead th {
	background: #F7F8FC;
	color: var(--lph-blue);
	font-weight: 700;
	padding: 16px;
	text-align: left;
	border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}
.lph-guide-dosage__table tbody tr:nth-child(even) { background: #F7F8FC; }
.lph-guide-dosage__table tbody td {
	padding: 16px;
	color: var(--lph-blue);
	border:none;
	border-bottom: 1px solid rgba(0, 0, 0, 0.10);
}
.lph-guide-dosage__bottom.wp-block-group {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 32px !important;
	align-items: flex-start !important;
}
.lph-guide-dosage__steps-box.wp-block-group {
	flex: 1 1 0 !important;
	background: #F7F8FC;
	border-radius: 14px;
	padding: 32px !important;
}
.lph-guide-dosage__subtitle.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 16px;
}
.lph-guide-dosage__steps.wp-block-list {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	color: #1A1F5E;
	line-height: 1.7;
	padding-left: 24px;
	margin: 0;
}
.lph-guide-dosage__steps li { margin-bottom: 8px; }
.lph-guide-warning.wp-block-group {
	flex: 1 1 0 !important;
	background: var(--lph-lavender-bg);
	border-radius: 14px;
	padding: 34px !important;
	gap: 12px !important;
	align-items: flex-start !important;
}
.lph-guide-warning .wp-block-image { flex-shrink: 0; }
.lph-guide-warning .wp-block-image img { width: 24px; height: 24px; object-fit: contain; margin-top: 3px; }
.lph-guide-warning__body.wp-block-group { flex: 1 1 0 !important; gap: 4px !important; }
.lph-guide-warning__header { display: flex; align-items: center; gap: 8px; }
.lph-guide-warning__title {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0;
}
.lph-guide-warning__text {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 1.65;
	color: #1A1F5E;
	margin: 0;
}

/* ── Contre-indications ── */
.lph-guide-contre.wp-block-group {
	background: #F7F8FC;
	padding: 80px 80px 64px;
}
.lph-guide-contre__row.wp-block-group {
	gap: 32px !important;
	align-items: stretch !important;
	margin-top: 40px;
}
.lph-guide-contre__card.wp-block-group {
	flex: 1 1 0 !important;
	border-radius: 16px;
	padding: 32px !important;
}
.lph-guide-contre__card--ci.wp-block-group {
	background: #fff;
	border: 1.5px solid rgba(138,151,254,0.2);
	box-shadow: 0px 4px 16px rgba(0,0,0,0.06);
}
.lph-guide-contre__card--inter.wp-block-group {
	background: var(--lph-lavender-bg);
}
.lph-guide-contre__card-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 20px;
}
.lph-guide-contre__ci-list.wp-block-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0;
}
.lph-guide-contre__ci-list li {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 1.5;
	color: #1A1F5E;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 0;
}
.lph-guide-contre__ci-list li:last-child { border-bottom: none; }
.lph-guide-contre__ci-list li::before {
	content: '';
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='10' cy='10' r='8' stroke='%238A97FE' stroke-width='1.5'/%3E%3Cpath d='M7 7l6 6M13 7l-6 6' stroke='%238A97FE' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
}
.lph-guide-contre__inter-header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 14px;
}
.lph-guide-contre__inter-title {
	font-family: 'Gliker', sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: var(--lph-blue);
}
.lph-guide-contre__inter-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 1.65;
	color: var(--lph-blue);
	margin: 0 0 12px;
}
.lph-guide-contre__inter-list {
	list-style: none;
	padding: 0;
	margin: 0 0 18px;
}
.lph-guide-contre__inter-list li {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 1.9;
	color: var(--lph-blue);
}
.lph-guide-contre__inter-list li::before { content: '· '; }
.lph-guide-contre__inter-note {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--lph-lavender);
	margin: 0;
	line-height: 1.6;
}
.lph-guide-contre__effets.wp-block-group {
	background: var(--lph-lavender-bg);
	border-radius: 16px;
	padding: 40px !important;
	margin-top: 32px;
}
.lph-guide-contre__effets-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 28px;
}
.lph-guide-contre__effets-grid.wp-block-group {
	gap: 16px !important;
}
.lph-guide-contre__effet-card.wp-block-group {
	flex: 1 1 0 !important;
	background: #fff;
	border-radius: 12px;
	padding: 20px 16px !important;
}
.lph-guide-contre__effet-name {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 4px;
}
.lph-guide-contre__effet-freq {
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	color: rgba(0,38,137,0.5);
	margin: 0;
}

/* ── Idées reçues ── */
.lph-guide-idees.wp-block-group {
	background: #fff;
	padding: 80px 80px 64px;
}
.lph-guide-idees__stack.wp-block-group {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	margin-top: 40px;
}
.lph-guide-idees__card.wp-block-group {
	background: #fff;
	border: 1px solid #E5E7EB;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.10), 0 1px 2px -1px rgba(0, 0, 0, 0.10);
	border-radius: 16px;
	padding: 24px 28px !important;
}
.lph-guide-idees__myth-row {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 16px;
}
.lph-guide-idees__icon-circle {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(138,151,254,0.15);
	display: flex;
	align-items: center;
	justify-content: center;
}
.lph-guide-idees__icon-circle img { width: 40px; height: 40px; }
.lph-guide-idees__myth {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0;
	line-height: 1.3;
}
.lph-guide-idees__fact-row {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding-left: 56px;
}
.lph-guide-idees__fact-row img { flex-shrink: 0; margin-top: 3px; }
.lph-guide-idees__fact {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 1.65;
	color: var(--lph-blue);
	margin: 0;
}

/* ── Conseils ── */
.lph-guide-conseils.wp-block-group {
	background: rgba(138,151,254,0.1);
	padding: 80px 80px 64px;
}
.lph-guide-conseils__grid.wp-block-group {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 24px !important;
	align-items: stretch !important;
	margin-top: 40px;
}
.lph-guide-conseils__card.wp-block-group {
	flex: 1 1 0 !important;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.10), 0 1px 2px -1px rgba(0, 0, 0, 0.10);
	padding: 28px 20px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 14px !important;
	min-width: 140px;
}
.lph-guide-conseils__card .wp-block-image img {
	width: 48px;
	height: 48px;
	object-fit: contain;
}
.lph-guide-conseils__card-title.wp-block-heading {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0;
	line-height: 1.3;
}
.lph-guide-conseils__card-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	color: var(--lph-blue);
	text-align: center !important;
	margin: 0;
	line-height: 1.55;
}

/* ── Pourquoi choisir ── */
.lph-guide-pourquoi.wp-block-group {
	background: var(--lph-lavender);
	padding: 80px 80px 72px;
	margin-block-start: 0;
}
.lph-guide-pourquoi__grid.wp-block-group {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	align-items: stretch !important;
	margin: 40px 0 48px;
}
.lph-guide-pourquoi__card.wp-block-group {
	flex: 1 1 calc(25% - 18px) !important;
	border-radius: 16px;
	padding: 32px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 16px !important;
	min-width: 180px;
}
.lph-guide-pourquoi__card .wp-block-image img {
	width: 80px;
	height: 80px;
	object-fit: contain;
}
.lph-guide-pourquoi__card-title.wp-block-heading {
	font-family: 'Gliker', sans-serif;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	text-align: center !important;
	margin: 0;
}
.lph-guide-pourquoi__card-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 500;
	color: rgba(255,255,255,0.85);
	text-align: center !important;
	margin: 0;
}
.lph-guide-pourquoi__btns.wp-block-buttons {
	justify-content: center !important;
	gap: 16px !important;
}
.lph-guide-pourquoi__btn-primary .wp-block-button__link,
.lph-guide-pourquoi__btn-secondary .wp-block-button__link {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	padding: 14px 32px !important;
	border-radius:9999px;
}
.lph-guide-pourquoi__btn-primary .wp-block-button__link{
	background:var(--lph-green);
	color: #fff;
	display: inline-flex !important;
	align-items: center !important;
}
.lph-guide-pourquoi__btn-secondary .wp-block-button__link {
	background: #fff;
	color: var(--lph-lavender);
}
.lph-guide-pourquoi__btn-primary .wp-block-button__link:hover,
.lph-guide-pourquoi__btn-secondary .wp-block-button__link:hover {
	background: var(--lph-blue);
	color: #fff;
}

/* ── FAQ ── */
.lph-guide-faq.wp-block-group {
	background: #fff;
	padding: 80px 80px 80px;
}
.lph-guide-faq__list.wp-block-group {
	max-width: 875px;
	margin: 48px auto 0 !important;
}
.lph-guide-faq__item.wp-block-details {
	background: var(--lph-blue);
	border-radius: 12px;
	padding: 0;
	margin: 0 0 18px;
	overflow: hidden;
}
.lph-guide-faq__item summary {
	font-family: 'Gliker', sans-serif;
	font-size: 20px;
	font-weight: 600;
	color: #fff;
	cursor: pointer;
	padding: 20px 24px;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
.lph-guide-faq__item summary::-webkit-details-marker { display: none; }
.lph-guide-faq__item summary::after {
	content: '';
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6.5l5 5 5-5' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	transition: transform 0.2s ease;
}
.lph-guide-faq__item[open] summary::after {
	transform: rotate(180deg);
}
.lph-guide-faq__answer {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	line-height: 1.7;
	color: #fff;
	margin: 0;
	padding: 0 24px 20px;
}

/* ── Guide Responsive ── */
@media (max-width: 1024px) {
	.lph-guide-hero.wp-block-group { padding: 64px 40px 48px; }
	.lph-guide-hero__title.wp-block-heading { font-size: 48px; }
	.lph-guide-bases.wp-block-group,
	.lph-guide-benefices.wp-block-group,
	.lph-guide-formes.wp-block-group,
	.lph-guide-choix.wp-block-group,
	.lph-guide-dosage.wp-block-group,
	.lph-guide-contre.wp-block-group,
	.lph-guide-idees.wp-block-group,
	.lph-guide-conseils.wp-block-group,
	.lph-guide-pourquoi.wp-block-group,
	.lph-guide-faq.wp-block-group { padding: 64px 40px; }
	.lph-guide-bases__illus.wp-block-group { flex: 0 0 320px !important; width: 320px; }
	.lph-guide-benefices__grid { grid-template-columns: repeat(2, 1fr); }
	.lph-guide-formes__card-photo.wp-block-group { flex: 0 0 260px !important; width: 260px; }
	.lph-guide-conseils__grid.wp-block-group { flex-wrap: wrap !important; }
	.lph-guide-conseils__card.wp-block-group { flex: 1 1 calc(33.333% - 16px) !important; }
	.lph-guide-pourquoi__card.wp-block-group { flex: 1 1 calc(50% - 12px) !important; }
}
@media (max-width: 768px) {
	.lph-guide-hero.wp-block-group { padding: 48px 24px 40px; }
	.lph-guide-hero__title.wp-block-heading { font-size: 36px; }
	.lph-guide-hero__subtitle { font-size: 16px; }
	.lph-guide-section-title.wp-block-heading { font-size: 28px; }
	.lph-guide-bases.wp-block-group,
	.lph-guide-benefices.wp-block-group,
	.lph-guide-formes.wp-block-group,
	.lph-guide-choix.wp-block-group,
	.lph-guide-dosage.wp-block-group,
	.lph-guide-contre.wp-block-group,
	.lph-guide-idees.wp-block-group,
	.lph-guide-conseils.wp-block-group,
	.lph-guide-pourquoi.wp-block-group,
	.lph-guide-faq.wp-block-group { padding: 48px 24px; }
	.lph-guide-bases__inner.wp-block-group { flex-direction: column !important; }
	.lph-guide-bases__illus.wp-block-group { flex: 1 1 auto !important; width: 100%; }
	.lph-guide-benefices__grid { grid-template-columns: 1fr; }
	.lph-guide-formes__card.wp-block-group { flex-direction: column !important; }
	.lph-guide-formes__card-photo.wp-block-group { flex: 0 0 220px !important; width: 100%; }
	.lph-guide-choix__card.wp-block-group { flex: 1 1 100% !important; }
	.lph-guide-dosage__bottom.wp-block-group { flex-direction: column !important; }
	.lph-guide-contre__row.wp-block-group { flex-direction: column !important; }
	.lph-guide-contre__effets-grid.wp-block-group { flex-wrap: wrap !important; }
	.lph-guide-contre__effet-card.wp-block-group { flex: 1 1 calc(50% - 8px) !important; }
	.lph-guide-conseils__grid.wp-block-group { flex-wrap: wrap !important; }
	.lph-guide-conseils__card.wp-block-group { flex: 1 1 calc(50% - 12px) !important; }
	.lph-guide-pourquoi__card.wp-block-group { flex: 1 1 100% !important; }
	.lph-guide-faq.wp-block-group { padding: 48px 20px; }
}
@media (max-width: 480px) {
	.lph-guide-conseils__card.wp-block-group { flex: 1 1 100% !important; }
	.lph-guide-formes__proscons.wp-block-group { flex-direction: column !important; }
}

/* ── Articles Sélection ─────────────────────────────────────── */
.lph-articles-selection {
	background: #F7F8FC;
	padding: 80px;
}
.lph-articles-selection__title {
	font-family: 'Gliker', sans-serif;
	font-size: 36px;
	font-weight: 700;
	color: #002689;
	text-align: center;
	margin: 0 0 48px;
}
.lph-articles-selection__empty {
	color: #999;
	text-align: center;
	padding: 40px 0;
}
.lph-articles-selection__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 360px));
	gap: 32px;
	justify-content: center;
}
.lph-article-card {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0px 1px 3px rgba(0,0,0,0.1), 0px 1px 2px -1px rgba(0,0,0,0.1);
	overflow: hidden;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	transition: box-shadow 0.2s, transform 0.2s;
	max-width: 360px;
	width: 100%;
}
.lph-article-card:hover {
	box-shadow: 0px 8px 24px rgba(0,0,0,0.12);
	transform: translateY(-2px);
}
.lph-article-card__img {
	height: 192px;
	background: #8b8fe8;
	position: relative;
	overflow: hidden;
	flex-shrink: 0;
}
.lph-article-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.lph-article-card__badge {
	position: absolute;
	top: 16px;
	left: 16px;
	background: #2ECC8F;
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 12px;
	border-radius: 9999px;
	white-space: nowrap;
	max-width: calc(100% - 32px);
	overflow: hidden;
	text-overflow: ellipsis;
}
.lph-article-card__body {
	padding: 24px;
	display: flex;
	flex-direction: column;
	flex: 1;
}
.lph-article-card__title {
	font-family: 'Gliker', sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: #002689;
	margin: 0 0 10px;
	line-height: 1.4;
}
.lph-article-card__excerpt {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 1.625;
	color: #002689;
	margin: 0 0 auto;
	flex: 1;
}
.lph-article-card__meta {
	display: flex;
	justify-content: space-between;
	margin: 18px 0 14px;
}
.lph-article-card__date,
.lph-article-card__time {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	color: #002689;
}
.lph-article-card__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: #8b8fe8;
}
@media (max-width: 1024px) {
	.lph-articles-selection { padding: 64px 40px; }
	.lph-articles-selection__grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }
}
@media (max-width: 768px) {
	.lph-articles-selection { padding: 48px 24px; }
	.lph-articles-selection__title { font-size: 28px; }
	.lph-articles-selection__grid { grid-template-columns: 1fr; gap: 20px; }
}

/* ── SAG Summary ────────────────────────────────────────────── */
.lph-sag-summary { padding: 64px 80px; }
.lph-sag-summary__title {
	font-family: 'Gliker', sans-serif;
	font-size: 48px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 32px;
	text-align: center;
}
@media (max-width: 768px) {
	.lph-sag-summary { padding: 40px 16px; }
	.lph-sag-summary__title { font-size: 32px; }
}

/* ── Page Résultats de Recherche ───────────────────────────────────────────── */

.lph-search-hero {
	background: var(--lph-lavender);
	padding: 60px 24px 80px;
	margin-left: calc(50% - 50vw);
}

.lph-search-hero__inner {
	max-width: 720px;
	margin: 0 auto;
	text-align: center;
}

.lph-search-hero__title {
	font-size: clamp(28px, 4vw, 48px);
	font-weight: 700;
	color: #fff;
	margin: 0 0 8px;
}

.lph-search-hero__sub {
	font-size: 16px;
	color: var(--lph-blue);
	margin: 0 0 32px;
}

.lph-search-hero__sub span{
	color: #fff;
}

.lph-search-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 24px;
}

.lph-search-count {
	color: var(--lph-blue);
	font-size: 16px;
	margin: 0;
}

.lph-search-sort {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: var(--lph-blue);
	font-family: 'Montserrat', sans-serif;
}

.lph-search-sort label {
	white-space: nowrap;
	font-weight: 600;
}

.lph-search-sort__select {
	border: 1.5px solid var(--lph-border);
	border-radius: 20px;
	padding: 6px 32px 6px 14px;
	font-size: 14px;
	font-family: 'Montserrat', sans-serif;
	color: var(--lph-blue);
	cursor: pointer;
	outline: none;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23002689' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 12px center;
	appearance: none;
	-webkit-appearance: none;
	transition: border-color .2s;
}

.lph-search-sort__select:focus {
	border-color: var(--lph-lavender);
}

.lph-search-bar {
	display: flex;
	align-items: center;
	gap: 12px;
	max-width: 800px;
	margin: 0 auto;
	background: #fff;
	border-radius: 9999px;
	padding: 8px 8px 8px 24px;
	box-shadow: 0px 10px 7.5px rgba(0,0,0,.10), 0px 4px 3px rgba(0,0,0,.10);
	height: 64px;
	box-sizing: border-box;
}

.lph-search-bar__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

.lph-search-bar__input {
	flex: 1;
	border: none;
	padding: 0;
	font-size: 16px;
	height: 100%;
	outline: none;
	background: transparent;
	color: rgba(0,0,0,.8);
	font-family: 'Montserrat', sans-serif;
	min-width: 0;
}

.lph-search-bar__input::placeholder {
	color: rgba(0,0,0,.25);
}

.lph-search-bar__btn {
	border: none;
	background: var(--lph-green);
	color: #fff;
	padding: 0 32px;
	font-size: 16px;
	font-weight: 500;
	font-family: 'Montserrat', sans-serif;
	border-radius: 9999px;
	cursor: pointer;
	transition: background .2s;
	height: 48px;
	white-space: nowrap;
	flex-shrink: 0;
}

.lph-search-bar__btn:hover {
	background: #1daa58;
}

.lph-search-results {
	padding: 48px clamp(16px, 5vw, 80px);
	max-width: 1340px;
	margin: 0 auto;
}

.lph-search-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px 24px;
	list-style: none;
	margin: 0 0 48px;
	padding: 0;
}

.lph-search-grid .lph-product-card{
	width: auto;
}

.lph-search-more-wrap {
	text-align: center;
	margin-top: 16px;
}

.lph-search-more-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--lph-lavender-bg);
	color: var(--lph-blue);
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.10), 0 4px 6px -4px rgba(0, 0, 0, 0.10);
	padding: 0 40px;
	height: 52px;
	font-size: 16px;
	font-weight: 600;
	border:none;
	border-radius: 40px;
	cursor: pointer;
	transition: background .2s, color .2s;
}

.lph-search-more-btn:hover:not(:disabled) {
	background: var(--lph-blue);
	color: #fff;
}

.lph-search-more-btn:disabled {
	opacity: .5;
	cursor: wait;
}

.lph-search-empty {
	display: flex;
	justify-content: center;
	padding: 48px 0;
}
.lph-search-empty__card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0;
	width: 100%;
	max-width: 840px;
	padding: 48px 24px 48px;
	background: rgba(138, 151, 254, 0.10);
	border: 2px solid rgba(138, 151, 254, 0.20);
	border-radius: 24px;
}
.lph-search-empty__icon-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 120px;
	background: #8a97fe;
	border-radius: 50%;
	margin-bottom: 32px;
	flex-shrink: 0;
}
.lph-search-empty__title {
	font-family: 'Gliker', sans-serif;
	font-size: 36px;
	font-weight: 700;
	color: var(--lph-blue);
	text-align: center;
	margin: 0 0 16px;
}
.lph-search-empty__subtitle {
	font-size: 16px;
	color: var(--lph-blue);
	text-align: center;
	max-width: 540px;
	line-height: 1.5;
	margin: 0 0 32px;
}
.lph-search-empty__tips {
	width: 100%;
	max-width: 540px;
	background: #fff;
	border-radius: 16px;
	padding: 24px;
	margin-bottom: 32px;
}
.lph-search-empty__tips-title {
	font-family: 'Gliker', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: var(--lph-blue);
	margin: 0 0 16px;
}
.lph-search-empty__tips-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.lph-search-empty__tips-list li {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 16px;
	color: var(--lph-blue);
	line-height: 1.5;
}
.lph-search-empty__tips-list li::before {
	content: '✓';
	display: flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	min-width: 20px;
	background: var(--lph-green);
	color: #fff;
	border-radius: 50%;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
}
.lph-search-empty__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 56px;
	padding: 0 48px;
	background: var(--lph-green);
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	border-radius: 9999px;
	text-decoration: none;
	transition: opacity 0.2s;
	text-align: center;
}
.lph-search-empty__btn:hover {
	background: var(--lph-blue);
	color: #fff;
}

@media (max-width: 1024px) {
	.lph-search-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
	.lph-search-hero { padding: 40px 16px 56px; }
	.lph-search-hero__title { font-size: 28px; }
	.lph-search-bar { padding: 6px 6px 6px 16px; height: 56px; }
	.lph-search-bar__btn { padding: 0 20px; font-size: 14px; height: 44px; }
	.lph-search-results { padding: 32px 16px; }
	.lph-search-grid { grid-template-columns: 1fr; }
	.lph-search-more-btn { padding: 0 32px; font-size: 15px; }
	.lph-search-empty__title { font-size: 26px; }
	.lph-search-empty__icon-wrap { width: 88px; height: 88px; }
	.lph-search-empty__btn { padding: 0 32px; }
}

/* Surcharge css age verif */
.avwp-av{
	border-radius: 16px !important;
}
.avwp-av button{
	color:#fff !important;
	font-weight: 700 !important;
    font-size: 16px !important;
    line-height: 24px !important;
    padding: 8px 20px !important;
    border: none !important;
    border-radius: 99px !important;
	cursor: pointer;
    height: 40px !important;
    text-decoration: none !important;
    flex-shrink: 0;
    transition: background .15s;
}

.avwp-av button.yes{
	background: var(--lph-lavender) !important;
}
.avwp-av button.yes:hover{
	background: var(--lph-blue) !important;
}

/* =============================================================================
   LPH À PROPOS
   ============================================================================= */

/* --- Notre Histoire --- */
.lph-apropos-histoire {
	background: #fff;
	width: 100%;
	padding: 80px 0;
	box-sizing: border-box;
}
.lph-histoire-inner {
	display: flex !important;
	align-items: center;
	gap: 64px;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 80px;
	box-sizing: border-box;
}
.lph-histoire-text {
	flex: 1;
	min-width: 0;
}
.lph-histoire-title {
	font-family: 'Gliker', sans-serif !important;
	font-size: 48px !important;
	font-weight: 700;
	color: var(--lph-blue) !important;
	line-height: 1 !important;
	margin: 0 0 24px !important;
}
.lph-histoire-text p {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	color: var(--lph-blue);
	line-height: 1.5;
	margin: 0 0 16px;
}
.lph-histoire-visual {
	width: 400px;
	height: 400px;
	flex-shrink: 0;
	background: var(--lph-lavender);
	border-radius: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.lph-histoire-icon {
	margin: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.lph-histoire-icon img {
	width: 120px;
	height: 120px;
	object-fit: contain;
	display: block;
}

/* --- Nos Valeurs --- */
.lph-apropos-valeurs {
	background: var(--lph-lavender);
	width: 100%;
	padding: 80px 24px;
	box-sizing: border-box;
}
.lph-valeurs-title {
	font-family: 'Gliker', sans-serif !important;
	font-size: 48px !important;
	font-weight: 700;
	color: #fff !important;
	text-align: center;
	margin: 0 0 48px !important;
	line-height: 1;
}
.lph-valeurs-grid {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
	max-width: 1200px;
	margin: 0 auto;
}
.lph-valeur-card {
	background: #fff;
	border-radius: 16px;
	padding: 32px;
	box-shadow: 0 10px 7.5px rgba(0,0,0,.1), 0 4px 3px rgba(0,0,0,.1);
	display: flex !important;
	flex-direction: column;
	align-items: center;
	gap: 24px;
	text-align: center;
}
.lph-valeurs-grid > *,
.lph-equipe-grid > *,
.lph-valeur-card > *,
.lph-equipe-card > * { margin-block-start: 0 !important; }

.lph-valeur-icon { margin: 0 !important; }
.lph-valeur-icon img {
	width: 64px !important;
	height: 64px !important;
	object-fit: contain;
	display: block;
}
.lph-valeur-name {
	font-family: 'Gliker', sans-serif !important;
	font-size: 20px !important;
	font-weight: 700;
	color: var(--lph-blue) !important;
	text-align: center;
	margin: 0 !important;
	line-height: 1.4;
}
.lph-valeur-desc {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 14px !important;
	color: var(--lph-blue) !important;
	text-align: center;
	line-height: 1.43;
	margin: 0 !important;
}

/* --- Notre Équipe --- */
.lph-apropos-equipe {
	background: #fff;
	width: 100%;
	padding: 80px 24px;
	box-sizing: border-box;
}
.lph-equipe-title {
	font-family: 'Gliker', sans-serif !important;
	font-size: 48px !important;
	font-weight: 700;
	color: var(--lph-blue) !important;
	text-align: center;
	margin: 0 0 16px !important;
	line-height: 1;
}
.lph-equipe-sub {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px !important;
	color: var(--lph-blue) !important;
	text-align: center;
	margin: 0 0 48px !important;
	line-height: 1.5;
}
.lph-equipe-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 32px;
	max-width: 1200px;
	margin: 0 auto;
}
.lph-equipe-card {
	background: #fff;
	border: 2px solid rgba(138, 151, 254, .2);
	border-radius: 16px;
	padding: 26px;
	box-shadow: 0 10px 7.5px rgba(0,0,0,.1), 0 4px 3px rgba(0,0,0,.1);
	display: flex !important;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	text-align: center;
}
.lph-equipe-avatar {
	width: 120px !important;
	height: 120px !important;
	background: var(--lph-lavender);
	border-radius: 50% !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	padding: 24px !important;
	box-sizing: border-box;
	flex-shrink: 0;
	margin: 0 auto !important;
	align-self: center;
}
.lph-equipe-avatar img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	display: block;
}
.lph-equipe-name {
	font-family: 'Gliker', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700;
	color: var(--lph-blue) !important;
	text-align: center;
	margin: 0 !important;
}
.lph-equipe-role {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 14px !important;
	font-weight: 600;
	color: var(--lph-green) !important;
	text-align: center;
	margin: 0 !important;
}

@media (max-width: 1024px) {
	.lph-equipe-grid { grid-template-columns: repeat(2, 1fr); }
	.lph-histoire-inner { gap: 40px; padding: 0 48px; }
	.lph-histoire-visual { width: 300px; height: 300px; }
	.lph-apropos-hero__title { font-size: 48px !important; }
}
@media (max-width: 768px) {
	.lph-histoire-inner { flex-direction: column; gap: 32px; padding: 0 24px; }
	.lph-histoire-visual { width: 100%; height: 240px; }
	.lph-valeurs-grid { grid-template-columns: 1fr; }
	.lph-histoire-title,
	.lph-valeurs-title,
	.lph-equipe-title { font-size: 36px !important; }
}
@media (max-width: 480px) {
	.lph-apropos-hero { padding: 60px 16px; }
	.lph-apropos-hero__title { font-size: 34px !important; }
	.lph-apropos-hero__sub { font-size: 16px !important; }
	.lph-apropos-histoire { padding: 60px 0; }
	.lph-apropos-valeurs,
	.lph-apropos-equipe { padding: 60px 16px; }
	.lph-equipe-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
	.lph-equipe-card { padding: 20px 16px; }
}
