.xks-reviews {
	background: var(--xks-color-surface);
	overflow-x: hidden;
}

.xks-reviews-desktop-copy {
	display: none;
}

.xks-reviews-mobile-copy {
	display: inline;
}

.xks-reviews-hero {
	position: relative;
	display: grid;
	min-height: 33rem;
	align-items: end;
	overflow: hidden;
	padding: var(--xks-space-8) var(--xks-page-gutter) var(--xks-space-7);
}

.xks-reviews-hero picture,
.xks-reviews-hero img,
.xks-reviews-hero__overlay {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.xks-reviews-hero img {
	object-fit: cover;
	object-position: center;
}

.xks-reviews-hero__overlay {
	z-index: 1;
	background: linear-gradient(180deg, rgba(246, 250, 252, 0.04), rgba(246, 250, 252, 0.52) 52%, var(--xks-color-surface));
}

.xks-reviews-hero__content {
	position: relative;
	z-index: 2;
	width: min(100%, var(--xks-container));
	margin: 0 auto;
}

.xks-reviews-hero__brand {
	margin-bottom: var(--xks-space-6);
	color: var(--xks-color-white);
	font-family: var(--xks-font-heading);
	font-size: var(--xks-size-heading-md);
	font-weight: 600;
	line-height: var(--xks-line-tight);
	text-shadow: 0 0.35rem 1.5rem rgba(23, 28, 30, 0.3);
}

.xks-reviews-hero h1 {
	margin-bottom: var(--xks-space-2);
	color: var(--xks-color-charcoal);
	font-size: var(--xks-size-heading-lg);
}

.xks-reviews-hero p {
	max-width: 34rem;
	margin-bottom: 0;
	color: var(--xks-color-muted);
	font-size: var(--xks-size-body-lg);
}

.xks-reviews-trust {
	padding: var(--xks-space-5) var(--xks-page-gutter);
}

.xks-reviews-trust .xks-container {
	display: flex;
	align-items: center;
	gap: var(--xks-space-4);
}

.xks-reviews-trust__rating {
	display: flex;
	align-items: center;
	gap: var(--xks-space-2);
}

.xks-reviews-trust strong {
	color: var(--xks-color-primary);
	font-family: var(--xks-font-heading);
	font-size: var(--xks-size-heading-md);
	line-height: 1;
}

.xks-review-stars {
	display: inline-flex;
	gap: 0.1rem;
	color: var(--xks-color-yellow);
	line-height: 1;
}

.xks-reviews-trust__divider {
	width: 1px;
	height: 2rem;
	background: rgba(110, 121, 125, 0.24);
}

.xks-reviews-trust h2 {
	margin-bottom: var(--xks-space-2);
	font-size: var(--xks-size-heading-sm);
}

.xks-reviews-trust p {
	margin: 0;
	color: var(--xks-color-muted);
}

.xks-reviews-featured,
.xks-reviews-list,
.xks-reviews-cta {
	padding: var(--xks-space-5) var(--xks-page-gutter);
}

.xks-reviews-featured .xks-container {
	display: grid;
	overflow: hidden;
	border: 1px solid rgba(189, 200, 204, 0.24);
	border-radius: var(--xks-radius-xl);
	background: var(--xks-color-surface-low);
	box-shadow: 0 0.85rem 2.5rem rgba(31, 155, 180, 0.05);
}

.xks-reviews-featured__image {
	min-height: 16rem;
}

.xks-reviews-featured__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xks-reviews-featured__content {
	display: grid;
	align-content: center;
	padding: var(--xks-space-5);
}

.xks-reviews-featured__content > span {
	margin-bottom: var(--xks-space-3);
	color: var(--xks-color-primary);
	font-size: var(--xks-size-caption);
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.xks-reviews-featured h2 {
	color: var(--xks-color-charcoal);
	font-size: var(--xks-size-heading-sm);
	line-height: 1.28;
}

.xks-reviews-person {
	display: flex;
	align-items: center;
	gap: var(--xks-space-3);
	margin-top: var(--xks-space-4);
}

.xks-reviews-avatar {
	display: grid;
	width: 3rem;
	height: 3rem;
	place-items: center;
	overflow: hidden;
	border-radius: var(--xks-radius-full);
	background: var(--xks-color-primary-soft);
	color: var(--xks-color-primary);
	font-family: var(--xks-font-heading);
	font-size: var(--xks-size-heading-sm);
	font-weight: 700;
}

.xks-reviews-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xks-reviews-person strong,
.xks-reviews-person small {
	display: block;
}

.xks-reviews-person small {
	color: var(--xks-color-muted);
}

.xks-reviews-filters {
	padding: var(--xks-space-4) 0;
	overflow: hidden;
}

.xks-reviews-filters__rail {
	display: flex;
	gap: var(--xks-space-3);
	overflow-x: auto;
	max-width: var(--xks-container);
	margin: 0 auto;
	padding: var(--xks-space-2) var(--xks-page-gutter);
	scrollbar-width: none;
}

.xks-reviews-filters__rail::-webkit-scrollbar {
	display: none;
}

.xks-reviews-filter {
	flex: 0 0 auto;
	border: 1px solid rgba(110, 121, 125, 0.28);
	border-radius: var(--xks-radius-full);
	background: transparent;
	color: var(--xks-color-muted);
	cursor: pointer;
	font-size: var(--xks-size-label);
	font-weight: 700;
	padding: 0.65rem 1.25rem;
}

.xks-reviews-filter.is-active,
.xks-reviews-filter:hover,
.xks-reviews-filter:focus-visible {
	border-color: var(--xks-color-primary);
	background: rgba(31, 155, 180, 0.08);
	color: var(--xks-color-primary);
}

.xks-reviews-list .xks-container {
	display: grid;
	gap: var(--xks-space-4);
}

.xks-review-card {
	display: grid;
	gap: var(--xks-space-4);
	border: 1px solid rgba(189, 200, 204, 0.28);
	border-radius: var(--xks-radius-xl);
	background: var(--xks-color-cream);
	box-shadow: 0 0.6rem 1.75rem rgba(31, 155, 180, 0.04);
	padding: var(--xks-space-5);
}

.xks-review-card header,
.xks-review-card footer {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--xks-space-3);
}

.xks-review-card h3 {
	margin-bottom: var(--xks-space-1);
	font-family: var(--xks-font-body);
	font-size: var(--xks-size-label);
	font-weight: 800;
}

.xks-review-card p {
	margin: 0;
}

.xks-review-card header p,
.xks-review-card small {
	color: var(--xks-color-outline);
	font-size: var(--xks-size-caption);
}

.xks-review-card__quote {
	color: var(--xks-color-muted);
}

.xks-review-card footer span {
	border-radius: var(--xks-radius-base);
	background: var(--xks-color-surface-low);
	color: var(--xks-color-muted);
	font-size: var(--xks-size-caption);
	font-weight: 700;
	padding: 0.35rem 0.6rem;
}

.xks-reviews-cta {
	padding-bottom: var(--xks-space-8);
	text-align: center;
}

.xks-reviews-cta .xks-container {
	display: grid;
	justify-items: center;
	gap: var(--xks-space-4);
	overflow: hidden;
	max-width: var(--xks-container);
	border: 1px solid rgba(189, 200, 204, 0.24);
	border-radius: var(--xks-radius-xl);
	background: var(--xks-color-surface-low);
	box-shadow: var(--xks-shadow-soft);
	padding: var(--xks-space-7) var(--xks-space-5);
}

.xks-reviews-cta h2 {
	margin: 0;
	color: var(--xks-color-primary);
	font-size: var(--xks-size-heading-md);
}

.xks-reviews-cta p {
	max-width: 34rem;
	margin: 0;
	color: var(--xks-color-muted);
}

.xks-reviews-cta__actions {
	display: grid;
	width: 100%;
	gap: var(--xks-space-3);
}

.xks-reviews-cta__actions .xks-button {
	width: 100%;
}

@media (min-width: 48rem) {
	.xks-reviews-desktop-copy {
		display: inline;
	}

	.xks-reviews-mobile-copy {
		display: none;
	}

	.xks-reviews-hero {
		min-height: 42rem;
		place-items: center;
		text-align: center;
	}

	.xks-reviews-hero__overlay {
		background: linear-gradient(180deg, rgba(246, 250, 252, 0.58), rgba(246, 250, 252, 0.72));
	}

	.xks-reviews-hero h1 {
		color: var(--xks-color-primary);
		font-size: var(--xks-size-display);
	}

	.xks-reviews-hero p {
		margin-inline: auto;
	}

	.xks-reviews-trust {
		padding-block: var(--xks-space-7);
		text-align: center;
	}

	.xks-reviews-trust .xks-container {
		display: grid;
		justify-items: center;
		max-width: 48rem;
	}

	.xks-reviews-trust__divider {
		display: none;
	}

	.xks-reviews-trust h2 {
		font-size: var(--xks-size-heading-md);
	}

	.xks-reviews-featured .xks-container {
		grid-template-columns: 5fr 7fr;
	}

	.xks-reviews-featured__image {
		min-height: 31rem;
	}

	.xks-reviews-featured__content {
		padding: var(--xks-space-8);
	}

	.xks-reviews-featured h2 {
		font-size: var(--xks-size-heading-md);
	}

	.xks-reviews-list .xks-container {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.xks-reviews-cta .xks-container {
		padding-block: var(--xks-space-8);
	}

	.xks-reviews-cta h2 {
		font-size: var(--xks-size-heading-lg);
	}

	.xks-reviews-cta__actions {
		grid-template-columns: repeat(2, auto);
		justify-content: center;
		width: auto;
	}

	.xks-reviews-cta__actions .xks-button {
		width: auto;
		min-width: 11rem;
	}
}
