:root {
	/* --TitleFont: "Lexend", sans-serif;
	--BodyFont: "Poppins", sans-serif; */

	--TitleFont: "Poppins", sans-serif;
	--PoppinsFont: "Poppins", sans-serif;

	--Bold: 700;
	--Semibold: 600;
	--Medium: 500;
	--Regular: 400;
	--Light: 300;

	--font-color-green: #216869;
	--font-color-dark-green: #305050;

	--colorInvalid: #ffe7e7;

	--Primary700: rgb(6, 86, 91); 		/* --unnamed-color-06565b */
	--Primary600: rgb(33, 104, 105); 	/* --unnamed-color-216869 */
	--Primary500: rgb(59, 134, 134); 	/* --unnamed-color-3b8686 */
	--Primary400: rgb(84, 142, 135); 	/* --unnamed-color-548e87 */
	--Primary300: rgb(31, 151, 146); 	/* --unnamed-color-1f9792 */
	--Primary200: rgb(102, 164, 172); 	/* --unnamed-color-66a4ac */
	--Primary100: rgb(165, 206, 207); 	/*#a5cecf */
	--Primary50: rgb(228, 238, 235); 	/*#e4eeeb */

	--PublicTagColor: var(--Primary300);
	--PrivateTagColor: var(--Primary700);

	--bg-color-white: #fffcf6; /* --unnamed-color-fff9ee*/

	--BodyColor: #0b2a2a;

	--max-mg-pd: 12.5rem;

	font-size: 16px;

	/* RL : mise en commentaires de scroll-padding-top : */
	/* -- provoque un bug dans les input sur Chrome Mobile */
	/* -- je ne sais pas à quel endroit cela est utilisé */
	/* scroll-padding-top: calc(var(--HeaderHeight, 6.5625rem) + 1rem); */
	scroll-behavior: smooth;

	color: var(--BodyColor);
}
* {
	box-sizing: border-box;
}
dialog.modal {
	border-radius: 12px;
	border: none;
	padding: 2.5rem;
	width: 500px;
	max-width: calc(100% - (2 * 1.25rem));
	min-width: 250px;
}
dialog.modal::backdrop {
	background: rgba(0, 0, 0);
	opacity: 0.56;
}
.svg,
.svg-big {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	background-color: currentColor;
	-webkit-mask-image: var(--svg);
	mask-image: var(--svg);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
}
.svg-big {
	width: 1.5rem;
	height: 1.5rem;
}
.ion--ios-search {
	--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M443.5 420.2L336.7 312.4c20.9-26.2 33.5-59.4 33.5-95.5 0-84.5-68.5-153-153.1-153S64 132.5 64 217s68.5 153 153.1 153c36.6 0 70.1-12.8 96.5-34.2l106.1 107.1c3.2 3.4 7.6 5.1 11.9 5.1 4.1 0 8.2-1.5 11.3-4.5 6.6-6.3 6.8-16.7.6-23.3zm-226.4-83.1c-32.1 0-62.3-12.5-85-35.2-22.7-22.7-35.2-52.9-35.2-84.9 0-32.1 12.5-62.3 35.2-84.9 22.7-22.7 52.9-35.2 85-35.2s62.3 12.5 85 35.2c22.7 22.7 35.2 52.9 35.2 84.9 0 32.1-12.5 62.3-35.2 84.9-22.7 22.7-52.9 35.2-85 35.2z' fill='%23000'/%3E%3C/svg%3E");
}
.ic--baseline-facebook {
	--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M22 12c0-5.52-4.48-10-10-10S2 6.48 2 12c0 4.84 3.44 8.87 8 9.8V15H8v-3h2V9.5C10 7.57 11.57 6 13.5 6H16v3h-2c-.55 0-1 .45-1 1v2h3v3h-3v6.95c5.05-.5 9-4.76 9-9.95'/%3E%3C/svg%3E");
}
.mynaui--arrow-long-down {
	--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m8 18l4 4m0 0l4-4m-4 4V2'/%3E%3C/svg%3E");
}
.ion--mail {
	--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' d='M424 80H88a56.06 56.06 0 0 0-56 56v240a56.06 56.06 0 0 0 56 56h336a56.06 56.06 0 0 0 56-56V136a56.06 56.06 0 0 0-56-56m-14.18 92.63l-144 112a16 16 0 0 1-19.64 0l-144-112a16 16 0 1 1 19.64-25.26L256 251.73l134.18-104.36a16 16 0 0 1 19.64 25.26'/%3E%3C/svg%3E");
}
.fa6-solid--phone {
	--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' d='M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64c0 247.4 200.6 448 448 448c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368c-70.4-33.3-127.4-90.3-160.7-160.7l49.3-40.3c13.7-11.2 18.4-30 11.6-46.3l-40-96z'/%3E%3C/svg%3E");
}
.la--facebook-f {
	--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath fill='%23000' d='M19.254 2C15.312 2 13 4.082 13 8.826V13H8v5h5v12h5V18h4l1-5h-5V9.672C18 7.885 18.583 7 20.26 7H23V2.205C22.526 2.141 21.145 2 19.254 2'/%3E%3C/svg%3E");
}
.material-symbols--close {
	--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M6.4 19L5 17.6l5.6-5.6L5 6.4L6.4 5l5.6 5.6L17.6 5L19 6.4L13.4 12l5.6 5.6l-1.4 1.4l-5.6-5.6z'/%3E%3C/svg%3E");
}
body {
	background-color: var(--bg-color-white);
	margin: 0;
	max-width: 1920px;
	margin-left: auto !important;
	margin-right: auto !important;

	font-size: 1.0625rem;
	font-family: var(--PoppinsFont);
	font-weight: var(--Regular);
	line-height: 1.95em;
	letter-spacing: 0rem;
	color: var(--font-color-dark-green);
}

.title {
	font-weight: var(--Bold);
	line-height: 1.1em;
	font-size: 3.125rem;
	letter-spacing: 0rem;
	margin-block: 1.25rem;
	color: #FFFFFF;
	text-wrap: balance;
}

h1 {
	font-weight: var(--Bold);
	line-height: 1.1em;
	font-size: 3.125rem;
	letter-spacing: 0rem;
	margin-block: 1.25rem;
	color: #FFFFFF;
	text-wrap: balance;
}
h2 {
	font-weight: var(--Bold);
	/* line-height: 1.5em; */
	line-height: 1.25em;
	font-size: 2.5rem;
	letter-spacing: 0rem;
	color: var(--font-color-green);
	margin-block: 1.25rem;
	text-wrap: balance;
}
h2:first-child {
	margin-top: 0rem;
}
h2:last-child {
	margin-bottom: 0rem;
}
h3 {
	font-weight: var(--Bold);
	line-height: 1.25em;
	font-size: 1.625rem;
	letter-spacing: 0rem;
	margin-block: 1.25rem;
	color: var(--font-color-green);
	text-wrap: balance;
}
h3:first-child {
	margin-top: 0rem;
}
h3:last-child {
	margin-bottom: 0rem;
}
h4 {
	font-weight: var(--Bold);
	line-height: 1.25em;
	font-size: 1.25rem;
	letter-spacing: 0rem;
	margin-block: 1.25rem;
	color: var(--font-color-green);
	text-wrap: balance;
}
h4:first-child {
	margin-top: 0rem;
}
h4:last-child {
	margin-bottom: 0rem;
}
.DateLieu_Wrapper h3 {
	margin-bottom: 0rem;
}
p + h3 {
	margin-top: 1.875rem;
}
p {
	margin-block: 1.25rem;
}
p:first-child {
	margin-top: 0rem;
}
p:last-child {
	margin-bottom: 0rem;
}
p:empty {
	display: none;
}
textarea {
	margin-block: 0rem;
}
p,
textarea {	
	font-size: 1.0625rem;
	font-family: var(--PoppinsFont);
	font-weight: var(--Regular);
}
p.fs-15 {
	font-size: 0.9375rem;
}
button,
a {
	cursor: pointer;
	color: var(--Primary600);
	display: inline-block;
	font-family: var(--TitleFont);
	font-weight: var(--Regular);
	text-underline-offset: 3px;
}
a.a-nostyle {
	display: contents;
	text-decoration: none;
	color: inherit;
	font-family: inherit;
	font-weight: inherit;
}
a.a-nostyle:hover {
	color: var(--Primary300);
}
a:not(.Not_Underlined):hover {
	text-decoration: underline;
}
.Not_Underlined {
	text-decoration: none;
}
a,
a:visited,
a:active {
	text-decoration: none;
}
img {
	width: 100%;
	display: block;
	height: 100%;
}
.Uppercase {
	text-transform: uppercase;
}
.Lower {
	text-transform: lowercase;
}
.Rounded {
	border-radius: 5px;
}
.fc-white {
	color: #FFFFFF;

	> * {
		color: #FFFFFF !important;
	}
}
.bgPrimary50 {
	background-color: var(--Primary50);
}
.bgPrimary600 {
	background-color: var(--Primary600);
}
.bgBrown {
	background-color: #F6F1E7;
}
.bgWhite {
	background-color: var(--bg-color-white);
}
.line-clamp-1,
.line-clamp-2,
.line-clamp-3,
.line-clamp-4,
.line-clamp-5,
.line-clamp-6,
.line-clamp-7 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: var(--_number); /* number of lines to show */
	line-clamp: var(--_number);
	-webkit-box-orient: vertical;
}
.line-clamp-1 {--_number: 1;}
.line-clamp-2 {--_number: 2;}
.line-clamp-3 {--_number: 3;}
.line-clamp-4 {--_number: 4;}
.line-clamp-5 {--_number: 5;}
.line-clamp-6 {--_number: 6;}
.line-clamp-7 {--_number: 7;}

.pd-tp-0 {padding-top: 0rem;}
.pd-bt-0 {padding-bottom: 0rem;}
.mg-tp-0 {margin-top: 0rem;}
.mg-bt-0 {margin-bottom: 0rem;}

.pd-20 {padding: min(1.125rem, var(--max-mg-pd));}
.pd-tp-20 {padding-top: min(1.25rem, var(--max-mg-pd));}
.pd-bt-20 {padding-bottom: min(1.25rem, var(--max-mg-pd));}
.mg-tp-20 {margin-top: min(1.25rem, var(--max-mg-pd));}
.mg-bt-20 {margin-bottom: min(1.25rem, var(--max-mg-pd));}

.pd-tp-30 {padding-top: min(1.875rem, var(--max-mg-pd));}
.pd-bt-30 {padding-bottom: min(1.875rem, var(--max-mg-pd));}
.mg-tp-30 {margin-top: min(1.875rem, var(--max-mg-pd));}
.mg-bt-30 {margin-bottom: min(1.875rem, var(--max-mg-pd));}

.pd-40 {padding: min(2.25rem, var(--max-mg-pd));}
.pd-tp-40 {padding-top: min(2.25rem, var(--max-mg-pd));}
.pd-bt-40 {padding-bottom: min(2.25rem, var(--max-mg-pd));}
.mg-tp-40 {margin-top: min(2.25rem, var(--max-mg-pd));}
.mg-bt-40 {margin-bottom: min(2.25rem, var(--max-mg-pd));}

.pd-tp-50 {padding-top: min(3.125rem, var(--max-mg-pd));}
.pd-bt-50 {padding-bottom: min(3.125rem, var(--max-mg-pd));}
.mg-tp-50 {margin-top: min(3.125rem, var(--max-mg-pd));}
.mg-bt-50 {margin-bottom: min(3.125rem, var(--max-mg-pd));}

.pd-60 {padding: min(3.75rem, var(--max-mg-pd));}
.pd-tp-60 {padding-top: min(3.75rem, var(--max-mg-pd));}
.pd-bt-60 {padding-bottom: min(3.75rem, var(--max-mg-pd));}
.mg-tp-60 {margin-top: min(3.75rem, var(--max-mg-pd));}
.mg-bt-60 {margin-bottom: min(3.75rem, var(--max-mg-pd));}

.pd-100 {padding: min(6.25rem, var(--max-mg-pd));}
.pd-tp-100 {padding-top: min(6.25rem, var(--max-mg-pd));}
.pd-bt-100 {padding-bottom: min(6.25rem, var(--max-mg-pd));}
.mg-tp-100 {margin-top: min(6.25rem, var(--max-mg-pd));}
.mg-bt-100 {margin-bottom: min(6.25rem, var(--max-mg-pd));}

.mg-right-100 {margin-right: min(6.25rem, var(--max-mg-pd));}
.mg-left-100 {margin-left: min(6.25rem, var(--max-mg-pd));}

.pd-tp-120 {padding-top: min(7.5rem, var(--max-mg-pd));}
.pd-bt-120 {padding-bottom: min(7.5rem, var(--max-mg-pd));}
.mg-tp-120 {margin-top: min(7.5rem, var(--max-mg-pd));}
.mg-bt-120 {margin-bottom: min(7.5rem, var(--max-mg-pd));}

.pd-tp-200 {padding-top: min(12.5rem, var(--max-mg-pd));}
.pd-bt-200 {padding-bottom: min(12.5rem, var(--max-mg-pd));}

.mg-in-auto {
	margin-inline: auto;
	width: fit-content;
}

section {
	width: 100%;
	max-width: 1920px;
	margin-inline: auto;
}
section:has(.wrapper-actu-home) {
	overflow: hidden;
}
section:has(.sticky) {
	overflow: visible;
}
section.bgBrown.pd-bt-120 + section.bgBrown.pd-tp-120 {
	padding-top: 0rem;
}
section.bgBrown.pd-bt-120:has(+ section.bgBrown.pd-tp-120) {
	padding-bottom: min(6.25rem, var(--max-mg-pd));
}
/* si une section avec un fond de couleur suit une autre section avec un fond de couleur différent */
section.bgBrown:has(+ section.bgPrimary50),
section.bgPrimary50:has(+ section.bgBrown) {
	margin-bottom: min(3.75rem, var(--max-mg-pd));
}
.wrapper-img-text,
.wrapper-text-img {
	display: grid;
	gap: min(6.25rem, var(--max-mg-pd));
	align-items: center;

	&:has(.img-border-left, .img-border-right) {
		padding-bottom: 1.25rem;
	}
	img {
		min-height: 35rem;
		height: 100%;
		max-height: 660px;
		object-fit: cover;
		object-position: center;
		align-self: flex-start; /* Dans le cas où le texte est plus grand que l'image, elle doit être alignée verticalement au top et pas au milieu */
	}
	img.sticky {
		position: sticky;
		top: 150px;
		height: auto;
		aspect-ratio: 4/5;
		align-self: start;
	}
	/* Pour une image à gauche ou à droite d'un formulaire, elle doit faire la hauteur du formulaire */
	&:has(form) img {
		max-height: unset;
	}
	&:is(.bgPrimary50, .bgBrown) img {
		max-height: unset;
	}
}
.wrapper-img-text {
	grid-template-columns: 1fr 2fr;
}
.wrapper-text-img {
	grid-template-columns: 2fr 1fr;
}
.wrapper-half-half {
	display: grid;
	grid-template-columns: 50% 50%;
}
.wrapper-half-half-gap {
	display: grid;
	grid-template-columns: repeat(2, calc((100% - 1.875rem) / 2));
	gap: 1.875rem;
}
.wrapper-content,
.wrapper-content-1120 {
	width: calc(100% - (2 * 3.75rem));
	max-width: 1420px;
	margin-inline: auto;
}
.wrapper-content-1120 {
	max-width: 1120px;
}
.img-border-left,
.img-border-right {
	border-radius: 5px;
}
.img-border-left:not(.SideImg) {
	box-shadow: 
		-1.25rem 1.25rem 0 0 var(--_colorBorder);
}
.img-border-right:not(.SideImg) {
	box-shadow: 
		1.25rem 1.25rem 0 0 var(--_colorBorder);
}
.img-border-left.green,
.img-border-right.green {
	--_colorBorder: var(--Primary50)
}
.img-border-left.brown,
.img-border-right.brown {
	--_colorBorder: #E8E2D5;
}
.gridCardIcone {
	display: grid;
	gap: 1.875rem;
	height: 100%;
}
/* gridCardIcone suit un élément */
*:is(:visible) + .gridCardIcone {
	margin-top: 2.5rem;
}
/* n'a pas 2 .cardIcone */
.gridCardIcone:has(:not(.cardIcone:nth-child(2))) {
	grid-template-columns: repeat(1, 1fr);
}
/* a au moins 2 .cardIcone */
.gridCardIcone:has(.cardIcone:nth-child(2)) {
	grid-template-columns: repeat(3, 1fr);
}
/* a au moins 4 .cardIcone */
.gridCardIcone:has(.cardIcone:nth-child(4)) {
	grid-template-columns: repeat(2, 1fr);
}
/* a au moins 5 .cardIcone */
.gridCardIcone:has(.cardIcone:nth-child(5)):not(:has(.cardIcone:nth-child(6))) {
	grid-template-columns: repeat(6, 1fr);

	:nth-child(1) {
		grid-row: 1;
		grid-column: 2 / 4;
	}
	:nth-child(2) {
		grid-row: 1;
		grid-column: 4 / 6;
	}
	:nth-child(3) {
		grid-row: 2;
		grid-column: 1 / 3;
	}
	:nth-child(4) {
		grid-row: 2;
		grid-column: 3 / 5;
	}
	:nth-child(5) {
		grid-row: 2;
		grid-column: 5 / 7;
	}
}
.gridCardIcone:has(.cardIcone:nth-child(6)) {
	grid-template-columns: repeat(3, 1fr);
}
/* Pour les liens utiles : on les affiche en pleine largeur */
.gridCardIcone:has(.cardIcone.icone-globe-loupe) {
	grid-template-columns: repeat(1, 1fr);
}
.cardIcone {
	padding: min(2.5rem, var(--max-mg-pd));
	border-radius: 12px;
	position: relative;

	/* pour les cardIcone avec boutons, il faut que les boutons soient alignés en bas */
	/* normalement on a toujours un texte dans un div avec éventuellement un bouton */
	&:has(.wrapper-bouton) {
		display: grid;
		grid-template-rows: 1fr auto;
	}
	> div > :first-child {
		margin-right: 2rem; /* écart pour éviter l'illustration en ahut à droite */
	}
}
.cardIcone:not(.sans-icone)::after {
	content: "";
	position: absolute;
	right: 1.4375rem;
	top: 1.4375rem;
	width: 3.125rem;
	height: 3.125rem;
	border-radius: 50%;
}
.cardIcone.bgPrimary50::after  {
	background-color: var(--bg-color-white);
}
.cardIcone.bgBrown::after {
	background-color: var(--bg-color-white);
}
.bgPrimary50 .cardIcone.bgWhite::after {
	background-color: var(--Primary50);
}
.bgBrown .cardIcone.bgWhite::after {
	background-color: #F6F1E7;
}
.cardIcone:not(.sans-icone)::before {
	content: "";
	position: absolute;
	right: 1.25rem;
	top: 1.25rem;
	width: 2.5rem;
	height: 2.5rem;
	z-index: 1;

	-webkit-mask-image: var(--_urlImages);
	mask-image: var(--_urlImages);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}
.cardIcone.bgPrimary50::before  {
	background-color: var(--Primary100);
}
.cardIcone.bgBrown::before {
	background-color: #DBC79F;
}
.cardIcone.bgWhite::before {
	background-color: var(--Primary100);
}
.bgBrown .cardIcone.bgWhite::before {
	background-color: #DBC79F;
}
.icone-dialogue {--_urlImages: url("../Images/icone_dialogue.svg");}
.icone-dialogue-etoile {--_urlImages: url("../Images/icone_dialogue_etoile.svg");}
.icone-dialogue-coeur {--_urlImages: url("../Images/icone_dialogue_coeur.svg");}
.icone-position {--_urlImages: url("../Images/icone_position.svg");}
.icone-tableau {--_urlImages: url("../Images/icone_tableau.svg");}
.icone-pouce {--_urlImages: url("../Images/icone_pouce.svg");}
.icone-euro {--_urlImages: url("../Images/icone_euro.svg");}
.icone-document {--_urlImages: url("../Images/icone_document.svg");}
.icone-document-coeur {--_urlImages: url("../Images/icone_document_coeur.svg");}
.icone-personne {--_urlImages: url("../Images/icone_personne.svg");}
.icone-globe-loupe {--_urlImages: url("../Images/icone_globe_loupe.svg");}
.icone-cercles {--_urlImages: url("../Images/icone_cercles.svg");}
.icone-damier {--_urlImages: url("../Images/icone_damier.svg");}
.icone-table {--_urlImages: url("../Images/icone_table.svg");}
.icone-surface {--_urlImages: url("../Images/icone_surface.svg");}
.icone-u {--_urlImages: url("../Images/icone_u.svg");}
.icone-chaise {--_urlImages: url("../Images/icone_chaise.svg");}
.icone-homme {--_urlImages: url("../Images/icone_homme.svg");}
.icone-musique {--_urlImages: url("../Images/icone_musique.svg");}
.icone-handicap {--_urlImages: url("../Images/icone_handicap.svg");}
.icone-soleil {--_urlImages: url("../Images/icone_soleil.svg");}
.icone-parking {--_urlImages: url("../Images/icone_parking.svg");}

.gridCardIcone_2 {
	display: grid;
	gap: 1.875rem;
	grid-template-columns: repeat(6, 1fr);
}
.cardIcone_2 {
	padding: 1.25rem;
	border-radius: 12px;
	display: flex;
	gap: 1.25rem;
	align-items: center;

	h4 {
		margin-top: 0px;
	}
}
.icone3 {
	width: 3.3125rem;
	height: 3.3125rem;
	position: relative;
}
.icone3::before {
	content: "";
	width: 3.125rem;
	height: 3.125rem;
	background-color: #E4EEEB;
	position: absolute;
	left: 0px;
	bottom: 0px;
	border-radius: 50%;
}
.icone3::after {
	content: "";
	position: absolute;
	right: 0px;
	top: 0px;
	width: 2.5rem;
	height: 2.5rem;
	z-index: 1;
	background-color: #A5CECF;
	-webkit-mask-image: var(--_urlImages);
	mask-image: var(--_urlImages);
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center right;
	mask-position: center right;
}
.lire-plus {
	font-family: var(--PoppinsFont);
	color: var(--font-color-green);
	font-size: 1.0625rem;
	letter-spacing: 0rem;
	font-weight: var(--Medium);
	text-decoration: underline;
	display: block;
}
.lire-plus:hover {
	color: var(--Primary300);
}
.bouton {
	padding: 0.8125rem 1.5rem;
	color: #FFFFFF;
	background-color: #216869;
	font-weight: var(--Medium);
	font-size: 1.0625rem;
	border-radius: 5px;
	display: block;
	text-decoration: none;
	width: fit-content;
	cursor: pointer;
	text-transform: lowercase;
	border: none;
}
.bouton.wid-100 {
	width: 100%;
}
.icone2-date,
.icone2-lieu,
.icone2-heure {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}
.icone2-date::before ,
.icone2-lieu::before ,
.icone2-heure::before {
	content: "";
	display: inline-block;
	width: 2.25rem;
	aspect-ratio: 1 / 1;
	background-size: contain;
	background-repeat: no-repeat;
}
.icone2-date::before {background-image: url("../Images/icone2_date.svg");}
.icone2-lieu::before {background-image: url("../Images/icone2_position.svg");}
.icone2-heure::before {background-image: url("../Images/icone2_heure.svg");}

.CardImg {
	display: block;

	img {
		width: 100%;
		height: auto;
		aspect-ratio: 2/3;
		height: 18.75rem;
		object-fit: cover;
		max-height: inherit;
	}
}
.Cards_Wrapper2 {
	display: grid;
	column-gap: 1.875rem;
	row-gap: 6.25rem;
	grid-template-columns: repeat(3, 
		calc((100% - (2 * 1.875rem)) / 3)
	);

	img {
		aspect-ratio: 2/1;
		height: auto;
		object-fit: cover;
    	object-position: center;
	}
}
.DateLieu_Wrapper {
	display: flex;
	column-gap: 1.875rem;
	row-gap: 0.75rem;
	flex-wrap: wrap;
	margin-top: 1.25rem;
}
.wrapper-bouton {
	display: flex;
	gap: 0.9375rem;
	align-items: center;
	margin-top: 1.875rem;
	flex-wrap: wrap;
}
.wrapper-bouton:first-child {
	margin-top: 0px;
}
.grid-col-2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: min(6.25rem, var(--max-mg-pd));
	align-items: start;

	img {
		aspect-ratio: 2/1;
		height: auto;
	}
}
.child-display-contents {
	> div {
		display: contents;
	}
}
.grid-member {
	--_col-gap: 3.75rem;
	--_number-cols: 5;

	display: grid;
	grid-template-columns: repeat(
		var(--_number-cols), 
		calc(
			(100% - (var(--_col-gap) * (var(--_number-cols) - 1))) / var(--_number-cols)
		)
	);
	column-gap: var(--_col-gap);

	/* permet de décaler les rangées 0px correspond aux 2 membres de gauche */
	grid-template-rows: auto 3.75rem auto auto auto 3.75rem;
	/* row-gap: 3.75rem; */

	a {
		display: contents;
	}
	h2:not(.do-not-span) {
		grid-column: 1/ calc(var(--_number-cols) + 1);
	}
	h2.start-cecond-col {
		grid-column: 2/ calc(var(--_number-cols) + 1);
	}
	img {
		aspect-ratio: 1/1;
		object-fit: cover;
		object-position: top center;
		height: auto;
	}
	p {
		margin-top: 0px;
	}
	div {
		margin-bottom: 3.75rem;
		height: fit-content;
	}
	[card-exemple] {
		background-color: var(--Primary50);
		width: 100%;
		height: auto;
		aspect-ratio: 1/1;
	}
}
/* .Bg {
	height: inherit;
	position: absolute;
} */
.Banner {
	position: relative;
	z-index: 5;
	height: 28.125rem;
	margin-bottom: min(7.5rem, var(--max-mg-pd));
	background: linear-gradient(90deg, rgba(0,0,0,0.32) 0%, rgba(0,0,0,0) 100%), var(--_urlImages);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.HomeBanner {
	z-index: 49;
	height: 100dvh;
	height: 100vh;
	max-height: 60rem;

	.wrapper-text-img {
		height: calc(100%);
	}
}
.GeneralBanner {
	.wrapper-text-img {
		align-items: flex-end;
		height: calc(100% - 5.625rem);
	}
	h1 {
		text-transform: lowercase;
	} 
}
.Banner .Arrow {
	position: absolute;
	bottom: 3.125rem;
	left: 0;
	right: 0;
	margin: auto;
	width: 4.75rem;
	height: 4.75rem;
	--ArrowColor: white;
}
.Arrow {
	--ArrowColor: var(--Primary600);
	width: 3.4375rem;
	height: 3.4375rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: solid 2px var(--ArrowColor);
	color: var(--ArrowColor);
	transition: opacity 0.4s;
	&:not(.Inactive) {
		cursor: pointer;
		&:hover {
			.ArrowContent {
				translate: 0 15%;
			}
		}
	}
}
.Arrow.Left {
	rotate: 90deg;
}
.Arrow.Right {
	rotate: -90deg;
}
.ArrowContent {
	color: inherit;
	width: 60%;
	height: 60%;
	transition: translate 0.2s;
}
.Arrows_Wrapper {
	display: flex;
	column-gap: 0.9375rem;	
}
.Arrows_Wrapper.absolute {
	position: absolute;
}
#HomeActu .Arrows_Wrapper.absolute {
	right: 0%;
	top: 0px;
}
.right-salons-home .Arrows_Wrapper.absolute {
	left: 0;
	right: 0;
	top: calc(100% + 1.25rem);
	justify-content: center;
}
div:has(> .Arrows_Wrapper.absolute) {
	position: relative;
}
.Arrows_Wrapper .Arrow.Inactive {
	opacity: 10%;
	cursor: initial;
}
.IconText_Wrapper {
	display: flex;
	column-gap: 0.625rem;
	align-items: center;
	width: fit-content;
	font-size: 0.9375rem;
	font-family: var(--BodyFont);
	font-weight: var(--Medium);
}
#Partners {
	padding: 2.5rem 0rem;
	margin: 0;
	background-color: rgba(150, 150, 150, 0.05);
	overflow: hidden;
}
.Partner_Wrapper {
	width: fit-content;
	white-space: nowrap;
	overflow-x: hidden;
	&:hover .PartnerList {
		animation-play-state: paused;
	}
}
.PartnerList {
	width: max-content;
	display: inline-flex;
	padding-left: 5rem;
	gap: 5rem;
	justify-content: space-between;
	animation: var(--Speed) slide infinite linear;
	* {
		flex-shrink: 0;
		flex-grow: 0;
	}
}
@keyframes slide {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}
.PartnerItem {
	height: 8rem;
	width: 8rem;
	display: inline-block;
	object-fit: contain;
	filter: brightness(0.3) saturate(0%);
	cursor: pointer;
}
.PartnerItem:hover {
	filter: none;
}
.EventTag_Wrapper {
	margin-top: 0.625rem;
	column-gap: 0.9375rem;
	row-gap: 0.75rem;
	display: flex;
	flex-wrap: wrap;
}
.EventTag {
	font-family: var(--TitleFont);
	font-size: 0.8125rem;
	font-weight: var(--Regular);
	min-width: 3.75rem;
	text-transform: lowercase;
	color: var(--TagColor, black);
	border: solid 1px var(--TagColor, black);
	border-radius: 3px;
	padding: 0.125rem 0.6875rem;
	text-align: center;
}
.EventTag.PublicTag {
	--TagColor: var(--PublicTagColor);
}
.EventTag.PrivateTag {
	--TagColor: var(--PrivateTagColor);
}
.EventTag.RubriqueTag {
	--TagColor: hsl(calc((173 + var(--_hueVariation)) * 20) 26% 44%);
}
ul:not(.Menu, .DropdownMenu, .DropdownItem ul) {
	list-style: none;
	padding: 0;
	padding-left: 1.5rem;
	margin-block: 1.25rem;
}
li:not(.Item, .DropdownItem) {
	position: relative;
	margin-bottom: 1.25rem;
	line-height: 25px;
}
li:not(.Item, .DropdownItem):last-child {
	margin-bottom: 0rem;
}
ul > li:not(.Item, .DropdownItem)::before {
	content: "";
	display: inline-block;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background-color: var(--Primary100);
	position: absolute;
	margin-right: 0.5rem;
	left: -1.2rem;
	top: 0.5rem;
}
li > ul > li:not(.Item, .DropdownItem)::before {
	border-radius: 0;
	width: 0.3rem;
	height: 0.3rem;
}
input,
textarea {
	background-color: transparent;
	width: 100%;
	outline: none;
	padding: 10px;
	padding-inline: 12px;
}
input {
	border: none;
	border-bottom: solid 1px var(--font-color-dark-green);
	font-size: inherit;
	font-family: inherit;
	color: inherit;
}
input.invalide,
textarea.invalide {
	background-color: var(--colorInvalid);
}
div.invalide label:not(.AbsoluteLabel):not(.Amount:has(:checked)),
div.invalide :not(.Amount:has(:checked)) input {
	background-color: var(--colorInvalid);
}
input::placeholder {
	text-transform: lowercase;
}
textarea {
	border: solid 1px var(--font-color-dark-green);
	resize: none;
	height: 12.5rem;
	line-height: 150%;
	display: block;
	margin-top: 0.625rem;
	border-radius: 5px;
}
.form-wrapper {
	display: grid;
	column-gap: 1.875rem;
	row-gap: 1.875rem;
	width: 100%;
	margin-bottom: 1.25rem;
}
.form-wrapper.col-gap-small {
	column-gap: 1.25rem;
}
.form-wrapper.col-1-1 {
	display: grid;
	column-gap: 1.875rem;
	align-items: center;
	grid-template-columns: 1fr 1fr;
}
.form-wrapper.col-1-2 {
	grid-template-columns: 1fr 2fr;
}
.form-wrapper.col-7-1 {
	grid-template-columns: 7fr 1fr;
}
.form-wrapper.col-1-1-1 {
	grid-template-columns: 1fr 1fr 1fr;
}
.form-wrapper.col-1-1-1-4 {
	grid-template-columns: 1fr 1fr 1fr 4fr;
}
.form-wrapper.col-1-auto-auto {
	grid-template-columns: 1fr auto auto;
}
.form-wrapper.col-auto-auto-1-auto-auto-auto {
	grid-template-columns: auto auto 1fr auto auto auto;
}
div:has(> .AbsoluteLabel) {
	position: relative;
}
.AbsoluteLabel,
label:has(+ textarea),
label:has(+ .form-wrapper) {
	position: relative;
	left: 10px;
	text-transform: lowercase;
	padding-inline: 2px;
}
.AbsoluteLabel {
	position: absolute;
	transition: all 0.2s;
	cursor: text;
	user-select: none;
	bottom: 0.625rem;
}
.AbsoluteLabel:has(+ :focus, + .nonvide) {
	font-size: 0.8rem;
	opacity: 60%;
	bottom: 100%;
	line-height: 1em;
}
img.Default {
	opacity: 100%;
	background-color: rgba(31, 151, 146, 0.11);
}
.Hidden {
	display: none;
}
#fancybox-MainPicture.fancybox__container .fancybox__backdrop {
	--fancybox-bg: rgba(24, 24, 27, 0.4);
}
.Centered {
	margin-inline: auto;
	width: fit-content;
}
.dropdown-wrapper {
	position: relative;
	height: 2.75rem;
	z-index: 1;
}
.dropdown-wrapper:has(.DropdownMenu.open) {
	z-index: 2;
}
.Dropdown {
	border: 1px solid currentColor;
	border-radius: 5px;
	position: absolute;
	/* overflow: hidden; */
	z-index: 1;
	width: 100%;
}
.bgPrimary50 .Dropdown {
	background-color: var(--Primary50);
}
.bgBrown .Dropdown {
	background-color: #F6F1E7;
}
.Dropdown2 {
	border: none;
}
.DropdownMenu {
	transition: max-height 0.2s;
	max-height: 0rem;
	margin: 0rem;
	padding: 0;
	border-top: none;
	overflow: hidden;
	min-width: max-content;
	width: 100%;
	background-color: var(--bg-color-white);

	* {
		margin: 0;
		padding: 0;
	}
	li {
		margin: 0;
	}
}
.DropdownMenu.open {
	max-height: 31.25rem;
	border-top: none;
	overflow: visible
}
.Dropdown.Dropdown2 .DropdownMenu.open {
	border: solid 1px var(--font-color-dark-green);
}
.DropdownMenu span {
	display: block;
	height: 100%;
	width: 100%;
	user-select: none;
	padding-block: 0.75rem;
}
.Dropdown:not(.Dropdown2) .DropdownInput {
	padding-left: 1.875rem;
	user-select: none;
	cursor: pointer;
	border: none;
	caret-color: transparent;
	line-height: 1.53em;
}
.Dropdown.Dropdown2 .DropdownInput {
	padding-right: 2rem;
	cursor: pointer;
	caret-color: transparent;
}
.DropdownSubMenu {
	> span {
		padding-left: 1.5625rem;
		font-size: 1.0625rem;
		font-weight: var(--Medium);
		padding-block: 0.9375rem;
	}
}
.DropdownItem:not(.DropdownSubMenu) > span {
	cursor: pointer;
	padding-inline: 2.1875rem;
	white-space: no;
	font-size: 0.9375rem;
	font-weight: var(--Light);
	&.Active,
	&:hover {
		background-color: var(--Primary50);
		color: var(--Primary600);
	}
}
.DropdownItem {
	list-style-type: none;
}
.DropdownItem::before {
	display: none !important;
}
.DropdownMenu > .DropdownItem.DropdownSubMenu:first-of-type > span {
	border-top: solid 1px rgba(0, 0, 0, 0.05);
}
.DropdownInput {
	&.Focused + .DropdownArrow {
		transform: rotate(45deg) translate(-5px, -5px);
		&:before {
			transform: translate(10px, 0);
		}
		&:after {
			transform: rotate(90deg) translate(10px, 0);
		}
	}
	+ .DropdownArrow {
		transform: rotate(0);
		&:before,
		&:after {
			background-color: transparent;
			width: 2px;
			height: 6px;
			display: inline-block;
			position: absolute;
			border-bottom: 6px solid var(--BodyColor);
			top: 0;
			left: 0;
			transform: rotate(0);
		}
		&:before {
			transform: rotate(-135deg);
		}
		&:after {
			transform: rotate(135deg);
		}
	}
	&.Focused {
		+ .DropdownArrow {
			transform: rotate(0);
			transform: translate(0, -6px);
			&:before {
				transform: rotate(-45deg);
			}
			&:after {
				transform: rotate(45deg);
			}
		}
	}
}
.DropdownArrow {
	width: 13px;
	height: 13px;
	display: block;
	transition: 0.4s ease;
	transform: rotate(45deg);
	position: absolute;
	right: 1.125rem /* 18px -> 1.125rem */;
	top: 1.2rem;
	&:before,
	&:after {
		position: absolute;
		content: "";
		display: inline-block;
		width: 12px;
		height: 3px;
		transition: 0.4s ease;
	}
	&:after {
		position: absolute;
		transform: rotate(90deg);
		top: -5px;
		left: 5px;
	}
}
.Checkmark::after {
	position: absolute;
	left: 5px;
	top: 1px;
	width: 5px;
	height: 10px;
	border: solid var(--TickColor);
	border-width: 0 1px 1px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	display: block;
	content: "";
	transition: border-color 0.3s;
}
.Checkmark {
	background-color: transparent;
	--CurrColor: black;
	--TickColor: transparent;
	position: absolute;
	top: 0.25rem;
	left: 0;
	height: 1.125rem;
	width: 1.125rem;
	background-color: transparent;
	border: 1px solid var(--CurrColor);
	border-radius: 3px;
	transition: background-color 0.3s, border-color 0.3s;
}
label input:checked {
	+ .Checkmark {
		background-color: var(--Primary50);
		--CurrColor: var(--Primary600);
		--TickColor: var(--Primary600);
	}
}
.CBLabel {
	position: relative;
	--CurrColor: var(--BodyColor);
	left: 0;
	padding-left: 1.75rem;
	margin-bottom: 0;
	cursor: pointer;
	display: block;
}
.Honneur {
	display: none;
}
.Amount, .labelNoblesse, .bouton-filtres, .labelActiFuturPasse {
	border: 1px solid currentColor;
	border-radius: 5px;
	padding-block: 0rem;
	cursor: pointer;
	margin: 0;
	transition: background-color 0.3s, color 0.3s;
	position: relative;
	text-align: center;
	line-height: 1.53em;
	height: 2.75rem;
	display: grid;
	align-items: center;
}
.bouton-filtres, .labelActiFuturPasse {
	font-size: inherit;
  	font-family: inherit;
	color: var(--font-color-dark-green);
	background-color: transparent;
	padding-inline: 1.4375rem;
	text-transform: lowercase;
	height: 2.85375rem;
}
.labelActiFuturPasse:has(:checked) {
	color: #FFFFFF;
  	background-color: #216869;
	border-color: #216869;
}
.Amount:has(:checked) {
	color: var(--Primary600);
	background-color: var(--Primary50);
}
.labelNoblesse:has(:checked) {
	background-color: var(--Primary600);
	color: var(--Primary50);
}
.RegistreInput {
	display: none;
	margin-top: 1.25rem;
}
#RegistreNo {
	border-bottom: solid 1px currentColor;
}
.CommentaireTextArea {
	height: auto;
}
.HiddenRadio {
	height: 0;
	width: 0;
	position: absolute;
	opacity: 0;
	top: 100%;
}
/* Style the indicator (dot/circle) */
#CustomAmount {
	border: none;
	padding-right: 3rem;
}
.Amount:has(#CustomAmount){
	cursor: text;
}
.Amount:has(#CustomAmount.nonvide, #CustomAmount:focus){
	&, #CustomAmount{
		cursor: pointer;
	}
}
.Amount:has(#CustomAmount)::after {
	content: "€";
	display: block;
	position: absolute;
	right: 15px;
	top: 10px;
	width: 1.0625rem;
	height: 1.0625rem;
	font-family: var(--BodyFont);
	font-size: 1.0625rem;
	font-weight: var(--Light);
}
.Honneur input {
	width: 0;
	height: 0;
	position: absolute;
	opacity: 0;
}
.wrapper-actu-home {
	display: flex;
	column-gap: 1.875rem;
	width: 100%;
	overflow-x: scroll;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;

	> div {
		scroll-snap-align: center;
		width: calc((100% - (2 * 1.875rem)) / 3);
		flex-shrink: 0;
	}
}
.wrapper-salons-home {
	--_col-gap: 1.875rem;

	display: grid;
	column-gap: var(--_col-gap);
	grid-template-columns: calc((100% - var(--_col-gap)) * 0.7) calc((100% - var(--_col-gap)) * 0.3);

	img {
		transition: transform 0.3s;
		position: absolute;
		object-fit: cover;
		inset: 0 0 0 0;
	}
	.img-wrapper-salon {
		height: auto;
		aspect-ratio: 760/330;
		position: relative;
	}
	.img-wrapper-salon-right {
		height: auto;
		aspect-ratio: 325/255;
		position: relative;
	}
	.right-salons-home {
		height: fit-content;
	}
	.right-salons-home .Texts_Wrapper {
		display: none;
	}
}
#ContactMap {
	width: 100%;
	height: 100%;
}

footer {
	* {
		color: white;
	}
}
.Footer {
	display: flex;
}
.FooterLogo {
	font-size: 4rem;
}
.Footer .RightPart {
	display: flex;
	justify-content: space-evenly;
	width: 100%;
}
.FooterIcon {
	color: white;
}
.FooterDetails {
	display: flex;
	flex-direction: column;
	row-gap: 0.9375rem;
}
.FooterLine {
	width: 100%;
	height: 1px;
	background-color: white;
	margin-block: 0;
	display: flex;
}
.FooterBottomPart {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;

	* {
		color: white;
		font-family: var(--PoppinsFont);
		font-weight: var(--Regular);
		font-size: 0.875rem;
		margin-block: 0;
	}
	p a {
		font-weight: var(--Semibold);
	}
}
.fleche-scroll {
	position: fixed;
	width: 3.4375rem;
	height: 3.4375rem;
	right: 6.25rem;
	bottom: 6.25rem;
	background-color: var(--Primary100);
	border-radius: 50%;
	z-index: 1079;
	cursor: pointer;
	transition: background-color 0.3s ease;
}
.fleche-scroll::after {
	content: "";
	position: absolute;
	inset: 0 0 0 0;
	background-color: var(--bg-color-white);
	mask-image: url(../Images/icone_arrow.svg);
	mask-size: auto 1.4375rem;
	mask-repeat: no-repeat;
	mask-position: center;
}
.fleche-scroll:hover {
	background-color: var(--Primary200);
}

/**********/
/* header */
/**********/
header {
	width: 100%;
	position: relative;
	* {
		font-weight: var(--Light);

		line-height: 130%;
	}
}
header:not(:has(.HomeHeader)) {
	position: sticky;
	top: 0px;
	z-index: 48;
	.Header {
		position: initial;
	}
}
.HeaderWrapper {
	position: absolute;
	left: 0;
	right: 0;
}
.Header {
	/* max-width: 1920px;
	width: 100%; */
	position: fixed;
	left: 0;
	right: 0;
	/* box-shadow: var(--Shadow100); */
	/* padding-left: 5.8125rem;
	padding-right: 5.8125rem; */
	/* margin-left: auto;
	margin-right: auto; */
	
}
.header-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-family: var(--PoppinsFont);
	flex-wrap: wrap;
	* {
		color: white;
	}
	> * {
		flex-shrink: 0;
	}
}
.searchbar-flex {
	display: flex;
	align-items: center;
	height: 100%;
	column-gap: 1rem;

	* {
		color: white;
	}
}
.HomeHeader {
	--Background: transparent linear-gradient(180deg, #00000082 0%, #0000006e 100%) 0% 0% no-repeat padding-box;

	z-index: 50;
	position: absolute;
	background: var(--Background);
}
.AllHeader {
	--Background: var(--Primary600);

	z-index: 48;
	background-color: var(--Background);
}
#Main_Logo {
	padding: 1rem 0rem;
	height: 100%;
	display: flex;
	align-items: center;
	/* width: 16rem; */
	column-gap: 1.125rem;
	img {
		flex-shrink: 0;
		object-fit: contain;
		height: 5.8725rem;
		width: 5.625rem;
		display: block;
		filter: brightness(0%) invert(100%) sepia(0%) saturate(0%) hue-rotate(132deg) brightness(100%) contrast(100%) !important;
	}
}
.Logo_Text {
	--_decalageLogo : calc(5.625rem + 1.25rem);
	font-size: 3.75rem;
	line-height: 130%;
	font-family: var(--PoppinsFont);
	font-weight: var(--Semibold);
	position: relative;
	text-transform: lowercase;
}
.Logo_Text::before {
	content: "";
	height: 5.8725rem;
    width: 5.625rem;
	background-image: url(../Images/Logo2.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - (5.8725rem / 2));
	transform: translateX(calc(var(--_decalageLogo) * (0 - 1)));
}

header .RightSide {
	display: flex;
	flex-direction: column;
	margin-top: 1.375rem;
	margin-bottom: 0.75rem;
	margin-left: auto;
}
header .TopSide {
	width: fit-content;
	align-self: end;
}
.MemberContact {
	display: flex;
	column-gap: 1.5rem;
}
.Func {
	/* text-align: right; */
	display: flex;
	/* align-items: end; */
	justify-content: end;
	column-gap: 2.5rem;
	align-items: center;
	a {
		font-size: 0.9rem;
	}
}
.LanguageMenu {
	display: flex;
	column-gap: 0.3125rem;
	align-items: center;
	font-weight: var(--Light);
	font-size: 0.9rem;
	* {
		height: fit-content;
	}
	.Selected {
		font-weight: var(--Semibold);
	}
}
.Header_Line {
	height: 1px;
	width: 100%;
	background-color: white;
	margin-top: 1.21875rem;
	margin-bottom: 1.21875rem;
	opacity: 0.25;
}
.Menu:not(.Menu1) {
	position: absolute;
	display: none;
	background: var(--Background);
	/* backdrop-filter: blur(25px); */
	flex-direction: column;
	/* border: solid 1px rgba(224, 236, 255, 0.9); */
	border-radius: var(--BorderRadius);
	overflow: hidden;
	a {
		font-size: 1rem;
	}
	a {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
		width: 100%;
		justify-content: space-between;
		span {
			align-self: center;
			transform: translateY(0px);
		}
	}
}
.Menu {
	padding: 0;
	list-style: none;
}
nav {
	align-self: flex-end;
	max-width: 65rem;
	width: 100%;
}
.Menu1 {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 1rem;
	margin: 0;
	a {
		font-size: 1.2rem;
		display: flex;
		align-items: center;
		gap: 0.25rem;
		text-transform: lowercase;
		> * {
			flex-shrink: 0;
		}
	}
}
.Menu2 {
	width: fit-content;
	top: 100%;
	width: 17rem;
}
.Menu3 {
	top: 0;
	width: 16rem;
	left: calc(100%);
}
.Item {
	display: flex;
	align-items: center;
	a {
		font-family: var(--PoppinsFont);
	}
}
.Item:hover {
	> .Menu {
		display: flex;
	}
}
.Item1 {
	padding: 0.5625rem 1rem;
	min-width: fit-content;
}
.Item1:last-child {
	outline: 1px solid #FFFFFF;
	border-radius: 5px;
}
.Item:not(.Item1):hover {
	background-color: var(--Primary700);
}
.Menu2 .Item > a {
	padding-top: 0.8rem;
	padding-bottom: 0.8rem;
}
.Menu2 span:not(.MenuArrow) {
	width: 100%;
}
.Item2 {
	position: relative;
	justify-content: space-between;
}
.Right_Menu {
	display: flex;
}
#Burger {
	display: none;
}

.Item1,
.MemberContact {
	> a {
		position: relative;
	}
}
.Item1,
.MemberContact {
	& > a::after {
		content: "";
		position: absolute;
		right: 0;
		bottom: -1px;
		width: calc(100% - 1rem);
		height: 2px;
		background: var(--Primary700);
		border-radius: 2px;
		max-width: 0;
		transition: max-width 0.5s;
		transform: rotate(180deg);
	}
}
.MemberContact a::after {
	bottom: -1px;
}
.Item1:hover {
	> a::after {
		max-width: 200px;
	}
}
.MemberContact a:hover::after {
	max-width: 200px;
}
#SearchBar {
	background-color: var(--Primary600);
	max-height: 0;
	height: var(--HeaderHeight);
	overflow: hidden;
	position: fixed;
	z-index: 51;
	transition: max-height 0.2s;
	top: 0px;	

	input {
		border-color: rgba(255, 255, 255, 0.25);
	}
}
#SearchBar.Opened {
	max-height: var(--HeaderHeight);
}
#SearchBar form {
	width: 100%;
	display: flex;
	align-items: center;
	column-gap: 1rem;
}
#SearchBar form > div {
	width: 100%;
}
.menu-mobile,
.menu-mobile-button-close[data-display="none"],
.menu-mobile-button-close[data-display="block"]  {
	display: none;
}

@media screen and (max-width: 1650px) {
	.Logo_Text {
		margin-left: var(--_decalageLogo);
	}
}
@media screen and (max-width: 1400px) {
	.gridCardIcone_2 {
		grid-template-columns: repeat(3, 1fr);
	}
	#Main_Logo {
		align-items: flex-start;
		position: absolute;
	}
	.Logo_Text {
		display: flex;
    	gap: 0.46875rem;
    	align-items: center;
		font-size: 2rem;
		line-height: 1em;
		margin-left: unset;
	}
	.Logo_Text::before {
		height: 2.75rem;
		width: auto;
		aspect-ratio: 1/1;
		object-fit: contain;
		object-position: center;
		position: relative;
		top: unset;
		transform: unset;

	}
}
@media screen and (max-width: 1200px) {
	.Cards_Wrapper2 {
		grid-template-columns: repeat(2, calc((100% - (1 * 1.875rem)) / 2) );
	}
	.wrapper-actu-home {
		& > div {
		  width: calc((100% - (1 * 1.875rem)) / 2);
		}
	}
	.Footer {
		flex-wrap: wrap;
	}
	.Footer .RightPart {
		flex-direction: column;
		gap: 2.5rem;
	}
	.wrapper-content,
	.wrapper-content-1120 {
		width: calc(100% - (2 * 1.875rem));
	}
	.Menu1 a {
		font-size: 1rem;
	}
	.Item1:not(:last-child) {
		padding-inline: 0px;
	}
	.grid-member {
		--_col-gap: 1.25rem;
	}
	.form-wrapper.col-auto-auto-1-auto-auto-auto {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 1100px){
	.gridCardIcone_2 {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 1000px){
	:root {
		--max-mg-pd: 3.125rem;
	}
	section.mg-bt-100 {
		margin-bottom: 4.6875rem;
	}
	section.mg-bt-120 {
		margin-bottom: 4.6875rem;
	}
	section.mg-tp-100 {
		margin-top: 4.6875rem;
	}
	section.mg-tp-120 {
		margin-top: 4.6875rem;
	}
}
@media screen and (max-width: 800px) {
	#Main_Logo {
		width: fit-content;
		span {
			display: none;
		}
	}
	.menu-mobile {
		display: flex;
		justify-content: space-between;
  		align-items: center;
		position: fixed;
		height: 3.4375rem;
		position: fixed;
		inset: 0 0 auto 0;
		background-color: var(--Primary600);
		z-index: 9999;
		box-shadow: 0px -3px 5px 0px var(--bg-color-white);
		padding-inline: 0.9375rem;
	}
	.menu-mobile-button-open,
	.menu-mobile-button-close {
		width: 1.875rem;
		height: auto;
		aspect-ratio: 1/1;
		background-color: var(--bg-color-white);
		cursor: pointer;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
		-webkit-mask-size: no-repeat;
		mask-size: no-repeat;
		-webkit-mask-position: center;
		mask-position: center;
	}
	.menu-mobile-button-open {
		-webkit-mask-image: url("../Images/icone_menu_button.svg");
		mask-image: url("../Images/icone_menu_button.svg");
	}
	.menu-mobile-button-close {
		position: fixed;
		inset: 0.9375rem 0.9375rem auto auto;
		-webkit-mask-image: url("../Images/icone_close.svg");
		mask-image: url("../Images/icone_close.svg");
		z-index: 10001;
	}
	.menu-mobile-button-close[data-display="block"] {
		display: block;
	}
	.menu-mobile-button-close[data-display="none"] {
		display: none;
	}
	.menu-mobile-logo {
		display: flex;
		gap: 0.46875rem;
		align-items: center;
	}
	.menu-mobile-logo-img {
		height: 2.75rem;
		width: auto;
		aspect-ratio: 1/1;
		object-fit: contain;
		object-position: center;
	}
	.menu-mobile-logo-txt {
		font-size: 2rem;
  		line-height: 1em;
  		font-family: var(--PoppinsFont);
  		font-weight: var(--Semibold);
		color: var(--bg-color-white);
		text-transform: lowercase;
	}
    .Header {
        display: flex;
        row-gap: 1.25rem;
		flex-direction: column-reverse;
    }
	.Func {
		display: grid;
		justify-content: center;
        row-gap: 1.25rem;
	}
	nav {
		display: grid;
		justify-content: center;
		row-gap: 1.25rem;
	}
    .MemberContact,
    header .TopSide,
    .Menu:not(.Menu1),
    .Item1,
	.Item2,
    .Menu1,
    header .RightSide,
	.header-flex,
	.Item:hover > .Menu {
        display: contents;
    }
	#Main_Logo {
		display: none;
	}
    .Item1:not(:last-child) {
        padding: 0px;
    }
    .Item1, .MemberContact, .Func {
        & > a {
            text-align: center;
        }
    }
	.Item span,
	.Func > a {
		margin-inline: auto;
	}
	.Item.Item1 > a > span {
		font-weight: 400;
	}
	header {
		letter-spacing: 0.02em;
	}
    .HomeHeader {
        display: none;
    }
	.Menu:not(.Menu1) {
		& a {
			padding: 0px;

			& span {
				width: fit-content;
				margin-inline: auto;
			}
		}
	}
	.LanguageMenu {
		justify-content: center;
	}
	.AllHeader {
		height: 100vh;
		height: 100dvh;
		overflow-x: scroll;
		z-index: 10000;
		padding-block: 3.4375rem;
		transition: top 0.4s ease;
		position: fixed !important;
		top: -100vh;
		top: -100dvh;
	}
	.AllHeader[data-menu-mobile="closed"] {
		top: -100vh;
		top: -100dvh;
	}
	.AllHeader[data-menu-mobile="opened"] {
		top: 0;
	}
	.Item1, .MemberContact {
		& > a::after {
			display: none;
		}
	}
	.Item3 {
		display: none;
	}
	.Menu:not(.Menu1) {
		& a {
		  font-size: 0.875rem; 
		}
	}
	.Menu1 a {
		font-size: 1.25rem;
	}
	.Header_Line {
		margin-block: 0px;
		min-height: 1px;
	}
	#SearchBar {
		z-index: 10001;
		height: 100vh;
		height: 100dvh;
	}
	#SearchBar.Opened {
		max-height: 100vh;
	}

	.fleche-scroll {
		display: none !important;
	}
	h2 {
		font-size: 2rem;
	}

	.gridCardIcone_2 {
		grid-template-columns: repeat(2, 1fr);
	}
	.wrapper-img-text,
	.wrapper-half-half,
	.wrapper-half-half-gap,
	.wrapper-text-img,
	.grid-col-2 {
		grid-template-columns: 1fr;
	}
	.wrapper-actu-home {
		& > div {
			width: 100%;
		}
	}
	.gridCardIcone {
		grid-template-columns: 1fr !important;

		.cardIcone {
			grid-row: unset !important;
  			grid-column: unset !important;
		}
	}
	.wrapper-text-img,
	.wrapper-img-text {
		img, img.sticky {
			aspect-ratio: 16/9;
			height: auto;
			width: 100%;
			min-height: 0px;
		}
	}
	.wrapper-img-text, .wrapper-text-img {
		&:has(.img-border-left, .img-border-right) {
		  padding-bottom: 0rem;
		}
	}
	.img-border-left, .img-border-right {
		margin-bottom: 1.25rem;
	}
	.wrapper-img-text > div {
		padding-top: 0px !important;
		margin-top: 0px !important;
	}
	.wrapper-text-img > div {
		padding-bottom: 0px !important;
		margin-bottom: 0px !important;
	}
	.grid-col-2 .DateLieu_Wrapper {
		margin-top: 0px
	}
	.Cards_Wrapper2 {
		grid-template-columns: 1fr;
		row-gap: 3.75rem;
	}
	.Footer {
		flex-direction: column;
	}
	.grid-member {
		display: flex;
		flex-direction: column;

		[card-vide] {
			display: none;
		}
		[h2-vide] {
			display: none;
		}
		& h2.start-cecond-col {
			grid-column: 1;
		}
		h4 {
			min-height: unset !important;
		}
	}
	.mg-right-100 {
		margin-left: min(3.125rem, var(--max-mg-pd));
	}
	.mg-left-100 {
		margin-right: min(3.125rem, var(--max-mg-pd));
	}
	.wrapper-salons-home {
		display: flex;
		flex-direction: column-reverse;
		gap: 1.25rem;

		.img-wrapper-salon-right {
			display: none;
		}
	}
	.right-salons-home .Arrows_Wrapper.absolute {
		position: relative;
		width: fit-content;
		margin-left: auto;
	}
	:is(.wrapper-content,.wrapper-content-1120):is(.bgBrown,.bgPrimary50) {
		width: 100%;
		padding-inline: 0px !important;
		margin-inline: auto !important;

		> div, > h3 {
			width: calc(100% - (2 * 1.875rem));
			padding-inline: 0px !important;
			margin-inline: auto !important;
		}
		
	}
	.wrapper-half-half-gap {
		width: 100%;
		padding-inline: 0px !important;
		margin-inline: auto !important;

		> :is(.bgBrown,.bgPrimary50) {
			width: 100%;
			padding-inline: 0px !important;
			margin-inline: auto !important;
			
			> .gridCardIcone {
				width: calc(100% - (2 * 1.875rem));
				padding-inline: 0px !important;
				margin-inline: auto !important;
			}
		}
	}
}
@media screen and (max-width: 600px) {
	.gridCardIcone_2 {
		grid-template-columns: repeat(1, 1fr);
	}
	.form-wrapper {
		grid-template-columns: 1fr !important;
	}
}

