/* Styles for the .btgr Google Reviews widget markup (used statically in index.html's
   reviews section). These are the same rules injected at runtime by
   /google-reviews/google-reviews.js's injectStyles() function — duplicated here as a
   static stylesheet so the section renders correctly on pages that hardcode the
   widget's HTML output instead of loading the JS widget. */

.btgr {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  border: 1px solid rgba(34, 48, 74, .12);
  border-radius: 18px;
  padding: 22px;
  background: #fff;
  color: #182235;
  box-shadow: 0 18px 45px rgba(20, 32, 54, .08);
  max-width: 980px;
  margin: 0 auto;
}
.btgr * { box-sizing: border-box; }
.btgr__header { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; margin-bottom: 18px; }
.btgr__eyebrow { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #3867d6; font-weight: 800; margin: 0 0 5px; }
.btgr__name { font-size: 22px; line-height: 1.2; margin: 0; font-weight: 800; }
.btgr__summary { text-align: right; min-width: 145px; }
.btgr__rating { font-size: 28px; font-weight: 900; line-height: 1; }
.btgr__stars { color: #f5a623; letter-spacing: 1px; white-space: nowrap; }
.btgr__count { font-size: 13px; color: #667085; margin-top: 4px; }
.btgr__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.btgr__card {
  background: linear-gradient(180deg, rgba(248, 250, 252, .95), rgba(255, 255, 255, .98));
  border: 1px solid rgba(34, 48, 74, .1);
  border-radius: 15px;
  padding: 16px;
  min-height: 185px;
  display: flex;
  flex-direction: column;
}
.btgr__author { font-weight: 800; margin-bottom: 6px; }
.btgr__date { font-size: 12px; color: #778195; margin-bottom: 10px; }
.btgr__text { font-size: 14px; line-height: 1.55; color: #344054; margin: 0 0 12px; flex: 1; }
.btgr__link { display: inline-flex; align-items: center; gap: 8px; color: #174ea6; text-decoration: none; font-weight: 800; font-size: 14px; }
.btgr__link:hover { text-decoration: underline; }
.btgr__footer { margin: 18px 0 0; }
.btgr__powered { margin: 14px 0 0; text-align: right; font-size: 11px; line-height: 1.35; color: #98a2b3; }
.btgr__powered a { color: #667085; text-decoration: none; font-weight: 800; }
.btgr__powered a:hover { text-decoration: underline; }
.btgr__state { padding: 18px; border-radius: 14px; background: #f8fafc; color: #344054; }
.btgr--dark { background: #101827; color: #f8fafc; border-color: rgba(255, 255, 255, .14); box-shadow: 0 18px 45px rgba(0, 0, 0, .26); }
.btgr--dark .btgr__card {
  background: linear-gradient(180deg, rgba(28, 40, 61, .98), rgba(18, 27, 43, .98));
  border-color: rgba(255, 255, 255, .12);
}
.btgr--dark .btgr__text, .btgr--dark .btgr__count, .btgr--dark .btgr__date { color: #cbd5e1; }
.btgr--dark .btgr__state { background: #172033; color: #dbeafe; }
.btgr--dark .btgr__link { color: #8ab4ff; }
.btgr--dark .btgr__powered { color: #94a3b8; }
.btgr--dark .btgr__powered a { color: #cbd5e1; }
@media (max-width: 820px) {
  .btgr__grid { grid-template-columns: 1fr; }
  .btgr__header { display: block; }
  .btgr__summary { text-align: left; margin-top: 12px; }
}
