/*
 * Testimonial cards: avatar overlapping the top edge, quote badge, stars,
 * quote text. Rides the shared carousel shell.
 */

.asli-testimonials .asli-carousel__track {
	padding-block-start: 2.75rem;
}

.asli-testimonial {
	background: var(--asli-surface);
	border-radius: var(--asli-radius-box);
	box-shadow: var(--asli-shadow-card);
	padding: 3.25rem var(--asli-space-xl) var(--asli-space-xl);
	position: relative;
	text-align: center;
}

.asli-testimonial__avatar-wrap {
	position: absolute;
	top: -2.75rem;
	inset-inline-start: 50%;
	translate: -50% 0;
}

.asli-testimonial__avatar-wrap::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: var(--asli-radius-pill);
	width: 200%;
	height: 0;
	inset-inline-start: 50%;
	top: 50%;
	background: rgb(255 255 255 / 0.3);
	transform: translate(-50%, -50%) rotate(-45deg);
	pointer-events: none;
}

.asli-testimonial:hover .asli-testimonial__avatar-wrap::after {
	height: 250%;
	background: transparent;
	transition: var(--asli-duration-shine) linear;
}

.asli-testimonial__avatar {
	width: 5.5rem;
	height: 5.5rem;
	border-radius: var(--asli-radius-pill);
	object-fit: cover;
	border: 4px solid var(--asli-surface);
	box-shadow: var(--asli-shadow-card);
	display: block;
	background: var(--asli-surface-alt);
}

.asli-testimonial__avatar-wrap .asli-badge {
	position: absolute;
	bottom: -0.25rem;
	inset-inline-end: -0.5rem;
}

.asli-testimonial__name {
	margin: 0;
	font-size: var(--asli-text-h4);
}

.asli-testimonial__role {
	margin: 0 0 var(--asli-space-xs);
	font-size: var(--asli-text-meta);
}

.asli-testimonial__stars {
	color: var(--asli-yellow-deep);
	letter-spacing: 0.2em;
	margin-block-end: var(--asli-space-sm);
}

.asli-testimonial__quote {
	margin: 0;
	font-size: var(--asli-text-meta);
	line-height: 1.7;
}
