@font-face {
	font-family: 'Beaver Punch';
	src: url('../../../../fonts/BeaverPunch/BeaverPunch.eot');
	src: url('../../../../fonts/BeaverPunch/BeaverPunch.eot?#iefix') format('embedded-opentype'),
		url('../../../../fonts/BeaverPunch/BeaverPunch.woff2') format('woff2'),
		url('../../../../fonts/BeaverPunch/BeaverPunch.woff') format('woff'),
		url('../../../../fonts/BeaverPunch/BeaverPunch.ttf') format('truetype'),
		url('../../../../fonts/BeaverPunch/BeaverPunch.svg#BeaverPunch') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

.beaver-punch {
	font-family: 'Beaver Punch';
}

#sep-banner {
	font-size: 16px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin: 1em auto;
	max-width: 1315px;
	width: 100%;
}

#sep-banner:not(.lazy-bg) {
	background-image: url(../images/banner/back.jpg);
	background-image: -webkit-image-set(url("../images/banner/back.jpg") 1x,
			url("../images/banner/back@2x.jpg") 2x);
}

/* Layout / containers */
#sep-banner .banner-left {
	bottom: 0;
}

/* Images */
#sep-banner .left {
	left: -36em;
	z-index: 2;
}

/* CTA */
#sep-banner .text-bottom {
	font-size: 35px;
	line-height: 40px;
	color: #ffffff;
	text-align: center;
}

#sep-banner .main {
	bottom: 0;
	z-index: 1;
}

#sep-banner .banner-inner {
	gap: 2em;
	padding: 0;
}

#sep-banner .banner-main {
	margin-left: 3em;
}

#sep-banner .button {
	font-size: 1.15em;
	width: 10.5em;
	height: 2.2em;
	border-radius: 1.1em;
	padding: 0;
	margin-top: 11px;

	background-color: #b2071c;
}

#sep-banner p {
	margin-bottom: 0;
	padding: 0;
}

/* legacy Safari without text-box support */
@supports (background: -webkit-named-image(i)) and (not (text-box: trim-both cap alphabetic)) {
	#sep-banner .button {
		padding-top: 3px;
	}
}

/* font-metric independent CTA label centering (Safari 18.2+, Chrome 133+) */
@supports (text-box: trim-both cap alphabetic) {
	#sep-banner .button>span {
		display: block;
		text-box: trim-both cap alphabetic;
	}
}

@media screen and (max-width: 1350px) {
	#sep-banner {
		max-width: 97%;
	}

	#sep-banner .left {
		display: none;
	}
}

@media screen and (max-width: 1200px) {
	#sep-banner {
		overflow: hidden;
	}

	#sep-banner .text-bottom {
		text-wrap-mode: nowrap;
	}

	#sep-banner .banner-main {
		margin-left: 6em;
	}
}

@media screen and (max-width: 991px) {
	#sep-banner .banner-inner {
		padding-top: 20px;
		padding-bottom: 20px;
		flex-direction: column;
		gap: 0em;
	}

	#sep-banner .banner-main {
		margin-left: 0;
	}

}

@media screen and (max-width: 767px) {
	#sep-banner {
		max-width: 93%;
	}

	#sep-banner:not(.lazy-bg) {
		background-image: url(../images/banner/back-m.jpg);
		background-image: -webkit-image-set(url("../images/banner/back-m.jpg") 1x,
				url("../images/banner/back-m@2x.jpg") 2x);
	}

	#sep-banner .banner-inner {
		padding-top: 0;
		width: 100%;
	}

	#sep-banner .banner-cta,
	#sep-banner .banner-main {
		width: 100%;
	}

	#sep-banner .banner-main {
		margin: 0;
	}
}

@media screen and (max-width: 567px) {

	body,
	html {
		overflow-x: hidden;
	}

	#sep-banner {
		overflow: visible;
	}

	#sep-banner .main {
		max-width: 120%;
		width: 105%;
		left: 50%;
		transform: translateX(-50%);
	}

	#sep-banner .text-bottom {
		font-size: 32.5px;
	}

	#sep-banner .banner-inner {
		padding-top: 69%;
		padding-bottom: 35px;
	}

	#sep-banner .button {
		font-size: 1.1em;
	}

	#sep-banner .banner-cta {
		margin-top: -2%;
	}
}