/* Liora 360 Testimonials Carousel - Widget CSS */
.l360-tc{position:relative;width:100%;}
.l360-tc *{box-sizing:border-box;}

.l360-tc-swiper{
  --l360-stage-pad:56px;
  /*
    Keep overflow hidden so ONLY the center + left + right slides show.
    We add generous padding so shadows won't be clipped.
  */
  padding: 34px clamp(14px,var(--l360-stage-pad),140px) 96px;
  overflow: hidden;
}

.l360-tc .swiper-slide{height:auto; display:flex; justify-content:center;}

.l360-tc-card{
  width:100%;
  max-width:420px;
  background:#fff;
  border-radius:18px;
  padding:30px;
  box-shadow:0 18px 40px rgba(0,0,0,.08);
  transition:transform .28s ease, box-shadow .28s ease, opacity .28s ease;
  height:auto !important;
  max-height:none !important;
}

.l360-tc-head{display:flex; align-items:center; justify-content:center; gap:14px; margin-bottom:14px;}
.l360-tc-meta{display:flex; flex-direction:column; gap:4px;}
.l360-tc-name{font-size:18px; font-weight:700; line-height:1.1;}
.l360-tc-role{font-size:13px; line-height:1.2; opacity:.75;}

.l360-tc-avatar-wrap{
  width:max-content;
  padding:6px;
  border:1px solid rgba(0,0,0,.06);
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.l360-tc-avatar{
  width:56px;
  height:56px;
  border-radius:999px;
  object-fit:cover;
  display:block;
}
.l360-tc-avatar--placeholder{
  background:linear-gradient(135deg, rgba(0,0,0,.05), rgba(0,0,0,.02));
}

.l360-tc-rating{display:flex; align-items:center; justify-content:center; gap:10px; margin:10px 0 14px;}
.l360-tc-stars{display:inline-flex; align-items:center; justify-content:center; gap:4px; font-size:18px; line-height:1;}
.l360-tc-star{position:relative; display:inline-flex; width:1em; height:1em;}
.l360-tc-star svg,.l360-tc-star i{width:1em;height:1em; display:block;}
.l360-star-empty{position:absolute; inset:0; display:flex; align-items:center; justify-content:center;}
.l360-star-filled{
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  width:var(--l360-fill, 0%);
  overflow:hidden;
}
.l360-tc-rating-text{font-size:13px; opacity:.7;}

.l360-tc-text{font-size:15px; line-height:1.55; opacity:.85; margin-top:10px; position:relative;}
.l360-tc-text p{margin:0 0 10px;}
.l360-tc-text p:last-child{margin-bottom:0;}

/* Optional fade for collapsed state */
.l360-tc-fade-collapsed .l360-tc-card:not(.is-expanded) .l360-tc-text:after{
  content:'';
  position:absolute;
  left:0; right:0; bottom:0;
  height:42px;
  pointer-events:none;
  background:linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));
}

.l360-tc-readmore{
  margin-top:12px;
  background:transparent;
  border:0;
  padding:0;
  font-size:13px;
  cursor:pointer;
  text-decoration:underline;
  opacity:.85;
}
.l360-tc-readmore:hover{opacity:1;}

/* Read more icon button */
.l360-tc-readmore--icon{
  text-decoration:none;
  width:36px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  background:rgba(255,255,255,.85);
  box-shadow:0 10px 20px rgba(0,0,0,.08);
  position:relative;
}

.l360-tc-readmore--icon svg,.l360-tc-readmore--icon i{width:1em;height:1em;}
.l360-tc-readmore--icon:hover{background:#fff; box-shadow:0 12px 26px rgba(0,0,0,.10);}

/* Icon swap (open/close) */
.l360-tc-readmore .l360-icon-open,
.l360-tc-readmore .l360-icon-close{display:inline-flex; align-items:center; justify-content:center;}
.l360-tc-readmore .l360-icon-close{display:none;}
.l360-tc-card.is-expanded .l360-tc-readmore .l360-icon-open{display:none;}
.l360-tc-card.is-expanded .l360-tc-readmore .l360-icon-close{display:inline-flex;}

/* Optional rotate animation */
.l360-tc-rotate .l360-tc-readmore--icon{transition:transform .22s ease;}
.l360-tc-rotate .l360-tc-card.is-expanded .l360-tc-readmore--icon{transform:rotate(180deg);}

.l360-tc-sr{position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}

.l360-tc-pagination{position:relative; margin-top:20px;}
.l360-tc .swiper-pagination-bullet{
  width:28px; height:4px; border-radius:999px;
  background:rgba(0,0,0,.18);
  opacity:1;
}
.l360-tc .swiper-pagination-bullet-active{background:rgba(0,0,0,.7);}

/* Nav buttons */
.l360-tc-nav{
  position:absolute;
  top:50%;
  transform:translateY(-60%);
  width:42px; height:42px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  background:rgba(255,255,255,.95);
  box-shadow:0 10px 24px rgba(0,0,0,.10);
  cursor:pointer;
  z-index:5;
  display:flex; align-items:center; justify-content:center;
}
.l360-tc-prev{left:12px;}
.l360-tc-next{right:12px;}
.l360-tc-prev:before,.l360-tc-next:before{
  content:'';
  width:10px; height:10px;
  border-right:2px solid rgba(0,0,0,.65);
  border-bottom:2px solid rgba(0,0,0,.65);
  display:block;
}
.l360-tc-prev:before{transform:rotate(135deg);}
.l360-tc-next:before{transform:rotate(-45deg);}

/* Nav visibility options */
.l360-tc-nav-none .l360-tc-nav{display:none!important;}
.l360-tc-nav-prev .l360-tc-next{display:none!important;}
.l360-tc-nav-next .l360-tc-prev{display:none!important;}

/* MAIN carousel: show ONLY center + left + right */
.l360-tc-swiper.swiper-initialized .swiper-slide{opacity:0; pointer-events:none;}
.l360-tc-swiper.swiper-initialized .swiper-slide-prev,
.l360-tc-swiper.swiper-initialized .swiper-slide-next{opacity:.55; pointer-events:auto;}
.l360-tc-swiper.swiper-initialized .swiper-slide-active{opacity:1; pointer-events:auto;}
.l360-tc-swiper.swiper-initialized .swiper-slide-active .l360-tc-card{transform:translateY(-2px);}

/* Full text container in markup is hidden */
.l360-tc-full{display:none !important;}

/* Responsive */
@media (max-width: 1024px){
  .l360-tc-prev{left:10px;}
  .l360-tc-next{right:10px;}
}
@media (max-width: 767px){
  .l360-tc-nav{display:none;}
  .l360-tc-card{max-width:92vw;}
  .l360-tc-head{flex-direction:column;}
}
