h1,
.h1 {
	font-size: clamp(47px, 5vw, 64px);
	font-weight: 500;
	margin: 0;
	text-wrap: balance;
	line-height: 102.128%;
	letter-spacing: -.47px
}

@media (min-width: 576px) {

	h1,
	.h1 {
		line-height: 100%;
		letter-spacing: -.64px
	}
}

h2,
.h2 {
	font-size: clamp(37.999976px, 5vw, 56px);
	font-weight: 500;
	margin: 0;
	text-wrap: balance;
	line-height: 105.263%;
	letter-spacing: -.38px
}

@media (min-width: 576px) {

	h2,
	.h2 {
		line-height: 114.286%;
		letter-spacing: -.56px
	}
}

h3,
.h3 {
	font-size: clamp(32px, 5vw, 40px);
	font-weight: 500;
	margin: 0;
	text-wrap: balance;
	line-height: 100%;
	letter-spacing: -.32px
}

@media (min-width: 576px) {

	h3,
	.h3 {
		line-height: 100%;
		letter-spacing: -.4px
	}
}

h4,
.h4 {
	font-size: clamp(24px, 5vw, 32px);
	font-weight: 500;
	margin: 0;
	text-wrap: balance;
	line-height: 100%;
	letter-spacing: -.24px
}

@media (min-width: 576px) {

	h4,
	.h4 {
		line-height: 100%;
		letter-spacing: -.32px
	}
}

h5,
.h5 {
	font-size: clamp(20.99999px, 5vw, 22px);
	font-weight: 500;
	margin: 0;
	text-wrap: balance;
	line-height: 114.286%;
	letter-spacing: -.84px
}

@media (min-width: 576px) {

	h5,
	.h5 {
		line-height: 127.273%;
		letter-spacing: -.22px
	}
}

h6,
.h6 {
	font-size: clamp(20.99999px, 5vw, 22px);
	font-weight: 500;
	margin: 0;
	text-wrap: balance;
	line-height: 114.286%;
	letter-spacing: -.84px
}

@media (min-width: 576px) {

	h6,
	.h6 {
		line-height: 127.273%;
		letter-spacing: -.22px
	}
}

.m-0 {
	margin: 0 !important
}

.p-0 {
	padding: 0 !important
}

.my-0 {
	margin-top: 0 !important;
	margin-bottom: 0 !important
}

.py-0 {
	padding-top: 0 !important;
	padding-bottom: 0 !important
}

.mt-0 {
	margin-top: 0 !important
}

.mb-0 {
	margin-bottom: 0 !important
}

.pt-0 {
	padding-top: 0 !important
}

.pb-0 {
	padding-bottom: 0 !important
}

@media (min-width: 768px) {
	.m-md-0 {
		margin: 0 !important
	}

	.p-md-0 {
		padding: 0 !important
	}

	.my-md-0 {
		margin-top: 0 !important;
		margin-bottom: 0 !important
	}

	.py-md-0 {
		padding-top: 0 !important;
		padding-bottom: 0 !important
	}

	.mt-md-0 {
		margin-top: 0 !important
	}

	.mb-md-0 {
		margin-bottom: 0 !important
	}

	.pt-md-0 {
		padding-top: 0 !important
	}

	.pb-md-0 {
		padding-bottom: 0 !important
	}
}

.m-1 {
	margin: .25rem !important
}

.p-1 {
	padding: .25rem !important
}

.my-1 {
	margin-top: .25rem !important;
	margin-bottom: .25rem !important
}

.py-1 {
	padding-top: .25rem !important;
	padding-bottom: .25rem !important
}

.mt-1 {
	margin-top: .25rem !important
}

.mb-1 {
	margin-bottom: .25rem !important
}

.pt-1 {
	padding-top: .25rem !important
}

.pb-1 {
	padding-bottom: .25rem !important
}

@media (min-width: 768px) {
	.m-md-1 {
		margin: .25rem !important
	}

	.p-md-1 {
		padding: .25rem !important
	}

	.my-md-1 {
		margin-top: .25rem !important;
		margin-bottom: .25rem !important
	}

	.py-md-1 {
		padding-top: .25rem !important;
		padding-bottom: .25rem !important
	}

	.mt-md-1 {
		margin-top: .25rem !important
	}

	.mb-md-1 {
		margin-bottom: .25rem !important
	}

	.pt-md-1 {
		padding-top: .25rem !important
	}

	.pb-md-1 {
		padding-bottom: .25rem !important
	}
}

.m-2 {
	margin: .5rem !important
}

.p-2 {
	padding: .5rem !important
}

.my-2 {
	margin-top: .5rem !important;
	margin-bottom: .5rem !important
}

.py-2 {
	padding-top: .5rem !important;
	padding-bottom: .5rem !important
}

.mt-2 {
	margin-top: .5rem !important
}

.mb-2 {
	margin-bottom: .5rem !important
}

.pt-2 {
	padding-top: .5rem !important
}

.pb-2 {
	padding-bottom: .5rem !important
}

@media (min-width: 768px) {
	.m-md-2 {
		margin: .5rem !important
	}

	.p-md-2 {
		padding: .5rem !important
	}

	.my-md-2 {
		margin-top: .5rem !important;
		margin-bottom: .5rem !important
	}

	.py-md-2 {
		padding-top: .5rem !important;
		padding-bottom: .5rem !important
	}

	.mt-md-2 {
		margin-top: .5rem !important
	}

	.mb-md-2 {
		margin-bottom: .5rem !important
	}

	.pt-md-2 {
		padding-top: .5rem !important
	}

	.pb-md-2 {
		padding-bottom: .5rem !important
	}
}

.m-3 {
	margin: .75rem !important
}

.p-3 {
	padding: .75rem !important
}

.my-3 {
	margin-top: .75rem !important;
	margin-bottom: .75rem !important
}

.py-3 {
	padding-top: .75rem !important;
	padding-bottom: .75rem !important
}

.mt-3 {
	margin-top: .75rem !important
}

.mb-3 {
	margin-bottom: .75rem !important
}

.pt-3 {
	padding-top: .75rem !important
}

.pb-3 {
	padding-bottom: .75rem !important
}

@media (min-width: 768px) {
	.m-md-3 {
		margin: .75rem !important
	}

	.p-md-3 {
		padding: .75rem !important
	}

	.my-md-3 {
		margin-top: .75rem !important;
		margin-bottom: .75rem !important
	}

	.py-md-3 {
		padding-top: .75rem !important;
		padding-bottom: .75rem !important
	}

	.mt-md-3 {
		margin-top: .75rem !important
	}

	.mb-md-3 {
		margin-bottom: .75rem !important
	}

	.pt-md-3 {
		padding-top: .75rem !important
	}

	.pb-md-3 {
		padding-bottom: .75rem !important
	}
}

.m-4 {
	margin: 1rem !important
}

.p-4 {
	padding: 1rem !important
}

.my-4 {
	margin-top: 1rem !important;
	margin-bottom: 1rem !important
}

.py-4 {
	padding-top: 1rem !important;
	padding-bottom: 1rem !important
}

.mt-4 {
	margin-top: 1rem !important
}

.mb-4 {
	margin-bottom: 1rem !important
}

.pt-4 {
	padding-top: 1rem !important
}

.pb-4 {
	padding-bottom: 1rem !important
}

@media (min-width: 768px) {
	.m-md-4 {
		margin: 1rem !important
	}

	.p-md-4 {
		padding: 1rem !important
	}

	.my-md-4 {
		margin-top: 1rem !important;
		margin-bottom: 1rem !important
	}

	.py-md-4 {
		padding-top: 1rem !important;
		padding-bottom: 1rem !important
	}

	.mt-md-4 {
		margin-top: 1rem !important
	}

	.mb-md-4 {
		margin-bottom: 1rem !important
	}

	.pt-md-4 {
		padding-top: 1rem !important
	}

	.pb-md-4 {
		padding-bottom: 1rem !important
	}
}

.m-5 {
	margin: 1.25rem !important
}

.p-5 {
	padding: 1.25rem !important
}

.my-5 {
	margin-top: 1.25rem !important;
	margin-bottom: 1.25rem !important
}

.py-5 {
	padding-top: 1.25rem !important;
	padding-bottom: 1.25rem !important
}

.mt-5 {
	margin-top: 1.25rem !important
}

.mb-5 {
	margin-bottom: 1.25rem !important
}

.pt-5 {
	padding-top: 1.25rem !important
}

.pb-5 {
	padding-bottom: 1.25rem !important
}

@media (min-width: 768px) {
	.m-md-5 {
		margin: 1.25rem !important
	}

	.p-md-5 {
		padding: 1.25rem !important
	}

	.my-md-5 {
		margin-top: 1.25rem !important;
		margin-bottom: 1.25rem !important
	}

	.py-md-5 {
		padding-top: 1.25rem !important;
		padding-bottom: 1.25rem !important
	}

	.mt-md-5 {
		margin-top: 1.25rem !important
	}

	.mb-md-5 {
		margin-bottom: 1.25rem !important
	}

	.pt-md-5 {
		padding-top: 1.25rem !important
	}

	.pb-md-5 {
		padding-bottom: 1.25rem !important
	}
}

.m-6 {
	margin: 1.5rem !important
}

.p-6 {
	padding: 1.5rem !important
}

.my-6 {
	margin-top: 1.5rem !important;
	margin-bottom: 1.5rem !important
}

.py-6 {
	padding-top: 1.5rem !important;
	padding-bottom: 1.5rem !important
}

.mt-6 {
	margin-top: 1.5rem !important
}

.mb-6 {
	margin-bottom: 1.5rem !important
}

.pt-6 {
	padding-top: 1.5rem !important
}

.pb-6 {
	padding-bottom: 1.5rem !important
}

@media (min-width: 768px) {
	.m-md-6 {
		margin: 1.5rem !important
	}

	.p-md-6 {
		padding: 1.5rem !important
	}

	.my-md-6 {
		margin-top: 1.5rem !important;
		margin-bottom: 1.5rem !important
	}

	.py-md-6 {
		padding-top: 1.5rem !important;
		padding-bottom: 1.5rem !important
	}

	.mt-md-6 {
		margin-top: 1.5rem !important
	}

	.mb-md-6 {
		margin-bottom: 1.5rem !important
	}

	.pt-md-6 {
		padding-top: 1.5rem !important
	}

	.pb-md-6 {
		padding-bottom: 1.5rem !important
	}
}

.m-7 {
	margin: 2rem !important
}

.p-7 {
	padding: 2rem !important
}

.my-7 {
	margin-top: 2rem !important;
	margin-bottom: 2rem !important
}

.py-7 {
	padding-top: 2rem !important;
	padding-bottom: 2rem !important
}

.mt-7 {
	margin-top: 2rem !important
}

.mb-7 {
	margin-bottom: 2rem !important
}

.pt-7 {
	padding-top: 2rem !important
}

.pb-7 {
	padding-bottom: 2rem !important
}

@media (min-width: 768px) {
	.m-md-7 {
		margin: 2rem !important
	}

	.p-md-7 {
		padding: 2rem !important
	}

	.my-md-7 {
		margin-top: 2rem !important;
		margin-bottom: 2rem !important
	}

	.py-md-7 {
		padding-top: 2rem !important;
		padding-bottom: 2rem !important
	}

	.mt-md-7 {
		margin-top: 2rem !important
	}

	.mb-md-7 {
		margin-bottom: 2rem !important
	}

	.pt-md-7 {
		padding-top: 2rem !important
	}

	.pb-md-7 {
		padding-bottom: 2rem !important
	}
}

.m-8 {
	margin: 3rem !important
}

.p-8 {
	padding: 3rem !important
}

.my-8 {
	margin-top: 3rem !important;
	margin-bottom: 3rem !important
}

.py-8 {
	padding-top: 3rem !important;
	padding-bottom: 3rem !important
}

.mt-8 {
	margin-top: 3rem !important
}

.mb-8 {
	margin-bottom: 3rem !important
}

.pt-8 {
	padding-top: 3rem !important
}

.pb-8 {
	padding-bottom: 3rem !important
}

@media (min-width: 768px) {
	.m-md-8 {
		margin: 3rem !important
	}

	.p-md-8 {
		padding: 3rem !important
	}

	.my-md-8 {
		margin-top: 3rem !important;
		margin-bottom: 3rem !important
	}

	.py-md-8 {
		padding-top: 3rem !important;
		padding-bottom: 3rem !important
	}

	.mt-md-8 {
		margin-top: 3rem !important
	}

	.mb-md-8 {
		margin-bottom: 3rem !important
	}

	.pt-md-8 {
		padding-top: 3rem !important
	}

	.pb-md-8 {
		padding-bottom: 3rem !important
	}
}

.m-9 {
	margin: 4rem !important
}

.p-9 {
	padding: 4rem !important
}

.my-9 {
	margin-top: 4rem !important;
	margin-bottom: 4rem !important
}

.py-9 {
	padding-top: 4rem !important;
	padding-bottom: 4rem !important
}

.mt-9 {
	margin-top: 4rem !important
}

.mb-9 {
	margin-bottom: 4rem !important
}

.pt-9 {
	padding-top: 4rem !important
}

.pb-9 {
	padding-bottom: 4rem !important
}

@media (min-width: 768px) {
	.m-md-9 {
		margin: 4rem !important
	}

	.p-md-9 {
		padding: 4rem !important
	}

	.my-md-9 {
		margin-top: 4rem !important;
		margin-bottom: 4rem !important
	}

	.py-md-9 {
		padding-top: 4rem !important;
		padding-bottom: 4rem !important
	}

	.mt-md-9 {
		margin-top: 4rem !important
	}

	.mb-md-9 {
		margin-bottom: 4rem !important
	}

	.pt-md-9 {
		padding-top: 4rem !important
	}

	.pb-md-9 {
		padding-bottom: 4rem !important
	}
}

.m-10 {
	margin: 5rem !important
}

.p-10 {
	padding: 5rem !important
}

.my-10 {
	margin-top: 5rem !important;
	margin-bottom: 5rem !important
}

.py-10 {
	padding-top: 5rem !important;
	padding-bottom: 5rem !important
}

.mt-10 {
	margin-top: 5rem !important
}

.mb-10 {
	margin-bottom: 5rem !important
}

.pt-10 {
	padding-top: 5rem !important
}

.pb-10 {
	padding-bottom: 5rem !important
}

@media (min-width: 768px) {
	.m-md-10 {
		margin: 5rem !important
	}

	.p-md-10 {
		padding: 5rem !important
	}

	.my-md-10 {
		margin-top: 5rem !important;
		margin-bottom: 5rem !important
	}

	.py-md-10 {
		padding-top: 5rem !important;
		padding-bottom: 5rem !important
	}

	.mt-md-10 {
		margin-top: 5rem !important
	}

	.mb-md-10 {
		margin-bottom: 5rem !important
	}

	.pt-md-10 {
		padding-top: 5rem !important
	}

	.pb-md-10 {
		padding-bottom: 5rem !important
	}
}

.flex-column {
	flex-direction: column;
}

.flex-align-start {
	align-items: start !important;
}



.section-bg-sticky__title {
	position: sticky;
	top: 4rem;
	left: 0;
}

@media (min-width: 576px) {

	.fs-xl,
	.fs-xl-bold {
		line-height: 116.667%;
		letter-spacing: normal;
	}

	.fs-xl,
	.fs-xl-bold {
		line-height: 133.333%;
		letter-spacing: -.18px;
	}

	.fs-xl-bold {
		font-size: clamp(18px, 2.75vw, 24px);
		font-weight: 600;
	}


	.mb-200 {
		margin-bottom: 200px;
	}

	.mb-inv-200 {
		margin-bottom: -200px;
	}

}