.google-reviews{padding:48px 0;background:#fff;color:var(--ink)}
.google-reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}
.google-reviews-heading h2{font-family:inherit;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.2;margin:10px 0}
.google-reviews-heading .text-link{flex-shrink:0;color:var(--ink)}
.google-reviews-note,.google-review time{color:var(--muted);font-size:.78rem}
.google-reviews-carousel{position:relative}
.google-reviews-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;align-items:start;padding:2px 0 12px;scrollbar-width:thin;scrollbar-color:var(--line) #fff}
.google-review{padding:20px;min-width:0;background:var(--paper);border-radius:14px;overflow-wrap:anywhere;scroll-snap-align:start;min-height:250px}
.google-review-author{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.google-review-avatar-wrap{display:grid;flex:0 0 40px;width:40px;height:40px}
.google-review-avatar{grid-area:1/1;width:40px;height:40px;object-fit:cover;border-radius:50%;background:var(--blue);color:#fff}
.google-review-avatar[hidden]{display:none}
.google-review-initial{display:grid;place-items:center;font-family:inherit;font-size:1rem;font-weight:700}
.google-review-author-copy{flex:1;min-width:0}
.google-review h3{font-family:inherit;font-size:16px;margin:0 0 3px;line-height:1.4}
.review-google-logo{width:22px;height:22px;flex:0 0 22px;align-self:flex-start;margin-top:2px}
.review-google-blue{fill:#4285f4}
.review-google-red{fill:#ea4335}
.review-google-yellow{fill:#fbbc05}
.review-google-green{fill:#34a853}
.review-source-badge{width:17px;height:17px;flex:0 0 17px}
.review-badge-seal{fill:#1769ce}
.review-badge-check{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.google-review-rating{display:flex;align-items:center;gap:8px;color:var(--ink);margin:0 0 10px;font-size:.72rem}
.google-review-rating>span:first-child{display:flex;gap:1px}
.google-review-rating .context-icon{width:18px;height:18px;color:#fbbc04;fill:#fbbc04;stroke-width:1}
.google-review-comment{white-space:pre-line;line-height:1.55;margin:0;font-size:16px}
.google-review:has(.google-review-details[open]) .google-review-preview{display:none}
.google-review-details summary{order:2;list-style:none;cursor:pointer;color:var(--muted);font-size:.8rem;margin-top:12px;width:fit-content;text-decoration:underline;text-underline-offset:3px}
.google-review-details summary::-webkit-details-marker{display:none}
.google-review-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.google-review-details:not([open]) .google-review-less,.google-review-details[open] .google-review-more{display:none}
.google-reviews-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}
.google-reviews-controls[hidden]{display:none}
.google-reviews-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer}
.google-reviews-controls button:disabled{color:var(--muted);cursor:default}
@media(max-width:1100px){.google-reviews-grid{grid-auto-columns:calc((100% - 32px)/3)}}
@media(max-width:800px){.google-reviews-heading{align-items:flex-start;flex-direction:column;gap:8px}.google-reviews-grid{grid-auto-columns:calc((100% - 16px)/2)}.google-reviews{padding:36px 0}.google-reviews-heading .text-link{flex-shrink:1}}
@media(max-width:520px){.google-reviews-grid{grid-auto-columns:86%}.google-review{min-height:230px}}

.google-reviews .context-icon{width:20px;height:20px;vertical-align:middle}.google-reviews :focus-visible{outline:2px solid var(--blue);outline-offset:4px}.google-reviews-heading .text-link{text-decoration:underline}.google-reviews-heading .eyebrow{color:var(--blue);font-size:13px;font-weight:700;letter-spacing:1px}
