.team {
	display: grid;
	grid-template-columns: var(--columns-fill-4);
	gap: calc(var(--gap) / 2) var(--gap);
	margin-block: var(--gap);
}
.team > div {
	position: relative;
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 7;
	background: rgba(var(--green),.1);
	background: white;
	z-index: 1;
}

.team figure {
	max-width: 100%;
	height: 100%;
	aspect-ratio: 4 / 3;
	aspect-ratio: 1;
	overflow: clip;
	z-index: 2;
}

.team figure a,
.team figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .5s ease-in-out;
}
.team > *:hover figure img {
	transform: scale(1.1);
}

.team > * > *,
.team > * > * > * {
	hyphens: auto !important;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	white-space: normal;
	overflow: clip;
	margin: 0;
	z-index: 2;
	color: rgb(var(--fontcolor));
}
.team > * > *:not(figure) {
	padding-inline: var(--gap);
}

.team > * > *:has(.envelope) {
	position: absolute;
	bottom: 0;
	left: var(--gap);
	margin-bottom: calc(var(--gap) / 2);
}
.team > *:has(.envelope) {
	padding-bottom: calc(var(--gap) * 2.25);	
}

.team p {
	font-size: 1.25em;	
}

.team .icon {
	background: rgb(var(--fontcolor)) !important;
	height: calc(var(--gap) * 1) !important;
	width: auto !important;
	filter: grayscale(0);
	align-self: center;
}
.team .btn {
	color: white;	
}
.team .btn .icon {
	background: white !important;	
}