/* Shared structure; each strip uses its site's established colour palette. */
.reviews-section{--review-ink:#243f58;--review-muted:#40566c;--review-accent:#365f88;--review-background:#f4f8fc;--review-tint:#eaf3fb;--review-edge:#dce7ef;--review-end:#faedf1;color:var(--review-ink);background:linear-gradient(120deg,var(--review-background),var(--review-end));padding:64px 0 56px;border-block:1px solid var(--review-edge)}
.reviews-section.theme-property{--review-ink:#182b42;--review-muted:#46566a;--review-accent:#b63835;--review-background:#f4f7fa;--review-tint:#fff0ee;--review-edge:#d6e0e9;--review-end:#f8f3ee}
.reviews-section.theme-earth{--review-ink:#293b31;--review-muted:#47554b;--review-accent:#486147;--review-background:#f7f4ed;--review-tint:#e5ebdc;--review-edge:#d9ddd2;--review-end:#edf1e8}
.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-bottom:28px}.reviews-heading>div{max-width:680px}.reviews-eyebrow{margin:0 0 13px!important;color:var(--review-accent);font-size:14px!important;line-height:1.6!important;letter-spacing:1.1px;font-weight:650;text-transform:uppercase}.reviews-heading h2{margin:0 0 14px;font-size:clamp(29px,3vw,39px);line-height:1.3;letter-spacing:-.7px;color:var(--review-ink)}.reviews-heading h2 span{color:var(--review-accent)}.reviews-intro{max-width:610px;margin:0!important;color:var(--review-muted);font-size:18px!important;line-height:1.75!important}
.review-google-badge{display:grid;grid-template-columns:43px auto 1fr 18px;align-items:center;gap:14px;flex:none;max-width:100%;padding:19px 22px;border:1px solid var(--review-edge);border-radius:22px;background:#fff;color:var(--review-ink);text-decoration:none;transition:border-color .18s,transform .18s}.review-google-badge:hover{border-color:var(--review-accent);transform:translateY(-2px)}.review-profile-icon{width:43px;height:43px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:var(--review-tint);color:var(--review-accent)}.review-google-count{font-size:40px;line-height:1.15;font-weight:650;letter-spacing:-1px}.review-google-label{font-size:16px;line-height:1.55;white-space:nowrap}.review-google-label strong{font-weight:650}.review-google-label small{display:block;font-size:14px;color:var(--review-muted);line-height:1.65;margin-top:2px}.review-badge-arrow{color:var(--review-accent);display:flex}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.review-card{min-width:0;margin:0;padding:26px 26px 21px;border:1px solid var(--review-edge);border-radius:24px;background:#fff;display:flex;flex-direction:column;box-shadow:0 4px 14px #182b4204}.review-card-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:19px}.review-quote-icon{display:flex;align-items:center;justify-content:center;flex:none;width:43px;height:43px;border-radius:14px;background:var(--review-tint);color:var(--review-accent)}.review-quote-icon svg{width:26px;height:26px}.review-topic{font-size:15px;line-height:1.5;color:var(--review-muted);text-align:right}.review-card blockquote{margin:0 0 24px;padding:0;border:0}.review-card blockquote p{font-size:19px!important;line-height:1.75!important;font-weight:500;color:var(--review-ink);margin:0!important;max-width:none}.review-card figcaption{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:3px}.review-avatar{width:43px;height:43px;border-radius:50%;background:var(--review-background);border:1px solid var(--review-edge);color:var(--review-accent);font-size:15px;font-weight:650;display:flex;align-items:center;justify-content:center;flex:none}.review-card figcaption strong{display:block;font-size:17px;font-weight:650;line-height:1.6;color:var(--review-ink)}.review-city{display:block;font-size:16px;line-height:1.6;color:var(--review-muted)}.review-source{display:flex;align-items:center;gap:8px;width:fit-content;margin-top:19px;padding-top:16px;border-top:1px solid var(--review-edge);font-size:15px;line-height:1.6;color:var(--review-accent);text-decoration:none}.review-source:hover{text-decoration:underline}.reviews-footnote{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-top:22px}.reviews-footnote p{font-size:16px!important;line-height:1.65!important;color:var(--review-muted);margin:0!important}.reviews-footnote a{display:inline-flex;align-items:center;gap:8px;flex:none;font-size:16px;line-height:1.65;font-weight:600;text-decoration:none;color:var(--review-accent)}.reviews-footnote a:hover{text-decoration:underline}.reviews-section a:focus-visible{outline:3px solid var(--review-accent);outline-offset:5px}
@media(max-width:1100px){.reviews-heading{align-items:start;flex-direction:column;gap:23px}.review-google-badge{padding:16px 20px}.reviews-heading>div{max-width:760px}.reviews-grid{gap:16px}.review-card{padding:24px 22px 20px}}
@media(max-width:760px){.reviews-section{padding:48px 0 43px}.reviews-grid{grid-template-columns:1fr}.review-card{padding:25px}.review-card-top{margin-bottom:16px}.review-card blockquote{margin-bottom:22px}.review-card blockquote p{font-size:19px!important}.reviews-heading h2{font-size:31px}.reviews-heading{margin-bottom:25px}.reviews-footnote{flex-direction:column;gap:12px}.review-google-count{font-size:35px}.review-google-badge{gap:12px}.review-google-label{font-size:16px}}
@media(max-width:380px){.review-google-badge{padding:15px;grid-template-columns:37px auto 1fr;gap:10px}.review-profile-icon{width:37px;height:37px}.review-badge-arrow{display:none}.review-google-count{font-size:33px}.review-google-label{font-size:15px}.review-google-label small{font-size:13px}.reviews-heading h2{font-size:29px}.review-card{padding:23px}}
@media(prefers-reduced-motion:reduce){.review-google-badge{transition:none}}
@media print{.reviews-section{background:#fff;padding:25px 0;color:#222}.reviews-grid{grid-template-columns:repeat(3,1fr)}.review-card{break-inside:avoid;box-shadow:none}.review-google-badge{display:none}.review-source{font-size:11pt}}
