/* Familiar review cards, with the original client words and source kept visible. */
.google-reviews{
  margin-top:32px;
  padding:28px;
  border:1px solid #e1e7e9;
  border-radius:22px;
  background:#f0f3f3;
}
.google-reviews .google-reviews-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:23px;
}
.google-reviews .google-reviews-header h3{
  margin:0;
  color:#243f50;
  font-size:23px;
  font-weight:550;
  line-height:1.25;
  letter-spacing:-.035em;
}
.google-reviews .google-reviews-header p{
  margin:7px 0 0;
  color:#74838c;
  font-size:11px;
  line-height:1.55;
}
.google-reviews .google-reviews-header>a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex:none;
  color:#476b84;
  font-size:11px;
  line-height:1.5;
  text-decoration:underline;
  text-underline-offset:4px;
}
.google-reviews .google-reviews-header>a svg{width:14px;height:14px}
.google-reviews .google-reviews-logo{
  display:block;
  width:76px;
  height:auto;
  margin-bottom:10px;
}
.google-reviews .google-review-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:17px;
  align-items:stretch;
}
.google-reviews .google-review-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:292px;
  margin:0;
  padding:23px 22px 19px;
  border:1px solid #e5e9ec;
  border-radius:18px;
  background:#fff;
  box-shadow:0 4px 15px #19384c05;
}
.google-reviews .google-review-top{display:flex;align-items:center;gap:12px;min-width:0}
.google-reviews .google-review-avatar,
.google-reviews .google-review-top>img{
  display:grid;
  place-items:center;
  flex:none;
  width:43px;
  height:43px;
  border-radius:50%;
  overflow:hidden;
  background:#e8eef5;
  color:#446887;
  font-size:13px;
  font-weight:550;
  letter-spacing:-.025em;
  object-fit:cover;
}
.google-reviews .google-review-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.google-reviews .google-review-card:nth-child(2) .google-review-avatar{background:#e9e5f2;color:#77608d}
.google-reviews .google-review-card:nth-child(3) .google-review-avatar{background:#f2e9df;color:#8c6744}
.google-reviews .google-review-person{min-width:0}
.google-reviews .google-review-person h4{
  margin:0;
  color:#2e404b;
  font-size:13px;
  line-height:1.4;
  font-weight:600;
  letter-spacing:-.015em;
}
.google-reviews .google-review-person p{margin:3px 0 0;color:#839099;font-size:10px;line-height:1.4}
.google-reviews .google-review-rating{display:flex;align-items:center;gap:2px;margin-top:6px;color:#f4b400}
.google-reviews .google-review-rating svg{display:block;width:14px;height:14px;fill:currentColor;stroke:none}
.google-reviews .google-review-quote{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
  min-height:6.4em;
  max-height:6.4em;
  margin:20px 0 10px;
  color:#5d6a73;
  font-size:13px;
  font-weight:400;
  line-height:1.6;
  letter-spacing:-.01em;
}
.google-reviews .google-review-more{
  display:inline-flex;
  align-items:center;
  gap:6px;
  align-self:flex-start;
  margin:0 0 20px;
  padding:3px 0;
  background:transparent;
  border:0;
  color:#647c8f;
  font-size:11px;
  line-height:1.5;
  text-align:left;
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
}
.google-reviews .google-review-more:hover{color:#1c62ac}
.google-reviews .google-review-more svg{width:13px;height:13px}
.google-reviews .google-review-source{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:auto;
  padding-top:14px;
  border-top:1px solid #edf0f2;
  color:#89959d;
  font-size:10px;
  line-height:1.4;
}
.google-reviews .google-review-source a{display:inline-flex;align-items:center;gap:8px;color:inherit}
.google-reviews .google-review-source a:hover{color:#366c9c}
.google-reviews .google-review-source svg,
.google-reviews .google-review-source img{display:block;flex:none;width:17px;height:17px}
.google-reviews button:focus-visible,
.google-reviews a:focus-visible{outline:2px solid #4285d0;outline-offset:4px;border-radius:3px}
@media(max-width:1000px) and (min-width:701px){
  .google-reviews{padding:23px}
  .google-reviews .google-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
  .google-reviews .google-review-card:last-child{grid-column:1/-1;min-height:0}
  .google-reviews .google-review-card:last-child .google-review-quote{min-height:0;max-width:80ch}
}
@media(max-width:700px){
  .google-reviews{margin-top:27px;padding:20px;border-radius:20px}
  .google-reviews .google-reviews-header{align-items:flex-start;gap:15px;margin-bottom:20px}
  .google-reviews .google-reviews-header h3{font-size:21px}
  .google-reviews .google-reviews-header p{font-size:10px;max-width:38ch}
  .google-reviews .google-reviews-header>a{font-size:10px;max-width:13ch}
  .google-reviews .google-reviews-logo{width:69px;margin-bottom:9px}
  .google-reviews .google-review-grid{grid-template-columns:1fr;gap:13px}
  .google-reviews .google-review-card{min-height:0;padding:21px;border-radius:16px}
  .google-reviews .google-review-quote{min-height:0;margin:18px 0 9px;font-size:13px;line-height:1.6}
  .google-reviews .google-review-more{margin-bottom:18px}
  .google-reviews .google-review-source{padding-top:13px}
}
@media(max-width:380px){
  .google-reviews{padding:16px}
  .google-reviews .google-reviews-header{display:block}
  .google-reviews .google-reviews-header>a{margin-top:12px;max-width:none}
  .google-reviews .google-review-card{padding:19px 17px}
  .google-reviews .google-review-person h4{font-size:12px}
  .google-reviews .google-review-quote{font-size:12px}
}

/* Google summary uses the verified business rating, not an invented score for each excerpt. */
.google-reviews{padding:29px 0 0;border:0;border-radius:0;background:transparent}
.google-reviews .google-reviews-header{justify-content:center;flex-wrap:wrap;gap:24px;margin-bottom:28px}
.google-reviews .google-reviews-logo{width:108px;height:auto;margin:0}
.google-reviews .google-rating-summary{display:flex;align-items:center;gap:15px;padding:14px 20px;border:1px solid #e3e8ec;border-radius:14px;background:#fff}
.google-reviews .google-rating-summary>strong{font-size:34px;font-weight:650;line-height:1;color:#31363a}
.google-reviews .google-rating-summary p{margin:4px 0 0;font-size:11px;color:#738089}
.google-reviews .google-rating-summary a{color:inherit}
.google-reviews .google-rating-stars{width:96px;height:17px;background:linear-gradient(90deg,#fbbc04 98%,#dde3e6 98%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.google-reviews .google-rating-stars>span{display:flex;gap:2px;background:#fff;mix-blend-mode:lighten}
.google-reviews .google-rating-stars svg{display:block;width:17px;height:17px;fill:#000;flex:none}
.google-reviews .google-reviews-header>.google-all-reviews{flex-basis:100%;justify-content:center;font-size:11px;margin-top:-13px;max-width:none}
.google-reviews .google-review-person h4{font-size:14px}
.google-reviews .google-review-quote{font-size:14px;line-height:1.7;min-height:6.8em;max-height:6.8em}
.google-reviews .google-review-source{justify-content:space-between;border:0;padding-top:10px}
.google-reviews .google-review-source a{color:#145dab;font-size:12px;font-weight:550}
.google-reviews .google-review-source img{width:22px;height:22px}
.google-reviews .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:700px){.google-reviews{padding:20px 0 0}.google-reviews .google-reviews-header{display:flex;align-items:center;gap:15px}.google-reviews .google-reviews-logo{width:85px}.google-reviews .google-rating-summary{gap:10px;padding:12px 13px}.google-reviews .google-rating-summary>strong{font-size:28px}.google-reviews .google-rating-summary p{font-size:10px}.google-reviews .google-reviews-header>.google-all-reviews{margin-top:0}.google-reviews .google-review-quote{font-size:13px;min-height:0;max-height:6.8em}}
@media(max-width:380px){.google-reviews .google-reviews-header{gap:13px}.google-reviews .google-reviews-logo{width:76px}.google-reviews .google-rating-summary{padding:11px 12px}.google-reviews .google-rating-summary>strong{font-size:26px}.google-reviews .google-review-person h4{font-size:13px}}
