@charset "UTF-8";
:root {
	--c1: #80A77B;
	--c2: #FFFBEC;
	--c3: #333333;
	--c4: #686868;
	--c5: #ffffff;
	--c6: #000000;
	--c7: #332000;
}

@font-face {
	font-family: "Roboto";
	src: url("../fonts/Roboto-Medium.woff2")
}
@font-face{
	font-family: "Roboto-Bold";
	src: url("../fonts/Roboto-Bold.woff2")
}

body{
	width: 100vw;
	height: 100vh;
	padding: 0px;
	margin: 0px;
	background-color: var(--c3);

}
header{
    width: 100vw;
    position: fixed;
	top: 0;
	z-index: 1000;
}
main {
	position: absolute;
	width: 100vw;
	top: 15vh;
	padding: 0px;
	background-color: var(--c2);
}
section{
	position: relative;
	overflow: hidden;
	min-height: 80vh;
	width: 100vw;
	background-color: var(--c3);
	border-bottom: thick;
	border-style: solid;
	border-bottom-width: 5px;
	border-color: var(--c7);
}

footer {
	position: fixed;
	bottom: 0px;
	padding: 0;
	margin: 0;
	z-index: 1000;	
}
figure {
	padding: 0px;
	margin: 0px;
}
img {
	width: 100%;
	height: auto;
}
button{
	background-color: transparent;
	border: none;
	z-index: +10;
	
	
}
p{
	color: var(--c3);
	font-family: "Roboto";
	font-size: 1.2em;
	line-height: 1.5;
}
h1{
	color: var(--c5);
	font-family: "Roboto-Bold";
	font-size: 120%;
	line-height: 1;	
}
h2{
	color: var(--c3);
	font-family: "Roboto-Bold";
	font-size: 110%;
	line-height: 1;	
}
h3{
	color: var(--c7);
	font-family: "Roboto-Bold";
	font-style: oblique;
	font-size: 140%;
	line-height: 1;
	margin: 0.3em;
	text-align: center;
}
h4{
	color: var(--c7);
	font-family: "Roboto-Bold";
	font-style: bold;
	font-size: 200%;
	line-height: 1;
	margin: 0.3em;
	text-align: center;
}
nav{
	z-index: 1005;
}
ul{
	position: relative;
	margin-top: 1.5em;
	margin-right: 10vw; 
	margin-left: 2vw;
	
	z-index: 1012;
	font-size: 3em;
	font-family:  "Roboto-Bold";
	color: var(--c3);
	list-style-type: none;
	line-height: 1.8em;
	opacity: 100%;
	
}
a{
	color: var(--c5);
	text-decoration: none;
}



#wunsch {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 70vw;
}
.infobox{
	position: relative;
	margin-left: 5vw;
	margin-right: 5vw;
	margin-bottom: 5vh;
	margin-top: 5vh;
	padding: 0;
	z-index: +1;

}
.textbox{
	padding-left: 3vw;
	padding-right: 3vw;
	padding-top: 2vh;
	padding-bottom: 2vh;
	

}

.art-background{
	position: absolute;
	background-color: var(--c1);
	opacity: 90%;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	
	
}



.infobox img {

	max-height: 68vh;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	object-fit: scale-down;
}

.asp{
	

	position: absolute;
	bottom: 0;
	width: 100%;

	text-align: center;
	z-index: +2
		
	
	

}
.asp-background {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-color: var(--c1);
	opacity: 80%;
	z-index: -1;
	
}
.moreinfo {
	display: none;
	
}
.infobox:hover .moreinfo {
	display: block;
}



.fotobackground{
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;


	
	
}

.fotobackground img {
	
	height: 1005px;
	width: auto;
		
}
.headbox {
 	background-color: var(--c5);
	height: 15vh;
	width: 100vw;
	position: absolute;
	top: 0;
	border-bottom: solid;
	border-bottom-width: 0.8em;
	border-bottom-color: var(--c1);	
	z-index: -1;
}
#logo img {
	position: absolute;
	max-height: 12vh;
	max-width: 80vw;
    width: auto;
   
	bottom: 5px;
	right: 2vw;
	z-index: 999;
	background-color: #ff0000;
}

#subtitel {
	z-index: 12;
	height: auto;
	width: 100vw;
	position: absolute;
	bottom: 5vh;
	opacity: 20%;	
	margin: 0;
	padding: 0;
}
.movie{
	position: fixed;
	top: 15vh;
	margin-right: 0px;
	min-height: 80vh;
	width: auto;
	overflow: hidden;
    background-color: #ff00000;
	}
#navlist{
	display: none;
	width: auto;
	height: 85vh;
	padding: 1em;
	position: absolute;
	right: 0;
	top: 15vh;	
	white-space: nowrap;
	z-index: +1;
}
#nav-background{
	width: 100%;
	height: 100%;
	background-color: var(--c1);
	position: absolute;
	top: 0vh;
	opacity: 90%;
	z-index: 1011;

}
#nav-button img{
	position: absolute;
	width: 20vw;
    max-width: 100px;
    right: 20px;
	top: 20vh;
	opacity: 0.8;
	z-index: 1010;
}
#escapenav{
	position: absolute;
	right: 5vw;
	top:3vh;
	z-index: 1012;
}
#plachholder{
	background-color: transparent;
	

}
#endholder{
	width: 100vw;
	height: 5vh;
}
#footerbar{
	margin: 0px;
	padding: 0px;
	
	height: 5vh;
	width: 100vw;
	background-color: var(--c1);

}
#imprssum{
	color: var(--c3);
	position: absolute;
	right: 2vw;
	top: 1vh;
}
#escapeimpressum{
	color: var(--c3);
	font-size: 2em;
	font-family: 'Roboto';
	display: inline;
	float: right;
	margin-right: 5vw;
	padding-top: 2vh;
}
#impressumsection{
	display: none;
	position: relative;
	width: 100vw;
	height: 50vh;
	background-color: var(--c2);
	opacity: 100%;
	bottom: 0px;
}
#impressum_content{
	bottom: 0;
	margin-left: 5vw;
	padding-top: 2vh;

}


#welcome img{
	position: relative;
	height: 80vh;
    width: auto;
	top:0vh;
	margin-left: 0;


	
	
}
.einblenden {
	animation-name:  einblenden;
	animation-delay: 0,5s;
	animation-duration:  1s;
    animation-direction: forwards;
}




@keyframes einblenden {
  	0% {
   	
		opacity: 0;
 		 }

  	100% {
   		 
		opacity:0.5;
  		}
}
#about {
	background-color: var(--c1);
	padding-top: 20vh;
}

.item {
	width: 200px;
	height: 200px;
	background-color: var(--c3);
}

.item img {
	width: 100px;
	height: 100px;
	margin: auto;
	margin-top: 50px;
}
.grid-container {
	display: grid;
	justify-content: space-around;
	grid-template-columns: repeat(auto-fill, 200px);
	grid-gap: 20px;
	top: 300px;
	margin-left: auto;
	margin-right: auto;

	
	}
.item-info{
	width: 200px;
	height: 200px;
	background-color: var(--c1);
	position: absolute;
	margin-top: -150px;
	opacity: 0%;
}
	.item-info-text{
		
	color: var(--c3);
	font-size: 1.5em;
	font-family: "Roboto";
	text-align: center;
	padding-top: 80px;
}



.item-info:hover {
	opacity: 100%;
} 
#welcome {
    opacity: 0.5;
}

	#kontakt{	
		background-color: var(--c2);
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		}
	#about{	
		background-color: var(--c2);
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		}

.Spendenbox {
	width: 30vw;
	border: thick;
	position: absolute;
	bottom: 30vw;
	right: 10vh;
	animation-name:  einblenden_full;
	animation-delay: 0s;
	animation-duration:  3s;
    animation-direction: forwards;
}

@keyframes einblenden_full {
  	0% {
   	
		opacity: 0;
 		 }
	60% {
		opacity: 0;
	}

  	100% {
   		 
		opacity:1;
	}}
#qrcode {
	width: 80%;
	margin: auto;
	padding: 5px;
	border: thick;
	border-style: solid;
	border-radius: 10%;
	border-color: var(--c7);
}

/* Bildschirm ab 1100px ----------- */
@media only screen 
	and (min-width: 1100px ) {


/* Bildschirm Wagerecht ----------- */
@media only screen 
	and (min-aspect-ratio: 11/10 ) {
		#logo{
    margin-right: 5vw;
    height: 1vh;
		}
		#nav-button{
    		top: 25vh;
		}
		
		#navlist {
			top: 0vh;
			height: 100vh;
		}
		

		
		.infobox{
			margin-left: 2vw;
			margin-right: 2vw;
			max-width: 450px;
		}
		.fotobackground img {
	
			height: auto;
			width: 100%;
		
			}
		.textbox{
			padding-left: 1vw;
			padding-right: 3vw;
			padding-top: 5vh;
			padding-bottom: 5vh; 
			min-height: 30vh;
		
			}
		.imgbox img {
			
			max-height: 60vh;
		}
		
		.grid-container {
			margin-top: auto;
	}
		.about-headline {
			font-size: 4em;
			top: 5vh;
			left: 5vw;
		}
		.about-headline {
			color: var(--c1);
			font-size: 3em;
			position: absolute;
			top: 2vh;
			left: 5vw;
		}	
		
		.Spendenbox {
	width: 15vw;
	max-width: 200px;
	border: thick;
	position: absolute;
	bottom: 1vh;
	right: 1vw;

	}
		#wunsch {

	bottom: 0;
	left: 10vw;
	right: inherit;
	width: 70vw;
	max-width: 800px;
}

	}
}
