
.fy-reviews-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
	gap:24px;
}
.fy-review-card{
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:18px;
	padding:24px;
	box-shadow:0 8px 24px rgba(15,23,42,.06);
	height:100%;
}
.fy-review-card__top{
	display:flex;
	flex-direction:column;
	gap:12px;
	margin-bottom:16px;
}
.fy-review-stars,
.fy-review-summary__stars{
	font-size:20px;
	line-height:1;
}
.fy-star--filled{
	color:#f59e0b;
}
.fy-review-services{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}
.fy-review-service{
	display:inline-flex;
	align-items:center;
	padding:6px 10px;
	border-radius:999px;
	background:#f3f4f6;
	font-size:13px;
	line-height:1.3;
}
.fy-review-content{
	font-size:15px;
	line-height:1.9;
	color:#111827;
	margin-bottom:16px;
	word-break:break-word;
}
.fy-review-meta{
	display:flex;
	flex-wrap:wrap;
	gap:10px 14px;
	font-size:13px;
	color:#6b7280;
	border-top:1px solid #f1f5f9;
	padding-top:14px;
}
.fy-review-summary{
	display:flex;
	align-items:center;
	gap:18px;
	padding:24px;
	border:1px solid #e5e7eb;
	border-radius:18px;
	background:#fff;
	box-shadow:0 8px 24px rgba(15,23,42,.06);
}
.fy-review-summary__score{
	font-size:42px;
	font-weight:700;
	line-height:1;
}
.fy-review-summary__detail{
	display:flex;
	flex-direction:column;
	gap:8px;
}
.fy-review-summary__text,
.fy-review-summary__count{
	font-size:14px;
	color:#4b5563;
}
.fy-reviews-empty,
.fy-review-summary--empty{
	padding:18px 20px;
	border:1px dashed #cbd5e1;
	border-radius:14px;
	background:#f8fafc;
	color:#475569;
}
@media (max-width: 640px){
	.fy-review-card{
		padding:18px;
		border-radius:16px;
	}
	.fy-review-summary{
		flex-direction:column;
		align-items:flex-start;
	}
}
