.guest-reviews{background:linear-gradient(180deg,#f5f7ef,#e7efdf 22%,#edf3e6 80%,#f5f7ef);color:#244535}
.guest-reviews header{text-align:center;margin-bottom:30px}
.guest-reviews h2{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.3;margin:0 0 12px}
.guest-reviews header p{margin:0;line-height:1.6}
.reviews-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:8px 2px 16px}
.guest-review{flex:0 0 calc((100% - 48px)/3);box-sizing:border-box;padding:28px;background:#f9fbf6;border:1px solid #c7d7bd;border-radius:16px;scroll-snap-align:start;display:flex;flex-direction:column;box-shadow:0 3px 10px #24453508}
.review-stars{color:#967000;letter-spacing:3px;font-size:1.3rem}
.review-gallery{min-width:0;margin-bottom:22px}
.review-photo-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:10px;background:#e7efdf;overscroll-behavior-x:contain}
.review-photo-track::-webkit-scrollbar{display:none}
.review-photo-track img{flex:0 0 100%;width:100%;min-width:100%;height:auto;aspect-ratio:375/281;object-fit:cover;scroll-snap-align:start}
.review-photo-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin:8px 0}
.review-photo-controls button{width:44px;height:44px;border:1px solid #c7d7bd;border-radius:50%;background:#fff;color:#244535;font-size:1.5rem;cursor:pointer}
.review-photo-controls button:disabled{opacity:.35;cursor:default}
.review-photo-controls span,.review-gallery small{font-size:.8rem;color:#48614f}.review-gallery small{display:block;text-align:center;line-height:1.4}
.guest-review blockquote{margin:22px 0 28px;padding:0;border:0;font-size:1.15rem;line-height:1.65;color:#244535;background:none}
.review-author{font-weight:700;margin:auto 0 5px}.review-source{font-size:.85rem;color:#48614f}
.reviews-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:12px 0 24px}.reviews-controls[hidden]{display:none}
.reviews-controls button{width:46px;height:46px;border-radius:50%;border:1px solid #aec5a7;background:#fff;color:#244535;font-size:1.5rem;cursor:pointer}.reviews-controls button:disabled{opacity:.4;cursor:default}
.reviews-bottom{text-align:center;margin-top:24px}.reviews-bottom small{display:block;max-width:650px;margin:18px auto 0;line-height:1.6;color:#48614f}
.guest-reviews :focus-visible{outline:3px solid #286e8a;outline-offset:4px}
@media(max-width:850px){.guest-review{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:540px){.guest-review{flex-basis:100%;padding:24px}.reviews-track{gap:16px}.reviews-bottom .btn{white-space:normal;line-height:1.4;text-align:center}.guest-reviews{padding:48px 0}}

/* Compact four-column presentation; keep touch controls comfortably sized. */
.guest-reviews{padding:48px 0}
.guest-reviews header{margin-bottom:20px}
.guest-reviews h2{font-size:clamp(1.6rem,2.5vw,2rem)}
.guest-reviews header p{font-size:.95rem}
.reviews-track{gap:16px}
.guest-review{flex-basis:calc((100% - 48px)/4);padding:16px;border-radius:12px}
.review-gallery{margin-bottom:14px}
.review-photo-track img{aspect-ratio:4/3}
.review-photo-controls{gap:8px;margin:4px 0}
.review-gallery small{font-size:.72rem}
.review-stars{font-size:1.05rem;letter-spacing:2px}
.guest-review blockquote{font-size:.98rem;line-height:1.55;margin:14px 0 18px}
.review-author{font-size:.92rem}.review-source{font-size:.75rem}
.review-more{justify-content:center;background:#edf4e7}
.review-more-icon{font-size:2rem;color:#547647}
.review-more h3{font-size:1.15rem;line-height:1.35;margin:16px 0 12px}
.review-more p{font-size:.95rem;line-height:1.6}
.review-more a{font-weight:700;color:#244535;margin-top:12px}
@media(max-width:950px){.guest-review{flex-basis:calc((100% - 16px)/2)}}
@media(max-width:540px){.guest-review{flex-basis:88%;padding:16px}.guest-reviews{padding:36px 0}}

.reviews-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 12px}.reviews-caption img{height:18px;width:auto;margin:10px 10px 5px;flex:none}
