/* Depoimentos: imagens completas, navegação circular e leitura ampliada. */
.testimonial-carousel{position:relative;margin-top:clamp(48px,7vw,100px)}
.testimonial-window{overflow-x:auto;scroll-snap-type:x mandatory;border:1px solid rgba(187,152,100,.38);border-radius:var(--radius);background:rgba(0,0,0,.12);box-shadow:0 40px 90px -55px rgba(0,0,0,.65)}
.testimonial-track{display:flex;align-items:flex-start;width:100%}
.testimonial-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start}
.testimonial-card{display:block;width:100%;text-align:left;color:var(--on-dark)}
.testimonial-card:focus-visible{outline-offset:-6px;border-radius:var(--radius)}
.testimonial-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#f2eae5}
.testimonial-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:108px;padding:22px 30px;background:rgba(242,232,216,.035)}
.testimonial-caption small{display:block;margin-bottom:6px;font-size:9px;line-height:1.5;letter-spacing:.2em;color:var(--gold)}
.testimonial-caption strong{display:block;font-family:var(--serif);font-size:clamp(25px,3vw,36px);font-weight:400;line-height:1.1}
.testimonial-read{display:flex;align-items:center;gap:16px;flex-shrink:0;font-size:12px;color:var(--on-dark-soft);transition:color .3s}
.testimonial-read>span{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;font-size:20px;color:var(--gold);transition:background .3s,color .3s}
.testimonial-card:hover .testimonial-read{color:var(--on-dark)}
.testimonial-card:hover .testimonial-read>span{background:var(--gold);color:var(--brown)}
.testimonial-carousel.is-ready .testimonial-window{overflow:hidden;scroll-snap-type:none;touch-action:pan-y pinch-zoom}
.testimonial-carousel.is-ready .testimonial-track{transition:transform .7s var(--ease);will-change:transform}
.testimonial-carousel.is-jumping .testimonial-track{transition:none}
.testimonial-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px}
.testimonial-controls[hidden]{display:none}
.testimonial-count{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.15em;color:var(--on-dark-soft)}
.testimonial-count>span:first-child{color:var(--gold);font-variant-numeric:tabular-nums}
.testimonial-count-line{display:block;width:clamp(24px,6vw,84px);height:1px;background:var(--line)}
.testimonial-buttons{display:flex;align-items:center;gap:10px}
.testimonial-arrow,.testimonial-pause{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--line);border-radius:999px;transition:background .3s,border-color .3s}
.testimonial-arrow{width:48px}
.testimonial-arrow svg{width:20px;height:20px;stroke-width:1.4}
.testimonial-pause{gap:9px;min-width:112px;padding:0 18px;font-size:11px;letter-spacing:.04em}
.testimonial-pause-icon{font-size:17px;line-height:1;color:var(--gold)}
.testimonial-arrow:hover,.testimonial-pause:hover{background:rgba(187,152,100,.13);border-color:var(--gold)}
.testimonial-dialog{width:min(1200px,calc(100% - 32px));max-width:none;padding:0 24px 36px;overscroll-behavior:contain}
.testimonial-dialog-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;background:var(--paper)}
.testimonial-dialog .dialog-close{position:static;flex-shrink:0}
.testimonial-dialog-heading{padding:12px 0 26px}
.testimonial-dialog-heading h2{font-size:clamp(32px,4.8vw,58px)}
.testimonial-dialog-image{width:100%;height:auto;object-fit:contain;border-radius:var(--radius-sm);background:#f2eae5}
.testimonial-dialog-copy{max-width:760px;margin:32px auto 0;font-size:16px;line-height:1.85;overflow-wrap:break-word}
.testimonial-quote-title{font-family:var(--serif);font-size:30px;line-height:1.15;color:var(--bronze)}
@media(max-width:600px){
  .testimonial-window{border-radius:var(--radius-sm)}
  .testimonial-caption{min-height:88px;padding:18px 16px;gap:12px}
  .testimonial-caption small{font-size:8px;letter-spacing:.15em}
  .testimonial-caption strong{font-size:25px}
  .testimonial-read{font-size:10px;gap:6px}
  .testimonial-read>span{width:28px;height:28px;font-size:16px}
  .testimonial-controls{margin-top:18px;gap:10px}
  .testimonial-count{gap:8px;font-size:10px}
  .testimonial-count-line{width:24px}
  .testimonial-buttons{gap:6px}
  .testimonial-arrow{width:44px;min-height:44px}
  .testimonial-pause{min-width:94px;min-height:44px;padding-inline:12px;font-size:10px}
  .testimonial-dialog{width:calc(100% - 20px);max-height:calc(100% - 20px);padding:0 16px 28px;border-radius:var(--radius-sm)}
  .testimonial-dialog-heading{padding-block:8px 20px}
  .testimonial-dialog-copy{margin-top:24px}
}
@media(prefers-reduced-motion:reduce){
  .testimonial-carousel.is-ready .testimonial-track{transition:none}
}
