:root,
[data-bs-theme=light] { 
	--bs-body-bg: var(--bs-white);
	
	--bs-body-font-family: 'Roboto',  sans-serif;
	--bs-body-font-size: medium;
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.4em; 
	--bs-body-color: var(--bs-dark);
	--bs-body-color-rgb: var(--bs-dark-rgb);
	--bs-body-color-a-rgb: var(--bs-dark-rgb);
		
	--heading-font-family-family: 'Roboto',  sans-serif;
	--bs-heading-color: var(--bs-black);
	--heading-link-color: var(--bs-accent);
	--heading-link-decoration: none;
	--heading-link-hover-color: var(--bs-accent-dark);
	--heading-link-hover-decoration: underline;
	
	--bs-primary:  #ffbb00;
	--bs-primary-rgb: 255, 187, 0;
	--bs-primary-a-rgb: 255, 187, 0;
	--bs-primary-border-subtle: rgba(var(--bs-primary-rgb), 0.5);
	--bs-primary-color: rgba(var(--bs-primary-rgb), 0.75);
	--bs-primary-darker: #8C5D00;
	--bs-primary-darker-rgb: 140, 93, 0;
	--bs-primary-dark: #E09500;
	--bs-primary-dark-rgb: 224, 149, 0;
	--bs-primary-light: #ffd869;
	--bs-primary-light-rgb: 255, 216, 105;
	--bs-primary-lighter: #fff8e5;
	--bs-primary-lighter-rgb: 255, 248, 229;
	--bs-primary-bg: var(--bs-primary);
	--bs-primary-text-emphasis: var(--bs-primary-dark);
	--bs-primary-bg-subtle: var(--bs-primary-light);
	
	--bs-secondary: #4C5A81;
	--bs-secondary-rgb:76, 90, 129;
	--bs-secondary-a-rgb:76, 90, 129;
	--bs-secondary-border-subtle: rgba(var(--bs-secondary-rgb), 0.5);
	--bs-secondary-color: rgba(var(--bs-secondary-rgb), 0.75);
	--bs-secondary-dark: #33426B;
	--bs-secondary-dark-rgb:51, 66, 107;
	--bs-secondary-light: #6274A3;
	--bs-secondary-light-rgb:98, 115, 163;
	--bs-secondary-lighter: #9DA6BC;
	--bs-secondary-lighter-rgb: 157, 166, 188;
	--bs-secondary-bg: var(--bs-secondary);
	--bs-secondary-text-emphasis: var(--bs-secondary-dark);
	--bs-secondary-bg-subtle: var(--bs-secondary-light);
	
	/*--bs-accent: #014a8f;
	--bs-accent-rgb: 1,74,143;
	--bs-accent-a-rgb: 1,74,143;
	--bs-accent-dark: #002A52;
	--bs-accent-dark-rgb: 0, 42, 82;*/
	--bs-accent: #2277aa;
	--bs-accent: #2266b3;
	--bs-accent-rgb: 34, 119, 170;
	--bs-accent-a-rgb: 34, 119, 170;
	--bs-accent-dark: #00479c;
	--bs-accent-dark-rgb: 0, 71, 156;
	--bs-accent-light: #5390CB;
	--bs-accent-light-rgb: 83, 144, 203;
	--bs-accent-lighter: #7EAEDD;
	--bs-accent-lighter-rgb: 126, 174, 221;
	
	/*--bs-light: #eaeff7;
	--bs-light-rgb: 234, 239, 247;*/
	--bs-light: #fff8e5;
	--bs-light-rgb: 255, 248, 229;
	--bs-lighter: #f5f4f1;
	--bs-lighter-rgb: 245, 244, 241;
	
	--bs-invers: #29303f;
	--bs-dark: #29303f;
	--bs-dark-rgb: 41, 48, 63;
	
	/*--bs-gray: #b6bac5;
	--bs-gray-rgb: 182, 186, 197;*/
	--bs-gray-dark: #555260;
	--bs-gray-dark-rgb: 85, 82, 96;
	--bs-gray-light: #ceced3;
	--bs-gray-light-rgb: 206, 206, 211;
		
	--bs-link-color-rgb: var(--bs-accent-rgb);
	--bs-link-color: var(--bs-accent);
	--bs-link-hover-color: var(--bs-black);
	--bs-link-decoration: underline;
	--link-hover-decoration: underline;
	--bs-link-decoration-color: rgba(var(--bs-accent-rgb),.5);
	--bs-link-decoration-hover-color: inherit;
	--link-weight: 500;
	
	--link-parallel-color: var(--bs-accent);
	--link-parallel-hover-color: var(--bs-black);
	--link-parallel-decoration: underline;
	--link-parallel-hover-decoration: underline;
	--link-parallel-decoration-color: rgba(var(--bs-accent-rgb),.5);
	--link-parallel-decoration-hover-color: inherit;
	--link-parallel-weight: 500;
		
	
	--nav-font-family: 'Roboto',  sans-serif;
	--nav-font-weight: 300;
	
	--nav-link-font-family: 'Roboto',  sans-serif;
	--nav-link-font-weight: 900;
	--nav-link-color: var(--bs-black);
	--nav-link-hover-font-weight: 900;
	--nav-link-hover-color: var(--bs-black);
	--nav-link-active-font-weight: 900;
	--nav-link-active-color: var(--bs-primary-dark) !important;
	--nav-link-show-font-weight: 900;
	--nav-link-show-color: var(--bs-black);
	
	--dropdown-font-family: 'Roboto',  sans-serif;
	--dropdown-font-weight: normal;
	--dropdown-color: var(--bs-accent);
	--dropdown-bg: rgba(var(--bs-primary-rgb), 0);
	--dropdown-hover-font-weight: normal;
	--dropdown-hover-color: var(--bs-black);
	--dropdown-hover-bg: rgba(var(--bs-primary-rgb), .3);
	--dropdown-active-font-weight: 600;
	--dropdown-active-color: var(--bs-white);
	--dropdown-active-bg: var(--bs-accent);
	
	--list-padding-t: .4em;
	--list-padding-b: .4em;
	--list-margin-b: 0;
	--list-symbol-color: var(--bs-primary);
	--list-symbol-hover-color: var(--bs-primary-dark);
	--list-symbol-active-color: var(--bs-primary-dark);
	--list-symbol: '\F061';
	--list-symbol-font-family: "Font Awesome 5 Free";
	--list-symbol-font-weight: 900;
	--list-border-color: var(--bs-gray-400);
	--list-border-width: 1px;
	
	--form-control-bg:  #f9f9fb;
	--form-color: rgba(0,0,0, 1) !important;
	--form-color-rgb: rgba(0,0,0, .5) !important;
	--form-bg: rgba(var(--bs-gray-light-rgb), .7);
	--form2-bg: rgba(var(--bs-primary-rgb), .2);

	--bs-border-radius: 0;
	--bs-border-color: var(--bs-gray-400);	
	--bs-border-width: 1px;
	
	--bs-box-shadow: 0 .3rem .5rem rgba(0, 0, 0, .3);
	--bs-box-shadow-sm: 0 .1rem .2rem rgba(0, 0, 0, .4);
	--bs-box-shadow-lg: 0 .75rem 1.5rem rgba(0, 0, 0, .3);
	--bs-box-shadow-inset: inset 1px 1px .3em rgba(0, 0, 0, .3);
	
	--form-control-bg:  #f9f9fb;
	--form-color: rgba(0,0,0, 1) !important;
	--form-color-rgb: rgba(0,0,0, .5) !important;
	--form-bg: rgba(var(--bs-gray-light-rgb), .7);
	--form2-bg: rgba(var(--bs-primary-rgb), .2);
	
	--muted: 'Montserrat',  sans-serif;
	
	--gradient-1: linear-gradient(0deg, rgba(var(--bs-primary-rgb), 1), rgba(var(--bs-secondary-rgb), 1));
	--gradient-2: linear-gradient(45deg, rgba(var(--bs-primary-rgb), 1), rgba(var(--bs-secondary-rgb), 1));
	--gradient-3: linear-gradient(90deg, rgba(var(--bs-primary-rgb), 1), rgba(var(--bs-secondary-rgb), 1));
	--gradient-4: linear-gradient(180deg, rgba(var(--bs-primary-rgb), 1), rgba(var(--bs-secondary-rgb), 1));
	--gradient-5: linear-gradient(270deg, rgba(var(--bs-primary-rgb), 1), rgba(var(--bs-secondary-rgb), 1));
	--gradient-6: linear-gradient(360deg, rgba(var(--bs-primary-rgb), 1) 30%, rgba(var(--bs-secondary-rgb), 1) 80%, rgba(var(--bs-secondary-rgb), 1) 100%);
}



[data-bs-theme=dark] {
	--bs-heading-color: var(--bs-white) !important;
	--bs-border-color: rgba(var(--bs-white-rgb), .4) !important;
	--list-border-color: rgba(var(--bs-white-rgb), .4) !important;
	}
[data-bs-theme=dark],
[data-bs-theme=secondary],
[data-bs-theme=accent] {
	:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) { color: var(--bs-white);}
	}



[data-bs-theme=primary]  {
	--bs-heading-color: color: var(--bs-white) !important;
	--bs-body-color: var(--bs-black);
		
	--bs-primary: var(--bs-primary-lighter);
	--bs-primary-rgb: 255, 248, 229;
	
	--list-symbol-color: rgba(var(--bs-white-rgb),.7);
	--list-symbol-hover-color: var(--bs-white);
	--list-symbol-active-color: var(--bs-white);
	
	--list-border-color: rgba(var(--bs-white-rgb),.5);	
	
	--bs-link-color-rgb: var(--bs-accent-dark-rgb);
	--bs-link-color: var(--bs-accent-dark);
	
	
	:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 					{ color: var(--bs-white);}
	
	.title::before,
	:is(h1:not(:is(.h4,.h5,.h6)),h2:not(:is(.h4,.h5,.h6)),h3:not(:is(.h4,.h5,.h6)),.h1,.h2,.h3):not(.pseudo-none):not(.kacheln)::before,
	h1:not(.title):not(.highlight-title)::before,
	#c-page > h1:not(:is(.c-row *))::before /* H1 Page */,
	#c-page .c-row h1:not(.c-element *)::before /* H1 Container */ { background-color: var(--bs-primary-light); }
}		
.bg-primary[data-bs-theme=primary]  {
	background: rgba(var(--bs-primary-a-rgb),1) !important
}	


/*--------------------------------------------------------------
# General / Aufbau
--------------------------------------------------------------*/
main 								{ padding: 150px 0 0 0; }

main > section,
.start main > section				{ padding: 90px 0; }

@media (max-width: 1400px) {
	main 							{ padding: 140px 0 0 0; }
	
	main > section,
	.start main > section			{ padding: 80px 0; }
	}
@media (max-width: 1200px) {
	main 							{ padding: 130px 0 0 0; }
	
	main > section,
	.start main > section			{ padding: 70px 0; }
	
	.container { 
		min-width: 100%; 
		padding-left: 30px !important; 
		padding-right: 30px !important; 
		}
}
@media (max-width: 992px) {
	main > section,
	.start main > section			{ padding: 60px 0; }
}
@media (max-width: 767px) {
	main							{ padding: 90px 0 0 0; } 
	
	main > section,
	.start main > section			{ padding: 50px 0; }
}
@media (max-width: 575px) {
}
@media (max-width: 480px) {
	.container { 
		padding-left: 25px !important; 
		padding-right: 25px !important; 
		}
}


/*--------------------------------------------------------------
# M aus N
--------------------------------------------------------------	*/
#c-page-mausn {
	background: var(--bs-lighter);
	}
#c-page-mausn li a {
	font-weight: normal
	}
#c-page-mausn .mausn :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5) {
	font-size: clamp(1.3rem, 1.15rem + 0.55vw, 1.8rem);
	padding-bottom: 11px  
	}	
	#c-page-mausn .mausn :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5)::before { 
		height: 6px;
		min-width: 80px
		}	
	@media (max-width: 575px) {
	#c-page-mausn .mausn :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5) { 
		font-size: clamp(1.55rem, 1.35rem + 1vw, 2.5rem); 
		}
	}
  
	
/*--------------------------------------------------------------
# sonstiges
--------------------------------------------------------------	*/
.icon i { 
	color: var(--bs-primary) 
	}

i[class*="-users"]::before  { 
	font-size: 80% 
	}



/*--------------------------------------------------------------
# Typografie
--------------------------------------------------------------	*/
.fw-lighter 	{ font-weight: 200 !important; }
.fw-light 		{ font-weight: 300 !important; }
.fw-normal 		{ font-weight: 400 !important; }
.fw-medium 		{ font-weight: 500 !important; }
.fw-semibold 	{ font-weight: 700 !important; }
.fw-bold 		{ font-weight: 800 !important; }
.fw-bolder 		{ font-weight: 900 !important; }

b 				{ font-weight: 700 }
strong 			{ font-weight: 900 }


ul.navi-parallel li a {
}
ul.navi-parallel li a:hover {
}
		
	
/*--------------------------------------------------------------
# HEADLINES
--------------------------------------------------------------	*/
:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) {
	font-weight: 700;
	letter-spacing: .02em;
	font-family: var(--heading-font-family-family);
	}
:is(h2:not(.h1,.h3,.h4,.h5,.h6),.h2) {
	line-height: 1.2em;
	/*font-size: clamp(1.75rem, 1.55rem + 1vw, 2.7rem);*/
	}
	/*aside :is(h2:not(.h1,.h3,.h4,.h5,.h6),.h2) { font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.7rem); }
	@media (max-width: 767px) {:is(h2,.h2), aside :is(h2,.h2) { font-size: clamp(1.55rem, 1.35rem + 1vw, 2.5rem); }}
	@media (max-width: 575px) {:is(h2,.h2), aside :is(h2,.h2) { font-size: 65% }}*/
	
	#c-page .c-row h2:not(.c-element *), /* H2 Container */
	:is(h1,h3,h4,h5,h6).h2.title,
	h2:not(.h1,.h3,.h4,.h5,.h6).title {
		font-size: clamp(1.85rem, 1.65rem + 1.2vw, 2.8rem);
		font-weight: 800 !important;
		letter-spacing: 0 !important;
		}
	:is(h1,h2,h3,h4,h5,h6).h1.title {
		font-weight: 900 !important;
		}	
	:is(h2,h3,h4,h5,h6,.h2,.h3,.h4,.h5,.h6).title {
		font-weight: 700 !important;
		}

:is(h2:not(.h1,.h3,.h4,.h5,.h6),.h2) 													{ font-size: clamp(1.65rem, 1.45rem + 0.9vw, 2.6rem); }
:is(h3:not(.h1,.h2,.h4,.h5,.h6),.h3) 													{ font-size: clamp(1.45rem, 1.3rem + 0.7vw, 1.95rem); }
:is(h4:not(.h1,.h2,.h3,.h5,.h6),.h4) 													{ font-size: clamp(1.3rem, 1.15rem + 0.55vw, 1.75rem); }
:is(h5:not(.h1,.h2,.h3,.h4,.h6),.h5) 													{ font-size: clamp(1.15rem, 1.05rem + 0.45vw, 1.5rem); }
	
aside :is(h2:not(.h1,.h3,.h4,.h5,.h6),.h2) 												{ font-size: clamp(1.35rem, 1.2rem + 0.7vw, 1.8rem); }
aside :is(h3:not(.h1,.h2,.h4,.h5,.h6),.h3) 												{ font-size: clamp(1.2rem, 1.1rem + 0.6vw, 1.55rem); }
aside :is(h4:not(.h1,.h2,.h3,.h5,.h6),.h4) 												{ font-size: clamp(1.1rem, 1rem + 0.45vw, 1.35rem); }
aside :is(h5:not(.h1,.h2,.h3,.h4,.h6),.h5) 												{ font-size: clamp(1.05rem, 1rem + 0.4vw, 1.25rem); }

@media (max-width: 1400px) {
	:is(h1,.h1):not(.h2,.h3,.h4,.h5,.h6,.title) 	{ font-size: 2.5rem }	
	}
@media (max-width: 1200px) {
	:is(h1,.h1):not(.h2,.h3,.h4,.h5,.h6,.title) 	{ font-size: 2.3rem }	
	}
@media (max-width: 992px) {
	:is(h1,.h1):not(.h2,.h3,.h4,.h5,.h6,.title) 	{ font-size: 2.2rem }	
	}		
@media (max-width: 767px) {
	#c-page .c-row h2:not(.c-element *), /* H2 Container */
	:is(h1,h3,h4,h5,h6).h2.title,
	h2:not(.h1,.h3,.h4,.h5,.h6).title 				{ font-size: clamp(1.75rem, 1.55rem + 1.1vw, 2.7rem); }	
	
	:is(h2:not(.h1,.h3,.h4,.h5,.h6),.h2), aside :is(h2:not(.h1,.h3,.h4,.h5,.h6),.h2) 	{ font-size: clamp(1.65rem, 1.45rem + 1.1vw, 2.6rem); }
	:is(h3:not(.h1,.h2,.h4,.h5,.h6),.h3), aside :is(h3:not(.h1,.h2,.h4,.h5,.h6),.h3) 	{ font-size: clamp(1.45rem, 1.3rem + 0.8vw, 1.95rem); }
	:is(h4:not(.h1,.h2,.h3,.h5,.h6),.h4), aside :is(h4:not(.h1,.h2,.h3,.h5,.h6),.h4) 	{ font-size: clamp(1.3rem, 1.15rem + 0.65vw, 1.7rem); }
	:is(h5:not(.h1,.h2,.h3,.h4,.h6),.h5), aside :is(h5:not(.h1,.h2,.h3,.h4,.h6),.h5) 	{ font-size: clamp(1.15rem, 1.05rem + 0.5vw, 1.45rem); }
	
	:is(h1,.h1):not(.h2,.h3,.h4,.h5,.h6,.title) 	{ font-size: 2rem }
	}
@media (max-width: 575px) {
	#c-page > h1:not(:is(.c-row *)), /* H1 Page */
	#c-page .c-row h1:not(.c-element *), /* H1 Container */
	:is(h1,.h1):not(.h2,.h3,.h4,.h5,.h6).title		{ font-size: 1.85rem; line-height: 1.15em  }
	
	#c-page .c-row h2:not(.c-element *), /* H2 Container */
	:is(h1,h3,h4,h5,h6).h2.title,
	h2:not(.h1,.h3,.h4,.h5,.h6).title				{ font-size: 1.75rem; line-height: 1.15em; letter-spacing: .01em !important; }
	
	:is(h1,.h1):not(.h2,.h3,.h4,.h5,.h6,.title)		{ font-size: 1.85rem; line-height: 1.15em }
	}

:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6).accordion-header {
	padding-bottom: 0 !important;
	margin-bottom:  0 !important
	}


.wrapper-link :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) {
	color: var(--bs-black)
	}
	.wrapper-link:hover :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) {
	color: var(--bs-black);
	text-decoration: underline !important
	}
	.wrapper-link :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):hover {
	color: var(--bs-accent);
	text-decoration: underline !important
	}	
	.wrapper-link :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6).text-accent {
	text-decoration: var(--bs-link-decoration) !important;
	text-decoration-color: var(--bs-link-decoration-color) !important;
	}
	.wrapper-link:hover :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6).text-accent {
	text-decoration-color: var(--bs-accent) !important;
	}
	.wrapper-link :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6).text-accent:hover {
	color: var(--bs-black) !important;
	text-decoration-color: var(--bs-link-decoration-hover-color) !important;
	}	


/* --------- HEADLINE - PSEUDO-BEFORE für H2 + H3 + TITLE --------- */	
:is(h1:not(:is(.h4,.h5,.h6)),h2:not(:is(.h4,.h5,.h6)),h3:not(:is(.h4,.h5,.h6)),.h1,.h2,.h3):not(.pseudo-none):not(.kacheln),
.title,
h1:not(.title):not(.highlight-title),
#c-page > h1:not(:is(.c-row *)), /* H1 Page */
#c-page .c-row h1:not(.c-element *), /* H1 Container */
#c-page .c-row h2:not(.c-element *) /* H2 Container */  {
	position: relative;
	margin-top: 0;
	margin-bottom: 1em;
	}
	.title,
	h1:not(.title):not(.highlight-title),
	#c-page > h1:not(:is(.c-row *)), /* H1 Page */
	#c-page .c-row h1:not(.c-element *), /* H1 Container */
	#c-page .c-row h2:not(.c-element *) /* H2 Container */  {
		display: block;
		text-align: center;         
		text-transform: uppercase;
		letter-spacing: .02em;
		color: var(--bs-black);
		margin-left: auto;
		margin-right: auto;
		font-weight: 900;
		}
:is(h2,h3,h4,h5,h6,.h2,.h3,.h4,.h5,.h6).title	{ 
	text-align: center;
	}		
	
.title::before,
:is(h1:not(:is(.h4,.h5,.h6)),h2:not(:is(.h4,.h5,.h6)),h3:not(:is(.h4,.h5,.h6)),.h1,.h2,.h3):not(.pseudo-none):not(.kacheln):not(.accordion-header)::before,
h1:not(.title):not(.highlight-title)::before,
#c-page > h1:not(:is(.c-row *))::before /* H1 Page */,
#c-page .c-row h1:not(.c-element *)::before /* H1 Container */ {
	content: "";
	position: absolute;
	background-color: var(--bs-primary);
	margin-left: 0 !important;
	bottom: 0;
	max-width: 40%;
	}	
	.pseudo-white::before 		{ background-color: var(--bs-white) !important; }
	.pseudo-black::before 		{ background-color: var(--bs-black) !important; }
	.pseudo-dark::before 		{ background-color: var(--bs-dark) !important; }
	.pseudo-primary::before 	{ background-color: var(--bs-primary) !important; }
	.pseudo-primarylight::before{ background-color: var(--bs-primary-light) !important; }
	.pseudo-secondary::before 	{ background-color: var(--bs-secondary) !important; }
	.pseudo-info::before 		{ background-color: var(--bs-info) !important; }
	.pseudo-gray::before 		{ background-color: var(--bs-gray) !important; }
	.pseudo-danger::before 		{ background-color: var(--bs-danger) !important; }
	.pseudo-warning::before 	{ background-color: var(--bs-warning) !important; }
	.pseudo-success::before 	{ background-color: var(--bs-success) !important; }
	
	.title::before,
	h1:not(.title):not(.highlight-title)::before,
	:is(h1,h2,h3,h3,h4,h5,h6).title.text-center::before,
	.text-center::before,
	section :is(h1,.h1,h2,.h2).title:not(.text-start):not(.text-end),
	#c-page > h1:not(:is(.c-row *))::before /* H1 Page */,
	#c-page .c-row h1:not(.c-element *)::before, /* H1 Container */
	#c-page .c-row h2:not(.c-element *)::before /* H2 Container */  {
		left: 50%;
		transform: translateX(-50%);
		}	
	aside .title::before,
	aside h1:not(.title):not(.highlight-title)::before,
	#c-page aside > h1:not(:is(.c-row *))::before /* H1 Page */,
	#c-page .c-row aside h1:not(.c-element *)::before, /* H1 Container */
	#c-page .c-row h2:not(.c-element *)::before /* H2 Container */ 
	aside :is(h1,h2,h3,h3,h4,h5,h6).title::before {
		left: 50%;
		transform: translateX(-50%);
		}
	:is(h2,h3,h4,h5,h6,.h2,.h3,.h4,.h5,.h6):not(.title):not(.kacheln)::before,
	h1:not(.title):not(.highlight-title)::before,
	.text-start::before		{ 
		left: 0; 
		transform: translateX(0); 
		}	
		.text-end::before	{
		left: auto;
		right: 0;
		transform: translateX(0);
		}
		/*#c-page .c-row h2:not(.c-element *)::before / H2 Container */,
		#c-page .c-row h3:not(.c-element *)::before /* H3 Container */ {
		left: 25px;
		}
	.title:not(.text-start):not(.text-end)::before,
	.text-center::before {
		left: 50%;
		transform: translateX(-50%);
		}					
				
				
	#c-page > h1:not(:is(.c-row *))::after /* H1 Page */,
	#c-page .c-row h1:not(.c-element *)::after, /* H1 Container */
	#c-page .c-row h2:not(.c-element *)::after /* H2 Container */  {
		content: "";
		position: relative;
		display: block;
		height: 30px
		}	
		#c-page > h1:not(:is(.c-row *))::before /* H1 Page */ {
		bottom: 15px
		}	
		#c-page .c-row h1:not(.c-element *)::before, /* H1 Container */
		#c-page .c-row h2:not(.c-element *)::before /* H2 Container */  {
		bottom: 35px
		}	
	
	aside h1.title, aside :is(h2,h3,h4,h5,h6).h1.title {
		text-align: center
		}	
			
	:is(h2,h3,h4,h5,h6,.h2,.h3,.h4,.h5,.h6):not(.title):not(.kacheln),
	h1:not(.title):not(.highlight-title) {
		text-align: left;
		text-transform: none;
		letter-spacing: 0
		}	

	
	h1:not(.title):not(.highlight-title):is(.h2,.h3,.h4,.h5,.h6), 
	h1:not(.title):not(.highlight-title)							{ font-weight: 700 }
	:is(h2,h3,h4,h5,h6).h1:not(.title)													{ font-weight: 700 }
		
	:is(h1,.h1):not(.pseudo-none), :is(h2,h3,h4,h5).h1.title 		{ padding-bottom: 19px }	
	:is(h2,.h2):not(.pseudo-none), :is(h2,h3,h4,h5).h2.title 		{ padding-bottom: 18px }	
	:is(h3,.h3):not(.pseudo-none), :is(h2,h3,h4,h5).h3.title 		{ padding-bottom: 15px }
	:is(h4,.h4).title, :is(h2,h3,h4,h5).h4.title										{ padding-bottom: 14px }
	:is(h5,.h5).title, :is(h2,h3,h4,h5).h4.title										{ padding-bottom: 13px }
	
	aside :is(h1,.h1):not(.pseudo-none), :is(h2,h3,h4,h5).h1.title { padding-bottom: 15px }	
	aside :is(h2,.h2):not(.pseudo-none), :is(h2,h3,h4,h5).h2.title { padding-bottom: 14px }	
	aside :is(h3,.h3):not(.pseudo-none), :is(h2,h3,h4,h5).h3.title { padding-bottom: 11px }
	aside :is(h4,.h4).title, :is(h2,h3,h4,h5).h4.title									{ padding-bottom: 10px }
	aside :is(h5,.h5).title, :is(h2,h3,h4,h5).h4.title									{ padding-bottom: 9px }
	
	:is(h1,.h1)::before, :is(h2,h3,h4,h5).h1.title::before 								{ height: 7px; min-width: 130px }	
	
	:is(h2,.h2)::before, :is(h2,h3,h4,h5).h2.title::before,
	:is(h1,h2,h3,h4,h5):not(.title):is(.h2)::before 									{ height: 7px; min-width: 100px }	
	
	:is(h3,.h3)::before, :is(h2,h3,h4,h5).h3.title::before,
	:is(h1,h2,h3,h4,h5):not(.title):is(.h3)::before 									{ height: 6px; min-width: 80px }
	
	:is(h4,.h4).title::before, :is(h2,h3,h4,h5).h4.title::before,
	:is(h1,h2,h3,h4,h5):not(.title):is(.h4)::before 									{ height: 6px; min-width: 60px }
	
	:is(h5,.h5).title::before, :is(h2,h3,h4,h5).h5.title::before,
	:is(h1,h2,h3,h4,h5):not(.title):is(.h5)::before  									{ height: 6px; min-width: 50px }
		
	:is(h1,h2,h3,h4,h5):not(.title):is(.h4,.h5)::before 								{ display: none }
	
	
	@media (max-width: 992px) 	{ 	
		#c-page > h1:not(:is(.c-row *))::after /* H1 Page */,
		#c-page .c-row h1:not(.c-element *)::after, /* H1 Container */
		#c-page .c-row h2:not(.c-element *)::after /* H2 Container */ 	{ height: 25px }
		
		#c-page > h1:not(:is(.c-row *))::before /* H1 Page */,
		#c-page .c-row h1:not(.c-element *)::before, /* H1 Container */
		#c-page .c-row h2:not(.c-element *)::before /* H2 Container */  { bottom: 25px }	
		
		#c-page > h1:not(:is(.c-row *))::before /* H1 Page */ 			{ bottom: 10px; }			
		
		}
	@media (max-width: 767px) 	{ 	
		#c-page > h1:not(:is(.c-row *))::after /* H1 Page */,
		#c-page .c-row h1:not(.c-element *)::after, /* H1 Container */
		#c-page .c-row h2:not(.c-element *)::after /* H2 Container */ 	{ height: 20px }
			
		#c-page > h1:not(:is(.c-row *))::before /* H1 Page */,
		#c-page .c-row h1:not(.c-element *)::before, /* H1 Container */
		#c-page .c-row h2:not(.c-element *)::before /* H2 Container */ 	{ bottom: 20px }
		
		#c-page > h1:not(:is(.c-row *))::before /* H1 Page */ 			{ bottom: 5px; }			
		}	

		
/* -- PSEUDO ausschließen --*/	
.header-content :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6)									{ padding-bottom: 0 !important; margin-bottom: 0 !important; }	
.debug-box :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6)										{ padding-bottom: .5em !important; margin: -12px -8px .5em -8px !important;  width: calc(100% + 16px)  }	
:is(.header-content,.debug-box,.kacheln) :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6)::before { display: none !important }	


:is(h1,h2,h3,h4,h5,h6):is(.h4,.h5,.h6):not(.title) { padding-bottom: 0 !important;  }
	
	
	

/* --------- SUBLINE --------- */
:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) sub {
	font-weight: 400 !important;
	line-height: 1.25em;
	margin-top: -.05em; 
	margin-bottom: .25em;
	}
	:is(h1,.h1).title sub		{ font-size: 1.8rem; }	
	
	:is(h1,.h1) sub, 
	:is(h2,h3,h4,h5,h6).h1 sub	{ font-size: 1.65rem; }	
	
	:is(h2,.h2) sub, 
	:is(h1,h3,h4,h5,h6).h2 sub	{ font-size: 1.6rem; }	
	
	:is(h3,.h3) sub, 
	:is(h1,h2,h4,h5,h6).h3 sub	{ font-size: 1.5rem; }
	
	:is(h4,.h4) sub, 
	:is(h1,h2,h3,h5,h6).h4 sub	{ font-size: 1.45rem; }	
	
	:is(h5,.h5) sub, 
	:is(h1,h2,h3,h4,h6).h5 sub	{ font-size: 1.4rem ; }
	
	:is(h6,.h6) sub, 
	:is(h1,h2,h3,h4,h5).h6 sub	{ font-size: 1.35rem; }
	
	sub.fs-5 { font-size: 1.3rem !important }
	sub.fs-6 { font-size: 1.2rem !important }
	sub.fs-7 { font-size: 1.1rem !important }
	sub.fs-8 { font-size: 1rem !important }
	sub.fs-9 { font-size: .9rem !important }
	
	@media (max-width: 1200px) 	{ 	
		:is(h1,.h1).title sub		{ font-size: 1.6rem; }	
		}
	@media (max-width: 992px) 	{ 	
		:is(h1,.h1).title sub		{ font-size: 1.45rem; }	
			
		:is(h1,.h1) sub, 
		:is(h2,h3,h4,h5,h6).h1 sub	{ font-size: 1.45rem; line-height: 1.2em; }	
		
		:is(h2,.h2) sub, 
		:is(h1,h3,h4,h5,h6).h2 sub	{ font-size: 1.4rem; }	
		
		:is(h3,.h3) sub, 
		:is(h1,h2,h4,h5,h6).h3 sub	{ font-size: 1.3rem; }
		
		:is(h4,.h4) sub, 
		:is(h1,h2,h3,h5,h6).h4 sub	{ font-size: 1.25rem; }	
		
		:is(h5,.h5) sub, 
		:is(h1,h2,h3,h4,h6).h5 sub	{ font-size: 1.2rem; }
		
		:is(h6,.h6) sub, 
		:is(h1,h2,h3,h4,h5).h6 sub	{ font-size: 1.15rem ; }
		
		sub.fs-5 { font-size: 1.2rem !important }
		sub.fs-6 { font-size: 1.1rem !important }
		sub.fs-7 { font-size: 1rem !important }
		sub.fs-8 { font-size: .95rem !important }
		sub.fs-9 { font-size: .875rem !important }
	}	
	@media (max-width: 767px) 	{ 	
		:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) sub { margin-top: 0 }
		
		:is(h1,.h1).title sub		{ font-size: 1.35rem; }	
			
		:is(h1,.h1) sub, 
		:is(h2,h3,h4,h5,h6).h1 sub	{ font-size: 1.35rem; line-height: 1.2em; }	
		
		:is(h2,.h2) sub, 
		:is(h1,h3,h4,h5,h6).h2 sub	{ font-size: 1.3rem; }	
		
		:is(h3,.h3) sub, 
		:is(h1,h2,h4,h5,h6).h3 sub	{ font-size: 1.2rem; }
		
		:is(h4,.h4) sub, 
		:is(h1,h2,h3,h5,h6).h4 sub	{ font-size: 1.15rem; }	
		
		:is(h5,.h5) sub, 
		:is(h1,h2,h3,h4,h6).h5 sub	{ font-size: 1.1rem; }
		
		:is(h6,.h6) sub, 
		:is(h1,h2,h3,h4,h5).h6 sub	{ font-size: 1.05rem; }
		
		sub.fs-5 { font-size: 1.15rem !important }
		sub.fs-6 { font-size: 1.05rem !important }
		sub.fs-7 { font-size: .95rem !important }
		sub.fs-8 { font-size: .9rem !important }
		sub.fs-9 { font-size: .85rem !important }
	}
	@media (max-width: 575px) 	{ 	
		:is(h1,.h1).title sub		{ font-size: 1.25rem; }	
	}	
		
	

	

[data-bs-theme=dark],
.bg-dark {	
	.title, h1:not(.title):not(.highlight-title) {
	color: var(--bs-white)
	}
}	



/* --------- TEXTAUSRICHTUNG --------- */	
.text-center::before		{ left: 50% ; transform: translateX(-50%) ; }	
.text-start::before 		{ left: 0; transform: none }
.text-end::before			{ left: auto; right: 0; transform: none }	
@media (min-width: 576px) {
	.text-sm-center::before	{ left: 50%; transform: translateX(-50%); }	
	.text-sm-start::before	{ left: 0; transform: none }	
	.text-sm-end::before	{ left: auto; right: 0; transform: none }	
	}
@media (min-width: 768px) {
	.text-md-center::before	{ left: 50%; transform: translateX(-50%); }	
	.text-md-start::before 	{ left: 0; transform: none }	
	.text-md-end::before	{ left: auto; right: 0; transform: none }	
	}
@media (min-width: 992px) {	
	.text-lg-center::before	{ left: 50%; transform: translateX(-50%); }	
	.text-lg-start::before	{ left: 0; transform: none }	
	.text-lg-end::before 	{ left: auto; right: 0; transform: none }	
	}
	



/* --------- TOPLINE --------- */	
.topline {
	color: var(--bs-accent);
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0;
	margin-bottom: .3em;
	line-height: 1.2em
	}
	h1 .topline, .h1 .topline { font-size: 15pt !important; }
	h2 .topline, .h2 .topline { font-size: 14pt !important; }
	h3 .topline, .h3 .topline { font-size: 13pt !important; }
	h4 .topline, .h4 .topline { font-size: 12pt !important; }
	h5 .topline, .h5 .topline { font-size: 11pt !important; }
	
	@media (max-width: 1200px) 	{ 
		h1 .topline, .h1 .topline { font-size: 14.5pt !important; }
		h2 .topline, .h2 .topline { font-size: 13.5pt !important; }
		h3 .topline, .h3 .topline { font-size: 12.5pt !important; }
		h4 .topline, .h4 .topline { font-size: 11.5pt !important; }
		h5 .topline, .h5 .topline { font-size: 10.5pt !important; }
	 } 	
	@media (max-width: 992px) 	{ 
		h1 .topline, .h1 .topline { font-size: 14pt !important; }
		h2 .topline, .h2 .topline { font-size: 13pt !important; }
		h3 .topline, .h3 .topline { font-size: 13pt !important; }
		h4 .topline, .h4 .topline { font-size: 11pt !important; }
		h5 .topline, .h5 .topline { font-size: 10pt !important; }
	 }	
	@media (max-width: 767px) 	{ 
		h1 .topline, .h1 .topline { font-size: 13pt !important; }
		h2 .topline, .h2 .topline { font-size: 12pt !important; }
		h3 .topline, .h3 .topline { font-size: 11pt !important; }
		h4 .topline, .h4 .topline { font-size: 10pt !important; }
		h5 .topline, .h5 .topline { font-size: 9pt !important; }
	}	

	


/* --------- DATUM --------- */	
.datum {
	/*color: var(--bs-black);
	background: rgba(var(--bs-primary-rgb),.4);
	padding: .1em .4em;
	line-height: 1em;*/
	}
	
	
	
	


/*--------------------------------------------------------------
# HEADER-CONTENT
--------------------------------------------------------------*/
.header-content 				{ margin-top: calc(var(--c-page-gap) * 0) !important; }
.header-content.typ3 			{ margin-top: calc(var(--c-page-gap) * -3.75) !important;  }


.header-content.typ3 :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5) { font-size: 270% !important; }
@media (max-width: 1200px) 	{ .header-content.typ3 :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5) { font-size: 250% !important; }	}			
@media (max-width: 992px) 	{ .header-content.typ3 :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5) { font-size: 230% !important; }	}			
@media (max-width: 767px) 	{ .header-content.typ3 :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5) { font-size: 220% !important; }	}			
@media (max-width: 575px) 	{ .header-content.typ3 :is(h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5) { font-size: 200% !important; }	}			
		


@media (max-width: 1400px) {
	.header-content.typ3 			{ margin-top: calc(var(--c-page-gap) * -3.5) !important;  }
	}
@media (max-width: 1200px) {
	.header-content.typ2::before { height: 570px !important  }
	.header-content.typ3 			{ margin-top: calc(var(--c-page-gap) * -3.25) !important;  }
	}		
@media (max-width: 767px) {
	.header-content 			{ margin-top: calc(var(--c-page-gap) * -.25) !important;  }
	.header-content.typ2::before { height: 520px !important  }
	.header-content.typ3 		{ margin-top: calc(var(--c-page-gap) * -3.3) !important; }
	}		
@media (max-width: 575px) {
	.header-content 			{ margin-top: calc(var(--c-page-gap) * .25) !important;  }
	.header-content.typ2::before { height: 490px !important  }
	.header-content.typ3 		{ margin-top: calc(var(--c-page-gap) * -4.5) !important;  }
	}		





/* ============================================================== 
# Zitat
=================================================================== */
q {
	position: relative;
	font-weight: 500;
	/*display: inline-block;
	float: left;
	width: auto;*/
	/*line-height: 1.5em;
	margin-left: 30px;
	margin-top: .5em*/
	}
	q::before,
	q::after {
		content: '\ec52';
		font-family: 'remixicon';  
		/* Text nicht fuer Screenreader doppelt vorlesen */
		speak: none;
		aria-hidden: true;
		color: var(--bs-primary);
		vertical-align: top;
		font-size: 1.05rem;
		/*	
		position: absolute;
		left: -30px;
		top: -10px;
		width: 30px;
		font-size: 1.75rem;
		line-height: 1;
		*/
		}	
	q::after {
		content: '\ec51';
		left: auto;
		top: auto;
		/*bottom: -10px*/
		}	






/*--------------------------------------------------------------
# LISTEN
--------------------------------------------------------------*/
/* --- Anpassung Symbolbreite --- */

main ul:not(.navigationsliste ul):not(.linkliste):not(.downloads):not(.icon-list):not(.icon-md-list):not(.icon-lg-list):not(.list-unstyled):not(.nav-pills):not(.nav-tabs):not(.list-group):not(.filter-menu):not(.filter-items):not(.accordion-list):not(.pagination):not(.dropdown-menu):not(.gallery-list):not(.kacheln) > li:not(.list-group-item):not(.fileicon),
footer ul:not(.navigationsliste ul):not(.linkliste):not(.downloads):not(.icon-list):not(.icon-md-list):not(.icon-lg-list):not(.list-unstyled):not(.nav-pills):not(.nav-tabs):not(.list-group):not(.filter-menu):not(.filter-items):not(.accordion-list):not(.pagination):not(.dropdown-menu):not(.kacheln) > li:not(.list-group-item):not(.fileicon),
ul.list-group-flush:not(.list-unstyled):not(.list-group-numbered) > li.list-group-item,
ul.list-group.list-group-flush:not(.list-unstyled):not(.list-group-numbered) > li.list-group-item {
	left: calc(var(--list-einschub) - 5px) !important;
	width: calc(100% - var(--list-einschub) + 5px) !important;
	}
	
main ul:not(.navigationsliste ul):not(.linkliste):not(.downloads):not(.icon-list):not(.icon-md-list):not(.icon-lg-list):not(.list-unstyled):not(.nav-pills):not(.nav-tabs):not(.list-group):not(.filter-menu):not(.filter-items):not(.accordion-list):not(.pagination):not(.dropdown-menu):not(.gallery-list):not(.kacheln) > li:not(.list-group-item):not(.fileicon)::before,
footer ul:not(.navigationsliste ul):not(.linkliste):not(.downloads):not(.icon-list):not(.icon-md-list):not(.icon-lg-list):not(.list-unstyled):not(.nav-pills):not(.nav-tabs):not(.list-group):not(.filter-menu):not(.filter-items):not(.accordion-list):not(.pagination):not(.dropdown-menu):not(.kacheln) > li:not(.list-group-item):not(.fileicon)::before,
ul.list-group-flush:not(.list-unstyled):not(.list-group-numbered) > li.list-group-item::before,
ul.list-group.list-group-flush:not(.list-unstyled):not(.list-group-numbered) > li.list-group-item::before {
	margin-left: calc((var(--list-einschub) - 5px) * -1) !important;
	width: calc(var(--list-einschub) - 5px) !important;
	}	
	
/* anpassen */
ol {
	padding-left: 5px;
	}

ul.list-group:not(.list-unstyled):not(.list-group-numbered) {
	padding-left: 0 !important
	}	
	ul.list-group:not(.list-unstyled):not(.list-group-numbered) > li:not(.list-group-item) {
	left: calc(var(--list-einschub) - 5px) !important;
	width: calc(100% - var(--list-einschub) + 5px) !important;
	margin-left: 0 !important;
	padding-left: 0 !important
	}
	ul.list-group:not(.list-group-flush):not(.list-unstyled):not(.list-group-numbered) > li:not(.list-group-item)::before {
	margin-left: calc((var(--list-einschub) - 5px) * -1) !important;
	width: calc(var(--list-einschub) - 5px) !important;
	}
	ul.list-group.list-group-flush:not(.list-unstyled):not(.list-group-numbered) > li:not(.list-group-item)::before {
	margin-left: calc((var(--list-einschub) - 5px) * -1) !important;
	width: calc(var(--list-einschub) - 5px) !important;
	}

ul.icon-list > li,
ul.icon-md-list > li,
ul.icon-lg-list > li {
	width: 100% !important;
	}	
/* --- end Anpassung Symbolbreite --- */



.list-group > li.list-group-item.active {
	color: var(--bs-black)
}

address.icon-list a:hover,
address.icon-md-list a:hover,
address.icon-lg-list a:hover {
	color: var(--bs-accent) !important;
	}	
:is(.icon-list,.icon-md-list,.icon-lg-list,.icon) a {
	font-weight: normal !important
	}	



/*--------------------------------------------------------------
# BUTTONS
--------------------------------------------------------------*/
.btn:not(form .btn):not(label.btn):not(button[type=submit].btn):not(.input-group .btn):not(.quicklinks .btn):not(.back-to-top) {
	min-width: 30px;
	min-height: 30px;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1.3em;
	letter-spacing: .01em;
	--bs-btn-padding-y: .7rem;
	color: var(--bs-black);
	text-align: left;
	text-align: center
	}
.btn:not([class*="btn-outline-"]):not(.btn-outline):not(form .btn):not(label.btn):not(button[type=submit].btn):not(.input-group .btn):not(.quicklinks .btn):not(.back-to-top) {
	min-width: 30px;
	min-height: 30px;
	text-transform: uppercase;
	text-align: left;
	font-weight: 600;
	line-height: 1.3em;
	letter-spacing: .01em;
	--bs-btn-padding-y: .7rem;
	color: var(--bs-black);
	border: none
	}	

.btn-primary,
.btn-absenden {
	--bs-btn-color: var(--bs-black);
	--bs-btn-bg: var(--bs-primary-light);
	--bs-btn-border-color: var(--bs-primary-light);
	--bs-btn-hover-color: var(--bs-black);
	--bs-btn-hover-bg: var(--bs-primary);
	--bs-btn-hover-border-color: var(--bs-primary);
	--bs-btn-focus-shadow-rgb: var(--bs-primary-light-rgb);
	--bs-btn-active-color: var(--bs-black);
	--bs-btn-active-bg: var(--bs-primary);
	--bs-btn-active-border-color: var(--bs-primary);
	--bs-btn-disabled-color: var(--bs-black);
	--bs-btn-disabled-bg: var(--bs-primary-light);
	--bs-btn-disabled-border-color: var(--bs-primary-light);
	}
.btn-primary:hover,
.btn.btn-primary:hover,
.btn-absenden:hover,
.btn.btn-absenden:hover {
	box-shadow: none !important;
	color: var(--bs-black) !important;
	background-color: var(--bs-primary) !important;
	}
.btn-absenden {
	font-weight: 500
	}	
form .btn-absenden input.absenden {
	background: none;
	padding: 0;
	outline: none;
	box-shadow: none;
	border: none;
	color: var(--bs-black);
	font-weight: 500
	}
	
		
.btn-info {
	--bs-btn-color: var(--bs-black);
	--bs-btn-bg: var(--bs-accent);
	--bs-btn-border-color: var(--bs-accent);
	--bs-btn-hover-color: var(--bs-black);
	--bs-btn-hover-bg: var(--bs-accent);
	--bs-btn-hover-border-color: var(--bs-accent-dark);
	--bs-btn-focus-shadow-rgb: 11, 172, 204;
	--bs-btn-active-color: var(--bs-black);
	--bs-btn-active-bg: var(--bs-accent);
	--bs-btn-active-border-color: var(--bs-accent-dark);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: var(--bs-black);
	--bs-btn-disabled-bg: var(--bs-accent);
	--bs-btn-disabled-border-color: var(--bs-accent);
	}
		
		
.btn-secondary,
.btn-dark,
.btn-danger {
	color: var(--bs-white) !important;
	}		
.btn:hover {
	color: var(--bs-white) !important;
	}
.btn:not([class*="btn-outline-"]):not(.btn-outline):hover,
.btn:not([class*="btn-outline-"]):not(.btn-outline):focus	{ box-shadow: 0 0 5em rgba(var(--bs-black-rgb), .15) inset; }
		
.btn:not([class*="btn-"]) {
	border-color: var(--bs-gray-400);
	background: var(--bs-gray-400);
	}
.btn:not([class*="btn-"]):hover {
	background: var(--bs-gray);
	border-color: var(--bs-gray);
	}	
.btn-warning:hover,
.btn-info:hover,
.btn-light:hover,
.btn-outline-primary:hover,
.btn-outline-warning:hover,
.btn-outline-light:hover{
	color: var(--bs-black) !important
	}	
.btn:not(.btn-light) i {
	color: var(--bs-white);
	}
			
			
[class*="btn-outline-"],
.btn-outline {
	--btn-c: var(--bs-primary);
	--btn-bg: transparent;
	border-color: var(--btn-c);
	color: var(--bs-body-color);
	background: transparent !important;
	border-width: 3px !important;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	cursor: poRoboto;
	overflow: hidden;
	isolation: isolate;
	transition: color .3s ease, border-color .3s ease;
	}
	.btn-outline			{ --btn-c: var(--bs-gray-400); border-color: var(--bs-gray-400) !important; }
	.btn-outline-default	{ --btn-c: var(--bs-gray) }
	.btn-outline-primary	{ --btn-c: var(--bs-primary) }
	.btn-outline-secondary 	{ --btn-c: var(--bs-secondary) }
	.btn-outline-dark		{ --btn-c: var(--bs-dark) }
	.btn-outline-light		{ --btn-c: rgba(var(--bs-primary-light-rgb), .7); border-color: var(--btn-c) !important }
	.btn-outline-success	{ --btn-c: var(--bs-success) }
	.btn-outline-danger		{ --btn-c: var(--bs-danger) }
	.btn-outline-warning	{ --btn-c: var(--bs-warning) }
	.btn-outline-info		{ --btn-c: var(--bs-accent); border-color: var(--bs-accent) !important;  }
	
	
[class*="btn-outline-"]::before,
.btn-outline::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--btn-c);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .3s ease;
	z-index: -1;
	}
	[class*="btn-outline-"]:hover::before,
	[class*="btn-outline-"]:focus-visible::before,
	.btn-outline:hover::before,
	.btn-outline:focus-visible::before {
	transform: scaleX(1);
	}
	.btn-outline::before,
	.btn-outline:hover::before {
	background: var(--bs-gray-400) !important;
	}
	@media (prefers-reduced-motion: reduce){
	[class*="btn-outline-"],
	[class*="btn-outline-"]::before,
	.btn-outline,
	.btn-outline::before { transition: none; }
	}
	
[class*="btn-outline-"] i 				{ color: var(--btn-c) !important }	
[class*="btn-outline-"]:hover i 		{ color: var(--bs-white) !important }
.btn-outline:hover						{ color: var(--bs-black) !important }

.btn-outline-default i 					{ color: var(--bs-primary) !important }	
.btn-outline-light:hover i 				{ color: var(--bs-body-color) !important }
.btn-outline-dark:hover i 				{ color: var(--bs-primary) !important }	

.bg-dark > .btn-outline-dark,
.bg-dark > .btn-outline-dark i 			{ --btn-c: var(--bs-white) }

.bg-dark > .btn-outline-dark:hover 		{ border-color: var(--bs-white) !important  }
.bg-dark > .btn-outline-dark:hover i 	{ color: var(--bs-invers) !important }	


[data-bs-theme=dark],
.bg-dark {	
	.btn-dark						{ background: rgba(var(--bs-white-rgb), .3); color: var(--bs-white) !important  }
	.btn-dark i						{ color: var(--bs-white) !important  }
	.btn-outline-dark:hover i		{ color: var(--bs-primary) !important }
	
	.btn-light						{ background: rgba(var(--bs-white-rgb), .6); color: var(--bs-black) !important  }
	.btn-light i					{ color: var(--bs-black) !important  }
		
	[class*="btn-outline-"] 		{ color: var(--bs-white) !important }
	[class*="btn-outline-"]:hover 	{ color: var(--bs-invers) !important  }
	
	.btn-outline-secondary 			{ --btn-c: var(--bs-secondary-light) !important }
	.btn-outline-secondary:hover	{ border-color: var(--bs-secondary-light) !important }
	.btn-outline-secondary:hover i	{ color: var(--bs-white) !important }
	
	.btn-outline-default:hover,
	.btn-outline-secondary:hover,
	.btn-outline-danger:hover 		{ color: var(--bs-white) !important}
	
	.btn-outline-light				{ --btn-c: rgba(var(--bs-light-rgb), .9);  }
	.btn-outline-light:hover 		{ color: var(--bs-invers) !important  }
	.btn-outline-light:hover i 		{ color: var(--bs-invers) !important  }
	
	.bg-white > [class*="btn-outline-"],
	.bg-light > [class*="btn-outline-"] 		{ color: var(--bs-invers) !important }
	
	.bg-white > [class*="btn-outline-"]:hover,
	.bg-light > [class*="btn-outline-"]:hover 	{ color: var(--bs-white) !important  }
	
	.bg-white > .btn-outline-light,
	.bg-light > .btn-outline-light 		{ color: var(--bs-invers) !important; --btn-c: rgba(var(--bs-primary-light-rgb), .7);  }
	.bg-white > .btn-outline-light:hover,
	.bg-light > .btn-outline-light:hover{ color: var(--bs-invers) !important  }
	
	.bg-white > .btn-outline-default,
	.bg-light > .btn-outline-default 		{ color: var(--bs-invers) !important; --btn-c: rgba(var(--bs-gray-rgb), 1) !important;  }
	.bg-white > .btn-outline-default:hover,
	.bg-light > .btn-outline-default:hover	{ border-color: rgba(var(--bs-gray-rgb), 1) !important  }
	
	.bg-white > .btn-outline-dark,
	.bg-light > .btn-outline-dark 			{ color: var(--bs-invers) !important; --btn-c: var(--bs-invers);  }
	.bg-white > .btn-outline-dark:hover,
	.bg-light > .btn-outline-dark:hover		{ border-color: var(--bs-invers) !important;  }
	}
		

.icon-link  {
	text-transform: uppercase;
	font-weight: bold;
	font-family: var(--muted);
	font-size: .95rem
	}
.icon-link::after  {
	color: var(--bs-primary);
	font-size: 1.7rem;
	font-weight: normal
	}


.btn-outline-dark:hover,
.btn-outline-dark:focus 	{ color: #fff !important }

.btn-outline-dark:hover::before,
.btn-outline-dark:focus-visible::before {
color: #fff !important 
}

/* --------- BILDER	
 ================================================================ */	
 .img-thumbnail {
	padding: 2px;
	border: 1px solid rgba(var(--bs-black-rgb),.15);
	background: rgba(var(--bs-white-rgb),.5);
	}
	
.bildrahmenmitte:not(.figure-img.bildrahmenmitte),
.bildrahmenmitte-nb:not(.figure-img.bildrahmenmitte-nb),
.bildunterschrift-bildrahmenmitte .bildrahmenmitte:not(.figure-img.bildrahmenmitte),
.bildunterschrift-bildrahmenmitte-nb .bildrahmenmitte-nb:not(.figure-img.bildrahmenmitte-nb) {
	margin-bottom: 2em !important;
	}
.bildrahmenrechts:not(.figure-img.bildrahmenrechts),
.bildrahmenrechts-nb:not(.figure-img.bildrahmenrechts-nb),
.bildrahmenlinks:not(.figure-img.bildrahmenlinks),
.bildrahmenlinks-nb:not(.figure-img.bildrahmenlinks-nb) {
	width: 50% !important;
	margin-bottom: 1em !important;
	}	
	.bildrahmenlinks:not(.figure-img.bildrahmenlinks),
	.bildrahmenlinks-nb:not(.figure-img.bildrahmenlinks-nb) {
		float: left;
		margin-right: 30px !important;
	}	
	.bildrahmenrechts:not(.figure-img.bildrahmenrechts),
	.bildrahmenrechts-nb:not(.figure-img.bildrahmenrechts-nb) {
		float: right;
		margin-left: 45px !important;
	}	

.figure.bildunterschrift-bildrahmenmitte,
.figure.bildunterschrift-bildrahmenmitte-nb {
	width: 100%;
	margin: 0 !important;
	margin-bottom: 2em !important;
	}
.figure.bildunterschrift-bildrahmenlinks,
.figure.bildunterschrift-bildrahmenlinks-nb,
.figure.bildunterschrift-bildrahmenrechts,
.figure.bildunterschrift-bildrahmenrechts-nb {
	margin: 0 !important;
	margin-bottom: 1em !important;
	}
.figure.bildunterschrift-bildrahmenlinks,
.figure.bildunterschrift-bildrahmenlinks-nb {
	margin-right: 30px !important
	}
.figure.bildunterschrift-bildrahmenrechts,
.figure.bildunterschrift-bildrahmenrechts-nb {
	margin-left: 45px !important
	}

.figure.bildunterschrift-bildrahmenrechts .figure-caption.bildunterschrift,
.figure.bildunterschrift-bildrahmenrechts-nb .figure-caption.bildunterschrift {
	text-align: left
}


@media (max-width:992px){
	.bildrahmenlinks:not(.figure-img.bildrahmenlinks),
	.bildrahmenlinks-nb:not(.figure-img.bildrahmenlinks-nb),
	.figure.bildunterschrift-bildrahmenlinks,
	.figure.bildunterschrift-bildrahmenlinks-nb {
		margin-right: 20px !important;
		}	
	.bildrahmenrechts:not(.figure-img.bildrahmenrechts),
	.bildrahmenrechts-nb:not(.figure-img.bildrahmenrechts-nb),
	.figure.bildunterschrift-bildrahmenrechts,
	.figure.bildunterschrift-bildrahmenrechts-nb  {
		margin-left: 35px !important;
		}	
}
/*
@media (max-width:575px){
	.bildrahmenlinks:not(.figure-img.bildrahmenlinks),
	.bildrahmenlinks-nb:not(.figure-img.bildrahmenlinks-nb),
	.figure.bildunterschrift-bildrahmenlinks,
	.figure.bildunterschrift-bildrahmenlinks-nb {
		margin-right: 20px !important;
		}	
	.bildrahmenrechts:not(.figure-img.bildrahmenrechts),
	.bildrahmenrechts-nb:not(.figure-img.bildrahmenrechts-nb),
	.figure.bildunterschrift-bildrahmenrechts,
	.figure.bildunterschrift-bildrahmenrechts-nb  {
		margin-left: 30px !important;
		}	
}
*/

		
/* --------- Platzhalter */		
.bg-placeholder { background-color: rgba(var(--bs-lighter-rgb), 1);}					
/* --------- end Platzhalter -------- */








/*--------------------------------------------------------------
# HIGHLIGHT
--------------------------------------------------------------*/
#highlight { 
	background: var(--bs-dark)
	}	

.carousel-item::after 			{ background: rgba(var(--bs-black-rgb), 0); }
.dark .carousel-item::after 	{ background: rgba(var(--bs-dark-rgb), .65); }

		
#highlight.ratio		{ aspect-ratio: 21 / 6 !important; max-height: 1000px !important  
}	
@media (max-width: 992px) {
	#highlight.ratio	{ aspect-ratio: 21 / 9 !important; margin-top: 0;  }
}
@media (max-width: 767px) {
	#highlight.ratio,
	.header-content .bildrahmenmitte-wrapper,
	.header-content .bildunterschrift-bildrahmenmitte-nb,
	.header-content .bildunterschrift-bildrahmenrechts,
	.header-content .bildunterschrift-bildrahmenrechts-nb,
	.header-content .bildunterschrift-bildrahmenlinks,
	.header-content .bildunterschrift-bildrahmenlinks-nb,
	.header-content .figure,
	.header-content figure,
	.header-content img	{ aspect-ratio: 21 / 11 !important;  }
}
@media (max-width: 575px) {
	#highlight.ratio,
	.header-content .bildrahmenmitte-wrapper,
	.header-content .bildunterschrift-bildrahmenmitte-nb,
	.header-content .bildunterschrift-bildrahmenrechts,
	.header-content .bildunterschrift-bildrahmenrechts-nb,
	.header-content .bildunterschrift-bildrahmenlinks,
	.header-content .bildunterschrift-bildrahmenlinks-nb,
	.header-content .figure,
	.header-content figure,
	.header-content img	{ aspect-ratio: 21 / 12 !important;  }
}

	
@media (min-width: 1200px) {
#highlight .container { 
	padding-left: calc(var(--bs-gutter-x) * 0.5);
	padding-right:calc(var(--bs-gutter-x) * 0.5);
	}
}


.carousel-control-prev, 
.carousel-control-next {
	background: none;
	font-size: 50px;
	opacity: .8 !important;
	}	
	.carousel-control-prev:hover, 
	.carousel-control-next:hover {
	opacity: 1 !important;
	background: none
	}
	.carousel-control-prev-icon::before,
	.carousel-control-next-icon::before {
	color: var(--bs-gray-400) !important;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .2)
	}
	.carousel-control-prev:hover .carousel-control-prev-icon::before, 
	.carousel-control-next:hover .carousel-control-next-icon::before {
	color: var(--bs-primary) !important;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .3)
	}
	@media (max-width: 1400px) { 
		.carousel:hover .carousel-control-prev 	{ left: 5px; }
		.carousel:hover .carousel-control-next 	{ right: 5px; }
		.carousel-control-prev, 
		.carousel-control-next { width: 45px; height: 45px; font-size: 35px; }
	}
	@media (max-width: 992px) { 
		.carousel:hover .carousel-control-prev 	{ left: 0; }
		.carousel:hover .carousel-control-next 	{ right: 0; }
	}
	@media (max-width: 575px) { 
		.carousel:hover .carousel-control-prev 	{ left: -5px; }
		.carousel:hover .carousel-control-next 	{ right: -5px; }
		.carousel-control-prev, 
		.carousel-control-next { width: 35px; height: 35px; font-size: 30px; }
	}

.carousel-item a.stretched-link { 
	transition: all .4s ease;
	}
	.carousel-item a.stretched-link:hover .carousel-img 			{ opacity: .8; transition: all .4s ease-in-out; }
	
	.carousel-item .caption-content									{ background: rgba(var(--bs-white-rgb), .85) !important; }
	.carousel-item a.stretched-link .caption-content				{ background: rgba(var(--bs-white-rgb), .85) !important; }
	.carousel-item a.stretched-link:hover .caption-content			{ background: rgba(var(--bs-white-rgb), 1) !important; }
	.carousel-item a.stretched-link:hover .caption-content:hover	{ background: rgba(var(--bs-white-rgb), 1) !important; box-shadow: none}
	
	.carousel-item .highlight-title 								{ color: var(--bs-dark) !important; }
	.carousel-item a.stretched-link .highlight-title 				{ color: var(--bs-dark) !important; }
	.carousel-item a.stretched-link:hover .highlight-title 			{ color: var(--bs-black) !important;}
	.carousel-item a.stretched-link .caption-content:hover .highlight-title	{ color: var(--bs-black) !important;}
	.carousel-item a.stretched-link:hover .highlight-title:hover 	{ color: var(--bs-black) !important; text-decoration: none; }
	
	.carousel-item .lead 											{ color: rgba(var(--bs-dark-rgb), 1) !important; }
	.carousel-item a.stretched-link .lead 							{ color: rgba(var(--bs-dark-rgb), 1) !important; }
	.carousel-item a.stretched-link:hover .lead 					{ color: rgba(var(--bs-black-rgb), 1) !important; }
	.carousel-item a.stretched-link .caption-content:hover .lead	{ color: rgba(var(--bs-black-rgb), 1) !important; }
	.carousel-item a.stretched-link:hover .lead:hover 				{ color: rgba(var(--bs-black-rgb), 1) !important; }


.carousel-inner  {
	}	
.carousel-item  {
	}	
.carousel-caption  {
	width: auto !important;
	margin: 0 auto !important;
	padding: 0 !important;
	left: 0 !important;
	right: 0 !important;
	}
	.carousel-caption > .container  {
		padding: 0 !important;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		min-width: 100%;
		margin: 0 !important;
	}
	.carousel-caption .caption-content  {
		padding: 20px !important;
		text-align: left !important;
		height: 100%;
		display: flex !important;
		justify-content: center;
		align-items: center;
		gap: 3px;
		box-shadow: var(--bs-box-shadow-sm) !important;
		width: auto;
		height: auto;
		max-width: 40%;
		text-align: center !important;
		/*clip-path: polygon(
			0 0,        * links oben *
			100% 0,     * rechts oben (breit) *
			90% 100%,   * rechts unten (schmaler) *
			0 100%      * links unten *
		);*/
	}
	
.carousel-caption .highlight-title {
	margin: 0 !important;
	padding: 0 !important;
	font-weight: 800 !important;
	letter-spacing: 0.01em !important;
	line-height: 1.15em !important;
	text-transform: uppercase;
	font-size: 190%;
	
	hyphens: none !important;
	-webkit-hyphens: none !important;
	}
	.carousel-caption .highlight-title::before {
	display: none
	}
	.carousel-caption .lead {
	margin: 0 !important;
	font-size: 130%;
	line-height: 1.3em;
	font-weight: 400
	}
	.carousel-caption .btn {
	margin-top: .5em !important;
	align-self: center !important;
	padding: .5em .7em .4em .7em !important; 
	border-color: var(--bs-primary) !important;
	color: var(--bs-black) !important;
	background: transparent !important;
	}	
	.carousel-caption .btn:hover {
	border-color: var(--bs-primary) !important;
	color: var(--bs-black) !important
	}	
	.btn-outline::before {
		background: var(--bs-primary);
		}
	.carousel-caption .btn:hover::before {
		background-color: var(--bs-primary) !important;
		}
	.carousel-caption .btn:not(.caption-content .btn):not(.w-100) { /* sitzt nicht in .caption-content */
	align-self: center !important;
	margin-bottom: 40px !important;
	background: rgba(var(--bs-white-rgb),.8) !important;
	box-shadow: var(--bs-box-shadow-sm)
	}
	

	@media (max-width: 1800px) { 
		.carousel-caption .caption-content	{  }
		.carousel-caption .highlight-title	{ font-size: 180% }
		.carousel-caption .lead 			{ font-size: 125% }	
	}	
	@media (max-width: 1400px) { 
		.carousel-caption .caption-content	{ padding: 15px !important; }
		.carousel-caption .highlight-title	{ font-size: 170% }
		.carousel-caption .lead 			{ font-size: 120%  }		
		.carousel-caption .btn 				{ font-size: 90%; padding: .5em .5em .3em .5em !important;  }	
	}
	@media (max-width: 1200px) { 
		.carousel-caption .caption-content	{ max-width: 60%  }
		.carousel-caption .highlight-title	{ font-size: 160% }
		.carousel-caption .lead 			{ font-size: 110% }		
		.carousel-caption .caption-content .btn { display: none !important }
		.carousel-caption .btn:not(.caption-content .btn):not(.w-100) { margin-bottom: 0 !important;  }
	}
	@media (max-width: 992px) { 
		.carousel-caption .caption-content	{ padding: 10px !important;}
		.carousel-caption .highlight-title	{ font-size: 150% }
		.carousel-caption .lead 			{ font-size: 110% }	
	}
	@media (max-width: 767px) { 
		.carousel-caption .caption-content	{   }
		.carousel-caption .highlight-title	{ font-size: 145% }
		.carousel-caption .lead 			{ font-size: 105%  }	
		.carousel-caption .btn:not(.caption-content .btn):not(.w-100) { padding: .3em .5em .3em .5em !important; }
	}
	@media (max-width: 575px) { 
		.carousel-caption .caption-content	{ padding: 7px 10px !important; }
		.carousel-caption .highlight-title	{ font-size: 130% }
		.carousel-caption .lead 			{ font-size: 100% }		
	}
	@media (max-width: 480px) { 
		.carousel-caption .caption-content	{ max-width: 75%; gap: 5px; margin-top: 35px !important; }
		.carousel-caption .highlight-title	{ font-size: 120% }
		.carousel-caption .lead 			{ font-size: 95%; line-height: 1.2em }		
	}
	
	
.carousel-caption .highlight-title.thema {
	color: var(--bs-white) !important;
	text-transform: uppercase;
	line-height: 1.05em !important;
	font-weight: 800;
	margin: 20px 25px 0 25px !important;
	font-size: 190% !important
	}
	@media (min-width: 480px) { .carousel-caption .highlight-title.thema 	{ font-size: 220% !important; margin-top: 0 !important; line-height: 1.2em !important; }	}			
	@media (min-width: 576px) { .carousel-caption .highlight-title.thema 	{ font-size: 260% !important; margin-top: 0 !important }	}			
	@media (min-width: 767px) { .carousel-caption .highlight-title.thema 	{ font-size: 290% !important; margin-top: 20px !important }	}			
	@media (min-width: 992px) { .carousel-caption .highlight-title.thema 	{ font-size: 310% !important; margin-top: 0 !important }	}		
	@media (min-width: 1200px) { .carousel-caption .highlight-title.thema 	{ font-size: 340% !important; }	}				
	@media (min-width: 1400px) { .carousel-caption .highlight-title.thema 	{ font-size: 380% !important }	}
							
	
					
.carousel-indicators {
	/*justify-content: end;
	width: auto !important;
	left: auto;
	margin: 0;
	right: 40px;
	bottom: 10px*/
	bottom: 45px;
	margin: 0;
	}	
	.carousel-indicators [data-bs-target] {
	width: 20px;
	height: 6px;
	background-color: var(--bs-gray-300);
	opacity: .8
	}
	.carousel-indicators [data-bs-target]:hover {
	background-color: var(--bs-primary);
	opacity: 1
	}
	.carousel-indicators [data-bs-target].active {
	background-color: var(--bs-primary);
	}
	@media (max-width: 1200px) { 
		.carousel-indicators { bottom: 45px }
		.carousel-indicators [data-bs-target] { height: 5px; }
	}
	@media (max-width: 992px) { 
		.carousel-indicators { bottom: 40px }
	}
	@media (max-width: 767px) { 
	}
	@media (max-width: 575px) { 
		.carousel-indicators { bottom: 17px;  }
		.carousel-indicators [data-bs-target] { height: 4px; }
	}
	@media (max-width: 480px) { 
		.carousel-indicators { }
	}




#highlight ul {
	display: block;
	position: relative;
	margin-left: 0;
	padding-left: 0;
	margin-top: 1em;
}
#highlight ul li {
	display: inline;
	position: relative;
	list-style: none;
	font-weight: 600;
	line-height: 1.8;
	margin-right: .7em;
	font-size: 105%;
	white-space: nowrap;
	padding-left: 17px;
}
#highlight ul li::before {
	display: inline-block;
	text-align: left;
	content: '\f054';
	color: var(--bs-primary);
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left: -17px;
	width: 17px;
}
#highlight ul li::before:hover {
}
#highlight ul li a {
	color: var(--bs-white);
	text-decoration: none;
}
#highlight ul li a:hover {
	color: var(--bs-primary);
	text-decoration: underline;
	transition: .2s
}




/*--------------------------------------------------------------
# Icon Header
--------------------------------------------------------------*/
.icon-header	{ 
	position: relative;
	z-index: 10;
	width: 200px;
	height: 200px;
	padding: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin: -130px auto 0 auto;
	background: var(--bs-white);
	box-shadow: var(--bs-box-shadow);
	transition: .3s;
	}
	
@media (max-width: 1400px) {	
	.icon-header	{ 
	width: 160px; height: 160px;
	margin-top: -100px;
	padding: 20px
	}
}
@media (max-width: 1200px) {	
	.icon-header	{ 
	width: 130px; height: 130px;
	margin-top: -80px;
	}
}	
@media (max-width: 768px) {	
	.icon-header	{ 
	width: 110px; height: 110px;
	margin-bottom: -20px;
	padding: 15px
	}
}	
@media (max-width: 575px) {	
	.icon-header	{ 
	width: 100px; height: 100px;
	margin-top: -45px;
	}
}


/*--------------------------------------------------------------
# FARBEN / ANPASSUNGEN Museen / KIJUSTAR / KfK
--------------------------------------------------------------*/
.card.kunsthaus .icon-bg 				{ background: #b61918 }
.card.flohburg .icon-bg 				{ background: #d1b76b }
.card.tabakspeicher .icon-bg			{ background: #cd4a23 }

.kunsthaus .carousel-item::after 		{ background: rgba(107, 0, 0, .6);}
.flohburg .carousel-item::after 		{ background: rgba(127, 101, 24, .7);}
.tabakspeicher .carousel-item::after 	{ background: rgba(125, 28, 0, .6);}


:is(.kunsthaus, .flohburg, .tabakspeicher) :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) {
	}
.card:is(.kunsthaus,.flohburg,.tabakspeicher) .icon-bg {
	padding: 15px;
	width: 120px !important;
	height: 120px !important
	}
.card:is(.kunsthaus,.flohburg,.tabakspeicher) .icon-bg img {
	width: 100%;
	height: auto
	}	
.card:is(.kunsthaus,.flohburg,.tabakspeicher):hover .icon-bg {
	transform: scale(1.1);
	}







/*--------------------------------------------------------------
# SUCHE
--------------------------------------------------------------*/
.search-form {
	transition: .2s;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	gap: 15px;
	}
.search-form .form-control {
	border: none;
	background: var(--bs-white);
	height: 50px; padding-right: 50px;
	}
.search-form .form-select {
	}	
.search-form .search-icon-2 {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	border: none;
	background: var(--bs-white);
	min-width: 50px; margin-left: -65px /* Breite + Gap */
	}
.search-form .search-icon-2:hover {
	background: var(--bs-dark);
	transition: .2s
	}
.search-form .search-icon-2 i {
	font-size: 18px;
	color: var(--bs-body-color)
	}
.search-form .search-icon-2:hover i {
	color: var(--bs-white)
	}

	
	
	
/*--------------------------------------------------------------
# HEADER / LOGO
--------------------------------------------------------------*/
.navbar {
	position: absolute;
	z-index: 100;
	top: 0;
	left: 0;
	right: 0;
	padding-top: 0;
	padding-bottom: 0;
	}
.navbar-brand {
	position: relative;
	display: inline-block;
	background: rgba(var(--bs-white-rgb), .9);
	padding: 12px;
	margin: 0;
	box-shadow: var(--bs-box-shadow-sm); 
	height: 100px;
	transition: .2s
	}
	.navbar-brand:hover {
	background: rgba(var(--bs-white-rgb), 1);
	transform: translateY(-3px);
	transition: .3s
	}
	.navbar-brand img {
		position: relative;
		display: inline-block;
		height: 100% !important;
		width: auto !important;
		margin: 0 !important
		}
		
		/*a.navbar-brand::after {
		  content: '';
		  position: absolute;
		  bottom: -2px;
		  left: 0;
		  width: 0;
		  height: 2px;
		  background: var(--bs-primary);
		  transition: width 0.3s ease;
		  }
		a.navbar-brand:hover::after, 
		a.navbar-brand:focus::after {
		  width: 100%;
		  }*/
		
		
@media (min-width: 768px) {	
	.navbar.affix .navbar-brand  {
		padding: 0;
		width: 70px;
		height: 75px;
		overflow: hidden;
		text-align: left;
		position: fixed;
		margin-left: -20px;
		top: 0
		}
	.navbar.affix .navbar-brand img {
		height: 90px !important;
		margin-top: 8px !important;
		margin-left: -82px !important;
		}	
}
	
@media (max-width: 767px) {
	.navbar-brand {
		padding: 0;
		width: 62px;
		height: 70px;
		overflow: hidden;
		text-align: left;
		position: fixed;
		left: 8px;
		top: 0;		
		}
	.navbar-brand img {
		height: 85px !important;
		margin-top: 6px !important;
		margin-left: -80px !important;
		}
}		
	
.themen {
	display: flex;
	flex-direction: row;
	gap: 10px;
	position: fixed;
	right: 160px;
	top: 35px
	}	
	.themen a {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-decoration: none;
		color: var(--bs-gray-light);
		}
	.themen a i {
		z-index: 10;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 27px;
		height: 27px;
		font-size: 18px;
		border-radius: 50px;
		border: 1px solid rgba(var(--bs-gray-light-rgb), .5);
		color: rgba(var(--bs-gray-rgb), .7);
		}
	.themen a:hover i {
		border-color: rgba(var(--bs-gray-light-rgb), .3);
		color: rgba(var(--bs-white-rgb), 1);
		}	
	.themen a.active i {
		border-color: rgba(var(--bs-gray-light-rgb), .1);
		color: rgba(var(--bs-white-rgb), 1);
		}	
	.themen a span {
		z-index: 1;
		opacity: 0;
		margin-top: 50px;
		position: absolute;
		background: rgba(var(--bs-dark-rgb), 7);
		line-height: 1em;
		font-size: 7pt;
		text-transform: uppercase;
		padding: .1em .2em;
		white-space: nowrap
		}
	.themen a:hover span {
		opacity: 1;
		transition: .2s
		}	
	.themen a:hover i 					{ background: rgba(var(--bs-primary-rgb), .7);}	
	.themen a.farbe_kultur:hover i 		{ background: rgba(var(--bs-secondary-rgb), .7);}	
	.themen a.farbe_rathaus:hover i 	{ background: rgba(var(--bs-accent-rgb), .7);}	
	
	.themen a.active i 					{ background: rgba(var(--bs-primary-rgb), 1);}	
	.themen a.farbe_kultur.active i 	{ background: rgba(var(--bs-secondary-rgb), 1);}	
	.themen a.farbe_rathaus.active i 	{ background: rgba(var(--bs-accent-rgb), 1);}	
	
	
	
	
/*--------------------------------------------------------------
# TOGGLER
--------------------------------------------------------------*/
.navbar-toggler { 
	z-index: 200;
	right: 25px;
	top: 25px;
	display:flex;
	align-items:center;
	gap:.5rem;
	width: auto;
	padding: 0 12px;
	font-family: var(--muted);
	font-weight: bold;
	text-transform: uppercase;
	font-size: 1rem;
	border: none !important;
	outline: none !important;
	color: var(--bs-dark);
	box-shadow: var(--bs-box-shadow-sm) !important;
	height: 50px;
	transition: .2s
	}
	.navbar-toggler:hover { 
	}
	.navbar-toggler i {
	top: -1px;
	}
	.navbar-toggler i,
	.navbar-toggler i::before, 
	.navbar-toggler i::after {
	height: 3px;
	}	
	.navbar-toggler:hover i { 
	opacity: .8
	}
	.navbar-toggler[aria-expanded="true"] {
	display: none
	}
	
.offcanvas .navbar-toggler { /* =Close */
	right: 50px;
	background: var(--bs-dark);
	color: var(--bs-white);
	box-shadow: none !important;
	transition: 0s !important
	}
	.offcanvas .navbar-toggler:hover { 
	background: var(--bs-black);
	color: var(--bs-gray-300)
	}
	.offcanvas .navbar-toggler:hover i::before,
	.offcanvas .navbar-toggler:hover i::after { 
	background: var(--bs-primary) !important;
	}		
/* --------- end TOGGLER -------- */




	
	
/*--------------------------------------------------------------
# NAVBAR - OFFCANVAS / Menü
--------------------------------------------------------------*/
.offcanvas {
	}	

.offcanvas-header {
	padding: 25px 50px;
	background: var(--bs-primary);
	}
	.offcanvas-header .search-form {
	width: calc(100% - 150px)
	}
	
.offcanvas-body {
	padding: 40px 50px 0 50px;
	}
	.offcanvas .nav-item {
		border-bottom: 2px solid var(--bs-primary);
		margin: 0 !important;
		padding: 15px 10px;
		}
	.offcanvas .nav-item:last-child {
		border-bottom: none;
		margin-bottom: 0;
		}
	.offcanvas .nav-item:hover {
		background: rgba(var(--bs-primary-rgb), .05) !important;
		}		
	.offcanvas .nav-item.active {
		background: rgba(var(--bs-primary-rgb), 0) !important;
		}
	.offcanvas .nav-item.active:hover {
		background: rgba(var(--bs-primary-rgb), .05) !important;
		}	
	.offcanvas .nav-item.dropdown .d-flex > div {
		width: 100%;
		margin-right: 5px
		}
	.offcanvas .nav-item i {
		color: var(--bs-primary);
		padding: 0 !important;
		margin: 0 !important;
		margin-right: 17px !important;
		font-size: 250%;
		align-items: start;
		display: flex
		}
		.offcanvas .nav-item i.fa-users::before {
		margin-top: 4px
		}
		.offcanvas .nav-item i.bxs-phone::before {
		font-size: 110%
		}	
		.offcanvas .nav-item i.fa-scroll::before {
		font-size: 87%;
		margin-top: 3px
		}
		.offcanvas .nav-item:hover i {
		color: var(--bs-primary-dark);
		color: var(--bs-accent);
		}
		.offcanvas .nav-item.active i {
		color: var(--bs-primary-dark);
		color: var(--bs-accent);
		}	
		
	.offcanvas .nav-link {
		text-transform: uppercase !important;
		hyphens: none;
		white-space: normal;
		font-size: 1.4rem;
		font-weight: 900;
		letter-spacing: .04em;
		line-height: 1.3em;
		padding: 0;
		color: var(--bs-dark);
		}
	.offcanvas .nav-item:hover .nav-link,
	.offcanvas .nav-item .nav-link:hover,
	.offcanvas .nav-item.active:hover .nav-link {
		color: var(--bs-black);
		}	
	.offcanvas .nav-item.active .nav-link {
		color: var(--bs-black);
		}		
	.offcanvas .nav-item.active .nav-link.show {
		background: none !important;
		}	
	.offcanvas .nav-item .nav-link.show {
		background: none !important;
		}	
	.offcanvas .nav-item.active .nav-link {
		color: var(--bs-black);
		}			
	.offcanvas .nav-link span {
		display: block;
		font-weight: 400;
		letter-spacing: -.02em;
		font-size: .95rem;
		line-height: 1.3em !important;
		text-transform: none;
		margin-top: .3em;
		}	
	.offcanvas .nav-link:hover span {
		color: var(--bs-black);
		}
	.offcanvas .nav-item:hover .nav-link span {
		color: var(--bs-black);
		hyphens: none !important;
		-webkit-hyphens: none !important;
		}	
	.offcanvas .nav-item.active .nav-link span {
		color: var(--bs-black);
		}	
	.offcanvas .nav-item .nav-link.dropdown-toggle.show {
		}		
	.offcanvas .nav-link.dropdown-toggle {
		}	
	
	
/* Icon Dropdown-Link */	
.offcanvas .nav-link.dropdown-toggle::after {
	top: 25px;
	right: 10px;
	color: var(--bs-primary);
	font-family: 'FontAwesome';
	content: "\f078";
	transition: transform .2s ease-in
	}
	.offcanvas .nav-link.dropdown-toggle[aria-expanded="true"]::after {
	transform: rotate(180deg) !important;
	}
	@media (max-width: 767px) {
		.offcanvas .nav-link.dropdown-toggle::after { top: 22px; }
	}	
	@media (max-width: 575px) {
		.offcanvas .nav-link.dropdown-toggle::after { top: 12px; }
	}		
		
		
/* Dropdown */		
.offcanvas .accordion-collapse {
	padding-left: 0;
	padding-right: 0;
	padding-top: .75rem;
	padding-bottom: .25rem;
	}	
	.offcanvas .accordion-collapse.show {
		}
	.offcanvas .accordion-collapse li {
		list-style: none;
		padding: 0;
		margin: 0;
		border-bottom: 1px solid rgba(var(--bs-black-rgb), .1);
		}
		.offcanvas .accordion-collapse li:last-child {
		border: none;
		}	
	.offcanvas li.dropdown-header {
		margin: 1.25em 0 .2em 0;
		color: var(--bs-dark);
		letter-spacing: .04em;
		font-weight: 800;
		font-size: 1.1rem;
		text-transform: uppercase !important;
		padding-left: 0;
		border: none;
		font-size: 90%
		}
		.offcanvas li.dropdown-header:first-child {
		margin-top: .75em
		}
		.offcanvas li.dropdown-header::before {
		display: none
		}	
		.offcanvas li.dropdown-header a {
		color: inherit
		}
		.offcanvas li.dropdown-header a:hover {
		color: var(--bs-primary-dark);
		transition: .2s
		}
	.offcanvas li a.dropdown-item {
		padding: .2em .25em;
		font-weight: inherit;
		line-height: 1.2em;
		color: var(--dropdown-color)
		}
		.offcanvas li a.dropdown-item:hover {
		color: var(--dropdown-hover-color);
		background: var(--dropdown-hover-bg) !important
		}
		.offcanvas li a.dropdown-item#active {
		color: var(--dropdown-active-color);
		background: var(--dropdown-active-bg)
		}	
		.offcanvas li a.dropdown-item#active:hover {
		color: var(--dropdown-active-color) !important;
		background: var(--dropdown-active-bg) !important
		}	

.offcanvas-infos {
	background: var(--bs-lighter);
	margin: 2em -50px;
	width: calc(100% + 100px);
	padding: 40px 50px;
	display: flex;
	justify-content: center
	}
	.offcanvas-infos address {
	display: flex;
	flex-direction: column;
	gap: 7px;
	
	}
	.offcanvas-infos address p {
		color: var(--bs-dark);
		font-weight: normal;
		margin-bottom: 0;
		display: inline-flex;
		flex-direction: row;
		gap: 5px
		}
	.offcanvas-infos address b {
		color: var(--bs-black);
		font-weight: 800;
		}	
	.offcanvas-infos address a {
		color: var(--bs-accent) !important;
		text-decoration-color: rgba(var(--bs-accent-rgb),.5) !important;
		}
	.offcanvas-infos address a:hover {
		color: var(--bs-black) !important;
		text-decoration-color: var(--bs-black) !important;
		}
	
.offcanvas-quicklinks {
	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
	margin: 40px 0 30px 0;
	}
	.offcanvas-quicklinks > * {
	display: flex;
	flex-direction: row;
	align-items: center;
	flex: 0 0 calc((100% - 25px) / 2);
	gap: 10px;
	margin: 0;
	font-size: 85%;
	line-height: 1.3em
	}
	.offcanvas-quicklinks a {
	font-size: 100%;
	color: var(--bs-dark);
	font-weight: 700
	}
	.offcanvas-quicklinks i {
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--bs-primary);
	border: none;
	color: var(--bs-white);
	width: 55px;
	height: 55px;
	font-size: 28px !important;
	}
	.offcanvas-quicklinks a:hover {
	text-decoration: none;
	color: var(--bs-black);
	font-weight: 800
	}
	.offcanvas-quicklinks a:hover i {
	background: var(--bs-primary-dark);
	background: var(--bs-accent);
	}
	.offcanvas-quicklinks > * {
	flex: 0 0 calc((100% - (2 * 25px)) / 2);
	flex-direction: column;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	color: var(--bs-dark);
	gap: 5px;
	}

@media (max-width: 992px) {
	.offcanvas-header {
		padding-left: 30px;
		padding-right: 30px;
		}
	.offcanvas-header .search-form {
		width: calc(100% - 150px)
		}	
	.offcanvas .navbar-toggler { 
		right: 40px;
		}	
	.offcanvas-body {
		padding: 30px;
		}	
	.offcanvas-infos {
		margin: 2em -30px;
		width: calc(100% + 60px);
		}	
}
@media (max-width: 767px) {
	.offcanvas {
		width: calc(100% - 40px) !important
		}	
	.offcanvas-body {
		padding: 13px 30px;
		}	
	.offcanvas .nav-item {
		padding: 13px 10px;
		}
	.offcanvas .nav-item i {
		font-size: 230%;
		margin-right: 13px !important
		}	
	.offcanvas .nav-link {
		font-size: 1.3rem;
		letter-spacing: .02em;
		}		
	.offcanvas .nav-link span {
		font-size: .9rem;
		line-height: 1.35em;
		margin-top: .15em;
		}
	.offcanvas-infos {
		margin-top: 1.5em;
		margin-bottom: 1.5em;
		}	
}
@media (max-width: 575px) {
	.offcanvas-header {
		padding: 15px;
		}
	.offcanvas-header .search-form {
		width: calc(100% - 130px)
		}	
	.offcanvas .navbar-toggler { 
		top: 15px;
		right: 15px;
		}	
	.navbar-toggler { 
		top: 15px;
		right: 15px;
		}		
	.offcanvas-body {
		padding-left: 15px;
		padding-right: 15px;
		}	
	.offcanvas-infos {
		margin-top: 1em;
		margin-bottom: 1em;
		margin-left: -15px;
		margin-right: -15px;
		width: calc(100% + 30px);
		padding: 30px 30px
		}
	.offcanvas-quicklinks {
		margin: 30px 0 20px 0;
		}
}
@media (max-width: 480px) {
	.offcanvas .navbar-toggler { 
		right: 15px;
		}	
	.navbar-toggler { 
		right: 0;
		}	
	.offcanvas-infos address {
		gap: 20px
		}		
	.offcanvas-infos address p {
		display: flex;
		flex-direction: column;
		gap: 0
		}			
}		
/* --------- end NAVBAR - Offcanvas -------- */






/*--------------------------------------------------------------
# ICONS / FA-AWESOME
--------------------------------------------------------------*/	
.fa-chalkboard-user::before {
	font-size: 80%
	}
.fa-masks-theater::before {
	font-size: 85%
	}
.fa-person-hiking::before {
	font-size: 105%
	}
.fa-utensils::before {
	font-size: 95%
	}
	
	

/*--------------------------------------------------------------
# SOCIALMEDIA
--------------------------------------------------------------*/
.social-icons {
	flex-direction: column;
	position: fixed;
	gap: 4px;
	right: 5px;
	top: 40%
	}
.social-icons a {
	font-size: 20px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: var(--bs-primary) !important;
	border: 1px solid rgba(var(--bs-white-rgb),.6);
	color: var(--bs-black)
	}	
.social-icons a:hover {
	background-color: var(--bs-accent) !important;
	text-decoration: none !important;
	margin-left: -5px;
	}
.social-icons a i {
	color: var(--bs-dark) !important;
	}		
.social-icons a:hover i {
	color: var(--bs-white) !important;
	}		

@media (max-width: 767px) {	
	.social-icons {
	right: 3px;
	top: auto;
	bottom: 200px
	}
}
	



/*--------------------------------------------------------------
# REITER - Custom Size
--------------------------------------------------------------*/
.custom-size {
	display: none
	}
.custom-size button:hover {
	background: var(--bs-accent);
	}	
.custom-size button.active {
	background: var(--bs-accent);
	}



/*--------------------------------------------------------------
# PAGETOP
--------------------------------------------------------------*/
.back-to-top {
	border-radius: 0;
	background: rgba(var(--bs-primary-rgb), .85) !important;
	border: 1px solid rgba(var(--bs-black-rgb), .5) !important;
	width: 70px;
	height: 70px;
	box-shadow: var(--bs-box-shadow-sm);
	right: 5px;
	bottom: 130px;
	}
.back-to-top.active {
	opacity: 1;
	}	
.back-to-top i {
	font-size: 40px;
	color: var(--bs-white) !important
	}		
	
		
@media (max-width: 767px) {	
	.back-to-top {
		width: 55px;
		height: 55px;
		top: auto !important;
		right: 0;
		bottom: 85px !important;
		}
	.back-to-top i {
		font-size: 35px;
		}		
}

	
	

/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
footer {
	background: var(--bs-dark);
	}
footer p {
	margin-bottom: 0
	}
footer .btn:not(.back-to-top) {
	margin-top: 2em;
	width: 100%
	}	
		
footer a:not(.btn) {
	color: rgba(var(--bs-white-rgb),.7) !important;
	text-decoration: none !important;
	font-weight: 300 !important
	}	
	footer a:not(.btn):hover {
	color: var(--bs-white) !important;
	text-decoration: underline !important
	}	
	footer .icon-list a {
	color: var(--bs-primary) !important;
	text-decoration: none !important
	}
	footer .icon-list a:hover {
	color: var(--bs-primary) !important;
	text-decoration: underline !important
	}
	
footer .list-inline li:not(:last-child) {
	border-right: 1px solid var(--bs-border-color);
	border-right: 1px solid var(--bs-primary);
	margin-right: 5px;
	padding-right: 10px
	}		
	
	
	
	
/*--------------------------------------------------------------
# ECKEN an Rahmen
--------------------------------------------------------------*/
.corners{
  --corner-color: var(--bs-primary); 
  --corner-size: 60px;
  --corner-thickness: 10px;
  --corner-offset: -15px;
  position: relative;
}
.corners::before{
  content:"";
  position:absolute;
  inset: var(--corner-offset);
  poRoboto-events:none;
  pointer-events: none; /* richtig */
  background:
	linear-gradient(var(--corner-color) 0 0) top left / var(--corner-size) var(--corner-thickness) no-repeat,
	linear-gradient(var(--corner-color) 0 0) top left / var(--corner-thickness) var(--corner-size) no-repeat,
	
	linear-gradient(var(--corner-color) 0 0) bottom right / var(--corner-size) var(--corner-thickness) no-repeat,
	linear-gradient(var(--corner-color) 0 0) bottom right / var(--corner-thickness) var(--corner-size) no-repeat;
}


aside .corners{
	--corner-size: 50px;
	--corner-thickness: 8px;
	--corner-offset: -13px;
}		
@media (max-width: 992px) {	
	.corners{
		--corner-size: 50px;
		--corner-thickness: 8px;
		--corner-offset: -13px;
		}		
}



/*--------------------------------------------------------------
# EINSIEG	
--------------------------------------------------------------*/
#einstieg {
	background: var(--bs-dark);
	padding: 0 !important;
	}
#einstieg .search-form {
	z-index: 10;
	position: relative;
	margin: -45px auto 50px auto;
	background: var(--bs-primary);
	padding: 20px;
	min-height: 50px;
	height: auto;
	}
	@media (max-width: 992px) {	
		#einstieg .search-form {
			padding: 15px;
			margin: -40px auto 30px auto;
			}
	}
	@media (max-width: 575px) {	
		#einstieg .search-form {
			padding: 10px;
			margin-top: -15px;
			}
	}
	
#einstieg .row.auswahl {
	margin-bottom: -50px;
	z-index: 10;
	position: relative;
	background: var(--bs-white);
	box-shadow: var(--bs-box-shadow);
	}
	
	#einstieg .card {
		width: 100%;
		padding: 25px 35px;
		border: none;
		border-radius: 0;
		box-shadow: none;
		background: none;
		outline: 0 solid rgba(var(--bs-primary-rgb), 0);
		transition: transform .2s ease, box-shadow .2s ease;
		will-change: transform;
		}
		#einstieg .card:hover {
		z-index: 1000000 !important;
		background: var(--bs-primary);
		box-shadow: var(--bs-box-shadow-sm);
		display: inline-block;
		position: relative;
		outline: 5px solid var(--bs-primary);
		box-shadow: 0 0 1.5em rgba(var(--bs-black-rgb), 0);
		transform: translateY(0) scale(1.03);
		box-shadow: var(--bs-box-shadow-lg);
		}	
		#einstieg .card.farbe_kultur					{ outline-color: rgba(var(--bs-secondary-rgb), 0); }
		#einstieg .card.farbe_kultur:hover 				{ background: var(--bs-secondary); outline-color:  var(--bs-secondary); }		
		#einstieg .card.farbe_kultur i 					{ color: var(--bs-secondary); }	
		#einstieg .card.farbe_kultur .icon-link::after  { color: var(--bs-secondary) }
		#einstieg .card.farbe_kultur::before 			{ background: var(--bs-secondary); }
		
		#einstieg .card.farbe_rathaus 					{ outline-color: rgba(var(--bs-accent-rgb), 0); }
		#einstieg .card.farbe_rathaus:hover 			{ background: var(--bs-accent); outline-color: var(--bs-accent); }
		#einstieg .card.farbe_rathaus i 				{ color: var(--bs-accent); }		
		#einstieg .card.farbe_rathaus .icon-link::after { color: var(--bs-accent) }
		#einstieg .card.farbe_rathaus::before 			{ background: var(--bs-accent); }
		
		
	#einstieg .card::before {
		content: "";
		position: absolute;
		background: var(--bs-primary);
		width: 1px;
		left: 0;
		top: 40px;
		bottom: 40px;
		}
		
		#einstieg [class*="col-"]:first-child .card::before {
		display: none
		}
	
	#einstieg .card i  {
		color: var(--bs-primary);
		font-size: 60px;
		height: 60px;
		margin-bottom: 10px;
		width: auto;
		display: inline-flex;
		align-items: center;
		}
		#einstieg .card:hover i {
		color: rgba(var(--bs-white-rgb), .8);
		}
	#einstieg .card :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6)  {
		color: var(--bs-dark) !important;
		margin: 0 !important;
		text-transform: uppercase;
		font-weight: 900;
		font-size: clamp(1.3rem, 1.15rem + 0.55vw, 1.8rem); 
		}
		#einstieg .card:hover :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) {
		color: var(--bs-black) !important;
		text-decoration: none
		}
		#einstieg .card :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):hover {
		color: var(--bs-black) !important;
		text-decoration: underline
		}
	#einstieg .card p  {
		color: var(--bs-dark) !important;
		font-weight: normal;
		margin-top: 1em;
		}
		#einstieg .card:hover p  {
		color: var(--bs-black) !important;
		}		
	#einstieg .icon-link  {
		}
		#einstieg .wrapper-link:hover .icon-link {
		color: var(--bs-black);
		}
		#einstieg .icon-link:hover,
		#einstieg .wrapper-link:hover .icon-link:hover  {
		color: var(--bs-black);
		transition: .2s;
		}
		#einstieg .wrapper-link:hover .icon-link::after  {
		color: rgba(var(--bs-white-rgb), .8);
		}
	#einstieg .wrapper-link:hover {
		text-decoration: none !important;
		}
		
		
		
		
@media (max-width: 767px) {
	#einstieg .card {
		padding: 20px;
		}		
	#einstieg .card::before {
		top: 25px;
		bottom: 25px;
		}		
	#einstieg .card i  {
		font-size: 50px;
		width: 100%;
		margin-bottom: 5px;
		justify-content: center;
		}
	#einstieg .card :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6)  {
		letter-spacing: 0;
		line-height: 1.2em;
		font-size: 1.25rem;
		text-align: center;
		margin: 0 auto
		}		
	#einstieg .card p  {
		display: none
		}	
	#einstieg .card .icon-link  {
		display: none !important
		}	
}		
@media (max-width: 575px) {
	#einstieg .search-form {
		margin-bottom: 20px;
		}
	
	#einstieg .card {
		padding: 15px;
		}
	#einstieg .card::before {
		top: 20px;
		bottom: 20px;
		}		
	#einstieg .card i  {
		font-size: 45px;
		height: 45px;
		}	
	#einstieg .card :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6)  {
		font-size: 1.05rem;
		letter-spacing: 0;
		}		
}	
@media (max-width: 480px) {
	#einstieg .card {
		padding: 12px
		}
	#einstieg .card div {
		}		
	#einstieg .card i  {
		font-size: 40px;
		height: 40px;
		}	
	#einstieg .card :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6)  {
		font-size: .9rem;
		}		
}	







	



/*--------------------------------------------------------------
# QUICKLINKS / SCHNELLEINSTIEG
--------------------------------------------------------------*/
#quicklinks {
	padding-top: 120px
	}
.quicklinks {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	}
.quicklinks > .btn {
	flex: 0 0 calc((100% - 3 * 10px) / 4);
	max-width: calc((100% - 3 * 10px) / 4);
	box-sizing: border-box;
	background: var(--bs-white) !important;
	border: 3px solid rgba(var(--bs-dark-rgb), .1);
	text-align: left;
	justify-content: flex-start;
	align-items: center;
	line-height: 1.3em;
	padding: .6em 1em !important;
	min-height: 60px !important;
	white-space: normal !important
	}		
.quicklinks .btn:hover  {
	color: var(--bs-dark) !important;
	background: var(--bs-light);
	box-shadow: var(--bs-box-shadow-inset);
	border-color: var(--bs-lighter);
	}
	.quicklinks .btn[class*="btn-outline-"]:hover  {
	border-color: rgba(var(--bs-primary-dark-rgb), .3);
	}
.quicklinks .btn:not(.back-to-top) i {
	color: var(--bs-primary);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	min-width: 30px;
	min-height: 28px;
	margin-right: 10px;
	}	
.quicklinks .btn:hover i  {
	color: rgba(var(--bs-white-rgb), .6);
	color: var(--bs-primary-dark);
	}	
@media (max-width: 992px) {
	#quicklinks {
		padding-top: 110px
		}
	.quicklinks {
		gap: 5px;
		}
	.quicklinks > .btn {
		flex: 0 0 calc((100% - 2 * 5px) / 3);
		max-width: calc((100% - 2 * 5px) / 3);
		padding: .6em .5em .6em .6em !important;
		}		
}
@media (max-width: 767px) {
	#quicklinks {
		padding-top: 90px
		}
	.quicklinks .btn  {
		font-size: 90%;
		line-height: 1.2em;
		padding: .5em .5em .5em .8em !important;
		min-height: auto !important
		}	
	.quicklinks .btn i  {
		font-size: 21px !important;		
		min-width: 25px !important;
		min-height: 25px !important;
		}	
}	
@media (max-width: 575px) {
	#quicklinks {
		padding-top: 70px
		}
	.quicklinks > .btn {
		flex: 0 0 calc((100% - 1 * 5px) / 2);
		max-width: calc((100% - 1 * 5px) / 2);
		padding: .45em .4em .45em .6em !important;
		}
	.quicklinks .btn i  {
		font-size: 19px !important;		
		min-width: 25px !important;
		min-height: 23px !important;
		margin-right: 5px !important;
		}			
}
@media (max-width: 480px) {
	.quicklinks > .btn {
		hyphens: auto !important;
		-webkit-hyphens: auto !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
		white-space: normal !important;
		}	
}


	
	
/*--------------------------------------------------------------
# START - Infos
--------------------------------------------------------------*/
#infos  {
	position: relative;
	padding-top: 20px
}
#infos::before  {
	content:'';
	background: var(--bs-lighter);
	height: 200px;
	width: 100%;
	left: 0;
	right: 0;
	top: 0;
	position: absolute;
	display: inline-block;
	z-index: 0
	}

@media (max-width: 767px) {
	#infos  {
		padding-top: 0
	}	
}	







/* =========================================================
TABLES / TABELLEN
========================================================= */
.table-top table tbody tr:first-child > td,
.table-striped-columns.table-top table tbody tr:first-child > td,
.table-front table tbody tr > td:first-child,
.table-striped.table-front table tbody tr > td:first-child,
.table-striped.table-top.table-front table tbody tr > td:first-child,
.table-striped-columns.table-front table tbody tr > td:first-child,
.table-bg.table-top table tbody tr:first-child > td,
.table-bg.table-front table tbody tr > td:first-child {
background-color: rgba(var(--bs-primary-rgb), .4) !important;
color: var(--bs-black);
}
table td {
border-bottom: 1px solid rgba(var(--bs-primary-rgb), .25);
}
.table-bg table tbody tr > td {
border-radius: 0
}

table td {
border-color: rgba(var(--bs-primary-rgb), .75);
}





/* =========================================================
CARDS / EFFEKTE
========================================================= */
.card {
	padding: 30px
	}
.card.bg-light {
	border-color: rgba(var(--bs-primary-rgb),.25);
	--bs-accent: #00479c;
	}	
aside .card {
	}

.card:hover .icon-bg {
	box-shadow: var(--bs-box-shadow-sm)
	}
	


/*--------------------------------------------------------------
# NAVIGATIONSLISTE
--------------------------------------------------------------*/
.navigationsliste {
	}
.navigationsliste ul { 
	gap: 6px 0;
	}
.navigationsliste ul li {
	background: rgba(var(--bs-primary-light-rgb),.4);
	padding: 6px !important
	}
.navigationsliste ul li:not(:last-child)::before {
	content: '';
	display: inline-block !important;
	position: absolute;
	right: 0;
	width: 2px;
	height: 50%;
	top: 25%;
	background: rgba(var(--bs-primary-rgb),.8)
	}
.navigationsliste ul li > a {
	border: none !important;
	text-transform: uppercase;
	font-weight: 500 !important;
	font-size: 95%;
	padding: 6px 8px 5px 8px;
	background: none;
	color: var(--bs-body-color) !important;
	}
	.navigationsliste ul li > a:hover,
	.navigationsliste ul li > a.active {
	background: var(--bs-white);
	color: var(--bs-black) !important;
	}
	.navigationsliste ul li > a.active {
	font-weight: 900 !important;
	background: var(--bs-white);
	letter-spacing: .02em;
	}	
	.navigationsliste ul li > a.active:hover {
	background: var(--bs-white);
	}
.navigationsliste ul li > a i {
	color: rgba(var(--bs-primary-dark-rgb), .9);
	margin-right: 1px;
	}
	.navigationsliste ul li > a:hover i {
	color: var(--bs-primary);
	}
	

@media (max-width: 1200px) {
	.navigationsliste ul li {
		padding: 5px !important
		}
	.navigationsliste ul li > a {
		font-size: 95%;
		padding: 5px 6px 4px 6px;
		}		
}
@media (max-width: 992px) {
	.navigationsliste ul li > a {
		font-size: 90%;
		padding: 5px 5px 4px 5px;
		}
	.navigationsliste ul li > a.active {
		letter-spacing: 0;
		}		
}
@media (max-width: 575px) {
	.navigationsliste ul li {
		padding: 4px !important
		}
	.navigationsliste ul li > a {
		font-size: 85%;
		padding: 5px 3px 4px 3px;
		}
	.navigationsliste ul li > a.active {
		}	
}
	
	
	
			
	

/*--------------------------------------------------------------
# KACHELN
--------------------------------------------------------------*/
.kacheln {
	gap: 7px;
	}
.kacheln li.col {
	flex: 0 0 calc((100% - 7px) / 2);
	}
	@media (min-width:380px)	{ .kacheln li.col { flex-basis: calc((100% - (2 * 7px)) / 2);}}
	@media (min-width:576px)	{ .kacheln li.col { flex-basis: calc((100% - (3 * 7px)) / 3);}}
	@media (min-width:992px)	{ .kacheln li.col { flex-basis: calc((100% - (3 * 7px)) / 4);}}
	@media (min-width:1200px)	{ .kacheln li.col { flex-basis: calc((100% - (5 * 7px)) / 4);}}
	@media (min-width:1400px)	{ .kacheln li.col { flex-basis: calc((100% - (7 * 7px)) / 5);}}


.kacheln .card {
	padding: 0 !important;
	background:rgba(var(--bs-primary-rgb),.4) !important;
	border-color: rgba(var(--bs-primary-rgb),.4);
	}
	.kacheln .card::before { background:rgba(var(--bs-primary-rgb),1) !important;
	}
	.kacheln .card-body { 
		padding: 35px 10px;
		color: var(--bs-black) !important;
		font-weight: 300 !important
	}	
	@media (max-width:992px){ 
		.kacheln .card-body { padding: 30px 10px; } 
	}
	
.kacheln :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) { 
	color: var(--bs-black) !important;
	font-weight: bold;
	}
.kacheln .wrapper-link:hover :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) { 
	color: var(--bs-black) !important; 
	text-decoration: none !important; 
	transform: scale(1.05); 
	transition: .4s 
	}
.kacheln .wrapper-link:hover :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):hover	{ 
	text-decoration: underline !important 
	}	


		





/* =========================================================
TERMINE / AUSSTELLUNGEN
========================================================= */
.termin-quadrat {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	align-self: start;
	box-shadow: var(--bs-box-shadow-sm);
	width: 95px;
	height: 95px;
	text-align: center;
	font-weight: bold;
	margin-left: -45px;
	margin-right: 15px;
	background: var(--bs-primary);
	color: var(--bs-black) !important;
	}
	.ausstellung .termin-quadrat  {
	height: 110px;
	background: var(--bs-primary);
	color: var(--bs-black)
	}
	.termin-quadrat:hover,
	.wrapper-link:hover .termin-quadrat  {
	background: var(--bs-accent);
	color: var(--bs-white) !important;
	transition: .3s
	}
		
.termin-infos {
	display: flex;
	flex-direction: column;
	width: calc(100% - 45px);
	line-height: 1.3em
	}
	
.termin-thema {
	display: inline-flex;
	width: fit-content;
	align-self: flex-start;   
	text-transform: uppercase;
	font-weight: 900 !important;
	font-weight: 500;
	letter-spacing: .03em;
	font-size: 90%;
	padding: .25em .5em .15em .5em;
	margin-bottom: .8em;
	line-height: 1.3em;
	background: var(--bs-accent);
	color: var(--bs-white);
	background: rgba(var(--bs-primary-rgb),.4);
	color: var(--bs-black);
	/*position: absolute;
	right: 0;
	top: 0*/
	flex-direction: column
	}	
	.termin-thema time  {
		letter-spacing: 0;
		font-weight: normal;
		margin-top: .05em
	}
	.ausstellung .termin-thema  {
	}
		
.termin-ort  {
	margin-bottom: 0;
	}	
	.ausstellung .termin-ort  {
	}	
	
	




/*--------------------------------------------------------------
# Paginierung
--------------------------------------------------------------*/
.pagination li.page-item .page-link {
	background-color: rgba(var(--bs-primary-rgb), .1);
	border-color:  rgba(var(--bs-primary-rgb), .4);
	border-width: 2px;
	font-weight: 500
	}
	.pagination li.page-item a.page-link:hover {
	background-color: rgba(var(--bs-primary-rgb), 1);
	color: var(--bs-black)
	}
	
.pagination li.page-item .page-link i {
	color: var(--bs-primary);
	font-size: 150%;
	margin: 0 2px
	}
	.pagination li.page-item .page-link:hover i {
	color: var(--bs-white)
	}
	
.pagination li.page-item.active .page-link {
	color: var(--bs-black)
	}


/*--------------------------------------------------------------
# ALERTS
--------------------------------------------------------------*/
.alert-info {
	--bs-alert-color: var(--bs-accent);
	--bs-alert-bg: rgba(var(--bs-accent-rgb), .075);
	--bs-alert-border-color: rgba(var(--bs-accent-rgb), .1);
	}
.alert-primary {
	--bs-alert-color: var(--bs-primary-darker);
	--bs-alert-bg: rgba(var(--bs-primary-rgb), .25);
	--bs-alert-border-color: rgba(var(--bs-primary-rgb), .1);
	}		
.alert-secondary {
	--bs-alert-bg: rgba(var(--bs-secondary-rgb), .25);
	--bs-alert-border-color: rgba(var(--bs-secondary-rgb), .1);
	}	
.alert-danger {
	--bs-alert-bg: rgba(var(--bs-red-rgb), .1);
	--bs-alert-border-color: rgba(var(--bs-red-rgb), .1);
	}	
.alert-light {
	--bs-alert-bg: rgba(var(--bs-gray-rgb), .07);
	--bs-alert-border-color: rgba(var(--bs-gray-rgb), .15);
	}	
.alert-info :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 		{ color: var(--bs-info-text-emphasis); }	
.alert-warning :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 	{ color: var(--bs-warning-text-emphasis); }	
.alert-danger :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 	{ color: var(--bs-danger-text-emphasis); }	
.alert-success :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 	{ color: var(--bs-success-text-emphasis); }	
.alert-light :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 	{ color: var(--bs-light-text-emphasis); }	
.alert-dark :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 		{ color: var(--bs-dark-text-emphasis); }	
.alert-primary :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) 	{ color: var(--bs-primary-darker); }	
.alert-secondary :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) { color: var(--bs-secondary-text-emphasis); }	
	


/*--------------------------------------------------------------
# Lebenslagen
--------------------------------------------------------------*/
.lebenslagen_content {
	}
.lebenslagen_zustaendig:not(aside.lebenslagen .lebenslagen_zustaendig) {
	display: none
	}
.lebenslagen_infos:not(aside.lebenslagen .lebenslagen_infos) {
	display: none;
	}
	
aside.lebenslagen {
	display: flex;
	flex-direction: column;
	gap: 50px
	}	
	aside.lebenslagen .lebenslagen_zustaendig 		{ order: 2; }
	aside.lebenslagen .lebenslagen_infos 			{ order: 1; }
	aside.lebenslagen .frontend 					{ order: 3; margin-top: -25px }
		@media (min-width: 768px) {
		aside.lebenslagen .lebenslagen_zustaendig 	{ order: 1; }
		aside.lebenslagen .lebenslagen_infos 		{ order: 2; }
		}	

aside.lebenslagen .lebenslagen_content {
	display: none
	}
aside.lebenslagen .lebenslagen_infos :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) {
	margin-top: 1.5em !important;
	margin-bottom: .5em !important
	}	
aside.lebenslagen .lebenslagen_infos :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):first-of-type {
	margin-top: 0 !important;
	}				




/* --------- KARTE
================================================== */
.toggle-karte {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
	gap: 15px;
	margin-bottom: 15px;
	}
	.toggle-karte .switch {
		display: flex;
		flex: row;
		gap: 5px;
		}	
	.toggle-karte .switch a {
		margin: 0 !important;
		}		
	.toggle-karte .switch span {
		white-space: nowrap;
		color: var(--bs-body-color);
		}
	.toggle-karte .switch .closed {
		}	
	.toggle-karte .switch .open { 
		background-color: var(--bs-primary);
		}	
	
#karte { /* Karte: Nordhausen 1945 */
	width: 100%;
	max-width: 1300px;     /* optional Begrenzung */
	aspect-ratio: 1140 / 751;
	position: relative;
	}
	#karte.map { /* Karte: Sehenswürdigkeiten */
		width: 100%;
		max-width: 1300px;     /* optional Begrenzung */
		aspect-ratio: 1140 / 858;
		position: relative;
	}
#karte img {
	border: none;
	width: 100%;
	height: auto;
	position: absolute;
	}
	#karte .toggle-content,
	#karte .beschriftung,
	#karte .svg_hover{
	}
	
#karte > div {
	background-size: cover !important;
	position: absolute !important
	}
#karte .svg_hover {
	border: none;
	height: auto;
	position: absolute;
	width: 100% !important;
	z-index: 10
	}
	#karte .svg_hover .item 		{
	fill:rgba(255, 35, 0, 0);
	position: relative;
	background: 
		}
	#karte .svg_hover .item:hover	{
	fill:var(--bs-red); 
	fill:rgba(255, 35, 0, 0);
	stroke-width: 5px;
	stroke: var(--bs-black);
	}	


/* --------- end KARTE -------- */




/*--------------------------------------------------------------
# NEWS
--------------------------------------------------------------*/
@media (max-width:767px)	{ 
	/*#news .card-img::before {
		content:none;
		display:none;
		}
	#news .card-img > * {
		position:static;
		width:100%;
		height:auto;
	#news .card-img-top {
		display:block;
		width:100%;
		height:auto;
		object-fit:contain;
		}*/
	
	#news .card-img {
		display:block;
		min-width:150px;
		max-width: 150px;
		height:auto;
		border-width: 4px !important
		}	
	#news .card-img:has(img.bg-placeholder) {
		display: none !important;
		}	
}
@media (max-width:575px)	{ 
	#news .card-img {
		min-width:100px;
		max-width: 100px;
		height: 100px
		}
}

	
/* --------- end NEWS -------- */




/*--------------------------------------------------------------
# DRUCKVERSION
--------------------------------------------------------------*/	
body#druck {
	background: url("../images/Logo_NDH.svg") no-repeat center 45px !important;
	background-size: auto 75px !important;
	background-color: #fff !important;
	color: #000 !important;
	margin: 1.5cm auto 0 auto !important;
	max-width: 90%;
	width: 20cm;
	padding: 120px 0 1cm 0 !important;
	}
	@media print {
	body#druck,
	body {
		background: url("../images/Logo_NDH.svg") no-repeat center 45px !important;
		background-size: auto 75px !important;
		background-color: #fff !important;
		color: #000 !important;
		margin: 1.5cm auto 0 auto !important;
		max-width: 16cm !important;
		padding: 120px 0 1cm 0 !important;
		font-size: 9pt !important;
		line-height: 1.5em;
		}
	}
	
body#druck main {
	margin-top: 0 !important;
	padding-top: 0 !important
	}	
#druck footer {
	display: none
	}
	@media print {
	#news_lang aside {
		display: none
		}
	}
	
#druck h1 {
	margin: 0 auto 1.7em auto !important;
	text-align: center;
	font-size: 22pt !important;
	line-height: 1.35em !important;
	}
	#druck h1::before   {
	left: 50%;
	transform: translateX(-50%);
	}
	#druck h2 {
	font-size: 17pt !important;
	}
	@media print {
	#news_lang h1 {
		margin: 0 auto 1.7em auto !important;
		text-align: center;
		font-size: 22pt !important;
		line-height: 1.35em !important;
		position: relative;
		display: inline-block
		}
	#news_lang h1::before   {
		left: 50%;
		transform: translateX(-50%);
		}	
	#news_lang h2 {
		font-size: 17pt !important;
		}		
	}
	
#druck h1 .topline {
	display: none
	}
	@media print {
	#news_lang h1 .topline {
		display: none
		}
	}
	
#druck h1 sub {
	font-size: 1.1rem !important;
	margin-top: .4em !important;
	margin-bottom: .4em !important
	}
	@media print {
	#druck h1 sub,
	#news_lang h1 sub {
		font-size: .8rem !important;
		margin-top: .4em !important;
		margin-bottom: .4em !important
		}		
	}
