.testimonials{background:linear-gradient(135deg,#f8f3e8,#eee4d0);text-align:left;overflow:hidden}
.testimonial-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:28px}.testimonial-heading p{max-width:290px;color:#62646a;font-size:14px}
.testimonial-carousel{--card-height:clamp(570px,78svh,690px);position:relative;max-width:920px;margin:auto;outline:none}
.testimonial-stage{position:relative;display:grid;place-items:center;perspective:1300px;isolation:isolate;overflow:hidden;padding:36px 28px 40px;touch-action:pan-y;cursor:grab;background:radial-gradient(ellipse at 50% 44%,#b9945020,transparent 65%)}
.testimonial-stage::before,.testimonial-stage::after{content:"";position:absolute;border:1px solid #b9945028;border-radius:50%;width:650px;height:650px;z-index:-1;pointer-events:none}.testimonial-stage::after{width:760px;height:760px;border-style:dashed;opacity:.55}
.testimonial-card{grid-area:1/1;width:min(100%,380px);height:var(--card-height);box-sizing:border-box;border:1px solid #c2a367;border-radius:18px;overflow:hidden;backface-visibility:hidden;transform-style:preserve-3d;transform:translateX(105%) translateZ(-190px) rotateY(-32deg) scale(.84);opacity:0;visibility:hidden;pointer-events:none;transition:transform .7s cubic-bezier(.22,.75,.2,1),opacity .45s ease,visibility .7s;box-shadow:0 24px 42px -20px #10254180}
.testimonial-card[data-position="-1"]{transform:translateX(-105%) translateZ(-190px) rotateY(32deg) scale(.84)}
.testimonial-card.is-active{transform:translateX(var(--drag,0px)) rotateY(var(--tilt,0deg));opacity:1;visibility:visible;pointer-events:auto;z-index:2;box-shadow:0 26px 48px -20px #10254170,0 0 0 5px #b9945014}
.testimonial-carousel.is-dragging .is-active{transition:none}.testimonial-carousel.is-dragging{cursor:grabbing}
.video-testimonial{background:#102541;padding:8px}.testimonial-video-frame{height:calc(100% - 146px);position:relative;overflow:hidden;border-radius:10px;background:#08182a}.testimonial-video-frame video{display:block;width:100%;height:100%;object-fit:contain;background:#08182a}
.testimonial-play{position:absolute;inset:0;width:100%;border:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;background:linear-gradient(transparent 40%,#07182d80);color:#fff5dc;cursor:pointer}.testimonial-play>span{display:grid;place-items:center;width:64px;height:64px;border:1px solid #f0d28c;border-radius:50%;background:#102541b8;font-size:23px;padding-left:4px;box-shadow:0 0 0 8px #fff1;transition:transform .25s,background .25s}.testimonial-play:hover>span{transform:scale(1.08);background:#805c1dcc}.testimonial-play strong{font:21px Georgia,serif;text-shadow:0 2px 8px #000}.testimonial-play[hidden]{display:none}
.story-number{position:absolute;top:15px;left:16px;color:#fff5dc;font:italic 22px Georgia,serif;pointer-events:none;text-shadow:0 2px 8px #000}
.testimonial-video-caption{padding:18px 18px 10px;color:#fff5e0}.testimonial-video-caption .eyebrow{font-size:8px;color:#ddbd78;letter-spacing:2px}.testimonial-video-caption h3{font:22px/1.25 Georgia,serif;margin:9px 0 5px}.video-status{color:#d4c9b6;font-size:11px;line-height:1.5;min-height:1.5em;margin:0 0 5px}.video-save{display:inline-flex;gap:20px;color:#eacf92;font-size:11px;text-decoration:none;border-bottom:1px solid #c6a35b66;padding-bottom:4px}
.written-testimonial{padding:34px 30px;background:linear-gradient(145deg,#fffdf5,#f5ead4);display:flex;flex-direction:column;justify-content:center;position:relative}.written-testimonial::after{content:"";position:absolute;inset:10px;border:1px solid #b9945038;border-radius:10px;pointer-events:none}.review-quote-mark{font:90px/.8 Georgia,serif;color:#b99450;height:64px}.written-testimonial .eyebrow{font-size:8px;color:#84632b;letter-spacing:2px}.written-testimonial blockquote{margin:20px 0}.written-testimonial blockquote p{font:22px/1.48 Georgia,serif;color:#102541}.review-person{display:flex;align-items:center;gap:12px;border-top:1px solid #d8cbae;padding-top:20px;margin-top:4px}.review-avatar{display:grid;place-items:center;width:44px;height:44px;border:1px solid #b99450;border-radius:50%;background:#eee2c8;color:#805c1d;font:23px Georgia,serif}.review-person strong,.review-person div>span{display:block}.review-person div>span{margin-top:3px;font-size:11px;color:#68717b}.review-more{border:0;padding-bottom:0;position:relative;z-index:1;max-height:165px;overflow:auto}.review-more summary{color:#805c1d;font-size:11px}.review-more p{font-size:12px;color:#545c67}
.testimonial-navigation{display:flex;align-items:center;justify-content:center;gap:36px;margin-top:0}.testimonial-arrow{border:1px solid #b9945080;background:#fbf6e9;color:#102541;border-radius:50%;height:46px;width:46px;font:24px Georgia,serif;cursor:pointer;transition:background .2s,transform .2s}.testimonial-arrow:hover{background:#102541;color:#eacf92;transform:translateY(-2px)}.testimonial-pagination{display:flex;align-items:center;gap:18px}.testimonial-dots{display:flex;gap:8px}.testimonial-dots button{border:0;padding:0;width:7px;height:7px;border-radius:10px;background:#b9945050;cursor:pointer;transition:width .35s,background .35s}.testimonial-dots button[aria-current="true"]{width:28px;background:#9b7739}.testimonial-counter{font:12px Georgia,serif;letter-spacing:2px;color:#805c1d;min-width:54px}.testimonial-swipe-hint{text-align:center!important;font-size:9px!important;text-transform:uppercase;letter-spacing:2px;color:#846d47!important;margin:20px 0 0!important}.testimonial-swipe-hint span{font-size:16px;padding-left:8px}
.testimonials button:focus-visible,.testimonials a:focus-visible,.testimonial-carousel:focus-visible{outline:3px solid #b99450;outline-offset:4px}
@media(max-width:600px){.testimonial-heading{display:block}.testimonial-heading p{max-width:280px}.testimonial-stage{padding:26px 12px 32px}.testimonial-carousel{--card-height:clamp(560px,80svh,650px)}.testimonial-card{width:min(100%,340px)}.testimonial-video-caption{padding-inline:13px}.testimonial-video-caption h3{font-size:20px}.written-testimonial{padding:28px 25px}.written-testimonial blockquote p{font-size:21px}.testimonial-navigation{gap:25px}}
@media(prefers-reduced-motion:reduce){.testimonial-card,.testimonial-arrow,.testimonial-play>span,.testimonial-dots button{transition:none}.testimonial-card.is-active{transform:none}.testimonial-card:not(.is-active){transform:none}}

/* Fit portrait footage to its frame without side gaps or cropping. */
.testimonial-card{width:min(100%,340px);height:auto;align-self:stretch}.testimonial-video-frame{height:auto;aspect-ratio:9 / 16}.testimonial-video-frame video{width:100%;height:100%;aspect-ratio:9 / 16;object-fit:contain}.testimonial-video-caption{min-height:130px;box-sizing:border-box}.written-testimonial{min-height:0}
