/*
Theme Name: Transpac by FDGweb
Theme URI: http://www.fdgweb.com/
Author: FDGweb
Author URI: http://www.fdgweb.com/
Description: A custom client theme designed by FDGweb.
Version: 3.0
*/

/* =Basic structure
-------------------------------------------------------------- */

html {
	font-size: 87.5%;
	overflow-y: scroll;
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

html, body {
	height: 100%;
}

body {
	font-size: 14px;
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	text-rendering: optimizeLegibility;
	color: #444;
	line-height: 1;
}

a, .entry-content a:visited,
.comment-content a:visited {
	outline: none;
	color: #21759b;
}

a:hover {
	color: #0f3647;
}

body .site {
	padding: 20px 0 70px;
}

#site-container {
	min-height: 100%;
	position: relative;
}

.site-content {
	margin: 24px 0 0;
}

.widget-area {
	margin: 24px 0 0;
}

#header-spacer {
	position: relative;
	width: 100%;
	height: 117px;
}

.home #header-spacer{
	height: auto;
}

#header-container {
	position: absolute;
	width: 100%;
	height: 117px;
	z-index: 1000;
	top: 0;
	left: 0;
}

#header-container.hide {
	top: -145px;
	-webkit-transition: 0.2s all;
	-moz-transition: 0.2s all;
	-ms-transition: 0.2s all;
	transition: 0.2s all;
}

#header-container.scrolled {
	position: fixed;
	top: -145px;
	height: 117px;
	box-shadow: 0 0 50px rgba(0,0,0,0.2);
	background: #FFF;
}

body.header-persist #header-container {
	position: fixed;
	-webkit-transition: 0s all;
	-moz-transition: 0s all;
	-ms-transition: 0s all;
	transition: 0s all;
}

body.header-persist #header-container.scrolled {
	top: 0;
}

#header-container.show {
	top: 0px;
	-webkit-transition: 0.2s all;
	-moz-transition: 0.2s all;
	-ms-transition: 0.2s all;
	transition: 0.2s all;
}

.site-header {
	padding: 35px 0 15px 0px;
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	font-size: 0;
}

a.site-title {
	display: inline-block;
	vertical-align: middle;
	text-decoration: none;
	font-size: 34px;
	letter-spacing: -0.04em;
	color: #555;
}

.site-header .site-title img {
	display: block;
	max-width: 270px;
	width: 100%;
}

.upper-header {
    position: absolute;
    font-size: 12px;
    display: block;
    color: rgba(255, 255, 255, 0.85);
    right: 0;
    top: 52px;
    font-family: Source Sans Pro, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.safari .upper-header {
	font-weight: normal;
}

.main-navigation li {
	margin-top: 24px;
	font-size: 12px;
	line-height: 1.42857143;
}

.main-navigation a {
	color: #5e5e5e;
}

.main-navigation a:hover {
	color: #21759b;
}

.main-navigation ul.nav-menu,
.main-navigation div.nav-menu > ul {
	display: none;
}

.main-navigation ul.nav-menu.toggled-on,
.menu-toggle {
	display: inline-block;
}

#mobile-nav-toggle {
	display: none;
	position: relative;
	top: 0;
	right: 0;
	width: 60px;
	height: 50px;
	cursor: pointer;
	z-index: 200;
	color: #FFF;
	font-size: 22px;
	line-height: 56px;
	text-align: center;
	text-transform: uppercase;
}

.home #mobile-nav-toggle div {
	background: #FFF;
	box-shadow: 0 10px 0 #FFF, 0 20px 0 #FFF;
	width: 34px;
	height: 4px;
	position: absolute;
	top: 14px;
	left: 13px;
	border-radius: 1px;
	-webkit-transition: 0.5s all;
	-moz-transition: 0.5s all;
	-ms-transition: 0.5s all;
	transition: 0.5s all;
}

#mobile-nav-toggle div {
	background: #233a50;
	box-shadow: 0 10px 0 #233a50, 0 20px 0 #233a50;
	width: 34px;
	height: 4px;
	position: absolute;
	top: 14px;
	left: 13px;
	border-radius: 1px;
	-webkit-transition: 0.5s all;
	-moz-transition: 0.5s all;
	-ms-transition: 0.5s all;
	transition: 0.5s all;
}

#site-container-wrap {
	overflow: hidden;
	min-height: 100%;
	position: relative;
}

#site-container {
	min-height: 100%;
	position: relative;
	margin: 0 auto;
	-webkit-transition: 0.5s -webkit-transform;
	-moz-transition: 0.5s -webkit-transform;
	-ms-transition: 0.5s -webkit-transform;
	transition: 0.5s -webkit-transform;
}

body.nav-active #site-container {
	-webkit-transform: translateX(30%);
	-moz-transform: translateX(30%);
	-ms-transform: translateX(30%);
	transform: translateX(30%);
}

#mobile-nav {
	position: absolute;
	top: 0;
	left: 0;
	width: 75%;
	z-index: 80;
	min-height: 100%;
	background: #0b1127;
	-webkit-transform: translateX(-102%);
	-moz-transform: translateX(-102%);
	-ms-transform: translateX(-102%);
	transform: translateX(-102%);
	-webkit-transition: 0.5s all;
	-moz-transition: 0.5s all;
	-ms-transition: 0.5s all;
	transition: 0.5s all;
	display: none;
}

#mobile-nav .nav-menu {
	padding: 30px 0;
}

body.nav-active #mobile-nav {
	-webkit-transform: translateX(0%);
	-moz-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
}

#mobile-nav-shad {
	width: 100%;
	min-width: 320px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0);
	opacity: 0;
	display: none;
	z-index: 50;
	-webkit-transition: 0.5s all;
	-moz-transition: 0.5s all;
	-ms-transition: 0.5s all;
	transition: 0.5s all;
}

body.nav-active #mobile-nav-shad {
	opacity: 1;
	-webkit-transform: translateX(0%);
	-moz-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
}

body.nav-active #site-container-wrap {
	opacity: 0.5;
}

#mobile-nav-close {
	color: rgba(255, 255, 255, 0.7);
	font-size: 16px;
	padding: 20px 20px;
	position: relative;
	margin: -40px 0 5px 0;
	text-align: center;
	cursor: pointer;
}

#mobile-nav-close:after {
	content: ' ';
	width: 70%;
	height: 1px;
	background: rgba(255, 255, 255, 0.15);
	position: absolute;
	margin: 35px 15% 0 15%;
	left: 0;
}

#mobile-nav .menu-top-navigation-container {
	display: block;
	width: 70%;
	padding: 40px 0 0 0;
	z-index: 20;
	position: relative;
	background: #0D293E;
}

#mobile-nav ul#menu-main-navigation,
#mobile-nav ul#menu-main-navigation-1 {
	padding: 30px 0 0 0;
}

#mobile-nav > div > ul > li > a {
	text-decoration: none;
	text-transform: uppercase;
	color: #FFF;
	font-size: 18px;
	font-weight: 600;
	display: block;
	width: 100%;
	text-align: left;
	padding: 10px 40px;
	position: relative;
	box-sizing: border-box;
}

#mobile-nav > div > ul > li > ul > li > a {
	text-decoration: none;
	color: rgba(255, 255, 255, 0.8);
	font-size: 12px;
	display: block;
	width: 100%;
	text-align: left;
	padding: 6px 40px;
	box-sizing: border-box;
	text-transform: uppercase;
	font-family: pt sans, sans-serif !important;
}

#mobile-nav > div > ul > li > ul > li > a:active {
	color: #FFF;
}

#mobile-nav > div > ul > li {
	padding: 0 0 5px 0;
}

#mobile-nav ul.sub-menu {
	position: relative;
	z-index: 200;
}

.menu-toggle {
	display: none;
}

.nav-beside #site-search {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 20px;
}

.nav-beside .menu-main-menu-container {
	display: inline-block;
	vertical-align: middle;
}

.nav-under #site-search {
	position: absolute;
	right: 0;
	top: 12px;
	height: 35px;
}

#site-search input[type="text"] {
	border: 0;
	border-radius: 0;
	color: #303030;
	background: transparent;
	height: 29px;
	width: 29px;
	padding: 3px 4px;
	outline: none;
	font-weight: 500;
	font-size: 16px;
	position: relative;
	z-index: 10;
	text-indent: -99px;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

#site-search input[type="text"].active {
	width: 140px;
	background: #F3F3F3;
	text-indent: 0px;
	padding: 3px 34px 3px 14px;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

#site-search input[type="submit"] {
	margin: 0 0 0 -4px;
	border-radius: 0;
	border: none;
	width: 35px;
	height: 35px;
	outline: none;
	box-shadow: none;
	background: url(images/header-mag.png) center center no-repeat;
	background-size: 32px;
	opacity: 0.75;
	cursor: pointer;
	top: 0;
	right: 0;
	position: absolute;
	display: none;
	z-index: 50;
}

#site-search input[type="submit"].active {
	display: block;
}

#header-mag {
	background: url(images/header-mag.png) center center no-repeat;
	background-size: 32px;
	opacity: 0.75;
	cursor: pointer;
	position: absolute;
	top: 0;
	right: 0;
	width: 35px;
	height: 35px;
	z-index: 20;
}

#site-copyright {
	position: relative;
	right: auto;
	text-align: right;
	margin-top:-55px;
}

.section-rotator {
	position: relative;
	opacity: 0;
	max-height: 0;
	-webkit-transition: 0.4s opacity, 0.8s max-height;
	-moz-transition: 0.4s opacity, 0.8s max-height;
	-ms-transition: 0.4s opacity, 0.8s max-height;
	transition: 0.4s opacity, 0.8s max-height;
}

body.loaded .section-rotator {
	opacity: 1;
}

.section-rotator .bxslider li {
	//max-height: 440px;
	overflow: hidden;
	margin: 0;
}

.rotator-slide-content-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 20;
	text-decoration: none;
}

.rotator-slide-content-spacer {
	display: inline-block;
	vertical-align: middle;
	width: 0;
	height: 100%;
}

.rotator-slide-content {
	display: inline-block;
	vertical-align: middle;
	width: 100%;
	margin: 0 -100px 0 -4px;
	padding: 117px 0 0;
}

.rotator-slide-content-inner {
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	overflow: hidden;
}

.rotator-slide-content-width {
	max-width: 940px;
	text-align: center;
	margin: 0 auto;
	position: relative;
}

.section-rotator a {
	text-decoration: none;
}

a.rotator-background-link {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	z-index: 5;
}

.rotator-title {
	font-size: 52px;
	    text-transform: uppercase;
	    font-weight: 700;
	    line-height: 1.1em;
	    letter-spacing: -0.01em;
	    color: #FFF;
	    position: relative;
	    z-index: 10;
			margin-bottom:12px;
}

.rotator-subtitle {
    color: rgba(255, 255, 255, 0.85);
    font-size: 17px;
    line-height: 1.4em;
    font-weight: 300;
    position: relative;
    z-index: 10;
    font-family: Source Sans Pro, sans-serif !important;
    max-width: 750px;
    margin: 0 auto;
}

.button {
	display: inline-block;
	vertical-align: top;
	padding: 10px 20px;
	font-size: 16px;
	text-transform: uppercase;
	text-decoration: none;
}

.page-template-default .title-banner.background-image {
    max-height: 330px;
}

/* .section.title-banner h2.title:after, .section.title-banner h2.title:before {
    content: '';
    width: 30%;
    height: 3px;
    background: #fff;
    position: relative;
    display: block;
    text-align: center;
    margin: 5px auto;
} */

.section-rotator a.button {
	position: relative;
	z-index: 10;
}

.button-wrap a.button {
	margin-right: 10px;
}

.button-wrap a.button:last-child {
	margin-right: 0;
}

.section-rotator .button {
	margin: 20px 0 0;
}

.section .button.primary, .section a.button.primary, a.button.primary {
	color: #FFF;
	background: #3bbfad;
	padding: 9px 28px;
	font-family: Source Sans Pro, sans-serif;
}

.section .button.secondary, .section a.button.secondary, a.button.secondary {
	color: #FFF;
	background: #213969;
	padding: 9px 28px;
	font-family: Source Sans Pro, sans-serif;
	font-weight: bold;
}

.section .button.white, .section a.button.white {
	color: #01c0ff;
	background: #FFF;
}

.rotator-prev, .rotator-next {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 60px;
	display: none;
}

.rotator-next {
	left: auto;
	right: 0;
}

[slides="1"] .rotator-prev, [slides="1"] .rotator-next, [slides="1"] .bx-controls {
	display: none;
}

.rotator-prev a {
	display: block;
	width: 100%;
	height: 100%;
	box-shadow: 1px 0 0 rgba(0,0,0,0.1);
	cursor: pointer;
	overflow: hidden;
	text-indent: -9999px;
	color: rgba(0, 0, 0, 0);
}

.rotator-next a {
	display: block;
	width: 100%;
	height: 100%;
	box-shadow: -1px 0 0 rgba(0,0,0,0.1);
	cursor: pointer;
	overflow: hidden;
	text-indent: -9999px;
	color: rgba(0, 0, 0, 0);
}

.bx-controls.bx-has-pager {
	position: absolute;
	bottom: 0;
	width: 100%;
}

ul.bxslider {
	margin: 0;
}

.side-by-side .breadcrumbs {
    display: none;
}

#portfolio-info.side-by-side .breadcrumbs {
    display: block;
    margin-top: 0;
    margin-bottom: 20px;
}

#portfolio-info.side-by-side .breadcrumbs a {
    font-family: Source Sans Pro, sans-serif;
	text-decoration: none;
    color: #00c2ad !important;
	margin: 0;
	font-size: 12px;
	letter-spacing: 0.02em;
}

#portfolio-info.side-by-side .breadcrumbs .current-item {
	font-family: Source Sans Pro, sans-serif;
	text-decoration: none;
	color: #182544 !important;
	margin: 0 4px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

#projects-grid .single-grid-block-inner a.button.primary,
#projects-grid .single-grid-block-inner .button.primary {
    font-size: 13px !important;
    padding: 4px 12px;
    float: left;
}

#projects-grid .single-grid-block-inner ul {
  list-style-type: none;
  margin-left:0;
  margin-top:-20px;
}

#projects-grid .single-grid-block-inner li {
    font-size: 13px;
    line-height: 1.6em;
    margin-bottom: 5px;
}

#projects-grid .image {
    border-radius: 0;
    float: left;
    padding-right: 13px;
    margin-top: 5px;
    max-height: 160px;
    overflow: hidden;
}

#projects-grid .title {
    position: absolute;
    font-family: source sans pro, sans-serif;
    font-size: 17px;
    top: -50px;
    text-align: left;
	  letter-spacing: 0.005em;
}

#projects-grid p {
    font-size: 13px;
    line-height: 1.65em;
}

#projects-grid .single-grid-block {
  margin-bottom:85px;
	position: relative;
}

#home-category-grid .button.primary {
    display: none;
}

.page #header-container {
    background: #dee1e5;
}

.page ul#menu-main-menu-1 li a, .page .upper-header {
    color: #233a50;
}

.page ul#menu-main-menu-1 li a:hover {
    background: #3bbfad;
    color: #fff;
}


.home.page #header-container {
    background: none;
}

.home.page ul#menu-main-menu-1 > li > a, .home.page .upper-header {
    color: #fff;
}

.page ul#menu-main-menu-1 li a:hover {
    background: #3bbfad;
    color: #fff;
}


#fancybox-left, #fancybox-right {
	display: block !important;
}

footer[role="contentinfo"] {
	clear: both;
	font-size: 12px;
	line-height: 2;
	max-width: 1200px;
	margin: 0 auto;
	padding: 40px 45px;
	position: relative;
	min-height: 20px;
	box-sizing: border-box;
}

footer .menu li {
	display: inline-block;
}

footer .menu li a {
	color: #DDD;
	text-decoration: none;
	font-size: 12px;
	padding: 10px 12px;
}

footer .menu li a:hover {
	color: #FFF;
}

#site-copyright {
	color: #fff;
	font-family: source sans pro, sans-serif;
	font-size: 11px;
}

.entry-header .entry-title {
	font-size: 20px;
	line-height: 1.2;
	font-weight: normal;
}

.entry-header .entry-title a {
	text-decoration: none;
	font-size: 32px;
}

.entry-content h1 {
	font-size: 21px;
	line-height: 1.5;
}

.entry-content h2 {
	font-size: 18px;
	line-height: 1.6;
}

.entry-content h3 {
	font-size: 16px;
	line-height: 1.846153846;
}

.entry-content h4 {
	font-size: 14px;
	line-height: 1.846153846;
}

.entry-content h5 {
	font-size: 13px;
	line-height: 1.846153846;
}

.entry-content h6 {
	font-size: 12px;
	line-height: 1.846153846;
}

.entry-content p {
	margin: 0 0 24px;
	line-height: 1.714285714;
}

.entry-content ol,
.entry-content ul {
	margin: 0 0 24px;
	line-height: 1.714285714;
}

.entry-content ul ul,
.entry-content ol ol,
.entry-content ul ol,
.entry-content ol ul {
	margin-bottom: 0;
}

.entry-content ul {
	list-style: disc outside;
}

.entry-content ol {
	list-style: decimal outside;
}

.entry-content li {
	margin: 0 0 0 36px;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	margin: 24px 0;
	line-height: 1.714285714;
}

.entry-content table {
	border-bottom: 1px solid #ededed;
	color: #757575;
	font-size: 12px;
	line-height: 2;
	margin: 0 0 24px;
	width: 100%;
}

.entry-content table caption {
	font-size: 16px;
	margin: 24px 0;
}

.entry-content td {
	border-top: 1px solid #ededed;
	padding: 6px 10px 6px 0;
}

article {
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
}

.page-links {
	clear: both;
	line-height: 1.714285714;
}

.site-header h1,
.site-header h2 {
	text-align: left;
}

.site-header h1 {
	font-size: 26px;
	line-height: 1.846153846;
	margin-bottom: 0;
}

.main-navigation ul.nav-menu,
.main-navigation div.nav-menu > ul {
	display: inline-block !important;
	width: 100%;
}

.nav-under .nav-menu {
	text-align: left;
}

.nav-beside .nav-menu {
	text-align: right;
}

.main-navigation ul {
	margin: 0;
	text-indent: 0;
}

.main-navigation li a,
.main-navigation li {
	text-decoration: none;
}

.main-navigation li a {
	border-bottom: 0;
	color: #fff;
	padding: 10px 30px;
	line-height: 40px;
	font-size: 15px;
	text-transform: uppercase;
	white-space: nowrap;
	font-family: Source Sans Pro, sans-serif !important;
  font-weight: bold;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.safari .main-navigation li a {
	font-weight: normal;
}

.main-navigation li:hover > a, .main-navigation li.current_page_item > a, .main-navigation li.current-menu-parent > a, .main-navigation li.current-page-ancestor > a {
    color: #FFF !important;
    background: #3bbfad;
}

.main-navigation ul#menu-main-menu-1 > li {
    margin: 0 20px;
}

.main-navigation li {
	margin: 0;
	display: inline-block;
	vertical-align: top;
	position: relative;
}

.main-navigation li ul {
	margin: 0;
	padding: 0;
	position: absolute;
	z-index: 1;
	text-align: left;
	height: 0;
	overflow: hidden;
	top: 90%;
	background: #FFF;
	max-width: 220px;
	text-align: left;
	font-size: 0;
	opacity: 0;
	box-shadow: 2px 10px 20px -5px rgba(0, 0, 0, 0.15);
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.main-navigation li ul ul {
	top: 0;
	left: 100%;
}

.main-navigation ul li:hover > ul {
	border-left: 0;
	display: block;
}

.nav-menu > li > ul.sub-menu.pad {
	opacity: 1;
	padding: 15px 0;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.nav-menu > li > ul.sub-menu.active {
	top: 100%;
	height: auto;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.main-navigation li ul li a {
	display: block;
	font-size: 14px;
	line-height: 20px;
	padding: 6px 30px;
	white-space: normal;
	color: #777;
	width: 160px;
	background: #FFF;
	height: 18px;
}

.main-navigation li ul li a:hover {
	background: #3bbfad;
	color: #FFF;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a,
.main-navigation .current_page_item > a,
.main-navigation .current_page_ancestor > a {
	color: #fff;
	font-weight: 600;
}

#nav-container.nav-under {
	position: relative;
	border-bottom: 1px solid #DDD;
	box-shadow: 0 20px 30px -15px rgba(0,0,0,0.1);
	z-index: 10;
	text-align: left;
}

#nav-container.nav-under #site-navigation {
	position: relative;
	margin: 0 auto;
	padding: 0;
	max-width: 1400px;
}

#nav-container.nav-beside {
    display: inline-block;
    vertical-align: middle;
    width: calc( 100% - 580px );
    text-align: right;
    padding: 0 0 0 0;
}

#content-wrapper {
	font-size: 0;
	padding: 0 0 230px 0; /* footer height */
}

#footer-container {
	height: 230px;
	position: absolute;
	bottom: 0;
	width: 100%;
	background: linear-gradient(140deg, #1b2542, #3c8482);
}

#content {
	width: 100%;
	font-size: 14px;
}

.entry-header .entry-title, .search-results h1.page-title {
	font-size: 42px;
	letter-spacing: -0.04em;
	text-transform: uppercase;
}

header.entry-header {
	padding: 40px 0;
	color: #444;
	margin: 0;
}

.archive article:first-child, .search article:first-child, .blog article:first-child {
	padding-top: 40px;
}

h1.entry-title {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 0 30px;
}

.entry-header.left, .left {
	text-align: left;
}

.entry-header.center, .center {
	text-align: center;
}

.entry-header.right, .right {
	text-align: right;
}

.entry-header.background-image {
	background-size: 100% !important;
}

.section {
	position: relative;
	font-size: 0;
}

.section-background {
	display: block;
	width: 100%;
}

.section.background-image .section-inner-wrap-1 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	font-size: 0;
}

.section.background-image .section-inner-wrap-spacer {
	display: inline-block;
	vertical-align: middle;
	height: 100%;
	width: 0;
}

.section.background-image .section-inner-wrap-2 {
	display: inline-block;
	vertical-align: middle;
}

.section-inner-wrap-2 {
	width: 100%;
}

.section .section-inner {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 60px 0;
}

.section.title-banner .title {
    font-size: 62px;
    line-height: 75px;
    margin: 0;
    text-transform: uppercase;
    color: #fff;
    letter-spacing: 0.06px;
}

.section.title-banner.background-image:before {
    content: '';
    top: 0;
    left: 0;
    position: absolute;
    background-image: linear-gradient(to right, rgba(24, 40, 70, 0.9) , rgba(10, 130, 128, 0.8));
    height: 100%;
    width: 100%;
    display: block;
}

#portfolio-info.side-by-side .featured-image img {
    margin: -7px 0;
	width: 100%;
	max-width: 100%;
}

.section.title-banner .subtitle {
	font-size: 26px;
	line-height: 32px;
	margin: 0;
	font-weight: 500;
}

.section.text-white, .section.text-white a {
	color: #FFF;
}

.section.text-black, .section.text-black a {
	color: #333;
}

.section.align-left {
	text-align: left;
}

.section.align-center {
	text-align: center;
}

.section.align-right {
	text-align: right;
}

.section.background-image.tint-lighter {
	background: #FFF;
}

.section.background-image.tint-lighter .section-background,
.section.background-image.tint-lighter .mobile-background {
	opacity: 0.5;
}

.section.background-image.tint-darker {
	background: #000;
}

.section.background-image.tint-darker .section-background,
.section.background-image.tint-darker .mobile-background {
	opacity: 0.5;
}

.section .mobile-background {
	display: none;
}

.section.white {
	background: #FFF;
}

.section.off-white {
	background: #f0f1f5;
}

.section.black {
	background: #222;
	color: #FFF;
}

.section.primary {
	background: #01c0ff;
}

.section .title {
	font-size: 39px;
	line-height: 44px;
	margin: 0;
	text-transform: uppercase;
	color: #4b4b4b;
    letter-spacing: -0.02em;
    font-weight: 700;
}

.section .subtitle {
    font-size: 16px;
    line-height: 28px;
    margin: 2px 0 10px;
    font-family: source sans pro, sans-serif;
    font-weight: normal;
    color: #4b4b4b;
    letter-spacing: -0.01em;
}

#portfolio-info h2.title {
    color: #182544;
}

#portfolio-info h1.title {
    color: #182544;
}

.section .content p, .section .content li {
	font-size: 20px;
	line-height: 1.7em;
}

.section .content p,
.section .content li {
    font-size: 15px;
    font-family: Source Sans Pro, sans-serif !important;
    letter-spacing: -0.005em;
    line-height: 1.7em;
}

#testimonial-block .content p {
    font-size: 18px;
    line-height: 1.56em;
    color: #4b4b4b;
    font-family: georgia, serif !important;
    font-style: italic;
    opacity: .5;
    max-width: 1000px;
    margin: 0 auto;
		padding-top:30px;
}

#testimonial-block h2 {
    color: #4b4b4b;
    font-size: 38px;
		line-height: 1em;
    letter-spacing: -0.01em;
}



#testimonial-block .content:before {
    content: '';
    width: 150px;
    background: #bbbbbb;
    height: 1px;
    position: relative;
    text-align: center;
    top: -5px;
    margin: 0 auto;
    display: block;
}

#portfolio-info.side-by-side .breadcrumbs span:nth-child(3) a {
    z-index: -1;
    position: relative;
		color:#333 !important;
}

.content-wrap.align-center {
	text-align: center;
}

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

.content-wrap.align-right {
	text-align: right;
}

.section .section-inner.top-only {
	padding-bottom: 0;
}

.section .section-inner.bottom-only {
	padding-top: 0;
}

.section .section-inner.no-padding {
	padding: 0;
}

.content-block .featured-image.left.mobile {
	display: none;
}

.content-block.featured-image-left .content-outer,
.content-block.featured-image-right .content-outer {
	display: inline-block;
	vertical-align: middle;
	width: 60%;
}

.content-block.featured-image-left .featured-image,
.content-block.featured-image-right .featured-image {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	width: 40%;
}

.content-block.featured-image-right .content-wrap {
	padding: 0 100px 0 0;
}

.content-block.featured-image-left .content-wrap {
	padding: 0 0 0 100px;
}

.content-block .featured-image {
	overflow: hidden;
}

.content-block .featured-image label {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	font-size: 15px;
	color: rgba(255, 255, 255, 0.9);
	font-weight: 500;
	background: rgba(0,0,0,0.7);
	padding: 5px;
	box-sizing: border-box;
	text-align: center;
}

.side-by-side .featured-image {
	width: 50%;
	display: inline-block;
}

.side-by-side .featured-image img {
	display: block;
	margin: 0 0 -7px 0;
	width: 100%;
}

.side-by-side .content-outer {
	position: absolute;
	width: 50%;
	text-align: right;
	height: 100%;
	background: #FFF;
	font-size: 0;
}

.side-by-side.right {
	text-align: right;
}

.side-by-side .featured-image.mobile {
	display: none;
}

.side-by-side .featured-image {
	width: 50%;
	display: inline-block;
	vertical-align: top;
	overflow: hidden;
}

.side-by-side.left .content-outer {
	left: 50%;
	top: 0;
	text-align: left;
}

.side-by-side .content-spacer {
	display: inline-block;
	vertical-align: middle;
	height: 100%;
	width: 0;
}

.side-by-side.left .content-wrap {
	width: 520px;
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
	text-align: left;
	padding: 0 0 0 80px;
}

.side-by-side.right .content-wrap {
	width: 475px;
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
	text-align: left;
	padding: 0 80px 0 0;
}

.side-by-side .featured-image img {
	display: block;
	margin: 0;
	width: 100%;
}

.section.side-by-side .title {
	margin: 0 0 10px 0;
}

.grid-block .grid-blocks {
	position: relative;
	font-size: 0;
	text-align: center;
	padding: 30px 0 0;
	margin: 0 0 -50px 0;
}

.single-grid-block {
	display: inline-block;
	vertical-align: top;
	font-size: 14px;
	text-align: left;
	margin: 0 0 50px 0;
}

.news[row="1"] .news-post { width: 100%; }
.grid-blocks[row="2"] .single-grid-block, .news[row="2"] .news-post { width: 50%; }
.grid-blocks[row="3"] .single-grid-block, .news[row="3"] .news-post { width: 33%; }
.grid-blocks[row="4"] .single-grid-block, .news[row="4"] .news-post { width: 25%; }
.grid-blocks[row="5"] .single-grid-block, .news[row="5"] .news-post { width: 20%; }
.grid-blocks[row="6"] .single-grid-block, .news[row="6"] .news-post { width: 16.6%; }

.grid-blocks .single-grid-block:first-child:after,
.grid-blocks[row="2"] .single-grid-block:nth-child(2n+3):after,
.grid-blocks[row="3"] .single-grid-block:nth-child(3n+4):after,
.grid-blocks[row="4"] .single-grid-block:nth-child(4n+5):after,
.grid-blocks[row="5"] .single-grid-block:nth-child(5n+6):after {
	display: none;
}

.single-grid-block-inner {
	padding: 0 30px;
}

#home-category-grid .single-grid-block-inner {
	padding: 0 11px;
}

.grid-block .image {
	width: 75%;
	max-width: 240px;
	margin: 0 auto 20px;
	position: relative;
	overflow: hidden;
}

#home-category-grid.grid-block .image {
	width:100%;
	margin-bottom:0;
}

#home-category-grid .grid-blocks p {
    font-size: 12px;
    font-family: source sans pro, sans-serif;
    line-height: 1.45em;
		color:#4b4b4b;
}

#home-category-grid .single-grid-block-inner .title {
    font-family: source sans pro, sans-serif;
    font-size: 17px;
    letter-spacing: -0.01em;
    font-weight: normal;
    color: #4b4b4b;
}

.single-grid-block img {
	display: block;
}

.single-grid-block .title {
	font-size: 30px;
	text-align: center;
	line-height: 30px;
	padding: 15px 0 5px 0;
}

.grid-blocks .button-wrap {
	text-align: center;
}

a.single-grid-block {
	text-decoration: none;
}

.team-members {
	text-align: center;
}

.single-team-member {
	display: inline-block;
	vertical-align: top;
	width: 30%;
	box-sizing: border-box;
}

.single-team-member-inner {
	padding: 25px 25px 0;
	font-size: 0;
}

.single-team-member-inner img {
	display: block;
	vertical-align: top;
	border-radius: 75px;
	width: 150px;
	height: 150px;
	margin: 0 auto 10px;
}

.single-team-member-inner > .content {
	display: block;
	vertical-align: top;
	text-align: left;
	font-size: 14px;
	text-align: center;
}

.single-team-member .full-name {
	font-size: 30px;
	line-height: 34px;
}

.single-team-member .position {
	font-size: 16px;
}

.team-members .bio {
	text-align: center;
	padding: 10px 0 0;
}

.team-members .bio p {
	font-size: 18px;
	line-height: 26px;
}

.edit-link a {
	position: fixed;
	top: 140px;
	left: 0px;
	text-decoration: none;
	font-size: 16px;
	font-weight: 600;
	color: #FFF;
	font-family: Source Sans Pro, sans-serif !important;
	background: #3bbfad;
	padding: 10px 15px 10px 20px;
	border-radius: 0 5px 5px 0;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.edit-link a:hover {
	color: #FFF;
	padding: 10px 15px 10px 34px;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.news-post-inner {
	margin: 15px 30px;
	display: block;
	text-decoration: none;
}

.news-post-thumbnail {
	display: block;
	position: relative;
	margin: 0 0 10px 0;
}

.news-post-title {
	display: block;
	text-decoration: none;
	font-size: 22px;
	line-height: 24px;
	padding: 10px 0 0;
}

.news-post-date {
	text-transform: uppercase;
	font-size: 12px;
	opacity: 0.8;
}

.section.news .button-wrap {
	text-align: center;
}

.news-post {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-size: 18px;
	text-align: left;
	margin: 0;
}

.section.news .news-post-read-more {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	background: rgba(1, 192, 255, 0.5);
	z-index: 10;
	text-align: center;
	line-height: 222px;
	text-decoration: none;
	font-size: 23px;
	color: #FFF;
	text-transform: uppercase;
	letter-spacing: -0.04em;
	opacity: 0;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.section.news .news-post-inner:hover .news-post-read-more {
	line-height: 222px;
	opacity: 1;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.section.news .title {
	padding: 0 0 15px 0;
}

.news-posts {
	text-align: center;
}

.news-post-thumbnail img {
	display: block;
}

.gform_wrapper form {
	text-align: center;
	margin: 50px 0 0 0;
}

.gform_wrapper div.validation_error {
	border: 2px solid #FFF;
	text-shadow: 0 2px 0 #d85151;
	font-size: 18px;
	color: #FFF;
	background: #f36969;
	border-radius: 3px;
	display: inline-block;
	width: auto;
	line-height: 20px;
	padding: 15px 25px;
	font-weight: 600;
	margin: -40px 0 40px;
}

.gform_body {
	text-align: left;
}

.entry-content ul.gform_fields {
	margin: 0;
	list-style: none;
}

li.gfield {
	position: relative;
	list-style: none;
	margin: 0;
	display: inline-block;
	vertical-align: top;
	width: 46%;
	margin: 0 4% 50px 0;
}

.gfield label.gfield_label {
	position: absolute;
	font-size: 18px;
	font-weight: 600;
	height: 52px;
	width: 100%;
	padding: 10px 18px;
	box-sizing: border-box;
	text-transform: uppercase;
	line-height: 34px;

	top: 0;
	color: transparent;

	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.gform_wrapper.loaded .gfield label.gfield_label {
	color: #182544;
}

.gform_wrapper input[type="text"], .gform_wrapper input[type="email"], .gform_wrapper input[type="number"], .gform_wrapper input[type="tel"] {
	font-size: 22px;
	font-weight: 600;
	color: #182544;
	border: 0;
	border-radius: 0;
	padding: 10px 18px;
	height: 52px;
	box-sizing: border-box;
	width: 100%;
	box-shadow: inset 0 0 0 2px #FFF;

	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.gform_wrapper .gfield.active input[type="text"], .gform_wrapper .gfield.active input[type="email"], .gform_wrapper .gfield.active input[type="number"], .gform_wrapper .gfield.active input[type="tel"], .gform_wrapper .gfield.active textarea {
	color: #182544;
	background: #FFF;
	font-weight: normal;
	font-size: 16px;
	font-family: source sans pro, sans-serif;
}

li.gform_validation_container {
	display: none;
}

.gform_wrapper .gfield.active label.gfield_label {
	top: -45px;
	color: #333;
}

li#field_1_5 {
	width: 96%;
}

.gform_wrapper textarea {
	font-size: 22px;
	font-weight: 600;
	color: #182544;
	border: 0;
	border-radius: 0;
	padding: 10px 18px;
	box-sizing: border-box;
	width: 100%;
	height: 110px;
	box-shadow: inset 0 0 0 2px #FFF;
	background:#fff;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.gform_validation_error.loaded label.gfield_label {
    top: -45px;
}

.gform_validation_error.loaded input, .gform_validation_error.loaded textarea {
    font-size: 18px;
    font-weight: normal;
}

.gform_wrapper .gfield.active textarea {
/* 	color: #FFF;
	background: transparent; */
}

.gform_footer {
	width: 96%;
}

.gfield_description.validation_message {
	font-size: 15px;
	padding: 0 20px;
	color: #d2242b;
}

.gform_footer input[type="submit"] {
    font-size: 18px;
    font-weight: 600;
    color: #ffffff;
    border: 0;
    border-radius: 0;
    padding: 10px 30px;
    line-height: 32px;
    height: 50px;
    background: #00c2ad;
    box-shadow: none;
    font-family: source sans pro, sans-serif;
}

.gform_confirmation_message {
    font-size: 22px;
    text-align: center;
    background: #00c3ad;
    max-width: 60%;
    margin: 0 auto;
    color: #fff;
    font-family: source sans pro, sans-serif;
    padding: 13px;
    border-radius: 20px;
    text-shadow: 2px 2px 0px #20b5a0;
}

.gform_ajax_spinner {
	display: none !important;
}

a[href="#"] {

}

.single article {
	background: #333;
}

.single .featured-image-wrap {
	height: 360px;
}

.single .featured-image {
	position: absolute;
	width: 100%;
	max-height: 1000px;
	overflow: hidden;
}

.single .featured-image img {
	display: block;
	width: 100%;
}

.featured-image-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 400px;
	box-shadow: inset 0 -600px 300px -400px #333;
}

.single h1.entry-title {
	padding: 0;
	font-size: 40px;
}

.single .entry-content {
	position: relative;
	background: #FFF;
	font-size: 18px;
	border-radius: 5px;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 60px 120px;
}

.single .post-meta {
	text-transform: uppercase;
	font-size: 14px;
	margin: -5px 0 20px 0;
}

.single .post-date {
	display: inline-block;
	vertical-align: top;
	color: #888;
	padding: 0 5px 0 0;
}

.single .post-categories {
	display: inline-block;
	vertical-align: top;
	padding: 0 0 0 5px;
}

.single .post-categories a {
	text-decoration: none;
	color: #888;
	font-weight: 700;
}

.single header.entry-header {
	position: relative;
	padding: 0;
}

.post-sharing {
	position: absolute;
	top: 10px;
	right: 0;
}

.entry-content .post-sharing a {
	display: inline-block;
	vertical-align: top;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 13px;
	padding: 6px 12px;
	line-height: 14px;
	color: #FFF;
	cursor: pointer;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.entry-content .post-sharing a:hover {
	opacity: 0.7;
}

a.share-email {
	background: #444;
}

a.share-facebook {
	background: #3b5998;
}

a.share-twitter {
	background: #1da1f2;
}

a.share-googleplus {
	background: #dd5044;
}

a.share-linkedin {
	background: #007bb6;
}

a.share-pinterest {
	background: #cb2027;
}

.entry-content .post-sharing a.share-print {
	background: #DDD;
	color: #444;
}

.error404 .entry-content {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px 0;
	text-align: center;
	font-size: 18px;
}

.error404 .entry-title {
	text-align: center;
	font-size: 50px;
	padding: 150px 0 0 0;
}

.archive article,
.search article,
.blog article {
	font-size: 0;
}

.article-thumb {
	display: inline-block;
	vertical-align: top;
	width: 30%;
	max-height: 240px;
	overflow: hidden;
}

.article-thumb img {
	display: block;
	max-width: 100%;
}

.article-content {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	font-size: 18px;
	box-sizing: border-box;
	padding: 0;
}

[thumb="true"] .article-content {
	width: 70%;
	padding: 0 40px 0 40px;
}

.archive article,
.search article,
.blog article {
	font-size: 0;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 30px 0;
	border-bottom: 1px solid #EEE;
}

.archive h1.entry-title,
.search h1.entry-title,
.blog h1.entry-title {
	padding: 0;
}

.archive h1.entry-title a,
.search h1.entry-title a,
.blog h1.entry-title a {
	text-decoration: none;
	color: #444;
	text-transform: uppercase;
	font-size: 38px;
}

.archive .entry-summary,
.search .entry-summary,
.blog .entry-summary {
	margin: 0 0 15px 0;
}

.page-nav {
	position: relative;
	margin: 0 auto;
	max-width: 1200px;
	text-align: center;
}

.page-nav .wp-pagenavi {
	padding: 40px 0;
}

.page-nav span.pages {
	display: none;
}

.page-nav span, .page-nav a {
	display: inline-block;
	vertical-align: top;
	font-weight: 600;
	font-size: 16px;
	padding: 8px 10px;
	text-decoration: none;
	min-width: 12px;
	text-align: center;
	background: #EEE;
	margin: 0 4px;
	-webkit-transition: 0.3s all;
	-moz-transition: 0.3s all;
	-ms-transition: 0.3s all;
	transition: 0.3s all;
}

.page-nav a {
	color: #333;
}

.page-nav span.current {
	color: #FFF;
	background: #01c0ff;
}

.page-nav a:hover {
	color: #FFF;
	background: #01c0ff;
}

.post.no-results header.entry-header {
	text-align: center;
	margin: 0;
}

.post.no-results .entry-content {
	font-size: 18px;
	text-align: center;
}

.site-search input[type="text"] {
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	border-radius: 0;
	padding: 10px 14px;
	border: 2px solid #EEE;
}

.site-search input[type="submit"] {
	opacity: 0.75;
	background: url(images/header-mag-white.png) center center no-repeat #01c0ff;
	background-size: 38px;
	width: 44px;
	height: 44px;
	border-radius: 0;
	box-shadow: none;
	border: 0;
}

.site-search input[type="submit"]:hover {
	opacity: 1;
}

.sidebar-section {
	position: relative;
	width: 100%;
}

.sidebar-sections {
	width: 80%;
	position: relative;
}

.sidebar {
	position: absolute;
	top: 0;
	width: 20%;
	height: 100%;
	text-align: left;
	background: #EEE;
	box-sizing: border-box;
	padding: 28px 35px;
}

.sidebar-section.left .sidebar-sections {
	left: 20%;
}

.sidebar-section.sidebar-left .sidebar {
	left: 0;
}

.sidebar-section.sidebar-right .sidebar {
	right: 0;
}

.sidebar-block {
	padding: 0 0 15px 0;
	margin: 0 0 15px 0;
	border-bottom: 1px solid #DDD;
}

.sidebar-block.social-presence, .footer-block.social-presence {
	font-size: 0;
}

.sidebar-block.social-presence a, .footer-block.social-presence a {
	display: inline-block;
	vertical-align: top;
	font-size: 0;
	background: url(images/social-icons.png) 0 0 no-repeat;
	background-size: auto 100%;
	width: 42px;
	height: 42px;
	margin: 0 6px 0 0;
	border-radius: 3px;
	cursor: pointer;
}

.sidebar-block.social-presence .icon-facebook, .footer-block.social-presence .icon-facebook {
	background-position: 6px 0;
	background-color: #3b5998;
}

.sidebar-block.social-presence .icon-twitter, .footer-block.social-presence .icon-twitter {
	background-position: -31px 0;
	background-color: #1da1f2;
}

.sidebar-block.social-presence .icon-googleplus, .footer-block.social-presence .icon-googleplus {
	background-position: -66px 0;
	background-color: #dd5044;
}

.sidebar-block.social-presence .icon-linkedin, .footer-block.social-presence .icon-linkedin {
	background-position: -102px 0;
	background-color: #007bb6;
}

.sidebar-block.social-presence .icon-pinterest, .footer-block.social-presence .icon-pinterest {
	background-position: -138px 0;
	background-color: #cb2027;
}

.sidebar-block-title {
	font-size: 16px;
	line-height: 20px;
	font-weight: 600;
	text-transform: uppercase;
	padding: 0 0 5px 0;
}

.sidebar-block.open-text p:last-child, .footer-block.open-text p:last-child {
	margin: 0;
}

.sidebar form.site-search, .footer-block form.site-search {
	font-size: 0;
}

.sidebar .site-search input[type="text"], .footer-block .site-search input[type="text"] {
	border: 0px;
	width: calc( 100% - 44px);
	box-sizing: border-box;
}

.site-search input[type="submit"] {
	width: 44px;
	height: 40px;
}

.sidebar .news-post, .footer-block .news-post {
	display: block;
}

.sidebar a.news-post-inner, .footer-block a.news-post-inner {
	margin: 0 0 15px 0;
	color: #333;
}

.news-post-title {
	display: block;
	text-decoration: none;
	font-size: 16px;
	line-height: 16px;
	padding: 0;
	font-weight: 600;
	color: #555;
}

.sidebar-block.recent-posts .sidebar-block-title,
.footer-block.recent-posts .sidebar-block-title {
	padding: 0 0 10px 0;
}

.sidebar .button-wrap, .footer-block .button-wrap {
	text-align: center;
}

.sidebar a.button, .footer-block a.button {
	padding: 6px 20px;
	font-size: 14px;
}

.safari .footer-block a[href^="tel"] {
	color:#fff;
	text-decoration: none;
}

.sidebar-block.open-text p, .footer-block.open-text p {
	line-height: 20px;
	font-size: 13px;
	text-align: right;
	color:#fff !important;
}

.single-post .sidebar-section.sidebar-right .sidebar {
	margin: -60px -120px 0 0;
	width: calc( 20% + 80px );
	height: calc( 100% + 145px);
	border-radius: 0 8px 8px 0;
	padding-top: 62px;
}

.footer-columns {
	font-size: 0;
}

.footer-column {
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	padding: 20px 0px;
}

.footer-columns[cols="1"] .footer-column {
	width: 100%;
}

.footer-columns[cols="2"] .footer-column {
	width: 50%;
}

.footer-columns[cols="3"] .footer-column {
	width: 33.3%;
}

.footer-columns[cols="4"] .footer-column {
	width: 25%;
}

.footer-block {
	padding: 0 0 15px 0;
	color: #aaa;
	font-family: source sans pro, sans-serif;
}


#footer-container img {
	max-width: 100%;
	display: block;
}

.footer-block.image img {
    opacity: .9;
    width: 250px;
}


.footer-block .sidebar-block-title {
	color: #ddd;
}

.footer-block .news-post-title {
	color: #01c0ff;
}

.footer-block .news-post-date {
	color: #aaa;
}

.social-presence a:last-child {
	margin: 0;
}

body.nav-active #footer-container {
	display: none;
}

.sidebar img {
	max-width: 100%;
}

.carousel a.item, .carousel .item {
	text-align: center;
	text-decoration: none;
	color: #333;
}

.carousel .item .title {
	font-size: 22px;
	line-height: 40px;
}

.owl-prev {
	position: absolute;
	width: 60px;
	height: 100%;
	top: 0;
	left: -60px;
	background: url(images/carousel-prev.png) center center no-repeat;
	background-size: 35px;
	opacity: 0.3;
	font-size: 0;
}

.owl-next {
	position: absolute;
	width: 60px;
	height: 100%;
	top: 0;
	right: -60px;
	background: url(images/carousel-next.png) center center no-repeat;
	background-size: 35px;
	opacity: 0.3;
	font-size: 0;
}

.owl-prev:hover, .owl-next:hover {
	opacity: 0.5;
}

.carousel .section-inner {
	padding-left: 60px;
	padding-right: 60px;
}

.title-below .owl-prev, .title-below .owl-next {
	height: calc( 100% - 40px );
}

.title-above .owl-prev, .title-above .owl-next {
	height: calc( 100% - 40px );
	padding-top: 40px;
}

.page-id-567 .section.title-banner.background-image:before,
.page-id-585 .section.title-banner.background-image:before {
	content:none;
}

.page-id-567.page-template-default .title-banner.background-image,
.page-id-585.page-template-default .title-banner.background-image {
	max-height: 490px;
}

.page-id-567 .title-banner h2.subtitle {
    font-family: source sans pro, sans-serif !important;
    font-size: 21px;
    color: #fff;
    font-weight: normal !important;
}





.product-images li {
    display: inline-block;
    max-width: 30px;
    margin:0px;
}

.product-images {
    padding-top: 15px;
    text-align: center;
    /* display: flex; */
    justify-content: space-around;
}
.product-images li img {
	transition:.25s;
}
.product-images li img:not(.active) {
    opacity: .6;
}
.product-main-image {
    position: relative;
}
.product-main-image img {
    max-height: 100%;
    max-width: 100%;
    width: auto!important;
    align-self: center;
}

.side-by-side.product-area {
	z-index:40;
}
.product-img-prev, .product-img-next {
    position: absolute;
    background-color:#282828;
	width: 40px;
	height: 40px;
    cursor: pointer;
	top: 50%;
	margin-top: -20px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.product-img-prev {
    left:0px;
}
.product-img-next {
    right:0px;
}
.product-img-prev p {
    color:white;
}
.product-area.side-by-side {
    max-width: 1200px;
    margin: 20px auto 0 auto;
}

.product-images .bullet {
    position: relative;
    margin-left: -30px;
    width: 54px;
    border-width: 54px 17px 0;
    border-style: solid;
    cursor: pointer;
}
.product-images .bullet.active {
    border-color: #353535 transparent;
}
.product-images .bullet.active:before {
    border-color: transparent transparent #353535;
}
.product-images .bullet:not(.active) {
    border-color: #cccccc transparent;
}
.product-images .bullet:not(.active):before {
    border-color: transparent transparent #cccccc;
}
.product-images .bullet:before {
    content: "";
    position: absolute;
    height: 0;
    width: 0;
    top: -86px;
    left: -18px;
    border-width: 0 45px 35px;
    border-style: solid;
}
.product-images .bullet {
    transform:scale(.15)
}

.product-area h1.title {
    font-family: Proxima Nova;
    font-weight: 700;
    font-size:38px;
}

.side-by-side.product-area .content-wrap {
	padding: 0 0 0 60px;
}


.tabs-section-top {
    margin-top:15px;
    width:100%;
    font-size:15px;
    background-color:#e6e6e6;
}
.tabs-section-top .tab {
    display: inline-block;
    padding:5px 25px;
    cursor: pointer;
}
.tabs-section-top {
	display: flex;
	justify-content: space-around;
    padding: 7px 0;
}

.product-img-next p {
    color: #fff;
    font-size: 24px;
    text-align: center;
}

.product-img-prev p {
    color: #fff;
    font-size: 24px;
    text-align: center;
}

.upper-header .email {
    font-size: 11.5px;
    font-family: proxima nova, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    display: inline-block;
    margin-right: 40px;
}

.upper-header .email a {
	color:#333;
	text-decoration: none;
	font-weight: 500;
}

.upper-header .request-quote-button {
	display: inline-block;
}

.upper-header .request-quote-button a {
	color: #FFF !important;
	text-decoration: none;
background: #292928;
font-family: Playfair Display;
font-style: italic;
font-weight: 300;
-webkit-font-smoothing: antialiased;
font-size: 13px;
letter-spacing: 0.015em;
padding: 5px 17px 7px;
-webkit-transition: 0.2s;
-moz-transition: 0.2s;
-ms-transition: 0.2s;
transition: 0.2s;
}


.breadcrumbs {
    max-width: 1200px;
    margin: 0 auto;
    font-family: proxima nova semibold;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-size: 12px;
    margin-top: 20px;
    margin-bottom: 0px;
    z-index: 41;
    position: relative;
		color:#ababab;
}


.breadcrumbs a {
    color:#adadad;
		text-decoration: none;
		-webkit-transition:0.2s;
		-ms-transition:0.2s;
		-moz-transition:0.2s;
		transition:0.2s;
}

.breadcrumbs span a:hover {
    color: #333;
		-webkit-transition:0.2s;
		-ms-transition:0.2s;
		-moz-transition:0.2s;
		transition:0.2s;
}

.breadcrumbs span:last-of-type > span {
    color: #333;
}

.breadcrumb-separator {
	display: inline-block;
	padding: 0 12px;
}

.home .breadcrumbs {
	display: none;
}

.tabs-section-top .tab {
    font-family: "Playfair Display";
    font-style: italic;
    font-size: 18px;
		color:#666;
}
.tabs-section-top .tab.active {
	color:#000;

}
.tabs-section-top .tab:not(.active) {
    z-index:400;
    position: relative;
    padding:4px 25px;
}
.tabs-area {
    min-height:150px;
    background-color:#fff;
    z-index:401;
    margin-top:-1px;
}
.tab-content {
    font-size:15px;
    padding:15px;
}
.tab-content:not(.active) {
    display: none;
}

.product-images li .thumbnail img {
	opacity: 1;
}

ul.product-images.thumbnails {
	position: relative;
	margin: 20px 0 40px 0;
}

.product-images.thumbnails li {
	max-width: 120px;
	margin: 0 10px 22px 0px;
	cursor: pointer;
}


.product-images .active.thumbnail {
	box-shadow: 0 0 0 4px #FFF, 0 0 0 6px #3bbfad;
}

.side-by-side.product-area {
	padding: 40px 50px;
}

.side-by-side.left.product-area .content-outer {
	text-align: left;
	left: 0;
	position: relative;
	display: inline-block;
	vertical-align: top;
}

ul#menu-main-menu-1 > li:nth-child(1) > a {
	cursor: inherit;
}

div#site-credit {
    color: #fff;
    font-family: source sans pro, sans-serif;
    font-size: 11px;
    text-align: right;
}

div#site-credit a {
    color: #f0f1f5;
}

div#site-credit a:hover {
    color: #3bbfad;
}





#hp-video-area {
    background-color:#333;
}
#hp-video-area .section-inner {
    width:100%;
    max-width: 100%;
}
#video-home-bg {
    opacity: .4;
    position: absolute;
    width:100%;
    top:0;
}
#hp-video-area .content-wrap {
    height: 890px;
    max-height: 54vw;
    overflow: hidden;
}
#hp-video-area .content-wrap .hp-top-content-container {
    z-index: 999;
}
#hp-video-area .content-wrap .hp-top-content-container * {
    position: relative;
    color:#fff;
    text-align: center;
}
#hp-video-area .content-wrap .content {
    height: 100%;
}
.hp-top-content-container {
    display: block;
    position: relative;
    top:50%;
    transform:translatey(-50%);
}
#hp-video-area .title {
    width: 940px;
    max-width: 100vw;
    font-size: 52px;
    line-height: 1.1em;
    margin:0 auto;
    margin-bottom: 12px;
}
#hp-video-area .subtitle {
    width: 740px;
    font-size: 17px;
    max-width: 100vw;
    line-height: 1.4em;
    margin:0 auto;
    margin-bottom: 12px;
    font-family: source sans pro;
}




@media print {
	#content, #page {
		width: 100%;
		margin: 0;
		float: none;
		max-width: 100%;
	}


	@page {
		margin: .5cm;
		width: 8.5in;
		height: 11in;
	}

	#site-container {
		max-width: 8in;
	}

	body.loaded .section-rotator {
		max-height: 440px;
	}

	h1 {
		font-size: 24pt;
	}

	h2, h3, h4 {
		font-size: 14pt;
		margin-top: 25px;
	}

	a {
		page-break-inside:avoid
	}

	blockquote {
		page-break-inside: avoid;
	}

	h1, h2, h3, h4, h5, h6 {
		page-break-after:avoid;
		page-break-inside:avoid;
	}

	img {
		page-break-inside:avoid;
		page-break-after:avoid;
	}

	table, pre {
		page-break-inside:avoid;
	}

	ul, ol, dl {
		page-break-before:avoid;
	}

	a {
		page-break-inside:avoid;
	}

	article a[href^="#"]:after {
	   content: "";
	}

	a:not(:local-link):after {
	   content:" <" attr(href) "> ";
	}

	.entry iframe, ins {
		display: none;
		width: 0 !important;
		height: 0 !important;
		overflow: hidden !important;
		line-height: 0pt !important;
		white-space: nowrap;
	}

	.embed-youtube, .embed-responsive {
	  position: absolute;
	  height: 0;
	  overflow: hidden;
	}

	.side-by-side.left .content-wrap,
	.side-by-side.right .content-wrap {
		width: calc( 100% - 20px );
		padding: 0 20px 0 0;
	}

	.side-by-side.left .content-wrap .content p,
	.side-by-side.right .content-wrap .content p {
		font-size: 12px;
	}

	.button-wrap {
		display: none;
	}

	.rotator-slide-content-width {
		width:100%;
	}

	#home-category-grid .single-grid-block-inner .title {
		line-height: 1.2em;
	}

	.rotator-title {
		font-size: 42px;
	}

	.rotator-subtitle {
		font-size: 14px;
	}

	.section .title {
		font-size: 29px;
		line-height: 1.2em;
	}

	#colophon {
		display: block !important;
	}

	.sidebar-block.open-text p, .footer-block.open-text p {
		font-size: 12px;
	}

	.section-rotator .bxslider li {
		max-width: 100%;
	}

	.bx-wrapper .bx-viewport {
		height: 350px !important;
	}

	.rotator-title {
		font-size: 36px;
		padding: 0 50px;
	}

	.rotator-subtitle {
		padding: 0 50px;
	}

	.rotator-slide-content {
		padding: 67px 0 0;
	}

	.site-header {
		padding: 35px 40px 15px;
		box-sizing: border-box;
	}

	.upper-header {
		right: 40px;
	}

	.grid-blocks[row="6"] .single-grid-block, .news[row="6"] .news-post {
		width: 32%;
	}

	#home-category-grid.grid-block .image {
		max-height: 100px;
	}

	.single-grid-block {
		margin: 0;
	}

	.side-by-side.left .content-wrap {
		padding: 0 0 0 20px;
		width: calc( 100% - 20px );
	}

	.section .title {
		font-size: 28px;
		line-height: 28px;
	}

	.section .content p {
		font-size: 13px;
		margin: 0 0 12px 0;
	}

	.side-by-side .featured-image img {
		width: 150%;
		max-width: none;
	}

	#projects-grid .image {
		float: none;
		margin: 0 0 20px;
	}

	#projects-grid .title {
		font-size: 13px;
		text-align: center;
	}

	.product-area h1.title {
		font-size: 20px;
	}

	.section.side-by-side .title {
		margin: 0;
	}

	.product-images.thumbnails li {
		max-width: 100px;
	}

	.grid-block .grid-blocks {
		position: initial;
	}

	.side-by-side.product-area {
		padding: 40px 50px 0;
	}
















}

#post-1520 .title-banner .subtitle {
    color:#fff;
}
