/**
 * BASIC setup
 *
 * @format
 */
html {
	scroll-behavior: smooth;
}
body {
	overflow: visible;
}

.container,
.container-fluid {
	padding: 0;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	z-index: 999;

	&.bg-White {
		background-color: #fff;
	}
	&.bg-Gray {
		background-color: #ececec;
	}
	&.bg-Green {
		background-color: #0d8a52;
		h1,
		h2,
		h3,
		h4,
		h5,
		h6,
		ul,
		li,
		ol,
		p {
			color: #fff;
		}
	}
	&.bg-Red {
		background-color: #d32e35;
		h1,
		h2,
		h3,
		h4,
		h5,
		h6,
		ul,
		li,
		ol,
		p {
			color: #fff;
		}
	}
	&.bg-Dark,
	&.bg-Dark-Gray {
		background-color: #4b4b4b;
		color: #fff;
		h1,
		h2,
		h3,
		h4,
		h5,
		h6,
		ul,
		li,
		ol,
		p {
			color: #fff;
		}
	}

	.row {
		max-width: 1120px;
		margin: 0 auto;
		padding: 3rem 1.5rem;
		position: relative;
		z-index: 999;

		@include media-breakpoint-down(lg) {
			padding: 2rem 1rem;
		}
		@include media-breakpoint-down(sm) {
			padding: 1rem 0.5rem;
		}
	}
}
p {
	line-height: 1.375;
	&:last-child {
		margin-bottom: 0;
	}
}
ul {
	li {
		padding: 0;
		line-height: 1.2;
		margin-bottom: 0.675rem;
		&:last-child {
			margin-bottom: 0;
		}
	}
}

.video-autoplay-wrapper {
	position: relative;
	height: 100%;
	width: 100%;
	overflow: hidden;
	z-index: 5;
	background-color: #000;
	transition: opacity 1s linear;
	pointer-events: none !important;

	iframe {
		position: absolute;
		width: 177.77777778vh;
		height: 56.25vw;
		min-height: calc(100% + 112px);
		min-width: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		max-width: 999999999%;
	}
}

.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;

	iframe,
	object,
	embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}
.single-lp .gform_button {
	padding: 0.663rem 2rem !important;
	border-radius: 0 !important;
	text-transform: uppercase;
	font-size: 1rem !important;
	letter-spacing: 1px !important;
	margin: 0 auto !important;
	display: block !important;
	width: fit-content !important;
	font-weight: 700 !important;
	transition: 0.2s ease-in-out all !important;
	background-color: #d32e35 !important;
	color: #fff !important;
	border: 2px solid #d32e35 !important;
	&:hover {
		background-color: #722529 !important;
		border-color: #722529 !important;
		color: #fff !important;
		text-decoration: none;
	}
}

.mega-btn > a,
.btn {
	padding: 0.663rem 2rem;
	border-radius: 0 !important;
	text-transform: uppercase;
	font-size: 1rem;
	letter-spacing: 1px;
	margin: 0;
	width: fit-content;
	font-weight: 700;
	transition: 0.2s ease-in-out all;

	&.mega-btn-primary > a,
	&.btn-primary {
		color: #d32e35;
		background-color: #fff;
		border: 2px solid #fff;
		&:hover {
			background-color: #722529;
			border-color: #722529;
			color: #fff;
			text-decoration: none;
		}
	}
	&.mega-btn-secondary > a,
	&.btn-secondary {
		background-color: #d32e35;
		color: #fff;
		border: 2px solid #fff;
		&:hover {
			background-color: #722529;
			border-color: #722529;
			color: #fff;
			text-decoration: none;
		}
	}

	&.btn-outline {
		color: #d32e35;
		background-color: transparent;
		border: 2px solid #d32e35;
		&:hover {
			background-color: #722529;
			border-color: #722529;
			color: #0d8a52;
			text-decoration: none;
		}
	}

	&.btn-text {
		text-transform: uppercase;
		color: #d32e35;
		padding: 0;
		border: none;
		&:hover {
			color: #d32e35;
			text-decoration: underline;
		}
	}

	i,
	svg {
		margin-left: 4px;
		font-size: 0.5em;
	}
}
h2,
h3,
h4,
h5,
h6 {
	color: #000000;
}
h1,
h2,
h3 {
	text-wrap: balance;
}
#header {
	position: sticky;
	top: 0;
	left: 0;
	z-index: 9999;
	background-color: #fff;
	width: 100%;

	.row {
		max-width: 1900px;
		padding-top: 1rem;
		padding-bottom: 1rem;
		@media screen and (max-width: 575px) {
			padding: 0.5rem 0.25rem;
		}
		.col-12 {
			display: flex;
			align-items: center;
			justify-content: space-between;
			flex-flow: row nowrap;
			@media screen and (max-width: 575px) {
				gap: 1.5rem;
			}
			img {
				max-width: 260px;
				max-height: 100px;
				width: 100%;
				object-fit: contain;
				object-position: left center;
			}
			a.btn {
				@media screen and (max-width: 575px) {
					padding: 0.75rem 1.5rem;
					line-height: 1.2;
					max-width: 190px;
				}
			}
		}
	}
}

.heroa {
	position: relative;
	background-color: #fff;
	& > img {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		object-fit: cover;
		object-position: center center;
		z-index: -1;
		opacity: 0.1;
		filter: grayscale(0.75);
	}
	.row {
		justify-content: center;
		gap: 4rem;
		align-items: center;
		max-width: 1400px;
		@media screen and (max-width: 767px) {
			gap: 2rem;
		}
		@media screen and (max-width: 575px) {
			gap: 1rem;
		}

		.text {
			max-width: 600px;
			@media screen and (max-width: 1350px) {
				max-width: calc(50% - 2rem);
			}

			@media screen and (max-width: 980px) {
				max-width: 100%;
			}
			h1,
			h2 {
				text-wrap: balance;
			}
			p {
				margin-bottom: 0;
				font-size: 1.25rem;
				line-height: 1.5;
				font-weight: 600;
			}
		}
		.form {
			max-width: 600px;

			@media screen and (max-width: 1350px) {
				max-width: calc(50% - 2rem);
			}
			@media screen and (max-width: 980px) {
				max-width: 100%;
			}
			#form {
				border: 3px solid #0d8a52;
				background-color: #fff;
				padding: 2rem;
				scroll-margin-top: 110px;
				@media screen and (max-width: 575px) {
					scroll-margin-top: 50px;
					padding-top: 1rem;
				}

				h2 {
					text-align: center;
					color: #d32e35;
				}

				form {
					.gform_fields {
						row-gap: 0.9rem !important;
						column-gap: 0.8rem !important;
						.gfield--type-select,
						.gfield--type-text,
						.gfield--type-name,
						.gfield--type-email,
						.gfield--type-input,
						.gfield--type-textarea,
						.gfield--type-tel,
						.gfield--type-url,
						.gfield--type-number,
						.gfield--type-phone {
							.gfield_label {
								display: none;
							}
						}
						textarea,
						input,
						select {
							border-radius: 0;
							border: 1px solid #8e8e8e;
						}
					}
				}
			}
		}
	}
}

.splitcontent {
	.row {
		flex-flow: row nowrap;
		@media screen and (max-width: 767px) {
			flex-flow: column nowrap;
		}
		.text {
			&.has-video,
			&.has-image {
				align-self: center;
				padding: 0 2rem 0 0;

				@media screen and (max-width: 767px) {
					padding: 0;
					margin-bottom: 2rem;
				}
			}
		}

		.media {
			&.has-video,
			&.has-image {
				@media screen and (max-width: 767px) {
					padding: 0;
				}
				img {
					aspect-ratio: 1/1;
					object-fit: cover;
					object-position: center center;
					width: 100%;
					height: auto;
				}
			}

			&.has-callout {
				@media screen and (max-width: 767px) {
					margin-top: 2rem;
					text-align: center;
				}
			}
		}
	}

	&.order-mediafirst {
		.row {
			flex-flow: row-reverse nowrap;
			@media screen and (max-width: 767px) {
				flex-flow: column nowrap;
			}
			.text {
				&.has-video,
				&.has-image {
					align-self: center;
					padding: 0 0 0 2rem;
					@media screen and (max-width: 767px) {
						padding: 0;
						margin-bottom: 2rem;
					}
				}
			}
		}
	}
}

.checklist {
	.row {
		.col-12 {
			h2 {
				text-align: center;
				& + p {
					text-align: center;
				}

				@media screen and (max-width: 767px) {
					text-align: left;

					& + p {
						text-align: left;
					}
				}
			}

			a.btn {
				margin: 1.5rem auto 0;
				display: block;
			}

			ul.check-list {
				display: flex;
				flex-flow: row wrap;
				justify-content: center;
				gap: 0.675rem 2rem;
				padding: 0;
				margin: 0;
				list-style: none;

				li {
					display: flex;
					flex-flow: row nowrap;
					align-items: baseline;
					width: calc(50% - 1rem);
					@media screen and (max-width: 767px) {
						width: 100%;
					}

					i,
					svg {
						color: #fff;
						background-color: #d32e35;
						padding: 0.25rem;
						border-radius: 50%;
						display: flex;
						align-items: center;
						justify-content: center;
						aspect-ratio: 1/1;
						font-size: 2.5rem;
						margin-right: 0.75rem;
						flex-shrink: 0;
						height: auto;
						width: 1.7rem;
						position: relative;
						top: 15px;
						border: 2px solid #d32e35;
						@include media-breakpoint-down(sm) {
							font-size: 1.25rem;
						}
						@include media-breakpoint-down(xs) {
							font-size: 1rem;
						}
					}
				}
			}
		}
	}
}

.faqs {
	.row {
		.text {
			@media screen and (max-width: 767px) {
				text-align: center;
				margin-bottom: 1.5rem;
			}
		}
		.faqSection {
			.accordion {
				.accordion-item {
					border: none;
					border-bottom: 1px solid #000;
					border-radius: 0;
					background-color: #fff;

					.accordion-button {
						background-color: transparent;
						border: none;
						border-radius: 0;
						font-size: 1.2rem;
						font-weight: 400;
						line-height: 1.2;
						padding: 1.25rem 1rem;

						i,
						svg {
							margin-left: auto;
							transition: transform 0.2s ease-in-out;
							transform: rotate(0deg);
						}

						&:not(.collapsed) {
							/* color: #d32e35; */
							font-weight: 700;
							i,
							svg {
								transform: rotate(180deg);
							}
						}
					}
					.accordion-body {
						padding-top: 0rem;
					}
				}
			}
		}
	}
}

.calltoaction {
	border-top: 3px solid #0d8a52;
	border-bottom: 3px solid #0d8a52;
	.row {
		.col-12 {
			text-align: center;
			a.btn {
				margin: 0.5rem auto 0;
				display: inline-block;
			}
			@media screen and (max-width: 767px) {
				text-align: center;
			}
		}
	}
}

#footer {
	z-index: 9999;
	background-color: #575757;
	width: 100%;

	.row {
		padding-top: 2rem;
		padding-bottom: 1rem;
		.col-12 {
			text-align: center;
			color: #fff;

			&.disclaimer,
			&.legal {
				a {
					position: relative;
					margin-right: 1rem;
					padding-right: 1rem;
					border-right: 1px solid #fff;
					line-height: 1;
					color: #fff;
					text-align: center;

					&:last-child {
						margin-right: 1rem;
						padding-right: 0;
						border-right: none;
					}
				}

				p {
					line-height: 1.1;
					margin-bottom: 0.2rem;
					color: #fff;
					text-align: center;
				}
			}
			&.logo {
				display: flex;
				align-items: center;
				justify-content: space-between;
				flex-flow: row nowrap;
				margin-bottom: 1.5rem;

				@media screen and (max-width: 575px) {
					flex-flow: column nowrap;
					gap: 2rem;
				}

				img {
					max-width: 260px;
					max-height: 100px;
					width: 100%;
					object-fit: contain;
					object-position: left center;
					filter: brightness(0) invert(1)
						drop-shadow(0 0 2px #0008);
				}
			}
		}
	}
}
