/* CSS Document */
/* 
4th Dimension Concepts SBCore
Developed by Reality Concepts

Contents

-Defaults
-Typography
-Main Elements
-Buttons and Links
-Other Stuff
-Resonsiveness
-Plugins
Green: rgba(70,135,255,0.70)
*/
/*Defaults*/
.notWorking {
	pointer-events: none;
	cursor: default;
}
p:empty {
	display: none
}
body, html {
	margin: 0;
	padding: 0;
}
body {
	font-weight: 600;
}
.group:after {
	display: block;
	clear: both;
	content: '';
}
.wrapper {
	position: relative;
	max-width: 2100px;
	margin: auto;
	overflow: hidden;
}
.wrapper:before {
	display: block;
	height: 98px;
	content: "";
}
.justify {
	text-align: justify;
	text-align-last: justify;
	text-justify: distribute;
}
.justify:after {
	display: inline-block !important;
	width: 100%;
	clear: both;
	content: '';
}
div, p, section, aside, article, span, a, img, input, textarea, hr, h1, h2, h3, h4, h5, h6, table, td, tr, iframe, ul, ol, li {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
img {
	vertical-align: middle;
}
::selection {
	color: #FFF;
	background: #4687FF;
}
::-moz-selection {
	color: #FFF;
	background: #4687FF;
}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: #333333;
	font-weight: 800;
}
::-moz-placeholder { /* Firefox 19+ */
	color: #333333;
	font-weight: 800;
}
:-ms-input-placeholder { /* IE 10+ */
	color: #333333;
	font-weight: 800;
}
:-moz-placeholder { /* Firefox 18- */
	color: #333333;
	font-weight: 800;
}
ul {}
/*END Defaults*/
/*Typography*/
/* latin-ext */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	src: local('Montserrat Light'), local('Montserrat-Light'), url(https://fonts.gstatic.com/s/montserrat/v12/IVeH6A3MiFyaSEiudUMXE0_0lycXMw8PhobHtu2Qgco.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 400;
	src: local('Montserrat Light'), local('Montserrat-Light'), url(https://fonts.gstatic.com/s/montserrat/v12/IVeH6A3MiFyaSEiudUMXE8u2Q0OS-KeTAWjgkS85mDg.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2212, U+2215;
}
/* latin-ext */
@font-face {
	font-family: 'Montserrat';
	font-style: italic;
	font-weight: 400;
	src: local('Montserrat Light Italic'), local('Montserrat-LightItalic'), url(https://fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9FtxLwFvNxpkIoVzlXSkPSYkA.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
	font-family: 'Montserrat';
	font-style: italic;
	font-weight: 400;
	src: local('Montserrat Light Italic'), local('Montserrat-LightItalic'), url(https://fonts.gstatic.com/s/montserrat/v12/zhwB3-BAdyKDf0geWr9Ft04GofcKVZz6wtzX_QUIqsI.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2212, U+2215;
}
/* latin-ext */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 600;
	src: local('Montserrat Regular'), local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v12/gFXtEMCp1m_YzxsBpKl68iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 600;
	src: local('Montserrat Regular'), local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v12/zhcz-_WihjSQC0oHJ9TCYPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2212, U+2215;
}
/* latin-ext */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 700;
	src: local('Montserrat Bold'), local('Montserrat-Bold'), url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fchHJTnCUrjaAm2S9z52xC3Y.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
	font-family: 'Montserrat';
	font-style: normal;
	font-weight: 700;
	src: local('Montserrat Bold'), local('Montserrat-Bold'), url(https://fonts.gstatic.com/s/montserrat/v12/IQHow_FEYlDC4Gzy_m8fcoWiMMZ7xLd792ULpGE4W_Y.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2212, U+2215;
}
h1, h2, h3, h4, h5, h6 {
	color: #555555;
	font-weight: 400;
	margin: 12px auto;
	letter-spacing: 1px;
	text-align: center;
}
h1 {
	font-weight: 400;
	font-size: 32px;
	margin: 0px auto;
}
h3 {
	color: #4687FF;
	font-size: 2.5em;
	text-transform: uppercase;
}
.page-title {
	position: relative;
	color: #FFF;
	padding: 16px;
	font-weight: 700;
	font-size: 2em;
	letter-spacing: 14px;
	text-transform: uppercase;
	width: 100%;
	overflow: visible;
	z-index: 3;
}
.page-title span {
	display: block;
}
.no-heading {
	margin: 220px 0 12px;
}
.index-heading, .title-box-title {
	color: #0646A2;
	font-size: 40px;
}
.overlay-heading {
	position: absolute;
	bottom: 30%;
	padding: 46px 8px;
	width: 100%;
	color: #FFFFFF;
	background: rgba(0, 0, 0, 0.60);
	font-size: 50px;
}
.no-top-margin {
	margin-top: 0;
}
.spaced {
	letter-spacing: 12px;
}
.uppercase {
	text-transform: uppercase;
}
.ie {
	display: none;
}
.white {
	color: #FFF !important;
}
.green {
	color: #4687FF;
}
.align-center {
	text-align: center;
}
ul.align-center {
	list-style-type: none;
	padding: 0;
}
.align-left {
	text-align: left;
}
.align-right {
	text-align: right;
}
.italic {
	font-style: italic;
}
.bold {
	font-weight: 700;
}
.small {
	font-size: 0.8em;
}
.big {
	font-size: 2.5em;
}
.thin {
	font-weight: 300;
}
.button {
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}
.big-font {
	font-size: 1.5em;
	font-weight: 400;
	letter-spacing: 5px;
}
.extra-padding {
	padding: 24px;
}
/*END Typography*/
/* Colors */
.white-bg {
	background-color: #FFF !important;
}
.grey {
	color: #2D2D2C;
}
.grey-bg {
	position: relative;
	background-color: #2D2D2C;
	color: #FFF;
}
.green-bg {
	background-color: rgba(20, 167, 74, 1.0);
}
.trans-grey-bg {
	background-color: rgba(45, 45, 45, 0.70);
}
.trans-green-bg {
	background-color: rgba(70,135,255,0.70);
}
.trans-white-bg {
	background-color: rgba(255, 255, 255, 0.70);
}
/*Main Elements*/
body {
	font-family: 'Montserrat', Arial, Sans-serif;
}
.ckeditorBody {
	background: white;
	font-family: 'Montserrat', Arial, Sans-serif;
}
.container {
	max-width: 1200px;
	margin: auto;
	position: relative;
}
.header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	text-align: center;
	z-index: 1000;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
.header-top {
	float: right;
	width: 79%;
	text-align: right;
}
.header-buttons {
	display: inline-block;
	text-align: right;
	margin: 16px auto;
}
.header-buttons a {
	display: inline-block;
	margin: auto 12px;
	color: #FFF !important;
	text-align: center;
}
.header-buttons a span {
	display: block;
	border-top: solid 3px #FFF;
}
.thumbs-up {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAiCAYAAAGiglBqAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAnBJREFUeNpiYMAH/kMBjBMA48AkmIBsA5hqRiCAqVT4jwRAYgABhGzmfsK2YWgDW4AuChBA2IyYD8T9yApZ0BQkQN1aCGQbIEs04LIYairYt/jAQxABEEDY3BTAQAhgCyomNAUg9zUSNAWbJ1jQBAyh9AUk8Q/Iuvfjch+hIJgANp2QSfBowRPdhSACIICIQv9RgQEDOQA98eFKakzEhD88J+ABjEixao8kLgDLUsiGILnmAJLaB0AliWBDkJ0Ldf1+Ur3OxEAmAOp9j+SADWQbBPU+rDQJZEGywQFZERofHcQjsR1BBEAAEeuN/bBigNxw2I+UEN9TlBCB4DyUTiA1Ec6HMhOBgQjL6wqUZAcHKLeAaJcgKYaVWbAY20CWK7AkNAb0Mg6UeNajiWOzVQBH4VSIXpYgg/NoLhPApRA98PYTrLawGMxCQSL8T1Q6wecCohMbztKNkfEDcgHGQqlXgGABWQGL1hhRQC9TBLCUL+gAVB7XI3ntASM0ewuQ4StQuAiCGAABRhWElDmRwX2yK0IqOwQZvEdPWrRyiAJ6aOAQJ6qop6RaBPn2PlrcK8ISET2jRgBWdGKLClAVgxYyDrR0zH00yxSoXokSmVjf43MIlqZlA6mW7P9POniPzSHI3RASQQIj1OX1SGYdQCvdBOC9AEhNeRCYQBcQmcBBzRN/PMoUUFofsNYqtkY2Wojtp0G0ByDbzULnAhIU0udxVQtM9HQMMHovQDuCjViaZI30Dhn09IlcYE6ga8igdR8wuqT0dowhuOWDCg7AcicLNMviajKhNIRJaYYSCSaAxlGwZbH3/2kPzkOLEqyFJQBZmO2+Lp7VKgAAAABJRU5ErkJggg==);
	background-size: 30px;
	background-position: right center;
	background-repeat: no-repeat;
	padding-right: 50px;
}
.logo {
	display: block;
	width: 20%;
	margin-top: 36px;
	float: left;
	height: auto;
	top: 0;
	left: 0;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	z-index: 500;
	text-align: right;
}
.logo img {
	width: 100%;
	height: auto;
}
.logo:hover {
	opacity: 0.8;
}
.logo:active {
	transform: scale(1.1, 1.1)
}
.header.scrolled {
	opacity: 0.9;
	margin-top: -60px;
}
.header.scrolled:hover {
	opacity: 1;
}
.header.scrolled .logo {
	transform: translateY(32px);
}
.angle {
	position: absolute;
	width: 300%;
	height: 400px;
	transform: rotate(-3deg);
	background: #2D2D2C;
	left: -150%;
	z-index: -1;
}
.angle-bottom {
	bottom: -40px;
}
.angle-top {
	top: -5px;
}
.sy-box {
	position: relative;
	z-index: -1;
}
.content .sy-box {
	z-index: 1;
}
.content {
	padding: 12px;
}
.left, .right {
	width: 49%;
}
.left {
	float: left;
	margin-right: 2%;
}
.right {
	float: right;
}
.page-image {
	position: relative;
	z-index: -1;
}
.page-image img {
	width: 100%;
	height: auto;
}
.white-overlap {
	position: relative;
	background: #FFF;
	z-index: 3;
}
.pt-upper {
	top: -20px;
}
.SECTION_LINKS {
	display: none;
}
.case-study-gallery, .project-gallery-container {
	position: relative;
	float: right;
	width: 29%;
	margin-left: 1%;
}
.case-study-gallery img {
	width: 100%;
	height: auto;
}
.sb-html-caption {
	display: block !important;
	position: relative;
	text-align: center;
	bottom: 0;
	left: 0;
	width: 100%;
	font-size: 1em;
	font-weight: 600;
	color: #FFF;
	padding: 20px;
	background-color: rgba(45, 45, 44, 1.00);
}
.sb-html-caption span {
	display: block;
	font-weight: 700;
}
/*Navigation*/
.mainnav {
	position: relative;
	font-family: 'Montserrat', Arial, Sans-serif;
	width: 79%;
	float: right;
	clear: right;
	border-top: solid 3px #FFF;
}
.mainnav ul {
	list-style-type: none;
	margin: auto;
	padding: 0;
	text-align: center;
}
.mainnav > ul > li {
	display: inline-block;
	position: relative;
}
.mainnav > ul > li a {
	display: block;
	color: #FFF;
	text-transform: uppercase;
	padding: 20px 8px;
	margin: auto;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	transition: all ease-in-out 0.2s;
	-moz-transition: all ease-in-out 0.2s;
	-webkit-transition: all ease-in-out 0.2s;
}
.mainnav > ul > li a:last-child {
	margin-bottom: 0;
}
.mainnav > ul > li.active > a, .dropdown > ul a:hover {
	background: #FFF;
	color: #2D2D2C;
	opacity: 1;
}
.mainnav ul ul {
	position: absolute;
	top: -300%;
	right: 300%;
	min-width: 200px;
	display: block;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	margin: 0;
	list-style-type: none;
	list-style-image: none;
	z-index: 99;
	border-right: solid 3px #FFF;
	border-bottom: solid 3px #FFF;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	-moz-transform: rotate(33deg);
	-webkit-transform: rotate(33deg);
	transform: rotate(33deg);
}
.mainnav ul ul a {
	background: #2D2D2C;
	margin: 12px auto auto;
	padding: 8px;
}
.mainnav ul li.active ul {
	top: 100%;
	right: 0;
	visibility: visible;
	pointer-events: all;
	opacity: 1;
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.footer {
	position: relative;
	text-align: center;
	font-weight: 600;
	color: #2D2D2C;
	background: #FFF;
	z-index: 2;
}
.footer p {
	padding: 12px 0;
	margin: auto;
}
.footer a:hover {
	color: #0646A2;
}
.footer a:active {
	text-decoration: underline;
}
.footer-badges img {
	width: 100%;
	max-width: 150px;
	margin: auto 12px;
}
.f-left {
	float: left;
}
.f-right {
	float: right;
}
.bxslider {
	margin: 0;
}
.reveal-box {
	cursor: pointer;
}
.reveal-box, .reveal-content, .reveal-title {
	width: 100%;
	display: block;
	text-align: center;
}
.reveal-content {
	position: relative;
	font-weight: 400;
	font-size: 1em;
	padding: 20px;
	color: #FFF;
	background-color: #8693A3;
	max-width: 600px;
	margin: auto;
	overflow: hidden;
	pointer-events: none;
	height: 100px;
}
.reveal-content:after {
	display: block;
	position: absolute;
	content: "Click to Read More";
	padding-top: 70px;
	vertical-align: bottom;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1e5799+0,8693a3+87&0+0,1+100 */
	background: -moz-linear-gradient(top, rgba(30, 87, 153, 0) 0%, rgba(134, 147, 163, 0.87) 87%, rgba(134, 147, 163, 1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(30, 87, 153, 0) 0%, rgba(134, 147, 163, 0.87) 87%, rgba(134, 147, 163, 1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(30, 87, 153, 0) 0%, rgba(134, 147, 163, 0.87) 87%, rgba(134, 147, 163, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#001e5799', endColorstr='#8693a3', GradientType=0); /* IE6-9 */
}
.reveal-switch:checked ~ .reveal-content {
	height: auto;
}
.reveal-switch:checked ~ .reveal-content:after {
	display: none;
}
.two-col-list {
	max-width: 540px;
	margin: auto auto 24px;
	-moz-column-count: 2;
	-moz-column-width: 50%;
	-webkit-column-count: 2;
	-webkit-column-width: 50%;
	column-count: 2;
	column-width: 50%;
}
.owner-bio .page-title {
	font-size: 24px;
	margin: 0;
	padding: 6px;
}
.owner-bio .green-border {
	position: relative;
	max-width: 560px;
	padding: 24px;
	margin: auto;
	z-index: 2;
}
.owner-bio img {
	margin-top: -30px;
}
.owner-bio h4 {
	text-transform: uppercase;
	font-size: 20px;
	color: #333;
	margin: 0;
}
.distinction-box p, .distinction-box h3 {
	max-width: 620px;
	margin: 18px auto;
}
.team-introduction {
	margin-top: 120px;
	border-top: solid 6px #4687FF;
	padding-bottom: 60px;
}
.team-introduction img {
	width: 100%;
}
.team-introduction .trans-grey-bg {
	position: absolute;
	max-width: 720px;
	margin: auto;
	left: 0;
	right: 0;
	top: -100px;
	z-index: 2;
}
.team-introduction .button {
	position: absolute;
	bottom: -30px;
	left: 0;
	right: 0;
	max-width: 540px;
}
.service-area-icons {
	list-style-type: none;
	padding: 0;
	max-width: 460px;
	margin: auto;
	text-align: center;
}
.service-area-icons li {
	display: inline-block;
	vertical-align: top;
	margin: 12px;
}
.service-area-icons li span {
	display: block;
	color: #FFF;
	width: 120px;
	font-weight: 600;
	font-size: 20px;
	text-transform: uppercase;
}
.service-area-icons li span:first-child {
	margin: auto;
	overflow: hidden;
	text-indent: -9999px;
	height: 60px;
	width: 60px;
	background-image: url(../elements/images/location-icon.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
.green-border {
	border: solid 6px #4687FF;
}
.team-thumb, .case-study-thumb {
	display: inline-block;
	vertical-align: top;
	width: 30%;
	margin: 1%;
	text-align: center;
}
.case-study-title {
	margin: 0;
	font-size: 20px;
	padding: 12px;
	border: solid 3px #13A749;
	border-top: none;
	color: #2D2D2C;
	min-height: 80px;
}
.team-thumb img {
	width: 100%;
	height: auto;
}
.team-thumb .green-border {
	position: relative;
	padding: 8px;
	width: 90%;
	margin: -20px auto auto;
	z-index: 2;
	min-height: 170px;
}
.team-thumb .page-title {
	font-size: 20px;
	font-weight: 600;
	padding: 0;
	min-height: 52px;
}
.team-thumb h4 {
	text-transform: uppercase;
	font-size: 1.2em;
}
.case-study {
	margin-top: 150px;
}
.background-image {
	display: block;
	width: 100%;
	height: 250px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	text-indent: -9999px;
	overflow: hidden;
}
.case-study-thumb .background-image {
	background-image: url(../elements/images/coming-soon.jpg);
}
.testimonial {
	background: #FFF;
	padding: 12px;
	border-bottom: 1px solid #DADADA;
}
.testimonial:nth-child(even) {
	background: #F6F6F6;
}
.testimonial img {
	width: 100%;
	max-width: 250px;
	height: auto;
	float: left;
	margin-right: 20px;
}
.testimonial p:last-child {
	text-align: right;
}
.cs-thumb {
	display: inline-block;
	width: 320px;
	margin: 24px;
	color: #FFF;
	background-color: #2D2D2C;
	text-decoration: none;
	vertical-align: top;
	text-align: center;
}
.cs-image-container {
	display: block;
	width: 320px;
	height: 250px;
}
.cs-image-container img {
	object-fit: cover;
	object-position: center;
	width: 320px;
	height: 250px;
	border: solid 8px #2D2D2C;
}
.cs-title {
	display: block;
	padding: 18px 4px;
	color: #FFF;
	min-height: 76px;
}
.service-area-badges {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.service-area-badges div {
	max-width: 320px;
	width: 100%;
	padding: 12px;
}
.service-area-badges img {
	width: 100%;
}
.hide-field[data-content=""], .hide-field[data-content="NO"] {
	display: none;
}
.one-third {
	width: 32%;
}
.half {
	width: 49%;
}
.two-thirds {
	width: 65%;
}
.full-width {
	width: 100%;
}
/*END Main Elements*/
.quality-solutions-badge {
	width: 100%;
	max-width: 300px;
	height: auto;
	padding: 12px;
}
.bg-box {
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
}
.fixed-bg {
	background-attachment: fixed;
}
.upgrade-box h2, .upgrade-box h3 {
	margin: 0 auto;
	color: #FFF;
	font-size: 2em;
	text-transform: uppercase;
	font-style: normal;
	font-weight: 800;
	letter-spacing: 3px;
}
.white-border {
	border: solid 6px #FFF;
	padding: 0 30px 0 30px;
	color: #FFF;
	text-align: center;
}
.upgrade-box .trans-grey-bg {
	padding: 10px 30px 93px 30px;
}
.learn-more {
	text-transform: uppercase;
	font-weight: 800;
	font-size: 32px;
	color: #FFF !important;
}
.learn-more b {
	text-indent: -9999px;
	font-size: 0px;
	height: 6px;
	display: block;
	border-top: solid 6px #4687FF;
	width: 400%;
	margin: 2px auto 2px -200%;
}
.white-wedge {
	position: relative;
	background-image: url(../elements/images/white-wedge-bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 2500px;
	height: 63px;
	margin-top: -63px;
	z-index: 100;
}
.hexagon {
	display: inline-block;
	width: 250px;
}
.hexagon span {
	text-decoration: none;
	font-size: 18px;
	text-transform: uppercase;
	font-weight: 700;
	display: block;
	color: #4687FF;
	letter-spacing: 7px;
}
.hexagon svg {
	width: 100%;
	height: auto;
}
.hexagon-row h3 {
	color: #4687FF;
}
.badge {
	background-image: url(../elements/images/badges-spritesheet.png);
	background-size: 250px;
	background-repeat: no-repeat;
	width: 250px;
	height: 250px;
	text-indent: -9999px;
	overflow: hidden;
	display: inline-block;
	vertical-align: top;
	margin: 24px;
}
.quality-badge {
	background-position: 0 0;
}
.established-badge {
	background-position: 0 -250px;
}
.colorado-badge {
	background-position: 0 -500px;
}
.customer-service-badge {
	background-position: 0 -750px;
}
.overflow-box {
	position: relative;
	z-index: 300;
	overflow: visible;
	margin-top: 136px;
}
.overflow-content {
	position: relative;
	margin-bottom: 50px;
	margin-top: -120px;
}
.overflow-content h2, .overflow-content h3 {
	color: #FFF;
	font-size: 2.5em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 10px;
	padding: 12px 0;
}
.overflow-content h3 {
	letter-spacing: 1px;
	font-size: 2.3em;
}
.overflow-content p {
	color: #FFF;
}
/*Buttons and Links*/
.button, .button:visited {
	display: inline-block;
	margin: auto;
	padding: 8px;
	background: none;
	color: #FFF !important;
	border: solid 3px #FFF;
	font-weight: 700;
	font-size: 1.8em;
	text-decoration: none;
	text-transform: uppercase;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	cursor: pointer;
	text-align: center;
	letter-spacing: 12px;
}
.arrow-button, .arrow-button:visited {
	padding-right: 62px;
	border: none;
	background-position: right center;
	background-repeat: no-repeat;
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAltJREFUeNrsWd1twyAQxlUHYIBI5SHvzQgewdmATFBGyAYegW7QbmBnAuch78kAkdINKESgUoJtzI+TVnzSSVZiMB93H9wBABkZGRkZd0CRsG/IbWX5/Yvb/tEnpuRGuR25sRFruBFu6JEIYMfB9xm9NyEROp0xKEGolt6BPW2wHPzFaFv3tEkKYgmV0kNHW4NQ16OtJKDahy8eBGyEaqPP1ZwkmsihUGneSUqGGAK1gjEGuW25EU/d6WRQCmHrngADRAj7AU35LR902izBESIl+w0a6H0cc59QnToJmw8eRyDTuE6eK44+bo5ABsX0SjXVG5HJfGj7S5Tl9ujbQSAZfSJRjLCqQzoJJKOWY+LyoYbNDzpR9L3vPxkp+OxZsyOZnSZ+K5615zW3N/3P8/kMD4fDNU0oy7JNRAZxMlVRFJ+OOZl3oaSEdu+CbXAcT3+kJEdamTwcWkLsIzpJ6ZX1SGgpIvtHFbvAxkEfL2OdDIpdoG3bK8HFYnFaLpenyKcqgsS7Yzasr15eGF3DHfYoUZ90xh6CJ+hDCb2KUUx5ZaCBJMx0HoauGKqj7cwk9BSJxhAkneqVSCRISOY95pXakUgoCagli1HL3dpVdJZMFwcsMsHpu22GOpejGqNmxwGh7Ja6RziqGSIjkkEUSIKChNDJxJwxaIRTB2aASaYJjGNi9EfBjEDGDDJ5UFBNaE/A7XWEl4dj3FhhcHsdoG6lVG7UyoEjmQCuLPoS72y4ncAdASUh867E9ZIneLMrEoWcCK9X+ayyXv3ucCef26FiKSMjI+P/4luAAQCpN4hEDIVRKAAAAABJRU5ErkJggg==);
}
.green-button, .green-button:visited {
	color: #000 !important;
	border: solid 3px #4687FF !important;
}
.sort-buttons {
	text-align: center;
}
.sort-buttons .button {
	font-size: 24px;
	letter-spacing: 6px;
}
.button span {
	display: block;
	font-weight: 300;
	font-size: 0.8em;
	letter-spacing: 1px;
}
.button:hover {
	opacity: 0.7;
}
.button:active {
	transform: scale(0.9, 0.9);
}
.social {
	display: inline-block;
	list-style-type: none;
	margin: 0;
	padding: 0;
	text-align: right;
}
.footer .social a {
	box-sizing: content-box;
	border-width: 1px;
	border-style: solid;
}
.social li {
	display: inline-block;
}
.social li a {
	display: block;
	height: 30px;
	width: 30px;
	margin: 4px;
	text-indent: -9999px;
	text-align: left;
	overflow: hidden;
	transition: all ease-in-out 0.1s;
	-moz-transition: all ease-in-out 0.1s;
	-webkit-transition: all ease-in-out 0.1s;
	background-image: url(../elements/images/social-spritesheet.png);
	background-size: 30px;
	background-repeat: no-repeat;
}
.social li a:active {
	-webkit-box-shadow: inset 0px 0px 5px 1px rgba(0, 0, 0, 0.75);
	-moz-box-shadow: inset 0px 0px 5px 1px rgba(0, 0, 0, 0.75);
	box-shadow: inset 0px 0px 5px 1px rgba(0, 0, 0, 0.75);
}
.googleplus {
	background-position: 0 0;
}
.twitter {
	background-position: 0 -30px;
}
.facebook {
	background-position: 0 -60px;
}
.pinterest {
	background-position: 0 -90px;
}
.linkedin {
	background-position: 0 -120px;
}
.instagram {
	background-position: 0 -150px;
}
.youtube {
	background-position: 0 -180px;
}
.social li a:hover {
	opacity: 1;
}
.googleplus:hover, .footer .googleplus {
	background-color: #DD4B39;
	border-color: #DD4B39;
}
.twitter:hover, .footer .twitter {
	background-color: #1DA1F2;
	border-color: #1DA1F2;
}
.facebook:hover, .footer .facebook {
	background-color: #415E9B;
	border-color: #415E9B;
}
.pinterest:hover, .footer .pinterest {
	background-color: #BD081C;
	border-color: #BD081C;
}
.linkedin:hover, .footer .linkedin {
	background-color: #0073B1;
	border-color: #0073B1;
}
.linkedin:hover, .footer .linkedin {
	background-color: #0073B1;
	border-color: #0073B1;
}
.instagram:hover, .footer .instagram {
	background-color: #DF3A66;
	border-color: #DF3A66;
}
.youtube:hover, .footer .youtube {
	background-color: #FF0000;
	border-color: #FF0000;
}
.lowernav {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.footer .social {
	text-align: center;
}
a, a:visited {
	color: #4687FF;
	text-decoration: none;
}
.container a:hover {
	opacity: 0.7;
}
input, textarea, select {
	font-family: 'Montserrat', Arial, Sans-serif;
	font-size: 1em;
	margin-bottom: 12px;
	padding: 16px 6px;
	resize: none;
	background-color: rgba(255, 255, 255, 1.00);
	color: #333333;
	border: solid 1px #999999;
	width: 100%;
}
textarea {
	height: 130px;
}
input:focus, textarea:focus {
	background-color: rgba(70,135,255,0.70);
	color: #FFF;
}
#send_button {
	max-width: 360px;
	margin: auto;
	display: block;
	padding: 16px;
	background: none;
	cursor: pointer;
	text-transform: uppercase;
	text-align: center;
}
.radio, .agree {
	display: inline-block;
	width: auto;
	float: none;
	margin-left: 0;
	margin-bottom: 6px;
	font-size: 0.9em;
	cursor: pointer;
}
label {
	display: block;
	font-size: 1.2em;
	margin: 8px auto;
}
.yoink {
	position: absolute;
	left: -9999px;
	height: 1px;
	width: 1px;
}
.sidebar-form .page-title {
	font-size: 1.3em;
	padding: 8px;
}
.sidebar-form input, .sidebar-form textarea, .sidebar-form select {
	font-size: 0.7em;
	padding: 5px;
}
.sidebar-form label {
	font-size: 0.9em;
}
.page-title a {
	color: #FFF;
}
/*END Buttons and Links*/
/*Other Stuff*/
.blog-search strong, .blog-roll strong, .blog-categories strong {
	font-size: 1.2em;
}
.blog-search input {
	width: 100%;
	max-width: none;
	height: auto;
}
.blog-roll ul, .blog-categories ul {
	list-style-type: none;
	padding: 0;
}
.blog-roll li a {
	display: block;
	background: #FFFFFF;
	color: #176588 !important;
	text-align: center;
	padding: 6px;
	margin-bottom: 12px;
}
.blog-categories li {
	display: inline;
}
.blog-categories li:after {
	display: inline;
	content: ", ";
}
.blog-categories li:last-child:after {
	content: "";
}
.blog-first-image {
	text-align: center;
	display: block;
}
.blog-first-image img {
	max-width: 100%;
	height: auto;
}
/*END Other Stuff*/
/*Responsiveness*/
.hidenav-label {
	display: none;
}
@media (max-width:1000px) {
	.mainnav > ul > li a {
		font-size: 14px;
		padding: 20px 4px
	}
}
@media (max-width:768px) {
	.mainnav, .angle {
		display: none;
	}
	.header {
		background: #2D2D2C;
	}
	.pt-upper {
		top: 0;
	}
	.hidenav-label {
		position: relative;
		display: block;
		margin: 0 auto;
		text-align: center;
		font-weight: bold;
		color: #FFF;
		font-size: 24px;
		padding-bottom: 12px;
		cursor: pointer;
		clear: both;
	}
	#hidenav:checked ~ .mainnav {
		display: block;
	}
	.burger {
		position: relative;
		width: 30px;
		height: 10px;
		margin-right: 12px;
		overflow: visible;
		display: inline-block;
	}
	.burger span, .burger span:before, .burger span:after {
		cursor: pointer;
		border-radius: 1px;
		height: 3px;
		width: 30px;
		background: #FFF;
		position: absolute;
		display: block;
		content: '';
		-moz-transition: all 0.2s;
		-webkit-transition: all 0.2s;
		transition: all 0.2s;
	}
	.burger span:before {
		top: -10px;
	}
	.burger span:after {
		bottom: -10px;
	}
	#hidenav:checked ~ label .burger span {
		background-color: transparent;
	}
	#hidenav:checked ~ label .burger span:before, #hidenav:checked ~ label .burger span:after {
		top: 0;
	}
	#hidenav:checked ~ label .burger span:before {
		transform: rotate(45deg);
	}
	#hidenav:checked ~ label .burger span:after {
		transform: rotate(-45deg);
	}
	.page-title, .overflow-content h2, .overflow-content h3 {
		font-size: 18px;
	}
	.logo {
		float: none;
		margin: auto;
		width: 100%;
		max-width: 240px;
		position: relative;
		text-align: center;
	}
	.header .social {
		display: none;
	}
	.header {
		position: relative;
	}
	.header-top {
		text-align: center;
	}
	.left, .right, .title-box-content p, .mainnav, .widget, .header-top, .team-thumb, .case-study-gallery {
		float: none;
		width: 100% !important;
		max-width: 100%;
		margin: auto;
	}
	.team-introduction .button {
		position: relative;
		bottom: auto;
		max-width: 540px;
	}
	.team-introduction {
		margin-top: 0;
		padding-bottom: 0;
	}
	.team-introduction .trans-grey-bg {
		position: relative;
		top: auto;
	}
	.thumbs-up {
		padding: 0;
		background-image: none;
	}
	.award-image {
		float: none;
		display: block;
		text-align: center;
		margin: auto;
		max-width: 300px;
		width: 100%;
	}
	.award-info {
		width: 100%;
		float: none;
		text-align: center;
		padding: 20px 0;
	}
	.award-name {
		font-size: 32px;
	}
	.header-buttons {
		text-align: center;
	}
	.header-buttons .button {
		margin: auto;
	}
	.widget {
		margin-bottom: 24px;
	}
	.sb-html-caption {
		font-size: 0.8em;
		bottom: 0;
		left: 0;
		text-align: left;
	}
	.case-study {
		margin-top: 0;
	}
	.row-5 .row {
		width: 100%;
		max-width: 250px;
		margin: auto;
		float: none;
	}
	.wrapper:before, .image-hover-overlay > span span {
		display: none;
	}
	.mainnav > ul > li a {
		margin: 0px;
	}
	.services {
		padding-left: 0px;
	}
	.services .bg {
		position: relative;
		margin: auto;
	}
	.title-box-content.left, .title-box-content.right {
		display: block;
	}
	.services li span {
		font-size: 16px;
	}
	.icon-content-image {
		padding-top: 120px;
		background-position: top center;
	}
	.icon-content p {
		border-left: none;
		border-top: solid 2px #FFFFFF;
	}
	.icon-content h3 {
		margin-bottom: 12px;
	}
	.numbers {
		float: none;
		margin: auto;
		display: block;
		text-align: center;
	}
	.numbers span {
		padding: 6px;
	}
	.numbers i {
		margin: auto;
	}
	.mainnav ul {
		margin: auto 0;
		float: none;
		text-align: center;
	}
	.mainnav > ul > li {
		display: block;
		position: relative;
	}
	.mainnav > ul > li a {
		font-size: 14px;
	}
	.dropdown > a:after {
		content: ' >>';
		display: inline;
	}
	.mainnav ul li.active ul {
		display: block;
		position: relative;
		top: 0;
	}
	.call {
		float: none;
		width: 100%;
		text-align: center;
	}
}
@media (max-width:520px) {
	.page-image, .f-left, .f-right {
		float: none;
		display: block;
		text-align: center;
		margin: auto;
	}
	.row-3 .row {
		width: 100%;
		float: none;
		margin-right: auto;
		margin-bottom: 20px;
	}
	.image-hover-overlay > span span {
		display: block;
	}
}
/*END Responsiveness*/
/*Plugins*/
#bbb-badge, #bbb-badge-popup {
	left: 0 !important;
	right: auto !important;
}
/* Responsive YouTube */
#video {
	cursor: pointer;
}
#video:hover {
	opacity: 0.7;
}
.video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	margin-top: 20px;
	vertical-align: middle;
}
.video-container iframe, .video-container object, .video-container embed, .video-container img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.location-map {
	width: 100%;
	height: 200px;
}
/*END Plugins*/
.your-mother {
	width: 9999px;
	overflow: visible;
}