/* Live Google Reviews — Editorial Bold styling. */

.g-reviews{padding:clamp(48px,6vw,96px) 0;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);}

.g-reviews__head{
  display:flex;justify-content:space-between;align-items:flex-end;
  flex-wrap:wrap;gap:24px;
  padding-bottom:32px;border-bottom:1px solid var(--c-line);margin-bottom:32px;
}
.g-reviews__rating{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.g-reviews__num{font-family:var(--f-display);font-size:clamp(40px,5vw,72px);line-height:1;color:var(--c-ink)}
.g-reviews__stars{font-size:22px;letter-spacing:.08em;color:var(--c-accent)}
.g-reviews__total{font-family:var(--f-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--c-mute)}
.g-reviews__cta{
  font-family:var(--f-display);font-size:13px;letter-spacing:.1em;text-transform:uppercase;
  border-bottom:2px solid var(--c-accent);padding-bottom:4px;
}
.g-reviews__cta:hover{background:var(--c-accent);color:var(--c-ink);padding:4px 8px;border-bottom-color:transparent}

.g-reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--c-line)}
.g-review{
  padding:32px 28px;
  border-right:1px solid var(--c-line);border-bottom:1px solid var(--c-line);
  display:flex;flex-direction:column;gap:14px;
}
.g-review:nth-child(3n){border-right:0}
@media (max-width:880px){
  .g-reviews__grid{grid-template-columns:1fr 1fr}
  .g-review:nth-child(3n){border-right:1px solid var(--c-line)}
  .g-review:nth-child(2n){border-right:0}
}
@media (max-width:560px){
  .g-reviews__grid{grid-template-columns:1fr}
  .g-review{border-right:0}
}

.g-review__head{display:flex;align-items:center;gap:12px}
.g-review__avatar{width:36px;height:36px;border-radius:50%;flex:0 0 36px;background:var(--c-paper-2);object-fit:cover}
.g-review__avatar--placeholder{background:var(--c-paper-3)}
.g-review__author{font-family:var(--f-display);font-size:14px;letter-spacing:.04em;text-transform:uppercase;line-height:1}
.g-review__meta{display:flex;gap:10px;align-items:center;margin-top:4px;font:11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c-mute)}
.g-review__stars{color:var(--c-accent);letter-spacing:.06em}
.g-review__text{font-size:14px;line-height:1.6;color:var(--c-ink-2);
  display:-webkit-box;-webkit-line-clamp:8;-webkit-box-orient:vertical;overflow:hidden;
}

/* When live data isn't available, hide the empty wrapper */
[data-google-reviews][data-g-reviews-state="fallback"]:empty{display:none}
[data-google-reviews][data-g-reviews-state=""]:empty{min-height:120px}
