@charset "utf-8";

@import url(http://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800);


html, 
body {
	height: 100%;
	color: #5f5f5f;
}
body {
	font-family: "Open Sans", sans-serif;
	font-weight: 400;
	font-size:16px;
	color: #5f5f5f;
}
a {
	background: transparent;
	outline: none; 
	text-decoration: none;	
	-webkit-transition: .4s cubic-bezier(0.25,.46,.45,.94);
	transition: .4s cubic-bezier(0.25,.46,.45,.94);
	-webkit-transition-property: background-color,color;
	transition-property: background-color,color;
}
a:active,
a:hover,
a:focus {
	outline: 0; 
	background: transparent;
	color: #5f5f5f;
	text-decoration: none;	  
}
a:focus, a:active, button::-moz-focus-inner, input[type=reset]::-moz-focus-inner, input[type=button]::-moz-focus-inner, input[type=submit]::-moz-focus-inner, select::-moz-focus-inner, input[type=file] > input[type=button]::-moz-focus-inner {
    border: 0;
    outline : 0;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Open Sans', sans-serif;
	font-weight: 700;
	line-height: 1;
}
h1 small, h2 small, h3 small {
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	color: #5f5f5f;
}
h4 small, h5 small, h6 small {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	color: #5f5f5f;
}

p { font-weight: 400; }

p strong { font-weight: 600; }




/* ++++ Preloader ++++ */

#preloader {
	position:fixed;
	display: table;
	width: 100%;
	height: 100%;
	min-height: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
	vertical-align: middle;
	background: #fff;
	z-index:9999;
}
.preloader-container {
	position: relative;
	display: table-cell;
	vertical-align: middle;
	z-index: 3;
	text-align:center;
}
.back-logo {
    z-index:-1;
	color: #F4F4F4;
	position: absolute;
 	top:40%;
	left:45%;
	font-size: 50px;
}



/* ++++ Titles ++++ */

@media (min-width: 180px) {
h1			{ font-size: 28px; }
h1 small 		{ font-size: 28px; }
.lead 		{ font-size: 16px; font-weight: 400; }
h2 			{ font-size: 30px; }
h2 small		{ font-size: 30px; }
h3 			{ font-size: 20px; }
h3 small 		{ font-size: 20px; }
h5 small 		{ font-size: 13px; }
}

@media (min-width: 480px) {
h1			{ font-size: 40px; }
h1 small 		{ font-size: 40px; }
.lead 		{ font-size: 16px; font-weight: 400; }
h2			{ font-size: 40px; }
h2 small 		{ font-size: 40px; }
h3 			{ font-size: 34px; }
h3 small 		{ font-size: 34px; }
}

@media (min-width: 768px) {
h1 			{ font-size: 40px; }
h1 small 		{ font-size: 40px; }
.lead     	{ font-size: 18px; font-weight: 400; }
h2  			{ font-size: 50px; }
h2 small 		{ font-size: 50px; }
}

@media (min-width: 992px) {
h1 			{ font-size: 40px; }
h1 small 		{ font-size: 40px; }
.lead 		{ font-size: 20px; font-weight: 400; }
h2 			{ font-size: 50px; }
h2 small 		{ font-size: 50px; }
}

@media (min-width: 1400px) {
h1 			{ font-size: 40px; }
h1 small		{ font-size: 40px; }
.lead 		{ font-size: 20px; }
h2 			{ font-size: 50px; }
h2 small  	{ font-size: 50px; }
}


/* ++++ 3) Home ++++ */


#home-pattern {
	background-color: #444;
	background-position: center 0%;
	background-size: auto;
	background-repeat: repeat;
	background-attachment: fixed;
	background-image: url(../img/bg/start-bg.jpg);
	display: table;
	width: 100%;
	height: 100%;
	min-height: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
	vertical-align: middle;
	z-index: 1;	
}

.parallax-overlay {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/pattern.png);
	background-repeat: repeat;
	background-color: rgba(204, 204, 204, 0.00);
	z-index: 2;
	
}
.home-container {
	position: relative;
	display: table-cell;
	vertical-align: middle;
	z-index: 3;
}
.home-title {
	position: relative;
	color: #FFFFFF;
	z-index: 3;
	margin-left: auto;
	margin-right: auto;
}
.panel {
	background-color: transparent;
	border: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.home-btn {
	margin-top: 45px;
}
.btn-home {
	font-size: 16px;
	font-weight: 400;
	font-family: 'Open Sans', sans-serif;
}
.btn-home a {
    display: inline-block;
    padding: 11px 25px;
    color: #fff;
    background-color: transparent;
    border: 1px #fff solid;
    margin-right:20px;	
}

.btn-home a:hover,
.btn-home a:focus {
	text-decoration: none;
	border: 1px #b6dd47 solid;
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-ms-transition: all 0.3s linear;
    	-o-transition: all 0.3s linear;
    	transition: all 0.3s linear;
	

}
.home-bottom {
	position: absolute;
	z-index: 3;
	width: 100%;
	left: 0;
	bottom: 0;
	text-align: center;
	opacity: 0.9;
	
}

@-webkit-keyframes anim2
{
   from {left: 0px;   -webkit-transform: scale(1.0) rotate(0deg)   }
   50%  {left: 250px; -webkit-transform: scale(0.8) rotate(10deg)  }
   to   {left: 500px; -webkit-transform: scale(1.2) rotate(-20deg) }
}
@-moz-keyframes anim2
{
   from {left: 0px;   -moz-transform: scale(1.0) rotate(0deg)   }
   50%  {left: 250px; -moz-transform: scale(0.8) rotate(10deg)  }
   to   {left: 500px; -moz-transform: scale(1.2) rotate(-20deg) }
}
.home-bottom a {
	border-radius: 50%;
	border: 2px solid #FFFFFF;
	padding-top: 7px;
	padding-bottom: 7px;
	padding-left: 7px;
	padding-right: 7px;
	color: #FFFFFF;	
	
	-webkit-transition: 0.2s background linear;
	-moz-transition: 0.2s background linear;
	transition: 0.2s background linear;
}
.home-bottom a:hover {
	background-color: #fff;
	color: #5f5f5f;	
	text-decoration: none;
}


/* ++++ Site Wrapper ++++ */
.site-wrapper 		{ clear: both; }

/* ++++ Seiten ++++ */

#benedeluxe,
#leistungen,
#arbeitsweise,
#team,
#referenzen,
#kontakt,
#impressum { padding-top: 60px; padding-bottom: 60px;  }
.section-title-general { margin-bottom: 30px; }
.site-titel { text-align:left; margin-bottom:25px }
p { font-size: 16px; line-height: 20px; font-weight: 300; line-height: 1.4; }
.general-row { margin-bottom: 40px }
.general-icon { float: left }
.general-info { padding-left: 50px; padding-top: 0px }
.general-description { padding-right: 50px }
.back-icon { z-index: -1; color: #F0F0F0; position: absolute; padding-left: 40px; left: 0; top: 0; width: 144px; height: 144px; line-height: 144px; font-size: 144px; }
.ion-3x { font-size: 3em; line-height: 1; padding-right: 30px; }

#benedeluxe,
#leistungen,
#arbeitsweise
p { hyphens: auto; text-align: justify; -moz-hyphens: auto; -o-hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; }

/* ++++ Background Seiten ++++ */

#benedeluxe,
#rechtliches
 {
	background-position: center 0%;
	background-size: auto;
	background-image: url(../img/bg/side_bg_2.jpg);
     background-repeat: repeat;
	background-attachment: fixed;
	display: table;
	width: 100%;
	height: 100%;
	min-height: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
	vertical-align: middle;
	z-index: 1;	
  }
  

#leistungen,
#arbeitsweise,
#team,
#referenzen,
#kontakt
 {
	background-position: center 0%;
	background-size: auto;
	background-image: url(../img/bg/side_bg_2.jpg);
     background-repeat: repeat;
	background-attachment: fixed;
	display: table;
	width: 100%;
	height: 100%;
	min-height: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
	vertical-align: middle;
	z-index: 1;	
  }
  
  
  /* ++++ Impressum Accordion ++++ */
  
  #accordion-impressum .panel-group .panel-heading + .panel-collapse .panel-body 
  { border-top: 0px solid #DDD; }
  
  #accordion-impressum .panel-heading {
  padding: 10px 0px;
  border-bottom: none;
  }

/*---- Team List ----*/

.team-infobox
{ border: 1px solid #CCC; padding: 15px 15px 0 15px; vertical-align: middle; display: table; width: 100%; margin-bottom:30px; background-color: rgba(255, 255, 255, 0.6) }
.team-infobox img { max-width:100% }
.team-infobox ul { padding-left:15px; min-height:10px  }

 #teamlist .panel-group .panel-heading + .panel-collapse .panel-body 
  { border-top: 0px solid #DDD; }
  
 #teamlist .panel-heading {
 padding: 10px 0px;
 border-bottom: none;
 }

 .team-infobox li {
 margin-bottom: 10px; }

 .team-infobox ul {
 margin-bottom: 50px; }





/* Portfolio Hover and Touch Animations */
.cs-style-3 figure {
	overflow: hidden;
}
.cs-style-3 figure img {
    margin-left:auto; 
    margin-right:auto;
    
	-webkit-transition: -webkit-transform 0.3s;
	-moz-transition: -moz-transform 0.3s;
   	transition: transform 0.3s;
}
.no-touch .cs-style-3 figure:hover img,
.cs-style-3 figure.cs-hover img {
	-webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.25);
    transform: scale(1.2);
}
.cs-style-3 figcaption {
	height: 100%;
	width: 100%;
	top: auto;
	bottom: 0;
	opacity: 0;
    
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -o-transform: scale(2);
    -ms-transform: scale(2);
    transform: scale(2);
    
	-webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    transition: all 0.3s linear;
}
.no-touch .cs-style-3 figure:hover figcaption,
.cs-style-3 figure.cs-hover figcaption {
	opacity: .7;
    
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    -ms-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

/* ==== 13) Portfolio ==== */
#our-work {
	padding-top: 60px;
	padding-bottom: 60px;
}
.portfolio-container { 
	position: relative;  
	margin: 0 auto; 
	-webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;	
}
 
#filters {
	padding:0;
	list-style:none;
	margin-bottom:30px;
}

#filters li {
	float:left;
		
}
	
#filters li span {
	display: block;
	padding: 5px 20px;	
	margin-right: 5px;
	margin-top:5px;	
	text-decoration:none;
	color:#5f5f5f;
	cursor: pointer;
	background-color: #f5f5f5;
		
	border-radius: 0px 0px 0px 0px;
	-webkit-border-radius: 0px 0px 0px 0px;
	-o-border-radius: 0px 0px 0px 0px;
	-moz-border-radius: 0px 0px 0px 0px;
		
	-webkit-transition: .4s cubic-bezier(0.25,.46,.45,.94);
	transition: .4s cubic-bezier(0.25,.46,.45,.94);
	-webkit-transition-property: background-color,color;
	transition-property: background-color,color;
}
	
#filters li span.active {
	color:#fff;
		
	border-radius: 0px 0px 0px 0px;
	-webkit-border-radius: 0px 0px 0px 0px;
	-o-border-radius: 0px 0px 0px 0px;
	-moz-border-radius: 0px 0px 0px 0px;
}
#filters li span:hover,
#filters li span:focus {
	color: #fff;
}
#portfoliolist .portfolio {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	display: none;
	margin-bottom: 15px;
	overflow: hidden;
}
.portfolio-wrapper {
	overflow:hidden;
	position: relative !important;
}
.portfolio img {
	max-width:100%;
	position: relative;
}


/*---- Contact Details ----*/ 
#contact-details {
	background-position: center 0%;
	background-size: cover;
	background-repeat: no-repeat; 
    background-color: #111;
	display: table;
	width: 100%;
	height: 100%;
	min-height: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
	vertical-align: middle;
	z-index: 1;
	color: #fff;
}
.details {
	margin-top: 90px;
	margin-bottom: 80px;
	color: #fff;
	z-index: 3;
}
.phone-info {
	line-height: 0;
	border-radius: 3px;
	display: inline-block;
	color: #fff;
	padding-bottom: 5px;
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 0px;
}


/* ==== 19) Contact Form ==== */


.nav-left {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.nav-left> li {
  position: relative;
  display: block;
}
.nav-left> li > a {
  position: relative;
  display: block;
  padding: 10px 0px;
  color:#5f5f5f
}
.nav-left> li > a:hover {
  text-decoration: none;
   color: #a0ba4d;
}

.nav-aktiv {color:#a0ba4d;font-weight:600}
.nav-left i {margin-right:10px}
/* Form style */
#contact { margin-top:30px }
#contact p { font-size:18px }
#contact input, select { 
	width: 100%; 
	padding: 12.9px; 
	color: #444; 
	background: transparent; 
	border: 1px solid #cbcbcb; 
	margin: 7px 0px; 
	-webkit-border-radius:2px; 
}
textarea:focus, input[type=text]:focus, input[type=password]:focus, input[type=datetime]:focus, input[type=datetime-local]:focus, input[type=date]:focus, input[type=month]:focus, input[type=time]:focus, input[type=week]:focus, input[type=number]:focus, input[type=email]:focus, input[type=url]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=color]:focus, .uneditable-input:focus {   
border-color: none;
box-shadow: none;
outline: 0 none;
}
textarea { 
	width: 100%; 
	height: 165px;
	padding: 13px; 
	color: #444; 
	background: transparent;
    border: 1px solid #cbcbcb;
	margin-top: 7px;
	margin-right:15px;
	-webkit-border-radius:0px;
	min-height: 180px; 
}
#contact input:focus, textarea:focus, select:focus { 
	border: 1px solid #cbcbcb; 
	background-color: transparent; 
	color:#333; 
}

#contact input.submit { 
	width: 185px;
	margin: 15px 0px;
	cursor: pointer;  
	color:#fff; 
	border-radius: 0px;
	border-color: none;
	-webkit-transition: .4s cubic-bezier(0.25,.46,.45,.94);
	transition: .4s cubic-bezier(0.25,.46,.45,.94);
	-webkit-transition-property: background-color,color;
	transition-property: background-color,color;
}
#contact input.submit:hover { background:#444 }
#contact input[type=submit][disabled] { background:#888; }

#contact span.required { 
	font-size: 13px; 
	color: #ff0000; 
}
#message { 
	margin: 10px 0; 
	padding: 0; 
}
.error_message {
	height: 100%;
	margin-left: auto;
	margin-right: auto;
	line-height: 22px;
	padding: 3px 10px 3px 35px;
	color: #8a1f11;
	-webkit-border-radius: 5px;
	background-color: #FBE3E4;
	background-image: url(../img/error.gif);
	background-position: 10px center;
	background-repeat: no-repeat;
}

.loader { 
	padding: 0 10px; 
}
acronym { 
border-bottom:1px dotted #ccc; 
}

#footer { background-color: #5f5f5f; padding-bottom: 15px; border-top: 3px solid #a0ba4d; }
#copyright { background-color: #a0ba4d; }
#copyright p { font-size:14px; color:#fff; margin: 5px 0px 5px 0px }


footer p { font-size: 14px; font-weight: 400; color: #fff }
footer h4 { font-size: 16px; font-weight: 700; color: #fff;margin-top: 15px; }
footer ul { list-style: none; padding:0; color:#fff; margin-bottom:0px } 
footer .footer-menu { padding-top: 15px; font-size: 16px; font-weight: 400; color: #fff; text-align:right; margin-bottom:25px }
footer .footer-menu a { 
	color: #fff; 
	margin-left: 0px; 
	-webkit-transition: all 0.2s ease; 
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease; }

footer .footer-menu a:hover { color: #a0ba4d }
