.mm-team-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--mm-space-md);
	list-style: none;
	margin: 0;
	padding: 0;
}

.mm-team-card button {
	display: grid;
	gap: var(--mm-space-sm);
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: start;
	cursor: pointer;
}

.mm-team-card button:focus-visible {
	outline: 2px solid var(--mm-focus);
	outline-offset: 2px;
}

.mm-team-card__photo {
	display: block;
	overflow: hidden;
	background: var(--mm-surface);
}

.mm-team-card__photo img {
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio: 1;
	object-fit: cover;
}

.mm-team-card__copy {
	display: grid;
	gap: var(--mm-space-xs);
}

.mm-team-card__copy .eyebrow {
	margin-bottom: 0;
}

.mm-team-dialog .dialog-top {
	position: sticky;
	top: 0;
	z-index: 1;
	justify-content: flex-end;
	background: var(--mm-bg);
}

.mm-team__intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--mm-space-md);
	align-items: start;
}

.mm-team__intro:has(.mm-team__photo) {
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
}

.mm-team__intro > * {
	min-width: 0;
	min-height: 0;
}

.mm-team__photo {
	margin: 0;
	align-self: start;
}

.mm-team-dialog .mm-team__photo img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	object-position: center top;
}

.mm-team-dialog .mm-team__copy .eyebrow,
.mm-team-dialog .mm-team__copy h2 {
	margin: 0;
}

.mm-team__vehicle {
	margin-top: var(--mm-space-xs);
}

.mm-team-dialog .mm-team__vehicle :is(p, h2, h3) {
	margin: 0;
}

.mm-team__content {
	margin-top: var(--mm-space-md);
}

.mm-team-dialog .mm-team__content :is(p, ul, ol) {
	margin-top: 0;
	margin-bottom: 0.75em;
}

.mm-team-dialog .mm-team__content :is(h2, h3, h4) {
	margin: 0.75em 0 0.25em;
	font-size: 1.05em;
	line-height: 1.3;
}

.mm-team-dialog__nav {
	position: sticky;
	bottom: 0;
	display: flex;
	justify-content: space-between;
	gap: var(--mm-space-sm);
	margin-top: var(--mm-space-lg);
	padding-top: var(--mm-space-sm);
	background: var(--mm-bg);
}

@media (max-width: 980px) {
	.mm-team-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.mm-team-list,
	.mm-team__intro:has(.mm-team__photo) {
		grid-template-columns: minmax(0, 1fr);
	}
}
