.reviews-section{background:#f5e9e5;padding:44px 0 40px;border-top:1px solid #57203c18;color:#57203c}
.reviews-layout{display:block}
.reviews-heading{display:grid;grid-template-columns:1fr 1fr;gap:8px 32px;align-items:end;margin-bottom:24px}
.reviews-eyebrow{grid-column:1/-1;font-size:11px;letter-spacing:.15em;font-weight:700}
.reviews-section h2{font-size:clamp(30px,3vw,44px);line-height:1.1;letter-spacing:-.04em;font-weight:500}
.reviews-intro{font-size:15px;line-height:1.5;max-width:400px}
.reviews-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.review-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:24px;background:#fffaf3;border:1px solid #57203c18;border-radius:18px}
.review-card figcaption{font-size:12px;font-weight:700;color:#70314f;padding-right:26px;margin-bottom:10px}
.review-card blockquote{margin:0;font-size:16px;line-height:1.6;color:#39202e;min-height:128px}
.review-card blockquote p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
.review-card:not(:has(.review-more)) blockquote p{display:block;overflow:visible;-webkit-line-clamp:unset}
.review-card figcaption{min-height:36px}
.review-more{align-self:flex-start;margin-top:20px;padding:8px 0;background:none;border:0;border-bottom:1px solid #57203c55;color:#57203c;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}
.review-more:focus-visible,.review-close:focus-visible{outline:2px solid #57203c;outline-offset:4px}
.review-dialog{width:min(560px,calc(100% - 32px));max-height:80vh;overflow:auto;padding:40px 30px 30px;border:1px solid #57203c30;border-radius:20px;background:#fffaf3;color:#57203c}
.review-dialog::backdrop{background:#24101ccc}
.review-dialog h3{font-size:22px;padding-right:25px;margin:0 0 20px}
.review-full{font-size:17px;line-height:1.75}
.review-close{position:absolute;right:12px;top:8px;width:36px;height:36px;border:0;background:none;color:#57203c;font-size:28px;cursor:pointer}
.review-quote{position:absolute;right:20px;top:8px;font:44px Georgia,serif;color:#9aaa70;line-height:1}
.reviews-note{grid-column:1/-1;font-size:11px;line-height:1.5;color:#70314f;margin-top:16px!important}
.reviews-list:focus-visible{outline:2px solid #57203c;outline-offset:5px}
.review-pointer .reviews-list:focus,.review-pointer .review-more:focus{outline:none}
@media(max-width:1000px){.reviews-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:14px;scrollbar-width:thin;scrollbar-color:#9aaa70 #e7ddd4}.review-card{flex:0 0 44%;scroll-snap-align:start}}
@media(max-width:600px){.reviews-section{padding:32px 0 26px}.reviews-heading{grid-template-columns:1fr;gap:10px;margin-bottom:18px}.reviews-intro{font-size:14px}.review-card{flex-basis:86%;padding:20px}.review-card blockquote{font-size:15px;line-height:1.6;min-height:120px}}
