
.promo-banner {
	position: relative;
	overflow: hidden;
}

.promo-banner .banner-image img {
	width: 100%;
}

.promo-banner .banner-image:not(.wd-without-height) img, .promo-banner .banner-image:not(.wd-without-height) picture {
	height: inherit;
	object-fit: cover;
	object-position: inherit;
}

.promo-banner .wrapper-content-banner {
	z-index: 2;
	display: flex;
	overflow: hidden;
	padding: 30px;
}

.promo-banner .content-banner {
	position: relative;
	width: 100%;
}

.promo-banner .content-banner>div:first-child {
	margin-top: 0;
}

.promo-banner .banner-title-wrap .banner-subtitle:first-child, .promo-banner .banner-title-wrap .banner-title:first-child {
	margin-top: 0;
}

.promo-banner .banner-title-wrap:empty {
	display: none;
}

.promo-banner .banner-subtitle, .promo-banner .banner-title, .promo-banner .banner-inner {
	margin-top: 7px;
}

.promo-banner .banner-title {
	display: block;
	margin-bottom: 0;
	line-height: 1.3;
}

.promo-banner .banner-btn-wrapper {
	margin-top: 15px;
}

.promo-banner .banner-inner p:first-child:empty {
	display: none;
}

.banners-carousel-wrapper .owl-dots {
	margin-top: 10px;
}

.banner-increased-padding .wrapper-content-banner {
	padding: 7%;
}

.banner-hover-zoom {
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.banner-hover-zoom .banner-image {
	transition: transform .5s cubic-bezier(0, 0, .44, 1.18);
}

.banner-hover-zoom:hover .banner-image {
	transform: scale(1.09);
}

.banner-hover-zoom-reverse {
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.banner-hover-zoom-reverse .banner-image {
	transition: transform .5s cubic-bezier(0, 0, .44, 1.18);
	transform: scale(1.09);
}

.banner-hover-zoom-reverse:hover .banner-image {
	transform: none;
}

.banner-hover-background, .banner-hover-border {
	backface-visibility: hidden;
}

.banner-hover-background .banner-image, .banner-hover-border .banner-image {
	transition: transform 1s cubic-bezier(0, 0, .44, 1.18);
}

.banner-hover-background:hover .banner-image, .banner-hover-border:hover .banner-image {
	transform: scale(1.09);
}

.banner-hover-background:not(.banner-background) .wrapper-content-banner, .banner-hover-border:not(.banner-border) .wrapper-content-banner {
	overflow: hidden;
	padding: 40px;
}

.banner-hover-background:not(.banner-background) .wrapper-content-banner:after, .banner-hover-border:not(.banner-border) .wrapper-content-banner:after {
	content: "";
	position: absolute;
	top: 20px;
	right: 20px;
	bottom: 20px;
	left: 20px;
	z-index: 2;
	opacity: 0;
	transition: transform .35s cubic-bezier(.05, .2, .1, 1), opacity .35s cubic-bezier(.05, .2, .1, 1);
	transform: scale(.5);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.banner-hover-background:not(.banner-background) .content-banner, .banner-hover-border:not(.banner-border) .content-banner {
	z-index: 4;
}

.banner-hover-background:not(.banner-background):hover .wrapper-content-banner:after, .banner-hover-border:not(.banner-border):hover .wrapper-content-banner:after {
	opacity: 1;
	transform: scale(1);
}

.banner-hover-background.banner-border .wrapper-content-banner, .banner-hover-border.banner-background .wrapper-content-banner {
	padding: 30px;
}

.banner-hover-background.banner-border .wrapper-content-banner:after, .banner-hover-border.banner-background .wrapper-content-banner:after {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.banner-hover-background:not(.banner-background) .wrapper-content-banner:after {
	background-color: rgba(0, 0, 0, .9);
}

.banner-hover-background.color-scheme-dark:not(.banner-border) .wrapper-content-banner:after {
	background-color: rgba(255, 255, 255, .9);
}

.banner-hover-border:not(.banner-border) .wrapper-content-banner:after {
	border: 5px solid rgba(255, 255, 255, .3);
}

.banner-hover-border.color-scheme-dark:not(.banner-border) .wrapper-content-banner:after {
	border-color: rgba(0, 0, 0, .1);
}

.banner-mask .wrapper-content-banner {
	background-color: rgba(0, 0, 0, .3);
	transition: background-color .5s cubic-bezier(0, 0, .44, 1.18);
}

.banner-mask.color-scheme-dark .wrapper-content-banner {
	background-color: rgba(255, 255, 255, .3);
}

.banner-mask.banner-hover-zoom:hover .wrapper-content-banner, .banner-mask.banner-hover-zoom-reverse:hover .wrapper-content-banner {
	background-color: rgba(0, 0, 0, .6);
}

.banner-mask.banner-hover-zoom.color-scheme-dark:hover .wrapper-content-banner, .banner-mask.banner-hover-zoom-reverse.color-scheme-dark:hover .wrapper-content-banner {
	background-color: rgba(255, 255, 255, .6);
}

.banner-shadow {
	box-shadow: 0 10px 20px -9px rgba(0, 0, 0, .5);
}

.banner-background .wrapper-content-banner, .banner-border .wrapper-content-banner {
	top: 20px;
	right: 20px;
	bottom: 20px;
	left: 20px;
	overflow: hidden;
}

.banner-background .wrapper-content-banner {
	background-color: rgba(0, 0, 0, .8);
}

.banner-background.color-scheme-dark .wrapper-content-banner {
	background-color: rgba(255, 255, 255, .8);
}

.banner-content-background .wrapper-content-banner {
	width: 100%;
	background-color: rgba(0, 0, 0, .8);
	backface-visibility: hidden;
	perspective: 800px;
}

.banner-content-background .wrapper-content-banner.wd-items-top {
	bottom: auto;
}

.banner-content-background .wrapper-content-banner.wd-items-middle {
	top: 50%;
	bottom: auto;
	transform: translate3d(0, -50%, 0);
}

.banner-content-background .wrapper-content-banner.wd-items-bottom {
	top: auto;
}

.banner-content-background .wrapper-content-banner.wd-justify-left {
	right: auto;
}

.banner-content-background .wrapper-content-banner.wd-justify-center {
	right: auto;
	left: 50%;
	transform: translate3d(-50%, 0, 0);
}

.banner-content-background .wrapper-content-banner.wd-justify-center.wd-items-middle {
	transform: translate3d(-50%, -50%, 0);
}

.banner-content-background .wrapper-content-banner.wd-justify-right {
	left: auto;
}

.banner-content-background.color-scheme-dark .wrapper-content-banner {
	background-color: rgba(255, 255, 255, .8);
}

.banner-border .wrapper-content-banner {
	border: 5px solid rgba(255, 255, 255, .3);
}

.banner-border.color-scheme-dark .wrapper-content-banner {
	border-color: rgba(0, 0, 0, .1);
}

@media (min-width: 1025px) {
	.banner-btn-position-hover .content-banner {
		transition: transform .25s ease;
	}
	
	.banner-btn-position-hover .banner-inner p:first-child:empty ~ p:last-child {
		margin-top: -10px;
		margin-bottom: 0;
	}
	
	.banner-btn-position-hover .banner-btn-wrapper {
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		opacity: 0;
		transition: opacity .25s ease, transform .25s ease;
		transform: translateY(15px);
	}
	
	.banner-btn-position-hover:hover .content-banner {
		transition: transform .3s ease;
	}
	
	.banner-btn-position-hover:hover .banner-btn-wrapper {
		opacity: 1;
		transition: opacity .4s ease, transform .4s ease;
		transform: translateY(0);
	}
	
	.banner-btn-position-hover.banner-btn-size-extra-small:hover .wrapper-content-banner.wd-items-middle>div {
		transform: translateY(-21px);
	}
	
	.banner-btn-position-hover.banner-btn-size-extra-small:hover .wrapper-content-banner.wd-items-bottom>div {
		transform: translateY(-43px);
	}
	
	.banner-btn-position-hover.banner-btn-size-small:hover .wrapper-content-banner.wd-items-middle>div {
		transform: translateY(-25px);
	}
	
	.banner-btn-position-hover.banner-btn-size-small:hover .wrapper-content-banner.wd-items-bottom>div {
		transform: translateY(-51px);
	}
	
	.banner-btn-position-hover.banner-btn-size-default:hover .wrapper-content-banner.wd-items-middle>div {
		transform: translateY(-28px);
	}
	
	.banner-btn-position-hover.banner-btn-size-default:hover .wrapper-content-banner.wd-items-bottom>div {
		transform: translateY(-57px);
	}
	
	.banner-btn-position-hover.banner-btn-size-large:hover .wrapper-content-banner.wd-items-middle>div {
		transform: translateY(-31px);
	}
	
	.banner-btn-position-hover.banner-btn-size-large:hover .wrapper-content-banner.wd-items-bottom>div {
		transform: translateY(-63px);
	}
	
	.banner-btn-position-hover.banner-btn-size-extra-large:hover .wrapper-content-banner.wd-items-middle>div {
		transform: translateY(-35px);
	}
	
	.banner-btn-position-hover.banner-btn-size-extra-large:hover .wrapper-content-banner.wd-items-bottom>div {
		transform: translateY(-71px);
	}
	
	.banner-btn-position-hover.banner-btn-style-link:hover .wrapper-content-banner.wd-items-middle>div {
		transform: translateY(-19px);
	}
	
	.banner-btn-position-hover.banner-btn-style-link:hover .wrapper-content-banner.wd-items-bottom>div {
		transform: translateY(-39px);
	}
}

@media (max-width: 1024px) {
	.banner-subtitle.wd-fontsize-s, .banner-subtitle.wd-fontsize-m {
		font-size: 14px;
	}
	
	.banner-title.wd-fontsize-xl, .banner-title.wd-font-size-xxl {
		font-size: 22px;
	}
}

@media (max-width: 768px) {
	.banner-btn-position-hover .banner-btn-wrapper {
		display: none;
	}
	
	.banner-btn-wrapper .btn-size-default, .banner-btn-wrapper .btn-size-large, .banner-btn-wrapper .btn-size-extra-large {
		padding: 10px 14px;
		font-size: 12px;
		line-height: 16px;
	}
	
	.banner-btn-wrapper .btn-style-link {
		padding: 0;
	}
}

@media (max-width: 767px) {
	.promo-banner .banner-subtitle {
		font-size: 3vw;
	}
	
	.promo-banner .banner-title {
		font-size: 5vw;
	}
}
