body {
  padding-top: 56px;
  background-color: #f8f8f8;
}
h1 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bg-sponsor {
  background-color: #f8f8f8
}

.left-aligned {
  margin-left: auto;
}

.bg-dark {
  background-color: #343a40 !important;
}

.bg-hero {
  background-color: #9bd7ec;
}

.centered-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.container-fluid {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 40px !important;
  padding-right: 40px !important;

  /* Your custom modifications */
  max-width: 100%;
  /* Set a maximum width to ensure it fills the available space */
  /* Add any other custom styles you need */
}

.navbar {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 40px !important;
  padding-right: 40px !important;

  /* Your custom modifications */
  max-width: 100%;
  /* Set a maximum width to ensure it fills the available space */
  /* Add any other custom styles you need */
}

.custom-btn {
  font-size: 25px;
  /* Ajustez la taille du texte selon vos préférences */
}

.custom-btn:hover {
  opacity: 0.3; /* Réduire l'opacité au survol */
}

.custom-btn1:hover {
  opacity: 0.3; /* Réduire l'opacité au survol */
}

.custom-btn1 {
  background-color: #ffe6f5;
  color: #000000;
  border-color: #ffe6f5;
  font-size: 32px; /* Augmentation de la taille de la police */
  border-radius: 20px; /* Bord arrondi */
  display: block;
  margin: 0 auto; /* Centrage horizontalement */
}

.button-container {
  display: flex; /* Afficher les boutons en ligne */
  justify-content: center; /* Centrer horizontalement les boutons dans le conteneur */
  align-items: center; /* Centrer verticalement les boutons dans le conteneur */
}

.image-button {
  width: 200px; /* Largeur souhaitée du bouton */
  height: 200px; /* Hauteur souhaitée du bouton */
  border-radius: 50%; /* Rendre le bouton rond */
  overflow: hidden; /* Masquer le contenu qui dépasse du bouton */
  margin: 10px; /* Marge entre les boutons */
  display: inline-flex; /* Pour afficher les boutons côte à côte */
  align-items: center; /* Centrer verticalement le contenu */
  justify-content: center; /* Centrer horizontalement le contenu */
  position: relative; /* Position relative pour le contenu du bouton */
  text-align: center;
  border: 2px solid #000; 
}

.image-button-bg {
  opacity: 0.5; /* Ajustez cette valeur pour contrôler le niveau de transparence (entre 0 et 1) */
}

.button-content {
  text-align: center; /* Centrer le texte horizontalement */
}

.button-content img {
  max-width: 100%;
  height: auto;
}

.image-button:hover {
  opacity: 0.4; /* Réduire l'opacité au survol */
}


.button-text {
  color: #000; /* Couleur du texte */
  font-size: 24px; /* Taille de la police */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* Centrer le texte verticalement et horizontalement */
}

/* CALLOUT */
.bd-callout {
  padding: 1.25rem;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
  border: 1px solid #e9ecef;
  border-left-width: .25rem;
  border-radius: .25rem
}

.bd-callout h4 {
  margin-bottom: .25rem
}

.bd-callout p:last-child {
  margin-bottom: 0
}

.bd-callout code {
  border-radius: .25rem
}

.bd-callout+.bd-callout {
  margin-top: -.25rem
}

.bd-callout-info {
  border-left-color: #5bc0de
}

.bd-callout-warning {
  border-left-color: #f0ad4e
}

.bd-callout-danger {
  border-left-color: #d9534f
}

/* footer */
footer a {
  color: white;
  font-weight: bold;
  text-decoration: none;
}

footer a:hover {
  color: white;
  text-decoration: underline;
}


.picture_circle {
  border: 10px solid #333333;
  border-radius: 50%;
}

/* navbar */
.navbar {
  background-color: #edecec;
}

/* navbar dropdown */
.dropdown:hover .dropdown-menu {
  display: block;
}



.bg-blue {
  background-color: #CDEDFF;
}

.bg-blue p {
  text-align: center;
}

.bg-violet {
  background-color: #E4D2FA;
}

.bg-violet p {
  text-align: center;
}

.nav-link {
  font-size: 27px;
}

.right-text {
  text-align: right;
}

body {
  font-family: 'Futura', sans-serif;
}

.bg-orange {
  background-color: #FFE3D1;
}

.bg-orange p {
  text-align: center;
}

.bg-pink {
  background-color: #FFE6F5;
}

.bg-pink p {
  text-align: center;
}

p {
  line-height: 2;
  text-align: justify;
  text-justify: inter-word;
}

p.right {
  text-align: right;
}

.numbers {
  font-family: 'Arial', sans-serif;
  font-size: 2.5rem;
  line-height: 1em;
  text-align: center;
  margin: 40px auto;
  overflow: hidden;
}

.numbers__window {
  display: inline-block;
  overflow: hidden;
  width: 1em;
  height: 1em;
}

.numbers__window__digit {
  font: inherit;
  word-break: break-all;
  display: block;
  width: 0;
  padding: 0 0.52em 0 0;
  margin: 0 auto;
  overflow: inherit;
  animation: counting 0.4s steps(10) forwards infinite;
}

.numbers__window__digit::before {
  content: attr(data-fake);
  display: inline-block;
  width: 100%;
  height: auto;
}

.numbers__window__digit--1 {
  animation-iteration-count: 3;
}

.numbers__window__digit--2 {
  animation-iteration-count: 6;
}

.numbers__window__digit--3 {
  animation-iteration-count: 9;
}

.numbers__window__digit--4 {
  animation-iteration-count: 12;
}

.numbers__window__digit--5 {
  animation-iteration-count: 15;
}

@keyframes counting {
  100% {
    transform: translate3d(0, -10em, 0);
  }
}

nav[data-toggle="toc"] {
  top: 75px;
}

/* small screens */
@media (max-width: 200px) {

  /* override stickyness so that the navigation does not follow scrolling */
  nav[data-toggle="toc"] {
    margin-bottom: 42px;
    position: static;
  }

  /* PICK ONE */
  /* don't expand nested items, which pushes down the rest of the page when navigating */
  nav[data-toggle="toc"] .nav .active .nav {
    display: none;
  }

  /* alternatively, if you *do* want the second-level navigation to be shown (as seen on this page on mobile), use this */
  /*
    nav[data-toggle='toc'] .nav .nav {
      display: block;
    }
    */
}

#toc .nav-link {
  font-size: 15px;
}

#toc li {
  margin-left: 20px;
}

.left-menu{
  padding-left:0 !important;
  border-right: solid;
  z-index: 1;
  overflow-y: auto;
}

@media (min-width: 1400px){
  .navbar-expand-custom {
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: flex-start;
  }
  .navbar-expand-custom .navbar-nav {
      flex-direction: row;
  }
  .navbar-expand-custom .dropdown-menu {
      position: absolute;
  }
  .navbar-expand-custom .nav-link {
      padding-right: .5rem;
      padding-left: .5rem;
  }
  .navbar-expand-custom > .container {
      flex-wrap: nowrap;
  }
  .navbar-expand-custom .navbar-collapse {
      display: flex!important;
      flex-basis: auto;
  }
  .navbar-expand-custom .navbar-toggler {
      display: none;
  }
}

.popover {
  max-width: 70%; /* Largeur maximale du popover */
}



/* Debut Timeline interview IHP */

/* Timeline Container */
.timeline {
  background: var(--primary-color);
  margin: 20px auto;
  padding: 20px;
}


/* Outer Layer with the timeline border = fil conducteur noir*/
.outer {
  border-left: 4px solid #373737;
}

/* Card container */
.card {
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;
  
}


/* Information about the timeline */
.info {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

/* Title of the card */
.title {
  color: #ffe3d1;
  position: relative;
}

/* Timeline dot  */
.title::before {
  content: "";
  position: absolute;
  width: 50px;
  height: 50px;
  background: #ffe3d1;
  border-radius: 999px;
  left: -27px;
  border: 5px solid #e4d2fa;
 } 



/* Couleur carte */

.card1 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px; }
.card2 { background-color: #FFE6F5;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card3 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card4 { background-color: #FFE6F5;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card5 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card6 { background-color: #FFE6F5;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card7 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card8 { background-color: #FFE6F5;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card9 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card10 { background-color: #FFE6F5;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card11 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card12 { background-color: #FFE6F5;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card13 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card14 { background-color: #FFE6F5;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card15 { background-color: #CDEDFF;
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px;  }
.card16 { background-color: #FFE6F5; 
  position: relative;
  margin: 0 0 20px 20px;
  padding: 10px; }

 

/* Fin Timeline interview IHP */

.text-left-custom{
  text-align: left !important;
}

.img-menu{
  width: 50;
  height: 50;
  width: 30%;
}


.image-container {
  position: relative;
  width: 100%;
  height: 600px; /* Hauteur fixe pour la zone de visualisation de l'image */
  overflow-x: scroll;
  overflow-y: hidden;
}

#scroll-image {
  width: auto;
  max-height: 100%; /* Ajustez la hauteur maximale en fonction de votre préférence */
}

.scrollbar {
  position: absolute;
  width: 10px; /* Largeur du curseur */
  height: 100%;
  background-color: #ccc;
  right: 0;
}

/* Style du curseur */
#custom-scrollbar::-webkit-scrollbar-thumb {
  background-color: #888;
  border-radius: 10px;
}