/*----------------------------  navigation------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');

:root {
  --color-primaire: #FFC845  ;
  --color-secondaire: #ffdc5d;
  --color-blanc:#FFFFFF;
  --color-noir:#000000;
  --color-gris:#3b4278;
  --color-grispale:#e1f0f5;
  --color-grisfonce:#0a1454;
  --color-rouge: #ee4042 ;
  --color-rougepale: #f16667;
   --duration: 1s;
  --nav-duration: calc(var(--duration) / 4);
  --ease: cubic-bezier(0.215, 0.61, 0.355, 1);
  --space: 1rem;
}



/*   couleurs ------------------------------------*/


.textBlanc {
    color: var(--color-blanc);
}
.textNoir {
    color: var(--color-noir);
}
.textPrimaire {
    color: var(--color-primaire);
}
.textSecondaire {
    color: var(--color-secondaire);
}
.textGris {
    color: var(--color-gris);
}
.textGrisPale {
    color: var(--color-grispale);
}
.textGrisFonce {
    color: var(--color-grisfonce);
}
.Noir {
    background-color: var(--color-noir);
	 color: var(--color-blanc);
}
.Blanc {
    background-color: var(--color-blanc);
    color:var(--color-noir);
}
.Primaire {
    background-color: var(--color-primaire);
	color: var(--color-noir);
}
.Secondaire {
    background-color: var(--color-secondaire);
	color: var(--color-noir);
}
.Rouge {
    background-color: var(--color-rouge);
	color: var(--color-blanc);
}
.RougePale {
    background-color: var(--color-rougepale);
	color: var(--color-noir);
}
.Gris {
    background-color: var(--color-gris);
    color: var(--color-grisfonce);
}
.GrisPale {
    background-color: var(--color-grispale);
    color: var(--color-grisfonce);
}
.GrisFonce {
    background-color: var(--color-grisfonce);
    color: var(--color-blanc);
}

.GrisFonce a, .Noir a {
    color: var(--color-blanc);
}

a.Blanc  {
    color: var(--color-primaire);
}

a.Blanc:hover  {
    color: var(--color-secondaire);
}

.footer a  {
    color: var(--color-grisfonce);
}

.footer a:hover  {
    color: var(--color-primaire);
}



#backMenu {
    background-color: var(--color-blanc);
    height: 90px;
    width: 100%;
    z-index: 995;
    display: flex;              /* active Flexbox */
    justify-content: center;    /* centre le container max-width */
}

.backMenu-container {
    width: 100%;
    max-width: 1280px;         /* largeur maximale */
    display: flex;
    justify-content: space-between; /* logo Ã  gauche, menu Ã  droite */
    align-items: center;        /* centre verticalement le contenu */
    padding: 0 15px;            /* padding horizontal */
}

.logo {
    height: 80px;
    width: auto;
}

.logo img {
    display: block;
    height: 80px;
    width: auto;
}



	
.menu ul {
 padding:0;
 margin:0;
 float:right;
 }
 
 
 .menu ul li {
	margin-left: 2px;
	float: left; /*pour IE*/
	list-style-type: none;
	list-style-image: none;
	display: inline;
	position: relative;
	z-index:998;
	font-family: "Manrope", sans-serif;
	font-size:14px;
	font-weight:700;
     letter-spacing: .5px;
	
 }
.menu ul li a {
	display: block;
	float: left;
	width: auto;
	line-height:24px;
	color:var(--color-grisfonce);
	padding:10px;
	display:inline-block;
	text-align:center;
 }
.menu ul li a:hover {
	color: var(--color-blanc);
	text-decoration:none;
	color:#0A1455;
 } 
 
 .menu ul ul {
		position: absolute;
		left: 0;
		top: 90%;
		display: none;
		z-index:9999;
	
	}
	
 .menu ul ul li{
		margin:0;
		padding:0;
	
	}
	

 .menu ul li ul li a {
	display: block;
	float: left;
	width: 300px;
	text-decoration: none;
	text-align: left;
	border-right:none;
	border-bottom: 1px solid var(--color-grisfonce);
	border-top: 1px solid var(--color-gris);
	padding-left:20px;
	padding-top:10px;
	padding-bottom:10px;
	color:#0A1455;
	font-size: 14px;
     font-weight:500;
	background: var(--color-blanc);
	margin:0;
	line-height:16px;
	letter-spacing:normal;
	 text-transform: none;
 }
 
 .menu ul li ul li a:hover {
	color: #FFF;
	background-color:var(--color-grisfonce);
 } 
 

	
 .menu ul ul ul {
		top: 5px;
		left:100%;
		background: var(--color-grispale);
		z-index:9999;

	}

	
li:hover > ul {
		display: block;
	}
	



/* -------------------------- Page accueil*/
.backHeader {
display: flex;
    flex-direction: row;
    justify-content:space-around;
    align-items: flex-end;
  background: url('../images/header.webp') no-repeat right center;
    background-color: rgba(0, 0, 0, 0);
    background-size: auto;
  background-size: cover;
  }

.backHeader .col.l9 {
    position: relative;
    z-index: 10;
}


.slider-fade {
    position: relative;
    width: 100%;
    overflow:visible;
    background: transparent;
	z-index: 1;
}

.slider-fade img {
    position: absolute;
    bottom: 0;
    right: 0;            /* ðŸ”¥ ancrage Ã  droite */
    left: auto;
    height: 100%;
    width: auto;
	max-width: 50vw;     /* <-- largeur max souhaitÃ©e */
    object-fit: contain;
    object-position: bottom right;
    opacity: 0;
    z-index: 1;
    transition: opacity 0.8s ease-in-out;
}

.slider-fade img.show {
    opacity: 1;
    z-index: 2;
}

.slider-fade .legende {
    position: absolute;
    bottom: 10px;
    left: 10px;
    z-index: 5;
    color:var(--color-blanc);
    background: rgba(0,0,0,0.65);
    padding: 8px 12px;
    font-size: 14px;
    max-width: 90%;
    border-radius: 6px;
}

.btn {
  font-weight: 700;
  background: var(--color-primaire);
  color: var(--color-noir);
  border-radius: 5px;
}

.bouton {
  font-weight: 700;
  color: var(--color-noir);
}

.bouton a {
  display: flex;
  align-items: center;      /* centre verticalement */
  gap: 10px;                /* espace entre icône et texte */
  padding: 24px 18px;       /* padding interne du bouton */
  text-decoration: none;
  color: var(--color-noir); /* texte noir */
	font-size: 30px;
	transition: background-color 0.25s ease, color 0.25s ease;
}

.bouton a:hover {
  background-color: var(--color-noir);
  color: var(--color-blanc);
}

/* pour que le texte devienne blanc aussi */
.bouton a:hover span {
  color: var(--color-blanc);
}

.bouton img {
  display: block;
  height: 40px; /* ajuste au besoin */
  width: auto;
}

.bouton span {
  display: inline-block;
  color: var(--color-noir);
}





  .header {
    max-width: 880px;
    padding: 40px; 
  }

  .header h1 {
    font-size: 48px;
      color:var(--color-blanc);
      font-weight: 800;
	  padding:0 0 25px 0;
  }

.header h2 {
    font-size: 24px;
      color:var(--color-blanc);
    background-color: var(--color-primaire);
    font-weight: 800;
    display: inline;
    padding: 10px 15px;
	border-radius: 5px;
  }

.header p {
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-blanc);
  margin: 0;
  padding: 0 0 40px 0;
  }



.courses {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
/*    max-width: 60%;*/
    padding: 40px 0 40px 40px  ;
  }


.course {
  padding: 15px 20px;
  border-radius: 5px;
  width: 200px;
  display: flex;
  flex-direction: column;
  position: relative;
  background: rgba(57,68,84,0.5);
    justify-content: flex-start; /* plus naturel */
  min-height: auto;            /* adaptatif */
  text-decoration: none;       /* enlÃ¨ve soulignement du lien */
  color: inherit;              /* garde la couleur du texte */
  transition: background 0.3s ease;
}

.course:hover {
  background: rgba(0,0,0,0.8); /* changement dâ€™opacitÃ© */
}

.course-icon {
  position: absolute;
  top: -20px;
  right: 10px; /* position en haut Ã  droite */
  width: 70px;
  height: 70px;
}

.course-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.course h3 {
  font-size: 15px;
  margin-bottom: 5px;
  padding-right: 30px; /* pour ne pas chevaucher l'icÃ´ne */
    font-weight: 600;
    align-content: flex-end;
    text-align: right;
    color:var(--color-primaire);
}

  .course span {
    font-size: 12px;
    color: var(--color-blanc);
    margin-bottom: 3px;
      padding-right: 30px;
      align-content: flex-end;
    text-align: right;
  }

.course h3,
.course span {
  flex-grow: 0; /* le texte reste compact */
}

  .course-btn {
  display: flex;                 /* active Flexbox */
  align-items: center;           /* centre verticalement */
  justify-content: center;       /* centre horizontalement */

  height: 25px;                  /* hauteur fixe (ajuste Ã  ton design) */
  min-width: 120px;              /* largeur mini optionnelle */
  padding: 0 25px;               /* seulement horizontal */
  
  font-size: 12px;
  color: var(--color-blanc);
  background: transparent;
  border: 1px solid var(--color-blanc);
  border-radius: 25px;
  text-align: center;
  transition: all 0.3s ease;
  margin-top: auto;
  margin-right: 30px;
  align-self: flex-end;
  }

.course:hover .course-btn {
  background: var(--color-blanc);
  border-color: var(--color-blanc);
  color: #000;
  box-shadow: 0 0 10px var(--color-blanc); /* effet lumineux */
}

.label {
  display: inline-block;
  width: 100px; /* ajuste la largeur pour aligner aprÃ¨s les deux-points */
  vertical-align: top;
}

.value {
  display: inline-block;
 font-weight: bold;
}


.formation {
	margin: -350px auto 0 auto;
}

.formation h1 {
	font-size: 62px;
	font-weight:600;
}

.sub_section {
	width: 100%;
	height: 400px;
	border-top: 50px solid var(--color-primaire);
    background:var(--color-secondaire);
}

.sub_section_infographie{
	width: 100%;
	height: 400px;
	border-top: 50px solid var(--color-rouge);
    background:var(--color-rougepale);
}



/* ----------------- Menu Mobile -----------------*/
.logomobile {
    text-align: center;
    Position: absolute;
    height: auto;
    width: 180px;
    display: block;
    z-index: 9999;
    }





/*____________________________Colonne Responsive_________________________________*/

.rowEqual {
  display: flex; /* equal height of the children */
	flex-wrap: wrap;
    align-content: flex-end;
}


.bar:after, .bar:before, .cell-row:after, .cell-row:before, .clear:after, .clear:before, .container:after, .container:before, .panel:after, .panel:before, .row-padding:after, .row-padding:before, .row:after, .row:before {
	content: "";
	display: table;
	clear: both
}
.col {
	float: left;
	width: 100%;
}
.col.s1 {
	width: 8.33333%
}
.col.s2 {
	width: 16.66666%
}
.col.s3 {
	width: 24.99999%
}
.col.s4 {
	width: 33.33333%
}
.col.s5 {
	width: 41.66666%
}
.col.s6 {
	width: 49.99999%
}
.col.s7 {
	width: 58.33333%
}
.col.s8 {
	width: 66.66666%
}
.col.s9 {
	width: 74.99999%
}
.col.s10 {
	width: 83.33333%
}
.col.s11 {
	width: 91.66666%
}
.col.s12 {
	width: 99.99999%
}

@media (min-width:601px) {
.col.m1 {
	width: 8.33333%
}
.col.m2 {
	width: 16.66666%
}
.col.m3, .quarter {
	width: 24.99999%
}
.col.m4, .third {
	width: 33.33333%
}
.col.m5 {
	width: 41.66666%
}
.col.m6, .half {
	width: 49.99999%
}
.col.m7 {
	width: 58.33333%
}
.col.m8, .twothird {
	width: 66.66666%
}
.col.m9, .threequarter {
	width: 74.99999%
}
.col.m10 {
	width: 83.33333%
}
.col.m11 {
	width: 91.66666%
}
.col.m12 {
	width: 99.99999%
}
	
}

@media (min-width:993px) {
.col.l1 {
	width: 8.33333%
}
.col.l2 {
	width: 16.66666%
}
.col.l3 {
	width: 24.99999%
}
.col.l4 {
	width: 33.33333%
}
.col.l5 {
	width: 41.66666%
}
.col.l6 {
	width: 49.99999%
}
.col.l7 {
	width: 58.33333%
}
.col.l8 {
	width: 66.66666%
}
.col.l9 {
	width: 74.99999%
}
.col.l10 {
	width: 83.33333%
}
.col.l11 {
	width: 91.66666%
}
.col.l12 {
	width: 99.99999%
}

}


.margin {
	margin: 16px!important
}
.margin-left {
	margin-left: 16px!important
}
.margin-right {
	margin-right: 16px!important
}

.padding-16 {
	padding: 16px!important
}
.padding-24 {
	padding: 24px!important
}
.padding-32 {
	padding: 32px!important
}
.padding-48 {
	padding: 48px!important
}
.padding-64 {
	padding: 64px!important;
}

@media (max-width:992px) {
.padding-32 {
	padding: 16px!important
}
.padding-48, .padding-64 {
	padding: 24px!important
}
}

/* ----------------- responsive -----------------*/

	  

      
 .imgFlex{
    align-content: flex-start;
  }
      

      
.courses {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    max-width: 100%;
    justify-content: left;   /* centre les cartes */
  }   
      
 
 
  }

  @media (max-width: 1024px) {
    .container {
      padding: 10px;
      background-size: cover;
    }
      
 .imgFlex{
    align-content: flex-start;
  }
      
 .backHeader {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 10px;
    background: url('../images/header.webp') no-repeat right top;
    background-size: cover;
    background-color:var(--color-noir);
  }
      
.courses {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    max-width: 100%;
    justify-content: left;   /* centre les cartes */
  }   
      
 .formation h1 {
	font-size: 48px;
}     
      
 
  }

  @media (max-width: 600px) {

      
 .backHeader {
      background-position: center top;
      padding: 10px;
    }
      
.rowEqual {
  flex-direction: column-reverse;
} 
      
      
  .backHeader {
    justify-content:flex-start
}
      
.header {
  padding: 20px;
}

.header h2 {
  font-size: 18px;
  font-weight: 700;
  padding: 5px;
}
      
 .container {
      padding: 10px;
      background-size: cover;
    }
      
.courses {
    padding:0;
  }

.course {
    width: 100%;               /* 1 colonne mobile */
    background: rgba(0,0,0,0.8);
    min-height: auto;
  }

.course h3 {
  font-size: 14px;
  margin-bottom: 5px;
  padding-right: 35px; /* pour ne pas chevaucher l'icône */
    color:var(--color-blanc);
    font-weight: 600;
    align-content: flex-end;
    text-align: left;
}
      
 .course span {
    font-size: 11px;
}
      
      
 .header h1 {
      font-size: 32px;
    }
      
 .formation h1 {
	font-size: 36px;

}
	  
	  
    .slider-fade {
        position: relative;
        width: 100%;
        height: 40vh;
        overflow: hidden;
        background: transparent;
        z-index: 1;
    }

    .slider-fade img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
		max-width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: bottom;
        opacity: 0;      /* <-- IMPORTANT */
        transition: opacity 0.8s ease-in-out;
        z-index: 1;
    }

    .slider-fade img.show {
        opacity: 1;
        z-index: 2;
    }

    .slider-fade .legende {
        position: absolute;
        bottom: 10px;
        left: 10px;
        z-index: 5;
        color: #fff;
        background: rgba(0,0,0,0.65);
        padding: 8px 12px;
        font-size: 14px;
        max-width: 90%;
        border-radius: 6px;
    }

  }






/******************* Accordeon --- */

.accordion {
    background-color:var(--color-blanc);
    color: var(--color-noir);
    cursor: pointer;
	font-weight:700;
    padding: 15px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 28px;
    transition: 0.4s;
	border-bottom:1px solid var(--color-grispale);
	font-family: 'Manrope', serif;	
}

.active, .accordion:hover {
    background-color: var(--color-grispale);
}

.accordion:after {
    content: '\002B';
    color: var(--color-noir);
    font-weight: bold;
    float: right;
    margin-left: 5px;
}

.active:after {
    content: "\2212";
}

.panel {
    padding: 0 18px;
	padding-top:18px;
	margin-bottom:10px;
    background-color: var(--color-blanc);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
}


.is-cms .panel {
       max-height: 100%;
    }



   
