body {
	background:#ffffff;/*#DCDCDC*/
	background: linear-gradient(90deg, #DCDCDC 0%, #FFF 25%, #FFF 75%, #DCDCDC 100%);
	font-size:100%;
	margin:0em;
	padding:0em;
}
html {
    height: 100%;
}
body{ min-height:100%; padding:0; margin:0; position:relative; }
body:after{ content:''; display:block; height:100px; }
h1 {

	color:rgb(251, 11, 234);
	font: small-caps 900 9em 'Lato', sans-serif;
  	letter-spacing: 10px;
	text-shadow: 2px 2px 2px rgba(150, 150, 150, 1);
	text-align: center;
}
h2 {
	font-size:1.563em;
	line-height:1.4em; /*1.8em*/
	/*font-family: Helvetica;
	font-weight:100;*/
	font: small-caps 700 40px 'Lato', sans-serif;
  	letter-spacing: 5px;
	color:#2F2D2C;
	margin: 0em;
	/*padding:0.9em 0; 1.25em*/
	padding: 0.3em 0 0.1em 0;
	text-align:left;
}
h3 {
	font-size:1.063em;
	line-height:1em; /*1.8em*/
	font-family: Helvetica;
	font-weight:500;
	color:#2F2D2C;
	margin: 0em;
	/*padding:0.9em 0em 0em 1.1em;*/ /*1.25em*/
	padding: 0.3em 0 0.1em 0;
	text-align:left;
}
p {
	line-height:1.25em;
	font-family: Helvetica;
	font-weight:100;
	color:#2F2D2C;
	margin: 0em;
	padding: .7em;
	/*text-align:justify;*/
	text-align: left;
}
hr {
	border: 0em;
	border-bottom: 0.188em solid #E7590B;
}
a {
	color: #F30; /*#cc702e;*/
	cursor: pointer;
	text-decoration: none;
}
a:hover {
	color: #A00;
}
ul {
	margin:0em;
	padding:0em;
}
li {
	list-style: square;
	font-family: Helvetica;
	font-weight:100;
	color:#2F2D2C;
	line-height: 1.25em;
	margin: 0em;
	padding:0em;
	margin: 0.313em 0em 0.313em 0em;
}
img {
	/*width: 99%;*/
	max-width: 100%;
	height: auto;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
}
img.small {
	max-width:500px;
}
.colorred {
	color: #A00;
}
.colororange {
	color: #F30;
}
.colorgreen {
	color: #037a13;
}
.rowgrey {
	background: #ebebeb;
}
.box {
	background:#EBEBEB;
	padding: 0.541em;
	margin: 1em;
	border-radius: 10px;
}
.right {
	text-align: right;
}
.center {
	text-align: center;
}
.deactiv {
	display: none;
}
#clock {
	display: block;
	font-size:2.5em; text-align:center; margin: 1em auto; color:#222;
}


/* ################################################### */
/* on top bar */
/* ################################################### */
#menubar {
	position: fixed;
	width: 100%;
	display: block;
	background:#FFFFFF;
	height: auto;
	z-index: 99;
	top: 0px;
}
#menubar ul.menubar {
	display:block;
	width:17em;
	padding:0.9em;
}
#menubar ul li {
	display: inline;
}
#menubar ul li a.menubutton {
	color:#555555;
	font: small-caps 700 30px 'Lato', sans-serif;
  	letter-spacing: 5px;
}



/* ################################################### */
/* nav */
/* ################################################### */
nav {
	display: block;
	height: 2.5em;
	margin-top: -2.5em;
	float: right;
	text-align: right;
}
.slicknav_menu {
	display: none;
}
nav ul {
	display: block;
	margin-left: 10em;
}
nav ul li {
	display: inline;
	margin: 0em 0.188em 0em 0.188em;
}
nav ul li a {
	color: #555555;
	font-weight: bolder;
	font-size: 1.125em;
	line-height: 1.5em;
	/*padding: 0.563em 1.983em 0.375em 1.983em;*/
	padding: 0.5em 1em;
	transition: background 0.2s;
	-webkit-transition: background 0.2s;
}
nav ul li a:hover {
	color: #888;
	border-bottom: 0.168em solid #A00;
}




/* ################################################### */
/* header */
/* ################################################### */
header {
	display: block;
	background:#4473ba;
	background: linear-gradient(180deg, #0e4ead 5%, #4798f6 70%);
	/*background: linear-gradient(180deg, #043174 5%, #2b6ef4 70%);*/
	text-align: center;
	width:100%;
	height:340px;
	margin-top: 4.375em;
}
header .topimg {
	background: url(../../data/img/fa-text.png);
    background-repeat: no-repeat;
	background-position:0em 50%;
	margin: 1em 5em 1em auto;
	width: 300px;
	height: 200px;
}
header h1 {
	color:#FFF;
	font: small-caps 900 6.875em 'Lato', sans-serif;
  	letter-spacing: 10px;
	text-shadow: 2px 2px 2px #666666;
	padding-top: 0.5em;
}
header .sekondimg {
	position: relative;
	background: rgba(173, 41, 76, 0.1);
    background-repeat: no-repeat;
	background-position:0em 50%;
	top:-10em;
	margin: auto;
	width: 60%;
	height: 200px;
	color: rgba(224, 208, 141, 0.49);
}




/* ################################################### */
/* content */
/* ################################################### */
#wrapper {
	display: block;
	color: #000;
}
#content {
	display: block;
	width: 100%;
	height: auto;
}
#main {
	display: block;
	width: 96%;
	max-width: 1400px;
	margin: 2.5em auto;
	padding: 0em;
}
#main article {
	display: inline-block;
	width: 65.3%;
	vertical-align: top;
	margin: 0em;
	padding: 0em;
	text-align: left;
}
#main article img {
	border-radius: 10px;
	margin: 1em;
}
#main article h2 {
	padding: 1em 0em 0.1em 0em;
	line-height:0.9em;
}
#main article p {
	margin-top: -0.3em ;
}
#main article ul {
	padding: 0em 1.875em 0.25em 2.5em;
}

/* --------------------------- */
/* content sidebar */
/* --------------------------- */
#main aside {
	display: inline-block;
	width: 30.6%;
	margin-left: 3%;
	padding: 0em;
	vertical-align: top;
}
#main aside section {
	margin-bottom: 1.563em;
	/*background: #FFF;
	border-bottom: 0.188em solid #E7590B;*/
}
#main aside h2 {
	padding: 1em 0em 0.1em 0em;
	line-height: 1em;
}
#main aside .box h2 {
	padding: 0.4em 0em 0.1em 0em;
	line-height: 1em;
}
#main aside section ul {
	padding: 0em 1.875em 0.25em 3.5em;
}
#main aside ul li {
	margin: 0 0 0 30px;
}
#main aside ul li a:active {
	background:yellow;
}
#main aside section p {
	padding: 0em 1.875em 0.25em 2.5em;
}

/* --------------------------- */
/* content 2 spaltig */
/* --------------------------- */
#main .rows {
	display: inline-block;
	width: 40.7%;
	vertical-align: top;
	margin: 0em 3em;
	padding: 30px 0em;
	text-align: left;
	/*background: #FFF;*/
}
#main .rows h2 {
	padding: 1em 1.6em 0.1em 0.5em;
	line-height: 1em;
}
#main .rows ul {
	padding: 0em 1.875em 0.25em 2.5em;
}

/* --------------------------- */
/* content full */
/* --------------------------- */
#main .full {
	display: inline-block;
	width: 99.5%;
	vertical-align: top;
	margin: 0em;
	padding: 0em;
	text-align: left;
	/*background: #FFF;*/
}
#main .full h2 {
	padding: 1em 1.6em 0.1em 0.5em;
	line-height: 1em;
}
#main .full ul {
	padding: 0em 1.875em 0.25em 2.5em;
}


#main .column {
	width: 99%;
	column-count: 3;
	column-width: 300px;
	column-gap: 20px;
	column-rule-color: #000;
	column-rule-width: 1px;
	column-rule-style: dotted;
	column-break-before: column;
	column-break-after: column;
}
#main .kunden, #main .architekten, #main .hausbaufirmen, #main .unternehmen, #main .hausverwaltung {
	display: inline-block;
	margin-bottom: 50px;
	width: 300px;
	/*clear: left;*/
	vertical-align: top;
}





/* ################################################### */
/* footer */
/* ################################################### */
footer {
	display: block;
	background: #2F2C2C;
	text-align: center;
	height: auto;
	position: absolute;
	width: 100%;
	bottom: 0em;
}
footer section {
	margin: auto;
	width: 100%;
	max-width: 550px;
	column-count: 2;
	/*column-width: 12.5em;*/
	column-gap: 10px;
	column-rule-color: #000;
	column-rule-width: 1px;
	column-rule-style: dotted;
	column-break-before: column;
	column-break-after: column;
}
footer ul {
	display: block;
	width: 100%;
	max-width: 1300px;
	text-align: left;
	margin: 0px auto;
}
footer ul li {
	display: inline;
	font-size: 0.9em;
	line-height: 2.8em;
	color: #E7DBDB;
	padding: 0em 0.625em 0em 0.625em;
	margin: auto 1em;
}
footer ul li a {
	color: #E7DBDB;
}
footer ul li a:hover, footer ul li a:active {
	color: #FFF;
}




/* ################################################### */
/* popup */
/* ################################################### */
#test-popup {
	overflow: auto;
}
#test-popup img {
	display: inline-block;
}
.white-popup {
	  position: relative;
	  background: #FFF;
	  padding: 20px;
	  width: auto;
	  max-width: 900px;
	  margin: 20px auto;
	  /*text-align: center;*/
}


/* ################################################### */
/* hinweise / Error */
/* ################################################### */
.error-notice, .notice{
  margin:10px 0; /* Make sure to keep some distance from all sides */
}

.oae{
  background-color: #ffffff;
  border:1px solid #eee;
  border-left-width:5px;
  border-radius: 3px;
  margin:10px 20px;
  padding: 20px;
  text-align: left;
}

.error{
  border-left-color: #d9534f; /* Left side border color */
  background-color: rgba(218, 46, 46, 0.46);/*rgba(217, 83, 79, 0.1);*/ /*Same color as the left border with reduced alpha to 0.1*/
}
.error strong{
  color:#d9534f;
  opacity: 1;
}
.success {
  border-left-color: #2b542c;
  background-color: rgba(43, 84, 44, 0.1);
}
.success strong {
  color: #2b542c;
}


/* ################################################### */
/* formular */
/* ################################################### */
.formulararea {
	width: 90%;
	max-width: 900px;
	margin: 4em auto 0 auto;
	display: block;
}
.formulararea input, .formulararea textarea {
	font-size: 0.9em;
}
label {
	width: 99%;
	display: inline-block;
	margin: 0em 0.188em 0em 1.188em;
	font-size: 0.8em;
	margin: 0em 0.188em 0em 0em;
}

input, input:hover, input:focus {
	display: inline-block;
	margin: 2.26em 0em 0em 0em;
	border: 0.2em solid #999;
	width: 90%;
	border: 0;
	border-bottom: 3px solid #CCC;
	background: none;
	outline: none;
	background-size: 100% 100%;
}
input:focus {
	border-bottom: 3px solid #555;
}
input::focus:valid::-webkit-input-placeholder, input:valid {
	color: #14DC19;
	border-color: #14DC19;
}
input::focus:invalid::-webkit-input-placeholder, input:invalid {
	color: #C9272A;
	border-color: #C9272A;
}
input .spamschutzfeld {
	margin-left: 0em;
}
textarea {
	display: block;
	width: 90%;
	height: 200px;
	margin: 0em 4.188em 1em 0em;
	/*padding:0.5em 2em;*/
	border: 0.2em solid #999;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border: 2px solid #CCC;
	outline: none;
	background-size: 100% 100%;
}
textarea:focus {
	border: 2px solid #555;
}
.spamschutz {
	color:red;
	margin-left: 0em;
}
.button {
	background: #F30;
	background: linear-gradient(0deg, #AA0000 5%, #FF3300 70%);
	color: #FFF;
	font-weight: bolder;
	width: auto;
	border: 0;
	padding: 1em 3.5em;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.button:hover {
	background: #A00;
	width: auto;

}
.white-popup input, .white-popup textarea {
	margin: 1em auto;
}




/* ################################################### */
/* scrollup */
/* ################################################### */
.scrollup {
    width: 2.5em;
    height: 2.5em;
    position: fixed;
    bottom: 4.5em;
    right: 1em;
    display: none;
    text-indent: -9999px;
    background: url('../../data/img/scroll.png') no-repeat;
    background-position: 50% center;
    background-color: rgb(29, 168, 236);
    border-radius: 5%;
	z-index: 100;
}
.scroll .dreieck {
	display: block;
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-bottom: 100px solid #00ff00;
}


/* ################################################### */
/* buttonbox */
/* ################################################### */
.bereichsbutton {
	display: inline-block;
	width:220px;
	height:120px;
	margin:10px;
	text-align:center;
	background: #e2e3e6;
	/*background: linear-gradient(90deg, #ff5912 5%, #ffcb12 70%);*/
	background: linear-gradient(180deg, #b3b3b3 0%, #dedede 35%, #dedede 65%, #b3b3b3 100%);
	border-radius: 10px;
	border: 1px solid #333;
}
.bereichsbutton:hover {
	background: linear-gradient(180deg, #b3b3b3 0%, #cecece 35%, #cecece 65%, #b3b3b3 100%);
	cursor: pointer;
}
.bereichsbutton .text {
	position: relative;
	top: 40%;
	color: #000;
	font: small-caps 600 1.2em 'Lato', sans-serif;
  	letter-spacing: 2px;
	line-height: 1.2em;
	/*text-shadow: 2px 2px 2px #000;*/
	margin: 0 auto;
	width: auto;
}












/* ################################################### */
/* mobile */
/* ################################################### */

@media screen and (max-height:900px){
	header {
		margin-top: 1em;
		height: 18em;
	}
	header .topimg {
		margin-top: 3.375em;
	}
	header h1 {
		font-size: 4em;
		padding-top: 1em;
	}
}
@media screen and (max-height:800px){
	header {
		margin-top: 1em;
		height: 15em;
	}
	header h1 {
		font-size: 4em;
		padding-top: 1em;
	}
	body {
		font-size: 80%;
	}
	#menubar {
		height: auto;
	}
	#menubar ul.menubar {
		padding:0.5em;
	}
	#menubar ul li a.menubutton {
		font: small-caps 700 20px 'Lato', sans-serif;
	}
	nav {
		height: 2.2em;
		margin-top: -1.5em;
	}
}





@media screen and (max-width:1000px){
	#menubar {

	}
	#menubar ul.menubar {
		display:block;
		width:17em;
		padding:0.2em;
	}
	#menubar ul li a.menubutton {
		font: small-caps 700 20px 'Lato', sans-serif;
		letter-spacing: 3px;
	}
	nav {
		display: block;
		height: 1.5em;
		margin-top: -1em;
		float: right;
		text-align: right;
	}
	.slicknav_menu {
		display: none;
	}
	nav ul {
		display: block;
		margin-left: 10em;
	}
	nav ul li {
		display: inline;
		margin: 0em 0.188em 0em 0.188em;
	}
	nav ul li a {
		font-size: 0.8em;
		line-height: 0.5em;
		padding: 0.2em 1em;
	}
	header {
		margin-top: 0;
	}
}
@media screen and (max-width:900px){
	body {
		/*font-size: 80%;*/
	}

	h1 {
		font-size: 3em;
	}
	header {
		margin-top: 0em;
		margin: 0;
		height: 20em;
	}
	header .topimg {
		margin: 3em auto 1em auto;
	}
	header .sekondimg {
		display: none;
	}
	header h1 {
		font-size: 4em;
		padding-top: 1em;
	}
	.desk {
		display: none;
	}
	.bereichsbutton {
		display: none;
		/*display: block;
		width:99%;
		height:120px;
		margin:10px auto;*/
	}
}
@media screen and (max-width:760px){
	header {
		margin: 0;
		margin-top: -3em;
		height: auto;
	}
	#main {
		margin-bottom: 210px;
	}
	h1, h2, h3, p, li {
		text-align: center;
	}
	h2 {
		font: small-caps 700 20px 'Lato', sans-serif;
	  	letter-spacing: 3px;
	}
	li {
		list-style: none;
	}
	#main aside, #main article, #main .rows {
		width:100%;
		display: block;
		margin: 0.25em 0em 0.625em 0em;
	}
	#main img {
		max-width: 95%;
	}
	body {
		/*font-size: 86%;*/
	}
	#menubar {
		display: none;
	}/**/
	nav {
		display: none;
	}
	.nav {
		display: none;
	}
	#menu {
		display: none;
	}
	.deactiv {
		display: block;
	}

	.slicknav_menu {
		display: block;
	}
	footer {
		text-align: center;
		height: auto;
	}
	footer, footer ul {
		text-align: center;
	}
	footer ul li {
		text-align: center;
		display: block;
		margin: auto;
		width: 100%;
	}
	footer section {
		display: block;
		column-count: 1;
	}

	.formulararea {
		width: 90%;
	}
	.button, .button:hover {
		width: 99%;
		margin: 1em auto;
	}
	img.small {
		max-width:100%;
	}
}
