* 			{margin: 0; padding: 0; outline: none; border: none; -moz-box-sizing: border-box; -webkit-box-sizing:border-box; box-sizing: border-box;}
body		{font-family: var(--hlc-gt-ultra); color: #354546;}

h1			{font-weight:normal; font-size: 41px; line-height: 1.2em;}
h2			{font-weight:normal; font-size: 41px; line-height: 1.2em;}
h3			{font-weight:normal; color: #4b2942; font-size: 32px;}
h4			{font-weight:normal; color: #4b2942; font-size: 32px;}
h5			{font-weight:normal;}
h6			{font-weight:normal;}

p			{font-size:16px; line-height: 1.4em; margin-bottom: 15px;}
p a			{color:inherit;}

section				{padding:60px 0; position: relative;}
section.background	{background-size:cover; background-repeat: no-repeat;}
section.no-top		{padding-top:0;}

img			{height:auto;}

a.cover {position:absolute;left:0;top:0;width:100%;height:100%;display:block;background-color:rgba(0,0,0,0);}

.landing-wrapper	{}
.inner		{width:1200px; max-width:100%; margin: auto; padding: 0 10px}

::-webkit-input-placeholder     {color:#BEC5C2;}
::-moz-placeholder              {color:#BEC5C2; opacity:1;}
:-ms-input-placeholder          {color:#BEC5C2;}
:-moz-placeholder               {color:#BEC5C2; opacity:1;}

/***** HEADER *****/
header					{padding:57px 0}
.logo-container			{width: 640px; font-size:0; max-width:100%;}
.logo-container	img		{display:inline-block; vertical-align: middle;}
.logo-container	h1		{font-size:41px; margin-bottom: 10px; color: var(--hlc-midnight-blue);}
.logo-container-text	{width:495px; max-width:100%; display:inline-block; vertical-align: middle; margin-left: 35px;}
.logo-container-text p	{margin-bottom: 0;}


/***** PROMO INTRO SECTION *****/
section.intro-page {
	padding-bottom: 90px;
	overflow: hidden;
}

section.intro-page:before { 
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(var(--hlc-midnight-blue-rgb), 0.7);
	z-index: 0;
}

section.intro-page .inner { 
	position: relative;
	z-index: 1;
}

.intro-left {
	width: 530px;
	display: inline-block;
	vertical-align: top;
}
.intro-left h2				{color:#ffffff; margin-bottom: 30px;}
.intro-left p 				{color:#ffffff; margin-bottom: 25px;}
.intro-left-col				{width:48.5%; display: inline-block; margin-top: 10px;}
.intro-left-col:last-child	{margin-left:3%;}

.intro-right	{width:480px; float: right; position:absolute; bottom:0; right:0;}
.intro-right p	{color:#ffffff; font-size: 19px;}
.video-container {position: relative; padding-bottom: 56.45%; height: 0; overflow: hidden; max-width: 100%; margin-bottom: 30px; font-size: 0}
.video-container iframe,
.video-container object,
.video-container embed,
.video-container video	{position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/*.video-display			{display:none;}*/
.video-container img	{display:block; width: 100%;}

p.ribbon		{z-index: 4; color: #ffffff; background-color: #f49a00; font-size: 22px; font-family: 'GT Ultra Regular', sans-serif; padding: 15px 0; text-align: center; display: block; width: 100%; margin-bottom: 0; text-transform: uppercase;}

.sign-up-container						{position:absolute; left: 0; top: 0; background-color: rgba(0,0,0,0.78); width: 100%; height:100%; text-align: center; padding-top: 8%; opacity: 0; visibility: hidden; transition: 0.4s ease-out}
.sign-up-container p					{color:#ffffff; font-size: 21px;}
.sign-up-container input[type="text"]	{background-color:#ffffff; border:2px solid var(--hl-light-green); text-align: center; font-size: 21px; color: #000; padding:13px 10px; width: 70%; font-family: 'GT Ultra Regular', sans-serif;}

.sign-up-container input[type="text"]::-webkit-input-placeholder     {color:rgba(0,0,0,0.5);}
.sign-up-container input[type="text"]::-moz-placeholder              {color:rgba(0,0,0,0.5); opacity:1;}
.sign-up-container input[type="text"]:-ms-input-placeholder          {color:rgba(0,0,0,0.5);}
.sign-up-container input[type="text"]:-moz-placeholder               {color:rgba(0,0,0,0.5); opacity:1;}

.sign-up-container input[type="submit"]	{display:block; margin:15px auto;}

.sign-up-container.active	{opacity: 1; visibility: visible;}

p.disclaimer	{font-size:14px; font-family: var(--hlc-gt-ultra); width: 400px; max-width: 100%; margin: auto;}

/***** HOME PANELS *****/
.home-panels				{margin-top:-50px; padding-bottom: 25px; padding-top: 0; text-align: center;}
.home-panels .col-inner		{background-color:var(--hlc-light-blue); text-align: center; padding: 30px 10px 10px;}
.home-panels .col-inner h3	{margin-bottom: 10px; color: var(--hlc-midnight-blue); font-size: 20px; font-family: 'GT Ultra Regular', sans-serif; line-height: 1.2em;}
.home-panels .col-inner p {
	color: var(--hlc-midnight-blue);
	font-size: 17px;
	font-family: var(--hlc-gt-ultra);
}
.home-panels .col-inner img	{margin-bottom:20px;}

/* CUTOUT SECTION */
.two-col-cutout {
	display: grid;
	grid-template-columns: 1fr 1fr;
	background-color: var(--hlc-midnight-blue);
	position: relative;
}

.two-col-cutout p { 
	font-size: 17px;
	color: inherit;
}

.two-col-cutout .left-side {
	color: #ffffff;
	padding: 40px 40px 40px 10px;
	margin-left: calc(50vw - 600px);
	background-color: transparent;
	max-width: 600px;
}

.two-col-cutout .left-side > :last-child { 
	margin-bottom: 0;
}

.two-col-cutout .right-side {
	color: var(--hlc-midnight-blue);
	background-color: var(--hl-taupe);
	padding: 40px 0 40px 40px;
}

.two-col-cutout h2 {
	font-size: 36px;
	margin-bottom: 0.3em;
}

.two-col-cutout .col-right {
	font-size: 0;
	vertical-align: top;
	padding: 0;
	width: 100%;
	max-width: calc(600px - 60px)!important;
}

.two-col-cutout .col {
	display: inline-block;
	vertical-align: top;
	padding: 0;
}

.two-col-cutout .col-2 { 
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}

.two-col-cutout .col-2 .col { 
	flex-basis: calc(50% - 30px); 
}

.two-col-cutout .btn.green { border-color: var(--hlc-midnight-blue); }

/* CORE TEAM */
p.sign-off {
	margin-top: 30px;
	width: 550px;
	max-width: 100%;
	font-family: var(--hlc-gt-ultra);
}

div.key-contacts-v3.c2025 .intro { 
	color: var(--hlc-midnight-blue); 
	font-size: 16px;
	margin-bottom: 30px;
}

/** FOOTER **/
footer {
	background-color: #f2f2f2;
	padding: 70px 0;
}
ul.social-list		 		{display: inline-block; list-style: none;}
ul.social-list li 			{display: inline-block; vertical-align: top; margin-right: 18px;}
ul.social-list li a img		{width:42px;}
ul.footer-nav 				{display: inline-block; list-style: none; font-family: 'GT Ultra Regular', sans-serif; font-size: 17px; margin-right: 40px; vertical-align: top; margin-top: 10px;}
ul.footer-nav li 			{display: inline; margin: 0 10px 0px 0px; font-size: 14px;}
ul.footer-nav li a		 	{color: #2c5e4f; text-decoration: none; padding-bottom: 2px;}
ul.footer-nav li a:hover 	{border-bottom: 1px solid var(--hl-light-green);}
p.copyright-text 			{font-size: 10px; color: #95989a; font-family: Georgia, Times New Roman, serif; display: inline-block; width: 100%; margin-top: 20px;}

/***** COLUMNS AND ROWS *****/
.col-row		{font-size:0;}
.col-container	{margin-left:-10px; margin-right: -10px;}
.col			{display:inline-block; vertical-align: top; padding: 10px;}
.col-1			{width:100%;}
.col-2			{width:50%;}
.col-3			{width:33.333%;}
.col-4			{width:25%;}


/***** BUTTONS *****/
.btn {
	font-size: 17px;
	padding: 0.8em 1.8em;
	text-align: center;
	display: inline-block;
	border: 1px solid var(--hl-light-green);
	text-decoration: none;
	color: var(--hlc-midnight-blue);
	transition: all 0.2s ease-in;
	cursor: pointer;
	margin-bottom: 10px;
	font-family: 'GT Ultra Regular', sans-serif;
}

.btn.green.solid {
	background-color: var(--hl-light-green);
}

.btn.block			{width:100%; display: block; padding-left: 0; padding-right: 0;}
.btn.big			{font-size:18px;}
.btn.text-white		{color:#ffffff}

.btn:hover			{background-color:#ffffff !important; color:var(--hlc-midnight-blue) !important;}


.mobile-get-started	{display:none;}

.show-mobile	{display:none;}


.key-contacts-v3.c2025.light-background { 
	background-color: var(--hl-light-taupe);
}

/**********************/
/***** RESPONSIVE *****/
/**********************/
@media (max-width: 1370px) {
	.two-col-cutout	{background-position:44% top;}
	
}

@media (max-width: 1310px)

{

	.landing-wrapper	{background-size:50% auto;}
	
}

@media (max-width: 1225px) {
	.inner {
		padding-left: 15px;
		padding-right: 15px;
	}

	.col-container {
		margin-left: -5px;
		margin-right: -5px;
	}

	.testimonials .col-container {
		margin-left: -10px;
		margin-right: -10px;
	}

	/*** INTRO PAGE **/
	.intro-left {
		width: 48%
	}

	.intro-right {
		width: 48%;
	}

	.two-col-cutout .left-side {
		margin: 0;
		width: 100%;
	}

	.two-col-cutout {
		padding-bottom: 0; 
	}

	.two-col-cutout .right-side {
		padding-left: 15px;
		margin: 0;
		width: 100%;
	}

	.two-col-cutout .right-side .col-2 { 
		flex-direction: column;
	}
}

@media (max-width: 1100px)

{
	
	/*** INTRO PAGE ***/
	.intro-left h2	{font-size:30px;}
	
	/*** FOOTER ***/
   footer { padding: 35px 0; }
   footer ul.social-list { display: block; text-align: center; margin-bottom: 30px; }
   ul.footer-nav { margin: 0; display: block; text-align: center; }
   ul.footer-nav li { margin-bottom: 10px; font-size: 16px; display: inline-block; }
   p.copyright-text { text-align: center; margin-top: 30px; float: none; width: 80%; margin-left: auto; margin-right: auto; display: block; }
	
}

@media (max-width: 960px) {
	.logo-container h1 {
		font-size: 32px;
	}

	.landing-wrapper {
		background-size: 40% auto;
	}

	/*** LICENSE PAGE ***/
	.col-inner.license-panel h4 {
		font-size: 26px;
	}

	.col-inner .panel-bottom h4 {
		font-size: 26px;
	}

	.col-inner.license-panel p {
		font-size: 14px;
	}
}

@media (max-width: 880px)

{	
	.sign-up-container p.disclaimer	{font-size:12px;}
	.sign-up-container p,
	p.ribbon	{font-size:18px;}
	
	.home-panels .col-4	{width:33.333%;}
	
}


@media (max-width: 800px) {

	header {
		padding: 25px 0
	}

	.logo-container-text {
		margin-left: 25px;
		width: 60%;
	}

	.landing-wrapper {
		background-size: 30% auto;
	}

	section.background {
		background-position: top;
	}

	/*** INTRO PAGE ***/
	section.intro-page {
		padding-top: 80px;
	}

	.intro-left {
		width: 100%;
	}

	.intro-right {
		width: 100%;
		position: relative;
		bottom: auto;
		right: auto;
		float: none;
		margin-top: 30px;
	}

	.ribbon {
		transform: rotate(0);
		top: 0;
		right: auto;
		left: 0;
		width: 100%;
	}

	section.intro-page .inner {
		padding-left: 40px;
		padding-right: 40px;
	}

	.mobile-get-started {
		display: block;
		margin: 20px 0;
	}

	.btn.big {
		font-size: 17px;
	}

	.intro-left h2 br {
		display: none;
	}

	section.intro-page {
		padding-top: 40px;
	}

	.show-mobile {
		display: block;
	}

	.hide-mobile {
		display: none !important;
	}

	.two-col-cutout .col-left h2 br {
		display: none;
	}

	.two-col-cutout {
		grid-template-columns: 1fr;
	}

	.two-col-cutout .left-side {
		padding: 30px 15px;
		max-width: unset !important;
	}

	.two-col-cutout .right-side { 
		padding: 40px 15px;
	}

	.two-col-cutout .right-side .col-right {
		gap: 10px;
		max-width: unset !important;
		padding: 0px;
	}
}


@media (max-width: 650px)

{
	.col-3	{width:50%;}
	.btn	{font-size:14px;}
	
	
	.landing-wrapper				{background-image:none;}
	.logo-container-text	{width:72%; margin-left: 4%;}
	.logo-container img		{width:24%;}
	.logo-container p		{display:none;}
	
	/*** INTRO PAGE ***/
	section.intro-page .inner	{padding-left:20px; padding-right: 20px;}
	.testimonials				{padding-top:15px;}
	.testimonials .col-2		{width:100%; margin-bottom: 40px;}
	.testimonials blockquote	{font-size:17px;}
	.testimonials				{padding-bottom:10px;}
	
	/*** LICENSE PAGE ***/
	.licenses-container .col-4	{width:50%}
	.form-container				{padding-left:10px; padding-right: 10px;}
	.form-cell.form-cell-inline	{display:block; width: 100%;}
	
	.home-panels .col-4			{width:50%;}
	.home-panels .col-inner h3	{font-size:16px;}
	.intro-right p				{font-size:16px;}	
	
}


@media (max-width: 550px)

{
	.form-container .col-2	{width:100%;}
	p.discount-ribbon		{display:block; width: auto; margin-left: 0; margin-top: 10px; text-align: center;}
	.block-header			{margin-top:20px;}
	
	/** REGISTER **/
	.already-registered	{text-align:center;}
	.already-registered .btn.green.solid	{display:block; margin-top: 15px;}

}

@media (max-width: 450px)

{
	header					{padding:15px 0}
	.logo-container h1	{font-size:20px; margin-bottom: 0}
	.col-3	{width:100%;}
	
	/** INTRO PAGE **/
	.intro-right				{margin-top:10px;}
	.intro-left h2				{font-size:28px;}
	.home-panels .col-inner img	{width:50px; margin-bottom: 10px;}
	.home-panels .col-inner	p	{font-size:14px; margin-bottom: 5px;}
	
	/** LICENSE **/
	.col-inner .panel-bottom h4	{font-size:23px;}
	

	.sign-up-container p.disclaimer	{font-size:10px;}
	.sign-up-container p,
	p.ribbon	{font-size:14px;}
	
	.sign-up-container	{padding-top:15px;}
	p.disclaimer		{max-width:90%;}
	.sign-up-container input[type="text"]	{font-size:18px; padding: 10px;}
	
	.sign-up-container input[type="submit"]	{padding:8px 12px}

	.home-panels .col-4			{width:100%;}

}


@media (max-width: 375px)

{
	.logo-container h1		{font-size:24px;}	
	.sign-up-container input[type="submit"]	{margin:7px auto}
}

@media (max-width: 374px)

{
	.sign-up-container p, p.ribbon	{font-size:12px;}
	.sign-up-container input[type="text"]	{font-size:13px; padding: 5px;}
	.sign-up-container input[type="submit"]	{padding:5px; font-size: 12px;}
}




