/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html, body {
	margin: 0;
	padding: 0;
	height: 100%;
}

body {
	padding: 0;
	margin: 0;
	font-family: 'Neustadt-Regular', Helvetica, Arial, "Lucida Grande", sans-serif;
	font-weight: 400;
	min-height: 100%;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #77C042;
    text-shadow: none;
}

::selection {
    background: #77C042;
    text-shadow: none;
}


/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */

img {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}


/*
 * Generics / Globals
 */

.pull-right {
	float: right;
}
.pull-left {
	float: left;
}

.pad-top-row {
    padding-top: 20px;
}
.pad-bottom-row {
    padding-bottom: 20px;
}

@media only screen and (min-width: 768px){
	.content-row {
		padding-top: 23px;
	}	
	.call-to-action{
		padding-top: 40px;
	}
}




@media only screen and (min-width: 769px){
	.pad-top-row {
		padding-top: 40px;
	}
}

@media only screen and (min-width: 1200px){
	.pad-top-row {
		padding-top: 100px;
	}
}

.pad-top-row-half {
    padding-top: 50px;
}

.grad-top {
    background: #e5e6e7; /* Old browsers */
    background: -moz-linear-gradient(top,  #e5e6e7 0%, #ffffff 150px); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e5e6e7), color-stop(150px,#ffffff)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top,  #e5e6e7 0%,#ffffff 150px); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top,  #e5e6e7 0%,#ffffff 150px); /* Opera 11.10+ */
    background: -ms-linear-gradient(top,  #e5e6e7 0%,#ffffff 150px); /* IE10+ */
    background: linear-gradient(to bottom,  #e5e6e7 0%,#ffffff 150px); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e6e7', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

#page-container {
    /*position: relative;*/
    overflow: hidden;
    min-width: 100%;
    zoom: 1;
    min-height: 100%;

}
	
#ajax-content {
	min-height: 100%;
	padding-top: 40px;
	padding-bottom: 60px;
	background: url(../images/bg-grid.png) 0 60px no-repeat fixed, url(../images/bg-top-gradient.png) 0 60px repeat-x fixed;
}

@media only screen and (min-width : 769px) {
	.scrolled #ajax-content {
		padding-top: 100px;
		background-position: 0 160px, 0 60px;
	}
	#ajax-content {
		padding-top: 160px;
		/*padding-bottom: 450px;*/
		background-position: 0 160px, 0 160px;
	}	
}
/** 
 * Header
 **/

#header{
	position: fixed;
	z-index: 100;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 40px;
	background: #FFF;
	border-bottom: 1px solid #e2e2e2;
	transition: height 0.2s ease-in-out;
}

@media only screen and (min-width : 769px) {
	
	.scrolled #header {
		height: 60px;
	}

	#header{
		height: 160px;
	}
}

#header-inner {
	max-width: 1220px;
	height: 100%;
	position: relative;
	margin: 0 auto;
}

#logo {
	display: block;
	position: absolute;
	left: 16px;
	top: 0px;
	width: 70px;
	height: 100%;
	background: #FFF url(../images/logo_small.png) 0 0 no-repeat;
	background-size: 100%;
	-moz-transition: width 0.2s ease-in-out;
	-webkit-transition: width 0.2s ease-in-out;
	transition: width 0.2s ease-in-out;
}

#contact-link {
    font-size: 26px;
    line-height: 26px;
    margin: 23px 0 18px 0;
    color: #666666;
}

@media only screen and (min-width : 769px) {
	
	.scrolled #logo {
		width: 95px;
		height: 164px;
		top: -3px;
	}

	#logo{
		background: transparent url(../images/logo.png) 0 0 no-repeat;
		width: 182px;
		top: -10px;
		background-size: 100%;
	}

	
}

@media only screen and (min-width : 1041px) {
	#logo {
		width: 225px;
        height: 164px;
        top: 7px;
	}
}
#nav {
	position: absolute;
	bottom: 10px;
	right: 16px;
	margin: 0;
	padding: 0;
	display: none !important;
}

#nav li {
	float: left;
	list-style: none;
}
#nav li a {
	color: #AAA;
	font-size: 18px;
	text-transform: uppercase;
    font-weight: bold;
	display: block;
	padding: 8px 12px;
	
	-moz-transition: color 0.2s ease, border-bottom 0.2s ease;
	-webkit-transition: color 0.2s ease, border-bottom 0.2s ease;
	transition: color 0.2s ease, border-bottom 0.2s ease;
	
}
#nav li a:hover,
#nav a.current {
	color: #77C042;
}

@media only screen and (min-width: 769px){
	
	.scrolled #nav {
		bottom: 5px;
	}

	#nav {
		display: block !important;
	}

	#nav li a {
		padding: 8px 18px;
	}
}

@media only screen and (min-width: 1040px){
	#nav li a {
		padding: 8px 22px;
	}
}

#sub-nav {
	text-align: center;
	padding: 0 0 16px 0;
}
#off-canvas-button {
	position: absolute;
	top: 2px;
	right: 3px;
}


#call-action {
	display: none;
	-moz-transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out;
	-webkit-transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out, top 0.2s ease-in-out;
}

@media only screen and (min-width: 769px){

	#off-canvas-button {
		display: none;
	}

	.scrolled #call-action {
		opacity: 0;
		top: -50px;
	}

	#call-action {
		display: block;
    	position: absolute;
    	right: 30px;
    	opacity: 1;
    	top: 20px;
	}

	#call-action > a {
		color: #999;
		margin-top: 0;
		font-size: 20px;
		float: right;
		line-height: 30px;
	}

	#call-action h3 {
    	color: #999;
    	font-size: 20px;
    	text-transform: uppercase;
    	clear: both;

	}

	#call-action h3 img {
		width: 24px;		
	}

	#speech-icon {
    	margin-top: -5px;
	}


}




@media only screen and (min-width: 769px){
	#call-action > a {
		margin-top: 25px;
		font-size: 22px;
		margin-left: 20px;
		line-height: 27px;
		
	}

	#call-action h3 {
		float: left;
		clear: none;
	}

	#call-action h3 a:hover {
    	color: #92c63c;
	}

	#call-action h3 img {
		width: 36px;		
	}
}
/**
 * Footer
 */

#footer {
	z-index: 100;
	bottom: 0;
	right: 0;
	left: 0;
	width: 100%;
	background: #ffffff;
	background: -webkit-linear-gradient(top, rgb(61, 61, 62) 16%, rgb(25, 25, 25) 77%);
	background: -moz-linear-gradient(top, rgb(61, 61, 62) 16%, rgb(25, 25, 25) 77%);
	background: -o-linear-gradient(top, rgb(61, 61, 62) 16%, rgb(25, 25, 25) 77%);
	background: -ms-linear-gradient(top, rgb(61, 61, 62) 16%, rgb(25, 25, 25) 77%); 
	background: -linear-gradient(top, rgb(61, 61, 62) 16%, rgb(25, 25, 25) 77%);
}

#footer-inner {
	position: relative;
	max-width: 1220px;
	height: 100%;
	margin: 0 auto;
	padding: 20px 16px;
}


@media only screen and (min-width : 769px) {
	#footer {
		//height: 450px;
	}
	#footer-inner {
		padding: 40px 32px 16px;
	}
}

/* Footer Modules */





#footer .module h3,
#footer .module ul
{
	margin: 0;
	padding: 0;
}

#footer .module ul {
	margin-bottom: 1em;
}

#footer .module h3,
#footer .module a.title
{
	color: #FFF;
	text-transform: uppercase;
	font-size: 20px;
}

#footer .module li {
	list-style: none;
	font-size: 16px;
	box-sizing: border-box;
}
#footer .module a {
	line-height: 18px;
    display: inline-block;
    padding: 3px 0;
    transition: all 300ms ease;
}
#footer .module a:hover {
    color: #FFF;
}



.social-link {
	position: relative;
	display: inline-block !important;
	width: 2.75em;
	height: 2.95em;
}



.social-link i.fa-square {
	display: none;
	z-index: 0;
	color: white;
	font-size: 2.2em;
	top: 2px;
	left: 2px;
}

.social-link:hover > .fa-square {
	display: block;
}

.social-link:hover > .fa-facebook-square {
	color: #3b5998;
}

.social-link:hover > .fa-twitter-square {
	color: #3c8fc9;
}

.hide-mobile {
		display: none;
	}
@media only screen and (min-width: 480px){
	.mobile-contact {
		display: none !important;
	}

	.hide-mobile {
		display: block;
	}
}

.status {
    margin-bottom: 10px;
}

.status span {
    display: inline-block;
    margin-left: 15px;
}

h3 .fa {
    color: rgba(146,198,60,0.3);
}

.status .fa-check-circle, .status .Online {
    color: #92c63c;
}

.status .fa-times-circle, .status .Offline {
    color: #C63C3C;
}

.social-link i {
	z-index: 1;
	font-size: 2.5em;
	margin: 5px 5px 0 0;
	position: absolute;
	z-index: 2;
	left: 0;
}

@media only screen and (min-width: 480px){
	.social-link i {
		font-size: 2.2em;
	}
	.social-link.hide-for-medium-up {
		display: none !important;
	}
}

#footer .module a {
	color: #666666;
}

/* copy notice */
#copy-notice {
	border-top: 1px solid #666666;
	padding: 10px 0;
}

#copy-notice span {
	font-size: 12px;
}

#copy-notice .pull-right {
	float: left;
}

@media only screen and (min-width : 480px) {
	#copy-notice span {
		font-size: 16px;
	}
	#copy-notice .pull-right {
		float: right;
	}
}


/**
 * Right Column
 */

 #right-column [class*="block-grid-"] {
 	margin: 0 0 20px 0;
 }
@media only screen and (min-width: 768px ) and (max-width: 1024px){
	#right-column {
		padding-left: 40px;
	}
}
@media only screen and (min-width: 1024px){
	#right-column {
    	max-width: 300px;
	}	
}


/*
 * Home Page Gallery
 */

#responsive-gallery {

	width: 100%;
	overflow: hidden;
	text-align: center;
	min-height: 150px;
	position: relative;
	margin: 0 auto;
    background: transparent url(../images/grunge_bg.jpg) center 0 no-repeat;
    background-size: 100%;
}

.gallery-link {
    display: block;
}

.row.swiper {
    padding:0;
    margin-bottom: 50px;
}

.swiper-nav {
	position: absolute;
	top: 50%;
	z-index:10000;
}

.swiper-nav i {
	color: white;
	font-size: 1.5em;
	z-index: 1000;
	padding: 15px;
	text-shadow: 1px 1px 1px #92c63c;
}



.swiper-nav.previous {
	left: 0;
}

.swiper-nav.next {
	right: 0;
}

.swiper-nav:hover {
	cursor: pointer;
}

@media only screen and (min-width: 1340px){
	.swiper-nav.previous {
		left: -40px;
	}
	.swiper-nav.next {
		right: -40px;
	}

	.swiper-nav-container.proj .swiper-nav i {
		color: #92c63c;
		text-shadow: none;
	}
}

#responsive-gallery-aspect {
}

.swiper-nav-container {
	position: relative;
}

.swiper-container, .swiper-nav-container {
    max-height: 600px;
    max-width: 1220px;
    margin: 0 auto;
}

#responsive-gallery, .swiper-container {
	height: 150px;
}
.caption {
	display: none;
}


.swiper-slide img {
	display: none;
}
.swiper-loading {
	background: #fff;
	position: absolute;
	width: 99%;
	height: 99%;
	border-radius:5px;
}

.swiper-loading img {
	position: absolute;
	left: 46%;
	top: 35%;
}

@media only screen and (min-width: 321px){
	#responsive-gallery, .swiper-container {
		height: 229px
	}
}

@media only screen and (min-width: 481px){
	#responsive-gallery, .swiper-container {
		height: 229px
		
	}
}

@media only screen and (min-width: 601px){
	#responsive-gallery, .swiper-container {
		height: 370px
	}
}

@media only screen and (min-width: 769px){
	#responsive-gallery, .swiper-container {
		height: 585px
	}
}

@media only screen and (min-width: 1200px){

}


.gallery-pagination {
	position: absolute;
	height: 10px;
	z-index: 2;
	left: 15px;
	top: 10px;
	margin: 0 auto;
	text-align: center;
}


.swiper-pagination-bullet {
	width: 5px;
	height: 5px;
	margin: 5px;
	background: #e2e2e2;
	display: inline-block;
}

@media only screen and (min-width: 769px){
	.gallery-pagination {
		left: 20px;
		top: 20px;
	}

	.swiper-pagination-bullet {
		width: 10px;
		height: 10px;
	}

}

@media only screen and (min-width: 769px){
	.gallery-pagination {
		bottom: 20px;
	}
}

.swiper-pagination-bullet {
	background: rgba(146,198,60,0.35) !important;
	opacity: 1 !important;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #92c63c !important;
}
/*@media only screen and (min-width : 480px) {*/
	/*.swiper-container {*/
		/*max-height: 600px;*/
	/*}*/
/*}*/
/*
.client-swiper {
    max-height: 160px;
}*/

.client-swiper, .swiper-slide {
    max-height: 90px;
}

@media only screen and (min-width: 769px){
	.client-swiper, .swiper-slide {
    	max-height: 160px;
	}	
}

/**
 * Clients section
 */

.clients h3 {
	color: #666;
	text-transform: uppercase;
	font-size: 26px;
}
.clients ul {
	margin: 0;
	padding: 0;
}
.clients ul li {
	list-style: none;
}

/**
 * Footer Mobile
 **/

#mobile-nav {
	width: 100%;
}
#mobile-nav ul {
	float: right;
	margin: 0;
	padding: 0;
}
#mobile-nav ul li {
	display: inline-block;
	height: 60px;
	width: 60px;
}
#mobile-nav ul li a {
	display: block;
}



/**
 * Off canvas mobile panel
 **/

#close-oc {
	position: absolute;
	top: 10px;
	right: 10px;
}
#mobile-oc-nav {
	/*padding: 18px;*/
}
#mobile-oc-nav .inner-padding {
	padding: 18px;
}
#mobile-oc-nav ul {
	margin: 0;
	padding: 0;
}
#mobile-oc-nav ul li {
	list-style: none;
}
#mobile-oc-nav ul li a {
	text-transform: uppercase;
	font-size: 18px;
	display: block;
	padding: 10px 0;
	color: #999999;
	border-bottom: 1px solid #999999;
}
#mobile-oc-nav ul li a:hover,
#mobile-oc-nav ul li a.active {
	color: #92c63c;
	border-bottom: 1px solid #8D182A;
}
#mobile-oc-nav ul li a:last-child {
	border-bottom: 0px solid #999999;
}

/*
 * Home Page 
 */


/* services */

/**
 * Blog
 **/

.blog-summary {
	display: table;
	transition:  background 200ms;
}
.blog-image {
	display: table-cell;
	vertical-align: top;
	position: relative;
}

@media only screen and (min-width: 768px){
	.blog-image {
		width: 227px;
	}
}

.blog-image img {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-filter: saturate(1);
}
.blog-image .blog-image-rollover {
	background: rgba(0,0,0,0.5);
	position: absolute;
	top:  0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity 200ms;
}
.blog-image .blog-image-rollover .blog-showmore {
	display: block;
	width: 100%;
	font-size: 33px;
	color: #FFF;
	text-align: center;
	padding-top: 34%;
	line-height: 33px;
	text-transform: uppercase;
}
.blog-intro {
	display: table-cell;
	vertical-align: top;
	padding: 15px 30px;
	box-sizing: border-box;
}

.blog-intro h3 {
	margin-top: 0;
	color: #666666;
}
.blog-summary small {
	display: block;
	padding: 18px 0;
}

.blog-summary:hover .blog-image-rollover {
	opacity: 1;
}
.blog-summary:hover { 
	background: #ccc;
}
.blog-summary:hover .blog-image img {
	-moz-transform: scale(1.2, 1.2);
	-webkit-transform: scale(1.2, 1.2);
	transform: scale(1.2, 1.2);
	-webkit-transition: all 3s ease;
	-moz-transition: all 3s ease;
	transition: all 3s ease;
	-webkit-filter: saturate(0);
}

@media only screen and (max-width: 767px){
    .blog-intro {
        display: block;
        vertical-align: inherit;
        padding: 30px 15px;
        width: 100%;
        box-sizing: border-box;
    }
}

/**
 * Profiles
 **/

.person {
	position: relative;
	cursor: pointer;
    max-width: 380px;
    height: 300px;
}

.person .image {
    max-width: 380px;
    height: 230px;
}

.person .profile,
.person .pseudonym,
.person .title,
.person .name
{
	padding: 0;
	margin: 0;
}
.person .profile,
.person .pseudonym {
	transition: 400ms opacity ease;
	position: absolute;
}
.person .name
{
    color: #666;
    margin: 16px 0 0 0;
}
.person .title
{
    color: #92c63c;
    text-transform: uppercase;
}
.person .profile
{
	opacity: 0;
}

/* hover */
.person:hover .profile
{
	opacity: 1;
}
.person:hover .pseudonym
{
	opacity: 0;
}


/**
 * Project Pages
 **/

.project {
	width: 270px;
	height: 200px;
	padding: 10px 40px 10px 0;
}

#project-filters,
#offcanvas-filters {
    margin: 0;
    padding: 0;
}

#project-filters a,
#offcanvas-filters a {
	margin-bottom: 4px;
}

#nextprev {
    position: absolute;
    height: 30px;
    top: 25px;
    right: 18px;
    display: table;
}

#nextprev .nextprev-all {
    text-transform: uppercase;
    font-size: 16px;
    line-height: 16px;
    font-family: 'Neustadt-Semibold', Helvetica, Arial, "Lucida Grande", sans-serif;
    padding: 5px 15px 0;
}
#nextprev .nextprev-next,
#nextprev .nextprev-prev
{
    color: #AAA;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 16px;
    font-family: 'Neustadt-Semibold', Helvetica, Arial, "Lucida Grande", sans-serif;
}

#mobile-nextprev {
	background: white;
	box-sizing: border-box;
	box-shadow: 0 0 25px 0px rgba(0,0,0,0.2);
	border-top: #e2e2e2 1px solid;
	height: 50px;
	padding: 0 1em 1em 1em;
	width: 100%;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 101;
}

#view-all-btn {
	display: block;
	color: #77C042;
	cursor: pointer;
	font-family: 'Neustadt-Semibold', Helvetica, Arial, "Lucida Grande", sans-serif;
	font-size: 20px;
	margin: 0 auto;
	padding: .6em 0 .4em;
	text-align: center;
	text-transform: uppercase;
    width: 70%;
}

#nextprev-prev span,
#nextprev-next span {
	color: #77C042;
	margin-top: -2px;
}

#nextprev-prev,
#nextprev-next {
    color: #999999;
    font-family: 'Neustadt-Semibold', Helvetica, Arial, "Lucida Grande", sans-serif;
    font-size: 14px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 0;
    display: block;
    height: 50px;
    width: 53px;
    padding: 8px;
}
#nextprev-prev {
	left: 0;
}

#nextprev-next {
	right: 0;
}
#mobile-nextprev .next-arrow,
#mobile-nextprev .prev-arrow {
    position: relative;
	top: 2px;
	font-weight: bold;
	font-size: 26px;
}





#offcanvas-filters {
	background: white;
	box-sizing: border-box;
	box-shadow: 0 0 25px 0px rgba(0,0,0,0.2);
	border-top: #e2e2e2 1px solid;
	/*height: 400px;*/
	padding: 0 1em 1em 1em;
	width: 100%;
	position: fixed;
	left: 0;
	/*bottom: -350px;*/
	z-index: 101;
	transition: all .3s ease-in-out;
}
#offcanvas-filters.open {
	bottom: -140px;
}

#offcanvas-filters-bg {
	position: absolute;
	background: rgba(0,0,0, 0.5);
	top: 0;
	bottom: 0;
	width: 100%;
	z-index: 100;
	opacity: 0;
	pointer-events: none;
	transition: opacity .2s ease-in-out;
}
#offcanvas-filters-bg.open{
	opacity: 1;
	pointer-events: auto;
}
#services-offcanvas-btn {
	display: block;
	border-bottom: #f2f2f2 1px solid;
	color: #77C042;
	cursor: pointer;
	font-family: 'Neustadt-Semibold', Helvetica, Arial, "Lucida Grande", sans-serif;
	font-size: 20px;
	margin: 0 0 1em;
	padding: .6em 0 .4em;
	text-align: center;
	text-transform: uppercase;
	width: 100%;
}

#close-services-oc {
	position: absolute;
	right: 0.5em;
	top: 0.25em;
	opacity: 0;
	transition: opacity .2s ease-in-out;
}
#close-services-oc.open {
	opacity: 1;
}


@media only screen and (min-width: 480px){
	#nextprev .nextprev-all {
		padding-left: 20px;
		font-size: 26px;
		line-height: 26px;
	}
}

@media only screen and (min-width: 1200px){
	#nextprev {
		top: 123px;
    	right: 0px;
	}
}

.isotope,
.isotope .isotope-item {
  /* change duration value to whatever you like */
  -webkit-transition-duration: 0.8s;
     -moz-transition-duration: 0.8s;
      -ms-transition-duration: 0.8s;
       -o-transition-duration: 0.8s;
          transition-duration: 0.8s;
}

.isotope {
  -webkit-transition-property: height, width;
     -moz-transition-property: height, width;
      -ms-transition-property: height, width;
       -o-transition-property: height, width;
          transition-property: height, width;
}

.isotope .isotope-item {
  -webkit-transition-property: -webkit-transform, opacity;
     -moz-transition-property:    -moz-transform, opacity;
      -ms-transition-property:     -ms-transform, opacity;
       -o-transition-property:      -o-transform, opacity;
          transition-property:         transform, opacity;
}

#related-projects {
    margin: 0;
    padding: 0;
}
#related-projects li {
    padding: 10px 0 0 0 ;
}

#quote {
    font-size: 30px;
    line-height: 35px;
    color: #999;
    padding: 20px 0 40px 100px;
    background: transparent url(../images/quotemarks.svg) 0 20px no-repeat;
}
#quote p {
    margin: 0;
    color: #666;
    line-height: 20px;
}

/* Featured Project */

.featured-project {
    position: relative;
    margin: 0 0 60px 0;
}
.featured-overlay {
    position: absolute;
    background: rgba(0,0,0,0.5);
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    opacity: 0;
    transition: 500ms opacity ease;
}

.projects .featured-overlay h3 {
    position: absolute;
    top: 45%;
    right: 0;
    left: 0;
    margin: 0 auto;
    width: 70%;
    text-align: center;
    color: #FFF;
    font-size: 34px;
    opacity: 0;
    transition: 500ms opacity ease;
}
.featured-project:hover .featured-overlay {
    opacity: 1;
}
.featured-project:hover .featured-overlay h3 {
    opacity: 1;
}
/**** disabling Isotope CSS3 transitions ****/

.isotope.no-transition,
.isotope.no-transition .isotope-item,
.isotope .isotope-item.no-transition {
  -webkit-transition-duration: 0s;
     -moz-transition-duration: 0s;
      -ms-transition-duration: 0s;
       -o-transition-duration: 0s;
          transition-duration: 0s;
}

/**
 * Project section homepage
 */

.projects h3 {
	color: #999;
	font-size: 26px;
}
.project .title {
    margin: 0;
    text-transform: uppercase;
    color: #999;
    font-size: 24px;
    line-height: 20px;
}
.project .client {
    margin: 0;
    color: #77C042;
    font-size: 16px;
    line-height: 18px;
}

/**
 * Contact Page
 */
#gmap {
    width: 100%;
    height: 300px;
}

@media only screen and (min-width: 768px){
	#gmap {
		height: 500px;
	}
}

/**
 * Widgets
 */
.WidgetHolder {
    padding: 0 0 16px 0;
}

.WidgetHolder h3 {
    margin-top: 0;
}

.WidgetHolder ul {
    padding: 0;
    margin: 0;
}
.WidgetHolder ul li {
    padding: 0 0 8px 0;
}

.BlogExtendedWidget .blog-li h3 {
    margin: 16px 0 0 0;
    color: #999;
}
.BlogExtendedWidget .blog-li .blog-date {
    font-size: 12px;
    margin: 0;
    color: #92c63c;
}

/* ajax animation */
#ajax-content {
}
#ajax-content.deactive {
    height: 300px;
    background: transparent url(../images/loader.gif) center center no-repeat;
}
/* ==========================================================================
   Helper classes

========================================================================== */

.nav.vertical {
	
}

.nav.vertical li {
	display: block;
	list-style: none;
}

.nav.horizontal {
	
}

.nav.horizontal li {
	display: inline;
	list-style: none;
}

.round {
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.center {
	text-align: center;
}

.grow {
	display: block;
	overflow: hidden;
}
.grow img {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	transition: all 0.5s ease;
	/*-webkit-filter: saturate(0)*/
}
.grow:hover img {
	-moz-transform: scale(1.2, 1.2);
	-webkit-transform: scale(1.2, 1.2);
	transform: scale(1.2, 1.2);
	/*-webkit-filter: saturate(1)*/
	-webkit-transition: all 3s ease;
	-moz-transition: all 3s ease;
	transition: all 3s ease;
}

.image-crn {
	position: relative;
}

.image-crn img.crn {
	position: absolute;
	bottom: 0;
	right: 0;
    -moz-transition: none;
    -webkit-transition: none;
    -o-transition: color 0 ease-in;
    transition: none;
}
.grow img.crn {
    -moz-transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
}
.image-crn polygon,
.image-crn polyline
{
	fill: #FFF;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	transition: all 300ms ease;
}
.image-crn:hover polygon,
.image-crn:hover polyline
{
	fill: #2C8B50;
}

.echoload {
    background: url(../images/loader-small.gif) center center no-repeat;
}

dl {
	width: 100%;
}
dt, dd {
	width: 45%;
	display: inline-block
}

.relative {
    position: relative;
}
/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        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) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .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; /* h5bp.com/t */
    }

    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;
    }
}