/* ═══════════════════════════════════════════════════════════════
   ADO LEGAL — HOME (29 maggio 2026 · hero-static-fix)
   Regole per:
   - Sezione "Quando interveniamo"
   - Hero CTAs primaria/secondaria
   
   NOTA: tutte queste regole sono ANCHE inline nel <head> di
   index.html come ridondanza difensiva contro 404.
   ═══════════════════════════════════════════════════════════════ */

/* ── HERO STATICA ── */
.home-hero{position:relative;overflow:hidden}
.home-hero-bg{position:absolute;inset:0;z-index:0}
.home-hero-bg picture,
.home-hero-bg picture img,
.home-hero-bg img{display:block;width:100%;height:100%;object-fit:cover}
.home-hero-content{position:relative;z-index:2}

/* ── HERO CTAs ── */
.home-hero-ctas{
  display:flex;
  flex-wrap:wrap;
  gap:1rem 1.6rem;
  margin-top:2.6rem;
  align-items:center;
}
.home-cta-primary{
  display:inline-block;
  padding:1.1rem 2.3rem;
  font-family:var(--sans);
  font-size:0.58rem;
  font-weight:500;
  letter-spacing:0.32em;
  text-transform:uppercase;
  color:#FDFAF4;
  background:rgba(196,162,74,0.92);
  border:1px solid rgba(196,162,74,0.92);
  text-decoration:none;
  border-radius:0;
  transition:background 220ms ease,color 220ms ease,border-color 220ms ease,transform 180ms ease;
}
.home-cta-primary:hover{
  background:transparent;
  color:rgba(253,250,244,0.96);
  border-color:rgba(253,250,244,0.55);
  transform:translateY(-1px);
}
.home-cta-secondary{
  display:inline-flex;
  align-items:center;
  gap:0.6rem;
  padding:1.1rem 0;
  font-family:var(--sans);
  font-size:0.58rem;
  font-weight:400;
  letter-spacing:0.30em;
  text-transform:uppercase;
  color:rgba(253,250,244,0.78);
  text-decoration:none;
  border-bottom:1px solid rgba(253,250,244,0.20);
  transition:color 220ms ease,border-color 220ms ease;
}
.home-cta-secondary:hover{
  color:rgba(253,250,244,1);
  border-bottom-color:rgba(196,162,74,0.8);
}
.home-cta-secondary::after{
  content:'→';
  font-family:var(--serif);
  font-size:0.9rem;
  letter-spacing:0;
  transition:transform 220ms ease;
}
.home-cta-secondary:hover::after{
  transform:translateX(3px);
}

@media (max-width:720px){
  .home-hero-ctas{
    gap:0.8rem;
    margin-top:2rem;
    flex-direction:column;
    align-items:flex-start;
  }
}

/* ── SEZIONE QUANDO INTERVENIAMO ── */
.when-section{
  max-width:calc(var(--w) + 6rem);
  margin:0 auto;
  padding:clamp(72px,8vw,120px) 3rem;
}
.when-section .section-label{margin-bottom:1.6rem}
.when-intro{
  font-family:var(--body);
  font-size:1.05rem;
  font-weight:300;
  line-height:1.78;
  color:var(--muted);
  max-width:62ch;
  margin-bottom:5rem;
  letter-spacing:0.003em;
}
.when-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
  border-top:1px solid var(--border);
}
.when-card{
  padding:2.6rem 1.6rem;
  border-bottom:1px solid var(--border);
  border-right:1px solid var(--border);
  display:flex;
  flex-direction:column;
  min-height:260px;
}
.when-card:last-child{border-right:none}
.when-card:first-child{padding-left:0}
.when-card-num{
  display:block;
  font-family:var(--sans);
  font-size:0.56rem;
  letter-spacing:0.30em;
  text-transform:uppercase;
  color:var(--accent);
  font-weight:400;
  margin-bottom:auto;
  padding-bottom:3rem;
}
.when-card-title{
  font-family:var(--serif);
  font-size:1.18rem;
  font-weight:400;
  line-height:1.28;
  letter-spacing:-0.008em;
  color:var(--hero);
  margin-bottom:0.9rem;
  max-width:24ch;
}
.when-card-text{
  font-family:var(--body);
  font-size:0.92rem;
  font-weight:300;
  line-height:1.74;
  color:var(--muted);
  max-width:38ch;
  letter-spacing:0.003em;
  margin:0;
}

/* tablet */
@media (max-width:1180px){
  .when-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .when-card{min-height:220px;padding:2.4rem 1.6rem}
  .when-card:nth-child(2n){border-right:none}
  .when-card:nth-child(odd){border-right:1px solid var(--border)}
}

/* mobile */
@media (max-width:680px){
  .when-section{padding:64px 1.5rem}
  .when-intro{margin-bottom:3.2rem;font-size:0.98rem}
  .when-grid{grid-template-columns:1fr}
  .when-card{min-height:auto;padding:2rem 0;border-right:none !important}
  .when-card:first-child{padding-top:2rem}
  .when-card-num{padding-bottom:1.4rem}
  .when-card-title{font-size:1.1rem}
}
