.article {
  padding: 20px;
  max-width: 33%;
  height: auto;
}

.speed-article {
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  text-decoration: none !important;
  box-shadow: 0 0 0 transparent;
}

.speed-article:hover {
  cursor: pointer;
  transform: scale(1.1);
  box-shadow: 0px 2px 7px rgb(37 47 93 / 12%);
}

.btn-human-blanc {
  /* Votre code CSS ici */
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  text-decoration: none !important;
  box-shadow: 0 0 0 transparent;
  /* Initialise une valeur pour box-shadow */
}

.btn-human-blanc:hover {
  cursor: pointer;
  transform: scale(1.1);
  box-shadow: 0 7px 30px rgb(37 47 93 / 12%) !important;
}

a.row.justify-content-center.d-flex {
  text-decoration: none;
}

.owl-nav {
  position: absolute;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
  z-index: 10;
}

.owl-item {
  width: auto;
}

.owl-nav .owl-prev,
.owl-nav .owl-next {
  position: absolute;
  background-color: rgba(255, 255, 255, 0.8);
  /* border-radius: 50%; */
  width: 40px;
  height: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s, transform 0.3s;
  /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); */
}

.owl-nav .owl-prev {
  left: 0px;
  /* Position de la flèche précédente */
}

.owl-nav .owl-next {
  right: 0px;
  /* Position de la flèche suivante */
}

/* .owl-nav .owl-prev:hover,
.owl-nav .owl-next:hover {
  background-color: rgba(255, 255, 255, 1);
  transform: scale(1.1);
} */

.owl-nav .fa-chevron-left,
.owl-nav .fa-chevron-right {
  font-size: 20px;
}


.premium-button {
  background-color: #333;
  color: #fff;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  font-weight: bold;
  cursor: pointer;
  transition: background-color 0.3s;
}

.premium-button:hover {
  background-color: #555;
}

.truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.premium-banner {
  background-color: #ffffff;
  color: #363636;
  text-align: center;
  padding: 20px;
  font-family: 'Arial', sans-serif;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.premium-banner:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.premium-banner p {
  font-size: 1.2em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  margin: 0;
}

.image-container {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative;
}

.image-container img {
  object-fit: contain !important;
  width: 100% !important;
}

.product-details {
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.product-details:hover {
  cursor: pointer;
  transform: scale(1.1);
}

@media (max-width: 767px) {
  .article-wrap {
    min-height: auto !important;
  }
}

.article-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
}

.article-wrap {
  max-width: 100%;
  overflow: hidden;
}

.article-slot {
  flex: 0 0 33%;
  box-sizing: border-box;
  padding: 15px;
  position: relative;
}
.speed-article {
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  text-decoration: none !important;
  box-shadow: 0 0 0 transparent;
}

.speed-article:hover {
  cursor: pointer;
  transform: scale(1.1);
  box-shadow: 0px 2px 7px rgb(37 47 93 / 12%);
}



@media (max-width: 768px) {
  .carousel-boostrap {
    height: auto !important;
  }
  .carousel-content {
    display: flex !important;
    flex-direction: column-reverse !important;
    justify-content: space-between !important;
    align-items: center !important;
    height: 90vh !important;
    min-height: 0 !important; /* Permet aux enfants de s’adapter correctement */
    padding: 0 !important;
    overflow: hidden !important;
  }

  .carousel-image-wrapper {
    width: 100% !important;
    height: 40% !important;
    flex-shrink: 0 !important;
  }

  .carousel-image-wrapper img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  .carousel-text {
    width: 100% !important;
    flex-basis: 30% !important;       /* Base à 30% pour les écrans larges */
    flex-grow: 1;                     /* Permet d'étendre si besoin */
    min-height: 150px !important;     /* Hauteur minimale de sécurité */
    max-height: none !important;      /* Pas de limite haute */
    
    padding: 10px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    
    box-sizing: border-box;
    text-align: center !important;
    font-size: clamp(0.8em, 2vw, 1em) !important;

    overflow: visible !important;     /* Permet d'afficher tout le texte */
    word-wrap: break-word !important; /* Évite le débordement horizontal */
  }

  /* .carousel-text button {
    margin-top: 10px !important;
    max-width: 60% !important;
  } */

  .carousel-item, 
  .carousel-inner {
    /* height: 100vh !important; */
    min-height: 90vh !important;
  }

  .carousel-indicators {
    position: absolute !important;
    }
  .carousel-control-prev,
  .carousel-control-next {
    display: none !important; /* Masquer les flèches de navigation */
  }

  .carousel-inner {
    touch-action: pan-y; /* Permet le défilement vertical sans conflit avec le swipe horizontal */
  }
}

@media (max-width: 768px) {
  .resizable-column {
      flex: 1 1 100% !important;
      height: auto !important;
  }
}
#owlCarouselWithText {
  display: flex;           /* Nécessaire si tu veux centrer aussi horizontalement */
  align-items: center;     /* Centre verticalement le contenu */
  justify-content: center; /* Centre horizontalement les items si nécessaire */
  height: 100%;            /* Prend toute la hauteur disponible */
  min-height: 300px;       /* Garantit une hauteur minimale */
}


.carousel-inner,
.carousel-item,
.carousel-content {
  height: 100%;               /* Prend 100% de la hauteur du carousel */
}

.carousel-content {
  display: flex;
  align-items: stretch;       /* Force les enfants à occuper 100% de la hauteur */
  justify-content: space-between;
  width: 100%;
}

.carousel-text,
.carousel-image-wrapper {
  flex: 1 1 auto;             /* Permet de redimensionner librement la largeur */
  height: 100%;               /* Adapte la hauteur des colonnes aux parents */
  box-sizing: border-box;     /* Inclut les paddings dans le calcul de la hauteur */
}

.carousel-text {
  padding-left: 40px;
  display: flex;               /* Active Flexbox */
  flex-direction: column;      /* Aligne les éléments en colonne */
  justify-content: center;     /* Centre verticalement les éléments */
}
.carousel-text button {
  max-width: 50%; 
  text-align: center;     /* Centre le texte à l'intérieur du bouton */
  width: auto;            /* Laisse le bouton s'adapter au contenu jusqu'à max-width */   
}


.carousel-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;          /* Remplit le conteneur sans déformer l'image */
}

@media (max-width: 768px) {
  .container-fluid-carousel {
    flex-direction: column-reverse !important;
    /* height: 70vh !important; */
    padding: 0 !important;
  }

  .text-section {
    width: 100% !important;
    height: 40% !important;
    text-align: center !important;
    font-size: clamp(1em, 2vw, 1.5em) !important;
    padding: 10px 20px !important;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 !important;
  }

  .owl-carousel {
    width: 100% !important;
    height: 20% !important;
    overflow: hidden !important;
    justify-content: center;
    align-items: center;
  }

  .owl-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}

.btn-boostrap-carousel {
  padding: 10px 20px;
  background-color: transparent;
  color: #000000;
  border: 2px solid #dcc2b0;
  border-radius: 3px;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.btn-boostrap-carousel:hover {
  background-color: #dcc2b0;
  color: #fff;
}
