:root{
	--body-font-size: 20px;
	--global-border-radius: 6px;

	--page-header-container-height: 481px;
	--page-header-container-padding: 5px 20px 0;
	--page-header-padding: 55px 0 0;



	--logo-anchor-margin: -57px 0 0;
	--logo-max-width: 275px;



	--phone-number-color: #616161;
	--phone-number-image-size: 33px;
	--phone-number-image-margin: 0 7px 0 0;



	--header-title-font-size: 3.4rem;

	--header-sign-in-button-background: #AAA;
	--header-sign-in-button-color: #FFF;
	--header-sign-in-button-padding: 4px 7px;



	--header-main-navigation-container-margin: 131px;



	--page-main-navigation-background: transparent;

	--page-main-navigation-item-color: #00AFEF;
	--page-main-navigation-item-font-size: 24px;
	--page-main-navigation-item-font-weight: 700;
	--page-main-navigation-item-padding: 1px 10px;
	--page-main-navigation-item-spacing: 24px;

	--page-main-navigation-item-active-text-decoration: underline;

	--page-footer-height: auto;
	--page-footer-image-margin: 0;


	--content-background: #FAFAFA;
	--content-border-color: #93D5FF;
	--content-border-width: 1px;
	--content-spacing: calc(var(--content-padding) * 2);
	--content-padding: 1em;



	--learn-more-button-background: #00AFEF;
	--learn-more-button-color: #FFF;
	--learn-more-button-font-size: 16px;
	--learn-more-button-font-weight: 700;
	--learn-more-button-padding: 4px 7px;



	--request-demo-box-background: #F0F0F0;
	--request-demo-box-border: var(--request-demo-box-border-width) solid #00CE37;
	--request-demo-box-border-width: 2px;
	--request-demo-box-font-size: 30px;
	--request-demo-box-font-weight: 700;
	--request-demo-box-margin: 1em 0;
	--request-demo-box-top-padding: 1em;
	--request-demo-box-left-right-padding: 2.5em;
	--request-demo-box-bottom-padding: 1em;
	--request-demo-box-width: calc(100% - calc(var(--request-demo-box-left-right-padding) * 2) - calc(var(--request-demo-box-border-width) * 2));

	--request-demo-button-background: #00CE37;
	--request-demo-button-color: #FFF;
	--request-demo-button-font-size: var(--request-demo-box-font-size);
	--request-demo-button-font-weight: var(--learn-more-button-font-weight);
	--request-demo-button-padding: var(--learn-more-button-padding);



	--footer-social-icon-height: 2rem;
}


.sr_only {
	display: none;
}

ol ol{
	list-style-type: lower-alpha;
}

#header_container{
	background: url('/header-final.webp') no-repeat bottom left / cover;
	height: var(--page-header-container-height);
	overflow-y: auto;
}

#header{
	margin: 2rem auto 0;
}

#header_flex_container{
	display: flex;
	gap: 0;
}

#header_flex_container h1{
	margin: 0;
}

#header_flex_container > span:first-child{
	flex-basis: 70%;
	justify-content: space-between;
}

#header_flex_container > span:last-child{
	flex-basis: 30%;
	justify-content: space-between;
}

#header_flex_container #header_sign_in_container{
	text-align: center;
}

#header_sign_in{
	background: var(--header-sign-in-button-background);
	border-radius: var(--global-border-radius);
	color: var(--header-sign-in-button-color);
	font-weight: 700;
	padding: var(--header-sign-in-button-padding);
	position: relative;
	white-space: nowrap;
	text-decoration: none;
	z-index: 90;
}

#logo_a{
	display: block;
}

#logo{
	max-width: var(--logo-max-width);
	width: 100%;
}

#header #header_phone_number{
	display: block;
	font-weight: 700;
	margin-top: 3rem;
	white-space: nowrap;
}
 
#header_phone_number > *{
	color: var(--phone-number-color);
	text-decoration: none;
	vertical-align: top;
}

#header_left{
	font-size: var(--header-title-font-size);
	font-weight: 700;
}

#header_right{
	float: right;
	text-align: center;

	& > *{
		display: block;
		margin-top: 1rem;

		&:first-child{
			margin-top: 0;
		}
	}
}

.mobile-nav-toggle {
	display: none;
}

#main_navigation{
	position: relative;
	bottom: 100px;

	& a,
	& span{
		color: var(--page-main-navigation-item-color);
		font-size: var(--page-main-navigation-item-font-size);
		font-weight: var(--page-main-navigation-item-font-weight);
		padding: var(--page-main-navigation-item-padding);
		text-decoration: var(--page-main-navigation-item-text-decoration);
		vertical-align: top;

		&.current,
		&:hover{
			text-decoration: var(--page-main-navigation-item-active-text-decoration);
		}
	}


	& ul{
		padding-top: 3px;

		& > li > a{
			display: block;
			padding-top: 2px;
		}

		& > li:last-child > a{
			padding-bottom: 5px;
		}
	}
}

#header_phone_number > img{
	margin: var(--phone-number-image-margin);
	width: var(--phone-number-image-size);
}

#body > section,
#body > article{
	margin: 2rem 0;
}

.content_container{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(max(48%, 275px), 1fr));
	gap: 1.5em;
	margin-top: 1.5rem;
}

.content{
	border: var(--content-border-width) solid var(--content-border-color);
	background: var(--content-background);
	border-radius: var(--global-border-radius);
	flex-basis: calc(33.333% - 2px - calc(var(--content-padding) * 2) - var(--content-spacing));
	gap: 2rem;
	margin-bottom: calc(var(--content-padding) * 2);
	padding: var(--content-padding);

	& ul{
		margin-bottom: 0;
		padding-left: 0;
	}

	& li{
		list-style: none;
	}

	& > *{
		margin: 0
	}

	& > * ~ *{
		margin-top: 10px;
	}
}

.learn_more_button{
	background: var(--learn-more-button-background);
	border-radius: var(--global-border-radius);
	color: var(--learn-more-button-color);
	display: inline-block;
	font-size: var(--learn-more-button-font-size);
	font-weight: var(--learn-more-button-font-weight);
	padding: var(--learn-more-button-padding);
	text-decoration: none;
}

.request_demo_box{
	background: var(--request-demo-box-background);
	border: var(--request-demo-box-border);
	border-width: 0 var(--request-demo-box-border-width);
	border-radius: var(--global-border-radius);
	display: flex;
	justify-content: space-between;
	margin: 1em 0;
	padding: var(--request-demo-box-top-padding) var(--request-demo-box-left-right-padding) var(--request-demo-box-bottom-padding);
	width: var(--request-demo-box-width);
}

.request_demo_box > *{
	font-size: var(--request-demo-box-font-size);
	font-weight: var(--request-demo-box-font-weight);
	margin-top: 0;
	margin-bottom: 0;
	vertical-align: top;
}

.request_demo_button{
	background: var(--request-demo-button-background);
	border-radius: var(--global-border-radius);
	color: var(--request-demo-button-color);
	font-size: var(--request-demo-button-font-size);
	font-weight: var(--request-demo-button-font-weight);
	padding: var(--request-demo-button-padding);
	text-decoration: none;
}

#footer_container{
	--page-section-container-background: #C0C0C0;

	--page-section-container-padding-top: 0.25rem;
	--page-section-container-padding-bottom: 0.25rem;

	#footer{
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;

		font-weight: 700;

		margin: 0;
		max-width: 100%;

		& > div{
			flex-basis: fit-content;
			flex-grow: 1;

			a ~ a{
				margin-left: 1rem;
			}
		}

		& > div:first-child{
			a{
				color: #FFF;
			}
		}


		& > div:nth-child(2){
			height:  var(--footer-social-icon-height);
			text-align: center;

			a{
				display: inline-block;
				height:  var(--footer-social-icon-height);
				width: min-content;
			}

			img{
				height: var(--footer-social-icon-height);
			}
		}

		& > div:last-child{
			text-align: right;
		}

	}
}

@media(max-width: 800px){
	#footer_container #footer{
		flex-direction: column;
		gap: 1rem 0;
	}
}
