/* Homepage reviews: all content is supplied in the page HTML. */
.ci-google-reviews{--review-ink:#0A0A0A;--review-purple:#6D28D9;--review-paper:#FFFFFF;background:var(--review-ink);color:var(--review-paper)}
.ci-google-reviews .testi-grid>*{min-width:0}
.ci-google-reviews .testi h2{color:inherit}
.ci-reviews-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:40px 0 24px}
.ci-reviews-summary{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:15.5px;line-height:1.65;margin:0}
.ci-review-stars{display:inline-block;color:var(--review-purple);font-size:20px;line-height:1.2;letter-spacing:3px;white-space:nowrap}
.ci-reviews-controls{display:flex;gap:12px;flex-shrink:0}
.ci-reviews-controls[hidden],.ci-review-more[hidden]{display:none!important}
.ci-reviews-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;font:inherit;font-size:22px;cursor:pointer}
.ci-reviews-controls button:hover:not(:disabled){background:var(--review-paper);color:var(--review-ink)}
.ci-reviews-controls button:disabled{opacity:.35;cursor:default}
.ci-reviews-row{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);align-items:start;gap:24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:currentColor transparent;list-style:none;padding:0 0 20px;margin:0}
.ci-review-card{scroll-snap-align:start;display:flex;flex-direction:column;min-width:0;min-height:320px;border:1px solid var(--review-paper);padding:24px;background:var(--review-paper);color:var(--review-ink);border-radius:0;box-shadow:none}
.ci-review-card--compact{min-height:192px}
.ci-review-text,.ci-review-rating-only{font-size:15px;line-height:1.65;margin:20px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.ci-review-text.is-clamped{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.ci-review-more{align-self:flex-start;margin:8px 0 0;padding:0;border:0;border-radius:0;background:none;color:var(--review-purple);font:inherit;font-size:14px;line-height:1.65;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ci-review-byline{padding-top:24px;margin-top:auto}
.ci-review-name{font-size:16.5px;font-weight:700;line-height:1.4;margin:0}
.ci-review-date{font-size:13px;line-height:1.6;margin:6px 0 0}
.ci-reviews-end{margin-top:28px}
.ci-google-reviews .ci-reviews-end a{color:var(--review-purple);border-color:currentColor}
.ci-google-reviews .ci-reviews-end a:hover{color:var(--review-purple);background:transparent;border-color:currentColor;text-decoration:underline;text-underline-offset:4px}
.ci-google-reviews :is(button,a,.ci-reviews-row):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.ci-review-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1024px) and (min-width:768px){.ci-reviews-row{grid-auto-columns:calc((100% - 24px)/2)}}
@media(max-width:767px){.ci-reviews-controls{display:none}.ci-reviews-toolbar{margin-top:32px}.ci-reviews-summary{gap:12px}.ci-reviews-row{grid-auto-columns:calc((100% - 16px)/1.2);gap:16px}.ci-review-card{padding:20px;min-height:320px}.ci-review-card--compact{min-height:184px}}
