/*******************************************************
 * SPLIDE PAGES - Harmonisation au format portrait
 *******************************************************/
/* Conteneur principal du carrousel */
.splide-pages {
	position: relative;
	overflow: visible;
	padding-bottom: 72px;
	/* espace réservé aux flèches */
	margin-left: 0;
	margin-right: 0;
	max-width: none;
	max-width: var(--wp--style--global--content-size);
}

/* Le track doit autoriser le débordement */
.splide-pages .splide__track {
	overflow: visible;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* La liste Splide */
.splide-pages .splide__list {
	align-items: stretch;
	gap: 0 !important;
}

/* Chaque slide */
.splide-pages .splide__slide {
	box-sizing: border-box;
	flex-shrink: 0;
	transition: opacity 0.3s ease;
}

/* Le contenu interne occupe bien toute la hauteur */
.splide-pages .splide__slide>* {
	height: 100%;
}

/* Compatibilité avec les blocs Cover Gutenberg */
.splide-pages .wp-block-cover {
	height: 100%;
	min-height: 100% !important;
}

/* Facultatif : léger effet sur les slides non actives */
.splide-pages .splide__slide:not(.is-visible) {
	opacity: 0.45;
}

.splide-pages .splide__slide.is-visible {
	opacity: 1;
}

/* Flèches placées après les slides, en dessous */
.splide-pages .custom-splide-arrows {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 12px;
	margin: 0;
	z-index: 20;
}

/* Boutons */
.splide-pages .custom-splide-arrow {
	position: static;
	transform: none;
	width: 48px;
	height: 48px;
	border-radius: 999px;
	background: transparent;
	border: 0;
	box-shadow: none;
	opacity: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
}

/* Couleur des symboles */
.splide-pages .custom-splide-arrow::before {
	color: var(--wp--preset--color--ecru-de-soie);
}

/* Masquer l’icône SVG native */
.splide-pages .custom-splide-arrow svg {
	display: none;
}

/* Symboles ASCII */
.splide-pages .custom-splide-arrow-prev::before {
	content: "←";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
}

.splide-pages .custom-splide-arrow-next::before {
	content: "→";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
}

/* Hover / focus */
.splide-pages .custom-splide-arrow:hover,
.splide-pages .custom-splide-arrow:focus {
	background: #D39857;
	color: #181210;
	outline: none;
}

/* État désactivé */
.splide-pages .custom-splide-arrow:disabled {
	opacity: 0.35;
	cursor: default;
}

/* Important : éviter que Gutenberg recentre ou contraigne le slider */
.splide-pages.is-layout-constrained,
.splide-pages .is-layout-constrained {
	max-width: none;
}

/* Important : éviter les padding globaux Gutenberg sur le track */
.splide-pages .has-global-padding {
	padding-left: 0 !important;
	padding-right: 0 !important;
}



/*******************************************************
 * SPLIDE COLLECTIONS - Carrousel des collections
 *******************************************************/
/* Conteneur principal */
.splide-collections {
	position: relative;
	overflow: visible;
	padding-bottom: 72px;
	/* espace réservé aux flèches */
	margin-left: 0;
	margin-right: 0;
	max-width: var(--wp--style--global--content-size);
	transition: 0.3s ease;
}

.splide-collections .splide__slide.full-link-banner .wp-block-cover__background {
	transition: 0.3s ease;
}

.splide-collections .splide__slide.full-link-banner:hover .wp-block-cover__background {
	opacity: 0;
}

/* Le track doit autoriser le débordement */
.splide-collections .splide__track {
	overflow: visible;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Liste Splide */
.splide-collections .splide__list {
	align-items: stretch;
	gap: 0 !important;
}

/* Chaque slide */
.splide-collections .splide__slide {
	box-sizing: border-box;
	flex-shrink: 0;
	transition: opacity 0.3s ease;
}

/* Le contenu interne prend toute la hauteur */
.splide-collections .splide__slide>* {
	height: 100%;
}

/* Compatibilité Gutenberg Cover */
.splide-collections .wp-block-cover {
	height: 100%;
	min-height: 100% !important;
}

/* S'assurer que l'image remplit bien la cover */
.splide-collections .wp-block-cover__image-background {
	object-fit: cover;
}

/* Contenu centré dans la card */
.splide-collections .wp-block-cover__inner-container {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

/* Uniformisation du texte */
.splide-collections .wp-block-cover p {
	margin: 0;
}

.splide-collections .wp-block-cover p a,
.splide-collections .wp-block-cover p {
	color: inherit;
	text-decoration: none;
	margin-left: 0 !important;
	text-shadow: 2px 2px 15px var(--wp--preset--color--cuir-havane);
}

/* Léger effet sur les slides non visibles */
.splide-collections .splide__slide:not(.is-visible) {
	opacity: 0.45;
}

.splide-collections .splide__slide.is-visible {
	opacity: 1;
}

/* Flèches en dessous, alignées à droite */
.splide-collections .custom-splide-arrows {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 12px;
	margin: 0;
	z-index: 20;
}

/* Boutons de navigation */
.splide-collections .custom-splide-arrow {
	position: static;
	transform: none;
	width: 48px;
	height: 48px;
	border-radius: 999px;
	background: transparent;
	border: 0;
	box-shadow: none;
	opacity: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
}

/* On masque l'icône SVG Splide */
.splide-collections .custom-splide-arrow svg {
	display: none;
}

/* Icônes personnalisées */
.splide-collections .custom-splide-arrow-prev::before {
	content: "←";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
	color: var(--wp--preset--color--cuir-havane);
}

.splide-collections .custom-splide-arrow-next::before {
	content: "→";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
	color: var(--wp--preset--color--cuir-havane);
}

/* Hover / focus */
.splide-collections .custom-splide-arrow:hover,
.splide-collections .custom-splide-arrow:focus {
	background: var(--wp--preset--color--terre-de-sienne);
	outline: none;
}

.splide-collections .custom-splide-arrow:hover::before,
.splide-collections .custom-splide-arrow:focus::before {
	color: var(--wp--preset--color--cuir-havane);
}

/* État désactivé */
.splide-collections .custom-splide-arrow:disabled {
	opacity: 0.35;
	cursor: default;
}

/* Important : éviter les contraintes Gutenberg */
.splide-collections.is-layout-constrained,
.splide-collections .is-layout-constrained {
	max-width: none;
}

/* Important : supprimer les paddings globaux Gutenberg */
.splide-collections .has-global-padding {
	padding-left: 0 !important;
	padding-right: 0 !important;
}




/*******************************************************
 * SPLIDE PRESTA - Affichage des images avec la même hauteur, mais ratio libre
 *******************************************************/
/* Conteneur principal */
.splide-presta {
	position: relative;
	overflow: visible;
	padding-bottom: 72px;
	margin-left: 0;
	margin-right: 0;
	max-width: var(--wp--style--global--content-size);
}

/* Track */
.splide-presta .splide__track {
	overflow: visible;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Liste */
.splide-presta .splide__list {
	align-items: center;
}

/* Slide : largeur auto pour respecter le ratio de l'image */
.splide-presta .splide__slide {
	width: auto !important;
	flex: 0 0 auto;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.3s ease;
}

/* Wrapper interne optionnel */
.splide-presta .splide__slide>* {
	height: 100%;
}

/* Images */
.splide-presta .splide__slide img {
	display: block;
	height: 250px;
	/* hauteur commune */
	width: auto;
	/* largeur calculée selon le ratio natif */
	max-width: none;
	/* important pour éviter les limitations Gutenberg/theme */
	object-fit: contain;
	/* conserve toute l'image sans rognage */
}

/* Version responsive */
@media (max-width: 1024px) {
	.splide-presta .splide__slide img {
		height: 250px;
	}
}

@media (max-width: 768px) {
	.splide-presta .splide__slide img {
		height: 200px;
	}
}

@media (max-width: 480px) {
	.splide-presta .splide__slide img {
		height: 160px;
	}
}

/* Slides moins visibles */
.splide-presta .splide__slide:not(.is-visible) {
	opacity: 0.45;
}

.splide-presta .splide__slide.is-visible {
	opacity: 1;
}

/* Flèches */
.splide-presta .custom-splide-arrows {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 12px;
	margin: 0;
	z-index: 20;
}

/* Boutons */
.splide-presta .custom-splide-arrow {
	position: static;
	transform: none;
	width: 48px;
	height: 48px;
	border-radius: 999px;
	background: transparent;
	border: 0;
	box-shadow: none;
	opacity: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
}

/* Masquer le SVG natif */
.splide-presta .custom-splide-arrow svg {
	display: none;
}

/* Icônes */
.splide-presta .custom-splide-arrow-prev::before {
	content: "←";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
	color: var(--wp--preset--color--cuir-havane);
}

.splide-presta .custom-splide-arrow-next::before {
	content: "→";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
	color: var(--wp--preset--color--cuir-havane);
}

/* Hover / focus */
.splide-presta .custom-splide-arrow:hover,
.splide-presta .custom-splide-arrow:focus {
	background: var(--wp--preset--color--terre-de-sienne);
	outline: none;
}

.splide-presta .custom-splide-arrow:hover::before,
.splide-presta .custom-splide-arrow:focus::before {
	color: var(--wp--preset--color--cuir-havane);
}

/* Éviter les contraintes Gutenberg */
.splide-presta.is-layout-constrained,
.splide-presta .is-layout-constrained {
	max-width: none;
}

.splide-presta .has-global-padding {
	padding-left: 0 !important;
	padding-right: 0 !important;
}



/*******************************************************
 * SPLIDE REFERENCES - Affichage des images avec la même hauteur, mais ratio libre
 *******************************************************/
/* Conteneur principal */
.splide-references {
	position: relative;
	overflow: visible;
	padding-bottom: 72px;
	margin-left: 0;
	margin-right: 0;
	max-width: var(--wp--style--global--content-size);
}

/* Track */
.splide-references .splide__track {
	overflow: visible;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Liste */
.splide-references .splide__list {
	align-items: center;
}

/* Slide : largeur auto pour respecter le ratio de l'image */
.splide-references .splide__slide {
	width: auto !important;
	flex: 0 0 auto;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.3s ease;
}

/* Wrapper interne optionnel */
.splide-references .splide__slide>* {
	height: 100%;
}

/* Images */
.splide-references .splide__slide img {
	display: block;
	height: 200px;
	/* hauteur commune */
	width: auto;
	/* largeur calculée selon le ratio natif */
	max-width: none;
	/* important pour éviter les limitations Gutenberg/theme */
	object-fit: contain;
	/* conserve toute l'image sans rognage */
}

/* Version responsive */
@media (max-width: 1024px) {
	.splide-references .splide__slide img {
		height: 200px;
	}
}

@media (max-width: 768px) {
	.splide-references .splide__slide img {
		height: 170px;
	}
}

@media (max-width: 480px) {
	.splide-references .splide__slide img {
		height: 135px;
	}
}

/* Slides moins visibles */
.splide-references .splide__slide:not(.is-visible) {
	opacity: 0.45;
}

.splide-references .splide__slide.is-visible {
	opacity: 1;
}

/* Flèches */
.splide-references .custom-splide-arrows {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 12px;
	margin: 0;
	z-index: 20;
}

/* Boutons */
.splide-references .custom-splide-arrow {
	position: static;
	transform: none;
	width: 48px;
	height: 48px;
	border-radius: 999px;
	background: transparent;
	border: 0;
	box-shadow: none;
	opacity: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
}

/* Masquer le SVG natif */
.splide-references .custom-splide-arrow svg {
	display: none;
}

/* Icônes */
.splide-references .custom-splide-arrow-prev::before {
	content: "←";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
	color: var(--wp--preset--color--cuir-havane);
}

.splide-references .custom-splide-arrow-next::before {
	content: "→";
	font-size: 22px;
	line-height: 1;
	font-weight: 400;
	color: var(--wp--preset--color--cuir-havane);
}

/* Hover / focus */
.splide-references .custom-splide-arrow:hover,
.splide-references .custom-splide-arrow:focus {
	background: var(--wp--preset--color--terre-de-sienne);
	outline: none;
}

.splide-references .custom-splide-arrow:hover::before,
.splide-references .custom-splide-arrow:focus::before {
	color: var(--wp--preset--color--cuir-havane);
}

/* Éviter les contraintes Gutenberg */
.splide-references.is-layout-constrained,
.splide-references .is-layout-constrained {
	max-width: none;
}

.splide-references .has-global-padding {
	padding-left: 0 !important;
	padding-right: 0 !important;
}


/*************
 * Gestion des flèches de direction
 **************/
/* Version claire */
.clear-arrows .custom-splide-arrow-prev::before {
	color: var(--wp--preset--color--ecru-de-soie);
}

.clear-arrows .custom-splide-arrow-next::before {
	color: var(--wp--preset--color--ecru-de-soie);
}

/* Hover / focus */
.clear-arrows .custom-splide-arrow:hover,
.clear-arrows .custom-splide-arrow:focus {
	background: var(--wp--preset--color--ecru-de-soie);
}

.clear-arrows .custom-splide-arrow:hover::before,
.clear-arrows .custom-splide-arrow:focus::before {
	color: var(--wp--preset--color--cuir-havane);
}

/* Désactivé */
.custom-splide-arrow:disabled {
	opacity: 0.35;
	cursor: default;
}



/*****************
 * Slider avec défilement automatique des logos .splide-collections.is-layout-constrained
 ******************/
.partners-logo-slider {
	display: block !important;
	/* override Flexbox de Gutenberg */
	overflow: hidden;
	width: 100% !important;
	margin-left: 0px !important;
	margin-right: 0px !important;
	max-width: unset !important;
}

.partners-logo-slider:before,
.partners-logo-slider:after {
	content: "";
	position: absolute;
	top: 0;
	width: 100px;
	height: 100%;
	z-index: 10;
	pointer-events: none;
}

@media screen and (max-width: 600px) {
	.partners-logo-slider:before,
	.partners-logo-slider:after {
		width: 50px;
	}
}

.partners-logo-slider:before {
	left: -1px;
	background: linear-gradient(to right, var(--wp--preset--color--cuir-havane) 0, transparent 100%);
}

.partners-logo-slider:after {
	right: -1px;
	background: linear-gradient(to left, var(--wp--preset--color--cuir-havane) 0, transparent 100%);
}

.partners-logo-slider .splide__track {
	overflow: hidden;
}

.partners-logo-slider .splide__slide {
	display: flex;
	align-items: center;
	justify-content: center;
}

.partners-logo-slider .splide__slide figure {
	margin: 0;
	padding: 0 20px;
}

.partners-logo-slider .splide__slide img {
	width: auto;
	max-width: 200px;
	height: 80px;
	object-fit: contain;
}