/* Team grid */

.blk-team__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px 48px;
	flex-wrap: wrap;
	margin-bottom: clamp(32px, 4vw, 56px);
}

.blk-team__head .section-heading {
	margin-bottom: 0;
}

.blk-team__all {
	margin-bottom: 6px;
}

/* Rows of four that centre as a group, so a short last row never leaves a gap. */
.team-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: clamp(32px, 4vw, 48px) clamp(20px, 2.5vw, 32px);
	list-style: none;
}

.team-card {
	display: flex;
	flex-direction: column;
	width: calc((100% - 3 * clamp(20px, 2.5vw, 32px)) / 4);
}

.team-card__media {
	position: relative;
	aspect-ratio: 4 / 5;
	margin-bottom: 20px;
	border-radius: var(--radius-lg);
	overflow: hidden;
	background: var(--tint);
}

.blk--tint .team-card__media { background: var(--surface); }
.blk--dark .team-card__media { background: var(--ink-3); }

/* The strand along the foot of the photo, in the card's swatch. */
.team-card__media::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 6px;
	background: var(--swatch);
	transform-origin: left;
	transition: height .3s var(--ease);
}

.team-card:hover .team-card__media::after {
	height: 10px;
}

.team-card__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 30%;
	transition: transform .6s var(--ease);
}

.team-card:hover .team-card__media img {
	transform: scale(1.04);
}

.team-card__body {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.team-card__name {
	font-size: clamp(1.25rem, 1rem + .5vw, 1.5rem);
}

.team-card__role {
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--amber-text);
}

.team-card__quote {
	margin: 10px 0 0;
	padding-left: 14px;
	border-left: 3px solid var(--swatch);
	font-size: .9375rem;
	line-height: 1.55;
	color: var(--text);
}

.team-card__quote p::before { content: '\201C'; }
.team-card__quote p::after { content: '\201D'; }

.blk--dark .team-card__name { color: #fff; }
.blk--dark .team-card__role { color: var(--amber); }
.blk--dark .team-card__quote { color: var(--on-dark-muted); }

@media (max-width: 1023px) {
	.team-card { width: calc((100% - 2 * clamp(20px, 2.5vw, 32px)) / 3); }
}

@media (max-width: 767px) {
	.team-card { width: calc((100% - clamp(20px, 2.5vw, 32px)) / 2); }
}
