@charset "UTF-8";

#n_hlcont {
	padding: 30px;
	display: inline-block;
	max-width: 1440px;
	overflow: hidden;
	text-align: center
}

#n_hlcont>h2 {
	font-size: 42px;
	text-align: center;
	line-height: 1.4
}

#n_hlcont>p {
	max-width: 1080px;
	margin: 0 auto 30px;
	text-align: center;
	font-size: 16px;
	line-height: 1.54
}

#n_hlcont>ul {
	display: flex;
	flex-wrap: wrap;
	gap: 3%;
	justify-content: center;
	padding: 30px;
	margin: 0
}

#n_hlcont>ul li {
	flex: 1;
	margin: 10px;
	gap: 2%;
	text-align: center;
	box-sizing: border-box;
	max-width: 200px;
	list-style: none
}

#n_hlcont>ul li img {
	width: 40px;
	height: 40px;
	object-fit: cover;
	margin-bottom: 10px
}

#n_hlcont>ul li h3 {
	margin: 10px 0 5px 0;
	font-size: 18px
}

#n_hlcont>ul li p {
	font-size: 14px;
	line-height: 1.4;
	margin: 0
}

#n_hlcont>img {
	max-height: 380px;
	border-radius: 24px;
	overflow: hidden;
	margin: 48px 0
}

#n_hlcont>section {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin: 48px auto;
	background: #f3f9fc;
	border-radius: 24px;
	overflow: hidden;
	max-width: 1344px;
	text-align: right
}

#n_hlcont>section:nth-of-type(even) {
	flex-direction: row-reverse
}

#n_hlcont>section img {
	background: #DDECF5;
	max-width: 50%;
	height: auto;
	object-fit: cover;
	flex: 0 1 50%
}

#n_hlcont>section>div {
	flex: 1 1 50%;
	padding: 4%
}

#n_hlcont>section>div h2 {
	font-size: 34px;
	line-height: 1.4;
	margin-bottom: 20px
}

#n_hlcont>section>div p {
	font-size: 16px;
	line-height: 1.4
}

#n_hlcont>div {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	text-align: right;
	color: white;
	background-size: cover;
	background-position: center;
	width: 100%;
	height: 520px;
	max-width: 1344px;
	margin: 80px auto 40px;
	padding: 4% 6%;
	position: relative;
	border-radius: 24px;
    overflow: hidden;
}

#n_hlcont>div h2 {
	font-size: 40px;
	margin-bottom: 20px;
	z-index: 2;
}

#n_hlcont>div p {
	font-size: 24px;
	margin-top: 0;
	line-height: 1.5;
	z-index: 2;
}

#n_hlcont aside {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	margin: 32px 0;
    padding: 0 18px;
}

#n_hlcont aside>div:first-child {
	position: relative;
	flex: 1;
	height: 720px;
	background-size: cover;
	background-position: center;
	border-radius: 24px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

#n_hlcont aside>div:last-child {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 32px;
}

#n_hlcont aside>div:last-child>div {
	position: relative;
	flex: 1;
	height: 720px;
	background-size: cover;
	background-position: center;
	border-radius: 24px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

#n_hlcont aside>div:first-child::after,
#n_hlcont aside>div:last-child>div::after,
#n_hlcont>div::after{
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	/* Gradient covers bottom 30% */
	background: linear-gradient(to top, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.03));
	z-index: 1;
}

#n_hlcont aside h2,
#n_hlcont aside h3 {
	position: relative;
	z-index: 2;
	color: #fff;
	margin: 0;
	padding: 0 35px 5px 0;
	font-size: 28px !important;
	text-align: right;
}

#n_hlcont aside p {
	position: relative;
	z-index: 2;
	color: #fff;
	padding: 0 35px 30px 35px;
	font-size: 16px !important;
	line-height: 1.5;
	text-align: right;
	margin: 0;
}

@media(max-width:768px) {
	#n_hlcont>h2 {
		font-size: 32px;
		line-height: 1.4
	}

	#n_hlcont>ul {
		padding: 20px 0
	}

	#n_hlcont>ul li {
		flex: 1 1 calc(40% - 20px);
		padding: 10px 0;
		max-width: 180px
	}
    
    #n_hlcont>img {
        border-radius: 12px;
        margin: 24px 0
    }

	#n_hlcont>section {
		flex-direction: column;
		border-radius: 12px;
		margin: 30px 0;
		text-align: center
	}

	#n_hlcont>section img,
	#n_hlcont>section>div {
		flex: 1 1 100%;
		max-width: 100%;
        width:100%;
	}

	#n_hlcont>section>div {
		padding: 5%
	}

	#n_hlcont>section>div h2 {
		font-size: 24px;
		margin: 10px 0
	}

	#n_hlcont>div {
		height: 320px;
		margin: 50px 0 20px;
		padding: 5% 8%;
        border-radius: 12px;
	}

	#n_hlcont>div h2 {
		font-size: 28px;
		line-height: 1.4;
		margin-bottom: 16px
	}

	#n_hlcont>div p {
		font-size: 16px;
		line-height: 1.4
	}

	#n_hlcont aside {
		flex-direction: column;
        padding: 0;
	}

	#n_hlcont aside>div,
	#n_hlcont aside>div:first-child,
	#n_hlcont aside>div:last-child>div {
		flex: none;
		width: 100%;
		height: 200px;
		gap: 16px;
        border-radius: 12px;
	}

	#n_hlcont aside,
	#n_hlcont aside>div:last-child {
		gap: 16px;
	}

	#n_hlcont aside h2,
	#n_hlcont aside h3 {
		font-size: 24px !important;
		line-height: 1;
		padding: 0 30px 0 0;
	}

	#n_hlcont aside p {
		font-size: 14px !important;
		line-height: 1.3;
		padding: 0 30px 30px 30px;
	}
}