.google-reviews-wrapper:has(.ep-google-reviews) .google-reviews-header {
	display: none !important;
}

.home-reviews:has(.ep-google-reviews),
.google-reviews-wrapper:has(.ep-google-reviews) {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.ep-google-reviews,
.ep-google-reviews * {
	box-sizing: border-box;
}

.ep-google-reviews {
	--ep-review-ink: #101b2d;
	--ep-review-muted: #627084;
	--ep-review-blue: #285899;
	--ep-review-blue-dark: #1b467f;
	--ep-review-line: #dce6f1;
	--ep-review-soft: #f4f8fd;
	--ep-review-star: #f2b82b;
	--ep-review-green: #0b8264;
	width: 100%;
	margin: 0;
	padding: clamp(44px, 5vw, 72px) 24px;
	background:
		radial-gradient(circle at 8% 12%, rgba(40, 88, 153, .08), transparent 27%),
		linear-gradient(180deg, #f8fbff 0%, #fff 48%, #f8fbff 100%);
	color: var(--ep-review-ink);
	font-family: inherit;
}

.ep-google-reviews__inner {
	width: min(1220px, 100%);
	margin: 0 auto;
}

.ep-google-reviews__header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 32px;
	margin-bottom: 28px;
}

.ep-google-reviews__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 11px;
	color: var(--ep-review-blue);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .11em;
	line-height: 1.2;
	text-transform: uppercase;
}

.ep-google-reviews__eyebrow i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 27px;
	height: 27px;
	border: 1px solid #d9e3ef;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 4px 12px rgba(18, 40, 72, .08);
	color: #4285f4;
	font-style: normal;
	font-size: 15px;
	font-weight: 900;
	letter-spacing: 0;
	text-transform: none;
}

.ep-google-reviews__intro h2 {
	margin: 0 !important;
	color: var(--ep-review-ink) !important;
	font-size: clamp(30px, 3.2vw, 46px) !important;
	font-weight: 850 !important;
	letter-spacing: -.035em !important;
	line-height: 1.08 !important;
}

.ep-google-reviews__intro p {
	max-width: 660px;
	margin: 12px 0 0 !important;
	color: var(--ep-review-muted) !important;
	font-size: 16px !important;
	line-height: 1.55 !important;
}

.ep-google-reviews__score {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) 20px;
	align-items: center;
	gap: 14px;
	min-width: 270px;
	padding: 15px 17px;
	border: 1px solid var(--ep-review-line);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(18, 40, 72, .07);
	color: var(--ep-review-ink) !important;
	text-decoration: none !important;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.ep-google-reviews__score:hover {
	border-color: #b8cbe0;
	box-shadow: 0 14px 35px rgba(18, 40, 72, .11);
	transform: translateY(-2px);
}

.ep-google-reviews__score > strong {
	font-size: 34px;
	font-weight: 900;
	letter-spacing: -.04em;
	line-height: 1;
}

.ep-google-reviews__score-copy {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 3px;
}

.ep-google-reviews__score-copy small {
	color: var(--ep-review-muted);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.25;
}

.ep-google-reviews__stars,
.ep-google-review__stars {
	color: var(--ep-review-star);
	font-size: 17px;
	font-weight: 800;
	letter-spacing: .08em;
	line-height: 1;
}

.ep-google-reviews__score svg {
	width: 20px;
	height: 20px;
	color: var(--ep-review-blue);
}

.ep-google-reviews__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ep-google-reviews__list > li {
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

.ep-google-review {
	display: flex;
	min-height: 288px;
	height: 100%;
	flex-direction: column;
	padding: 22px;
	border: 1px solid var(--ep-review-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 9px 24px rgba(18, 40, 72, .045);
}

.ep-google-review__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.ep-google-review__stars i {
	color: #dce3eb;
	font-style: normal;
}

.ep-google-review__verified {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #6c7888;
	font-size: 12px;
	font-weight: 700;
}

.ep-google-review__verified i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #e5f7f2;
	color: var(--ep-review-green);
	font-style: normal;
}

.ep-google-review blockquote {
	display: -webkit-box;
	margin: 20px 0 22px !important;
	padding: 0 !important;
	overflow: hidden;
	border: 0 !important;
	color: #2c3748 !important;
	font-size: 16px !important;
	font-style: normal !important;
	font-weight: 520 !important;
	line-height: 1.58 !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
}

.ep-google-review footer {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	gap: 11px;
	margin-top: auto;
	padding-top: 16px;
	border-top: 1px solid #edf1f6;
}

.ep-google-review__avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #eaf2fc;
	color: var(--ep-review-blue);
	font-size: 13px;
	font-weight: 850;
}

.ep-google-review footer > span:nth-child(2) {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
}

.ep-google-review footer strong {
	overflow: hidden;
	color: var(--ep-review-ink);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ep-google-review footer small,
.ep-google-review time {
	color: #788496;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.3;
}

.ep-google-review time {
	max-width: 70px;
	text-align: right;
}

.ep-google-reviews__scroll-hint {
	display: none;
}

.ep-google-reviews__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 24px;
}

.ep-google-reviews__actions p {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 !important;
	color: var(--ep-review-muted) !important;
	font-size: 13px !important;
	font-weight: 600;
}

.ep-google-reviews--fallback .ep-google-reviews__actions p {
	display: none;
}

.ep-google-reviews__actions p i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #e3f7f1;
	color: var(--ep-review-green);
	font-style: normal;
}

.ep-google-reviews__actions > div {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-left: auto;
}

.ep-google-reviews__actions a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	border-radius: 12px;
	color: var(--ep-review-blue) !important;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none !important;
}

.ep-google-reviews__actions a:not(.ep-google-reviews__button):hover {
	background: #eef4fb;
}

.ep-google-reviews__actions .ep-google-reviews__button {
	background: var(--ep-review-blue);
	box-shadow: 0 8px 20px rgba(40, 88, 153, .18);
	color: #fff !important;
}

.ep-google-reviews__actions .ep-google-reviews__button:hover {
	background: var(--ep-review-blue-dark);
}

@media (max-width: 1024px) {
	.ep-google-reviews__header {
		align-items: center;
	}

	.ep-google-reviews__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ep-google-reviews__list > li:nth-child(n+5) {
		display: none;
	}
}

@media (max-width: 700px) {
	.ep-google-reviews {
		overflow: hidden;
		padding: 42px 0;
	}

	.ep-google-reviews__inner {
		width: 100%;
	}

	.ep-google-reviews__header {
		grid-template-columns: 1fr;
		gap: 20px;
		margin-bottom: 20px;
		padding: 0 18px;
	}

	.ep-google-reviews__intro h2 {
		font-size: 31px !important;
		line-height: 1.1 !important;
	}

	.ep-google-reviews__intro p {
		margin-top: 9px !important;
		font-size: 15px !important;
	}

	.ep-google-reviews__score {
		width: 100%;
		min-width: 0;
		padding: 13px 15px;
		border-radius: 15px;
	}

	.ep-google-reviews__score > strong {
		font-size: 31px;
	}

	.ep-google-reviews__list {
		display: flex;
		gap: 12px;
		overflow-x: auto;
		padding: 2px 18px 14px !important;
		scroll-padding-inline: 18px;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.ep-google-reviews__list::-webkit-scrollbar {
		display: none;
	}

	.ep-google-reviews__list > li,
	.ep-google-reviews__list > li:nth-child(n+5) {
		display: block;
		width: min(84vw, 350px);
		min-width: min(84vw, 350px);
		scroll-snap-align: start;
	}

	.ep-google-review {
		min-height: 292px;
		padding: 20px;
		border-radius: 17px;
	}

	.ep-google-review blockquote {
		font-size: 15px !important;
		-webkit-line-clamp: 7;
	}

	.ep-google-review footer {
		grid-template-columns: 40px minmax(0, 1fr);
	}

	.ep-google-review time {
		display: none;
	}

	.ep-google-reviews__scroll-hint {
		display: flex;
		align-items: center;
		gap: 8px;
		padding: 0 18px;
		color: #748094;
		font-size: 12px;
		font-weight: 650;
	}

	.ep-google-reviews__scroll-hint span {
		position: relative;
		display: block;
		width: 34px;
		height: 3px;
		border-radius: 3px;
		background: #cbd7e4;
	}

	.ep-google-reviews__scroll-hint span::after {
		position: absolute;
		top: -3px;
		right: 0;
		width: 8px;
		height: 8px;
		border-top: 2px solid #8ba0b9;
		border-right: 2px solid #8ba0b9;
		content: "";
		transform: rotate(45deg);
	}

	.ep-google-reviews__actions {
		align-items: stretch;
		margin-top: 20px;
		padding: 0 18px;
	}

	.ep-google-reviews__actions p {
		display: none;
	}

	.ep-google-reviews__actions > div {
		display: grid;
		width: 100%;
		grid-template-columns: 1fr 1fr;
		gap: 9px;
		margin: 0;
	}

	.ep-google-reviews__actions a {
		min-width: 0;
		padding: 10px 12px;
		border: 1px solid #d5e1ed;
		background: #fff;
		text-align: center;
	}

	.ep-google-reviews__actions .ep-google-reviews__button {
		border-color: var(--ep-review-blue);
	}
}

@media (max-width: 360px) {
	.ep-google-reviews__header,
	.ep-google-reviews__scroll-hint,
	.ep-google-reviews__actions {
		padding-right: 14px;
		padding-left: 14px;
	}

	.ep-google-reviews__list {
		padding-right: 14px !important;
		padding-left: 14px !important;
		scroll-padding-inline: 14px;
	}

	.ep-google-reviews__list > li,
	.ep-google-reviews__list > li:nth-child(n+5) {
		width: calc(100vw - 44px);
		min-width: calc(100vw - 44px);
	}

	.ep-google-reviews__actions a {
		font-size: 13px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ep-google-reviews__score {
		transition: none;
	}

	.ep-google-reviews__list {
		scroll-behavior: auto;
	}
}
