/*
	Theme Name: Constructlab
	Theme URI: http://constructlab.net
	Description: 
	Version: 1.4.3
	Author: Modem Studio (@modem_studio)
	Author URI: http://modem.ws
	Tags: collective, constructlab, alex romer

*/

/*------------------------------------*\
    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 {
	
}
body {
	font-family:'Lato', sans-serif; 
	font-weight:normal; 
	font-style:normal;
	color:#000;
	font-size: 16px;
	line-height: 22px;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	max-height: 100%;
	vertical-align:bottom;
}
a {
	color: red;
	text-decoration:none;
}
a:hover,
.back a:hover {
	color:red;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
a:visited{
	color: red;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}
.clear{
	clear: both;
}
h1,
h2,
h3{
	font-weight: normal;
	line-height: normal;
}
.center{
	text-align: center;
}
.post a,
.single-project a,
.single-post a,
.single-team a,
.single-page a{
	color: black;
	border-bottom: 1px solid black;
}
.post a:hover,
.single-project a:hover,
.single-post a:hover,
.single-team a:hover,
.single-page a:hover{
	color: black;
	border-bottom: none;
}
.back a{
	color: red;
	text-decoration:none;
	border-bottom: none;
}
.back a:hover{
	color: red;
}



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

/* wrapper */
.wrapper {
	width:100%;
	margin:0 auto;
	position:relative;
}
/* logo */
.logo {
	display: none;
	position: fixed;
	bottom: 2%;
	left: 2%;
	z-index: 99;
	width: 300px;
}
.logo-mobile{
	text-align: center;
	margin: 80px 20px 0px 20px;
}
/* nav */
.nav {
	display: none;
	position: fixed;
	top: 2%;
	left: 2%;
	z-index: 999;
	font-size: 30px;
	line-height: normal;
}
.nav a,
.nav a:hover{
	color: red;
	border-bottom: none;
}
.nav ul{
	list-style: none;
	padding: 0;
	margin: 0;
}
.nav-mobile{
	background-color: whitesmoke;
	z-index: 9999;
	text-align: left;
	font-size: 25px;
	line-height: normal;
	width: 250px;
	margin-left: -250px;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
}
.nav-mobile a{
	line-height: 40px;
}
.nav-mobile ul{
	left: 0px;
	list-style: none;
	line-height: 28px;
}

div.open{
	position: fixed;
	top: 20px;
	left: 20px;
	cursor: pointer;
	z-index: 9999;
	font-size: 25px;
	color: black;
}

.footer{
	font-size: 16px;
	width: 100%;
	padding: 2%;
	padding-bottom: 100px;
	margin: auto;
}
.column{
	padding: 5px;
}
/* team and project */
.project-loop,
.team-loop{
	text-align: center;
	margin: 20px 0;
	padding: 0;
	list-style: none;
}
.project-categories{
	display: none;
}
#menu-project-categories{
	padding: 0;
	margin: 0;
	list-style: none;
}
.project-categorie-desc{
	max-width: 600px;
	margin: auto;
	padding: 20px;
}

/* team and project single*/
.single-project,
.single-team{
	max-width: 1100px;
	margin: 50px auto;
}
.single-project-img img{
	margin-top: 50px;
}
.single-project-img img:first-child{
	margin-top: 0px;
}
.caption,
.img-credits{
	font-size: 14px;
	text-align: left;
	padding-left: 20px;
}
.embed{
	position: relative; 
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
	height: auto;
}
.embed iframe,
.embed object,
.embed embed { 
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.back{
	background: url("img/back.svg");
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 30px;
}
.project{
	margin: 50px 0;
	text-align: center;
	vertical-align: top;
}
.single-project-img{
	text-align: center;
}
.single-project-txt{
	padding: 20px;
}
h1.single-project-title{
	margin-bottom: 50px;
	margin-top: 0;
	padding: 20px 0;
	font-size: 50px;
	border-bottom: 3px solid red;
	border-top: 3px solid red;
	color: red;
	line-height: normal;
}
h2.single-project-subtitle{
	color: red;
}
.project-subtitle{
	color: red;
}
.single-project-data{
	margin-top: 50px;
}
p.meta-title{
	border-top: 3px solid red;
	color: red;
	padding-top: 20px;
	margin-bottom: 0;
	text-transform: uppercase;
}
p.meta-title-post{
	color: red;
	padding-top: 20px;
	margin-bottom: 0;
	text-transform: uppercase;
}
ul.team{
	list-style: none;
	padding: 0;
	margin-top: 0;
}
/* blog */
.project-blog{
	max-width: 1150px;
	margin: 50px auto;
	text-align: center;
}
.post {
	border-bottom: 3px solid red;
	margin-bottom: 50px;
	max-width: 350px;
	text-align: left;
}
.post-title a{
	color: #FF0000;
}
.post-txt{
	padding: 0 10px;
}
.pagination{
	display: none;
}
#infscr-loading{
	text-align: center;
	padding: 80px 0;
	color: red;
}
.project-categorie-title{
	color: #FF0000;
	margin-top: 50px;
}
.social{
	display: none;
}

/*------------------------------------*\
    PAGES
\*------------------------------------*/
.single-page,
.single-post{
	max-width: 1140px;
	margin: 50px auto;
	padding: 0 20px;
}
.single-about{
	max-width: 900px;
	margin: 50px auto;
	padding: 0 20px;
	text-align: left;
}
#post-404{
	text-align: center;
}
/*------------------------------------*\
   FLEXSLIDER
\*------------------------------------*/
.loading{
	background: url('http://dev2.modem.ws/wp-content/uploads/2015/06/ajax-loader.gif') no-repeat center center !important;
	width: 100%;
	height: 100%;
}

#flexslider{
	position: relative;
	height: 100%;
	margin-top: 50px;
}
.flex-direction-nav .flex-next {
    width: 50%;
    height: 100%;
    top: 0px;
    left: auto;
    right: 0;
    background: none !important;
    cursor: url(img/next.png) 50 0, auto;
    position: absolute;
}
.flex-direction-nav .flex-prev {
    width: 50%;
    height: 100%;
    top: 0px;
    left: 0;
    right: auto;
    background: none !important;
    cursor: url(img/prev.png), auto;
    position: absolute;
}
#flexslider .slides li {
    min-height: 100% !important;
    list-style: none;
}
.flex-direction-nav a{
	width: auto;
	height: auto;
	margin: 0;
	display: block;
	position: relative;
	cursor: pointer;
	text-indent: 0;
	opacity: 1;
	-webkit-transition: none;
	border-bottom: none;
}
.flex-viewport{
	text-align: center;
}
ul.flex-direction-nav{
	padding: 0px;
	margin: 0px;
}
ul.flex-direction-nav li{
	list-style: none;
}
ul.slides{
	padding-left: 0px;
	margin: 0;
}




.newsletter{
	text-align: center;
	color: red;
	padding-top: 20px;
	padding-bottom: 40px;
}
#mc_embed_signup{
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	position: relative;
}
.mc-field-group{
	float: left;
	width: 70%;
	position: absolute;
}
.mc-field-group input#mce-EMAIL{
	width: 100%;
	float: left;
	padding: 20px;
	border: 2px solid #ff0000;
	background-color: transparent;
}
::-webkit-input-placeholder{
  color: #000;
}
::-moz-placeholder {
  color: #000;
}
input#mc-embedded-subscribe.button{
	padding: 20px;
	border: 2px solid #ff0000;
	width: calc(30% + 2px);
	margin-left: -2px;
	background-color: transparent;
	transition: background-color 0.2s linear;
	float: right;
	color: red;
}
input#mc-embedded-subscribe.button:hover{
	background-color: red;
	color: white;
}

/*------------------------------------*\
    ARCHIVE
\*------------------------------------*/
.group{
	border: 2px solid red;
	padding: 10px;
	float: left;
	margin: 20px;
}



/*------------------------------------*\
    MAP
\*------------------------------------*/

.acf-map{
	width: 100%;
	z-index: 0;
}

#map{
	height: 100vh;
}
.filters {
    width: 150px;
    background: white;
    position: absolute;
    top: 30px;
    right: 30px;
    z-index: 99;
    display: none;
}
.filters ul{
	list-style: none;
	margin: 0;
	padding: 10px;
}
.gmnoprint img {
    max-width: none !important; 
}
img[src*="gstatic.com/"], img[src*="googleapis.com/"] {
max-width: none !important;
}

.gm-style-iw h2 a{
	text-transform: uppercase;
	border-bottom: none;
}
.gm-style-iw p.address{
	text-transform: uppercase;
	border-bottom: none;
	font-size: 13px;
	line-height: normal;
}


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

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

}
@media only screen and (min-width:480px) {
.post-txt{
	padding: 10px 0px 0px 0px;
}
}
@media only screen and (min-width:768px) {
.nav{
	display: block;
}
.nav-mobile{
	display: none;
}
div.open{
	display: none;
}
.logo-mobile{
	display: none;
}
.logo{
	display: block;
}
.column{
	width: 33.33%;
	float: left;
}
.current-menu-item::after{
	content: " —";
	color: #FF0000;
}
.project-categories{
	position: fixed;
	right: 2%;
	top: 2%;
	z-index: 9;
	display: block;
}
.project{
	display: inline-block;
	position: relative;
	max-width: 600px;
	margin: 2%;
	height: 0;
	width: 46%;
	padding-bottom: 46%;
	vertical-align: middle;
}
.project-thumb{
	height: 100%;
	width: 100%;
	position: absolute
}
.project-thumb img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.project-title{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
	background-color: rgba(255, 255, 255, 0.80);
}
.project-title-content{
	display: table;
	width: 100%;
	height: 100%;
}
.project-title-inner{
	display: table-cell;
	vertical-align: middle;
}
.project:hover a.project-title{
	display: block;
}

.project-archive{
	display: inline-block;
	white-space: nowrap;
	position: relative;
	vertical-align: top;
	margin: 20px;
	max-width: 300px;
}
.single-project-img{
	float: right;
	width: 60%;
	max-width: 660px;
}
.single-project-txt{
	padding: 0px 20px 0px 40px;
	float: right;
	width: 40%;
	max-width: 440px;
}
.filters{
	display: block;
}
.caption,
.img-credits{
	padding-left: 0;
}
.back{
	position: fixed;
	top: 2%;
	right: 2%;
}
.back h3{
	margin: 0;
}
.social{
	position: fixed;
	bottom: 2%;
	right: 2%;
	display: block;
	padding: 0;
	margin: 0;
	list-style: none;
}
.social li{
	display: inline-block;
	margin-left: 20px;
	width: 30px;
}
}
@media only screen and (min-width:1024px) {
.project{
	width: 29.333%;
	padding-bottom: 29.333%;
}
}
@media only screen and (min-width:1140px) {

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

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}

/*------------------------------------*\
    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;
		color: red;
	}
	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;
	}
}
