*,*::before,*::after {box-sizing: border-box;}
.text-center {text-align: center;}
html {background:url("../images/pattern_dark.png") repeat scroll 0 0 #383838;}
body{
	font-size:16px;
	line-height:24px;
	font-family: 'Lato' sans-serif;
	font-style: normal;
	font-weight: normal;
	background:url(../images/pattern_light.png) repeat;
}
.wrap{
	width: 1000px;
	height: auto;
	margin: 0 auto;
	padding: 0;
	position: relative;
}
header{
	width: auto;
	height: 120px;
	margin: 0 auto;
	padding: 0;
	background:url(../images/pattern_light.png) repeat;
	border-bottom:12px solid #373737;
}
article{
	background:url(../images/pattern_light.png) repeat;
	margin:20px 0;
}
a.logo{
	width: 310px;
	height: 72px;
	background: url(../images/logo.png) top left no-repeat;
	margin-top: 14px;
	padding: 0;
	display: block;
	text-indent: -9999px;
	float: left;
}
ul.contacts{
	width: auto;
	margin-top: 37px;
	padding: 0;
	background: none;
	float: right;
}
ul.contacts li{
	list-style: none;
	display: inline-block;
	width: auto;
	text-transform: none;
	text-align: left;
	float: right;
	margin: 0;
	padding: 0px 10px 0 10px;
	font: 16px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #7a726f;
	line-height: 16px;
	border-right: 1px solid #e1dfdf;
	background: none;
	float: left;
}
ul.contacts li.last{
	padding-right: 0px;
	border-right: none;
}
nav.topnav {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 72px;
  right: 0;
}
nav.topnav ul{
	width: auto;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	display: block;
}
nav.topnav ul li{
	margin: 0;
	padding: 0;
	background: none;
	float: left;
	position:relative;
}
nav.topnav ul li a{
	margin: 0;
	padding: 5px 12px;
	font-size: 13px;
	font-family: 'Lato' sans-serif;
	font-weight: 400;
	color: #544843;
	text-decoration: none;
	text-transform: uppercase;
	line-height: 18px;
	text-align: left;
	display: block;
	width: auto;
	text-transform: uppercase;
}
nav.topnav ul li a:hover{
	background-color: #527b73;
	color:#fff;
}
nav.topnav li:hover > ul {display:block;}
nav.topnav ul ul {
	float:none;
	display:none;
	position:absolute;
	top:100%;
	left:0;
	min-width:200px;
	background:url("../images/pattern_dark.png") repeat scroll 0 0 #373737;
	z-index:1200;
}
nav.topnav ul ul ul {left:100%;top:0;}
nav.topnav ul ul li {float:none;}
nav.topnav ul ul li a {white-space:nowrap;}
nav.topnav ul ul li a:link,
nav.topnav ul ul li a:visited {color:#aaa;}
nav.topnav ul ul li a:hover,
nav.topnav ul ul li a:active,
nav.topnav ul ul li a:focus {color:#fff;}

nav.leftnav {}
nav.leftnav ul ul {margin-top:0;}
.banner{
	width: 100%;
	height: 500px;
	background:url("../images/pattern_dark.png") repeat scroll 0 0;
	margin: 0;
}
.fadeshow-container{
	margin: 0 auto;
}

@media screen and (min-width: 1280px) {
    .services {background-size: 100% auto !important;}
    .about {background-size: 100% auto !important;}
    .specials {background-size: 100% auto !important;}
    .contactus {background-size: 100% auto !important;}
}
.caption{
	width: 100%;
	height: 120px;
	background:url(../images/pattern_dark.png)top center repeat;
	margin: 0;
	padding: 0;
}
.left{
	width: 650px;
	height: 120px;
	background:url(../images/pattern_dark.png)top center repeat;
	margin: 0;
	padding: 0;
	float: left;
}
.caption h1{
	margin: 38px 0 0 0;
	padding: 0;
	font: 24px 'PT Serif', serif;
	font-weight: 400;
	color: #fff;
	text-transform: none;
	text-decoration: none;
	text-align: left;
	float: left;
	line-height: 20px;
}
.caption p{
	margin: 10px 0 0 0;
	padding: 0;
	font: 14px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #ebebeb;
	line-height: 16px;
	text-transform: none;
	text-decoration: none;
	text-align: left;
	float: left;
}
a.button{
	width: 150px;
	height: 46px;
	background: none;
	margin-top: 37px;
	margin-left: 20px;
	padding-top: 10px;
	display: block;
	float: left;
	border: 2px solid #fff;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	font: 16px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #fff;
	text-transform: none;
	text-decoration: none;
	text-align: center;
}
a.button:hover{
	border: 2px solid #40625b;
}
a.button_center{
	width: auto;
	height: 46px;
	background: none;
	margin: 40px auto 0 auto;
	padding: 10px 40px;
	display: inline-block;
	border: 2px solid #fff;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	font: 16px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #fff;
	text-transform: none;
	text-decoration: none;
	text-align: center;
}
a.button_center:hover{
	border: 2px solid #40625b;
}
.hvr-rectangle-out {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background: #40625b;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
.hvr-rectangle-out:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #40625b;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-rectangle-out:hover, .hvr-rectangle-out:focus, .hvr-rectangle-out:active {
  color: white;
}
.hvr-rectangle-out:hover:before, .hvr-rectangle-out:focus:before, .hvr-rectangle-out:active:before {
  -webkit-transform: scale(1);
  transform: scale(1);
}
.services{
	width: 100%;
	height: 500px;
	background:url(../images/services_bg.png)top center no-repeat;
	margin: 0;
	padding: 80px 0 80px 0;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
}
.box{
	width: 240px;
	height: 340px;
	background:#fff;
	margin-left:13px;
	padding: 5px 5px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	float: left;
	display: block;
}
.box_first{
	width: 240px;
	height: 340px;
	background:#fff;
	margin: 0;
	padding: 5px 5px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	float: left;
	display: block;
}
.img_1{
	width: 230px;
	height: 200px;
	background:url(../images/img_1.png)top center no-repeat;
	margin: 0;
	padding: 0;
}
.img_2{
	width: 230px;
	height: 200px;
	background:url(../images/img_2.png)top center no-repeat;
	margin: 0;
	padding: 0;
}
.img_3{
	width: 230px;
	height: 200px;
	background:url(../images/img_3.png)top center no-repeat;
	margin: 0;
	padding: 0;
}
.img_4{
	width: 230px;
	height: 200px;
	background:url(../images/img_4.png)top center no-repeat;
	margin: 0;
	padding: 0;
}
.icon_1{
	width: 67px;
	height: 70px;
	background:url(../images/icon_1.png)top center no-repeat;
	margin: -35px auto 0 auto;
	padding: 0;
}
.icon_2{
	width: 67px;
	height: 70px;
	background:url(../images/icon_2.png)top center no-repeat;
	margin: -35px auto 0 auto;
	padding: 0;
}
.icon_3{
	width: 67px;
	height: 70px;
	background:url(../images/icon_3.png)top center no-repeat;
	margin: -35px auto 0 auto;
	padding: 0;
}
.icon_4{
	width: 67px;
	height: 70px;
	background:url(../images/icon_4.png)top center no-repeat;
	margin: -35px auto 0 auto;
	padding: 0;
}
.box h1{
	margin: -10px auto 0 auto;
	padding: 0;
	font: 20px 'PT Serif', serif;
	font-weight: 700;
	color: #443a36;
	text-transform: none;
	text-decoration: none;
	text-align: center;
	line-height: 20px;	
}
.box p{
	width: 200px;
	margin: 10px auto;
	padding: 0;
	font: 14px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #7a726f;
	line-height: 16px;
	text-transform: none;
	text-decoration: none;
	text-align: center;
}
.box_first h1{
	margin: -10px auto 0 auto;
	padding: 0;
	font: 20px 'PT Serif', serif;
	font-weight: 700;
	color: #443a36;
	text-transform: none;
	text-decoration: none;
	text-align: center;
	line-height: 20px;	
}
.box_first p{
	width: 200px;
	margin: 10px auto;
	padding: 0;
	font: 14px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #7a726f;
	line-height: 16px;
	text-transform: none;
	text-decoration: none;
	text-align: center;
}
a.readmore{
	width: 100px;
	height: 34px;
	background: #fff;
	margin: -6px 65px 0 65px;
	padding: 0;
	font: 16px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #40625b;
	line-height: 16px;
	text-align: center;
}	
.hvr-underline-from-center {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  overflow: hidden;
}
.hvr-underline-from-center:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: #40625b;
  height: 3px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-underline-from-center:hover:before, .hvr-underline-from-center:focus:before, .hvr-underline-from-center:active:before {
  left: 0;
  right: 0;
}
.about{
	width: 100%;
	height: 500px;
	background:url(../images/about_bg.png)top center no-repeat;
	margin: 0;
	padding: 80px 0 80px 0;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	text-align: center;
}
.about h1{
	margin: 0 auto;
	padding-bottom: 50px;
	font: 40px 'PT Serif', serif;
	font-weight: 400;
	color: #fff;
	text-transform: none;
	text-decoration: none;
	text-align: center;
	line-height: 20px;	
	background:url(../images/leaf.png)bottom center no-repeat;
}
.about p{
	width: 960px;
	margin: 20px auto;
	padding: 0;
	font: 20px 'Lato', sans-serif;
	font-weight: 300;
	color: #fff;
	line-height: 30px;
	text-transform: none;
	text-decoration: none;
	text-align: center;
}
.specials{
	width: 100%;
	height: 500px;
	background:url(../images/specials_bg.png)top center no-repeat;
	margin: 0;
	padding: 80px 0 80px 0;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	text-align: center;
}
.specials h1{
	width: 434px;
	height: 72px;
	margin: 0 auto;
	padding-top: 20px;
	font: 30px 'PT Serif', serif;
	font-weight: 400;
	color: #fff;
	text-transform: none;
	text-decoration: none;
	text-align: center;
	line-height: 40px;	
	background:url(../images/ribbon.png) center no-repeat;
}
.specials p{
	width: 960px;
	margin: 40px auto;
	padding: 0;
	font: 20px 'Lato', sans-serif;
	font-weight: 300;
	color: #fff;
	line-height: 30px;
	text-transform: none;
	text-decoration: none;
	text-align: center;
}
.contactus{
	width: 100%;
	height: 370px;
	background:url(../images/contact_bg.png)top center no-repeat;
	margin: 0;
	padding: 0px 0 0px 0;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	text-align: center;
}
.contactus h1{
	margin: 0 auto;
	font: 40px 'PT Serif', serif;
	font-weight: 400;
	color: #534742;
	text-transform: none;
	text-decoration: none;
	text-align: center;
	line-height: 20px;	
}
.contact_info{
	width: 450px;
	height: auto;
	background:none;
	margin-top: 40px;
	padding: 0;
	float: left;
}
.contact_info h2{
	margin: 0;
	padding: 0px;
	font: 25px 'PT Serif', serif;
	font-weight: 400;
	color: #40625b;
	text-transform: none;
	text-decoration: none;
	text-align: left;
	line-height: 20px;	
}
.contact_info ul{
	width: 100%;
	list-style: none;
	padding: 0;
	margin:20px 0px 20px 0px;
	display: block;
}
.contact_info ul li.time{
	width: auto;
	height: 30px;
	background: url(../images/time.png) no-repeat;
	font-style: normal;
	font-weight: normal;
	font:20px 'Lato', sans-serif;
	color:#534742;
	font-weight: 400;
	line-height: 30px;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	margin: 0 0 5px 0px;
	padding-left: 40px;
}
.contact_info ul li.location{
	width: auto;
	height: 30px;
	background: url(../images/location.png) no-repeat;
	font-style: normal;
	font-weight: normal;
	font:20px 'Lato', sans-serif;
	color:#534742;
	font-weight: 400;
	line-height: 30px;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	margin: 0 0 5px 0px;
	padding-left: 40px;
}
.contact_info ul li.phone{
	width: auto;
	height: 30px;
	background: url(../images/phone.png) no-repeat;
	font-style: normal;
	font-weight: normal;
	font:20px 'Lato', sans-serif;
	color:#534742;
	font-weight: 400;
	line-height: 30px;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	margin: 0 0 5px 0px;
	padding-left: 40px;
}
.contact_info ul li.fax{
	width: auto;
	height: 30px;
	background: url(../images/fax.png) no-repeat;
	font-style: normal;
	font-weight: normal;
	font:20px 'Lato', sans-serif;
	color:#534742;
	font-weight: 400;
	line-height: 30px;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	margin: 0 0 5px 0px;
	padding-left: 40px;
}
.contact_info ul li.facebook{
	width: auto;
	height: 30px;
	background: url(../images/fb.png) no-repeat;
	font-style: normal;
	font-weight: normal;
	font:20px 'Lato', sans-serif;
	color:#534742;
	font-weight: 400;
	line-height: 30px;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	margin: 0 0 5px 0px;
	padding-left: 40px;
}
.contact_info a{
	font:20px 'Lato', sans-serif;
	color:#534742;
}
.contact_info a:hover{
	font:20px 'Lato', sans-serif;
	color:#40625b;
	text-decoration: underline;
}
.contact_info ul li.cf{
	width: auto;
	height: 30px;
	background: url(../images/cf.png) no-repeat;
	font-style: normal;
	font-weight: normal;
	font:20px 'Lato', sans-serif;
	color:#534742;
	font-weight: 400;
	line-height: 30px;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	margin: 0 0 5px 0px;
	padding-left: 40px;
}
.map_bg{
	width: 500px;
	height: 280px;
	background-color: #fff;
	border: solid 1px #dedede;
	margin-left: 40px;
	margin-top: 60px;
	padding: 0;
	float: right;
}
.map{
	width: 490px;
	height: 270px;
	background:url(../images/map.png) center no-repeat;
	margin: 5px 5px;
	padding: 0;
	position: relative;
}
.pin{
	width: 122px;
	height: 120px;
	background:url(../images/pin.png) center no-repeat;
	/*padding: 70px 210px;*/
	margin: 0;
	position:absolute;
	top: 70px;
	left: 210px;
}
.cards{
	width: 300px;
	height: 40px;
	background:url(../images/cards-v2.png) left no-repeat;
	margin-top: -16px;
}
footer{
	width: auto;
	/*height: 100px;*/
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	background:url(../images/pattern_dark.png) repeat;
}
.copyright{
	margin-top: 40px;
	padding: 0px;
	font: 14px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #848484;
	line-height: 16px;
	text-transform: none;
	text-decoration: none;
	text-align: left;
	float: left;
}
.botnav {clear: both;}
.botnav ul {list-style:none;text-align: center;}
.botnav li {display:inline;background:none;font-size:14px;border-right:1px solid #848484;padding:0 10px;}
.botnav li:last-child {border-right:0;}
.botnav li a:link {color:#848484;}
.botnav li a:visited {color:#848484;}
.botnav li a:hover {color:#fff;}
.botnav li a:active {color:#fff;}
.botnav li a:focus {color:#fff;}
.botnav li ul {display: none;}

a.southfire{
	width: auto;
	height: 34px;
	margin-top: 26px;
	padding:10px 74px 0 0;
	font: 14px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #848484;
	line-height: 16px;
	text-transform: none;
	text-decoration: none;
	text-align: left;
	float: right;
	display: block;
	background:url(../images/southfire.png)right no-repeat;
}
blockquote::before{
	width: 20px;
	height: 20px;
	display: inline-block;
	content: ' ';
	background: url(../images/quotes_open.png) no-repeat top left;
}
blockquote::after{
	width: 20px;
	height: 20px;
	display: inline-block;
	content: ' ';
	background: url(../images/quotes_close.png) no-repeat top left;
}	
.image {
	background: url(../images/image.png) no-repeat;
	width: 200px;
	height: 150px; 
	margin: 16px 20px 20px 0;
	padding: 0;
	float: left;
}

.contact-content {float:left;width:50%;}
.contact-address .business-name {font-weight:bold;}
.contact-form{
	float:right;
	width:48%;
	background-color: #f0f0f0;
	margin-bottom: 40px;
	padding: 40px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
}
.contact-form label{
	font: 18px 'PT Serif', serif;
	color:#7a726f;
	text-decoration: none;
	text-transform: none;
	text-align: left;
	display: block;
}
.contact-form textarea,
.contact-form input[type=text]{
	width: 100%;
	height: 40px; 
	margin-bottom:10px;
	background-color: #fff;
	border: solid 1px #dbdbdb;
	padding: 10px;
	font:16px 'Lato', sans-serif;
	color: #7a726f;
	font-weight: 300;
	line-height: 20px;
	text-transform: none;
	text-decoration: none;
	text-align: left;
	display: block;	
	box-sizing:border-box;
	-moz-box-sizing:border-box;
}
.contact-form textarea{
	height: 140px; 
}
.contact-form input[type=submit]{
	width: 120px;
	height: 40px;
	background: none;
	margin-top: 20px;
	padding-top: 2px;
	display: block;
	border: 2px solid #40625b;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	font: 16px 'PT Serif', serif;
	font-weight: 400;
	font-style: italic;
	color: #40625b;
	text-transform: none;
	text-decoration: none;
	text-align: center;
	float: right;
	cursor: pointer;
}
.contact-form input[type=submit]:hover{
	background: #40625b;
	color: #fff;
}

.hide {display:none;}
.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
.clearfix {
    display: inline-block;
}
* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
