/* Anzaïra Landing Produit : tout est préfixé .apl pour éviter les conflits avec le thème. */
.apl {
	--apl-blue: #4a7214;
	--apl-blue-dark: #36540f;
	--apl-sky: #d9f293;
	--apl-sky-soft: #f1f9dc;
	--apl-sand: #f8fbf1;
	--apl-beige: #f6f0e4;
	--apl-line: #e9ece3;
	--apl-text: #131313;
	--apl-muted: #6f6168;
	--apl-radius: 4px;
	--apl-serif: "IBM Plex Serif", Georgia, serif;
	--apl-ar-font: "Tajawal", "Segoe UI", Tahoma, "Noto Sans Arabic", sans-serif;
	background: #fff;
	color: var(--apl-text);
	font-family: "Jost", "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.6;
	overflow-x: clip;
}
.apl *,
.apl *::before,
.apl *::after { box-sizing: border-box; }
.apl img { max-width: 100%; height: auto; display: block; }
.apl p { margin: 0 0 .8em; }
.apl ul,
.apl ol { margin: 0; padding: 0; list-style: none; }
.apl-wrap { width: 100%; max-width: 1180px; margin: 0 auto; padding: 0 16px; }
.apl-wrap--narrow { max-width: 820px; }

/* Bilingue */
.apl .apl-ar,
.apl .apl-btn-ar {
	font-family: var(--apl-ar-font);
	direction: rtl;
	text-align: right;
	unicode-bidi: isolate;
	line-height: 1.7;
}
.apl .apl-bi { display: flex; flex-direction: column; gap: 2px; }
.apl .apl-bi > .apl-ar { color: var(--apl-muted); font-size: .95em; }
.apl .apl-bi--inline { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }

/* Section 1 */
.apl-hero { padding: 16px 0 36px; background: #fff; }
.apl-hero__grid { display: grid; gap: 22px; }
.apl-gallery { position: relative; min-width: 0; }
.apl-badge {
	position: absolute; z-index: 2; top: 12px; left: 12px;
	padding: 4px 12px; border-radius: 999px;
	background: var(--apl-blue); color: #fff; font-weight: 700; font-size: 14px;
}
.apl-gallery__track {
	display: flex; overflow-x: auto; scroll-snap-type: x mandatory;
	scrollbar-width: none; border-radius: var(--apl-radius);
	background: var(--apl-beige); outline-offset: 3px;
	-webkit-overflow-scrolling: touch;
}
.apl-gallery__track::-webkit-scrollbar { display: none; }
.apl-slide { flex: 0 0 100%; margin: 0; scroll-snap-align: center; aspect-ratio: 1 / 1; }
.apl-slide .apl-img,
.apl-slide img { width: 100%; height: 100%; object-fit: cover; }
.apl-thumbs { display: flex; gap: 8px; margin-top: 10px; overflow-x: auto; padding-bottom: 2px; }
.apl .apl-thumb {
	flex: 0 0 64px; width: 64px; height: 64px; padding: 0; margin: 0;
	border: 2px solid transparent; border-radius: 10px; background: var(--apl-beige);
	overflow: hidden; cursor: pointer; opacity: .75; min-height: 0;
}
.apl .apl-thumb img { width: 100%; height: 100%; object-fit: cover; }
.apl .apl-thumb.is-active { border-color: var(--apl-blue); opacity: 1; }

.apl-info { min-width: 0; }
.apl-crumbs { font-size: 13px; color: var(--apl-muted); margin-bottom: 8px; }
.apl-crumbs a { color: var(--apl-muted); text-decoration: none; }
.apl-crumbs a:hover { text-decoration: underline; }
.apl-crumbs span { margin: 0 4px; }
.apl .apl-title {
	display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline;
	gap: 2px 16px; margin: 0 0 10px;
	font-size: clamp(24px, 5.5vw, 34px); line-height: 1.25; font-weight: 700; color: var(--apl-text);
	letter-spacing: 0; text-transform: none;
}
.apl .apl-title .apl-ar { font-size: .9em; color: var(--apl-blue-dark); }
.apl-rating { display: inline-flex; align-items: center; gap: 8px; color: var(--apl-muted); font-size: 14px; text-decoration: none; margin-bottom: 6px; }
.apl .apl-price { font-size: 28px; font-weight: 700; color: var(--apl-blue-dark); line-height: 1.3; margin: 4px 0 8px; }
.apl .apl-price del { color: var(--apl-muted); font-size: .65em; font-weight: 400; margin-right: 6px; }
.apl .apl-price ins { text-decoration: none; }
.apl-stock { display: inline-flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; margin: 0 0 12px; font-size: 14px; font-weight: 600; }
.apl-stock.is-in { color: #1c7a43; }
.apl-stock.is-out { color: #b3261e; }
.apl-low { padding: 1px 8px; border-radius: 999px; background: #fdf1ef; color: #b3261e; font-weight: 600; }
.apl-lead { margin: 0 0 14px; font-size: 16px; }
.apl-lead .apl-bi > .apl-fr { font-size: 16px; }

/* Formulaire d'achat Woo + bouton rapide */
.apl-buy { margin: 0 0 14px; padding: 14px; border: 1px solid var(--apl-line); border-radius: var(--apl-radius); background: var(--apl-sand); }
.apl-buy form.cart { margin: 0; }
.apl-buy table.variations { width: 100%; margin: 0 0 10px; border: 0; }
.apl-buy table.variations th,
.apl-buy table.variations td { display: block; padding: 0 0 6px; border: 0; background: none; text-align: left; }
.apl-buy table.variations th label { font-weight: 600; }
.apl-buy select { width: 100%; max-width: 100%; min-height: 46px; border-radius: 8px; }
.apl-buy .single_variation_wrap { margin-top: 6px; }
.apl-buy .quantity { margin-right: 8px; }
.apl-buy .single_add_to_cart_button { min-height: 48px; border-radius: 8px; }
.apl-buy .reset_variations { font-size: 13px; }

/* Boutons */
.apl .apl-btn,
.apl .aqo-open.apl-btn {
	display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 0;
	width: 100%; min-height: 54px; margin: 10px 0 0; padding: 10px 22px;
	border: 2px solid var(--apl-blue); border-radius: 10px;
	background: var(--apl-blue); color: #fff; font-size: 17px; font-weight: 700; line-height: 1.25;
	text-align: center; text-decoration: none; cursor: pointer; letter-spacing: 0; text-transform: none;
	box-shadow: 0 6px 16px rgba(74, 114, 20, .22);
	transition: background-color .2s, transform .1s;
}
.apl .apl-btn:hover,
.apl .apl-btn:focus-visible { background: var(--apl-blue-dark); border-color: var(--apl-blue-dark); color: #fff; }
.apl .apl-btn:active { transform: translateY(1px); }
.apl .apl-btn:focus-visible { outline: 3px solid var(--apl-sky); outline-offset: 2px; }
.apl .apl-btn .apl-btn-ar { display: block; text-align: center; font-size: 15px; font-weight: 500; opacity: .95; }
.apl .apl-btn.apl-btn--final,
.apl .aqo-open.apl-btn.apl-btn--final { max-width: 420px; margin: 14px auto 0; }

.apl-trust { display: grid; gap: 8px; margin: 0; }
.apl-trust li { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; }
.apl-trust a { color: var(--apl-blue-dark); text-decoration: none; }
.apl-trust a:hover { text-decoration: underline; }
.apl-ico {
	flex: none; display: inline-flex; width: 28px; height: 28px; align-items: center; justify-content: center;
	border-radius: 50%; background: var(--apl-sky-soft); color: var(--apl-blue); font-size: 14px;
}

/* Sections */
.apl-section { padding: 44px 0; }
.apl-tint { background: var(--apl-beige); }
.apl .apl-h2 {
	display: flex; flex-direction: column; align-items: center; gap: 0;
	margin: 0 0 26px; text-align: center; font-size: clamp(22px, 4.6vw, 30px); line-height: 1.3; font-weight: 700;
	color: var(--apl-text); letter-spacing: 0; text-transform: none;
}
.apl .apl-h2 .apl-ar { text-align: center; color: var(--apl-blue-dark); font-size: .85em; font-weight: 500; }
.apl .apl-h3 { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 10px; margin: 0 0 8px; font-size: 18px; font-weight: 700; color: var(--apl-text); letter-spacing: 0; text-transform: none; }
.apl .apl-h3 .apl-ar { color: var(--apl-blue-dark); font-weight: 500; }

.apl-cards { display: grid; gap: 12px; grid-template-columns: 1fr; }
.apl-card {
	position: relative; padding: 16px 16px 16px 52px; border: 1px solid var(--apl-line); border-radius: var(--apl-radius);
	background: #fff;
}
.apl-reassure__grid .apl-card { padding: 16px; }
.apl-check {
	position: absolute; left: 14px; top: 16px; width: 26px; height: 26px; border-radius: 50%;
	background: var(--apl-sky-soft); color: var(--apl-blue); text-align: center; line-height: 26px; font-weight: 700;
}
.apl .apl-claim-ar { margin: 14px 0 0; text-align: center; color: var(--apl-blue-dark); }

.apl-visuals { display: grid; gap: 12px; grid-template-columns: 1fr; margin: 0 0 26px; }
.apl-visuals figure { margin: 0; border-radius: var(--apl-radius); overflow: hidden; background: #fff; }
.apl-visuals img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.apl-copy { font-size: 16px; }
.apl-cols { display: grid; gap: 16px; }
.apl-raw img { border-radius: 10px; }
.apl-ingredients { margin-top: 24px; }
.apl-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.apl-chips li { padding: 6px 14px; border: 1px solid var(--apl-line); border-radius: 999px; background: #fff; font-size: 14px; }

.apl-why__list { display: grid; gap: 12px; grid-template-columns: 1fr; }
.apl-why__list li { padding: 18px 16px; border-radius: var(--apl-radius); background: var(--apl-sky-soft); text-align: center; }
.apl-why__list .apl-bi > .apl-fr { font-weight: 700; }
.apl-why__list .apl-bi > .apl-ar { text-align: center; }

.apl-steps { display: grid; gap: 12px; counter-reset: apl; }
.apl-steps li {
	counter-increment: apl; position: relative; padding: 14px 16px 14px 60px;
	border-radius: var(--apl-radius); background: #fff; border: 1px solid var(--apl-line);
}
.apl-steps li::before {
	content: counter(apl); position: absolute; left: 14px; top: 12px; width: 34px; height: 34px; border-radius: 50%;
	background: var(--apl-blue); color: #fff; text-align: center; line-height: 34px; font-weight: 700;
}
.apl-ar .apl-steps li { padding: 14px 60px 14px 16px; }
.apl-ar .apl-steps li::before { left: auto; right: 14px; }

.apl-reviews { display: grid; gap: 12px; margin: 0 0 24px; }
.apl-review { margin: 0; padding: 16px; border-radius: var(--apl-radius); background: #fff; border: 1px solid var(--apl-line); }
.apl-review p { margin: 6px 0; }
.apl-review footer { font-size: 14px; color: var(--apl-muted); font-weight: 600; }
.apl-reassure__grid { display: grid; gap: 12px; grid-template-columns: 1fr; }

.apl-faq__item { margin: 0 0 10px; border: 1px solid var(--apl-line); border-radius: var(--apl-radius); background: #fff; }
.apl-faq__item summary { padding: 14px 16px; cursor: pointer; font-weight: 700; list-style: none; }
.apl-faq__item summary::-webkit-details-marker { display: none; }
.apl-faq__item summary:focus-visible { outline: 3px solid var(--apl-sky); outline-offset: 2px; border-radius: var(--apl-radius); }
.apl-faq__item[open] summary { border-bottom: 1px solid var(--apl-line); }
.apl-faq__a { padding: 14px 16px; }

.apl-final { background: linear-gradient(180deg, var(--apl-sky-soft), var(--apl-beige)); }
.apl-final__box { text-align: center; }
.apl-final .apl-h2 { margin-bottom: 8px; }
.apl .apl-price--final { margin-bottom: 6px; }

/* Barre fixe mobile */
.apl-sticky {
	position: fixed; z-index: 9990; left: 0; right: 0; bottom: 0;
	display: flex; align-items: center; gap: 12px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
	background: #fff; border-top: 1px solid var(--apl-line); box-shadow: 0 -6px 18px rgba(0, 0, 0, .08);
	transform: translateY(110%); visibility: hidden; transition: transform .25s, visibility .25s;
}
.apl-sticky.is-on { transform: none; visibility: visible; }
.apl-sticky__price { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; line-height: 1.2; }
.apl-sticky__name { font-size: 12px; color: var(--apl-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.apl-sticky__amount { font-weight: 700; color: var(--apl-blue-dark); font-size: 16px; }
.apl-sticky__amount del { font-size: .75em; font-weight: 400; color: var(--apl-muted); margin-right: 4px; }
.apl-sticky__amount ins { text-decoration: none; }
.apl .apl-btn.apl-btn--sticky { width: auto; flex: 0 0 auto; margin: 0; min-height: 48px; padding: 6px 18px; font-size: 15px; box-shadow: none; }
.apl .apl-btn.apl-btn--sticky .apl-btn-ar { font-size: 13px; }

@media (max-width: 899px) {
	.apl-final { padding-bottom: 96px; }
}

@media (min-width: 640px) {
	.apl-cards { grid-template-columns: repeat(2, 1fr); }
	.apl-why__list { grid-template-columns: repeat(3, 1fr); }
	.apl-reassure__grid { grid-template-columns: repeat(3, 1fr); }
	.apl-reviews { grid-template-columns: repeat(2, 1fr); }
	.apl-visuals--2 { grid-template-columns: repeat(2, 1fr); }
	.apl-visuals--3 { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 900px) {
	.apl-hero { padding: 28px 0 56px; }
	.apl-hero__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 48px; align-items: start; }
	.apl-gallery { position: sticky; top: 24px; }
	.apl-section { padding: 64px 0; }
	.apl-cards { grid-template-columns: repeat(3, 1fr); }
	.apl-cols { grid-template-columns: 1fr 1fr; gap: 40px; }
	.apl-sticky { display: none; }
	.apl .apl-price { font-size: 32px; }
}

@media (prefers-reduced-motion: reduce) {
	.apl-sticky,
	.apl .apl-btn { transition: none; }
	.apl-gallery__track { scroll-behavior: auto; }
}

/* Bouton de commande rapide rendu par le plugin de commande (page produit) */
.apl .aqo-open.aqo-open--product {
	flex-direction: column; gap: 0; width: 100%; min-height: 54px; margin: 10px 0 0; padding: 10px 22px;
	font-size: 17px; font-weight: 700; text-transform: none; letter-spacing: 0; line-height: 1.25;
	box-shadow: 0 6px 16px rgba(74, 114, 20, .22);
}
.apl .aqo-open .apl-btn-ar { display: block; text-align: center; font-size: 15px; font-weight: 500; }
.apl-visuals--1 { max-width: 760px; margin-left: auto; margin-right: auto; }
.apl-visuals--1 img { aspect-ratio: 16 / 9; }
.apl .apl-buy .variations_form { display: block; }

/* Formulaire Woo : compactage dans le bloc d'achat */
.apl .apl-buy table.variations td.value,
.apl .apl-buy table.variations th.label { padding: 0 0 4px; margin: 0; height: auto; }
.apl .apl-buy table.variations ul.variable-items-wrapper { margin: 0 0 6px; }
.apl .apl-buy .single_variation_wrap .woocommerce-variation { margin: 0; min-height: 0; }
.apl .apl-buy .woocommerce-product-details__add-to-cart,
.apl .apl-buy form.cart:not(.variations_form) { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.apl .apl-buy .woocommerce-product-details__add-to-cart .single_add_to_cart_button { flex: 1 1 140px; height: auto; min-height: 50px; padding: 8px 14px; line-height: 1.25; }
.apl .apl-buy .yith-wcwl-add-to-wishlist-button__label { display: none; }
.apl .apl-buy .yith-add-to-wishlist-button-block { margin: 0; height: auto; }
.apl .apl-buy .yith-wcwl-add-to-wishlist-button { height: auto; }

@media (max-width: 899px) {
	.apl-landing #moderncart-floating-cart { bottom: 96px !important; }
}

.apl .apl-price:empty { display: none; }
.apl .apl-buy .reset_variations[style*="hidden"] { display: none; }
.apl .apl-buy .single_variation_wrap { margin-top: 0; }
.apl .apl-buy .woo-variation-raw-select { margin: 0; }

/* ---- Charte graphique Anzaïra : IBM Plex Serif léger en capitales espacées, Josefin Sans, vert olive et citron, dégradé bleu ciel vers vert pâle ---- */
.apl .apl-tint,
.apl .apl-final { background: linear-gradient(135deg, #e8f3df 0%, #fbf1f6 100%); }
.apl .apl-hero { background: #fff; }
.apl .apl-title {
	font-family: var(--apl-serif); font-weight: 300; text-transform: none;
	letter-spacing: .01em; font-size: clamp(26px, 5.6vw, 38px); line-height: 1.25;
}
.apl .apl-title .apl-ar { font-family: var(--apl-ar-font); font-weight: 500; text-transform: none; letter-spacing: 0; color: var(--apl-blue); }
.apl .apl-h2 {
	font-family: var(--apl-serif); font-weight: 300; text-transform: none;
	letter-spacing: .01em; font-size: clamp(24px, 5.4vw, 36px); line-height: 1.25;
}
.apl .apl-h2 .apl-ar { font-family: var(--apl-ar-font); font-weight: 500; text-transform: none; letter-spacing: 0; color: var(--apl-blue); }
.apl .apl-h2::after { content: ""; display: block; width: 64px; height: 2px; margin: 12px auto 0; background: var(--apl-sky); }
.apl .apl-h3 { font-family: "Jost", sans-serif; text-transform: none; letter-spacing: .02em; font-size: 17px; font-weight: 600; }
.apl .apl-h3 .apl-ar { text-transform: none; letter-spacing: 0; color: var(--apl-blue); }
.apl .apl-price { color: var(--apl-text); font-weight: 700; }
.apl .apl-badge { background: #b7165e; border-radius: 999px; text-transform: uppercase; }
.apl .apl-gallery__track,
.apl .apl-visuals figure { border-radius: var(--apl-radius); }
.apl .apl-card,
.apl .apl-review,
.apl .apl-faq__item,
.apl .apl-steps li,
.apl .apl-chips li,
.apl .apl-buy { box-shadow: 0 1px 6px rgba(0, 0, 0, .04); }
.apl .apl-buy { background: #fff; }
.apl .apl-chips li { border-radius: 999px; }
.apl .apl-btn,
.apl .aqo-open.apl-btn,
.apl .aqo-open.aqo-open--product { border-radius: 999px; box-shadow: none; }
.apl .apl-btn:hover,
.apl .apl-btn:focus-visible { color: #fff; }
.apl .apl-check { background: var(--apl-sky); color: #3d5a10; }
.apl .apl-ico { background: var(--apl-sky); color: #3d5a10; }
.apl .apl-why__list li { background: #fff; border: 1px solid var(--apl-line); }
.apl .apl-low { background: #fbeceb; color: #a24540; }
.apl .apl-crumbs a { color: var(--apl-muted); }
.apl .apl-trust a { color: var(--apl-blue-dark); }
.apl .apl-sticky__amount { color: var(--apl-text); }
.apl .apl-stock.is-in { color: var(--apl-blue-dark); }

/* ---- Mobile : moins de défilement ---- */
@media (max-width: 639px) {
	.apl-section { padding: 32px 0; }
	.apl .apl-h2 { margin-bottom: 18px; }
	.apl-visuals--2,
	.apl-visuals--3 { grid-template-columns: repeat(2, 1fr); gap: 8px; }
	.apl-visuals--2 img,
	.apl-visuals--3 img { aspect-ratio: 1 / 1; }
	.apl-visuals--2 figure:last-child:nth-child(odd),
	.apl-visuals--3 figure:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.apl-visuals--2 figure:last-child:nth-child(odd) img,
	.apl-visuals--3 figure:last-child:nth-child(odd) img { aspect-ratio: 16 / 9; }
	.apl-card { padding: 12px 12px 12px 48px; }
	.apl-why__list li { padding: 14px 12px; }
	.apl-sticky { gap: 10px; padding-left: 12px; padding-right: 12px; }
	.apl-sticky__amount { font-size: 14px; }
	.apl-sticky__amount .woocommerce-Price-amount { white-space: nowrap; }
	.apl .apl-btn.apl-btn--sticky { padding: 6px 12px; font-size: 14px; }
}

/* Bouton WhatsApp du module « Order on WhatsApp » : pleine largeur et libellé */
.apl .apl-buy .div_evowap_btn { display: block; margin: 10px 0 0; }
.apl .apl-buy .evowap_btn {
	display: flex; align-items: center; justify-content: center; gap: 10px;
	width: 100%; min-height: 50px; box-sizing: border-box; border-radius: 999px; text-decoration: none;
}
.apl .apl-buy .evowap_btn::after { content: "Commander sur WhatsApp"; color: #fff; font-weight: 700; font-size: 15px; line-height: 1.2; }

/* ===== v1.4.0 : fiche produit orientée conversion ===== */
.apl .apl-svg { display: block; flex: none; }
.apl .apl-tagline { margin: 0 0 10px; color: var(--apl-blue-dark); font-size: 17px; font-weight: 500; line-height: 1.45; }
.apl .apl-tagline .apl-bi > .apl-ar { font-size: .92em; }

.apl .apl-points { display: grid; gap: 8px; margin: 0 0 16px; }
.apl .apl-points li { display: flex; align-items: flex-start; gap: 10px; font-size: 15px; line-height: 1.45; }
.apl .apl-points__ico { flex: none; display: inline-flex; width: 24px; height: 24px; margin-top: 1px; align-items: center; justify-content: center; border-radius: 50%; background: var(--apl-sky); color: #3d5a10; }
.apl .apl-points__ico .apl-svg { width: 14px; height: 14px; stroke-width: 2.4; }

.apl .apl-for { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0 0 16px; }
.apl .apl-for__label { display: inline-flex; flex-direction: column; font-size: 13px; font-weight: 600; color: var(--apl-muted); line-height: 1.3; }
.apl .apl-chips--sm li { padding: 4px 12px; font-size: 13px; background: var(--apl-sky-soft); border-color: transparent; }

.apl .apl-ico .apl-svg { width: 16px; height: 16px; }
.apl .apl-trust { margin-top: 14px; }
.apl .apl-wa {
	display: flex; align-items: center; gap: 12px; margin-top: 14px; padding: 12px 16px; min-height: 52px;
	border: 1.5px solid var(--apl-blue); border-radius: 14px; background: #fff;
	color: var(--apl-blue-dark); text-decoration: none; font-size: 14px; font-weight: 600; line-height: 1.35;
	transition: background-color .2s;
}
.apl .apl-wa:hover,
.apl .apl-wa:focus-visible { background: var(--apl-sky-soft); color: var(--apl-blue-dark); }
.apl .apl-wa:focus-visible { outline: 3px solid var(--apl-sky); outline-offset: 2px; }
.apl .apl-wa .apl-svg { width: 24px; height: 24px; color: var(--apl-blue); }
.apl .apl-wa__t { display: flex; flex-direction: column; }
.apl .apl-wa__t .apl-ar { font-weight: 500; color: var(--apl-muted); font-size: .92em; }

.apl .apl-check .apl-svg { width: 16px; height: 16px; margin: 5px; stroke-width: 2.4; }
.apl .apl-check { line-height: 0; }

/* Composition */
.apl .apl-composition { background: var(--apl-sky-soft); }
.apl .apl-comp { display: grid; gap: 14px; grid-template-columns: 1fr; max-width: 920px; margin: 0 auto; }
.apl .apl-comp__col { padding: 18px 18px 8px; border: 1px solid var(--apl-line); border-radius: var(--apl-radius); background: #fff; box-shadow: 0 1px 6px rgba(0, 0, 0, .04); }
.apl .apl-comp__col .apl-h3 { margin-bottom: 6px; padding-bottom: 10px; border-bottom: 1px solid var(--apl-line); }
.apl .apl-list li { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--apl-line); }
.apl .apl-list li:last-child { border-bottom: 0; }
.apl .apl-list__ico { flex: none; display: inline-flex; width: 30px; height: 30px; align-items: center; justify-content: center; border-radius: 50%; }
.apl .apl-list__ico .apl-svg { width: 16px; height: 16px; }
.apl .apl-list--in .apl-list__ico { background: var(--apl-sky); color: #3d5a10; }
.apl .apl-list--out .apl-list__ico { background: #fbeceb; color: #a24540; }
.apl .apl-list .apl-bi > .apl-fr { font-weight: 500; }

/* Comment commander */
.apl .apl-how { display: grid; gap: 12px; grid-template-columns: 1fr; margin: 0 0 26px; counter-reset: aplhow; }
.apl .apl-how li { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border: 1px solid var(--apl-line); border-radius: var(--apl-radius); background: var(--apl-beige); font-weight: 600; }
.apl .apl-how__n { flex: none; display: inline-flex; width: 46px; height: 46px; align-items: center; justify-content: center; border-radius: 50%; background: #24401b; color: #fff; }
.apl .apl-how__n .apl-svg { width: 22px; height: 22px; }

/* Produits complémentaires */
.apl .apl-rel { display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); }
.apl .apl-rel__card { margin: 0; }
.apl .apl-rel__link { display: flex; flex-direction: column; height: 100%; border: 1px solid var(--apl-line); border-radius: var(--apl-radius); background: #fff; color: var(--apl-text); text-decoration: none; overflow: hidden; transition: box-shadow .2s, transform .2s; }
.apl .apl-rel__link:hover,
.apl .apl-rel__link:focus-visible { box-shadow: 0 8px 22px rgba(36, 64, 27, .12); transform: translateY(-2px); color: var(--apl-text); }
.apl .apl-rel__link:focus-visible { outline: 3px solid var(--apl-sky); outline-offset: 2px; }
.apl .apl-rel__img { display: block; aspect-ratio: 1 / 1; background: var(--apl-beige); }
.apl .apl-rel__img img { width: 100%; height: 100%; object-fit: cover; }
.apl .apl-rel__name { display: flex; flex-direction: column; gap: 0; padding: 12px 12px 4px; font-weight: 600; font-size: 15px; line-height: 1.35; }
.apl .apl-rel__name .apl-ar { color: var(--apl-muted); font-weight: 500; font-size: .9em; }
.apl .apl-rel__price { display: flex; flex-direction: column; margin-top: auto; padding: 0 12px 14px; font-size: 15px; color: var(--apl-blue-dark); font-weight: 700; }
.apl .apl-rel__price .apl-ar { color: var(--apl-muted); font-weight: 500; font-size: .9em; }
.apl .apl-rel__price del { color: var(--apl-muted); font-weight: 400; margin-right: 4px; }
.apl .apl-rel__price ins { text-decoration: none; }

/* Appel à l'action final */
.apl .apl-final__trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; margin: 16px 0 0; font-size: 14px; color: var(--apl-muted); }
.apl .apl-final__trust li { display: inline-flex; align-items: center; gap: 8px; }
.apl .apl-final__trust .apl-svg { width: 18px; height: 18px; color: var(--apl-blue); }
.apl .apl-final__wa { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 10px; color: var(--apl-blue-dark); font-weight: 600; font-size: 15px; text-decoration: underline; text-underline-offset: 3px; }
.apl .apl-final__wa .apl-svg { width: 20px; height: 20px; }

@media (min-width: 640px) {
	.apl .apl-comp { grid-template-columns: repeat(2, 1fr); }
	.apl .apl-comp:has(> :only-child) { grid-template-columns: minmax(0, 520px); justify-content: center; }
	.apl .apl-how { grid-template-columns: repeat(3, 1fr); }
	.apl .apl-how li { flex-direction: column; text-align: center; padding: 20px 16px; }
	.apl .apl-how .apl-bi > .apl-ar { text-align: center; }
	.apl .apl-rel { grid-template-columns: repeat(4, 1fr); gap: 16px; }
}
@media (max-width: 639px) {
	.apl .apl-how { margin-bottom: 20px; }
	.apl .apl-comp__col { padding: 14px 14px 4px; }
}

/* v1.4.2 : l'achat remonte juste sous le prix */
.apl .apl-buy { margin: 6px 0 18px; }
.apl .apl-lead { margin: 4px 0 16px; padding-top: 14px; border-top: 1px solid var(--apl-line); color: var(--apl-muted); font-size: 15px; }
.apl .apl-lead .apl-bi > .apl-fr { font-size: 15px; }
.apl .apl-tagline { font-size: 16px; }

/* v1.4.3 : alignements et compacité */
.apl .apl-points li > .apl-bi,
.apl .apl-trust li > .apl-bi,
.apl .apl-how li > .apl-bi { flex: 1 1 auto; min-width: 0; }
.apl .apl-list li > .apl-bi {
	flex: 1 1 auto; min-width: 0; flex-direction: row; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0 12px;
}
.apl .apl-list li > .apl-bi > .apl-ar { margin-inline-start: auto; }
.apl .apl-list li { padding: 8px 0; }
.apl .apl-buy .stock { display: none; }
.apl .apl-rel__name .apl-fr,
.apl .apl-rel__price .apl-fr { display: block; }
@media (min-width: 640px) {
	.apl .apl-how li > .apl-bi { flex: 0 1 auto; }
}
.apl-stock.is-req { color: var(--apl-blue-dark); }

/* v1.4.5 : la barre de commande suit aussi le défilement sur ordinateur */
@media (min-width: 900px) {
	.apl-sticky {
		display: flex; justify-content: space-between; gap: 24px;
		padding-left: max(16px, calc((100vw - 1180px) / 2 + 16px)); padding-right: max(16px, calc((100vw - 1180px) / 2 + 16px));
	}
	.apl-sticky__price { flex-direction: row; align-items: baseline; gap: 16px; }
	.apl-sticky__name { font-size: 15px; color: var(--apl-text); font-weight: 600; max-width: 420px; }
	.apl-sticky__amount { font-size: 20px; }
	.apl .apl-btn.apl-btn--sticky { min-width: 280px; min-height: 52px; font-size: 16px; }
	.apl-final { padding-bottom: 96px; }
	.apl-landing #moderncart-floating-cart { bottom: 96px !important; }
}
