/* Real testimonials: one native horizontal row, progressively enhanced. */
.reviews-section { background: var(--jg-chalk); }
.reviews-heading { max-width: 760px; margin-bottom: var(--jg-space-5); }
.reviews-context { margin: var(--jg-space-4) 0 0; color: var(--jg-steel); }
.reviews-toolbar { display: flex; align-items: center; justify-content: space-between; gap: var(--jg-space-4); margin-bottom: var(--jg-space-4); }
.reviews-toolbar[hidden] { display: none; }
.reviews-position { color: var(--jg-steel); font-size: 14px; font-variant-numeric: tabular-nums; }
.reviews-arrows { display: flex; gap: var(--jg-space-2); }
.reviews-arrow { display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border: var(--jg-border); border-radius: 50%; background: var(--jg-green); color: var(--jg-ink); font: 400 25px/1 var(--jg-font-text); cursor: pointer; }
.reviews-arrow:hover:not(:disabled) { background: var(--jg-ink); color: var(--jg-white); }
.reviews-arrow:disabled { background: transparent; color: var(--jg-steel); cursor: default; opacity: .45; }
.reviews-track { display: flex; flex-wrap: nowrap; gap: var(--jg-space-5); max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-padding-inline: 4px; scrollbar-width: thin; scrollbar-color: var(--jg-green-deep) transparent; padding: 4px 4px var(--jg-space-4); }
.reviews-track:focus-visible, .reviews-arrow:focus-visible { outline: 3px solid var(--jg-green-deep); outline-offset: 3px; }
.review-card { display: flex; flex-direction: column; flex: 0 0 calc((100% - 2 * var(--jg-space-5)) / 3); min-width: 0; margin: 0; padding: var(--jg-space-5); background: var(--jg-white); border: var(--jg-border); border-radius: var(--jg-radius); scroll-snap-align: start; }
.review-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--jg-space-3); flex-wrap: wrap; }
.review-card__source { display: inline-flex; align-items: center; gap: var(--jg-space-2); max-width: 100%; color: var(--jg-green-deep); font-size: 13px; font-weight: 700; }
a.review-card__source { min-height: 28px; }
a.review-card__source:focus-visible { outline: 3px solid var(--jg-green-deep); outline-offset: 4px; border-radius: 2px; }
.review-card__rating { color: var(--jg-green-deep); letter-spacing: .05em; font-size: 15px; white-space: nowrap; }
.review-card blockquote { margin: var(--jg-space-5) 0; overflow-wrap: anywhere; }
.review-card blockquote p { margin: 0; }
.review-card__author { display: grid; gap: var(--jg-space-1); margin-top: auto; padding-top: var(--jg-space-4); border-top: var(--jg-border); overflow-wrap: anywhere; }
.review-card__author cite { color: var(--jg-ink); font-style: normal; font-weight: 700; }
.review-card__author time { color: var(--jg-steel); font-size: 13px; }
@media (max-width: 1000px) { .review-card { flex-basis: calc((100% - var(--jg-space-5)) / 2.2); } }
@media (max-width: 620px) { .reviews-track { gap: var(--jg-space-4); } .review-card { flex-basis: 90%; } }
@media (prefers-reduced-motion: reduce) { .reviews-track { scroll-behavior: auto; } }
