@import "Extensions/Form/form-index.css";

/* ============================================================
   Farbpaletten
   ============================================================ */

/**common-colors*/ 
:root{
	background: var(--footer);	
	
	
  /* base color 1 */
  /* blau */
  --base-color1:202;
  --color1-light:  	hsla(var(--base-color1),  var(--saturation-level2),  var(--lightness-level1), var(--opacity-level1)  );
  --color1-lighter: hsla(var(--base-color1),  var(--saturation-level2),  var(--lightness-level2), var(--opacity-level1)  );
  --color1-lighter5: hsla(var(--base-color1),  var(--saturation-level2),  60%, var(--opacity-level1)  );
  --color1-lighter4: hsla(var(--base-color1),  var(--saturation-level2),  55%, var(--opacity-level1)  );
  --color1-lighter3: hsla(var(--base-color1),  var(--saturation-level2),  50%, var(--opacity-level1)  );
  --color1-lighter2: hsla(var(--base-color1),  var(--saturation-level2),  45%, var(--opacity-level1)  );  
  --color1-lighter1: hsla(var(--base-color1),  var(--saturation-level2),  40%, var(--opacity-level1)  );
  --color1-normal: 	hsla(var(--base-color1),  var(--saturation-level4),  var(--lightness-level4), var(--opacity-level1)  );
  --color1-darker: 	hsla(var(--base-color1),  var(--saturation-level4),  var(--lightness-level6), var(--opacity-level1)  );
  --color1-dark: 	hsla(var(--base-color1),  var(--saturation-level4),  var(--lightness-level7), var(--opacity-level1)  );
  
  /* base color 2 */
  /* türkis #01E2D5 */
  --base-color2:177;
  --color2-light:  	hsla(var(--base-color2),  var(--saturation-level2),  var(--lightness-level1), var(--opacity-level1)  );
  --color2-lighter: hsla(var(--base-color2),  var(--saturation-level2),  var(--lightness-level2), var(--opacity-level1)  );
  --color2-normal: 	hsla(var(--base-color2),  var(--saturation-level2),  var(--lightness-level3), var(--opacity-level1)  );
  --color2-darker: 	hsla(var(--base-color2),  var(--saturation-level2),  var(--lightness-level4), var(--opacity-level1)  );
  --color2-dark: 	hsla(var(--base-color2),  var(--saturation-level2),  var(--lightness-level5), var(--opacity-level1)  );
  
  /*base color 3*/
  /* warmgelb #e6af1a - Akzentfarbe */
  --base-color3:44; 
  --color3-light:	hsla(var(--base-color3),  var(--saturation-level2),  var(--lightness-level1), var(--opacity-level1)  );
  --color3-lighter:	hsla(var(--base-color3),  var(--saturation-level3),  var(--lightness-level2), var(--opacity-level1)  );
  --color3-normal: 	hsla(var(--base-color3),  var(--saturation-level3),  var(--lightness-level3), var(--opacity-level1)  );
  --color3-darker: 	hsla(var(--base-color3),  var(--saturation-level4),  var(--lightness-level4), var(--opacity-level1)  );
  --color3-dark: 	hsla(var(--base-color3),  var(--saturation-level4),  var(--lightness-level5), var(--opacity-level1)  );

  /*base color 4*/
  /* grau */
  --base-color4:0; 
  --color4-lightest:	hsla(var(--base-color4),  0%,  var(--lightness-level0), var(--opacity-level1)  );
  --color4-light:		hsla(var(--base-color4),  0%,  var(--lightness-level1), var(--opacity-level1)  );
  --color4-lighter:		hsla(var(--base-color4),  0%,  var(--lightness-level2), var(--opacity-level1)  );
  --color4-normal: 		hsla(var(--base-color4),  0%,  var(--lightness-level3), var(--opacity-level1)  );
  --color4-darker: 		hsla(var(--base-color4),  0%,  var(--lightness-level4), var(--opacity-level1)  );
  --color4-dark: 		hsla(var(--base-color4),  0%,  var(--lightness-level7), var(--opacity-level1)  );

  /*base color 5*/
  /* rot */
  --base-color5:0; 
  --color5-light:	hsla(var(--base-color5),  var(--saturation-level3),  var(--lightness-level1), var(--opacity-level1)  );
  --color5-lighter:	hsla(var(--base-color5),  var(--saturation-level3),  var(--lightness-level4), var(--opacity-level1)  );
  --color5-normal: 	hsla(var(--base-color5),  var(--saturation-level4),  var(--lightness-level5), var(--opacity-level1)  );
  --color5-darker: 	hsla(var(--base-color5),  var(--saturation-level4),  var(--lightness-level6), var(--opacity-level1)  );
  --color5-dark: 	hsla(var(--base-color5),  var(--saturation-level4),  var(--lightness-level7), var(--opacity-level3)  );

  --black: hsla(0,100%,0%,100%);
  --white: hsla(0,0%,100%,100%);
  
  --saturation-level1: 20%;
  --saturation-level2: 50%; /*mid range - normal*/
  --saturation-level3: 80%;
  --saturation-level4: 100%;
  
  --lightness-level0: 95%;
  --lightness-level1: 90%;
  --lightness-level2: 75%;
  --lightness-level3: 50%;
  --lightness-level4: 35%;
  --lightness-level5: 31%;
  --lightness-level6: 20%;
  --lightness-level7: 10%;
  
  --opacity-level1:100%; /*no opacity - normal*/
  --opacity-level2:80%;
  --opacity-level3:60%;
}

/*Hauptseite Gymnasium Großburgwedel*/ 

body {
		--hauptfarbe: var(--color1-normal);
		--hintergrund: var(--white);
		--textfarbe: var(--color4-dark);
		--text-negativ: var(--white);
		--text-grau: var(--color4-darker);
		--farbe-1: var(--color2-normal);
		--farbe-3: rgba(96,96,96, 1); /*Grau für Texte*/
		--hintergrundfarbe-1: var(--color1-light); /*hellblau*/
		--hintergrundfarbe-2: var(--color4-light); /*silbergrau #c0c0c0*/
		--hintergrundfarbe-3: rgba(255,255,255, 0.3); /*leichtes transparentes Weiß*/
		--akzent-hintergrund: var(--color3-lighter);
		--footer: var(--color1-darker); /*dunkelblau #004167;*/
		--rahmenfarbe: var(--color1-lighter);
		--akzent: var(--color3-normal);
		--link: var(--color1-darker); /*dunkelblau #004167;*/
		--link-hover: var(--akzent);		
		--link-footer: var(--white);
		--link-footer-hover: var(--akzent);	
		--focus-visible: var(--link);	
		--warnung: var(--color5-darker);
		--warnung-hintergrund: var(--color5-light);
		--warnung-variante: #4f0000;
		--erfolg: rgba(21,147,8, 1);		
		--erfolg-hintergrund: #90e887;
		--tuerkis-hintergrund: rgba(189,250,246, 1);		

		--popup-hintergrund: var(--hintergrundfarbe-1);
		--popup-rand: #c0c0c0;

		--gradient-farbe-1:var(--color2-dark);
		--gradient-farbe-2:var(--color1-darker);
		--gradient-farbe-3:var(--color1-normal);
		--gradient-farbe-4:var(--color1-dark);
		--gradient-farbe-5:rgba(192,192,192, 0.8); /*silber #c0c0c0*/
		--gradient-farbe-6:rgba(128,128,128, 0.9); /*mittelgrau*/		--gradient-farbe-7:hsla(var(--base-color1),  var(--saturation-level2),  var(--lightness-level1), var(--opacity-level3) );
		--gradient-farbe-8:var(--color1-light);

		--logo-schwarz: rgb(0,0,0); /*schwarz*/
		--logo-blau: rgb(0,99,159); /*gygro-blau #00639f*/
		--logo-tuerkis: rgb(0,226,213); /*türkis #01e2d5*/		
		
		--border-fancybox: transparent;
		
		--formular-input: var(--color4-lightest);	
}
body.dark-theme {
		--hauptfarbe: var(--color1-normal);
		--hintergrund: var(--color1-dark);
		--textfarbe: var(--white);
		--text-negativ: #efefef;
		--text-grau: var(--color4-lighter);
		--farbe-1: var(--color2-normal);
		--farbe-3: rgba(192,192,192, 1); /*Grau für Texte*/
		--hintergrundfarbe-1: rgba(0,0,0, 0.3);		
		--hintergrundfarbe-2: rgba(192,192,192, 0.3);
		--hintergrundfarbe-3: rgba(0,0,0, 0.3); /*leichtes transparentes Schwarz*/
		--akzent-hintergrund: var(--color3-dark);
		--rahmenfarbe: var(--color1-darker);
		--footer: var(--hintergrundfarbe-3);
		--akzent: var(--color3-normal);
		--link: var(--color1-light);
		--link-hover: var(--color3-dark);		
		--link-footer: #ffffff;
		--link-footer-hover: var(--akzent);
		--focus-visible: var(--hauptfarbe);	

		--popup-hintergrund: var(--footer);
		--popup-rand: #c0c0c0;

		--gradient-farbe-7:rgba(0,99,159, 0.8);
		--gradient-farbe-8:rgba(0,99,159, 1);
		--warnung: var(--color5-light);
		--warnung-hintergrund: var(--color5-dark);
		--warnung-variante: #4f0000;
		--erfolg: rgba(21,147,8, 1);		
		--erfolg-hintergrund: rgba(8,84,0, 1);
		--tuerkis-hintergrund: rgba(0,87,81, 1);		

		--logo-schwarz:var(--textfarbe); /*schwarz*/
		--logo-blau: rgb(0,99,159, 0); /*gygro-blau #00639f*/
		--logo-tuerkis: rgb(0,226,213,0); /*türkis #01e2d5*/		

		--border-fancybox:var(--farbe-3);
		--formular-input: var(--color4-dark);
}

@media (prefers-color-scheme: dark) {
  /* defaults to dark theme */
  body {
		--hauptfarbe: #00639f;
		--hintergrund: #001826;
		--textfarbe: #fff;
		--text-negativ: #efefef;
		--text-grau: var(--color4-lighter);
		--farbe-1: #01e2d5;
		--farbe-3: rgba(192,192,192, 1); /*Grau für Texte*/
		--hintergrundfarbe-1: rgba(0,0,0, 0.3);		
		--hintergrundfarbe-2: rgba(192,192,192, 0.3);
		--hintergrundfarbe-3: rgba(0,0,0, 0.3); /*leichtes transparentes Schwarz*/
		--rahmenfarbe: rgba(192,192,192, 1); /**/
		--footer: rgba(0,39,61, 1); /*dunkelblau #004167;*/
		--akzent: var(--color3-normal);
		--link:var (--color1-light);
		--link-hover: var(--akzent);		
		--link-footer: #ffffff;
		--link-footer-hover: var(--color3-dark);		
		--focus-visible: var(--hauptfarbe);	

		--popup-hintergrund: var(--footer);
		--popup-rand: #c0c0c0;

		--gradient-farbe-7:rgba(0,99,159, 0.8);
		--gradient-farbe-8:rgba(0,99,159, 1);


		--warnung-hintergrund: rgba(70,0,0, 0.8);
		--warnung-variante: #4f0000;
		--erfolg: rgba(21,147,8, 1);		
		--erfolg-hintergrund: rgba(8,84,0, 1);
		--tuerkis-hintergrund: rgba(0,87,81, 1);		

		--logo-schwarz:var(--textfarbe); /*schwarz*/
		--logo-blau: rgb(0,99,159, 0); /*gygro-blau #00639f*/
		--logo-tuerkis: rgb(0,226,213,0); /*türkis #01e2d5*/		  

		--border-fancybox:var(--farbe-3);		
		--formular-input: var(--color4-dark);

		}
  
  
  body.light-theme {
		--hauptfarbe: rgb(0,99,159); /*gygro-blau #00639f*/
		--hintergrund: #fff;
		--textfarbe: #222;
		--text-negativ: #fff;
		--text-grau: var(--color4-darker);
		--farbe-1: rgb(0,226,213); /*türkis #01e2d5*/
		--farbe-3: rgba(96,96,96, 1); /*Grau für Texte*/
		--hintergrundfarbe-1: rgba(240,248,255, 1); /*hellblau - "aliceblue" #f0f8ff*/
		--hintergrundfarbe-2: rgba(192,192,192, 1); /*silbergrau #c0c0c0*/
		--hintergrundfarbe-3: rgba(255,255,255, 0.3); /*leichtes transparentes Weiß*/
		--footer: rgba(0,65,103, 1); /*dunkelblau #004167;*/
		--rahmenfarbe: rgb(0,99,159); /**/
		--akzent: var(--color3-normal);
		--link: rgba(0,65,103, 1); /*dunkelblau #004167;*/
		--link-hover: var(--akzent);		
		--link-footer: var(--white);
		--link-footer-hover: var(--akzent);
		--focus-visible: var(--link);	
		--warnung: var(--color5-darker);
		--warnung-hintergrund: rgba(248,106,106, 1);
		--warnung-variante: #4f0000;
		--erfolg: rgba(21,147,8, 1);		
		--erfolg-hintergrund: #90e887;
		--tuerkis-hintergrund: rgba(189,250,246, 1);		

		--popup-hintergrund: var(--hintergrundfarbe-1);
		--popup-rand: #c0c0c0;

		--gradient-farbe-1:rgba(0,226,213, 0.8);
		--gradient-farbe-2:rgba(0,99,159, 1);
		--gradient-farbe-3:rgba(0,99,159, 0.8);
		--gradient-farbe-4:rgba(0,65,103, 1);
		--gradient-farbe-5:rgba(192,192,192, 0.8); /*silber #c0c0c0*/
		--gradient-farbe-6:rgba(128,128,128, 0.9); /*mittelgrau*/
		--gradient-farbe-7:rgba(240,248,255, 0.8);
		--gradient-farbe-8:rgba(240,248,255, 1);

		--black: rgb(0,0,0);
		--logo-schwarz: rgb(0,0,0); /*schwarz*/
		--logo-blau: rgb(0,99,159); /*gygro-blau #00639f*/
		--logo-tuerkis: rgb(0,226,213); /*türkis #01e2d5*/		

		--border-fancybox:transparent;
		--formular-input: var(--color4-lightest);

  }
}



@media screen and (prefers-contrast: more) {
		--textfarbe: #f00;	
		--hintergrund:#f00;
		--logo-schwarz: #fff;
		--logo-blau: #fff;
		--logo-tuerkis: #fff;
		--hauptfarbe: #fff;
}



@media screen and (prefers-color-scheme: dark), screen and (prefers-contrast: more) {

}


.hintergrundfarbe-1 {
	background: var(--hintergrundfarbe-1);
}


html {
	font-size:1.1em;
	font-weight:300;
	orphans: 3;
	widows: 3;
	-webkit-transition: background-color 800ms ease;
	transition: background-color 800ms ease;
	scroll-behavior: smooth;
}

body {
    padding:0;
    margin:0;
	overflow-x: hidden;
	background: var(--footer);	
}

/*Auszeichnungen Container*/

.container { 
	background: var(--hintergrund);
} 
	@media (min-width: 992px) {
		.container  {
			display: grid; 
			grid-template-rows: auto 1fr auto; 
			grid-template-columns: minmax(30px,10%) 1fr minmax(30px,10%) ; 
			grid-template-areas:
				"header header header"
				"navigation navigation navigation"
				". main ."
				"footer footer footer"
			;
		}
		.startseite.container  {
			display: grid; 
			grid-template-rows: auto; 
			grid-template-columns: 100%; 
			grid-template-areas:
				"header"
				"navigation"
				"topzeile"
				"eyecatcher"
				"main"
				"footer"
			;
		}
	}

header { 
	grid-area: header;
	background: transparent;
	transition: all 0.4s ease-in-out;
	width:100%;
	display:flex;
	justify-content: space-between;
	align-items: center;
} 

	@media (min-width: 992px) {
		header{
			align-items: flex-start;
		}
	}




main { 
	grid-area: main;
	padding:0 10%;
} 
	@media (min-width: 992px) {
		header{
			padding:0;
		}
	}



footer { 
	grid-area: footer;
	background: var(--footer);
	color:var(--text-negativ);
	margin-top:30px;
	padding:20px 6%;
	z-index:1;
}

	@media (min-width: 1080px) {
		footer  {
			display:grid;
			grid-template-rows:max-content max-content; 
			grid-template-columns: minmax(5px,6%)1fr 1fr 1fr minmax(5px,6%); 
			grid-template-areas:
				". footer-left footer-center footer-right ."
				"footer-partner footer-partner footer-partner footer-partner footer-partner"
				"footer-copyright footer-copyright footer-copyright footer-copyright footer-copyright"
			;
		}
	}
	@media (min-width: 1600px) {
		footer  {
			grid-template-columns: 10% 1fr 1fr 1fr 10%; 
		}
	}


/* Grid-areas für Container*/

.footer-left {
	grid-area: footer-left ;
}

.footer-center{
	grid-area: footer-center ;
}

.footer-right{
	grid-area: footer-right ;
}

.footer-partner{
	grid-area: footer-partner ;
	display: flex;
	justify-content: center;
	gap: 50px;
	margin: 40px 0;
}

.footer-copyright{
	grid-area: footer-copyright;
	text-align:center;
}



/* Logo im Header */
.header-logo {
    display:flex;
	align-items:center;
	margin:0;
    padding:10px 5px 10px 5px;
	width:auto;
	transition: all 0.4s ease-in-out;	
}
	@media (min-width: 992px) {
		.header-logo {
			max-width:50%;
		}
	}




.header-logo a:link{
  border:0;
}

.header-middle__logo-img {
	margin: 10px 5px;
}

.header-middle__logo-link{
	display:block;
}

a:hover.header-middle__logo-link, a:focus.header-middle__logo-link{
	background:none;
}


/*hier auf svg umstellen!!!*/

/* Hamburger-Menu neu*/
.menu-collapser-wrap {
	display: none;
	margin:0;
}
	@media (max-width: 991px) {
	   .menu-collapser-wrap {
			display: block;
			text-align: center;
			margin:0;
		}
    }

.d-menu.megamenu-wrap1 {
	display: flex;
	justify-content: space-between;
	width:100vw;
}
	@media (max-width: 991px) {
	   .d-menu.megamenu-wrap1 {
			display: none;
		}
    }



.megamenu-wrap2 {
	display:none;
	width: 100vw;
}
	@media (min-width: 992px) {
	   .megamenu-wrap2 {
			display: block !important;
		}
    }





/* Megamenü neu */

ul.megamenu-level1 {
  display: flex;
  align-items: stretch;  
  list-style: none;
  margin: 0px;  
  padding:0;
  font-size: 93%;
  font-weight:600;
  padding-top: 26px;  
}

	@media (min-width: 992px) {
	   ul.megamenu-level1 {
			font-size: 85%;
		}
    }
	@media (min-width: 1050px) {
	   ul.megamenu-level1 {
			font-size: 95%;
		}
    }
	@media (min-width: 1150px) {
	   ul.megamenu-level1 {
			font-size: 105%;
		}
    }
	@media (min-width: 1200px) {
	   ul.megamenu-level1 {
			font-size: 115%;
		}
    }
	@media (min-width: 1400px) {
	   ul.megamenu-level1 {
			font-size: 130%;
		}
    }


ul.megamenu-level1 a{
	padding: 15px 20px;
	display:inline-block;
	text-align:center; 
	text-decoration:none;
	border:0;
	transition: all 0.4s ease-in-out;
}

ul.megamenu-level1 a:hover, ul.megamenu-level1 a:focus{
	background:linear-gradient(30deg, var(--gradient-farbe-2), var(--gradient-farbe-1));
	color:var(--text-negativ);
	transition: all 0.4s ease-in-out;		
}
ul.megamenu-level1 a:focus-visible{
	background:linear-gradient(30deg, var(--gradient-farbe-2), var(--gradient-farbe-1));
	color:var(--text-negativ);
	transition:none;
}


ul.megamenu-level2 {
	/* list-style: none; */
	transition-duration: 0.4s;
	background: var(--hintergrundfarbe-1);
	margin: 0;
	padding: 0;
}

li.megamenu-level2 {
	border-top: 1px solid;	
	border-image: linear-gradient(to right, var(--hauptfarbe) 80%, var(--farbe-1) 100%);
	border-image-slice: 1;
	padding:0 50px 20px;
}

li.megamenu-level2 div {
  flex-wrap:wrap;
  justify-content:space-between;
  gap:10px 40px;
}
	@media (min-width: 992px) {
		li.megamenu-level2 div {
		  flex-wrap:nowrap;
		}
	}

.megamenu-header-wrap {
	padding:20px 0;
}			


.megamenu-col {
  flex-grow: 1;
  width: 100%;
 }
	@media (min-width: 768px) {
		.megamenu-col {
		  max-width: calc(50% - 22px);
		}
	}

	@media (min-width: 992px) {
		.megamenu-col {
		  width: 20%;
		}
	}

.megamenu-col:last-child {
}

/* Menü: M-Menu = mobile Darstellung; D-Menu = Desktop-Version */
/* M-Menu */
.d-menu {
	display:none;
}
	@media (min-width: 992px) {
		.d-menu {
		  display:block;
		}
	}

/* M-Menu */
.m-menu {
	display:none;
}
	@media (max-width: 991px) {
		.m-menu {
		  display:flex;
		  margin:0;
		  padding:0;
		}
	}


/* Slimmenu */
@media (min-width: 992px) {
    ul.slimmenu.collapsed li.servicenavigation-wrap {
          background:  var(--hintergrund);
    }
}

@media (min-width: 992px) {
    ul.slimmenu li.servicenavigation-wrap {
          display:none;
    }
}

ul.slimmenu.collapsed li.servicenavigation-wrap a {
  display: flex;
  flex-direction: column;
  align-items: center;
  width:auto;
  padding:10px;
}

/* M-Menu für Darstellung unter 992px - Einstellungen für Megamenu*/

	@media (max-width: 1199px) {
		li.m-menu-level1 {
			padding: 15px 20px;
			background: var(--hintergrund);
			border-top: 1px solid var(--hauptfarbe);		  
		}
		li.m-menu-level1:first-child {
			border-top: 0;		  
		}
		li.m-menu-level1 a:link, li.m-menu-level1 a:active, li.m-menu-level1 a:hover, li.m-menu-level1 a:focus-visible, li.m-menu-level1 a:visited{
			border:0;
		}
	}

/*fixierter Header beim Scrollen*/
/* nur in der Desktop-Version */

header.sticky .header-logo{
	transform: translate3d(0, -100px, 0);
	transition: all 0.4s ease-in-out;		
}
	
header.sticky .servicenavigation-wrap {
	transition: all 0.4s ease-in-out;	
	transform: translate3d(0, -100px, 0);
}

.hauptnavigation-wrap.sticky {
	box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px, rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px, rgba(0, 0, 0, 0.09) 0px 32px 16px
	;
	transition: all 0.4s ease-in-out;
}
header.sticky #hauptnavigation {
	display: flex;
	align-items: end;
	transition: all 0.4s ease-in-out;	
}

/* ============================================================
   Typographie
   ============================================================ */
/*FiraGo einbinden*/
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 100;
  src: url('../Fonts/FiraGO/FiraGO-Thin.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Thin'), local('FiraGO-Thin'),
       url('../Fonts/FiraGO/FiraGO-Thin.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Thin.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Thin.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Thin.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-100italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 100;
  src: url('../Fonts/FiraGO/fira-sans-v8-latin-100italic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Thin Italic'), local('FiraGO-ThinItalic'),
       url('../Fonts/FiraGO/FiraGO-ThinItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-ThinItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ThinItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ThinItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGo-200 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 200;
  src: url('../Fonts/FiraGO/FiraGO-UltraLight.eot'); /* IE9 Compat Modes */
  src: local('FiraGO UltraLight'), local('FiraGO-UltraLight'),
       url('../Fonts/FiraGO/FiraGO-UltraLight.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-UltraLight.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-UltraLight.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-UltraLight.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGo-200italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 200;
  src: url('../Fonts/FiraGO/FiraGO-UltraLightItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO UltraLight Italic'), local('FiraGO-UltraLightItalic'),
       url('../Fonts/FiraGO/FiraGO-UltraLightItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-UltraLightItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-UltraLightItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-UltraLightItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGo-250 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 250;
  src: url('../Fonts/FiraGO/FiraGO-ExtraLight.eot'); /* IE9 Compat Modes */
  src: local('FiraGO ExtraLight'), local('FiraGO-ExtraLight'),
       url('../Fonts/FiraGO/FiraGO-ExtraLight.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-ExtraLight.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraLight.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraLight.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGo-250italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 250;
  src: url('../Fonts/FiraGO/FiraGO-ExtraLightItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO ExtraLight Italic'), local('FiraGO-ExtraLightItalic'),
       url('../Fonts/FiraGO/FiraGO-ExtraLightItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-ExtraLightItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraLightItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraLightItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}


/* FiraGO-300 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 300;
  src: url('../Fonts/FiraGO/FiraGO-Light.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Light'), local('FiraGO-Light'),
       url('../Fonts/FiraGO/FiraGO-Light.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Light.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Light.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Light.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-300italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 300;
  src: url('../Fonts/FiraGO/FiraGO-LightItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Light Italic'), local('FiraGO-LightItalic'),
       url('../Fonts/FiraGO/FiraGO-LightItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-LightItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-LightItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-LightItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-350 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 350;
  src: url('../Fonts/FiraGO-Book.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Book'), local('FiraGO-Book'),
       url('../Fonts/FiraGO/FiraGO-Book.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Book.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Book.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Book.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-350italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 350;
  src: url('../Fonts/FiraGO/FiraGO-BookItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Book'), local('FiraGO-Book'),
       url('../Fonts/FiraGO/FiraGO-BookItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-BookItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-BookItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-BookItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}


/* FiraGO-regular - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 400;
  src: url('../Fonts/FiraGO-Regular.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Regular'), local('FiraGO-Regular'),
       url('../Fonts/FiraGO/FiraGO-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Regular.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Regular.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 400;
  src: url('../Fonts/FiraGO/FiraGO-Italic.eot'); /* IE9 Compat Modes */
  src: local('Fira GO Italic'), local('FiraGO-Italic'),
       url('../Fonts/FiraGO/FiraGO-Italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Italic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Italic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-500 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 500;
  src: url('../Fonts/FiraGO-Medium.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Medium'), local('FiraGO-Medium'),
       url('../Fonts/FiraGO/FiraGO-Medium.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Medium.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Medium.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Medium.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-500italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 500;
  src: url('../Fonts/FiraGO/FiraGO-MediumItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Medium Italic'), local('FiraGO-MediumItalic'),
       url('../Fonts/FiraGO/FiraGO-MediumItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-MediumItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-MediumItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-MediumItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-600 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 600;
  src: url('../Fonts/FiraGO/FiraGO-SemiBold.eot'); /* IE9 Compat Modes */
  src: local('FiraGO SemiBold'), local('FiraGO-SemiBold'),
       url('../Fonts/FiraGO/FiraGO-SemiBold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-SemiBold.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-SemiBold.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-SemiBold.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-600italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 600;
  src: url('../Fonts/FiraGO/FiraGO-SemiBoldItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO SemiBold Italic'), local('FiraGO-SemiBoldItalic'),
       url('../Fonts/FiraGO/FiraGO-SemiBoldItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-SemiBoldItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-SemiBoldItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-SemiBoldItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-700 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 700;
  src: url('../Fonts/FiraGO/FiraGO-Bold.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Bold'), local('FiraGO-Bold'),
       url('../Fonts/FiraGO/FiraGO-Bold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Bold.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Bold.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Bold.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-700italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 700;
  src: url('../Fonts/FiraGO/FiraGO-BoldItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Bold Italic'), local('FiraGO-BoldItalic'),
       url('../Fonts/FiraGO/FiraGO-BoldItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-BoldItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-BoldItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-BoldItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-800 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 800;
  src: url('../Fonts/FiraGO/FiraGO-ExtraBold.eot'); /* IE9 Compat Modes */
  src: local('FiraGO ExtraBold'), local('FiraGO-ExtraBold'),
       url('../Fonts/FiraGO/FiraGO-ExtraBold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-ExtraBold.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraBold.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraBold.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-800italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 800;
  src: url('../Fonts/FiraGO/FiraGO-ExtraBoldItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO ExtraBold Italic'), local('FiraGO-ExtraBoldItalic'),
       url('../Fonts/FiraGO/FiraGO-ExtraBoldItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-ExtraBoldItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraBoldItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-ExtraBoldItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-900 - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: normal;
  font-weight: 900;
  src: url('../Fonts/FiraGO/FiraGO-Heavy.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Heavy'), local('FiraGO-Heavy'),
       url('../Fonts/FiraGO/FiraGO-Heavy.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-Heavy.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Heavy.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-Heavy.ttf') format('truetype'); /* Safari, Android, iOS */
}

/* FiraGO-900italic - latin */
@font-face {
  font-family: 'FiraGO';
  font-style: italic;
  font-weight: 900;
  src: url('../Fonts/FiraGO/FiraGO-HeavyItalic.eot'); /* IE9 Compat Modes */
  src: local('FiraGO Heavy Italic'), local('FiraGO-HeavyItalic'),
       url('../Fonts/FiraGO/FiraGO-HeavyItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/FiraGO/FiraGO-HeavyItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-HeavyItalic.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/FiraGO/FiraGO-HeavyItalic.ttf') format('truetype'); /* Safari, Android, iOS */
}

/*Oranienbaum einbinden*/
/* Oranienbaum regular */
@font-face {
  font-family: 'oranienbaumregular';
  font-style: normal;
  font-weight: normal;
  src: url('../Fonts/Oranienbaum/Oranienbaum-Regular-webfont.eot'); /* IE9 Compat Modes */
  src: url('../Fonts/Oranienbaum/Oranienbaum-Regular-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../Fonts/Oranienbaum/Oranienbaum-Regular-webfont.woff2') format('woff2'), /* Super Modern Browsers */
       url('../Fonts/Oranienbaum/Oranienbaum-Regular-webfont.woff') format('woff'), /* Modern Browsers */
       url('../Fonts/Oranienbaum/Oranienbaum-Regular-webfont.ttf') format('truetype'); /* Safari, Android, iOS */
}


/*Kalam einbinden*/
/* Kalam bold */
@font-face {
  font-family: 'Kalam';
  font-style: bold;
  font-weight: 800;
  src: local('Kalam bold'), local('Kalam-Bold'),
       url('../Fonts/Kalam/Kalam-Bold.ttf') format('truetype');
}

/* Kalam light */
@font-face {
  font-family: 'Kalam';
  font-style: light;
  font-weight: 200;
  src: local('Kalam light'), local('Kalam-Light'),
       url('../Fonts/Kalam/Kalam-Light.ttf') format('truetype');
}

/* Kalam regular */
@font-face {
  font-family: 'Kalam';
  font-style: regular;
  font-weight: 400;
  src: local('Kalam Regular'), local('Kalam-Regular'),
       url('../Fonts/Kalam/Kalam-Regular.ttf') format('truetype');
}

/*Vaderlands einbinden*/
@font-face {
  font-family: 'Vaderlands';
  src: local('Valerlands'),
       url('../Fonts/Vaderlands/Vaderlands.otf') format('opentype');
}


/*Überschriften*/
body {
    font-family: FiraGO;
    color: var(--textfarbe);
    line-height:1.6em;
}
h1 {
    font-weight: 600;
    font-size: 160%;
    line-height:1.2em;
	column-break-before: column;
}
.h1 {
    font-weight: 600;
    font-size: 160%;
    line-height:1.8em;
	column-break-before: column;
}
h2 {
    font-weight: 400;
    font-size: 150%;
    padding-bottom:3px;
    /* line-height:1.2em; */
	column-break-before: column;
}

.h2 {
    font-weight: 400;
    font-size: 150%;
    padding-bottom:3px;
    /* line-height:1.5em; */
	column-break-before: column;
}
h2.rubrik-header {
    font-weight: 200;
    font-size: 220%;
    border-bottom:1px solid var(--farbe-3);
    color: var(--farbe-3);
	text-transform:uppercase;
}			
aside h2.rubrik-header {
    font-weight: 200;
    font-size: 150%;
}			


h3 {
    font-weight: 600;
    font-size: 120%;
    /* line-height:1.2em; */
	column-break-before: column;
}
.h3 {
    font-weight: 600;
    font-size: 120%;
    /* line-height:1.2em; */
	column-break-before: column;
}

h4 {
	font-weight:300;
	font-size: 120%;
	column-break-before: column;
}
.h4 {
	font-weight:300;
	font-size: 120%;
	column-break-before: column;
}
h5 {
	font-weight: 600;
	font-size: 110%;
	column-break-before: column;
}
.h5 {
	font-weight: 600;
	font-size: 110%;
	column-break-before: column;
}
h6 {
	font-weight: 300;
	font-size: 110%;
	column-break-before: column;
}
.h6 {
	font-weight: 300;
	font-size: 110%;
	column-break-before: column;
}

.megamenu-header {
    font-weight: 300;
    font-size: 150%;
    color: var(--farbe-3);
	text-transform:uppercase;
	line-height: initial;
}			

 @media (min-width: 768px) {
	 .megamenu-header {
		font-size: 150%;
	}
}
 @media (min-width: 992px) {
	 .megamenu-header {
		font-size: 220%;
	}
}

.megamenu-header a:link{
	border:0;
}			
.megamenu-header a:hover, .megamenu-header a:focus, .megamenu-header a:focus-visible{
	background:var(--link);
}

.ce-headline {
	display:flex;
	gap:0 5px;
	align-items:end;
}

.ce-headline-right {
	text-align:right;
	justify-content:end;
}
.ce-headline-left {
	text-align:left;	
	justify-content:start;
}
.ce-headline-center {
	text-align:center;
	justify-content:center;
}

.h-anleitung-count {
    font-weight: 300;
    font-size: 150%;
    padding-bottom:3px;
    line-height:1.5em;
	column-break-before: column;
	counter-increment:anleitung;
}

.h-anleitung-count::before {
	content: counter(anleitung);
	background-color: #00639f;
	color: #fff;
	font-weight: 800;
	border-radius: 100px;
	width: 80px;
	height: 80px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-image: url(../Images/grunge-blau.png);
	background-repeat: no-repeat;
}



body p {
	font-weight:300;
}
body.dark-theme p {
	font-weight:300;
}

@media (prefers-color-scheme: dark) {
	body p {
		font-weight:300;
	}
	body.light-theme p {
		font-weight:300;
	}
}





/*Anchor*/
@media (min-width: 1200px) {
	:target:before {
		content: "";
		/* display: block; */
		height: 130px; /* same as your fixed header height */
		margin: -130px 0 0; /* negative fixed header height */
	}
}


.h-footer {
    font-weight: 300;
    font-size: 150%;
    padding-bottom:3px;
    padding-top:30px;
    line-height:1.5em;
}

address {
  font-style: normal;
}

/* Trennlinie */
hr {
  background: linear-gradient(to right, transparent 5%, var(--footer) 10%, var(--hauptfarbe), var(--farbe-1) 90%,transparent 95%);
  height: 1px;
  border: 0;
}

/*Textausrichtung*/

.text-center {
	text-align:center;
}
.text-left {
	text-align:left;
}
.text-right {
	text-align:right;
}
.text-justify {
	text-align:justify;
}


/*Links*/

*:focus:not(:focus-visible) {
    outline: none
}

*:focus-visible {
    outline: 2px dashed var(--focus-visible);
    outline-offset: 2px;
	transition:none;
}

footer *:focus-visible {
    outline: 2px dashed currentColor;
}

a:link, a:visited{
	color: var(--link);
	transition: all 0.4s ease-in-out;	
	text-decoration: none;
	background: linear-gradient(transparent 50%, var(--link) 50%);
	background-size: 100% 210%;
}

a:hover, a:active, a:focus {
	color: var(--link-hover);
	transition: all 0.4s ease-in-out;	
	text-decoration: none;
	background-position: 100% 100%;
}

.frame-layout-bg-rot a:link, .bg-rot a:link, .frame-layout-bg-rot  a:visited, .bg-rot a:visited{
	color:#750000;
	text-decoration: none;
	border-bottom:2px solid #750000;
}
.frame-layout-bg-rot a:hover, .bg-rot a:hover, .frame-layout-bg-rot a:active, .bg-rot a:active, .frame-layout-bg-rot a:focus, .bg-rot a:focus {
	color:#4f0000;
	text-decoration: none;
	border-bottom:5px solid #4f0000;
}

.ce-textpic .image a:link,
.ce-textpic .image a:visited,
.ce-textpic .image a:hover,
.ce-textpic .image a:active,
.ce-textpic .image a:focus,
.ce-textmedia .image a:link,
.ce-textmedia .image a:visited,
.ce-textmedia .image a:hover,
.ce-textmedia .image a:active,
.ce-textmedia .image a:focus,
.ce-text .image a:link,
.ce-text .image a:visited,
.ce-text .image  a:hover,
.ce-text .image a:active,
.ce-text .image  a:focus,
.ce-image .image a:link,
.ce-image .image a:visited,
.ce-image .image  a:hover,
.ce-image .image a:active,
.ce-image .image  a:focus,
.news-img-wrap .image a:link,
.news-img-wrap .image a:visited,
.news-img-wrap .image  a:hover,
.news-img-wrap .image a:active,
.news-img-wrap .image  a:focus,
.news-img-wrap-other .image a:link,
.news-img-wrap-other .image a:visited,
.news-img-wrap-other .image  a:hover,
.news-img-wrap-other .image a:active,
.news-img-wrap-other .image  a:focus

 {
	display:flex;
	border:none;
	position: relative;
}

.link-external {
	border-bottom: 2px solid var(--link);
	padding: 3px 3px 0 3px;
}

a.link-external:before {
	display:inline-block;
	margin-right:5px;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f08e";
}

.link-external:hover, .link-external:focus, .link-external:focus-visible {
/* border-bottom: 6px solid var(--link-hover); */
}

.link-internal {
	border-bottom: 3px solid var(--link);
	padding: 3px 3px 0 3px;
}

.link-internal:hover, .link-internal:focus, .link-internal:focus-visible {
/* border-bottom: 6px solid var(--link-hover); */
}

.link-internal-new-window {
	border-bottom: 3px solid var(--link);
	padding: 3px 3px 0 3px;
}

.link-internal-new-window:hover, .link-internal-new-window:focus, .link-internal-new-window:focus-visible{
/* border-bottom: 6px solid var(--link-hover); */
}

.email, .link-mail {
	border-bottom: 2px solid var(--link);
	padding: 3px 3px 0 3px;
}

.email:hover, .email:focus, .email:focus-visible, .link-mail:hover, .link-mail:focus, .link-mail:focus-visible {
/* border-bottom: 6px solid var(--link-hover); */
}


::-moz-selection { /* Code for Firefox */
    color:  var(--black);
    background: var(--akzent);
}

::selection {
    color:  var(--black);
	background: var(--akzent);
}

article, aside, nav {
  word-wrap: break-word;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.mail {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

a.toplink::before {
  content: '↑  ';	
}

.toplink {
	background: var(--hintergrundfarbe-2);
	padding: 5px;
	border-bottom: 2px solid;
	border-image: linear-gradient(to right, var(--hauptfarbe) 80%, var(--farbe-1) 100%);
	border-image-slice: 1;
}
.toplink:hover, .toplink:focus, .toplink:focus-visible {
	background: var(--link);
	border-bottom: 5px solid;
}

/*Listen*/
.lower-alpha {
    list-style-type:lower-alpha;
}

/* ============================================================
   Generelle Auszeichnungen
   ============================================================ */

.clear {
    clear:both;
}
.display-none {
    display:none;
}
.display-flex {
	display:flex;
}

/* ============================================================
   Main navigation
   ============================================================ */

.hauptnavigation-wrap {
	grid-area:navigation;
	z-index:9998;
	display: flex;
	align-items: end;
	background-color:var(--hintergrund);
	border-bottom: 15px solid;	
	border-image: linear-gradient(to right, var(--hauptfarbe) 80%, var(--farbe-1) 100%);
	border-image-slice: 1;
	transition: all 0.4s ease-in-out;
}


 @media (min-width: 992px) {
	 .hauptnavigation-wrap {
		position:sticky;
		top:0;
		 }
 }


/* ============================================================
   Sub navigation NEU
   ============================================================ */
.subnavigation {
    list-style-type: none;
    padding:0;
	margin:0;
}

.subnavigation-item {
}

.subnavigation-item a:link, .subnavigation-item a:visited{
    display: flex;
	justify-content: space-between;
	align-items: center;
    background: var(--hintergrundfarbe-1);
    padding:8px;
	margin-bottom:2px;
    color: var(--link);
    text-decoration:none;
	border-left:0;
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
}

.subnavigation-item a:hover, .subnavigation-item a:focus,  .subnavigation-item a:focus-visible{
	background:  var(--hauptfarbe);
	color: var(--akzent);
	text-decoration:none;
}

.subnavigation-item.active a:link, .subnavigation-item.active a:visited, .subnavigation-item.active a:hover, .subnavigation-item.active a:focus,  .subnavigation-item.active a:focus-visible{
	font-weight:bold;
	border-left:10px solid var(--akzent);
}

.subnavigation-item.level-2 a:link, .subnavigation-item.level-2 a:visited{
	background: var(--hintergrundfarbe-2);
	font-weight:initial;
	border-left:0;	
}
.subnavigation-item.level-2.active a:link, .subnavigation-item.level-2.active a:visited{
	font-weight:bold;
	border-left:10px solid var(--akzent);
}

.subnavigation-item.level-3 a:link, .subnavigation-item.level-3 a:visited{
	background: var(--hintergrundfarbe-3);
	border-bottom: 1px solid var(--rahmenfarbe);
	border-left:0;	
}
.subnavigation-item.level-3.active a:link, .subnavigation-item.level-3.active a:visited{
	font-weight:bold;
	border-left:10px solid var(--akzent);
}
.subnavigation-item.level-3:last-child a:link, .subnavigation-item.level-3:last-child a:visited{
	border-bottom: 0;
	font-weight:initial;
}


.subnavigation-item.level-4 a:link, .subnavigation-item.level-4 a:visited{
	background: var(--hintergrundfarbe-3);
	border-bottom: 1px solid var(--rahmenfarbe);
	padding-left:2em;
	font-style:italic;
	border-left:0;	
}
.subnavigation-item.level-4.active a:link, .subnavigation-item.level-4.active a:visited{
	font-weight:bold;
	border-left:10px solid var(--akzent);
}


.subnavigation-item.subnavigation-title {
}

.subnavigation-item.subnavigation-title a:link, .subnavigation-item.subnavigation-title a:visited {
	background: var(--hauptfarbe);
	font-size:135%;
	font-weight:300;
	color:var(--text-negativ);
}

.subnavigation-item.subnavigation-title a:link, .subnavigation-item.subnavigation-title a:visited {
	background: var(--hauptfarbe);
	font-size:135%;
	font-weight:300;
	color:var(--text-negativ);
}

.subnavigation-item.subnavigation-title.active a:link, .subnavigation-item.subnavigation-title.active a:visited {
	border-left:10px solid var(--akzent);
}

.subpages-icon {
    width:18px;
    height:18px;
}

/* ============================================================
   Mobil navigation
   ============================================================ */


#mobilnavigation {
		position: relative;
		display: inline-block;
}
        @media (min-width: 1200px) {
            #mobilnavigation {
                    display: none;
            }
        }




/* ============================================================
   Breadcrumb navigation
   ============================================================ */

.breadcrumb-menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.breadcrumb-menu ul{
  list-style-type: none;
  padding:0;
  /* margin: 0; */
}

#breadcrumb{
  padding:0;
}

#breadcrumb li{
  display:inline-block;
}

#breadcrumb li a{
  padding: 3px;
}

#breadcrumb .last{
}

.breadcrumb-icon {
    margin:0 2px 0 5px;
    width:10px;
    height:10px;
}


/* ============================================================
   Footer navigation
   ============================================================ */

footer a:hover, footer a:focus, footer a:focus-visible, footer a:active{
	background:transparent;
}

.footernavigation {
	list-style: none;
	padding:0;
	margin:0;
}

.footernavigation-icon{
	display: inline-block;
	width: 20px;
	height: 20px;
	position: relative;
	margin-right:10px;
	top: 3px;
	fill:currentColor;
}


.footernavigation-level1 a:link, .footernavigation-level1 a:visited {
	color: var(--link-footer);
	text-decoration: none;
	border:0;
}

.footernavigation-level1 a:hover, .footernavigation-level1 a:active, .footernavigation-level1 a:focus {
	color: var(--link-footer-hover);
	text-decoration: none;
}


/* ============================================================
   Servicenavigation
   ============================================================ */

/* M-Menu für Darstellung unter 992px - Einstellungen für Servicenavigation */

.m-menu .servicenavigation-wrap{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	width:100%;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

.m-menu .servicenavigation-search-wrap {
	display: block;
	margin: 5px;
}


/* allgemeine Einstellungen */
.servicenavigation-search-wrap {
	display: none;
}
	@media (min-width: 992px) {
	   .servicenavigation-search-wrap {
			display: flex;
			flex-direction: row;
			justify-content: flex-end;
			align-items: flex-start;
			margin: 5px;
			padding-right: 84px;
		}
    }



.servicenavigation-wrap {
	display:flex;
	transition: all 0.4s ease-in-out;	  
}

	@media (min-width: 992px) {
		.header-search-wrap {
			position:fixed;
			top:5px;
			right:9px;
			z-index:9999;
		}
	}

.search-more-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.servicenavigation {
	display: none;
}

.servicenavigation-icon {
	width:20px;
	height:20px;
	margin-bottom:6px;
}
	@media (min-width: 768px) {
		.servicenavigation-icon{
			width:32px;
			height:32px;
		}
	}

.servicenavigation {
	display: flex;
	flex-direction: column;	
	justify-content: center;
	align-items: center;	
	color: var(--link);
	background:transparent;
	transition-duration: 0.4s;
	margin: 0 2px 0 0;
	padding:4px 9px;
	border: 1px solid transparent;	
	border-radius: 10px;
}

.servicenavigation-text {
	font-weight: 400;
}

a.servicenavigation{
	background:transparent;
}

.m-menu .servicenavigation, .search-more-wrap .servicenavigation{
	border: 1px solid var(--link);	
}

.servicenavigation:hover, .servicenavigation:focus, .servicenavigation:focus-visible {
	color: var(--akzent);	
	background:var(--footer);
	border:1px solid var(--color1-darker);
}

a.servicenavigation{
	background:transparent;
}

.servicenavigation.feuser {
	color: #800000;
}

.servicenavigation.feuser:focus, .servicenavigation.feuser:hover {
	color: var(--akzent);	
	background:#800000;
	transition-duration: 0.4s;
}


/*   Servicenavigation Formulare */

.dialog-content form {
    display:flex;
	flex-direction:column;
}

.dialog-content input {
    transition-duration: 0.4s;
	margin:5px 0;
}

.dialog-content button {
	align-self: end;
	margin: 5px 0 0 0;
}



/* =============================================================================
   Language Navigation
   ========================================================================== */

.languagenavigation_wrap {
  display: flex;
  gap: 15px;
}

.languagenavigation-list {
	list-style:none;
}

.languagenavigation-list a:hover, .languagenavigation-list a:active, .languagenavigation-list a:focus {
  transition-duration: 0.4s;
  background: none;
  text-decoration: none;
  border-bottom: 0;
}

.languagemenu {
	display:flex;
}

/* Sprachwahl in der Breadcrumb-Leiste */

.breadcrumb-menu .languagemenu-icon {
	width: 25px;
	height: 25px;
}


/* ============================================================
   Seitennavigation rechts
   ============================================================ */

.seitennavigation-rechts-wrap {
	position: fixed;
	top:50%;
	right:0;
	z-index:999;
	display: flex;
	align-items: center;
}

.seitennavigation-rechts {
	display:flex;
	justify-content:end;
}

.seitennavigation-rechts-link {
	font-weight:bold;
 }

.seitennavigation-rechts-link-wrap{
    display: flex;
	align-items: center;	
    margin: 0 -100% 0 0;
	padding: 0 20px 0 0;
    border: 0;
	box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px, rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
	height:40px;
	transform: translate(-40px, 0px);
}

	@media (min-width: 768px) {
		.seitennavigation-rechts-link-wrap {
			height:45px;
			transform: translate(-45px, 0px);
		}
	}

	@media (min-width: 992px) {
		.seitennavigation-rechts-link-wrap {
			height:50px;
			transform: translate(-50px, 0px);
		}
	}

	@media (min-width: 1200px) {
		.seitennavigation-rechts-link-wrap {
			height:60px;
			transform: translate(-60px, 0px);
		}
	}


.seitennavigation-rechts a:link, .seitennavigation-rechts a:visited{
	transition: all 0.8s ease-in-out;	  	
	background: linear-gradient(var(--akzent), var(--akzent) 50%, var(--link) 50%, var(--link));
	background-size: 100% 200%;
}

.seitennavigation-rechts a:hover, .seitennavigation-rechts a:active, .seitennavigation-rechts a:focus {
	transition: all 0.8s ease-in-out;
	background-position: 100% 100%;
}

.seitennavigation-rechts a:focus-visible {
    outline: 2px dashed var(--akzent);
}

.seitennavigation-rechts-link-wrap:hover, .seitennavigation-rechts-link-wrap:focus {
	transform: translate(-100%, 0px);
}

.seitennavigation-rechts img, .seitennavigation-rechts-icon  {
	width:30px;
	height:30px;
	padding:5px;
}

	@media (min-width: 768px) {
		.seitennavigation-rechts img, .seitennavigation-rechts-icon {
			width:35px;
			height:35px;
		}
	}

	@media (min-width: 992px) {
		.seitennavigation-rechts img, .seitennavigation-rechts-icon {
			width:40px;
			height:40px;
		}
	}

	@media (min-width: 1200px) {
		.seitennavigation-rechts img, .seitennavigation-rechts-icon {
			width:50px;
			height:50px;
		}
	}


/* ============================================================
   Buttons
   ============================================================ */
button {
	font-family:inherit;
	font-size:inherit;
	line-height:inherit;
	cursor: pointer;
}

button, .btn, .powermail_submit, button:visited, .btn:visited, .powermail_submit:visited{
	display:inline-flex;
	column-gap: 10px;
	align-items: center;
	border:0;
	background:var(--hauptfarbe);
	color: var(--link-footer);
	box-shadow: none;
	padding:4px 9px;
	width:fit-content !important;
	-webkit-appearance: none;
	transition-duration: 0.4s;

/* weiß nicht, warum die raussollten: */
	line-height:34px;
	margin: 4px;
}

button:focus, .btn:focus, .powermail_submit:focus, button:hover, .btn:hover, .powermail_submit:hover, button:active, .btn:active, .powermail_submit:active {
	border:0;
	background: var(--footer);
	color: var(--link-footer-hover);
	-webkit-appearance: none;
}


/*a-Links im Button-Stil*/

a.btn:link, a.btn:visited, a.btn:active {
  color:var(--link-footer);
  background:var(--hauptfarbe);
  border:none;
}

a.btn:focus, a.btn:hover {
  color:var(--link-footer-hover);
  background: var(--footer);
}


/*inaktiver Button, ausgegraut*/

.btn-inactive {
  display:inline-block;
  align-items: center;
  -webkit-align-items:center;
  border:0;
  color:#808080;
  background:var(--hintergrundfarbe-2);
  font-size:18px;
  line-height:34px;
  margin: 0 3px 3px 0 ;
  max-width:100%;
  padding:4px 9px;
  box-shadow: none;
}

/* Icons in Buttons */
.button-icon {
  width: 20px;
  height: 20px;
}

/* Paginator */

.f3-widget-paginator  {
  display: flex;
  display:-webkit-flex;
  flex-wrap:wrap;
}

.f3-widget-paginator li {
  list-style:none;
}

.f3-widget-paginator li:first-child a {
  margin:4px 4px 4px 0;
}

.paginator-icon, .material-icon {
	width: 20px;
    height: 30px;
    vertical-align: middle;
}


.btn.punkte, .btn.punkte:visited {
	background:transparent;
	box-shadow: none;
    color:var(--text-grau);
	background:var(--hintergrundfarbe-2);
}

.btn.punkte:focus, .btn.punkte:hover {
	display:inline-block;
	background:transparent;
	box-shadow:none;
    color:var(--text-grau);
	background:var(--hintergrundfarbe-2);
}

.current a.btn:link, .current a.btn:visited, .current a.btn:active {
	color:var(--text-negativ);
	border:1px solid var(--textfarbe);
	background: var(--akzent);
}

.current a.btn:focus, .current a.btn:hover {
	color:var(--akzent);
	background: var(--footer);
}

/* Links Footer */

footer a:link, footer a:visited{
	color: var(--link-footer);
	border:0;
}
footer a:hover, footer a:active, footer a:focus {
	color: var(--link-footer-hover);
}



 /* ============================================================
    Formularfelder - Input
    ============================================================ */
/* remove standard-styles */
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border:none;
  border-radius: 0;
  font-size: 1em;
  width: 100%
}
/* styling */
select {
  box-sizing: border-box;
  padding: 7px;
  margin: 5px 0;
  width:100%;
  color: var(--farbe-3);
  background:var(--formular-input);
  background-image:url(../Icons/svg/angle-down.svg);
  background-size: 20px 20px;
  background-repeat: no-repeat;
  background-position: 98% center;
	border-top:0;
	border-right:0;
	border-left:0;
	border-bottom: 3px solid;	
	border-image: linear-gradient(to right, var(--hauptfarbe) 70%, var(--farbe-1));
	border-image-slice: 1;

}


select:focus, select:hover {
  width:100%;
}

select[multiple] {
    background-image: none;
}

/* hide browser-styling (arrow) in IE10 */
select::-ms-expand {
  display:none;
}

.lt-ie10 select {
    background-image: none;
}


/* remove standard-styles */
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* border:none; */
  border-radius: 0;
  font-size: 1em;
  width: 100%
}

textarea {
	box-sizing: border-box;
	font-family: FiraGO;
	background:var(--formular-input);
	padding: 7px;
	margin: 5px 5px 5px 0;
	width:100%;
	border-top:0;
	border-right:0;
	border-left:0;
	border-bottom: 3px solid;	
	border-image: linear-gradient(to right, var(--hauptfarbe) 70%, var(--farbe-1));
	border-image-slice: 1;
	color: var(--farbe-3);
	resize:none;
	outline:0;	
}

textarea:focus, textarea:hover {
}

/*Formularfelder*/

input
{
	-webkit-appearance: none;
	border-radius: 0;
	box-sizing: border-box;
	outline: none;
	font-family: FiraGO;
	font-size:100%;
	background:var(--formular-input);
	padding: 7px;
	margin:5px 0;
	color:var(--farbe-3);
	border-top:0;
	border-right:0;
	border-left:0;
	border-bottom: 3px solid;	
	border-image: linear-gradient(to right, var(--hauptfarbe) 70%, var(--farbe-1));
	border-image-slice: 1;
	width:100%;
 }

input:focus, input:hover {
  color:var(--textfarbe);
}

input[readonly]
{
  border:0;
  background-color:transparent;
}

input[readonly]:focus {
  box-shadow:none;
  border: 0;
}

label {
  display: inline-flex;
  align-items: center;
}
.flex label { cursor: pointer }

.checkbox label span, label .checkbox span {
  display: flex;
  margin-right:15px;
  margin-left:5px;
}

input[type=checkbox] {display: none}

/* neu */
/* input[type=checkbox] + label::before, label input[type=checkbox]{ */
	/* display:block; */
	/* background-image: url(../Icons/svg/checkbox.svg); */
	/* background-repeat:no-repeat; */
	/* background-color:transparent; */
	/* border:none; */
	/* width:25px !important; */
	/* height:25px; */
	/* content: ""; */
	/* cursor: pointer; */
	/* margin-right:10px; */
/* } */
/* input[type=checkbox]:checked + label::before, label input[type=checkbox]:checked{ */
    /* background-image: url(../Icons/svg/checkbox-c.svg); */
/* } */


/* alt */
input[type=checkbox] + label span::before, label input[type=checkbox] + span::before{
	display:block;
	background-image: url(../Icons/svg/checkbox.svg);
	width:25px;
	height:25px;
	content: "";
	cursor: pointer;
}

input[type=checkbox]:checked + label span::before, label input[type=checkbox]:checked + span::before{
    background-image: url(../Icons/svg/checkbox-c.svg);
}


input[type=checkbox]:focus-visible + label span::before, label input[type=checkbox]:focus-visible + span::before{
    outline:2px dashed currentColor;
	outline-offset: 2px;
}

[type=checkbox]:checked  + label span::before, label [type=checkbox]:checked + span::before {
    display: block;
    background-image: url(../Icons/svg/checkbox-c.svg);
    content: "";
    cursor: pointer;
}

.parsley-error [type=checkbox]  + label span::before {
    display: block;
    background-image: url(../Icons/svg/checkbox-error.svg);
    content: "";
    cursor: pointer;
}


.radio label span, label .radio span {
  display: flex;
  margin-right:15px;
  margin-left:5px;
}

/* input[type=radio] {display: none} */


input[type=radio] + label span::before, label input[type=radio] + span::before{
    display: block;
    background-image: url(../Icons/svg/radio.svg);
    width:25px;
    height:25px;
    content: "";
    cursor: pointer;
}

input[type=radio]:focus-visible + label span::before, label input[type=radio]:focus-visible + span::before{
    outline:2px dashed currentColor;
	outline-offset: 2px;
}


[type=radio]:checked  + label span::before, label [type=radio]:checked + span::before {
    display: block;
    background-image: url(../Icons/svg/radio-c.svg);
    content: "";
    cursor: pointer;
}

.parsley-error [type=radio]  + label span::before {
    display: block;
    background-image: url(../Icons/svg/radio-error.svg);
    content: "";
    cursor: pointer;
}


/*Switch - Schiebeschalter*/
.switch-wrapper {
  display: flex;
  align-items: center;
  flex-direction:inherit;
  gap:5px;
  margin-bottom: 11px;
 }

.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}


.switch input { 
  opacity: 0;
  width: 0;
  height: 0;
}

.switch-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--farbe-3);
  -webkit-transition: .4s;
  transition: .4s;
  display:block;
}

.switch-slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: var(--hintergrund);
  -webkit-transition: .4s;
  transition: .4s;
}


input:checked + .switch-slider {
  background-color: var(--hauptfarbe);
}


input:focus + .switch-slider {
  box-shadow: 0 0 1px  var(--hauptfarbe);
  outline: 2px dashed var(--focus-visible);
  outline-offset: 2px;
}

input:checked + .switch-slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

/* Rounded sliders */
.switch-slider.round {
  border-radius: 34px;
}

.switch-slider.round:before {
  border-radius: 50%;
}

.switch-wrapper input[type="checkbox"] + label span::before, .switch-wrapper label input[type="checkbox"] + span::before {
  background-image:none;
}

label.switch {
	color:transparent;
	font-size:0px;
}


/* Fancyboy */

.fancybox-content {
	background: var(--hintergrund);
	border:1px solid var(--border-fancybox);
	overflow:initial;
}

.dialog-content{
	max-width:80%;
	width:900px;
}

.dialog-content h3{
	border-bottom: 7px solid;	
	border-image: linear-gradient(to right, var(--hauptfarbe) 70%, var(--farbe-1));
	border-image-slice: 1;
}

.dialog-content h4{
	display:flex;
	gap:6px;
}

/* .fancybox-button.fancybox-focus */
.fancybox-button.fancybox-focus {
  box-shadow: 0 0 1px  var(--hauptfarbe);
  outline: 2px dashed var(--focus-visible);
}


/* ============================================================
   Seitentemplates
   ============================================================ */
/* Allgemeine Angaben (Namen) */

.hauptspalte {
	grid-area: hauptspalte;
	padding:0 0 20px;
}

.hauptspalte-unten {
	grid-area: hauptspalte-unten;
	padding:0 0 20px;
}

.submenu {
	grid-area: submenu;
	padding:0;
}

.sidebar {
	grid-area: sidebar;
	padding:0;
}
	@media (max-width: 1199px) {
		.hauptspalte, .hauptspalte-unten, .submenu, .sidebar 
			{
				/* padding:20px 10%; */
			}
}

.breadcrumb-menu {
	grid-area: breadcrumb-menu;
}

.topzeile-wrap {
	grid-area: topzeile;
	height:fit-content;
	width:100%;
}

.topzeile {
	padding:20px;	
}
.startseite-links {
	grid-area: startseite-links;
}

.startseite-mitte {
	grid-area: startseite-mitte;
}

.startseite-rechts {
	grid-area: startseite-rechts;
}

/* 10 - Submenü - Hauptspalte - Sidebar */

.submenu-hauptspalte-sidebar{
	display:grid;
			grid-template-areas:
				"breadcrumb-menu"
				"hauptspalte"
				"sidebar"
				"submenu"
			;
}

			
	@media (min-width: 1200px) {
		.submenu-hauptspalte-sidebar {
			display:grid;
			grid-auto-rows:1fr;
			grid-template-rows: auto 1fr;
			grid-template-columns: minmax(190px, 20%) 1fr minmax(200px, 25%);
			grid-template-areas:
				"breadcrumb-menu breadcrumb-menu breadcrumb-menu"
				"submenu hauptspalte sidebar"
			;
			gap:0 40px;
		}
		.submenu-hauptspalte-sidebar .submenu{
			display:block;
		}
	}



/* 11 - Submenü - Hauptspalte */

.submenu-hauptspalte{
	display:grid;
			grid-template-areas:
				"breadcrumb-menu"
				"hauptspalte"
				"submenu"
			;
}

	@media (min-width: 1200px) {
		.submenu-hauptspalte {
			display:grid;
			grid-auto-rows:1fr;
			grid-template-rows: auto 1fr;
			grid-template-columns: minmax(190px, 20%) 1fr;
			grid-template-areas:
				"breadcrumb-menu breadcrumb-menu"
				"submenu hauptspalte"
			;
			gap:0 40px;
		}
		.submenu-hauptspalte .submenu{
			display:block;
		}
	}


/* 12 - Hauptspalte - Sidebar */
		
.hauptspalte-sidebar{
	display:grid;
			grid-template-areas:
				"breadcrumb-menu"
				"hauptspalte"
				"sidebar"
			;
}



	@media (min-width: 1200px) {
		.hauptspalte-sidebar {
			display:grid;
			grid-auto-rows:1fr;
			grid-template-rows: auto 1fr;
			grid-template-columns: 1fr minmax(200px, 25%);
			grid-template-areas:
				"breadcrumb-menu breadcrumb-menu"
				"hauptspalte sidebar"
			;
			gap:0 40px;
		}
		.hauptspalte-sidebar .sidebar{
			display:block;
		}
	}

/* 13 - Hauptspalte*/

.hauptspalte-solo .hauptspalte {

}

/* 14 - Startseite */

.box-shaddow-heavy {
	box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 10px;
}

.box-shaddow-light {
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;	
}


.eyecatcher-wrap {
	overflow:hidden;
	grid-area: eyecatcher;
	border-bottom: 3px solid;	
	border-image: linear-gradient(to right, var(--farbe-1), var(--hauptfarbe) 20%);
	border-image-slice: 1;
	margin-top:-1px;
}

.eyecatcher {
	height:60vh;
}

.eyecatcher .frame > div {
	padding:0 50x;
	height:100%;
}

.eyecatcher .frame .ce-headline {
	padding:20px 50px 0;
}


.eyecatcher .frame .news {
	height:100%;
}

.eyecatcher .frame > div.news {
	padding:0;
}

.eyecatcher .article {
	height:100%;
	position:relative;
}


.startseite .topzeile {
	padding:0;	
	color:var(--textfarbe);
	grid-area: topzeile;
	border-bottom:3px solid var(--hauptfarbe);
	z-index:1;
}

.startseite .topzeile .frame{
	padding:0 6%;
	display:inline-block;
	width:calc(100% - 12%);
}

.startseite-grid2 {
	padding:0;
}	
	@media (min-width: 768px) {
		.startseite-grid2 {
			display:grid;
			grid-auto-rows:1fr;
			grid-template-rows:auto 10px auto;
			grid-template-columns: 0% 100% 0%;
			grid-template-areas:
				". startseite-links ."
				". . ."
				". startseite-rechts ."
			;
			padding:30px 0 0 0;
		}
	} 
			
	@media (min-width: 1200px) {
		.startseite-grid2 {
			grid-template-rows:auto 10px;
			grid-template-columns: 0% 67% 3% 30% 0%;
			grid-template-areas:
				". startseite-links . startseite-rechts ."
				". . . . ."
			;
		}
	}

	@media (min-width: 1600px) {
		.startseite-grid2 {
			grid-template-columns: 10% 50% 3% 27% 10%;
		}
	}

.startseite-alle-spalten {
	padding:0;
}	

	@media (min-width: 1600px) {
		.startseite-alle-spalten {
			margin:0 10%;
		}
	}


/* 15 - Submenü - Hauptspalte - Sidebar-kurz */

.submenu-hauptspalte-sidebarkurz{
	display:grid;
			grid-template-areas:
				"breadcrumb-menu"
				"hauptspalte"
				"hauptspalte-unten"
				"sidebar"
				"submenu"
			;
}

			
	@media (min-width: 1200px) {
		.submenu-hauptspalte-sidebarkurz {
			display:grid;
			grid-auto-rows:1fr;
			grid-template-rows: auto auto auto;
			grid-template-columns: minmax(190px, 20%) 1fr minmax(200px, 25%);
			grid-template-areas:
				"breadcrumb-menu breadcrumb-menu breadcrumb-menu"
				"submenu hauptspalte sidebar"
				"submenu hauptspalte-unten hauptspalte-unten"
			;
			gap:0 40px;
		}
		.submenu-hauptspalte-sidebarkurz .submenu{
			display:block;
		}
	}


/* 16 - Hauptspalte 50 % - Sidebar 50% */

.hauptspalte50-sidebar50{
	display:grid;
			grid-template-areas:
				"breadcrumb-menu"
				"hauptspalte"
				"sidebar"
			;
}

	@media (min-width: 1200px) {
		.hauptspalte50-sidebar50 {
			display:grid;
			grid-auto-rows:1fr;
			grid-template-rows: auto 1fr;
			grid-template-columns: 1fr 1fr;
			grid-template-areas:
				"breadcrumb-menu breadcrumb-menu"
				"hauptspalte sidebar"
			;
			gap:0 40px;
		}
		.hauptspalte50-sidebar50 .sidebar{
			display:block;
		}
	}

/* 17 - Hauptspalte - Sidebar-kurz */

.hauptspalte-sidebarkurz{
	display:grid;
			grid-template-areas:
				"breadcrumb-menu"
				"hauptspalte"
				"hauptspalte-unten"
				"sidebar"
			;
}
			
	@media (min-width: 1200px) {
		.hauptspalte-sidebarkurz {
			display:grid;
			grid-auto-rows:1fr;
			grid-template-rows: auto auto auto;
			grid-template-columns: 1fr minmax(200px, 25%);
			grid-template-areas:
				"breadcrumb-menu breadcrumb-menu"
				"hauptspalte sidebar"
				"hauptspalte-unten hauptspalte-unten"
			;
			gap:0 40px;
		}
		.hauptspalte-sidebarkurz .submenu{
			display:block;
		}
	}




/*100 & 101 Anleitung - vor allem Farben verändert*/

.anleitung   {
	background:#fff;
}


.anleitung .header {
    background-color: #fff;
}

.anleitung .header-content  {
	border-right:0;
	width:100%;
}


.anleitung .main {
    background:#fff;
}

.anleitung  .main-content  {
	border-right:0;
	width:100%;
}

.anleitung .submenu {
    background:#f5f5f5;
}


.anleitung .ce-right.ce-nowrap .ce-gallery {
    width: 500px;
}




/* ============================================================
 Bilder und Icons
 ============================================================ */
/*Icons */
 svg path {
	 fill:currentColor;
 }

 svg {
	 fill:currentColor;
 }

/* alle Bilder responsive*/
img {
	display:flex;
    max-width: 100%;
	width:100%;
	height: auto;
	object-fit: contain;
	transition: all 0.4s ease-in-out;	  	
}

/* Ausnahme für Ticketing-System von phpjabbers */

.pjTbSectionSeats img {
    max-width: unset;
	width:unset;
}

.pjTbSeat {

}

.pjTbSeatInner {
width: 20px;
overflow: hidden;
white-space: nowrap;
}


.email-icon {
    height: 14px;
    width: 18px;
    margin-bottom: -2px;
}

/*Logo*/
 svg#header-logo path#logo-schwarz{
	 grid-area: logo;
	 fill: var(--logo-schwarz);
 }
 svg#header-logo #logo-schwarz-schrift path{
	 fill: var(--logo-schwarz);
 }
 svg#header-logo path#logo-blau{
	 fill: var(--logo-blau);
 }
 svg#header-logo path#logo-tuerkis{
	 fill: var(--logo-tuerkis);
 }

#header-logo{
	display:block;
	max-width:100%;
	/* height:auto; */
	transition: all 0.8s ease-in-out;
}

svg#header-logo{
	object-fit: cover;
}
/* ============================================================
 Layout Boxen
 ============================================================ */


.frame-rand, .frame-layout-box, .layout-box, .frame-box-shaddow-light {
      padding:5px 15px 5px 15px ;
      word-break:break-word;
      display: flow-root;
	  clear:both;
}

.frame-box-shaddow-light{
  margin: 0 0 40px !important;
}

/* Hintergrundfarben  */

.frame-layout-bg-blau, .bg-blau, .frame-layout-11, .bg-11 {
  background: var(--hintergrundfarbe-1);
}

.frame-layout-bg-warnung, .bg-warnung, .frame-layout-12, .bg-12 {
  background: var(--warnung-hintergrund);
}

.frame-layout-bg-grau, .bg-grau, .frame-layout-13, .bg-13 {
  background: var(--hintergrundfarbe-2);
}

.frame-layout-bg-gruen, .bg-gruen, .frame-layout-14, .bg-14 {
  background: var(--erfolg-hintergrund);
}

.frame-layout-bg-tuerkis, .bg-tuerkis, .frame-layout-15, .bg-15 {
    background-color: var(--tuerkis-hintergrund);
}

.frame-layout-bg-akzent, .bg-akzent, .frame-layout-16, .bg-16 {
    background: var(--akzent-hintergrund);
}

/* Hintergrundfarben dunkel/dark - nicht dark-Theme! */
.bg-blau.dark, .bg-11.dark {
	background: var(--hauptfarbe)
}
.bg-warnung.dark, .bg-12.dark {
	background: var(--warnung)
}
.bg-grau.dark, .bg-13.dark {
	background: var(--color4-darker)
}
.bg-tuerkis.dark, .bg-15.dark {
	background: var(--color2-dark)
}
.bg-akzent.dark, .bg-16.dark {
	background: var(--akzent)
}

/* Boxenränder  */
.frame-rand.frame-layout-bg-blau, .frame-rand.frame-layout-11 {
	border-top: 5px solid;	
	border-image: linear-gradient(to right, var(--color1-normal) 80%, var(--color2-normal) 100%);
	border-image-slice: 1;
}

.frame-rand.frame-layout-bg-warnung, .frame-rand.frame-layout-12 {
	border-top: 5px solid;	
	border-image: linear-gradient(to right, var(--color5-lighter) 80%, var(--color5-darker) 100%);
	border-image-slice: 1;
}

.frame-rand.frame-layout-bg-grau, .frame-rand.frame-layout-13 {
	border-top: 5px solid;	
	border-image: linear-gradient(to right, var(--color4-normal) 80%, var(--color4-darker) 100%);
	border-image-slice: 1;
}

.frame-rand.frame-layout-bg-tuerkis, .frame-rand.frame-layout-15 {
	border-top: 5px solid;	
	border-image: linear-gradient(to right, var(--color2-normal) 80%, var(--color1-normal) 100%);
	border-image-slice: 1;
}

.frame-rand.frame-layout-bg-akzent, .frame-rand.frame-layout-16 {
	border-top: 5px solid;	
	border-image: linear-gradient(to right, var(--color3-normal) 80%, var(--color3-darker) 100%);
	border-image-slice: 1;
}

.frame-box-shaddow-light {
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;	
}
.dark-theme .frame-box-shaddow-light{
	box-shadow: none;
	border:1px solid var(--rahmenfarbe);
}

.topzeile:has(.frame-rand.frame-layout-bg-warnung, .frame-rand.frame-layout-12) {
	border-bottom:3px solid var(--color5-normal);
}




/* Überschriften*/

.h-layout-box {
    padding:15px 15px 3px 15px;
    margin:0 -15px 15px -15px;
	border:0; 
	font-weight: 300;
    font-size: 150%;
    line-height:1.2em;

}


.layout-box h1, .layout-box h2, .layout-box h3, .layout-box h4, .layout-box h5, .layout-box h6{
	border:0;
}


.titel-blau h1,.titel-blau h2, .titel-blau h3, .titel-blau h4, .titel-blau h5, .titel-blau h6{
   color:#ffffff;
   background: #00639f;
}

.titel-gruen h1,.titel-gruen h2, .titel-gruen h3, .titel-gruen h4, .titel-gruen h5, .titel-gruen h6{
   color:#ffffff;
   background: #0f9e00;
}

/*Boxen-Abstände*/

.margin-bottom-0 {
	margin-bottom: 0;
}
.margin-bottom-5 {
	margin-bottom: 5px;
}
.margin-bottom-10 {
	margin-bottom: 10px;
}
.margin-bottom-15 {
	margin-bottom: 15px;
}
.margin-bottom-20 {
	margin-bottom: 20px;
}
.margin-bottom-25 {
	margin-bottom: 25px;
}
.margin-bottom-30 {
	margin-bottom: 30px;
}
.margin-bottom-40 {
	margin-bottom: 40px;
}
.margin-bottom-50 {
	margin-bottom: 50px;
}
.margin-bottom-60 {
	margin-bottom: 60px;
}
.margin-bottom-70 {
	margin-bottom: 70px;
}

.main nav {
    padding:10px 20px;
}

.main article {
    padding:10px 20px;
}

.main aside {
    padding:10px 20px;
}

.main .topzeile article{
    padding:10px 20px;
}

/*Schatten*/
.boxshadow{
box-shadow: 1px 1px 6px 1px #c0c0c0;
}




/* ============================================================
   TdOT - Tag der Offenen Tür
   ============================================================ */

.tdot {
  background: url(../Images/schatzkarte-background.jpg) #e9e9e9;
  background-attachment:fixed;
  background-size:cover;
}

.tdot .page-container {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows:  auto;
  grid-template-areas: 
	"rand-oben rand-oben rand-oben"
    "rand-links topzeile rand-rechts"
    "rand-links main rand-rechts"
    "rand-unten rand-unten rand-unten";
}

.item-a {
  grid-area: rand-oben;
}
.item-b {
  grid-area: rand-links;
}
.item-c {
	grid-area: topzeile;
	background:transparent;
	display: flex;
	align-items: center;
}
.item-d {
  grid-area: main;
}
.item-e {
  grid-area: rand-rechts;
}
.item-f {
  grid-area: rand-unten;
}


.tdot .page-container {
	grid-template-columns: 0 100% 0;
	grid-template-rows:  20px 170px auto 10px;
}


.tdot .main {
	background:transparent;
	padding:0;
	position:relative;
	z-index:1;
}

        @media (min-width: 768px) {
			.tdot .page-container {
			  grid-template-columns: 0 768px 0;
			  grid-template-rows:  20px 190px auto 10px;
			}
			.tdot .main {
				padding:10px;
			}

        }
        @media (min-width: 992px) {
			.tdot .page-container {
			  grid-template-columns: auto 966px auto;
			  grid-template-rows:  20px 190px auto 10px;
			}
			.tdot .main {
				padding:10px;
			}
        }
        @media (min-width: 1200px) {
			.tdot .page-container {
			  grid-template-columns: auto 1175px auto;
			  grid-template-rows:  20px 190px auto 20px;
			}
			.tdot .main {
				padding:15px;
			}
        }
        @media (min-width: 1600px) {
			.tdot .page-container {
			  grid-template-columns: auto 1460px auto;
			  grid-template-rows:  20px 190px auto 20px;
			}
			.tdot .main {
				padding:20px;
			}
        }



.tdot .topzeile {
	background:transparent;
	padding:0 50px;
	width:auto; /*damit bisherige Toppzeile überschrieben wird*/
	position:fixed;
	z-index:0;
}

.tdot .topzeile h1{
	font-family:Vaderlands;
	font-weight:400;
	font-size:300%;
	color:#426c6d;
	margin:10px;
	padding:10px 10px 0px 10px;
	border: 15px solid transparent;
	-moz-border-image:url("../Images/border-tdot.png") 30 30 repeat; /* Old firefox */
	-webkit-border-image:url("../Images/border-tdot.png") 30 30 repeat; /* Safari */
	-o-border-image:url("../Images/border-tdot.png") 30 30 repeat; /* Opera */
	border-image:url("../Images/border-tdot.png") 30 30 repeat;
}

.tdot .topzeile h1:first-letter {
	color:#800000;
}



.tdot article>div{
    box-shadow: 1px 1px 6px 1px #404040;
	margin-bottom:20px;
	/*padding: 20px;*/
}

.tdot article>div.iframe_wrapper{
	padding: 0;
}


.tdot .topzeile article>div{
    box-shadow: none;
	background:transparent;
	padding:0;
}

.tdot div .grid_layout-box, .tdot div .grid-spalten{
	padding:0;
}


.tdot.footer {
	background:#563c2e;
}


/*Sonderfall Galerie*/

.fs-media-gallery<div {
	background:transparent
}




/* ************************************ */
/* Extension-Styles ab hier
/* ************************************ */


/* ============================================================
   bw_icon
   ============================================================ */
.bw_icon {
	height: 1.2em;
}

.bw_icon img{
	height: 100%;
	width: auto;
}

.frame-layout-bg-blau .bw_icon,
.frame-layout-11 .bw_icon,
.frame-layout-bg-warnung .bw_icon,
.frame-layout-12 .bw_icon,
.frame-layout-bg-grau .bw_icon,
.frame-layout-13 .bw_icon,
.frame-layout-bg-gruen .bw_icon,
.frame-layout-14 .bw_icon,
.frame-layout-bg-tuerkis .bw_icon,
.frame-layout-15 .bw_icon,
.frame-layout-bg-akzent .bw_icon,
.frame-layout-16 .bw_icon
 {
	height: 1.8em;
	width: fit-content;	
	margin-top:-1.6em;
	margin-left: -15px;
	background: var(--white);
	padding: 10px;
}

.frame-layout-bg-blau .bw_icon,
.frame-layout-11 .bw_icon
 {
	border: 2px solid var(--hauptfarbe);
}

.frame-layout-bg-warnung .bw_icon,
.frame-layout-12 .bw_icon
 {
	border: 2px solid var(--color5-darker);
}

.frame-layout-bg-grau .bw_icon,
.frame-layout-13 .bw_icon
 {
  	border: 2px solid var(--color4-darker);
}

.frame-layout-bg-gruen .bw_icon,
.frame-layout-14 .bw_icon
{
  	border: 2px solid var(--erfolg);
}

.frame-layout-bg-tuerkis .bw_icon,
.frame-layout-15 .bw_icon
{
    border: 2px solid var(--color2-dark);
}

.frame-layout-bg-akzent .bw_icon,
.frame-layout-16 .bw_icon
{
    border: 2px solid var(--color3-darker);
}

.topzeile .bw_icon {
	height:1em;
	margin:0;
	padding:8px;
}
/* ============================================================
   ods_osm
   ============================================================ */

.tx-odsosm-pi1 a.external-link-new-window:link, .tx-odsosm-pi1 a.external-link-new-window:visited {
    display: block;
	border-bottom: 2px solid var(--link);
}

/* Checkbox in ods_osm */

.tx-odsosm-pi1 input[type=checkbox] + label::before, label input[type=checkbox]{
	display:none;
}

.tx-odsosm-pi1 input[type=checkbox] + label::before, label input[type=checkbox]{
	display:none;
}

img.marker-icon {
	width:fit-content;
	float: left;
	margin-right: 10px;
	filter: grayscale(100%);
}

.tx-odsosm-pi1 input[type=checkbox]:checked + label img.marker-icon {
	filter: none;
}

#popup-content {
  width: 300px;
}


/* ============================================================
   indexed_search Suchformular allgemein
   ============================================================ */

.tx-indexedsearch-specialbox {
    float:left;
    width:calc(100% - 50px);
    width:-webkit-calc(100% - 50px);
    border:3px #ffffff solid;
    margin:10px;
    padding:10px;
}

                @media (min-width: 600px) {
                    .tx-indexedsearch-specialbox {
                        width:calc(100% - 50px);
                        width:-webkit-calc(100% - 50px);
                    }
                }
                @media (min-width: 772px) {
                    .tx-indexedsearch-specialbox {
                        width:43%;
                    }
                }
                @media (min-width: 992px) {
                    .tx-indexedsearch-specialbox {
                        width:43%;
                    }
                }
                @media (min-width: 1200px) {
                    .tx-indexedsearch-specialbox {
                        width:43%;
                    }
                }
                    @media (min-width: 1600px) {
                    .tx-indexedsearch-specialbox {
                        width:28%;
                    }indexed_
                }

.tx-indexedsearch-specialbox label {
    color:#808080;
}


.tx-indexedsearch-searchbox-button, .tx-indexedsearch-searchbox-button:visited, .tx-indexedsearch-searchbox-button:hover, .tx-indexedsearch-searchbox-button:active, .tx-indexedsearch-searchbox-button:focus {
         width:250px;
         margin-top:20px;

}

.tx-indexedsearch-search-submit {
        text-align:center;
}

.tx-indexedsearch-redMarkup {
    background:var(--akzent);
    padding:0 1px;
    color:var(--text-negativ);
}

.tx-indexedsearch-description {
    margin-left:35px;
}

.tx-indexedsearch-info{
    display:flex;
    margin-bottom:40px;
}

.tx-indexedsearch-info-item {
    display:inline-block;
    color:#808080;
}

.tx-indexedsearch-text-item-path p{
    width:50%;
    display:inline;
}

.tx-indexedsearch-browsebox {
    list-style-type: none;
    margin: 1.25em 0;
    padding: 0;
}

.tx-indexedsearch-browsebox li{
	display:inline-block;
}

.tx-indexedsearch-browsebox a:link, .tx-indexedsearch-browsebox a:active, .tx-indexedsearch-browsebox a:visited{
	display:inline-block;
	color:var(--link-footer);
	background:var(--hauptfarbe);
	border:1px solid var(--rahmenfarbe);
	font-size: 18px;
	line-height: 34px;
	padding: 4px 9px;
	margin: 0 3px 3px 0;  

}

.tx-indexedsearch-browsebox a:focus, .tx-indexedsearch-browsebox a:hover {
	color:var(--link-footer-hover);
	border:1px solid var(--rahmenfarbe);
	background: var(--footer);
	font-size: 18px;
	line-height: 34px;
	padding: 4px 9px;
	margin: 0 3px 3px 0;  
}

.tx-indexedsearch-browsebox .tx-indexedsearch-browselist-currentPage a:link, .tx-indexedsearch-browsebox .tx-indexedsearch-browselist-currentPage a:active, .tx-indexedsearch-browsebox .tx-indexedsearch-browselist-currentPage a:visited{
  color:var(--text-negativ);
  border:1px solid var(--textfarbe);
  background: var(--akzent);
}

.tx-indexedsearch-browsebox .tx-indexedsearch-browselist-currentPage a:focus, .tx-indexedsearch-browsebox .tx-indexedsearch-browselist-currentPage a:hover {
  color:var(--akzent);
  background: var(--footer);
}


.tx-indexedsearch-result-number {
    margin-right: 20px;
}

.tx-indexedsearch-icon img {
  margin-bottom: -10px;
  width:16px;
}

.tx-indexedsearch-percent {
    padding: 5px;
    background: var(--hintergrundfarbe-1);
    font-weight: normal;
}

.searchword {
    font-weight: bold;
    font-style: italic;
    font-size: 120%;
    margin-top: 20px;
}

.tx-indexedsearch-searchbox {
  background:var(--hintergrundfarbe-1);
}

.tx-indexedsearch-searchbox fieldset {
  border:0;
}

.tx-indexedsearch-searchbox legend {
  display:none;
}

.extendedsearch-link {
  padding:10px;
}

.tx-indexedsearch-rules{
	margin-top:20px;
}


/* =============================================================================
	 Comsolite_Suggest
 ========================================================================== */

.tt-hint {
	top:1px !important;
	left:1px !important;
}

input.tt-hint {
	outline:none;
}


span.twitter-typeahead {
	width: 100%;
	display:block;
}
.tt-dataset {
	background: var(--hintergrundfarbe-1);
	cursor: pointer;
	padding:3px 8px;
	display: inline-block;
	border: 1px solid var(--hauptfarbe);
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;	
}

.header-suchfeld .tt-dataset {
	margin-top:3px;
}

.tt-selectable {
padding: 3px 8px;
}

.tt-selectable:hover {
	background: var(--footer);
	color:var(--akzent);
	-webkit-transition-duration: 0.3s; /* Safari */
	transition-duration: 0.3s;
}

.tt-menu {
	width:calc(100% - 0px);
	width:-webkit-calc(100% - 0px);
}

.header-suchfeld{
	text-align:left;
}

.header-suchfeld label {
	display:none;
}


/**************************************/
/*tx_mwkeywordlist
/**************************************/
.toptop {
	scroll-margin-top: 65px;
}

.menu_keywordlist_keywords h2 {
	border-bottom:2px solid var(--hauptfarbe);
}

.stichwort {
	font-weight:bold;
	list-style:none;
}

.verweis {
	margin-left:50px;
	list-style: disclosure-closed;
}

/**************************************/
/*tx_news News-Extension
/**************************************/

.news .no-news-found {
	color: var(--warnung);
}

/* Detailansicht Standart */

.news-single .article .news-img-wrap {
	width:100%;
    height: auto;
    border:0;
}
    @media (min-width: 600px) {
        .news-single .article .news-img-wrap {
        }
    }
    @media (min-width: 772px) {
        .news-single .article .news-img-wrap {
            max-width:220px;
			float:right;
			margin:0 0 20px 20px;
        }
    }
    @media (min-width: 992px) {
        .news-single .article .news-img-wrap {
            max-width:320px;
        }
    }
        @media (min-width: 1600px) {
        .news-single .article .news-img-wrap {
            max-width:500px;
        }
    }

.news-img-wrap-other {
	display: flex;
	flex-wrap:wrap;
	justify-content: space-evenly;
	clear: both;
	gap:15px;
	margin-bottom:20px;
}

/* .news-img-wrap-other div{ */
	/* width:100%; */
/* } */


.news-img-wrap-other .outer {
	width: 100%;
}
    @media (min-width: 600px) {
        .news-img-wrap-other .outer {
            width: calc(50% - 10px);
        }
    }


.news-backlink-wrap {
  clear: both;
}


.news-single .label.label-info a:link{
    margin: 2px;
    padding: 4px 10px;
    white-space: nowrap;
    display: inline-block;
	border:1px solid var(--link);
    border-radius: 3px;
}

.news-single .label.label-info{
	/* background:transparent */
}


/*Video*/
.mediaelement-video {
  background: #202020;
}

.mediaelement-video video {
  max-width: 100%;
  height:auto;
}


/* Listenansicht Standart */

.news .news-standart .article {
	padding: 0 10px 0 10px;
	margin: 0 0 15px;
	display:flex;
	flex-wrap: wrap;
}

.news .news-standart .article .news-img-wrap img {
    max-width: 100%;
    height: auto;
}

.news .news-standart .article .news-img-wrap {
    width:100%;
}

	@media (min-width: 600px) {
		.news .news-standart .article .news-img-wrap {
			width:38%;
		}
	}


.news .news-standart .article .news-list-text-wrap {
    border:0;
    width:100%;
}
    @media (min-width: 600px) {
        .news .news-standart .article .news-list-text-wrap {
			width:58%;
			padding-left:20px;
        }
    }

.news .news-standart h2 {
margin:0;
}

.news .article .news-img-wrap .outer{
        display: flex;
        flex-direction: column;
}

.news .news-standart .article .lead {
    clear:both;
	margin:5px 0 0;
	padding:0 0;
}
    @media (min-width: 600px) {
        .news .news-standart .article .lead {
            clear:none;
        }
    }

.news .news-standart .extra {
margin:0 0 5px;
padding:0;

}

/* Listenansicht Suchergebnisse */

.news .news-search-result .article {
	padding: 0 10px 0 0;
	margin: 0 0 15px;
	display:flex;
	flex-wrap: wrap;
}

.news .news-search-result .article .news-img-wrap img {
    max-width: 100%;
    height: auto;
}

.news .news-search-result .article .news-img-wrap {
    width:100%;
}

	@media (min-width: 600px) {
		.news .news-search-result .article .news-img-wrap {
			width:38%;
		}
	}


.news .news-search-result .article .news-list-text-wrap {
    border:0;
    width:100%;
}
    @media (min-width: 600px) {
        .news .news-search-result .article .news-list-text-wrap {
			width:58%;
			padding-left:20px;
        }
    }

.news .news-search-result h2 {
margin:0;
}

.news .news-search-result .article .news-img-wrap .outer{
        display: flex;
        flex-direction: column;
}

.news .news-search-result .article .lead {
    clear:both;
	margin:5px 0 0;
	padding:0 0;
}
    @media (min-width: 600px) {
        .news .news-search-result .article .lead {
            clear:none;
        }
    }

.news .news-search-result .extra {
	margin:0 0 5px;
	padding:0;
}

.news .news-search-result .count-msg {
	font-weight:bolder;
	font-size: 120%;
	margin:0 0 30px 0;
}



/* sollte noch woanders hin und geändert werden für Detailansichten*/
.news .extra {
	width: 100%;
    padding:5px 2px 0 2px;
    margin-top:10px;
}

.news-extra-icon {
    height:18px;
    width:22px;
    display:inline-block;
}

/* .news-img-caption { */
    /* color:var(--farbe-3); */
    /* font-size: 14px; */
    /* font-weight: 300; */
    /* margin: 0 0 10px 0; */
    /* width: 100%; */
    /* display: block; */
    /* text-align: left; */
/* } */

/*Kategorien/Labels Menü News*/

.news-category-list {
	display: inline-grid;
}

.news-category-list .news-category,
.news-list-view .label.label-info {
    background: var(--hintergrundfarbe-2);
    margin: 2px;
    padding: 4px 10px;
    border-radius: 3px;
    white-space: nowrap;
    display: inline-block;
}



/*Datum und Kategorien in Sidebar ausblenden*/
.sidebar .news .extra {
    display:none;
}



/* News Slider*/

.news .news-slider .news-slider-wrap {
	display:inline-block;
	overflow:hidden;
	max-width:100%;
}

.news .article  .news-slider-wrap .news-img-wrap {
	width: 100%;
 	height: auto;
  margin:0;
}


.news .news-slider .article .news-img-wrap a:link{
   background:none;
}

.news-listtext-wrap {
    display:inline-block;
    border-top:solid 3px #00639f;
    background:#E0ECF5;
    padding:10px 12px;
    width:calc(100% - 24px);
    width:-webkit-calc(100% - 24px);
	margin-top:-10px;
}
    @media (min-width: 992px) {
        .news-listtext-wrap{
            background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(240, 247, 255, 0.7)), color-stop(25%,#E0ECF5)); /* Chrome,Safari4+ */
            margin-top:-40px;
          }
    }

.news-listtext-wrap h1{
  margin:0 0 10px 0;
  padding:0;
  display:inline-block;
  width:100%;
}

.news .news-slider .lead {
  display:block;
}

.slider-headline {
    font-size: 130%;
    font-weight: 600;
    line-height: 1.2em;
    color:#00639f;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    text-overflow: ellipsis;
}

    @media (min-width: 992px) {
        .news-listtext-wrap {
            font-size: 140%;
          }
    }

    @media (min-width: 1200px) {
        .news-listtext-wrap {
            font-size: 150%;
          }
    }


.slider-teaser p {
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    min-height:1.1em;
    text-overflow: ellipsis;
}


/*News List Startseite*/

.news-list-view.news-startpage {
}

@media (min-width: 992px) {
    .news-list-view.news-startpage{
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(31%, 1fr));
		gap:20px;
	}
}

.news-startpage .page-navigation {
  width:100%;
}

@media (min-width: 992px) {
    .news-startpage .article{
		/* width: 31%; */
	}
}

.dark-theme .news-startpage .article {
	border:1px solid var(--rahmenfarbe);
	box-shadow:none;
}

.news-startpage .article .news-list-startseite-wrap {
	page-break-inside:avoid;
}


@media (min-width: 600px)  and (max-width: 767px) {
    .news-startpage .article .news-list-startseite-wrap{
		display:grid;
		grid-template-columns: 200px auto;
	}
}
@media (min-width: 768px) and (max-width: 991px) {
    .news-startpage .article .news-list-startseite-wrap{
		display:grid;
		grid-template-columns: 300px auto;
	}
}

.news-startpage .article a:link, .news-startpage .article a:visited{
	display:block;
	width: 100%;
	height:100%;
	margin: 0 0 20px 0;
	background: var(--hintergrundfarbe-1);
	border:1px solid transparent;
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;	
}

.news-startpage .article a:hover, .news-startpage .article a:focus, .news-startpage .article a:focus-visible {
	transform:scale(110%);
	box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
	position:relative;
	z-index:777;
	background: var(--hauptfarbe);
	border:1px solid var(--link-hover);
}


.news-startpage .article .news-img-wrap img{
  border:0;
  object-fit:cover;
  height:100%;
}


.news-startpage .news-text-wrap {
	margin: 10px;
}
@media (min-width: 992px) {
	.news-startpage .news-text-wrap {
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: space-around;
	}
}

.news-startpage h3 {
	margin:10px 0;
}

.news-startpage .btn {
	align-self: start;
}

/* .news-startpage a:link{ */
	/* border:0; */
/* } */

/* Bildergalerie in News auf Startseite */

.news-startpage .article.Bildergalerie{
	background: var(--color1-darker);
	color:#fff;
}

.news-startpage .article.Bildergalerie a:link, .news-startpage .article.Bildergalerie a:visited{
	color:#fff;
}

.news-startpage .article.Bildergalerie a:hover, .news-startpage .article.Bildergalerie a:focus, .news-startpage .article.Bildergalerie a:active{
	color:var(--link-hover);
}

.news-startpage .article.Bildergalerie .news-img-wrap img{
    /*folgende Zeilen für Filmrollen-Effekt*/
    height: auto;
    border-top: 10px dashed var(--color1-dark);
    outline: 6px solid var(--color1-dark);
    background: white;
    border-bottom: 10px dashed var(--color1-dark);
    margin: 6px;
    max-width: calc(100% - 12px);	
}

/*Kategorie Bild und Bildtitel auf der Startseite*/
.news-category-special {
  position: absolute;
  top:0;
  right:0;
  max-width: 250px;
  display: flex;
  align-items: center;
  background: linear-gradient(30deg, var(--gradient-farbe-5), var(--gradient-farbe-6));
}

.Bildergalerie .news-category-special {
  top: 16px;
  right: 6px;
}

.news-category-special p{
  margin:0;
  display:flex;
  align-items: center;
  padding:5px 10px 5px 5px;
  height:45px;
  font-weight:300;
  color:#000;
}
 .news-category-img {
  max-width:45px;
  padding:5px 10px 5px 5px;

}

.news .article .news-img-wrap .news-category-special img {
  background:transparent;
  height:45px;
  width:auto;
  border:0;
  outline:0;
  margin:0;
}

/* Dummy-Bild */

.news .no-media-element {
display: inherit;
}

/*News List Kleindarstellung*/

.news-list-view.news-kleindarstellung {
  padding:4px 0;
}


.news-kleindarstellung h1, .news-kleindarstellung h2, .news-kleindarstellung h3, .news-kleindarstellung h4, .news-kleindarstellung h5, .news-kleindarstellung h6 {
  font-weight:400;
  margin:0;
  padding: 0;
}

.news-kleindarstellung .extra {
    width: 100%;
    color: #808080;
    margin-top: 4px;
    border:0;
}

.news-kleindarstellung .article{
    display:flex;
}

.news-kleindarstellung .article .news-img-wrap {
  background:none;
  width:120px;
  margin-bottom:0;
}

.news-kleindarstellung .text-wrap {
  width:calc(100% - 120px);
  padding-left: 10px;
}

/*Detail-Ansicht*/

.page-navigation {
  display: flex;
  align-items: center;
  margin-bottom:10px;
}

	@media (max-width: 991px) {
		.page-navigation{
			flex-direction:column;
		}
	}

.seitennummer{
  font-size:22px;
  color: var(--farbe-3);
}

/* Detail-Ansicht: Liste Verwandter Nachrichten */

.news-related-wrap {
	margin-top: 20px;
	width: 100%;
}

.news-related ul {
	padding:0;
}

.news-related ul li {
    line-height: 1.5em;
	margin-bottom: 18px;
}

@media (max-width: 599px) {
	.news-related img {
		width: calc(100% - 20px);
	}
}

.news-related {
}


@media (min-width: 600px) {
     .news-related-list {
		display: flex;
	}
}

@media (max-width: 599px) {
     .news-related-list {
		display: block;
	}
}

 .news-related-list {
}

.news-related-text-wrap {
	padding: 16px;
	width: calc(100% - 32px);
	font-size: 130%;
	font-weight: 400;
}

.news-related-news-date {
  display: block;
  color: var(--color4-darker);
  margin-bottom: 5px;
  font-weight: 300;
}

.news-related-news img {
	padding:10px;
	width:200px;
}

.news-related-links-icon {
	width: 25px;
	height: 25px;
	padding-right: 8px;
}


/* Detail-Ansicht: Liste Verwandter Nachrichten */

.news-related-links ul {
	list-style:none;
}


/* =============================================================================
   Extension Calendarize
   ========================================================================== */

/*Listenansicht Startseite*/

.calendarize .kalenderblatt {
    background: linear-gradient(30deg, var(--gradient-farbe-1), var(--gradient-farbe-2));
    width: 100px;
    padding: 10px;
    text-align: center;
    color: var(--text-negativ);
}
.calendarize .kalenderblatt-wrap {
	display: grid;
	margin-bottom: -130px;
	margin-right:120px;
}
/* nur bei verschieneden Daten für Anfanu und Ende eines Termins */


.calendarize.kalenderblatt.end {
  position: relative;
  top: -130px;
  left: 90px;
}

.calendarize .kalenderblatt .wochentag {
    font-weight: lighter;
	font-size:90%;
}
.calendarize .kalenderblatt .tag {
    font-weight: bold;
    font-size: 170%;
}
.calendarize .kalenderblatt .monat {
    font-size: 110%;
    font-weight: bold;
}

.kalenderblatt .calendarize-date{
	grid-area: calendarize-date;
}

.kalenderblatt .calendarize-header{
	grid-area: calendarize-header;
}

.kalenderblatt.calendarize-text {
	grid-area: calendarize-text;
}

.kalenderblatt-arrow {
	width: 60px;
	height:100%;
	padding:20px;
}

.kalenderblatt .calendarize-header {
	margin:10px 0;
}

.kalenderblatt .calendarize h2 {
	border:0;
	margin:0;
}

/*normale Liste*/

.calendarize ul {
	padding:0;
	margin:0;
	list-style:none;
}

.calendarize .list-item-wrap {
	display:block;
	border:0;
}

.calendarize .list-item-wrap a{
	display:block;
	margin: 0 0 15px 0;
	background: var(--hintergrundfarbe-1);
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;	
	border:1px solid transparent;
}

.calendarize .list-item-wrap a:hover, .calendarize .list-item-wrap a:focus, .calendarize .list-item-wrap a:focus-visible {
	transform:scale(110%);
	box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
	position:relative;
	z-index:777;
	background: var(--hauptfarbe);
	border:1px solid var(--link-hover);
}

.dark-theme .calendarize .list-item-wrap a{
	border: 1px solid var(--rahmenfarbe);
	box-shadow:none;
}

.list_top_date-wrap {
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	align-items: baseline;
	background: linear-gradient(30deg, var(--gradient-farbe-2) 55%, var(--gradient-farbe-1));
	padding: 10px 30px 10px;
	color: var(--text-negativ);
	transition: all 0.4s ease-in-out;	  
}

a:hover .list_top_date-wrap, a:focus .list_top_date-wrap, a:focus-visible .list_top_date-wrap{
	background: linear-gradient(30deg, var(--color1-darker) 55%, var(--color2-dark));
	color: var(--link-hover);
	transition: all 0.4s ease-in-out;	
}

.list_top_date {
	display: flex;
	align-items: baseline;
	gap: 5px;
	font-weight: 400;
	overflow: hidden;
	text-overflow:'...';
} 

.list_top_date .tag {
	line-height: 1em;
	font-size: 160%;
	font-weight:1000;
} 
    @media (min-width: 768px) {
    .list_top_date .tag  {
			font-size: 180%;
        }
    }
    @media (min-width: 992px) {
    .list_top_date .tag  {
			font-size: 200%;
        }
    }
    @media (min-width: 1200px) {
    .list_top_date .tag  {
			font-size: 220%;
        }
    }

.list_top_date .wochentag {
  font-weight: 300;
} 
    @media (min-width: 768px) {
    .list_top_date .wochentag  {
			
        }
    }

.media-body-grid {
}

.media-body {
  padding: 0 30px 10px;
  font-size:85%;
}

.media-body a{
  border-bottom:0;
}

.more-link-body {
	display: flex;
	align-items: flex-end;
	padding: 10px;
}

.more-link-body a{
  border-bottom:0;
}


.momentJs.datum {
	font-weight:400;
}

/* Liste Startseite */

.startseite .list_top_date .tag {
	line-height: 1em;
	font-size: 130%;
} 
    @media (min-width: 768px) {
    .startseite .list_top_date .tag  {
			font-size: 150%;
        }
    }
    @media (min-width: 992px) {
    .startseite .list_top_date .tag  {
			font-size: 200%;
        }
    }
    @media (min-width: 1200px) {
    .startseite .list_top_date .tag  {
			font-size: 250%;
        }
    }

.startseite .momentJs.datum {
	font-weight:500;
}

/* Einzelansicht single */

.calendarize .single {
  margin-bottom: 20px;
  border-bottom: 1px solid #c0c0c0;
  padding-bottom: 20px;
}
.calendarize .single:last-child {
  margin-bottom: 20px;
  border:0;
  padding-bottom: 0px;
}

.calendarize .panel .dl-horizontal.meta {
	display: flex;
	justify-content: flex-start;
	gap: 1em;
}
dt {
	margin: 0;
	font-weight:bolder;
}
dd {
	margin: 0;
}

/* Detailansicht */
.detail-wrap {
  display: flex;
  gap:50px;
}

    @media (max-width: 768px) {
    .detail-wrap  {
		flex-wrap:wrap;	
        }
    }

.detail-wrap .calendarize.kalenderblatt {
	width: 155px;
	height: fit-content;
	padding: 20px;
	font-size: 178%;
	line-height: 1.5em;
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;		
}

.detail-wrap+.btn-group {
	display:flex;
  padding: 10px;
  background: var(--hintergrundfarbe-1);
  margin-top: 20px;
}
.detail-text-wrap .datum {
	font-weight:500;
}



/* Monatsansicht */

.table.table-bordered {
  border-collapse: collapse;
}

.regularMonthView {
}

.not-current-month {
  border: 1px solid var(--hintergrundfarbe-2);
  color: var(--hintergrundfarbe-2);
}

.events {
  font-size: 13pt;
  line-height: normal;
}

.events li {
  list-style: none;
  background: linear-gradient(30deg, var(--gradient-farbe-1), var(--gradient-farbe-2));
}

.events a:link, .events a:visited {
  color: var(--link-footer);
  text-decoration: none;
  transition-duration: 0.4s;
}

/* Fullcalendar */

.fc-h-event, a.fc-h-event {
  border: 1px solid var(--color1-normal);
  background-color: var(--color1-normal);
  transition-duration: 0.4s;
}

.fc-h-event:hover, .fc-h-event:focus, .fc-h-event:focus-visible, a.fc-h-event:hover, a.fc-h-event:focus, a.fc-h-event:focus-visible {
  border: 1px solid var(--color1-darker);
  background-color: var(--color1-darker);
  color: var(--akzent);
  transition-duration: 0.4s;
}

.fc-event-main {
  transition-duration: 0.4s;
}

.fc-event-main:hover, .fc-event-main:focus, .fc-event-main:focus-visible {
  color: var(--akzent);
  transition-duration: 0.4s;
}

.fc .fc-daygrid-day.fc-day-today {
  background-color: var(--color3-light);
}

.dark-theme .fc .fc-daygrid-day.fc-day-today {
  background-color: var(--hintergrundfarbe-1);
}

.fc-daygrid-event-dot {
  border: calc(var(--fc-daygrid-event-dot-width,8px)/ 2) solid var(--color1-normal);
}

.fc .fc-button-primary {
  background-color: var(--color1-normal);
  border-color: var(--color1-normal);
}

.fc .fc-button-primary:hover {
  background-color: var(--color1-darker);
  border-color: var(--color1-darker);
  color: var(--akzent);
  transition-duration: 0.4s;
}

.fc .fc-button-primary:not(:disabled).fc-button-active, .fc .fc-button-primary:not(:disabled):active {
  background-color: var(--color1-dark);
  border-color: var(--color1-dark);
}

.dark-theme .fc .fc-button-primary:not(:disabled).fc-button-active, .dark-theme .fc .fc-button-primary:not(:disabled):active {
  background-color: var(--hintergrundfarbe-1);
}

.fc-daygrid-dot-event.fc-event-mirror, .fc-daygrid-dot-event:hover {
  background: var(--color1-darker);
}

.fc-day-sun {
	color: var(--color3-dark);
}
.dark-theme .fc-day-sun {
	color: var(--color3-darker);
}

.fc-day-today {
	color: var(--color3-dark);
	font-weight:bold;
}
.dark-theme .fc-day-today {
	color: var(--color3-darker);
}


/* Link zur Monatsansicht */

table.jahreskalender{
    width:300px;
    max-width:100%;
    border-collapse:collapse;

}
.jahreskalender th{
	background: linear-gradient(30deg, var(--gradient-farbe-2) 55%, var(--gradient-farbe-1));
	color:var(--text-negativ);
	font-weight:300;
}

.jahreskalender td, .jahreskalender th{
    vertical-align:top;
    padding:10px 5px;
	border: 2px solid var(--white);
	height: 14px;
	text-align:center;
}

.jahreskalender td{
	background: var(--hintergrundfarbe-1);
}

.jahreskalender .sonntag{
	background: var(--akzent-hintergrund);
}


/* =======================
   Ext gridelements
   ======================= */


/*für Grid-Element Layout-Box siehe Boxen und Hintergründe */

/* Grids mit Spalten */

.grid-spalten {
  display:block;
  width:100%;
}

    @media (min-width: 768px) {
    .grid-spalten  {
            display:flex;
        }
    .grid-spalten-gap  {
            gap:40px;
        }
    }

.spalte {
  width:calc(100% - 20px);
}

    @media (min-width: 768px) {
    .spalte  {
        flex:1;
        }
    }

/* Trennspalten für alle Grids */

.spalte-trenner {
     height:5px;
}

    @media (min-width: 772px) {
    .spalte-trenner {
		display: block;
		height:auto;
		width:1px;
		padding:0;
		background:var(--textfarbe);
        }
    }

.frame-layout-bg-blau .spalte-trenner,
.frame-layout-11 .spalte-trenner
 {
    background:var(--hauptfarbe);
}

.frame-layout-bg-warnung .spalte-trenner,
.frame-layout-12 .spalte-trenner
 {
  background: var(--warnung);
}

.frame-layout-bg-grau .spalte-trenner,
.frame-layout-13 .spalte-trenner
 {
  background: var(--farbe-3);
}

.frame-layout-bg-gruen .spalte-trenner,
.frame-layout-14 .spalte-trenner
 {
  background: var(--erfolg);
}

.frame-layout-bg-tuerkis .spalte-trenner,
.frame-layout-15 .spalte-trenner
 {
    background-color: var(--farbe-1);
}

.frame-layout-bg-akzent .spalte-trenner,
.frame-layout-16 .spalte-trenner
 {
    background: var(--akzent);
}


/* kann mit Gridelements wech */

/* .trenner-transparent { */
	/* display:block; */
    /* background:transparent; */
/* } */
    /* @media (min-width: 772px) { */
    /* .trenner-transparent { */
		/* height:auto; */
		/* width:5px; */
        /* } */
    /* } */


/* .trenner-weiss { */
    /* background:var(--text-negativ); */
/* } */

/* .trenner-blau, .trenner-hauptfarbe { */
    /* background:var(--hauptfarbe); */
/* } */

/* .trenner-rot, .trenner-warnung { */
    /* background:var(--warnung); */
/* } */

/* .trenner-akzent { */
    /* background:var(--akzent); */
/* } */
/* .trenner-grau { */
    /* background:var(--hintergrundfarbe-2); */
/* } */

/* .trenner-gruen, .trenner-erfolg { */
    /* background:var(--erfolg); */
/* } */

/* .trenner-tuerkis, .trenner-tuerkies { */
    /* background:var(--farbe-1); */
/* } */

/* Gleiche Höhe für den Inhalt aller Container-Spalten */

.spalte-align-content-start {
	align-content:flex-start;
}

.spalte-align-content-center {
	align-content:center;
}

.spalte-align-content-end {
	align-content:flex-end;
}




/* kann wech! */
/*Padding in Grid-Spalten*/

/* .grid-padding{ */
	/* padding:2px 10px; */
/* } */

/* .grid-padding-no{ */
	/* padding:0 */
/* } */



/*Toggle*/
.toggle-container {
	border-bottom:1px solid var(--farbe-3);
}

.toggle-headline{
	display:flex;
	justify-content: flex-start;
	align-items:center;
	padding: 4px 0;
	font-family: inherit;	
	font-size: 110%;
	color: var(--link);
	transition-duration: 0.4s;	
	border-top:1px solid var(--farbe-3);
	border-right: 0;
	border-left: 0;
	border-bottom: 0;
	width: 100%;
	background: inherit;
}
.toggle-headline:hover, .toggle-headline:focus{
	color: var(--link-hover);
	background: var(--hauptfarbe);
}
.toggle-headline:hover::after, .toggle-headline:focus::after {
	color: var(--link-hover);
} 
.toggle-headline::after {
	content:"+";
	text-transform: full-width;
	font-size:150%;
	font-weight:400;
	color: var(--link);
	margin: 0 10px;
	transition-duration: 0.4s;	
}

.toggle-headline:hover::after, .toggle-headline:focus::after {
	color: var(--link-hover);
}

.toggle-headline.open::after {
	content:"-";
	text-transform: full-width;
	font-size:150%;
	font-weight:400;
	color: var(--link);
	margin: 0 10px;
	transition-duration: 0.4s;	
}
.toggle-headline.open:hover::after, .toggle-headline.open:focus::after {
	color: var(--link-hover);
}
.toggle-headline-text {
  flex-grow: 2;
  text-align: left;
  padding-left: 10px;
}

.toggle-content {
  display:none;
  overflow: hidden;
  margin: 0;
  padding: 0;
  }


/*Toggle in farbigen Boxen*/

.frame-layout-bg-rot  .toggle-container, 
.bg-rot .toggle-container {
  border-bottom: 1px solid #808080;
}

.frame-layout-bg-rot .toggle-headline, 
.bg-rot .toggle-headline {
  color:#750000;
  border-top: 1px solid #808080;
}

.frame-layout-bg-rot .toggle-headline:hover,
.bg-rot .toggle-headline:hover,
.frame-layout-bg-rot .toggle-headline:focus
.bg-rot .toggle-headline:focus{
  background: var(--warnung-hintergrund);
  color:var(--warnung-variante);
}

/*Akkordeon*/
.akkordeon-container {
	border-bottom:1px solid var(--farbe-3);
}

.akkordeon-trigger{
	display:flex;
	justify-content: flex-start;
	align-items:center;
	padding: 4px 0;
	margin:0;
	font-family: inherit;	
	font-size: 110%;
	color: var(--link);
	transition-duration: 0.4s;	
	border-top:1px solid var(--farbe-3);
	border-right: 0;
	border-left: 0;
	border-bottom: 0;
	width: 100% !important;
	background: inherit;
}

.akkordeon-trigger:hover, .akkordeon-trigger:focus{
	color: var(--link-hover);
	background: var(--hauptfarbe);
}
.akkordeon-trigger:hover::after, .akkordeon-trigger:focus::after {
	color: var(--link-hover);
} 
   
.akkordeon-trigger::after {
	content:"+";
	text-transform: full-width;
	font-size:150%;
	font-weight:400;
	color: var(--link);
	margin: 0 10px;
	transition-duration: 0.4s;	
}

.akkordeon-trigger:hover::after, .akkordeon-trigger:focus::after {
	color: var(--link-hover);
}

.akkordeon-trigger.open::after {
	content:"-";
	text-transform: full-width;
	font-size:150%;
	font-weight:400;
	color: var(--link);
	margin: 0 10px;
	transition-duration: 0.4s;	
}
.akkordeon-trigger.open:hover::after, .akkordeon-trigger.open:focus::after {
	color: var(--link-hover);
}
.akkordeon-trigger-text {
  flex-grow: 2;
  text-align: left;
  padding-left: 10px;
}

.akkordeon-content {
  display:none;
  overflow: hidden;
  margin: 0;
  padding: 0;
  }

/*Akkordeon in farbigen Boxen*/


.frame-layout-bg-rot .akkordeon-container, 
.bg-rot .akkordeon-container {
  border-bottom: 1px solid #808080;
}
.frame-layout-bg-rot .akkordeon-trigger, 
.bg-rot .akkordeon-trigger {
  color:#750000;
  border-top: 1px solid #808080;
}
.frame-layout-bg-rot .akkordeon-trigger:hover,
.bg-rot .akkordeon-trigger:hover,
.frame-layout-bg-rot .akkordeon-trigger:focus, 
.bg-rot .akkordeon-trigger:focus{
  background: #ff9292;
  color:#4f0000;
}

/*Toggle & Akkordeon Icons*/

.toggle-icon {
  width:25px;
  height:18px;
  align-self: center;
}

.closed .icon-open {
}
.closed .icon-close {
  display:none;
}
.open .icon-open {
  display:none;
}
.open .icon-close {
}

.toggle-headline .open .toggle-content {
	display:flex-root;
}


/*Akkordeon numeriert*/

.akkordeon-counter-container{
  border-bottom:0;
}

.akkordeon-counter{
  counter-increment: inst;
}
.akkordeon-counter::before {
  content: counter(inst);
  background: var(--hauptfarbe);
  color: var(--text-negativ);
  font-weight: 700;
  font-style: italic;
  font-size: 2em;
  text-align: right;
  height: 1.8em;
  width: 1.5em;
  padding-top: 2px;
  padding-right: 2px;
  border:2px solid var(--hauptfarbe);
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;

}
.akkordeon-counter:hover::before, .akkordeon-counter:focus::before {
  background: var(--link-hover);
  border:2px solid var(--link-hover);  
}

.akkordeon-counter.akkordeon-trigger {
  background:var(--hintergrundfarbe-1);
  border:0;
  margin-top:3px;
  padding:0;
}

.akkordeon-counter.akkordeon-trigger:hover,.akkordeon-counter.akkordeon-trigger:focus{
  background:var(--hauptfarbe);
  color:var(--link-hover);
}

/* bxslider */

.bx-wrapper {
  -webkit-box-shadow: none;
  box-shadow:none;
  border: 1px solid var(--farbe-3);
  background: var(--hintergrund);
  padding: 4px;
}

.bx-wrapper .bx-prev {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}
.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}
.bx-wrapper .bx-next {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}
.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
}

/* Cards */

.grid-cards {
	display: flex;
	flex-wrap:wrap;
	gap:20px;
    justify-content: space-between;
	margin-top:15px;
}

.card {
	width:100%;
}

	@media (min-width: 768px) {
		.card {
			width:calc(50% - 15px);
		}
	}
	@media (min-width: 1200px) {
		.card {
			width:calc(33% - 15px);
		}
	}
	@media (min-width: 1600px) {
		.card {
			width:calc(33% - 15px);
		}
	}

.card .frame {
	height:100%;
	padding:0 10% !important;
}


/*zusätzliche CSS-Auszeichnungen*/

.gridelements-css.white {
	color:white;
}

.gridelements-css.silver {
	color:var(--hintergrundfarbe-2);
}

.gridelements-css.green {
	color:var(--akzent);
	text-shadow: 3px 3px 4px #000000;
}

.gridelements-css.red {
	color:#800000;
}


/* =============================================================================
   Extension powermail
   ========================================================================== */

/* Karteikarten */

.powermail_form .btn-group .btn{
  transition-duration: 0s;
  border-radius: 0 10px 0 0;
}

.powermail_form .btn-group .btn-primary {
  background: var(--hintergrundfarbe-1);
  color: var(--textfarbe);
  margin-bottom: 0;
  padding-bottom: 6px;
  transition-duration: 0s;	
}

.powermail_form .btn-group button:first-child{
	margin-left:0;
}


.nebeneinander .powermail_field {
	display: flex !IMPORTANT;
}

.uebereinander .powermail_field {
	display:flex !IMPORTANT;
	flex-direction: column;
}

.uebereinander_auch_label {
	display:flex !IMPORTANT;
	flex-direction: column;
}

.uebereinander_auch_label .powermail_field {
	display:flex !IMPORTANT;
	flex-direction: column;
}

.uebereinander_auch_label .powermail_label {
	width:100% !important;
}


.versteckt {
    display: none !important;
}

.tx-powermail {
    color:  var(--textfarbe);
}

.tx-powermail .powermail_fieldset {
	margin:0 0 20px;
}


.tx-powermail .powermail_fieldset, fieldset.form-group {
    border:5px solid var(--hintergrundfarbe-2);
	margin: 0 0 30px 0;
}

.tx-powermail .powermail_fieldset:focus-within, fieldset.form-group:focus-within {
	border: 5px solid;	
	border-image: linear-gradient(to right, var(--hauptfarbe) 70%, var(--farbe-1) 100%);
	border-image-slice: 1;
}

.powermail_all_value {
  vertical-align: top;
}

.tx-powermail .powermail_fieldset .powermail_fieldwrap input, .tx-powermail .powermail_fieldset .powermail_fieldwrap select, .tx-powermail .powermail_fieldset .powermail_fieldwrap textarea {
	outline-offset: 2px;
	margin: 4px;
	width: calc(100% - 10px);
}

/* Tabelle für Unterschriften in Wahlbogen Powermail*/
.unterschrift-table {
	width:100%;
	
}
.unterschrift {
	border: 1px solid var(--rahmenfarbe);
	width: 100%;
	margin-bottom: 10px;
	height: 70px;
	display: flex;
	background: var(--hintergrundfarbe-2);
}






/* =============================================================================
   Extension tt_address
   ========================================================================== */

/* Trennlinie nach einer vcard; gilt für verschiedene Ansichten */

.vcard.tt_address_detail:after {
	display:block;
	content: "";
	width:100%;
	margin-bottom:15px;
	/* jetzt gleiche Angaben wir bei Trennlinie hr */
	background: linear-gradient(to right, var(--hintergrund) 5%, var(--farbe-3) 10%, var(--hauptfarbe), var(--farbe-1) 90%,var(--hintergrund) 95%);
	border:0;
	height:1px;
}

.vcard.tt_address_detail:last-child:after {
	display:none;
}

.vcard.lehrerliste.tt_address_detail:after {
	display:none;
}

.tt_address_flexbox .vcard.tt_address_detail:after {
	display:none;
}

/* vcard */

.vcard .list-inline {
   list-style: none;
   padding: 0;
}

.vcard .list-unstyled {
   list-style: none;
   padding: 0;
}

.photo-flexbox {
    display: flex;
    justify-content: space-between;
	width:100%;
}

aside .photo-flexbox {
    flex-wrap: wrap-reverse;
}

@media (min-width: 600px) {
	aside .photo-flexbox {
		flex-wrap: initial;
	}
}

@media (min-width: 1200px) {
	aside .photo-flexbox {
		flex-wrap: wrap-reverse;
	}
	aside .photo {
		display: flex;
		justify-content: center;
		width:100%;
	}
}

.photo {
  margin-bottom: 10px;
}

.vcard img{
	border-bottom: 5px solid;
	border-image: linear-gradient(to right, var(--hauptfarbe) 80%, var(--farbe-1) 100%);
	border-image-slice: 1;
}


.bild-oben {
	flex-direction: column-reverse;  
}

.bild-oben .photo{
	display: flex;
	justify-content: center;
}

 .adress-wrap {
	 width:100%;
 }

.vcard .name {
    margin-bottom: 6px;
    font-weight: 500;
}

.jobTitle {
    font-size: 100%;
    font-weight: 300;
}

.address {
    margin-top: 10px;
}


/*Layout Lehrerliste .vcard.lehrerliste*/

.filters-button-group {
	margin-bottom: 5px;
}

.vcard .lehrer {
	display: grid;
	margin-right: 15px;
	margin-bottom: 15px;
	width:200px;
	box-shadow: rgba(17, 17, 26, 0.1) 0px 0px 16px;
}

.dark-theme .vcard .lehrer {
	border:1px solid var(--rahmenfarbe);
	box-shadow:none;
}

.vcard .lehrer .figure {
	display: flex;
}

.vcard .lehrer img {
	display: flex;
}

.vcard .lehrer-beschreibung {
	display: flex;
	flex-direction: column;
	min-height: 120px;
	font-size: 90%;
	overflow: hidden;
	padding: 5px;
}

.vcard .lehrer-beschreibung:after {
	content:'';
	height:10px;
	background-color:transparent;
}

.list-unterrichtsfach {
    list-style: none;
	font-weight: 200;
    margin: 0;
    padding: 0;
}


.unterrichtsfach:not(:last-child)::after {
  content:', ';
  padding-right: 5px;
}

.unterrichtsfach {
  display: inline-flex;
}

/*Layout tt_address_flexbox */

.tt_address_flexbox{
	display:flex;
	justify-content:space-between;
	gap:20px;
	flex-wrap:wrap;
}

.tt_address_flexbox .adress-wrap {
  max-width: 200px;
}

.tt_address_flexbox .email {
}

/* =============================================================================
   fs_media_gallery
   ========================================================================== */


.fs-media-gallery .thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 20px;
	justify-content: space-between;
}


.fs-media-gallery .thumb a:link, .fs-media-gallery .thumb a:visited{
	display: block;
	float: none;
	text-align: left;
	width: 100%;
	border: 1px solid var(--rahmenfarbe);
	border-radius:0;
	background: var(--hintergrundfarbe-1);
	transition: all 0.4s ease-in-out;
}

.fs-media-gallery .thumb a:active, .fs-media-gallery .thumb a:hover, .fs-media-gallery .thumb a:focus, .fs-media-gallery .thumb a:focus-visible{
	transform:scale(110%);
	box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
	transition: all 0.4s ease-in-out;
	border: 1px solid var(--akzent);
	background: var(--hauptfarbe);
}

.fs-media-gallery .thumb {
	float: none;
	border: transparent;
	border-radius: 0;
}


@media (min-width: 768px) {
    .fs-media-gallery .thumb  {
      width: 45%;
    }
}
@media (min-width: 1600px) {
    .fs-media-gallery .thumb  {
		width: 30%;
    }
}


.fs-media-gallery .thumb .image {
	display:flex;
}

.fs-media-gallery .thumb .image img {
	width:100%;
}


.fs-media-gallery .pagination ul{
  display: flex;
  list-style: none;
  padding: 0;
}


.fs-media-gallery .description-wrap .name {
  padding: 0;
  margin: 15px 0 10px 0;
  text-align: left;
  font-size: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 600px) {
    .fs-media-gallery .description-wrap .name  {
      font-size: 110%;
    }
}
@media (min-width: 992px) {
    .fs-media-gallery .description-wrap .name  {
      font-size: 120%;
    }
}
@media (min-width: 1200px) {
    .fs-media-gallery .description-wrap .name  {
      font-size: 130%;
    }
}


.fs-media-gallery .thumb .description-wrap {
	display: flex;
	align-items: flex-start;
	border-top: 3px solid  var(--hauptfarbe); 
	transition: all 0.4s ease-in-out;
}

.fs-media-gallery .thumb:hover .description-wrap {
	border-top: 3px solid  var(--link-hover); 
}

.fs-media-gallery .thumb .description {
	display:flex;
	flex-wrap:wrap;
}

.fs-media-gallery .thumb .description .name {
	width:100%;
}

.fs-media-gallery .kamera {
    width: 50px;
    height: 50px;
    padding: 10px 10px 10px 10px;
}

.fs-media-gallery .news-extra-icon {
    margin-right: 5px;
	height: 24px;
}


/*Startseite*/

.fs-media-gallery .lastgallery .img-thumbnail{
    /*folgende Zeilen für Filmrollen-Effekt*/
    height: auto;
    border-top: 10px dashed var(--hintergrundfarbe-2);
    outline: 6px solid var(--hintergrundfarbe-2);
    background: white;
    border-bottom: 10px dashed var(--hintergrundfarbe-2);
    margin: 6px;
    max-width: calc(100% - 12px);
}

.fs-media-gallery .lastgallery_titel {
    display: block;
    position: absolute;
    padding: 15px 0 0 15px;
    color: var(--text-negativ);
    font-size: 150%;
    font-style:italic;
    font-weight: 300;
    text-shadow: 2px 2px 4px #000000;
}

.lastgallery .description-wrap{
    display:flex;
  }


@media (min-width: 400px) {
  .lastgallery .description-wrap .name  {
    max-width: 100%;
  }
}
@media (min-width: 450px) {
  .lastgallery .description-wrap .name  {
    max-width: 100%;
  }
}

.fs-media-gallery .lastgallery .description-wrap .description {
    color: #808080;
    display: inline-block;
    padding: 4px 0;
}

.fs-media-gallery .lastgallery .description-wrap .description .date{
    display: inline-block;
    padding: 0 0 0 4px;
}



/*Einbettung in tx_news*/


.news .fs-media-gallery .thumb {
    width:auto;
    border: 0;
}

.news .fs-media-gallery .thumb a, .news .fs-media-gallery .thumb a:link {
	justify-content: space-between;
	border:1px solid transparent;
	padding:10px;
	width:calc(100% - 20px);
	/* box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px; */
  }
.news .fs-media-gallery .thumb a:hover, .news .fs-media-gallery .thumb a:active, .news .fs-media-gallery .thumb a:visited {
	background:hauptfarbe;
	border:1px solid var(--link-hover);
  }
.news .fs-media-gallery .thumb a:focus-visible {
	border:1px solid transparent;
  }



@media (min-width: 600px) {
	.news .fs-media-gallery .thumb a, .news .fs-media-gallery .thumb a:link {
		display: flex;
		gap: 10px;
	  }
 }

.news .fs-media-gallery h4 {
	padding:0;
	margin:0;
}

.news .fs-media-gallery .thumb .title-wrap {
	display: flex;
	align-items:center;
	border-bottom: 3px solid;	
	border-image: linear-gradient(to left, var(--farbe-1), var(--hauptfarbe) 30%);
	border-image-slice: 1;
}

.news .fs-media-gallery .thumb a:hover .title-wrap, .news .fs-media-gallery .thumb a:focus .title-wrap, .news .fs-media-gallery .thumb a:focus-visible .title-wrap {
	border-bottom: 3px solid;	
	border-image: linear-gradient(to left, var(--farbe-1), var(--link-hover) 30%);
	border-image-slice: 1;
}


.news .fs-media-gallery .thumb a .description-wrap, .news .fs-media-gallery .thumb a:link .description-wrap, .news .fs-media-gallery .thumb a:visited .description-wrap {
	display:block;
	margin-top:0;
	border:0;
	color: var(--link);
	outline: none;
	transition: all 0.4s ease-in-out;
}

.news .fs-media-gallery .thumb a:hover .description-wrap, .news .fs-media-gallery .thumb a:focus .description-wrap, .news .fs-media-gallery .thumb a:focus-visible .description-wrap {
	color: var(--link-hover);
	transition: all 0.4s ease-in-out;
}

@media (min-width: 600px) {
	.news .fs-media-gallery img {
		max-width: 50%;
	}
}


/* =============================================================================
   FSC
   ========================================================================== */

/*Abstände*/
.frame-space-before-extra-small {
  margin-top:0.5em;
}
.frame-space-before-small {
  margin-top:1em;
}
.frame-space-before-medium {
  margin-top:2em;
}
.frame-space-before-large {
  margin-top:3em;
}
.frame-space-before-extra-large {
  margin-top:4em;
}


.frame-space-after-extra-small {
  margin-bottom:0.5em;
}
.frame-space-after-small {
  margin-bottom:1em;
}
.frame-space-after-medium {
  margin-bottom:2em;
}
.frame-space-after-large {
  margin-bottom:3em;
}
.frame-space-after-extra-large {
  margin-bottom:4em;
}


/* to top-Link */

.ce-footer {
    margin-top:20px;
}

.ce-footer a{
    padding-left:22px;
    background: url(../Icons/svg/chevron-up.svg);
    background-repeat:no-repeat;
    background-position:left top;
    background-size:15px;
    font-size:85%;
}


/* Bilder in Textelementen*/

.ce-textpic {
	clear:both;
	display:inline-block;
}

.frame-type-textmedia {
    clear: both;
	display:flow-root;
}


/*Bildrahmen und Unterschrift*/
figure {
  margin: 0;
}

figure{
	margin:0;
}
figcaption{
	color: var(--farbe-3);
	font-size:15px;
	font-weight:600;
	margin:1px 0;
	padding:2px 0;
	width:100%;
	display:block;
	text-align:left;
	border-top:2px solid var(--farbe-3);
	border-image: linear-gradient(to right, var(--hauptfarbe) 80%, var(--farbe-1) 100%);
	border-image-slice: 1;
}

.ce-border img {
	border:1px solid var(--farbe-3);
	width: calc(100% - 2px);
}

/*Ausrichtung Bild im Text*/
.ce-right.ce-intext .ce-gallery{
  float:right;
  margin:0 0 10px 30px;
  display: block;
  width:300px;
}
.ce-left.ce-intext .ce-gallery{
  float:left;
  margin:20px 30px 10px 0;
  display: block;
  width:300px;
}

.ce-textpic .ce-right .ce-intext {
	padding:0;
	width:100%;
}

/*Ausrichtung Bild über dem Text*/

.ce-above{
	display:flex;
	flex-direction:column;
}
	
.ce-left.ce-above .ce-gallery{
	align-self:start;
}

.ce-center.ce-above .ce-gallery{
	align-self:center;
}

.ce-right.ce-above .ce-gallery{
	align-self:end;
}


/*Ausrichtung Bild unter dem Text*/

.ce-below{
	display:flex;
	flex-direction:column;
}

.ce-center.ce-below .ce-gallery{
	align-self:center;
}

.ce-right.ce-below .ce-gallery{
	align-self:end;
}


/*Ausrichtung Bild links neben dem Text*/

.ce-left.ce-nowrap{
	display:flex;
	flex-direction: row;
	gap:15px;
	}
.ce-left.ce-nowrap .ce-gallery{
	max-width:100%;
	}

.ce-left.ce-nowrap .ce-bodytext{
	max-width: 70%;
	}

.ce-left.ce-nowrap .ce-gallery{
	max-width: 30%;
	}

/*Ausrichtung Bild rechts neben dem Text*/
.ce-right.ce-nowrap{
	display:flex;
	flex-direction: row-reverse;
	gap:15px;
	justify-content: space-between;	
	}

.ce-right.ce-nowrap .ce-bodytext{
	max-width: 70%;
	}

.ce-right.ce-nowrap .ce-gallery{
	max-width: 30%;
	}


/*Alle Bilder über oder unter dem Text bei weniger als 600px*/
@media (max-width: 600px) {
	.ce-left.ce-intext .ce-gallery,
	.ce-right.ce-intext .ce-gallery,
	/* .ce-left.ce-above .ce-gallery, */
	/* .ce-center.ce-above .ce-gallery, */
	/* .ce-right.ce-above .ce-gallery, */
	/* .ce-left.ce-below .ce-gallery, */
	/* .ce-right.ce-below .ce-gallery, */
	.ce-above,
	.ce-below,
	.ce-left.ce-nowrap,
	.ce-right.ce-nowrap{
		display:initial;
		float:none;
		width:100%;
		text-align:center;
		margin:0;
	}
 	.ce-column figcaption{
		text-align:center;
	}

	.ce-left.ce-nowrap .ce-bodytext, .ce-right.ce-nowrap .ce-bodytext{
		max-width: 100%;
		text-align:left;
	}
 }

/* Symbol bei Link zur Vergrößerung */
 .image_enlarge {
	display: block;
	position: absolute;
	right: 3px;
	bottom: 3px;
	font-size: 150%;
	padding: 5px;
	background: #ffffffee;
	/* background: var(--white); */
	border-radius: 20%;
}



/* Video */
.ce-media video {
		max-width:100%;
}

.video-embed-item {
    max-width: 100%;
}

/* Breite der Galerie */
@media (min-width: 600px) {
	.tx_gymgbw_gallery_width-33 {
		width:33% !important;
	}
	.tx_gymgbw_gallery_width-50 {
		width:50% !important;
	}
	.tx_gymgbw_gallery_width-66 {
		width:66% !important;
	}
	.tx_gymgbw_gallery_width-100 {
		width:100% !important;
	}
}

/*Trenner*/

.ce-div {
	clear:both;
}



/* Spaltenbreiten je nach eingestellten Columns */

.ce-row {
    display:-webkit-flex;
    display:flex;
	gap: 0 10px;
}

.ce-gallery[data-ce-columns="1"] .ce-column {
        width: 100%;
}

.ce-gallery[data-ce-columns="2"] .ce-column {
        width: 50%;
}

.ce-gallery[data-ce-columns="3"] .ce-column {
        width: 33%;
}

.ce-gallery[data-ce-columns="4"] .ce-column {
        width: 25%;
}

.ce-gallery[data-ce-columns="5"] .ce-column {
        width: 20%;
}



/*Content-Element Tabelle*/

table.ce-table{
    width:100%;
    max-width:100%;
    border-collapse:collapse;
}

.ce-table td, .ce-table th{
    text-align: left;
    vertical-align:top;
    padding:10px 5px;
}

/* Tabellenunterschrift (caption) */

.ce-table caption {
    color:var(--farbe-3);
    font-weight: 300;
    margin: 0 0 10px 0;
    text-align: left;
}

/* Tabellenkopf */
.ce-table thead tr{
    font-size: 110%;
	font-weight:600;
    padding:10px 5px;
    border-bottom: 2px solid var(--hauptfarbe);
}

/* wenn links */
.ce-table tbody tr th {
	border-right: 2px solid var(--hauptfarbe)!important;
	font-weight:bold;
}

/* Tabellenfuß */
.ce-table tfoot th{
    font-size: 110%;
	font-weight:600;
    border-top: 2px solid var(--hauptfarbe);
    border-right: 2px solid var(--hauptfarbe);
}

.ce-table tfoot td{
    font-size: 110%;
	font-weight:600;
    border-top: 2px solid var(--hauptfarbe);
}


/* Tabelle auf mobilen Endgeräten */
@media (max-width: 380px) {
	.ce-table td, .ce-table th{
		float: left;
		width: 80%;
		padding:1em;
	}
	.ce-table tr {
		float: left;
		width: 100%;
		margin-bottom: 20px;
	}
}

/*gestreifte Tabelle,Zebra*/
.ce-table-striped tr:nth-child(even) {background: var(--hintergrundfarbe-1)}
.ce-table-striped tr:nth-child(odd) {background: transparent}
.ce-table-striped thead th{
    background: var(--hintergrundfarbe-1);
}
.ce-table-striped tfoot tr{
    background: var(--hintergrundfarbe-1)!important;
}

/*Tabelle mit einfachen Linien*/
.ce-table-bordered td, .ce-table-bordered th {
	border:1px solid var(--color4-normal);
}

/* DataTables */

.dt-container .dt-layout-row:first-child{
	display: flex;
	justify-content: space-between;
	gap: 20px;
}
.dt-container .dt-layout-row:first-child .dt-search {
	display: flex;
	gap: 10px;
}
.dt-container .dt-layout-row:first-child .dt-layout-row {
	display: flex;
	justify-content: space-between;
	gap: 20px;
}


.dt-layout-cell.dt-start {
	white-space: nowrap;
	display:flex;
	align-items: center;
}
.dt-layout-cell.dt-end {
	white-space: nowrap;
	display:flex;	
	align-items: center;
}

.dt-paging-button.current {
	color:var(--akzent);
	background: var(--footer);
}
.dt-paging-button.disabled {
    color:var(--text-grau);
	background:var(--hintergrundfarbe-2);	
}

select.dt-input {
	padding:7px 30px 7px 7px;
}

table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before {
  position: absolute;
  display: block;
  bottom: 50%;
  content: "▲";
  content: "▲"/"";
}
table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
  position: absolute;
  display: block;
  top: 50%;
  content: "▼";
  content: "▼"/"";
}
table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc, table.dataTable thead > tr > th.dt-ordering-asc, table.dataTable thead > tr > th.dt-ordering-desc,
table.dataTable thead > tr > td.dt-orderable-asc,
table.dataTable thead > tr > td.dt-orderable-desc,
table.dataTable thead > tr > td.dt-ordering-asc,
table.dataTable thead > tr > td.dt-ordering-desc {
  position: relative;
  padding-right: 30px;
}
table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order {
  position: absolute;
  right: 12px;
  top: 0;
  bottom: 0;
  width: 12px;
}
table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
  left: 0;
  opacity: 0.125;
  line-height: 9px;
  font-size: 0.8em;
}
table.dataTable thead > tr > th.dt-orderable-asc:hover, table.dataTable thead > tr > th.dt-orderable-desc:hover,
table.dataTable thead > tr > td.dt-orderable-asc:hover,
table.dataTable thead > tr > td.dt-orderable-desc:hover {
	background: var(--footer);
	color: var(--link-footer-hover);
	-webkit-appearance: none;
}
table.dataTable thead > tr > th.dt-orderable-asc:focus-visible, table.dataTable thead > tr > th.dt-orderable-desc:focus-visible,
table.dataTable thead > tr > td.dt-orderable-asc:focus-visible,
table.dataTable thead > tr > td.dt-orderable-desc:focus-visible {
	background: var(--footer);
	color: var(--link-footer-hover);
	transition: all 0.4s ease-in-out;
	z-index:1001;
}

table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
  opacity: 1;
}
table.dataTable thead > tr > th.sorting_desc_disabled span.dt-column-order:after, table.dataTable thead > tr > th.sorting_asc_disabled span.dt-column-order:before,
table.dataTable thead > tr > td.sorting_desc_disabled span.dt-column-order:after,
table.dataTable thead > tr > td.sorting_asc_disabled span.dt-column-order:before {
  display: none;
}
table.dataTable thead > tr > th:active,
table.dataTable thead > tr > td:active {
  outline: none;
}

div.dt-scroll-body > table.dataTable > thead > tr > th,
div.dt-scroll-body > table.dataTable > thead > tr > td {
  overflow: hidden;
}




/*Frame Akkordeon*/
.ce-accordion {
	border-bottom:1px solid var(--farbe-3);
	border-top:1px solid var(--farbe-3);
}

.ce-accordion + .ce-accordion{
	border-top:0;
}

.ce-accordion-trigger {
	display:flex;
	justify-content: space-between;
	width:100% !important;
	padding: 4px 0;
	margin:0;
	font-size: 110%;
	color: var(--link);
	transition-duration: 0.4s;
	background:transparent;
}

.ce-accordion-trigger:hover {
	color: var(--link-hover);
	background: var(--hauptfarbe);
}

.ce-accordion-trigger.open::after {
	content:"-";
	text-transform: full-width;
	font-size:150%;
	font-weight:400;
	color: var(--link);
	margin: 0 10px;
}
.ce-accordion-trigger.open:hover::after {
	color: var(--link-hover);
} 
   
.ce-accordion-trigger::after {
	content:"+";
	text-transform: full-width;
	font-size:150%;
	font-weight:400;
	color: var(--link);
	margin: 0 10px;
}

.ce-accordion-trigger:hover::after {
	color: var(--link-hover);
}

.ce-accordion-trigger + div, .ce-accordion-trigger + ul, .ce-accordion-trigger + ol {
    display:none;
	border:1px solid transparent;
}

.frame-acc-closed > p, .frame-acc-closed > h1,  .frame-acc-closed > h2, .frame-acc-closed > h3, .frame-acc-closed > h4, .frame-acc-closed > h5, .frame-acc-closed > h6, .frame-acc-closed > div .frame-acc-closed > blockquote, .frame-acc-closed > pre  {
	display: none;
}



/* ######################################## */
/* ### CE-Elemente Gymnasium Großburgwedel */
/* ######################################## */

/* Eyecatcher - CE und News-Ansicht*/

.eyecatcher {
position: relative;
color: var(--text-negativ);    
}

.eyecatcher img { 
	object-fit: cover;
	width: 100%; 
	height: 100%;
}

.eyecatcher-image { 
	height:100%;
}

.eyecatcher-description-wrap {
   position: absolute;
	bottom:3%;
	left:3%;
	margin-top:3%;
	margin-right:3%;
	text-align: start;
	display: flex;
	flex-direction: column;
	max-width:80%;
	gap:10px;
}

.eyecatcher-headline {
    font-size: 120%;
	font-weight: 600;
	line-height:initial;
    display: inline-block;
    padding: 10px 20px;
	margin:0 0 10px;
	width:fit-content;
	background: linear-gradient(30deg, var(--gradient-farbe-3), var(--gradient-farbe-4));
	box-shadow:rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;
	border:0;
	transition: all 0.4s ease-in-out;  
}

	@media (min-width: 600px) {
		.eyecatcher-headline {
			font-size: 145%;
		}
	}
	@media (min-width: 768px) {
		.eyecatcher-headline {
			font-size: 175%;
		}
	}
	@media (min-width: 992px) {
		.eyecatcher-headline {
			font-size: 195%;
		}
	}
	@media (min-width: 1200px) {
		.eyecatcher-headline {
			font-size: 220%;
		}
	}
	@media (min-width: 1600px) {
		.eyecatcher-headline {
			font-size: 250%;
		}
	}

.eyecatcher-teaser {
    font-size: 100%;
	padding: 10px 20px;
	margin:0;
	width: fit-content;
    display: inline-block;
    line-height: 1.2em;
	background: linear-gradient(30deg, var(--gradient-farbe-1), var(--gradient-farbe-2));
	box-shadow:rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;
	border:0;
	transition: all 0.4s ease-in-out;  
}

	@media (min-width: 600px) {
		.eyecatcher-teaser {
			font-size: 110%;
		}
	}
	@media (min-width: 768px) {
		.eyecatcher-teaser {
			font-size: 120%;
		}
	}
	@media (min-width: 992px) {
		.eyecatcher-teaser {
			font-size: 145%;
		}
	}
	@media (min-width: 1200px) {
		.eyecatcher-teaser {
			font-size: 160%;
		}
	}
	@media (min-width: 1600px) {
		.eyecatcher-teaser {
			font-size: 180%;
		}
	}

.eyecatcher .extra {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	padding: 4px 20px;
	margin:0;
	font-size: 100%;
	font-weight: lighter;
	color:var(--text-negativ);
	background: linear-gradient(30deg, var(--gradient-farbe-5), var(--gradient-farbe-6));	
	box-shadow:rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;
}
	@media (min-width: 768px) {
		.eyecatcher .extra {
			font-size: 110%;
			padding: 6px 20px;
		}
	}
	@media (min-width: 992px) {
		.eyecatcher .extra {
			font-size: 115%;
			padding: 8px 20px;
		}
	}
	@media (min-width: 1200px) {
		.eyecatcher .extra {
			font-size: 125%;
			padding: 10px 20px;
		}
	}

a.eyecatcher-link:link, a.eyecatcher-link:visited{
	display:flex;
	flex-direction:column;
	color:var(--text-negativ);
	border:0;
	background:none;
	width:fit-content;
}
a.eyecatcher-link:hover, a.eyecatcher-link:focus, a.eyecatcher-link:active{
	border:0;
	color:var(--link-hover);
	transition: all 0.4s ease-in-out;
}
a.eyecatcher-link:hover .eyecatcher-headline, a.eyecatcher-link:focus .eyecatcher-headline, a.eyecatcher-link:active .eyecatcher-headline, a.eyecatcher-link:hover .eyecatcher-teaser, a.eyecatcher-link:focus .eyecatcher-teaser, a.eyecatcher-link:active .eyecatcher-teaser{
	/* border:1px solid var(--link-hover); */
	border:0;
}




/* Zusätze für Eyecatcher-News */

.eyecatcher .news-category-img {
	position: static;
	display: flex;
	width: fit-content;
	/* padding: 2px 5px; */
	background: linear-gradient(30deg, var(--gradient-farbe-5), var(--gradient-farbe-6));
	box-shadow:rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;
}

.eyecatcher-description-wrap .news-category-img img{
    width: 120px !important;
    background: transparent !important;
}
	@media (min-width: 600px) {
		.eyecatcher-description-wrap .news-category-img img {
			width: 140px !important;
			padding: 2px 8px;			
		}
	}
	@media (min-width: 768px) {
		.eyecatcher-description-wrap .news-category-img img {
			width: 160px !important;
		}
	}
	@media (min-width: 992px) {
		.eyecatcher-description-wrap .news-category-img img {
			width: 180px !important;
			padding: 2px 10px;
		}
	}
	@media (min-width: 1200px) {
		.eyecatcher-description-wrap .news-category-img img {
			width: 200px !important;
		}
	}


/*Sprechblasen*/

.bubble-autor {
	color: var(--farbe-3);
	font-size:110%;
	font-weight:300;
	text-align: left;
	margin: 20px auto 25px;
	max-width: calc(300px - 50px);
	padding: 0px 0px 0px 50px;
}

.bubble
{
  margin: 10px auto 0;
  max-width: 300px;
  padding: 5px 25px;
  text-align: center;
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.3) 2px 2px 2px ;
  border-radius: 50px;
}

.bubble p {
font-family:Kalam;
font-weight: bold;
font-size: 130%;
}


.bubble:after
{
  content: "";
  position: absolute;
  box-shadow: rgba(0, 0, 0, 0.3) 2px 2px 2px ;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  bottom: -14px;
  left: 50px;
  border-width: 15px;
  border-style: solid;
}


.bubble.bg-11:after
{
  border-color: transparent var(--hintergrundfarbe-1) var(--hintergrundfarbe-1) transparent;
}

.bubble.bg-12:after
{
  border-color: transparent var(--warnung-hintergrund) var(--warnung-hintergrund) transparent;
}

.bubble.bg-13:after
{
  border-color: transparent var(--hintergrundfarbe-2) var(--hintergrundfarbe-2) transparent;
}

.bubble.bg-15:after
{
  border-color: transparent var(--tuerkis-hintergrund) var(--tuerkis-hintergrund) transparent;
}

.bubble.bg-16:after
{
  border-color: transparent var(--akzent-hintergrund) var(--akzent-hintergrund) transparent;
}

/* Sprechblase dunkle Version */
.bubble.dark {
	color: var(--text-negativ);
}

.bubble.bg-11.dark:after
{
  border-color: transparent var(--hauptfarbe) var(--hauptfarbe) transparent;
}

.bubble.bg-12.dark:after
{
  border-color: transparent var(--warnung) var(--warnung) transparent;
}

.bubble.bg-13.dark:after
{
  border-color: transparent var(--color4-darker) var(--color4-darker) transparent;
}

.bubble.bg-15.dark:after
{
  border-color: transparent var(--color2-dark) var(--color2-dark) transparent;
}
.bubble.bg-16.dark:after
{
  border-color: transparent var(--akzent) var(--akzent) transparent;
}

/*eckige Sprechblasen*/

.bubble-square-autor {
	color: var(--farbe-3);
	font-size:110%;
	font-weight:300;
	margin:0 0 20px 100px;
}

.bubble-square {
	position: relative;
	padding: 15px 15px;
	border: 0;
	color: var(--text-negativ);
	margin: 20px 15px 15px;
	-webkit-border-radius: 0px;
	-moz-border-radius:0px;
	border-radius: 0px;
}

	@media (min-width: 768px) {
		.bubble-square  {
			padding: 25px 30px;
			margin: 20px 60px 40px;
		}
	}

.bubble-square:after {
	content: ' ';
	position: absolute;
	margin-top:1px;
	width: 0;
	height: 0;
	left: 30px;
	top: 100%;
	border: 14px solid;
}


.bubble-square.bg-11.dark:after
{
  border-color: var(--hauptfarbe) var(--hauptfarbe) transparent transparent;
}

.bubble-square.bg-12.dark:after
{
  border-color: var(--warnung) var(--warnung) transparent transparent;
}

.bubble-square.bg-13.dark:after
{
  border-color: var(--color4-darker) var(--color4-darker) transparent transparent;
}
.bubble-square.bg-15.dark:after
{
  border-color: var(--color2-dark) var(--color2-dark) transparent transparent;
}
.bubble-square.bg-16.dark:after
{
  border-color: var(--akzent) var(--akzent) transparent transparent;
}



/* Citation/Zitat */
.citation {
	color:var(--text-grau);
	background-color: var(--hintergrundfarbe-2);
	border-left: 1px solid var(--color4-lighter);
	max-width:100%;
	padding: 10px 10px 10px 100px;
	margin: 0 0 0 0px;
	background-repeat: no-repeat;
	background-position: top left;
	background-image: url('../Icons/Backgrounds/citation.svg');
	background-size: 90px;
}
.citation p{
	font-weight:300;
}


/* Citation/Zitat über blockquote */
blockquote {
	color:var(--text-grau);
	padding: 0px 0px 0px 80px;
	margin: 0 0 10px 30px;
	background-repeat: no-repeat;
	background-position: top left;
	background-image: url('../Icons/Backgrounds/citation.svg');
	background-size: 90px;
	display: inline-block;
}

blockquote p{
	font-size:120%;
	font-weight:300;
}

sub {
  line-height: 1em;
}

/*Dialog*/

dialog::backdrop {
  background: repeating-linear-gradient(
    45deg,
    rgba(255, 0, 0, 0.2),
    rgba(255, 0, 0, 0.2) 1px,
    rgba(255, 0, 0, 0.3) 1px,
    rgba(255, 0, 0, 0.3) 20px
  );
}



/*Menüs*/

/* Icon für alle Listen-Menüs */
.menu-icon {
    width:25px;
    height:14px;
}


/* Menu CategorizedPages */
.MenuCategorizedPages {
    list-style: none;
    margin-bottom:20px;
}
.MenuCategorizedPages li {
    padding:3px 0 3px 0;
}


/*Seitenabschnitts-Links*/



/* Menü der Unterseiten der ausgewählten Seiten inklusive Inhaltsangabe */

.menuPages{
  margin:0;
  padding:5px;
}

.menuPages li{
  list-style: none;
}

.menuPages-icon {
    width:18px;
    height:13px;
}


/* Icon-Menü ausgewählter Seiten & Icon-Menü der Unterseiten der ausgewählten Seiten */

.ce-SmallMenuIcon, .ce-SmallMenuSubIcon, .ce-MenuIcon, .ce-MenuSubIcon, .ce-RowMenuIcon,  .ce-RowSubMenuIcon, .ce-MenuGallery,  .ce-MenuSubGallery{
  margin-bottom: 6px;
}

.ce-SmallMenuIcon-flexbox, .ce-SmallMenuSubIcon-flexbox, .ce-MenuIcon-flexbox, .ce-MenuSubIcon-flexbox{
  display:-webkit-flex;
  display:flex;
  -webkit-flex-wrap: wrap;
  flex-wrap:wrap;
  gap:10px;
}

.ce-SmallMenuIcon .ce-menu-wrap, .ce-SmallMenuSubIcon .ce-menu-wrap, .ce-MenuIcon .ce-menu-wrap, .ce-MenuSubIcon .ce-menu-wrap {
  width: 100%;
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
  outline: none;
  flex-grow: 1;
  flex-shrink: 1;
}

	@media (min-width: 350px) {
		.ce-MenuIcon .ce-menu-wrap, .ce-MenuSubIcon .ce-menu-wrap  {
			width:calc(50% - 10px);
		}
	}
	@media (min-width: 600px) {
		.ce-MenuIcon .ce-menu-wrap, .ce-MenuSubIcon .ce-menu-wrap  {
			width:calc(33% - 10px);
		}
	}
	@media (min-width: 768px) {
		.ce-MenuIcon .ce-menu-wrap, .ce-MenuSubIcon .ce-menu-wrap  {
			width:calc(25% - 10px);
		}
	}
	@media (min-width: 350px) {
		.ce-SmallMenuIcon .ce-menu-wrap, .ce-SmallMenuSubIcon .ce-menu-wrap {
			width:calc(25% - 10px);
		}
	}
	@media (min-width: 600px) {
		.ce-SmallMenuIcon .ce-menu-wrap, .ce-SmallMenuSubIcon .ce-menu-wrap {
			width:calc(15% - 10px);
		}
	}
	@media (min-width: 768px) {
		.ce-SmallMenuIcon .ce-menu-wrap, .ce-SmallMenuSubIcon .ce-menu-wrap {
			width:calc(10% - 10px);
		}
	}

.ce-SmallMenuIcon .ce-menu-wrap:hover, .ce-SmallMenuSubIcon .ce-menu-wrap:hover, .ce-MenuIcon .ce-menu-wrap:hover, .ce-MenuSubIcon .ce-menu-wrap:hover, .ce-SmallMenuIcon .ce-menu-wrap:focus, .ce-SmallMenuSubIcon .ce-menu-wrap:focus, .ce-MenuIcon .ce-menu-wrap:focus, .ce-MenuSubIcon .ce-menu-wrap:focus  {
  background: var(--hauptfarbe);
  outline: none;
}

.ce-SmallMenuIcon .ce-menu-wrap a:link, .ce-SmallMenuSubIcon .ce-menu-wrap a:link, .ce-MenuIcon .ce-menu-wrap a:link, .ce-MenuSubIcon .ce-menu-wrap a:link, .ce-SmallMenuIcon .ce-menu-wrap a:visited, .ce-SmallMenuSubIcon .ce-menu-wrap a:visited, .ce-MenuIcon .ce-menu-wrap a:visited, .ce-MenuSubIcon .ce-menu-wrap a:visited{
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  background:  var(--hintergrundfarbe-1);
  color: var(--link);
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
  outline: none;
  border:1px solid var(--rahmenfarbe);
}

.ce-SmallMenuIcon .ce-menu-wrap a:hover, .ce-SmallMenuSubIcon .ce-menu-wrap a:hover, .ce-MenuIcon .ce-menu-wrap a:hover, .ce-MenuSubIcon .ce-menu-wrap a:hover, .ce-SmallMenuIcon .ce-menu-wrap a:focus, .ce-SmallMenuSubIcon .ce-menu-wrap a:focus, .ce-MenuIcon .ce-menu-wrap a:focus, .ce-MenuSubIcon .ce-menu-wrap a:focus  {
  background:  var(--hauptfarbe);
  color: var(--akzent);
  outline: none;
  border:1px solid var(--akzent);
}

.ce-RowMenuIcon .ce-menu-wrap a:link, .ce-RowMenuIcon .ce-menu-wrap a:visited, .ce-RowMenuSubIcon .ce-menu-wrap a:link, .ce-RowMenuSubIcon .ce-menu-wrap a:visited{
  display: flex;
  align-items: center;
  width: 100%;
  background:  var(--hintergrundfarbe-1);
  color: var(--link);
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
  outline: none;
  border:1px solid var(--rahmenfarbe);
  margin-bottom:6px;
}
.ce-RowMenuIcon .ce-menu-wrap a:hover, .ce-RowMenuIcon .ce-menu-wrap a:focus, .ce-RowMenuSubIcon .ce-menu-wrap a:hover, .ce-RowMenuSubIcon .ce-menu-wrap a:focus{
  background:  var(--hauptfarbe);
  color: var(--akzent);
  outline: none;
  border:1px solid var(--akzent);
}

.ce-SmallMenuIcon .ce-menu-wrap a:focus-visible, .ce-SmallMenuSubIcon .ce-menu-wrap a:focus-visible, .ce-MenuIcon .ce-menu-wrap a:focus-visible, .ce-MenuSubIcon .ce-menu-wrap a:focus-visible, .ce-RowMenuIcon .ce-menu-wrap a:focus-visible,  .ce-RowMenuSubIcon .ce-menu-wrap a:focus-visible {
  outline: 2px dashed var(--focus-visible);
  outline-offset: 2px;
  border:1px solid var(--akzent);
}

.ce-SmallMenuIcon a:hover, .ce-SmallMenuIcon a:focus, .ce-SmallMenuIcon a:focus-visible, .ce-SmallMenuSubIcon a:hover, .ce-SmallMenuSubIcon a:focus, .ce-SmallMenuSubIcon a:focus-visible, .ce-MenuIcon a:hover, .ce-MenuIcon a:focus, .ce-MenuIcon a:focus-visible, .ce-MenuSubIcon a:hover, .ce-MenuSubIcon a:focus, .ce-MenuSubIcon a:focus-visible, .ce-RowMenuIcon a:hover, .ce-RawMenuIcon a:focus, .ce-RowMenuIcon a:focus-visible,  .ce-RowMenuSubIcon a:hover, .ce-RawMenuSubIcon a:focus, .ce-RowMenuSubIcon a:focus-visible{
	transform:scale(110%);
	box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
	position:relative;
	z-index:777;
}

.ce-RowMenuIcon .ce-menu-wrap .ce-menu-svg-picture, .ce-RowMenuSubIcon .ce-menu-wrap .ce-menu-svg-picture{
	width:40px;
	height:40px;
}

.ce-RowMenuIcon .ce-menu-wrap .ce-menu-text, .ce-RowSubMenuIcon .ce-menu-wrap .ce-menu-text{
	display:flex;
	padding:8px;
	align-items: center;
	gap: 10px;	
}

/* Menü-Galerie in Kachel-Ansicht */

.ce-MenuGallery, .ce-MenuSubGallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(31%, 1fr));
	gap: 20px;
}

.ce-MenuGallery-image {
	position:relative;
}

.ce-MenuGallery-image-description-wrap, .ce-MenuGalleryList-image-description-wrap {
	position: absolute;
	right: 3px;
	bottom: 3px;
	padding: 5px;
	display:flex;
	gap:5px;
}

.ce-MenuGallery-icon, .ce-MenuGallery-date, .ce-MenuGalleryList-icon, .ce-MenuGalleryList-date {
	background: #ffffffee;
	border-radius: 10px;
	padding: 5px;
}

.ce-MenuGallery-icon, .ce-MenuGalleryList-icon{
	font-size: 150%;
}
.ce-MenuGallery-date, .ce-MenuGalleryList-date {
	font-weight:500;
}
.ce-MenuGallery-title, .ce-MenuGalleryList-title{
	font-size: 120%;
}
.ce-MenuGallery-subtitle, .ce-MenuGalleryList-subtitle{
	font-weight: 400;
}

.ce-MenuGallery-item{
	transition-duration: 0.4s;
}

.ce-MenuGallery-item:visited, .ce-MenuGallery-item:active, .ce-MenuGallery-item:hover, .ce-MenuGallery:focus, .ce-MenuGallery:focus-visible {
	transform:scale(110%);
	box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
	position:relative;
	z-index:777;
	/* background: var(--hauptfarbe); */
	border:1px solid var(--link-hover);
}

.ce-MenuGallery-item:hover .ce-MenuGallery-title, .ce-MenuGallery-item:hover .ce-MenuGallery-subtitle {
	margin:0 3px;
	transition-duration: 0.4s;
}

.dark-theme .ce-MenuGallery a:link .ce-MenuGallery-image-description-wrap, .dark-theme .ce-MenuGallery a:visited .ce-MenuGallery-image-description-wrap{
	color:var(--hauptfarbe);
}

.dark-theme .ce-MenuGallery a:focus .ce-MenuGallery-image-description-wrap, .dark-theme .ce-MenuGallery a:hover .ce-MenuGallery-image-description-wrap, .dark-theme .ce-MenuGallery a:focus-visible .ce-MenuGallery-image-description-wrap, .dark-theme .ce-MenuGallery a:active .ce-MenuGallery-image-description-wrap{
	color:var(--link-hover);
}

/* Menü-Ansicht in Listenansicht */


.ce-MenuGalleryList-link {
  display: grid;
  grid-template-columns: 250px auto;
  grid-template-rows: auto 1fr;
  gap: 10px;
  margin-bottom:10px;
}

.ce-MenuGalleryList-image {
position:relative;
grid-row: 1/3;
max-width: 250px;
}

.ce-MenuGalleryList-title {
font-size: 130%;
font-weight: 500;
margin: 10px 10px 5px;
}

.ce-MenuGalleryList-subtitle {
font-size: 110%;
margin: 5px 10px 10px;
}


/* Überpfüfen, ob Rot weg kann */

.frame-layout-bg-rot .ce-MenuIcon .ce-menu-wrap a:link, 
.bg-rot .ce-MenuIcon .ce-menu-wrap a:link,
.frame-layout-bg-rot.ce-MenuSubIcon .ce-menu-wrap a:link,
.bg-rot .ce-MenuSubIcon .ce-menu-wrap a:link{
  background: #efefef;
  color:#750000;
}

.frame-layout-bg-rot .ce-menu-wrap a:hover,
.bg-rot .ce-MenuIcon .ce-menu-wrap a:hover,
.frame-layout-bg-rot .ce-MenuSubIcon .ce-menu-wrap a:hover,
.bg-rot .ce-MenuSubIcon .ce-menu-wrap a:hover,
.frame-layout-bg-rot .ce-MenuIcon .ce-menu-wrap a:focus,
.bg-rot .ce-MenuIcon .ce-menu-wrap a:focus,
.frame-layout-bg-rot  .ce-MenuSubIcon .ce-menu-wrap a:focus,
.bg-rot .ce-MenuSubIcon .ce-menu-wrap a:focus {
  background: #4f0000;
  color:#ffffff;
}

.ce-menu-picture {
        text-align: center;
        padding: 10px;
}

.ce-menu-picture img{
        width: 60px;
        height:auto;
}
      @media (min-width: 350px) {
          .ce-menu-picture img  {
                width: 50px;
          }
      }
      @media (min-width: 768px) {
          .ce-menu-picture img  {
                width: 60px;
          }
      }
      @media (min-width: 992px) {
          .ce-menu-picture img  {
                width: 75px;
          }
      }
      @media (min-width: 1200px) {
          .ce-menu-picture img  {
                width: 90px;
          }
      }

.ce-menu-svg-picture {
  text-align: center;
  width:60px;
  height:60px;
}
      @media (min-width: 350px) {
          .ce-menu-svg-picture  {
                width: 50px;
                height:50px;
          }
      }
      @media (min-width: 768px) {
          .ce-menu-svg-picture  {
                width: 60px;
                height:60px;
          }
      }
      @media (min-width: 992px) {
          .ce-menu-svg-picture  {
                width: 75px;
                height:75px;
          }
      }
      @media (min-width: 1200px) {
          .ce-menu-svg-picture  {
                width: 90px;
                height:90px;
          }
      }

.ce-SmallMenuIcon .ce-menu-picture img, .ce-SmallMenuSubIcon .ce-menu-picture img{
        width: 30px;
        height:auto;
}
      @media (min-width: 350px) {
          .ce-SmallMenuIcon .ce-menu-picture img, .ce-SmallMenuSubIcon .ce-menu-picture img {
                width: 20px;
          }
      }
      @media (min-width: 768px) {
          .ce-SmallMenuIcon .ce-menu-picture img, .ce-SmallMenuSubIcon .ce-menu-picture img {
                width: 30px;
          }
      }
      @media (min-width: 992px) {
          .ce-SmallMenuIcon .ce-menu-picture img, .ce-SmallMenuSubIcon .ce-menu-picture img {
                width: 45px;
          }
      }
      @media (min-width: 1200px) {
          .ce-SmallMenuIcon .ce-menu-picture img, .ce-SmallMenuSubIcon .ce-menu-picture img {
                width: 50px;
          }
      }

.ce-SmallMenuIcon .ce-menu-svg-picture, .ce-SmallMenuSubIcon .ce-menu-svg-picture {
  text-align: center;
  width:30px;
  height:30px;
}
      @media (min-width: 350px) {
          .ce-SmallMenuIcon .ce-menu-svg-picture, .ce-SmallMenuSubIcon .ce-menu-svg-picture  {
                width: 20px;
                height:20px;
          }
      }
      @media (min-width: 768px) {
          .ce-SmallMenuIcon .ce-menu-svg-picture, .ce-SmallMenuSubIcon .ce-menu-svg-picture  {
                width: 30px;
                height:30px;
          }
      }
      @media (min-width: 992px) {
          .ce-SmallMenuIcon .ce-menu-svg-picture, .ce-SmallMenuSubIcon .ce-menu-svg-picture  {
                width: 45px;
                height:45px;
          }
      }
      @media (min-width: 1200px) {
          .ce-SmallMenuIcon .ce-menu-svg-picture, .ce-SmallMenuSubIcon .ce-menu-svg-picture  {
                width: 50px;
                height:50px;
          }
      }

.ce-menu-text {
 		text-align: center;
}

.ce-menu-title {
        font-weight: 400;
        font-size: 24px;
}
        @media (min-width: 350px) {
            .ce-menu-title  {
                  font-size: 18px;
            }
        }
        @media (min-width: 600px) {
            .ce-menu-title  {
                  font-size: 20px;
            }
        }
        @media (min-width: 768px) {
            .ce-menu-title  {
                  font-size: 18px;
            }
        }
        @media (min-width: 992px) {
            .ce-menu-title  {
                  font-size: 20px;
            }
        }
        @media (min-width: 1200px) {
            .ce-menu-title  {
                  font-size:21px;
            }
        }

.ce-SmallMenuIcon .ce-menu-title, .ce-SmallMenuSubIcon .ce-menu-title {
        font-weight: 400;
        font-size: 18px;
		line-height: 1.2em;
}
        @media (min-width: 350px) {
            .ce-SmallMenuIcon .ce-menu-title, .ce-SmallMenuSubIcon .ce-menu-title  {
                  font-size: 12px;
            }
        }
        @media (min-width: 600px) {
            .ce-SmallMenuIcon .ce-menu-title, .ce-SmallMenuSubIcon .ce-menu-title  {
                  font-size: 14px;
            }
        }
        @media (min-width: 768px) {
            .ce-SmallMenuIcon .ce-menu-title, .ce-SmallMenuSubIcon .ce-menu-title  {
                  font-size: 12px;
				  line-height: 1.3em;
            }
        }
        @media (min-width: 992px) {
            .ce-SmallMenuIcon .ce-menu-title, .ce-SmallMenuSubIcon .ce-menu-title  {
                  font-size: 14px;
				  line-height: 1.4em;				  
            }
        }
        @media (min-width: 1200px) {
            .ce-SmallMenuIcon .ce-menu-title, .ce-SmallMenuSubIcon .ce-menu-title  {
                  font-size:16px;
            }
        }


.ce-SmallMenuIcon .ce-menu-subtitle, .ce-SmallMenuSubIcon .ce-menu-subtitle {
		font-weight: 300;
        font-size: 14px;
}
        @media (min-width: 350px) {
            .ce-SmallMenuIcon .ce-menu-subtitle, .ce-SmallMenuSubIcon .ce-menu-subtitle  {
                  font-size: 10px;
            }
        }
        @media (min-width: 600px) {
            .ce-SmallMenuIcon .ce-menu-subtitle, .ce-SmallMenuSubIcon .ce-menu-subtitle  {
                  font-size: 12px;
            }
        }
        @media (min-width: 768px) {
            .ce-SmallMenuIcon .ce-menu-subtitle, .ce-SmallMenuSubIcon .ce-menu-subtitle  {
                  font-size: 10px;
            }
        }
        @media (min-width: 992px) {
            .ce-SmallMenuIcon .ce-menu-subtitle, .ce-SmallMenuSubIcon .ce-menu-subtitle {
                  font-size: 12px;
            }
        }
        @media (min-width: 1200px) {
            .ce-SmallMenuIcon .ce-menu-subtitle, .ce-SmallMenuSubIcon .ce-menu-subtitle {
                  font-size:13px;
            }
        }


.ce-menu-abstract {
        color: #555555;
        padding: 3px 0 0;
}

.ce-menu-icon {
    width:14px;
    height:14px;
}



/* Menü Adventskalender */

.ce-MenuAdvent {
    display:-webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
    -webkit-justify-content: center;
	/* background:url("../Images/Adventskalender/adventskalender.jpg"); */
	/* background-size: cover; */
}


.ce-MenuAdvent h1, .ce-MenuAdvent h2 .ce-MenuAdvent h3, .ce-MenuAdvent h4, .ce-MenuAdvent h5, .ce-MenuAdvent h6{
	font-family: serif;
  border: 0;
  margin:0 -15px 0px -15px;
}

.layout-box .ce-MenuAdvent h1, .layout-box .ce-MenuAdvent h2, .layout-box .ce-MenuAdvent h3, .layout-box .ce-MenuAdvent h4, .layout-box .ce-MenuAdvent h5, .layout-box .ce-MenuAdvent h6 {
    margin: 0 -15px 0px -15px;
}

.ce-MenuAdvent .ce-menu-title {
        font-weight: 300;
        font-size: 30px;
}
        @media (min-width: 350px) {
            .ce-MenuAdvent .ce-menu-title  {
                  font-size: 26px;
            }
        }
        @media (min-width: 768px) {
            .ce-MenuAdvent .ce-menu-title  {
                  font-size: 32px;
            }
        }
        @media (min-width: 992px) {
            .ce-MenuAdvent .ce-menu-title  {
                  font-size: 36px;
            }
        }
        @media (min-width: 1200px) {
            .ce-MenuAdvent .ce-menu-title  {
                  font-size:40px;
            }
        }



.tuerchen {
		color:#ffffff;
		text-shadow: 1px 1px 2px black, 0 0 25px yellow, 0 0 5px red;
		font-size:26px;
}


.tuerchen a:link, .tuerchen a:visited {
	display:-webkit-flex;
  display: flex;
	align-items: center;
  -webkit-align-items: center;
	justify-content: center;
  -webkit-justify-content: center;
	border: solid 2px #3C4941;
	background-color: rgba(138, 196, 253, 0.45);
	margin: 10px;
	width: 100px;
	height: 100px;
	color:#ffffff;
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;

}

.tuerchen a:active {
	display:-webkit-flex;
  display: flex;
	align-items: center;
  -webkit-align-items: center;
	justify-content: center;
  -webkit-justify-content: center;
  text-decoration:none;
}

.tuerchen a:hover, .tuerchen a:focus{
	display:-webkit-flex;
  display: flex;
	align-items: center;
  -webkit-align-items: center;
	justify-content: center;
  -webkit-justify-content: center;
	border: solid 2px #800000;
	background-color: rgba(197, 51, 51, 0.8);
  color:#ffffff;
  text-decoration:none;
}

/* Icon-Menü Megamenü */

.ce-MenuMegamenu {
	list-style:none;
	padding:0;
}

.ce-Menumegamenu .ce-menu-wrap{
  transition-duration: 0.4s;
}

.ce-MenuMegamenu .ce-menu-title  {
	font-size:inherit;
}

.ce-MenuMegamenu .ce-menu-picture  {
	padding:0;
}

.ce-MenuMegamenu .ce-menu-svg-picture  {
	width:28px;
	height:28px;
}

a.menu-megamenu {
	display: flex;
	align-items: center;
	justify-content: start;
	gap:8px;
	border:0;
	width: fit-content;
	padding: 3px;
	margin: 0 0 5px 0;
	background:none;
	transition: all 0.4s ease-in-out;  	
}

a:hover.menu-megamenu, a:focus.menu-megamenu, a:focus-visible.menu-megamenu{
	background:var(--link);
	transition: all 0.4s ease-in-out;  
}
a:focus-visible.menu-megamenu {
	transition:none;
}


.menu-megamenu .ce-menu-text {
	text-align: left;
}
.menu-megamenu .ce-menu-picture {
	display:flex;
}

/* Sitemap */

/* https://github.com/kanyarut/VisualSitemap */


/***** Colors & Sizes *****/
:root {
  --color-primary: var(--color1-normal);
  --color-accent: var(--color1-darker);
  --color-line: var(--color4-normal);

  /* --item-width: 200px; */
  --item-gap: 20px;
}
/***** Vertical Sitemap *****/
.frame-type-menu_sitemap {
  text-align: left;
}
.frame-type-menu_sitemap  * {
  box-sizing: border-box;
}
.frame-type-menu_sitemap ul {
  margin: 0 var(--item-gap);
  list-style: none;
  padding: 0;
}
.frame-type-menu_sitemap ul > li {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  margin: 0 0 calc(var(--item-gap) / 2);
  position: relative;
}
.frame-type-menu_sitemap ul > li:before {
  content: "";
  position: absolute;
  top: 1em;
  height: 3px;
  left: calc(-1 * var(--item-gap) / 2);
  width: calc(var(--item-gap) / 2);
  background: var(--color-line);
}

/* Draw Line */
.frame-type-menu_sitemap ul > li:first-child:before {
  width: var(--item-gap);
  left: calc(-1 * var(--item-gap));
}
.frame-type-menu_sitemap ul li:after {
  content: "";
  position: absolute;
  top: calc(-1 * var(--item-gap));
  left: calc((var(--item-gap) / 2) - var(--item-gap));
  bottom: 0;
  width: 3px;
  background: var(--color-line);
}
.frame-type-menu_sitemap ul li:first-child:after {
  top: 1em;
}
.frame-type-menu_sitemap ul li:last-child:after {
  bottom: auto;
  height: calc(var(--item-gap) + 1em);
}
.frame-type-menu_sitemap ul li:only-child:after {
  display: none;
}

/* Box Item */
.frame-type-menu_sitemap small {
  line-height: 1.5em;
  position: relative;
  font-size: 0.8em;
}
.frame-type-menu_sitemap a {
  line-height: 1.5em;
  display: block;
  text-decoration: none;
  padding: 0.5em;
  width: var(--item-width);
  transition: all 0.4s ease-in-out;  
}
.frame-type-menu_sitemap a, 
.frame-type-menu_sitemap a:visited {
  background: var(--color-primary);
  color:var(--text-negativ);
}
.frame-type-menu_sitemap a:hover, 
.frame-type-menu_sitemap a:active {
  background: var(--color-accent);
  color: var(--akzent);
}


.frame-type-menu_sitemap li li a, 
.frame-type-menu_sitemap li li a:visited {
  background: var(--color1-lighter1);
  color:var(--text-negativ);
}
.frame-type-menu_sitemap li li a:hover, 
.frame-type-menu_sitemap li li a:active {
  background: var(--color-accent);
  color: var(--akzent);
}

.frame-type-menu_sitemap li li li a, 
.frame-type-menu_sitemap li li li a:visited {
  background: var(--color1-lighter2);
  color:var(--text-negativ);
}
.frame-type-menu_sitemap li li li a:hover, 
.frame-type-menu_sitemap li li li a:active {
  background: var(--color-accent);
  color: var(--akzent);
}

.frame-type-menu_sitemap li li li li a, 
.frame-type-menu_sitemap li li li li a:visited {
  background: var(--color1-lighter3);
  color:var(--text-negativ);
}
.frame-type-menu_sitemap li li li li a:hover, 
.frame-type-menu_sitemap li li li li a:active {
  background: var(--color-accent);
  color: var(--akzent);
}

.frame-type-menu_sitemap li li li li li a, 
.frame-type-menu_sitemap li li li li li a:visited {
  background: var(--color1-lighter4);
  color:var(--text-negativ);
}
.frame-type-menu_sitemap li li li li li a:hover, 
.frame-type-menu_sitemap li li li li li a:active {
  background: var(--color-accent);
  color: var(--akzent);
}

.frame-type-menu_sitemap li li li li li li a, 
.frame-type-menu_sitemap li li li li li li a:visited {
  background: var(--color1-lighter5);
  color:var(--text-negativ);
}
.frame-type-menu_sitemap li li li li li li a:hover, 
.frame-type-menu_sitemap li li li li li li a:active {
  background: var(--color-accent);
  color: var(--akzent);
}


/* Responsive */
/* tablet */
@media only screen and (max-width: 768px) {
  .frame-type-menu_sitemap > ul > li > ul > li ul li{
    flex-direction: column;
  }
  .frame-type-menu_sitemap > ul > li > ul > li ul li ul{
    margin-top: calc(var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul > li > ul li:after {
    left: calc(-1 * var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul > li > ul > li li:first-child:before {
    width: calc(var(--item-gap)/2);
    left: calc(-1 * var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul > li > ul > li li:first-child:after{
    top: calc(-1 * var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul > li > ul > li li:only-child:after {
    display: block;
    height: calc(var(--item-gap)/2 + 1em);
  }
}
/* mobile */
@media only screen and (max-width: 576px) {
  .frame-type-menu_sitemap > ul > li ul li{
    flex-direction: column;
  }
  .frame-type-menu_sitemap > ul > li ul li ul{
    margin-top: calc(var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul li:after {
    left: calc(-1 * var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul > li li:first-child:before {
    width: calc(var(--item-gap)/2);
    left: calc(-1 * var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul > li li:first-child:after{
    top: calc(-1 * var(--item-gap)/2);
  }
  .frame-type-menu_sitemap > ul > li > ul > li li:only-child:after {
    display: block;
    height: calc(var(--item-gap)/2 + 1em);
  }
}

/***** End Vertical Sitemap *****/



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




/* Uploads/ Links */

ul.ce-uploads {
    list-style: none;
    padding:10px 0 0 0;
    margin:0;
}

.ce-uploads li{
    display:-webkit-flex;
    display: flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    margin-bottom: 20px;
}

.ce-uploads .upload-file-image{
    margin-right:15px;
}

.ce-description-wrap {
	width:100%;
}

.file-icon {
    width:50px
}

.file-description {
    padding-left: 20px;
}

.ce-uploads-fileName{
    font-weight:bold;
}

.ce-uploads-filesize {
    color:#808080;
}

.ce-uploads-url {
	font-weight: 200;
	font-style: italic;
}

/* =============================================================================
   Mask
   ========================================================================== */






/*Iframe*/
/*Iframe mit Zustimmung*/
.iframe_wrapper {
    background-size: cover;
    position: relative;
}
.iframe_wrapper .iframe_trigger {
    padding: 10px;
    
    height: -webkit-calc( 100% - 20px );
    height: -moz-calc( 100% - 20px );
    height: -o-calc( 100% - 20px );
    height: calc( 100% - 20px );
    
    width: -webkit-calc( 100% - 20px );
    width: -moz-calc( 100% - 20px );
    width: -o-calc( 100% - 20px );
    width: calc( 100% - 20px );
    
	display: flex;
	flex-direction: column;
	justify-content: center;
    background-color: rgba( 239, 239, 239, .6 );
    color: #000;
}
.iframe_wrapper .iframe_layer {
    position: relative;
    display: none;
    height: inherit;
    width: inherit;
    margin: auto;
}
.iframe_wrapper .iframe_layer iframe {
    border: 0px none transparent;
    height: inherit;
    width: inherit;
}

/*Iframe ohne Zustimmung*/
.iframe_einfach{
    background-size: cover;
    position: relative;
}
.iframe_einfach iframe {
    border: 0px none transparent;
    height: inherit;
    width: inherit;
}

/*Soundkacheln/Soundbox*/
/*große vaeriante mit Player*/

.mask-soundbox-wrapper_big audio {display:none;margin:0;}
.mask-soundbox-wrapper_big .song {clear:left; margin:1 0;}
.mask-soundbox-wrapper_big .song input {margin: 0 1em .5em 0;float:left;padding:0;}
.mask-soundbox-wrapper_big .song p {margin:0 0 1.5em 0;}
.mask-soundbox-wrapper_big .song:after {
	content : ".";
	display : block;
	height : 0;
	clear : left;
	visibility : hidden;
}

.mask-soundbox-wrapper_big audio{ margin:0;min-width:0}

@media only screen and (min-width:768px) {
	.mask-soundbox-wrapper_big audio{max-width:100%;}
}

@media only screen 
  and (min-width: 320px) 
  and (max-width: 480px)
  and (-webkit-min-pixel-ratio: 2)
  and (orientation: portrait) {
	.mask-soundbox-wrapper_big audio{max-width:10em;}
}



.mask-soundbox-wrapper_big {
    display: flex;
    flex-wrap: wrap;
}

.mask-soundbox-wrapper_big .mask-soundbox-box {
    margin: 10px;
    position: relative;
	background-color:#e2edf5;
}


.mask-soundbox-wrapper_big  .song input {
	width:150px;
	height:150px;
}

.mask-soundbox-wrapper_big .song:hover {
	background:#00639f;
}

.mask-soundbox-wrapper_big .song:focus-within{
	background:var(--akzent);
}


/*Kleine nur mit mit Kacheln*/

.mask-soundbox-wrapper audio {display:none;margin:0;}
.mask-soundbox-wrapper .song {clear:left}
.mask-soundbox-wrapper .song p {margin:0 0 1.5em 0;}
.mask-soundbox-wrapper .song:after {
	content : ".";
	display : block;
	height : 0;
	clear : left;
	visibility : hidden;
}


.mask-soundbox-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.mask-soundbox-wrapper .mask-soundbox-box {
    margin: 10px;
    padding: 10px;
	position: relative;
	background-color:#e2edf5;
	color:#00639f;
	text-align:center;
	height:150px;
	width: 150px;
	overflow: hidden;
	flex-grow:1;
}

.mask-soundbox-wrapper .mask-soundbox-box:hover canvas{
	background:url('../Icons/Mask/play-button-hover.svg');
}

.mask-soundbox-wrapper  .song canvas {
	width:150px;
	height:100px;
	background:url('../Icons/Mask/play-button.svg');
}

.mask-soundbox-wrapper  .song canvas:hover,
.mask-soundbox-wrapper  .song canvas:focus,
.mask-soundbox-wrapper  .song canvas:active {
	width:150px;
	height:100px;
	background:url('../Icons/Mask/play-button-hover.svg');
	transition-duration: 0.4s;	
}


.mask-soundbox-wrapper .song:focus,
.mask-soundbox-wrapper .song:hover {
	background:#00639f;
	color:var(--akzent);
	transition-duration: 0.4s;	
}

.mask-soundbox-wrapper .song:focus-within{
	background:#00639f;
	color:var(--akzent);
	transition-duration: 0.4s;
}

.mask-soundbox-text{
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	font-size: 130%;
	font-weight: 300;
}



/* =============================================================================
   tx_felogin
   ========================================================================== */

.tx_felogin_fieldset {
	border: 0;
	padding: 15px;
	/* margin: 0 0 20px 0; */
	background:var(--hintergrundfarbe-1);
}

.tx_felogin_fieldset input {
  box-sizing: border-box;
  max-width: 100%;
}
/* =============================================================================
   tx_femanager
   ========================================================================== */

.tx-femanager fieldset {
	border: 0;
	padding: 20px 10px;
	background:var(--hintergrundfarbe-1);	
}

.tx-femanager legend {
  display:none;
}

.tx-femanager .femanager_fieldset {
	border: 0;	
	padding:0 15px;
}


.tx-femanager .radio input
{
  /* width:auto; */
}

.tx-femanager .femanager_submit .controls{
    width:100%;
}

.tx-femanager  .my-2 {
	font-weight: bolder;
	margin: 20px 0;
}

.tx-femanager .category-description {
	margin-left: 1ex;
	font-style: italic;
}

#femanager_field_submit {
	margin: 20px 0;
}

/* femanager */
.femanager_fieldset .has-error:focus .alert .bg-danger {
	display:none
}
.alert.bg-danger button {
	border:1px solid var(--warnung);
	background:var(--warnung-hintergrund)
}



/* =============================================================================
   gemeinsame Auszeichnung für tx_femanager & tx_felogin
   ========================================================================== */

.tx-femanager .control-group, .tx_felogin_fieldset .control-group{
  display: flex;
  margin:15px 0;
}
@media (max-width: 680px) {
    .tx-femanager .control-group, .tx_felogin_fieldset .control-group{
      display: block;
    }
}

.tx-femanager .control-label, .tx_felogin_fieldset .control-label{
    width: 30%;
}
@media (max-width: 680px) {
    .tx-femanager .control-label, .tx_felogin_fieldset .control-label{
      width: 100%;
    }
}

.tx-femanager .controls, .tx_felogin_fieldset  .controls{
    width: 70%;
}
@media (max-width: 680px) {
    .tx-femanager .controls, .tx_felogin_fieldset  .controls{
      width: 100%;
    }
}

/* =============================================================================
   cookies (sb_cookies)
   ========================================================================== */

/*

#tx_cookies {
   background: #ff8700;
   border-bottom: 2px solid #fff;
}
#tx_cookies_inner {
  background:transparent;
}


#tx_cookies button, #tx_cookies input[type="submit"] {
    cursor: pointer;
    width: 200px;
    padding: 10px;
    color: #ffffff;
    background-color: #ff8700;
    border: 1px solid #ffffff;
}

#tx_cookies button:hover, #tx_cookies input[type="submit"]:hover, #tx_cookies button:focus, #tx_cookies input[type="submit"]:focus{
    cursor: pointer;
    color: #ffffff;
    background-color: #ffb664;
}

#tx_cookies #tx_cookies_close {
  width:100px;
}



.cookies_btn, .cookies_btn:visited {
    color: #ffffff;
    background-color: #ff8700;
    border: 2px solid #ffffff;
}

.cookies_btn:focus, .cookies_btn:hover {
    color: #ffffff;
    background-color: #ffb664;
}

*/
/* =============================================================================
   mindshape_cookie_hint
   ========================================================================== */
/*
.cc_container {
	background: #ff8700;
	font-size: 24px;
	padding: 0px 50px 10px;
	border-top: 2px solid #fff;
}

.cc_container .cc_btn{
    margin-top: 15px;
}

.cc_container .cc_btn, .cc_container .cc_btn:visited {
    color: #ffffff;
    background-color: #ff8700;
    border: 2px solid #ffffff;
}

.cc_container .cc_btn, .cc_container .cc_btn:hover {
    color: #ffffff;
    background-color: #ffb664;
}

.cc_container .cc_message {
    color: #ffffff;
	line-height: 1.2em;
}
*/



/* QR-Code-Generator */

.qr-code-generator {
/* width: 500px; */
margin: 0 auto;
}

.qr-code-generator * {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

#qrcode {
width: 128px;
height: 128px;
margin: 0 auto;
text-align: center;
}

#qrcode a {
font-size: 0.8em;
}

.qr-url, .qr-size {
padding: 0.5em;
border: 1px solid #ddd;
border-radius: 2px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.qr-url {
width: 79%;
}

.qr-size {
width: 20%;
}

.generate-qr-code {
display: block;
width: 100%;
margin: 0.5em 0 0;
padding: 0.25em;
font-size: 1.2em;
border: none;
cursor: pointer;
background-color: #e5554e;
color: #fff;
}




/* =============================================================================
   ce-timeline
   ========================================================================== */

.ce-timeline ul.ce-timeline-list {
	font-size:87%;
}

.ce-timeline header {
	border-bottom:3px solid;
}

.ce-timeline ul.ce-timeline-list li {
	background:var(--hintergrundfarbe-1);
	color:var(--textfarbe);
}

.ce-timeline ul.ce-timeline-list li li {
	width: initial;
	padding: initial;
	border: 0;
	position: initial;
	margin: initial;
	clear: both;
	box-shadow: none;
}


.ce-timeline ul.ce-timeline-list li li::before {
  border: 0;
}

.ce-timeline ul.ce-timeline-list li.time {
	box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px, rgba(17, 17, 26, 0.1) 0px 8px 24px, rgba(17, 17, 26, 0.1) 0px 16px 56px;		
  /* text-align: center; */
  /* max-width: 160px; */
  /* margin: 0 48px 0 auto; */
  /* font-size: 1.2rem; */
  font-weight: bold;
	color:var(--textfarbe);
  /* background-color: #fff; */
  padding: 15px;
  border: 1px solid var(--rahmenfarbe);
}


/* =============================================================================
   tx_plainfaq
   ========================================================================== */
/* Listenansicht */
.tx-plain-faq ul {
	list-style: none;
	padding: 0;
}

.tx-plain-faq ul li {
}

.tx-plain-faq ul li a:link, .tx-plain-faq ul li a:visited{
	display: block;
	width: calc(100% - 1.4em);
	background: linear-gradient(var(--hintergrundfarbe-2) 50%, var(--hauptfarbe) 50%);
	padding:0.7em;
	margin-bottom: 0.5em;
	background-size: 100% 210%;
	font-size: 120%;
	overflow:hidden;
}

.tx-plain-faq ul li a:hover, .tx-plain-faq ul li a:active, .tx-plain-faq ul li a:focus{
	background-position: 100% 100%;
}

.tx-plain-faq a .fa-solid {
	margin-right:5px;
}

/* Detailansicht */

.tx-plain-faq .question .fa-solid {
	font-size:130%;
	color:var(--color4-normal);
	padding-right: 20px;
}

.tx-plain-faq .answer-icon .fa-solid, .tx-plain-faq .question-icon .fa-solid{
	font-size:130%;
	color:var(--color4-normal);
}

	@media (min-width: 600px) {
		.tx-plain-faq .image-wrap {
		}
	}

	@media (min-width: 768px) {
		.tx-plain-faq .image-wrap {
			max-width: 250px;
		}
		.tx-plain-faq .answer-wrap, .tx-plain-faq .question-wrap {
			display: flex;
			justify-content: flex-start;
			gap: 20px;
		}
	}

	@media (min-width: 992px) {
		.tx-plain-faq .image-wrap {
			max-width: 350px;
		}
	}

	@media (min-width: 1200px) {
		.tx-plain-faq .image-wrap {
			max-width: 400px;
		}
	}

.tx-plain-faq .file-wrap {
  display: flex;
  gap: 10px;
  margin-top:30px;
}

.tx-plain-faq .file-wrap a{
  font-weight:bold;
}


.tx-plain-faq .category-wrap {
  display: flex;
  gap: 10px;
}

.tx-plain-faq .category {
  background-color: var(--hintergrundfarbe-1);
  padding: 5px;
  border-radius: 5px;
}

.tx-plain-faq .backlink {
  margin-top: 50px;
}

/* =============================================================================
   nur für Screenreader
   ========================================================================== */


.sr-only {
    clip: rect(0 0 0 0);
    clip-path: inset(100%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap; 
    width: 1px;
}


/* =============================================================================
   Druckansicht - print
   ========================================================================== */
.only-print {
  display:none;
}

@page { margin-left:2.5cm;
        margin-right: 2cm; }


@media print
{

  .only-print {
    display:inline;
  }

  .no-print, .no-print *
  {
    display: none !important;
  }

  body {
    font-family: FiraGO;
    background-color:transparent;
	--logo-schwarz:var(--textfarbe); /*schwarz*/
	--logo-blau: transparent;
	--logo-tuerkis: transparent; 
	--hintergrundfarbe-2: var(--color4-light);
	--rahmenfarbe:var(--color4-dark);
  }

  a:link, a:visited{
    color:inherit;
    text-decoration: none;
  }
  a:hover, a:active, a:focus {
    color:inherit;
    text-decoration: none;
  }

  .header {
    background-color: transparent;
  }

  .header-content{
    box-shadow: none;
    background:transparent;
  }

  .header-logo{
    width:10cm;
  }

  header.sticky .header-logo{
	transform: none;
  }

  .hauptnavigation-wrap {
    display:none;
  }

  .breadcrumb-menu {
	padding:0;
  }

  .main-content {
    padding-top:2cm;
  }

  .main-content {
    display:block;
  }

  .submenu-hauptspalte-sidebar, .submenu-hauptspalte-sidebarkurz, .submenu-hauptspalte, .hauptspalte-sidebar, .hauptspalte50-sidebar50 {
	display:block;
  }


  .hauptspalte, .hauptspalte-unten, .submenu, .sidebar {
    padding:0;
  }

  .hauptspalte article {
    text-align: justify;
  }

	.seitennavigation-rechts-wrap {
	  display: none;
}


  footer {
	background: none;
	color: var(--textfarbe);
  }


  /* Boxen für Druck*/

  .frame-box-shaddow-light{
	box-shadow:none;
	border:1px solid var(--rahmenfarbe);
	page-break-inside: avoid;
  }

  .frame-layout-bg-rot,
  .frame-layout-bg-blau,
  .frame-layout-11,
  .frame-layout-bg-warnung,
  .frame-layout-12,
  .frame-layout-bg-grau,
  .frame-layout-13,
  .frame-layout-bg-gruen,
  .frame-layout-14,
  .frame-layout-bg-tuerkis,
  .frame-layout-15,
  .frame-layout-bg-warnung,
  .frame-layout-16,
  .bg-rot,
  .bg-blau,
  .bg-grau,
  .bg-gruen,
  .bg-tuerkis
  {
    background:var(--hintergrundfarbe-2) !important;
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
	page-break-inside: avoid;
  }

  /* Toggle bzw. Accordion beim Drucken geöffnet und Ansicht angepasst*/
  .toggle-container{
    border:0;
  }
  .toggle-headline {
    color: #000000;
    border:0;
  }
  .toggle-headline h2{
    border-bottom:1px solid var(--hintergrundfarbe-2);
  }
  .toggle-content {
    display: block;
  }
  .toggle-icon {
    display: none;
  }

  /* tt-address */
	.vcard .lehrer {
		box-shadow: none;
		border:1px solid var(--rahmenfarbe);
	}


  /* Quellenangaben*/

  .print-source {
      display:inline-block;
      padding: 0 0 0 15px;
  }
  .print-source-title {
    font-weight: bold;
    text-decoration: underline;
  }
  .print-source-subtitle {
    font-weight: bold;
  }
  .print-source-text {
    font-style: italic;
    margin-left:5px;
  }
  .print-source-itemwrap {
    display:flex;
    display:-webkit-flex;
  }
  .print-source-qrcode img {
    width:200px;
    height:200px;
  }

	/* Accordeon immer ausgeklappt im Druck und ohne Icon*/
	.ce-accordion-trigger + div, .ce-accordion-trigger + ul, .ce-accordion-trigger + ol {
		display:block;
	}
	.ce-accordion-trigger::after {
		display:none;
	}



/* Druck Ende */
}






/* Puzzle */

.jigsaw-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}



.jigsaw1, .jigsaw2 {
	display: flex;
	justify-content: center;
	align-items: center;
  margin: 20px;
  position: relative;
  -webkit-border-radius: .5em;
  -moz-border-radius: .5em;
  border-radius: .5em;
  cursor: pointer;
  width: 300px;
  height: 200px;
	transition: 0.5s;
}

.jigsaw1 {
	z-index:602;
}
.jigsaw2 {
	z-index:601;
}

.jigsaw1,
.jigsaw1 span {
 background-color: #0284cf; 
	transition: 0.5s;
}

.jigsaw2,
.jigsaw2 span {
 background-color: var(--hauptfarbe); 
 transition: 0.5s;
}

.jigsaw1:hover,
.jigsaw1:hover .t,
.jigsaw1:hover .r,
.jigsaw1:hover .text,
.jigsaw2:hover,
.jigsaw2:hover .t,
.jigsaw2:hover .r,
.jigsaw2:hover .text {
	background-color: var(--footer);
	color: var(--akzent);
	transition: 0.5s;
}


.jigsaw-wrap .text {
  color: var(--text-negativ);
  font-size: 1.2em;
  text-align: center;
  padding: 10px;
  position: relative;
  background: transparent !important;
}

.jigsaw1 .t, .jigsaw2 .t {
  position: absolute;
  width: 50px;
  height: 75px;
  top: -30px;
  left: 125px;
  border-radius: 25px;
}

.jigsaw1 .r, .jigsaw2 .r {
  position: absolute;
  width: 60px;
  height: 50px;
  top: 75px;
  left: 275px;
  border-radius: 25px;
}

.jigsaw1 .b, .jigsaw2 .b { 
  position: absolute;
  width: 50px;
  height: 70px;
  top: 170px;
  left: 125px;
  border-radius: 25px;
  background-color: var(--hintergrund);
}

.jigsaw1 .l, .jigsaw2 .l { 
  position: absolute;
  width: 70px;
  height: 50px;
  top: 75px;
  left: -35px;
  border-radius: 25px;
  background-color: var(--hintergrund);
}


/* css kreis */

            #kreisOuter{
                position: relative;
                height: 1000px;
                width: 1000px;
				display: flex;
				justify-content: center;
				align-items: center;				
            }
            .kreis-inner{
                position: absolute;
                border: 1px solid black;
                height: 300px;
                width: 300px;
            }




/* https://codepen.io/maddesigns/pen/xxXdQZ */


/* https://www.sarasoueidan.com/blog/inclusively-hiding-and-styling-checkboxes-and-radio-buttons/ */

