

@font-face {
     font-family: "sanspro";
     /*src: url(css/linsanspro_r.woff);*/
	 src: url(../css/SansPro/WOFF2/TTF/SourceSansPro-Regular.ttf.woff2);
 }

@font-face {
     font-family: "helvetica";
     /*src: url(css/linsanspro_r.woff);*/
	 src: url(../css/HelveticaNeue/HelveticaNeueRoman.otf);
 }

@font-face {
     font-family: "gazpacho";
     /*src: url(css/linsanspro_r.woff);*/
	 src: url(../css/Gazpacho/Gazpacho_Regular.ttf);
 }

/*##########################################################*/
/*Formular*/

label {
	font-family: helvetica;
	vertical-align: top;
	font-size: 1.05em;
	font-weight: bold;
}
label::after {
	/*content: ": ";*/
}
input:required {
  border: 2px solid rgba(177,144,174);
  background-color: #F9F9F9;
}
input:required:valid {
  border: 1px solid #87AF90;
}
select:required {
  border: 2px solid rgba(177,144,174);
  background-color: #F9F9F9;
}
select:required:valid {
  border: 1px solid #87AF90;
}
textarea:required {
  border: 2px solid rgba(177,144,174);
  background-color: #F9F9F9;
}
textarea:required:valid {
  border: 1px solid #87AF90;
}
input[type=checkbox]:required {
	cursor: pointer;
	width: 18px;
  	height: 18px;
	border-radius: 3px;
	border: 1px solid #000;
	outline: 2px solid rgba(177,144,174);
}
input[type=checkbox]:checked {
	border: 1px solid #000;
    outline: 1px solid #87AF90;
}


.flex-outer li,
.flex-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.flex-outer > li > label,
.flex-outer li p {
  flex: 1 0 120px;
  max-width: 320px;
}
 
.flex-outer > li > label + *,
.flex-inner {
  flex: 1 0 260px;
}

/*
li {
	margin-bottom: 6px;
	vertical-align: top;
	list-style-type: none;
	background-color: rgb(230,230,230,0.5);
	margin-left: -40px;
	padding: 8px;
}*/
.labeltext {
	font-family: helvetica;
	font-size: 1em;
	font-weight: normal;
}
 
body {
	background-color: #FDFDFD;
}

#headerkl{
	position: relative;
	top: 0px;
	display: flex;
	flex-flow: row wrap;
	width: 100%;
	margin-top: 0px;
	/*background-color: #F6F6F6;*/
	/*background-color: rgba(109,135,137);*/
    /*Dunkles Gold*/
    background-color: #b79d37;
    /*helles Gelb*/
    /*background-color: #e8da98;*/
    /*background-image: linear-gradient(60deg, #b79d37, #e8da98);*/
	/*background-color: #333;*/
	box-shadow: 3px 3px 4px 0px rgba(100, 100, 100, 0.5);
	z-index: 900;
}

#prisma {
	font-family: gazpacho;
	font-size: 2em;
    font-stretch: semi-expanded;
    text-align: center;
    align-content: center;
    /*color: rgba(77,71,48);*/
    color:#EAEAEA;
	padding-top: 1em;
	padding-right: 1em;
	padding-bottom: 1em;
	padding-left: 2em;
    width: 100%;
    height:120px;
}
#titel{
	min-width:300px;
	display: flex;
	flex: 2 1 0%;
	flex-direction: row;
	font-family: helvetica;
	font-size: 1.4em;
	color: #000;
	font-weight: bolder;
	text-transform: uppercase;
	padding-top: 1em;
	padding-bottom: 1em;
	padding-left: 2em;
}

#titelbild{
	width: 100%;
	margin-top: 0.5em;
	position: relative;
}

.offset {
	visibility: hidden;
}

/*######################################################*/
/*Footer*/

#footer {
	margin-top: 60px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
	justify-content: center;
	padding-top:30px;
	padding-bottom:30px;
	width:100%;
	display: flex;
	background-color: #434d50;
}
#footer-container {
	width: 1090px;
	display: flex;
	flex-flow: row wrap;
}
.footer-item {
	justify-content: space-around;
	flex: 1 1 0%;
	flex-direction: row;
	min-width:220px;
	padding-top:30px;
	padding-bottom:30px;
	width:220px;
	font-family: helvetica;
	font-size: 1em;
	color: #E6E6E6;
	padding-left: 30px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #808080;
	font-weight: normal;
	padding-right: 30px;
}
.footer-item li {
	text-decoration: none;
	margin-top: 10px;
	list-style-position: outside;
	text-align: left;
	margin-left: -20px;
	color: #E6E6E6;
}
.footer-item a {
	text-decoration: none;
	color: #E6E6E6;
}


/*######################################################*/

#main-gruppe{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	width: 100%;
	margin-top: 20px;
	}

#main-text {
	max-width:780px;
	min-width:220px;
	flex: 3 1 0%;
	padding-left: 6%;
	padding-right: 6%;
	padding-top: 2em;
	padding-bottom: 5em;
	/* offset-x | offset-y | blur-radius | spread-radius | color */
	/*box-shadow: 1px 1px 5px 3px rgba(100, 100, 100, 0.5);*/
}

.sprung {
	position: absolute;
	margin:-40px;
	/*border: 1px solid #DCDCDC;*/

}
/*######################################################*/
/*Schriften*/

h1 {
	font-family: gazpacho;
	font-size: 2.8em;
	font-style: normal;
	font-weight: bolder;
	font-variant: normal;
	line-height: 1.2em;
	letter-spacing: -0.05em;
	margin-top: 80px;
	padding-bottom: 1em;
}
h2 {
    font-family: helvetica;
	font-size: 2em;
	font-style: normal;
	font-weight: bolder;
	line-height: 1.5em;
	/*color: #000;*/
	margin-top: 60px;
	margin-bottom: 50px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999;
	padding-bottom: 8px;
}

h3 {
	font-family: helvetica;
	font-size: 1.5em;
	font-style: normal;
	font-weight: bolder;
	line-height: 1.5em;
	color: #000;
	margin-top: 10px;
	margin-bottom: 50px;
}

p {
	font-family: helvetica;
	font-size: 1.3em;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	line-height: 1.5em;
	color: #333;
}

.textlink {
	color: #4181B6;
	text-decoration: none;
}
ul {
	font-family: helvetica;
	font-size: 1.2em;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	line-height: 1.4em;
}
li {
	margin-bottom: 1em;
    font-family: helvetica;
}


/*##########################################################*/
/* Hauptnavigation */

#nav-gruppe {
	width: 100%;
	display: flex;
	justify-content: center;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
	z-index: 300;
	height: auto;
	/*position: -webkit-sticky; /* Safari */
	position: relative;
	top: 0;
	background-color: rgba(255,255,255,0.8);
}

#nav-container {
	width: 900px;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
}

.nav-item {
	justify-content: space-around;
	flex-direction: row;
	/*legt fest, ob umgebrochen wird oder nicht*/
	font-family: helvetica;
	padding-top: 14px;
	padding-right: 20px;
	padding-bottom: 6px;
	padding-left: 20px;
	font-size: 1.2em;
	text-transform: uppercase;
	font-weight: normal;
	font-variant: normal;
	color: #666;
	text-align: center;
	vertical-align: bottom;
	display: inline-block;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	margin-right: 10px;
	z-index: 1001;
}

.nav-item a {
	color: #666;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: normal;
	font-variant: normal;
}

/*##########################################################*/
/*Hauptnavigation*/

#hauptnavigation_kgm2 nav {
	display: none;
}

#hauptnavigation_kgm2:hover nav {
	display:block;
	margin-top:6px;
	z-index: 1002;
	margin-left: -24px;
	position: absolute;
	background-color: rgba(242, 242, 242, 0.84);
	box-shadow: 1px 1px 5px #CCC;
}

#hauptnavigation_kgm1 nav {
	display: none;
}
#hauptnavigation_kgm1:hover nav {
	display:block;
	margin-top:6px;
	z-index: 1002;
	margin-left: -24px;
	position: absolute;
	background-color: rgba(242, 242, 242, 0.84);
	box-shadow: 1px 1px 5px #CCC;
}
.navitem {
	padding-top: 10px;
	padding-left: 24px;
	padding-right: 24px;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	text-align: left;
	padding-bottom: 10px;
}
a.navigation_popup:hover {
	color: #000;
}

/*######################################################*/

.tabellenzelle {
	font-family: helvetica;
	font-size: 1.2em;
    line-height: 1.2em;
	padding: 6px;
    color: 000;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999;
	vertical-align: top;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #999;
	/* hyphens */
   -moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

.subul {
	font-family: helvetica;
	font-size: 1em;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	line-height: 0.98em;
	margin-top:8px;
}
.subul li{
	margin-bottom:8px;
	list-style-type: square;
	list-style-position: outside;
}

/*######################################################*/
/* Tooltip container */
/* Tooltip container */
.zusatzinfo {
	font-family: helvetica;
	position: relative;
	display: inline-block; /* If you want dots under the hoverable text */
	color: #4181B6;
	text-decoration: underline;
}

/* Tooltip text */
.zusatzinfo .zusatzinfotext {
	font-family: helvetica;
	visibility: hidden;
	width: 300px;
	background-color: black;
	color: #fff;
	text-align: left;
	padding: 8px;
	border-radius: 6px;
	/* Position the tooltip text - see examples below! */
  	position: absolute;
	z-index: 1;
	bottom: 100%;
	left: 50%;
  	margin-left: -150px; /* Use half of the width (120/2 = 60), to center the tooltip */
}

/* Show the tooltip text when you mouse over the tooltip container */
.zusatzinfo:hover .zusatzinfotext {
  visibility: visible;
}


/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.logo_box{
	padding-top: 1px;
	padding-right: 1px;
	padding-bottom: 1px;
	padding-left:1px;
	float:left;
	}

/* Schriftgröße der Formulare */
.form-control{
	font-size: 1.1em;
	}

#captchatext {
	font-family: helvetica;
	padding-top: 4px;
	padding-right: 3px;
	padding-bottom: 4px;
	padding-left: 3px;
	font-size: 1.3em;
	line-height: 1.4em;
	color: #F00;
}

/*######################################################*/
/*Zusatznavigation*/

@media only screen and (min-width: 600px) {

/*
Gelb: 177,120,61
Blau: 0,53,97
*/

#navbox {
	height: 256px;
	width: 220px;
	position: fixed;
	text-align: left;
	top: 260px;
	margin-left: 0px;
	left: 0px;
	z-index: 6;
}

a.navigation2 {
	font-size: 1.2em;
	color: RGB(77,71,48);
	font-weight: normal;
	font-family: helvetica;
	font-variant: normal;
	font-style: normal;
	line-height: 1.2em;
	text-decoration: none;
	/*width: auto;*/
    width:230px;
    display: inline-block;
	/*background-color:#e7e3cf;*/
    background-color:#E4EAEA;
	padding-top: 4px;
	padding-right: 10px;
	padding-bottom: 4px;
	padding-left: 18px;
	box-shadow: 3px 3px 4px #999;
}
a.navigation2:hover {
	color: #FFF;
	background-color: RGB(77,71,48);
}
.hilfe {
	font-size: 1em;
	color: #fff;
	font-weight: normal;
	font-family: helvetica;
	font-variant: normal;
	font-style: normal;
	line-height: 1.2em;
	text-decoration: none;
	/*width: auto;*/
    width:230px;
	display: inline-block;
	/*background-color:#951b81;*/
    background-color:#0A0073;
	padding-top: 18px;
	padding-right: 10px;
	padding-bottom: 18px;
	padding-left: 18px;
	box-shadow: 3px 3px 4px #999;
}

#navbox li {
	margin-bottom: 6px;
	list-style-type: none;
}

#navbox ul {
	padding-left:0px;
}

}
-->