/* ── Wrapper ── */
.tcw-wrap{position:relative;overflow:hidden}
.tcw-wrap *,.tcw-wrap *::before,.tcw-wrap *::after{box-sizing:border-box}

/* ── Title ── */
.tcw-title{margin:0}

/* ── Slides container ── */
.tcw-slides{position:relative;overflow:hidden}
.tcw-slide{position:absolute;top:0;left:0;width:100%;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s ease}
.tcw-slide.tcw-active{position:relative;opacity:1;visibility:visible}

/* ── Stars ── */
.tcw-stars{display:inline-flex;gap:2px}
.tcw-star{position:relative;display:inline-block;overflow:hidden;line-height:1}
.tcw-star-full{opacity:1}
.tcw-star-empty{opacity:.25}
.tcw-star-half{position:relative;display:inline-block}
.tcw-star-half::after{content:"";position:absolute;top:0;right:0;width:50%;height:100%;background:inherit;opacity:.25}

/* ── Quote ── */
.tcw-quote{margin:0}

/* ── Avatar ── */
.tcw-avatar{border-radius:50%!important;object-fit:cover;display:block;margin:0 auto;aspect-ratio:1/1}

/* ── Author ── */
.tcw-author-name{margin:0}
.tcw-author-location{margin:0}

/* ── Arrows ── */
.tcw-arrows{position:absolute;top:50%;left:0;right:0;display:flex;justify-content:space-between;pointer-events:none;transform:translateY(-50%)}
.elementor-widget-testimonial_carousel button.tcw-arrow,
.elementor-widget-testimonial_carousel button.tcw-arrow:hover,
.elementor-widget-testimonial_carousel button.tcw-arrow:focus,
.elementor-widget-testimonial_carousel button.tcw-arrow:active,
.elementor-widget-testimonial_carousel button.tcw-arrow:focus-visible,
body button.tcw-arrow,
body button.tcw-arrow:hover,
body button.tcw-arrow:focus,
body button.tcw-arrow:active{background:transparent!important;background-color:transparent!important;background-image:none!important;border:none!important;border-color:transparent!important;cursor:pointer;padding:8px!important;display:inline-flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;outline:none!important;box-shadow:none!important;color:inherit!important}
.tcw-arrow:hover{opacity:.6}
.tcw-arrow svg{display:block}

/* ── Dots ── */
.tcw-dots{display:flex;justify-content:center;gap:8px}
.tcw-dot{width:8px;height:8px;border-radius:50%;border:none;cursor:pointer;padding:0;transition:opacity .2s;-webkit-tap-highlight-color:transparent;outline:none}
.tcw-dot.tcw-dot-active{opacity:1}
.tcw-dot:not(.tcw-dot-active){opacity:.35}