/* helper */
div.contact-form > h3, div.contact-form legend, .popover, div.contact #basic-details, .accordion-heading{
	display:none !important;
}

.clear {
    clear: both;
    float: none;
}
.left, .pull-right{
	float:left;
}
.right, .pull-left{
	float:right;
}

/* standard guten tags */
html {
	/* scrollbar fix (prevent ugly left pull for lower content sites) */
	overflow-y: scroll;
	font-size: 100%;
	min-height:100%;
}
body {
	font-family: Source Sans Pro, sans-serif;
	font-size: 1rem;
	font-smooth: always;
	font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased; /* funkt tatsächlich bei safari */
	text-rendering: optimizeLegibility; /* versuchen kann mans ja mal */
	line-height: 1.5;
	color: #484747;
	hyphens: auto;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;	
	background-color: #f4f4f4;
    background-image: url("/templates/bps2017/images/bodybg.jpg");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
	min-height:100%;
}
h2 {
	margin:0 0 10px 0;
	padding:0;
}
h3 {
    font-size: 1rem;
    font-style: italic;
    font-weight: normal;
}

p{
	text-align: justify;
}
a{
	color:#fff;
	text-decoration:none;	
}
a:hover{
	text-decoration: underline;
}

/* layout ids und kiddies */
#wrap{
	width:100%;
	margin-top:30px;
}
#page{
	max-width:1200px;
	background-color:white;
	margin:0 auto;
}
#header{
	position:relative;
	height:135px;
}
#mainmenu{
	position:absolute;
	bottom:0px;
	left:50px;
}
ul.maximenuck{
	background:none !important;
}
ul.maximenuck li{
	background:rgba(0, 0, 0, 0) url("/templates/bps2017/images/menu-separator.gif") no-repeat scroll right center !important;
}
ul.maximenuck li:last-child{
	background:none !important;
}
ul.maximenuck2 li{
	background:none !important;
}
ul.maximenuck2 li a.maximenuck {
	border-bottom:none !important;
}
#logo{
	position:absolute;
	top:10px;
	right:40px;
}
#logo p{
	margin:0;
}
#logo img{
	float:right;
	width:100%;
	max-width:250px;
}
#main {
    clear: both;
	min-height: 515px;
	/*padding:0 0 0 60px;*/
	background-image:url(/templates/bps2017/images/bg-main.jpg);
	background-size:contain;
}
#main h2, #main h2 a{
	color:white;
}
#aside{
	float:right;
	width:54.08333%;
	max-width:619px;
	padding-left:30px;
}
#aside *{
	padding:0;
	margin:0;
}
#aside img{
	width:100% !important;
	height::auto !important;
	max-width:619px;
}
#maincontent{
	padding-left:60px;
}
#maincontent ul{
	padding-left:1rem;
}
#maincontent li{
	background-image: url("../images/li.gif");
    background-position: 0 7px;
    background-repeat: no-repeat;
    list-style-type: none;
    margin-left: 0;
    padding-left: 1.5rem;
}
#maincontent img{
	max-width:100%;
	height:auto;
}

.item-page{
	padding-right:60px;
}

#footer {
    padding: 0 50px;
}
#footer p{
	float:right;
}
#footer a {
    color: #333333;
    font-size: 11pt;
    padding: 0 10px;
    text-decoration: none;
    text-transform: uppercase;
	hyphens:none;
	-webkit-hyphens:none;
	-moz-hyphens:none;
	-ms-hyphens:none;
}

/* contact */
.com-contact.contact{
	display:flex;
}
.com-contact__miscinfo.contact-miscinfo {
  padding-right: 30px;
}
.contact-miscinfo dd{
	margin-left:0;
}
.contact-block, .opening-block{
	box-sizing:border-box;
	float:left;
	padding-right:60px;
}
.opening-block{
	float:right;
	white-space:nowrap;
}

.contact .thumbnail.pull-right img{
	max-width: 250px;
	width:30%;
}

div.contact-form {
    background-color: #fff;
	margin-right:60px;
}

form#contact-form fieldset {
	border:none;
}
form#contact-form input{
	width:100%;
	border-top-width: medium;
	border-right-width: medium;
	border-bottom-width: thin;
	border-left-width: medium;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: dotted;
	border-left-style: none;
	border-bottom-color: #666;
}
form#contact-form textarea {
	width:100%;
	border-width: thin;
	border-style: dotted;
	border-color: #666;
}

.control-group{
	clear:both;
}
.control-group.copy{
	padding-top: 20px;
}
.control-group.copy input{
	width:20px !important;
}

.control-label {
    float: left;
    width: 90px;
}
.controls {
    float: left;
    width: 440px;
}

form#contact-form button {
    background-color: #FDB813;
    border: medium none;
    color: #ffffff;
    float: right;
    margin: 0;
    padding: 0 20px;
}



/* page classes */
.mobilebarmenuck{
	margin-top:20px;
}
.mobilebuttonmenuck {
	padding-right: 85%;
}
.mobilebarmenutitleck {
    padding-left: 40%;
}
dl.contact-address dd{
	padding: 0 10px 0px 20px;
}
dl.contact-address dd span{
	line-height:1;
}

	/*
.newspaper{
	column-count: 2;
	-moz-column-count: 2;
	-webkit-column-count: 2;
	column-gap: 25px;
	-moz-column-gap: 25px;
	-webkit-column-gap: 25px;
}
.newspaper p:first-child, .newspaper ul:first-child{
	margin-top:0;
}
.newspaper > img{
	width:100%;
}
	*/
	
.blog-featured-start .items-row, .item-page, .contact{
	padding-top: 30px;
	padding-bottom: 30px;
}
.items-row > div {
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999;
	text-align: justify;
}
.items-row > div:last-child {
	border-bottom:none;
	margin-bottom:10px;
}
.readmore{
	clear:both;
	margin-top: 1rem;
}
.jicons-icons, .jicons-text{
	float:left;
	clear:left;
}

.image-wrap > div > img {
    max-width: 1200px;
    width: 100%;
}

/*specials frontpage*/
.front.home #page {
	background: rgba(255,255,255,0.8);
	min-height: 800px;
}
.front.home #maincontent a {
    color: #666666;
    font-weight: bold;
}
body.front.home #main{
	background-image:none;
}
body.front.home #logo{
	right:30px;
}
body.front.home #incontent{
	float:left;
}
body.front.home .incontent{
	display:table-cell; 
	vertical-align:middle; 
	padding-left:30px; 
}
body.front.home #maincontent{
	padding-left:10px;
	padding-right:30px;
}
body.front.home #main h2, body.front.home #main h2 a {
	color:#fdb813;
}

.wabenmuster{
	width:655px;
}
.wabe a{
	background-image:url(../images/wabe-button.gif);
	background-repeat:no-repeat;
	background-size:contain;
	width:195px;
	height:225px;
	text-align:center;
	display:table;
	text-transform:uppercase;
	font-size:17px;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
	text-decoration: none;
	line-height:1.5;
	color:#fff;
	display:table-cell;
	vertical-align:middle;
	padding-right:20px;
}
.wabe a:hover{
	background-image:url(../images/wabe-button-aktiv.gif);
	background-size:contain;
	color:#000;
	text-decoration: none;
}
.wabe a.green{
	background-image:url(../images/wabe-button-green.gif);
}
.wabe a.green:hover{
	background-image:url(../images/wabe-button-green-aktiv.gif);
}

.waberow_1, .waberow_2, .waberow_3, .wabe, .wabe.a{
	margin:0;
	padding:0;
	clear:both;
}
.waberow_1, .waberow_3{
	margin-left:108px;
}
.waberow_2{
	margin-left:0px;
}
.waberow_2, .waberow_3{
	clear:both;
	margin-top:-42px;
}

	
/* MEDIA QUERIES
*********************************************/
@media only screen and (max-width: 1200px) {
	.control-label {
		float: left;
		width: 90px;
	}
	.controls {
		float: left;
		width: calc(100% - 90px);
	}
	.contact .right{
		float:none;
		clear:both;
	}
	.contact iframe {
		/*
		width: 100% !important;
		*/
	}
}
@media only screen and (max-width: 1000px) {

	
	#incontent{
		padding-left:20px;
	}
	#maincontent{
		padding-right:0 ;
	}

	body.front.home #logo{
		right:20px;
	}
	body.front.home .incontent {
		padding-left: 20px;
		padding-right: 20px;
	}
	body.front.home #maincontent {
		padding-left: 0px;
		padding-right: 20px;
	}
	.wabenmuster{
		width:318px;
	}
	.wabe a{
		background-image:url(../images/wabe-button.gif);
		background-repeat:no-repeat;
		width:98px;
		height:113px;
		text-align:center;
		display:table;
		text-transform:uppercase;
		font-size:12px;
		font-family:Arial, Helvetica, sans-serif;
		font-weight:bold;
		text-decoration: none;
		line-height:1.5;
		color:#fff;
		display:table-cell;
		vertical-align:middle;
		padding-right:10px;
	}
	.wabe a:hover{
		background-image:url(../images/wabe-button-aktiv.gif);
		color:#000;
		text-decoration: none;
	}
	.waberow_1, .waberow_2, .waberow_3, .wabe, .wabe.a{
		margin:0;
		padding:0;
		clear:both;
	}
	.waberow_1, .waberow_3{
		margin-left:54px;
	}
	.waberow_2{
		margin-left:0px;
	}
	.waberow_2, .waberow_3{
		clear:both;
		margin-top:-21px;
	}

.contact-block, .opening-block{
	float:none;
	clear:both;
}
@media only screen and (max-width: 960px) {
	.com-contact.contact {
	  display: block;
	}
}
@media only screen and (max-width : 768px) {
	#mainmenu {
	    left: 10px;
    }
	#logo{
		right:20px;
	}
	#incontent, #maincontent{
		float:none;
		
	}
	.incontent{
		display:block;
		padding: 20px 0;
	}
	#maincontent{
		padding-left:20px;
	}
	.item-page{
		padding-right:20px;
	}
	#footer {
		padding: 0 10px;
	}
	
	form#contact-form div.left {
		width: 100%;
	}
	div.contact-form {
		margin-right: 20px;
	}	

}
@media only screen and (max-width : 640px) {
	#wrap{
		margin-top:0;
	}
	body.front.home #header {
    	height: auto;
	}
	#main{
		background-size:180% auto;
		background-position:right top;
	}
	#mainmenu {
		left: 0;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 1;
		height:35px;
	}	
	#logo {
		padding-top: 45px;
		position: static;
		width: 100%;
	}
	#logo p{
		text-align:center;
	}
	#logo img{
		float:none;
		max-height:80px;
		width:auto;
	}
	body.front.home #logo{
		position:static;
	}
	body.front.home #incontent, body.front.home #maincontent{
		display:block;
		float:none;
	}
	body.front.home #maincontent{
		padding-left:20px;
	}
	#aside{
		float:none;
		width:100%;
		margin: 0;
	    padding: 0;
	}
	.wabenmuster{
		margin:0 auto;
	}
	.blog-featured-start .items-row, .item-page {
		padding-bottom: 10px;
		padding-top: 0px;
	}	

	.site.kontakt #maincontent {
		padding-left: 10px;
	}
	div.contact-form {
		margin-right: 10px;
	}
	.contact-block, .opening-block {
		white-space:normal;
		padding-right:0px
	}

}
@media only screen and (max-width : 480px) {
	#incontent{
		padding: 10px 0 0 0;
	}
	body.front.home #maincontent{
		padding-left:15px;
		padding-right:15px;
	}
	#maincontent{
		padding-left:15px;
	}	
}
