/* singulary-ui/persoenlich */

.fyh-person {
	background: var(--wp--preset--color--base);
}

.fyh-person__inner {
	display: grid;
	gap: clamp( 2rem, 4vw, 3.5rem );
	width: 100%;
	max-width: var(--wp--custom--layout--shell-max, 1512px);
	margin-inline: auto;
	padding: var(--wp--custom--layout--section-space, clamp( 4rem, 5.5vw, 5rem )) var(--wp--custom--layout--edge, clamp( 1.5rem, 5vw, 6rem ));
	box-sizing: border-box;
}

.fyh-person__portrait {
	position: relative;
	margin: 0;
	overflow: hidden;
	aspect-ratio: 1920 / 668;
	border-radius: var(--wp--custom--radius--lg, 28px);
	background: var(--wp--preset--color--ink);
}

.fyh-person__portrait img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 80% 40%;
}

/* Flat scrim for the name line, like the photo bands. */
.fyh-person__caption {
	position: absolute;
	inset: auto 0 0;
	display: grid;
	gap: .15rem;
	padding: 3rem clamp( 1.25rem, 2.2vw, 1.75rem ) clamp( 1.25rem, 2.2vw, 1.75rem );
	background: linear-gradient( to top, rgb( 15 15 15 / .6 ), rgb( 15 15 15 / 0 ) );
	color: var(--wp--preset--color--on-dark);
}

.fyh-person__caption strong {
	font-size: 1.0625rem;
	font-weight: 600;
}

.fyh-person__caption span {
	color: var(--wp--preset--color--on-dark-soft);
	font-size: .875rem;
}

.fyh-person__body {
	display: grid;
	grid-template-columns: minmax( 0, 5fr ) minmax( 0, 7fr );
	gap: clamp( 2rem, 5vw, 5rem );
	align-items: start;
}

.fyh-person__h2 span {
	display: block;
	color: var(--wp--preset--color--muted);
}

.fyh-person__lead {
	max-width: 54ch;
	margin: 1.5rem 0 0;
	color: var(--wp--preset--color--muted);
	font-size: clamp( 1rem, 1.2vw, 1.125rem );
	line-height: 1.65;
}

.fyh-person__rows {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--wp--preset--color--hairline);
}

.fyh-person__row {
	display: grid;
	grid-template-columns: 4.5rem minmax( 0, 1fr );
	gap: 1.25rem;
	padding-block: 1rem;
	border-bottom: 1px solid var(--wp--preset--color--hairline);
}

.fyh-person__year {
	color: var(--wp--custom--ui--primary, var(--wp--preset--color--brand));
	font-size: .9375rem;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	line-height: 1.5;
}

.fyh-person__station {
	display: grid;
	gap: .2rem;
	line-height: 1.5;
}

.fyh-person__station strong {
	color: var(--wp--preset--color--ink);
	font-size: .9375rem;
	font-weight: 600;
}

.fyh-person__station span {
	color: var(--wp--preset--color--muted);
	font-size: .9375rem;
}

.fyh-person__link {
	display: inline-flex;
	gap: .5rem;
	align-items: center;
	min-height: 2.75rem;
	margin-top: 1.25rem;
	color: var(--wp--custom--ui--primary, var(--wp--preset--color--brand));
	font-size: .9375rem;
	font-weight: 500;
	text-decoration: none;
}

.fyh-person__link svg {
	width: 1.1rem;
	height: 1.1rem;
	transition: transform .2s ease;
}

.fyh-person__link:hover svg {
	transform: translateX( 3px );
}

@media (max-width: 900px) {
	.fyh-person__body {
		grid-template-columns: minmax( 0, 1fr );
	}
}

/* Phones: 16:9 keeps the person inside the scene. */
@media (max-width: 640px) {
	.fyh-person__portrait {
		aspect-ratio: 16 / 9;
		border-radius: var(--wp--custom--radius--md, 16px);
	}

	.fyh-person__portrait img {
		object-position: 82% 40%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.fyh-person__link svg {
		transition: none;
	}
}
