body{
  color: black;
  font-family: 'Work Sans Light';
}

a{
  text-decoration: none !important;
  color: white !important;
}

.bg-light-black{
  background-color: rgba(0, 0, 0, 0.584);
}

.bg-grazie{
  background-color: rgba(252, 252, 252, 0.426);
}

.bg-light-red{
  background-color: #da4e4154;
}

.bg-medium-red{
  background-color: #da4e41aa;
}

.bg-red{
  background-color: #DA4E41;
}

.bold{
  font-family: 'Work Sans SemiBold';
}


.bolder{
  font-family: 'Work Sans Black';
}

.link{
  font-size: 13px; 
  font-family: 'Work Sans Regular';
  letter-spacing: 0.1em !important;
}

.cap{
  text-transform: uppercase;
}

.red{
  color: #DA4E41 !important;
}

.red-line, .red-line-2, .white-line{
  display: inline-block;
    position: relative; 
}

.red-line::after{
  content: ""; 
  display: block; 
  width: 100%; 
  height: 14px;
  opacity: 0.2; 
  background-color: #DA4E41; 
  position: absolute; 
  top: 20px;
  align-items: center;
}

.red-line-2::after{
  content: ""; 
  display: block; 
  width: 100%; 
  height: 14px;
  opacity: 1; 
  z-index: -1;
  background-color: #DA4E41; 
  position: absolute; 
  top: 30px;
  align-items: center;
}

.white-line::after{
  content: ""; 
  display: block; 
  width: 100%; 
  height: 14px;
  z-index: -1;
  background-color: rgba(255, 255, 255, 0.863); 
  position: absolute; 
  top: 20px;
  align-items: center;
}

.angoli-sopra{
  border-radius: 30px 30px 0px 0px;
}

.angolo-alto-basso{
  border-radius: 0px 20px 0px 20px;
}

.angolo-basso-alto{
  border-radius: 60px 0px 60px 0px;
}

.border-red{
  border: 1px solid #DA4E41 !important;
  border-radius: 10px 10px 10px 10px !important;
}

.video-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* Rapporto di aspetto 16:9 */
  overflow: hidden;
  max-width: 620px; /* Limita la larghezza massima */
  margin: 0 auto;
}

.video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover !important; /* Rimuove le bande nere, ritagliando il video se necessario */
}

input::placeholder,
textarea::placeholder {
  color: #DA4E41 !important; /* Cambia il colore al valore desiderato */
  font-size: 13px;
  opacity: 1; /* Opacità a 1 per garantire visibilità su tutti i browser */
}


/* CAROSELLO */

.swiper-container {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Button Customization */
/* Button Customization */
.swiper-button-next-custom {
position: absolute;
top: 50%;
right: -60px; /* Adjust this value to move the button left or right */
transform: translateY(-50%);
cursor: pointer;
border: none;
background-color: transparent !important;
z-index: 10; /* Make sure the button appears on top */
}

@media (max-width: 1000px) {
  .swiper-button-next-custom {
    top: auto;
    bottom: -50px; /* Posiziona la freccia a 10px dal fondo */
    right: 10px; /* Posiziona la freccia a 10px dal lato destro */
    transform: none; /* Rimuovi il traslamento verticale */
  }
}

@media (max-width: 768px) {

.titolo{
  font-size: 20px;
}

.titolo-2{
  font-size: 14px !important;
}

.nascondi{
  display: none !important;
}

}

@media (min-width: 768px) {
  
  .altezza-lg {
    min-height: 370px; /* Imposta l'altezza minima per tutte le card */
  }

  .altezza-lg-2{
    overflow: hidden;
    min-height: 480px; /* Imposta l'altezza minima per tutte le card */
  }
  }

.swiper-button-next-img {
width: 40px; /* Adjust the size of the image */
height: auto;
}

.line-hov {
  position: relative; /* Rendi il link un elemento di riferimento per la posizione assoluta */
  display: inline-block;
}

.line-hov::after {
  content: "";
  display: block;
  width: 100%;
  height: 10px; /* Altezza della linea */
  background-color: #da4e416d; /* Colore della linea */
  position: absolute;
  bottom: -5px; /* Posizione iniziale fuori vista, sotto il link */
  left: 0;
  opacity: 0;
  transition: all 0.3s ease; /* Animazione di transizione */
}

.line-hov:hover::after {
  opacity: 1;
  bottom: 5px; /* Spostamento della linea verso il basso */
}
/* FINE CAROSELLO */


/* TOGGLE DOWN */

.toggle {
  width: 25px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.108);
  border-radius: 40px;
  border: 1px solid rgba(255, 255, 255, 0.454);
  position: relative;
  overflow: hidden;
}


.toggle-ball {
  width: 10px;
  height: 10px;
  background-color: #ffffff8e;
  border-radius: 50%;
  position: absolute;
  bottom: 4px; 
  left: 50%;
  transform: translateX(-50%);
  opacity: 0; 
  animation: move-ball-vertical 2s ease-in-out infinite;
}


@keyframes move-ball-vertical {
  0% {
      bottom: 6px;
      opacity: 1; 
  }
  50% {
      bottom: 30px;
      opacity: 0.5; 
  }
  100% {
      bottom: 40px;
      opacity: 0; 
  }
}

/* FINE TOGGLE */



.img-cover {
  
  height: 680px;
      min-width: 300px;
      object-fit: cover; /* Mantiene l'immagine coperta senza distorsioni */
      object-position: right; /* Mostra la parte sinistra dell'immagine */
}


.sfondo-img {
  position: relative;
  background-size: cover;
  background-position: center;
  height: 700px;  /* Imposta un'altezza per la card */
}

.sfondo-img .card-img-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 1;
  padding: 20px;
  box-sizing: border-box;
}

@media (max-width: 768px) {
  .card-img-overlay {
      padding: 15px;  /* Ajustiamo il padding per schermi piccoli */
  }

  .sfondo-img {
  width: 100%;
  height: 250px;  /* Imposta un'altezza per la card */
}
}

.sfondo-img-2 {
  position: relative;
  background-size: cover;
  background-position: top left !important;
  height: 900px;
  width: 100%;
}

.sfondo-img-2 .card-img-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 1;
  padding: 20px;
  box-sizing: border-box;
}

@media (max-width: 768px) {
  .card-img-overlay {
      padding: 15px;  /* Ajustiamo il padding per schermi piccoli */
  }

  .sfondo-img-2 {
  width: 100%;
  height: 250px;  /* Imposta un'altezza per la card */
}
}

#whatsapp-button {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;
  border: none;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  transition: all 0.3s ease;
  overflow: hidden; /* Nasconde il testo finché non viene espanso */
}

#whatsapp-button {
  background-color: #DA4E41;
  color: white;
  border: 1px solid white;
  right: 80px;
  border-radius: 5px;
  padding: 0 10px; /* Padding dinamico */
  height: 50px; /* Altezza fissa */
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 50px; /* Larghezza iniziale */
  max-width: 50px; /* Larghezza iniziale */
  transition: max-width 0.3s ease; /* Transizione fluida della larghezza */
}

#whatsapp-button img {
  width: 24px;
  height: 24px;
  margin-right: 10px; /* Spazio tra immagine e testo */
  transition: all 0.3s ease;
}

#whatsapp-button p {
  margin: 0;
  font-size: 14px;
  line-height: 1;
  white-space: nowrap;
  opacity: 0; /* Testo inizialmente nascosto */
  visibility: hidden; /* Nasconde il testo */
  transition: all 0.3s ease;
  transform: translateX(-10px); /* Testo spostato a sinistra inizialmente */
}

#whatsapp-button:hover {
  max-width: 250px; /* Larghezza massima in hover */
}

#whatsapp-button:hover p {
  opacity: 1; /* Mostra il testo */
  visibility: visible; /* Rende il testo visibile */
  transform: translateX(0); /* Riporta il testo nella posizione originale */
}
