/* ===== Bento grid (5 card) ===== */
.numbers-section{padding-block:4rem}
.bg-light{background-color:var(--cl-ivory)}
.bento-grid{
  display:grid;
  grid-template-columns:1fr 3fr 1fr;
  grid-template-rows:300px;
  gap:10px;
  grid-template-areas:
    "co2 co2 chimici"
    "rifiuti numbers chimici"
    "rifiuti acqua acqua";
}
.co2{grid-area:co2}
.chimici{grid-area:chimici}
.rifiuti{grid-area:rifiuti}
.numbers{grid-area:numbers;min-height:120px}
.acqua{grid-area:acqua;min-height:300px}
.text-black{color:#000}

.card-stat{
  position:relative;isolation:isolate;overflow:hidden;
  display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
  border-radius:12px;padding:clamp(1rem,2vw,2rem);color:#fff;font-family:"Aeonik",sans-serif;
}
.card-stat::before{
  content:"";position:absolute;inset:0;z-index:0;
  background-image:linear-gradient(180deg,rgba(0,77,78,.35) 0%,rgba(0,0,0,.55) 100%),var(--img);
  background-size:cover;background-position:center;transition:transform .4s ease;
}
.card-stat:hover::before{transform:scale(1.05)}
.card-stat>*{position:relative;z-index:1}
.bg-gradient::before{background:#f2f2ec}
.revenue,.otd{--ratio:1/1}
.collaborators{--ratio:4/1}
.card-stat small{font-size:.875rem;opacity:.8;margin-bottom:.25rem;color:#fff}
.card-stat h2,.card-stat h3{font-size:clamp(1.5rem,1.25vw + 1.1rem,2rem);font-weight:700;margin:0}
.card-stat p{font-size:clamp(.9rem,.75vw + .8rem,1rem);font-weight:300;max-width:28ch;margin-top:.75rem}

/* ===== Pagina Sostenibilità ===== */
.pg-sostenibilita .hero::before{background:rgba(0,0,0,.35)}
.pg-sostenibilita .pg-sostenibilita__intro{position:relative;isolation:isolate}
.pg-sostenibilita .pg-sostenibilita__intro::before{
  content:"";position:absolute;inset:auto 0 0 auto;width:min(60vw,860px);height:100%;
  background:url("/wp-content/themes/themenexus/images/sostenibilita/sostenibilita.svg") right top/cover no-repeat;
  opacity:.4;z-index:0;pointer-events:none;
}
.pg-sostenibilita .pg-sostenibilita__intro::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(90deg,var(--cl-stone) 0%,color-mix(in oklab,var(--cl-stone) 100%,transparent) 55%,transparent 100%);
}
.pg-sostenibilita .pg-sostenibilita__intro>.container{position:relative;z-index:1}

.pg-sostenibilita .pg-sostenibilita__quality{position:relative;isolation:isolate;background:var(--cl-stone)}
.pg-sostenibilita .pg-sostenibilita__quality::before{
  content:"";position:absolute;inset:0 0 0 auto;width:min(60vw,860px);
  background:url("/wp-content/themes/themenexus/images/sostenibilita/qualita-certificazioni.svg") right top/cover no-repeat;
  opacity:.4;z-index:0;pointer-events:none;
}
.pg-sostenibilita .pg-sostenibilita__quality::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(90deg,var(--cl-stone) 0%,color-mix(in oklab,var(--cl-stone) 100%,transparent) 55%,transparent 100%);
}
.pg-sostenibilita .pg-sostenibilita__quality .container{position:relative;z-index:1}
.pg-sostenibilita .quality-copy{max-width:60ch;font-size:clamp(1rem,.6vw + .9rem,1.125rem);line-height:1.55}
.pg-sostenibilita .quality-copy p{margin-block:1.5rem}

.pg-sostenibilita .territory-grid{
  display:grid;gap:16px;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(200px,auto);
}
.pg-sostenibilita .territory-media{grid-column:2;grid-row:1/span 2}
.pg-sostenibilita .territory-card{
  position:relative;overflow:hidden;background:var(--cl-stone);
  border-radius:8px;padding:2rem;display:flex;flex-direction:column;justify-content:center;
}
.pg-sostenibilita .territory-card::before{
  content:"";position:absolute;inset:0;z-index:0;opacity:.4;
  background:url("../images/sostenibilita/strade-Piobbico.png") center/cover no-repeat;
  transition:transform .3s ease;
}
.pg-sostenibilita .territory-card>*{position:relative;z-index:1}
.pg-sostenibilita .pos-2::before,.pg-sostenibilita .pos-3::before{transform:scaleX(-1)}
.pg-sostenibilita .territory-img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.pg-sostenibilita h2.txt-soluzioni{max-width:660px}
.pg-sostenibilita .hero .reveal-up{--rev-distance:10px}
.pg-sostenibilita .bento-grid .reveal-scale{--rev-distance:12px}
.pg-sostenibilita .benefit-icon.reveal-scale{--rev-distance:8px}

/* ===== Responsive ===== */
@media (max-width:960px){
  .bento-grid{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:none;gap:24px}
  .bento-grid .co2{grid-row:1}
  .bento-grid .chimici{grid-row:2}
  .bento-grid .numbers{grid-row:3}
  .bento-grid .rifiuti{grid-row:4}
  .bento-grid .acqua{grid-row:5}
  .co2,.chimici,.rifiuti,.numbers,.acqua{grid-column:auto!important;aspect-ratio:16/9;height:auto;min-height:auto}
}
@media (max-width:560px){
  .pg-sostenibilita .territory-grid{
    grid-template-columns:1fr;grid-auto-flow:row dense;grid-auto-rows:minmax(200px,auto);justify-items:stretch;align-items:stretch;gap:16px;
  }
  .pg-sostenibilita .territory-grid>*{
    width:100%;min-width:0;height:100%;min-height:100%;justify-self:stretch;align-self:stretch;
  }
  .pg-sostenibilita .territory-card{display:flex}
  .pg-sostenibilita .territory-media{display:block;grid-column: 1;}
  .pg-sostenibilita .territory-img{display:block;width:100%;height:100%;object-fit:cover;border-radius:12px}
  .pg-sostenibilita .territory-card.pos-0{grid-row:1}
  .pg-sostenibilita .territory-card.pos-1{grid-row:2}
  .pg-sostenibilita .territory-media{grid-row:3;max-height:200px}
  .pg-sostenibilita .territory-card.pos-2{grid-row:4}
  .pg-sostenibilita .territory-card.pos-3{grid-row:5}
  .pg-sostenibilita .territory-card,.pg-sostenibilita .territory-media{aspect-ratio:auto}
}

.funding-section{ margin-block: clamp(32px, 5vw, 64px); }
.funding-card{background: color-mix(in oklab, var(--cl-ivory, #F2F2EC) 96%, #fff 4%);border: 1px solid color-mix(in oklab, var(--cl-dark, #0C1618) 4%, transparent);border-radius: 16px;padding: clamp(18px, 2.6vw, 28px);box-shadow: none;}
.funding-card :is(.h3, .p, .funding-logos){ max-width: 62ch; }
.funding-card .h3{font-size: clamp(1.15rem, 2.1vw, 1.6rem);line-height: 1.2;letter-spacing: -0.01em;margin: 0 0 .75rem;}
.funding-logos li{ display:flex; align-items:center; }
@media (max-width:480px){.funding-card{ padding:16px; border-radius:16px; }.funding-logo{ height:30px; }}
.funding-card--tight{ max-width: 920px; margin-inline: auto; }
.funding-card{border: 1.5px solid color-mix(in oklab, var(--cl-dark, #0C1618) 6%, transparent);border-radius: 18px}
.funding-logos{gap: clamp(16px, 2.2vw, 22px);border-top: 1px solid color-mix(in oklab, var(--cl-dark) 4%, transparent);max-width: 62ch;padding: 1em 0 0;margin: 0;display: flex}
.funding-logo{height: clamp(28px, 3.5vw, 48px);width: auto;object-fit: contain;display: block;max-inline-size: clamp(120px, 18vw, 180px);}
