/* Reviews Page */
.reviews-page {
  padding: 90px 0;
  background: #F8FAFC;
  font-family: 'Inter', sans-serif;
  color: #0A2540;
}

/* Header */
.reviews-header {
  text-align: center;
  max-width: 800px;
  margin-bottom: 60px;
}

.reviews-header h1 {
  font-size: 2.8rem;
  font-weight: 800;
  margin-bottom: 15px;
}

.reviews-header p {
  font-size: 1.1rem;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 25px;
}

.reviews-google {
  display: inline-block;
}

/* Grid */
.reviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
}

/* Review Card */
.review-card {
  background: #FFFFFF;
  padding: 30px;
  border-radius: 18px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  justify-content: flex-start !important;
}

.review-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 25px 60px rgba(0,0,0,0.1);
}

/* Card Top */
.review-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.review-top h3 {
  font-size: 1.1rem;
  font-weight: 700;
}

.review-top span {
  font-size: 0.9rem;
  color: #64748B;
}

/* Date */
.review-date {
  font-size: 0.85rem;
  color: #94A3B8;
  margin-bottom: 15px;
}

/* Text */
.review-text {
  font-size: 0.95rem;
  line-height: 1.7;
  color: #334155;
}

/* Responsive */
@media (max-width: 768px) {
  .reviews-header h1 {
    font-size: 2.2rem;
  }

  .reviews-page {
    padding: 50px 0px;
  }
}

/* Dynamic GMB Styles */
.gmb-reviews-section { font-family: 'Inter', sans-serif; max-width: 1200px; margin: 0 auto; padding: 80px 20px; }
        .gmb-section-title { text-align: center; margin-bottom: 40px; font-family: 'Poppins', sans-serif; color: #0A2540; font-size: 2.2rem; }
        .gmb-reviews-grid { display: grid; grid-template-columns: repeat(1, 1fr); gap: 30px; }
        @media (min-width: 768px) { .gmb-reviews-grid { grid-template-columns: repeat(2, 1fr); } }
        @media (min-width: 1024px) {
          .gmb-reviews-grid { grid-template-columns: repeat(6, 1fr); }
          .gmb-review-card { grid-column: span 2; }
          .gmb-review-card:nth-child(4) { grid-column: 1 / span 3; }
          .gmb-review-card:nth-child(5) { grid-column: 4 / span 3; }
        }
        .gmb-review-card { background: #FFFFFF; border: 1px solid #E5E7EB; border-radius: 16px; padding: 24px; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05); transition: transform 0.3s ease, box-shadow 0.3s ease; display: flex; flex-direction: column; }
        .gmb-review-card:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(10, 37, 64, 0.08); border-color: #38BDF8; }
        .gmb-review-header { display: flex; align-items: center; margin-bottom: 16px; }
        .gmb-review-avatar { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; background-color: #F8FAFC; margin-right: 16px; }
        .gmb-avatar-fallback { display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #38BDF8, #0A2540); color: #FFFFFF; font-weight: 700; font-size: 1.2rem; }
        .gmb-review-meta { flex: 1; }
        .gmb-review-author { font-weight: 600; color: #0A2540; font-size: 1.05rem; margin: 0 0 4px 0; line-height: 1.2; }
        .gmb-review-time { font-size: 0.85rem; color: #6B7280; margin: 0; }
        .gmb-review-stars { color: #FBBF24; font-size: 1.1rem; margin-bottom: 12px; letter-spacing: 2px; }
        .gmb-review-text { font-size: 0.95rem; color: #4B5563; line-height: 1.6; margin: 0; flex-grow: 1; }
        .gmb-loading, .gmb-error { text-align: center; grid-column: 1 / -1; color: #6B7280; padding: 40px 0; font-weight: 500; }
