/* Multigestionale Carousel — Classic + padding + hidden broken */
.cws-mg-carousel-wrapper{
  position:relative;
  padding: 12px; /* padding all around */
}
.cws-mg-carousel .swiper-wrapper{
  padding-bottom: 8px; /* bottom air so badges don't clip */
}
.cws-mg-carousel .swiper-slide{
  padding: 6px; /* slide inner padding */
}

.cws-card{
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.cws-thumb{position:relative; aspect-ratio:4/3; background:#f5f5f5;}
.cws-thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* badges */
.cws-badge-price{
  position:absolute; right:10px; bottom:10px;
  background:rgba(0,0,0,.8); color:#fff; font-weight:700;
  padding:.35rem .5rem; border-radius:8px; font-size:14px;
}
.cws-badge-cond{
  position:absolute; left:10px; top:10px;
  background:#111; color:#fff; font-weight:700;
  padding:.25rem .5rem; border-radius:8px; font-size:12px; letter-spacing:.02em;
}
.cws-badge-cond.is-new{ background:#0ea5e9; }
.cws-badge-cond.is-used{ background:#334155; }

.cws-badge-photos{
  position:absolute; left:10px; bottom:10px;
  background:rgba(255,255,255,.95); color:#111; font-weight:700;
  padding:.25rem .45rem; border-radius:8px; font-size:12px; display:inline-flex; gap:6px; align-items:center;
  border:1px solid rgba(0,0,0,.08);
}
.cws-badge-photos svg{width:16px;height:16px; fill:#111; opacity:.9}

.cws-body{padding:12px 14px}
.cws-year{font-size:12px; color:#666; font-weight:600; letter-spacing:.02em; margin-bottom:6px}
.cws-title{
  font-size:16px; line-height:1.25; font-weight:800; text-transform:uppercase;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  margin:0 0 8px 0;
}
.cws-sep{border:0;border-top:1px solid #eee;margin:8px 0}
.cws-specs{display:flex; gap:18px; align-items:center}
.cws-spec{display:inline-flex; gap:6px; align-items:center; font-size:14px; color:#111}
.cws-spec svg{width:16px;height:16px; fill:#111; opacity:.9}

/* Hide slides flagged as broken before Swiper update removes them */
.cws-hidden-slide{ display:none !important; }

/* ---------- Fallback scroll-snap (no Swiper present) ---------- */
.cws-fallback .swiper{ overflow-x:auto; overflow-y:hidden; }
.cws-fallback .cws-scrollsnap{
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
}
.cws-fallback .cws-scrollsnap-track{
  display:flex;
  gap:20px;
  padding-bottom:8px;
}
.cws-fallback .cws-scrollsnap-slide{
  flex:0 0 calc(100% - 2px);
  scroll-snap-align: start;
}
@media (min-width:640px){
  .cws-fallback .cws-scrollsnap-slide{ flex-basis: calc(50% - 10px); }
}
@media (min-width:1024px){
  .cws-fallback .cws-scrollsnap-slide{ flex-basis: calc(33.333% - 13.34px); }
}
