/* =========================
   SHARED SINGLE TEAM STYLES
========================= */

.team-single,
.team-single-video {
	font-family: "Montserrat", sans-serif;
}

.team-single-layout {
	display: none;
}

.team-single-layout.is-active {
	display: block;
}

/* =========================
   STANDARD IMAGE LAYOUT
========================= */

.team-single {
	position: relative;

	padding: 100px 20px 80px;
	overflow: hidden;
	height: 800px;
}

.team-single__background {
	position: absolute;
	top: 80px;
	right: 45px;
	left: 165px;
	height: 72%;
	z-index: 0;

	background: linear-gradient(to bottom,
			rgba(235, 238, 239, 1) 0%,
			rgba(235, 238, 239, 0.75) 48%,
			rgba(235, 238, 239, 0) 100%);
}

.team-single__layout {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: 365px minmax(0, 1fr);
	gap: 5px;

	width: 100%;
	max-width: 1320px;
	margin: 0 0;
	align-items: start;
}

.team-single__image-stage {
	position: relative;

	left: 25px;

	top: -50px;
	width: 365px;
	height: 365px;
	perspective: 1200px;
}

.team-single__image-wrap {
	width: 325px;
	height: 325px;
	position: relative;
	overflow: hidden;
	background: #e5e5e5;
	transform-style: preserve-3d;
	will-change: transform, opacity;
}


.team-single__image-wrap picture {
	display: block;
	width: 100%;
	height: 100%;
}

.team-single__image-wrap picture img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.team-single__image {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

.team-single__info-button,
.team-single__info-overlay {
	display: none;
}

@media (max-width: 800px) {
	.team-single__info-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		top: calc(100% + 8px);
		right: 0;
		padding: 0;
		border: 0;
		background: transparent;
		color: #555;
		font-size: 20px;
		line-height: 1;
		cursor: pointer;
		z-index: 40;
	}

	.team-single__info-overlay {
		position: absolute;
		inset: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 18px;
		background: #ededed;
		color: #363636;
		opacity: 0;
		pointer-events: none;
		transition: opacity 250ms ease;
		text-align: center;
	}

	.team-single__info-copy {
		margin: 0;
		color: #363636;
		font-family: "Montserrat", sans-serif;
		font-size: clamp(14px, 1.1vw, 20px);
		font-weight: 600;
		line-height: 1.35;
		letter-spacing: 0.01em;
	}

	.team-single__image-stage.is-info-active .team-single__info-overlay {
		opacity: 1;
		pointer-events: auto;
	}
}

.team-single__content {
	padding-top: 0px;
	max-width: 900px;
	padding-right: 180px;
}

.team-single-nav,
.team-single-nav-video {
	position: absolute;
	top: -45px;
	right: -10px;

	display: flex;
	align-items: center;
	gap: 0px;

	z-index: 20;
}


.team-single-nav__link {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 31px;
	height: 36px;

	color: #d2d2d2;
	text-decoration: none;

	transition: color .2s ease;
}

.team-single-nav__link svg {
	width: 24px;
	height: 24px;
	display: block;
}

.team-single-nav__link:hover {
	color: #666;
}

.team-single-nav__link.is-disabled {
	opacity: .3;
	pointer-events: none;
}

/* =========================
   TYPOGRAPHY
========================= */

.team-single__header {
	margin-bottom: 20px;
}

.team-single__name {
	margin: 0;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.1;
	color: #111;
}

.team-single__title {
	margin: 4px 0 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.6;
	color: #555;
	text-transform: uppercase;
	letter-spacing: .2em;
}

.team-single__quote {
	margin: 48px 0 32px;
	font-size: clamp(28px, 1.8vw, 34px);
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0.1em;
	color: #d0857a;
}



.team-single__quote::before {

	content: "“";
	position: absolute;
	left: 0;
	top: 0;
	transform: translateX(-0.65em);
	font: inherit;
	line-height: inherit;
	color: inherit;

}

.team-single__bio {
	font-size: 16px;
	font-weight: 300;
	line-height: 1.3;
	color: #5f6068;
	letter-spacing: 0.03em;
}

.team-single__bio p {
	margin: 0 0 1.1em;
}

.team-single__education {
	margin-top: 0px;
}

.team-single__section-title {
	margin: 0 0 12px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.1;
	color: #4f5baa;
}

.team-single__education-list {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.25;
	color: #5f6068;
	letter-spacing: 0.03em;
}

.team-single__education-list li {
	margin: 0 0 10px;
}

/* =========================
   VIDEO LAYOUT
========================= */

/*Text styles for video content*/

.team-single__name-video {
	margin: 0;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.1;
	color: #111;
}

.team-single__title-video {
	margin: 4px 0 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.6;
	color: #555;
	text-transform: uppercase;
	letter-spacing: .2em;
}
/*
.team-single__quote-video {
	display: flex;

	margin: 18px 0 22px;

	font-size: 26px;
	font-weight: 400;
	line-height: 1.2;
	color: #5a5765;
}
*/

.team-single__quote-video {

    position: relative;
    display: block;
    margin: 18px 0 22px;
    font-size: 26px;
    font-weight: 400;
    line-height: 1.2;
    color: #5a5765;

}

.team-single__quote-video::before {

    content: "\201C";
    position: absolute;
    left: -0.45em;
    top: 0;
    color: inherit;
    font: inherit;
    line-height: inherit;

}

/*
.team-single__quote-video::before {
	content: "“";

	flex-shrink: 0;

	margin-left: -0.45em;
	margin-right: 0.05em;

	font: inherit;
	line-height: inherit;
	color: inherit;
}
*/

.team-single__bio-video {
	font-size: 16px;
	font-weight: 300;
	line-height: 1.3;
	color: #5f6068;
	letter-spacing: 0.03em;
}

.team-single__bio-video p {
	margin: 0 0 1.1em;
}

.team-single__education-video {
	margin-top: 0px;
}

.team-single__section-title-video {
	margin: 0 0 12px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.1;
	color: #4f5baa;
}

.team-single__education-list-video {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.25;
	color: #5f6068;
}

.team-single__education-list-video li {
	margin: 0 0 10px;
}




.team-single-video {
	position: relative;
	top: -20px;
	/*min-height: calc(100vh - var(--header-height, 90px));*/
	min-height: 720px;
	padding: 0px 0;
	overflow: visible;
}

.team-single-video__panel {
	position: relative;
	width: calc(100% - 215px);
	height: 720px;
	/* margin: 0 165px; */
	overflow: visible;
	perspective: 2000px;
	margin-left: 190px;
}

/*
.team-single-video__media {
    position: absolute;
    top: -90px;
    bottom: 0;

    left: 45%;

    width: calc(50% + 165px);

    z-index: 1;
    overflow: hidden;
}
	*/

.team-single-video__media {
	position: absolute;
	top: -90px;
	bottom: 0;
	right: -75px;
	height: 810px;
	/*height: calc(100% + 90px);*/
	aspect-ratio: 1 / 1;
	width: 810px;

	z-index: 1;
	overflow: hidden;
}



.team-single-video__clip {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center top;

	opacity: 0;
	animation: teamImageFadeIn 1.2s ease-out forwards;
}

@keyframes teamImageFadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}



.team-single-video__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;

	background: linear-gradient(to left,
			rgba(135, 138, 139, 0.15) 0%,
			rgba(235, 238, 239, 0) 100%);


	pointer-events: none;
}
/*
.team-single-video__content {
	position: relative;
	z-index: 3;
	width: 55%;
	padding: 0;
	box-sizing: border-box;
	height: 100%;
	max-height: 100%;
	transform-style: preserve-3d;
	overflow-y: auto;
	will-change: transform, opacity;
}
	*/


.team-single-video__content {
    position: relative;
    z-index: 3;
    width: calc(40% + 20px);
    height: 100%;
    max-height: 100%;
    padding: 0 0 0 20px;
    margin-left: -20px;
    box-sizing: border-box;

    transform-style: preserve-3d;
    overflow-y: auto;
    will-change: transform, opacity;
}


/* =========================
   MOBILE
========================= */
@media (max-width: 1500px) {
	.team-single-video__content {
		width: 40%;
	}
}

@media (max-width: 1200px) {
	.team-single-video__content {
		width: 40%;
	}
}




@media (max-width: 800px) {

	.mob-page-title--back {
		display: block;
		color: #222;
		text-decoration: none;
	}

	.mob-page-title--back:hover,
	.mob-page-title--back:focus {
		color: #222;
		text-decoration: none;
	}

	.mob-page-title {
		margin-top: 20px;
	}

	.team-single {
		height: auto;
		padding: 20px 20px 60px;
		overflow: visible;
	}

	.team-single__background {
		position: static;
		height: auto;
		background: none;
	}

	.team-single-nav {
		position: absolute;
		top: 60px;
		right: 12px;
		z-index: 30;
	}

	.team-single__layout {
		display: block;
		max-width: none;
	}

	.team-single__image-stage {
		left: auto;
		top: auto;
		width: 100%;
		height: auto;
		margin: 58px 0 8px;
		perspective: none;
	}

	.team-single__image-wrap {

		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
	}

	.team-single__image-wrap picture {
		height: 100%;
	}

	.team-single__image {
		width: 100%;
		height: 100%;
		object-fit: contain;
		object-position: center center;
	}

	.team-single__content {
		position: relative;
		max-width: none;
		padding: 0;
	}

	.team-single__header {
		margin-bottom: 18px;
	}

	.team-single__name {
		font-size: 18px;
		font-weight: 700;
		text-transform: none;
		letter-spacing: 0;
	}

	.team-single__title {
		margin-top: 2px;
		font-size: 18px;
		font-weight: 300;
		line-height: 1.2;
		color: #111;
		text-transform: none;
		letter-spacing: 0;
	}

	.team-single__bio {
		font-size: 18px;
		font-weight: 300;
		line-height: 1.4;
		color: #6b6b6b;
		letter-spacing: 0;
	}

	.team-single__section-title {
		font-size: 18px;
		color: #5960a8;
	}

	.team-single__social {
		position: static;
		margin: 20px 0 0;
	}

	.team-single__social img {
		width: 30px;
		height: 30px;
		display: block;
	}
}
