
.prezzo { display: grid; grid-template-columns: repeat(var(--colonne), minmax(0, 1fr)); gap: 48px var(--spazio-griglia); align-items: start; }
.prezzo > :first-child { grid-column: var(--blocco-1); }
.prezzo > :last-child { grid-column: var(--blocco-2); }
@media (min-width: 960px) { .prezzo > :first-child { position: sticky; top: 112px; } }
.rassicurazioni { display: grid; gap: 14px; margin: 26px 0 0; padding: 0; list-style: none; }
.rassicurazioni li { display: flex; align-items: center; gap: 14px; font-size: 1.0625rem; }

.stampante { position: relative; z-index: 2; height: 16px; margin-inline: -6px; border-radius: var(--raggio-pillola); background: var(--nero); box-shadow: inset 0 -5px 0 #2E2E2E, 0 6px 12px -6px rgba(20, 20, 20, 0.5); }
.sezione--scura .stampante { box-shadow: inset 0 -5px 0 #2E2E2E, 0 0 0 1px var(--linea-su-scuro); }
.uscita { margin: -8px -14px 0; padding: 0 14px 28px; overflow: hidden; }
.ombra-carta { filter: var(--ombra-carta); }
.scontrino {
  --dente: 14px;
  padding: 36px clamp(18px, 4vw, 34px) 40px;
  background: var(--bianco);
  color: var(--testo);
  font-family: var(--font-mono);
  font-size: var(--misura-dati);
  line-height: 1.5;
  -webkit-mask:
    conic-gradient(from 135deg at top, #0000, #000 1deg 89deg, #0000 90deg) top / var(--dente) 51% repeat-x,
    conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) bottom / var(--dente) 51% repeat-x;
  mask:
    conic-gradient(from 135deg at top, #0000, #000 1deg 89deg, #0000 90deg) top / var(--dente) 51% repeat-x,
    conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) bottom / var(--dente) 51% repeat-x;
}
.scontrino__testa { padding-bottom: 16px; border-bottom: 2px dashed var(--linea-forte); text-align: center; }
.scontrino__ditta { font-size: 1.0625rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.scontrino__testa p + p { color: var(--testo-2); font-size: 0.875rem; }
.scontrino table { width: 100%; margin-top: 12px; border-collapse: collapse; }
.scontrino th, .scontrino td { padding: 5px 0; font-weight: 400; text-align: left; vertical-align: baseline; }
.scontrino td { width: 1%; padding-left: 12px; text-align: right; white-space: nowrap; }
.scontrino small { display: block; color: var(--testo-2); font-size: 0.875rem; font-weight: 400; }
.scontrino .voce-forte th, .scontrino .voce-forte td { padding-top: 8px; font-size: 1.0625rem; font-weight: 700; }
.scontrino .inclusa th { padding-left: 14px; color: var(--testo-2); }
.scontrino .inclusa .bi { color: var(--rosso); font-size: 1.125rem; }
.scontrino .gruppo th { padding-top: 16px; border-top: 2px dashed var(--linea-forte); font-size: 0.875rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.scontrino tfoot th, .scontrino tfoot td { padding-top: 14px; border-top: 4px double var(--testo); font-size: clamp(1.0625rem, 0.6vw + 0.95rem, 1.25rem); font-weight: 700; }
.scontrino tfoot td { color: var(--rosso-scuro); }
.scontrino__piede { margin-top: 18px; padding-top: 14px; border-top: 2px dashed var(--linea-forte); color: var(--testo-2); font-size: 0.875rem; text-align: center; }
.scontrino__saluto { margin-top: 10px; font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.2em; text-align: center; text-transform: uppercase; }

@media (prefers-reduced-motion: no-preference) {
  .uscita--in-attesa .ombra-carta { transform: translateY(-102%); }
  .uscita--stampata .ombra-carta { transition: transform var(--durata-stampa) cubic-bezier(0.2, 0.75, 0.25, 1); }
}
