.google-reviews{margin:70px 0 40px;padding:38px 0 8px;border-top:1px solid var(--lilac-line);text-align:center}
.reviews-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.18em;color:var(--lilac-dark);margin:0 0 12px}
.google-reviews h2{font-family:'Fraunces',serif;font-size:clamp(1.9rem,4vw,2.6rem);font-weight:500;color:var(--plum);line-height:1.2;margin:0 0 12px}
.reviews-intro,.reviews-empty{color:#614d77;font-size:1rem;line-height:1.65}
.reviews-track{position:relative;display:flex;gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:2px;padding:16px 2px 22px;text-align:left;scrollbar-width:thin;scrollbar-color:var(--lilac) transparent;touch-action:pan-x pan-y pinch-zoom}
.review-card{flex:0 0 calc((100% - 40px)/3);min-width:0;background:linear-gradient(150deg,#fff 55%,#f5effb);border:1px solid var(--lilac-line);border-radius:22px;padding:25px;scroll-snap-align:start;box-shadow:0 8px 22px #3b1d6308;display:flex;flex-direction:column;overflow-wrap:anywhere}
.review-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:20px;align-items:center}
.review-author{font-weight:700;color:var(--plum);font-size:1rem;text-decoration-thickness:1px;text-underline-offset:4px}
.review-rating{font-size:1.1rem;letter-spacing:.05em;color:var(--lilac-dark);white-space:nowrap}
.review-text{margin:0 0 24px;font-size:1rem;line-height:1.75;white-space:pre-wrap;color:var(--ink)}
.review-footer{margin-top:auto;display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;font-size:.82rem;color:#614d77}
.review-footer a{color:var(--lilac-dark);text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px}
.reviews-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin:4px 0 12px}
.reviews-controls button{width:48px;height:48px;flex-shrink:0;border:1px solid var(--lilac-line);border-radius:50%;font-size:1.3rem;background:#fff;color:var(--plum);cursor:pointer}
.reviews-controls button:hover:not(:disabled){background:var(--lilac-soft);border-color:var(--lilac-dark)}
.reviews-controls button:disabled{opacity:.4;cursor:default}
.reviews-notice{max-width:76ch;margin:8px auto 24px;color:#614d77;font-size:.82rem;line-height:1.65}
.reviews-all{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border-radius:99px;padding:12px 24px;background:var(--lilac-dark);color:#fff;font-weight:700;text-decoration:none;line-height:1.4;max-width:100%}
.reviews-all:hover{background:var(--plum)}
.google-reviews :focus-visible{outline:3px solid var(--lilac-dark);outline-offset:4px}
.google-reviews [hidden]{display:none!important}
.reviews-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:900px){.review-card{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:580px){.review-card{flex-basis:calc(100% - 18px);padding:22px}.google-reviews{margin-top:48px}.reviews-all{font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.reviews-track{scroll-behavior:auto!important}.google-reviews *{transition:none!important;animation:none!important}}

.reviews-fresha{margin:12px 0 0 12px;background:#fff;color:var(--lilac-dark);border:1px solid var(--lilac-dark)}
.reviews-fresha:hover{background:var(--lilac-soft)}
@media(max-width:580px){.reviews-fresha{margin-left:0}}

/* The empty state is a visible source directory, not fictional review cards. */
.google-reviews{padding:clamp(24px,5vw,44px);border:1px solid var(--lilac-line);border-radius:28px;background:linear-gradient(150deg,#fff 35%,#f5effb)}
.reviews-destinations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px auto 4px;max-width:880px}
.reviews-source-card{min-width:0;padding:24px 18px;background:#fff;border:1px solid var(--lilac-line);border-radius:20px;overflow-wrap:anywhere}
.reviews-source-card h3{font-family:'Fraunces',serif;color:var(--plum);font-size:1.4rem;font-weight:500;margin:0 0 10px}
.reviews-source-card p{color:#614d77;font-size:.94rem;line-height:1.65;margin:0 0 20px}
.reviews-destinations .reviews-all{margin:0;box-sizing:border-box;overflow-wrap:anywhere;white-space:normal}
.reviews-jump{margin-left:24px}
@media(max-width:640px){.reviews-destinations{grid-template-columns:minmax(0,1fr)}.reviews-source-card{padding:22px 14px}.reviews-jump{display:block;margin-left:0}}
