/******************
****  FONTS & COLOURS
****

font-family: 'Open Sans', sans-serif;

NAVY BLUE: #030d29
YELLOW: #e6b641
OFF WHITE: #868994

******************/

html {
	min-height: 100%;
	padding: 0px;
	margin: 0px;
	font-size: 62.5%;
    position: relative;
}
@media (max-width : 767px) {
	html {
		font-size: 56%;
	}
}
body {
	min-height: 100%;
	padding: 165px 0 0;
	margin: 0px;
	background-color: #fff;
	font-family: 'bw_modelicaregular', sans-serif;
	font-size: 1.6rem;
	color: #333;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.aligncenter {
	display: block;
	margin: 0 auto;
	text-align: center;
}
.alignleft {
	float: left;
}
.alignright {
	float: right;
}
#header:after,  
#footer:after,  
#content:after,  
#nav:after,  
.section:after,  
.article:after,  
.block:after {
	content: '.';
	visibility: hidden;
	display: block;
	height: 0;
	clear: both;
}
/******************
****  HEADER STYLES
****
******************/

header#header {
    position: fixed;
    top: 0;
    left: 0;
    /*right: 0;*/
    width: 100vw;
    z-index: 999;
    background-color: #fff;
	-moz-transition: all 200ms ease-out;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}
.header-button {
	position: absolute;
	top: 15px;
	height: 40px;
	margin-top: 0;
	z-index: 999;
}
.header-button-left {
	left: 15px;
}
.header-button-right {
	right: 15px;
}
.header-button button {
    border: none;
    width: 80px;
    height: 40px;
    background: none;
    font-size: 2.4rem;
}
.header-button button .bar {
    display: block;
	margin-bottom: 6px;
	height: 3px;
	background-color: #003a5d;
}
nav.cbp-spmenu.cbp-spmenu-right .menu-close {
    left: -50px;
}
nav.cbp-spmenu .menu-close:before, nav.cbp-spmenu .menu-close:after {
    background-color: #ff5a34;
}
.cbp-spmenu {
    background-color: #003a5d !important;
}
nav.cbp-spmenu .side-nav-collapse li a {
    border: 1px solid #01446c !important;
}
nav.cbp-spmenu .side-nav-collapse li a:hover {
    background-color: #003a5d !important;
    font-family: 'bw_modelica_bold', sans-serif;
}

@media (max-width : 767px) {
	header#header {
		position: absolute;
	}
}

/******************
****  HEADER NAVIGATION STYLES
****
******************/
header .container-lg2 {
	border-bottom: 0px;
}
header .menu-primary-menu-left-container,
header .menu-primary-menu-right-container {
    display: table;
    table-layout: fixed;
    width: 100%;
}
header nav ul.menu {
	display: table-row;
    margin: 25px 0;
    padding: 0;
    list-style: none;
    height: 120px;
}
header nav ul.menu > li {
	display: table-cell;
    text-align: center;
    vertical-align: bottom;
}
header nav ul.menu > li > a {
    font-family: 'bw_modelica_bold', sans-serif;
    font-size: 20px;
    color: #003a5d;
	display: block;
	padding: 30px 0px;
}
header nav.stuck ul.menu > li > a {
    padding: 20px 0px;
}
header nav ul.menu > li.current_page_item a {
    color: #ff5a34;
}
header nav ul.menu ul {
    visibility: hidden;
	opacity: 0;
    position: absolute;
    top: 38px;
    left: 0;
    background-color: #f6f6f6;
    border: 1px solid #eee;
    box-shadow: 1px 4px 7px -2px #222;
    min-width: 250px;
	z-index: 999;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
header nav ul.menu > li:hover > ul {
    visibility: visible;
	opacity: 1;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
header nav ul.menu ul li a {
	display: block;
	border-bottom: 1px solid #eee;
	white-space: nowrap;
	padding: 8px 15px;
}
header nav ul.menu ul li a:hover {
	background-color: #fbfbfb;
}

header nav ul.menu {
    height: 120px;
	-moz-transition: all 200ms ease-out;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}

header nav.stuck ul.menu {
    height: 90px;
	-moz-transition: all 200ms ease-out;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}

@media (min-width : 768px) and (max-width : 1199px) {
	header nav ul.menu {
		height: 90px;
	}
}

@media (max-width : 1199px) {
	header nav ul.menu > li > a {
		font-size: 16px;
	}
}

h1.logo {
    margin: 15px auto;
    text-align: center;
    width: 50%;
	-moz-transition: all 200ms ease-out;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}
h1.logo a {
    display: block;
}
h1.logo a img {
    width: 50%;
}
.logo.mobile {
    max-width: 80px;
    margin: 20px 0;
}
nav #pb-logo-text {
	opacity: 1;
	-moz-transition: all 200ms ease-out;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}
nav.stuck #pb-logo-text {
	opacity: 0;
	-moz-transition: all 200ms ease-out;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}
nav.stuck .logo {
	height: 75px;
	overflow: hidden;
	-moz-transition: all 200ms ease-out;
  -webkit-transition: all 200ms ease-out;
  -o-transition: all 200ms ease-out;
  transition: all 200ms ease-out;
}

/******************
****  TEXT STYLES
****
******************/
.h1, .h2, .h3, h1, h2, h3 {
    font-family: 'bw_modelicaextrabold';
    letter-spacing: -0.7px;
    color: #003a5d;
}
h1, .h1 {
	font-size: 9rem;
	margin: 40px 0 30px;
	line-height: 1;
}

h2, .h2 {
	font-size: 5rem;
	margin: 40px 0px 20px 0px;
}
h3, .h3 {
	font-size: 3.6rem;
	margin: 40px 0px 20px 0px;
    line-height: 1.3;
}
h4, .h4 {
	font-size: 2.1328rem;
	margin: 20px 0px 10px 0px;
    line-height: 1.4;
}
p {
    font-family: 'bw_modelicaregular', sans-serif;
	font-size: 1.8rem;
	margin: 20px 0px;
	line-height: 1.5;
    color:#748693;
}
p b,
p strong {
    font-family: 'bw_modelica_bold', sans-serif;
	font-weight: normal;
}
a {
	color: #ff5a34;
	text-decoration: none;
	cursor: pointer;
}
a,
a:hover,
button,
button:hover,
a i,
button i {
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
a:hover,
a:focus {
	color: #ff6d4b;
	text-decoration: none;
	cursor: pointer;
}
button:focus,
button:active {
	outline: none;
}
img {
	display: inline-block;
	max-width: 100%;
	height: auto
}
.btn .lnr {
	font-size: 1.6rem;
}
.caslon-regular {
    font-family: 'caslon_book_beregular', serif;
}
.caslon-medium {
    font-family:'Caslon Book BE Med', serif;
}
.modelica-extrabold {
    font-family: 'bw_modelicaextrabold', sans-serif;
}
.modelica-reg {
    font-family: 'bw_modelicaregular', sans-serif;
}
.orange-text {
    color:#ff5a34 !important;
}
.grey-text {
    color: #748693;
}
.white-text {
    color: #fff;
}
.special-blue,
.special-blue p {
    color: #003a5d !important;
}

/******************
****  CUSTOM CLASSES
****
******************/
.vertical-block {
	text-align: center;
	white-space: nowrap;
}
.vertical-block:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
	margin-right: -0.25em; 
}
.vertical-item {
	display: inline-block;
	vertical-align: middle;
}
.content-video {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	margin-bottom: 30px;
	height: 0;
}
.content-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.row-max-single {
	max-width: 768px;
	margin: auto;
}
.special-h2 {
    font-size: 7rem;
    margin-top: 0;
    line-height: 1.2em;
}
.container-lg {
    max-width: 1530px;
    width: 100%;
    margin: 0 auto;
}
.container-lg2 {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
}
.no-gutter {
    margin: 0 !important;
    padding: 0 !important;
}
.title-line {
    width: 60px;
    display: block;
    border-bottom: 4px solid #ff5a34;
}
.line-margin {
    margin-top: 20%;
}
.tbx-col-right {
	padding-left: 20px;
}
.tbx-col-left {
	padding-right: 20px;
}

@media (max-width : 991px) {
	.tbx-col-right {
		padding-left: 0px;
	}
	.tbx-col-left {
		padding-right: 0px;
	}
}

/******************
****  PAGE
****
******************/

/* Home Page ------------- */
.home-slider {
    position: relative;
}
.home-slider .container-lg { 
    /*border-top: 3px solid #003a5d;
    margin-top: 5px;*/
    padding: 0;
}
.home-section {
    padding-top: 150px;
    padding-bottom: 150px;
}
.circle-arrow {
    text-align: center;
    margin: 110px 0;
}
#home-intro {
    background-color: #fff;
}
#home-tabs {
    margin-top: 30px;
}
.tab-nav-wrap {
    background-color: #fff;
    max-height: 130px;
    min-height: 65px;
}
#home-tabs .nav-tabs>li>a {
    background-color: transparent;
    color: #ff5a34;
    font-size: 2.1rem;
    border: 0;
    padding: 40px 0;
    -moz-border-radius: 0px;
    border-radius: 0px;
    margin: 0;
}
#home-tabs .nav-tabs>li>a.o-highlight,
#home-tabs .nav-tabs>li>a:hover {
    background-color: #ff5a34;
    color: #FFF;
    font-family: 'bw_modelicaextrabold', sans-serif;
}
#home-tabs .nav-tabs {
    border: 0;
}
#home-tabs .nav-tabs>li {
    width: 32%;
    text-align: center;
}
#home-featured {
    background-color: #003a5d;
    padding: 40px 0 70px;
}
#home-featured p {
    color: #ece7e1;
}
#home-featured .arrow-nav {
    margin-top: 50px;
}
#home-fl {
    margin-top: 70px;
    margin-bottom: 40px;
}
#home-fl ul {
    list-style: none;
    display: block;
    padding: 0;
    margin: 5px 0 0 0;
}
#home-fl ul li {
    list-style: none;
    display: inline-block;
    margin: 3px 2px 0;
    vertical-align: middle;
}
#home-fl ul li span {
    color: #FFF;
    font-size: 12px;
}
#home-fl #customDots .owl-dot {
    float: left; 
    margin-right:8px;
}
#home-fl #customDots .owl-dot span {
    width: 15px;
    height: 15px;
    display: block;
    background-color: #FFF;
    -webkit-border-radius: 7px;
	-moz-border-radius: 7px;
	border-radius: 7px;
    filter: alpha(opacity=60); 
    opacity: 0.6;
    margin-top:7px;
}
#home-fl #customDots .owl-dot.active span {
    filter: alpha(opacity=100); 
    opacity: 1;
}
.row.no-pad {
  margin-right:0;
  margin-left:0;
}
.row.no-pad > [class*='col-'] {
  padding-right:0;
  padding-left:0;
}
#home-fr .orange-arrow-right {
    color: #ff5a34;
    font-size: 13px;
    display: block;
    text-align: left;
    vertical-align: middle;
    margin-bottom: 80px;
    background-position: right center;
    width: 125px;
    float: right;
}
#home-fr .item-number {
    color: #ff5a34;
    font-size: 3rem;
    line-height: 1.2em;
}
#home-fr .item-title {
    color: #ece7e1;
    font-family:'Caslon Book BE Med', serif;
    font-size: 2.6rem;
    letter-spacing: normal;
    line-height: 1.3em;
    min-height: 70px;
    margin: 10px 0;
}
#home-fr .item-excerpt {
    color: #748693;
    font-size: 1.8rem;
}
#home-fr .item-readmore {
    color: #ff5a34;
    font-family: 'bw_modelicaextrabold', sans-serif;
    font-size: 1.8rem;
    text-transform: uppercase;
}
#home-fr a,
#home-fr a:hover {
    color: #ff5a34;
}
#home-featured2 {
    background-color: #fff;
    padding: 70px 0;
    margin: 0;
    text-align: center;
}
#home-featured2 .title-line {
    margin: 0 auto;
}
#home-featured2 h2 {
    color: #003a5d;
    font-family: 'bw_modelicaextrabold', sans-serif;
}
#home-featured2 h3 {
    margin-bottom: 40px;
}

#home-bottom-carousel .owl-item .item {
	width: 230px;
}
#home-bottom-carousel {
    padding-left: 40px;
}
#home-bottom-carousel .home-bottom-owl-carousel .owl-item .item {
	width: 100%;
}
.home-houzz {
    width: 204px;
    line-height: 1;
}
.home-houzz svg {
    width: 100%;
}

#visual-boxes {
    padding: 70px 0 0;
}
#visual-boxes .circle-arrow {
    margin: 60px 0;
}
#vb-left {
    background: url(../images/img-girl-swing.png) no-repeat;
    background-size: cover;
    background-position: center center;
    border: 50px solid #f8f391;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    width: 100%;
    height: 100%;
}
#vb-left img {
    flex-shrink: 0;
    min-width: 100%;
    min-height: 100%
}
#vb-left a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
#vb-left .overlay {
    background:rgba(248,243,145,.75);
    text-align:left;
    padding:45px 0 66px 0;
    opacity:0;
    -webkit-transition: opacity .25s ease;
    position: absolute;
    z-index: 9;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#vb-left a:hover .overlay {
    opacity:1;
}
#vb-left .overlay p {
    color: #003a5d;
    font-size: 3.6rem;
    position: absolute;
    padding-left: 12%;
    padding-right:12%;
    bottom: 0;
    right: 0;
}
.pop-thingstoknow-inner {
    padding: 30px 100px;
}
@media (max-width : 991px) {
    .pop-thingstoknow-inner {
        padding: 30px 40px;
    }
}
#vb-right,
#pop-thingstoknow {
    background-color: #003B5C;
    border-top: 5px solid #FF5C39;
    border-bottom: 5px solid #FF5C39;
    width: 100%;
    height: 100%;
}
#vb-right p,
#pop-thingstoknow p {
    color: #fff;
    font-size: 2.3rem;
    text-align: center;
}
#vb-right,
#pop-thingstoknow {
    display: block;
    margin: 0 auto;
}
#vb-right .gform_body label,
#pop-thingstoknow .gform_body label {
    display: none;
}
#vb-right .gform_body input,
#pop-thingstoknow .gform_body input {
    color: #748693;
    font-family: 'bw_modelicaextrabold', sans-serif;
    font-size: 12px;
    padding: 5px 20px;
	border: none;
}
#vb-right .gform_footer,
#pop-thingstoknow .gform_footer {
    text-align: center;
}
#vb-right .gform_footer input,
#pop-thingstoknow .gform_footer input {
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #fff;
    font-size: 12px;
    padding: 10px 30px 10px 30px;
    border: solid #fff 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
    margin: 20px 0 0;
}
#vb-right .gform_footer input:hover,
#pop-thingstoknow .gform_footer input:hover{
    background: #003a5d;
    text-decoration: none;
    color: #FFF;
}
#vb-right .gform_footer input:focus,
#pop-thingstoknow .gform_footer input:focus {
    outline: none;
}
#vb-right .gform_wrapper ul li.gfield,
#pop-thingstoknow .gform_wrapper ul li.gfield {
    margin-top: 15px;
}

.home-heart {
    width: 100%;
    height: 0;
    padding-bottom: 35.31%;
    position: relative;
    background: url(../images/jenn-evelyn-ann-UYDoE_AyJQs-unsplash.jpg) 50% 50% no-repeat;
    background-size: cover;
}
.home-heart-inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

#build-exp {
    background-color: #fff;
    padding: 100px 0;
}
#build-exp h2 {
    color: #003a5d;
    font-family: 'bw_modelicaextrabold', sans-serif;
}
#featured-mason {
    background-color: #fff;
    padding-bottom: 100px;
}
.col-sm-6 .fm-boxes {
	padding-bottom: 38.46%;
}
.col-sm-3 .fm-boxes {
	padding-bottom: 76.92%;
}
.fm-boxes {
    height: 0;
	position: relative;
	display: block;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
.fm-boxes-port {
    height: 0;
	padding-bottom: 61.53%;
	position: relative;
	display: block;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
.fm-boxes-port > a {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	position: absolute;
}
.fm-boxes .overlay,
.fm-boxes-port .overlay {
    background:rgba(0,0,0,.75);
    background-size: cover;
    text-align:left;
    opacity:0;
    -webkit-transition: opacity .25s ease;
    position: absolute;
    z-index: 9;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    
    display: flex;
    align-items: center;
    justify-content: center;
}
.fm-boxes:hover .overlay,
.fm-boxes-port:hover .overlay{
    opacity:1;
}
.fm-boxes .overlay .content,
.fm-boxes-port .overlay .content{
    position: absolute;
    bottom: 10%;
    left: 5%;
}
.fm-boxes .overlay .content-middle,
.fm-boxes-port .overlay .content-middle{
    /*position: absolute;
    text-align: center;
    width: 100%;
    top: 40%;*/
}
.fm-boxes .overlay h4,
.fm-boxes-port .overlay h4{
    color: #FFF;
    font-family: 'bw_modelicaregular', sans-serif;
    font-size: 4rem;
    margin: 5px 0;
}
.fm-boxes .overlay p,
.fm-boxes-port .overlay p {
    color: #FFF;
    font-family: 'bw_modelicaregular', sans-serif;
    font-size: 1.4rem;
    margin: 0;
}
.fm-boxes button,
.fm-boxes-port button{
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #FFF;
    font-size: 12px;
    padding: 14px 40px;
    margin-top: 5px;
    border: solid #FFF 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
}
.fm-boxes button:hover,
.fm-boxes-port button:hover{
    background: #ff5a34;
    text-decoration: none;
	border-color: #ff5a34;
    color: #FFF;
}
#home-before-footer {
    padding: 130px 0;
    background: url(../images/bg-sign-off.jpg) no-repeat;
    background-size: cover;
    background-position: center center;
}
#home-before-footer h2 {
}
#home-before-footer a.the-button,
a.the-button {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 5px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
}
#home-before-footer a.the-button:hover,
a.the-button:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
#how-can-we-help:focus,
#build-exp:focus {
    outline: none;
}
.orange-arrow-left {
    background: url(../images/long-arrow-left.png) no-repeat;
    height: 15px;
    width: 80px;
}
.orange-arrow-right {
    background: url(../images/long-arrow-right.png) no-repeat;
    height: 15px;
    width: 80px;
}
.white-arrow-left {
    background: url(../images/white-long-arrow-left.png) no-repeat;
    height: 15px;
    width: 80px;
}
.white-arrow-right {
    background: url(../images/white-long-arrow-right.png) no-repeat;
    height: 15px;
    width: 80px;
}
.home-slider .owl-prev {
    position: absolute;
    top: 50%;
    left: -50px;
}
.home-slider .owl-next {
    position: absolute;
    top: 50%;
    right: -50px;
}

/* INNER Pages ------------- */
.page-section.with-padding {
        padding: 110px 0;
}
.page-section h2 {
    margin-bottom: 60px;
}
.page-intro {
    margin: 0;
    padding: 0;
}
.page-intro .container-lg2 { 
    border-top: 0px solid #003a5d;
    margin-top: 0px;
    padding: 100px 0;
}
.page-intro h2 {
    margin: 10px 0 0 0;
    padding: 0;
}
.page-section h2 {
    margin-bottom: 60px;
}
.section1-wrap { 
    background: #fff;
    position: relative;
    z-index: 9;
    float: none;
    padding-top: 120px;
    padding-bottom: 100px;
}

/* ETHOS Page ------------- */
.section1-wrap .logo-wrap {
    padding-bottom: 120px;
}
img.ethos-logo  {
    width: 20%;
    display: block;
    margin: 0 auto;
}
#ethos-vb1 {
    background: url(../images/img-ethos-visualbox1.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#ethos-vb2 {
    background: url(../images/img-ethos-visualbox2.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#ethos-vb3 {
    background: url(../images/img-ethos-visualbox3.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#ethos-vb4 {
    background: url(../images/img-ethos-visualbox4.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#ethos-vb2 .content-wrap {
    position: absolute;
    left: 13%;
    bottom: 13%;
    width: 60%;
}
#ethos-vb3 .content-wrap {
    position: absolute;
    right: 13%;
    bottom: 13%;
    width: 60%;
}
#ethos-vb3 .content-wrap h2 {
    color: #FFF;
	margin: 0px;
}
#ethos-vb2 h2, 
#ethos-vb3 h2 { 
    font-size: 3.6rem; 
}

@media (min-width : 768px) and (max-width : 1199px) {
	#ethos-vb3 .content-wrap {
		left: 10%;
		bottom: 10%;
		width: 80%;
	}
}

#ethos-section3 {
    background: url(../images/bg-greenstripe.jpg) no-repeat;
    background-size: cover;
    padding: 140px;
}
#ethos-section4 {
    padding: 110px 0; 
}
#ethos-standards {
    padding: 140px 0 60px;
}
#ethos-standards .arrow-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
#ethos-standards .arrow-nav .arrow-nav-left {
    margin-right: 10px;
}
#ethos-standards .arrow-nav .arrow-nav-right {
    margin-left: 10px;
}
#ethos-carousel .carousel-control.left,
#ethos-carousel .carousel-control.right {
    background-image: none;
}
#ethos-carousel .glyphicon-chevron-right:before,
#ethos-carousel .glyphicon-chevron-left:before  {
    content: "";
}
#ethos-carousel .glyphicon-chevron-right,
#ethos-carousel .glyphicon-chevron-left {
    width: 60px;
    height: 60px;
}
#ethos-carousel-item1 .ec-top {
    background-color: #a8b2b9;
}
#ethos-carousel-item2 .ec-top {
    background-color: #003a5d;
}
#ethos-carousel-item3 .ec-top {
    background-color: #748693;
}
.ethos-carousel-item {
    padding-top: 0px;
    padding-bottom: 0px;
    margin: 0;
}
.ethos-carousel-item span,
.ethos-carousel-item h3,
.ethos-carousel-item p {
    color: #FFF;
}
.ethos-carousel-item h3.item-number {
    display: inline;
}
.short-orange-line {
    display: inline-block;
    width: 50px;
    border-bottom: 2px solid #ff5a34;
    margin-left: 20px;
}
#ethos-before-footer a.the-button {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 30px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
    display: inline-block;
}
#ethos-before-footer {
    background: url(../images/bg-ethos-footer.jpg) no-repeat;
    background-size: cover;
    padding: 60px 0;
	clear: both;
}
#ethos-before-footer h2 {
    color: #FFF;
}
#ethos-before-footer a.the-button:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
.search-bar {
    margin-top: 15px;
}
.ec-top {
	background-color: #a8b2b9;
    padding-left: 12%;
    padding-right: 12%;
    padding-top: 40px;
    padding-bottom: 70px;
    margin: 0;
}
.ec-bottom {
	height: 0;
	padding-bottom: 50%;
	position: relative;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
.owl-item {
    float: left;
}
.owl-loaded {
	position: relative;
}
.owl-loaded:after {
	content: '';
	display: table;
	clear: both;
}
.owl-nav.disabled {
	display: none;
}
#ethos-carousel .owl-prev {
	position: absolute;
	top: 50%;
	left: 20px;
	z-index: 999;
}
#ethos-carousel .owl-next {
	position: absolute;
	top: 50%;
	right: 20px;
	z-index: 999;
}

@media (max-width : 767px) {
	.ec-top {
		height: auto!important;
	}
}

/* BUILDING Page ------------- */
#build-vb1 {
    background: url(../images/img-build-visualbox1.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#build-vb2 {
    background: url(../images/img-build-visualbox2.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#build-vb3 {
    background: url(../images/img-build-visualbox3.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#build-vb4 {
    background: url(../images/img-build-visualbox4.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
#build-vb1 .content-wrap {
    position: absolute;
    right: 13%;
    bottom: 13%;
    width: 60%;
}
#build-vb1 .content-wrap h3,
#build-vb4 .content-wrap h3 {
    color: #FFF;
    line-height: 1.2em;
}
#build-vb4 .content-wrap {
    position: absolute;
    left: 13%;
    top: 13%;
    width: 60%;
}
#build-before-footer {
    background: url(../images/img-build-fullwidth2.jpg) no-repeat;
    background-size: cover;
    padding: 90px 0 230px;
}
#build-before-footer h2 {
    color: #FFF;
    padding: 0;
    margin: 0;
}
#build-before-footer p {
    color: #FFF;
}
#build-before-footer a.the-button {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #FFF;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 5px;
    border: solid #FFF 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
}
#build-before-footer a.the-button:hover {
    background: #FFF;
    text-decoration: none;
    color: #748693;
}
.fixed-image {
	height: 0;
	padding-bottom: 48%;
	position: relative;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	background-attachment: fixed;
}

@media (max-width : 991px) {
	.fixed-image {
		background-attachment: inherit;
	}
}

/* PORTFOLIO Page ------------- */
.bg-pastel-blue {
    background-color: #cfeae1;
}
.bg-pastel-yellow {
    background-color: #f8f391;
}
.bg-pastel-pink {
    background-color: #f9c5d3;
}
.bg-pastel-green {
    background-color: #c1dfbe;
}
.portfolio-item .item-img-wrap1 {
    background: url(../images/portfolio-glebe.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
}
.portfolio-item .item-img-wrap2 {
    background: url(../images/portfolio-paddington.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
}
.portfolio-item .item-img-wrap3 {
    background: url(../images/portfolio-putney.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
}
.portfolio-item .item-img-wrap4 {
    background: url(../images/portfolio-bellvuehill.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
}
.portfolio-item .item-content {
    padding: 12% 10% 15% 12%;
}
.portfolio-item .item-content p {
    color: #003a5d;
}
.portfolio-item .item-initial {
    background-color: #003a5d;
    color: #FFF;
    padding: 10px 14px;
    display: inline-block;
    -webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
    margin-top: 20px;
}
.portfolio-item .item-counter {
    display: block;
    font-size: 3em;
    border-top: 4px solid #ff5a34;
    margin-top: 12px;
}
.portfolio-item h2.item-title {
    font-size: 6rem;
    margin: 70px 0 35px;
}
.portfolio-item button {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 5px;
    margin-right: 20px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
}
.portfolio-item button:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
#portfolio-before-footer {
    background-color: #003a5d;
    padding: 80px 0 70px;
}
#pbf-left button {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 5px;
    margin-right: 20px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
}
#pbf-left button:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
.pbf-nextproject,
.pbf-prevproject {
    font-size: 12px;
    text-transform: uppercase;
    margin: 60px 0 0;
}
.pbf-nextproject a {
    color: #ff5a34;
}
.pbf-nextproject a:hover {
    color: #ff5a34;
}
.pbf-nextproject img {
    margin-left: 15px;
    width: auto;
}
.pbf-prevproject img {
    margin-right: 15px;
    width: auto;
}
.pbf-content {
    margin-top: 110px;
}
.pbf-content .item-initial {
    background-color: #FFF;
    color: #003a5d;
    padding: 8px 14px;
    display: inline-block;
    -webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.pbf-content .pbf-title {
    color: #FFF;
    display: block;
    margin-top: 7px;
    text-transform: uppercase;
}
.pbf-content .pbf-content-wrap p.pbf-title {
    color: #FFF;
    display: block;
    margin-top: 7px;
    text-transform: uppercase;
}
.pbf-content .pbf-content-wrap {
    margin-bottom: 30px;
}
.pbf-content .pbf-content-wrap p {
    color: #748693;
    margin-top: 0px;
}
.portfolio-single-gallery .masonry {
    margin:0;
    padding: 0;
    -moz-column-gap: 16px;
    -webkit-column-gap: 16px;
    column-gap: 16px;
    font-size: .85em;
}
.portfolio-single-gallery .item {
    display: inline-block;
    background: transparent;
    padding: 0em;
    margin: 0;
    width: 100%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
	box-sizing: border-box;
    box-shadow: 0px 0px 0px 0 #ccc;
}
.portfolio-single-gallery .item img {
    width: 100%;
    margin-bottom: 16px;
}
.portfolio-item .item-counter {
    display: block;
    font-size: 2em;
    border-top: 4px solid #ff5a34;
    margin-top: 12px;
}
.portfolio-item .item-initial {
    background-color: #003a5d;
    color: #FFF;
    padding: 10px 0px;
    display: inline-block;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    margin: 20px auto 0px;
    height: 42px;
    width: 42px;
}
.item-overview p {
	color:#748693!important;
}

.portfolio-item:nth-child(4n+1) .portfolio-item-content {
    background-color: #cfeae1;
}
.portfolio-item:nth-child(4n+2) .portfolio-item-content {
    background-color: #f8f391;
}
.portfolio-item:nth-child(4n+3) .portfolio-item-content {
    background-color: #f9c5d3;
}
.portfolio-item:nth-child(4n+4) .portfolio-item-content {
    background-color: #c1dfbe;
}
.portfolio-item .portfolio-item-image {
	background-color: #000;
}
.portfolio-item .portfolio-item-image a {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 1;
}
.portfolio-item .portfolio-item-image a:hover {
	opacity: 0.65;
}
.portfolio-item .button {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 5px;
    margin-right: 20px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
	display: inline-block;
}
.portfolio-item a.button:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
@media (min-width: 768px) and (max-width: 1024px) {
	.portfolio-item a.button { 
		margin-bottom: 5px; 
		width: 60%; 
	}
}
@media (max-width : 767px) {
	.portfolio-item-col {
		min-height: 350px;
		height: auto !important;
	}
	.portfolio-item .item-content {
    	padding: 6% 5% 15% 5%;
	}
	.portfolio-item a.button {
	    padding: 10px 20px 10px 20px;
		margin-right: 10px;
	}
	.portfolio-item h2.item-title {
		margin: 40px 0 35px;
	}
}
@media only screen and (min-width: 400px) {
    .masonry {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2;
    }
}
.portfolio-number {
    text-align: center;
    padding-top: 40px;
}
.portfolio-number .item-counter {
    font-size: 3.6rem;
    color: #003a5d;
}
.portfolio-number .orange-line {
    border-bottom: 4px solid #ff5a34;
    width: 50px;
    display: inline-block;
    margin-left: 10px;
}
h1.single-portfolio-title {
    text-align: center;
    font-size: 16rem;
    color: #748693;
    margin-bottom: 80px;
}
.portfolio-overview-content span {
    font-size: 1.8rem;
    text-transform: uppercase;
    margin-bottom: 10px;
    display: inline-block;
}
.portfolio-overview-content p {
    font-size: 1.6rem;
    margin: 0;
    padding: 0;
}
.portfolio-overview-side .item-initial {
    background-color: #003a5d;
    color: #FFF;
    padding: 10px 14px;
    display: inline-block;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    margin-bottom: 8px;
}
.portfolio-single-gallery  {
    margin: 0;
}
.portfolio-single-testimonial {
    text-align: center;
}
.portfolio-single-testimonial h3 {
    font-family:'Caslon Book BE Med', serif;
    color: #ff5a34;
}
.pbf-nextproject a[rel="next"],
.pbf-prevproject a[rel="prev"] {
    border: solid #748693 0px;
    background-color: transparent;
    color: #ff5a34;
}
.pbf-nextproject a[rel="next"]:hover,
.pbf-prevproject a[rel="prev"]:hover {
    background: transparent;
    border: solid #748693 0px;
    text-decoration: underline;
    color: #ff5a34;
}
.project-overview p {
    font-size:1.8rem;
}
#casestudy-testimonial .carousel-inner .item {
    height: auto !important;
}
.project-layout {
    margin-top:80px;
}
.single-fullwidth-img img {
    width: 100%;
    margin-bottom: 16px;
}
.post-content {
	padding-top: 100px;
}

#portfolio-before-footer {
    background-color: #003a5d;
    padding: 0px;
	position: relative;
}
.portfolio-carousel-controls {
	position: absolute;
	top: 50px;
	left: 0;
	right: 0;
	z-index: 99;
}
.item-case-study {
	background-color: #003a5d;
	padding: 80px 0 70px;
}
.item-testimonial {
	background-color: #ece7e1;
	padding: 80px 0 70px;
}
.pbf-content .item-initial-blue {
    background-color: #003a5d;
    color: #fff;
}

/****************

THE GRAIN

****************/
#the-grain .page-intro .container-lg2 {
    background: url(../images/bg-hero-thegrain.jpg) no-repeat;
    background-position: top left;
    background-size: cover;
    padding: 110px 0;
}
.the-grain-posts {
    margin: 90px 0 50px;
}
.the-grain-links ul {
    list-style: none;
    margin: 15px 0;
    padding: 0;
}
.the-grain-links ul li {
    list-style: none;
}
.the-grain-links h4 {
    color: #003a5d;
    padding: 0 0 15px 0 !important;
    border-bottom: 3px solid #ff5a34;
}
.recent-post-title {
    color: #748693;
    font-size: 14px;
    display: block;
}
.recent-post-date {
    color: #748693;
    font-size: 10px;
    display: block;
}
.the-grain-recent ul li {
    margin-bottom: 10px;
}
.the-grain-category ul li {
    margin-bottom: 5px;
}
.the-grain-category ul li a {
    color: #748693;
    font-size: 14px;
    font-family: 'bw_modelicaextrabold', sans-serif;
}
.the-post {
    margin-top: 20px;
}
.the-post h2 {
    line-height: 1em;
    margin-top: 0px;
    margin-bottom: 10px;
}
.the-post .custom-date-pub {
    color: #748693;
    font-size: 16px;
    margin-bottom: 25px;
    display: block;
}
.the-post article {
    border-top: 4px solid #c2c9cb;
    padding-top: 30px;
    margin-bottom: 60px;
    display: none;
}
article a.post-readmore {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 12px 0px 12px 0px;
    margin-top: 25px;
    margin-right: 20px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
    display: block;
    width: 160px;
    text-align: center;
}
article a.post-readmore:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
article p {
    margin-top: 0;
}
#loadMore {
    color: #748693;
    font-family: 'bw_modelicaextrabold', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
}
#loadMore:hover {
    color: #748693;
}
#loadMore img {
    margin-bottom: 10px;
}
.gbf-wrap {
    background: url(../images/bg-thegrain-footer.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    padding: 80px 0;
    color: #FFF;
}
.gbf-wrap h2 {
    color: #FFF;
    margin-top: 0;
}
.post-featured-img {
    height: 500px;
    background-position: center center;
    background-size: cover;
	background-attachment: fixed;
}

.post-title {
    margin-top: 70px;
    margin-bottom: 30px;
}
a[rel="prev"], a[rel="next"]  {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #fff;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 30px;
    margin-right: 20px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: #748693;
    text-transform: uppercase;
    display: inline-block;
}
a[rel="prev"]:hover, a[rel="next"]:hover {
    background: #FFF;
    border: solid #748693 2px;
    text-decoration: none;
    color: #748693;
}
a[rel="prev"] {
    float: left;
}
a[rel="next"] {
    float: right;
}
.blog-post {
    background: #fff;
    padding-bottom: 80px;
}
.search-bar .btn-primary {
    color: #ff5a34;
    font-family: 'bw_modelicaextrabold', sans-serif;
    background-color: #ece7e1;
    border-color: transparent;
    border-radius: 0px;
}
.search-bar .form-control {
    background-color: #ece7e1;
    border: 0px solid #ccc;
    border-radius: 0px;
}
.search-bar .btn .lnr {
    font-weight: 900;
}
.share-addthis {
    font-size: 1.4rem;
    color: #748693;
    display: inline-block;
}
.at-style-responsive .at-share-btn {
    background-color: transparent !important;
    color: #748693 !important;
}
.at-resp-share-element .at-icon {
    fill: #748693 !important;
}
.addthis_inline_share_toolbox {
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
}
#blog-instafeed {
    width: 100%;
    height: auto;
    background-color:#FFF;
}
#blog-instafeed #blogfeed {
    float: none;
    width: 100%;
    text-align: center;
}
#blog-instafeed .insta_box {
    width: auto;
    height: 100%;
    float: none;
    display: inline;
    margin: 0;
}
.single-post-content {
    padding-top:30px !important;
}

/****************

CONTACT US

****************/
#contact-strip {
    background-color: #ece7e1;
    padding: 30px 0;
}
#contact-strip ul {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
}
#contact-strip ul li {
    list-style: none;
    display: inline-block;
    margin: 0;
    padding:0;
    width: 30%;
}
#contact-strip ul li a {
    color: #ff5a34;
    font-size: 2.1rem;
    padding: 40px 0;
    width: 100%;
    display: block;
}
#contact-strip ul li a:hover {
    background-color: #ff5a34;
    color: #FFF;
}
#contact-vb1,
#contact-vb2,
#contact-vb3,
#contact-vb4 {
    padding: 40px 50px;
}
#contact-vb1 {
    background: url(../images/img-visualbox-contact1.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    min-height: 700px;
}
#contact-vb1 .content-wrap {
    width: 100%;
    height: 100px;
    position: absolute;
    margin: auto;
    text-align: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
#contact-vb1 .content-wrap h4 {
    color: #fff;
	font-size: 2.6rem;
}
#contact-vb2 {
    background: url(../images/img-visualbox-contact2.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    min-height: 700px;
}
#contact-vb2 .content-wrap {
    width: 300px;
    height: 100px;
    position: absolute;
    margin: auto;
    text-align: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
#contact-vb2 p {
    color: #ece7e1;
    font-size: 2.6rem;
    margin: 0;
}
#contact-vb2 a {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #ece7e1;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 5px;
    margin-right: 20px;
    border: solid #ece7e1 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
    display: inline-block;
}
#contact-vb2 a:hover {
    background: #ff5a34;
    border: solid #ff5a34 2px;
    text-decoration: none;
    color: #ece7e1;
}
#contact-vb3 {
    background: url(../images/img-visualbox-contact3.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    min-height: 700px;
}
#contact-vb3 .content-wrap {
    width: 300px;
    height: 120px;
    position: absolute;
    margin: auto;
    text-align: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
#contact-vb3 p {
    color: #ece7e1;
    font-size: 2.6rem;
    margin: 0;
}
#contact-vb3 ul {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
}
#contact-vb3 ul li, ul.contact-social li {
    list-style: none;
    display: inline-block;
    margin: 0 10px;
    padding: 0;
}
#contact-vb3 ul li a, ul.contact-social li a {
    color: #ece7e1;
    font-size: 18px;
}
ul.contact-social {
    list-style: none;
    margin: 0;
    padding: 0;
}
ul.contact-social li a {
    font-size: 24px;
}
#contact-vb4 {
    background: url(../images/img-visualbox-contact4.jpg) no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
    min-height: 700px;
}
#contact-vb4 .content-wrap {
    width: 70%;
    height: 50%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
#contact-vb4 p {
    color: #ece7e1;
    margin-bottom: 0;
    margin-top: 5px;
}
#contact-vb4 h3 {
    color: #ece7e1;
    margin-bottom: 0;
}
#contact-vb4 img {
    width: 250px;
   	height: auto;
	margin-top: 140px;
}

@media (max-width : 991px) {
	#contact-vb1 {
		min-height: 400px;
	}
	#contact-vb2 {
		min-height: 400px;
	}
	#contact-vb3 {
		min-height: 400px;
	}
	#contact-vb4 img {
		width: auto;
		max-width: 100%;
		height: auto;
		margin-top: 0px;
	}
	#contact-vb4 .content-wrap {
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
}

.contact-subscribe {
    margin-top: 20%;
    color: #003a5d;
}
.contact-subscribe p {
    font-size: 16px;
    color: #003a5d;
    text-transform: uppercase;
}
#contact-subscribe-form {
    margin-top: 30px;
}
#contact-subscribe-form .gform_body label {
    display: none;
}
#contact-subscribe-form .gform_body input {
    color: #748693;
    font-family: 'bw_modelicaextrabold', sans-serif;
    font-size: 12px;
    padding: 15px 20px;
    border: 0;
    background-color: #ece7e1;
    margin-bottom: 10px;
}
#contact-subscribe-form .gform_footer {
    text-align: left;
}
#contact-subscribe-form .gform_footer input {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 10px 30px 10px 30px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
    margin: 0;
}
#contact-subscribe-form .gform_footer input:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
#contact-subscribe-form .gform_footer input:focus {
    outline: none;
}
#contact-subscribe-form .gform_wrapper ul li.gfield {
    margin-top: 10px;
}
#contact-before-footer {
    background-color: #ff5a34;
    padding: 50px 0;
    margin-top: 60px;
}
#contact-before-footer h2 {
    margin: 0;
    padding: 0;
    color: #ece7e1;
    text-align: center;
}
#contact-strip ul li {
    list-style: none;
    display: block;
    margin: 0;
    padding: 0;
    width: 33.334%;
    float: left;
}
#contact-vb3 ul.contact-social li a:hover {
    color: #ff5a34;
}


#Mbuild-project, 
#Mdesigner-architect,
#Mcareers {
top:5%;
outline: none;
}
.tab-contents h3 {
    margin-top: 30px;
}
.tab-contents p {
    margin-top: 30px;
    margin-bottom: 5px;
}
.tab-contents .gform_wrapper {
    margin: 20% 0 10%;
}
.tab-contents .gform_wrapper .top_label .gfield_label {
    font-family: 'bw_modelicaextrabold', sans-serif;
    font-size: 1.4rem;
    color: #748693;
    margin: 15px 0 0 0;
}
.tab-contents .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #748693;
    width: 100%;
    background-color: #fff;
}
.tab-contents .gform_wrapper textarea {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #748693;
    height: 80px !important;
    background-color: #fff;
}
.tab-contents .gform_wrapper select {
    background-color: #ff5a34;
    color: #FFF;
    width: 100% !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0px;
    padding: 5px 10px !important;
    height: 35px;
    border: 1px solid #FFF;
}
.tab-contents .gform_wrapper .gform_footer input[type=submit] {
    -webkit-border-radius: 30;
    -moz-border-radius: 30;
    border-radius: 30px;
    font-family: 'bw_modelicaextrabold', sans-serif;
    color: #748693;
    font-size: 12px;
    padding: 10px 40px 10px 40px;
    margin-top: 25px;
    border: solid #748693 2px;
    text-decoration: none;
    background-color: transparent;
    text-transform: uppercase;
}
.tab-contents .gform_wrapper .gform_footer input[type=submit]:hover {
    background: #748693;
    text-decoration: none;
    color: #FFF;
}
.tab-contents .gform_wrapper input:focus,
.tab-contents .gform_wrapper textarea:focus {
    outline: none;
}
#contact-strip ul li.active {
    background-color: #ff5a34;
    color: #FFF;
    font-family: 'bw_modelicaextrabold', sans-serif;
}
#contact-strip ul li.active a {
    color: #FFF;
}
@media (max-width : 767px) {
	#contact-strip ul li {
		width: 100%;
		float: none;
	}
}


/****************

FOOTER 

****************/

footer {
	margin-left: 0px !important;
	margin-right: 0px !important;
    padding: 50px 0;
    background-color: #fff;
}
footer h4.widget-title {
    color:#ff5a34;
    font-size: 1.2rem;
    font-family: 'bw_modelicaextrabold', sans-serif;
    margin-bottom: 10px;
    padding: 0;
    text-transform: uppercase;
}
footer .footer-contact p {
    font-size: 1.2rem;
    word-wrap: break-word;
}
footer ul {
    list-style: none;
    margin: 10px 0 0;
    padding: 0;
}
footer ul li {
    list-style: none;
    margin: 10px 0;
}
footer ul li a {
    display: block;
    color:#748693;
    font-size: 1.2rem;
    font-family: 'bw_modelicaextrabold', sans-serif;
}
footer ul li span {
    font-size: 1rem;
    font-family: 'bw_modelicaregular', sans-serif;
    display: block;
    margin-top: 5px;
}
.footer-orange-border {
    border-bottom: solid 4px #ff5a34;
}
.footer-credit {
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #b5bdc2;
	color: #b5bdc2;
}
.footer-credit a {
	color: #b5bdc2;
}
.footer-credit a:hover {
	color: #ff5a34;
}
.footer-credit p {
	margin: 0px 0px 20px;
	font-size: 1.2rem;
}
.footer-credit p strong {
	text-transform: uppercase;
	font-family: 'bw_modelicaextrabold';
	font-weight: normal;
}
.footer-social  {
	float: left;
}
.footer-social a {
	color: #748693;
	display: block;
	text-align: center;
	padding: 8px 20px;
}
.footer-social a:hover {
	color: #ff5a34;
}
#instafeed {
	float: left;
	width: 195px;
}
.insta_box {
    width: 60px;
	height: 60px;
	overflow: hidden;
    float: left;
	margin-right: 5px;
	margin-bottom: 5px;
}

@media (max-width : 767px) {
	footer {
		text-align: center;
	}
    .footer-social  {
        float: none;
    }
}

/****************

FORMS 

****************/

.gform_body ul {
	padding: 0 !important;
}
.gform_wrapper {
	margin: 0 0 20px;
}
.gform_wrapper ul {
	list-style: none;
	margin-left: 0;
}
.gform_wrapper form {
	margin-bottom: 0;
}
.gfield_radio input,  .gfield_checkbox input {
	vertical-align: 0;
}
.gfield_radio label,  .gfield_checkbox label {
	display: inline-block;
	margin-left: 8px;
}
.gform_description {
	margin-bottom: 15px;
	display: block;
}
.gform_wrapper .gfield_required {
	color: #FF0000;
	padding-left: 1px;
}
.gform_wrapper .validation_message {
	display: none;
}
.validation_error,  #gforms_confirmation_message {
	padding: 8px 35px 8px 14px;
	margin-bottom: 20px;
	color: #c09853;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
	background-color: #fcf8e3;
	border: 1px solid #fbeed5;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.validation_error,  .gform_wrapper .gfield_error input[type=text],  .gform_wrapper .gfield_error input[type=tel],  .gform_wrapper .gfield_error input[type=email],  .gform_wrapper .gfield_error textarea,  .gform_wrapper .gfield_error select {
	color: #b94a48;
	background-color: #f2dede;
	border-color: #eed3d7;
}
.gform_wrapper .gfield_error label {
	color: #b94a48;
}
.ginput_left {
	width: 48%;
	margin-right: 2%;
	float: left;
}
.ginput_right {
	width: 50%;
	float: left;
}
.ginput_left label,  .ginput_right label {
	font-size: 0.8em;
}
select,  textarea,  input[type="text"],  input[type="password"],  input[type="datetime"],  input[type="datetime-local"],  input[type="date"],  input[type="month"],  input[type="time"],  input[type="week"], input[type="number"],  input[type="email"],  input[type="url"],  input[type="search"],  input[type="tel"],  input[type="color"],  .uneditable-input {
	width: 100%;
	min-height: 38px;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
}
.gform_wrapper li.gfield.gfield_error {
    background-color: transparent !important;
    margin-bottom: 0px!important;
    border-top: 0px solid #C89797 !important;
    border-bottom: 0px solid #C89797 !important;
    padding-bottom: 0px;
    padding-top: 0px;
    box-sizing: border-box;
}
.gform_wrapper div.validation_error {
    color: #FFF;
    font-size: 1em;
    font-weight: 400;
    margin-bottom: 25px;
    padding: 16px 0;
    clear: both;
    width: 100%;
    text-align: center;
    background: transparent;
    border: 0;
}
.gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), 
.gform_wrapper li.gfield_error textarea {
    border: 1px solid #ff0000;
    background-color: #fff;
    color: #FFF;
}


.gform_wrapper div.validation_error {
    color: #ff5a34;
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 25px;
    border-top: 2px solid #ff5a34;
    border-bottom: 2px solid #ff5a34;
    padding: 16px 0;
    clear: both;
    width: 100%;
    text-align: center;
    border-radius: 0px;
    margin: 0;
}
.gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    background-color: rgba(255, 90, 52,.25);
    margin-bottom: 0px!important;
    border-top: 1px solid #C89797;
    border-bottom: 1px solid #C89797;
    padding-bottom: 0;
    padding-top: 0;
    box-sizing: border-box;
}
.gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), 
.gform_wrapper li.gfield_error textarea {
    border: 1px solid rgb(255, 90, 52)!important;
}
.gform_wrapper .gfield_required {
    color: #ff5a34;
    padding-left: 1px;
}
.gform_confirmation_wrapper {
    margin: 35% 15%;
    font-weight: 700;
    font-size: 18px;
    text-align: center;
}

/****************

OTHERS

****************/
.row.is-flex {
    display: flex;
    flex-wrap: wrap;
}
.row.is-flex > [class*='col-'] {
    display: flex;
    flex-direction: column;
}

/*
* And with max cross-browser enabled.
* Nobody should ever write this by hand. 
* Use a preprocesser with autoprefixing.
*/
.row.is-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.row.is-flex > [class*='col-'] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

/****************

CUSTOMIZED RESPONSIVE STYLES 

****************/

/* Desktop HD

------------------------- */
.home-2019-slider {
    background-color: #fff;
}
@media (min-width: 1920px) {
    .home-slider .owl-prev {
        position: absolute;
        top: 50%;
        left: -50px;
    }
    .home-slider .owl-next {
        position: absolute;
        top: 50%;
        right: -50px;
    }
    .home-2019-slider .owl-prev {
        position: absolute;
        top: calc(100% - 90px);
        left: 140px;
    }
    .home-2019-slider .owl-next {
        position: absolute;
        top: calc(100% - 90px);
        right: 140px;
    }
}

/* Desktop large

------------------------- */

@media (min-width: 1200px) and (max-width: 1500px) {
    .container-lg {
        width: 90%;
        margin: 0 auto;
    }
}

/* Desktop

------------------------- */

@media (min-width: 980px) {
}

/* Desktop

------------------------- */

@media (max-width: 980px) {
/*.sub-menu {

	margin: 0 0 10px 15px;

	position:relative;

  }*/

}

/* Tablet to desktop

------------------------- */

@media (min-width: 768px) and (max-width: 1024px) {
    h1.logo a img { max-width: 70%; }
    #vb-right { padding: 0;}
    .portfolio-item h2.item-title { margin: 40px 0 25px; }
    .portfolio-item button { margin-bottom: 20px; width: 60%; }
    .page-intro-wrap { padding-left: 15px; padding-right: 15px; }
    .fm-boxes .overlay, .fm-boxes-port .overlay { opacity: 1; background: rgba(0,0,0,.35); }
    .fm-boxes .overlay .content-middle { top: 20%; }
}

/* Tablet

------------------------- */

@media (max-width: 767px) {
    .container-lg,
    .container-lg2 { overflow-x: hidden; }
    h1.logo a img { max-width: 40%; }
    .home-section { padding-top: 20%; padding-left: 5%; padding-right: 5%; }
    .special-h2 { font-size: 5.5rem; margin-bottom: 10px !important; line-height: 1em; }
    #home-intro { background: none; }
    .circle-arrow{ margin:60px 0; }
    #home-tabs { background-color: #ff5a34; height: 200px; }
    .tab-nav-wrap { background-color: #ff5a34; }
    .tab-nav-wrap .container { margin: 0; padding: 0; }
    #home-tabs .nav-tabs>li {width:100%;}
    #home-tabs .nav-tabs>li>a { padding:20px 0; color: #FFF; background-color: #ff5a34; font-family: 'bw_modelicaextrabold', sans-serif; border-bottom: 1px solid #FFF; border-top:1px solid #FFF;}
    #home-fl { margin-top: 0px; }
    #home-fr .next-arrow { display: none; }
    .home-fr-box { margin: 30px 0 0; }
    .row.is-flex { display: block !important; }
    #visual-boxes { overflow-x: hidden; }
    #vb-left, #vb-right { border: 0; }
    #vb-left .overlay { position: relative; opacity: 1; padding: 40px 35px;}
    #vb-left .overlay p { position: relative; padding: 0; }
    #vb-right { padding: 40px 35px; }
    .fm-boxes .overlay, .fm-boxes-port .overlay { opacity: 1; background: rgba(0,0,0,.35); }
    .fm-boxes .overlay .content { left: 15%; }
    .col-sm-6 .fm-boxes { padding-bottom: 76.92%; }
    #home-before-footer h2 { margin-bottom: 40px; }
    .enquire-proj { margin-bottom: 50px; }
    .page-intro .container-lg2 { padding: 60px 0; }
    .page-intro-wrap, .post-content { padding-left: 15px; padding-right: 15px; }
    .page-intro-wrap h2 { font-size: 4.4rem; }
    .section1-wrap .logo-wrap { padding: 60px 0 0; }
    .section1-wrap .logo-wrap { padding: 0 0 20px; }
    img.ethos-logo { width: 50%; }
    .section1-wrap { padding-top: 60px !important; padding-bottom: 60px; }
    #ethos-vb2, #build-vb1, #build-vb4 { min-height: 350px; }
    #ethos-vb2 .content-wrap, #build-vb1 .content-wrap, #build-vb4 .content-wrap { left: 10%; }
    #ethos-section3 { padding: 60px 20px; }
    #ethos-section3 h2, #build-before-footer h2, #ethos-vb2 h2, #ethos-vb3 h2 { font-size: 3.6rem; }
    #ethos-section4 { padding: 60px 0; }
    #ethos-vb3 { min-height: 400px; }
    #ethos-vb3 .content-wrap { right: 0; left: 15%; }
    #ethos-standards { padding: 60px 0; }
    #ethos-standards h2 { margin: 30px 0 !important; }
    .page-section.with-padding { padding: 20px 0; }
    #build-before-footer { padding-bottom: 90px; }
    .row.is-flex > [class*='col-'] { display: block; }
    .item-img-wrap1, .item-img-wrap2, .item-img-wrap3, .item-img-wrap4 { height: 350px; }
    h1.single-portfolio-title { font-size: 6rem; margin-bottom:50px; }
    .portfolio-overview-side { margin-top:50px; }
    .portfolio-single-gallery { margin: 0; }
    .project-layout {margin-top:40px;}
    #pbf-left button { width:90%; margin: 0 auto 15px; display:block; }
    #pbf-left .pbf-content { margin-top:120px; }
    #pbf-right .pbf-content { margin-top:60px; }
    .pbf-nextproject a[rel="next"], .pbf-prevproject a[rel="prev"] { padding:0; }
    .home-slider .owl-prev, .home-slider .owl-next { display:none; }
    .home-slider .container-lg { width:90%; }
    body.home h3.caslon-medium {font-size: 2.3rem;}
    /*#featured-mason {padding-bottom:0;}*/
    #home-featured .arrow-nav, #customNav { display:none; }
    #ethos-vb2 .content-wrap { bottom:0; }
    .mobile-nopadding { padding:0 !important; }
    #ethos-carousel { overflow:hidden; width: 1px; min-width: 100%;}
    .post-featured-img { background-attachment: inherit; }
    #contact-strip .container { margin:0; padding:0; }
    #contact-strip ul li { background-color: #ff5a34; color: #FFF; font-family: 'bw_modelicaextrabold', sans-serif; }
    #contact-strip ul li a { color:#FFF; border-bottom: 1px solid #FFF; border-top: 1px solid #FFF; padding:20px 0;}
    .tab-contents .tbx-col-left, .tab-contents .tbx-col-right { margin: 0 15px; }
}

/* Landscape & portrait phones

------------------------- */
@media (max-width: 736px) {
    .hidden-mobile { display: none; }
}


/***
*   ANIMATIONS
**/

.bounce-up > div {
  opacity: 0;
  -moz-transition: all 700ms ease-out;
  -webkit-transition: all 700ms ease-out;
  -o-transition: all 700ms ease-out;
  transition: all 700ms ease-out;
  -moz-transform: translate3d(0px, 200px, 0px);
  -webkit-transform: translate3d(0px, 200px, 0px);
  -o-transform: translate(0px, 200px);
  -ms-transform: translate(0px, 200px);
  transform: translate3d(0px, 200, 0px);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bounce-up.in-view > div {
  opacity: 1;
  -moz-transform: translate3d(0px, 0px, 0px);
  -webkit-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate(0px, 0px);
  -ms-transform: translate(0px, 0px);
  transform: translate3d(0px, 0px, 0px);
}
