/*
Theme Name: bluforce group
Author: bluforce group
Author URI: http://bluforce.at/
Description: bluforce group - Default WordPress Theme
Version: 1.1.0
License: © bluforce group

Tags: responsive-layout, custom-menu, featured-images
Text Domain: bluforce.at

© bluforce WordPress Theme

"ein fux muss tun was ein fux tun muss" - alphafux
*/
@charset "UTF-8";
@-ms-viewport {width: device-width;}
@viewport{width: device-width;}
/* -------------------------------------------------------------------------------------------------------------
 
 css structur:
 
 #1 main definitions
 #2 positions & colors
 #3 extension
 #4 responsive
 #5 print
 
 --------------------------
 
 used colors:
	 old green: #015033;
	 new green: #00331E;

---------------------------------------------------------------------------------------------------------------- */
/* #1 main definitions ----------------------------------------------------------------------------------------- */
body { 
	font-family: 'PT Sans', sans-serif;
	font-size:18px;
	line-height:32px;
	color:#fff;
	background:url("img/body-bg-new.gif") no-repeat center center fixed #00331E; 
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

/* Headlines */
h1, h2 ,h3 ,h4 ,h5 ,h6, .entryHeadline{
	
	font-weight:700;	
	color:#fff;
	line-height:auto;
	margin:0;
}
h1 {
	font-size: 51px;
	margin-bottom:15px;
	line-height:1em;
}
h2 {
	
	font-weight:normal;
	font-size:24px;
	margin-bottom:40px;
}
h3 ,h4 ,h5 ,.entryHeadline {
	font-size:28px;
	margin-top:40px;
}

h6 {
	
	font-size: 18px;
	font-style:italic;
	
}

.home h2{
	margin-bottom:15px;
}
.home h1{
	margin-bottom:40px;
}

a,
a:active, 
a:visited {
	color:#fff;
	border-bottom:1px solid rgba(194,207,250,.3);
	padding-bottom:3px;
	transition:.45s;
}
a:hover { 
	color:#7a99ff; 
	border-color:#7a99ff;
}

.main-box-def{
	position:relative;
	margin:0 auto;
	padding:2% 0;
	width:80%;
	min-width:300px;
	max-width:80%;
}

/* Access-Helper */
.accessHelper{
	display:none;
}

/* #2 positions & colors --------------------------------------------------------------------------------------------------- */

/* header */
#header{
	position:fixed;
	top:0;
	left:0;
	background:#fff;
	height:70px;
}
a#logo {
	transition:none;
	/*background:url("img/stadtbaumeister_wagner_logo.png") center center no-repeat #fff;*/
	background:#fff;
	width:110px;
	height:85px;
	left:10%;
	border:none;
	padding:10px;
	-webkit-box-shadow: 0px 2px 13px 0px rgba(50, 50, 50, 0.3);
	-moz-box-shadow: 0px 2px 13px 0px rgba(50, 50, 50, 0.3);
	box-shadow: 0px 2px 13px 0px rgba(50, 50, 50, 0.3);
}

a#logo img{
    width:100%;
    height:auto;
}

/* menu */
ul.menu {
	right:40px;
	top:19px;
}
.menu li a{
	border-bottom:2px solid #fff;
	color:#00331E;
	margin-left:40px;
}
.menu li:hover a,
.menu .current-menu-item a,
.menu .current_page_parent a {
	border-color:#00331E;
}

.open-panel{
	background:#00331E;
	display:none;
	position:absolute;
	top:10px;
	right:15px;
	padding:14px 12px 0;
	height:29px;
	color:#fff;
	z-index:99999;
	transition:left ease-out .45s;
	outline:0;
	border:none;
}
.open-panel span{
	display:block;
	width:25px;
	height:3px;
	border-radius:1px;
	margin-bottom:3px;
	background:#fff;
	transition:.45s;
}
.open-panel span.last{
	margin:0;
}
.open-panel:hover{
	color:#fff;
}
.open-panel.active .mid{
	width:0;
	opacity:0;
}
.open-panel.active .first{
	transform: rotate(45deg);
	-ms-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	margin-top:5px;
}
.open-panel.active .last{
	transform: rotate(-45deg);
	-ms-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	margin-top:-12px;
}

.open-panel.active:hover .first{
	transform: rotate(0);
	-ms-transform:rotate(0);
	-webkit-transform:rotate(0);
	margin-top:5px;
}
.open-panel.active:hover .last{
	transform: rotate(0);
	-ms-transform:rotate(0);
	-webkit-transform:rotate(0);
	margin-top:-12px;
}

.open-panel span.menuInfo{
	position:absolute;
	top:0;
	padding:4px 0 3px 10px;
	font-size:12px;
	line-height:36px;
	right:49px;
	width:76px;
	height:auto;
	margin:0;
	color:#00331E;
}
.open-panel span.menuInfo.hiddenHint{
	display:none;
}
.open-panel span.menuInfo i.fa-caret-left{
	font-size:26px;
	color:#000;
	position:absolute;
	left:-8px;
	top:8px;
}
.open-panel span.menuInfo.hidde{
	display:none;
}

.menu-overlay {
	display:none;
	position:fixed;
	left:0;
	right:0;
	bottom:0;
	top:0;
	background:transparent;
	z-index:9998;
}
.menu-overlay.active {
	display:block;
}

/* page grid */
.content{
	max-width:800px;
	width:60%;
	float:left;
}
.contentFullWith{
	max-width:100%;
	width:100%;
}
.sidebar{
	width:100%;
	max-width:446px;
	float:right;
}


/* page */
#page { 
	border-top:70px solid transparent; /* px = menu height */
	padding-top:70px;
}

/* -- Home --*/
/* body.home{
	background-image:url("img/bg_home.jpg"); 
} */

.cols3Wrapper{
	overflow:hidden;
	text-align:left;
}

a.cols3{
	width:28.9%;
	margin:0 4% 2% 0;
	display:inline-block;
	text-align:left;
	color:#00331E;
	padding-top:60px;
	background:url("img/icon-1.png") center 37px no-repeat #fff; 
	min-height:233px;
	vertical-align: top;
	font-size: 14px;
    line-height: 21px;
}
.cols3.icon-2{ background-image:url("img/icon-2.png");  }
.cols3.icon-3{ background-image:url("img/icon-3.png"); }

.cols3 p{
	padding:20px;
}

a.cols3:hover{
	box-shadow:0 2px 10px #000;
}	
.cols3 h3{
	width:100%;
	text-align:center;
	background:#00331E;
	padding: 10px 0;
}


/* -- entrys -- */

a.entry{
	background:#fff;
	width:100%;
	padding:10px;
	color:#000;
	max-width:410px;
	margin:0 1% 1% 0;
	display:inline-block;
	border:none;
}
.entry span{
	display:block;
}
.entry img{
	width:100%;
	height:auto;
}
.entryImg{
	height:270px;
	overflow:hidden;
	opacity:.9;
	transition:1s;
}
.innerWrapper{
	padding:20px 30px 0 30px;
}
.blackLine{
	height:2px;
	width:55px;
	background:#000;
}
.entryHeadline{
	color:#000;
	margin:10px 0 0 0;
	font-size:24px;
	height:70px;
	overflow:hidden;
}
.entryText{
	font-size:14px;
	line-height:21px;
	height:150px;
	overflow:hidden;
}


.readMore{
	margin-top:10px;
	font-size:16px;
}

a.entry:hover{
	box-shadow:0 2px 10px #000;
}
a.entry:hover .entryImg{
	opacity:1;
}

/* -- content -- */

.breadcrumbs{
	font-size:14px;
	margin-bottom:30px;
}

.wp-caption, .wp-caption img {
	width:100% !important;
}

blockquote{
	border-top:1px solid rgba(255,255,255,.5);
	border-bottom:1px solid rgba(255,255,255,.5);
	font-style:italic;
	margin:40px 0; 
}
blockquote p{
	padding:10px 20px;
}

.contentText{
	margin-bottom:50px;
}

/* entry single */

.contentText img{
	width:100%;
	height:auto;
}

/* gallery */
.sidebar img{
	width:100%;
	height:auto;
}
.caption{
	font-size:14px;
	line-height:16px;
	padding-left:5px;
	margin: 0 0 50px;
	font-style:italic;
}

.butn{
	padding:15px;
	font-family: "PT Sans",serif;
    font-style: italic;
	
}

/*  contact 7  */
.butn, a.butn , .postNavigation a, #submit, .wpcf7-submit {
    background: rgba(2, 49, 28, 1) none repeat scroll 0 0;
    border: none;
    color: #fff;
    max-width: 150px;
    transition: all 0.45s ease 0s;
    text-align:center;
    text-transform: none;
    -webkit-box-shadow: 0px 2px 0px 0px rgba(1, 64, 39, 0.75);
	-moz-box-shadow: 0px 2px 0px 0px rgba(1, 64, 39, 0.75);
	box-shadow: 0px 2px 0px 0px rgba(1, 64, 39, 0.75);
}

.postNavigation a, .backbutn, #submit, .wpcf7-submit {
    font-size: 16px;
    max-width: 100%;
    padding: 15px;
    text-transform: none;
}
.wpcf7-form-control-wrap.your-message textarea.wpcf7-form-control.wpcf7-textarea {
	width:80%;
	padding:20px;
}

input.wpcf7-form-control.wpcf7-text {
	line-height:20px;
	padding:20px;
}

#anfrage input, .wpcf7-form-control.wpcf7-textarea {
	font-family: 'PT Sans', serif;
	font-style:italic;
	padding:20px;
}


/*Kontakt*/
.contact {
	position:relative;
	background:#fff;
	width:430px;
	height:282px;
	margin-bottom:40px;
	width:100%;
}
.contact{
	float:left;
}

.contact p, .contact h6 {
	color:#000;
}
.contact p{
	font-size:14px;
	line-height:24px;
}
.contact img {
	position:absolute;
	top:0;
	right:0;
	width:169px;
	height:282;
}

.contact a {
	color:#bbb;
}

.contact a:hover {
	border-color:#bbb;
}

.contactblock {
	float:left;
	margin: 20px 39px 20px 39px;

}

/* mobile index buttons */

.mobileContact{ 
	display:none;
}

.mobileContact a.butn{
	display:block;
	width:90%;
	max-width:90%;	
	margin-bottom:20px;
}

/* footer */

#footer{
	font-size:14px;
	line-height:23px;
	letter-spacing:.05em;
}

/* #4 responsive  -------------------------------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	.content{ width:55%; }
	.contentFullWith{ width:100%; }
}

@media only screen and (max-width: 1300px) {
	.content{ float:none; width:100%; max-width:100%; margin-bottom:40px; }
	.sidebar{ float:none; max-width:100%; text-align:center; }
	a.entry{ text-align:left; }
}

@media only screen and (max-width: 1024px) {
	.main-box-def { padding: 5% 0;}	
}

@media only screen and (max-width: 1180px) {
	.mobileWrapper { 
		position:fixed;
		top:0;
		bottom:0;
		width:300px;
		right:-300px;
		background:#00331E;
		transition:.45s;
		z-index:9999;
	}	
	.mobileWrapper.active {
		right:0;
		box-shadow:5px 0 15px 4px #000;
	}
	ul.menu{
		right:auto;
		left:0;
		top:80px;
		width:100%;
	}
	.menu li{
		float:none;
	}
	.menu li a{
		color:#fff;
		display:block;
		margin:0;
		border-bottom:1px solid #fff;
		padding:5px 20px;
	}
	.menu li:hover a,
	.menu .current-menu-item a,
	.menu .current_page_parent a{
		background:#fff;
		color:#00331E;
	}
	.open-panel{ display:block; }
	
	a#logo{
		box-shadow:none;
		width:70px;
		height:50px;
	}
	
	
	.cols3Wrapper{ text-align:center;}
	
	.cols3{
		width:50%;
		min-width:300px;
		display:block;
		margin:1%;
	}
	
	#page{
	    padding-top:2%;
	}
	
	
	.mobileContact{	display:block; }
	
	#footer{ text-align:center; }
	
}
@media only screen and (max-width: 680px) {
	h1 {font-size:43px;}
	.home h1 {margin-bottom: 30px;}
	a#logo{ left:0; }
	
}
@media only screen and (max-width: 480px) {
	.contact img{display:none;}
	input.wpcf7-form-control.wpcf7-text { width:80%;}
	h1 {font-size:33px;}
	h2 {font-size:20px;}
	.home h1 {margin-bottom: 20px;}
	.main-box-def { padding: 7% 0;}	
	body {font-size:16px; line-height:28px;}
	
	a.entry { width:300px; margin:0 0 10px 0; }
	.entryImg { height: 210px;}
	
	.entryHeadline {height:60px;}
}

@media only screen and (max-width: 320px) {
	.open-panel span.menuInfo {width:70px;}
	a.entry {width:280px;}
	.entryText {height:170px;}
}

/* #5 print  ------------------------------------------------------------------------------------------------------- */
@media print {
	* { display:none !important};
}