/* Frontend Carousel */
.tw-wb-carousel { position:relative; width:100%; }
.tw-wb-stage { width:100%; background:#fff; overflow:hidden; position:relative; }
.tw-wb-slide { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; opacity:0; transition:opacity .35s ease; pointer-events:none; }
.tw-wb-slide.active { opacity:1; pointer-events:auto; }
.tw-wb-slide a { display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
.tw-wb-slide img { max-width:100%; max-height:100%; object-fit:contain; background:#fff; display:block; }
.tw-wb-nav { position:absolute; top:50%; transform:translateY(-50%); width:40px; height:40px; border-radius:999px; border:0; background:rgba(0,0,0,.35); color:#fff; cursor:pointer; }
.tw-wb-nav:hover{ background:rgba(0,0,0,.55); }
.tw-wb-nav.prev { left:10px; } .tw-wb-nav.next { right:10px; }
.tw-wb-dots { position:absolute; left:0; right:0; bottom:8px; display:none !important; gap:6px; justify-content:center; }
.tw-wb-dot { width:8px; height:8px; border-radius:50%; background:rgba(0,0,0,.2); cursor:pointer; }
.tw-wb-dot.active { background:#111; }
@media (pointer:coarse){ .tw-wb-nav{ display:none; } }
