.content-page-hero{
	position: relative;
	overflow: hidden;
	height: 0;
	padding-bottom: 44%;

	-webkit-border-radius: 22px;
	-moz-border-radius: 22px;
	border-radius: 22px;
}

.content-page-hero::before,
.content-page-hero-image{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.content-page-hero.dark-overlay-on::before{
	content: "";
	z-index: 15;
	background-color: rgba(0, 0, 0, 0.5);
}

.content-page-hero-image{
	z-index: 10;
}

.content-page-hero-image img{
	display: block;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	object-position: center center;
}

.content-page-hero-title-wrap{
	position: absolute;
	z-index: 20;
	top: 50%;
	left: 50%;
	width: 100%;
	padding: 20px;

	-webkit-transform: translate( -50%, -50% );
	-moz-transform: translate( -50%, -50% );
	transform: translate( -50%, -50% );
}

.content-page-hero-logo{
	margin: 0 0 20px;
}

.content-page-hero-logo img{
	display: block;
	width: auto;
	height: auto;
	max-width: 165px;
	max-height: 165px;
	margin: auto;
}

.content-page-hero-title{
	font-size: 51px;
	line-height: 1.1;
	text-align: center;
	color: #FFF;
	margin: 0;
}

.content-page-hero-title:not(:last-child){
	margin-bottom: 20px;
}

.content-page-hero-subtitle{
	font-size: 30px;
	line-height: 1.1;
	text-align: center;
	color: #D2D2D2;
	margin: 0;
}

@media only screen and (max-width: 1000px) {
	.content-page-hero{
		-webkit-border-radius: 18px;
		-moz-border-radius: 18px;
		border-radius: 18px;
	}

	.content-page-hero-logo img{
		max-width: 130px;
		max-height: 130px;
	}

	.content-page-hero-title{
		font-size: 44px;
	}

	.content-page-hero-subtitle{
		font-size: 24px;
	}
}

@media only screen and (max-width: 767px) {
	.content-page-hero{
		padding-bottom: 54%;
		
		-webkit-border-radius: 16px;
		-moz-border-radius: 16px;
		border-radius: 16px;
	}

	.content-page-hero-logo{
		margin-bottom: 15px;
	}

	.content-page-hero-logo img{
		max-width: 100px;
		max-height: 100px;
	}

	.content-page-hero-title{
		font-size: 36px;
	}

	.content-page-hero-subtitle{
		font-size: 20px;
	}
}

@media only screen and (max-width: 540px) {
	.content-page-hero{
		-webkit-border-radius: 14px;
		-moz-border-radius: 14px;
		border-radius: 14px;
	}

	.content-page-hero-title-wrap {
		padding: 10px;
	}

	.content-page-hero-logo{
		margin-bottom: 10px;
	}

	.content-page-hero-logo img{
		max-width: 16vw;
		max-height: 16vw;
	}

	.content-page-hero-title{
		font-size: 6vw;
	}

	.content-page-hero-subtitle{
		font-size: 4vw;
	}
}