.ocf-google-reviews { display: grid; gap: var(--grid-gap, 2rem); }
.ocf-google-reviews__header { max-width: 760px; }
.ocf-google-reviews__header .heading-2 { margin: 0 0 0.75rem; }
.ocf-google-reviews__intro { margin: 0; color: var(--ocf-body); line-height: 1.65; }
.ocf-google-reviews__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--grid-gap, 1.5rem); align-items: stretch; }
.ocf-google-reviews__card { display: flex; flex-direction: column; gap: 1rem; padding: 1.5rem; background: var(--ocf-bg-alt, #f3f4f6); border: 1px solid var(--ocf-border, #d7d1d0); border-radius: var(--ocf-radius, 0.75rem); }
.ocf-google-reviews__stars { color: #d89a00; letter-spacing: 0.12em; font-size: 1.1rem; }
.ocf-google-reviews__card blockquote { margin: 0; color: var(--ocf-body); line-height: 1.7; flex: 1; }
.ocf-google-reviews__footer { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 0.75rem; padding-top: 0.75rem; border-top: 1px solid var(--ocf-border, #d7d1d0); }
.ocf-google-reviews__footer a { color: var(--ocf-primary); font-weight: 600; text-decoration: underline; text-underline-offset: 0.15em; }
@media (max-width: 900px) { .ocf-google-reviews__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .ocf-google-reviews__grid { grid-template-columns: 1fr; } .ocf-google-reviews__card { padding: 1.25rem; } }
