/* Review strip with native scrolling as a no-script fallback. */
.originals-testimonials {
	position: relative;
	isolation: isolate;
	min-width: 0;
	--ots-content-width: 1200px;
	--ots-card-width: 480px;
	--ots-gap: 24px;
	--ots-heading-gap: 64px;
	--ots-nav-gap: 64px;
	--ots-glow: #e8f4fc;
}
.originals-testimonials::before {
	content: '';
	position: absolute;
	inset: -10% 0;
	z-index: -1;
	pointer-events: none;
	background: radial-gradient(ellipse at 60% 50%, var(--ots-glow), transparent 70%);
}
.originals-testimonials-inner { width: min(100%, var(--ots-content-width)); margin-inline: auto; }
.originals-testimonials-header { display: flex; justify-content: space-between; align-items: start; gap: 24px; margin-block-end: var(--ots-heading-gap); }
.originals-testimonials-label { margin-block-end: 8px; font-family: var(--ots-label-family, inherit); font-size: 18px; color: #737373; }
.originals-testimonials .originals-testimonials-heading { margin: 0; font-family: var(--ots-heading-family, inherit); font-size: 38px; font-weight: 600; line-height: 1.25; letter-spacing: -.04em; color: #111; }
.originals-testimonials-summary { text-align: end; flex-shrink: 0; font-family: var(--ots-summary-family, inherit); font-size: 16px; }
.originals-testimonials-summary a { display: inline-block; margin-block-start: 12px; text-decoration: none; color: #1646d8; }
.originals-testimonials-rating { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.originals-testimonials-stars { position: relative; display: inline-block; color: #dedede; white-space: nowrap; line-height: 1.3; }
.originals-testimonials-stars > span:last-child { position: absolute; inset-block-start: 0; inset-inline-start: 0; overflow: hidden; color: var(--ots-star-color, #e77c3f); }
.originals-testimonials-viewport {
	--ots-inset: var(--ots-aligned-inset, 0px);
	scroll-padding-inline: var(--ots-inset);
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
	padding-block: 4px 32px;
	/* Touch gestures stay native; vertical page scrolling remains available. */
}
.originals-testimonials.is-enhanced .originals-testimonials-viewport { scrollbar-width: none; }
.originals-testimonials.is-enhanced .originals-testimonials-viewport::-webkit-scrollbar { display: none; }
.originals-testimonials[data-bleed="yes"] .originals-testimonials-viewport {
	width: var(--ots-window, 100%);
	margin-inline: calc((100% - var(--ots-window, 100%)) / 2);
	--ots-inset: var(--ots-aligned-inset, max(24px, calc((var(--ots-window, 100%) - var(--ots-content-width)) / 2)));
	scroll-padding-inline: var(--ots-inset);
}
.originals-testimonials-track { display: flex; align-items: stretch; gap: var(--ots-gap); padding-inline: var(--ots-inset, 0px); width: max-content; min-width: 100%; box-sizing: border-box; }
.originals-testimonial-card {
	box-sizing: border-box;
	flex: 0 0 auto;
	width: min(var(--ots-card-width), var(--ots-card-limit, 82vw));
	min-height: 300px;
	padding: 32px;
	border: 1px solid #eaeaea;
	border-radius: 24px;
	background: #fff;
	scroll-snap-align: start;
}
.originals-testimonial-person { display: flex; align-items: center; gap: 16px; }
.originals-testimonial-avatar { display: block; flex: 0 0 auto; width: var(--ots-avatar-size, 48px); height: var(--ots-avatar-size, 48px); border-radius: 999px; object-fit: cover; }
.originals-testimonial-initial { display: grid; place-items: center; background: #f1f1f4; color: #696977; font-size: 20px; }
.originals-testimonial-identity { min-width: 0; }
.originals-testimonial-author { font-family: var(--ots-author-family, inherit); font-size: 14px; font-weight: 600; color: #171717; overflow-wrap: anywhere; }
.originals-testimonial-meta { font-family: var(--ots-meta-family, inherit); font-size: 14px; color: #737373; overflow-wrap: anywhere; }
.originals-testimonial-source { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; margin-inline-start: auto; min-width: 28px; min-height: 28px; font-size: 20px; color: inherit; text-decoration: none; }
.originals-testimonial-source svg { width: 20px; height: 20px; fill: currentColor; }
.originals-testimonials .originals-testimonial-quote { padding: 0; border: 0; margin: var(--ots-quote-gap, 36px) 0 0; font-family: var(--ots-quote-family, inherit); font-size: 18px; font-weight: 400; font-style: normal; line-height: 1.65; color: #151515; overflow-wrap: anywhere; }
.originals-testimonial-quote::before, .originals-testimonial-quote::after { content: none; }
.originals-testimonials-nav { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin-block-start: max(0px, calc(var(--ots-nav-gap) - 32px)); }
.originals-testimonials-nav[hidden] { display: none; }
.originals-testimonials-nav button[hidden] { display: none; }
.originals-testimonials-nav button {
	appearance: none;
	display: grid;
	place-items: center;
	width: var(--ots-arrow-size, 40px);
	height: var(--ots-arrow-size, 40px);
	min-width: 0;
	min-height: 0;
	padding: 0;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #f4f4f5;
	color: #222;
	box-shadow: none;
	cursor: pointer;
	line-height: 1;
}
.originals-testimonials-nav button::before, .originals-testimonials-nav button::after { content: none; }
.originals-testimonials-nav button:hover { border-color: currentColor; }
.originals-testimonials-nav button:disabled { opacity: .35; cursor: default; }
.originals-testimonials-nav svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.originals-testimonials[dir="rtl"] .originals-testimonials-nav svg { transform: rotate(180deg); }
.originals-testimonials :is(button, a, .originals-testimonials-viewport):focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.originals-testimonials.is-animating .originals-testimonials-viewport { scroll-snap-type: none; }
@media (max-width: 767px) {
	.originals-testimonials-header { flex-direction: column; }
	.originals-testimonials-summary { text-align: start; }
	.originals-testimonials-rating { justify-content: flex-start; }
	.originals-testimonials .originals-testimonials-heading { font-size: 30px; }
	.originals-testimonials { --ots-heading-gap: 32px; --ots-nav-gap: 32px; }
	.originals-testimonial-card { padding: 24px; }
}
@media print {
	.originals-testimonials-viewport { overflow: visible; width: 100% !important; margin: 0 !important; }
	.originals-testimonials-track { width: 100%; flex-wrap: wrap; padding: 0; }
	.originals-testimonial-card { width: 100%; break-inside: avoid; }
	.originals-testimonials-nav { display: none; }
}
