  .carousel-container {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    background-color: #fff; /* fond neutre si l'image ne remplit pas */
    padding: 1rem;
    border-radius: 12px;
  }

  .carousel-slide {
    display: flex;
    transition: transform 0.5s ease-in-out;
  }

  .carousel-slide img {
    width: 100%;
    height: auto; /* conserve la proportion naturelle */
    object-fit: contain;
    flex-shrink: 0;
    max-height: 80vh; /* empêche que l’image dépasse l'écran */
    background-color: #fff;
  }

  .carousel-buttons {
    position: absolute;
    top: 50%;
    width: 95%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    padding: 0 1rem;
    pointer-events: none;
  }

  .carousel-buttons button {
    pointer-events: auto;
    background: rgba(0, 0, 0, 0.4);
    color: white;
    border: none;
    font-size: 2rem;
    padding: 0.3em 0.6em;
    cursor: pointer;
    border-radius: 50%;
    transition: background 0.3s;
  }

  .carousel-buttons button:hover {
    background: rgba(0, 0, 0, 0.7);
  }
