/* Testimonials: one quote at a time, manual control only (arrows, swipe, keyboard). */
.t-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(36px,5vw,64px)}
.t-head p{color:var(--ink-soft);max-width:40ch}
.t-slider{max-width:960px;margin-inline-start:auto;border-radius:var(--radius)}
.t-slider:focus-visible{outline-offset:8px}
.t-track{display:grid}
.t-slide{grid-area:1/1;padding-top:8px}
.t-slide blockquote{font-size:clamp(1.35rem,1rem + 1.5vw,2.1rem);font-weight:300;line-height:1.5;color:var(--ink);quotes:'״' '״'}
.t-slide blockquote::before{content:'״';display:block;font-size:4.5rem;line-height:.7;color:var(--clay);font-weight:500;margin-bottom:14px}
.t-slide figcaption{margin-top:22px;font-size:1rem;font-weight:500;color:var(--clay-deep)}
/* JS shows one slide at a time; without JS every quote stays readable */
.js-on .t-slide{opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .6s var(--ease),transform .6s var(--ease),visibility 0s .6s}
.js-on .t-slide.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .6s var(--ease),transform .6s var(--ease),visibility 0s}
html:not(.js-on) .t-slide+.t-slide{margin-top:40px}
html:not(.js-on) .t-controls{display:none}
.t-controls{display:flex;align-items:center;gap:20px;margin-top:40px}
.t-progress{flex:1;display:flex;align-items:center;gap:16px}
.t-count{font-size:.95rem;font-weight:500;min-width:3.5em;font-variant-numeric:tabular-nums}
.t-bar{flex:1;height:2px;background:var(--line);position:relative;overflow:hidden}
.t-bar span{position:absolute;inset:0 0 0 auto;background:var(--clay-deep);width:0;transition:width .5s var(--ease)}

@media (prefers-reduced-motion: reduce){.js-on .t-slide,.js-on .t-slide.is-active{transition:none;transform:none}}
