.review-carousel { min-width: 0; }
.review-carousel-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 15px; }
.review-carousel-toolbar[hidden] { display: none; }
.review-carousel-status { font-size: 13px; font-weight: 700; color: var(--muted); font-variant-numeric: tabular-nums; }
.review-carousel-actions { display: flex; align-items: center; gap: 8px; }
.review-autoplay-button, .review-arrow { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; min-width: 44px; border: 1px solid #bfd0df; border-radius: 8px; background: #fff; color: var(--navy); cursor: pointer; font: inherit; font-size: 13px; font-weight: 800; }
.review-autoplay-button { padding: 0 15px; }
.review-autoplay-button:hover, .review-arrow:hover { background: #eaf2f8; border-color: var(--navy); }
.review-autoplay-button:focus-visible, .review-arrow:focus-visible, .client-review-grid:focus-visible { outline: 3px solid #126ab2; outline-offset: 3px; }
.client-review-disclosure { max-width: 770px; margin-inline: auto; }
.client-review-grid {
 display: grid;
 grid-auto-flow: column;
 grid-auto-columns: calc((100% - 44px) / 3);
 gap: 22px;
 overflow-x: auto;
 scroll-snap-type: x mandatory;
 overscroll-behavior-x: contain;
 scrollbar-width: thin;
 scrollbar-color: #b6cadb #eaf0f5;
 padding-bottom: 14px;
}
.client-review-card {
 display: flex;
 flex-direction: column;
 padding: 25px;
 background: #fff;
 border: 1px solid var(--line);
 border-radius: 12px;
 box-shadow: 0 6px 24px #06345d05;
 scroll-snap-align: start;
 min-width: 0;
}
.client-review-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 17px; }
.client-review-stars { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; color: #b57908; }
.client-review-quote { font-size: 26px; color: #dce8f2; }
.client-review-card h3 { font-size: 17px; line-height: 1.5; margin-bottom: 12px; letter-spacing: -.25px; }
.client-review-text { margin: 0 0 23px; font-size: 14px; line-height: 1.85; color: var(--muted); overflow-wrap: anywhere; }
.client-review-text p { font: inherit; color: inherit; }
.client-review-person { display: flex; align-items: center; gap: 12px; padding-top: 19px; border-top: 1px solid #e9eef4; margin-top: auto; }
.client-review-avatar { display: grid; place-items: center; width: 39px; height: 39px; flex-shrink: 0; background: #eaf2f8; border-radius: 50%; font-size: 15px; color: var(--navy); }
.client-review-person strong { display: block; font-size: 12px; font-weight: 800; color: var(--navy); }
.client-review-person span:not(.client-review-avatar) { display: block; font-size: 10px; color: var(--muted); margin-top: 3px; }
.client-review-source { margin-top: 12px; font-size: 11px; min-height: 44px; }
.client-review-sample-label { display: block; align-self: flex-start; margin: -2px 0 13px; padding: 5px 7px; background: #fff4d9; border-radius: 4px; font-size: 8px; line-height: 1.6; font-weight: 800; letter-spacing: .45px; color: #815107; }
.review-preview-intro { padding: 35px 0 28px; background: #fff; }
.review-preview-intro h1 { font-size: 32px; color: var(--navy); letter-spacing: -.8px; }
.review-preview-intro p { max-width: 780px; font-size: 14px; margin-top: 13px; }
.review-preview-intro .text-link { margin-top: 15px; }
@media (max-width: 1000px) {
 .client-review-grid { grid-auto-columns: calc((100% - 18px) / 2); gap: 18px; }
}
@media (max-width: 600px) {
 .client-review-grid { grid-auto-columns: 100%; gap: 17px; }
 .client-review-card { padding: 22px; }
 .client-review-card h3 { font-size: 18px; }
 .client-review-text { font-size: 16px; }
 .client-review-stars { font-size: 15px; }
 .client-review-sample-label { font-size: 9px; }
 .client-review-person strong { font-size: 14px; }
 .client-review-person span:not(.client-review-avatar) { font-size: 12px; }
 .review-preview-intro h1 { font-size: 29px; }
 .review-preview-intro p { font-size: 16px; }
}
