body, html{
	margin: 0;
	padding: 0;
	position: relative;
	overflow-x: hidden;
	font-family: ff-meta-web-pro, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4em;
	color: #212846;
}
body{background: #fff;}
body img{border: none;}
.blue_bg{color: #fff; background: #212846;}
.red_bg{color: #fff; background: #ED2124;}
.light_bg{background: #EBEBEB;}
.grey_bg{color: #fff; background: #6A737B;}
.wrap{
	margin: 0 auto 0 auto;
	position: relative;
	width: 90%;
	max-width: 1170px;
}
	
/*---------------FONT STYLES--------------*/
h1, h2, h3, h4, p, a, ol, ul, li{margin: 0; padding: 0;}
h1{
	margin: 0 0 25px 0;
	font-family: ff-meta-web-pro-condensed, sans-serif;
	font-size: 52px;
	font-weight: 800;
	line-height: 1.3em;
	color: #ED2124;
}
.blue_bg h1{color: #fff;}
h2{
	margin: 0 0 25px 0;
	padding: 10px 0 0 0;
	font-family: ff-meta-web-pro-condensed, sans-serif;
	font-size: 52px;
	font-weight: 800;
	line-height: 1.3em;
	color: #ED2124;
}
h2:first-child, h1 + h2{padding: 0;}
h2.style2{
	margin: 0 0 10px 0;
	font-family: ff-meta-web-pro, sans-serif;
	font-size: 32px;
	font-weight: 400;
	font-style: italic;
	color: #212846;
}
.blue_bg h2{color: #fff;}
.blue_bg .blue{color: #ED2124;}
h3{
	margin: 0 0 15px 0;
	font-family: ff-meta-web-pro-condensed, sans-serif;
	font-size: 32px;
	font-weight: 800;
	line-height: 1.3em;
	color: #ED2124;
}
.blue_bg h3{color: #fff;}
p{margin: 0 0 20px 0;}
a{
	text-decoration: none;
	color: #ED2124;
	-webkit-transition: color 300ms ease;
	-moz-transition: color 300ms ease;
	-o-transition: color 300ms ease;
	transition: color 300ms ease;
}
a:hover{color: #be1a1d;}
a:focus{outline: none;}
.blue_bg a{color: #809BFF;}
.blue_bg a:hover{color: #cccccc;}
.red_bg a{color: #212846;}
ul li{list-style: none;}
table{margin: 0 0 20px 0; border-collapse: collapse;}
input, textarea{
	margin: 0;
	padding: 0;
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #000;
	border-radius: 0;
}
input[type="text"], input[type="button"], input[type="submit"]{-webkit-appearance: none;}
input:focus, textarea:focus{border: orange; outline: none;}
input::-moz-focus-inner{padding: 0; border: none;}
@media screen and (max-width: 960px){
	h1, h2{font-size: 42px;}
	h3{font-size: 28px;}
}
@media screen and (max-width: 720px){
	h1, h2{font-size: 32px;}
	h2.style2{font-size: 26px;}
	h3{font-size: 24px;}
}
	
/*---------------TOP--------------*/
#top{
	position: relative;
	z-index: 50;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #212846;
	background-size: cover;
}
#top .wrap{height: 400px;}
#logo{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 264px;
	height: 236px;
	font-family: ff-meta-web-pro-condensed, sans-serif;
	font-size: 59px;
	font-weight: 800;
	color: #fff;
	background: #ED2124;
}
.navcurrent #logo:after{
	margin-left: -3px;
	position: absolute;
	top: 100%;
	left: 50%;
	width: 6px;
	height: 20px;
	content: '';
	background: #ED2124;
}
#logo .span1{
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 50px;
	text-align: center;
	line-height: 1.3em;
}
#logo .span2{
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 18px;
	font-family: ff-meta-web-pro, sans-serif;
	font-size: 27.5px;
	font-weight: 400;
	text-align: center;
	line-height: 1.3em;
}
#top .phone{
	position: absolute;
	top: 178px;
	left: 288px;
	font-size: 24px;
	line-height: 1.3em;
	color: #fff;
}
#top .phone:hover{text-decoration: none;}
#top .btn{
	padding: 5px 15px 5px 15px;
	position: absolute;
	top: 173px;
	left: 445px;
	font-size: 24px;
	line-height: 1.3em;
	color: #fff;
	border-radius: 24px;
	background: #ED2124;
}
#top .btn:hover{background: #be1a1d;}
#top .right{
	position: absolute;
	top: 24px;
	right: 0;
	left: 300px;
	text-align: right;
	color: #fff;
}
#top .right p{margin: 0 0 10px 0;}
#top .right img{width: 45px;}
@media screen and (max-width: 1000px){
	#top .wrap{height: 300px;}
	#logo{width: 200px; height: 179px; font-size: 45px;}
	#logo .span1{bottom: 40px;}
	#logo .span2{bottom: 15px; font-size: 21px;}
	.navcurrent #logo:after{display: none;}
	#top .phone{top: 100px; left: 220px;}
	#top .btn{top: 140px; left: 220px; font-size: 22px;}
	#top .right{left: 230px;}
}
@media screen and (max-width: 550px){
	#top .wrap{height: 200px;}
	#logo{width: 150px; height: 134px; font-size: 34px;}
	#logo .span1{bottom: 30px;}
	#logo .span2{bottom: 11px; font-size: 15.8px;}
	#top .phone{top: 92px; left: 170px; font-size: 20px;}
	#top .btn{
		top: auto;
		bottom: 16px;
		left: auto;
		right: 0;
		max-width: 50%;
		font-size: 18px;
		text-align: center;
	}
	#top .right{left: 160px;}
	#top .right p{display: none;}
}
@media screen and (max-width: 360px){
	#logo{width: 120px; height: 108px; font-size: 26px;}
	#logo .span2{font-size: 12px;}
	#top .phone{
		top: 90px;
		left: auto;
		right: 0;
	}
}
	
/*---------------NAV--------------*/
nav{
	padding-left: 15px;
	position: absolute;
	top: 270px;
	left: 0;
	-webkit-transition: max-height 300ms ease;
	-moz-transition: max-height 300ms ease;
	-o-transition: max-height 300ms ease;
	transition: max-height 300ms ease;
}
nav .bar{
	position: absolute;
	top: -20px;
	left: 132px;
	width: 0;
	height: 6px;
	content: '';
	background: #ED2124;
}
nav li{margin-right: 10px; position: relative; float: left;}
nav a{
	padding: 6px 8px 6px 8px;
	display: block;
	font-size: 24px;
	line-height: 1.3em;
	color: #fff;
	-webkit-transition: color 300ms ease, background 300ms ease;
	-moz-transition: color 300ms ease, background 300ms ease;
	-o-transition: color 300ms ease, background 300ms ease;
	transition: color 300ms ease, background 300ms ease;
}
nav a:hover{color: #fff;}
nav .current a, nav a:hover{background: #ED2124;}
.navcurrent nav .current:after{
	margin-left: -3px;
	position: absolute;
	bottom: 100%;
	left: 50%;
	width: 6px;
	height: 20px;
	content: '';
	background: #ED2124;
}
#nav_toggle{
	padding: 0 10px 0 42px;
	display: none;
	position: absolute;
	top: 200px;
	left: -10px;
	height: 38px;
	float: left;
	z-index: 1000;
	cursor: pointer;
	font-size: 18px;
	color: #fff;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-o-user-select: none;
	user-select: none;
}
#nav_toggle .text{display: inline-block; margin-top: 8px;}
#nav_toggle .bar{
	display: block;
	position: absolute;
	left: 10px;
	width: 22px;
	height: 4px;
	background: #fff;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
#nav_toggle .bar1{top: 9px;}
#nav_toggle .bar2{top: 17px;}
#nav_toggle .bar3{top: 17px;}
#nav_toggle .bar4{top: 25px;}
.csstransforms .show_nav #nav_toggle .bar1{top: 27px; opacity: 0;}
.csstransforms .show_nav #nav_toggle .bar4{top: 8px; opacity: 0;}
.csstransforms .show_nav #nav_toggle .bar2, .csstransforms .show_nav #nav_toggle .bar3{
	-webkit-transition-delay: 150ms;
	-moz-transition-delay: 150ms;
	-o-transition-delay: 150ms;
	transition-delay: 150ms;
}
.csstransforms .show_nav #nav_toggle .bar2{
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.csstransforms .show_nav #nav_toggle .bar3{
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
@media screen and (max-width: 1000px){
	nav{
		padding: 0;
		top: 255px;
		width: 230px;
		max-height: 0;
		overflow: hidden;
		background: #ED2124;
	}
	.show_nav nav{max-height: 400px;}
	nav ul{padding: 8px 0 8px 0;}
	nav li{margin: 0 8px 0 8px; float: none;}
	nav a{padding: 5px 8px 5px 8px; font-size: 22px; color: #fff;}
	nav .current a{color: #212846; background: #fff;}
	.navcurrent nav .current:after{display: none;}
	#nav_toggle{display: block;}
}
@media screen and (max-width: 550px){
	nav{top: 200px; width: 200px;}
	nav a{font-size: 18px;}
	#nav_toggle{top: 148px;}
}
	
/*---------------CONTENT--------------*/
main{display: block;}
main ul{margin: 0 0 20px 0;}
main p + ul{margin: -10px 0 20px 0;}
main li{padding: 0 0 0 15px; background: url(images/bullet.png) 8px 9px no-repeat;}
main img{display: block; max-width: 100%;}
.content{padding-top: 50px; padding-bottom: 30px;}
.content.small{padding-top: 20px; padding-bottom: 1px;}
.content.large{padding-top: 100px; padding-bottom: 80px;}
.center{text-align: center;}
.cols .left{width: 48.717949%; float: left;}
.cols .right{width: 48.717949%; float: right;}
.cols2{
	margin: 0 0 25px 0;
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	column-gap: 40px;
}
.cols2 li{
	overflow: auto;
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid-column;
}
.clear{clear: both;}
.img_wrap{margin: 0 0 20px 0; padding-top: 52.631579%; position: relative;}
.img_wrap .img{
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100%;
	width: calc(100% + (50vw - 102.631579%));
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #ccc;
	background-size: cover;
}
.left .img_wrap .img{right: 0;}
.right .img_wrap .img{left: 0;}
.overlap_bottom{padding-bottom: 225px;}
.overlap_top{margin-top: -225px;}
.services{margin: 0 -5.897436% 0 0; width: 105.897436%;	overflow: auto;}
.service{
	margin: 0 5.569007% 20px 0;
	display: block;
	width: 27.764326%;
	float: left;
}
.blue_bg .service{color: #fff;}
.service a{color: #fff;}
.service img{display: block; width: 100%; max-width: 400px;}
.service h3{
	margin: 0;
	padding: 5px 18px 5px 22px;
	max-width: 400px;
	box-sizing: border-box;
	background: #ED2124;
	-webkit-transition: color 300ms ease, background 300ms ease;
	-moz-transition: color 300ms ease, background 300ms ease;
	-o-transition: color 300ms ease, background 300ms ease;
	transition: color 300ms ease, background 300ms ease;
}
.service a:hover h3{color: #ED2124; background: #fff;}
.service .bottom{padding: 15px 18px 0 18px; border-left: 4px solid #ED2124;}
.service ul:last-child{margin: 0;}
.service li{padding: 0; font-size: 20px; line-height: 1.3em; background: none;}
.service li + li{margin-top: 25px;}
.tagline{margin: 0 0 20px 0;}
.tagline .img_wrap{margin: 0;}
.tagline_text{
	font-size: 48px;
	font-style: italic;
	text-align: right;
	line-height: 1.3em;
	color: #fff;
}
.tagline_text p{margin: 0;}
.csstransforms .tagline_text{
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}
.person{margin-bottom: 20px;}
.person .img{position: relative; width: 31.623932%; float: left;}
.person .img:before{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 100%;
	width: 3000px;
	content: '';
	background: #212846;
}
.person .img:after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 100%;
	width: 8.108108%;
	content: '';
	background: #ED2124;
}
.person .right{padding-top: 20px; width: 63.247863%; float: right;}
.person h3{text-transform: uppercase;}
.person .details{margin: 0 0 20px 0;}
.person .details p{margin: 0;}
.call_now{
	margin: 15px 0 15px 0;
	padding: 0 12px 0 12px;
	position: relative;
	display: inline-block;
	font-size: 24px;
	line-height: 1.4em;
}
.call_now:before, .call_now:after{
	margin-top: -2px;
	position: absolute;
	top: 50%;
	width: 3000px;
	height: 4px;
	content: '';
	background: #ED2124;
}
.call_now:before{right: 100%;}
.call_now:after{left: 100%;}
.call_now .text{margin: 0 8px 0 8px;}
.call_now .call_number{margin: 5px 10px 5px 10px; display: inline-block;}
.call_now .call{
	padding: 8px 8px 8px 8px;
	display: inline-block;
	text-transform: uppercase;
	color: #fff;
	background: #ED2124;
}
.call_now .number{padding: 8px 10px 8px 10px; display: inline-block; background: #EBEBEB;}
.large_text{font-size: 24px; line-height: 1.4em;}
.items{margin: 0 -5.789231% -20px -5.769231%; width: 111.538462%;}
.item{margin: -20px 0 20px 0; padding: 20px 5.172414% 0 5.172414%; width: 22.988505%; float: left;}
.item:target{background: #EBEBEB;}
.item:nth-child(3n+1){clear: both;}
.icon_cols{position: relative; overflow: hidden;}
.icon_cols:before, .icon_cols:after{
	margin-left: -1px;
	position: absolute;
	top: 10px;
	bottom: 25px;
	width: 2px;
	content: '';
	background: #212846;
}
.icon_cols:before{left: 33.333333%;}
.icon_cols:after{left: 66.666666%;}
.icon_col{
	margin: 0 0 20px 0;
	padding: 0 10px 0 10px;
	width: 33.333333%;
	float: left;
	box-sizing: border-box;
}
.icon_col img{margin: 0 auto 0 auto;}
.icon_col h3{margin: 0; font-size: 24px;}
#map{margin: 20px 0 20px 0; width: 100%; height: 300px;}
@media screen and (max-width: 1300px){
	.tagline_text{font-size: 40px;}
}
@media screen and (max-width: 1150px){
	.tagline_text{font-size: 32px;}
}
@media screen and (max-width: 960px){
	.content{padding-top: 40px; padding-bottom: 20px;}
	.content.large{padding-top: 80px; padding-bottom: 60px;}
	.service{font-size: 14px;}
	.service li{font-size: 17px;}
	.tagline_text{font-size: 26px;}
	.item{width: 39.655172%;}
	.item:nth-child(3n+1){clear: none;}
	.item:nth-child(2n+1){clear: both;}
}
@media screen and (max-width: 720px){
	.content{padding-top: 30px; padding-bottom: 10px;}
	.content.large{padding-top: 40px; padding-bottom: 20px;}
	.cols .left, .cols .right{width: auto; float: none;}
	.cols2{
		margin: 0;
		-webkit-column-count: 1;
		-moz-column-count: 1;
		column-count: 1;
	}
	.img_wrap .img{width: auto;}
	.left .img_wrap .img, .right .img_wrap .img{left: -5.555555%; right: -5.555555%;}
	.services{margin: 0 0 -10px 0; width: auto;}
	.service{margin: 0 0 30px 0; width: auto; float: none;}
	.service li + li{margin-top: 15px;}
	.tagline_text{padding: 20px 0 20px 0; text-align: center;}
	.csstransforms .tagline_text{
		position: static;
		top: auto;
		-webkit-transform: none;
		-moz-transform: none;
		-ms-transform: none;
		-o-transform: none;
		transform: none;
	}
	.person .img{width: 70%; max-width: 370px; float: none;}
	.person .right{width: auto; float: none;}
	.call_now{font-size: 18px;}
	.large_text{font-size: 20px;}
	.icon_col img{width: 80px;}
	.icon_col h3{font-size: 20px;}
	.icon_col h3 br{display: none;}
}
@media screen and (max-width: 480px){
	.tagline_text{font-size: 20px;}
	.items{margin: 0 0 -10px 0; width: auto;}
	.item{margin: 0 0 10px 0; width: auto;}
	.icon_cols:before, .icon_cols:after{display: none;}
	.icon_col{width: auto; float: none;}
}
	
/*---------------FOOTER--------------*/
footer .red_bg .wrap{padding: 20px 0 20px 0; max-width: 680px;}
footer .red_bg h3{
	margin: 0 0 5px 0;
	font-family: ff-meta-web-pro, sans-serif;
	font-size: 23px;
	font-weight: 400;
}
footer .red_bg p{margin: 0;}
footer .red_bg .left{width: 43.382353%; float: left;}
footer .red_bg .left img{margin: 10px 0 0 11.764706%; display: block; width: 214px;}
footer .red_bg .left p{font-size: 12px; line-height: 1.4em;}
footer .red_bg .left .business{font-style: italic; color: #809BFF;}
footer .red_bg .right{width: 50%; float: right;}
footer .red_bg .right img{
	position: absolute;
	top: -70px;
	right: 0;
	width: 140px;
}
footer .light_bg .wrap{padding: 20px 0 10px 0;}
footer .light_bg p{margin: 0 0 10px 0; display: inline-block; vertical-align: middle;}
footer .light_bg a{font-style: italic; color: #ED2124;}
footer .light_bg img{
	margin: 0 10px 0 10px;
	display: block;
	width: 295px;
	max-width: 90%;
}
#copyright{padding: 8px 0 8px 0;}
#copyright a{color: #fff;}
#copyright a:hover{text-decoration: underline;}
#copyright img{margin: -1px 10px 0 0; width: 30px; vertical-align: middle;}
#copyright ul, #copyright li{display: inline-block;}
#copyright li + li:before{content: ' | ';}
#copyright .switch{display: none;}
#backtotop{
	position: fixed;
	bottom: 10%;
	right: -36px;
	width: 36px;
	height: 36px;
	opacity: 0;
	z-index: 200;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
#backtotop img{width: 100%; pointer-events: none;}
#backtotop.visible{right: 5px; opacity: 0.5;}
#backtotop.visible:hover{opacity: 1;}
@media screen and (max-width: 1024px){
	#copyright{font-size: 14px; line-height: 1.4em;}
	#copyright img{margin: 0 0 5px 0;}
	#copyright ul, #copyright li{display: block;}
	#copyright li + li:before{display: none;}
	#copyright .switch{display: block;}
}
@media screen and (max-width: 960px){
	footer .red_bg .right img{top: -50px; width: 100px;}
}
@media screen and (max-width: 720px){
	footer .red_bg .left{margin: 0 0 20px 0; width: auto; float: none;}
	footer .red_bg .left img{margin: 0;}
	footer .red_bg .right{width: auto; float: none;}
	footer .red_bg .right img{top: auto; bottom: 12px;}
}
@media screen and (max-width: 360px){
	footer .red_bg .right img{bottom: 22px; width: 80px;}
}