/* A native, swipeable review rail in the site's existing editorial palette. */
.reviews{background:var(--paper);border-top:1px solid var(--line);min-width:0}
.reviews-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.reviews-heading>div{min-width:0}
.reviews-heading .eyebrow{margin-bottom:1.1rem}
.reviews-heading h2{font-size:clamp(3rem,4.8vw,4.7rem);line-height:1.06}
.reviews-heading h2 em{color:#41636e}
.reviews-heading>p{max-width:20rem;font-size:1rem;line-height:1.75}
.reviews-help{font-size:.875rem;line-height:1.6;margin-bottom:1rem}
.reviews-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2rem)/3);gap:1rem;width:100%;max-width:100%;min-width:0;margin:0;padding:0 0 .75rem;list-style:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#77929b #dfe6e6;border-top:1px solid #bac8cd;border-bottom:1px solid #bac8cd}
.reviews-track:focus-visible{outline-offset:4px}
.review-card{min-width:0;scroll-snap-align:start;display:flex}
.review-summary-card{min-width:0;width:100%;margin:0;padding:2rem 1.5rem 1.5rem 0;display:flex;flex-direction:column;align-items:flex-start}
.review-card+.review-card .review-summary-card{border-left:1px solid var(--line);padding-left:1.5rem}
.review-stars{color:#a84328;font-size:1.125rem;letter-spacing:.18em;line-height:1.4;margin-bottom:1.5rem}
.review-summary{margin:0 0 2rem;font-family:var(--font-display);font-size:clamp(1.8rem,2.2vw,2.2rem);font-weight:500;letter-spacing:-.02em;line-height:1.24;color:var(--ink);text-wrap:pretty;overflow-wrap:break-word}
.review-attribution{margin-top:auto;display:flex;flex-direction:column;gap:.4rem}
.review-author{font-size:1rem;line-height:1.6;font-weight:600;text-decoration:underline;text-decoration-color:#aebfc5;text-underline-offset:.25em;overflow-wrap:anywhere}
.review-author:hover{text-decoration-color:var(--coral);color:#a84328}
.review-author:focus-visible{outline-offset:2px}
.review-source{font-size:.875rem;color:var(--muted);line-height:1.65}
.reviews-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem;margin-top:1.75rem}
.reviews-actions{max-width:100%;margin-left:auto}
.reviews-invitation{font-size:.9375rem;line-height:1.6;margin:0 0 .8rem;color:var(--muted)}
.reviews-action-links{display:flex;flex-wrap:wrap;gap:.75rem}
.reviews-action-links>.button{max-width:100%;margin:0}
.review-read-link{border-color:#80969f;color:var(--ink);background:transparent}
.review-read-link:hover{background:#e3eaeb}
.reviews-controls:not([hidden]){display:flex;align-items:center;flex-wrap:wrap;gap:1rem}
.reviews-buttons{display:flex;gap:.5rem}
.reviews-buttons button{min-height:48px;padding:.7rem 1rem;border:1px solid #80969f;background:transparent;color:var(--ink);font-size:.875rem;font-weight:600}
.reviews-buttons button:hover:not(:disabled){background:#e3eaeb}
.reviews-buttons button:disabled{opacity:.45;cursor:default}
.review-position{font-size:.875rem;line-height:1.6;font-variant-numeric:tabular-nums}
@media(min-width:801px) and (max-width:1100px){.desktop-nav{gap:1rem}.header-contact{max-width:10rem}}
@media(max-width:1050px){.reviews-track{grid-auto-columns:calc((100% - 1rem)/2)}}
@media(max-width:900px){
 .reviews-heading{align-items:flex-start;flex-direction:column;gap:1.5rem}
 .reviews-heading>p{max-width:32rem}
}
@media(max-width:600px){
 .reviews-heading{margin-bottom:1.5rem}
 .reviews-track{grid-auto-columns:88%;gap:1rem}
 .review-summary-card,.review-card+.review-card .review-summary-card{padding:1.75rem 1.25rem .9rem 0;border-left:0}
 .review-stars{margin-bottom:1.25rem}
 .review-summary{font-size:2rem;margin-bottom:1.5rem}
 .reviews-footer{align-items:flex-start;gap:1.5rem}
 .reviews-actions{width:100%;margin-left:0}
 .reviews-action-links{flex-direction:column}
 .reviews-action-links>.button{width:100%}
 .reviews-controls:not([hidden]){width:100%;justify-content:space-between}
 .review-position{font-size:.875rem}
}
@media(max-width:560px){.reviews-heading h2{font-size:clamp(2.8rem,11.2vw,3.4rem)}}
@media(prefers-reduced-motion:reduce){.reviews-track{scroll-behavior:auto}}
