/* Importa Google Fonts */
/* Importa Google Fonts */
/* Importa Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');
/* Variabili di colori personalizzati (Grigi caldi) */ :root {
  --bs-gray-lightest: #f7f4f2;
  --bs-gray-lighter: #e9e6e3;
  --bs-gray-light: #d3cec9;
  --bs-gray: #b8b3ad;
  --bs-gray-dark: #8e8a86;
  --bs-gray-darker: #5c5955;
  --bs-accent-color: #a89f97;
  --bs-text-color: #333;
}
/* Tipografia */
body {
  font-family: 'Raleway', sans-serif;
  color: var(--bs-text-color);
  background-color: var(--bs-gray-lightest);
  line-height: 1.6;
}
/* Tipografia per i titoli (Cinzel con peso non troppo bold) */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Raleway', sans-serif;
  font-weight: 500;
  color: var(--bs-gray-darker);
  letter-spacing: 1px;
  margin-top: 0;
}
h1 {
  font-family: 'Cinzel', serif;
  font-weight: 400;
}
h4 {
  text-transform: uppercase;
}
.display-4 {
font-size:40px
}
/* Paragrafi e testi generali */
p, li, a, label, input, .btn {
  font-family: 'Raleway', sans-serif;
  font-weight: 300;
  color: var(--bs-text-color);
}

/*.form-control::-webkit-input-placeholder, .form-control:-ms-input-placeholder, .form-control::-moz-placeholder,  .form-control::placeholder*/
/* Colori per i link */
a {
  text-decoration: none;
  color: var(--bs-accent-color);
}
a:hover {
  color: var(--bs-gray-dark);
  text-decoration: underline;
}
/* Stile per pulsanti compatibile con Bootstrap */
.btn-custom {
  background-color: var(--bs-gray-dark);
  border: 1px solid var(--bs-gray-dark);
  color: white;
  padding: 10px 20px;
}
.btn-custom:hover {
  background-color: var(--bs-gray-d3cec9);
  border: 1px solid var(--bs-gray-dark);
}
a.btn-custom:hover {
  text-decoration: none
}
/* Sezioni con sfondo grigio */
.bg-gray-lightest {
  background-color: var(--bs-gray-lightest) !important;
}
.bg-gray-lighter {
  background-color: var(--bs-gray-lighter) !important;
}
.bg-gray-light {
  background-color: var(--bs-gray-light) !important;
}
.bg-gray-dark {
  background-color: var(--bs-gray-dark) !important;
}
.bg-gray-darker {
  background-color: var(--bs-gray-darker) !important;
}
/* Colori del testo */
.text-gray {
  color: var(--bs-gray) !important;
}
.text-gray-dark {
  color: var(--bs-gray-dark) !important;
}
.text-gray-darker {
  color: var(--bs-gray-darker) !important;
}
.mt-n5 {
  margin-top: -3rem;
}
/* Nav */
nav .nav-item {
  margin-left: .2rem;
  margin-right: .2rem;
}
nav .nav-item a {
  font-weight: 300 !important;
  font-family: 'Cinzel', serif;
  letter-spacing: 0.1rem;
  text-transform: uppercase
}
.navbar-brand img {
  width: 100px;
}
/* Breadcrumb */
.breadcrumb li {
  font-size: .75rem
}
/* Footer */
footer {
  border-top: 1px solid #ddd;
  background-color: var(--bs-gray-lightest);
  padding: 20px 0;
}
footer h5 {
  font-size: 1rem
}
footer p, footer li a {
  font-size: .75rem
}
footer a {
  color: var(--bs-text-color);
		text-decoration: none

}
footer a:hover {
  color: var(--bs-accent-color);
	text-decoration: none
}
footer .copyright {
  border-top: 1px solid #ddd
}
/* Allineamento del testo */
.text-center {
  text-align: center !important;
}
.text-left {
  text-align: left !important;
}
.text-right {
  text-align: right !important;
}
.mb-3 {
  margin-bottom: 1rem !important;
}
.p-4 {
  padding: 1.5rem !important;
}
/*****************/
/* Animazione per Hero */
.hero {
  opacity: 0;
  transform: translateY(30px);
  animation: heroAnimation 1s ease-out forwards;
  height: 100vh; /* L'altezza occupa tutta la viewport */
  background-size: cover;
  background-position: bottom;
  background-repeat: no-repeat;
  position: relative;
}
@keyframes heroAnimation {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Aggiungere uno sfondo scuro trasparente al testo dell'hero */
.hero .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.2); /* Sovrapposizione semi-trasparente */
  z-index: 1;
}
.hero .hero-content {
  position: relative;
  z-index: 2;
}
.hero h1, .hero p {
  color: #fff;
}
/* Responsività per dispositivi mobili */
@media (max-width: 768px) {
  .hero {
    background-position: center;
    height: 70vh; /* Imposta una altezza più ridotta su dispositivi mobili */
  }
  .hero h1 {
    font-size: 2rem; /* Riduci la dimensione del font */
  }
  .hero p {
    font-size: 1rem;
  }
  .btn {
    padding: 0.75rem 1.5rem;
    font-size: 1rem; /* Riduci la dimensione del bottone */
  }
}
/* Responsività per dispositivi mobili */
@media (min-width: 769px) (max-width: 1440px) {
  .hero {
    background-position: center;
    height: 80vh; /* Imposta una altezza più ridotta su dispositivi mobili */
  }
  .hero h1 {
    font-size: 2rem; /* Riduci la dimensione del font */
  }
  .hero p {
    font-size: 1rem;
  }
  .btn {
    padding: 0.75rem 1.5rem;
    font-size: 1rem; /* Riduci la dimensione del bottone */
  }
}
/* Overlay al passaggio del mouse */
.category-section:hover .overlay {
  background-color: rgba(0, 0, 0, 0.7); /* Più scuro al passaggio del mouse */
}
/* PAGINA DETTAGLI */
/* Definizione dell'animazione
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px); 
  }
  to {
    opacity: 1;
    transform: translateY(0); 
  }
} */
/* Stile per le card */
.product-row {
  height: 400px; /* Altezza della riga */
  margin-bottom: 15%; /* Gap del 10% tra le righe */
 /* opacity: 0;
  transform: translateY(20px); 
  animation: fadeInUp 0.5s forwards; /* Animazione di ingresso */
  display: flex;
  align-items: center;
  background-color: #f9f9f9;
}
.product-row a:hover {
  text-decoration: none !important
}
.product-row .left-column img, .product-row .right-column img {
  margin-top: -20px
}
.left-column, .right-column {
  transition: transform 0.3s; /* Transizione per l'hover */
}
.text-block {
  background-color: #D6D6D6; /* Colore di sfondo con trasparenza */
  position: relative;
  padding: 20px; /* Spaziatura interna */
  height: 100%; /* Altezza del blocco di testo */
  margin-left: -10%; /* Sovrapposizione del 10% all'immagine */
  margin-top: 10%; /* Inizio del blocco di testo 10% più in basso */
  z-index: 1; /* Per portare il blocco di testo sopra l'immagine */
}
.text-block-left {
  margin-left: -10%; /* Sovrapposizione del 10% per il blocco di testo a sinistra */
}
.text-block-right {
  margin-right: -10%; /* Sovrapposizione del 10% per il blocco di testo a destra */
}
/* Animazione hover */
.left-column:hover, .right-column:hover {
  transform: scale(1.05); /* Effetto di ingrandimento al passaggio del mouse */
}
/* DETTAGLIO PRODOTTO */
.dettaglio-introduzione .image-slider {
  position: relative;
}
.dettaglio-introduzione .text-overlay {
  background-color: #e9e6e3;
  align-items: center;
  justify-content: center;
  z-index: 100000000000;
  /* margin-left: -15%;*/
  padding: 2rem;
}
@media (min-width: 768px) {
  .dettaglio-introduzione .text-overlay {
    margin-left: -15%;
    padding: 4rem 2rem;
  }
}
.dettaglio-introduzione h2 {
  text-transform: uppercase;
}
.dettaglio-descrizione {
  margin: 0.5rem 0;
  padding: 0;
}
.dettaglio-descrizione .colonna-2 h3 {
  text-transform: uppercase;
  font-weight: 400;
  font-size: 1.2rem
}
@media (min-width: 768px) {
  .dettaglio-descrizione {
    background-color: #e9e6e3;
    margin: 1rem 2rem;
    padding: 1rem
  }
  .dettaglio-descrizione .colonna-1 {
    border-right: 1px solid #ddd
  }
}
.color-box {
  display: inline-block;
  width: 40px;
  height: 20px;
  margin-right: 10px;
}
.pdf-link {
  display: flex;
  align-items: center;
}
.pdf-link img {
  margin-right: 10px;
}
/* Animazioni per immagini emozionali */
.img-emotion {
  opacity: 0;
  transform: translateX(-100%);
  transition: all 1s ease-in-out;
}
.img-emotion-right {
  opacity: 0;
  transform: translateX(100%);
  transition: all 1s ease-in-out;
}
.visible {
  opacity: 1;
  transform: translateX(0);
}
/* Testo centrato verticalmente */
.text-centered {
  display: flex;
  align-items: center;
  height: 100%;
}
/* Testo allineato alla base */
.text-bottom {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  height: 100%;
}
