#profile-modal {
	overflow: auto;
	
	color: var(--main-color);
}
.profile-open #profile-modal {
    opacity: 1;
    pointer-events: auto;
}
@media (min-width: 900px)	 { #profile-modal { padding: 150px 0 50px; } }
@media (max-width: 899.99px) { #profile-modal { padding: 100px 0 75px; } }

/*--------------------------------------------------------------------------------------------------------------------*/

#profile-modal > .content-wrapper { min-height: 100%; }

/*--------------------------------------------------------------------------------------------------------------------*/

#profile-modal > .close-btn {
	position: absolute;
	display: block; height: 50px; width: 50px;
	
	background-color: #000;
	
	-webkit-mask-image: url("../../images/icons/close.svg");
	mask-image: url("../../images/icons/close.svg");
	-webkit-mask-size: 35px;
	mask-size: 35px;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	
	cursor: pointer;
}
@media (min-width: 900px)	 { #profile-modal > .close-btn { top: 50px; right: 50px; } }
@media (max-width: 899.99px) { #profile-modal > .close-btn { top: 25px; right: 25px; } }

/*--------------------------------------------------------------------------------------------------------------------*/

#profile-modal > .content-wrapper > .avatar {
	position: relative;
	max-width: 570px; overflow: hidden;
}
#profile-modal > .content-wrapper > .avatar:before {
	content: '';
	display: block;
	padding-top: 125%;
}
#profile-modal > .content-wrapper > .avatar > img {
	position: absolute; top: 0; left: 0;
	display: block; height: 100%; width: 100%;
	object-fit: cover;
	object-position: center;
}
#profile-modal > .content-wrapper > .info {
	display: flex; max-width: 850px;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	row-gap: 35px;
	column-gap: 15px;
	margin: 0 auto;
}
#profile-modal > .content-wrapper > .info > .name {
	flex: 0 0 100%;
	line-height: 48px;
	font-size: 40px;
}
#profile-modal > .content-wrapper > .info > .name > .firstname {
	font-weight: 700;
	color: var(--off-color);
}
#profile-modal > .content-wrapper > .info > .name > .lastname {
	text-transform: uppercase;
}
#profile-modal > .content-wrapper > .info > .roles {
	margin-right: auto;
	
	line-height: 34px;
	font-size: 25px;
}
#profile-modal > .content-wrapper > .info > .roles > .role { display: block; }
#profile-modal > .content-wrapper > .info > .cta {
	position: relative;
	display: flex; height: 56px; min-width: 56px; overflow: hidden;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	
	background-color: var(--off-color);
	border-radius: 28px;
	
	color: #FFF;
}
#profile-modal > .content-wrapper > .info > .cta:before {
	content: '';
	position: absolute; top: 0; right: 0; bottom: 0; left: 0;
	
	background-color: #000;
	
	opacity: 0;
}
.loaded #profile-modal > .content-wrapper > .info > .cta:before { transition: opacity .2s ease-out; }
#profile-modal > .content-wrapper > .info > .cta:hover:before { opacity: .3; }
#profile-modal > .content-wrapper > .info > .cta > span { position: relative; }
#profile-modal > .content-wrapper > .info > .cta > span:before {
	content: '';
	display: inline-block; height: 24px; width: 24px;
	vertical-align: middle;
	
	background-color: #FFF;
	
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}
#profile-modal > .content-wrapper > .info > .cta.phone {}
#profile-modal > .content-wrapper > .info > .cta.phone > span { padding: 0 25px; }
#profile-modal > .content-wrapper > .info > .cta.phone > span:before {
	margin-right: 20px;
	-webkit-mask-image: url("../../images/icons/phone.svg");
	mask-image: url("../../images/icons/phone.svg");
}
#profile-modal > .content-wrapper > .info > .cta.email > span:before {
	-webkit-mask-image: url("../../images/icons/email.svg");
	mask-image: url("../../images/icons/email.svg");
}
#profile-modal > .content-wrapper > .info > .cta.linkedin {}
#profile-modal > .content-wrapper > .info > .cta.linkedin > span:before {
	-webkit-mask-image: url("../../images/social/linkedin.svg");
	mask-image: url("../../images/social/linkedin.svg");
}
#profile-modal > .content-wrapper > .info > .curriculum {
	flex: 0 0 100%;
	margin-top: 35px;
	
	font-weight: 200;
}

@media (min-width: 900px) {
	#profile-modal > .content-wrapper > .avatar {
		margin-bottom: 90px;
		border-radius: 30px;
	}
	#profile-modal > .content-wrapper > .info > .cta { font-size: 18px; }
	#profile-modal > .content-wrapper > .info > .curriculum {
		line-height: 46px;
		font-size: 25px;
	}
}
@media (max-width: 899.99px) {
	#profile-modal > .content-wrapper > .avatar {
		margin-bottom: 60px;
		border-radius: 10px;
	}
	#profile-modal > .content-wrapper > .info > .cta { font-size: 16px; }
	#profile-modal > .content-wrapper > .info > .curriculum {
		line-height: 30px;
		font-size: 18px;
	}
}