/* Scoped review content; shared Motive hero, navigation and footer are untouched. */
.testimonials-content { color: #475569; padding-top: clamp(48px, 6vw, 88px); }
.testimonials-content .review-eyebrow { display: flex; align-items: center; gap: 12px; color: var(--motive-blue); font-size: .75rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; margin: 0 0 18px; }
.testimonials-content .review-eyebrow::before { content: ''; width: 28px; height: 3px; background: var(--motive-orange); }
.testimonials-content h2 { color: var(--motive-blue); font-size: clamp(1.85rem, 2.7vw, 2.6rem); line-height: 1.15; letter-spacing: -.035em; text-wrap: balance; margin: 0 0 20px; }
.testimonials-content p { line-height: 1.7; }
.testimonials-content .review-intro { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 36px; }
.testimonials-content .review-intro-copy { max-width: 650px; }
.testimonials-content .review-intro p:last-child { margin: 0; }
.testimonials-content .review-source-link { color: var(--motive-blue); font-weight: 750; text-underline-offset: 5px; text-decoration-color: var(--motive-orange); white-space: nowrap; }
.review-carousel { --review-gap: 24px; --review-card-width: 360px; }
.review-carousel { container-type: inline-size; }
@supports (width: 1cqw) {
  .review-carousel { --review-card-width: calc((100cqw - 48px) / 3); }
  @media (min-width: 768px) and (max-width: 1199.98px) { .review-carousel { --review-card-width: calc((100cqw - 24px) / 2); } }
  @media (max-width: 767.98px) { .review-carousel { --review-card-width: 100cqw; } }
}
.review-viewport { overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; scrollbar-color: #9aaabc #edf1f5; padding: 12px 0 24px; touch-action: pan-x pan-y; overscroll-behavior-x: contain; }
.review-carousel.is-enhanced .review-viewport { scrollbar-width: none; }
.review-carousel.is-enhanced .review-viewport::-webkit-scrollbar { display: none; }
.review-track { display: flex; gap: var(--review-gap); width: max-content; }
.review-set { display: flex; align-items: stretch; gap: var(--review-gap); margin: 0; padding: 0; list-style: none; }
.review-card { width: var(--review-card-width); flex: 0 0 var(--review-card-width); display: flex; }
.review-card article { display: flex; flex-direction: column; width: 100%; min-height: 365px; padding: 28px; border: 1px solid #dce3eb; border-radius: 12px; background: #fff; box-shadow: 0 6px 20px #0b1f3a08; }
.review-author { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }
.review-avatar { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 50%; display: grid; place-items: center; background: #edf3f8; color: var(--motive-blue); font-size: .9rem; font-weight: 800; object-fit: cover; }
.review-author h3 { font-size: .98rem; line-height: 1.4; margin: 0 0 4px; color: var(--motive-dark); overflow-wrap: anywhere; }
.review-date { font-size: .76rem; line-height: 1.4; color: #64748b; }
.review-stars { color: #a65c00; font-size: 1.05rem; letter-spacing: .14em; margin-bottom: 16px; }
.review-card blockquote { border: 0; padding: 0; margin: 0 0 28px; flex: 1; color: #334155; font-size: .95rem; line-height: 1.75; }
.review-card blockquote p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.review-rating-only { flex: 1; color: #64748b; font-size: .95rem; }
.review-attribution { padding-top: 18px; margin-top: auto; border-top: 1px solid #edf1f5; font-size: .78rem; color: #526174; }
.review-controls { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin: 10px 0 20px; }
.review-controls-space { min-height: 74px; display: flow-root; }
.review-controls[hidden] { display: none; }
.review-control-group { display: flex; gap: 8px; }
.review-control { min-width: 44px; min-height: 44px; padding: 9px 15px; border: 1px solid #cbd5e1; border-radius: 24px; background: #fff; color: var(--motive-blue); font: inherit; font-size: .85rem; font-weight: 700; }
.review-control:hover { background: #edf3f8; border-color: var(--motive-blue); }
.testimonials-content :is(a,button,[tabindex]):focus-visible { outline: 3px solid var(--motive-orange); outline-offset: 4px; }
.review-count { color: #64748b; font-size: .82rem; }
.review-note { font-size: .78rem; color: #64748b; max-width: 820px; margin: 0 0 56px; }
.review-visit { padding: clamp(40px, 5vw, 64px) 0; background: #f3f6f9; }
.review-visit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.review-office { border-left: 3px solid var(--motive-orange); padding-left: 24px; }
.review-office h3 { color: var(--motive-blue); font-size: 1.15rem; margin: 0 0 14px; }
.review-office address { font-size: 1.05rem; line-height: 1.8; font-style: normal; margin: 0 0 18px; }
.review-cta { padding: clamp(48px, 6vw, 80px) 0; }
.review-cta-inner { background: var(--motive-dark); border-radius: 12px; padding: clamp(28px, 4vw, 52px); display: flex; justify-content: space-between; gap: 32px; align-items: center; }
.testimonials-content .review-cta h2 { color: #fff; margin-bottom: 12px; }
.review-cta p { color: #dce4ee; margin: 0; max-width: 620px; }
.review-cta .btn { flex-shrink: 0; }
@media (max-width: 767.98px) {
  .testimonials-content .review-intro, .review-cta-inner { flex-direction: column; align-items: flex-start; gap: 22px; }
  .review-visit-grid { grid-template-columns: 1fr; gap: 24px; }
  .review-card article { padding: 24px; }
  .review-carousel { --review-gap: 16px; }
}
@media (prefers-reduced-motion: reduce) { .review-viewport { scroll-behavior: auto; } }
.review-author h3 a { color: inherit; text-decoration: none; }
.review-author h3 a:hover, .review-author h3 a:focus-visible { text-decoration: underline; }
