/*
--------------------------------------
banner -- container
--------------------------------------
*/

.banner-container {
	position: relative;
}

/*
--------------------------------------
banner -- image
--------------------------------------
*/

.banner-container .banner-img-container img {
	object-fit: cover;
	height: 85vh;
	width: 100%;
	max-width: 100%;
}

/*
--------------------------------------
banner -- overlay
--------------------------------------
*/

.banner-container .banner-overlay-container {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.37) 0%, rgba(0, 0, 0, 0.37) 100%);
}

/*
--------------------------------------
banner -- content
--------------------------------------
*/

/*Text*/

.banner-container .banner-text-container {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.banner-container .banner-text-inner {
	max-width: 75%;
	margin: auto;
	text-align: center;
}

/*Subhead*/

.banner-container .banner-subhead-container {
	padding-bottom: 15px;
}

.banner-container .banner-subhead-container .banner-subhead {
	font-family: var(--e-global-typography-032f926-font-family), sans-serif;
	font-size: 18px;
	font-weight: 400;
	color: var(--e-global-color-secondary);
	text-align: center;
	letter-spacing: -0.72px;
}

/*Title*/

.banner-container .banner-title {
	display: flex;
	flex-direction: column;
	font-family: var(--e-global-typography-primary-font-family), sans-serif;
	font-weight: var(--e-global-typography-primary-font-weight);
	font-size: calc(30px + (40 - 30) * ((100vw - 320px) / (1199 - 320)));
	color: #fff;
	line-height: 1.15;
}

/*Description*/

.banner-container .banner-description-container {
	padding: 1.5em 0 calc(15px + (30 - 15) * ((100vw - 320px) / (1920 - 320)));
}

.banner-container .banner-description {
	font-family: var(--e-global-typography-secondary-font-family), sans-serif;
	font-size: calc(17px + (18 - 17) * ((100vw - 320px) / (1920 - 320)));
	font-weight: 600;
	color: #FFF;
	line-height: 150%;
	max-width: 100%;
}

/*USP*/

.banner-container .usp-items-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: calc(5px + (50 - 5) * ((100vw - 320px) / (1920 - 320)));
	align-items: center;
	padding-top: calc(20px + (36 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.banner-container .usp-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}

.usp-item-img-container {
	display: flex;
	align-items: center;
	height: 61px;
}

.banner-container .usp-item .usp-item-title-container {
	font-family: var(--e-global-typography-text-font-family), sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
	line-height: 24px;
	text-transform: uppercase;
	text-align: center;
}

/*btn*/

.banner-btn-container.banner-btns-container {
	display: flex;
	gap: 20px;
}

.banner-btn-container {
	padding-top: 2em;
}

.banner-btn-container .banner-btn {
	display: inline-flex;
	align-items: center;
	font-family: var(--e-global-typography-text-font-family), sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	padding: 12px 42px;
}

/*
--------------------------------------
banner -- additional img
--------------------------------------
*/

.banner-additional-img-container {
	position: absolute;
	right: 5px;
	bottom: 5px;
	display: flex;
	justify-content: center;
	background: #fff;
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.10);
	width: 105px;
	height: 105px;
}

.banner-additional-img-container img {
	object-fit: contain;
	max-width: 85px;
	height: 100%;
}