@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
	/* Breakpoints (en @media utiliser la valeur en px : 640, 768, 1024, 1280, 1536) */
	--bp-xs:   375px;
	--bp-sm:   640px;
	--bp-md:   768px;
	--bp-lg:  1024px;
	--bp-xl:  1280px;
	--bp-xxl: 1536px;
	/* Container max-width par breakpoint (utilisÃƒÂ©s par grid.css) */
	--container-sm:  600px;
	--container-md:  720px;
	--container-lg:  960px;
	--container-xl:  1200px;
	--container-xxl: 1320px;
	--bs-gutter-x:30px;
	--gap:calc(var(--bs-gutter-x)/2);
	--section-padding:60px;
	--c-dark:#111;
	--c-white:#fff;
	--c-light:#fef9fa;
	--c-grey-soft:#e0e0e0;
	--c-gold-review: #F5B800;
	--c-grey:#666;
	--c-accent:#000;

	--c-fresh:#ED1846;
	--c-fresh-2:#5a1eff;
	--c-green-success:#03B38C;
	--c-soft-purple:#B2B2F9;
	--shadow-1:0 4px 12px rgba(0,0,0,0.1);
	--shadow-section:0 -8px 24px rgba(0,0,0,0.06), 0 8px 24px rgba(0,0,0,0.06);
	--grad-light:linear-gradient(to bottom,#F0F0F0,#FFF);
	--header-height:80px; /* SurchargÃ© par header-height.js avec la hauteur rÃ©elle */
	--main-top-gap: 0; /* Contenu pile sous le spacer, pas de padding-top */
	--aside-width: 200px;
	--border-light:1px solid var(--c-grey-soft);
}
@media (min-width: 640px)  { :root { --aside-width: 210px; } }
@media (min-width: 768px)  { :root { --aside-width: 220px; } }
@media (min-width: 1024px) { :root { --aside-width: 230px; } }
@media (min-width: 1280px) { :root { --aside-width: 240px; } }
@media (min-width: 1536px) { :root { --aside-width: 250px; } }
html{
	scroll-behavior:smooth;
	background-color:var(--c-light);

}
body{min-height:100vh;display:flex;flex-direction:column;position:relative;}
/* Ancres : marge au scroll (nav absolute, plus de dÃƒÂ©calage fixe) */
.main [id]{scroll-margin-top:2rem;}
body.has-alert .main [id]{scroll-margin-top:2rem;}
img{max-width:100%;height:auto;display:block;}
.section{padding:var(--section-padding) 0;}
/* Navigation principale en absolute : dÃƒÂ©file avec la page, harmonisÃƒÂ© partout via .nav-spacer */
.header{
	position:fixed;
	top:0;
	left:0;
	right:0;
	z-index:1000;
	background:var(--c-white);
	padding: calc(var(--gap)*1) 0;
	transition:box-shadow .3s ease;
}
.header.scrolled{box-shadow:var(--shadow-1);}
.header-inner{display:flex;flex-direction:row;align-items:stretch;gap:var(--gap);}
.header-left{display:flex;align-items:center;flex-shrink:0;padding-right:1.5rem;}
.header-right{flex:1;display:flex;flex-direction:column;justify-content:center;}
/* Desktop : menu-option et menu principal en ligne */
.nav-dropdown{display:flex;flex-direction:column;align-items:flex-end;gap:0.15rem;}
.nav-dropdown .nav-option-menu{order:-1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:0.75rem;list-style:none;margin:0;padding:0;}
.nav-dropdown .nav-option-menu li{margin:0;padding:0;}
.nav-dropdown .nav-option-menu a{font-size:0.75rem;text-decoration:none;color:var(--c-grey-soft);opacity:0.9;transition:color .2s ease,opacity .2s ease;}
.nav-dropdown .nav-option-menu a:hover{color:var(--c-fresh);opacity:1;}
.nav-dropdown .nav-option-menu .current-menu-item > a,.nav-dropdown .nav-option-menu .current_page_item > a{color:var(--c-grey);font-weight:500;}
.nav-dropdown .nav-menu{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0;}
.nav-menu li{margin:0;padding:0;}
.nav-menu > li{position:relative;}
.nav-menu > li > a{display:inline-flex;align-items:center;padding:0.25rem 0;font-size:0.8rem;text-decoration:none;color:inherit;transition:color .2s ease;}
.nav-menu > li > a:hover{color:var(--c-fresh);}
/* Spacer = hauteur de la nav pour que le contenu dÃƒÂ©marre en dessous (toutes les pages) */
.nav-spacer{height:var(--header-height);flex-shrink:0;}
.main{flex:1;padding-top:var(--main-top-gap);}
.navbar{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;column-gap:1.5rem;}
.navbar-brand{display:inline-flex;align-items:center;font-weight:bold;font-size:1.125rem;line-height:1.2;white-space:nowrap;}
/* Logo header : tout modifiable en CSS */
.header-left .navbar-brand.logo-fresh{max-width:120px;height:auto;display:block;}
.sfooter .navbar-brand.logo-fresh{max-width:280px;height:auto;display:block;}
.header-left .navbar-brand.logo-fresh .logo-svg,
.sfooter .navbar-brand.logo-fresh .logo-svg{width:100%;height:auto;display:block;}
.header-left .navbar-brand.logo-fresh .logo-svg,
.header-left .navbar-brand.logo-fresh .logo-svg path,
.sfooter .navbar-brand.logo-fresh .logo-svg,
.sfooter .navbar-brand.logo-fresh .logo-svg path{fill:var(--c-fresh);}
.header-left .navbar-brand.logo-fresh .logo-svg path,
.sfooter .navbar-brand.logo-fresh .logo-svg path{stroke:none;}

/* Parent avec enfants : chevron */
.nav-menu > li.menu-item-has-children > a::after{content:'';display:inline-block;width:0.35em;height:0.35em;margin-left:0.35em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);vertical-align:middle;transition:transform .25s ease;}
.nav-menu > li.menu-item-has-children:hover > a::after,.nav-menu > li.menu-item-has-children:focus-within > a::after{transform:rotate(-135deg);}
/* Sous-menu desktop : dropdown */
.nav-menu .sub-menu{position:absolute;top:100%;left:0;min-width:200px;margin:4px 0 0 0;padding:.5rem 0;list-style:none;background:var(--c-white);box-shadow:var(--shadow-1);border-radius:8px;border:1px solid var(--c-grey-soft);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease;}
.nav-menu > li:hover .sub-menu,.nav-menu > li:focus-within .sub-menu{opacity:1;visibility:visible;transform:translateY(0);}
.nav-menu .sub-menu li{padding:0;}
.nav-menu .sub-menu a{display:block;padding:.5rem 1rem;font-size:0.9375rem;text-decoration:none;color:var(--c-grey);white-space:nowrap;transition:background .15s ease,color .15s ease;}
.nav-menu .sub-menu a:hover{background:var(--c-light);color:var(--c-dark);}
.nav-menu .sub-menu .current-menu-item > a,.nav-menu .sub-menu .current_page_item > a{color:var(--c-fresh);font-weight:600;}
.nav-sub-toggle{display:none;}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem;width:32px;height:24px;position:relative;}
.nav-toggle span{position:absolute;left:0;width:100%;height:2px;background:var(--c-dark);border-radius:2px;transition:all .4s cubic-bezier(.4,0,.2,1);}
.nav-toggle span:nth-child(1){top:0;}
.nav-toggle span:nth-child(2){top:50%;transform:translateY(-50%);}
.nav-toggle span:nth-child(3){bottom:0;}
.nav-toggle.active span:nth-child(1){top:50%;transform:translateY(-50%) rotate(45deg);}
.nav-toggle.active span:nth-child(2){opacity:0;}
.nav-toggle.active span:nth-child(3){bottom:50%;transform:translateY(50%) rotate(-45deg);}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}
/* Zone sticky au scroll : reste Ã  100px du haut */
.scroll-static{position:sticky;top:150px;align-self:flex-start;}
@media (max-width: 767px){
	.header-inner{flex-direction:row;align-items:center;gap:var(--gap);}
	.header-left{padding-right:0;flex-shrink:0;}
	.header-right{flex:1;justify-content:flex-end;}
	.navbar{justify-content:flex-end;}
	.nav-toggle{display:block;}
	.nav-dropdown{position:absolute;top:100%;left:0;width:100vw;margin-left:calc(-50vw + 50%);flex-direction:column;align-items:stretch;gap:0;max-height:0;overflow:hidden;background:var(--c-white);transition:max-height .4s cubic-bezier(.4,0,.2,1),box-shadow .4s ease,padding .4s ease;}
	.nav-dropdown.active{max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-1);padding:1rem 0;}
	.nav-dropdown .nav-menu,.nav-dropdown .nav-option-menu{flex-direction:column;align-items:stretch;gap:0;list-style:none;margin:0;padding:0;}
	.nav-dropdown .nav-option-menu{order:0;}
	.nav-dropdown .nav-menu > li,.nav-dropdown .nav-option-menu li{padding:0;display:flex;flex-wrap:wrap;}
	.nav-dropdown .nav-menu > li > a,.nav-dropdown .nav-option-menu a{flex:1;padding:.6rem 1.5rem;min-width:0;text-decoration:none;color:inherit;transition:color .2s ease;}
	.nav-dropdown .nav-menu > li > a:hover,.nav-dropdown .nav-option-menu a:hover{color:var(--c-fresh);}
	.nav-dropdown .nav-menu .current-menu-item > a,.nav-dropdown .nav-menu .current_page_item > a,.nav-dropdown .nav-option-menu .current-menu-item > a,.nav-dropdown .nav-option-menu .current_page_item > a{color:var(--c-fresh);font-weight:600;}
	.nav-menu > li.menu-item-has-children > a::after{display:none;}
	.nav-sub-toggle{display:flex;align-items:center;justify-content:center;width:48px;flex-shrink:0;background:none;border:none;cursor:pointer;padding:0;color:inherit;}
	.nav-sub-toggle span{display:block;width:0.4em;height:0.4em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .25s ease;}
	.nav-menu > li.menu-item-has-children.is-open .nav-sub-toggle span{transform:rotate(-135deg);}
	.nav-menu .sub-menu{position:static;min-width:auto;width:100%;box-shadow:none;border:none;border-radius:0;border-left:3px solid var(--c-grey-soft);margin:0 0 0 1rem;padding:0 0 .25rem 0;opacity:1;visibility:visible;transform:none;max-height:0;overflow:hidden;transition:max-height .3s ease;}
	.nav-menu > li.menu-item-has-children.is-open .sub-menu{max-height:500px;}
	.nav-menu .sub-menu a{padding:.4rem 1.5rem;white-space:normal;}
	.nav-menu li{padding:0;}
	.section{padding:calc(var(--section-padding)/2) 0;}
}

