/* A single, source-labelled review panel; reading a long quote never grows it. */
.google-reviews-section{box-sizing:border-box;padding-block:48px;background:#f7f5f0;color:#19302a;font-family:Montserrat,Arial,sans-serif;scroll-margin-top:0;display:flex;flex-direction:column;gap:14px;min-width:0}
.google-reviews-section[hidden]{display:none!important}.google-reviews-heading .kicker{margin:0 0 12px}.google-reviews-heading h2{font-family:inherit;font-weight:800;letter-spacing:-.045em;text-transform:uppercase;font-size:clamp(28px,3.5vw,48px);line-height:1.02;margin:0;max-width:1000px}.google-reviews-intro{font-size:13px;line-height:1.6;margin:12px 0 0;color:#4f5952}
.google-reviews-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;flex-shrink:0;min-height:40px}.google-reviews-summary>strong{font-size:28px;font-weight:600}.google-reviews-star{font-size:22px;color:#82632f}.google-reviews-actions{margin-inline-start:auto;display:flex;gap:20px;align-items:center;flex-wrap:wrap}.google-reviews-write,.google-reviews-link{font-size:11px;font-weight:600;text-decoration:none;letter-spacing:.01em}.google-reviews-write{border:1px solid #19302a;border-radius:3px;padding:12px 17px;background:#19302a;color:white}.google-reviews-link{border-bottom:1px solid;padding-block:6px;color:#19302a}.google-reviews-empty{font-size:13px;line-height:1.65;color:#58635c;margin:0}.google-reviews-demo{font-size:11px;color:#5a4b30;background:#f0e6d3;padding:7px 12px;margin:0;border-inline-start:3px solid #967548;line-height:1.4;flex-shrink:0}
.google-reviews-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:2px;min-height:0}.google-reviews-track::-webkit-scrollbar{display:none}
.google-reviews-section .google-review-card{box-sizing:border-box;flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start;border:1px solid #d9ded7;border-radius:7px;background:#fff;padding:clamp(18px,2vw,28px);display:flex;flex-direction:column;gap:12px;min-width:0;margin:0}
.google-review-author{display:flex;align-items:center;gap:10px;font-size:13px;order:0}.google-review-initial{width:32px;height:32px;flex-shrink:0;border-radius:50%;background:#edf0ea;display:grid;place-items:center;font-size:15px}.google-review-rating{font-size:17px;letter-spacing:2px;color:#82632f;order:1}
.google-reviews-section .google-review-text{font-size:14px;line-height:1.65;margin:0;color:#283b34;white-space:pre-line;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;order:2;flex:none}
.google-reviews-section .google-review-more{align-self:flex-start;border:0;border-bottom:1px solid;background:none;padding:0 0 3px;font:600 11px Montserrat,Arial,sans-serif;cursor:pointer;color:#19302a;order:3}
.google-review-date{font-size:11px;color:#58635c;margin-top:auto;order:4}.google-review-source{font-size:10px;color:#58635c;order:5}.google-review-editorial>.google-review-source{border-top:1px solid #e7eae5;padding-top:9px;margin-top:auto}.google-review-editorial>span:first-child{display:none}.google-review-editorial footer{order:0;display:grid;gap:6px;margin:0}.google-review-editorial footer strong{font-size:13px;text-transform:none;letter-spacing:normal}.google-review-editorial .testimonial-origin{font-size:10px;line-height:1.4;display:flex;gap:5px;align-items:center;flex-wrap:wrap}.google-review-editorial footer small{font-size:10px;text-transform:none;letter-spacing:normal}.google-review-editorial .testimonial-flag{width:17px;height:12px;object-fit:cover}
.google-reviews-controls{display:flex;justify-content:center;gap:10px;margin-top:0;flex-shrink:0}.google-reviews-controls button{width:40px;height:40px;border:1px solid #abb7ae;border-radius:50%;background:transparent;color:#19302a;font-size:22px;cursor:pointer}.google-reviews-section :is(a,button):focus-visible{outline:2px solid #19302a;outline-offset:4px}
.google-review-dialog{box-sizing:border-box;width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #d9ded7;border-radius:12px;padding:28px;background:#fff;color:#19302a;font-family:Montserrat,Arial,sans-serif;overscroll-behavior:contain}.google-review-dialog::backdrop{background:#12281fc4}.google-review-dialog h3{font-size:20px;margin:0 0 12px}.google-review-dialog blockquote{font-size:15px;line-height:1.8;margin:24px 0;white-space:pre-line;overflow-wrap:anywhere}.google-review-dialog button{padding:11px 17px;border:1px solid #19302a;background:#19302a;color:#fff;border-radius:5px;cursor:pointer}
@media(min-width:1051px){.google-reviews-section{height:100svh;min-height:0;padding-top:clamp(88px,12vh,112px);padding-bottom:24px;gap:12px}.google-reviews-track{flex:1;max-height:350px}.google-review-card{height:100%}.google-reviews-controls{margin-top:auto}}
@media(min-width:1051px) and (max-height:800px){.google-reviews-section{padding-top:82px;padding-bottom:16px;gap:8px}.google-reviews-heading h2{font-size:30px;max-width:1000px}.google-reviews-heading .kicker{margin-bottom:6px;font-size:9px}.google-reviews-intro{display:none}.google-reviews-section .google-review-card{padding:16px;gap:8px}.google-reviews-section .google-review-text{-webkit-line-clamp:3;font-size:13px;line-height:1.5}.google-reviews-demo{padding:5px 10px;font-size:10px}.google-reviews-controls button{width:34px;height:34px}}
@media(max-width:1050px){.google-reviews-section{padding-block:48px;gap:16px}.google-reviews-section .google-review-card{flex-basis:calc((100% - 20px)/2);min-height:270px}}
@media(max-width:600px){.google-reviews-heading h2{font-size:30px}.google-reviews-intro{font-size:12px}.google-reviews-summary{gap:8px}.google-reviews-actions{margin-inline-start:0;width:100%;justify-content:space-between;gap:10px}.google-reviews-section .google-review-card{flex-basis:90%;padding:20px}.google-reviews-controls{margin-top:0}}
