.elementor-2401 .elementor-element.elementor-element-41cacab{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2401 .elementor-element.elementor-element-f3b2e10{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--flex-wrap:nowrap;--border-radius:9999px 9999px 9999px 9999px;--padding-top:6px;--padding-bottom:6px;--padding-left:20px;--padding-right:6px;}.elementor-2401 .elementor-element.elementor-element-1f8ed89.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-menu-toggle{margin-left:auto;border-radius:9999px;}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );padding-left:16px;padding-right:16px;padding-top:10px;padding-bottom:10px;}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-primary );}.elementor-2401 .elementor-element.elementor-element-1f8ed89{--e-nav-menu-horizontal-menu-item-margin:calc( 2px / 2 );--nav-menu-icon-size:22px;}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:2px;}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a, .elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-menu-toggle{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown{background-color:var( --e-global-color-blanc );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a:hover,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a:focus,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-menu-toggle:hover,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-menu-toggle:focus{color:var( --e-global-color-primary );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a:hover,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a:focus,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a.highlighted{background-color:var( --e-global-color-gris_clair );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a.elementor-item-active{color:var( --e-global-color-primary );background-color:var( --e-global-color-gris_clair );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown .elementor-item, .elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 .elementor-nav-menu--dropdown a{padding-left:20px;padding-right:20px;padding-top:14px;padding-bottom:14px;}.elementor-2401 .elementor-element.elementor-element-1f8ed89 div.elementor-menu-toggle{color:var( --e-global-color-primary );}.elementor-2401 .elementor-element.elementor-element-1f8ed89 div.elementor-menu-toggle svg{fill:var( --e-global-color-primary );}.elementor-2401 .elementor-element.elementor-element-7fda8ab .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-2401 .elementor-element.elementor-element-f3b2e10{--padding-top:6px;--padding-bottom:6px;--padding-left:14px;--padding-right:8px;}}/* Start custom CSS *//* ===== Header pilule — fixe au défilement (one-page) ===== */
.elementor-location-header {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 100;
}
/* Accueil : le header flotte au-dessus de la hero sans réserver de place */
.home .elementor-location-header { height: 0; }

.elementor-2401 .slaf-header.e-con {
	--padding-top: 16px;
	--padding-right: var(--slaf-gutter);
	--padding-bottom: 16px;
	--padding-left: var(--slaf-gutter);
}

.elementor-2401 .slaf-header .slaf-nav.e-con {
	position: relative;
	width: 100%;
	max-width: 1280px;
	margin-inline: auto;
	background-color: color-mix(in srgb, var(--e-global-color-blanc) 86%, transparent);
	-webkit-backdrop-filter: blur(12px) saturate(140%);
	backdrop-filter: blur(12px) saturate(140%);
	border: 1px solid color-mix(in srgb, var(--e-global-color-primary) 8%, transparent);
	box-shadow: 0 12px 32px -14px color-mix(in srgb, var(--e-global-color-primary) 45%, transparent);
	transition: background-color .3s var(--slaf-ease), border-color .3s var(--slaf-ease), box-shadow .3s var(--slaf-ease), transform .3s var(--slaf-ease), opacity .3s var(--slaf-ease), visibility .3s;
}
/* Au défilement : fond marine translucide (classe posée sur <html> par le mu-plugin slaf-header-scroll) */
.slaf-scrolled .elementor-2401 .slaf-header .slaf-nav.e-con {
	/* Même marine que le footer, opaque : en transparence, le blanc de la page l'éclaircissait */
	background-color: var(--e-global-color-primary);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	border-color: color-mix(in srgb, var(--e-global-color-blanc) 8%, transparent);
	box-shadow: 0 16px 36px -16px color-mix(in srgb, var(--e-global-color-primary) 80%, transparent);
}

/* Footer atteint : la pilule remonte et s'efface pour ne pas le chevaucher (classe posée par le mu-plugin slaf-header-scroll) */
.slaf-header-cache .elementor-2401 .slaf-header .slaf-nav.e-con {
	transform: translateY(calc(-100% - 24px));
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

/* Logo centré verticalement */
.elementor-2401 .slaf-nav__logo,
.elementor-2401 .slaf-nav__logo .elementor-widget-container,
.elementor-2401 .slaf-nav__logo a { display: flex; align-items: center; }
.elementor-2401 .slaf-nav .slaf-nav__logo.elementor-widget { flex: 0 0 auto; }
.elementor-2401 .slaf-nav__logo a { min-height: 44px; }
/* Tiroir mobile ouvert : la page derrière ne défile plus (classe posée par le mu-plugin slaf-header-scroll).
   Verrou sur <html> seulement : un overflow sur <body> en ferait un conteneur de défilement, le header sticky
   reviendrait alors en haut du document et le tiroir s'ouvrirait hors de l'écran (page figée). */
html.slaf-menu-ouvert { overflow: hidden; }
/* a img[src] : passe devant la largeur fixe d'Elementor pour les SVG liés (48 px) */
.elementor-2401 .slaf-nav__logo a img[src],
.elementor-2401 .slaf-nav__logo img {
	display: block;
	width: auto;
	max-width: none;
	height: 38px;
	max-height: 38px;
	transition: filter .3s var(--slaf-ease);
}
.slaf-scrolled .elementor-2401 .slaf-nav__logo img { filter: invert(1); }
.elementor-2401 .slaf-nav__logo a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; border-radius: 8px; }

/* Liens : pastille au survol, section active marquée */
.elementor-2401 .slaf-nav .elementor-widget-nav-menu { position: static; }
.elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item {
	border-radius: 9999px;
	font-size: 15px;
	font-weight: 500;
	transition: background-color .2s var(--slaf-ease), color .2s var(--slaf-ease);
}
.elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item:hover,
.elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item:focus-visible { background-color: color-mix(in srgb, var(--e-global-color-primary) 7%, transparent); }
.elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item.elementor-item-active {
	background-color: color-mix(in srgb, var(--e-global-color-primary) 9%, transparent);
	font-weight: 700;
}
.elementor-2401 .slaf-nav .elementor-nav-menu--main .slaf-menu-cta { display: none; }

.slaf-scrolled .elementor-2401 .slaf-nav .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item,
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active { color: var(--e-global-color-blanc); }
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item:hover,
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item:focus-visible { background-color: color-mix(in srgb, var(--e-global-color-blanc) 12%, transparent); }
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { background-color: color-mix(in srgb, var(--e-global-color-blanc) 24%, transparent); }

/* Burger et tiroir (tablette et mobile) */
.elementor-2401 .slaf-nav .elementor-menu-toggle { width: 44px; height: 44px; justify-content: center; background-color: transparent; }
.elementor-2401 .slaf-nav .elementor-menu-toggle:hover { background-color: color-mix(in srgb, var(--e-global-color-primary) 7%, transparent); }
.elementor-2401 .slaf-nav .elementor-menu-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-widget-nav-menu div.elementor-menu-toggle { color: var(--e-global-color-blanc); }
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-widget-nav-menu div.elementor-menu-toggle svg { fill: var(--e-global-color-blanc); }
.slaf-scrolled .elementor-2401 .slaf-nav .elementor-menu-toggle:hover { background-color: color-mix(in srgb, var(--e-global-color-blanc) 12%, transparent); }

.elementor-2401 .slaf-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	right: 0;
	z-index: 110;
	margin: 0;
	padding: 8px;
	border-radius: 20px;
	background-color: var(--e-global-color-blanc);
	box-shadow: 0 24px 48px -20px color-mix(in srgb, var(--e-global-color-primary) 55%, transparent);
}
.elementor-2401 .slaf-nav .elementor-nav-menu--dropdown .elementor-item { border-radius: 12px; font-size: 16px; }
/* Bouton de réservation dans le tiroir mobile */
.elementor-2401 .slaf-nav .elementor-nav-menu--dropdown .slaf-menu-cta { padding: 8px 4px 4px; }
.elementor-2401 .slaf-nav .elementor-widget-nav-menu .elementor-nav-menu--dropdown .slaf-menu-cta a.elementor-item {
	justify-content: center;
	border-radius: 9999px;
	background-color: var(--e-global-color-accent);
	color: var(--e-global-color-primary);
	font-weight: 700;
}
.elementor-2401 .slaf-nav .elementor-widget-nav-menu .elementor-nav-menu--dropdown .slaf-menu-cta a.elementor-item:hover {
	background-color: color-mix(in srgb, var(--e-global-color-accent) 82%, var(--e-global-color-blanc));
}

@media (max-width: 1024px) {
	.elementor-2401 .slaf-nav .slaf-nav__menu { order: 3; flex-grow: 0; }
	.elementor-2401 .slaf-nav .slaf-nav__cta { margin-left: auto; }
}
@media (min-width: 768px) {
	.elementor-2401 .slaf-nav .elementor-nav-menu--dropdown .slaf-menu-cta { display: none; }
}
@media (max-width: 767px) {
	.elementor-2401 .slaf-header.e-con { --padding-top: 6px; --padding-bottom: 12px; }
}
@media (prefers-reduced-motion: reduce) {
	.elementor-2401 .slaf-header .slaf-nav.e-con,
	.elementor-2401 .slaf-nav__logo img,
	.elementor-2401 .slaf-nav .elementor-nav-menu--main .elementor-item { transition: none; }
}/* End custom CSS */