.sfondo-header {
  height: 80%;
}


/* Contenitore principale: diamogli il giusto respiro */
.scopri-container {
  background-color: var(--holzhof-color-light-grey);
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 0 16%; /* Zero spazio sopra e sotto, mantieni i margini laterali */
  gap: 40px;
  align-items: center;
}

.img-scopri-container {
  width: 100%;
  /* Usa aspect-ratio per creare un rettangolo schiacciato. 
     2/1 significa che è largo il doppio rispetto all'altezza. 
     Se vuoi tagliare ancora di PIÙ, usa tipo 2.5/1 o 3/1 */
  aspect-ratio: 2 / 1; 
  overflow: hidden; /* Nasconde tutto lo spazio dell'immagine che esce da queste proporzioni */
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  margin-top: -60px;
}

/* 2. L'immagine si adatta al taglio */
.scopri-container img {
  width: 100%;
  height: 100%;
  /* Ora object-fit: cover è perfetto, perché riempie il nostro rettangolo schiacciato */
  object-fit: cover; 
  /* Centra l'immagine in modo che tagli via equamente lo spazio inutile SOPRA e SOTTO */
  object-position: top; 
  mix-blend-mode: multiply;
}

@media (max-width: 540px) {
  .img-scopri-container {
    margin-top: 0px;
  }
}

/* Colonna di destra: testo e bottone */
.scopri {
  display: flex;
  flex-direction: column;
  align-items: flex-end; /* Spinge il bottone verso destra come nell'immagine */
  text-align: left; /* Ma mantiene il testo allineato a sinistra */
  padding: 10px
}

/* Corretto l'errore di sintassi: non usare &p nel CSS normale */
.scopri p {
  width: 100%; /* Assicura che il testo prenda tutto lo spazio */
  margin-bottom: 20px; /* Crea spazio tra il testo e il bottone */
  padding: 0; 
}

.scopri p {
  margin: 0 0 15px 0; /* Solo un po' di spazio sotto verso il bottone */
}

/* Il link che contiene il bottone */
.scopri-button {
  text-decoration: none;
  /* La scala va bene se il bottone di base è troppo grande, ma togliamola se non serve */
}

/* Responsive: su mobile mettiamo tutto in colonna */
@media (max-width: 768px) {
  .scopri-container {
    grid-template-columns: 1fr;
    padding: 10px 16%; /* Riduciamo i margini laterali su mobile */
    gap: 30px;
  }
  
  .scopri {
    align-items: center; /* Su mobile il bottone sta meglio centrato */
    text-align: center; /* E anche il testo */
  }
}

.corpo {
  margin-top: 20px;
  padding-top: 2%;
  padding-bottom: 2%;
}

.intestazione {
  margin-bottom: 20px;
  padding-bottom: 1%;
}
.titolo-cards {
  display: flex;
  justify-content: center;
  text-align: center;
  position: relative;
  width: 100%;
  white-space: normal;
  left: 50%;
  transform: translateX(-50%);
  container-type: inline-size;
  margin-bottom: 10vh;
}
.cards-ferrero {
  background: var(--holzhof-color-light-grey);
  padding-left: 16%;
  padding-right: 16%;
  padding-top: 2%;
  padding-bottom: 5%;
}

.testo-cards {
  display: flex;
  flex-direction: row;
  gap: 20px;
  padding-top: 10px;

  .numero {
    font-size: 60px;
  }

  .testo {
    display: flex;
    align-self: flex-end;
    text-align: left;
  }
}
.container-materiali {
  padding-left: 16%;
  padding-right: 16%;
  padding-bottom: 5%;
}

.dynamic-grid-4 {
  display: grid;
  gap: 1rem; /* Spaziatura generosa per i bordi */
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-bottom: 3rem;
}

/* Breakpoints per il numero di colonne */
@media (min-width: 640px) {
  .dynamic-grid-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 1024px) {
  .dynamic-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.dynamic-grid.gallery-materiali {
  width: 80%;
  gap: 20px;
  margin-bottom: 1rem;
}

.single-square {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}

/* Breakpoints per il numero di colonne */
@media (min-width: 640px) {
  .dynamic-grid.gallery-materiali {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (min-width: 1024px) {
  .dynamic-grid.gallery-materiali {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.img-gallery-materiali {
  border-radius: 16px;
  margin-bottom: 10px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.img-gallery {
  width: 100%;
  border-radius: 16px;
  height: 100%;
  object-fit: cover;
  mix-blend-mode: multiply;
}


@media (max-width: 639px) {
  .dynamic-grid.gallery-materiali {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .img-gallery-materiali {
    width: 70%;
  }
}


.gallery-ferrero {
  background-color: var(--holzhof-color-light-grey);
  padding-top: 3%;
  padding-left: 10%;
  padding-right: 10%;
}
.container-pulsante {
  display: flex;
  width: 100%;
}
.pulsante-gallery {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999;
}

.testo-cards {
  display: flex;
  flex-direction: row;
  gap: 20px;
  padding-top: 10px;
  align-items: flex-start;
}

.testo-cards .numero {
  font-size: clamp(40px, 6vw, 60px) !important;
  flex-shrink: 0; /* LA MAGIA: Impedisce al testo a fianco di schiacciare il numero! */
  line-height: 0.8; /* Togli lo spazio vuoto sopra/sotto il numero */
  margin: 0;
  font-weight: bold;
}

.testo-cards .testo {
  display: flex;
  flex-direction: column;
  text-align: left;
  margin-top: 5px; /* Spinge il testo giù per l'effetto sfalsato che volevi */
}


.container-download {
    background-color: var(--holzhof-color-light-grey);
    padding-top: 3%;
    padding-left: 10%;
    display: flex;
    padding-right: 10%;
    align-items: center;
    justify-content: center;
}