.se-contributors {
	display: grid;
	gap: 14px;
	margin: 1.75em 0;
}

.se-contributor {
	display: grid;
	grid-template-columns: 78px minmax(0, 1fr);
	gap: 14px;
	box-sizing: border-box;
	padding: 16px;
	border: 1px solid #d9dee5;
	border-radius: 0;
	background: #fff;
}

.se-contributor__visual {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-self: start;
	gap: 7px;
}

.se-contributor__icon {
	display: grid;
	place-items: center;
	box-sizing: border-box;
	width: 72px;
	height: 72px;
	margin: 0;
	border: 1px solid #d9dee5;
	border-radius: 50%;
	background: #f3f5f7;
	box-shadow: none;
	color: var(--se-contributor-color);
	font-size: 26px;
	font-weight: 700;
	object-fit: cover;
}

.se-contributor__role {
	display: inline-block;
	margin: 0;
	padding: 2px 8px;
	border-radius: 999px;
	background: #f1f4f7;
	color: var(--se-contributor-color);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.45;
	text-align: center;
}

.se-contributor__body { min-width: 0; }
.se-contributor__name { margin: 0 0 2px; color: #20252b; font-size: 1.1em; font-weight: 700; line-height: 1.45; }
.se-contributor__title { margin: 0 0 7px; color: var(--se-contributor-color); font-size: .83em; font-weight: 700; line-height: 1.45; }
.se-contributor__bio { margin: 0; color: #4b535c; font-size: .88em; line-height: 1.6; }

.se-contributor__bio-wrap.is-collapsible:not(.is-expanded) .se-contributor__bio {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.se-contributor__bio-wrap:not(.is-expanded) .se-contributor__link {
	display: none;
}

.se-contributor__more {
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--se-contributor-color);
	font: inherit;
	font-size: .82em;
	font-weight: 700;
	cursor: pointer;
}

.se-contributor__more[hidden] { display: none; }
.se-contributor__more-close,
.se-contributor__bio-wrap.is-expanded .se-contributor__more-open { display: none; }
.se-contributor__bio-wrap.is-expanded .se-contributor__more-close { display: inline; }

.se-contributor__actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px 14px;
	margin-top: 6px;
}

.se-contributor__link {
	display: inline-flex;
	align-items: center;
	margin-left: .55em;
	margin-top: 0;
	padding: 0;
	color: var(--se-contributor-color);
	font-size: .78em;
	font-weight: 700;
	line-height: 1.4;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.se-contributor__link:hover { color: #20252b; }

@media (max-width: 599px) {
	.se-contributor { grid-template-columns: 62px minmax(0, 1fr); gap: 11px; padding: 14px; border-radius: 0; }
	.se-contributor__icon { width: 58px; height: 58px; font-size: 22px; }
	.se-contributor__role { padding: 2px 7px; font-size: 10px; }
	.se-contributor__name { font-size: 1em; }
	.se-contributor__title { font-size: .78em; }
	.se-contributor__bio { font-size: .82em; line-height: 1.55; }
}
