import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');

body{
    background-color: #F8F9FE;
    font-family: 'Lato', sans-serif;
}

.footer-wrapper {
  display: flex;
  justify-content: center;   /* centre horizontalement */
  padding-bottom: 20px;
  margin-top: -5rem;           
}

.footer-content {
  background-color: #f0f0f0; /* fond gris */
  max-width: 50%;            /* largeur max = 50% de l'écran */
  width: 100%;               /* occupe la largeur dispo */
  padding-top: 10px;             
  text-align: center;        /* texte centré */
  border-radius: 8px;        /* optionnel : coins arrondis */
  font-weight: 600;
  color:#3F4961;
}


/* Conteneur image + titre */
.col-12 img,
.col-12 h2 {
  display: inline-block;
  vertical-align: middle;
}

/* Sur desktop : image à gauche du titre */
.col-12 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.col-12 img {
  height: auto;
  width: auto;        /* conserve les proportions */
  margin-right: 10px;
  margin-bottom: 10px;
}

h3 {
    color:#3F4961;
}

i {
    color:#3F4961;
}

.accordion-button {
  color: #009cde!important; /* nouvelle couleur */
}

/* Conteneur flex */
.accordion-content {
  display: flex;
  align-items: flex-start;
  gap: 15px;
}


/* Responsive : image au-dessus du texte sur mobile */
@media (max-width: 576px) {
  .accordion-content {
    flex-direction: column;
    align-items: center;
  }

  .accordion-content .miniature {
    width: 100%;
    max-width: none;
  }
}

/* Lightbox */
#lightbox {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

#lightbox img {
  max-width: 90%;
  max-height: 90%;
  border-radius: 5px;
  cursor:zoom-out;
}

/* Style pour la lightbox */
.lightbox {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  overflow: auto;
  justify-content: center;
  align-items: center;
}

.lightbox-content {
  max-width: 90%;
  max-height: 90%;
  margin: auto;
  display: block;
}

.lightbox-close {
  position: absolute;
  top: 20px;
  right: 30px;
  color: white;
  font-size: 35px;
  font-weight: bold;
  cursor: pointer;
}

.miniature {
  cursor: pointer;
  max-width: 50%;
  max-height: 300px;
  height: auto;
  margin-bottom: 1rem;
}
/* Boutons de la barre de navigation */
.navbar .btn-primary {
  background-color: #009cde; /* bleu clair */
  border-color: #009cde;
  color: #fff;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}

.navbar .btn-primary:hover,
.navbar .btn-primary:focus {
  background-color: #0055DE; /* bleu foncé */
  border-color: #0055DE;
  color: #fff;
}


.mb-6 {
    margin-bottom: 3.5rem !important
}

.mb-7 {
    margin-bottom: 4rem !important
}

.mb-8 {
    margin-bottom: 4.5rem !important
}

.mb-9 {
    margin-bottom: 5rem !important
}

.mb-10 {
    margin-bottom: 5.5rem !important
}

.mb-auto {
    margin-bottom: auto !important
}

.py-6 {
    padding-bottom: 3.5rem !important;
    padding-top: 3.5rem !important
}

.py-7 {
    padding-bottom: 4rem !important;
    padding-top: 4rem !important
}

.py-8 {
    padding-bottom: 4.5rem !important;
    padding-top: 4.5rem !important
}

.py-9 {
    padding-bottom: 5rem !important;
    padding-top: 5rem !important
}

.py-10 {
    padding-bottom: 5.5rem !important;
    padding-top: 5.5rem !important
}

@media(min-width:576px) {
    .mb-sm-6 {
        margin-bottom: 3.5rem !important
    }

    .mb-sm-7 {
        margin-bottom: 4rem !important
    }

    .mb-sm-8 {
        margin-bottom: 4.5rem !important
    }

    .mb-sm-9 {
        margin-bottom: 5rem !important
    }

    .mb-sm-10 {
        margin-bottom: 5.5rem !important
    }

    .mb-sm-auto {
        margin-bottom: auto !important
    }

    .py-sm-6 {
        padding-bottom: 3.5rem !important;
        padding-top: 3.5rem !important
    }

    .py-sm-7 {
        padding-bottom: 4rem !important;
        padding-top: 4rem !important
    }

    .py-sm-8 {
        padding-bottom: 4.5rem !important;
        padding-top: 4.5rem !important
    }

    .py-sm-9 {
        padding-bottom: 5rem !important;
        padding-top: 5rem !important
    }

    .py-sm-10 {
        padding-bottom: 5.5rem !important;
        padding-top: 5.5rem !important
    }
}

@media(min-width:768px) {
    .mb-md-6 {
        margin-bottom: 3.5rem !important
    }

    .mb-md-7 {
        margin-bottom: 4rem !important
    }

    .mb-md-8 {
        margin-bottom: 4.5rem !important
    }

    .mb-md-9 {
        margin-bottom: 5rem !important
    }

    .mb-md-10 {
        margin-bottom: 5.5rem !important
    }

    .mb-md-auto {
        margin-bottom: auto !important
    }

    .py-md-6 {
        padding-bottom: 3.5rem !important;
        padding-top: 3.5rem !important
    }

    .py-md-7 {
        padding-bottom: 4rem !important;
        padding-top: 4rem !important
    }

    .py-md-8 {
        padding-bottom: 4.5rem !important;
        padding-top: 4.5rem !important
    }

    .py-md-9 {
        padding-bottom: 5rem !important;
        padding-top: 5rem !important
    }

    .py-md-10 {
        padding-bottom: 5.5rem !important;
        padding-top: 5.5rem !important
    }
}

@media(min-width:992px) {
    .mb-lg-6 {
        margin-bottom: 3.5rem !important
    }

    .mb-lg-7 {
        margin-bottom: 4rem !important
    }

    .mb-lg-8 {
        margin-bottom: 4.5rem !important
    }

    .mb-lg-9 {
        margin-bottom: 5rem !important
    }

    .mb-lg-10 {
        margin-bottom: 5.5rem !important
    }

    .mb-lg-auto {
        margin-bottom: auto !important
    }

    .py-lg-6 {
        padding-bottom: 3.5rem !important;
        padding-top: 3.5rem !important
    }

    .py-lg-7 {
        padding-bottom: 4rem !important;
        padding-top: 4rem !important
    }

    .py-lg-8 {
        padding-bottom: 4.5rem !important;
        padding-top: 4.5rem !important
    }

    .py-lg-9 {
        padding-bottom: 5rem !important;
        padding-top: 5rem !important
    }

    .py-lg-10 {
        padding-bottom: 5.5rem !important;
        padding-top: 5.5rem !important
    }
}

@media(min-width:1200px) {
    .mb-xl-6 {
        margin-bottom: 3.5rem !important
    }

    .mb-xl-7 {
        margin-bottom: 4rem !important
    }

    .mb-xl-8 {
        margin-bottom: 4.5rem !important
    }

    .mb-xl-9 {
        margin-bottom: 5rem !important
    }

    .mb-xl-10 {
        margin-bottom: 5.5rem !important
    }

    .mb-xl-auto {
        margin-bottom: auto !important
    }

    .py-xl-6 {
        padding-bottom: 3.5rem !important;
        padding-top: 3.5rem !important
    }

    .py-xl-7 {
        padding-bottom: 4rem !important;
        padding-top: 4rem !important
    }

    .py-xl-8 {
        padding-bottom: 4.5rem !important;
        padding-top: 4.5rem !important
    }

    .py-xl-9 {
        padding-bottom: 5rem !important;
        padding-top: 5rem !important
    }

    .py-xl-10 {
        padding-bottom: 5.5rem !important;
        padding-top: 5.5rem !important
    }
}

@media(min-width:1400px) {
    .mb-xxl-6 {
        margin-bottom: 3.5rem !important
    }

    .mb-xxl-7 {
        margin-bottom: 4rem !important
    }

    .mb-xxl-8 {
        margin-bottom: 4.5rem !important
    }

    .mb-xxl-9 {
        margin-bottom: 5rem !important
    }

    .mb-xxl-10 {
        margin-bottom: 5.5rem !important
    }

    .mb-xxl-auto {
        margin-bottom: auto !important
    }

    .py-xxl-6 {
        padding-bottom: 3.5rem !important;
        padding-top: 3.5rem !important
    }

    .py-xxl-7 {
        padding-bottom: 4rem !important;
        padding-top: 4rem !important
    }

    .py-xxl-8 {
        padding-bottom: 4.5rem !important;
        padding-top: 4.5rem !important
    }

    .py-xxl-9 {
        padding-bottom: 5rem !important;
        padding-top: 5rem !important
    }

    .py-xxl-10 {
        padding-bottom: 5.5rem !important;
        padding-top: 5.5rem !important
    }
}

.bsb-btn-xl {
    --bs-btn-padding-y: 0.625rem;
    --bs-btn-padding-x: 1.25rem;
    --bs-btn-font-size: calc(1.26rem + 0.12vw);
    --bs-btn-border-radius: var(--bs-border-radius-lg)
}

@media(min-width:1200px) {
    .bsb-btn-xl {
        --bs-btn-font-size: 1.35rem
    }
}

.bsb-btn-2xl {
    --bs-btn-padding-y: 0.75rem;
    --bs-btn-padding-x: 1.5rem;
    --bs-btn-font-size: calc(1.27rem + 0.24vw);
    --bs-btn-border-radius: var(--bs-border-radius-lg)
}

@media(min-width:1200px) {
    .bsb-btn-2xl {
        --bs-btn-font-size: 1.45rem
    }
}

.bsb-btn-3xl {
    --bs-btn-padding-y: 0.875rem;
    --bs-btn-padding-x: 1.75rem;
    --bs-btn-font-size: calc(1.28rem + 0.36vw);
    --bs-btn-border-radius: var(--bs-border-radius-lg)
}

@media(min-width:1200px) {
    .bsb-btn-3xl {
        --bs-btn-font-size: 1.55rem
    }
}

.bsb-btn-4xl {
    --bs-btn-padding-y: 1rem;
    --bs-btn-padding-x: 2rem;
    --bs-btn-font-size: calc(1.29rem + 0.48vw);
    --bs-btn-border-radius: var(--bs-border-radius-lg)
}

@media(min-width:1200px) {
    .bsb-btn-4xl {
        --bs-btn-font-size: 1.65rem
    }
}

.bsb-btn-5xl {
    --bs-btn-padding-y: 1.125rem;
    --bs-btn-padding-x: 2.25rem;
    --bs-btn-font-size: calc(1.3rem + 0.6vw);
    --bs-btn-border-radius: var(--bs-border-radius-lg)
}

@media(min-width:1200px) {
    .bsb-btn-5xl {
        --bs-btn-font-size: 1.75rem
    }
}

.bsb-faq-3 .accordion {
    --bs-accordion-btn-icon: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2716%27 height=%2716%27 fill=%27%23212529%27 class=%27bi bi-plus%27%3E%3Cpath d=%27M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z%27/%3E%3C/svg%3E");
    --bs-accordion-btn-active-icon: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2716%27 height=%2716%27 fill=%27%23052c65%27 class=%27bi bi-dash%27%3E%3Cpath d=%27M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z%27/%3E%3C/svg%3E")
}