@import "https://fonts.googleapis.com/css?family=Open+Sans";

/* CSS Document for Screens */
body {
	font-family:'Open Sans', serif;
	font-size:18px;
	font-weight:500;
	color:#555;
	margin:0;
	padding:0;
}

header {
	position:fixed;
	width:100%;
	height:120px;
	z-index:700;
	transition:height .4s ease;
	background-color: white;
}

body.scroll header {
	height:80px;
	transition:height .4s ease;
}

#header_content {
	position:relative;
	top:0;
	left:0;
	width:100%;
	margin:auto;
	max-width:1200px;
}

/* Fix for floated elements causing empty space mid-sentence in Fluid Layouts - keep floated images in a separate container */
p:before {
	content:"";
	width:25%;
	display:block;
	overflow:hidden;
}

/* fix for anchor links with a fixed header */
a[name]:not([href]) {
	padding-top:150px;
	margin-top:-150px;
}

a[name]:not([href]):before {
	display:block;
	content:" ";
	padding-top:150px;
	margin-top:-150px;
	visibility:hidden;
}

a.button {
	background-color:#1D75A7;
	color:#FFF!important;
	font-size:16px;
	font-weight:500;
	overflow:hidden;
	padding:4px 40px;
	text-transform:uppercase;
	text-decoration:none;
	cursor:pointer;
	letter-spacing:1px;
	-webkit-transition:all .3s ease;
	-moz-transition:all .3s ease;
	-o-transition:all .3s ease;
	white-space:nowrap;
	border:#1D75A7 solid thin;
}

a.button:hover {
	background-color:#FFF;
	color:#1D75A7!important;
	text-decoration:none;
	border:#1D75A7 solid thin;
}

.rating, .more {
	color: #1D75A7;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap
}

.more:after {
	content:"\f178";
/* FontAwesome Unicode */
	font-family:FontAwesome;
	display:inline-block;
	margin-left:5px;
/* same as padding-left set on li */
	width:1em;
	color:#1D75A7;
}

#page {
	min-height:400px;
	max-width:1200px;
	margin:0 auto;
	padding: 0 20px;
	position:relative;
}

.spacer {
	clear:both;
	height:150px;
}

#content {
	padding:0 20px;
}

#content p:not(#content table p) {
	padding:5px 0;
	margin:1em 0;
	text-align: justify
}

#content strong {
	color: black;
}

#content hr {
	border: 0;
    height: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.5);
    border-bottom: 1px solid rgba(255, 255, 255, 1);
}

.no_wrap {
	white-space:nowrap;
}

.no_decoration,.no_decoration a {
	text-decoration:none;
}

iframe {
	max-width:100%!important;
}

.preload {
	display: none;
}

table.squares {
    border-collapse: collapse;
    border-spacing: 0px;
    margin: 0;
    padding: 0;
    border: 0;
}

table.squares td {
    margin: 0;
    padding: 0;
}

table.squares td img {
	display: block /* Prevents extra gap under table rows */
}

.arrow_overlay {
	position:absolute;
	right:0;
	top:0;
	z-index: 999;
	border: #ff0000 solid thin;
	background:url(../images/green_arrow.png) no-repeat 0 0;
}

body.mobile	table {
	width:100%!important;
	height:auto!important;
	overflow:hidden;
	border-collapse:collapse;
}

body.mobile	table th,body.mobile table td {
	padding:5px;
}

body.mobile	table td {
	display:block;
	width:100%!important;
	height:auto!important;
	overflow:hidden;
	text-align:center;
}

body.mobile	table td p,body.mobile table td div,body.mobile table td ul li {
	text-align:left;
}

body.mobile	table td img {
	max-width:100%!important;
	height:auto!important;
	margin:auto;
}

body.mobile .no_resize {
	overflow:scroll;
}

#content img {
	max-width:100%;
	height:auto!important;
}

.external-icon {
	vertical-align:baseline;
	font-size:60%!important;
	padding:3px;
	vertical-align:super;
}

a.external {
	white-space:nowrap;
}

a.phone {
	text-decoration:none;
}

/* Text */
h1,h2,h3,h4,h5,h6 {
	font-family:'Open Sans',sans-serif;
	color:#000;
	font-weight: 500;
	margin: auto;
}

h1 {
	color:#1D75A7;
	text-transform: uppercase;
	text-align: center
}

h2 {
	color:#1D75A7;
}

#content h1,h2,h3 {
	padding: 10px 10px 10px 0px;
}

h4,h5,h6 {
	padding: 5px 5px 5px 0px;
}

body.mobile h1,body.mobile h2,body.mobile h3 {
	text-align: center;
	padding: 10px;
}

a {
	color:#1D75A7;
}

a:hover {
	color:#000;
}

a:visited {
	color:#1D75A7;
}

#content ol {
	padding:0;
	margin-left:5em;
}

#content ol li {
	margin-left:1.5em;
}

#content ul {
	list-style:none;
	padding:0;
	margin-left:5em;
}

#content ul li {
	padding-left:0;
}

#content ul li:before:not(ul.nav-interior) {
	content:"\f058";
/* FontAwesome Unicode */
	font-family:FontAwesome;
	display:inline-block;
	margin-left:0;
/* same as padding-left set on li */
	width:1em;
	color:#1D75A7;
}

a.btn {
	font-size:1.2em;
	text-decoration:none;
	color:#fff;
	border:1px solid #fff;
	padding:4px 15px;
	background-color:rgba(107,4,4,0.3);
	transition:background-color .5s;
}

a.btn:hover {
	background-color:rgba(107,4,4,.7);
}

/* header */
#slider {
	height:auto;
	position:relative;
}

#header_content a.logo {
	z-index:1;
	position:relative;
	display:block;
	width:407px;
	height:107px;
	background:url(../images/logo.png) no-repeat 0 0;
	background-size:contain;
	margin: 10px auto 0;
	transition:width .4s ease,height .4s ease,top .4s ease;
}

#header_content a.logo span {
	display:none;
}

body.scroll #header_content a.logo {
	width:202px!important;
	height:53px!important;
	transition:width .4s ease,height .4s ease,top .4s ease;
}

/*
	Uncomment if needed to lock logo size
#header_content a.logo.locked {
	width:100px!important;
	height:98px!important;
}
*/
#slider div.hero,#slider div.hero_2 {
	position:absolute;
	width:42%;
	top:130px;
	left:55%;
	z-index:101;
	animation-name:animate_1;
	animation-duration:2s;
}

@keyframes animate_1 {
	0% {
		opacity:0;
		left:0;
		top:0;
	}
	
	100% {
		opacity:1;
		left:55%;
		top:130px;
	}
}

#slider div.hero h1 {
	line-height:1em;
	margin:0 0 30px;
	color:#fff;
	text-shadow:1px 1px 6px #000;
}

/* Social */
#social {
	position:absolute;
	top:80px;
	right:45px;
	margin:0;
	font-size:16px;
	opacity:100;
	transition:opacity .4s ease;
	transition:top .4s ease;
}

body.scroll #social {
	opacity:0;
	transition:opacity .2s ease;
}

#social i {
	padding-top:10px;
}

#social.hide {
	display:none;
}

#social.show {
	display:block;
}

#social a {
	color:#000;
	padding:0 10px;
	text-decoration:none;
}

#social a:hover {
	color:#757575;
}

.social_connect {
	display:inline-block;
	font-size:18px;
	font-weight:700;
	padding:5px 5px 7px 0;
	vertical-align:top;
}

.social_connect a {
	background-color:#FEA500;
	border-radius:0 0 10px 10px;
	color:#fff;
	text-decoration:none;
	text-transform:uppercase;
	padding:12px 13px!important;
	margin:0 10px 0 0;
	font-size:15px;
	vertical-align:text-bottom;
}

.social_connect a:hover {
	background:#900200;
	color:#fff!important;
}

/* Slideshow */
.slider_content {
	position:absolute;
	bottom:100px;
	right:0;
	width:900px;
	height:92px;
	background-color:#9E120F;
}

.slider_heading {
	text-align:left;
	font-size:40px;
	font-weight:100;
	color:#fff;
	text-shadow:1px 1px 1px #000;
	padding:25px 0 0 70px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
}

.slider_content.tablet {
	bottom:20%;
}

.slider_subheading {
	font-weight:700;
}

/* Begin Charts */

table.chart {
	border-collapse:separate;
	border-spacing:0;
	box-shadow:0 0 2px #757575;
	color:#696969;
	width:90%;
	margin:40px auto;
}

table.chart tr:nth-child(odd) {
	background-color:#f3f3f3;
}

table.chart th {
	background-color:#757575;
	color:#fff;
	padding:8px 10px;
	font-size:1em;
}

table.chart td {
	padding:15px!important;
}

table.chart td:not(body.mobile table.chart td) {
	padding:15px;
	font-size:.8em;
}

table.chart tr:hover:not(tr.nohover) {
	color:#fff;
	background-color:#333;
}

table.chart a {
	color:#696969;
}

table.chart tr:hover a {
	color:#fff;
}

body.mobile table.chart td {
	padding:5px 15px!important;
}

body.mobile table.chart th {
	display:none;
}

body.mobile table.chart tr td:first-child {
	font-size:1.2em;
	font-weight:700;
}

body.mobile table.chart td[data-col-name]:not(body.mobile table.chart tr td:first-child):before {
	content:attr(data-col-name) ":";
	display:inline-block;
	vertical-align:top;
	padding-right:5px;
}

/* End Charts */


/* Begin Boxes */

.boxcontainer {
	text-align:justify;
	height:auto;
	display:table;
	border-spacing:0;
	width:100%;
}

.boxcontainer.spacing {
	border-spacing:20px;
}

.boxcontainer a {
	text-decoration:none;
}

.box1,.box2,.box3,.box4 {
	width:25%;
	height:auto;
	vertical-align:top;
	display:table-cell;
}

.box_2 {
	width:50%;
	height:auto;
	vertical-align:top;
	display:table-cell;
	border:red solid thin;
}

.box_4 {
	width:25%;
	height:auto;
	vertical-align:top;
	display:table-cell;
	border:red solid thin;
}

.box_5 {
	width:20%;
	height:auto;
	vertical-align:top;
	display:table-cell;
	border:red solid thin;
}

@media screen and (max-width: 800px) {
	.boxcontainer {
		display:block;
	}
	
	.box_2,.box_4,.box_5,.box1,.box2,.box3,.box4 {
		width:100%;
		display:block;
	}
}

.boxcontainer .colorcalloutsbox {
	position:relative;
	height:auto;
	vertical-align:top;
	padding:20px;
	cursor:pointer;
}

.colorcalloutsbox h3 {
	text-align:left;
	font-size:18px;
	color:#fff;
	margin:5px 0 15px;
}

.colorcalloutsbox p {
	font-size:12px;
	text-align:left;
	color:#fff;
	line-height:16px;
}

.box_2,.box_4,.box_5 {
	background-color:#efefef;
	border:1px #e3e3e3 solid;
}

.box_2:hover,.box_4:hover,.box_5:hover {
	background-color:#202728;
}

.box_5 p,.box_5 h3,.box_4 p,.box_4 h3,.box_2 p,.box_2 h3 {
	color:#000;
}

.box_5:hover p,.box_5:hover h3,.box_5:hover div.icon,.box_4:hover p,.box_4:hover h3,.box_4:hover div.icon,.box_2:hover p,.box_2:hover h3,.box_2:hover div.icon {
	color:#fff;
}

.box1 {
	background-color:#0075DD;
	background-image:-webkit-linear-gradient(#00BDF2,#0075DD);
	background-image:-moz-linear-gradient(#00BDF2,#0075DD);
	background-image:-ms-linear-gradient(#00BDF2,#0075DD);
	background-image:-o-linear-gradient(#00BDF2,#0075DD);
	background-image:linear-gradient(#00BDF2,#0075DD);
}

.box2 {
	background-color:#a50000;
	background-image:-webkit-linear-gradient(red,#a50000);
	background-image:-moz-linear-gradient(red,#a50000);
	background-image:-ms-linear-gradient(red,#a50000);
	background-image:-o-linear-gradient(red,#a50000);
	background-image:linear-gradient(red,#a50000);
}

.box3 {
	background-color:#51A301;
	background-image:-webkit-linear-gradient(#83D533,#51A301);
	background-image:-moz-linear-gradient(#83D533,#51A301);
	background-image:-ms-linear-gradient(#83D533,#51A301);
	background-image:-o-linear-gradient(#83D533,#51A301);
	background-image:linear-gradient(#83D533,#51A301);
}

.box4 {
	background-color:orange;
	background-image:-webkit-linear-gradient(#F90,#F67801);
	background-image:-moz-linear-gradient(#F90,#F67801);
	background-image:-ms-linear-gradient(#F90,#F67801);
	background-image:-o-linear-gradient(#F90,#F67801);
	background-image:linear-gradient(#F90,#F67801);
}

.box_5 div.icon,.box_4 div.icon,.box_2 div.icon {
	padding:15px 0 0;
	font-size:5em;
	line-height:1em;
	text-align:center;
	color:#000;
}

.box_5 h3,.box_4 h3,.box_2 h3 {
	margin:5px;
	padding:0;
	text-align:center;
}

.boxcontainer .box_5 .colorcalloutsbox,.boxcontainer .box_4 .colorcalloutsbox,.boxcontainer .box_2 .colorcalloutsbox {
	position:relative;
	height:auto;
	vertical-align:top;
	padding:0 20px 10px;
	cursor:pointer;
}

.box1:hover,.box2:hover,.box3:hover,.box4:hover {
	background-color:#202728;
	background-image:none;
}

/* End Boxes */



/* navbar */

body.mobile-menu #mobile_nav,body.touch #mobile_nav {
	display:block;
}

/* nav mobile */
#mobile_nav {
	width:60px;
	position:absolute;
	top:10px;
	left:50px;
	margin:0;
	height:50px;
	text-align:left;
	padding:0 0 20px 20px;
	z-index:500;
}

#mobile_nav a {
	text-decoration:none;
	line-height:auto;
}

.mobile-nav-toggle {
	position:absolute;
	width:30px;
	height:30px;
	top:33px;
	right:25px;
	vertical-align:middle;
	cursor:pointer;
	color:#000;
	padding:0;
	display:inline-block;
	z-index:1002;
	transition:top .4s ease;
}

.mobile-nav-toggle:hover {
	opacity:.6;
}

.mobile-search-toggle {
	position:absolute;
	width:30px;
	height:30px;
	top:28px;
	right:65px;
	vertical-align:middle;
	cursor:pointer;
	color:#545454;
	padding:0;
	display:inline-block;
	z-index:1002;
	transition:top .4s ease;
	font-size:20px;
}

.mobile-portfolio-toggle {
	position:absolute;
	width:30px;
	height:30px;
	top:18px;
	right:105px;
	vertical-align:middle;
	cursor:pointer;
	color:#545454;
	padding:0;
	display:inline-block;
	z-index:1;
	transition:top .4s ease;
	font-size:20px;
}

.mobile-portfolio-toggle a {
	color:#545454;
}

.mobile-search-toggle:hover,.mobile-portfolio-toggle:hover {
	opacity:.6;
}

body.scroll .mobile-search-toggle {
	top:15px;
	transition:top .4s ease;
}

body.scroll .mobile-nav-toggle {
	top:27px;
	transition:top .4s ease;
}

.top-bar {
	width:30px;
	height:3px;
	background-color:#000;
	position:absolute;
	top:0;
	transition:transform .1s .1s ease-in-out;
	-webkit-transition:transform .1s .1s ease-in-out;
	-moz-transition:transform .2s .2s ease-in-out;
	-o-transition:transform .1s .1s ease-in-out;
}

.middle-bar {
	width:30px;
	height:3px;
	background-color:#000;
	position:absolute;
	top:7px;
	transition:opacity 0 .1s linear;
	-webkit-transition:opacity 0 .1s linear;
	-moz-transition:opacity 0 .1s linear;
	-o-transition:opacity 0 .1s linear;
}

.bottom-bar {
	width:30px;
	height:3px;
	background-color:#000;
	position:absolute;
	top:14px;
	transition:transform .1s .1s ease-in-out;
	-webkit-transition:transform .1s .1s ease-in-out;
	-moz-transition:transform .1s .1s ease-in-out;
	-o-transition:transform .1s .1s ease-in-out;
}

#search-toggle .top-bar,#search-toggle .middle-bar,#search-toggle .bottom-bar {
	background-color:#000;
}

div.mobile-nav-toggle.open .top-bar {
	transform:rotate(45deg);
	-webkit-transition:rotate(45deg);
	-moz-transition:rotate(45deg);
	-o-transition:rotate(45deg);
	top:7px;
	background-color:#000;
}

div.mobile-nav-toggle.open .middle-bar {
	opacity:0;
	background-color:#000;
}

div.mobile-nav-toggle.open .bottom-bar {
	transform:rotate(-45deg);
	-webkit-transition:rotate(-45deg);
	-moz-transition:rotate(-45deg);
	-o-transition:rotate(-45deg);
	top:7px;
	background-color:#000;
}

#cssmenu,#cssmenu ul,#cssmenu li,#cssmenu a {
	margin:auto;
	padding:0;
	border:0;
	list-style:none;
	font-weight:400;
	text-decoration:none;
	line-height:1em;
	font-size:18px;
	position:relative;
	text-align:left;
}

#cssmenu {
	width:100%;
	max-width:1200px;
	margin:auto;
	padding: 0 0 40px 0;
	z-index:99999;
	position:fixed;
	top:150px;
	font-family:'Open Sans',sans-serif;
	transition:top .4s ease;
	background-color:rgba(255, 255, 255, 1);
}

body.scroll #cssmenu {
	top:100px;
}

#cssmenu a {
	line-height:auto;
}

#cssmenu li:hover {
	background-color:#e5e5e5 !important;
}

#cssmenu > ul > li > a {
	display:block;
	line-height:20px;
	font-weight:400;
	text-transform:uppercase;
	color:#000;
}

#cssmenu > ul > li > a > span,#cssmenu > ul > li > ul > li > a > span {
	display:block;
	padding:8px 20px;
}

#cssmenu a:hover {
	text-decoration:none;
	color:#000!important;
}

#cssmenu > ul > li.active, #cssmenu > ul > li.active > ul > li {
	border:none;
	color:#1D75A7!important;
 	background-color:#ddd;
}

#cssmenu li.lisubdd {
	background-color:#ccc !important;
}

#cssmenu > ul > li.has-sub > a i.nav_plus,#cssmenu > ul > li > ul > li.has-sub > a i.nav_plus {
	float:right;
	display:inline-block;
}

#cssmenu > ul > li.has-sub > a i.nav_minus,#cssmenu > ul > li > ul > li.has-sub > a i.nav_minus {
	float:right;
	display:none;
}

#cssmenu > ul > li.has-sub.active > a i.nav_plus,#cssmenu > ul > li > ul > li.has-sub.active > a i.nav_plus {
	display:none;
}

#cssmenu > ul > li.has-sub.active > a i.nav_minus,#cssmenu > ul > li > ul > li.has-sub.active > a i.nav_minus {
	display:inline-block;
}

#cssmenu ul ul {
	display:none;
/* 	background-color:#000; */
}

#cssmenu ul ul a {
	padding:5px 0 5px 25px;
	display:block;
	color:#000;
	font-size:16px;
	font-weight:400;
}

#cssmenu ul ul a span {
	padding:0 0 0 15px;
}

#cssmenu ul ul ul a {
	padding:5px 0 5px 60px;
	display:block;
	color:#000;
	font-size:16px;
	font-weight:400;
	line-height:20px;
}

#cssmenu ul ul ul a:before {
	left:90px;
}

#cssmenu ul a.nav_active, #cssmenu ul ul a.nav_active {
 	color: #1D75A7 !important
}

#cssmenu ul ul a.nav_active span {
	color: #1D75A7 !important;
}

#cssmenu > ul > li.parent.has-sub > a span {
	color: #1D75A7 !important;
}

/* nav interior */

ul.nav-interior {
	margin-left: 0 !important
}

ul.nav-interior li {
	list-style: none;
	text-transform: uppercase;
	font-size: .9em;
}

ul.nav-interior li a {
	text-decoration: none;
	color: black;
}

ul.nav-interior li a.active {
	text-decoration: none;
	color:#1D75A7;
}

ul.nav-interior li a.active:after {
	content:"\f178";
/* FontAwesome Unicode */
	font-family:FontAwesome;
	display:inline-block;
	margin-left:10px;
/* same as padding-left set on li */
	width:1em;
	color:#1D75A7;
}

/* footer */
footer {
	font-size:.8em;
	margin:0 auto;
	padding:40px 10px;
	color:#000;
	width:100%;
	max-width:1200px;
	text-align: center;
}

footer::after {
	content:'';
	display:block;
	clear:both;
}

#footer {
	max-width:1200px;
	margin:auto;
}

footer a {
	color:#000;
	text-decoration: none;
}

footer a:visited {
	color:#000;
}

footer a:hover {
	color:#000;
}

footer a.location {
	color:#F9AA19;
}

#footer_links {
	text-transform: uppercase
}

#company_name,#company_address,#company_phone,#footer_links,#footer_credits {
	margin:20px 0;
}

#company_name {
	font-size:1.5em;
}

#footer_credits {
	font-size:.8em;
}

#social_footer {
	margin:0 20px;
	font-size:12px;
}

#social_footer.hide {
	display:none;
}

#social_footer.show {
	display:block;
}

#social_footer a {
	color:#000;
	padding:0 3px;
	text-decoration:none;
}

#social_footer a:hover {
	color:#757575;
}

#back-top-wrapper div a {
	width:40px;
	height:40px;
	opacity:1;
}

#back-top {
	display:none;
}

#back-top-wrapper {
	position:fixed;
	right:20px;
	bottom:20px;
	overflow:hidden;
	z-index:10000;
}

#back-top span {
	display:block;
	width:40px;
	height:45px;
	-webkit-transition:1s;
	-moz-transition:1s;
	-o-transition:1s;
	transition:1s;
	color:#CCC;
	font-size:40px;
	opacity:.5;
}

#back-top span:hover {
	color:#1D75A7;
	opacity:1;
}

/* Media Queries */
/* iPad in landscape */
@media screen and (max-width: 1024px) {
	body {
		font-size:15px;
	}


}

@media screen and (max-width: 825px) {
	body {
		font-size:14px;
	}
	

}

/* iPad in portrait */
@media screen and (max-width: 768px) {
	body {
		font-size:13px;
	}
	
	
	
		header {
		height: 100px;
	}
	
	#header_content a.logo {
	width:202px!important;
	height:53px!important;
	transition:width .4s ease,height .4s ease,top .4s ease;
}

.spacer {
	clear:both;
	height:120px;
}

#cssmenu {
		top: 110px;
	}
	
}

@media screen and (max-width: 625px) {
	body {
		font-size:12px;
	}
	
	a.btn {
		font-size:.9em;
	}
	
		#mobile_nav {
		top: -10px;
	}
	
	
	

	
	/* Header */





/* Footer */
footer div.content {
	display:block;
	margin-top:15px;
}

footer div.content a {
	margin:0 20px 0 0;
}	
}

@media screen and (max-width: 425px) {
	/* Header */
	body {
		font-size:12px;
	}
	
	#content p {
	padding:5px 10px;
	margin:.5em;
}
	

#mobile_nav {
	left: 10px;
}
	




/* Footer */
footer::after {
	content:'';
	display:block;
	clear:both;
}

footer .content {
	text-align:left;
}	
}

