/**
 * Variant CSS: team--trio-circles-labeled
 * Layer 2 — Path B team role (2026-06-10).
 *
 * Dedicated layout for EXACTLY three people: three large circular avatars in a
 * single centered row, each with a name and a role label below (no bio, no index
 * numbers, no card chrome). A clean "introducing ourselves" symmetry — distinct
 * from dense grids, bio lists, and numbered avatar cards. Text stays --ink
 * (polarity-aware); the role label and the hover ring lean on --accent.
 * Portraits are swapped by the photo system. Every selector scoped to the
 * variant. KI-020 safe (no --bg-main as foreground). A8/A9 safe (centered
 * children use margin-inline:auto, never margin:0 0).
 */

body.aibt-universal .universal-team--trio-circles-labeled {
	padding-block: calc(clamp(3rem, 7vw, 5rem) * var(--density, 1));
	text-align: center;
}

/* Centered intro + members keep horizontal auto margins (A8/A9). */
body.aibt-universal .universal-team.universal-team--trio-circles-labeled .has-text-align-center {
	margin-inline: auto !important;
}

/* === Intro ================================================================= */
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__intro {
	margin: 0 auto clamp(2.4rem, 5vw, 3.6rem) auto;
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__kicker {
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	letter-spacing: var(--tracking-widest) !important;
	text-transform: uppercase !important;
	color: var(--accent) !important;
	margin: 0 auto var(--space-sm) auto !important;
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__headline {
	font-family: var(--font-display) !important;
	color: var(--ink) !important;
	margin: 0 auto var(--space-sm) auto !important;
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__deck {
	font-family: var(--font-body) !important;
	font-size: var(--text-lg) !important;
	line-height: var(--leading-relaxed) !important;
	color: var(--ink) !important;
	opacity: 0.76;
	max-width: 56ch;
	margin: 0 auto !important;
}

/* === Row of three circular avatars ======================================== */
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__grid {
	grid-template-columns: repeat(3, 1fr) !important;
	gap: clamp(1.8rem, 4vw, 3.4rem) !important;
	align-items: start;
	justify-items: center;
}

/* === Member ================================================================ */
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__member {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 0;
	max-width: 320px;
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__photo {
	margin: 0 auto var(--space-md) auto !important;
	width: clamp(140px, 20vw, 220px);
	border-radius: var(--radius-pill, 999px);
	overflow: hidden;
	/* Accent halo ring; intensifies on hover. */
	box-shadow: 0 0 0 var(--space-3xs) var(--accent-fade);
	transition: box-shadow var(--duration-medium) var(--ease-elegant);
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__photo img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: var(--radius-pill, 999px);
	filter: var(--photo-filter, none);
	/* Restrained portrait zoom on hover. */
	transition: transform var(--duration-medium) var(--ease-elegant);
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__member:hover .universal-team__photo {
	box-shadow: 0 0 0 var(--space-2xs) var(--divider-accent);
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__member:hover .universal-team__photo img {
	transform: scale(1.05);
}

/* === Text body ============================================================= */
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__body {
	min-width: 0;
}
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__name {
	font-family: var(--font-display) !important;
	font-size: clamp(1.25rem, 2.4vw, 1.6rem) !important;
	font-weight: 600 !important;
	line-height: 1.18 !important;
	letter-spacing: -0.01em !important;
	color: var(--ink) !important;
	margin: 0 auto var(--space-2xs) auto !important;
}
/* Role rendered as a pill label chip — distinct from plain caption variants. */
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__role {
	display: inline-block;
	font-family: var(--font-body) !important;
	font-size: var(--text-xs) !important;
	font-weight: 600 !important;
	letter-spacing: var(--tracking-wide) !important;
	text-transform: uppercase !important;
	color: var(--accent) !important;
	background: var(--accent-fade);
	padding: 0.35em 0.85em !important;
	border-radius: var(--radius-pill, 999px);
	margin: 0 auto !important;
}

/* === Focus-visible (keyboard) ============================================== */
body.aibt-universal .universal-team--trio-circles-labeled .universal-team__photo img:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 3px;
}

/* === Responsive ============================================================ */
/* Cap wide uppercase tracking on small screens (A5). */
@media (max-width: 640px) {
	body.aibt-universal .universal-team--trio-circles-labeled .universal-team__kicker,
	body.aibt-universal .universal-team--trio-circles-labeled .universal-team__role {
		letter-spacing: var(--tracking-wide) !important;
	}
}

/* Tablet (641–959): three still fit in a row but tighten the gap. */
@media (min-width: 641px) and (max-width: 959px) {
	body.aibt-universal .universal-team--trio-circles-labeled .universal-team__grid {
		gap: clamp(1.2rem, 3vw, 2rem) !important;
	}
}

/* Mobile (≤640): single column, stacked. */
@media (max-width: 640px) {
	body.aibt-universal .universal-team--trio-circles-labeled .universal-team__grid {
		grid-template-columns: 1fr !important;
		gap: 2.4rem !important;
	}
	body.aibt-universal .universal-team--trio-circles-labeled .universal-team__photo {
		width: clamp(160px, 50vw, 210px);
	}
}
