.mnv3-section{
  --cream:#f5f1e8;
  --white:#ffffff;
  --navy:#0f2438;
  --green:#1e3a2e;
  --terracotta:#a8632f;
  --brass:#ba9959;
  --brass-2:#c1794a;

  background:var(--cream);
  padding:88px 0;
  font-family:'Poppins','Segoe UI',Helvetica,Arial,sans-serif;
  box-sizing:border-box;
  overflow:hidden;
}
.mnv3-section *{box-sizing:border-box;}
.mnv3-section button{font-family:inherit;}

.mnv3-section .mnv3-inner{max-width:1240px;margin:0 auto;padding:0 24px;}

/* ---------- HEAD ---------- */
.mnv3-section .mnv3-head{text-align:center;margin-bottom:48px;}
.mnv3-section .mnv3-eyebrow{
  font-size:12px;
  font-weight:700;
  letter-spacing:3px;
  color:var(--terracotta);
  text-transform:uppercase;
  margin:0 0 12px;
}
.mnv3-section .mnv3-title{
  font-family:'Playfair Display',Georgia,serif;
  font-size:clamp(26px,3.6vw,38px);
  font-weight:700;
  color:var(--navy);
  margin:0;
}

/* ---------- CAROUSEL WRAP ---------- */
.mnv3-section .mnv3-carousel-wrap{
  position:relative;
}

.mnv3-section .mnv3-viewport{
  overflow:hidden;
  width:100%;
}

.mnv3-section .mnv3-track{
  display:flex;
  gap:24px;
  will-change:transform;
  transition:transform .6s cubic-bezier(.4,0,.2,1);
  cursor:grab;
}
.mnv3-section .mnv3-track.is-dragging{
  transition:none;
  cursor:grabbing;
}

/* ---------- CARD ---------- */
.mnv3-section .mnv3-card{
  flex:0 0 calc((100% - 48px) / 3);
  background:var(--white);
  border-radius:18px;
  padding:36px 32px 30px;
  box-shadow:0 18px 40px -18px rgba(15,36,56,0.16);
  border-top:4px solid var(--brass);
  display:flex;
  flex-direction:column;
  user-select:none;
}
.mnv3-section .mnv3-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:14px;
}
.mnv3-section .mnv3-quote-mark{
  font-family:'Playfair Display',Georgia,serif;
  font-size:48px;
  line-height:1;
  color:var(--brass);
  opacity:0.5;
}
.mnv3-section .mnv3-stars{
  color:var(--brass-2);
  letter-spacing:2px;
  font-size:13px;
}
.mnv3-section .mnv3-quote{
  font-size:15px;
  line-height:1.7;
  color:var(--green);
  margin:0 0 26px;
  flex-grow:1;
}
.mnv3-section .mnv3-person{
  display:flex;
  align-items:center;
  gap:12px;
  padding-top:18px;
  border-top:1px solid rgba(15,36,56,0.08);
}
.mnv3-section .mnv3-avatar{
  width:46px;
  height:46px;
  border-radius:50%;
  object-fit:cover;
  flex-shrink:0;
  border:2px solid var(--brass);
  padding:2px;
  background:var(--white);
}
.mnv3-section .mnv3-avatar.mnv3-avatar-fallback{
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(155deg, var(--brass), var(--brass-2));
  color:var(--white);
  font-family:'Playfair Display',serif;
  font-weight:700;
  font-size:14px;
  border:none;
  padding:0;
}
.mnv3-section .mnv3-name{margin:0;font-size:14px;font-weight:700;color:var(--navy);}
.mnv3-section .mnv3-role{margin:2px 0 0;font-size:11.5px;color:var(--terracotta);}

/* ---------- DOTS ---------- */
.mnv3-section .mnv3-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:34px;
}
.mnv3-section .mnv3-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:rgba(15,36,56,0.18);
  border:none;
  padding:0;
  cursor:pointer;
  transition:background .2s ease, width .2s ease;
}
.mnv3-section .mnv3-dot.is-active{
  background:var(--brass-2);
  width:22px;
  border-radius:5px;
}

/* ---------- TABLET: 2 cards ---------- */
@media (max-width:980px){
  .mnv3-section .mnv3-card{flex:0 0 calc((100% - 24px) / 2);}
}

/* ---------- MOBILE: 1 card ---------- */
@media (max-width:640px){
  .mnv3-section{padding:64px 0;}
  .mnv3-section .mnv3-inner{padding:0 18px;}
  .mnv3-section .mnv3-card{flex:0 0 100%;padding:30px 24px 26px;}
}

@media (prefers-reduced-motion:reduce){
  .mnv3-section .mnv3-track{transition:none;}
}
