
/* ===================================
1. General
==================================== */
/* Webfonts */
@import url('all.min.css');
@import url('fonts.css');
@import url('cookies.css');
@import url('pt-custom.css');

body {
	font-family:'Open Sans', Arial, sans-serif;
	font-size:14px;
	font-weight:300;
	line-height:1.6em;
	color:#656565;
	background:#eee;
	padding:0;
	margin:0;
}

a:active {
	outline:0;
}

.clear {
	clear:both;
}

h1,h2, h3, h4, h5, h6 {
	font-family:'Open Sans', Arial, sans-serif;
	font-weight:600;
	line-height:1.1em;
	color:#333;
	margin-bottom: 20px;
}

ul, li, ol{
	list-style-image:none;
	list-style:none;
	margin:0;
	padding:0;
}

/* ===================================
2. layout
==================================== */

#nav-logo{
	/*left: 30px;
    position: absolute;
    top: -97px
	margin:0 0 -17px 30px;;*/
	margin:0 0 30px;
	float:left;
	display:inline-block;
}

.container {
	/*padding:0  10px;*/
	position:relative;
	max-width:1024px;
}

.main-content {
	background:#fff;
}

header .main-content {
	float:right;	
	display:inline-block;
	margin:50px 0 0;
}

#wrapper{
	width:100%;
	margin:0 auto;	
	padding:0;
	max-width:1280px;
	background:#fff;
}


.row,.row-fluid {
	margin-bottom:30px;
}

.row .row,.row-fluid .row-fluid{
	margin-bottom:30px;
}

.row.nomargin,.row-fluid.nomargin {
	margin-bottom:0;
}



/* ===================================
3. Responsive media
==================================== */

.video-container,.map-container,.embed-container{
	position:relative; margin:0 0 15px 0;	padding-bottom:51%; padding-top:30px; height:0; overflow:hidden; border:none;
}
.embed-container iframe,
.embed-container object,
.embed-container embed,
.video-container iframe,
.map-container iframe,
.map-container object,
.map-container embed,
.video-container object,  
.video-container embed{
	position:absolute; top:0; left:0; width:100%; height:100%;
}
iframe {
	border:none;
}

img.img-polaroid {
	margin:0 0 20px 0;
}
.img-box {
	max-width:100%;
}

img{
	max-width:100%;
	height:auto;
}
/* ===================================
4. Header
==================================== */

/* --- header -- */


header .navbar {
    margin-bottom: 0;
}

.navbar-default {
    border: none;
}

.navbar-brand {
    color: #222;
	text-transform: uppercase;
    font-size: 24px;
    font-weight: 700;
    line-height: 1em;
	letter-spacing: -1px;
    margin-top: 30px;
    padding: 0 0 0 15px;
}

.navbar-brand img{
	height: auto;
    max-width: 100%;
}

.navbar-collapse{
	border:none;
}

header .navbar-collapse  ul.navbar-nav {
    float: right;
    margin-right: 0;
	padding-top:20px;
}

header .navbar-default{
    background-color: #fff;
}

header .nav li a:hover,
header .nav li a:focus,
header .nav li.active a,
header .nav li.active a:hover,
header .nav li a.dropdown-toggle:hover,
header .nav li a.dropdown-toggle:focus,
header .nav li.active ul.dropdown-menu li a:hover,
header .nav li.active ul.dropdown-menu li.active a{
    transition: all .3s ease;
}


header .navbar-default .navbar-nav > .open > a,
header .navbar-default .navbar-nav > .open > a:hover,
header .navbar-default .navbar-nav > .open > a:focus {
    transition: all .3s ease;
}


header .navbar {
    min-height:30px;
}

header .navbar-nav > li  {
	padding-bottom:10px;
}

.navbar-toggle{
	margin-bottom: 40px;
    margin-top: -40px;
}

header  .navbar-nav > li > a {
    padding-bottom: 6px;
    padding-top: 5px;
    margin-left: 2px;
    line-height: 30px;
	font-weight: 300;
    transition: all .3s ease;	
    font-size: 13px;
    margin:0 10px;
    padding: 10px 0;
    text-decoration: none;
}


.dropdown-menu li a:hover {
    color: #fff !important;
}

header .nav .caret {
    border-bottom-color: #f5f5f5;
    border-top-color: #f5f5f5;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  background-color: #fff;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  background-color:  #fff;
}	
	

.dropdown-menu  {
    box-shadow: none;
    border-radius: 0;
	border: none;
}

.dropdown-menu li:last-child  {
	padding-bottom: 0 !important;
	margin-bottom: 0;
}

header .nav li .dropdown-menu  {
   padding: 0;
}

header .nav li .dropdown-menu li a {
   line-height: 28px;
   padding: 3px 12px;
}

/* --- menu --- */




.navbar-default .navbar-collapse, .navbar-default .navbar-form{
  border:none;
  background:#fff;
}


header .navigation {
	float:right;
}

header ul.nav li {
	border:none;
	margin:0;
	/*float: left;*/
}

header ul.nav li a {	
	font-size:14px;
	border:none;
	font-weight:600;
	text-transform:uppercase;
	color:#999;
}

header ul.nav li ul li a {	
	font-size:12px;
	border:none;
	font-weight:300;
	text-transform:uppercase;
}


.navbar .nav > li > a {
  color: #656565;
  text-shadow: none;
}

.navbar .nav a:hover {
	background:none;
}

.navbar-default .navbar-nav > li > a:hover,
header ul.nav li a:hover,
.navbar .nav > .active > a,
.navbar .nav > .active > a:hover {
	background:none;
	font-weight:600;
	border-bottom:3px solid #0d1f54;
	color:#0d1f54;
}

.navbar .nav > .active > a:active,.navbar .nav > .active > a:focus {
	background:none;
	outline:0;
	font-weight:600;
}

.navbar .nav li .dropdown-menu {
	z-index:2000;
}

header ul.nav li ul {
	margin-top:1px;
}
header ul.nav li ul li ul {
	margin:1px 0 0 1px;
}
.dropdown-menu .dropdown i {
	position:absolute;
	right:0;
	margin-top:3px;
	padding-left:20px;
}

.navbar .nav > li > .dropdown-menu:before {
  display: inline-block;
  border-right: none;
  border-bottom: none;
  border-left: none;
  border-bottom-color: none;
  content:none;
}



ul.nav li.dropdown a {
	z-index:1000;
	display:block;
}

 select.selectmenu {
	display:none;
}



.main-content .menu li ul{position:  absolute; top:0; left:0; z-index:5; display:none; width:-moz-max-content; background:rgba(255, 255, 255, 0.7); left: 0; padding: 4px 5px;position: absolute; top: 52px;width:180px;}
.main-content .menu li:hover ul{display:block;}
.main-content .menu li ul li{ background:none; display:block; padding:5px; margin:0 0 5px; position:relative; text-align:left;}
.main-content .menu li ul li:hover {background-color:none;}
.main-content .menu li ul li a{color:#0d1f54; font-size:14px; border:none; font-weight:normal;}
.main-content .menu li ul li a:hover{color:#F99300; border:none;font-weight:normal; text-decoration:none;}

.item-page ul.list li{background:url("../images/bg_liste.png") no-repeat 0 13px ; padding-left:30px; margin:0 0 10px;}

/* ===================================
5. Section: Featured
==================================== */

#featured{
	width: 100%;
	position:relative;
	margin:0;
	padding:0;
	z-index:1;
}

#featured .container2{
	width:100%;
	margin:0 auto;
	padding:0;
}

#featured .container .col-lg-12{
	padding:0;
}

/* ===================================
8. Section: Content
==================================== */

#content {
	position:relative;
	padding:0;
	top:-15px;
}

#content .main-content{
	padding:50px 0;	
}

#main-slider img,
#content img {
	max-width:100%;
	height:auto;
}

#main-slider img{
	width:100%;
}

#content .main-content .content{
	padding:0;
}

#content .main-content .content h4{
	font-size:1.25em;
	line-height:1.25em;
	margin-bottom:25px;
}

#content .main-content .content h5{
	font-size:1em;
	line-height:1.25em;
	margin-bottom:25px;
}

#content .main-content .team img,
#content .main-content .main-projekte img{
	border:1px solid #aaa;
	margin:15px 0;
}

#content .main-content .main-projekte .btn-projekte{
	margin:40px auto 0;
	text-align:center;
}

#content .main-content .main-projekte .btn-projekte .btn-default{
	color:#fff;
	padding:4px 8px;
	background:#0d1f54;
}

#content .main-content .main-projekte .btn-projekte .btn-default:hover{
	text-decoration:none;
	background:#ccc;
}


/*==========================
  Detail Projekt
===========================*/

.pull-left.item-image{
	text-align:center;
	margin:20px 0 30px;
	float:none !important;
}

.pull-left.item-image img{
	border:1px solid #ccc;
}

#content .main-content .content h4{
	font-size:1.25em;
	font-weight:400;
	color:#000;
	margin:0 0 25px;
}

#content .main-content .content h5{
	font-size:1em;
	font-weight:400;
	color:#0d1f54;
	margin:25px 0 5px !important;
}

#content .main-content .content .links {
	margin:25px 0 0 !important;
}


#content .main-content .content .links a{
	color:#fff;
	padding:4px 8px;
	background:#0d1f54;
}

#content .main-content .content .links a:hover{
	text-decoration:none;
	background:#ccc;
}


.line-b{
	border-top:1px solid #0d1f54;
	width:100%;
	padding-top:15px;
}

/* --- box --- */

.box {
	width: 100%;
}
.box-gray  {
	background: #f8f8f8;
	padding: 20px 20px 30px;
}
.box-gray  h4,.box-gray  i {
	margin-bottom: 20px;
}
.box-bottom {
	padding: 20px 0;
	text-align: center;
}
.box-bottom a {
	color: #fff;
	font-weight: 700;
}
.box-bottom a:hover {
	color: #eee;
	text-decoration: none;
}


/* ===============================
14. Blog & article
================================ */

article{
	margin-bottom:40px;
}

article .post-heading h3 {
	margin-bottom:20px;
}

article .post-heading h3 a {
	font-weight:700;
	color:#353535;
}

article .post-heading h3 a:hover {
	text-decoration:none;
}


/* ===============================
16. Footer
================================ */

footer{
	padding:0 0 50px;
	text-align:center;
	margin-top:-15px;
}

footer .content{
	padding:0 25px;
}

footer p {
	font-size:0.75em;
	line-height:4em;
}


/* =============================
18. Position & alignment
============================= */

.absolute{
	position:absolute;
}

.relative{
	position:relative;
}

.aligncenter{
	text-align:center;
}

.aligncenter span{
	margin-left:0;
}

.floatright {
	float:right;
}

.floatleft {
	float:left;
}

.floatnone {
	float:none;
}

.aligncenter {
	text-align:center;
}

/* --- Image allignment style --- */

img.pull-left, .align-left{
	float:left;
	margin:0 15px 15px 0;
}

.widget img.pull-left {
	float:left;
	margin:0 15px 15px 0;
}

img.pull-right, .align-right {
	float:right;
	margin:0 0 15px 15px;
}

article img.pull-left, article .align-left{
	float:left;
	margin:5px 15px 15px 0;
}

article img.pull-right, article .align-right{
	float:right;
	margin:5px 0 15px 15px;
}

/* =============================
Spacer, margin, padding
============================= */

.clear-marginbot{
	margin-bottom:0;
}

.marginbot10{
	margin-bottom:10px;
}
.marginbot20{
	margin-bottom:20px;
}
.marginbot30{
	margin-bottom:30px;
}
.marginbot40{
	margin-bottom:40px;
}

.clear-margintop{
	margin-top:0;
}

.margintop10{
	margin-top:10px;
}

.margintop20{
	margin-top:20px;
}

.margintop30{
	margin-top:30px;
}

.margintop40{
	margin-top:40px;
}

.margintop50{
	margin-top:40px;
}

.margintop110{
	margin-top:110px;
}

.paddingtop25{
	padding-top:25px;
}

.paddingbot25{
	padding-bottom:25px;
}

.paddingleft25{
	padding-left:25px;
}

.paddingright25{
	padding-right:25px;
}

.paddingtop50{
	padding-top:50px;
}

.paddingbot50{
	padding-bottom:50px;
}

.paddingleft50{
	padding-left:50px;
}

.paddingright50{
	padding-right:50px;
}

.page-header {
    margin:0 0 20px;
    padding-bottom: 0;
  	border:none;
}


.sp-portfolio-preview,
.page-header h1{
  display:none !important;
}

div.appico .sp-portfolio-item-details{
	background: none;
}

.item-title,
.pg-referenzen .page-header h1,
.page-header h2{
	display:block !important;
	color:#000;
	font-size:24px;
	font-weight:300;
}

.pg-referenzen .item-image{
	margin-bottom:24px;
}

.item-title{
 	margin: 0 0 20px;
    padding-bottom: 9px;
    /*border-bottom: 1px solid #eee;*/
	border-bottom:none;
}

.pull-left{
  margin-right:40px;
}

/*============================
	Accordion => Leistungen 
==============================*/

.uk-scope .uk-accordion{
  display:block !important;
  margin-top:40px;
}

a.uk-accordion-title{
  background:url("../images/pic-off.png") no-repeat 10px 8px;
  margin-bottom:0;
  margin-top:0;
  padding:5px 20px 9px 30px;
  color:#0d1f54;
  font-weight:600;
  font-size: 18px;
}

a.uk-accordion-title:hover{
  text-decoration:none !important;
  color:#428bca !important;
}

.uk-open .uk-accordion-title{
  background:url("../images/pic-on.png") no-repeat 5px 12px;
  text-decoration:none !important;
  color:#428bca !important;
}
.uk-accordion-content{
  padding:0 20px 10px;
  margin-top:0;
}

.uk-accordion-content h2.item-title{
	display:none;
}

.uk-accordion-content p strong{
	font-weight:600;
	color:#0C1E54;	
}

.uk-accordion-content .uk-margin{
  padding-top:5px;
  margin:0;
}

.uk-margin{
  border-top:1px solid #ccc;
  padding-top:20px; 
}

.content-accord{
  background:#eee;
  padding:0;
  margin:0 0 20px;
  border:1px solid #e1e1e1;
}

/*============================
	Portfolio => Referenzen 
==============================*/

div.appico ul.sp-portfolio-filter{
	margin:40px 0;
}

div.appico ul.sp-portfolio-filter li{
	margin:0 5px 5px;
}

div.appico .btn, div.appico .btn.btn-primary{
	background:#0d1f54;
	border-color:#0d1f54;
	color:#fff;
	font-size:0.85em;
	font-weight:500;
	border-bottom: 2px solid #0c1e54;
	border-radius: 0;
}

div.appico .btn.btn-primary:hover{
	background:#aaa;
	color:#fff;
}

div.appico .btn:hover,
div.appico .btn.active{
	background:#fff;
	border-color:#0d1f54;
	color:#0d1f54;
}

div.appico .sp-portfolio-item-inner{
	padding:1px;
	border-radius:0;
	background:#aaa;
}

div.appico .sp-portfolio-thumb .sp-portfolio-preview{
	background-image: url(../images/icon-plus.png);
	left: 50%;
	margin-left: -75px;
	z-index:10;
	border-radius:3px;

}

div.appico .sp-portfolio-thumb .sp-portfolio-link{
	background-image: url(../images/icon-plus.png);
	right: 50%;
	margin-right: -20px;
	z-index:10;
	border-radius:3px;
	top:80%;
}


div.appico .sp-portfolio-thumb .sp-portfolio-introtext h4,
div.appico .sp-portfolio-thumb .sp-portfolio-introtext h5{display:none;}

div.appico .sp-portfolio-thumb .sp-portfolio-introtext h4.item-title{
	width: 96%;
	height: auto;
	text-align:center;
	color:#fff !important;
	font-size:15px;
	font-weight:600;
	display:block;
	position: relative;
	top: 5%;
	right:inherit;
	margin-top:0 auto;
	filter: alpha(opacity=0);
	opacity: 0;
	transition: 300ms;
	z-index:10;
	margin-bottom: 5px !important;
}

div.appico .sp-portfolio-thumb:hover .item-title{
	right:2%;
	opacity: 1;
}

#content .main-content .content h5.line-b{
	margin:50px 0 30px !important;
}




div.appico .sp-portfolio-thumb .sp-portfolio-introtext{
	position: absolute;
	top: 20px;
	left: 0;
	right: 0;
	color: #fff;
	height: 0;
	font-size: 12px;
	opacity: 0;
	visibility: hidden;
	text-align:center;transition: all 300ms linear;
	background:rgba(13, 31, 84, 0.7);
}

div.appico .sp-portfolio-thumb:hover .sp-portfolio-introtext{
	 opacity: 1;  top: 0;  visibility: visible;  height: 100%; cursor:pointer;
}
div.appico .sp-portfolio-thumb:hover .sp-portfolio-introtext  h4.item-title{opacity: 1;  top: 5%;  visibility: visible;}
div.appico .sp-portfolio-thumb:hover .sp-portfolio-link{margin-right:-20px;}

#content div.appico .sp-portfolio-thumb img{
	max-width: 286px;
	height: 186px;
}

/*div.appico .sp-portfolio-thumb .sp-portfolio-introtext{
	width: 96%;
	height: auto;
	text-align:center;
	color:#fff !important;
	display: inline-block;
	position: absolute;
	top: 28%;
	left:-10%;
	margin-top:0;
	filter:alpha(opacity=0); 
	-moz-opacity: 0; 
	-khtml-opacity: 0;
	opacity: 0;
	-webkit-transition: 300ms;
	-moz-transition: 300ms;
	-o-transition: 300ms;
	-ms-transition: 300ms;
	transition: 300ms;
	z-index:10;
}

div.appico .sp-portfolio-thumb:hover .sp-portfolio-introtext{
	left:2%;
	filter:alpha(opacity=100); 
	-moz-opacity: 1; 
	-khtml-opacity: 1;
	opacity: 1;
}
*/

div.appico .sp-portfolio-thumb:hover::after{
	height:100%;
	width:100%;
	opacity:0.6;
	background:rgba(13, 31, 84, 0.9) !important;
	border-radius:3px;
	content:"";
	position:absolute;
	display:none;
}
/* ============================
Breadcrumb
============================= */
.breadcrumb {
    background:none;
    border-radius: 0;
    list-style: outside none none;
    margin-bottom:0px;
    padding: 0 15px;
	color: #0D1F54;
	font-size:0.75em;
}

.breadcrumb > .active{
	color: #0D1F54;
}

.breadcrumb > li + li::before {
    color: #0D1F54;
    content: ">>";
    padding: 0 5px;
	font-size:0.6em;
}

.breadcrumb .divider{
	display:none;
}

.breadcrumb a{
	text-decoration:none;
}

.breadcrumb li:nth-child(2){
	display:none;
}

/* =============================
 Kontakt Formular 
============================= */

.bfQuickMode section.bfElemWrap{
  background:#eee;
}

.bfQuickMode .bfSubmitButton{
  background: #0d1f54;
  color: #fff;
  padding: 4px 8px;
  border:none;
  /*margin-right:9%;*/
  margin:5px 0 30px;
  width:53%;
}

.bfQuickMode .bfSubmitButton:hover{
  background: #ccc;
}

.bfQuickMode .bfPageIntro{
  padding:0 5px 5px;
}

.bfQuickMode section input[type="text"],
.bfQuickMode section textarea,
.bfQuickMode section select{
  width:53%;
}

.box-map{
	font-size:15px;
	font-weight:700;
	text-align:center;
	color:#0C1E54;
	padding-top:5px;
}

.box-map span{
	font-size:12px;
	font-weight:normal;
	color:#000;
}

.bt-googlemaps{
	border:1px solid #ccc;
	margin-top:-20px;
}
/* =============================
Links Before Footer
============================= */
.link-f{
	padding:0 10px;
	text-align:center;
	margin-top:25px;
	/*border-top: 1px solid #0d1f54;*/
}
.link-f img{
	border: 1px solid #aaa;
	margin-top:25px;
}

.link-f a{
	color:#fff;
	display:block;
	text-align:center;
	max-width:252px;
	margin:0 auto;
	padding:4px 4px 5px 4px;
	text-decoration:none;
	background:#0d1f54 ;
	border: 1px solid #0d1f54;
}

.link-f a:hover{
	background:#aaa ;
	border: 1px solid #aaa;
}


/* =============================
Scroll to up 
============================= */
.scrollup{
    position:fixed;
	width:40px;
	height:40px;
    bottom:0px;
    right:20px;
	background: #222;
	display:none;
	background:url("../images/bg-scrollup.png") no-repeat;
	
}

a.scrollup {
	outline:0;
	text-align: center;
}

a.scrollup:hover{
	opacity:1;
	text-decoration:none;
	/*background:url("../images/bg-scrollup-hover.png") no-repeat;*/
}

.navbar-toggle{
		margin-right:0;
	}

/* Kontakt */
.mainkontakt{background: #fff;}
.kontaktform{max-width: 100%; margin: 0 auto; padding: 10px 0 30px;}
.kontaktform section{margin:15px 0 10px; }
.kontaktform label{width:34%; vertical-align:top; font-weight: 100;}
.kontaktform input[type="text"],
.kontaktform textarea{float:none; width:65%; background-color:#f6f6f6; border:1px solid #e9e9e9; padding:4px 4px 3px; font-size:12px; font-weight:normal; color:#666}
.kontaktform .visBtnCon .btn{background: #0C1E54; border:none; display: inline-block; float: right; margin: 15px 0; padding:9px 20px 12px; color:#fff;}
.kontaktform .visBtnCon .btn:hover{ color:rgba(255,255,255,0.7);}
.kontaktform .bfRequired{color: red;}
.kontaktform .bfErrorMessage{color: red; line-height: 25px; display: inherit; padding: 15px; background: rgba(250,0,0, 0.2); width: 100%;}
.kontaktform #bfCaptchaEntry {margin: 15px 0 0 34.5%; width: 230px;}
.kontaktform .captchaCont{text-align:right;}

/* =============================
Media queries 
============================= */
@media  (max-width: 768px){
	header .navbar{
		text-align: center;
	}
	header .main-content{
		float: none;
	}
}

@media (min-width: 768px) {
	.container {
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	
	header .navbar-collapse ul.navbar-nav {
    	float: none;
		overflow:hidden;
		margin-bottom:20px;
		padding-top:0;
	}
	
	header .navbar-nav > li {
    	padding-bottom: 0;
	}
	
	header ul.nav li a{
		padding:10px 0 0;
		border-bottom:3px solid #ddd;
	}
  
  	div.appico .col-3 {
    	width: 49%;
	}
  
    div.appico .sp-portfolio-thumb .sp-portfolio-link{
        top:80%;
	}
	header .navbar{
		text-align: left;
	}

	header .navbar > a > img{
		max-width: 320px;
	}

	header .main-content{
		float: right;
		width: 100%;
		margin-top: -20px;
	}
	.navbar-collapse{
		max-height: inherit;
	}
	.main-content .menu li ul{
		display: block;
		position: static;
	}

}




@media screen and (max-width: 481px) {
  	div.appico .col-3 {
    	width: 100%;
	}
  	div.appico .sp-portfolio-thumb .sp-portfolio-link{
        top:50%;
  	}
}

@media screen and (max-width: 360px) {
	.uk-accordion-title{
      font-size:14px;
    }
}

@media screen and (max-width: 520px) {
#nav-logo{
		margin:0 0 -4%;
	}
}