

/* 		Farben     */
.palette0 { background-color: white;}
.palette1 { color: #ffffff;background-color: #41807c;}
.palette2 { color: #ffffff;background-color: #2cccc4;} 
.palette3 { color: white;background-color: black;}
/* 		Ende Farben     */


:root {
	--theme-sheet-width-xxl: 1240px;	
	--theme-sheet-width-xl: 1140px;
	--theme-sheet-width-lg: 940px;
	--theme-sheet-width-md: 720px;
	--theme-sheet-width-sm: 470px;
	--theme-sheet-width-xs: 330px;
}  



html { font-family: sans-serif; text-size-adjust: 100%; }
body { margin: 0px; background-color: #41807c; }

/* 		standard link     */
	a { 
		color: white;
		text-decoration: underline;
	}
/* 		end standard link     */



.u-align-left { text-align: left; }
.u-text { display: table; align-self: flex-start; width: fit-content; }

	p {
		margin-top:5px;margin-bottom:5px;
	}
	
	
/* 		circular button     */	
	.roundedButton {
		cursor:pointer;		
		border-style:none;
		border-radius:9px;
		color:black;
		padding-top:3px;
		padding-bottom:3px;
		padding-left:8px;
		padding-right:8px;		
		line-height: 1.4;
		font-size:12px;
		text-decoration:none;
	}	



	.circle {
		cursor:pointer;
		width: 25px;
		height: 25px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 12px;
		text-align: center;
		border-width:0px;
		
	}
	
	.icon-color-white {
		background-color: #efecec;
		color: white;
		box-shadow: 5px 14px 20px 0 rgba(0,0,0,0.5);		
	}	
	
	.icon-color-green {
		background-color: #2cccc4;
		color: white;
		box-shadow: 5px 14px 20px 0 rgba(0,0,0,0.5);		
	}		
	
	.icon-color-green:hover {
		background-color: gold;
		color: black;
		box-shadow: 5px 14px 20px 0 rgba(0,0,0,0.5);		
	}			
	
	.icon-color-white:hover {
		background-color: gold;
		color: white;
		box-shadow: 5px 14px 20px 0 rgba(0,0,0,0.5);		
	}	
		
	
	  
/* 		end circular button     */	


	
/*** start header  ***/

header {
		min-height: 75px;
		background-color:white;
}

	
	.header-logo-img {
		width:320px;
		position:absolute;
		top:5px;
		left:0px;
		cursor: pointer;		
	}
	
	.header-logo-text {
		font-size: 14px;
		position: absolute;
		top: 45px;
		left: 1px;
		color: black;
		cursor: pointer;	
	}	
	
	.header-welcome {
		height: 40px;
		position: absolute;
		top: 49px;
		right: 0px;
		font-size: 16px;
	}
	
	.header-menu-container {
		height: 40px;
		position: absolute;
		top: 9px;
		right: 0px;
		display: flex;
		flex-wrap: wrap;
		justify-content: left;
		column-gap: 26px;
	}	
	
	.headerlang {
		1background-color: #2cccc4;
		width: 45px;
		height: 45px;
		cursor: pointer;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		color: white;
		font-size: 20px;
		text-align: center;
		1box-shadow: 5px 14px 20px 0 rgba(0,0,0,0.9);
	}	
	
	
	.headermenu {
		background-color: #2cccc4;
		width: 30px;
		height: 30px;
		cursor: pointer;
		border:none;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		color: white;
		1font-size: 20px;
		text-align: center;
		overflow:hidden;
		box-shadow: 7px 5px 20px 0 rgba(155,155,155,0.9);
	}
	
	  
	.headermenu:hover {
		background-color: gold;
		color:black;
	}
	
	.headermenu svg {
		stroke:white;
		width:25px;
	}

	.headermenu:hover svg {
		stroke:black;
		1111background-color: gold;
	}	
	
	
/* 		start search menu     */
	.search-menu-container {
		height: 40px;
		position: absolute;
		top: 6px;
		right: 407px;
		display: flex;
		flex-wrap: wrap;
		justify-content: left;
		align-items: center;
		border-radius: 15x;
		padding: 1px;
	}
		
	
	
	.searchmenu {
		background-color: #2cccc4;
		width: 30px;
		height: 30px;
		cursor: pointer;
		border:none;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		color: white;
		1font-size: 20px;
		text-align: center;
		overflow:hidden;
		box-shadow: 7px 5px 20px 0 rgba(155,155,155,0.9);
	}
	
	.searchmenu:hover {
		background-color: gold;
		color:black;
	}	
	
	.searchmenu svg {
		stroke:white;
		width:25px;
	}		
	.searchmenu:hover svg {
		stroke:black;
		111background-color: gold;		
	}	



.searchInput {
  border: 0;
  outline: 0; /* focus style on parent */
  width:250px;
  font-size:12px;
  
}

.searchicon {
  width:20px;
  color:white;
}


.searchform {
  width:280px;
  display:flex;
  border-radius: 21px 21px;
  padding-left:12px;
  border-style: solid;
  border-color: #2cccc4;
  border-width:3px;
}


/* 		end search menu     */

@media (min-width: 1400px) {
	header { 1background-color:red; }
	
}
@media (min-width: 1200px) {
	header { 1background-color:blue; }	
}
@media (min-width: 1200px) and (max-width: 1399px) {
	header { 1background-color:white; }	
}
@media (min-width: 992px) and (max-width: 1199px) {
	header { 1background-color:green; }	
	.header-logo-img { width: 238px;position: absolute;top: 8px;left: 0px;}	
	.header-logo-text { font-size:16px;position:absolute; top:39px; left:0px}	

.search-menu-container {
  height: 40px;
  position: absolute;
  top: 6px;
  left: 271px;
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  align-items: center;
  border-radius: 15x;
  padding: 1px;
}
	
	
}
@media (min-width: 768px) and (max-width: 991px) {
	header {background-color:white; min-height: 90px;}
	 .header-logo-img {
		width: 177px;
		position: absolute;
		top: 8px;
		left: 0px;
	 }	
	  .header-logo-text {
    font-size: 14px;
    position: absolute;
    top: 9px;
    left: 190px;
  }
 .header-welcome {
    position: absolute;
    top: 13px;
    right: 0px;
    font-size: 14px;
  }  
 .header-menu-container {
    height: 40px;
    position: absolute;
    top: 38px;
    right: 0px;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    column-gap: 14px;
  }
.search-menu-container {
  height: 40px;
  position: absolute;
  top: 34px;
  left: 0px;
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  align-items: center;
  border-radius: 15x;
  padding: 1px;
}

	
	.headermenu { width: 35px; height: 35px;}
}
@media (min-width: 576px) and (max-width: 767px) {
	header { 1background-color:blue; min-height: 150px; }		
	.header-logo-img { width:230px; position:absolute; top:5px; left:0px;}		
	
	.header-welcome { height:40px;position:absolute;top:129px;left:0px;font-size:12px;}		

		  .header-logo-text {
    font-size: 14px;
    position: absolute;
    top: 9px;
    left: 248px;
  }

.header-menu-container {
    height: 40px;
    1position: absolute;
    top: 45px;
    left: 0px;
    column-gap: 26px;
  }


	
 .search-menu-container {
    height: 40px;
    position: absolute;
    top: 84px;
    left: 0px;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    align-items: center;
    border-radius: 15x;
    padding: 1px;
  }
	

	.searchInput {
		border: 0;
		outline: 0; /* focus style on parent */
		width:250px;
		font-size:12px;
  
	}

	.headermenu {
		background-color: #2cccc4;
		width: 30px;
		height: 30px;
		cursor: pointer;
		border:none;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		color: white;
		1font-size: 20px;
		text-align: center;
		overflow:hidden;
		box-shadow: 5px 14px 20px 0 rgba(155,155,155,0.9);
	}
	

	







}
@media (max-width: 575px) {
	header { 1background-color:gray; min-height: 150px; }	
	.header-logo-img { width: 200px;position: absolute;top: 5px;left: 0px;}	
	.header-logo-text { font-size: 14px;position: absolute;top: 7px;left: 143px;color: black; background-color: rgba(255,255,255,0.5) }
	
	.header-menu-container { height: 45px; top: 41px; right: 0px; justify-content: left; column-gap: 26px; }
	.headermenu { width: 30px; height: 30px;}	
	
	.search-menu-container {
		height: 40px;
		position: absolute;
		top: 81px;
		left: 0px;
		display: flex;
		flex-wrap: wrap;
		justify-content: left;
		align-items: center;
		border-radius: 15x;
		padding: 1px;
	}	
	
	.header-welcome {
		height: 40px;
		position: absolute;
		top: 125px;
		left: 0px;
		font-size: 14px;
	}	
	
	
	
}

/***** end header definitios ******/


/*** back to top button ***/

#back-to-top {
	position: fixed;
	bottom: 150px;
	right: 30px;
	z-index: 99;
	border: none;
	display:none;
	cursor: pointer;
	border-radius: 50%;
	padding:10px;
	opacity: 0.45;	

	background-color: #b9c1cc;
	transition-duration: 0.4s;	
	box-shadow: 5px 14px 20px 0 rgba(0,0,0,0.9);
		
		align-items: center; /* vertical align */	
		justify-content:center;
  
}

#back-to-top:hover {
	background-color: #ffd731; /* Add background on hover */
	opacity: 0.85;	
	color: black;	
}

/*** end back to top button ***/









.u-sheet { width:100%; margin: 0px;}
.u-sheet-1 { position: relative; margin: 0px auto;padding-top:10px; padding-bottom:10px;  } /* Oben/unten: 0, Links/rechts: auto */
@media (min-width: 1400px) {
	.u-sheet-1 { width: var(--theme-sheet-width-xxl); }
}
@media (min-width: 1200px) {
	.u-sheet-1 { width: var(--theme-sheet-width-xl); }
}
@media (min-width: 1200px) and (max-width: 1399px) {
	.u-sheet-1 { width: var(--theme-sheet-width-xl);  }
}
@media (min-width: 992px) and (max-width: 1199px) {
	.u-sheet-1 { width: var(--theme-sheet-width-lg); }
}
@media (min-width: 768px) and (max-width: 991px) {
	.u-sheet-1 { width: var(--theme-sheet-width-md)  }
}
@media (min-width: 576px) and (max-width: 767px) {
	.u-sheet-1 { width: var(--theme-sheet-width-sm)  }
}
@media (max-width: 575px) {
	.u-sheet-1 { width: var(--theme-sheet-width-xs)  }
}






.u-section-1 {
		min-height: 150px;
		display: flex;
		align-items: center; /* vertical align */	
}
@media (min-width: 1400px) {
	.u-section-1 { min-height: 50px; }
}
@media (min-width: 1200px) {
	
}
@media (min-width: 1200px) and (max-width: 1399px) {
	
}
@media (min-width: 992px) and (max-width: 1199px) {
	
}
@media (min-width: 768px) and (max-width: 991px) {
	
}
@media (min-width: 576px) and (max-width: 767px) {
	
}
@media (max-width: 575px) {
	
}

.u-section-1 h1 {
	margin-bottom: 10px;
	margin-top: 10px;	
	font-weight: 400;
	font-size: 1.8888888888888888rem;
	line-height: 1.1;	
}	




.u-section-memory {
		min-height: 367px;
		display: flex;
		align-items: top;
}




:root {
	--flex-item-width: 250px;
	--flex-bot-height: 50px;  
}


.flex-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: left; /* linke/zentrale/rechte Positionierung in der horizontalen */	
	row-gap: 20px;
	column-gap: 40px;
}


.flex-item {
	display:block;
	color:black;
	width:var(--flex-item-width);
}

.flex-item:hover {
	cursor:pointer;
} 


.flex-top { 
	background-color:#41807c;
	height:var(--flex-item-width);
	border-radius: 20px;
	box-shadow: 0 4px 20px 0px rgba(0, 0, 0, 0.367);	
}


.flex-item img {
    max-height: 100%;
    min-width: 100%;
    object-fit: contain;
    vertical-align: bottom;
    box-shadow: 5px 5px 5px transparent;
    border-radius: 20px;	
	transition: all 0.5s;	
}


.flex-item:hover .flex-top {
    //filter: blur(0px);
    //opacity: 1;
    box-shadow: 0 4px 20px 0px rgba(0, 0, 0, 0.567);
}



.flex-item:hover  img {
    filter: blur(0px);
    opacity: 1;
    transition: ease 0.5s;
	transform: scale(1.07);
}

.flex-item a {
		text-decoration:none;
		text-align: center;	
		line-height: 1.3;			
}		

.flex-item  a:hover {
		text-decoration:underline;
}



.flex-bot {
		height:var(--flex-bot-height);
		display: flex;
		align-items: center;
		justify-content: center; /* Horizontal zentrieren */
} 	


	

.remarkBox {
border-radius: 16px;
  width: 218px;
  height: 131px;
  background-color: #eeeeee;
  padding: 10px;
  position: absolute;
  top: -165px;
  left: -20px;
}  

textarea {
		background-color:white; 
		display:block; 
		width:100%; 
		height: 60%;
		overflow:hidden;
		padding: 10px;
		box-sizing: border-box;
		border: 2px solid #ccc;
		border-radius: 14px;
		font-size: 12px;
		resize: none;
		color:black;
		font-family: sans-serif;
		margin-bottom: 10px;
		margin-top:10px;">		
}



@media (min-width: 1400px) {
	
}
@media (min-width: 1200px) {
	
}
@media (min-width: 1200px) and (max-width: 1399px) {
	
}
@media (min-width: 992px) and (max-width: 1199px) {
	
}
@media (min-width: 768px) and (max-width: 991px) {
	
}
@media (min-width: 576px) and (max-width: 767px) {
	:root {
		--flex-item-width: 200px;
	}
	.flex-container {
		justify-content: left; /* linke/zentrale/rechte Positionierung in der horizontalen */	
	}		

}
@media (max-width: 575px) {
	:root {
		--flex-item-width: 200px;
	}
	.flex-container {
		justify-content: center; /* linke/zentrale/rechte Positionierung in der horizontalen */	
	}	
}



