/* Reviews (Google) — FINAL */

/* util */
.sr-only{
  position:absolute!important;
  width:1px;height:1px;margin:-1px;padding:0;border:0;
  overflow:hidden;white-space:nowrap;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
}

/* título e espaçamento */
.reviews-google{ margin-top:36px }
.reviews-google h2{ margin:0 0 6px }

/* resumo (média + total) */
.r-summary{
  display:flex;align-items:center;gap:10px;
  color:var(--muted, #6b6b6b);margin:6px 0 16px;
}
.r-summary .r-stars{ display:flex;gap:4px }
.r-summary .r-stars svg{ width:18px;height:18px;fill:var(--accent, #f59e0b) }

/* carrossel mobile */
.r-grid{
  display:flex;gap:var(--gap, 18px);
  overflow-x:auto;scroll-snap-type:x mandatory;
  padding:8px 2px 12px;
  -webkit-overflow-scrolling:touch;
}
.r-grid::-webkit-scrollbar{ height:8px }
.r-grid::-webkit-scrollbar-thumb{ background:#e6e6e6;border-radius:10px }

/* neutraliza regras globais de SVG */
.reviews-google svg{ max-width:none;width:auto;height:auto }
/* tamanho fixo das estrelas */
.reviews-google .r-stars svg{
  width:18px!important;height:18px!important;display:inline-block;flex:0 0 18px;
}
.reviews-google .r-stars svg.empty{ fill:#e8e8e8 }

/* card */
.r-card{
  background:#fff;border:1px solid #eee;border-radius:14px;
  padding:18px;min-width:300px;max-width:360px;
  scroll-snap-align:start;position:relative;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
}

/* texto do review */
.r-text{ color:var(--dark, #222); overflow-wrap:anywhere }
.r-text.clamp{ display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden }
.r-more{ margin-top:6px;font-size:13px;color:var(--accent, #f59e0b);cursor:pointer;background:none;border:0;padding:0 }

/* autor */
.r-author{ display:flex;align-items:center;gap:10px;margin-top:12px }
.r-avatar{
  width:36px;height:36px;border-radius:50%;flex:none;
  background:#ffe8c2;color:#7a4b00;display:flex;align-items:center;justify-content:center;font-weight:700;
}
.r-meta{ display:flex;flex-direction:column }
.r-meta strong{ line-height:1.1 }
.r-meta span{ font-size:12px;color:var(--muted, #6b6b6b) }

/* CTA */
.r-cta{ margin-top:10px;text-align:center }

/* desktop: vira grid e desativa snap */
@media (min-width:920px){
  .r-grid{ display:grid;grid-template-columns:repeat(3,1fr);overflow:visible;scroll-snap-type:none }
  .r-card{ min-width:auto }
}
