/* ===== Testimonials ===== */
.testi__head { margin-bottom: 48px; }
.testi__stage { position: relative; max-width: 860px; margin: 0 auto; }
.testi__bigquote { position: absolute; top: -34px; left: 50%; transform: translateX(-50%); width: 84px; height: 84px; color: rgba(199,163,100,0.22); z-index: 0; }
.testi__viewport { overflow: hidden; position: relative; z-index: 1; }
.testi__track { display: flex; transition: transform .7s var(--ease); }
.testi__slide { flex: 0 0 100%; margin: 0; padding: 10px 8px; text-align: center; display: flex; flex-direction: column; align-items: center; }
.testi__stars { display: flex; gap: 4px; color: var(--gold-500); margin-bottom: 22px; }
.testi__stars svg { width: 16px; height: 16px; }
.testi__q {
  font-family: var(--font-display); font-weight: 400; font-style: italic;
  font-size: clamp(20px, 2.6vw, 30px); line-height: 1.45; color: var(--ink);
  margin: 0; max-width: 22em; text-wrap: pretty;
}
.testi__by { display: flex; align-items: center; gap: 14px; margin-top: 30px; }
.testi__avatar {
  width: 50px; height: 50px; border-radius: 50%;
  background: var(--navy-800); color: var(--gold-300);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-display); font-weight: 600; font-size: 16px;
}
.testi__by-tx { display: flex; flex-direction: column; text-align: left; line-height: 1.3; }
.testi__by-tx strong { font-weight: 600; color: var(--ink); font-size: 16px; }
.testi__by-tx em { font-style: normal; font-size: 13.5px; color: var(--gold-700); }

.testi__controls { display: flex; align-items: center; justify-content: center; gap: 22px; margin-top: 40px; }
.testi__arrow {
  width: 48px; height: 48px; border-radius: 50%; background: var(--paper);
  border: 1px solid var(--mist); color: var(--ink); cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all .35s var(--ease);
}
.testi__arrow svg { width: 18px; height: 18px; }
.testi__arrow--prev svg { transform: rotate(180deg); }
.testi__arrow:hover { background: var(--navy-800); border-color: var(--navy-800); color: #fff; }
.testi__dots { display: flex; gap: 9px; }
.testi__dot { width: 9px; height: 9px; border-radius: 50%; border: 0; background: var(--sand); cursor: pointer; transition: all .35s var(--ease); padding: 0; }
.testi__dot.is-on { background: var(--gold-500); width: 26px; border-radius: 5px; }

/* migrado de estilos inline */
.testi__title { margin: 18px auto 0; max-width: 15em; }
