[data-google-reviews] { min-height: 1px; }
.google-review-feed { margin: 2rem 0; color: var(--ink); }
.google-review-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; }
.google-review-logo { height: 18px; width: auto; padding: 10px 0 5px; box-sizing: content-box; }
.google-review-rating { margin: 0; color: var(--forest); font-weight: 700; }
.google-review-note { font-size: .85rem; color: #59645d; }
.google-review-cards { margin: 1.5rem 0; }
.google-review-card { min-width: 0; overflow-wrap: anywhere; }
.google-review-card summary { height: 390px; min-height: 0; box-sizing: border-box; }
.google-review-card summary .google-review-excerpt { font-size: 25px; margin: 18px 0 24px; color: var(--forest); display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
.google-review-author { display: flex; align-items: center; gap: .75rem; font-weight: 700; }
.google-review-author img { border-radius: 50%; flex: 0 0 40px; width: 40px; height: 40px; }
.google-review-stars { margin: .75rem 0 .25rem; font-size: .85rem; font-weight: 700; color: var(--forest); }
.google-review-card time { font-size: .8rem; color: #59645d; }
.google-review-text { white-space: pre-line; }
.google-review-card .google-review-source { font-size: .85rem; }
.google-review-feed a { color: var(--forest); text-underline-offset: 3px; }
.google-review-card .story-toggle { margin-top: auto; gap: 10px; }
.google-review-card summary .google-review-author { flex: 1; min-width: 0; font-size: 13px; }
.google-review-author a { text-decoration: none; }
.google-review-action { max-width: 65px; line-height: 1.4; }
.google-review-card summary:hover .story-toggle { text-decoration: none; }
.google-review-card summary:hover .google-review-action { text-decoration: underline; }
@media (max-width:800px) {
  .google-review-card summary { height: auto; min-height: 300px; }
  .google-review-card summary .google-review-excerpt { display: block; overflow: visible; -webkit-line-clamp: unset; }
}

.google-review-link-card { height: 392px; box-sizing: border-box; padding: 28px; display: flex; flex-direction: column; background: var(--forest); color: var(--cream); }
.google-review-link-card .eyebrow { color: inherit; }
.google-review-link-card h2 { font: 32px/1.2 Georgia,serif; color: inherit; margin: 20px 0; }
.google-review-link-card p { font-size: 16px; line-height: 1.6; margin: 0; }
.google-review-link-card .btn { margin-top: auto; align-self: flex-start; background: var(--cream); color: var(--forest); padding: 13px 18px; font-size: 13px; }
.google-reviews-fallback { margin-top: 45px; }
.google-reviews-fallback .google-review-link-card { height: auto; min-height: 240px; }
.google-reviews-fallback .google-review-link-card .btn { margin-top: 25px; }
@media(max-width:800px) { .google-review-link-card { height: 362px; padding: 25px; } }

.google-review-cards > [hidden] { display: none; }
.google-review-controls { display: flex; justify-content: center; margin: 1.5rem 0; }
.google-review-more { cursor: pointer; }

/* Shift the palette each row instead of repeating vertical colour columns. */
.google-review-card:nth-child(9n + 1), .google-review-card:nth-child(9n + 5), .google-review-card:nth-child(9n) { background: #f6f3ec; }
.google-review-card:nth-child(9n + 2), .google-review-card:nth-child(9n + 6), .google-review-card:nth-child(9n + 7) { background: #edf0e9; }
.google-review-card:nth-child(9n + 3), .google-review-card:nth-child(9n + 4), .google-review-card:nth-child(9n + 8) { background: #f1e8dc; }
.google-review-card .google-review-stars { margin-top: auto; font-size: 1.1rem; line-height: 1.2; letter-spacing: .14em; color: #92702d; }
.google-review-card .story-toggle { margin-top: 20px; }
