@import url(https://fonts.bunny.net/css?family=roboto:300);

/* ===== TOP FIXE - RESTE EN PLACE PEU IMPORTE LA PAGE ===== */
body {
	padding-top: 160px; /* Espace pour le top fixe */
}

/* Mobile : réduire le padding-top pour avoir plus d'espace au contenu */
@media (max-width: 768px) {
	body {
		padding-top: 120px; /* Moins d'espace sur tablet */
	}
}

@media (max-width: 480px) {
	body {
		padding-top: 100px; /* Moins d'espace sur petit mobile */
	}
}

/* Wrapper du top pour le fixer */
center:first-of-type {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	background: white;
	z-index: 10000;
	padding: 10px 0;
}

/* Ajouter background blanc à la deuxième CENTER (celle qui contient main et bottom) */
center:last-of-type {
	background: white;
	display: block;
}

center:first-of-type table {
	margin: 0 auto;
}

.page-title-top {
	font-size: 24px;
	font-weight: bold;
	color: #6580B6;
}

.abril-fatface-regular {
	font-family: "Abril Fatface", serif;
	font-weight: 400;
	font-style: normal;
}

/* ===== LOGO - CENTRAGE ET STABILITÉ ===== */
table img[src*="logo1.png"] {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

		/* Modal overlay pour la roue */
		#wheelModal {
		  position: fixed;
		  top: 190px;   /* Position  de la roue */
		  left: 50%;
		  transform: translateX(-50%);
		  width: 300px;
		  height: 320px;
		  background-color: transparent;
		  display: none;
		  justify-content: center;
		  align-items: center;
		  z-index: 999;
		  transition: opacity 300ms ease-in-out;
		  opacity: 0;
		}

		#wheelModal.show {
		  display: flex;
		  opacity: 1;
		}

		.wheel-container {
		  position: relative;
		  width: min(calc(100% - 2rem), 280px);
		  aspect-ratio: 1;
		  margin: 0;
		  padding: 0;
		}
		
		.wheel-container::after {
		  content: '';
		  position: absolute;
		  top: 50%;
		  left: 50%;
		  transform: translate(-50%, -50%);
		  width: 380px;
		  height: 380px;
		  background: white;
		  border-radius: 50%;
		  z-index: -1;
		  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
		}

		.wheel {
		  --inner-offset: clamp(2rem, 3vw, 3rem);
		  --title-offset: -40px;
		  
		  list-style: none;
		  margin: 0;
		  padding: 0;
		  position: absolute;
		  top: 50%;
		  left: 50%;
		  transform: translate(-50%, -50%);
		  width: 100%;
		  height: 100%;
		}

		.wheel::before {
		  content: '';
		  position: absolute;
		  top: 50%;
		  left: 50%;
		  transform: translate(-50%, -50%);
		  width: 130px;
		  height: 130px;
		  background-image: url('../images/img/logo1.png');
		  background-size: contain;
		  background-repeat: no-repeat;
		  background-position: center;
		  z-index: 30;
		}

		.wheel > li:nth-child(1){
		  --title-rotate: -2deg;
		  --clip-1: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 0%,  100% 0%,   100% 0%,   100% 0%,   100% 0%,   100% 0%,   100% 0%);
		  --clip-2: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 50%, 100% 50%,  100% 50%,  100% 50%,  100% 50%,  100% 50% , 100% 50%);
		  --clip-3: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 100%,100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%);
		  --clip-4: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%,  50% 100%,  50% 100%,  50% 100%,  50% 100%);
		  --clip-5: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%,  0% 100%,   0% 100%,   0% 100%,   0% 100%);
		  --clip-6: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%,  0% 100%,   0% 50%,    0% 50%,    0% 50%);
		  --clip-7: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%,  0% 100%,   0% 50%,    0% 0%,     0% 0%);
		  --clip-8: polygon( 50% 50%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%,  0% 100%,   0% 50%,    0% 0%,     50% 0%);
		}
		.wheel > li:nth-child(2){
		  --title-rotate: 43deg;
		  --clip-1: polygon( 50% 50%, 100% 0%, 100% 50%, 100% 50%, 100% 50%, 100% 50%, 100% 50%, 100% 50%, 100% 50%, 100% 50%);
		  --clip-2: polygon( 50% 50%, 100% 0%, 100% 50%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%,100% 100%);
		  --clip-3: polygon( 50% 50%, 100% 0%, 100% 50%,100% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%  );
		  --clip-4: polygon( 50% 50%, 100% 0%, 100% 50%,100% 100%, 50% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100% );
		  --clip-5: polygon( 50% 50%, 100% 0%, 100% 50%,100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 50%, 0% 50%, 0% 50%);
		  --clip-6: polygon( 50% 50%, 100% 0%, 100% 50%,100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 0% 0%, 0% 0%);
		  --clip-7: polygon( 50% 50%, 100% 0%, 100% 50%,100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 50% 0%);
		  --clip-8: polygon( 50% 50%, 100% 0%, 100% 50%,100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%);
		}
		.wheel > li:nth-child(3) {
		  --title-rotate: 88deg;
		  --clip-1: polygon(50% 50%, 100% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%);
		  --clip-2: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%);
		  --clip-3: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%);
		  --clip-4: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%);
		  --clip-5: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 0% 0%, 0% 0%, 0% 0%);
		  --clip-6: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 50% 0%, 50% 0%);
		  --clip-7: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 0%);
		  --clip-8: polygon(50% 50%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%);
		}
		.wheel > li:nth-child(4) {
		  --title-rotate: 132deg;
		  --clip-1: polygon(50% 50%, 100% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%);
		  --clip-2: polygon(50% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%);
		  --clip-3: polygon(50% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%);
		  --clip-4: polygon(50% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%);
		  --clip-5: polygon(50% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
		  --clip-6: polygon(50% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 0%, 100% 0%);
		  --clip-7: polygon(50% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 50%);
		  --clip-8: polygon(50% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%);
		}
		.wheel > li:nth-child(5) {
		  --title-rotate: 177deg;
		  --clip-1: polygon(50% 50%, 50% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%, 0% 100%);
		  --clip-2: polygon(50% 50%, 50% 100%, 0% 100%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%);
		  --clip-3: polygon(50% 50%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%);
		  --clip-4: polygon(50% 50%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
		  --clip-5: polygon(50% 50%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
		  --clip-6: polygon(50% 50%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 50%, 100% 50%);
		  --clip-7: polygon(50% 50%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%,100% 100%,100% 100%);
		  --clip-8: polygon(50% 50%, 50% 100%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%,100% 100%,50% 100% );
		}
		.wheel > li:nth-child(6) {
		  --title-rotate: 222deg;
		  --clip-1: polygon(50% 50%, 0% 100%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%, 0% 50%);
		  --clip-2: polygon(50% 50%, 0% 100%, 0% 50%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%);
		  --clip-3: polygon(50% 50%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
		  --clip-4: polygon(50% 50%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
		  --clip-5: polygon(50% 50%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 50%, 100% 50%, 100% 50%);
		  --clip-6: polygon(50% 50%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 100% 100%, 100% 100%);
		  --clip-7: polygon(50% 50%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 50% 100%);
		  --clip-8: polygon(50% 50%, 0% 100%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 0% 100%);
		}
		.wheel > li:nth-child(7) {
		  --title-rotate: 265deg;
		  --clip-1: polygon(50% 50%, 0% 50%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%);
		  --clip-2: polygon(50% 50%, 0% 50%, 0% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
		  --clip-3: polygon(50% 50%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
		  --clip-4: polygon(50% 50%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 50%, 100% 50%, 100% 50%, 100% 50%);
		  --clip-5: polygon(50% 50%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%);
		  --clip-6: polygon(50% 50%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 50% 100%, 50% 100%);
		  --clip-7: polygon(50% 50%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 100%);
		  --clip-8: polygon(50% 50%, 0% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%);
		}

		.wheel > li:nth-child(8) {
		  --title-rotate: 311deg;
		  --clip-1: polygon(50% 50%, 0% 0%, 50% 0%, 50% 0%,  50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
		  --clip-2: polygon(50% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
		  --clip-3: polygon(50% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 50%, 100% 50%, 100% 50%, 100% 50%, 100% 50% );
		  --clip-4: polygon(50% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 100% 100%   );
		  --clip-5: polygon(50% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%  ); 
		  --clip-6: polygon(50% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 100%, 0% 100%   );
		  --clip-7: polygon(50% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 50%  );
		  --clip-8: polygon(50% 50%, 0% 0%, 50% 0%, 100% 0%, 100% 50%, 100% 100%, 50% 100%, 0% 100%, 0% 50%, 0% 0%  );
		}

		.wheel > li {
		  --title-rotate-hover: calc(var(--title-rotate) - 25deg);
		  display: block;
		  position: absolute;
		  border-radius: 50%;
		  width: 100%;
		  height: 100%;
		  cursor: pointer;
		}

		.wheel > li .hoverable,
		.wheel > li::after {
		  content: '';
		  position: absolute;
		  inset: var(--inset, 0);
		  border-radius: inherit;
		  background-image: var(--img);
		  background-position: center;
		  background-size: cover;
		  background-repeat: no-repeat;
		  clip-path: var(--clip-1);
		  transition: opacity,filter,clip-path;
		  transition-duration: var(--trans-duration);
		  transition-timing-function: ease-in-out;
		  filter: var(--hover-filter);
		}

		.wheel > li::after {
		  --inset: var(--inner-offset);
		  background-size: calc(100% + var(--inset) * 2);
		  animation: var(--animation-after);
		}

		.wheel > li .hoverable {
		  cursor: pointer; 
		  z-index: 5;
		}

		.wheel:has(:hover){
		  --hover-filter: sepia(1);
		}

		/* nav SVG circular text*/
		.wheel > li > svg {
		    position: absolute;
		    inset: var(--title-offset);
		    font-size: .32em;
		    z-index: 20;
		    transform-origin: center;
		    font-family: "Abril Fatface", serif;
		    transition: inset 300ms ease-in-out var(--title-trans-delay);
		    color: #5a5555;  /* couleur du texte de la roue - plus foncé */
		    font-weight: bold;
		    pointer-events: none;
		}
		/* rotating the group (g) can sometimes work better than rotating the whole SVG */
		.wheel > li svg g {
		    transition: all 300ms ease-in-out var(--title-trans-delay);
		    transform-origin: center;
		    transform: rotate(var(--title-rotate-hover,0));
		    opacity: var(--title-opacity,0);
		 }

		/* HOVER - we hover on the "outer" clippped section*/
		.wheel > li:has(.hoverable:hover) {
		  z-index: 10;
		  transition: z-index 0s;
		  --hover-filter: sepia(0);
		  --title-opacity: 1;
		  --title-trans-delay: calc(var(--trans-duration) - 150ms);
		  --title-rotate-hover: var(--title-rotate);
		  --animation-after: reveal var(--trans-duration) ease forwards;
		}

		/* État actif après clic */
		.wheel > li.active {
		  z-index: 10;
		  --hover-filter: sepia(0);
		  --title-opacity: 1;
		  --title-trans-delay: 0s;
		  --title-rotate-hover: var(--title-rotate);
		  --animation-after: reveal var(--trans-duration) ease forwards;
		}

		@keyframes reveal {
		  0%  { clip-path: var(--clip-1); }
		  14% { clip-path: var(--clip-2); }
		  28% { clip-path: var(--clip-3); }
		  42% { clip-path: var(--clip-4); }
		  56% { clip-path: var(--clip-5); }
		  70% { clip-path: var(--clip-6); }
		  84% { clip-path: var(--clip-7); }
		  100%{ clip-path: var(--clip-8); }
		}

		:root {
		  --trans-duration: 500ms;
		  --speed-hide: 2050ms;
		}

		/* En mobile, afficher directement toutes les rubriques */
		@media (max-width: 768px) {
		  #wheelModal.show .wheel > li .hoverable,
		  #wheelModal.show .wheel > li::after {
		    clip-path: var(--clip-8) !important;
		    animation: none !important;
		  }
		  
		  #wheelModal.show .wheel > li svg g {
		    opacity: 1 !important;
		  }
		  
		  #wheelModal.show .wheel > li .hoverable {
		    pointer-events: auto;
		    cursor: pointer;
		  }
		}

		/* Media queries pour la responsivité */
		@media (max-width: 1024px) {
		  #wheelModal {
		    top: 170px;
		    width: 280px;
		    height: 300px;
		  }

		  .wheel::before {
		    width: 110px;
		    height: 110px;
		  }
		}

		@media (max-width: 768px) {
		  #wheelModal {
		    top: 150px;
		    width: 250px;
		    height: 270px;
		  }

		  .wheel::before {
		    width: 90px;
		    height: 90px;
		  }

		  .wheel > li > svg {
		    font-size: .22em;
		  }

		  /* Logo mobile - mieux centré et stable */
		  table tr td:first-child {
		    min-width: 120px;
		    width: 120px;
		    height: 100px;
		  }

		  table img[src*="logo1.png"] {
		    max-width: 90px;
		    max-height: 90px;
		  }
		}

		@media (max-width: 480px) {
		  #wheelModal {
		    top: 130px;
		    width: 220px;
		    height: 240px;
		  }

		  .wheel::before {
		    width: 70px;
		    height: 70px;
		  }

		  .wheel > li > svg {
		    font-size: .20em;
		  }

		  .wheel {
		    --inner-offset: clamp(1rem, 2vw, 1.5rem);
		  }

		  /* Logo très petit écran - max stable */
		  table tr td:first-child {
		    min-width: 100px;
		    width: 100px;
		    height: 90px;
		  }

		  table img[src*="logo1.png"] {
		    max-width: 80px;
		    max-height: 80px;
		  }

		  table {
		    width: 100% !important;
		  }
		}


		/* Menu mobile en popover */
		#mobileMenu {
		  display: none;
		  position: fixed;
		  top: 180px;
		  left: 50%;
		  transform: translateX(-50%);
		  background: white;
		  border-radius: 8px;
		  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
		  z-index: 999;
		  min-width: 200px;
		}

		#mobileMenu.show {
		  display: block;
		}

		#mobileMenu ul {
		  list-style: none;
		  margin: 0;
		  padding: 10px 0;
		}

		#mobileMenu li {
		  padding: 10px 20px;
		  border-bottom: 1px solid #eee;
		  cursor: pointer;
		}

		#mobileMenu li:last-child {
		  border-bottom: none;
		}

		#mobileMenu li:hover {
		  background: #f5f5f5;
		}

		#mobileMenu li a {
		  text-decoration: none;
		  color: #6580B6;
		  display: block;
		  font-weight: bold;
		}

		@media (max-width: 768px) {
		  #wheelModal {
		    display: none !important;
		  }

		  #mobileMenu {
		    display: none;
		  }
		}

	