/* import fontawesome */

@import '../fontawesome/css/fontawesome.min.css';
@import '../fontawesome/css/regular.min.css';
@import '../fontawesome/css/solid.min.css';


/* common styles */

* {
	/*	box-sizing: border-box;	*/
}

				
* {
 box-sizing:border-box;
 list-style:none;
 text-decoration:none;
 margin:0;
 padding:0;
}


html {
background-color:  #E0E0E0; /* Hintergrundfarbe */
}

/* Sanftes Scrollen aktivieren */
html {
	scroll-behavior: smooth;
}
/* Ende sanftes scrollen*/

								/* Ab hier neuer Versuch neue NAV */
								
								body {
    margin: 0;	
}
html {
background-color:  #E0E0E0; /* Hintergrundfarbe */
}
/* Sanftes Scrollen aktivieren */
html {
	scroll-behavior: smooth;
	}
/* Ende sanftes scrollen*/

img {							
	width: 100%;
	}

ul {
    list-style: none;
    padding: 0;
    margin: 0px;
    color: white;
    font-family: sans-serif;
}

a {
    color: white;
    text-decoration: none;
	}
	.stern {
	
	width: 15%;
	float: right;
}
	h3 {
		text-align: left;
		margin-top: -15px;
		margin-left: 5rem;
		color: white;
	}
	


[type="checkbox"] {
    display: none;
}

@media (max-width:817px) {
	[type="checkbox"] {
    display: none;
	}	

	.auhausmit {
		/*	display: none; */
		}
	
    .ebeneeins>li {
        border-bottom: 1px solid white;
    }
}

.linie {
    width:clamp(2.3rem, -0.875rem +  8.333vw, 2.5rem);/*60px; */
    height:clamp(3px,5px, 6px); /*6px; */
    background-color: white;
    border-radius: 3px;
    position: absolute;
}

.rahmen {
    width: clamp(3.5rem, -0.875rem + 8.333vw, 2.5rem); /*initial; */
    height:  clamp(40px, 55px,66px);/* 66px;*/
    padding-right: 50px;
    padding-left: 14px;
    background: #10569b;
	margin:-5px;
    cursor: pointer;
    position: relative;
}
.logo3  {	
	width: 20%;
    display: block;
    margin: auto; 	
}

#click {
    display: none;
}

@media (max-width:817px) {
    nav {
        display: none;
    }
	.ebeneeins {   
    font-size: 4.5vw;
    justify-content: center;
    background: #10569b;;
  
}

    #click:checked~nav {
        display: block;
    }

    #click:checked~label .einsham {
        transform: rotate(-45deg);
        top: 30px;
        transition: transform 0.5s;
    }

    #click:checked~label .zweiham {
        opacity: 0;
    }

    #click:checked~label .dreiham {
        transform: rotate(45deg);
        top: 30px;
        transition: transform 0.5s;
    }

    .einsham {
        top: 10px;
    }

    .zweiham {
        top: 25px;
    }

    .dreiham {
        top: 41px;
    }

    #click:checked~nav .ebeneeins {
        animation: move 0.5s forwards;
    }

    @keyframes move {
        0% {
            width: 0
        }

        100% {
            width: 100%
        }
    }

    .ebeneeins {
        overflow: hidden;
        width: 0;
      /* white-space: nowrap; */
    }
	.ebeneeins>li:hover {	
    background: white;	
    transition: 0.5s; 
	}
	li :hover {
	color: black;
}	
}

@media (min-width:817px) {
    [for="click"] {
        display: none;
    }
.menu a {
	 display: flex; 
	 height: 100%; 	
	 width: 100%;		
	 justify-content: center;
	 align-items: center;
}
.ebeneeins {
    display: flex;
	height: 55px;	
    font-size: clamp(1.5rem, 3vw, 1.4rem); 
    justify-content: center;
    background: #10569b;
  
}
	
.ebeneeins>li {
    width: 100%;  
    border-right: 1px solid white;
    text-align: center;
    display: flex;		
    justify-content: center; 
    align-items: center;	
	font-size: clamp(1rem, 3vw, 1.4rem);   
}	

.ebeneeins>li:hover {	
    background: white;
	color:	black;
    transition: 0.5s; 
} 
 li :hover {
	color: black;
}
			.ebeneeins a {
				box-shadow: 0 4px 10px #060a4d inset;
				transition: all .25s ease-in;	
			}


}

								
								/* Ab hier ENDE neuer Versuch neue NAV */
/*  Neuer Test */
body::after {
/*	content:'Resize Viewport ↘'; */
	position: fixed;
	bottom:1em;
	right:1em;
	opacity: 0.5;
	font-size: 0.8em;
}
		
header {
	width:100%;
	float:left;
	background: white; */ Farbe hinter Navleiste*/
/*	border-bottom:1px solid rgba(0,0,0,0.5);	*/
}

.logo {
	display:block;
	width: 100%; 
	padding:1em;
	text-decoration:none;
	color:white;
}
		

nav li {	
	width:100%;	
}

nav a {
	display:flex;
	height:100%;
	width:100%;
	padding:1rem;
	text-decoration:none;
	color:white;
	background: blue; 
	border-top:1px solid rgba(0,0,0,0.5);	
}

nav a:hover {
	background:rgba(0,0,0,0.2);
}
nav .aktiv {
	background-color: #1E90FF;
}


	/*    Ende TEST */
nav {
 text-align:center;
 box-shadow: 0 0 10px #000;
 background:#10569b; 
}

nav ul {
	display:inline-block;
}

nav li {
 display:inline-block;
 color:#fff;
 margin-left:-3px; 
}

nav a {
    display:block;
    padding: 0.8rem; 
    color:  rgb(251, 250, 250,);
    background: #10569b;  
 	border:none;
	box-shadow: 0 4px 10px #060a4d inset;
	transition: all .25s ease-in;
}

nav a:hover {
 background: white; 
 color: black;
}



@media screen and (min-width:817px) {
	
	.logo {
		width:auto;
		float:left;	
	} 
	
	nav {
		width:auto;
	}

	nav a {
		border:none;
	}
	
	nav li {
		width:auto;
	}

}
	
img {
	width: 100%;
}


						
.flex-container { 
    display: flex;
    flex-flow: row wrap;  
    justify-content: space-around;  
    padding: 0;
    margin: 20px;
    list-style: none;
}

.flex-item1 {
   background: white;
   padding:20px;
   width:auto; 
   margin-top:0px;
   line-height: 30px;
   color: #006;
   font-size: 1.4em;
   text-align:left; 
}


.flex-item2 {
   background: white;
   padding: 20px;
   width: 49%; 
   margin-top: 20px;
   line-height: 30px;
   color: #006;
   font-size: 1.3em;
   text-align: left;
}

.flex-item3 {
   background: white;
   padding:20px;
   width:99%; 
   margin-top:10px;
   line-height: 30px;
   color: #006;
   font-size: 1.4em;
   text-align:center; 
}

		@media only screen and (max-width: 817px) {  /* { and (max-width: 576px) } */
  .flex-item2 {
    width:100%; /*auto%;	*/
    padding-left: 23px;
    flex-direction: column-reverse;
  }
 /* .boxes {
    width: 100%;
  } */
}

 .site-footer	{
	margin-bottom: 50px;
 }
 
 					@media only screen and (min-width: 1468px) {

						.flex-container {
						display: flex;
						background: #E0E0E0;
						font-size: 0.9em;										
						}
						
						.flex-item1	{
						width: 100%;
						background:white;
						}

								}
								
						/*  formular    */		
		/* import fontawesome */

@import '../fontawesome/css/fontawesome.min.css';
@import '../fontawesome/css/regular.min.css';
@import '../fontawesome/css/solid.min.css';
				
				
				

.kontaktformular {
	width: 100%;
	max-width: 850px;
	padding: 1.2rem;
	margin: auto;
	padding-top: 22px;
	padding-bottom: 1px;
}

.weiss {
	/*display: grid;	
	width: 700px;	*/
	height: auto;
	background-color: white;
	color: #006;
	padding: 40px;
}

.weiss2 {
	width: 500px;
	height: auto;
	margin: auto;
	background-color: #e0e0e0;
	color: #006;
	/*padding: 20px;  */
}


/* style common rows/grid */

.kontaktformular .row {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 1.3rem;
	width: 100%;
}

.kontaktformular .row .col-sm-4 {
	flex-grow: 1;
	flex-basis: 0;
	margin: 0 .75rem;
	position: relative;
}

.kontaktformular .row .col-sm-4:first-child {
	margin-left: 0;
}

.kontaktformular .row .col-sm-4:last-child {
	margin-right: 0;
}

.kontaktformular .row .col-sm-8 {
	width: 100%;
	position: relative;
}



/* style common labels */

.kontaktformular .row .control-label {
	color: #404040;
	margin-left: 2.2px;

}



/* style common fields */
.kontaktformular .row input,
.kontaktformular .row textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.kontaktformular .row .field {
	background-color: #f5f5f5;
	display: block;
	font-size: 14px;
	width: 100%;
	padding: .69rem .8rem .45rem .8rem;
	color: #006;
	margin-top: 3px;
	border: 1px solid #CCCCCC;
	border-radius: 1px;
	transition: border-color ease-in-out .15s;

}

.kontaktformular .row .field:hover,
.kontaktformular .row .field:focus,
.kontaktformular .row input[type="checkbox"]:hover,
.kontaktformular .row input[type="checkbox"]:focus {
	border-color: #2DA5DA !important;
	outline: 0 !important;
	box-shadow: none;
}







/* style textarea */

.kontaktformular .row .textarea-label {
	color: #404040;
	margin-left: 2.2px;

}



.kontaktformular .row textarea {
	height: 1.7rem;

}


/* style selectbox */

.kontaktformular .row .select-label {
	color: #404040;
	margin-left: 2.2px;

}





/* style rows with complex contents  */

.kontaktformular .captcha-row,
.kontaktformular .question-row,
.kontaktformular .checkbox-row,
.kontaktformular .upload-row {
	display: block;
	font-size: 14px;
	width: 100%;
	color: #555555;
	border: 0.0rem solid #dddddd;
	border-radius: 3px;
	transition: border-color ease-in-out .15s;

}

.kontaktformular .captcha-row .control-label,
.kontaktformular .question-row .control-label,
.kontaktformular .upload-row .control-label,
.kontaktformular .checkbox-row .control-label {
	height: 100%;
	margin-top: 0;
}

.kontaktformular .captcha-row>div,
.kontaktformular .question-row>div,
.kontaktformular .checkbox-row>div {
	padding-bottom: .15rem;
}

.kontaktformular .captcha-row div div,
.kontaktformular .question-row div div {
	width: 50%;	
	padding: .75rem 0 .75rem 2px;
}



/* style upload-fields  */

.kontaktformular .row input[type="file"] {
	width: calc(100% - 60px);
	height: 30px;
	margin: .2rem 0 .2rem 2px;
}

.kontaktformular .row .control-label+input[type="file"] {
	margin-top: .75rem;
}

.kontaktformular .row input[type="file"]:last-child {
	margin-bottom: .25rem;
}



/* style security-fields  */

.kontaktformular .captcha-row .field,
.kontaktformular .question-row .field {
	width: 100%;	
	margin: .2rem 0 .2rem 0px;

}

.kontaktformular .row#answer .control-label {
	align-self: flex-start;
}



/* style checkbox-row  */

.kontaktformular .checkbox-row {
	margin-bottom: -10px;
}


.kontaktformular .checkbox-row .checkbox-inline {
	display: block;
	padding: 0rem 0 0rem 0px;

}

.kontaktformular .checkbox-row .checkbox-inline a:hover,
.kontaktformular .checkbox-row .checkbox-inline a:focus {
	color: #0025e2;
	text-decoration: underline;
}

.kontaktformular .checkbox-row .checkbox-inline a,
.kontaktformular .checkbox-row .checkbox-inline span {
	color: #006;
	text-decoration: none;
	line-height: 24px;
	padding-left: 10px;

}

.kontaktformular .checkbox-row .checkbox-inline span {
	color: inherit;
}

.kontaktformular .row input[type="checkbox"] {
	height: 30px;	/*22px; */
	width: 30px;	/*22px; */
	border: 2px solid #CCCCCC;
	border-radius: 4px;
	transition: border-color ease-in-out .15s;
	display: block;
	float: left;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
	margin-left: 0.5px;
}

.kontaktformular .row input:checked {
	background: url(../img/check-solid.svg) no-repeat center center;
	background-size: 75%;
}



/* style submit-button  */

.kontaktformular .row .senden {
	width: 100%;
	font-size: 16px;
	font-weight: bold;
	height: 6;	/*2.5rem;*/
	margin-top: calc(1rem/16*5);
	padding: .5rem .75rem;
	color: white;
	background-color: #337ab7;
	border: 1px solid transparent;
	border-color: #2e6da4;
	border-radius: 4px;
}

.kontaktformular .row .senden:hover {
	background-color: #286090;
	border-color: #204d74;
	cursor: pointer;
}





/* style select-box for placeholders */

.kontaktformular .row select {
	background-color: #fff;
	background: url(../img/chevron-down-solid.svg) no-repeat;
	background-position: right 3px center;
	background-size: 15px 10px;
	cursor: pointer;
}

.kontaktformular .row ::placeholder {
	color: grey;
	opacity: 0.7;
}




.kontaktformular .row select.unselected {
	color: #A6A6A6;
	border: 1px solid #CCCCCC;
	border-radius: 1px;
	transition: border-color ease-in-out .15s;
	background: url(../img/chevron-down-solid.svg) no-repeat;
	background-position: right 3px center;
	background-size: 15px 10px;
	cursor: pointer;


}


.kontaktformular .row select.field {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	z-index: 1;
}

.kontaktformular .row select.field option[value=""][disabled] {
	display: none;
}

.kontaktformular .row select.field option {
	color: #555555;
}

.kontaktformular .row select.field option[value=""] {
	color: rgba(0, 0, 0, 0.4);
}



/* style errors */

.kontaktformular .row .error .select-label {
	color: #404040;
	margin-left: 2.2px;
}





.kontaktformular .row .error .control-label {
	color: #404040;
	margin-left: 2.2px;
}




.kontaktformular .row .error .textarea-label {
	color: #404040;
	margin-left: 2.2px;
}









.kontaktformular .row .error .field,
.kontaktformular .row .error .checkbox-inline input,
.kontaktformular.kontaktformular-validate .row .field:invalid,
.kontaktformular.kontaktformular-validate .row .checkbox-inline input:invalid {
	/* style invalid fields only if user wants to send the form (integrated via js) */
	background-color: #ffeaec;
	border-color: #eac0c5;
}

.kontaktformular .row .field:invalid,
.kontaktformular .row .checkbox-inline input:invalid {
	/* remove browser-style for invalid fields */
	outline: none;
	box-shadow: none;
}

.kontaktformular .row .field:focus:valid,
.kontaktformular .row .checkbox-inline input:focus:valid {
	background-color: #FFFFFF;
	border-color: #d9e8d5;
	outline: none;
	box-shadow: none;
}

.kontaktformular .row .error ::placeholder {
	color: rgba(219, 0, 7, 0.6);
}

.kontaktformular .row .error select.unselected {
	color: rgba(219, 0, 7, 0.4);
}

.kontaktformular .row .errormsg {
	color: #db0007;
	font-size: .75rem;
}

.kontaktformular .captcha-row.error_container,
.kontaktformular .question-row.error_container,
.kontaktformular .checkbox-row.error_container {
	margin-bottom: 2.7rem;

}

.kontaktformular .captcha-row .errormsg,
.kontaktformular .question-row .errormsg {}

.kontaktformular .checkbox-row .errormsg {
	display: block;
	position: absolute;
	left: 0;
	margin-bottom: -20px;
}






.kontaktformular .captcha-row.error_container .control-label,
.kontaktformular .question-row.error_container .control-label,
.kontaktformular .upload-row.error_container .control-label,
.kontaktformular .checkbox-row.error_container .control-label {
	height: 100%;
	margin-top: 0;
	background: url(../img/border-right-red.png) bottom right no-repeat;
}







/* style for mobile */

@media (max-width: 655px) {

	.kontaktformular {
		padding: 1px 1rem 1px 1rem;
		/* box-shadow: none; */
		margin-left: 15px;
		margin-top: 0px;
		margin-right: 15px;
		width: auto;
	}

	.kontaktformular .row {
		display: block;
		margin-top: 1rem;
	}

	.kontaktformular .row .col-sm-4 {
		flex-grow: 0;
		flex-basis: 0;
		margin: 0;
	}

	.kontaktformular .row .col-sm-4,
	.kontaktformular .row .col-sm-8 {
		margin-top: 1.5rem;
	}

	.kontaktformular .captcha-row .col-sm-8,
	.kontaktformular .question-row .col-sm-8,
	.kontaktformular .upload-row .col-sm-8,
	.kontaktformular .checkbox-row .col-sm-8 {
		margin-top: 0;
	}

}



/* style copyright */

.copyright {
	color: #000000;
	font-size: 13px;
}
						
						/*   Ende Formular    */
						/*   footer  */ 
.site-footer a	{
	display: block;
	text-align: center;
}
navi a:hover {
	 background:rgba(0,0,0,0.2);
}


.footer navi {
	display: block; 	
    
    box-shadow: 0 0 10px #000;
    background:#10569b;
    padding:50px;	
}

footer navi ul {
	display: flex; 
	
	}

navi li {
	width: 100%;	
	font-size: clamp(1rem, 3vw, 1.4rem);
    display:block;	
	
}
navi a {	
    display: flex;
    padding: 1rem;
    background: #10569b;
    border: none;
    box-shadow: 0 4px 10px #060a4d inset;
    transition: all .25s ease-in;
}

navi a {
     display: flex;
	 padding:1rem;
    background: #10569b;  
 	border:none;
	box-shadow: 0 4px 10px #060a4d inset;
	transition: all .25s ease-in;	
}

navi a:hover {
 background: white; 
 color: black;

}							
							/*  footer Ende  */
 
					
 
	