/* ==========================================================================
   STRUTTURA DESKTOP (BASE)
   ========================================================================== */

/* Struttura principale del blocco carosello */
.custom-carousel-section {
  height: 80vh !important; /* Altezza della sezione per dare respiro verticale */
  overflow: hidden;
  background-color: #000000;
}

/* Titolo Globale posizionato in alto a sinistra */
.carousel-overlay-text {
  position: absolute;
  top: 40px;
  left: 40px;
  z-index: 10;
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.8);
}

/* Descrizioni singole posizionate in basso a destra */
.carousel-overlay-desc {
  position: absolute;
  bottom: 40px;
  right: 40px;
  z-index: 10;
  color: #ffffff;
  font-size: 1.1rem;
  line-height: 1.5;
  max-width: 450px;
  text-align: right;
  text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.8);
}

.custom-carousel-section .carousel-item {
  position: relative;
}

/* Gestione dell'effetto Backdrop sfocato */
.custom-carousel-section .carousel-bg-blur {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  filter: blur(20px);
  transform: scale(1.1); /* Previene i bordi bianchi causati dal filtro blur */
  opacity: 0.5;
  z-index: 1;
}

/* Posizionamento flex centrato per l'immagine frontale */
.custom-carousel-section .carousel-fg-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  padding: 50px;
}

/* Box proporzionale Orizzontale (Desktop) con angoli arrotondati */
.custom-carousel-section .image-ratio-box {
  width: 60%;
  max-width: 800px;
  aspect-ratio: 16 / 9; /* Geometria orizzontale su desktop */
  box-shadow: 0px 12px 35px rgba(0, 0, 0, 0.6);
  overflow: hidden; /* Taglia l'immagine interna mantenendo l'arrotondamento */
  background-color: #000000;
  border-radius: 14px; /* Raggio di curvatura */
}

/* Adattamento dell'immagine definita senza distorsioni */
.custom-carousel-section .carousel-custom-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Gestione delle frecce di controllo Bootstrap */
.custom-carousel-section .carousel-control-prev,
.custom-carousel-section .carousel-control-next {
  z-index: 3;
}

.custom-carousel-section .carousel-control-prev-icon,
.custom-carousel-section .carousel-control-next-icon {
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  padding: 1.5rem;
  background-size: 50%;
}

/* ==========================================================================
   OTTIMIZZAZIONE MOBILE (Sotto i 768px)
   ========================================================================== */
@media (max-width: 768px) {
  .custom-carousel-section {
    height: 70vh !important; /* Riduciamo leggermente l'altezza totale per i display dei telefoni */
  }

  .custom-carousel-section .carousel-fg-container {
    padding: 20px; /* Meno padding esterno su mobile per sfruttare lo spazio */
  }

  /* Cambio orientamento del Box: diventa Verticale (3:4) e più largo */
  .custom-carousel-section .image-ratio-box {
    width: 85%; /* Occupa più spazio in larghezza sullo schermo stretto */
    aspect-ratio: 3 / 4; /* Forza l'orientamento verticale */
    border-radius: 10px; /* Arrotondamento leggermente ridotto proporzionalmente */
  }

  /* Adattamento testi per schermi piccoli */
  .carousel-overlay-text {
    top: 20px;
    left: 20px;
    font-size: 1.2rem;
  }

  .carousel-overlay-desc {
    bottom: 20px;
    right: 20px;
    left: 20px; /* Permette al testo di estendersi se lungo */
    font-size: 0.95rem;
    max-width: calc(100% - 40px);
  }

  /* Ridimensionamento delle frecce per non coprire troppo l'immagine su mobile */
  .custom-carousel-section .carousel-control-prev-icon,
  .custom-carousel-section .carousel-control-next-icon {
    padding: 1rem;
  }
}
