/* SFIZIO v2 block — tortona-carousel. Scoped to .tcar; pair with block.js. */
.tcar { position: relative; }
.tcar__track {
  display: flex;
  overflow-x: auto; overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  border-radius: var(--r-lg);
}
.tcar__track::-webkit-scrollbar { display: none; }

.tcar__slide {
  position: relative; flex: 0 0 100%;
  scroll-snap-align: start;
  min-height: min(72dvh, 34rem);
  margin: 0; overflow: clip;
  display: grid; align-items: end;
}
.tcar__slide img {
  position: absolute; inset: 0;
  width: 100%; height: 100%; object-fit: cover;
  filter: brightness(0.55) saturate(0.9);
}
.tcar__slide figcaption {
  position: relative; z-index: 1;
  padding: clamp(1.2rem, 4vw, 2.5rem);
  padding-top: var(--sp-8);
  background: linear-gradient(180deg, transparent, rgba(8, 6, 4, 0.72) 55%);
  color: #f6efe3;
  display: grid; gap: var(--sp-2);
}
.tcar__era {
  font-size: var(--fs-xs); font-weight: 700;
  letter-spacing: 0.22em; text-transform: uppercase;
  color: var(--dining);
}
.tcar__slide h3 { font-size: var(--fs-xl); color: #fff; }
.tcar__slide p { font-size: var(--fs-sm); max-width: 52ch; opacity: 0.92; }

.tcar__dots {
  position: absolute; right: var(--sp-4); top: var(--sp-4);
  display: flex; gap: 8px;
}
.tcar__dots button {
  width: 10px; height: 10px; border-radius: 50%;
  background: rgba(255, 255, 255, 0.35);
  transition: background var(--dur-1) var(--ease), transform var(--dur-1) var(--ease);
}
.tcar__dots button.is-on { background: #fff; transform: scale(1.25); }
