
.reviews-hero{padding-bottom:64px}
.reviews-live-section{background:#f6f8fb}
.google-summary{
  display:flex;align-items:center;justify-content:space-between;gap:26px;
  padding:28px 30px;margin-top:-112px;margin-bottom:56px;position:relative;z-index:3;
  background:#fff;border:1px solid #dfe7ef;border-radius:22px;
  box-shadow:0 18px 55px rgba(16,36,63,.12)
}
.google-summary-main{display:flex;align-items:center;gap:18px}
.google-mark{
  width:58px;height:58px;border-radius:17px;display:grid;place-items:center;
  font-size:34px;font-weight:900;color:#2879cf;background:#edf5fc;border:1px solid #d8e7f6
}
.google-label{font-size:13px;font-weight:900;letter-spacing:.04em;color:#64748b}
.rating-line{display:flex;align-items:center;gap:12px;margin-top:3px}
.rating-line strong{font-size:32px;letter-spacing:-.04em;color:#10243f}
.summary-stars,.review-stars{color:#f4a621;letter-spacing:2px}
.summary-stars{font-size:20px}
.review-count{margin-top:4px;color:#64748b;font-size:14px}
.google-summary-actions{display:flex;gap:12px;flex-wrap:wrap}
.reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.reviews-heading h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.04em;margin:7px 0 0;color:#10243f}
.reviews-heading p{max-width:470px;color:#64748b;line-height:1.6;margin:0}
.google-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.google-review-card{
  background:#fff;border:1px solid #dfe7ef;border-radius:19px;padding:23px;
  box-shadow:0 10px 30px rgba(16,36,63,.07);display:flex;flex-direction:column;min-height:260px
}
.review-card-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.review-avatar{
  width:44px;height:44px;border-radius:50%;overflow:hidden;display:grid;place-items:center;
  background:#edf5fc;color:#2879cf;font-weight:900;flex:0 0 auto
}
.review-avatar img{width:100%;height:100%;object-fit:cover}
.review-author{font-weight:900;color:#10243f;line-height:1.25}
.review-date{font-size:12px;color:#7b8ba0;margin-top:2px}
.review-stars{font-size:15px;margin-bottom:12px}
.review-comment{color:#4b5d73;line-height:1.65;font-size:14px;margin:0;white-space:pre-line}
.review-rating-only{color:#738196;font-style:italic}
.review-google-reply{
  margin-top:18px;padding:14px;border-radius:13px;background:#f6f8fb;border-left:3px solid #2879cf
}
.review-google-reply strong{display:block;font-size:12px;color:#10243f;margin-bottom:5px}
.review-google-reply p{margin:0;color:#64748b;font-size:13px;line-height:1.55}
.reviews-loading,.reviews-empty,.reviews-error{
  grid-column:1/-1;padding:52px 24px;text-align:center;background:#fff;
  border:1px solid #dfe7ef;border-radius:18px;color:#64748b
}
.reviews-error strong{display:block;color:#10243f;margin-bottom:6px}
.reviews-more-wrap{text-align:center;margin-top:28px}
.review-note{
  margin-top:42px;padding:16px 18px;border-radius:14px;border:1px solid #d8e7f6;
  background:#edf5fc;color:#5b6d82;font-size:13px;line-height:1.55
}
@media(max-width:980px){
  .google-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .google-summary{align-items:flex-start;flex-direction:column}
}
@media(max-width:680px){
  .google-summary{margin-top:-88px;padding:22px}
  .google-reviews-grid{grid-template-columns:1fr}
  .reviews-heading{align-items:flex-start;flex-direction:column}
  .google-summary-actions{width:100%}
  .google-summary-actions .btn{flex:1}
}

.review-author-link{color:inherit;text-decoration:none}
.review-author-link:hover{text-decoration:underline}
.review-source-link{display:inline-block;margin-top:auto;padding-top:18px;color:#2879cf;font-size:12px;font-weight:800;text-decoration:none}
.review-source-link:hover{text-decoration:underline}
.google-maps-attribution{display:flex;justify-content:flex-end;margin-top:16px;color:#5e5e5e;font-family:Roboto,Arial,sans-serif;font-size:13px}
