.pezzi { max-width: none; padding-inline: 0; }
.pezzi__intro {
  max-width: var(--larghezza);
  margin: 0 auto 48px;
  padding-inline: var(--margine);
  display: flex; flex-direction: column; gap: 16px;
}
.pezzi__intro p:last-child { color: var(--testo-tenue); max-width: 52ch; }

/* Binario orizzontale con aggancio, come le gallerie di Apple */
.pezzi__binario {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min(82vw, 420px);
  gap: 20px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 8px var(--margine) 32px;
  scroll-padding-inline: var(--margine);
  scrollbar-width: none;
}
.pezzi__binario::-webkit-scrollbar { display: none; }

.pezzo {
  scroll-snap-align: start;
  display: flex; flex-direction: column;
  background: var(--superficie);
  border-radius: var(--raggio);
  overflow: hidden;
  box-shadow: 0 1px 0 var(--linea), 0 30px 70px -40px rgba(143, 29, 44, 0.35);
}
.pezzo model-viewer {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  /* palco scuro: fa risaltare ogni colore di filamento, bianco compreso */
  background: radial-gradient(75% 70% at 50% 42%, #3B2A2D 0%, #1C1314 60%, #0F0A0B 100%);
  --poster-color: transparent;
  --progress-bar-color: var(--rosso);
}
.pezzo__testo { display: flex; flex-direction: column; gap: 10px; padding: 24px 26px 28px; }
.pezzo__etichetta { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--rosso); }
.pezzo h3 { font-size: 1.45rem; }
.pezzo p { color: var(--testo-tenue); font-size: 0.98rem; }
.pezzo dl { display: grid; grid-template-columns: auto 1fr; gap: 4px 14px; margin: 8px 0 0; font-size: 0.88rem; }
.pezzo dt { color: var(--grigio-chiaro); }
.pezzo dd { margin: 0; font-weight: 600; font-variant-numeric: tabular-nums; }
