/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 */

/**************************/
/*******  ACCUEIL  ********/
/**************************/
html,
body {
	overflow-x: hidden;
}
.block-category {
	min-height: auto;
	margin-bottom: 1.563rem;
	padding-left: 0px;
	background-color: #f6f6f6;
}

.block-categories {
	background-color: #f6f6f6;
	padding-left: 0px;
}

.category-top-menu li a:first-child {
	display: none;
}

#subcategories {
	display: none;
}
#carousel {
	margin-bottom: 0;
}

#carousel .carousel-inner {
	height: 590px;
	margin-bottom: 0;
	max-height: 100vh;
}

#carousel .carousel-item {
	height: 100%;
}

#carousel .carousel-item figure {
	position: relative;
	height: 100%;
	margin: 0;

	display: flex;
	align-items: center; /* centrage vertical */
}

#carousel .carousel-item img {
	position: absolute;
	inset: 0;

	width: 100%;
	height: 100%;
	object-fit: cover;

	z-index: 1;
}

#carousel .carousel-item .caption .caption-description h3 {
	padding: 0.5em 0;
}
#carousel .carousel-item .caption .display-1 {
	font-size: 42px;
	line-height: 0.95em;
	font-weight: 800;
	letter-spacing: -2px;
	color: #ffffff;
	text-align: center;
	max-width: 1200px;
	margin: 0 auto 25px;
	font-family: "Inter", sans-serif;
	text-align: center;
}
#carousel .carousel-item .caption {
	position: absolute;
	top: 50%;
	left: 50%;
	font-family: "Poppins" sans-serif;
	transform: translate(-50%, -50%); /* centrage horizontal + vertical */
	z-index: 2;
	width: 100%;
	max-width: 700px;
	color: #fff;
	padding: 2rem;
	text-transform: none !important;
	text-align: center !important;
}

#carousel .carousel-item .caption p {
	margin: 0 0 0.4rem 0;
	line-height: 1.35;
	text-align: center;
}

#carousel .carousel-item .caption p:last-child {
	margin-bottom: 0;
}

#carousel .carousel-item figure::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 2;
}

#carousel .carousel-control-prev,
#carousel .carousel-control-next {
	height: 100%;
	align-items: center;
	display: flex;
}

.caption-description {
	font-size: 38px;
	line-height: 0.95em;
	font-weight: 800;

	color: #ffffff;
	text-align: center;
	max-width: 1200px;
	margin: 0 auto 25px;
	font-family: "Inter", sans-serif;
}

.ce-product-features__label {
	display: none;
}

.elementor-2170101 .elementor-element.elementor-element-6d086028 .elementor-nav--main a.elementor-item {
	font-size: 1.2rem;
	font-weight: 400;
}

.elementor-item .elementor-item-active {
	font-weight: 800;
}

/**************************/
/*******    MENU    *******/
/**************************/
.ets_mm_megamenu .mm_menus_li .h4,
.ets_mm_megamenu .mm_menus_li .h5,
.ets_mm_megamenu .mm_menus_li .h6,
.ets_mm_megamenu .mm_menus_li .h1,
.ets_mm_megamenu .mm_menus_li .h2,
.ets_mm_megamenu .mm_menus_li .h3,
.ets_mm_megamenu .mm_menus_li .h4 *:not(i),
.ets_mm_megamenu .mm_menus_li .h5 *:not(i),
.ets_mm_megamenu .mm_menus_li .h6 *:not(i),
.ets_mm_megamenu .mm_menus_li .h1 *:not(i),
.ets_mm_megamenu .mm_menus_li .h2 *:not(i),
.ets_mm_megamenu .mm_menus_li .h3 *:not(i),
.ets_mm_megamenu .mm_menus_li > a {
	line-height: 1.6em;
}
.ets_mm_megamenu .ets_mm_megamenu_content .container {
	padding-left: 15px;
	padding-right: 15px;
	margin: 0;
	width: 100%;
}
.elementor-3170101 .elementor-widget-container .ets_mm_megamenu {
	margin-top: 0;
}
.elementor-3170101 .elementor-widget-wrap .elementor-element.elementor-element-14e8102 {
	flex-grow: 0;
}
.elementor-3170101 .elementor-widget-wrap .elementor-element.elementor-element-7a194dc {
	flex-grow: 1;
}

/**************************/
/*** FIX MEGA MENU DROP ***/
/**************************/

/* Autoriser le menu déroulant à dépasser du header */
.elementor-section,
.elementor-container,
.elementor-row,
.elementor-column,
.elementor-widget-wrap,
.elementor-widget-container {
	overflow: visible;
}

/* Plus ciblé sur le header Creative Elements si besoin */
.elementor-3170101,
.elementor-3170101 .elementor-section,
.elementor-3170101 .elementor-container,
.elementor-3170101 .elementor-row,
.elementor-3170101 .elementor-column,
.elementor-3170101 .elementor-widget-wrap,
.elementor-3170101 .elementor-widget-container {
	overflow: visible !important;
}

/* Le mega menu doit rester au-dessus du contenu */
.ets_mm_megamenu,
.ets_mm_megamenu_content,
.ets_mm_megamenu_content_content,
.ets_mm_megamenu .mm_menus_ul,
.ets_mm_megamenu .mm_menus_li {
	overflow: visible !important;
}

/* Sous-menu au-dessus de la page */
.ets_mm_megamenu .mm_columns_ul,
.ets_mm_megamenu .mm_columns_contents_ul,
.ets_mm_megamenu .mm_menus_li > .mm_columns_ul,
.ets_mm_megamenu .mm_menus_li > .mm_columns_contents_ul {
	z-index: 99999;
}

/**************************/
/*** COULEUR GLOBALE PS ***/
/**************************/

/* Liens natifs PrestaShop */
a,
a:hover,
a:focus {
	color: #000;
}

/* Boutons principaux */
.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open > .btn-primary.dropdown-toggle {
	background-color: #000;
	border-color: #000;
	color: #fff;
}

/* Boutons secondaires / outlines */
.btn-secondary,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
	background-color: #000;
	border-color: #000;
	color: #fff;
}

/* Liens dans les blocs de compte / panier / checkout */
.user-info a,
.blockcart a,
.cart-summary a,
.checkout a,
#checkout a,
#cart a {
	color: #000;
}

/* Prix, titres ou accents parfois bleus selon thème */
.product-price,
.current-price,
.price,
.highlighted-informations a,
.product-miniature .product-title a {
	color: #000;
}

/* Pagination active / filtres / facettes */
.pagination .current a,
.pagination a:hover,
.page-list a:hover,
.facet-title,
.facet-label a:hover {
	color: #000;
}

/* Badges ou éléments actifs */
.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover {
	color: #000;
	border-color: #000;
}

.page-my-account #content .links a i:hover {
	display: block;
	width: 100%;
	padding-bottom: 3.4rem;
	font-size: 2.6rem;
	color: #232323;
}

/**************************/
/*** CARTES MON COMPTE ****/
/**************************/

/* Transition sur les cartes */
.page-my-account #content .links a .link-item {
	transition:
		box-shadow 0.25s ease,
		transform 0.25s ease;
}

/* Ombre légère au survol de la carte */
.page-my-account #content .links a:hover .link-item {
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.1);
	transform: translateY(-2px);
}

/* Icônes toujours en noir, y compris au hover */
.page-my-account #content .links a i,
.page-my-account #content .links a:hover i,
.page-my-account #content .links a .material-icons,
.page-my-account #content .links a:hover .material-icons {
	color: #232323 !important;
}

/* Texte noir/gris foncé au hover */
.page-my-account #content .links a:hover {
	color: #232323;
	text-decoration: none;
}

/**************************/
/*** CARTES MON COMPTE ****/
/**************************/

.page-my-account #content .links a .link-item {
	display: block;
	position: relative;
	transition:
		box-shadow 0.25s ease,
		transform 0.25s ease;
}

.page-my-account #content .links a:hover .link-item {
	box-shadow: 0 6px 18px rgba(35, 35, 35, 0.14) !important;
	transform: translateY(-2px);
	z-index: 2;
}

/* Icône noire même au survol */
.page-my-account #content .links a i,
.page-my-account #content .links a:hover i,
.page-my-account #content .links a .material-icons,
.page-my-account #content .links a:hover .material-icons {
	color: #232323 !important;
}

.page-my-account #content .links a:focus:not(:focus-visible),
.page-my-account #content .links a:active {
	outline: none !important;
	box-shadow: none !important;
}

/* Empêche aussi une bordure appliquée à la carte interne */
.page-my-account #content .links a:focus:not(:focus-visible) .link-item,
.page-my-account #content .links a:active .link-item {
	outline: none !important;
	border-color: transparent;
}

.elementor-button {
	display: inline-block;
	line-height: 1;
	background-color: #000000;
	font-size: 15px;
	padding: 12px 24px;
	border: 0 solid;
	border-radius: 3px;
	color: #fff;
	fill: currentColor;
	text-align: center;
}

.user-info a,
.blockcart a,
.cart-summary a,
.checkout a,
#checkout a,
#cart a {
	color: #fff;
}

.has-discount .discount {
	display: inline-block;
	padding: 0.3125rem 0.625rem;
	margin-left: 0.625rem;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	text-transform: uppercase;
	background: #000000;
}

.btn.disabled,
.btn:disabled,
.btn.disabled:hover,
.btn:disabled:hover {
	color: #7a7a7a;
	background-color: #eeeeee;
	border: none;
	box-shadow: none;
	opacity: 1;
	cursor: not-allowed;
}

.user-info a,
.blockcart a,
.cart-summary a,
.checkout a,
#checkout a,
#cart a {
	color: #000;
}

.blockreassurance_product .item-product img,
.blockreassurance_product .item-product svg {
	display: none;
}

.product-flags li.product-flag {
	background: #000;
}

@media (min-width: 768px) {
	.layout_layout5 .mm_columns_ul > .mm_columns_li {
		border-left: 0px solid #e7e7e7;
		margin: 20px 0 10px;
		padding: 0;
	}
}

.elementor-nav--dropdown .menu-item .elementor-item-active,
.elementor-nav--dropdown .menu-item .highlighted,
.elementor-nav--dropdown .menu-item [href]:focus,
.elementor-nav--dropdown .menu-item [href]:hover {
	background-color: #000;
}

.user-info a,
.blockcart a,
.cart-summary a,
.checkout a,
#checkout a,
#cart a {
	color: #fff;
}

.wishlist-footer-links a,
.wishlist-footer-links i {
	color: #000 !important;
}

.wishlist-footer-links a {
	color: #000 !important;
}

.wishlist-add-to-new {
	color: #000 !important;
}

.wishlist-add-to-new .text-primary i {
	color: #000 !important;
}

#cta-terms-and-conditions-0 {
	color: #000 !important;
	text-decoration: underline !important;
}

.ets_mm_megamenu .ets_mm_megamenu_content .container {
	padding-left: 15px;
	padding-right: 15px;
	margin: 0;
	width: 100%;
	background-color: #fff;
	display: flex;
	justify-content: flex-end;
}

#products .up .btn-secondary,
#products .up .btn-tertiary {
	color: #fff;
	text-transform: inherit;
}

@media (max-width: 767px) {
	.elementor-1170101 .elementor-element.elementor-element-2321af99 .elementor-icon-list-items {
		columns: 1;
	}

	@media (max-width: 767px) {
		.elementor-1170101 .elementor-element.elementor-element-3a35346d .elementor-icon-list-items {
			columns: 2;
		}
	}
}

@media (max-width: 767px) {
	#carousel .carousel-inner {
		height: 460px;
		max-height: none;
	}

	#carousel .carousel-item .caption {
		top: 43% !important;
		bottom: auto !important;
		left: 50% !important;
		transform: translate(-50%, -50%) !important;

		width: 100%;
		max-width: none;
		padding: 1.25rem 2.5rem;

		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;

		font-family: "Poppins", sans-serif;
		text-align: center !important;
	}

	#carousel .carousel-item .caption .display-1 {
		font-size: 29px;
		line-height: 1.05em;
		letter-spacing: -1px;
		margin: 0 auto 15px;
	}

	#carousel .carousel-item .caption p {
		font-size: 15px;
		line-height: 1.35;
		margin: 0 0 0.3rem;
	}

	#carousel .carousel-item .caption p:last-child {
		margin-bottom: 0;
	}

	#carousel .carousel-control-prev,
	#carousel .carousel-control-next {
		width: 10%;
	}
}

.user-info a,
.blockcart a,
.cart-summary a,
.checkout a,
#checkout a,
#cart a {
	color: #000;
}

.elementor-tabs .elementor-tab-title,
.elementor-tabs .elementor-tab-title:focus,
.elementor-tabs .elementor-tab-title:active,
.elementor-tabs .elementor-tab-title:focus-visible,
.elementor-tabs .elementor-tab-title.elementor-active,
.elementor-tabs .elementor-tab-title.elementor-active:focus,
.elementor-tabs .elementor-tab-title.elementor-active:active {
	outline: none !important;
	box-shadow: none !important;
	border-color: transparent !important;
}

.elementor-item,
.elementor-item:focus,
.elementor-item:active,
.elementor-item:focus-visible,
.elementor-item.elementor-item-active,
.elementor-item.elementor-item-active:focus,
.elementor-item.elementor-item-active:active {
	outline: none !important;
	box-shadow: none !important;
}

.social-sharing {
	display: none;
}

.product-comments-additional-info {
	display: none;
}

.checkout .cart-detailed-actions .btn-primary,
.checkout .cart-detailed-actions .btn-primary:hover,
.checkout .cart-detailed-actions .btn-primary:focus {
	color: #fff !important;
}

#content-wrapper .cart-detailed-actions .btn.btn-primary,
#content-wrapper .cart-detailed-actions .btn.btn-primary:hover,
#content-wrapper .cart-detailed-actions .btn.btn-primary:focus,
#content-wrapper .cart-detailed-actions .btn.btn-primary:active {
	color: #fff !important;
}

*:focus,
*:active {
	outline: none !important;
	box-shadow: none !important;
}
.reward_alert_message {
	border: solid 1px #dddddd;
	padding: 0.75rem 1.25rem;
	margin-bottom: 1rem;
	color: #000;
	background-color: #dddddd;
	text-align: left;
	display: block;
	visibility: visible;
}

.row .products-selection {
	display: none;
}

.wishlist-button-add {
	display: none;
}
.page-content.page-cms {
	padding: 0rem;
	text-align: justify;
	background: #fff;
}

@media (max-width: 767px) {
	/* On ne touche PAS aux éléments de niveau 1 */
	.ets_mm_megamenu .mm_menus_ul > li {
		padding: initial;
		margin: initial;
	}

	/* On cible uniquement les sous-menus ouverts */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul {
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		padding: 0 0 12px 0 !important;
		margin: 0 !important;
		float: none !important;
		left: 0 !important;
		right: auto !important;
		text-align: left !important;
	}

	/* Colonnes internes du sous-menu */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul > li.mm_columns_li {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		float: none !important;
		clear: both !important;
		display: block !important;
		padding: 0 !important;
		margin: 0 !important;
		text-align: left !important;
	}

	/* Listes internes */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul > li.mm_columns_li > ul.mm_blocks_ul {
		padding: 0 !important;
		margin: 0 !important;
		width: 100% !important;
		text-align: left !important;
	}

	/* Items internes */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul > li.mm_columns_li > ul.mm_blocks_ul > li {
		padding: 0 !important;
		margin: 0 !important;
		width: 100% !important;
		text-align: left !important;
	}

	/* Liens de sous-menu */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul > li.mm_columns_li > ul.mm_blocks_ul > li > a {
		display: block !important;
		width: 100% !important;
		padding: 6px 15px !important;
		margin: 0 !important;
		line-height: 1.35 !important;
		text-align: left !important;
	}

	/* Colonnes vides */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul > li.mm_columns_li:empty,
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul > li.mm_columns_li > ul.mm_blocks_ul:empty {
		display: none !important;
	}
}

@media (max-width: 767px) {
	.ets_mm_megamenu .mm_menus_ul .close_menu {
		color: #000000;
		float: left;
		padding: 10px 15px;
		background-color: #f6f6f6 !important;
	}
}
.pull-left {
	display: none;
}

.pull-right {
	display: none;
}

@media (max-width: 767px) {
	/* Fond blanc du panneau mobile et des sous-menus */
	.ets_mm_megamenu,
	.ets_mm_megamenu .ets_mm_megamenu_content,
	.ets_mm_megamenu .mm_menus_ul,
	.ets_mm_megamenu .mm_menus_li,
	.ets_mm_megamenu .mm_columns_ul,
	.ets_mm_megamenu .mm_columns_li,
	.ets_mm_megamenu .mm_blocks_ul {
		background: #ffffff !important;
	}

	/* Sous-menu : on garde un vrai padding à gauche */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul {
		padding: 10px 0 14px 0 !important;
		background: #ffffff !important;
	}

	/* Colonnes internes */
	.ets_mm_megamenu .mm_menus_ul > li > ul.mm_columns_ul > li.mm_columns_li {
		padding: 0 !important;
		background: #ffffff !important;
	}

	/* Liste interne du sous-menu */
	.ets_mm_megamenu .mm_blocks_ul {
		padding: 0 !important;
		margin: 0 !important;
		background: #ffffff !important;
	}

	/* Liens des sous-menus */
	.ets_mm_megamenu .mm_blocks_ul li a {
		padding: 6px 16px !important;
		display: block !important;
		text-align: left !important;
		background: #ffffff !important;
	}

	/* Si le texte reste trop collé, augmente ici */
	.ets_mm_megamenu .mm_columns_ul a {
		padding-left: 16px !important;
	}
}

@media (max-width: 767px) {
	/* Bloc "Tout le stock" */
	.ets_mm_megamenu [data-id-block="2"] {
		box-sizing: border-box !important;
	}

	/* Titre / texte descriptif du bloc */
	.ets_mm_megamenu [data-id-block="2"] h1,
	.ets_mm_megamenu [data-id-block="2"] h2,
	.ets_mm_megamenu [data-id-block="2"] h3,
	.ets_mm_megamenu [data-id-block="2"] h4,
	.ets_mm_megamenu [data-id-block="2"] h5,
	.ets_mm_megamenu [data-id-block="2"] h6,
	.ets_mm_megamenu [data-id-block="2"] .h1,
	.ets_mm_megamenu [data-id-block="2"] .h2,
	.ets_mm_megamenu [data-id-block="2"] .h3,
	.ets_mm_megamenu [data-id-block="2"] .h4,
	.ets_mm_megamenu [data-id-block="2"] .h5,
	.ets_mm_megamenu [data-id-block="2"] .h6,
	.ets_mm_megamenu [data-id-block="2"] .mm_block_title,
	.ets_mm_megamenu [data-id-block="2"] .ets_mm_block_title {
		padding-left: 16px !important;
		padding-right: 16px !important;
		box-sizing: border-box !important;
	}

	/* Lien "Voir tout le stock" */
	.ets_mm_megamenu [data-id-block="2"] a {
		display: inline-block !important;

		padding-left: 0 !important;
	}
}
@media (max-width: 767px) {
	/* Panneau mobile complet du mega menu */
	.ets_mm_megamenu .mm_menus_ul {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		bottom: 0 !important;

		width: 280px !important;
		max-width: 85vw !important;

		height: 100dvh !important;
		max-height: 100dvh !important;

		overflow-y: auto !important;
		overflow-x: hidden !important;

		-webkit-overflow-scrolling: touch !important;
		overscroll-behavior: contain !important;

		background: #ffffff !important;
		z-index: 99999 !important;
	}

	/* Les sous-menus doivent simplement pousser le contenu */
	.ets_mm_megamenu .mm_columns_ul,
	.ets_mm_megamenu .mm_columns_li,
	.ets_mm_megamenu .mm_blocks_ul {
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
	}
}

@media (max-width: 767px) {
	.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
		padding: 0px;
	}
}

#wrapper {
	padding-top: 1.563rem;
	background: #fff;
}

.elementor-accordion-item {
	margin-bottom: 16px !important;
	border-radius: 8px;
	overflow: hidden;
}
