.elementor-widget-lumix-testimonial { --lumix-card-bg: var(--color-surface); }
.lumix-testimonial-carousel{ position:relative; overflow:hidden; padding:1rem 0; }
.lumix-testimonial-track{ display:flex; transition: transform 0.6s cubic-bezier(.2,.9,.2,1); flex-wrap:nowrap; will-change:transform; }
.lumix-testimonial-slide{ box-sizing:border-box; padding:0 0.85rem; flex: 0 0 auto; }
.lumix-testimonial-card{ background: linear-gradient(180deg, var(--card-bg), rgba(255,255,255,0.98)); border-radius:14px; padding:1.4rem; box-shadow:0 12px 34px rgba(11,12,20,0.12); min-height:160px; display:flex; flex-direction:column; gap:0.85rem; width:100%; border: 1px solid rgba(0,0,0,0.04); position:relative; overflow:visible; }
.lumix-testimonial-avatar-wrap{ width:72px; height:72px; border-radius:50%; overflow:hidden; flex-shrink:0; margin:0 auto; box-shadow: 0 6px 18px rgba(0,0,0,0.12); border: 3px solid rgba(255,255,255,0.9); transform: translateY(-36px); background: white; }
.lumix-testimonial-avatar{ width:72px; height:72px; object-fit:cover; display:block; }

.lumix-testimonial-card { padding-top: 1rem; }
.lumix-testimonial-slide { padding-top: 36px; }
.lumix-testimonial-quote{ margin:0; color:var(--color-text); font-style:italic; flex:1; }
.lumix-testimonial-meta{ display:flex; flex-direction:column; gap:0.125rem; font-weight:600; color:var(--color-primary); }
.lumix-testimonial-author{ font-weight:700; }
.lumix-testimonial-role{ font-weight:500; color:var(--color-text-light); font-size:0.9rem; }

/* Rating stars */
.lumix-testimonial-rating{ display:flex; gap:0.35rem; font-size:1rem; align-items:center; justify-content:center; }
.lumix-testimonial-rating .star svg{ display:block; width:18px; height:18px; }
.lumix-testimonial-rating .star{ color: rgba(0,0,0,0.12); }
.lumix-testimonial-rating .star.filled{ color: #ffb84d; /* warm gold */ filter: drop-shadow(0 6px 12px rgba(255,184,77,0.18)); }

/* Emphasize center slide on desktop */
.lumix-testimonial-slide { transition: transform 0.45s cubic-bezier(.2,.9,.2,1), opacity 0.45s ease; }
.lumix-testimonial-slide .lumix-testimonial-card { transition: transform 0.45s cubic-bezier(.2,.9,.2,1), box-shadow 0.45s ease, border-color 0.45s ease; }
.lumix-testimonial-slide.active-center { opacity: 1; }
.lumix-testimonial-slide.active-center .lumix-testimonial-card { transform: translateY(-10px) scale(1.08); box-shadow: 0 28px 68px rgba(14,18,30,0.28); z-index: 6; border-color: rgba(var(--color-secondary-rgb),0.18); }
.lumix-testimonial-slide { opacity: 0.78; }

/* subtle peek of neighbor slides */
.lumix-testimonial-carousel::before,
.lumix-testimonial-carousel::after{
    content: '';
    position: absolute;
    top: 0; bottom: 0;
    width: 10%;
    pointer-events: none;
}
.lumix-testimonial-carousel::before{ left:0; background: linear-gradient(90deg, rgba(255,255,255,0.9), rgba(255,255,255,0)); }
.lumix-testimonial-carousel::after{ right:0; background: linear-gradient(-90deg, rgba(255,255,255,0.9), rgba(255,255,255,0)); }


.lumix-testimonial-arrows{ position:absolute; top:50%; left:0; right:0; display:flex; justify-content:space-between; transform:translateY(-50%); pointer-events:none; padding:0 1rem; }
.lumix-testimonial-arrows button{ pointer-events:auto; background: linear-gradient(135deg,#ffffff,#ffeedd); color:var(--color-secondary); border:none; width:48px; height:48px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; margin:0 8px; box-shadow: 0 8px 22px rgba(11,12,20,0.12); }
.lumix-testimonial-arrows button:hover{ transform: translateY(-2px); box-shadow: 0 14px 36px rgba(11,12,20,0.18); }
.lumix-testimonial-dots{ display:flex; gap:0.5rem; justify-content:center; padding-top:0.9rem; }
.lumix-testimonial-dots .lumix-dot{ width:12px; height:12px; background:rgba(0,0,0,0.08); border-radius:999px; border:none; box-shadow: inset 0 -2px 0 rgba(0,0,0,0.04); }
.lumix-testimonial-dots .lumix-dot.active{ background: linear-gradient(90deg,var(--color-secondary), var(--color-accent)); box-shadow: 0 6px 18px rgba(var(--color-secondary-rgb),0.12); transform: scale(1.08); }

/* Grid */
.lumix-testimonial-grid{ display:grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap:1rem; }

@media (max-width: 768px){
    .lumix-testimonial-card{ padding:1rem; }
    .lumix-testimonial-arrows button{ width:36px; height:36px; }
}

@media (min-width: 1024px){
    .lumix-testimonial-carousel { padding-left: 1rem; padding-right: 1rem; }
    .lumix-testimonial-slide { opacity: 0.85; }
}
