.rk-google-reviews {
	--rk-review-blue: #2f6fad;
	--rk-review-star: #fbbc04;
	--rk-review-border: var(--rk-color-border, #e3ded5);
	color: var(--rk-color-ink, #211f1d);
	font-family: var(--rk-font-body, "Libre Franklin", sans-serif);
}
.rk-google-reviews__summary { display: grid; justify-items: center; gap: 0.4rem; margin-bottom: clamp(3rem, 7vw, 7rem); text-align: center; }
.rk-google-reviews__score { font: 400 clamp(3rem, 6vw, 5rem)/1 var(--rk-font-numeral, Montserrat, sans-serif); }
.rk-google-reviews__stars, .rk-google-review > .rk-google-reviews__stars { color: var(--rk-review-star); font-size: clamp(1.15rem, 2vw, 1.75rem); letter-spacing: 0.08em; white-space: nowrap; }
.rk-google-reviews__count { margin: 0; font-family: var(--rk-font-ui, Helvetica, Arial, sans-serif); }
.rk-google-reviews__google-wordmark { display: inline-flex; margin-left: 0.18em; font-weight: 600; letter-spacing: -0.08em; }
.rk-google-reviews__google-wordmark > :nth-child(1), .rk-google-reviews__google-wordmark > :nth-child(4) { color: #4285f4; }
.rk-google-reviews__google-wordmark > :nth-child(2), .rk-google-reviews__google-wordmark > :nth-child(6) { color: #ea4335; }
.rk-google-reviews__google-wordmark > :nth-child(3) { color: #fbbc05; }
.rk-google-reviews__google-wordmark > :nth-child(5) { color: #34a853; }
.rk-google-reviews__button { display: inline-flex; min-height: 3.25rem; align-items: center; justify-content: center; margin-top: 1rem; padding: 0.75rem 2rem; border-radius: 999px; background: var(--rk-review-blue); color: white; font-family: var(--rk-font-ui, Helvetica, Arial, sans-serif); text-decoration: none; }
.rk-google-reviews__button:hover { background: color-mix(in srgb, var(--rk-review-blue) 84%, black); color: white; }
.rk-google-reviews__body { display: grid; grid-template-columns: auto 1fr; gap: clamp(2rem, 5vw, 6rem); }
.rk-google-reviews__rail { display: flex; align-items: center; gap: 1.25rem; writing-mode: vertical-rl; transform: rotate(180deg); font-family: var(--rk-font-ui, Helvetica, Arial, sans-serif); letter-spacing: 0.28em; text-transform: uppercase; }
.rk-google-reviews__rail::after { content: ""; flex: 1; min-height: 10rem; border-left: 2px dotted currentColor; }
.rk-google-reviews__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 2.5rem); }
.rk-google-review { display: flex; min-width: 0; flex-direction: column; padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid var(--rk-review-border); background: var(--rk-color-paper, white); }
.rk-google-review__author { display: grid; grid-template-columns: 3rem 1fr auto; align-items: center; gap: 0.75rem; margin-bottom: 1.25rem; }
.rk-google-review__author img, .rk-google-review__initial { display: grid; width: 3rem; aspect-ratio: 1; place-items: center; border-radius: 50%; background: var(--rk-mist-500, #d5d9d5); object-fit: cover; }
.rk-google-review__author strong, .rk-google-review__author small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rk-google-review__author small { margin-top: 0.2rem; color: var(--rk-color-muted, #68645f); }
.rk-google-review__source { color: var(--rk-color-muted, #68645f); font: 600 0.75rem/1 var(--rk-font-ui, Helvetica, Arial, sans-serif); letter-spacing: 0.04em; text-decoration: none; }
.rk-google-review__source:is(:hover, :focus-visible) { color: var(--rk-color-ink, #211f1d); text-decoration: underline; text-underline-offset: 0.2em; }
.rk-google-review__text { margin: 0.8rem 0 0; font-size: clamp(1rem, 1.3vw, 1.2rem); line-height: 1.55; }
.rk-google-review__more { align-self: flex-start; margin-top: auto; padding: 1rem 0 0; border: 0; background: none; color: var(--rk-review-blue); text-decoration: underline; text-underline-offset: 0.25em; }
.rk-google-reviews__empty { grid-column: 1 / -1; display: grid; gap: 0.5rem; padding: 3rem; border: 1px dashed var(--rk-review-border); text-align: center; }
.rk-google-reviews.is-stacked .rk-google-reviews__body { grid-template-columns: 1fr; }
.rk-google-reviews.is-stacked .rk-google-reviews__rail { flex-direction: row; writing-mode: horizontal-tb; transform: none; }
.rk-google-reviews.is-stacked .rk-google-reviews__rail::after { min-width: 8rem; min-height: 0; border-top: 2px dotted currentColor; border-left: 0; }

@media (max-width: 63.99rem) { .rk-google-reviews__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 47.99rem) {
	.rk-google-reviews__summary { margin-bottom: 3rem; }
	.rk-google-reviews__body { grid-template-columns: 1fr; }
	.rk-google-reviews__rail { flex-direction: row; writing-mode: horizontal-tb; transform: none; font-size: 0.8rem; }
	.rk-google-reviews__rail::after { min-width: 4rem; min-height: 0; border-top: 2px dotted currentColor; border-left: 0; }
	.rk-google-reviews__cards { grid-template-columns: 1fr; }
}
