/* Rifiniture finali: contenuti interni, recensioni e allineamento stabile header */

/* Mantiene identico l'asse orizzontale anche nelle pagine più corte,
   evitando lo spostamento causato dalla comparsa/scomparsa della scrollbar. */
@media(min-width:981px){
  html{
    overflow-y:scroll!important;
    scrollbar-gutter:stable!important;
  }
}

/* CHI SONO — il box esterno resta invariato; si raccoglie solo il contenuto. */
body.page-home .about > .wrap.about-shell{
  grid-template-columns:minmax(0,330px) minmax(0,630px)!important;
  justify-content:center!important;
  gap:52px!important;
  padding:42px 54px!important;
}
body.page-home .about-visual{
  width:100%!important;
  max-width:330px!important;
  justify-self:center!important;
}
body.page-home .about-photo{
  width:100%!important;
  max-width:330px!important;
  margin-inline:auto!important;
}
body.page-home .about-content{
  width:100%!important;
  max-width:630px!important;
  justify-self:center!important;
  padding:10px 4px!important;
}
body.page-home .about-content h2{
  font-size:clamp(33px,3.2vw,42px)!important;
}
body.page-home .about-content .about-lead{
  font-size:16.5px!important;
  line-height:1.58!important;
}
body.page-home .about-content p{
  font-size:15px!important;
  line-height:1.64!important;
}

/* RECENSIONI — il box esterno non cambia; le schede diventano più strette e alte. */
body.page-home #testimonianze > .wrap.testimonials-shell{
  padding:42px 46px 40px!important;
}
body.page-home .testimonials-shell .section-head{
  max-width:700px!important;
  margin-inline:auto!important;
}
body.page-home .testimonials-shell .review-badges{
  width:min(100%,560px)!important;
  margin-inline:auto!important;
  justify-content:center!important;
}
body.page-home .testimonials-shell .testi-grid{
  width:min(100%,970px)!important;
  max-width:970px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
}
body.page-home .testimonials-shell .testi-card{
  min-height:242px!important;
  padding:28px 23px!important;
}
body.page-home .testimonials-shell .testi-card p{
  font-size:15px!important;
  line-height:1.62!important;
}
body.page-home .testimonials-shell .reviews-source{
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

@media(max-width:1120px){
  body.page-home .about > .wrap.about-shell{
    grid-template-columns:minmax(0,310px) minmax(0,590px)!important;
    gap:40px!important;
    padding:38px 42px!important;
  }
  body.page-home .about-visual,
  body.page-home .about-photo{max-width:310px!important}
  body.page-home .about-content{max-width:590px!important}
  body.page-home .testimonials-shell .testi-grid{
    width:min(100%,900px)!important;
    max-width:900px!important;
    gap:18px!important;
  }
}

@media(max-width:980px){
  body.page-home .about > .wrap.about-shell{
    grid-template-columns:1fr!important;
    gap:26px!important;
    padding:30px!important;
  }
  body.page-home .about-visual,
  body.page-home .about-photo{max-width:330px!important}
  body.page-home .about-content{max-width:670px!important;padding:4px!important}
  body.page-home .testimonials-shell .testi-grid{
    width:min(100%,620px)!important;
    max-width:620px!important;
    grid-template-columns:1fr!important;
  }
  body.page-home .testimonials-shell .testi-card{
    min-height:220px!important;
  }
}

@media(max-width:640px){
  /* Manteniamo gli stessi margini esterni del sito, restringendo solo il contenuto interno. */
  body.page-home .about > .wrap.about-shell{
    padding:18px!important;
    gap:22px!important;
  }
  body.page-home .about-visual,
  body.page-home .about-photo{
    width:min(100%,292px)!important;
    max-width:292px!important;
    margin-inline:auto!important;
  }
  body.page-home .about-content{
    max-width:100%!important;
    padding:6px 3px 8px!important;
  }
  body.page-home .about-content h2{font-size:30px!important}
  body.page-home .about-content .about-lead{font-size:15.8px!important}
  body.page-home .about-content p{font-size:14.8px!important}

  body.page-home #testimonianze > .wrap.testimonials-shell{padding:24px 18px!important}
  body.page-home .testimonials-shell .section-head{
    width:100%!important;
    max-width:100%!important;
  }
  body.page-home .testimonials-shell .review-badges{
    width:100%!important;
    max-width:100%!important;
  }
  body.page-home .testimonials-shell .testi-grid{
    width:100%!important;
    max-width:100%!important;
  }
  body.page-home .testimonials-shell .testi-card{
    width:100%!important;
    max-width:100%!important;
    min-height:230px!important;
    padding:25px 20px!important;
  }
}
