/*
	Theme Name: Cohen
	Version: 2.0
	Author: Ivan Svitlychnyy

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

/*web fonts*/
@import url('https://fonts.googleapis.com/css?family=Work+Sans:100,200,300,400,500,600,700,800,900');
@import url('https://fonts.googleapis.com/css?family=Playfair+Display:400,400i,700,700i,900,900i');


/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
}
body {
	font-family: 'Work Sans', sans-serif;
	font-size: 14px;
	line-height: 1.7;
	color:#363636;

}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color:#0273e3;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: all ease-in-out 0.2s;
}
a:hover {
	color:#0273e3;
	border-color: #0273e3;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
	width:100%;
	margin:0 auto;
	position:relative;
}

.content-block { width: 95%; max-width: 1320px; position: relative; margin: 0 auto; }

/* header */
.header {
	position: fixed; top: 0; left: 0; width: 100%; z-index: 9999; background: #fff; height: 90px;
}
/* logo */
.logo { float: left; line-height: 1; }

.logo a { border: none; }

.logo-img { margin-top: 18px; }

.text-logo { font-size: 18px; font-family: 'Playfair Display', serif; color:#363636; display: inline-block; margin-top: 15px; }
.text-logo:hover { color:#363636; }

.header-action-block { float: right;  line-height: 1; }
.header-phone { float: left; padding-top: 18px; }
.header-phone a { font-weight: 600;  }
.login-link { float: left; margin-left: 48px; }
.login-link a { height: 30px; display: inline-block; line-height: 30px; padding: 0 34px 0 34px; margin-top: 10px; text-align: center; background: #0273e3; border-radius: 15px; color: #fff; font-weight: 600; }
.login-link a:hover { background: #1988f6; }
.header-search-form { float: left; margin-left: 25px; }

.header-search-form .search-input { height: 28px; margin-top: 10px; border-radius: 15px; border: #b7b7b7 solid 1px; width: 175px;  padding: 0 20px 0 30px; }
.header-search-form form { position: relative; overflow: hidden; }
.header-search-form .search-submit {  width: 12px; height: 12px; background: url(img/icons/magnifier.png) no-repeat center; border: none; text-indent: 99999px; position: absolute; left: 15px; top: 19px; z-index: 10; }

/* nav */
.nav { background: #ebebeb; margin-top: 10px; }
.nav ul { margin: 0; padding: 0;}
.nav ul li { list-style-type: none; line-height: 1; display: inline-block; float: left; padding: 13px 0 13px 0; position: relative}
.nav ul li a { color: #363636; font-weight: 600; border: none; padding: 0 21px 0 21px; }
.nav ul li a:hover, .nav ul li.current-menu-item > a  { color: #0273e3; }
.nav ul li:first-child a { padding-left: 0; }

.nav ul li ul { position: absolute; left: 0; top: 40px; background: rgba(255,255,255, 1); padding: 20px 25px 25px 25px; opacity: 0; transition: opacity ease 0.2s;
	-webkit-box-shadow: 0px 2px 8px 2px rgba(0,0,0,0.19);
	-moz-box-shadow: 0px 2px 8px 2px rgba(0,0,0,0.19);
	box-shadow: 0px 2px 8px 2px rgba(0,0,0,0.19);
	/*border: #b7b7b7 solid 1px; border-top: none;*/

	z-index: -1;
	display: none;
}
.nav ul li ul li { display: block; text-align: left; width: 170px; }
.nav ul li ul li a { padding: 0; }
.nav ul li:hover > ul { display: block; opacity: 1; z-index: 999; }


/* sidebar */
.sidebar {

}
/* footer */
.footer-logos { margin-top: 70px; text-align: center; }
.footer { border-top: #b7b7b7 solid 1px; line-height: 1; padding: 15px 0 15px;  font-size: 16px; margin-top: 30px; margin-bottom: 15px; }
.footer-address { float: left;  font-weight: 600; color:#0273e3;  }
.footer-address > a:hover { border: none !important; }
.copyright { float: right; text-align: right; color: #363636; }
.copyright p { margin: 0; }

/*------------------------------------*\
    PAGES
\*------------------------------------*/
/*home*/
.home-page-banner { height: 408px; background-position: top center; background-repeat: no-repeat; background-size: cover; position: relative; margin-top: 90px; }
.banner-top-line { background: rgba(160, 202, 237, 0.55); text-align: center; color: #0273e3; font-weight: 600; padding: 8px 0 8px 0; position: absolute; width: 100%; transition: opacity ease 0.5s; z-index: 10; }
.banner-top-line:hover { opacity: 1 !important; }

.heading-text { line-height: 1.5; padding-right: 190px; float: right; padding-top: 90px; }
.heading-text h1 { font-family: 'Playfair Display', serif; font-size: 36px; margin: 0; font-weight: 400; }
.heading-text h2 { font-size: 30px; font-weight: 300; margin: 0; }
.heading-text h3 { font-size: 16px; font-weight: 400; margin: 0; color: #0273e3; margin-top: 10px; }
.heading-about-link {
	height: 40px;
	display: inline-block;
	line-height: 38px;
	padding: 0 50px 0 34px;
	margin-top: 30px;
	text-align: center;
	background: #0273e3;
	border-radius: 20px;
	color: #fff;
	font-weight: 600;
	border: none ;
	position: relative;
}

.heading-about-link:after {
	content: '';
	display: inline-block;
	width: 20px; height: 100%;
	background: url(img/icons/right-arrow.png) no-repeat center;
	background-size: 20px;
	position: absolute;
	right: 20px;
	top: 0;
}

.heading-about-link:hover { color: #fff; background: #1988f6; }
.heading-about-link span { padding-left: 15px; position: relative; top: 1px;
}


.main-content-section {
	background-image: url(img/home_content_bg_right.png), url(img/home_content_bg_left.png);
	background-repeat: no-repeat, no-repeat;
	background-position: right top, left bottom;

	margin: 40px auto 0 auto;
	max-width: 1440px;
	min-height: 1100px;

}
.home-content-line1 { max-width: 600px; float: left; padding-left: 40px; }
.home-content-line1 h2 { font-size: 24px; font-family: 'Playfair Display', serif; font-weight: 400; margin: 0; }

.home-logos { max-width: 600px; float: left; padding-left: 40px; margin-top: 25px; }
.delimiter { width: 100px; height: 2px; background: #0273e3; }
.home-logos img { margin-top: 45px; }

.home-quote { max-width: 525px; margin-top: 110px; padding-left: 90px; position: relative; }
.home-quote span { width: 28px; height: 26px; background: url(img/icons/quote.png) no-repeat center; display: block; position: absolute; top: -12px; left: 45px;  }


.home-services-content { width: 45%; float: right; margin-top: 110px; }
.home-services-content .services-title, .content-title { font-size: 24px; font-family: 'Playfair Display', serif; font-weight: 400; margin: 0; }
.service-item .service-content { opacity: 0; transition: all ease 0.2s; }
.services-list { }
.service-item { width: 33%; float: left; }
.service-item.active .service-content { opacity: 1; }

.service-title { border-bottom: #b7b7b7 solid 1px; padding: 15px 0 15px 0; cursor: pointer; font-weight: 600; }
.service-title:hover { color: #0273e3; transition: all ease 0.2s; }
.service-item.active .service-title { border-bottom: #0273e3 solid 1px; color: #0273e3; }
.service-item ul { margin: 0; padding: 0; margin-top: 15px; }
.service-item ul li { list-style-type: none; font-weight: 600; margin-bottom: 10px; }

.service-item li a { color: #363636; border: none;}
.service-item li a:hover {  color: #0273e3; }

.home-contact { background: url(img/home_contact_bg.jpg) no-repeat top center /cover; height: 671px; margin-top: 50px; }
.home-contact-form { background: #fafafa; opacity: 0.95; width: 42%; float: right; margin-top: 25px; padding: 50px;
	-webkit-box-shadow: 0px 0px 5px 2px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 0px 5px 2px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 5px 2px rgba(0,0,0,0.1);
}
.home-contactform-phone { margin-top: 10px; margin-bottom: 15px; }
.home-contactform-phone a { font-weight: 600; }

input[type=text], input[type=email], input[type=password] {
	background: none;
	border: none;
	border-bottom: #b7b7b7 solid 1px;
	height: 30px;
	padding: 0 ;
	width: 100%;
}

input[type=text]:focus, input[type=email]:focus, input[type=password]:focus { border-bottom: #0273e3 solid 1px; color: #0273e3; font-weight: 600;}

input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: #363636;
}
input::-moz-placeholder { /* Firefox 19+ */
	color: #363636;
}
input:-ms-input-placeholder { /* IE 10+ */
	color: #363636;
}
input:-moz-placeholder { /* Firefox 18- */
	color: #363636;
}


input:focus::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: #0273e3;
	font-weight: 600;
}
input:focus::-moz-placeholder { /* Firefox 19+ */
	color: #0273e3;
	font-weight: 600;
}
input:focus:-ms-input-placeholder { /* IE 10+ */
	color: #0273e3;
	font-weight: 600;
}
input:focus:-moz-placeholder { /* Firefox 18- */
	color: #0273e3;
	font-weight: 600;
}

.wpcf7-checkbox span.wpcf7-list-item { margin-left: 0; }
.form-line { margin-bottom: 20px;}
.form-line label { display: block; }
textarea { border: #b7b7b7 solid 1px; padding: 15px; resize: none;  height: 175px; width: 100%; }
textarea:focus { border: #0273e3 solid 1px; color: #0273e3;  }
input[type=submit] {
	height: 30px;
	display: inline-block;
	line-height: 30px;
	padding: 0 34px 0 34px;
	margin-top: 10px;
	text-align: center;
	background: #0273e3;
	border-radius: 15px;
	color: #fff;
	font-weight: 600;
	border: none;
	cursor: pointer;
	transition: all ease 0.2s;
}

input[type=submit]:hover { background: #1988f6; }


.form-line.items2 input.item1 { float: left; width: 48%; float: left; }
.form-line.items2 input.item2 { float: left; width: 48%; float: right; }

span.wpcf7-not-valid-tip { display: none; }

input[type=text].wpcf7-not-valid, input[type=email].wpcf7-not-valid, input[type=password].wpcf7-not-valid {
	background: none;
	border: none;
	border-bottom: #f00 solid 1px;
}



/*about us*/
.inner-page-banner {
	height: 408px;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	margin-top: 90px;
}

.about-us-banner .heading-text { max-width: 710px; padding-right: 0; padding-top: 85px; }
.about-us-banner .heading-text h3 { color: #363636; padding-right: 190px; }
.about-us-banner .heading-text h3 a { font-weight: 600; }
.about-us-banner .heading-text img { margin-top: 35px; }

.main-content-area { padding-top: 10px; }
.about-us-left-col { width: 50%; float: left; padding-right: 35px; }
.about-us-right-col { width: 50%; float: left; padding-left: 35px; }
.main-content-area h2 { font-size: 24px; font-family: 'Playfair Display', serif; font-weight: 400; margin: 0; }
.blue-bold { color: #0273e3; font-weight: 600; }

.content-item, h2.content-item { margin-top: 30px; }
.main-content-area ul li { list-style-type: none; position: relative; line-height: 2; }
.main-content-area ul li:before { content: "\00b7"; color: #0273e3; font-weight: 600; font-size: 30px; position: absolute; left: -12px; top: -14px; }

.about-us-quote { max-width: 100%; margin-top: 75px; padding-left: 55px; position: relative; }
.about-us-quote span { width: 28px; height: 26px; background: url(img/icons/quote.png) no-repeat center; display: block; position: absolute; top: -12px; left: 0;  }


/*financing*/
.financing-left-col { width: 50%; float: left; padding-right: 35px; }
.financing-right-col { width: 50%; float: left; padding-left: 35px; }
.page-template-template-financing .main-content-area ul li { margin-bottom: 15px; }
.financing-banner .heading-text { max-width: 570px; padding-right: 0; float: left; padding-top: 75px; }
.financing-banner .heading-text h3 { color: #363636; margin-top: 20px; }
.financing-banner .heading-about-link { padding: 0 50px 0 34px; margin: 40px 0 20px 0; line-height: 40px; }


/*special*/
.special-left-col { width: 50%; float: left; padding-right: 35px; }
.special-right-col { width: 50%; float: left; padding-left: 35px; }
.page-template-template-specialevents .main-content-area ul li { margin-bottom: 15px; }
.special-banner .heading-text { max-width: 570px; padding-right: 0; float: left; padding-top: 75px; }
.special-banner .heading-text h3 { color: #363636; margin-top: 20px; }



/*Gallery*/
.gallery-banner { height: auto; margin-bottom: 30px; }
.gallery-nav ul { margin: 0; padding: 0; }
.gallery-nav ul li { display: inline-block; list-style-type: none; }
.gallery-nav ul li a { color: #363636; font-size: 14px; font-weight: 600; padding: 0 22px 0 22px; border: none; }
.gallery-nav ul li:first-child a { padding-left: 0; }
.gallery-nav ul li a:hover, .gallery-nav ul li.current-menu-item a { text-decoration: none; border: none; color: #b7b7b7; }

.gallery-wrapper { margin-top: 40px; }
.gallery-item  { margin-bottom: 30px; }
.gallery-items .gallery-item:last-child { margin-bottom: 0; }
.gallery-image { width: 31%; float: left; margin-left: 3%; height: 140px; margin-bottom: 25px; cursor: pointer; position: relative;
background-position: center center; background-size: cover; background-repeat: no-repeat;
}
.gallery-images .gallery-image:nth-child(3n+1) { margin-left: 0; }

.gallery-description { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(2, 115, 227, 0.25); opacity: 0; transition: opacity ease 0.2s; }
.gallery-image:hover > .gallery-description { opacity: 1;}
.gallery-description a { text-decoration: none; color: #fff; width: 100%; height: 100%; display: block; font-size: 18px; padding: 30px; }
.gallery-description a h2 { font-size: 18px; font-weight: normal; margin: 0; }

.gallery-title { font-weight: 600; color: #333333; position: relative; top: -15px; }

h2.gallery-subheader {
	font-size: 24px;
	font-family: 'Playfair Display', serif;
	font-weight: 400;
	margin: -15px 0 15px 0;
	line-height: 1;
}

#lightbox a { border: none !important; }



/*services - main page*/
.services-banner .heading-text {
	max-width: 710px;
	padding-right: 40px;
	padding-top: 80px;
}

.services-main-content { background: none; min-height: 0; }

.services-details-list { margin-top: 40px;}
.service-details-item { width: 30%; margin-left: 3%; float: left; margin-bottom: 40px; border: #b7b7b7 solid 1px; box-sizing: content-box; height: 534px; position: relative; }
.services-details-list .service-details-item:nth-child(3n+1){ margin-left: 0;}
.service-details-item .service-item-image img { width: 100%; border-bottom: #b7b7b7 solid 1px; }
.service-details-item .service-item-title h3 { text-align: center; color: #0273e3; font-weight: 600; margin: 35px 0 5px 0; }
.service-details-item .service-item-excerpt { padding: 0 55px 0 55px; text-align: center;  }
.service-details-item .service-item-excerpt p { margin: 0; }
.service-details-item .service-item-link { text-align: center; position: absolute; width: 100%; bottom: 45px; /*z-index: 998;*/ }
.service-details-item .service-item-link a {
	height: 30px;
	display: inline-block;
	line-height: 30px;
	padding: 0 34px 0 34px;
	margin-top: 10px;
	text-align: center;
	background: #0273e3;
	border-radius: 15px;
	color: #fff;
	font-weight: 600;
	border: none;
	cursor: pointer;
	transition: all ease 0.2s;
}

.service-details-item .service-item-link a:hover { background: #1988f6; }


/*single service*/
.single-services-content { background: none; min-height: 0; margin-top: 0; }
.single-service-intro { max-width: 50%; }
.single-service-banner .heading-text { padding-top: 90px; float: none; }
.single-services-content .content-item img { margin: 0; }
.single-services-content .content-item img.aligncenter { margin: 5px auto 5px auto; }
.single-service-left { width: 50%; float: left; padding-right: 60px; }
.single-service-right { width: 50%; float: left; padding-left: 60px; }
.single-services-content ul li { margin-bottom: 15px; }
.single-service-video { margin-top: 15px; text-align: center; }
.single-service-video h2 { text-align: left; }
.single-service-video iframe { display: inline-block; max-width: 100%; margin-top: 40px; }
.single-services-content .content-item h3 { font-size: 18px; font-weight: normal; font-family: 'Playfair Display', serif; }


/*contact*/
.contact-page-content { background: none; min-height: 0; }
.contact-page-banner .heading-text { padding-top: 90px;  float: left; padding-right: 0; }
.contact-page-banner .heading-text .contact-intro { max-width: 60%; }
.contact-page-content { text-align: center; }
.contact-page-content iframe { display: inline-block; height: 555px; width: 100%; max-width: 1200px;}


/*slider styles*/
.bx-wrapper { border: none; box-shadow: none; margin-bottom: 0; }
.bx-wrapper ul { margin: 0; padding: 0; list-style-type: none !important; }
.bx-wrapper ul li { list-style-type: none !important; }
.gallery-image { width: 100%; }
.bx-wrapper .bx-prev { left: -50px; border: none !important; background: url(img/icons/left_arrow.png) no-repeat center !important; transition: transform ease 0.2s; }
.bx-wrapper .bx-next { right: -50px; border: none !important; background: url(img/icons/right_arrow.png) no-repeat center !important; transition: transform ease 0.2s; }
.bx-wrapper .bx-prev:hover, .bx-wrapper .bx-next:hover { transform: scale(1.2); }
.bx-default-pager { display: none; }
.gallery-items .gallery-item:last-child { margin-bottom: 30px; }
.gallery-contact { margin-top: 0; }


#menuToggle { display: none; }

.mobile-content { display: none; }
.mobile-heading { display: none; }


/*search*/
.search-results-main-content { padding: 0; margin-top: 130px;}
.search-heading { margin-bottom: 30px;}

.search-results-main-content h1 {
	font-family: 'Playfair Display', serif;
	font-size: 36px;
	margin: 0;
	font-weight: 400;
}
.search-results-main-content p {
	font-weight: 400;
	margin-top: 10px;
}


.search-result-item { float: left; width: 50%; margin-bottom: 30px; }
.search-result-item:nth-child(2n+1) { padding-right: 30px;}
.search-result-item:nth-child(2n+2) { padding-left: 30px;}

.search-read-more { margin-top: 5px; display: inline-block; }

.search-pagination { text-align: center; margin-top: 20px; }
.search-pagination .pagination > a, .search-pagination .pagination > span { margin: 0 10px 0 10px; }


/*gallery warning*/
.gallery-warning { width: 100%; min-height: 100%; background: rgba(255,255,255,0.5); position: absolute; top:0; left: 0; z-index: 999; overflow: hidden; }
.gallery-warning-content { width: 50%; padding: 100px; 	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
	margin: 0 auto;
	margin-top: 10%;
	background: #fff;
	text-align: center;
}

.warning-title { color: #0273e3; text-transform: uppercase; font-weight: 700; font-size: 40px; line-height: 1; }
.warning-message { font-size: 20px; }

.warning-continue-btn {
	height: 30px;
	display: inline-block;
	line-height: 30px;
	padding: 0 34px 0 34px;
	margin-top: 10px;
	text-align: center;
	background: #0273e3;
	border: #0273e3 solid 1px;
	border-radius: 15px;
	color: #fff;
	font-weight: 600;
	margin-left: 20px;
	width: 162px;
}

.warning-continue-btn:hover { background: #1988f6; color: #fff; }

.warning-home-btn {
	height: 30px;
	display: inline-block;
	line-height: 30px;
	padding: 0 34px 0 34px;
	margin-top: 10px;
	text-align: center;
	background: #fff;
	border: #0273e3 solid 1px;
	border-radius: 15px;
	color: #0273e3;
	font-weight: 600;
	margin-right: 20px;
	width: 162px;
}

.warning-home-btn:hover {
	color: #fff;
	background: #0273e3;
}



/*blog*/
.featured-article { height: 408px; margin-bottom: 20px;}
.featured-text { width: 50%; float: left; padding-right: 40px; padding-left: 40px; padding-top: 50px; background: #fafafa; height: 100%; }
.featured-text h1 { font-family: 'Playfair Display', serif; font-size: 36px; margin: 0; font-weight: 400; margin-bottom: 10px; }

.featured-image { width: 50%; float: left; height: 100%; background-size: cover; background-repeat: no-repeat; background-position: center; }
.featured-article .read-more {
	height: 30px;
	display: inline-block;
	line-height: 30px;
	padding: 0 34px 0 34px;
	margin-top: 20px;
	text-align: center;
	background: #0273e3;
	border-radius: 15px;
	color: #fff;
	font-weight: 600;
	border: none;
	cursor: pointer;
	transition: all ease 0.2s;
}

.featured-article .read-more:hover { background: #1988f6; color: #fff; }

.blog-nav { margin-top: 40px; }

.blog-content { margin-top: 30px; }
.blog-post-item { width: 50%; float: left;  margin-bottom: 30px;  }
.blog-post-item:nth-child(2n+1) { padding-right: 20px;}
.blog-post-item:nth-child(2n+2) { padding-left: 20px;}
.blog-post-details { height: 100%; height: 155px;}
.blog-post-image { width: 50%; height: 100%; float: left; background-size: cover; background-position: center; background-repeat: no-repeat; }
.no-image .blog-post-image { display: none; }

.blog-post-text { width: 50%; float: left; padding-left: 20px; }
.no-image .blog-post-text { width: 100%; padding-left: 0;}

.blog-post-item h2, .blog-post-item h2 a {
	font-size: 24px;
	font-family: 'Playfair Display', serif;
	font-weight: 400;
	margin: 0;
	margin-bottom: 10px;
	color: #363636;
	border: none;
	line-height: 1.2;
}

.blog-post-item h2 a:hover { color: #0273e3; }

.post-pagination { text-align: center; }
.page-numbers { margin-top: 0; }
.page-numbers li { list-style-type: none; display: inline-block; margin: 0 10px 0 10px; }

.blog-post-image a { display: block; width: 100%; height: 100%; }

.share-buttons { padding-top: 30px; }
.share-buttons a { display: inline-block; width: 23px; height: 23px; border: none; }
.share-buttons a:hover { opacity: 0.8; }
.share-buttons a.facebook-share { background: url(img/icons/facebook.jpg) no-repeat center; }
.share-buttons a.twitter-share { background: url(img/icons/twitter.jpg) no-repeat center; }

.single-blog-post-content { max-width: 880px; margin-top: 120px; }
.single-featured-images { text-align: center; }
h1.single-blog-post-title, h1.single-blog-post-title a { font-family: 'Playfair Display', serif; font-size: 36px; font-weight: 400; color: #363636; border: none; }
.single-blog-post-details { margin: 20px 0 20px 0; }
.single-blog-post-details .date { float: left; font-weight: 600;}
.single-blog-post-details .single-categories { float: right; border: #0273e3 solid 1px; padding: 0 10px 0 10px; }
.single-blog-post-details .single-categories a { border: none; }
.share-buttons.single { padding-top: 10px;}

.single-post .footer { margin-top: 0; }
.related-articles { margin-top: 50px; margin-bottom: 30px; }

.bx-wrapper .bx-controls-direction a { z-index: 998; }


/*gravity forms styles*/
.gform_wrapper { margin-top: 0 !important; }
.gfield_contains_required .gfield_label { display: none !important; }
.gform_wrapper .home-contactform-phone { margin-bottom: 0; }
.subscribe-checkbox .gfield_label { display: none !important; }
.subscribe-checkbox .ginput_container label { font-size: 14px !important; }
.tell-more .gfield_label { font-weight: normal !important; }

.gform_wrapper .validation_error { display: none; }
.gfield.gfield_error { background: none !important; border: none !important; }
.gfield_description.validation_message { display: none !important; }
.gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
	max-width: 100% !important; 
}

.gform_wrapper.gform_validation_error .top_label input.medium, .gform_wrapper.gform_validation_error .top_label select.medium {
	width: 100% !important;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container, .gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
	margin-top: 0 !important;
}

.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: none !important;
	border-bottom: #f00 solid 1px !important;
}

/*------------------------------------*\
    IMAGES
\*------------------------------------*/



/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/


@media only screen and (max-width:1435px) {
.gallery-wrapper { width: 90%; }
}


@media only screen and (max-width:1200px) {
	.home-services-content { width: 40%; }
	.home-content-line1 { max-width: 500px; }
	.home-logos { max-width: 500px; }
}



@media only screen and (max-width:1150px) {
	.main-content-section {  background-size: 45%; min-height: 990px; }
	.home-quote { margin-top: 70px; }
	.home-services-content { width: 50%; margin-top: 50px; }
	.home-contact-form { padding: 35px; }
	.heading-text { padding-right: 70px; }
	.home-page-banner { background-position: left center; }

	.about-us-banner { background-position: 25% center; }
	.about-us-banner .heading-text { max-width: 560px; }

	.services-banner .heading-text { max-width: 560px; padding-top: 60px; }
	.service-details-item { width: 31%; }

	.contact-page-content { min-height: 0; }

}

@media only screen and (max-width:1100px) { 
.home-contact-form { width: 65%;  }
}


@media only screen and (max-width:800px) {

/*mobile navigation*/
	#menuToggle
	{
		display: block;
		position: absolute;
		top: 12px;
		left: 20px;

		z-index: 999;

		-webkit-user-select: none;
		user-select: none;
	}

	#menuToggle input
	{
		display: block;
		width: 40px;
		height: 32px;
		position: absolute;
		top: -7px;
		left: -5px;

		cursor: pointer;

		opacity: 0; /* hide this */
		z-index: 2; /* and place it over the hamburger */

		-webkit-touch-callout: none;
	}

	/*
     * Just a quick hamburger
     */
	#menuToggle span
	{
		display: block;
		width: 33px;
		height: 4px;
		margin-bottom: 5px;
		position: relative;

		background: #0273e3;
		border-radius: 3px;

		z-index: 1;

		transform-origin: 4px 0px;


		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
		background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
		opacity 0.55s ease;
	}

	#menuToggle span:first-child
	{
		transform-origin: 0% 0%;

	}

	#menuToggle span:nth-last-child(2)
	{
		transform-origin: 0% 100%;

	}

	/*
     * Transform all the slices of hamburger
     * into a crossmark.
     */
	#menuToggle input:checked ~ span
	{
		opacity: 1;

		transform: rotate(45deg) translate(-2px, -1px);


		background: #0273e3;
	}

	/*
     * But let's hide the middle one.
     */
	#menuToggle input:checked ~ span:nth-last-child(3)
	{
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);

}

	/*
     * Ohyeah and the last one should go the other direction
     */
	#menuToggle input:checked ~ span:nth-last-child(2)
	{
		opacity: 1;

		transform: rotate(-45deg) translate(0, -1px);

	}

	/*
     * Make this absolute positioned
     * at the top left of the screen
     */
	#menu
	{
		position: absolute;
		width: 360px;
		margin: 19px 0 0 0;
		padding: 40px ;
		padding-top: 20px;
		right: -287px;
		/*min-height: calc(100vh + 20px);*/
		background: rgba(255,255,255,0.95);
		list-style-type: none;
		border: #bbbbbb solid 2px;
		border-left: none;
		-webkit-font-smoothing: antialiased;
		/* to stop flickering of text in safari */

		transform-origin: 0% 0%;
		-moz-transform-origin: 0% 0%;
		-ms-transform-origin: 0% 0%;
		-webkit-transform-origin: 0% 0%;
		-o-transform-origin: 0% 0%;

		transform: translate(-100%, 0);
		-moz-transform: translate(-100%, 0);
		-ms-transform: translate(-100%, 0);
		-webkit-transform: translate(-100%, 0);
		-o-transform: translate(-100%, 0);

		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
	}

	#menu li
	{
		padding: 10px 0;
		line-height: 1.5;
		cursor: pointer;
		outline: 0 !important;

		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-khtml-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;

		-webkit-tap-highlight-color:  rgba(255, 255, 255, 0);
	}

	/*
     * And let's fade it in from the left
     */
	#menuToggle input:checked ~ ul
	{
		transform: scale(1.0, 1.0);
		-moz-transform: scale(1.0, 1.0);
		-ms-transform: scale(1.0, 1.0);
		-webkit-transform: scale(1.0, 1.0);
		-o-transform: scale(1.0, 1.0);

		opacity: 1;
	}

	#menu li ul li { list-style-type: none; }


	#menu li a { color: #333333; font-size: 20px; border: none !important; }
	#menu li a:hover, #menu li.current-menu-item a { color: #0273e3; }

	.menu-item-has-children { position: relative; }

	.menu-item-has-children:before {content: ""; background: url(img/icons/nav_arrow.jpg) no-repeat center center; width: 50px; height: 25px; text-align: right; position: absolute; top: 8px; right: 0; z-index: 9999; }
	.menu-item-has-children ul {
		opacity: 0;
		transition: all ease 0.2s;
		display: none;
		outline: 0 !important;

	}

	.menu-item-has-children ul li a { display: inline-block; width: 100%; height: 100%; }

	/*.menu-item-has-children ul li:first-child { padding-top: 0 !important; }*/

	/*.menu-item-has-children.active:before { content: "\25bc";}*/
	.menu-item-has-children.active:before { transform: rotate(90deg); }
	.menu-item-has-children.active ul {
		/*height: auto;*/
		opacity: 1;
		/*visibility: visible;*/
		display: block;
	}

	/*.menu-item-has-children.active:before { transform: rotate(90deg); }
	.menu-item-has-children:hover > ul {
		height: auto;
		opacity: 1;
		visibility: visible;
	}*/


	.logo { display: none; }
	.header-phone { display: none; }
	.login-link{ display: none; }
	.nav { display: none; }

	.footer { margin-top: 30px;}
	.footer-address { float: none;  text-align: center; margin-top: 10px;  }

	.copyright { float: none;  text-align: center; margin-top: 10px; }

	.home-contact { height: auto; background: none; margin-top: 0; }

	.home-contact-form { padding: 0; width: 100%; box-shadow: none; background: none; }
	.home-contact-form br { display: none; }
	.form-line.items2 input.item1 { width: 100%; margin-bottom: 20px; }
	.form-line.items2 input.item2 { width: 100%; }

	.header-search-form { background: #fff; z-index: 999; position: absolute;  right: 0; top: 50px;
		-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
		-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
		box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
		display: none;
	}

	.header-search-form.active { display: block; }

	.header-search-form .search-input { margin: 10px; width: 250px;}

	.header-open-search-block { position: absolute; right: 5px; top: 5px; z-index: 10; }
	.header-open-search-block a { display: block; width: 35px; height: 35px; border: none; font-size: 35px; }
	.header-open-search-block a img { }

	.mobile-content { display: block; }
	.desktop-slogan { display: none !important; }

	.gallery-banner { margin-top: 0 !important; }
	.gallery-banner .content-block { padding-top: 50px; }

	.content-block { width: 88%; }
	.header .content-block { width: 95%; }

	/*home page*/
	.header { height: 75px; border-bottom: #bbbbbb solid 2px; }
	.header .content-block { margin-top: 15px; }
	.banner-top-line { display: none; }

	.home-page-banner { height: auto;  margin-top: 30px; }
	.page-template-template-home .home-page-banner { background: none !important; }

	.page-template-template-home .home-page-banner { background: none !important; margin-top: 0; }
	.banner-top-line { display: block; opacity: 1 !important; z-index: 1; }
	.page-template-template-home .heading-text { margin-top: 50px; }

	.heading-text { float: none; padding-right: 0; padding-top: 10px; text-align: center; }

	.mobile-heading { width: 100%; height: 75px; line-height: 75px; position: absolute; top: -15px; text-align: center; padding: 0; z-index: 5; display: block !important;  }
	.header { position: static; }
	.header-action-block { position: relative}
	body:not(.page-template-template-home) .heading-text h1 { display: none; }
	.mobile-heading h1 { display: block !important;  }

	.main-content-section { background: none; margin-top: 100px; min-height: 0; }
	.home-content-line1 { max-width: 100%; width: 100%; padding: 0; }
	.home-logos { padding-left: 20px; }
	.home-logos img { margin-top: 30px; }
	.home-quote { max-width: 100%; width: 95%; }
	.home-services-content { width: 100%; float: none; }

	.home-mobile-image.image1 { margin-top: 40px; width: 100%; }
	.home-mobile-image.image2 { margin-top: 40px; width: 100%; }
	.home-mobile-image img { width: 100%; }

	.service-item .service-content { display: none; }
	.service-item.active .service-content { display: block; }

	/*contact page*/
	.contact-page-banner { background: none !important; margin-top: 0;}
	.contact-page-banner .content-block { padding-top: 60px; }
	.contact-page-banner .heading-text { padding: 0; }
	.contact-page-banner .heading-text .contact-intro { max-width: 100%; }
	.contact-page-content { margin-top: 20px; }
	.contact-page-content iframe { height: 400px;}


	/*gallery*/
	.inner-page-banner { margin-top: 20px;}
	.special-banner .heading-text { padding-top: 0;}
	.gallery-nav ul li a { padding: 0 15px 0 15px; }
	.bx-wrapper .bx-next { right: 10px;}
	.bx-wrapper .bx-prev { left: 10px;}


	/*finance*/
	.top-image.mobile-content { width: 100%;}
	.top-banner-mobile { background-position: top center; background-size: cover; height: 40vh; }
	.financing-banner { background: none !important;  height: auto; }
	.financing-banner .heading-text { text-align: left; padding: 0; }
	.financing-left-col { width: 100%; padding: 0; }
	.financing-right-col { width: 100%; padding: 0; }
	.content-item, h2.content-item { margin-top: 10px; }

	/*special*/
	.special-banner { background: none !important;  height: auto; }
	.special-banner .heading-text { text-align: left; padding: 0; }
	.special-left-col { width: 100%; padding: 0; }
	.special-right-col { width: 100%; padding: 0; }


	/*about us*/
	.page-template-template-about .mobile-heading { display: none !important; }
	.page-template-template-about .heading-text h1 { display: block !important; }
	.about-us-banner { background: none !important; margin-top: 0; height: auto;  }
	.about-us-banner .content-block { width: 100%; padding-top: 60px;}
	.about-us-banner .heading-text { max-width: 100%; padding-top: 0; }
	.about-us-banner .heading-text h1,
	.about-us-banner .heading-text h2,
	.about-us-banner .heading-text h3
	{ width: 88%; padding-right: 0; margin: 0 auto; }
	.about-us-banner .heading-text h3 { margin-top: 10px; }

	.about-top-image { margin-top: 30px; }
	.about-top-image .top-banner-mobile { height: 25vh;  }
	.about-logos { width: 88%; margin: 0 auto; }

	.about-us-left-col { width: 100%; padding: 0;}
	.about-us-right-col { width: 100%; padding: 0;}

	.about-us-quote { margin-top: 30px; }


	/*services*/
	.services-banner { background: none !important; }
	.services-banner .heading-text { max-width: 100%; padding: 0; text-align: left; }
	.services-main-content { margin-top: 0 !important; }
	.service-details-item { width: 100%; margin-left: 0; height: auto; }
	.service-details-item .service-item-link { position: static; margin-bottom: 20px; }
	.service-details-item .service-item-title h3 { margin-top: 20px; }
	.service-details-item .service-item-excerpt { padding: 0 20px 0 20px; }
	.services-details-list { margin-top: 30px; }

	/*single service*/
	.single-service-banner { background: none !important; margin-top: 20px; }
	.single-service-banner .heading-text { padding: 0; }
	.single-service-intro { max-width: 100%; text-align: left; }
	.single-services-content { margin-top: 0 !important; }

	.single-service-left { width: 100%; padding: 0; }
	.single-service-right { width: 100%; padding: 0; }
	.single-service-video { width: 100%;}
	.single-service-video h2 { width: 88%; margin: 0 auto; }
	.single-service-video iframe { margin-top: 20px; height: 40vh; }


	.search-results .search-results-main-content, .search-no-results  .search-results-main-content { margin-top: 30px; }
	.search-no-results  .search-results-main-content { margin-bottom: 150px; }
	.search-results .search-result-item { width: 100%; padding: 0; }

	.gallery-warning-content { width: 90%;}


	/*blog*/
	.featured-image { display: none; }
	.featured-text { width: 100%; }
	.blog-nav ul li a { padding: 0 30px 0 0; }
	.blog-post-item { width: 100%; padding-right: 0 !important; padding-left: 0 !important;  }

	.single-blog-post-content { margin-top: 0; }

.footer-logos { margin-top: 35px; }

}


@media only screen and (max-width:480px) {
	.heading-text h1 { font-size: 28px; }
	.heading-text h2 { font-size: 23px; }
	.main-content-section { margin-top: 60px; }
	.home-quote span { left: 20px; }
	.home-quote { padding-left: 70px; }
	.footer { font-size: 14px; }

	.contact-page-content { margin-top: 20px !important; }
	.contact-page-content iframe { height: 300px;}

	.gallery-nav ul li a { padding: 0 13px 0 13px; }

	.gallery-warning-content { padding: 25px; }
	.warning-actions a { margin: 10px 0 0 0; }

	.featured-article { height: auto;}
	.featured-article .featured-text { padding: 20px; }
	.blog-nav ul li a { padding: 0 30px 0 0; }

	.blog-post-item h2, .blog-post-item h2 a { font-size: 23px; }
	.blog-post-image { width: 35%; }
	.blog-post-text { width: 65%; }
	.share-buttons { padding-top: 10px; }
	
	.column-count-2-of-2 ul { padding: 0 !important;}

}

@media only screen and (max-width: 375px) {
	.heading-text h1 { font-size: 25px; }
	.heading-text h2 { font-size: 21px; }
	.home-content-line1 h2 { font-size: 21px; }
	.main-content-section { margin-top: 50px; }

	.heading-about-link { padding: 0 20px 0 20px; }
	.heading-about-link:after { display: none; }
}


@media only screen and (max-width:360px) {
	#menu li a { font-size: 18px; }

	.gallery-nav ul li a { padding: 0 12px 0 12px; }
}


@media only screen and (max-width:320px) {
	#menu { width: 280px; right: -219px; }
	#menu li { line-height: 1.3; }
	#menu li a { font-size: 16px; }
}


/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
