/* lsm-tc- prefix: Testimonial Cards */
.lsm-tc-outer{ width:100%; }
.lsm-tc-wrap{ width:100%; }

.lsm-tc-grid{
  display:grid;
  grid-template-columns: repeat(var(--lsm-tc-cols, 3), minmax(0,1fr));
  gap: var(--lsm-tc-col-gap, 28px) var(--lsm-tc-row-gap, 28px);
}
.lsm-tc-card{
  position:relative;
  border:1px solid rgba(255,199,0,0.18);
  background: rgba(255,255,255,0.03);
  box-shadow: 0 18px 50px rgba(0,0,0,0.30);
  padding: 28px 26px;
  overflow:hidden;
  transition: transform 250ms ease, box-shadow 250ms ease, border-color 250ms ease;
  height:100%;
  display:flex;
  flex-direction:column;
}
.lsm-tc-card:hover{ transform: translateY(-6px); }
.lsm-tc-card.is-glow:hover{
  border-color: rgba(255,199,0,0.35);
  box-shadow: 0 22px 65px rgba(0,0,0,0.42);
}
.lsm-tc-quote{
  position:absolute;
  top:18px; left:18px;
  opacity:.25;
  font-size: 34px;
  line-height: 1;
}
.lsm-tc-body{ margin-top: 24px; }
.lsm-tc-text{ margin:0 0 18px; opacity:.85; line-height:1.7; }
.lsm-tc-stars{ display:flex; gap:4px; margin-top:auto; margin-bottom: 14px; }
.lsm-tc-star{ width:16px; height:16px; display:block; color: var(--lsm-tc-star, #FFC700); opacity:.95; }
.lsm-tc-star.is-empty{ opacity:.18; }
.lsm-tc-name{ margin:0 0 6px; font-weight:700; }
.lsm-tc-meta{ margin:0; opacity:.55; letter-spacing: 3px; font-size: 12px; text-transform: uppercase; }

/* Carousel */
.lsm-tc-swiper{ overflow:hidden; }
.lsm-tc-swiper .swiper-wrapper{ align-items: stretch; }
.lsm-tc-swiper .swiper-slide{ height:auto; }
.lsm-tc-dots{ margin-top: 18px; }
.lsm-tc-arrows{ display:flex; gap:10px; margin-top: 18px; justify-content: center; }
.lsm-tc-btn{
  border:1px solid rgba(255,199,0,0.22);
  background: rgba(255,255,255,0.03);
  width:44px; height:44px;
  display:inline-flex;
  align-items:center; justify-content:center;
  cursor:pointer;
  transition: border-color 200ms ease, transform 200ms ease;
}
.lsm-tc-btn:hover{ border-color: rgba(255,199,0,0.45); transform: translateY(-2px); }
.lsm-tc-btn svg{ width:18px; height:18px; color: rgba(255,255,255,0.85); }

.lsm-tc-dots .swiper-pagination-bullet{
  background: rgba(255,255,255,0.25);
  opacity:1;
}
.lsm-tc-dots .swiper-pagination-bullet-active{
  background: var(--lsm-tc-star, #FFC700);
}

@media (max-width:1024px){
  .lsm-tc-grid{ grid-template-columns: repeat(var(--lsm-tc-cols-t,2), minmax(0,1fr)); }
}
@media (max-width:767px){
  .lsm-tc-grid{ grid-template-columns: repeat(var(--lsm-tc-cols-m,1), minmax(0,1fr)); }
}
