.social-networks,
.footer-nav ul,
.clients {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer-bottom {
	padding-left: 9999px;
	padding-right: 9999px;
	margin-left: -9999px;
	margin-right: -9999px;
}

* {
	font-size: 100.01%;
}

html {
	font-size: 62.5%;
	height: 100%;
}

body {
	height: 100%;
	font-size: 1.6em;
	min-width: 320px;
}

#wrapper {
	overflow: hidden;
	height: 100%;
	width: 100%;
	display: table;
	table-layout: fixed;
}

.w1 {
	display: table-row;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0 0 16px;
}

.bg-ch-green {
	background-color: #28b04c;
}

.bg-green {
	background-color: #64ba46;
}

.bg-apple {
	background-color: #43b448;
}

.bg-yellow-green {
	background-color: #8dc63f;
}

.bg-black-haze {
	background-color: #f6f6f6;
}

.bg-green-gradient {
	background: #1fae4a url(../images/bg-green-gradient.jpg) 0 50%;
	background-size: cover;
}

.icon-facebook {
	overflow: hidden;
	text-indent: -9999px;
	background: url(../images/icon-facebook.png) no-repeat;
	display: inline-block;
	vertical-align: top;
	width: 31px;
	height: 32px;
}

.btn {
	border-radius: 0;
	font-size: 18px;
	line-height: 20px;
	white-space: normal;
}

/* header styles */

#header {
	background: #fff;
	background: rgba(255, 255, 255, .95);
	padding-top: 17px;

}

/* navbar header styles */

/* logo styles */

.logo img {
	max-width: 100%;
	height: auto;
}

/* navbar default custom styles */

.navbar-default {
	border: none;
}

/* topbar styles */

.topbar {
	position: absolute;
	top: 5px;
	left: 30%;
	right: -2px;
	text-align: right;
}

.topbar .tel-link {
	font-size: 26px;
	line-height: 30px;
	font-weight: 300;
	color: #50b748;
}

.topbar .tel-link:hover {
	color: #50b748;
}

/* main navigation styles */

#nav {
	padding-top: 41px;
	padding-right: 0;
}

/* navbar nav styles */

.navbar-nav li {
	padding: 10px 10px 0;
}

.navbar-nav li a {
	font-size: 14px;
	font-weight: 500;
	line-height: 16px;
	padding: 0 2px 26px;
	border-bottom: 3px solid transparent;
}

.navbar-nav li.active > a,
.navbar-nav li.open > a,
.navbar-nav li a:hover {
	border-bottom-color: #50b748;
}

/* navbar toggle button styles */

.navbar-toggle {
	margin: 10px;
}

/* social networks styles */

.social-networks {
	display: inline-block;
	vertical-align: top;
	padding: 0 8px;
}

.social-networks li {
	display: inline-block;
	vertical-align: top;
	margin: 0 5px;
}

/* too section styles */

.top-section {
	position: relative;
	overflow: hidden;
}

/* hero banner styles */

.hero-banner .image-holder {
	position: relative;
	left: 50%;
	width: 100%;
	height: auto;
}

.hero-banner .image-holder img {
	position: relative;
	width: 100%;
	left: -50%;
	height: auto;
}

/* features section styles */

.features-section {
	padding: 34px 0 21px;
}

/* widget styles */

.widget {
	padding: 34px 15px 29px;
	color: #fff;
	font-size: 16px;
	line-height: 20px;
	position: relative;
	height: 229px;
	margin-bottom: 18px;
	display: table;
	table-layout: fixed;
	width: 100%;
}

.widget .title {
	color: #fff;
	display: block;
	font-size: 20px;
	line-height: 26px;
	font-weight: 500;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 18px;
}

.widget .title:after {
	content: "";
	position: absolute;
	left: 44px;
	right: 44px;
	bottom: 0;
	height: 1px;
	background: #fff;
}

.widget p > a {
	color: #444;
}

.widget p > a:hover {
	color: black;
	text-decoration: none;
}

.widget address {
	line-height: 20px;
	margin-bottom: 10px;
}

.widget p {
	margin: 0 0 10px;
}

.widget .btn {
	width: 91%;
}

.widget .tel-link {
	color: #fff;
}

.widget .tel-link:hover {
	color: #fff;
}

.widget .tfoot {
	display: table-footer-group;
	height: 1%;
}

/* two columns styles */

#two-columns {
	padding: 36px 0 19px;
}

.inner #two-columns {
	padding: 29px 0 63px;
}

/* main article styles */

.main-article {
	padding: 0 6.5% 1px;
}

.main-article p {
	margin: 0 0 24px;
}

.inner .main-article {
	padding: 0 5.7% 1px;
}

/* sidebar styles */

#sidebar {
	padding-top: 1px;
	padding-bottom: 20px;
}

.inner #sidebar {
	margin-top: -56px;
}

/* inner page styles */

/* page heading styles */

.page-heading {
	padding: 13px 0;
}

.page-heading .page-title {
	margin: 0;
	padding: 0 28% 0 4.3%;
}

/* facebook widget styles */

.facebook-widget {
	margin-bottom: 20px;
}

.facebook-widget img {
	max-width: 100%;
	height: auto;
}

/* footer styles */

#footer {
	display: table-footer-group;
	height: 1%;
}

/* info banner styles */

.info-banner {
	padding: 33px 0 27px;
	margin-bottom: 37px;
}

.info-banner .title {
	display: block;
	font-weight: 300;
	font-size: 40px;
	line-height: 50px;
	color: #fff;
	padding: 0 5%;
}

.info-banner a {
	color: #444;
}

.info-banner a:hover {
	color: black;
	text-decoration: none;
}

/* footer top styles */

.footer-top {
	padding-bottom: 12px;
}

/* footer nav styles */

.footer-nav {
	display: inline-block;
	vertical-align: top;
	width: 22%;
	padding: 0 10px 20px 0;
}

.footer-nav.large {
	width: 36%;
}

.footer-nav li {
	font-size: 18px;
	line-height: 28px;
}

.footer-nav li li {
	font-size: 13px;
}

.footer-nav li li a {
	color: #5f5f5f;
}

.footer-nav li li a:hover {
	color: #131313;
	text-decoration: none;
}

/* contact info styles */

.contact-info {
	display: inline-block;
	vertical-align: top;
	width: 39%;
	padding: 1px 0;
}

.contact-info h2 {
	text-transform: capitalize;
	margin-bottom: 5px;
}

.contact-info address {
	font-size: 13px;
	line-height: 28px;
	color: #5f5f5f;
	margin: 0 0 7px;
}

.contact-info .tel-link {
	color: #5f5f5f;
}

.contact-info .tel-link:hover {
	color: #5f5f5f;
}

.contact-info .email {
	display: block;
	line-height: 14px;
	padding: 7px 0;
}

.find-in-fb {
	overflow: hidden;
	text-indent: -9999px;
	background: url(../images/icon-fb-large.png) no-repeat;
	width: 116px;
	height: 31px;
	display: inline-block;
	vertical-align: top;
}

.find-in-fb:hover {
	opacity: .85;
	filter: alpha(opacity=85);
}

/* clients styles */

.clients {
	padding: 1px 10px 1px 0;
	display: table;
	table-layout: fixed;
	width: 100%;
}

.clients li {
	display: table-cell;
	vertical-align: middle;
	padding: 0 5px 10px;
}

.clients li a:hover {
	opacity: .85;
	filter: alpha(opacity=85);
}

.clients li img {
	max-width: 100%;
	height: auto;
}

/* footer bottom styles */

.footer-bottom {
	border-top: 1px solid #dbdbdb;
}

/* copyright styles */

.copyright {
	padding: 24px 10px;
	font-size: 14px;
	line-height: 18px;
	color: #b0b0b0;
}

.copyright span {
	display: inline-block;
	vertical-align: top;
	margin: 0 8px;
}

.copyright a {
	text-decoration: underline;
	color: #b0b0b0;
}

.copyright a:hover {
	color: #636363;
	text-decoration: none;
}

@media only screen and (min-width: 1025px) {
	.tel-link {
		cursor: default;
		pointer-events: none;
	}
}

@media only screen and (max-width: 1199px) {
	#header {
		padding-top: 10px;
		position: relative;
	}

	.logo {
		width: 230px;
	}

	.topbar {
		top: 0;
	}

	.navbar-nav li {
		padding-left: 8px;
		padding-right: 8px;
	}

	.navbar-nav li a {
		font-size: 13px;
		padding: 0 0 20px;
	}

	#two-columns {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.inner #two-columns {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.main-article {
		padding: 0 0 1px;
	}

	.inner .main-article {
		padding: 0 0 1px;
	}

	.page-heading .page-title {
		padding-left: 0;
	}

	.info-banner .title {
		font-size: 36px;
		line-height: 46px;
	}

	.contact-info .email {
		font-size: 12px;
	}
}

@media only screen and (max-width: 1024px) {
	.topbar .tel-link {
		color: #50b748;
	}

	.topbar .tel-link:hover {
		color: #20491d;
		text-decoration: none;
	}

	.widget .tel-link {
		color: #fff;
	}

	.widget .tel-link:hover {
		color: #ccc;
	}

	.contact-info .tel-link {
		color: #5f5f5f;
	}

	.contact-info .tel-link:hover {
		color: #131313;
		text-decoration: none;
	}
}

@media only screen and (max-width: 991px) {
	.logo {
		width: 200px;
	}

	.topbar {
		top: 10px;
	}

	#nav {
		clear: both;
		width: 100%;
		padding: 10px 0 0;
		margin: 0;
	}

	.info-banner {
		padding: 24px 0;
	}

	.info-banner .title {
		font-size: 28px;
		line-height: 36px;
	}

	.clients {
		padding-top: 30px;
	}

	.clients li {
		text-align: center;
	}
}

@media only screen and (max-width: 767px) {
	.navbar-header {
		padding-bottom: 10px;
	}

	.navbar-default .navbar-nav li.active > a,
	.navbar-default .navbar-nav li.active > a:hover,
	.navbar-default .navbar-nav li.open > a,
	.navbar-default .navbar-nav li a:hover {
		background: #64ba46;
		color: #fff;
	}

	.topbar {
		position: static;
		left: 0;
		right: 0;
		text-align: left;
		padding: 0 0 20px;
	}

	#nav {
		padding: 0;
		margin: 0 -9px;
		width: auto;
	}

	.navbar-nav {
		margin: 0 0 10px;
		padding-top: 15px;
	}

	.navbar-nav li {
		padding: 0;
	}

	.navbar-nav li a {
		padding: 8px 20px;
		border: none;
	}

	#two-columns {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.inner #two-columns {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.inner #sidebar {
		margin-top: 0;
	}

	.facebook-widget {
		text-align: center;
	}

	.info-banner .title {
		font-size: 20px;
		line-height: 30px;
	}

	.footer-nav {
		display: block;
		width: 100% !important;
	}

	.contact-info {
		display: block;
		width: 100%;
		padding: 0;
	}

	.copyright {
		padding: 15px 10px;
		font-size: 13px;
	}
}


textarea {resize: none;}

/* Flexible iFrame */
.Flexible-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
}

.Flexible-container iframe,   
.Flexible-container object,  
.Flexible-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.image-border 	{margin-bottom:20px; border: 1px solid #dfdfdf; padding:2px;}
.text-center .img-responsive {margin-left:auto; margin-right:auto;}

.caption {font-size:12px;}