/* FRONTEND CSS
ci-color: #E50011
color hell: #ddf2f8
*********************************************/

/* message-container */
#system-message {
    padding: 0 15px 30px;
}
.alert *{
	color:red;
}
.alert-heading {
    margin-bottom: 0;
}
.close {
    cursor: pointer;
    float: right;
    font-weight: bold;
}

/* helper */
.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}
.clearfix {	
	clear: both;
	float:none;
}

.left, .pull-left{
	float:left;
}
.right{
	float:right;
}

.newspaper {
    column-count: 2;
    column-gap: 3.333333%;
	margin-bottom:0;
}
.newspaper p:first-child, .newspaper ul:first-child{
	margin-top:0;
}
.newspaper img{
	max-width:100%;
}

/* standard guten tags */
* {
	box-sizing:border-box;
}
html {
	/* scrollbar fix (prevent ugly left pull for lower content sites) */
	overflow-y: scroll;
	font-size: 100%;
}
body {
    background-image: url("/templates/fsgrid18/images/bg.jpg");
    background-repeat: no-repeat;
    background-size: cover;
	font-family: 'Roboto', sans-serif;
	font-size: 17px;
	font-weight: 300;
	line-height: 2;
	color: #000000;
	hyphens: auto;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	margin:0;
}
h1, h2, h3, h4, h5, h6{
	hyphens: none;
	text-align: left;
	font-weight:400;
	text-transform:uppercase;
}
h2 {
	color: #E50011;
	margin:0;
	padding:0;
	font-size:20px;
	font-weight:bold;
    margin-bottom: 20px;
}
h3 {
	color: #E50011;
	font-size:16px;
}
p {
    text-align: justify;
	margin:0.7em 0;
}
#maincontent img{
	max-width:100%;
}
.pull-none.item-image img{
	width:100%;
}
ul{
    margin-bottom: 0.5rem;
    margin-top: 0.5rem;
    padding-left: 0;
}

#maincontent a, #footer a{
	color:#E50011;
	text-decoration:none;
}

#maincontent a:hover, #footer a:hover,#beyondfooter a{
	text-decoration:none;
}
#beyondfooter a{
	color:inherit;
}
form li{
    background-image: none !important;
    list-style-type: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}
input{
	border:1px solid #484747;
	padding-left:5px;
}
button {
    background-color: #476645;
    border: 1px solid #d8d8d8;
    color: #d8d8d8;
}

table{
	max-width:100%;
}
th, td {
    padding: 10px;
	white-space:nowrap;
}

/* layout ids und kiddies */
#wrap{
	width:100%;
}
#page{
	max-width:1200px;
	margin:0 auto;
	background-color: #4B4B4B;
	background-size: 100%;
	-moz-background-size: 100%;
	-webkit-background-size: 100%;
	background-repeat: no-repeat;
	padding-top:35px;
}
body.site #textbox,body.online-rechner #textbox,body.kontakt #textbox{
	visibility:hidden;
}
body.front #page{
	background-image: url("/templates/fsgrid18/images/berg.jpg");
	background-size: 125%;
	-moz-background-size: 125%;
	-webkit-background-size: 125%;
	background-position-x:right;
}
body.site #page{
	background-image: url("/templates/fsgrid18/images/gruppe.jpg");
}
body.online-rechner #page{
	background-image: url("/templates/fsgrid18/images/schutz.jpg");
}
body.kontakt #page{
	background-image: url("/templates/fsgrid18/images/ballons.jpg");
}
#header,#maincontent,#beyondfooter{
    position: relative;
    background-color: #ffffff;
    padding: 25px 2%;
}
#header{
    height: 140px;
}
#header, #main, #footer{
	margin-left:3.16666%;
	margin-right:3.16666%;
	width:93.66668%;
}

#logo *{
	margin:0;
	padding:0;
}
#logo img{
	max-width:100%;
}

#mainmenu{
	position:absolute;
	right:0;
	bottom:10px;
}

#mainmenu *{
	white-space:nowrap;
	font-family:Arial, Helvetica, sans-serif !important;
	/*
	font-size:11pt !important;
	font-weight:600 !important;
	*/
	text-transform:uppercase !important;
	line-height:1 !important;
}
a.maximenuck{
	text-decoration:none !important;
}
span.nav-header{
	padding:7px 5px 13px 5px !important;
	margin:0 !important;
	display:block !important;
}
span.nav-header:hover, li.active span.nav-header{
	color: #E50011 !important;
}
.maximenuck2 a.maximenuck{
	border:none !important;
}
.maximenuck2 a.maximenuck span.titreck:hover{
	color:#E50011 !important;
}
.maximenuck2 li.maximenuck:hover{
	color:#E50011 !important;
	/*background: -moz-linear-gradient(top,  rgba(82,133,177,0.9) 0%, rgba(82,133,177,0.9) 100%) !important; 
	background: -webkit-linear-gradient(top,  rgba(82,133,177,0.9) 0%,rgba(82,133,177,0.9) 100%) !important; 
	background: linear-gradient(to bottom,  rgba(82,133,177,0.9) 0%,rgba(82,133,177,0.9) 100%) !important; 
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e65285b1', endColorstr='#e65285b1',GradientType=0 ) !important; 
	*/
}
#textbox {
    margin-top: 8%;
    position: absolute;
    width: 50%;
}
#textbox img {
    max-width: 100%;
}

#main{
	margin-top:36%;
}

#maincontent {
	padding-top:35px;
	padding-bottom: 40px;
}
#maincontent ul {
    margin-bottom: 0.5rem;
    padding-left: 0;
	background-repeat: no-repeat;
}
#maincontent li {
    margin-left: 20px;
	list-style-image:url(/templates/fsgrid18/images/li.gif);
}
.items-row, .item-page{
	background-color:#ffffff;
	position:relative;
	padding: 20px 2% 10px 2%;
	margin-bottom:25px;
}
.items-row .span_7{
	padding: 0 5% 0 0;
}

.readmore {
    position: absolute;
    bottom: 8px;
	right: 46.66667%;
    padding: 3px 20px;
    background-color: #E50011;
}
.readmore:hover{
	background-color: #80A5C6;
}
.readmore a{
	text-transform:lowercase;
	color:#ffffff !important;
}
.readmore a:hover{
	text-decoration:none !important;
}

.page-header h2 {
    margin-top: -10px;
}
.pull-none.item-image {
    padding-top: 12px;
}
/* hier bin ich */

#footer{
	color:#ffffff;
	font-size:14px;
	padding-top:15px;
	padding-bottom:30px;
}
#footer a{
	color: #ffffff;
	text-decoration:none;
}
#footer ul{
	float:right;
	margin-top: 7px;
	margin-bottom:10px;
}
#footer li {
	float:left;
    list-style-type: none;
    padding-left: 70px;
	text-transform:uppercase;
	font-weight:400;
}
#beyondfooter{
    background-color: #ffffff;
}

#beyondfooter ul{
	padding:0 2%;
	margin:0;
}
#beyondfooter li{
	float:left;
	list-style-image:url("/templates/fsgrid18/images/subli.png");
	padding-right: 40px;
	padding-left: 10px;
	list-style-type:none;
}
#beyondfooter li:last-child{
	padding-right:0;
}
/* special page classes */
.rechner{
	display:none;
}
/* contact */
.com-contact.contact {
  min-height: 800px;
}
.contact .left, .contact .right{
	width:50%;
}
.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;
	padding: 0;
}

form#contact-form fieldset {
	border:none;
	padding:0;
}
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: 20%;
}
.controls {
    float: left;
	width:70%;
}
.control-group.message {
    padding-top: 30px !important;
}
form#contact-form button {
    background-color: #E50011;
    border: medium none;
    color: #ffffff;
    float: right;
    margin: 0 10%;
    padding: 0 20px;
}
#easycalccheckplus{
	clear:both;
	width:90%;
}
#easycalccheckplus input{
	width:200px;
}

.mobilebarmaximenuck {
    height: 40px !important;
}

/* MEDIA QUERIES
*********************************************/
@media only screen and (max-width: 980px) {

	#page {
		background-size: 150%;
		background-position-x: right;
		padding-top:0;
	}
	#header{
		background-color:transparent;
	}
	#logo{
		background-color:#ffffff;
		padding:15px 15px 5px;
		width:50% !important;
	}
	#mainmenu{
		display:none;
	}
	#textbox{
		margin-top:5%;
	}
	.items-row .span_7 > p {
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}
	.left.contact, .right.contact{
		width:100%;
	}
	.control-label {
		float: left;
		width: 20%;
	}
	.controls {
		float: left;
		width:80%;
	}
	#easycalccheckplus{
		width:100%;
	}
	form#contact-form button {
		margin-right: 0;
	}
}
@media only screen and (max-width : 768px) {
	form#contact-form div.left, form#contact-form div.right {
		width: 100%;
	}
	.newspaper {
		column-count: 1;
		-moz-column-count: 1;
		-webkit-column-count: 1;
	}
	.newspaper.blog .page-header h2{
		padding-top:20px;
	}
	
}
@media only screen and (max-width : 640px) {
	body{
		line-height:1.75;
	}
	#textbox{
		margin-top:0;
	}
	#main {
		margin-top: 25%;
	}
	#maincontent .span_1,
	#maincontent .span_2,
	#maincontent .span_3,
	#maincontent .span_4,
	#maincontent .span_5,
	#maincontent .span_6,
	#maincontent .span_7,
	#maincontent .span_8,
	#maincontent .span_9,
	#maincontent .span_10,
	#maincontent .span_11,
	#maincontent .span_12{
		width:100%;
	}
	
	.items-row .span_7 > p {
		text-overflow: unset;
		overflow: visible;
		white-space: normal;
	}
	.item-page{
		display:block;
	}
	.items-row .span_7 {
		padding: 0;
	}
	.readmore {
		bottom: 0;
		left: 2%;
		right: inherit;
		width: 96%;
	}
	.span_5 .pull-none.item-image {
    	width: 100%;
	}
}

@media only screen and (max-width : 480px) {
	body{
	    background-image: url("/templates/fsgrid18/images/blank.gif");
	}
	#textbox{
		margin-top:0;
	}
	th, td {
		padding: 2px;
	}
	#header, #maincontent, #footer, #beyondfooter, #copyright {
		padding-left: 3%;
		padding-right:3%;
	}	
	#maincontent{
		padding-top:3%;
		padding-bottom:3%;
	}
}