/* -- CSS Navigation --
		To nagivate this CSS file, simply Search (CTRL + F) for the section code Ex: 1a) )
		
		Table of Contents:
		Section 1) Navigation & DNN Fixes
			1a) Site Navigation
			1b) DNN Fixes
			1c) 404 changes
		Section 2) Global Styles (Internal Heros Included)
			2a) Buttons
			2b) Heading Styles
			2c) Internal Heros
			2d) Footer Changes
            2e) Blog Styles
			2f) Mobile Call Button
		Section 3) Homepage Changes
			3a) Hero
			3b) About
			3c) Contact
		Section 4) Internal Page Changes (organize sub-sections by page and subpage Ex: Primary about page would be 4a, child pages could be 4a-a, 4a-b, 4a-c etc. if need be)
			4a)
		Section Z) Mobile Media Queries*/

/* 

	/* Section 1) Navigation & DNN Fixes
		1a) Site Navigation */

/* 1b) DNN Fixes */
p {
	font-weight: 600;
}

/* 1c) 404 Changes */
.fourohfour {
	font-size: 10em;
	line-height: 1.2;
}
.error {
	font-size: 5em;
	line-height: 1.2;
}
.not_found {
	font-size: 3em;
	line-height: 1.2;
}
.ty-title {
	font-size: 6em;
	line-height: 1.2;
}
.ty-subtitle {
	font-size: 3em;
	line-height: 1.2;
}

/* Section 2) Global Styles (Internal Heros Included)
		2a) Buttons */
a.btn-primary, a.btn-primary:link, a.btn-primary:visited {
    display: inline-block;
	font-size: 22px;
	line-height: 1.2;
	font-weight: 700;
	padding: 20px 32px;
	color: #fff;
	background-color: #172231;
	border: 3px solid #172231;
	text-decoration: none;
	-webkit-border-radius: 14px;
	-moz-border-radius: 14px;
	border-radius: 14px;
	transition: all 450ms;
}
a.btn-primary:hover, a.btn-primary:link:hover, a.btn-primary:visited:hover {
	background: transparent;
	color: #172231;
	text-decoration: none;
}
a.btn-secondary, a.btn-secondary:link, a.btn-secondary:visited {
    display: inline-block;
	font-size: 22px;
	line-height: 1.2;
	font-weight: 700;
	padding: 20px 32px;
	color: #fff;
	background-color: #01C28C;
	border: 3px solid #01C28C;
	text-decoration: none;
	-webkit-border-radius: 14px;
	-moz-border-radius: 14px;
	border-radius: 14px;
	transition: all 450ms;
}
a.btn-secondary:hover, a.btn-secondary:link:hover, a.btn-secondary:visited:hover {
	background: transparent;
	color: #01C28C;
	text-decoration: none;
}

/* 2b) 404 Changes */

/* 2c) Internal Heros */
.int-hero {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#191e29+0,152a41+100 */
	background: rgb(25,30,41); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(25,30,41,1) 0%, rgba(21,42,65,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(25,30,41,1) 0%,rgba(21,42,65,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(25,30,41,1) 0%,rgba(21,42,65,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#191e29', endColorstr='#152a41',GradientType=0 ); /* IE6-9 */
}
.white-trans-bot2 {
	background-image: url(/Portals/0/Images/Internal/IntHTransition.svg);
	background-size: 100%;
	background-position: bottom;
	background-repeat: no-repeat;
    background-position-y: calc(100% + 2px);
    position: relative;
}
.ih-content {
	padding: 100px 0 260px;
    max-width: 50%;
    margin: 0;
}
.ih-content h1 {
	color: #fff;
}
.ih-content p {
	color: #ddd;
}

/* 2d) Footer Changes */
.footer-content {
	padding: 100px 0 40px;
}
.footer-content h2 {
	color: #fff;
}
.footer-content h3, .footer-content h3 a {
	color: #fff;
    font-size: 22px;
}
.footer-content ul {
	list-style: none;
}
.footer-content ul li a, .footer-content ul li a:link, .footer-content ul li a:visited {
	color: #cbcbcb;
    font-size: 18px;
}
.footer-content a, .footer-content a:link, .footer-content a:visited {
	position: relative;
}
.footer-content a:before, .footer-content a:link:before, .footer-content a:visited:before {
	content: "";
    position: absolute;
    left: 0;
    width: 0px;
    height: 2px;
    bottom: -3px;
    background-color: #01c28c;
    transition: all ease-in 200ms;
}
.footer-content a:hover:before, .footer-content a:link:hover:before, .footer-content a:visited:hover:before {
	width: 100%;
}
.wm-plug a, .wm-plug a:link, .wm-plug a:visited {
    color: #FFFFFF;
	font-weight: 700;
	border-bottom: 2px solid #01C28C;
    transition: all 440ms;
}
.wm-plug a:hover, .wm-plug a:link:hover, .wm-plug a:visited:hover {
	color: #01C28C;
}
.wm-plug p {
	color: #fff;
}
.contact-items i {
	color: #01c28c;
    font-size: 52px;
}
.contact-items p {
	line-height: 1.3;
    margin: 0;
    color: #fff;
}
.contact-items a, .contact-items a:link, .contact-items a:visited {
	color: #fff;
}
.footer-img {
	position: relative;
    bottom: -2px;
}

/* 2e) Blog Styles */
.blog-content {
	padding: 40px 5px;
}
.blog-content img {
	padding: 20px 0 10px 0;
}
.blog-content em {
	text-align: center;
	margin: auto;
	font-size: 18px;
}
.blog-content h1 {
	padding-top: 45px;
}
.blog-content h2 {
	padding-top: 35px;
}
.blog-content h3 {
	padding-top: 10px;
}
.blog-content h4 {
	margin-top: 20px;
}
.blog-content h5 {
	margin-top: 40px;
}
.blog-content h6 {
	margin-top: 20px;
}
.blog-content li {
	font-size: 18px;
}
.blog-content dt {
	padding: 10px 0;
	font-size: 21px;
}
.blog-content dt:before {
	display: inline-block;
	content: "";
	height: 10px;
	margin-right: 10px;
	background-color: #000;
	width: 10px;
}
.blog-content dd {
	margin-left: 40px;
}
.blog-section {
	padding: 0 55px;
}
.blog-content .row .row-content {
	padding: 20px 0;
}
.blog-content .blog-quote {
	background-color: #f6f6f6;
	padding: 40px;
	margin: 40px 0;
}
.header h1 {
	padding: 35px;
	border: 1px solid #212529;
	margin-top: 60px;
}
.constrain {
	width: 100%;
}

/* 2f) Mobile Call Button - Fix Colors */
.call-button {
	display: none;
}
.call-button {
	position: fixed;
	bottom: 90px;
	right: 30px;
	display: none;
	justify-content: left;
	align-items: center;
	z-index: 999;
	left: 0;
}
.call-button .call-button-link, .call-button .call-button-link:link {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 0;
	left: 0;
	height: 50px;
	padding: 15px 30px;
	padding-left: 0;
	border-radius: 99999px;
	background-color: #ba0c16;
	color: white !important;
	font-size: 18px !important;
	-webkit-text-stroke: 0 transparent;
	text-decoration: none !important;
	overflow: hidden;
	box-shadow: 0 7px 21px rgba(0, 0, 0, 0.21);
}
.call-button .call-button-link i {
	position: relative;
	left: -1px;
	z-index: 5;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 50px;
	width: 50px;
	border-radius: 99999px;
	margin-right: 15px;
	font-size: 35px;
	background-color: white;
	color: #ba0c16;
}
/* Section 3) Homepage Changes
		3a) Hero */
.home-hero {
	position: relative;
	padding: 0 0 120px;
}
.home-hero p {
	margin: 35px 0;
}
.hh-buttons a:first-of-type {
	margin-right: 35px;
}

.home-hero h2 {
 	margin: 35px 0;
  	font-size: 32px;
}

/* Hero images fix */
.home-hero .row {
	padding-bottom: 75px !important;
}

.hero-image__grid {
	display: grid;
  	grid-template-rows: 1fr auto;
  	grid-template-columns: repeat(2, calc(50% - 1rem));
  	grid-gap: 2rem;
  	grid-auto-flow: column;
  	height: 100%;
  	width: 100%;
  	position: relative;
}

.hero-image__grid img {
  	height: 100%;
  	width: 100%;
  	object-fit: cover;
  	grid-row: 1/2;
}

.hero-image__grid span {
	background-color: transparent;
  	text-align: center;
  	padding: 1rem;
  	border-radius: 16px;
	display: flex;
 	justify-content: center;
  	font-size: 1rem;
  	color: #162334;
  	font-weight: bold;
}

/* Change for homepage services list */
.home-resources .item {
    display: flex;
    flex-direction: column;
   width: max(300px,  23%) !important;
    padding: 90px 25px;
  	margin: 2rem;
    text-align: center;
}

.home-resources .item i {
color: #01C28C;
font-size: 78px;
margin-bottom: 15px;
}


/* Other homepage changes */

  .home-hero {
		padding-top: 60px;
   		padding-bottom: 200px;
	}

.blue-trans-bot {
	background-image: url(/Portals/0/Images/Home/HHTransition.svg);
	background-size: 100%;
	background-position: bottom;
	background-repeat: no-repeat;
    background-position-y: calc(100% + 2px);
    position: relative;
}
.white-trans-bot {
	background-image: url(/Portals/0/Images/Home/HATransition.svg);
	background-size: 100%;
	background-position: bottom;
	background-repeat: no-repeat;
    background-position-y: calc(100% + 2px);
    position: relative;
}
.gradient-bg1 {
	position: relative;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#191e29+0,132d46+100 */
    background: rgb(25,30,41); /* Old browsers */
    background: -moz-linear-gradient(top, rgba(25,30,41,1) 0%, rgba(19,45,70,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(25,30,41,1) 0%,rgba(19,45,70,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(25,30,41,1) 0%,rgba(19,45,70,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#191e29', endColorstr='#132d46',GradientType=0 ); /* IE6-9 */
}
.home-about {
	padding: 60px 0 310px;
}
.home-about p, .home-about ul li {
	list-style: none;
    color: #ddd;
    padding: 5px 0;
}
.home-about ul li:before {
	content: "\2022";
	color: #01C38D;
	font-weight: bold;
	display: inline-block;
	width: 1em;
	margin-left: -1em;
}

  /*.home-about div.row {
  	display: grid;
    grid-template-rows: auto auto;
    grid-template-columns: 50% 50%;
	place-items: center;
    grid-auto-flow: column;
  }*/

/*.home-about div.row div.width-100 {
  max-width: 100%;
  width: 100%;
}*/
.home-services p {
    padding: 15px 0 20px;
}
.home-stats {
	position: relative;
    z-index: 10;
    overflow: visible;
    padding-bottom: 110px;
    margin-bottom: 90px;
    background-image: url(/Portals/0/Images/Home/HSBG.svg);
    background-size: 100%;
    background-position-y: bottom;
    background-repeat: no-repeat;
}
.home-stats .hs-row {
	position: relative;
    z-index: 10;
    display: flex;
    flex-direction: row;
    align-items: end;
}
.home-stats .hs-row .item {
	width: 25%;
    padding-left: 25px;
    position: relative;
}
.home-stats .hs-row .item:before {
	content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 65%;
    width: 3px;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#01c28c+0,01c28c+100&0+0,1+100,1+100 */
	background: -moz-linear-gradient(top, rgba(1,194,140,0) 0%, rgba(1,194,140,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(1,194,140,0) 0%,rgba(1,194,140,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(1,194,140,0) 0%,rgba(1,194,140,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0001c28c', endColorstr='#01c28c',GradientType=0 ); /* IE6-9 */
    transition: all 350ms;
}
.home-stats .hs-row .item:hover:before {
	height: 85%;
}
.home-stats .hs-row .item:after {
	content: "";
    position: absolute;
    bottom: -9px;
    left: -8px;
    height: 18px;
    width: 18px;
    background-color: #01C28C;
    b-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.home-stats .hs-row .item.one {
	padding-bottom: 320px;
}
.home-stats .hs-row .item.two {
	padding-bottom: 220px;
}
.home-stats .hs-row .item.three {
	padding-bottom: 110px;
}
.home-stats .hs-row .item.four {
	padding-bottom: 80px;
}
.home-stats .hs-row .item h2 {
	color:#172231;
    padding-top: 10px;
    font-weight: 600;
    font-size: 22px;
    line-height: 1.2;
}
.home-stats .hs-row .item h2 span {
	color:#E0E0E0;
    font-size: 75px;
    line-height: 1.2;
    transition: all 350ms;
}
.home-stats .hs-row .item:hover h2 span {
	color:#01C28C;
}
.home-resources .hr-row .item {
	width: 20%;
    background-color:#fff;
	-webkit-box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.15);
	-moz-box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.15);
	box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.15);
    transition: all 250ms;
}
.home-resources .hr-row .item:hover {
	background-color:#F9F9F9;
    -webkit-box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.25);
	-moz-box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.25);
	box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.25);
}
.home-resources .hr-row .item a, .home-resources .hr-row .item a:link {
	display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
	padding: 90px 25px;
    text-align: center;
}
.home-resources .hr-row .item a:hover, .home-resources .hr-row .item a:link:hover {
	text-decoration: none;
}
.home-resources .hr-row .item a h3 {
	color:#172231;
    font-size: 29px;
    line-height: 1.2;
    text-decoration-color:#01C28C;
    transition: all 250ms;
}
.home-resources .hr-row .item a:hover h3 {
	text-decoration: underline;
    text-decoration-color:#01C28C;
}
.home-resources .hr-row .item a p {
	color:#696E79;
    font-size: 16px;
    margin: 0;
}
.home-resources .hr-row .item a i {
	color:#01C28C;
    font-size: 78px;
    margin-bottom: 15px;
}
.gradient-bg2 {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#191e29+0,132d46+100 */
    background: rgb(25,30,41); /* Old browsers */
    background: -moz-linear-gradient(top, rgba(25,30,41,1) 0%, rgba(19,45,70,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(25,30,41,1) 0%,rgba(19,45,70,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(25,30,41,1) 0%,rgba(19,45,70,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#191e29', endColorstr='#132d46',GradientType=0 ); /* IE6-9 */
}

/* Section 4) Internal Page Changes
		4a) Internal page base styling */


/* Misc */

/*Captcha V3 Hide or Z-Index so Always Showing, Depends on Site
.grecaptcha-badge{
	visibility: collapse !important;  
}
.grecaptcha-badge {
 	z-index: 100; 
}*/

/* ajax form css */
.ajaxform-14 .dg-form-content {
	margin: 0 0 0 -30px;
}

.ajaxform-14 .dg-form-content>li {
	padding: 0 0 30px 30px;
}

.ajaxform-14 .dg-form-content label {
	color: #787878;
	margin: 0 0 7px;
	color: #cbcbcb;
}

.ajaxform-14 .dg-form-content .from-footer {
	width: 100%;
	padding-bottom: 0;
}

.ajaxform-14 input[type=text],
.ajaxform-14 input[type=email],
.ajaxform-14 input[type=url],
.ajaxform-14 input[type=tel],
.ajaxform-14 input[type=number],
.ajaxform-14 input[type=date],
.ajaxform-14 select,
.ajaxform-14 textarea {
	color: #696e79;
	background-color: #ffffff;
	border: none;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
	padding: 10px 18px;
}

.ajaxform-14 .btn,
.ajaxform-14 .btn:link,
.ajaxform-14 .btn:active,
.ajaxform-14 .btn:visited,
.ajaxform-14 .btn[type="button"],
.ajaxform-14 .btn[type="submit"] {
	display: inline-block;
	font-size: 22px;
	color: #fff;
	font-weight: 700;
	padding: 14px 32px;
	background-color: #01c28c;
	transition: all 440ms;
	border: 2px solid #01c28c;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
}

.ajaxform-14 .btn:hover,
.ajaxform-14 .btn:link:hover,
.ajaxform-14 .btn:visited:hover {
	color: #01c28c;
	background: transparent;
}

.ajaxform-14 .btn * {
	color: #fff;
}

/* Section Z) Mobile Media Queries */

@media only screen and (min-width:1921px) {
	
}
@media only screen and (min-width:1600px) {
      /*.hero-image__grid span {
      background-color: #172231;
      text-align: center;
      padding: 1rem;
      border-radius: 16px;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 1rem;
      color: #FFF;*/
  }
}
@media only screen and (max-width:1600px) {
	.home-stats .hs-row .item h2 span {
		font-size: 60px;
	}
    .home-stats .hs-row .item h2 {
		font-size: 20px;
	}
}
@media only screen and (max-width:1599px) {
.home-resources .hr-row .item {
    width: 24%;
  }
}

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

.home-stats .hs-row .item.three {
	padding-bottom: 150px;
}
.home-stats .hs-row .item.four {
	padding-bottom: 180px;
}

}

@media only screen and (max-width:1366px) {
	
}
@media only screen and (max-width:1200px) {
    .home-about {
    	padding: 60px 0 230px;
    }
    .home-resources .hr-row .item {
		width: 48%;
		margin-bottom: 25px;
	}
    .ih-content {
    	padding: 80px 0 200px;
    }
  
.home-stats .hs-row .item.two {
    padding-bottom: 260px;
}
  .home-stats .hs-row .item.three {
	padding-bottom: 180px;
}
.home-stats .hs-row .item.four {
	padding-bottom: 220px;
}
}
@media only screen and (max-width:1024px) {
a.btn-primary, a.btn-primary:link, a.btn-primary:visited {
    margin: 5px 0px;
}
}
@media only screen and (max-width: 992px) {
	.call-button {
		bottom: 20px;
		display: flex;
	}
  
    .home-hero {
    	padding: 42px 0 120px;
    }
    .home-about {
    	padding: 60px 0 160px;
    }
    .home-stats .hs-row .item {
		width: 45%;
		text-align: center;
		margin: 10px;
		background-color: #fff;
		-webkit-box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.15);
		-moz-box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.15);
		box-shadow: 0px 0px 35px 0px rgba(28,28,28,0.15);
		padding: 35px 5px;
	}
    .home-stats .hs-row .item:before, .home-stats .hs-row .item:after {
    	display: none;
    }
    .home-stats .hs-row {
		flex-wrap: wrap;
	}
    .home-stats .hs-row .item.one, .home-stats .hs-row .item.two, .home-stats .hs-row .item.three, .home-stats .hs-row .item.four {
		padding-bottom: 35px;
	}
    .home-stats .hs-row .item h2 span {
		color: #01C28C;
	}
    .home-stats .hs-row .item h2 {
		padding: 0;
	}
    .home-stats {
    	padding-bottom: 60px;
    }
    .contact-items {
    	margin-bottom: 30px;
    }
    .ih-content {
    	padding: 80px 0 150px;
        max-width: 100%;
    }
}
@media only screen and (max-width: 991px) {
  .hidden-md {
    	display: none;
    }
}
@media only screen and (max-width: 768px) {
	.ty-title {
		font-size: 4em;
	}
	.ty-subtitle {
		font-size: 2em;
	}
	.fourohfour {
		font-size: 5em;
	}
	.error {
		font-size: 3em;
	}
	.not_found {
		font-size: 2em;
	}
    .home-hero {
    	padding: 42px 0 100px;
    }
    .hh-buttons a:first-of-type {
    	margin: 0 10px 10px 0;
    }
    .home-stats {
    	padding-bottom: 40px;
        margin-bottom: 40px;
    }
    .home-about {
		padding: 60px 15px 160px;
	}
    .footer-content {
		padding: 60px 15px 35px;
	}
}
@media only screen and (max-width: 599px) {
	.home-hero {
    	padding: 34px 0 80px;
    }
    .home-stats .hs-row .item {
    	width: 100%;
    }
    .home-about {
    	padding: 50px 15px 90px;
    }
    .home-resources .hr-row .item {
		width: 100%;
	}
    .ih-content {
    	padding: 60px 0 120px;
    }
}
@media only screen and (max-width: 479px) {
	.call-button {
		right: 0;
		left: 0;
	}
	.call-button .call-button-link, .call-button .call-button-link:link {
		padding: 30px;
		padding-left: 0;
		margin-left: 5px;
	}
}
@media only screen and (max-width: 379px) {
	
}





































