/* FindBangkokCondo Google Reviews: isolated responsive widget styles */
.google-reviews-section,
.google-reviews-section * { box-sizing: border-box; }
.google-reviews-section { width:100%; max-width:100%; padding:64px 24px; overflow:hidden; background:#f5f7fb; color:#17233b; }
.google-reviews-inner { width:100%; max-width:1080px; margin:0 auto; }
.google-reviews-heading { text-align:center; margin:0 0 18px; }
.google-reviews-heading>span { display:block; margin:0 0 9px; color:#d92736; font-size:11px; line-height:1.4; font-weight:800; letter-spacing:2px; }
.google-reviews-heading h2 { margin:0; color:#102345; font-size:clamp(25px,2.7vw,34px); line-height:1.2; }
.google-reviews-summary { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; margin:0 auto 26px; color:#26354d; }
.google-g-mark { flex:0 0 auto; font-size:24px; line-height:1; font-weight:800; background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 25% 50%,#fbbc05 50% 75%,#ea4335 75%); color:transparent; background-clip:text; -webkit-background-clip:text; }
.google-rating { color:#102345; font-size:25px; line-height:1.2; }
.google-stars,.google-review-stars { color:#f5ad24; letter-spacing:2px; }
.google-review-count { color:#5b6678; font-size:14px; line-height:1.4; }
.google-reviews-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:16px; width:100%; max-width:1000px; margin:0 auto; }
.google-review-card { display:flex; flex-direction:column; align-items:stretch; min-width:0; width:100%; padding:18px 20px; border:1px solid #e5e9f0; border-radius:14px; background:#fff; box-shadow:0 6px 20px rgba(16,35,69,.045); }
.google-review-author { display:flex; align-items:center; gap:11px; min-width:0; width:100%; margin:0 0 10px; }
.google-reviews-section .google-review-author img,
.google-reviews-section .google-review-author > img { display:block !important; width:42px !important; height:42px !important; min-width:42px !important; max-width:42px !important; min-height:42px !important; max-height:42px !important; flex:0 0 42px !important; border-radius:50% !important; object-fit:cover !important; }
.google-review-avatar { display:grid; place-items:center; width:42px; height:42px; min-width:42px; flex:0 0 42px; border-radius:50%; background:#e9eef7; color:#243b62; font-size:17px; font-weight:700; }
.google-review-author-meta { min-width:0; overflow-wrap:anywhere; }
.google-review-author strong { display:block; color:#17233b; font-size:14px; line-height:1.35; font-weight:700; }
.google-review-author a { color:inherit; text-decoration:none; }
.google-review-author small { display:block; margin-top:3px; color:#7b8493; font-size:12px; line-height:1.35; }
.google-review-stars { margin:0 0 8px; font-size:14px; line-height:1.4; }
.google-review-body { min-width:0; flex:1 1 auto; }
.google-review-text { display:-webkit-box !important; -webkit-box-orient:vertical; -webkit-line-clamp:5; overflow:hidden !important; margin:0 0 5px !important; color:#3d485a; font-size:14px !important; line-height:1.65 !important; white-space:pre-wrap; overflow-wrap:anywhere; word-break:normal; }
.google-review-card.is-expanded .google-review-text { display:block !important; -webkit-line-clamp:unset; overflow:visible !important; }
.google-review-toggle { display:none; padding:2px 0; border:0; background:transparent; color:#1d4f91; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.google-review-card.is-long .google-review-toggle { display:inline-block; }
.google-review-source { display:inline-block; align-self:flex-start; margin-top:10px; color:#68758a; font-size:11px; line-height:1.4; text-decoration:none; }
.google-reviews-status { grid-column:1/-1; margin:0; padding:20px; color:#697589; text-align:center; }
.google-reviews-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:22px auto 0; color:#778195; font-size:12px; }
.google-reviews-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:12px 20px; border-radius:7px; background:#d92736; color:#fff; font-size:14px; font-weight:700; text-align:center; text-decoration:none; }
.google-reviews-button:hover { background:#b91f2c; }
@media (min-width:1200px) { .google-reviews-section { padding:58px 24px; } .google-reviews-grid { max-width:1000px; } }
@media (max-width:760px) {
 .google-reviews-section { padding:38px 15px; }
 .google-reviews-inner { max-width:560px; }
 .google-reviews-heading { margin-bottom:14px; }
 .google-reviews-heading>span { font-size:10px; letter-spacing:1.4px; }
 .google-reviews-heading h2 { font-size:25px; line-height:1.22; }
 .google-reviews-summary { gap:7px; margin-bottom:18px; }
 .google-g-mark { font-size:21px; }
 .google-rating { font-size:22px; }
 .google-stars { font-size:13px; letter-spacing:1px; }
 .google-review-count { font-size:12px; }
 .google-reviews-grid { grid-template-columns:minmax(0,1fr); gap:12px; max-width:100%; }
 .google-review-card { padding:15px 15px 13px; border-radius:12px; }
 .google-review-text { -webkit-line-clamp:4; font-size:14px !important; line-height:1.6 !important; }
 .google-review-author { gap:9px; margin-bottom:8px; }
 .google-review-stars { margin-bottom:7px; }
 .google-reviews-footer { flex-direction:column; align-items:stretch; gap:10px; margin-top:18px; text-align:center; }
 .google-reviews-button { width:100%; }
}
@media (max-width:360px) {
 .google-reviews-section { padding-right:12px; padding-left:12px; }
 .google-reviews-heading h2 { font-size:22px; }
 .google-review-card { padding:13px; }
}
