/* Default css */
section.banner_module.banner-type4 {
    padding: 0;
}
section.banner_module.banner-type4 .media{
	border-radius: 0;
}
section.banner_module.banner-type4 .banner_1_left{
	padding: var(--default_spacing) 0;
}
.banner_1_left{
	display: flex;
}
section.banner_module.reverse .banner_1{
    flex-direction: row-reverse;
}
.banner_module p.h3 {
    margin: 2rem 0 4rem 0;
}
.banner_module video {
	max-width: unset;
}
.banner_module .container {
    position: relative;
	/* height: 100%; */
    display: flex;
    /* align-items: center; */
}
/* .banner_2 .container, .banner_1 h1, .banner_1 p {
		max-width: 57.5rem;
} */
 .banner_1_right .swiper-wrapper{
	padding-bottom: 0;
 }
.banner_2 * { color: var(--clr2);}
.banner_module h1, .banner_module h2, .banner_module p.label {
    margin-top: 0;
}
.banner1_inner {
    position: relative;
}
.banner_1.hasmedia {
    display: flex;
    flex-wrap: wrap;
}
/* .banner_module .hasmedia .banner_1_right,
.banner_module .hasmedia .banner_1_left {
	width: 50%;
} */
.banner_module.center .banner1_inner {
	z-index: 2;
}
/* .banner_module .hasmedia .banner_1_right,
.banner_module .hasmedia .banner_1_left {
	width: 50%;
} */
.banner_module.center .hasmedia .banner_1_right,
.banner_module.center .hasmedia .banner_1_left {
	width: 100%;
}
.banner_module .container {
	padding: 0 var(--default_spacing);
	flex-direction: column;
	justify-content: center;
}
.container.subtitle-text {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 3.3rem;
}
/* .banner_module.center .banner_1_right .media-container figure,
.banner_module.center .hasmedia .banner_1_left,
.banner_module.center .media-container figure {
	height: auto;
} */
.banner_module.center .banner_2 .container, .banner_module.center .banner_1 h1, .banner_1 p {
	max-width: 100%;
	width: 100%;
}
/* .banner_module.center .banner_1 h1 {
	margin-bottom: 2.7rem;	
} */
.banner1_inner p{
	margin-bottom: 2.7rem;
}
.banner_module.center .banner_1 p {
	margin-top: 0;	
}
/* .banner_module.center .hasmedia .banner_1_right {
	position: absolute;
} */
/* .banner_module.center .banner_1_right .media-container figure img, .banner_module.center .banner_1_right .media-container figure video {
	height: 100vh !important;
    object-fit: cover !important;
} */
.banner_1_right .media-container figure {
    margin: 0;
    position: relative;
    height: 50rem;
    width: 100%;
}
.banner_1_right .media-container figure img, .banner_1_right .media-container figure video {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
    object-fit: cover;
    object-position: center;
}
/* Banner type 2*/
/* .banner-type2 .banner_1 h1{
	max-width: unset;
}
.banner-type2 .banner1_inner {
    z-index: 2;
}
.banner-type2 .banner1_inner h1{
    margin-right: -100%;
}
.banner-type2 .banner-text{
	margin-top: 3rem;
}
section.banner_module.banner-type2{
	padding: 10rem 0;
}
.banner_module.banner-type2 .banner_1_right .media-container figure{
	height: 50rem;
}
.banner_module.banner-type2 .banner_1_left{
	display: flex;
    align-items: center;
}
.banner_module.banner-type2 .container {
    padding: 5rem 5rem 5rem 0;
}
.banner_module.banner-type2 .banner_1,
.banner_module.banner-type3 .banner_1 {
    position: relative;
    max-width: 130rem;
    margin: 0 auto;
}
.banner-type2.reverse .banner1_inner h1 {
    margin-left: -100%;
    text-align: right;
	margin-right: 0;
}
.banner-type2.reverse .banner-text p {
    text-align: right;
    margin-left: auto;
}
/* Banner type 3 */
/* .banner-type3 .banner_1_right {
	margin-top: 10rem;
	position: relative;
}
.banner-type3 .container {
    padding: 9rem;
    padding-right: 0;
}
.banner-type3 .banner_1_right .media-container figure {
    height: 60rem;
}
.banner-type3 .media-container{
	overflow: unset;
}
.banner-type3 .banner1_inner {
    margin-top: -10rem;
}  */

.banner-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1.6rem;
}

.banner-type4 .banner_1_right .media,
.banner-type4 .banner_1_right .media figure{
	height: 100%;
	width: 100%;
}
.banner-type4 .banner_1_right {
    height: 35.6945vw;
    width: calc(100% - 16.3rem) !important;
    overflow: hidden;
}

.banner-type4 .banner_1_left {
    position: absolute;
    bottom: 0;
    height: 35.6945vw;
    z-index: 3;
    width: 100%;
}

.banner-type4 .banner_1_left svg{
	position: absolute;
	bottom: 5.1rem;
	z-index: 2;
	left: calc(50% - 51.65rem);
	transform: translateX(-50%);
	height: 7.3rem;
	width: auto;
}

.subtitle-text p{
	grid-column: 3 / 4;
}

/* Banner type 1 */

.banner-type1 .banner_1{
	display: grid;
	grid-template-columns: calc(100% - 50rem) 50rem;
}

.banner-type1 .banner_1.hasmedia .banner_1_left{
	padding-right: var(--default_spacing);
}

/* Banner type 2 */

.banner-type2 .banner_1{
	display: grid;
	grid-template-columns: 50rem calc(100% - 50rem);
}

.banner-type2 .banner_1.hasmedia .banner_1_left{
	padding-left: var(--default_spacing);
	order: 2;
}

/* Banner type 3 */

.banner-type3{
	padding-left: var(--default_spacing);
	padding-right: var(--default_spacing);
	height: 100vh;
}

.banner-type3 .banner_1.hasmedia {
    padding: var(--small_spacing);
    width: 100%;
    height: 100%;
	position: relative;
}
.banner-type3 .banner_1_left {
    border-radius: var(--radius_media);
    background: #fff;
    width: 48rem!important;
	height: auto!important;
    padding: var(--tiny_spacing);
    z-index: 2;
}

.banner-type3 .banner_1_right {
    height: 100%;
    width: 100%;
    position: absolute;
	top: 0;
	left: 0;
}

.banner-type3 .banner_1_right .media-container figure{
	height: 100%;
}

.banner-type3 .banner_1_right .media{
	width: 100%;
    height: 100%;
}

.banner-type3 .banner1_inner > h4{
	margin-top: 0;
	padding-bottom: var(--tiny_spacing);
}

.banner-type3 .banner1_inner p{
	margin: 0;
}

.banner-type3 .banner1_inner p + .banner-buttons{
	margin-top: 1.6rem;
}

@media screen and (max-width: 1000px) {
	.banner_module .hasmedia .banner_1_right,
	.banner_module .hasmedia .banner_1_left {
		width: 100%;
	}
	section.banner_module.reverse .banner_1,
	.banner_1.hasmedia {
		flex-direction: column-reverse;
	}
	.banner-type3 .banner1_inner,
	.banner_module .hasmedia .banner_1_right {
		margin-top: 0;
	}
	.banner-type2 .banner1_inner h1 {
		margin-right: 0;
		width: 90%;
		margin-top: -25%;
	}
	.banner_1_right .media-container figure {
		height: auto;
	}
	.banner-type3 .banner_1_right .media-container figure,
	.banner_module.banner-type2 .banner_1_right .media-container figure{
		height: auto;
	}
	.banner-type3 .container {
		padding-left: 1.6rem;
		padding-right: 1.6rem;
	}
	/* .banner_1_right .media-container figure img, .banner_1_right .media-container figure video {
		position: unset;
		width: 100%;
		height: unset;
		z-index: 1;
		object-fit: unset;
		object-position: unset;
	} */
	.banner-type2 .banner_1 {
		grid-template-columns: 34.3rem calc(100% - 34.3rem);
	}
	.banner-type1 .banner_1 {
		grid-template-columns: calc(100% - 34.3rem) 34.3rem;
	}
	.banner_module .container {
		padding: 0 1.6rem;
	}
	.banner-type3 {
		padding-left: 1.6rem;
		padding-right: 1.6rem;
	}
	.banner-type3 .banner_1.hasmedia{
		padding: 1.6rem;
	}
	.banner-type4 .banner_1_right {
        height: 155vw;
        max-height: 60.4rem;
        width: 100% !important;
    }
	.container.subtitle-text {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        max-width: 28.3rem;
        order: 1;
        margin: 0 0 0 auto;
    }
	.banner-type4 .banner_1_left {
		position: absolute;
		bottom: 0;
        height: 155vw;
		max-height: 60.6rem;
	}
	.banner-type4 .banner_1_left svg {
		position: absolute;
		bottom: 4.8rem;
		z-index: 2;
		left: unset;
		right: 5.2rem;
		transform: translateX(0%);
		height: 9.8rem;
		width: auto;
	}
}

@media screen and (max-width: 776px) {
    .banner-type1 .banner_1.hasmedia .banner_1_left, .banner-type2 .banner_1 .banner_1_left {
        order: 2;
        padding: var(--default_spacing) 0 0 0!important;
    }
    .banner-type1 .banner_1,
	.banner-type2 .banner_1 {
        grid-template-columns: 1fr;
    }
	section.banner_module.banner-type3{
		padding: 2.4rem 1.6rem;
	}
	/* section.banner_module{
		padding: 1.6rem 0;
	} */
	.banner-type3 .banner_1_left{
		width: 100%!important;
		max-width: 48rem;
	}
	.banner-type3 .banner1_inner > h4 {
		padding-bottom: 0.8rem;
	}
}