/* ============================================================
   Pagine: Home, Wood Packaging Coatings
   ============================================================ */

.section-cta { margin-top: var(--s-8); }
.statement { margin-top: var(--s-5); font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.5rem); font-weight: var(--w-light); line-height: 1.3; color: var(--ink); letter-spacing: -0.01em; max-width: 30ch; }
.statement + p { margin-top: var(--s-6); }

/* ---- Home: chi siamo ---- */
@media (min-width: 768px) {
  .home-intro__photo { margin-top: var(--s-9); }   /* foto sfalsata rispetto al testo */
}

/* ---- Home: prodotti ---- */
.home-products__lead { margin-bottom: var(--s-7); }

/* ---- Home: R&D ---- */
.home-rd .grid { align-items: center; }
.home-rd__media { position: relative; }
.home-rd__photo { aspect-ratio: 4 / 5; }
.home-rd__photo2 { display: none; }
@media (min-width: 768px) {
  .home-rd__media { padding-bottom: var(--s-9); }
  .home-rd__photo { width: 82%; }
  .home-rd__photo2 { display: block; position: absolute; right: 0; bottom: 0; width: 48%; aspect-ratio: 1; outline: var(--s-3) solid var(--paper); }
}
.home-rd__text > * + * { margin-top: var(--s-5); }
.home-rd__text .h1 { font-size: var(--fs-h1); }

/* ---- Home: rete globale (mappa stilizzata) ---- */
.home-network .body p { color: var(--on-dark); }
.home-network__map { position: relative; margin-block: var(--s-8) var(--s-8); }
.dotmap { width: 100%; height: auto; display: block; }
.dotmap__land { fill: rgba(208,220,235,.2); }
.dotmap__licensee { fill: var(--slate); }
.dotmap__partner { fill: #4f86b8; }
.dotmap__direct { fill: var(--blue-on-dark); }
/* sede centrale: un solo impulso lento, niente altro si muove */
.map-hq { position: absolute; left: var(--x); top: var(--y); width: .75rem; height: .75rem; margin: -.375rem 0 0 -.375rem; background: #fff; }
.map-hq::after { content: ""; position: absolute; inset: -.5rem; border: 1px solid #fff; opacity: 0; }
@media (prefers-reduced-motion: no-preference) { .map-hq::after { animation: hq-pulse 2.8s var(--ease-out) infinite; } }
@keyframes hq-pulse { 0% { opacity: .8; transform: scale(.4); } 100% { opacity: 0; transform: scale(1.8); } }
.map-hq__label { position: absolute; left: 1.5rem; top: 50%; transform: translateY(-50%); white-space: nowrap; font-size: var(--fs-eyebrow); font-weight: var(--w-medium); letter-spacing: .14em; text-transform: uppercase; color: #fff; padding: .35rem .6rem; background: var(--navy-ink); }
@media (max-width: 767px) { .map-hq__label { display: none; } }

.net-summary { display: grid; grid-template-columns: 1fr; border-top: 1px solid var(--line-on-dark); }
@media (min-width: 900px) { .net-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--gutter); } }
.net-summary__item { display: grid; grid-template-columns: auto 1fr; gap: var(--s-1) var(--s-5); align-items: baseline; padding-block: var(--s-5); border-bottom: 1px solid var(--line-on-dark); }
@media (min-width: 900px) { .net-summary__item { border-bottom: 0; } }
.net-summary__count { grid-row: span 2; font-size: var(--fs-stat); font-weight: var(--w-light); line-height: 1; color: #fff; font-variant-numeric: tabular-nums; }
.net-summary__label { display: inline-flex; align-items: center; gap: .6em; font-size: var(--fs-eyebrow); font-weight: var(--w-medium); letter-spacing: .14em; text-transform: uppercase; color: var(--on-dark); }
.net-summary__label::before { content: ""; width: .6rem; height: .6rem; flex: none; }
.net-summary__item--direct .net-summary__label::before { background: var(--blue-on-dark); }
.net-summary__item--partner .net-summary__label::before { background: #4f86b8; }
.net-summary__item--licensee .net-summary__label::before { background: var(--slate); }
.net-summary__countries { font-size: var(--fs-small); color: var(--on-dark-muted); line-height: 1.5; }

/* ---- Home: ESG ---- */
.home-esg .grid { align-items: start; }
.pillars { border-top: 1px solid var(--line); }
.pillar { display: grid; grid-template-columns: 1fr; gap: var(--s-1) var(--s-4); padding-block: var(--s-5); border-bottom: 1px solid var(--line); }
.pillar__name { font-size: var(--fs-h3); font-weight: var(--w-book); color: var(--ink); }
.pillar__triad { font-size: var(--fs-small); color: var(--muted); letter-spacing: .02em; }
@media (min-width: 1024px) {
  .pillar { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: baseline; }
}
.home-esg__kpi { margin-top: var(--s-9); }
.home-esg__kpi .stats { margin-top: var(--s-6); }

/* ---- Fascia di chiusura con foto ---- */
.band { position: relative; isolation: isolate; overflow: hidden; color: #fff; background: var(--navy-ink); min-height: clamp(28rem, 60vw, 44rem); display: grid; align-items: end; }
.band__media { position: absolute; inset: 0; z-index: -2; }
.band__media img { width: 100%; height: 100%; object-fit: cover; object-position: 85% 50%; transform: scaleX(-1); }
.band::before { content: ""; position: absolute; inset: 0; z-index: -1; background:
  linear-gradient(90deg, rgba(10,30,51,.94) 0%, rgba(10,30,51,.75) 38%, rgba(10,30,51,0) 70%),
  linear-gradient(0deg, rgba(10,30,51,.6) 0%, rgba(10,30,51,0) 50%); }
@media (max-width: 767px) { .band::before { background: linear-gradient(0deg, rgba(10,30,51,.94) 0%, rgba(10,30,51,.55) 60%, rgba(10,30,51,.3) 100%); } }
.band__inner { padding-block: var(--s-9); display: grid; gap: var(--s-6); justify-items: start; }
.band__title { color: #fff; max-width: 16ch; }

/* ============================================================
   Pagina prodotto
   ============================================================ */
.hero--page { min-height: min(88dvh, 52rem); }
.hero__title--wide { max-width: 18ch; }
.crumb { font-size: var(--fs-label); font-weight: var(--w-medium); letter-spacing: .04em; color: var(--on-dark); margin-bottom: var(--s-6); }
.crumb a { border-bottom: 1px solid var(--line-on-dark); padding-bottom: 2px; transition: border-color var(--t-fast) var(--ease); }
.crumb a:hover { border-color: #fff; }
.crumb a::after { content: " /"; color: var(--on-dark-muted); }
.hero--page .eyebrow + .hero__title { margin-top: var(--s-5); }
.hero__tags { display: flex; flex-wrap: wrap; align-items: center; row-gap: var(--s-2); margin-top: var(--s-7); }
.hero__tags li { font-size: var(--fs-eyebrow); font-weight: var(--w-medium); letter-spacing: var(--tr-eyebrow); text-transform: uppercase; color: rgba(255,255,255,.78); cursor: default; }
.hero__tags li + li::before { content: ""; display: inline-block; width: 1px; height: .9em; margin: 0 var(--s-3); background: rgba(255,255,255,.35); vertical-align: -.1em; }
.hero--page::before { background:
  linear-gradient(180deg, rgba(10,30,51,.75) 0%, rgba(10,30,51,0) 11rem),
  linear-gradient(90deg, rgba(10,30,51,.92) 0%, rgba(10,30,51,.7) 45%, rgba(10,30,51,.15) 80%),
  linear-gradient(0deg, rgba(10,30,51,.6) 0%, rgba(10,30,51,0) 45%); }
@media (max-width: 767px) {
  .hero--page::before { background: linear-gradient(0deg, rgba(10,30,51,.95) 0%, rgba(10,30,51,.8) 60%, rgba(10,30,51,.6) 100%); }
}

.wpc-stats { margin-top: var(--s-9); }
.wpc-stats .stats { margin-top: var(--s-5); }
@media (min-width: 768px) { .stats--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .stats--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .stats--3 { max-width: 75%; } }

.wpc-benefits__photo { align-self: start; }
@media (min-width: 768px) { .wpc-benefits__photo { position: sticky; top: calc(var(--header-h) + var(--s-5)); } }
.benefits { margin-top: var(--s-7); display: grid; grid-template-columns: 1fr; gap: 0 var(--gutter); }
@media (min-width: 640px) { .benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.benefit { border-top: 1px solid var(--line); padding-block: var(--s-5) var(--s-6); }
.benefit__n { display: block; font-size: 2rem; font-weight: var(--w-light); line-height: 1; color: var(--blue-text); font-variant-numeric: tabular-nums; }
.benefit__title { margin-top: var(--s-4); font-weight: var(--w-demi); color: var(--ink); }
.benefit__text { margin-top: var(--s-1); font-size: var(--fs-small); color: var(--muted); }

.wpc-energy { display: grid; gap: var(--s-8); align-content: start; }
.roadmap__rows { margin-top: var(--s-5); display: grid; gap: var(--s-4); }
.roadmap__row { display: grid; grid-template-columns: 3.5rem 1fr 3.5rem; align-items: center; gap: var(--s-4); }
.roadmap__year { font-size: var(--fs-small); font-weight: var(--w-medium); color: var(--ink); font-variant-numeric: tabular-nums; }
.roadmap__bar { height: .625rem; background: var(--line-soft); overflow: hidden; }
.roadmap__bar span { display: block; height: 100%; width: var(--w); background: var(--green); transform-origin: left; }
@media (prefers-reduced-motion: no-preference) {
  .js .roadmap .roadmap__bar span { transform: scaleX(0); transition: transform 1200ms var(--ease-out) 200ms; }
  .js .roadmap.is-in .roadmap__bar span { transform: none; }
  .js .roadmap.is-in .roadmap__row:nth-child(2) .roadmap__bar span { transition-delay: 350ms; }
  .js .roadmap.is-in .roadmap__row:nth-child(3) .roadmap__bar span { transition-delay: 500ms; }
}
.roadmap__pct { font-size: var(--fs-h3); font-weight: var(--w-light); color: var(--ink); text-align: right; font-variant-numeric: tabular-nums; }

.wpc-docs__lead { margin-bottom: var(--s-7); }

.cta-band { border-top: 1px solid var(--line); }
.cta-band__inner { display: grid; gap: var(--s-6); justify-items: start; }
@media (min-width: 1024px) { .cta-band__inner { grid-template-columns: 1fr auto; align-items: end; } }
.cta-band__title { max-width: 20ch; color: var(--ink); }
.cta-band__title span { color: var(--blue-text); }

/* ---- Pagina "in costruzione" ---- */
.soon { padding-top: calc(var(--header-h) + var(--section)); min-height: 70vh; }
