/* Reset */
body{
  font-family: "Bodoni Moda", serif;
}

/* HEADER FIXE */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: white;
  border-bottom: 1px solid #dddddd;
  z-index: 1000;
  transition: box-shadow 0.3s ease; /* animation douce */
  
}
/* Ombre quand on scroll */
.header.scrolled {
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}



/* CONTENEUR */
.container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 40px;
}

/* LOGO */
.logo {
  display: flex;
  align-items: center;
  gap: 10px;
}

.logo img {
  height: 50px;
}

/* NAVBAR */
.navbar {
  display: flex;
  flex: 1;
  gap: 50px;
  justify-content: center;
}

.navbar a {
  text-decoration: none;
  color: rgb(102, 95, 95);
  font-size: 14px;
  font-weight: 500;
}

.navbar a:hover {
  color: red;
}

/* POUR ÉVITER QUE LE CONTENU PASSE DESSOUS */
body {
  padding-top: 90px;
}


/* div exam 
.exam {
  margin-left: 0.5cm;
}
.exam h2 {
  color: rgb(21, 21, 197);
}*/

/*-----------------------------------------------examens--------------------------------------------*/
.hero-examens {
  min-height: 85vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 40px 20px;

  background:
    linear-gradient(rgba(0,0,0,0.45),
    rgba(0,0,0,0.45)),
    url("images/exa.jpg") center/cover;

  color: white;
}

.hero-content {
  max-width: 850px;
}

.subtitle {
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 0.9rem;
  margin-bottom: 20px;
  opacity: 0.85;
}

.hero-examens h1 {
  font-size: 4rem;
  line-height: 1.2;
  margin-bottom: 25px;
  font-weight: 700;
}

.description {
  font-size: 1.2rem;
  line-height: 1.8;
  opacity: 0.92;
  margin-bottom: 40px;
}

.btn {
  display: inline-block;
  padding: 15px 35px;
  background: #2563eb;
  color: white;
  text-decoration: none;
  border-radius: 50px;
  font-weight: 600;
  transition: 0.3s;
}

.btn:hover {
  background: #1d4ed8;
  transform: translateY(-2px);
}



                                                                      #presentation {
                                              max-width: 950px;
                                              margin: 120px auto;
                                              padding: 0 30px;
                                              text-align: center;
                                              position: relative;
                                            }

                                            #presentation::before {
                                              content: "";
                                              width: 90px;
                                              height: 4px;
                                              background: linear-gradient(to right, #2563eb, #60a5fa);
                                              display: block;
                                              margin: 0 auto 45px;
                                              border-radius: 20px;
                                            }

                                            #presentation .intro {
                                              font-size: clamp(2rem, 5vw, 3.4rem);
                                              font-weight: 700;
                                              line-height: 1.3;
                                              color: #111827;
                                              margin-bottom: 45px;
                                              letter-spacing: -1px;
                                            }

                                            #presentation p:not(.intro) {
                                              font-size: 1.12rem;
                                              line-height: 2.1;
                                              color: #4b5563;
                                              max-width: 760px;
                                              margin: 0 auto 28px;
                                            }

                                            #presentation p:not(.intro):last-child {
                                              margin-bottom: 0;
                                            }
/*---------------------------delf-------------------------*/
/* SECTION DELF / DALF */
#delf {
  padding: 80px 20px;
  background: #f9f7fb;
  text-align: center;
}

/* TITRE PRINCIPAL */
#delf .delf {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #98111f;
  font-weight: 700;
}

/* CARTES */
.card1,
.card2 {
  max-width: 900px;
  margin: 20px auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #881f53;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card1:hover,
.card2:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TITRES DES CARTES */
.card1 h3,
.card2 h3 {
  font-size: 1.4rem;
  margin-bottom: 10px;
  color: #2c2c2c;
}

/* PARAGRAPHES */
.card1 p,
.card2 p {
  font-size: 1rem;
  line-height: 1.6;
  color: #555;
}

/* TAGS */
.tagd {
  display: inline-block;
  background: #98111f;
  color: white;
  padding: 6px 12px;
  margin: 10px 8px 15px 0;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 500;
}

/* LISTE */
.card1 ul {
  margin-top: 15px;
  padding-left: 20px;
}

.card1 li {
  margin-bottom: 10px;
  color: #444;
  line-height: 1.5;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .card1,
  .card2 {
    padding: 20px;
  }

  #delf .delf {
    font-size: 1.8rem;
  }
}
.btn-pricing {
  display: inline-block;
  margin-top: 20px;
  padding: 12px 18px;
  background: #98111f;
  color: white;
  text-decoration: none;
  border-radius: 8px;
  font-weight: 500;
  transition: all 0.3s ease;
}

.btn-pricing:hover {
  background: #98111f;
  transform: translateY(-2px);
}
/*----------------------dfp----------------------*/
/* SECTION DFP */
#dfp {
  padding: 80px 20px;
  background: #f4f6fa;
  text-align: center;
}
.price-box {
  display: inline-block;
  margin: 15px 0 20px;
  padding: 10px 16px;
  background: #1f3a4b;
  color: white;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 500;
  box-shadow: 0 6px 15px rgba(0,0,0,0.08);
}

.price-box strong {
  font-size: 1.2rem;
}
/* TITRE */
#dfp .dfp {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #1f3a4b;
  font-weight: 700;
}

/* CARTE */
.card3 {
  max-width: 900px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #1082c9;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card3:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TEXTES */
.card3 p {
  font-size: 1rem;
  line-height: 1.6;
  color: #555;
  margin-bottom: 12px;
}

/* TAGS (réutilisation cohérente) */
.tagp {
  display: inline-block;
  background: #0c92e5;
  color: white;
  padding: 6px 12px;
  margin: 8px 8px 12px 0;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 500;
}

/* LISTES */
.card3 ul {
  margin: 10px 0 20px;
  padding-left: 20px;
}

.card3 li {
  margin-bottom: 8px;
  color: #444;
  line-height: 1.5;
}

/* BOUTON */
.card3 button {
  margin-top: 20px;
  padding: 12px 20px;
  background: #1f3a4b;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.2s ease;
}

.card3 button:hover {
  background: #1f3a4b;
  transform: translateY(-2px);
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .card3 {
    padding: 20px;
  }

  #dfp .dfp {
    font-size: 1.8rem;
  }
}
/*----------------------------------------------TEF------------------*/
/* SECTION TEF */
#tef {
  padding: 80px 20px;
  background: #f7faf7;
  text-align: center;
}

/* TITRE */
#tef .tef {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #a9005d;
  font-weight: 700;
}

/* CARTE */
.card4 {
  max-width: 900px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #f0038d;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card4:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TEXTES */
.card4 p {
  font-size: 1rem;
  line-height: 1.6;
  color: #555;
  margin-bottom: 12px;
}

/* LISTE */
.card4 ul {
  margin: 10px 0 20px;
  padding-left: 20px;
}

.card4 li {
  margin-bottom: 8px;
  color: #444;
  line-height: 1.5;
}

/* BOUTON */
.card4 button {
  margin-top: 20px;
  padding: 12px 20px;
  background: #a9005d;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 1rem;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.2s ease;
}

.card4 button:hover {
  background: #3b5f50;
  transform: translateY(-2px);
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .card4 {
    padding: 20px;
  }

  #tef .tef {
    font-size: 1.8rem;
  }
}

/*---------------------------------------------Résultats-------------------------------------------*/
/* SECTION RESULTATS */
/* SECTION RESULTATS */
#resultats {
  padding: 80px 20px;
  background: #f7f9fc;
  text-align: center;
}

/* TITRE */
#resultats .result {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #1f3a4b;
  font-weight: 700;
}

/* CONTAINER */
.results-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px;
}

/* CARTES */
.result-card {
  background: white;
  width: 340px;
  padding: 30px;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
  border-top: 5px solid #5b89e5;
}

/* TITRES */
.result-card h3 {
  margin-bottom: 20px;
  color: #333;
}

/* BOUTONS PDF */
.pdf-btn {
  display: block;
  margin: 12px 0;
  padding: 12px;
  background: #5b89e5;
  color: white;
  text-decoration: none;
  border-radius: 8px;
  transition: background 0.3s ease;
  font-weight: 500;
}

.pdf-btn:hover {
  background: #3f6fcf;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .result-card {
    width: 100%;
    max-width: 400px;
  }
}
/*----------------------------------------------div cours et nous------------------------------------------*/
.cours {
  margin-left: 0.5cm;
}
.cours h2 {
  color: rgb(226, 20, 20);
}
.cours h3 {
  color: #200ee5;
}

/* div nous */
.nous {
  margin-left : 0.5cm;
}
.about-text .title {
color: rgb(226, 20, 20);
}

.nous h3{
color: #3e4f56;
}


.hero-cours {
  height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
 
  background:
    linear-gradient(rgba(0,0,0,0.45),
    rgba(0,0,0,0.45)),
    url("images/chero.jpg") center/cover;

  color: white;
  padding: 20px;
  margin-left : -0.5cm;
}

.hero-cours .hero-content {
  max-width: 800px;
}

.hero-cours .subtitle {
  font-size: 1rem;
  opacity: 0.9;
  margin-bottom: 10px;
}

.hero-cours h1 {
  font-size: 3rem;
  margin-bottom: 15px;
  line-height: 1.2;
}

.hero-cours .description {
  font-size: 1.1rem;
  line-height: 1.6;
  margin-bottom: 25px;
  opacity: 0.95;
}

/* Bouton */
.btn-cours {
  display: inline-block;
  padding: 12px 20px;
  background: white;
  color: #1f3a4b;
  text-decoration: none;
  border-radius: 8px;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-cours:hover {
  background: #f0f0f0;
  transform: translateY(-2px);
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .hero-cours h1 {
    font-size: 2rem;
  }

  .hero-cours .description {
    font-size: 1rem;
  }
}

/*------------------------------------Cours réguliers-------------------*/
/* SECTION COURS REGULIERS */
#creg {
  padding: 80px 20px;
  background: #f9f5f5;
  text-align: center;
}

/* TITRE */
#creg .cregi {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #98111f;
  font-weight: 700;
}

/* CARTE */
.cardc {
  max-width: 900px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #922a2a;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cardc:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TITRE INTERNE */
.cardc h3 {
  font-size: 1.4rem;
  margin-bottom: 15px;
  color: #333;
}

/* TEXTES */
.cardc p {
  font-size: 1rem;
  line-height: 1.6;
  color: #555;
  margin-bottom: 12px;
}

/* LISTE */
.cardc ul {
  margin-top: 15px;
  padding-left: 20px;
}

.cardc li {
  margin-bottom: 10px;
  color: #444;
  line-height: 1.5;
}

/* HR ( éviter inline style) */
hr {
  border: none;
  border-top: 2px solid #98111f;
  width: 90%;
  margin: 40px auto;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .cardc {
    padding: 20px;
  }

  #creg .cregi {
    font-size: 1.8rem;
  }
}

/*-----------------------------------Cours adultes--------------------------*/

/* SECTION ADULTES */
#cadult {
  padding: 80px 20px;
  background: #f3f6fb;
  text-align: center;
}

/* TITRE PRINCIPAL */
#cadult .adult {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #1f3a4b;
  font-weight: 700;
}

/* CARTES */
.card-adult {
  max-width: 800px;
  margin: 20px auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 25px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #1f3a4b;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-adult:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TITRES */
.card-adult h3 {
  font-size: 1.3rem;
  margin-bottom: 10px;
  color: #333;
}

/* DESCRIPTION */
.card-adult .desc {
  color: #555;
  margin-bottom: 10px;
  line-height: 1.5;
}

/* HORAIRES */
.card-adult .schedule {
  background: #1f3a4b;
  color: white;
  display: inline-block;
  padding: 10px 14px;
  border-radius: 8px;
  font-weight: 500;
  margin-top: 10px;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .card-adult {
    padding: 20px;
  }

  #cadult .adult {
    font-size: 1.8rem;
  }
}
/*---------------------------------FOS-----------------------------------*/
/* SECTION FOS */
#fos {
  padding: 80px 20px;
  background: #f8f9fb;
  text-align: center;
}

/* TITRE */
#fos .fos {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #3e4f56;
  font-weight: 700;
}

/* CARTE */
.card-fos {
  max-width: 900px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #87888a;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-fos:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TITRE INTERNE */
.card-fos h3 {
  font-size: 1.3rem;
  margin-bottom: 12px;
  color: #333;
}

/* TEXTES */
.card-fos p {
  color: #555;
  line-height: 1.6;
  margin-bottom: 12px;
}

/* LISTE */
.card-fos ul {
  margin-top: 15px;
  padding-left: 20px;
}

.card-fos li {
  margin-bottom: 10px;
  color: #444;
  line-height: 1.5;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .card-fos {
    padding: 20px;
  }

  #fos .fos {
    font-size: 1.8rem;
  }
}

/*-----------------------------Prépa------------------------------*/

/* SECTION PREPA EXAMENS */
#cprepa {
  padding: 80px 20px;
  background: #f6f6f9;
  text-align: center;
}

/* TITRE */
#cprepa .prepa {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #3a2f5a;
  font-weight: 700;
}

/* CARTE */
.cardp {
  max-width: 900px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #3a2f5a;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.cardp:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TITRE INTERNE */
.cardp h3 {
  font-size: 1.3rem;
  margin-bottom: 12px;
  color: #333;
}

/* TEXTES */
.cardp p {
  color: #555;
  line-height: 1.6;
  margin-bottom: 12px;
}

/* LISTE */
.cardp ul {
  margin-top: 15px;
  padding-left: 20px;
}

.cardp li {
  margin-bottom: 10px;
  color: #444;
  line-height: 1.5;
}

/*------------------------------C PARTICULIERS------------------------------*/

/* SECTION COURS PARTICULIERS */
#cparticulier {
  padding: 80px 20px;
  background: #f4f7f6;
  text-align: center;
}

/* TITRE */
#cparticulier .particulier {
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #a9005d;
  font-weight: 700;
}

/* CARTE */
.card-particulier {
  max-width: 900px;
  margin: 0 auto;
  background: #ffffff;
  border-radius: 16px;
  padding: 30px;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
  border-left: 6px solid #a9005d;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-particulier:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* TITRE INTERNE */
.card-particulier h3 {
  font-size: 1.3rem;
  margin-bottom: 12px;
  color: #333;
}

/* TEXTES */
.card-particulier p {
  color: #555;
  line-height: 1.6;
  margin-bottom: 12px;
}

/* LISTE */
.card-particulier ul {
  margin-top: 15px;
  padding-left: 20px;
}

.card-particulier li {
  margin-bottom: 10px;
  color: #444;
  line-height: 1.5;
}
/*------------------------------------_____nous---------------------_-----------*/
                    .title {
                      font-size: 32px;
                      margin-bottom: 40px;
                      
                    }
                    .title span {
                      background: #f26c5c;
                      color: white;
                      padding: 5px 15px;
                    }

                    .about-content {
                              display: flex;
                              align-items: center;
                              justify-content: space-between;
                            }

                            /* TEXTE */
                            .about-text {
                              width: 55%;
                              padding-left: 0.5cm;
                              padding-right: 40px;
                              z-index: 2;
                            }

                            /* IMAGE */
                            .about-image {
                              width: 45%;
                              height: 600px;
                              overflow: hidden;
                            }

                            /* IMAGE */
                            .about-image img {
                              width: 200%;
                              height: 90%;
                              object-fit: cover;

                              /* DEMI CERCLE A GAUCHE */
                              border-top-left-radius: 30px;
                              border-bottom-left-radius: 30px;

                              /* DROITE DROITE */
                              border-top-right-radius: 0;
                              border-bottom-right-radius: 0;
                               overflow: hidden; /* cache les coins carrés */

  box-shadow: 0 0 25px rgba(0,0,0,0.35);
                            }  

/* CONTACT SECTION */
.contact-links{
  padding: 80px 20px;
  text-align: center;
  background: #f5f7fb;
}

/* TITRE */
.contact-links .title{
  font-size: 2.2rem;
  margin-bottom: 40px;
  color: #222;
}

.contact-links .title span{
  color: #02234a;
}

/* CONTAINER ICONES */
.contact-icons{
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}

/* CARTES */
.contact-icons a{
  width: 180px;
  padding: 25px 20px;
  background: white;
  border-radius: 18px;
  text-decoration: none;
  color: #222;
  box-shadow: 0 5px 15px rgba(0,0,0,0.08);
  transition: 0.3s;
}

.contact-icons a:hover{
  transform: translateY(-8px);
}

/* ICONES */
.contact-icons i{
  font-size: 3rem;
  margin-bottom: 15px;
}

/* COULEURS */
.gmail i{
  color: #ea4335;
}

.facebook i{
  color: #1877f2;
}

/* TEXTE */
.contact-icons p{
  font-size: 1rem;
  font-weight: 600;
}


                    .organigramme {
  padding: 100px 10%;
  background: #f8f9fb;
  text-align: center;
}

.orga-container {
  max-width: 950px;
  margin: auto;
}

.organigramme h2 {
  font-size: 2.5rem;
  color: #3e4f56;
  margin-bottom: 20px;
}

.organigramme h2 i {
  color: #c01111;
  margin-right: 12px;
}

.organigramme h3 {
  font-size: 1.5rem;
  color: #c01111;
  margin-bottom: 35px;
  font-weight: 600;
}

.organigramme p {
  font-size: 1.1rem;
  line-height: 2;
  color: #555;
  margin-bottom: 22px;
  text-align: justify;
}

/* Bouton */
.orga-btn {
  display: inline-block;

  margin-top: 25px;
  padding: 15px 35px;

  background: #c01111;
  color: white;

  text-decoration: none;

  border-radius: 35px;

  font-weight: 600;

  transition: 0.3s ease;
  box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

.orga-btn:hover {
  background: #003d80;
  transform: translateY(-3px);

  
}


        .newsletter {
  padding: 60px 20px;
  background: #f5f5f5;
  text-align: center;
}

.newsletter-container {
  max-width: 600px;
  margin: auto;
}

.newsletter input {
  padding: 10px;
  width: 70%;
  margin-top: 15px;
}

.newsletter button {
  padding: 10px 20px;
  margin-left: 10px;
  cursor: pointer;
  background: #007bff;
  color: white;
  border: none;
}

.newsletter button:hover {
  background: #0056b3;
}

#msg {
  margin-top: 10px;
  font-weight: bold;
}



/* Responsive */
@media (max-width: 768px) {

  .organigramme {
    padding: 70px 20px;
  }

  .organigramme h2 {
    font-size: 2rem;
  }

  .organigramme h3 {
    font-size: 1.2rem;
  }

  .organigramme p {
    font-size: 1rem;
    text-align: left;
  }

}
/*------------------------------------_____---------------------_-----------*/
                    .title {
                      font-size: 32px;
                      margin-bottom: 40px;
                      
                    }
                    .title span {
                      background: #f26c5c;
                      color: white;
                      padding: 5px 15px;
                    }

                    .about-content {
                              display: flex;
                              align-items: center;
                              justify-content: space-between;
                            }

                            /* TEXTE */
                            .about-text {
                              width: 55%;
                              padding-left: 0.5cm;
                              padding-right: 40px;
                              z-index: 2;
                            }

                            /* IMAGE */
                            .about-image {
                              width: 45%;
                              height: 600px;
                              overflow: hidden;
                            }

                            /* IMAGE */
                            .about-image img {
                              width: 200%;
                              height: 90%;
                              object-fit: cover;

                              /* DEMI CERCLE A GAUCHE */
                              border-top-left-radius: 30px;
                              border-bottom-left-radius: 30px;

                              /* DROITE DROITE */
                              border-top-right-radius: 0;
                              border-bottom-right-radius: 0;
                               overflow: hidden; /* cache les coins carrés */

  box-shadow: 0 0 25px rgba(0,0,0,0.35);
                            }  


                /* SLIDER */
.hero-slider{
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

/* CHAQUE SLIDE */
.slide{
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

/* SLIDE VISIBLE */
.slide.active{
  opacity: 1;
}

/* IMAGE */
.slide img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* FILTRE SOMBRE */
.slide::after{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.45);
}

/* TEXTE */
.slide-text{
  position: absolute;
  top: 70%;
  left: 8%;
  transform: translateY(-50%);

  color: white;
  z-index: 2;

  max-width: 650px;
}

/* TITRE */
.slide-text h1{
  font-size: 60px;
  margin-bottom: 20px;
}

/* PARAGRAPHE */
.slide-text p{
  font-size: 24px;
  margin-bottom: 30px;
}

/* BOUTON */
.slide-text a{
  display: inline-block;
  padding: 14px 30px;

  background: #c01111;
  color: white;

  text-decoration: none;
  border-radius: 30px;

  transition: 0.3s;
}

.slide-text a:hover{
  background: #003d80;
}            
                            

                                /* BOUTONS */
                .prev,
                .next{
                  position: absolute;
                  top: 50%;
                  transform: translateY(-50%);

                  background: rgba(255,255,255,0.2);
                  color: white;

                  border: none;

                  padding: 16px 20px;

                  font-size: 28px;

                  cursor: pointer;

                  z-index: 3;

                  transition: 0.3s;
                }

                /* GAUCHE */
                .prev{
                  left: 20px;
                }

                /* DROITE */
                .next{
                  right: 20px;
                }

                /* HOVER */
                .prev:hover,
                .next:hover{
                  background: rgba(255,255,255,0.5);
                }



                                    /*ACTUALITES */
                                     /* SECTION */
                                    .actualites{
                                      padding: 60px 20px;
                                      background: #f5f5f5;
                                      text-align: center;
                                    }

                                    .actualites h2{
                                      font-size: 35px;
                                      margin-bottom: 30px;
                                      color: red;
                                    }

                                    /* GRILLE 2x2 */
                                    .actu-container{
                                      display: grid;
                                      grid-template-columns: repeat(2, 1fr);
                                      gap: 25px;
                                      max-width: 1000px;
                                      margin: auto;
                                    }

                                    /* CARTE */
                                    .actu-card{
                                      background: white;
                                      border-radius: 12px;
                                      overflow: hidden;
                                      box-shadow: 0 5px 15px rgba(0,0,0,0.1);
                                      transition: 0.3s;
                                      cursor: pointer;
                                    }

                                    .actu-card:hover{
                                      transform: translateY(-5px);
                                    }

                                    /* IMAGE */
                                    .actu-card img{
                                      width: 100%;
                                      aspect-ratio: 3 / 4;
                                      object-fit: cover;
                                    }

                                    /* TITRE */
                                    .actu-card h3{
                                      padding: 15px;
                                      color: #2d424a;
                                    }


/* fond plein écran */
.lightbox{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.9);

  display: none;
  justify-content: center;
  align-items: center;

  z-index: 9999;
}

/* image agrandie */
.lightbox img{
  max-width: 90%;
  max-height: 90%;
  border-radius: 10px;
}

/* bouton fermer */
.lightbox .close{
  position: absolute;
  top: 20px;
  right: 30px;

  font-size: 40px;
  color: white;
  cursor: pointer;
}

/* la présentation à l'accueil*/
                                   .about-split{
                                    display: flex;
                                    align-items: center;
                                    justify-content: space-between;

                                    padding: 80px 10%;
                                    gap: 50px;

                                    background: #fff;
                                  }

                                  /* TEXTE À GAUCHE */
                                  .home-about-text{
                                    flex: 1;
                                  }

                                  .home-about-text h2{
                                    font-size: 32px;
                                    color: #3e4f56;
                                    margin-bottom: 25px;
                                    position: relative;
                                  }

                                  /* petite ligne sous le titre */
                                  .home-about-text h2::after{
                                    content: "";
                                    width: 170px;
                                    height: 3px;
                                    background: #c01111;
                                    display: block;
                                    margin-top: 10px;
                                    border-radius: 5px;
                                  }

                                  .home-about-text p{
                                    font-size: 18px;
                                    line-height: 1.8;
                                    color: #444;
                                    margin-bottom: 15px;
                                    text-align: justify;
                                  }

                                  /* IMAGE À DROITE */
                                  .afa-image{
                                    flex: 1;
                                  }

                                  .afa-image img{
                                    width: 125%;
                                    height: 420px;        /* hauteur fixe pour paysage */
                                    object-fit: cover;    /* garde un rendu propre sans déformation */

                                    border-radius: 15px;
                                    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
                                  }

/*---------------------------------------MOTS DE LA DIRECTION-------------------------------------*/

.director-message{
    padding: 100px 10%;
    background: #ffffff;
}

/* TITRE */
.section-title{
    text-align: center;
    font-size: 2.3rem;
    margin-bottom: 60px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #222;
}

.section-title span{
    color: #c0392b;
}

/* CONTENEUR */
.director-card{
    max-width: 900px;
    margin: auto;
    position: relative;
    padding: 60px 70px;
    background: #f9fafb;
    border-left: 6px solid #c0392b;
    border-radius: 12px;
}

/* GRANDES GUILLEMETS DÉCORATIFS */
.director-card::before{
    content: "“";
    position: absolute;
    top: 10px;
    left: 25px;
    font-size: 120px;
    color: rgba(192, 57, 43, 0.15);
    font-family: serif;
}

/* TEXTE */
.director-content p{
    font-size: 1.15rem;
    line-height: 1.9;
    color: #444;
    margin-bottom: 18px;
}

/* SIGNATURE */
.signature{
    margin-top: 35px;
    font-weight: 600;
    color: #c0392b;
    font-size: 1.1rem;
    text-align: right;
}

/* petit effet subtil */
.director-card:hover{
    transform: translateY(-4px);
    transition: 0.3s ease;
    box-shadow: 0 12px 30px rgba(0,0,0,0.08);
}
/* ----------------------------------offres et salles--------------------------------------------------*/
.culture-hero {
  height: 80vh;

  /* 👇 TON IMAGE ICI */
  background: url("imculturel/chero.png") center/cover no-repeat;

  display: flex;
  align-items: center;
  justify-content: center;

  position: relative;
}

/* overlay sombre pour lire le texte */
.culture-hero::before {
  content: "";
  position: absolute;
  inset: 0;

  background: rgba(0,0,0,0.5);
}

/* contenu au-dessus de l’image */
.hero-overlay {
  position: relative;
  text-align: center;

  color: white;

  max-width: 800px;

  padding: 20px;
}

.hero-overlay h1 {
  font-size: 55px;
  margin-bottom: 15px;
}

.hero-overlay p {
  font-size: 20px;
  margin-bottom: 30px;
  line-height: 1.6;
}

/* boutons */
.hero-buttons {
  display: flex;
  justify-content: center;
  gap: 15px;
  flex-wrap: wrap;
}

.btn {
  padding: 12px 25px;
  background: #c01111;
  color: white;
  text-decoration: none;
  border-radius: 30px;
  transition: 0.3s;
}

.btn:hover {
  background: #3e4f56;
}

/* bouton secondaire */
.btn-outline {
  background: transparent;
  border: 2px solid white;
}

.btn-outline:hover {
  background: white;
  color: black;
}

/* responsive */
@media (max-width: 768px) {

  .hero-overlay h1 {
    font-size: 32px;
  }

  .hero-overlay p {
    font-size: 16px;
  }

}


                                .culture-section {
                              display: flex;
                              align-items: center;
                              justify-content: space-between;

                              padding: 80px 10%;
                              gap: 50px;

                              background: #fff;
                            }

                            /* IMAGE */
                            .culture-image {
                              flex: 1;
                            }

                            .culture-image img {
                              width: 100%;
                              height: 450px;
                              object-fit: cover;

                              border-radius: 12px;

                              box-shadow: 0 10px 25px rgba(0,0,0,0.15);
                            }

                            /* TEXTE */
                            .culture-text {
                              flex: 1;
                            }

                            .culture-text h2 {
                              font-size: 32px;
                              margin-bottom: 25px;
                              color: #3e4f56;
                            }

                            /* LISTE */
                            .culture-text ul {
                              list-style: none;
                              padding: 0;
                              margin: 0;
                            }

                            .culture-text li {
                              font-size: 18px;

                              padding: 12px 0;

                              border-bottom: 1px solid #eee;

                              color: #333;

                              transition: 0.3s;
                            }

                            /* petit effet au survol */
                            .culture-text li:hover {
                              color: #c01111;
                              padding-left: 8px;
                            }

                            /* RESPONSIVE */
                            @media (max-width: 768px) {

                              .culture-section {
                                flex-direction: column;
                                text-align: center;
                              }

                              .culture-image img {
                                height: 300px;
                              }

                            }
    .salle-hero {
  height: 70vh;

  background: url("imculturel/tra.jpg") center/cover no-repeat;

  display: flex;
  align-items: center;
  justify-content: center;

  position: relative;
}

.salle-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.5);
}

.hero-overlay {
  position: relative;
  color: white;
  text-align: center;
  max-width: 700px;
}

.hero-overlay h1 {
  font-size: 50px;
  margin-bottom: 15px;
}

.hero-overlay p {
  font-size: 20px;
}



                .salle-section {
                                    display: flex;
                                    flex-direction: row; /* force gauche → droite */

                                    align-items: center;
                                    justify-content: space-between;

                                    gap: 50px;

                                    padding: 80px 10%;

                                    background: #fff;
                                  }

                                  /* IMAGE À GAUCHE */
                                  .salle-image {
                                    flex: 1;
                                  }

                                  .salle-image img {
                                    width: 100%;
                                    height: 450px;
                                    object-fit: cover;

                                    border-radius: 12px;

                                    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
                                  }

                                  /* TEXTE À DROITE */
                                  .salle-text {
                                    flex: 1;
                                  }

                                  .salle-text h2 {
                                    font-size: 32px;
                                    color: #3e4f56;
                                    margin-bottom: 20px;
                                  }

                                  .salle-text ul {
                                    list-style: none;
                                    padding: 0;
                                  }

                                  .salle-text li {
                                    font-size: 18px;
                                    padding: 12px 0;
                                    border-bottom: 1px solid #eee;
                                  }
                                  .salle-text li {
                                    transition: all 0.3s ease;
                                    cursor: pointer;
                                  }

                                  .salle-text li:hover {
                                    color: #c01111;
                                    padding-left: 10px;
                                  }



/*--------------------------------------CULTUREL-----------------------------------------------*/

.culture-main-hero {
  height: 85vh;

  background: url("imculturel/gal.jpg") center/cover no-repeat;

  display: flex;
  justify-content: center;
  align-items: center;

  position: relative;
}

/* FILTRE SOMBRE */
.culture-main-hero::before {
  content: "";

  position: absolute;
  inset: 0;

  background: rgba(0,0,0,0.55);
}

/* CONTENU */
.culture-main-overlay {
  position: relative;

  text-align: center;
  color: white;

  max-width: 800px;

  padding: 20px;
}

/* TITRE */
.culture-main-overlay h1 {
  font-size: 60px;
  margin-bottom: 20px;
}

/* TEXTE */
.culture-main-overlay p {
  font-size: 22px;
  line-height: 1.6;

  margin-bottom: 35px;
}

/* BOUTONS */
.culture-main-buttons {
  display: flex;
  justify-content: center;
  gap: 20px;

  flex-wrap: wrap;
}

/* BOUTON */
.culture-btn {
  padding: 14px 30px;

  background: #c01111;
  color: white;

  text-decoration: none;

  border-radius: 35px;

  transition: 0.3s;
}

.culture-btn:hover {
  background: #003d80;
}

/* OUTLINE */
.culture-btn-outline {
  background: transparent;
  border: 2px solid white;
}

.culture-btn-outline:hover {
  background: white;
  color: black;
}

/* RESPONSIVE */
@media (max-width: 768px) {

  .culture-main-overlay h1 {
    font-size: 38px;
  }

  .culture-main-overlay p {
    font-size: 18px;
  }

}
                                                                        .culture-presentation {
                                                            display: flex;
                                                            align-items: center;
                                                            justify-content: space-between;

                                                            gap: 70px;

                                                            padding: 100px 10%;

                                                            background: #f8f9fb;
                                                          }

                                                          /* TEXTE */
                                                          .culture-presentation-text {
                                                            flex: 1;
                                                          }

                                                          /* PETIT TITRE */
                                                          .culture-subtitle {
                                                            color: #c01111;

                                                            font-weight: bold;
                                                            letter-spacing: 1px;

                                                            text-transform: uppercase;

                                                            font-size: 14px;
                                                          }

                                                          /* GRAND TITRE */
                                                          .culture-presentation-text h2 {
                                                            font-size: 46px;

                                                            line-height: 1.2;

                                                            color: #3e4f56;

                                                            margin: 18px 0 30px;
                                                          }

                                                          /* PARAGRAPHES */
                                                          .culture-presentation-text p {
                                                            font-size: 18px;

                                                            line-height: 1.9;

                                                            color: #555;

                                                            margin-bottom: 20px;

                                                            text-align: justify;
                                                          }

                                                          /* LISTE INFOS */
                                                          .culture-info-list {
                                                            margin-top: 35px;
                                                          }

                                                          .culture-info-item {
                                                            background: white;

                                                            padding: 16px 20px;

                                                            border-left: 4px solid #c01111;

                                                            margin-bottom: 15px;

                                                            border-radius: 8px;

                                                            box-shadow: 0 5px 12px rgba(0,0,0,0.06);

                                                            transition: 0.3s;
                                                          }

                                                          .culture-info-item:hover {
                                                            transform: translateX(8px);
                                                          }

                                                          /* IMAGE */
                                                          .culture-present-image {
                                                            flex: 1;
                                                          }

                                                          .culture-present-image img {
                                                            width: 100%;

                                                            height: 580px;

                                                            object-fit: cover;

                                                            border-radius: 25px;

                                                            box-shadow: 0 15px 35px rgba(0,0,0,0.18);
                                                          }

                                                          /* RESPONSIVE */
                                                          @media (max-width: 900px) {

                                                            .culture-presentation {
                                                              flex-direction: column;
                                                            }

                                                            .culture-presentation-text h2 {
                                                              font-size: 34px;
                                                            }

                                                            .culture-present-image img {
                                                              height: 420px;
                                                            }

                                                          }

                                              .archives-wrapper {
  text-align: center;
  padding: 40px 0;
}

                    .archives-btn {
  display: inline-block;

  padding: 14px 32px;

  background: #c01111;
  color: white;

  text-decoration: none;

  border-radius: 35px;

  font-weight: bold;

  transition: 0.3s ease;

  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}
                                                          
/*---------------------------------fluidité quand on change de page--------------------*/
body {
  animation: fadeIn 0.4s ease-in-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}



/*-------------------------------------MEDIATHEQUE--------------------------------------*/

.mediatheque-hero {
  height: 80vh;

  background: url("images/med.jpg") center/cover no-repeat;

  position: relative;

  display: flex;
  align-items: center;
  justify-content: center;
}

.mediatheque-overlay {
  background: rgba(0,0,0,0.5);

  color: white;

  text-align: center;

  padding: 50px;

  border-radius: 15px;

  max-width: 800px;
}

.mediatheque-overlay h1 {
  font-size: 50px;
  margin-bottom: 20px;
}

.mediatheque-overlay p {
  font-size: 20px;
  line-height: 1.7;
}


                  .mediatheque {
                        padding: 80px 10%;
                        background: #f8f9fb;
                      }

                      .mediatheque h1 {
                        font-size: 42px;
                        color: #003d80;
                        text-align: center;
                        margin-bottom: 50px;
                      }

                      .mediatheque-block {
                        background: white;

                        padding: 25px 30px;

                        margin-bottom: 25px;

                        border-radius: 12px;

                        box-shadow: 0 5px 15px rgba(0,0,0,0.08);

                        transition: 0.3s;
                      }

                      .mediatheque-block:hover {
                        transform: translateY(-5px);
                      }

                      .mediatheque-block h2 {
                        color: #c01111;
                        margin-bottom: 15px;
                      }

                      .mediatheque-block ul {
                        padding-left: 20px;
                      }

                      .mediatheque-block li {
                        margin-bottom: 8px;
                        line-height: 1.6;
                        color: #444;
                      }

                      .mediatheque-block p {
                        color: #444;
                        line-height: 1.7;
                      }
                  
  .mediatheque-btn {
  display: inline-block;

  padding: 14px 32px;

  background: #c01111;
  color: white;

  text-decoration: none;

  border-radius: 35px;

  font-weight: bold;

  transition: 0.3s ease;

  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}
/*------------------------------------------ARCHIVES------------------------------------*/


                                        .archives-gallery {
                                          padding: 80px 10%;

                                          background: #f8f9fb;
                                        }

                                        .archives-gallery h1 {
                                          text-align: center;

                                          font-size: 42px;

                                          color: #3e4f56;

                                          margin-bottom: 50px;
                                        }

                                        /* GRID */
                                        .albums-grid {
                                          display: grid;

                                          grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

                                          gap: 30px;
                                        }

                                        /* CARTE */
                                        .album-card {
                                          position: relative;

                                          overflow: hidden;

                                          border-radius: 20px;

                                          text-decoration: none;

                                          box-shadow: 0 10px 25px rgba(0,0,0,0.15);

                                          transition: 0.4s;
                                        }

                                        .album-card:hover {
                                          transform: translateY(-8px);
                                        }

                                        /* IMAGE */
                                        .album-card img {
                                          width: 100%;

                                          height: 350px;

                                          object-fit: cover;

                                          display: block;
                                        }

                                        /* OVERLAY */
                                        .album-overlay {
                                          position: absolute;

                                          inset: 0;

                                          background: rgba(0,0,0,0.45);

                                          display: flex;

                                          align-items: end;

                                          padding: 25px;

                                          color: white;
                                        }

                                        .album-overlay h2 {
                                          color: white;

                                          font-size: 28px;
                                        }
                                
/* PAGE ALBUM */

/* =========================
   SLIDER PLEIN ÉCRAN
========================= */

.slider-page {
  padding: 60px 5%;
  text-align: center;
}

.slider-page h1 {
  font-size: 40px;
  color: #3e4f56;
  margin-bottom: 30px;
}

/* container image */
.slider-container {
  position: relative;
  width: 100%;
  height: 80vh;

  display: flex;
  align-items: center;
  justify-content: center;

  background:url("imarchives/fest.jpg") center/cover no-repeat;
  border-radius: 20px;
  overflow: hidden;
}

/* image */
#slider-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* boutons */
.prev, .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);

  background: rgba(255,255,255,0.2);
  color: white;

  border: none;
  font-size: 40px;

  padding: 10px 20px;
  cursor: pointer;

  transition: 0.3s;
  user-select: none;
}

.prev {
  left: 10px;
}

.next {
  right: 10px;
}

.prev:hover, .next:hover {
  background: rgba(255,255,255,0.5);
}

/*-------------------------------60ans----------------------------------------------*/

/*-------------------------------------------------------------------------------------*/
/* pied de pages  */
.footer {
  background-color: #111;
  color: #ccc;
  text-align: center;
  padding: 20px 10px;
  font-size: 14px;
}

.footer-container {
  max-width: 1200px;
  margin: auto;
}

.footer p {
  margin: 5px 0;
}

                      /* Dropdown */
                      .dropdown {
                        position: relative;
                      }

                      .dropdown-content {
                        display: none;
                        position: absolute;
                        top: 100%;
                        left: 0;
                        background: white;
                        min-width: 200px;
                        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
                        flex-direction: column;
                      }

                      .dropdown-content a {
                        padding: 10px;
                        display: block;
                        color: black;
                        text-decoration: none;
                      }

                      .dropdown-content a:hover {
                        background: #f0f0f0;
                      }

                      /* Affichage au survol */
                      .dropdown:hover .dropdown-content {
                        display: block;
                      }

                      html {
                        scroll-behavior: smooth;
                        scroll-padding-top: 110px; /* ajuste à la hauteur réelle du header */
                      }
                      body {
                        padding-top: 90px;
                      }


                      /*##########################################################MOBILE SCALING#########################################*/


                      /* =========================================================
   RESPONSIVE MOBILE
========================================================= */
@media (max-width: 768px) {

  /* Empêche débordement horizontal */
  html, body {
    overflow-x: hidden;
  }

  body {
    padding-top: 75px;
  }

  /* HEADER */
  .container {
    padding: 10px 15px;
    flex-wrap: wrap;
    gap: 10px;
  }

  .logo {
    gap: 8px;
  }

  .logo img {
    height: 40px;
  }

  .logo strong {
    font-size: 18px;
    line-height: 1.1;
  }

  .logo small {
    font-size: 14px;
  }

  /* NAVBAR */
  .navbar {
    gap: 15px;
    flex-wrap: wrap;
    justify-content: center;
  }

  .navbar a {
    font-size: 12px;
  }

  /* HERO SLIDER */
  .hero-slider {
    height: 75vh;
  }

  .slide-text {
    left: 5%;
    right: 5%;
    top: 60%;
    max-width: 100%;
  }

  .slide-text h1 {
    font-size: 42px;
    line-height: 1.1;
  }

  .slide-text p {
    font-size: 18px;
  }

  .slide-text a {
    padding: 12px 20px;
    font-size: 14px;
  }

  /* BOUTONS SLIDER */
  .prev,
  .next {
    padding: 10px 14px;
    font-size: 20px;
  }

  /* ABOUT SPLIT */
  .about-split {
    flex-direction: column;
    padding: 50px 20px;
  }

  .home-about-text p {
    font-size: 16px;
    text-align: left;
  }

  .afa-image img {
    width: 100%;
    height: 260px;
  }

  /* ABOUT CONTENT */
  .about-content {
    flex-direction: column;
  }

  .about-text,
  .about-image {
    width: 100%;
    padding: 0;
  }

  .about-image {
    height: auto;
  }

  .about-image img {
    width: 100%;
    height: 320px;
    border-radius: 20px;
  }

  /* HERO EXAMENS */
  .hero-examens h1,
  .hero-cours h1,
  .culture-main-overlay h1,
  .hero-overlay h1,
  .mediatheque-overlay h1 {
    font-size: 34px;
    line-height: 1.2;
  }

  .description,
  .hero-overlay p,
  .culture-main-overlay p,
  .mediatheque-overlay p {
    font-size: 16px;
  }

  /* CARTES */
  .card1,
  .card2,
  .card3,
  .card4,
  .cardc,
  .card-adult,
  .card-fos,
  .cardp,
  .card-particulier,
  .director-card {
    padding: 20px;
  }

  /* CULTURE */
  .culture-section,
  .salle-section,
  .culture-presentation {
    flex-direction: column;
    padding: 50px 20px;
  }

  .culture-image img,
  .salle-image img,
  .culture-present-image img {
    height: 280px;
  }

  /* ACTUALITES */
  .actu-container {
    grid-template-columns: 1fr;
  }

  /* RESULTATS */
  .result-card {
    width: 100%;
  }

  /* FOOTER */
  .footer {
    font-size: 12px;
    line-height: 1.6;
    padding: 20px;
  }

}
/* ================= MOBILE HEADER ================= */
@media (max-width: 768px) {

  /* HEADER */
  .container {
    flex-direction: column;
    align-items: center;
    padding: 15px;
    gap: 15px;
  }

  /* LOGO + TEXTE */
  .logo {
    flex-direction: row;
    justify-content: center;
    text-align: center;
  }

  .logo img {
    height: 45px;
  }

  /* NAVBAR */
  .navbar {
    width: 100%;

    display: flex;
    flex-wrap: wrap;

    justify-content: center;
    align-items: center;

    gap: 12px;

    padding: 10px 0;
  }

  .navbar a {
    font-size: 13px;
    padding: 6px 8px;
  }

  /* DROPDOWN */
  .dropdown {
    position: relative;
  }

  .dropdown-content {
    position: absolute;

    left: 50%;
    transform: translateX(-50%);

    min-width: 180px;

    z-index: 9999;
  }

  /* IMPORTANT MOBILE */
  .dropdown:hover .dropdown-content,
  .dropdown:focus-within .dropdown-content {
    display: block;
  }

  /* ESPACE HEADER */
  body {
    padding-top: 170px;
  }

}