/* =============================================================================
   Header (header.php + parts/header.html + parts/menu-*.html)
   Reprise du modèle Elementor « 2026 - HEADER » (500823) et de ses sous-menus.
   Valeurs relevées sur la prod : barre verte #005d4b, bandeau #f8f8f8,
   panneaux #305649, marges latérales 5 %.
   ============================================================================= */

/* ---------------------------------------------------------------------------
   Icônes (SVG Font Awesome de la prod, en masque : couleur = currentColor)
   La classe easi-ico-* pose --easi-icon ; le ::before du lien la dessine.
   --------------------------------------------------------------------------- */
.easi-ico-truck { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H112C85.5 0 64 21.5 64 48v48H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h272c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h208c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h208c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H64v128c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm320 0c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z'/%3E%3C/svg%3E"); }
.easi-ico-star { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z'/%3E%3C/svg%3E"); }
.easi-ico-card { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M0 432c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V256H0v176zm192-68c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-40zm-128 0c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zM576 80v48H0V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48z'/%3E%3C/svg%3E"); }
.easi-ico-pen { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M290.74 93.24l128.02 128.02-277.99 277.99-114.14 12.6C11.35 513.54-1.56 500.62.14 485.34l12.7-114.22 277.9-277.88zm207.2-19.06l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.76 18.75-49.16 0-67.91z'/%3E%3C/svg%3E"); }
.easi-ico-camera { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M48 32C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48zm0 32h106c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H38c-3.3 0-6-2.7-6-6V80c0-8.8 7.2-16 16-16zm426 96H38c-3.3 0-6-2.7-6-6v-36c0-3.3 2.7-6 6-6h138l30.2-45.3c1.1-1.7 3-2.7 5-2.7H464c8.8 0 16 7.2 16 16v74c0 3.3-2.7 6-6 6zM256 424c-66.2 0-120-53.8-120-120s53.8-120 120-120 120 53.8 120 120-53.8 120-120 120zm0-208c-48.5 0-88 39.5-88 88s39.5 88 88 88 88-39.5 88-88-39.5-88-88-88zm-48 104c-8.8 0-16-7.2-16-16 0-35.3 28.7-64 64-64 8.8 0 16 7.2 16 16s-7.2 16-16 16c-17.6 0-32 14.4-32 32 0 8.8-7.2 16-16 16z'/%3E%3C/svg%3E"); }
.easi-ico-phone { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.2-7.7-20.9-18.6-23.4z'/%3E%3C/svg%3E"); }
.easi-ico-comments { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M416 192c0-88.4-93.1-160-208-160S0 103.6 0 192c0 34.3 14.1 65.9 38 92-13.4 30.2-35.5 54.2-35.8 54.5-2.2 2.3-2.8 5.7-1.5 8.7S4.8 352 8 352c36.6 0 66.9-12.3 88.7-25 32.2 15.7 70.3 25 111.3 25 114.9 0 208-71.6 208-160zm122 220c23.9-26 38-57.7 38-92 0-66.9-53.5-124.2-129.3-148.1.9 6.6 1.3 13.3 1.3 20.1 0 105.9-107.7 192-240 192-10.8 0-21.3-.8-31.7-1.9C207.8 439.6 281.8 480 368 480c41 0 79.1-9.2 111.3-25 21.8 12.7 52.1 25 88.7 25 3.2 0 6.1-1.9 7.3-4.8 1.3-2.9.7-6.3-1.5-8.7-.3-.3-22.4-24.2-35.8-54.5z'/%3E%3C/svg%3E"); }
.easi-ico-question { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zM262.655 90c-54.497 0-89.255 22.957-116.549 63.758-3.536 5.286-2.353 12.415 2.715 16.258l34.699 26.31c5.205 3.947 12.621 3.008 16.665-2.122 17.864-22.658 30.113-35.797 57.303-35.797 20.429 0 45.698 13.148 45.698 32.958 0 14.976-12.363 22.667-32.534 33.976C247.128 238.528 216 254.941 216 296v4c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12v-1.333c0-28.462 83.186-29.647 83.186-106.667 0-58.002-60.165-102-116.531-102zM256 338c-25.365 0-46 20.635-46 46 0 25.364 20.635 46 46 46s46-20.636 46-46c0-25.365-20.635-46-46-46z'/%3E%3C/svg%3E"); }
.easi-ico-user-lock { --easi-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 512'%3E%3Cpath d='M224 256A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm96 64a63.08 63.08 0 0 1 8.1-30.5c-4.8-.5-9.5-1.5-14.5-1.5h-16.7a174.08 174.08 0 0 1-145.8 0h-16.7A134.43 134.43 0 0 0 0 422.4V464a48 48 0 0 0 48 48h280.9a63.54 63.54 0 0 1-8.9-32zm288-32h-32v-80a80 80 0 0 0-160 0v80h-32a32 32 0 0 0-32 32v160a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V320a32 32 0 0 0-32-32zM496 432a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm32-144h-64v-80a32 32 0 0 1 64 0z'/%3E%3C/svg%3E"); }

.easi-header {
	--easi-ico-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath d='M288.662 352H31.338c-17.818 0-26.741-21.543-14.142-34.142l128.662-128.662c7.81-7.81 20.474-7.81 28.284 0l128.662 128.662c12.6 12.599 3.676 34.142-14.142 34.142z'/%3E%3C/svg%3E");
	--easi-ico-burger: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000'%3E%3Cpath d='M104 333H896C929 333 958 304 958 271S929 208 896 208H104C71 208 42 237 42 271S71 333 104 333ZM104 583H896C929 583 958 554 958 521S929 458 896 458H104C71 458 42 487 42 521S71 583 104 583ZM104 833H896C929 833 958 804 958 771S929 708 896 708H104C71 708 42 737 42 771S71 833 104 833Z'/%3E%3C/svg%3E");
	--easi-ico-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000'%3E%3Cpath d='M742 167L500 408 258 167C246 154 233 150 217 150 196 150 179 158 167 167 154 179 150 196 150 212 150 229 154 242 171 254L408 500 167 742C138 771 138 800 167 829 196 858 225 858 254 829L496 587 738 829C750 842 767 846 783 846 800 846 817 842 829 829 842 817 846 804 846 783 846 767 842 750 829 737L588 500 833 258C863 229 863 200 833 171 804 137 775 137 742 167Z'/%3E%3C/svg%3E");
	--easi-ico-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z'/%3E%3C/svg%3E");
	--easi-ico-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z'/%3E%3C/svg%3E");

	position: sticky;
	top: 0;
	z-index: 999;
	font-size: 14px;
	line-height: 1.6;
}

.admin-bar .easi-header {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .easi-header {
		top: 46px;
	}
}

/* Sous 600px la barre d'admin n'est plus fixe */
@media (max-width: 600px) {
	.admin-bar .easi-header {
		top: 0;
	}
}

/* Bases : rattachées aux blocs du header (.easi-topbar, .easi-mainbar,
   .easi-mega) et non au <header>, pour valoir aussi dans l'éditeur de site,
   où les parties de modèle s'affichent sans ce conteneur. */
.easi-header *,
.easi-header ::before,
.easi-header ::after,
:is(.easi-topbar, .easi-mainbar, .easi-mega),
:is(.easi-topbar, .easi-mainbar, .easi-mega) *,
:is(.easi-topbar, .easi-mainbar, .easi-mega) ::before,
:is(.easi-topbar, .easi-mainbar, .easi-mega) ::after {
	box-sizing: border-box;
}

/* Les groupes Gutenberg ajoutent un écart entre blocs (« :root :where(.is-layout-flow) > * »
   des styles globaux, 24px) : on gère les espacements ici. Préfixe = header du
   site OU aperçu de l'éditeur, pour passer devant cette règle quel que soit
   l'ordre de chargement. */
:is(.easi-header, .editor-styles-wrapper) :is(.easi-topbar, .easi-mainbar, .easi-menu, .easi-menu__list, .easi-menu__item, .easi-mega, .easi-mega__cols, .easi-mega__col, .easi-tabs, .easi-tabs__panel, .easi-mega__card) > * {
	margin-block: 0;
}

:is(.easi-topbar, .easi-mainbar, .easi-mega) :is(p, ul, figure) {
	margin: 0;
}

:is(.easi-topbar, .easi-mainbar, .easi-mega) ul {
	padding: 0;
	list-style: none;
}

:is(.easi-topbar, .easi-mainbar, .easi-mega) a {
	text-decoration: none;
}

:is(.easi-topbar, .easi-mainbar, .easi-mega) img {
	display: block;
	max-width: 100%;
	height: auto;
}

/* ---------------------------------------------------------------------------
   Barre verte
   --------------------------------------------------------------------------- */
.easi-topbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0 20px;
	min-height: 30px;
	padding: 0.5% 4% 0.5% 5%;
	background-color: #005d4b;
	color: #fff;
}

.easi-topbar__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.easi-topbar__list > li {
	display: flex;
	align-items: center;
	line-height: 22.4px;
}

/* Séparateur après chaque élément (comme Elementor : quand la liste passe
   sur deux lignes, le trait reste en fin de ligne, pas en début) */
.easi-topbar__list > li:not(:last-child) {
	margin-right: 8px;
	padding-right: 8px;
	border-right: 1px solid rgba(255, 255, 255, 0.8);
}

.easi-topbar__list a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #fff;
}

.easi-topbar__list a:hover {
	color: #e98548;
}

.easi-topbar__list a::before,
.easi-mainbar__account a::before,
.easi-burger::before,
.easi-menu__toggle::before,
.easi-tabs__tab::after {
	content: "";
	flex: 0 0 auto;
	background-color: currentColor;
	-webkit-mask: var(--easi-icon) center / contain no-repeat;
	mask: var(--easi-icon) center / contain no-repeat;
}

.easi-topbar__list a::before {
	width: 14px;
	height: 14px;
	color: #fff;
}

/* ---------------------------------------------------------------------------
   Bandeau logo / recherche / compte / panier + menu
   --------------------------------------------------------------------------- */
.easi-mainbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px 17px;
	padding: 1% 5% 0;
	background-color: #f8f8f8;
	border-bottom: 1px solid #e0e4ec;
}

.easi-mainbar__logo {
	flex: 1 1 0;
	min-width: 0;
}

.easi-mainbar__logo img {
	width: 500px;
}

.easi-mainbar__search {
	flex: 0 0 20%;
	min-width: 0;
}

.easi-mainbar__account a {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	color: #000;
	font-size: 12px;
	line-height: 1;
}

.easi-mainbar__account a::before {
	width: 40px;
	height: 40px;
	color: #305649;
}

.easi-mainbar__account a:hover {
	color: #279b31;
}

.easi-mainbar__cart {
	flex: 0 0 auto;
}

/* Boutons : neutralise le style des boutons de Hello (rose au survol) */
.easi-header :is(.easi-burger, .easi-menu__toggle, .easi-tabs__tab),
.easi-header :is(.easi-burger, .easi-menu__toggle, .easi-tabs__tab):is(:hover, :focus) {
	margin: 0;
	border: 0;
	border-radius: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-transform: inherit;
	letter-spacing: inherit;
	cursor: pointer;
}

.easi-header .easi-burger {
	display: none;
	padding: 0;
}

.easi-burger::before {
	--easi-icon: var(--easi-ico-burger);
	display: block;
	width: 35px;
	height: 35px;
	color: #1f2124;
}

.easi-header.is-menu-open .easi-burger::before {
	--easi-icon: var(--easi-ico-close);
}

/* ---------------------------------------------------------------------------
   Menu principal
   --------------------------------------------------------------------------- */
.easi-menu {
	flex: 0 0 100%;
	border-top: 1px solid #e0e4ec;
}

/* Les entrées (rôle « list » ajouté au rendu par inc/header-blocs.php) */
.easi-menu__list {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

.easi-menu__item {
	display: flex;
	align-items: stretch;
}

.easi-menu__item + .easi-menu__item {
	border-left: 1px solid #e1e1e1;
}

.easi-menu__item > a,
.easi-menu__label {
	display: flex;
	align-items: center;
	min-height: 45px;
	padding: 7px 10px;
	color: #1f2124;
	font-size: 14px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	cursor: pointer;
}

.easi-menu__label a {
	color: inherit;
}

.easi-menu__label strong {
	font-weight: bolder;
}

.easi-menu__item--badge mark {
	padding: 5px;
}

.easi-menu__item > a:hover,
.easi-menu__item--panel.is-open > .easi-menu__label {
	background-color: #305649;
	color: #fff;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.93);
}

/* Flèche ajoutée par le JS (bouton accessible qui ouvre le sous-menu) */
/* .easi-header en préfixe : une règle de bouton d'une extension (non
   identifiée) imposait sinon 16px de marge interne et 32px de large. */
.easi-header .easi-menu__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	min-width: 0;
	height: 20px;
	margin-left: 6px !important;
	padding: 0;
}

.easi-menu__toggle::before {
	--easi-icon: var(--easi-ico-caret);
	width: 10px;
	height: 16px;
	transform: rotate(180deg);
	transition: transform 0.2s;
}

.easi-menu__item--panel.is-open .easi-menu__toggle::before {
	transform: none;
}

/* Panneau (partie de modèle menu-*) : pleine largeur sous le header.
   -1px : recouvre la bordure basse du bandeau, sinon un filet clair sépare
   l'entrée survolée (verte) du panneau. */
.easi-menu__panel {
	display: none;
	position: absolute;
	top: calc(100% - 1px);
	right: 0;
	left: 0;
	z-index: 2;
	max-height: calc(100vh - 180px);
	overflow-y: auto;
	padding: 1% 5%;
	background-color: #305649;
	color: #fff;
}

.easi-menu__item--panel.is-open > .easi-menu__panel {
	display: block;
}

@media (min-width: 768px) {
	.easi-menu__item--panel:hover > .easi-menu__label {
		background-color: #305649;
		color: #fff;
		text-shadow: 0 0 10px rgba(0, 0, 0, 0.93);
	}

	.easi-menu__item--panel:hover .easi-menu__toggle::before {
		transform: none;
	}

	.easi-menu__item--panel:hover > .easi-menu__panel,
	.easi-menu__item--panel:has(:focus-visible) > .easi-menu__panel {
		display: block;
	}
}

/* ---------------------------------------------------------------------------
   Panneaux : éléments communs
   --------------------------------------------------------------------------- */
.easi-mega {
	color: #fff;
}

.easi-mega__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px !important;
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
}

.easi-mega__title::after {
	content: "";
	flex: 1 1 auto;
	border-top: 1px solid rgba(255, 255, 255, 0.5);
}

/* Parquets : catégories (vignette + libellé) et coloris (cartes) */
.easi-mega__cols {
	display: grid;
	grid-template-columns: minmax(0, 47fr) minmax(0, 53fr);
	gap: 20px;
	margin-bottom: 20px !important;
}

.easi-mega__cats {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.easi-mega__cats a {
	display: grid;
	grid-template-columns: 108px minmax(0, 1fr);
	align-items: center;
	column-gap: 15px;
	min-height: 40px;
	background-color: #f9fafa;
	color: #3f444b;
	font-size: 20px;
	line-height: 1.2;
}

.easi-mega__cats img {
	width: 108px !important;
	height: 40px !important;
	object-fit: cover;
}

.easi-mega__coloris {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
}

.easi-mega__coloris a {
	display: grid;
	grid-template-rows: 100px minmax(50px, auto);
	align-items: center;
	background-color: #f9fafa;
	color: #000;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.easi-mega__coloris img {
	width: 100% !important;
	height: 100px !important;
	object-fit: cover;
}

.easi-mega__cats a:hover,
.easi-mega__coloris a:hover {
	color: #e98548;
}

.easi-mega__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.easi-mega__tags a {
	display: block;
	padding: 10px;
	border: 2px solid #fff;
	color: #fff;
	font-size: 15px;
	line-height: 1.2;
}

.easi-mega__tags a:hover {
	background-color: #fff;
	color: #305649;
}

/* Profils de finition : onglets (construits par le JS à partir des titres) */
.easi-tabs.is-ready {
	display: grid;
	grid-template-columns: 255px minmax(0, 1fr);
	align-items: start;
	gap: 20px;
}

.easi-tabs.is-ready .easi-tabs__title {
	display: none;
}

/* Sans JS : les deux groupes l'un sous l'autre */
.easi-tabs:not(.is-ready) .easi-tabs__panel + .easi-tabs__panel {
	margin-top: 20px;
}

.easi-tabs__title {
	margin-bottom: 10px !important;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
}

.easi-tabs__list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.easi-header .easi-tabs__tab,
.easi-header .easi-tabs__tab:is(:hover, :focus) {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 15px 35px;
	background-color: #e98548;
	color: #000;
	font-size: 16px;
	line-height: 1.2;
	text-align: left;
	text-transform: uppercase;
}

.easi-header .easi-tabs__tab.is-active {
	background-color: #61ce70;
}

.easi-tabs__tab::after {
	--easi-icon: var(--easi-ico-plus);
	width: 12px;
	height: 14px;
}

.easi-tabs__tab.is-active::after {
	--easi-icon: var(--easi-ico-minus);
}

.easi-tabs__panel[hidden] {
	display: none;
}

.easi-mega__thumbs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
	padding-left: 10px !important;
}

.easi-mega__thumbs img {
	width: 100% !important;
	aspect-ratio: 2 / 1;
	height: auto !important;
	object-fit: cover;
}

.easi-mega__thumbs a:hover img {
	opacity: 0.85;
}

.easi-mega__more {
	margin-top: 10px !important;
	padding-left: 10px;
	font-size: 14px;
}

.easi-mega__more a {
	color: #fff;
	text-decoration: underline;
}

.easi-mega__more a:hover {
	color: #e98548;
}

/* Système EASIKLIP : 3 cartes entièrement cliquables */
.easi-mega--systeme {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.easi-mega__card {
	position: relative;
	display: flex;
	flex-direction: column;
	background-color: #fff;
}

.easi-mega__card img {
	width: 100% !important;
	height: 200px !important;
	object-fit: cover;
}

.easi-mega__card-title {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	padding: 15px 15px 0;
	color: #3f444b;
	font-size: 20px;
	line-height: 24px;
	text-align: center;
}

.easi-mega__card .wp-block-buttons {
	justify-content: center;
	padding: 15px;
}

.easi-mega__card .wp-block-button__link {
	padding: 12px 24px;
	border: 2px solid #3f444b;
	border-radius: 100px;
	background-color: #305649;
	color: #fff;
	font-size: 15px;
	line-height: 1.2;
}

.easi-mega__card .wp-block-button__link::after {
	content: "";
	position: absolute;
	inset: 0;
}

.easi-mega__card:hover .wp-block-button__link {
	background-color: #e98548;
}

/* ---------------------------------------------------------------------------
   Tablette (≤ 1024px) : barre verte centrée, menu sur deux lignes
   --------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.easi-topbar {
		justify-content: center;
		padding: 0.5% 5%;
	}

	.easi-topbar__list {
		justify-content: center;
	}

	.easi-mainbar__search {
		flex-basis: 30%;
	}

	.easi-mega__cats a {
		font-size: 16px;
	}

	.easi-mega__coloris {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* ---------------------------------------------------------------------------
   Mobile (≤ 767px) : burger, menu en accordéon sous le header
   --------------------------------------------------------------------------- */
@media (max-width: 767px) {
	/* Marges réduites : « Livraison dans toute la France… » tient sur une
	   ligne en 375 px, comme dans l'ancien header Elementor. */
	.easi-topbar {
		padding: 0.5% 2%;
	}

	.easi-topbar__list--secondary {
		display: none;
	}

	.easi-mainbar {
		gap: 10px;
		padding: 2% 5%;
	}

	/* Ligne 1 : logo, burger, panier ; ligne 2 : recherche, compte */
	.easi-mainbar__logo {
		flex: 1 1 55%;
		order: 1;
	}

	.easi-header .easi-burger {
		display: block;
		order: 2;
	}

	.easi-mainbar__cart {
		order: 3;
	}

	.easi-mainbar__search {
		flex: 1 1 60%;
		order: 4;
	}

	.easi-mainbar__account {
		order: 5;
	}

	.easi-mainbar__account a::before {
		width: 24px;
		height: 24px;
	}

	.easi-menu {
		display: none;
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		max-height: calc(100vh - 100%);
		overflow-y: auto;
		background-color: #f8f8f8;
		border-top: 1px solid #dee2e6;
		border-bottom: 1px solid #dee2e6;
		box-shadow: 0 6px 12px rgba(0, 0, 0, 0.12);
	}

	.easi-header.is-menu-open .easi-menu {
		display: block;
	}

	.easi-menu__list {
		flex-direction: column;
		flex-wrap: nowrap;
	}

	.easi-menu__item {
		flex-direction: column;
	}

	.easi-menu__item + .easi-menu__item {
		border-top: 1px solid #e0e4ec;
		border-left: 0;
	}

	.easi-menu__item > a,
	.easi-menu__label {
		padding: 10px 10px 10px 20px;
	}

	.easi-menu__panel {
		position: static;
		max-height: none;
		padding: 15px 20px;
	}

	.easi-mega__cols {
		grid-template-columns: minmax(0, 1fr);
	}

	.easi-mega__cats a {
		font-size: 15px;
	}

	.easi-mega__coloris {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.easi-mega__coloris a {
		grid-template-rows: 80px minmax(40px, auto);
		font-size: 14px;
	}

	.easi-mega__coloris img {
		height: 80px !important;
	}

	.easi-tabs.is-ready {
		grid-template-columns: minmax(0, 1fr);
	}

	.easi-tabs__list {
		flex-direction: row;
		flex-wrap: wrap;
	}

	.easi-header .easi-tabs__tab,
	.easi-header .easi-tabs__tab:is(:hover, :focus) {
		flex: 1 1 auto;
		padding: 10px 15px;
		font-size: 14px;
	}

	.easi-mega__thumbs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
		padding-left: 0 !important;
	}

	.easi-mega__more {
		padding-left: 0;
	}

	.easi-mega--systeme {
		grid-template-columns: minmax(0, 1fr);
	}

	.easi-mega__card img {
		height: 140px !important;
	}

	.easi-mega__card-title {
		font-size: 17px;
		line-height: 1.3;
	}
}

@media (prefers-reduced-motion: reduce) {
	.easi-menu__toggle::before {
		transition: none;
	}
}

/* ---------------------------------------------------------------------------
   Couleurs des liens — le Kit Elementor (« .elementor-kit-36979 a », noir)
   est imprimé APRÈS ce fichier et passait devant à force égale : préfixe
   header du site OU aperçu de l'éditeur pour l'emporter.
   --------------------------------------------------------------------------- */
:is(.easi-header, .editor-styles-wrapper) .easi-topbar__list a {
	color: #fff;
}

:is(.easi-header, .editor-styles-wrapper) .easi-topbar__list a:is(:hover, :focus) {
	color: #e98548;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mainbar__account a {
	color: #000;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mainbar__account a:is(:hover, :focus) {
	color: #279b31;
}

:is(.easi-header, .editor-styles-wrapper) .easi-menu__item > a {
	color: #1f2124;
}

:is(.easi-header, .editor-styles-wrapper) .easi-menu__item > a:is(:hover, :focus) {
	color: #fff;
}

:is(.easi-header, .editor-styles-wrapper) .easi-menu__label a,
:is(.easi-header, .editor-styles-wrapper) .easi-menu__label a:is(:hover, :focus) {
	color: inherit;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mega__cats a {
	color: #3f444b;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mega__coloris a {
	color: #000;
}

:is(.easi-header, .editor-styles-wrapper) :is(.easi-mega__cats, .easi-mega__coloris) a:is(:hover, :focus) {
	color: #e98548;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mega__tags a {
	color: #fff;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mega__tags a:is(:hover, :focus) {
	color: #305649;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mega__more a {
	color: #fff;
}

:is(.easi-header, .editor-styles-wrapper) .easi-mega__more a:is(:hover, :focus) {
	color: #e98548;
}
