/* Curated, attributed Google review excerpts; no external embeds or tracking. */
.testimonials { padding-block:48px 64px;border-top:1px solid var(--line); }
.testimonials-heading { display:flex;justify-content:space-between;align-items:center;gap:32px; }
.testimonials-heading>div:first-child { max-width:680px; }
.testimonials-heading .eyebrow { margin-bottom:14px; }
.testimonials h2 { margin:0 0 18px;font-size:clamp(2rem,3.5vw,3.25rem);letter-spacing:-.035em; }
.testimonials-intro { margin:0;font-size:1rem;line-height:1.7; }
.testimonial-summary { display:grid;text-align:center;gap:2px;flex-shrink:0;font:500 .8125rem/1.5 Manrope,Arial,sans-serif;color:#796246; }
.testimonial-summary .testimonial-score { color:#493424;font:450 2.6rem/1.2 Manrope,Arial,sans-serif;letter-spacing:-.05em; }
.testimonial-stars { color:#a7834a;letter-spacing:.14em;font-size:1.125rem;line-height:1.5; }
.testimonials-controls { display:flex;justify-content:flex-end;gap:10px;margin:24px 0 16px; }
.testimonials-controls[hidden] { display:none; }
.testimonials-controls button { display:grid;place-items:center;width:44px;height:44px;border:1px solid #bda37e;border-radius:50%;background:transparent;color:#6c5133;cursor:pointer; }
.testimonials-controls button:hover:not(:disabled) { background:#e9ddca; }
.testimonials-controls button:disabled { opacity:.35;cursor:default; }
.testimonials-controls svg { width:23px;height:23px; }
.reviews-previous svg { transform:rotate(180deg); }
.review-viewport { overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#bda37e transparent;padding-bottom:14px; }
.review-viewport:focus-visible,.testimonials-controls button:focus-visible { outline:2px solid #805a29;outline-offset:4px; }
.review-track { display:flex;gap:22px;list-style:none;padding:0;margin:0; }
.review-card { flex:0 0 calc((100% - 44px)/3);min-width:0;scroll-snap-align:start;display:flex; }
.review-card figure { display:flex;flex-direction:column;align-items:center;width:100%;margin:0;padding:32px 25px 28px;border:1px solid #d5c5af;border-radius:4px;background:linear-gradient(145deg,rgba(255,255,255,.48),rgba(255,255,255,.12));text-align:center; }
.review-card blockquote { margin:30px 0;flex:1;display:flex;align-items:center; }
.review-card blockquote p { margin:0;color:#544737;font:400 .9375rem/1.85 Manrope,Arial,sans-serif;text-wrap:pretty; }
.review-card figcaption { display:grid;gap:5px;font:400 .8125rem/1.6 Manrope,Arial,sans-serif;color:#806c51; }
.review-card figcaption strong { font-size:.9375rem;font-weight:600;color:#493424; }
.testimonials-footer { display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:24px; }
.testimonials-footer p { margin:0;font-size:.8125rem;line-height:1.6; }
.testimonials-footer small { display:block;max-width:530px;font-size:.75rem;color:#806f59; }
.testimonials-footer .text-link { display:inline-flex;align-items:center;gap:10px;line-height:1.6; }
.testimonials-footer svg { width:21px;height:21px;flex-shrink:0; }
@media(max-width:1000px) and (min-width:761px){ .review-card { flex-basis:calc((100% - 22px)/2); } }
@media(max-width:760px){
 .testimonials { padding-block:32px 40px; }
 .testimonials-heading { align-items:flex-start;gap:18px;flex-direction:column; }
 .testimonials h2 { font-size:2rem; }
 .testimonial-summary { grid-template-columns:auto auto;column-gap:12px;text-align:left;align-items:center; }
 .testimonial-summary .testimonial-score { grid-row:1/3;font-size:2rem; }
 .testimonial-summary>span:last-child { grid-column:2;font-size:.75rem; }
 .testimonials-controls { margin:18px 0 14px; }
 .review-track { gap:14px; }
 .review-card { flex-basis:94%; }
 .review-card figure { padding:26px 23px; }
 .review-card blockquote { margin:24px 0; }
 .review-card blockquote p { font-size:.9375rem;line-height:1.8; }
 .testimonials-footer { flex-direction:column;align-items:flex-start;gap:18px;padding-top:20px; }
}
