.testimonials{background:#f7f5f1;color:var(--ink)}
.testimonials-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}
.testimonials-heading .eyebrow{margin-bottom:16px}
.testimonials-intro{color:var(--muted);margin:18px 0 0}
.testimonials-controls{display:flex;gap:10px;flex-shrink:0}
.testimonials-controls[hidden]{display:none}
.testimonials-controls button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #a6b2bc;border-radius:50%;background:transparent;color:var(--navy);font:inherit;font-size:1.4rem;cursor:pointer}
.testimonials-controls button:hover:not(:disabled){background:var(--navy);border-color:var(--navy);color:#fff}
.testimonials-controls button:disabled{opacity:.35;cursor:default}
.testimonials :focus-visible{outline:3px solid var(--red);outline-offset:4px}
.testimonials-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);align-items:start;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9aa8b4 #e2e5e6;padding:5px 5px 20px;margin:-5px;list-style:none}
.testimonial-card{display:flex;flex-direction:column;min-width:0;min-height:365px;padding:28px;background:#fff;border:1px solid #dce1e4;border-top:3px solid #b49a70;scroll-snap-align:start;overflow-wrap:anywhere}
.testimonial-mark{font-family:Georgia,serif;font-size:3.6rem;line-height:.8;color:#987946;user-select:none;margin-bottom:14px}
.testimonial-card h3{font-size:1.4rem;line-height:1.2;margin:0 0 16px}
.testimonial-card blockquote{font-size:1rem;line-height:1.75;margin:0 0 22px}
.testimonial-author{font-weight:600;font-size:.875rem;color:var(--muted);margin:auto 0 0;padding-top:8px}
.testimonial-details{border-top:1px solid var(--line);margin-top:18px;padding-top:12px}
.testimonial-details summary{cursor:pointer;min-height:44px;align-content:center;color:var(--navy);font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.testimonial-details[open] summary{margin-bottom:14px}
.testimonial-details .testimonial-less,.testimonial-details[open] .testimonial-more{display:none}
.testimonial-details[open] .testimonial-less{display:inline}
.testimonial-message{color:var(--ink);font-size:.95rem;line-height:1.8}
.testimonial-message p{margin:0 0 16px}
.testimonial-message p:last-child{margin-bottom:0}
.testimonials-note{color:var(--muted);font-size:.875rem;margin:20px 0 0}
@media(max-width:1050px){.testimonials-track{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:700px){.testimonials-heading{align-items:flex-start;flex-wrap:wrap;gap:20px}.testimonials-controls{margin-left:auto}.testimonials-track{grid-auto-columns:90%;gap:14px}.testimonial-card{padding:24px;min-height:350px}.testimonial-card h3{font-size:1.4rem}.testimonials-intro{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.testimonials-track{scroll-behavior:auto}}

/* Show the full message once when expanded, without repeating its excerpt. */
.testimonial-card:has(.testimonial-details[open])>blockquote{display:none}
