/* Page-specific tweaks can go here. */

.region-label {
	margin-top: 2.2rem;
	margin-bottom: 1rem;
	font-size: 0.9rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-accent);
}

/* Keep every team portrait and card visually aligned, regardless of the
   original dimensions of each photo. */
.team-card {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.person-photo {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	height: auto;
	object-fit: cover;
	object-position: center 20%;
	border-radius: calc(var(--radius-md) - 0.35rem);
}

.team-card h3 {
	margin-top: 0.75rem;
}

.team-card small {
	margin-top: auto;
	padding-top: 1.25rem;
	color: var(--color-muted);
}

.link-arrow {
	font-weight: 800;
	color: var(--color-accent);
}

.stack {
	display: grid;
	gap: 1rem;
}

.about-photo {
	display: block;
	width: 100%;
	height: 480px;
	object-fit: cover;
	object-position: center;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-md);
}
