@charset "utf-8";
/* CSS Document */


/* Fonts */
@import url('fonts/stylesheet.css');
@import url('fonts/fontello.css');
/*
font-family: 'Kanit', sans-serif;
font-family: 'Open Sans', sans-serif;
*/


/* Standard */
:root {
	--col-primary: #fcd21d;						/* globale 1. Projektfarbe */
		--col-primary-opa: 		rgba(19,85,160, 0.65);				/* mit Opazität */
		--col-primary-text: 	#FFF;								/* Textfarbe */
	--col-secondary: #3A3F3F;					/* globale 2. Projektfarbe */
		--col-secondary-opa:	rgba(240,128,27, 0.65);				/* mit Opazität */
		--col-secondary-text:	#FFF;								/* Textfarbe */
	--col-accent: #F90;							/* globale 3. Projektfarbe (Akzentfarbe) */
		--col-accent-opa: 		rgba(154,169,214, 0.65);		/* globale 3. Projektfarbe mit Opazität (Akzentfarbe) */
		--col-accent-text: 		rgb(75,83,91);						/* Textfarbe */
	--col-text: #333;							/* globale Schriftfarbe */
	--col-light: #FFF;							/* für Basis-Farbset z.B. im Gridblock */
	--col-dark: #222;							/* für Basis-Farbset z.B. im Gridblock */
	--col-overlay: 				rgba(120,100,80, 0.85);			/* für Lightbox-Overlays */
	--col-background:           rgb(163,170,159);				/* Farbe für Body-Background */
	
	--font-header: 				'Poppins', sans-serif;			/* globale Schriftart für Überschriften */
	--font-text: 				'Open Sans', sans-serif;		/* globale Schriftart für Texte */
	--font-accent: 				'Open Sans', sans-serif;		/* globale Schriftart für Akzente */
    
	--fontsize-text:            16px;							/* globale Basis-Schriftgröße für Text */
	--fontsize-header:          clamp(27px, 4vw, 3.75rem);		/* globale Schriftgröße für Header-liked Texte */
	--fontsize-title:           clamp(27px, 4vw, 2.4rem);		/* globale Schriftgröße für Modul-Titel */

	--fontweight-header:        bold;							/* globale Schriftstärke für Header-liked Texte */
	--fontweight-title:         bold;							/* globale Schriftstärke für Modul-Titel */
	
	--margin-xs: 1px;
	--margin-sm: 10px;
	--margin-md: 30px;
	--margin-lg: 50px;
	--margin-xl: 100px;
	
	--margin-neg-xs: -10px;
	--margin-neg-sm: -20px;
	--margin-neg-md: -40px;
	--margin-neg-lg: -60px;
	--margin-neg-xl: -80px;
	
	--padding-sm: 20px;
	--padding-md: 40px;
	--padding-lg: 60px;
	--padding-xl: 80px;
	--padding-smp: 3%;
	--padding-mdp: 7%;
	--padding-lgp: 11%;
	--padding-xlp: 15%;
	
	--borderRadius-xs: 4px;
	--borderRadius-sm: 9px;
	--borderRadius-md: 15px;
	--borderRadius-lg: 20px;

	--gap-xs: 1px;
	--gap-sm: 10px;
	--gap-md: 30px;
	--gap-lg: 50px;
	--gap-xl: 100px;
	
	--transform: skewY(0deg);
	--margin-divisor: 1;
	--padding-divisor: 1;
	--overlay-opacity: 1;
	
	--filter-grey: grayscale(1);
	--filter-blur: blur(3px);
	--filter-greyblur: grayscale(1) blur(3px);
	
	--fx-liftup-transf: translateY(-7px);
	--fx-liftup-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px;
	--fx-scaleup: scale(1.035);
    
    
    /* projektspezifische Zusatzangaben */
	/*--p-col-primary:            rgb(7,52,45);*/
}


* { margin: 0px; padding: 0px; box-sizing: border-box; }

html { }
body { background: #FFF; padding: 0px 0px; }
body,td,th { font-family: 'Open Sans', sans-serif; font-size: 15px; color: #666; line-height: 1.5; }

#clearing, .clearing { clear: both; font-size: 0px; }
#clearleft, .clearleft { clear: left; font-size: 0px; }
#clearright, .clearright { clear: right; font-size: 0px; }
#clearfix, .clearfix { display: block !important; width: 100% !important; height: 0px !important; overflow: hidden !important; font-size: 0px !important; float: none !important; }
	#clearfix:after, .clearfix:after {
		content: ".";
		display: inline-block !important;
		height: 0px !important;
		width: 100% !important;
		clear: both;
		visibility: hidden !important;
		padding: 0px !important;
		margin: 0px !important;
		font-size: 0px !important;
	}



/* globale Klassen für Gridblock + Module */
.pdT-15px { padding-top: 15px; }
.pdB-15px { padding-bottom: 15px; }
.pdH-15px { padding-left: 15px; padding-right: 15px; }
.pdT-sm { padding-top: var(--padding-sm); }
.pdT-md { padding-top: var(--padding-md); }
.pdT-lg { padding-top: var(--padding-lg); }
.pdT-xl { padding-top: var(--padding-xl); }
	.pdT-smp { padding-top: var(--padding-smp); }
	.pdT-mdp { padding-top: var(--padding-mdp); }
	.pdT-lgp { padding-top: var(--padding-lgp); }
	.pdT-xlp { padding-top: var(--padding-xlp); }
.pdB-sm { padding-bottom: var(--padding-sm); }
.pdB-md { padding-bottom: var(--padding-md); }
.pdB-lg { padding-bottom: var(--padding-lg); }
.pdB-xl { padding-bottom: var(--padding-xl); }
	.pdB-smp { padding-bottom: var(--padding-smp); }
	.pdB-mdp { padding-bottom: var(--padding-mdp); }
	.pdB-lgp { padding-bottom: var(--padding-lgp); }
	.pdB-xlp { padding-bottom: var(--padding-xlp); }
.pdH-sm { padding-left: var(--padding-sm); padding-right: var(--padding-sm); }
.pdH-md { padding-left: var(--padding-md); padding-right: var(--padding-md); }
.pdH-lg { padding-left: var(--padding-lg); padding-right: var(--padding-lg); }
.pdH-xl { padding-left: var(--padding-xl); padding-right: var(--padding-xl); }
	.pdH-smp { padding-left: var(--padding-smp); padding-right: var(--padding-smp); }
	.pdH-mdp { padding-left: var(--padding-mdp); padding-right: var(--padding-mdp); }
	.pdH-lgp { padding-left: var(--padding-lgp); padding-right: var(--padding-lgp); }
	.pdH-xlp { padding-left: var(--padding-xlp); padding-right: var(--padding-xlp); }

.pdM-12 { --padding-divisor: 0.5 !important; }
.pdM-14 { --padding-divisor: 0.25 !important; }
.pdM-34 { --padding-divisor: 0.75 !important; }

.mgT-xs:not(.mgOnlyMobile) { margin-top: var(--margin-xs) !important; }
.mgT-sm:not(.mgOnlyMobile) { margin-top: var(--margin-sm) !important; }
.mgT-md:not(.mgOnlyMobile) { margin-top: var(--margin-md) !important; }
.mgT-lg:not(.mgOnlyMobile) { margin-top: var(--margin-lg) !important; }
.mgT-xl:not(.mgOnlyMobile) { margin-top: var(--margin-xl) !important; }
.mgB-xs:not(.mgOnlyMobile) { margin-bottom: var(--margin-xs) !important; }
.mgB-sm:not(.mgOnlyMobile) { margin-bottom: var(--margin-sm) !important; }
.mgB-md:not(.mgOnlyMobile) { margin-bottom: var(--margin-md) !important; }
.mgB-lg:not(.mgOnlyMobile) { margin-bottom: var(--margin-lg) !important; }
.mgB-xl:not(.mgOnlyMobile) { margin-bottom: var(--margin-xl) !important; }

.mgNT-xs:not(.mgOnlyMobile) { margin-top: var(--margin-neg-xs) !important; }
.mgNT-sm:not(.mgOnlyMobile) { margin-top: var(--margin-neg-sm) !important; }
.mgNT-md:not(.mgOnlyMobile) { margin-top: var(--margin-neg-md) !important; }
.mgNT-lg:not(.mgOnlyMobile) { margin-top: var(--margin-neg-lg) !important; }
.mgNT-xl:not(.mgOnlyMobile) { margin-top: var(--margin-neg-xl) !important; }
.mgNB-xs:not(.mgOnlyMobile) { margin-bottom: var(--margin-neg-xs) !important; }
.mgNB-sm:not(.mgOnlyMobile) { margin-bottom: var(--margin-neg-sm) !important; }
.mgNB-md:not(.mgOnlyMobile) { margin-bottom: var(--margin-neg-md) !important; }
.mgNB-lg:not(.mgOnlyMobile) { margin-bottom: var(--margin-neg-lg) !important; }
.mgNB-xl:not(.mgOnlyMobile) { margin-bottom: var(--margin-neg-xl) !important; }

.bgCol-primary { background-color: var(--col-primary); }
.bgCol-secondary { background-color: var(--col-secondary); }
.bgCol-accent { background-color: var(--col-accent); }

.bgFill-cover { background-size: cover; background-repeat: no-repeat !important; }
.bgFill-contain { background-size: contain; background-repeat: no-repeat !important; }
.bgFill-repeat { background-repeat: repeat !important; }
.bgFill-repeatX { background-repeat: repeat-x !important; }
.bgFill-repeatY { background-repeat: repeat-y !important; }

.bgAlign-cc { background-position: center center; }
.bgAlign-lt { background-position: left top; }
.bgAlign-rt { background-position: right top; }
.bgAlign-rb { background-position: right bottom; }
.bgAlign-lb { background-position: left bottom; }
.bgAlign-ct { background-position: center top; }
.bgAlign-cr { background-position: center right; }
.bgAlign-cb { background-position: center bottom; }
.bgAlign-cl { background-position: center left; }

.bgSkewY-smb { --transform: skewY(2deg); transform: var(--transform); }
	.bgSkewY-smb > div { transform: skewY(-2deg); }
.bgSkewY-mdb { --transform: skewY(5deg); transform: var(--transform); }
	.bgSkewY-mdb > div { transform: skewY(-5deg); }
.bgSkewY-lgb { --transform: skewY(8deg); transform: var(--transform); }
	.bgSkewY-lgb > div { transform: skewY(-8deg); }
.bgSkewY-smt { --transform: skewY(-2deg); transform: var(--transform); }
	.bgSkewY-smt > div { transform: skewY(2deg); }
.bgSkewY-mdt { --transform: skewY(-5deg); transform: var(--transform); }
	.bgSkewY-mdt > div { transform: skewY(5deg); }
.bgSkewY-lgt { --transform: skewY(-8deg); transform: var(--transform); }
	.bgSkewY-lgt > div { transform: skewY(8deg); }

.bgTrOr-left { transform-origin: left; }
.bgTrOr-right { transform-origin: right; }

.bgOlay-dark:after, .bgOlay-light:after, .bgOlay-vigdark:after, .bgOlay-viglight:after, .bgOlay-dotdark:after, .bgOlay-dotlight:after, .bgOlay-linesdark:after, .bgOlay-lineslight:after, .bgOlay-diagdark:after, .bgOlay-diaglight:after { content: ''; position: absolute; z-index: 1; width: 100%; height: 100%; top: 0px; left: 0px; opacity: calc(var(--overlay-opacity) / 100); }
.bgOlay-dark:after { background: rgba(0,0,0, 1); }
.bgOlay-light:after { background: rgba(255,255,255, 1); }
.bgOlay-vigdark:after { background: radial-gradient(transparent 60%, rgba(0,0,0, 1)); }
.bgOlay-viglight:after { background: radial-gradient(transparent 60%, rgba(255,255,255, 1)); }
.bgOlay-dotdark:after { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGAQMAAADaAn0LAAAABGdBTUEAALGPC/xhBQAAAAZQTFRFAAAAAAAApWe5zwAAAAF0Uk5TAEDm2GYAAAAPSURBVAjXY2AAAgMgBAIAAkwAYT8MS18AAAAASUVORK5CYII=') repeat; }
.bgOlay-dotlight:after { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGAQMAAADaAn0LAAAABGdBTUEAALGPC/xhBQAAAAZQTFRFAAAA////pdmf3QAAAAF0Uk5TAEDm2GYAAAAPSURBVAjXY2AAAgMgBAIAAkwAYT8MS18AAAAASUVORK5CYII=') repeat; }
.bgOlay-linesdark:after { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAgMAAADwAc52AAAABGdBTUEAALGPC/xhBQAAAAlQTFRFAAAAAAAAAAAAg2PpwAAAAAJ0Uk5TgABNEFVzAAAAFElEQVQI12MIdWAAolUNDEAQ6gAAF9YC6ok5McwAAAAASUVORK5CYII=') repeat; }
.bgOlay-lineslight:after { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAgMAAADwAc52AAAABGdBTUEAALGPC/xhBQAAAAlQTFRF////AAAA////fu+PTwAAAAJ0Uk5TgABNEFVzAAAAFElEQVQI12MIdWAAolUNDEAQ6gAAF9YC6ok5McwAAAAASUVORK5CYII=') repeat; }
.bgOlay-diagdark:after { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABGdBTUEAALGPC/xhBQAAAAZQTFRFAAAAAAAApWe5zwAAAAF0Uk5TAEDm2GYAAAASSURBVAjXY2hg4GAQYFBgcAAABbIA+Zl88MsAAAAASUVORK5CYII=') repeat; }
.bgOlay-diaglight:after { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAABGdBTUEAALGPC/xhBQAAAAZQTFRFAAAA////pdmf3QAAAAF0Uk5TAEDm2GYAAAASSURBVAjXY2hg4GAQYFBgcAAABbIA+Zl88MsAAAAASUVORK5CYII=') repeat; }
.bgOlay-blur:after { backdrop-filter: blur(5px); }

.shadow-dh { -webkit-box-shadow: 6px 6px 3px 0 rgba(0,0,0,0.4); box-shadow: 6px 6px 3px 0 rgba(0,0,0,0.4); }			/* schlag hart */
.shadow-dm { -webkit-box-shadow: 7px 7px 9px 0 rgba(0,0,0,0.4); box-shadow: 7px 7px 9px 0 rgba(0,0,0,0.4); }			/* schlag mittel */
.shadow-ds { -webkit-box-shadow: 10px 10px 20px 0 rgba(0,0,0,0.4); box-shadow: 10px 10px 20px 0 rgba(0,0,0,0.4); }		/* schlag soft */
.shadow-gs { -webkit-box-shadow: 0 0 20px 0 rgba(0,0,0,0.25); box-shadow: 0 0 20px 0 rgba(0,0,0,0.25); }				/* glühen klein */
.shadow-gm { -webkit-box-shadow: 0 0 32px 0 rgba(0,0,0,0.33); box-shadow: 0 0 32px 0 rgba(0,0,0,0.33); }				/* glühen mittel */
.shadow-gl { -webkit-box-shadow: 0 0 50px 2px rgba(0,0,0,0.4); box-shadow: 0 0 50px 2px rgba(0,0,0,0.4); }				/* glühen groß */
.shadow-is { -webkit-box-shadow: inset 0 0 20px 0 rgba(0,0,0,0.4); box-shadow: inset 0 0 20px 0 rgba(0,0,0,0.4); }		/* inline klein */
.shadow-im { -webkit-box-shadow: inset 0 0 32px 0 rgba(0,0,0,0.4); box-shadow: inset 0 0 32px 0 rgba(0,0,0,0.4); }		/* inline mittel */
.shadow-il { -webkit-box-shadow: inset 0 0 40px 2px rgba(0,0,0,0.5); box-shadow: inset 0 0 40px 2px rgba(0,0,0,0.5); }	/* inline groß */
.shadow-rs { -webkit-box-shadow: rgba(0, 0, 0, 0.45) 0px 25px 20px -20px; box-shadow: rgba(0, 0, 0, 0.45) 0px 25px 20px -20px; }																/* angehoben klein */
.shadow-rm { -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10px 10px; box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 28px, rgba(0, 0, 0, 0.22) 0px 10px 10px; }		/* angehoben mittel */
.shadow-rl { -webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px; box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px; }		/* angehoben groß */
.shadow-ft { box-shadow: -10px -10px 0px 0px rgba(0,0,0, 0.38); }														/* gerahmt oben */
.shadow-fb { box-shadow: 10px 10px 0px 0px rgba(0,0,0, 0.38); }															/* gerahmt unten */
.shadow-fa { box-shadow: 0px 6px 0px 10px rgba(0,0,0, 0.38); }															/* gerahmt rundum */
.shadow-ss { box-shadow: -18px 0px 10px -17px rgba(0,0,0, 0.38), 18px 0px 10px -17px rgba(0,0,0, 0.38); }				/* seiten klein */
.shadow-sm { box-shadow: -24px 0px 13px -17px rgba(0,0,0, 0.38), 24px 0px 13px -17px rgba(0,0,0, 0.38); }				/* seiten mittel */
.shadow-sl { box-shadow: -30px 0px 15px -17px rgba(0,0,0, 0.38), 30px 0px 15px -17px rgba(0,0,0, 0.38); }				/* seiten groß */

.bRadius.bRadius-50p, 	.gridblock .bRadius.bRadius-50p:after, 	.gridblock .bRadius.bRadius-50p > .farallax-wrapper { -webkit-border-radius: 50%; border-radius: 50%; }
.bRadius.bRadius-xs,	.gridblock .bRadius.bRadius-xs:after, 	.gridblock .bRadius.bRadius-xs > .farallax-wrapper { -webkit-border-radius: var(--borderRadius-xs); border-radius: var(--borderRadius-xs); }
.bRadius.bRadius-sm, 	.gridblock .bRadius.bRadius-sm:after, 	.gridblock .bRadius.bRadius-sm > .farallax-wrapper { -webkit-border-radius: var(--borderRadius-sm); border-radius: var(--borderRadius-sm); }
.bRadius.bRadius-md, 	.gridblock .bRadius.bRadius-md:after, 	.gridblock .bRadius.bRadius-md > .farallax-wrapper { -webkit-border-radius: var(--borderRadius-md); border-radius: var(--borderRadius-md); }
.bRadius.bRadius-lg, 	.gridblock .bRadius.bRadius-lg:after, 	.gridblock .bRadius.bRadius-lg > .farallax-wrapper { -webkit-border-radius: var(--borderRadius-lg); border-radius: var(--borderRadius-lg); }
.bRadiusTL-none, .gridblock .bRadiusTL-none:after, .gridblock .bRadiusTL-none > .farallax-wrapper { -webkit-border-top-left-radius: 0px !important; border-top-left-radius: 0px !important; }
.bRadiusTR-none, .gridblock .bRadiusTR-none:after, .gridblock .bRadiusTR-none > .farallax-wrapper { -webkit-border-top-right-radius: 0px !important; border-top-right-radius: 0px !important; }
.bRadiusBL-none, .gridblock .bRadiusBL-none:after, .gridblock .bRadiusBL-none > .farallax-wrapper { -webkit-border-bottom-left-radius: 0px !important; border-bottom-left-radius: 0px !important; }
.bRadiusBR-none, .gridblock .bRadiusBR-none:after, .gridblock .bRadiusBR-none > .farallax-wrapper { -webkit-border-bottom-right-radius: 0px !important; border-bottom-right-radius: 0px !important; }

/* für Abwärtskompatibilität + Inhaltsmodule */
.bRadius.bRadius-ltrt, .gridblock .bRadius.bRadius-ltrt:after, .gridblock .bRadius.bRadius-ltrt > .farallax-wrapper { -webkit-border-bottom-left-radius: 0px; -webkit-border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; }
.bRadius.bRadius-lbrb, .gridblock .bRadius.bRadius-lbrb:after, .gridblock .bRadius.bRadius-lbrb > .farallax-wrapper { -webkit-border-top-left-radius: 0px; -webkit-border-top-right-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; }
.bRadius.bRadius-ltrb, .gridblock .bRadius.bRadius-ltrb:after, .gridblock .bRadius.bRadius-ltrb > .farallax-wrapper { -webkit-border-top-right-radius: 0px; -webkit-border-bottom-left-radius: 0px; border-top-right-radius: 0px; border-bottom-left-radius: 0px; }
.bRadius.bRadius-rtlb, .gridblock .bRadius.bRadius-rtlb:after, .gridblock .bRadius.bRadius-rtlb > .farallax-wrapper { -webkit-border-top-left-radius: 0px; -webkit-border-bottom-right-radius: 0px; border-top-left-radius: 0px; border-bottom-right-radius: 0px; }

.filter-grey { filter: grayscale(1); }
.filter-color { filter: grayscale(0); }
.filter-blur { filter: blur(3px); }
.filter-greyblur { filter: grayscale(1) blur(3px); }

.border-xs-light { border: 1px solid var(--col-light); }						/* z.B. genutzt im Modul Einzelbild */
.border-sm-light { border: 5px solid var(--col-light); }
.border-lg-light { border: 15px solid var(--col-light); }
.border-xs-dark  { border: 1px solid var(--col-dark); }
.border-sm-dark  { border: 5px solid var(--col-dark); }
.border-lg-dark  { border: 15px solid var(--col-dark); }
.border-xs-primary  { border: 1px solid; border-color: var(--col-primary); }
.border-sm-primary  { border: 5px solid; border-color: var(--col-primary); }
.border-lg-primary  { border: 15px solid; border-color: var(--col-primary); }
.border-xs-secondary  { border: 1px solid; border-color: var(--col-secondary); }
.border-sm-secondary  { border: 5px solid; border-color: var(--col-secondary); }
.border-lg-secondary  { border: 15px solid; border-color: var(--col-secondary); }
.border-xs-accent  { border: 1px solid; border-color: var(--col-accent); }
.border-sm-accent  { border: 5px solid; border-color: var(--col-accent); }
.border-lg-accent  { border: 15px solid; border-color: var(--col-accent); }

.width-margin { margin-left: 50px; margin-right: 50px; }
.mw500 { max-width: 500px; }
.mw600 { max-width: 600px; }
.mw700 { max-width: 700px; }
.mw800 { max-width: 800px; }
.mw900 { max-width: 900px; }
.mw1000 { max-width: 1000px; }
.mw1100 { max-width: 1100px; }
.mw1200 { max-width: 1200px; }
.mw1300 { max-width: 1300px; }
.mw1400 { max-width: 1400px; }
.mw1500 { max-width: 1500px; }
.mw1600 { max-width: 1600px; }
.mw1700 { max-width: 1700px; }
.mw1800 { max-width: 1800px; }

.wa-left { margin-left: 0px !important; margin-right: auto !important; }
.wa-center { margin-left: auto !important; margin-right: auto !important; }
.wa-right { margin-left: auto !important; margin-right: 0px !important; }
.ha-top { align-self: start; }
.ha-center { align-self: center; }
.ha-bottom { align-self: end; }

.ofHidden { overflow: hidden; }
.hide, .content-hide { display: none !important; }

.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }
.justify { text-align: justify; }

/* AOS-Effekt-Anpassung für Neigung (skew) */
[data-aos^=fade-][data-aos^=fade-].aos-animate {transform:translateZ(1px) var(--transform) !important; }
[data-aos=fade-up] { 							transform:translate3d(0,100px,0) var(--transform) !important; }
[data-aos=fade-down] { 							transform:translate3d(0,-100px,0) var(--transform) !important; }
[data-aos=fade-right] { 						transform:translate3d(-100px,0,0) var(--transform) !important; }
[data-aos=fade-left] { 							transform:translate3d(100px,0,0) var(--transform) !important; }

[data-aos=flip-left] { 							transform:perspective(2500px) rotateY(-100deg) var(--transform) !important; }
[data-aos=flip-left].aos-animate { 				transform:perspective(2500px) rotateY(0) var(--transform) !important; }
[data-aos=flip-right] { 						transform:perspective(2500px) rotateY(100deg) var(--transform) !important; }
[data-aos=flip-right].aos-animate { 			transform:perspective(2500px) rotateY(0) var(--transform) !important; }
[data-aos=flip-up] {							transform:perspective(2500px) rotateX(-100deg) var(--transform) !important; }
[data-aos=flip-up].aos-animate { 				transform:perspective(2500px) rotateX(0) var(--transform) !important; }
[data-aos=flip-down] { 							transform:perspective(2500px) rotateX(100deg) var(--transform) !important; }
[data-aos=flip-down].aos-animate { 				transform:perspective(2500px) rotateX(0) var(--transform) !important; }

[data-aos^=zoom][data-aos^=zoom].aos-animate { 	transform:translateZ(1px) scale(1) var(--transform) !important; }
[data-aos=zoom-in] { 							transform:scale(.6) var(--transform) !important; }
[data-aos=zoom-out] { 							transform:scale(1.2) var(--transform) !important; }

/* BG-Video + Parallax-Effekt (FM) v1.0 */
.farallax-wrapper, .background-video { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 0; overflow: hidden; pointer-events: none; backface-visibility: hidden; }
.farallax-image { background: none; background-repeat: no-repeat; background-position: center top; background-size: cover; position: absolute; margin: 0px; padding: 0px; bottom: 0px; left: 0px; width: 100.1%; height: 100.1%; display: block; pointer-events: none; backface-visibility: hidden; will-change: transform height; }
	.bgAlign-lt .farallax-image, .bgAlign-lb .farallax-image, .bgAlign-cl .farallax-image { background-position: left top; }
	.bgAlign-rt .farallax-image, .bgAlign-rb .farallax-image, .bgAlign-cr .farallax-image { background-position: right top; }
video.background-video { object-fit: cover; }
	.bgAlign-lt video.background-video { object-position: cleft top; }
	.bgAlign-rt video.background-video { object-position: right top; }
	.bgAlign-rb video.background-video { object-position: right bottom; }
	.bgAlign-lb video.background-video { object-position: left bottom; }
	.bgAlign-ct video.background-video { object-position: center top; }
	.bgAlign-cr video.background-video { object-position: center right; }
	.bgAlign-cb video.background-video { object-position: center bottom; }
	.bgAlign-cl video.background-video { object-position: center left; }

/* Projekt-Anpassungen globaler Klassen */
/*
.bgOlay-xxxx:after { content: ''; position: absolute; z-index: 1; width: 100%; height: 63%; bottom: 0px; left: 0px; }
.bgOlay-xxxx:after { background: linear-gradient(0deg, #1355A0 0%, rgba(249,197,180,0) 100%); }	
*/	



/* Allgemein */
h1, h2, h3, h4, h5, h6 {
	font-family: 	var(--font-header);
	font-size: 		var(--fontsize-header);
	font-weight: 	var(--fontweight-header);
	color: 			var(--col-primary);
	line-height: 	var(--lineheight-header);
	margin: 0px 0px 37px;
	text-align: left;
	letter-spacing: normal;
	padding: 0px 0px;
	/*text-transform: uppercase;*/
	position: relative;
	overflow-wrap: break-word;
	word-wrap: break-word;
	word-break: break-word;
	-webkit-hyphens: auto;
	hyphens: auto;	
}
.ueberschrift > * { /*letter-spacing: 8px; text-transform: uppercase; margin: 0px 0px 60px;*/ }

h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
	color: var(--col-primary-opa);	
	display: block;
	font-weight: normal;
	font-size: 0.7em;
	margin-top: 7px;
	font-family: inherit;
	letter-spacing: inherit;
	line-height: 1.1;
}

.seitenueberschrift h1 { /*margin-bottom: 25px; font-family: var(--font-accent); font-size: 48px; line-height: 1.1em; letter-spacing: 0px;*/ }
.ueberschrift { display: flex; align-items: center; justify-items: center; margin: 0px 0px 60px; }
	.ueberschrift-h3, .ueberschrift-h4, .ueberschrift-h5, .ueberschrift-h6 { margin-bottom: 45px; }

h3, h4, h5, h6, .ueberschrift-h3, .ueberschrift-h4, .ueberschrift-h5, .ueberschrift-h6s { margin-bottom: 30px; }
h3 { 	font-size: clamp(23px, 4vw, 2.2rem); }
h4 { 	font-size: clamp(21px, 4vw, 2.0rem); }
h5, h6 {font-size: clamp(19px, 4vw, 1.8rem); }

h1 span.sep, h2 span.sep, h3 span.sep, h4 span.sep, h5 span.sep, h6 span.sep { display: none; /*background: #a3ae45; height: 2px; max-width: 200px; margin: 5px auto 5px; overflow: hidden;*/ }
.ueberschrift h1:after, .ueberschrift h2:after, .ueberschrift h3:after, .ueberschrift h4:after, .ueberschrift h5:after, .ueberschrift h6:after { content: ''; display: block; height: 2px; background: var(--col-primary); width: 80px; margin: 27px auto 0px; }
h4:after, h5:after, h6:after { margin-top: 20px; }
seitenueberschrift h1:after { margin-top: 20px; }

.ueberschrift.left > * 		{ text-align: left; }
.ueberschrift.center > * 	{ text-align: center; }
.ueberschrift.right > * 	{ text-align: right; }

/* Farb-Themes */
/*.bc-dark .ueberschrift > *:after { background: var(--col-accent); }*/


p { margin-bottom: 15px; }

a { color: #000; transition: all 0.5s ease; }
a:hover { text-decoration: none; }
a img { border: none; }

hr { height: 0px; width: 100%; text-decoration: none; text-align: center; border-top-width: 1px; border-top-style: dotted; border-top-color: #999999; margin: 20px 0px; }

ul { list-style-type: square; margin-left: 25px; line-height: 1.25; margin-bottom: 15px; }
li { margin-bottom: 10px; }
ol { margin-left: 25px; line-height: 1.25; list-style-position: inside; }



/* Blöcke */
main, header, section, nav, article, footer, aside, .slider-wrapper { display: block; position: relative; z-index: 5; }
.inner { max-width: 1600px; margin: 0px auto; }

header { padding: 0px 50px; z-index: 100; background: #FFF; transition: all 0.3s ease; }
header .inner { padding: 40px 0px; display: table; width: 100%; transition: all 0.3s ease; }
	header .inner > div { display: table-cell; vertical-align: top; }
.logo { }
	.logo img { width: 100%; max-width: 400px; height: auto; transition: all 0.3s ease; }
	
header.fixto-fixed { position: fixed; left: 0px !important; right: 0px !important; width: auto !important; box-shadow: 0px -2px 10px 0px rgba(0,0,0, 0.4); margin: 0px; padding: 0px 25px; }
	header.fixto-fixed .inner { height: 60px; padding: 15px 0px; }
	.fixto-fixed .logo img { max-height: 60px; width: auto; }	
	.fixto-fixed .navopener { right: 25px; }
	
.suche { text-align: right; padding: 35px 0px 0px; color: #AAA; }
	.suche form { position: relative; max-width: none; width: auto; border: none; }
	.suche input { width: 150px; border: 1px solid #CCC; border-radius: 3px; margin: 0px; padding: 5px 35px 5px 8px; font-family: 'Open Sans', sans-serif; font-size: 14px; color: #999; }
	.suche input[type=submit], .suche span { position: absolute; top: 0px; right: 0px; bottom: 0px; z-index: 5; width: 30px; background: none; text-indent: -555px; border: none; padding: 0px; }
	.suche span { width: auto; z-index: 1; text-indent: 0px; top: 4px; right: 5px; }


#mobileNav { position: fixed; top: 0px; right: -250px; }
.navopener, .navcloser, #mobileNav { display: none; }
.navtop, .navopener-fixed { position: fixed; bottom: 30px; right: -50px; z-index: 1000; display: block; width: 41px; height: 41px; overflow: hidden; margin: 0px auto; cursor: pointer; background: #FFF; text-align: center; color: #3A3F3F; font-size: 25px; box-shadow: 2px 5px 25px -7px #000; border-radius: 50% 50% 0% 50%; border: 2px solid #CCC; /* transition: all 0.5s ease; */
	-webkit-transition: all 350ms cubic-bezier(0.600, 0, 0.735, 0.045); transition: all 350ms cubic-bezier(0.600, -0.280, 0.735, 0.045); 				/* easeInBack */
	-webkit-transition-timing-function: cubic-bezier(0.600, 0, 0.735, 0.045); transition-timing-function: cubic-bezier(0.600, -0.280, 0.735, 0.045); 	/* easeInBack */
}
	/*.navtop:hover { background: #FFF; color: #000; box-shadow: 2px 2px 7px 0px rgba(0,0,0, 0.35); }*/
	.navtop span { display: none; }
	.navtop i { position: absolute; top: -2px; left: 1px; }
.navtop.ntshow { right: 30px;
	-webkit-transition: all 350ms cubic-bezier(0.175, 0.885, 0.320, 1); transition: all 350ms cubic-bezier(0.175, 0.885, 0.320, 1.275); 				/* easeOutBack */
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1); transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.275);		/* easeOutBack */
}


nav { padding: 0px; border-top: 1px solid #CCC; border-bottom: 1px solid #EEE; transition: all 0.5s ease; z-index: 10; }
	/*nav.fixto-fixed { z-index: 1000; }*/
nav ul { list-style-type: none; line-height: normal; margin: 0px; padding: 0px; }
nav li { display: inline; margin: 0px 10px 0px 0px; }
nav li a { position: relative; font-size: 15px; color: #393F3F; text-transform: uppercase; display: inline-block; text-decoration: none; padding: 30px 20px; overflow: hidden; }
nav li a:hover, nav li a.selected { color: #000; }
	nav li a.selected { font-weight: bold; color: #D62F30; }
	nav li a:before { content: ''; position: absolute; top: 0px; left: 0px; width: 0%; height: 4px; margin: 0px 50%; background: #DDD; transition: all 0.25s ease; }
		nav li a:hover:before, nav li a.selected:before { width: 100%; margin: 0px 0%; }
		nav li a.selected:before { background: #D62F30; }
	nav li a:after { content: ''; position: absolute; bottom: -40px; left: 50%; background: #D62F30; width: 20px; height: 20px; margin-left: -10px; transform: rotate(45deg); transition: all 0.3s ease; }
		nav li.haschilds a:hover:after { bottom: -8px; }
nav li.markit a { }
nav ul ul ul { display: none; }


/* Klappmenüsteuerung CSS-Klappmenü */
/* Anpassung der Hauptebene - Klappmenü-Opener */
ul.dropdown { position: relative; }
/*ul.dropdown li.haschilds > a { background: url(nav-haschilds.png) right center no-repeat; padding-right: 12px; }*/
ul.dropdown li:hover a { color: #000; }
	ul.dropdown li:hover a:before { width: 100%; margin: 0px 0%; }
	ul.dropdown li.haschilds:hover a:after { bottom: -8px; }

/* Design des Klappmenüs */
ul.dropdown ul { visibility: hidden; opacity: 0; position: absolute; top: 71px; left: 0%; margin: 0px; padding: 20px 0px 10px; z-index: 0; width: 100%; height: auto; text-transform: none; background: #FFF; box-shadow: 0 10px 25px -15px #000; transition: all 0.3s ease; }
	ul.dropdown ul:before { content: ''; position: absolute; top: 0px; left: 0px; right: 0px; display: block; height: 10px; background: #D62F30; }
ul.dropdown ul li { display: inline-block; margin: 0px; padding: 0px; height: auto; min-height: 0px; width: 185px; border: none; transition: all 0.5s ease; word-wrap: break-word; }
	ul.dropdown ul li:hover { transform: translateX(10px); }
ul.dropdown ul li.first { }

ul.dropdown ul { display: table; pointer-events: none; }
	ul.dropdown ul > div { display: table-cell; vertical-align: top; }
	ul.dropdown ul .childlist { }
	ul.dropdown ul .childtitle { position: relative; width: 35%; padding: 20px 40px 20px; font-family: 'Kanit', sans-serif; font-size: 30px; font-weight: 100; line-height: 1.25; color: #999; text-transform: uppercase; }
		ul.dropdown ul .childtitle:before { content: ''; width: 1px; background: #DDD; position: absolute; left: 0px; top: 10px; bottom: 10px; }

/* Design der Links */
ul.dropdown li:hover ul li a.hide { color: #fff; background: none; }
ul.dropdown li:hover ul li:hover a.hide { background: none; color: #000; }
ul.dropdown ul li a, ul.dropdown li:hover ul li a { display: block; margin: 0px; padding: 15px 20px; font-weight: bold; color: #393F3F; }
	ul.dropdown ul li a:before, ul.dropdown ul li a:after { display: none !important; }
ul.dropdown ul li a.first { border: none !important; }
ul.dropdown ul li a:hover, ul.dropdown ul li a.selected { }
	ul.dropdown ul li a.selected { color: #D62F30 !important; }

/* show Status */
ul.dropdown li.haschilds a:hover+ul, ul.dropdown li ul:hover, ul.dropdown li ul.opened { z-index: 10000; visibility: visible; opacity: 1; pointer-events: auto; }
/* Klappmenü - ENDE */


section { /*max-width: 1700px;*/ margin: 0px auto; }
	section#opener { }
	section#content { padding: 0px 100px 0px; overflow: hidden; }


.slider-wrapper { position: relative;  z-index: 7; background: none; }
.slider { position: relative; z-index: 1; height: 250px; background: #FFF; /*background-color: rgba(204,204,204, 0.33);*/ }
	.home .slider { height: 600px; }
#mainSlider, .sliderBackgroundImage, #mainSlider > div { width: 100%; height: 100%; }
	/*#mainSlider > .camera_loader { width: 36px; height: 36px; }*/
	#mainSlider .slick-track { height: 100%; }
	#mainSlider .slick-slide { background-size: cover; background-position: center center; }
.sliderBackgroundImage { background-size: cover; background-position: center center; }
	
.slider-info { position: relative; z-index: 5; max-width: 1050px; margin: -99px auto 0px; /*overflow: hidden;*/ }
.slider-info > div > div { visibility: hidden; display: inline-block; background: #5A738A; color: #FFF; font-size: 38px; font-weight: 600; text-transform: uppercase !important; text-shadow: 1px 1px 2px #000; padding: 26px 35px; opacity: 0; transform: translate(50px); transition: all 0.5s ease; }
	.slider-info .si-contact { background: none; font-size: 28px; font-weight: 700; padding: 0px; text-shadow: none; transition: all 0.85s ease; }
		.slider-info .si-contact a { display: inline-block; background: #C6D0D7; color: #FFF; text-decoration: none; padding: 18px 35px; }
			.slider-info .si-contact a:hover { color: #D62F30; }

.si-text.showStart, .si-contact.showStart { visibility: visible; }
.si-text.showFadeIn, .si-contact.showFadeIn { opacity: 1; transform: translate(0px); }
.si-text.showFadeOut, .si-contact.showFadeOut { opacity: 0; transform: translate(-50px); }



.content { min-height: 400px; overflow: hidden; }
.content img { max-width: 100%; height: auto; }		/* maximale Bildbreite bei mobiler Ansicht für Inhaltsbilder */


footer { background: #747777; color: #FFF; font-size: 16px; }
footer .inner { max-width: 1700px; margin: 0px auto; padding: 100px 150px 120px; position: relative; }
footer ul { list-style-type: none; line-height: 1.5; margin: 0px; padding: 0px; }
footer li { display: block; margin: 0px 0px 0px 0px; transition: all 0.5s ease; }
	footer li:hover { transform: translateX(10px); }
footer a { text-decoration: none; color: #FFF; }

/* Dummy NL-Anmeldung */
.footerletter { position: absolute; top: -40px; left: 245px; right: 245px; z-index: 100; height: 80px; margin: 0px auto 0px; background: #FFF; font-size: 15px; color: #666; box-shadow: 0px 2px 10px 0px rgba(0,0,0, 0.4); overflow: hidden; padding: 20px 75px; }
.footerletter .fl-group { display: -ms-grid; display: grid; -ms-grid-columns: 1fr 175px; grid-template-columns: 1fr 175px; column-gap: 75px; grid-column-gap: 75px; grid-auto-rows: 1fr; -ms-grid-column-align: left; justify-items: left; -ms-flex-align: start; align-items: start; }
	.footerletter .fl-group > input { width: 100%; }
.footerletter .fl-opener { position: absolute; top: 0px; left: 0px; z-index: 10; width: 100%; height: 100%; cursor: pointer; }
.footerletter .fl-placeholder { position: absolute; top: 30px; left: 75px; right: 75px; z-index: 5; color: #666; line-height: 1.25; }

/* NL-Anmeldung */
.footerletter form, .footerform form { max-width: none; }
.footerletter input, .footerform input, .footerletter select, .footerform select { border: none; border-bottom: 1px solid #CC0918; padding: 11px 5px; font-size: 15px; }
.footerletter a.submit, .footerform a.submit { width: 175px; border: none; text-decoration: none; text-transform: uppercase; font-size: 18px; padding: 8px 40px; -mozborder-radius: 3px; border-radius: 3px; background: #CC0918; font-family: 'Kanit', sans-serif; font-weight: normal; color: #FFF; text-align: center; cursor: default; }
	.footerletter a.submit:hover, .footerform a.submit:hover { background: #3A3F3F; }
	
.footerform { opacity: 0; position: fixed; top: 50%; left: 50%; width: 600px; height: 474px; margin: -237px 0px 0px -300px; padding: 0px; background: #FFF; box-shadow: 0 5px 25px -5px #000; z-index: -1; opacity: 0; transition: all 0.25s ease; }
	.footerform.overlayShow { z-index: 9010; opacity: 1; }
	.footerform-body { overflow-x: hidden; overflow-y: hidden; }
.footerform span.ff-close { position: absolute; top: 0px; left: 50%; z-index: 10; width: 30px; height: 30px; margin: -15px 0px 0px -15px; overflow: hidden; background: #CC0918; cursor: pointer; transition: all 0.5s ease; }
	.footerform span.ff-close:after { content: '+'; display: block; text-align: center; font-size: 20px; color: #FFF; transform: rotate(45deg); }
	.footerform span.ff-close:hover { background: #3A3F3F; }
.footerform form { padding: 50px; overflow: auto; position: absolute; top: 0px; right: 0px; left: 0px; bottom: 0px; }
.footerform span { display: block; }
	.footerform span.ff-title { font-family: 'Kanit', sans-serif; font-weight: 100; font-size: 30px; line-height: 1.05; text-align: center; margin: 0px 0px 30px; }
.footerform .fl-group { display: -ms-grid; display: grid; -ms-grid-columns: 100px 1fr 1fr; grid-template-columns: 125px 1fr 1fr; column-gap: 15px; grid-column-gap: 15px; grid-auto-rows: 1fr; -ms-grid-column-align: left; justify-items: left; -ms-flex-align: end; align-items: end; }
	.footerform .fl-group > * { width: 100%; }	
.footerform p { clear: both; }
	.footerform p.email { margin-top: 10px; }
	.footerform p.checkbox { margin-top: 10px; }
.footerform p.email input { width: 100%; }
.footerform p.checkbox input { width: auto; }
.footerform p.checkbox label { width: auto; float: none; margin: 0px 0px 0px 0px; font-size: 0.9em; }
.footerform a.submit { display: block; margin: 35px auto 0px; }
.footerform .forminfo { font-size: 0.8em; text-align: center; margin-top: 15px; }

.footerform-overlay { position: fixed; top: 0%; left: 0%; width: 100%; height: 100%; background: rgba(0,0,0,0.65); z-index: -1; opacity: 0; transition: all 0.25s ease; }
	.footerform-overlay.overlayShow { z-index: 905; opacity: 1; }


.footerline { background: #4E5251; font-size: 13px; padding: 0px; }
	.footerline .inner { padding: 20px 150px; }
	.footerline li { display: inline-block; margin: 0px 20px 0px 0px; }
		.footerline li:hover { transform: none; }
	.footerline a:hover { text-decoration: underline; }
	
footer .fbox { display: inline-block; vertical-align: top; width: 200px; margin: 0px 70px 0px 0px; }
footer .fbox span { display: block; font-family: 'Kanit', sans-serif; font-size: 25px; font-weight: 100; text-transform: uppercase; margin-bottom: 5px; }
footer .fbox1 {}
footer .fbox2 { width: auto; margin-right: 0px; }
	footer .fbox2 ul { -webkit-column-count: 2; column-count: 2; }
	footer .fbox2 li { width: 140px; margin: 0px 15px 0px 0px; }

footer .slogan { position: absolute; right: 150px; bottom: 33px; font-family: 'Kanit', sans-serif; font-size: 50px; font-weight: bold; color: #000; line-height: 1.05; text-transform: uppercase; }
footer .slogan div { position: absolute; right: 35px; bottom: -6px; z-index: 10; white-space: nowrap; }
footer .slogan span { font-weight: 100; }
footer .slogan img { opacity: 0.15; }


aside { position: fixed; top: 50%; right: 50px; width: 20px; margin: -83px -10px 0px 0px; text-align: center; }
aside a { display: inline-block; font-size: 14px; color: #3A3F3F; margin: 6px 0px; transition: all 0.3s ease; }
	aside a:hover { transform: scale(1.75); }
aside span { display: none; }



/* Content / Inhalte */
/* Modul: Formulargenerator (ab v1.2.6) + Standardformular (ab v1.0) */
.content form { margin: 0px; display: block; }
.content form > * { /*padding: 0px;*/ }
.content form p { margin: 0px; }

.content label { display: block; text-align: left; position: relative; margin: 0px 0px 5px; font-size: 0.8em; }	/* Standard = Top */
    .content .form-check-group label { display: none; }
    .content .form-radiogroup label { display: inline-block; transform: none; clear: right; }

.content input, .content textarea, .content select, .content .choices__inner { position: relative; width: 100%; margin: 0px 0px 15px 0px; border: 1px solid var(--col-primary-opa) !important; padding: 10px 13px; font-family: var(--font-text); font-size: 16px; transition: all 0.3s ease; border-radius: 3px; background: #FFF; color: var(--col-text) !important; }
	.content input:focus, .content textarea:focus, .content select:focus { outline: none; box-shadow: 0px 0px 5px 0px var(--col-primary-opa); }
.content textarea { height: 120px; padding: 11px 13px; }
.content select { -webkit-appearance: menulist-button; padding: 9px 10px; min-width: 75px; min-height: 44px; width: 100%; }

.content .form-label-placeholder label { display: none; }
.content .form-label-left .form-group label { width: 100%; max-width: 200px; float: left; padding: 10px 15px 0px 0px; }
	.content .form-label-left .form-group input, .content .form-label-left .form-group textarea, .content .form-label-left .form-group select, .content .form-label-left .form-group .choices__inner { max-width: calc(100% - 200px); }
.content .form-label-top label { /* Standard = siehe oben */ }
.content .form-label-right .form-group label { display: inline-block; width: auto; float: right; margin: -18px 8px 0px 20px; text-align: left; background: var(--col-primary); color: var(--col-primary-text); padding: 2px 6px 0px; font-size: 12px; border-radius: 5px; transform: translateY(11px); border: 2px solid #FFF; position: relative; z-index: 5; }

.content .choices { font-size: inherit; width: 100%; }
.content .choices .choices__inner { position: relative; padding-bottom: inherit; vertical-align: inherit; }
    .content .choices[data-type=select-multiple] .choices__inner { padding-top: 7.5px; }
    .content .choices .choices__inner:after { content: ""; width: 10px; height: 5px; background: #333; position: absolute; right: 11.5px; top: 50%; pointer-events: none; transform: translateY(-50%); clip-path: polygon(50% 100%, 0 0, 100% 0); }
.content .choices .choices__list { z-index: 999; }
.content .choices .choices__list--single { padding: 0px; }
.content .choices .choices__list--dropdown, .content  .choices__list[aria-expanded] { transform: translateY(-11px); padding: 10px; box-shadow: 0 6px 12px rgba(0,0,0,0.175); }
.content .choices:not(.is-open) .choices__list input { display: none; }
.content .choices .choices__list input { margin: 3px 0px 10px; padding-top: 6px; padding-bottom: 6px; }
    .content .choices[data-type=select-multiple] input { margin: 0px; padding: 0px 10px; background: none; border: none !important; outline: none !important; box-shadow: none !important; }
.content .choices::after { display: none; }
.content .choices__list--multiple .choices__item { background: var(--col-secondary); color: var(--col-secondary-text); border: none !important; border-radius: 3px; margin: 0px 6px 6px 0px; font-size: 0.85em; font-weight: normal; }
.content .choices__list--multiple .choices__item.is-highlighted {  background: var(--col-secondary-opa); color: var(--col-secondary-text); }

.content input.short { width: 60px; margin-right: 5px; }
.content input.half { width: 220px; }
.content input.auto { width: auto; }
.content input.inp50 { width: 50px; }
.content input.inpShorter { width: 238px; }

.content button[type=submit] { display: block; width: auto; transition: all 0.3s ease; cursor: pointer; margin: 35px auto 0px; }
    .content button[type=submit].left { margin-left: 0px; }
    .content button[type=submit].right { margin-right: 0px; }

.content .form-check-group { margin: 0px 0px 15px; }
.content .form-radiogroup { margin: 11px 0px 15px; }
.content .form-check-group:after, .content .form-radiogroup:after { content:''; display: block; float: none; clear: both; }

.content input[type=radio], .content input[type=checkbox] { width: auto; /*margin: 0px;*/ padding: 0px; }
.content input.checkbox { width: auto; vertical-align: -webkit-baseline-middle; }
.content label.checkbox { float: none; width: auto; }

/* styled checkbox / radio */
.content .checkbox label, .content .radio label { display: inline-block; float: left; width: auto; position: relative; padding: 0px 0px 0px 30px; margin: 5px 50px 0px 0px; background: none; color: inherit; font-size: inherit; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; transform: none; border-radius: 0px; border: none; }
    .content .checkbox label { margin-right: 0px; }
    
.content .checkbox label input, .content .radio label input { position: absolute; cursor: pointer; top: 0px; left: 0px; height: 22px; width: 22px; appearance: none; background: #FFF; border: 1px solid var(--col-primary-opa); }
    .content .radio label input { border-radius: 50%; }
.content .form-check-group input+i.form-helper { background: none; border: none; position: absolute; top: 0px; left: 0px; width: 22px; height: 22px; z-index: 50; }

.content .checkbox input+i.form-helper {  }
    .content .checkbox input+i.form-helper:before, .content .checkbox input+i.form-helper:after { display: none; content:''; width: 2px; height: 15px; background: var(--col-primary); position: absolute; top: 4px; left: 10px; transform: rotate(45deg); }
        .content .checkbox input+i.form-helper:after { transform: rotate(-45deg); }
.content .radio input+i.form-helper { border-radius: 50%; }

.content .checkbox label input:checked+i.form-helper:before, .content .checkbox label input:checked+i.form-helper:after { display: block; }
.content .radio input:checked+i.form-helper { background: var(--col-primary); top: 5px; left: 5px; width: 12px; height: 12px; }

.content .form-check-group .has-error i.form-helper { background: rgba(204,9,24, 0.1); }

/* Meldungen Eingabefehler */
.content .alert { color: var(--col-text); background: rgb(242,242,242); box-shadow: inset 0px 0px 3px 0px rgba(0,0,0, 0.15); padding: 18px 25px; position: relative; margin: 0px 0px 40px; border-radius: 5px; }
    .content .alert-danger { border: 2px solid rgb(204,9,24); box-shadow: 0px 0px 4px 0px rgb(204,9,24); background: rgb(250,229,231); }
    .content .alert-success { box-shadow: 0px 0px 4px 0px rgb(0,128,0); background: rgb(229,242,229); }
    .content .alert-info { }
.content .alert ul { /*display: none;*/ list-style: none; margin: 0px; padding: 0px; }
.content .alert ul li { margin: 0px; }
    .content .alert ul li+li { margin-top: 10px; }
	/*.content .alert:after { content: "Füllen Sie bitte mindestens die farbig markierten Felder und Fragen aus, um Ihre Anfrage versenden zu können."; display: block; text-align: center; margin: 0px 0px 40px; padding: 0px 0px; color: var(--col-secondary); font-weight: bold; }*/
.content .has-error input, .content .has-error select, .content .has-error textarea { background: rgba(204,9,24, 0.1); /*border: 2px solid var(--col-secondary);*/ }
.content .has-error input[type=checkbox], .content .has-error input[type=radio] { background: inherit; }
.content .has-error label { /*color: var(--col-secondary);*/ }

/*.content :not(form) .alert-success { color: var(--col-primary); background: var(--col-accent-opa); padding: 18px 25px; border: 1px solid var(--col-accent); position: relative; }*/
.content .alert .alert-close { display: none; }
.content :not(form) .alert .alert-close { display: inline-block; position: absolute; top: 3px; right: 3px; width: 20px; height: 20px; text-align: center; cursor: pointer; color: var(--col-primary); }
    .content :not(form) .alert .alert-close:before { content: "\f00d"; font-family: "Font Awesome 5 Free"; font-weight: 900; }

/* sonstige Elemente */
.content .form-miniheader { display: block; margin-bottom: 7px; font-weight: bold; }
.content .form-info, .content .forminfo-required { display: block; text-align: center; font-size:0.8em; margin: 20px 0px 0px; }
.content .form-zweispaltig { display: -ms-grid; display: grid; -ms-grid-columns: 1fr 1fr; grid-template-columns: 1fr 1fr; column-gap: 15px; grid-column-gap: 15px; grid-auto-rows: 1fr; -ms-grid-column-align: left; justify-items: left; -ms-flex-align: end; align-items: end; }
	.content .form-zweispaltig > * { width: 100%; }	

.content p.formlabel-kon_dse, .content p.formdse { padding-left: 30px; margin-right: 0px; display: block; }
    .content div.form-check-group + p.formdse { margin-top: -15px; }
.content p.formlabel-kon_dse > *, .content p.formdse > * { margin-right: 0px; }
.content .formdse_spacer { margin-top: 25px; }

/* Icons Standardformular (FA5) */
.content .form-icons .form-group { position: relative; }
.content .form-icons .form-group input, .content .form-icons .form-group textarea { padding-left: 45px; }
.content .form-icons .form-group:after { position: absolute; bottom: 21px; left: 13px; z-index: 10; display: inline-flex; font-family: 'Font Awesome 5 Free'; font-weight: 900; font-size: 20px; color: var(--col-primary-opa); pointer-events: none; }
	.content .form-icons .form-group[id$=-name]:after		{ content:'\f007'; }
	.content .form-icons .form-group[id$=-phone]:after 		{ content:'\f879'; }
	.content .form-icons .form-group[id$=-email]:after 		{ content:'\f0e0'; }
	.content .form-icons .form-group[id$=-company]:after 	{ content:'\f1ad'; }
	.content .form-icons .form-group[id$=-message]:after 	{ content:'\f5b7'; bottom: 105px; }
	.content .form-icons.form-label-left .form-group:after 	{ left: calc(200px + 13px); }

/* Farb-Themes */
.content .bc-dark input, .content .bc-dark textarea, .content .bc-dark select, .content .bc-dark .checkbox label:after { border: 1px solid var(--col-primary); }

.content .bc-light input, .content .bc-light textarea, .content .bc-light select { color: var(--col-dark); }
.content .bc-light .has-error input, .content .bc-light .has-error select, .content .bc-light .has-error textarea { background: var(--col-secondary); }
.content .bc-light .has-error label { color: var(--col-light); }
.content .bc-light .alert:after { color: var(--col-secondary); }

.content .bc-light button[type=submit] { background: var(--col-accent); color: var(--col-accent-text); border-color: var(--col-accent); }
	.content .bc-light button[type=submit]:hover { background: var(--col-accent); color: var(--col-primary); border-color: var(--col-primary-opa); border-bottom-color: var(--col-primary); }



/* Modul: mehrspaltige Aufzählung (UL-Liste - ab v1.2.1) */
.multicollist {}
.multicollist a { position: absolute; top: 0px; left: 0px; z-index: 5; width: 100%; height: 100%; display: block; }
.multicollist ul { list-style-type: none; line-height: normal; margin: 0px; padding: 0px; -webkit-columns: 3 230px; -moz-columns: 3 230px; columns: 3 230px; -webkit-column-gap: 2em; -moz-column-gap: 2em; column-gap: 2em; }
.multicollist li { list-style-type: none; position: relative; margin: 0px 0px 25px 0px; -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid; }

	.multicollist li.ml-header { font-family: var(--font-header); font-size: 1.6rem; font-weight: var(--fontweight-title); color: var(--col-primary); margin: 0px 0px 20px; line-height: 1.2; word-wrap: break-word; letter-spacing: -0.04rem; }
	.multicollist li.ml-header span { display: block; font-family: var(--font-text); font-size: 14px; text-transform: none; margin-top: 8px; font-weight: normal; color: var(--col-text); }
		
	.multicollist li.ml-item { /*font-size: 0.9em;*/ padding: 0px 40px 0px 35px; }
		.multicollist li.ml-item:before { /*content: ''; position: absolute; top: 21px; left: 15px; background: var(--col-primary); width: 5px; height: 5px; border-radius: 50%;*/ }
        
		.multicollist li.ml-item span.ml-title { display: block; font-family: var(--font-header); font-weight: var(--fontweight-title); font-size: var(--fontsize-title); margin-bottom: 7px; text-transform: uppercase; }
        
		.multicollist li.ml-item span.ml-linkicon { position: absolute; top: 2px; left: 0px; display: block; width: 26px; height: 26px; line-height: 26px; background: var(--col-primary); font-size: 20px; color: var(--col-primary-text); text-align: center; overflow: hidden; border-radius: 50%; transition: all 0.3s ease; }
            .multicollist li.ml-item span.ml-linkicon:after, .multicollist li.ml-item span.ml-linkicon:before { content: ''; width: 2px; height: 10px; position: absolute; top: 50%; left: 50%; display: block; background: var(--col-primary-text); transform: translate(-50%, -50%) rotate(45deg); margin: 3px 0px 0px 1px; }
            .multicollist li.ml-item span.ml-linkicon:after { transform: translate(-50%, -50%) rotate(-45deg); margin-top: -3px; }
            
	.multicollist li.ml-item.haslink:hover { /*color: var(--col-accent);*/ }
	.multicollist li.ml-item:hover span.ml-linkicon { background: var(--col-secondary); color: var(--col-primary); }

/* Farb-Themes */
.bc-light .multicollist li.ml-header, .bc-light .multicollist li.ml-header span { color: var(--col-light); }
.bc-light .multicollist li.ml-item:before, .bc-light .multicollist li.ml-item span.ml-linkicon { background-color: var(--col-light); }
	.bc-light .multicollist li.ml-item:hover span.ml-linkicon { opacity: 0.75; }
.bc-light .multicollist li.ml-item span.ml-linkicon:after, .bc-light .multicollist li.ml-item span.ml-linkicon:before { background: var(--col-primary); }

.bc-dark .multicollist li.ml-header, .bc-dark .multicollist li.ml-header span { color: var(--col-dark); }
.bc-dark .multicollist li.ml-item:before { background-color: var(--col-dark); }
.bc-dark .multicollist li.ml-item span.ml-linkicon i { color: var(--col-light); }



/* Modul: Teamübersicht (ab v1.2) */
.teamGalerie { display: flex; flex-wrap: wrap; gap: 50px 50px; width: 100%; margin: 0px auto; justify-content: center; position: relative; transition: all .3s ease; }
.teamGalerie span { display: block; }
.teamGalerie a.tG-boxlink, .teamGalerie a.tG-link { position: absolute; z-index: 10; top: 0px; left: 0px; width: 100%; height: 100%; }
.teamGalerie .tG-item { flex: 0 1 350px; position: relative; vertical-align: top; margin: 0px; transition: all .3s ease; }
.teamGalerie .tG-image { position: relative; background: #EEE; width: 100%; padding-top: 100%; }
	.teamGalerie img { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; margin: 0px; padding: 0px; object-fit: cover; object-position: center; }
	.teamGalerie a.tG-link { top: auto; left: auto; right: 0px; bottom: 0px; background: var(--col-primary); color: var(--col-primary-text); font-size: var(--fontsize-text); font-weight: bold; text-transform: uppercase; text-decoration: none; width: auto; height: auto; padding: 9px 14px; border-radius: 5px 0px 0px 0px; border: 1px solid var(--col-primary); border-bottom: none; border-right: none; }
		.teamGalerie .tG-image:hover .tG-link { background: var(--col-primary-text); color: var(--col-primary); }

.teamGalerie .tG-item.haslightbox a:after { content:''; display: block; justify-content: center; align-items: center; background: url(thumb-plus.png) no-repeat center center var(--col-primary-opa); position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; font-size: 40px; color: #FFF; opacity: 0; transition: all .3s ease; }
	.teamGalerie .tG-item.haslightbox a:hover:after { opacity: 1; }        
        
.teamGalerie .tG-content { position: relative; padding: 12px 0px 0px; }
	.teamGalerie .tG-content > * { line-height: 1.35; color: var(--col-text); }
	.teamGalerie .tG-name { font-weight: bold; font-size: 22px; }
	.teamGalerie .tG-text { margin-top: 5px; line-height: 1.25; }
	.teamGalerie .tG-contact { margin-top: 15px; font-weight: bold; width: 100%; overflow: hidden; }
		.teamGalerie .tG-contact { text-align: left; }
		.teamGalerie .tG-contact > * { margin-top: 5px; display: flex; justify-content: center; align-items: center; }
			.teamGalerie .tG-contact > * span { flex: 1 0; width: 100px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; /*text-align: left;*/ }
			.teamGalerie .tG-contact i { margin-right: 3px; color: var(--col-text); }
			.teamGalerie .tG-contact a { text-decoration: none; }
				.teamGalerie .tG-contact a:hover { text-decoration: underline; }
	
/* Designs */
/* Square 2 */
.teamGalerie-squares2 {}
.teamGalerie-squares2 .tG-image { aspect-ratio: 3/2; padding: 0px; border-radius: 5px; overflow: hidden; }
.teamGalerie-squares2 .tG-content { text-align: center; padding: 10px 10px 0px; }
.teamGalerie-squares2 .tG-contact { }
	.teamGalerie-squares2 .tG-contact { text-align: center; }

/* Circle */
.teamGalerie-circle {}
.teamGalerie-circle .tG-item { flex-basis: 220px; padding: 0px 10px; }
.teamGalerie-circle .tG-image, .teamGalerie-circle img { border-radius: 50%; overflow: hidden; }
	.teamGalerie-circle img { border: 5px solid #FFF; }
.teamGalerie-circle .tG-link { display: none; }
.teamGalerie-circle .tG-content { padding-top: 25px; margin: 0px -10px; }
	.teamGalerie-circle .tG-content > * { text-align: center; }
	.teamGalerie-circle .tG-text { margin-top: 7px; }
.teamGalerie-circle a.tG-boxlink:after { content:''; display: inline-flex; justify-content: center; align-items: center; background: url(thumb-plus.png) no-repeat center center var(--col-primary-opa); position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; font-size: 40px; color: #FFF; opacity: 0; transition: all .3s ease; }
	.teamGalerie-circle a.tG-boxlink:hover:after { opacity: 1; }

/* Farb-Themes */
.bc-light .teamGalerie a { color: var(--col-light); }

.bc-dark .teamGalerie a { color: #FFF; }



/* Modul: Texte mit Bildblock (ab v1.0 - basiert auf texblock + singleImage) */
.textbildblock { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 30px 0px; padding: 0px; margin: 0px; 
	--tbb-gap: 0px;
}
	.textbildblock.tbb-gap-xs { --tbb-gap: var(--gap-xs); column-gap: var(--tbb-gap); }
	.textbildblock.tbb-gap-sm { --tbb-gap: var(--gap-sm); column-gap: var(--tbb-gap); }
	.textbildblock.tbb-gap-md { --tbb-gap: var(--gap-md); column-gap: var(--tbb-gap); }
	.textbildblock.tbb-gap-lg { --tbb-gap: var(--gap-lg); column-gap: var(--tbb-gap); }
	.textbildblock.tbb-gap-xl { --tbb-gap: var(--gap-xl); column-gap: var(--tbb-gap); }
	
	.textbildblock.tbb-imgpos-right { flex-direction: row-reverse; }

	.textbildblock.tbb-textfloat.hastext.hasimage:not(.ratio100-100) { display: block; }
	.textbildblock.tbb-textfloat.hastext.hasimage.tbb-imgpos-left:not(.ratio100-100) .singleImage { float: left; margin: 0px var(--tbb-gap) var(--tbb-gap) 0px; }
	.textbildblock.tbb-textfloat.hastext.hasimage.tbb-imgpos-right:not(.ratio100-100) .singleImage { float: right; margin: 0px 0px var(--tbb-gap) var(--tbb-gap); }

.textbildblock > * { position: relative; flex: 1 1; }

.textbildblock .singleImage { position: relative; margin: 0px; width: 100%; z-index: 10; }
	.textbildblock .singleImage figure { overflow: hidden; text-align: left; }
		.textbildblock .singleImage.tbb-imgcenter figure, .textbildblock .singleImage.tbb-imgcenter figcaption { text-align: center; }
		.textbildblock .singleImage.tbb-imgright figure, .textbildblock .singleImage.tbb-imgright figcaption { text-align: right; }
		
	.textbildblock .singleImage picture { position: relative; display: inline-block; }
	.textbildblock .singleImage img { width: auto; max-width: 100%; height: auto; }
	
	.textbildblock .singleImage small.si-copyright { position: absolute; right: 0px; bottom: 0px; display: inline-block; max-width: calc(100% - 30px); max-height: 100%; font-size: 0.75rem; line-height: normal; color: #000; background-color: rgba(255, 255, 255, 0.75); padding: 0.25em 0.375em; overflow: hidden; } 
	.textbildblock .singleImage figcaption { display: block; text-align: left; font-size: 0.8rem; line-height: normal; padding: 0.65em 0.25em; }
	
	.textbildblock.ratio20-80 .singleImage { max-width: calc(20% - (var(--tbb-gap)/2)); }
	.textbildblock.ratio25-75 .singleImage { max-width: calc(25% - (var(--tbb-gap)/2)); }
	.textbildblock.ratio30-70 .singleImage { max-width: calc(30% - (var(--tbb-gap)/2)); }
	.textbildblock.ratio35-65 .singleImage { max-width: calc(35% - (var(--tbb-gap)/2)); }
	.textbildblock.ratio40-60 .singleImage { max-width: calc(40% - (var(--tbb-gap)/2)); }
	.textbildblock.ratio45-55 .singleImage { max-width: calc(45% - (var(--tbb-gap)/2)); }
	.textbildblock.ratio50-50 .singleImage { max-width: calc(50% - (var(--tbb-gap)/2)); }
	.textbildblock.ratio100-100 .singleImage { flex-basis: 100%; max-width: none; }
	


/* Modul: Linkboxen mit mBlock (ab v1.2.5) */
.linkboxes { display: flex; flex-wrap: wrap; gap: var(--linkboxes-gap); width: 100%; margin: 0px auto; justify-content: center; position: relative; transition: all 0.3s ease; 
    --linkboxes-gap: 40px;
    --linkboxes-fonticon: '\f30b';
    --linkboxes-fonticonfamily: 'Font Awesome 5 Free';
    --linkboxes-fonticonweight: 900;
}
.linkboxes span { display: block; }
.linkboxes a { position: absolute; z-index: 10; top: 0px; left: 0px; width: 100%; height: 100%; }

.linkboxes .lbox-item { position: relative; background: #FFF; display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 0px; vertical-align: top; box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.1); border: 1px solid var(--col-primary); transition: all 0.3s ease; }
     .linkboxes .lbox-item * { transition: all 0.3s ease; }
.linkboxes .lbox-image, .linkboxes .lbox-icon { position: relative; z-index: 3; display: flex; justify-content: center; align-items: center; }
.linkboxes .lbox-content { position: relative; z-index: 7; padding: 0px; text-align: center; }
.linkboxes .lbox-content > * { line-height: 1.2; color: var(--col-text); }
.linkboxes .lbox-title { font-size: 1.1em; font-weight: var(--fontweight-title); }
.linkboxes .lbox-text { font-size: 0.9em; }  
    
/* Designs */
/* Clean 1 */
.linkboxes-clean .lbox-item { flex: 1 1 320px; max-width: 350px; padding: 30px 35px; min-height: 200px; border: none; }
    .linkboxes-clean .lbox-item.hasimage { padding-top: 35px; }
.linkboxes-clean .lbox-icon { width: 100%; height: 70px; margin: 0px 0px 20px; align-items: flex-start; }
    .linkboxes-clean .lbox-icon img { width: auto; height: auto; max-height: 65px; max-width: 100%; }
.linkboxes-clean .lbox-text { margin-top: 10px; }  

.linkboxes-clean .lbox-item.haslink:hover { background: var(--col-primary); }
.linkboxes-clean .lbox-item.haslink:hover .lbox-content > * { color: var(--col-primary-text); }

/* Clean 2 */
.linkboxes-clean2 { column-gap: 65px; }
.linkboxes-clean2 .lbox-item { flex: 1 1 320px; max-width: 350px; padding: 40px 20px 40px 65px; min-height: 210px; border-radius: var(--borderRadius-xs); background: var(--col-accent); border: none; justify-content: flex-start; align-items: flex-start; }
    .linkboxes-clean2 .lbox-item.hasimage { padding-left: 50px; }
.linkboxes-clean2 .lbox-image { display: none; }    
.linkboxes-clean2 .lbox-icon { position: absolute; top: 50%; left: 0px; transform: translate(-50%, -50%); text-align: center; width: 95px; height: 95px; background: var(--col-secondary); border-radius: 50%; border: none; margin: 0px; }
    .linkboxes-clean2 .lbox-icon img { width: auto; height: auto; max-height: 45px; max-width: 45px; }     

.linkboxes-clean2 .lbox-content { text-align: left; }
.linkboxes-clean2 .lbox-content > * { color: var(--col-accent-text); }
.linkboxes-clean2 .lbox-title { font-size: 1em; }
    /* .linkboxes-clean2 .lbox-title:after { content: ''; background: rgba(255,255,255, 0.35); width: 85%; height: 35px; position: absolute; z-index: -1; display: inline-block; top: -2px; left: 60px; transform: skewX(-12deg); opacity: 0; transition: all 0.3s ease; } */
.linkboxes-clean2 .lbox-text { margin-top: 15px; font-size: 0.75em; }  

.linkboxes-clean2 .lbox-item.haslink:hover, .linkboxes-clean2 .lbox-item.haslink:hover .lbox-icon { background: var(--col-primary); }
    .linkboxes-clean2 .lbox-item.haslink:hover .lbox-icon { box-shadow: 0px 10px 20px 0px rgba(0,0,0,0.1); }
.linkboxes-clean2 .lbox-item.haslink:hover .lbox-content > * { color: var(--col-primary-text); }
.linkboxes-clean2 .lbox-item.haslink:hover .lbox-title:after { opacity: 1; left: -7px; }

/* Clean-Grid */
.linkboxes-clean-grid1 { overflow: hidden; }
.linkboxes-clean-grid1 .lbox-inner { display: flex; flex-wrap: wrap; gap: 0px; justify-content: flex-start; margin: 0px -1px -1px 0px; }
	.linkboxes-clean-grid1.lbox-count-1 .lbox-inner { margin-bottom: 0px; }

.linkboxes-clean-grid1 .lbox-item { flex: 0 0 33.3333%; align-items: flex-start; justify-content: flex-start; padding: 43px 45px; min-height: 200px; border: 1px solid var(--col-primary); box-shadow: none; background: var(--col-background); }
    .linkboxes-clean-grid1:not(.lbox-count-1) .lbox-item { border-left: none; border-top: none; }
	.linkboxes-clean-grid1.lbox-count-1 .lbox-item { flex-basis: 100%; min-height: 0px; }
	.linkboxes-clean-grid1.lbox-count-2 .lbox-item { flex-basis: 50%; }

    .linkboxes-clean-grid1 .lbox-item:before { content: ''; position: absolute; top: -1px; right: -1px; bottom: -1px; left: -1px; box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1); background: var(--col-background); visibility: hidden; opacity: 0; transition: all .3s ease; pointer-events: none; z-index: 1; }
	
.linkboxes-clean-grid1 .lbox-image { display: none; }
.linkboxes-clean-grid1 .lbox-icon { position: relative; text-align: center; width: 63px; height: 63px; background: var(--col-primary); border-radius: 50%; box-shadow: 2px 2px 6px 0 rgba(0, 0, 0, 0.15); margin: 0px 0px 20px 0px; animation: linkboxes-clean-grid1 20s ease-in-out infinite; }
    .linkboxes-clean-grid1 .lbox-icon img { width: auto; height: auto; max-height: 35px; max-width: 35px; }
    
    @keyframes linkboxes-clean-grid1 {
        50% { background: var(--col-primary); }  
        53% { background: var(--col-secondary); }
        97% { background: var(--col-secondary); }
    }

.linkboxes-clean-grid1 .lbox-content { text-align: left; }
    /* .linkboxes-clean-grid1 .lbox-content:after { content: var(--linkboxes-fonticon); font-family: var(--linkboxes-fonticonfamily); font-weight: var(--linkboxes-fonticonweight); color: var(--col-text); display: flex; margin-top: 10px; opacity: 0.5; line-height: 1; } */
.linkboxes-clean-grid1 .lbox-title { font-size: 1.1em; }
.linkboxes-clean-grid1 .lbox-text { margin-top: 10px; font-size: 0.85em; }  

.linkboxes-clean-grid1 .lbox-item.haslink:hover::before { opacity: 1; visibility: visible; }


/* Simple 1 */
.linkboxes-simple .lbox-item { flex: 1 1 320px; max-width: 350px; padding: 30px 35px; border: 1px solid var(--col-primary); border-bottom-width: 10px; min-height: 225px; }
    .linkboxes-simple .lbox-item.hasimage { padding-top: 35px; }
.linkboxes-simple .lbox-image { position: absolute; top: 0px; left: 0px; padding: 0px; margin: 0px; display: block; width: 100%; height: 100%; border: none; overflow: hidden; }
    .linkboxes-simple .lbox-image img { max-height: none; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.linkboxes-simple .lbox-content { position: absolute; left: 0px; bottom: 20px; width: 100%; display: flex; justify-content: flex-start; align-items: flex-end; transition: all 0.3s ease; }
    .linkboxes-simple .lbox-content > *:before, .linkboxes-simple .lbox-content > *:after { content:''; display: block; width: 20px; height: 40px; background: var(--col-primary); clip-path: polygon(100% 100%, 100% 0, 0 50%); position: absolute; top: 50%; right: -1px; transform: translateY(-50%); }
    .linkboxes-simple .lbox-content > *:after { width: 6px; height: 12px; background: #FFF; right: 3px; transform: translateY(-50%) rotate(180deg); }
.linkboxes-simple .lbox-title { position: relative; width: 100%; text-align: left; background: rgba(255,255,255, 0.6); color: var(--col-text) !important; margin: 0px; padding: 13px 50px 13px 18px; overflow: hidden; transition: all 0.3s ease; }
.linkboxes-simple .lbox-text { display: none; }

.linkboxes-simple .lbox-item.haslink:hover .lbox-content > * { color: #333; background: #FFF; }

/* Simple 2 */
.linkboxes-simple2 .lbox-item { flex: 1 1 320px; max-width: 350px; padding: 30px 35px; border: none; min-height: 250px; }
.linkboxes-simple2 .lbox-image { position: absolute; top: 0px; left: 0px; padding: 0px; margin: 0px; display: block; width: 100%; height: 100%; border: none; overflow: hidden; }
    .linkboxes-simple2 .lbox-image img { max-height: none; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.05); transition: all 0.5s; }
.linkboxes-simple2 .lbox-icon { position: relative; text-align: center; width: 85px; height: 85px; background: var(--col-primary); border-radius: 50%; border: none; outline: 5px solid rgba(255,255,255, 0.35); margin: 0px 0px 20px 0px; }
    .linkboxes-simple2 .lbox-icon img { width: auto; height: auto; max-height: 45px; max-width: 45px; } 
    
.linkboxes-simple2 .lbox-content { position: relative; }
.linkboxes-simple2 .lbox-title { text-align: center; font-weight: var(--fontweight-title); color: #FFF; text-shadow: 1px -1px 0px rgb(0,0,0, 0.5); background-color: rgba(100,100,100, 0.1); padding: 3px 5px; border-radius: 5px; box-shadow: 0px 0px 10px 0px rgba(100,100,100, 0.1); text-transform: uppercase; }
.linkboxes-simple2 .lbox-text { display: none; }

.linkboxes-simple2 .lbox-item.haslink:hover .lbox-icon { background: var(--col-secondary); }
.linkboxes-simple2 .lbox-item.haslink:hover .lbox-image img { transform: scale(1.01); }

/* Simple 3 */
.linkboxes-simple3 .lbox-item { flex: 1 1 320px; max-width: 350px; padding: 30px 35px; border: none; min-height: 225px; }
.linkboxes-simple3 .lbox-image { position: absolute; top: 0px; left: 0px; padding: 0px; margin: 0px; display: block; width: 100%; height: 100%; border: none; overflow: hidden; }
    .linkboxes-simple3 .lbox-image img { max-height: none; width: 100%; height: 100%; object-fit: cover; object-position: center; -webkit-filter: grayscale(1); filter: grayscale(1); opacity: 0.3; transition: all 0.5s; }
    
.linkboxes-simple3 .lbox-content { position: relative; }
.linkboxes-simple3 .lbox-title { text-align: center; color: #000; text-shadow: 1px -1px 0px rgb(255,255,255, 0.5); text-transform: uppercase; }
.linkboxes-simple3 .lbox-text { display: none; }

.linkboxes-simple3 .lbox-item.haslink:hover .lbox-title { color: #FFF; }
.linkboxes-simple3 .lbox-item.haslink:hover .lbox-image img { opacity: 1; -webkit-filter: grayscale(0); filter: grayscale(0); }


/* BigBoxes #1 */
.linkboxes-bigboxes1 { justify-content: flex-start; }
.linkboxes-bigboxes1 .lbox-item { flex: 1 1 calc(50% - (var(--linkboxes-gap)/2)); border: 0px; min-height: 350px; box-shadow: none; min-width: 300px; }
    .linkboxes-bigboxes1V .lbox-item { flex-basis: calc(60% - (var(--linkboxes-gap)/2)); }
    .linkboxes-bigboxes1V .lbox-item:nth-child(4n+1), .linkboxes-bigboxes1V .lbox-item:nth-child(4n+4) { flex-basis: calc(40% - (var(--linkboxes-gap)/2)); }    
.linkboxes-bigboxes1 .lbox-image { position: absolute; top: 0px; left: 0px; padding: 0px; margin: 0px; display: block; width: 100%; height: 100%; border: none; overflow: hidden; }
    .linkboxes-bigboxes1 .lbox-image img { max-height: none; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.linkboxes-bigboxes1 .lbox-content { position: absolute; left: 0px; bottom: 0px; width: 100%; min-height: 40%; background: var(--col-primary-opa); display: block; transition: all 0.3s ease; padding: 16px 60px 16px 20px; text-align: left; }
    .linkboxes-bigboxes1 .lbox-item:not(.hastext) .lbox-content { display: flex; flex-wrap: wrap; align-items: center; }
    .linkboxes-bigboxes1 .lbox-item.haslink .lbox-content:after { content:''; background: none; width: 12px; height: 12px; position: absolute; top: 50%; right: 20px; transform: translateY(-50%) rotate(45deg); border: 1px solid var(--col-secondary-text); border-width: 2px 2px 0px 0px; }
    
.linkboxes-bigboxes1 .lbox-content > * { flex-basis: 100%; display: block; color: var(--col-primary-text); }
    .linkboxes-bigboxes1 .lbox-content > *:before, .linkboxes-bigboxes1 .lbox-content > *:after { display: none; }    
.linkboxes-bigboxes1 .lbox-title { position: relative; width: 100%; font-weight: var(--fontweight-title); font-size: 1.6em; text-align: left; text-transform: none; background: none; margin: 0px; padding: 0px; overflow: hidden; transition: all 0.3s ease; }
.linkboxes-bigboxes1 .lbox-text { margin-top: 10px; }

.linkboxes-bigboxes1 .lbox-item.haslink:hover .lbox-content { background: var(--col-secondary-opa); }
.linkboxes-bigboxes1 .lbox-item.haslink:hover .lbox-content > * { color: var(--col-secondary-text); }

/* BigBoxes #2 */
.linkboxes-bigboxes2 { justify-content: flex-start; }
.linkboxes-bigboxes2 .lbox-item { flex: 0 1 calc(50% - (var(--linkboxes-gap)/2)); position: relative; border: 0px; min-height: 350px; box-shadow: none; min-width: 300px; border-radius: 5px; aspect-ratio: 3/2; max-height: 500px; overflow: hidden; }
    .linkboxes-bigboxes2 .lbox-item:after { content:''; background: rgba(0,0,0, 0.33); position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 5; transition: all 0.3s ease; }
.linkboxes-bigboxes2 .lbox-image { position: absolute; top: 0px; left: 0px; z-index: 1; padding: 0px; margin: 0px; display: block; width: 100%; height: 100%; border: none; overflow: hidden; }
    .linkboxes-bigboxes2 .lbox-image img { max-height: none; width: 100%; height: 100%; object-fit: cover; object-position: center; }
    
.linkboxes-bigboxes2 .lbox-content { position: absolute; left: 0px; bottom: 0px; z-index: 10; width: 100%; min-height: 0%; background: none; display: block; transition: all 0.3s ease; padding: 8% 45px; text-align: left; }
    .linkboxes-bigboxes2 .lbox-content:after { content: var(--linkboxes-fonticon); font-family: var(--linkboxes-fonticonfamily); font-weight: var(--linkboxes-fonticonweight); color: var(--col-primary-text); display: inline-flex; width: 55px; height: 55px; background: var(--col-primary); border-radius: 5px; justify-content: center; align-items: center; position: absolute; bottom: 45px; opacity: 0; transition: all 0.3s ease; }
.linkboxes-bigboxes2 .lbox-content > * { flex-basis: 100%; display: block; color: #FFF; text-align: left; text-transform: none; font-weight: normal; background: none; margin: 0px; padding: 0px; transition: all 0.3s ease; position: relative; width: 100%; }
    .linkboxes-bigboxes2 .lbox-content > *:before, .linkboxes-bigboxes3 .lbox-content > *:after { display: none; }    
.linkboxes-bigboxes2 .lbox-title { font-size: 1em; }
.linkboxes-bigboxes2 .lbox-text { font-size: 1.2em; font-weight: bold; font-family: var(--font-header); margin: 15px 0px 0px; }

.linkboxes-bigboxes2 .lbox-item.haslink:hover:after { background: var(--col-overlay); }
.linkboxes-bigboxes2 .lbox-item.haslink:hover .lbox-content { min-height: 100%; padding-bottom: calc(8% + 70px); }
.linkboxes-bigboxes2 .lbox-item.haslink:hover .lbox-content:after { opacity: 1; }

/* BigBoxes #3 */
.linkboxes-bigboxes3 { justify-content: flex-start; row-gap: 10px; }
.linkboxes-bigboxes3 .lbox-item { flex: 0 1 calc(50% - (var(--linkboxes-gap)/2)); position: relative; border: 0px; box-shadow: none; min-width: 300px; background: none; /*overflow: auto;*/ }
.linkboxes-bigboxes3 .lbox-image { position: relative; z-index: 1; padding: 0px; margin: 0px; display: block; width: 100%; height: 100%; max-height: 300px; border: none; overflow: hidden; }
    .linkboxes-bigboxes3 .lbox-image img { max-height: none; width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.1); transform-origin: 50% 0; transition: all 0.3s ease; }
    
.linkboxes-bigboxes3 .lbox-content { position: relative; z-index: 10; width: 100%; min-height: 120px; background: var(--col-background); display: block; max-width: 85%; transition: all 0.3s ease; margin: 0px auto; padding: 30px 35px; transform: translateY(-30px); }
    .linkboxes-bigboxes3 .lbox-content:after { content: var(--linkboxes-fonticon); font-family: var(--linkboxes-fonticonfamily); font-weight: var(--linkboxes-fonticonweight); color: var(--col-primary-text); display: inline-flex; width: 55px; height: 55px; background: var(--col-primary); border-radius: 5px; justify-content: center; align-items: center; position: absolute; top: 50%; left: 50%; opacity: 0; transition: all 0.3s ease; transform: translate(-50%, -75%) scale(0);  }
.linkboxes-bigboxes3 .lbox-content > * { flex-basis: 100%; display: block; color: #333; text-align: center; text-transform: none; font-weight: normal; background: none; margin: 0px; padding: 0px; transition: all 0.3s ease; position: relative; width: 100%; }
    .linkboxes-bigboxes3 .lbox-content > *:before, .linkboxes-bigboxes3 .lbox-content > *:after { display: none; }    
.linkboxes-bigboxes3 .lbox-title { font-size: 1.05em; font-weight: var(--fontweight-title); text-transform: uppercase; }
.linkboxes-bigboxes3 .lbox-text { font-size: 0.75em; margin: 10px 0px 0px; text-transform: uppercase; color: var(--col-primary); }

.linkboxes-bigboxes3 .lbox-item.haslink:hover .lbox-image img { transform: scale(1); }
.linkboxes-bigboxes3 .lbox-item.haslink:hover .lbox-content { transform: translateY(0px); }
.linkboxes-bigboxes3 .lbox-item.haslink:hover .lbox-content > * { opacity: 0; }
.linkboxes-bigboxes3 .lbox-item.haslink:hover .lbox-content:after { transform: translate(-50%, -75%) scale(1); opacity: 1; }

/* Style 1 */
.linkboxes-style1 { column-gap: 45px; margin-bottom: 25px; }
.linkboxes-style1 .lbox-item { flex: 1 1 320px; max-width: 350px; padding: 30px 35px; border: none; min-height: 220px; background: #222; align-items: flex-start; }
.linkboxes-style1 .lbox-image { position: absolute; top: 50%; right: -8%; padding: 0px; margin: 0px; display: block; width: 55%; height: 128px; border: none; overflow: hidden; transform: translate(0%, -50%); transition: all 0.35s ease; z-index: 10; pointer-events: none; image-rendering: pixelated; image-rendering: -webkit-optimize-contrast; }
    .linkboxes-style1 .lbox-image img { max-height: none; width: 100%; height: 100%; object-fit: cover; object-position: center; image-rendering: pixelated; image-rendering: -webkit-optimize-contrast; }
    
.linkboxes-style1 .lbox-content { position: static; width: 48%; padding: 0px; opacity: 1; }
    .linkboxes-style1 .lbox-content > * { color: #FFF; text-align: right; opacity: 1; transition: all 0.5s ease; }
.linkboxes-style1 .lbox-title { text-transform: uppercase; margin-bottom: 5px; font-family: var(--font-accent); }
.linkboxes-style1 .lbox-text { font-size: 0.8em; line-height: 1.35; }

.linkboxes-style1 .lbox-item.haslink:hover .lbox-content > * { opacity: 0; transform: translateX(20px); }
.linkboxes-style1 .lbox-item.haslink:hover .lbox-image { width: 100%; height: 100%; right: 0%; }



/* Modul: Bildergalerie (Lightbox - ab v1.5.7) */
.lbGalerie { position: relative; display: grid; grid-template-columns: repeat(var(--lbG-grid), 1fr); margin: 0px; text-align: left;
	--lbG-gap: 0px;
	--lbG-grid: 3;
	--lbG-shifting: 40px;
	--lbG-format1-1: 100%;
	--lbG-format16-9: 56.25%;
	--lbG-format4-3: 75%;
	--lbG-format3-2: 66.66%;
	--lbG-format8-5: 62.5%;
}
.lbGalerie a { display: block; position: absolute; z-index: 5; top: 0px; left: 0px; right: 0px; bottom: 0px; margin: 0px; padding: 0px; }
	.lbGalerie a:after { content: ''; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; z-index: 100; opacity: 0; transition: all .4s ease; background: url(thumb-plus.png) no-repeat center center var(--col-overlay); }
		.lbGalerie a:hover:after { opacity: 1; }
.lbGalerie img { display: block; border: none; margin: 0px; transition: all .3s ease; image-rendering: pixelated; image-rendering: -webkit-optimize-contrast; }
.lbGalerie > div, .lbGalerie > div > div { background: center center no-repeat; background-size: cover; overflow: hidden; transition: all .4s ease; transform-origin: center; image-rendering: pixelated; image-rendering: -webkit-optimize-contrast; }
	.lbGalerie > div:hover { z-index: 10; }
	.lbGalerie > div:before { content: ''; position: relative; z-index: 3; padding-top: var(--lbG-format1-1); display: block; transition: all .4s ease; pointer-events: none; cursor: none; }
	.lbGalerie.lbG-greytone > div:before { backdrop-filter: var(--filter-grey); }
.lbGalerie .lbG-thumb { position: relative; vertical-align: top; }
.lbGalerie .lbG-thumb > div, .lbGalerie .lbG-thumb img { position: absolute; z-index: 1; top: 0; right: 0; bottom: 0; left: 0; margin: 0px; padding: 0px; transform: scale(1.01); }
	.lbGalerie .lbG-thumb img { bottom: auto; right: auto; width: 100%; height: 100%; object-fit: cover; object-position: center; }

.lbGalerie.lbG-grid2 { --lbG-grid: 2; }
.lbGalerie.lbG-grid3 { --lbG-grid: 3; }
.lbGalerie.lbG-grid4 { --lbG-grid: 4; }
.lbGalerie.lbG-grid5 { --lbG-grid: 5; }
.lbGalerie.lbG-grid6 { --lbG-grid: 6; }
.lbGalerie.lbG-grid7 { --lbG-grid: 7; }
.lbGalerie.lbG-grid8 { --lbG-grid: 8; }

.lbGalerie.lbG-format-1-1 > div:before 	{ padding-top: var(--lbG-format1-1); }
.lbGalerie.lbG-format-16-9 > div:before { padding-top: var(--lbG-format16-9); }
.lbGalerie.lbG-format-4-3 > div:before 	{ padding-top: var(--lbG-format4-3); }
.lbGalerie.lbG-format-3-2 > div:before 	{ padding-top: var(--lbG-format3-2); }
.lbGalerie.lbG-format-8-5 > div:before 	{ padding-top: var(--lbG-format8-5); }

.lbGalerie.lbG-gap-xs { --lbG-gap: 1px; grid-gap: var(--lbG-gap); }
.lbGalerie.lbG-gap-sm { --lbG-gap: 5px; grid-gap: var(--lbG-gap); }
.lbGalerie.lbG-gap-md { --lbG-gap: 10px; grid-gap: var(--lbG-gap); }
.lbGalerie.lbG-gap-lg { --lbG-gap: 20px; grid-gap: var(--lbG-gap); }
.lbGalerie.lbG-gap-xl { --lbG-gap: 35px; grid-gap: var(--lbG-gap); }

.lbGalerie.lbG-hover-grey a:after, .lbGalerie.lbG-hover-color a:after, .lbGalerie.lbG-hover-blur a:after, .lbGalerie.lbG-hover-liftup a:after, .lbGalerie.lbG-hover-scaleup a:after { display: none; }
.lbGalerie.lbG-hover-grey > div:hover:before  { backdrop-filter: var(--filter-grey); }
.lbGalerie.lbG-hover-color > div:hover:before { backdrop-filter: grayscale(0); }
.lbGalerie.lbG-hover-blur > div:hover:before  { backdrop-filter: var(--filter-blur); }
.lbGalerie.lbG-greytone.lbG-hover-blur > div:hover:before { backdrop-filter: var(--filter-greyblur); }
.lbGalerie.lbG-hover-liftup > div:hover { transform: var(--fx-liftup-transf); box-shadow: var(--fx-liftup-shadow); }
.lbGalerie.lbG-hover-scaleup > div:hover > div, .lbGalerie-classic.lbG-hover-scaleup > div:hover, .lbGalerie-masonry.lbG-hover-scaleup > div:hover { transform: var(--fx-scaleup); }
	.lbGalerie-classic.lbG-hover-scaleup > div:hover, .lbGalerie-masonry.lbG-hover-scaleup > div:hover { transform: scale(1.04); }

.lbGalerie-classic div:before, .lbGalerie-masonry div:before, .lbGalerie-stripV div:before, .lbGalerie-stripH div:before { position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; padding: 0px !important; z-index: 10; }
.lbGalerie-classic .lbG-thumb > div, .lbGalerie-masonry .lbG-thumb > div { display: none; }

.lbGalerie-classic { display: block; }
.lbGalerie-classic > div { display: inline-flex; background: none !important; }
	.lbGalerie-classic > div { margin-right: var(--lbG-gap); margin-bottom: var(--lbG-gap); }
		.lbGalerie-classic.center > div { margin-right: calc(var(--lbG-gap) / 2); margin-left: calc(var(--lbG-gap) / 2); }
		.lbGalerie-classic.right > div { margin-right: auto; margin-left: var(--lbG-gap); }
.lbGalerie-classic a { position: relative; top: auto; left: auto; }
.lbGalerie-classic img { position: static !important; transform: none !important; }

.lbGalerie-collage {}
	.lbGalerie-collage > div:nth-child(2) { grid-column: span 3; grid-row: span 3; }
		.lbGalerie-collage.lbG-grid3 > div:nth-child(2), .lbGalerie-collage.lbG-grid4 > div:nth-child(2), .lbGalerie-collage.lbG-grid5 > div:nth-child(2), .lbGalerie-collage.lbG-grid6 > div:nth-child(2) { grid-column: span 2; grid-row: span 2; }
		.lbGalerie-collage.lbG-grid2 > div:nth-child(2) { grid-column: span 1; grid-row: span 1; }
			.lbGalerie-collage.lbG-grid2 > div:nth-child(3) { grid-column: span 2; grid-row: span 2; }
	.lbGalerie-collage > div:nth-child(13n+4) { grid-column: span 1; grid-row: span 2; padding-bottom: calc(var(--lbG-format1-1) + var(--lbG-gap)); }
		.lbGalerie-collage.lbG-format-16-9 > div:nth-child(13n+4) { padding-bottom: calc(var(--lbG-format16-9) + var(--lbG-gap)); }
		.lbGalerie-collage.lbG-format-4-3 > div:nth-child(13n+4)  { padding-bottom: calc(var(--lbG-format4-3) + var(--lbG-gap)); }
		.lbGalerie-collage.lbG-format-3-2 > div:nth-child(13n+4)  { padding-bottom: calc(var(--lbG-format3-2) + var(--lbG-gap)); }
		.lbGalerie-collage.lbG-format-8-5 > div:nth-child(13n+4)  { padding-bottom: calc(var(--lbG-format8-5) + var(--lbG-gap)); }
	.lbGalerie-collage.lbG-grid5 > div:nth-child(10n), .lbGalerie-collage.lbG-grid6 > div:nth-child(6n+1), .lbGalerie-collage.lbG-grid7 > div:nth-child(7n+1), .lbGalerie-collage.lbG-grid8 > div:nth-child(13n+1) { grid-column: span 2; grid-row: span 2; }
.lbGalerie-collage img { }

.lbGalerie-masonry { display: block; width: 100%; column-count: var(--lbG-grid); column-gap: var(--lbG-gap); }
.lbGalerie-masonry a { display: block; position: static; }
.lbGalerie-masonry > div { display: inline-block; margin: 0px 0px var(--lbG-gap); width: 100%; padding: 0px; height: auto; background: none !important; }
.lbGalerie-masonry img { position: static !important; width: 100%; height: auto; }

.lbGalerie-circle { margin-bottom: 3.6%; }
	.lbGalerie-circle.lbG-grid2 { --lbG-grid: 4; }	/* 2er nicxht möglich > 2er = 3er */
	.lbGalerie-circle.lbG-grid3 { --lbG-grid: 4; }
	.lbGalerie-circle.lbG-grid4 { --lbG-grid: 5; }
	.lbGalerie-circle.lbG-grid5 { --lbG-grid: 6; }
	.lbGalerie-circle.lbG-grid6 { --lbG-grid: 7; }
	.lbGalerie-circle.lbG-grid7 { --lbG-grid: 8; }
	.lbGalerie-circle.lbG-grid8 { --lbG-grid: 9; }
.lbGalerie-circle a { -webkit-clip-path: circle(50% at 50% 50%); clip-path: circle(50% at 50% 50%); }
.lbGalerie-circle > div { grid-column: span 2; width: 100%; border-radius: 50% !important; margin-bottom: -13.4%; overflow: hidden; } 
	.lbGalerie-circle.lbG-grid2 > div:nth-child(3n+1), .lbGalerie-circle.lbG-grid3 > div:nth-child(3n+1), .lbGalerie-circle.lbG-grid4 > div:nth-child(4n+1), .lbGalerie-circle.lbG-grid5 > div:nth-child(5n+1), .lbGalerie-circle.lbG-grid6 > div:nth-child(6n+1), .lbGalerie-circle.lbG-grid7 > div:nth-child(7n+1), .lbGalerie-circle.lbG-grid8 > div:nth-child(8n+1) { grid-column: 2 / span 2; }

.lbGalerie-circle.lbG-grid2.lbG-gap-xs > div,
.lbGalerie-circle.lbG-grid3.lbG-gap-xs > div { margin-bottom: -13.3%; }
.lbGalerie-circle.lbG-grid4.lbG-gap-xs > div { margin-bottom: -13.4%; }
.lbGalerie-circle.lbG-grid5.lbG-gap-xs > div { margin-bottom: -13.35%; }
.lbGalerie-circle.lbG-grid6.lbG-gap-xs > div { margin-bottom: -13.35%; }
.lbGalerie-circle.lbG-grid7.lbG-gap-xs > div { margin-bottom: -13.35%; }
.lbGalerie-circle.lbG-grid8.lbG-gap-xs > div { margin-bottom: -13.4%; }

.lbGalerie-circle.lbG-grid2.lbG-gap-sm > div,
.lbGalerie-circle.lbG-grid3.lbG-gap-sm > div { margin-bottom: -13.4%; }
.lbGalerie-circle.lbG-grid4.lbG-gap-sm > div { margin-bottom: -13.5%; }
.lbGalerie-circle.lbG-grid5.lbG-gap-sm > div { margin-bottom: -13.5%; }
.lbGalerie-circle.lbG-grid6.lbG-gap-sm > div { margin-bottom: -13.4%; }
.lbGalerie-circle.lbG-grid7.lbG-gap-sm > div { margin-bottom: -13.4%; }
.lbGalerie-circle.lbG-grid8.lbG-gap-sm > div { margin-bottom: -13.5%; }

.lbGalerie-circle.lbG-grid2.lbG-gap-md > div,
.lbGalerie-circle.lbG-grid3.lbG-gap-md > div { margin-bottom: -13.5%; }
.lbGalerie-circle.lbG-grid4.lbG-gap-md > div { margin-bottom: -13.6%; }
.lbGalerie-circle.lbG-grid5.lbG-gap-md > div { margin-bottom: -13.6%; }
.lbGalerie-circle.lbG-grid6.lbG-gap-md > div { margin-bottom: -13.6%; }
.lbGalerie-circle.lbG-grid7.lbG-gap-md > div { margin-bottom: -13.6%; }
.lbGalerie-circle.lbG-grid8.lbG-gap-md > div { margin-bottom: -13.6%; }

.lbGalerie-circle.lbG-grid2.lbG-gap-lg > div,
.lbGalerie-circle.lbG-grid3.lbG-gap-lg > div { margin-bottom: -13.7%; }
.lbGalerie-circle.lbG-grid4.lbG-gap-lg > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid5.lbG-gap-lg > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid6.lbG-gap-lg > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid7.lbG-gap-lg > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid8.lbG-gap-lg > div { margin-bottom: -14%; }

.lbGalerie-circle.lbG-grid2.lbG-gap-xl > div,
.lbGalerie-circle.lbG-grid3.lbG-gap-xl > div { margin-bottom: -13.7%; }
.lbGalerie-circle.lbG-grid4.lbG-gap-xl > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid5.lbG-gap-xl > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid6.lbG-gap-xl > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid7.lbG-gap-xl > div { margin-bottom: -13.8%; }
.lbGalerie-circle.lbG-grid8.lbG-gap-xl > div { margin-bottom: -14%; }

.lbGalerie-stripH { grid-template-columns: none; }

.lbGalerie-stripV.lbG-shifting-odd 	> div:nth-child(odd) 		{ margin-top: var(--lbG-shifting); }
	.lbGalerie-stripV.lbG-shifting-odd 	> div:nth-child(even) 	{ margin-bottom: var(--lbG-shifting); }
.lbGalerie-stripV.lbG-shifting-even > div:nth-child(even) 		{ margin-top: var(--lbG-shifting); }
	.lbGalerie-stripV.lbG-shifting-even > div:nth-child(odd) 	{ margin-bottom: var(--lbG-shifting); }
	
.lbGalerie-stripH.lbG-shifting-odd 	> div:nth-child(odd) 		{ margin-left: var(--lbG-shifting); }
	.lbGalerie-stripH.lbG-shifting-odd 	> div:nth-child(even) 	{ margin-right: var(--lbG-shifting); }
.lbGalerie-stripH.lbG-shifting-even > div:nth-child(even) 		{ margin-left: var(--lbG-shifting); }
	.lbGalerie-stripH.lbG-shifting-even > div:nth-child(odd) 	{ margin-right: var(--lbG-shifting); }
	
	
	
/* Modul: Artikelvorschau/Newsteaser (ab v1.3.9) */
.newsteaser { margin: 0px; padding: 0px; }
.newsteaser .teaser { display: flex; flex-direction: row; flex-wrap: nowrap; margin: 65px 0px 0px 0px; padding: 0px; transition: all 0.3s ease; }
	.newsteaser .teaser.first { border: none !important; margin-top: 0px !important; }
	.newsteaser .teaser.minmargin { margin-top: 35px; }
		.newsteaser .teaser.minmargin.hasnoimage.hasnotext { margin-top: 25px; }

.newsteaser .teaserimage { position: relative; margin: 0px; margin-right: 15px; }
	.newsteaser .teaserimage figure { overflow: hidden; }
	.newsteaser .teaserimage img { width: 100%; height: auto; }
	.newsteaser .teaserimage span { display: block; background: rgba(150,150,150, 0.1); aspect-ratio: 3/2; }			/* Platzhalter-Bild */
    
    .newsteaser .teaserimage a[rel~="lightbox"] { display: flex; }
    .newsteaser .teaserimage a[rel~="lightbox"]:after { content: ''; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; z-index: 100; opacity: 0; transition: all .4s ease; background: url(thumb-plus.png) no-repeat center center var(--col-overlay); }
        .newsteaser .teaserimage a[rel=lightbox]:hover:after { opacity: 1; }
    
.newsteaser .teaserimage.ratio20-80 { width: 20%; }
.newsteaser .teaserimage.ratio25-75 { width: 25%; }
.newsteaser .teaserimage.ratio30-70 { width: 30%; }
.newsteaser .teaserimage.ratio35-65 { width: 35%; }
.newsteaser .teaserimage.ratio40-60 { width: 40%; }
.newsteaser .teaserimage.ratio45-55 { width: 45%; }
.newsteaser .teaserimage.ratio50-50 { width: 50%; }

.newsteaser .teasercontent { width: 100%; margin: 0px; padding: 0px; }
	.newsteaser .teaser.hasimage .teasercontent { margin-left: 15px; }
.newsteaser .teasercontent.ratio20-80 { width: 80%; }
.newsteaser .teasercontent.ratio25-75 { width: 75%; }
.newsteaser .teasercontent.ratio30-70 { width: 70%; }
.newsteaser .teasercontent.ratio35-65 { width: 65%; }
.newsteaser .teasercontent.ratio40-60 { width: 60%; }
.newsteaser .teasercontent.ratio45-55 { width: 55%; }
.newsteaser .teasercontent.ratio50-50 { width: 50%; }

.newsteaser .teaserheadline a { color: var(--col-text); text-decoration: none; }
.newsteaser .teaserheadline { font-family: var(--font-header); font-size: var(--fontsize-title); font-weight: var(--fontweight-title); text-transform: uppercase; text-decoration: none; line-height: 1.15; }
.newsteaser .teaserdate { margin: 4px 0px 0px; font-size: 0.85em; color: #999; }
	.newsteaser .teaser.minmargin.hasnoimage .teaserdate { margin-top: 2px; }
    .newsteaser .teaserdate i { display: none; margin-right: 5px; }
.newsteaser .teasertext { margin-top: 15px; }
	.newsteaser .teaser.minmargin.hasnoimage .teasertext { margin-top: 7px; }
.newsteaser .teaserlink { margin-top: 30px; }
	.newsteaser .teaser.minmargin.hasnoimage .teaserlink { margin-top: 15px; }
	.newsteaser .teaser.minmargin.hasnoimage.hasnotext .teaserlink { margin-top: 12px; }
	.newsteaser .teaserlink a { margin: 0px; }
	
.newsteaser .teaserpagination { text-align: left; margin-top: 65px; }
	.newsteaser .teaserpagination.center { text-align: center; }
	.newsteaser .teaserpagination.right { text-align: right; }
.newsteaser .teaserpagination ul { list-style-type: none; margin: 0px; padding: 0px; display: inline; }
.newsteaser .teaserpagination li { display: inline-block; margin: 0px 4px 0px 0px; font-size: 0.9em; background: none; }
.newsteaser .teaserpagination span, .newsteaser .teaserpagination a { display: inline-block; padding: 6px 10px; text-decoration: none; min-width: 35px; }
	.newsteaser .teaserpagination span { cursor: default; }
	.newsteaser .teaserpagination a { border-radius: 3px; }
		.newsteaser .teaserpagination a:hover { background: var(--col-secondary); color: var(--col-secondary-text); }
.newsteaser .teaserpagination .current { background: var(--col-primary); color: var(--col-primary-text); }

/* Farb-Themes */
.bc-light .newsteaser .teaserimage span { background: rgba(255,255,255, 0.15); }
.bc-light .newsteaser .teaserheadline a, .bc-light .newsteaser .teaserdate { color: var(--col-light); }



/* Modul: Akkordeon & Tabs (ab v1.6) */
.akktabsblock {}
.akktabsblock * { transition: all 0.3s ease; }

.akktabsblock .atb-icon { position: relative; z-index: 3; display: flex; justify-content: center; align-items: center; }
.akktabsblock .atb-text { position: relative; background: none; }
.akktabsblock .atb-text > div { padding: 0px 2px 30px; position: relative; }


/* Akkordeon */
.akktabsblock-akkordeon .atb-item { position: relative; padding: 0px; margin: 0px 0px 2px; border-bottom: 1px solid var(--col-secondary); }
    .akktabsblock-akkordeon .atb-item:last-child { border: none; }
    
.akktabsblock-akkordeon .atb-title { position: relative; line-height: normal; font-family: var(--font-header); font-size: var(--fontsize-title); font-weight: var(--fontweight-title); color: var(--col-primary); letter-spacing: 0; word-wrap: break-word; overflow-wrap: break-word; word-break: break-word; text-align: left; vertical-align: middle; margin: 0px; text-decoration: none; cursor: pointer; max-width: none; padding: 28px 60px 28px 0px; }
    .akktabsblock-akkordeon .atb-title:before { content:'\00a0'; display: inline; }
    .akktabsblock-akkordeon .atb-item.hastitle .atb-title:before { display: none; }
    .akktabsblock-akkordeon .atb-title:hover { color: var(--col-secondary); }
    .akktabsblock-akkordeon .atb-title span { display: flex; position: absolute; top: 50%; right: 0px; width: 30px; height: 30px; justify-content: center; align-items: center; line-height: 1; pointer-events: none; transform: translateY(-50%); transform-origin: center; opacity: 0.75; overflow: hidden; }
        .akktabsblock-akkordeon .atb-title:hover span { opacity: 1; }
.akktabsblock-akkordeon .atb-date { transition: none; font-size: 0.4em; font-weight: normal; margin-bottom: 3px; color: var(--col-secondary); }

/* Icons */
.akktabsblock-akkordeon.atb-icon-plusminus .atb-title span:before, .akktabsblock-akkordeon.atb-icon-plusminus .atb-title span:after { content: ''; display: flex; position: absolute; top: 50%; right: 0px; width: 100%; height: 2px; padding: 0px; background: var(--col-primary); transform: translateY(-50%) rotate(90deg); transform-origin: center; transition: all 0.3s ease; }
    .akktabsblock-akkordeon.atb-icon-plusminus .atb-title span:after { transform: translateY(-50%) rotate(0deg); }
.akktabsblock-akkordeon.atb-icon-plusminus .atb-title.active span:before { transform: translateY(-50%) rotate(0deg); }
.akktabsblock-akkordeon.atb-icon-plusminus .atb-title.active span:after { opacity: 0; }

.akktabsblock-akkordeon.atb-icon-plusclose .atb-title span:before, .akktabsblock-akkordeon.atb-icon-plusclose .atb-title span:after { content: ''; display: flex; position: absolute; top: 50%; right: 0px; width: 100%; height: 2px; padding: 0px; background: var(--col-primary); transform: translateY(-50%) rotate(90deg); transform-origin: center; transition: all 0.3s ease; }
    .akktabsblock-akkordeon.atb-icon-plusclose .atb-title span:after { transform: translateY(-50%) rotate(0deg); }
.akktabsblock-akkordeon.atb-icon-plusclose .atb-title.active span { transform: translateY(-50%) rotate(45deg); }

.akktabsblock-akkordeon.atb-icon-arrow .atb-title span { top: calc(50% - 7px); right: 5px; width: 20px; height: 20px; border: 2px solid var(--col-primary); border-width: 0px 0px 2px 2px; transform-origin: center; transform: translateY(-50%) rotate(-45deg); }
.akktabsblock-akkordeon.atb-icon-arrow .atb-title.active span { top: calc(50% + 5px); transform: translateY(-50%) rotate(-225deg); }


/* Tabs */
.akktabsblock-tabs {}
.akktabsblock-tabs div.atb-tab { display: none; }
.akktabsblock-tabs .atb-tabsContent { position: relative; border: 1px solid var(--col-primary); border-top-width: 3px; }

@keyframes atb-mode-tabs_fadeIn { 100% { opacity: 1; }}
.akktabsblock-tabs .atb-text > div { display: none; opacity: 0; padding: 20px 15px; animation: atb-mode-tabs_fadeIn 0.65s ease 1 forwards; }
.akktabsblock-tabs .atb-text.active > div { display: block; }

.akktabsblock-tabs .atb-tabsNav ul { list-style-type: none; display: flex; justify-content: flex-start; align-content: center; flex-wrap: wrap; margin: 0px; padding: 0px; }
.akktabsblock-tabs .atb-tab { position: relative; font-size: 0.95em; cursor: pointer; background: var(--col-secondary-opa); color: var(--col-secondary-text); border-radius: 5px 5px 0px 0px; border-top: 3px solid var(--col-secondary); padding: 0px; margin: 0px; }
    .akktabsblock-tabs .atb-tab:last-child { margin-right: 0px !important; }
    .akktabsblock-tabs .atb-tab:hover { background: var(--col-secondary); border-color: var(--col-secondary); }
.akktabsblock-tabs .atb-tab.active { background: var(--col-primary); color: var(--col-primary-text); cursor: default; }

.akktabsblock-tabs .atb-tab span { transition: none; }
    .akktabsblock-tabs.atb-tabs-vertical1 .atb-tab span:before, .akktabsblock-tabs.atb-tabs-vertical2 .atb-tab span:before { content:'\00a0'; display: inline; }
    .akktabsblock-tabs .atb-tab.hastitle span:before { display: none; }
.akktabsblock-tabs .atb-tab > div { height: 100%; }
.akktabsblock-tabs .atb-tab > div > * { flex: 1 0; }

.akktabsblock-tabs .atb-icon { flex: 0 1 50px; margin: 0px 10px 0px 0px; align-items: center; }
    .akktabsblock-tabs .atb-icon img { height: 25px; width: auto; max-width: 35px; }

/* Tabs: Standard (default) */
.akktabsblock-tabs.atb-tabs-default .atb-icon { flex: 0 1 !important; display: inline-flex; margin: 0px; justify-content: center; align-items: center; margin: 0px; }
    .akktabsblock-tabs.atb-tabs-default .atb-tab.hastitle .atb-icon { margin-right: 10px; }

.akktabsblock-tabs.atb-tabs-default .atb-tab { margin: 0px 2px 0px 0px; padding: 8px 13px; }
    .akktabsblock-tabs.atb-tabs-default .atb-tab.hasimage { padding: 10px 13px; }
.akktabsblock-tabs.atb-tabs-default .atb-tab.active { background: var(--col-primary); color: var(--col-primary-text); cursor: default; }

.akktabsblock-tabs.atb-tabs-default .atb-tab > div { display: flex; justify-content: flex-start; }
.akktabsblock-tabs.atb-tabs-default .atb-tab > div > * { flex: 1 1; }

/* Tabs: Clean */
.akktabsblock-tabs.atb-tabs-clean1 .atb-tabsNav { border: none; }
.akktabsblock-tabs.atb-tabs-clean1 .atb-icon { margin: 0px; }
    .akktabsblock-tabs.atb-tabs-clean1 .atb-tab.hastitle .atb-icon { margin-bottom: 10px; }
.akktabsblock-tabs.atb-tabs-clean1 .atb-tabsNav ul { justify-content: center; }

.akktabsblock-tabs.atb-tabs-clean1 .atb-tab { text-align: center; border-radius: 0px; margin: 0px 5px 20px; padding: 0px; border: none; color: var(--col-text); background: none !important; font-weight: bold; min-width: 175px; opacity: 0.6; transition: all 0.3s ease; }
    .akktabsblock-tabs.atb-tabs-clean1 .atb-tab:after { content:''; display: block; background: none; width: 100%; height: 3px; margin: 5px 0px 0px; padding: 0px; transition: all 0.3s ease; }
    .akktabsblock-tabs.atb-tabs-clean1 .atb-tab:hover:after { background: var(--col-text); }
.akktabsblock-tabs.atb-tabs-clean1 .atb-tab.active { color: var(--col-primary); opacity: 1; }
    .akktabsblock-tabs.atb-tabs-clean1 .atb-tab.active:after { background: var(--col-primary); }
    
.akktabsblock-tabs.atb-tabs-clean1 .atb-tab > div { display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 8px 13px; transition: none; }
.akktabsblock-tabs.atb-tabs-clean1 .atb-tabsContent { border: none; margin-top: 10px; }

/* Tabs: Boxed */
.akktabsblock-tabs.atb-tabs-boxed1 { padding-bottom: 15px; }
.akktabsblock-tabs.atb-tabs-boxed1 .atb-tabsNav { border: none; }
.akktabsblock-tabs.atb-tabs-boxed1 .atb-icon { width: 55px; height: 100%; margin: 0px; }
    .akktabsblock-tabs.atb-tabs-boxed1 .atb-tab.hastitle .atb-icon { margin-bottom: 10px; }
    .akktabsblock-tabs.atb-tabs-boxed1 .atb-icon img { width: auto; height: auto; max-height: 60px; max-width: 100%; }
.akktabsblock-tabs.atb-tabs-boxed1 .atb-tabsNav ul { justify-content: space-between; }

.akktabsblock-tabs.atb-tabs-boxed1 .atb-tab { flex: 1 1; text-align: center; border-radius: 0px; padding: 15px 20px; margin-right: 1px; top: 15px; border-top-width: 3px; }    
.akktabsblock-tabs.atb-tabs-boxed1 .atb-tab.active  { top: 0px; padding-top: 30px; margin-bottom: -15px; border-radius: 5px 5px 0px 0px; }
    
.akktabsblock-tabs.atb-tabs-boxed1 .atb-tab > div { display: flex; flex-direction: column; justify-content: center; align-items: center; }
.akktabsblock-tabs.atb-tabs-boxed1 .atb-tab > div > * { flex: 1 1 auto; }
.akktabsblock-tabs.atb-tabs-boxed1 .atb-tabsContent { top: 15px; border-top-width: 5px; }

/* Tabs: Vertical 1 */
.akktabsblock-tabs.atb-tabs-vertical1 { display: flex; flex-direction: row; }
.akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav { flex: 1 1 33.3333%; border: none; padding-right: 75px; }
.akktabsblock-tabs.atb-tabs-vertical1 .atb-icon { position: absolute; left: 0px; top: 50%; display: inline-flex; margin: 0px; transform: translateY(calc(-50% + -1px)); justify-content: center; align-items: center; width: 35px; }

.akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav ul { justify-content: center; flex-direction: column; max-width: 300px; }
.akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li { text-align: left; border-radius: 0px; margin: 0px 0px 28px; padding: 10px 0px; border: none; color: var(--col-text); background: none !important; font-weight: bold; min-width: 200px; opacity: 0.6; transition: all 0.3s ease; white-space: normal; line-height: 1; width: 100%; }
    .akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li span:after { content:'\f061'; display: inline-flex; font-family: "Font Awesome 5 Free"; font-weight: 900; background: none; width: 24px; height: auto; margin: 0px 0px 0px 15px; padding: 0px; opacity: 0; transition: all 0.3s ease; }
    .akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li.hasimage { padding-left: 45px; }
    .akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li:hover { opacity: 1; }
    
    .akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li.active { color: var(--col-primary); opacity: 1; transition: none; }
    .akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li.active span:after { opacity: 1; }    

.akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li span { word-wrap: break-word; overflow-wrap: break-word; word-break: break-word; vertical-align: sub; }
.akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsNav li > div { display: block; transition: none; margin-top: -8px; }
.akktabsblock-tabs.atb-tabs-vertical1 .atb-tabsContent { flex: 1 1 66.6666%; border: none; margin-top: 0px; }
.akktabsblock-tabs.atb-tabs-vertical1 .atb-text.active > div { padding: 0px; }

/* Tabs: Vertical 2 (boxed) */
.akktabsblock-tabs.atb-tabs-vertical2 { display: flex; flex-direction: row; }
.akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav { flex: 1 1 33.3333%; border: none; padding-right: 75px; }
.akktabsblock-tabs.atb-tabs-vertical2 .atb-icon { position: absolute; left: 13px; top: 50%; display: inline-flex; margin: 0px; transform: translateY(-50%); justify-content: center; align-items: center; width: 35px; }

.akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav ul { justify-content: center; flex-direction: column; max-width: 300px; }
.akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li { text-align: left; border-radius: 0px; margin: 0px 0px 5px; padding: 15px 13px 15px 30px; border: none; color: var(--col-text); background: var(--col-secondary-opa); font-weight: bold; min-width: 200px; opacity: 0.75; transition: all 0.3s ease; white-space: normal; box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); line-height: 1; width: 100%; }
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li:before { content:''; position: absolute; left: 11px; top: 50%; background: var(--col-primary-opa); width: 10px; height: 10px; margin: -5px 0px 0px; padding: 0px; border-radius: 50%; transition: all 0.4s ease; }
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li.hasimage { padding-left: 58px; }
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li.hasimage:before { display: none; }
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li:hover { opacity: 1; }
    
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li.active { background: var(--col-primary); color: var(--col-primary-text); opacity: 1; }
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li.hastitle.active { padding-left: 15px; }    /* :not(.hasimage) */    
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li.hastitle.active .atb-icon { opacity: 0; }        
    .akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li.active:before { display: block; background: var(--col-secondary); width: 3px; height: 100%; left: 0px; top: 0px; margin: 0px; border-radius: 0px; }

.akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li span { word-wrap: break-word; overflow-wrap: break-word; word-break: break-word; }
.akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsNav li > div { display: block; transition: none; }
.akktabsblock-tabs.atb-tabs-vertical2 .atb-tabsContent { flex: 1 1 66.6666%; border: none; margin-top: 0px; }
.akktabsblock-tabs.atb-tabs-vertical2 .atb-text.active > div { padding: 0px; }



/* Modul: Kalender (ab v1.3.6) */
.calendar { overflow: hidden; }
body.calendar-popup-opened { overflow-x: hidden; overflow-y: hidden; }
@-moz-document url-prefix() { body.calendar-popup-opened { overflow-x: inherit; } }

/* Definition Popup (Lightbox) */
.calendar-popup { position: fixed; top: 0px; left: 0px; right: 0px; bottom: 0px; z-index: -1; opacity: 0; margin: 0px; padding: 0px; background: var(--col-overlay); overflow-x: hidden; overflow-y: auto; transition: all 0.4s ease; }
	.calendar-popup-show { z-index: 99999; opacity: 1; }
.calendar-popup-wrapper { position: relative; z-index: 5; display: table; width: 100%; height: 100%; max-width: 650px; margin: 0px auto; }
	.calendar-popup-wrapper > div { position: relative; display: table-cell; vertical-align: middle; margin: 40px auto; }
.calendar-popup-close { position: sticky; top: 0px; right: 0px; margin-right: 0px; z-index: 999; }
	/*.calendar-popup-close span { position: absolute; top: 0px; right: 20px; z-index: 99999; width: 34px; height: 34px; padding: 5px; cursor: pointer; overflow: hidden; transition: all 0.3s ease; }
		.calendar-popup-close span:hover {}
		.calendar-popup-close span:after { content: '+'; display: block; position: relative; top: -50px; left: 1px; text-align: center; font-size: 70px; font-weight: 400; color: var(--col-primary); transform: rotate(45deg); }
	*/
		.calendar-popup-close span { position: absolute; z-index: 99999; top: 15px; right: 50%; transform: translateX(50%); width: 40px; height: 40px; cursor: pointer; background: var(--col-secondary); transition: all 0.3s ease; }
		.calendar-popup-close span:before, .calendar-popup-close span:after { content:''; position: absolute; top: 50%; left: 50%; background: var(--col-primary); display: block; width: 28px; height: 2px; transform-origin: center; transform: rotate(45deg) translate(-10px, 10px); }
			.calendar-popup-close span:after { transform: rotate(-45deg) translate(-10px, -10px); }
		.calendar-popup-close span:hover:before, .calendar-popup-close span:hover:after { height: 4px; }
		
.calendar-popup-content { background: #FFF; margin: 80px 20px; padding: 30px 30px; box-shadow: 0 5px 25px -5px #000; transition: all 0.3s ease; }

/* Definition Termin verschoben */
.calendar span.postponed { display: block; }
.calendar span.postponed span { display: inline-block; background: var(--col-primary); color: var(--col-secondary); padding: 2px 8px; font-weight: bold; border-radius: 3px; line-height: normal; }

/* Fullcalendar */
.calendar-full .fc-toolbar { margin-bottom: 35px; }
	.calendar-full .fc-left { padding-right: 15px; }
		.calendar-full .fc-left .fc-button-group { margin-right: 0.75em !important; }
	.calendar-full .fc-right { padding-left: 15px; }
	.calendar-full .fc-toolbar h2 { font-family: var(--font-header); font-size: 1.8em; font-weight: bold; text-transform: uppercase; color: #666; letter-spacing: normal; }
.calendar-full .fc-button { border-radius: 3px !important; font-size: 13px; padding: 7px 10px; margin: 0px 5px 5px 0px !important; text-transform: uppercase; }
	.calendar-full .fc-right .fc-button { margin: 0px 0px 5px 5px !important; }
.calendar-full .fc-button-primary, .calendar-full .fc-button-primary:hover { background-color: #EEE; color: #888; font-weight: bold; border: none; transition: all 0.3s ease; }
	.calendar-full .fc-button-primary:hover { background-color: #DDD; }
	.calendar-full .fc-button-primary:focus { box-shadow: none !important; outline: none; }
	.calendar-full .fc-button-active { background-color: #004568 !important; color: #FFF !important; }
	.calendar-full .fc-today-button, .calendar-full .fc-today-button:hover { background-color: var(--col-primary); color: #333; }
	.calendar-full .fc-button-primary:disabled { background-color: #DDD; color: #FFF; }

.calendar-full .fc-day-grid-event { border-color: #CCC !important; border-radius: 0px; padding: 2px 4px !important; margin: 1px 0px; white-space: normal; cursor: pointer; text-shadow: #000 1px 1px; }
	.calendar-full .fc-day-grid-event:hover { background-color: rgba(0,69,104, 1) !important; }
.calendar-full .fc-more-cell div { padding: 3px; }
	.calendar-full a.fc-more { margin-top: 3px; color: inherit; line-height: 1; word-break: break-all; margin: 1px 0px; }
.calendar-full .fc-dayGrid-view .fc-day-number, .calendar-full .fc-dayGrid-view .fc-week-number { border-radius: 0px !important; font-size: 0.8em; }
	.calendar-full .fc-dayGrid-view .fc-day-number { font-weight: bold; color: #999; }
.calendar-full .fc-popover .fc-header { background: var(--col-primary) !important; font-weight: bold; }

.calendar-full .fc-list-item-marker { vertical-align: middle; }
	.calendar-full .fc-event-dot { border-radius: 0px; border: 1px solid #FFF; }
.calendar-full .fc-list-item { cursor: pointer; }	
	.calendar-full .fc-list-item a { transition: none; }	
	.calendar-full .fc-list-item:hover td { background: rgba(0,69,104, 0.75) !important; color: #FFF; }

/* Übersichtsliste */
.calendar-list .cal-header { font-family: var(--font-header); font-size: 30px; font-weight: bold; color: var(--col-primary); text-transform: uppercase; margin: 0px 0px 25px; }
.calendar-list .cal-nav { position: relative; top: -2px; height: 40px; list-style-type: none; margin: 0px 0px 0px 20px; padding: 0px; display: inline-block; vertical-align: middle; }
	.calendar-list .cal-nav li { display: inline-block; width: 40px; height: 40px; margin: 0px -2px; background: none; font-size: 30px; }
	.calendar-list .cal-nav li > * { display: inline-block; line-height: 50px; text-decoration: none; background: var(--col-primary); color: #FFF; /*border: 1px solid #737373;*/ border-radius: 50%; padding: 13px 11px 13px 15px; }
		.calendar-list .cal-nav li > *:hover { background: var(--col-secondary); }
		.calendar-list .cal-nav li > * span { display: block; content:''; width: 10px; height: 10px; background: none; border: 2px solid #FFF; border-width: 0px 0px 2px 2px; transform: rotate(45deg); }
			.calendar-list .cal-nav li > *:hover span { border-color: #000; }
	.calendar-list .cal-nav li.next > * { padding: 13px 15px 13px 11px; }
		.calendar-list .cal-nav li.next > * span { border-width: 2px 2px 0px 0px; }
	.calendar-list .cal-nav li > span, .calendar-list .cal-nav li > span span { background: #FFF !important; border-color: #CCC !important; }		/* not active */
	
.calendar-list .cal-filter { margin: 0px 0px 50px; }
.calendar-list .cal-filter-date { margin-bottom: 20px; }
	.calendar-list .cal-filter-date-month {}
	.calendar-list .cal-filter-date-year { margin-top: 8px; }
	.calendar-list .cal-filter-date a, .calendar-list a.cal-filter-opener { display: inline-block; margin: 0px 5px 5px 0px; padding: 7px 10px; font-size: 13px; font-weight: normal; line-height: normal; background: #FFF; color: #000; text-decoration: none; text-transform: uppercase; }
		.calendar-list .cal-filter-date a:hover { background: var(--col-secondary); color: var(--col-text); }
		.calendar-list .cal-filter-date a.selected, .calendar-list a.cal-filter-opener.selected { background: var(--col-primary) !important; color: #FFF; }
		.calendar-list .cal-filter-date a.today { background: var(--col-accent); color: #FFF; }
		
.calendar-list .cal-filter-more { position: relative; display: flex; flex-wrap: wrap; align-items: center; margin: 0px; background: #FFF; margin-bottom: 20px; padding: 15px; border-radius: 0px; }
	.calendar-list .cal-filter-sbeg { margin-left: auto; }
	.calendar-list .cal-filter-more.onlysearch .cal-filter-sbeg { width: 100%; }
.calendar-list a.cal-filter-opener { background: #EEE; cursor: pointer; margin-bottom: 0px; }
	.calendar-list a.cal-filter-opener:hover { background: #CCC; }
.calendar-list div.cal-filter-dropdown { display: block; position: absolute; left: -3000px; z-index: 1000; background: #FAFAFA; min-width: 150px; max-width: 250px; margin-top: 3px; box-shadow: rgba(0,0,0, 0.15) 1.95px 1.95px 2.6px; opacity: 0; transition: opacity 0.3s ease; }
	.calendar-list .cal-filter-dropdown.opened { left: auto; opacity: 1; }
	.calendar-list .cal-filter-dropdown a { display: block; padding: 6px 10px; text-decoration: none; font-size: 13px; color: #000; line-height: normal; border-top: 1px solid #DDD; border-left: 3px solid transparent; }
		.calendar-list .cal-filter-dropdown a:first-child { border-top: none; }
		.calendar-list .cal-filter-dropdown a:hover, .calendar-list .cal-filter-dropdown a.selected { border-left-color: var(--col-primary); color: #000; background: #EEE; }
.calendar-list .cal-filter-sbeg form { position: relative; max-width: 200px; }
	.calendar-list .cal-filter-more.onlysearch .cal-filter-sbeg form { max-width: none; }
.calendar-list .cal-filter-sbeg input { width: 100%; height: 100%; border: 1px solid #CCC; margin: 0px; padding: 4px 60px 4px 11px; font-family: var(--font-text); font-size: 14px; color: #666; }
	.calendar-list .cal-filter-sbeg input[type=submit], .calendar-list .cal-filter-sbeg span { position: absolute; top: 0px; right: 0px; bottom: 0px; z-index: 5; width: 50px; background: none; text-indent: -555px; border: none; padding: 0px; text-align: center; cursor: pointer; }
	.calendar-list .cal-filter-sbeg span { width: auto; top: 0%; right: 5px; z-index: 1; text-indent: 0px; color: #999; font-size: 18px; pointer-events: none; }


/* Übersichtsliste (Standard) */
.calendar-list .cal-items { display: flex; flex-wrap: wrap; justify-content: flex-start; margin: 0px; }
.calendar-list .cal-item { position: relative; margin: 0px 0px 30px; background: #FFF; /*line-height: 1.2; border-radius: 0px 0px 8px 0px;*/ transition: all 0.3s ease; overflow: hidden; }
	.calendar-list .cal-item:hover { /*transform: translateY(-5px);*/ box-shadow: rgba(17, 12, 46, 0.15) 0px 48px 100px 0px; }
	
.calendar-list .cal-image { position: relative; height: 150px; background-size: cover; background-position: center center; transition: all 0.3s ease; }
	.calendar-list .cal-image span.postponed { position: relative; top: 15px; left: 15px; z-index: 10; margin-right: 60px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; }
	.calendar-list .cal-image img { position: absolute; top: 0px; left: 0px; z-index: 5; width: 100%; height: 100%; object-fit: cover; object-position: center; }
	
.calendar-list .cal-entry { display: flex; flex-wrap: nowrap; padding: 20px; min-height: 115px; transition: all 0.3s ease; }
	.calendar-list .cal-date { text-align: left; padding: 0px; font-size: 1.3em; font-weight: normal; line-height: 1.2; overflow: hidden; flex: 0 1 45px; }
		.calendar-list .cal-date .cal-date-short-int { display: none; }
		.calendar-list .cal-date i { display: none; }
		.calendar-list .cal-date u { display: block; text-decoration: none; font-size: 0.5em; font-weight: 400; text-align: left; text-transform: uppercase; }
		.calendar-list .cal-date span.separator { display: block; font-weight: 400; padding-left: 6px; }
		.calendar-list .cal-date span.separator:after { content:'–'; display: inline-block; line-height: 1; text-align: center; }
	.calendar-list .cal-content { flex: 1 1; overflow: hidden; }
		.calendar-list .cal-content span.postponed { display: none; margin: 0px 0px 15px; }
		.calendar-list .hasnoimage .cal-content span.postponed { display: block; }

.calendar-list div.cal-link { display: none; }
	.calendar-list .cal-entry div.cal-link { display: block; }
.calendar-list a.cal-link { text-decoration: none; }
	.calendar-list a.cal-item-link { display: inline-block; width: auto; height: auto; background: var(--col-primary); color: #FFF; padding: 10px 17px; font-family: var(--font-header); font-size: 15px; text-transform: uppercase; font-weight: 900; letter-spacing: 2px; text-decoration: none; white-space: nowrap; transition: all 0.3s ease; }
	.calendar-list a.cal-item-link:hover, .calendar-list .cal-item:hover a.cal-item-link { background: var(--col-secondary); }
	.calendar-list .cal-entry a.cal-item-link { /*display: none;*/ margin-top: 25px; }	
	.calendar-list a.cal-global-link { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 5; }

.calendar-list .cal-title { font-family: var(--font-accent); font-size: 1.5em; font-weight: normal; font-style: italic; line-height: 1.3; margin: -1px 0px 10px; word-wrap: break-word; }
	.calendar-list.cuttitle .cal-title { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.calendar-list .cal-text { /*font-size: 0.85;*/ margin: 15px 0px 0px; font-weight: normal; }
.calendar-list .cal-loc, .calendar-list .cal-cat, .calendar-list .cal-date-full { position: relative; font-size: 0.85em; padding: 0px 0px 0px 20px; }
	.calendar-list .cal-loc i, .calendar-list .cal-cat i, .calendar-list .cal-date-full i { position: absolute; top: 0px; left: -3px; }
	/*.calendar-list .cal-loc span:after { content:', '; display: inline; }*/
		.calendar-list .cal-loc > *:nth-child(3), .calendar-list .cal-loc > *:nth-child(4) { display: none; }
		.calendar-list .cal-loc span:last-child:after { display: none; }
.calendar-list .cal-flag { position: absolute; top: 0px; right: 10px; z-index: 50; font-size: 30px; text-shadow: 1px 1px var(--col-dark); pointer-events: none; }
	.calendar-list .cal-flag i { display: flex; vertical-align: top; margin: 0px; padding: 0px; }
	.calendar-list .cal-flag i:before { margin: 0px !important; }
.calendar-list .cal-date-full { display: none; }
	.calendar-list .cal-date-full span.separator:after { content:' – '; display: inline; }
.cal-notfound { font-weight: bold; color: var(--col-primary); }

/* Übersichtsliste (boxed) */
.calendar-list-boxed .cal-items { margin: 0px -8px; }
.calendar-list-boxed .cal-item { flex: 0 1 calc(33.333% - 16px); margin: 0px 8px 16px; padding: 250px 0px 70px; }
	.calendar-list-boxed .cal-item.hasnoimage { padding-top: 50px; }
.calendar-list-boxed .cal-notfound { margin: 0px 8px; }
.calendar-list-boxed .cal-image { position: absolute; height: 250px; top: 0px; left: 0px; width: 100%; }
	.calendar-list-boxed .cal-item:hover .cal-image { height: 0px; }
.calendar-list-boxed .cal-item:hover .cal-entry, .calendar-list-boxed .cal-item.hasnoimage .cal-entry { transform: translateY(-200px); }
	.calendar-list-boxed .cal-item.hasnoimage .cal-entry { transform: translateY(0px) !important; }
.calendar-list-boxed .cal-item:hover a.cal-item-link { background: var(--col-secondary); }
.calendar-list-boxed div.cal-link { display: block; text-align: center; position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); }
.calendar-list-boxed .cal-entry div.cal-link, .calendar-list-boxed .cal-entry a.cal-item-link { display: none; }

/* Übersichtsliste (table2) */
.calendar-list-table2 .cal-item { display: flex; flex-wrap: wrap; width: 100%; margin: 0px 0px 30px; border-radius: 0px; }
.calendar-list-table2 .cal-image { width: 30%; height: 100%; }
.calendar-list-table2 .cal-entry { width: 70%; padding: 15px 21px; }
	.calendar-list-table2 .hasnoimage .cal-entry { width: 100%; }
.calendar-list-table2 .cal-title { font-size: 1.2em; margin-bottom: 10px; padding-right: 30px; }
.calendar-list-table2 .cal-content span.postponed { margin-top: -7px; }
.calendar-list-table2 .cal-date { display: none; }
.calendar-list-table2 .cal-date-full { display: block; margin-bottom: 3px; }
	.calendar-list-table2 .cal-date-full-int { display: none; }

/* Übersichtsliste (table3) */
.calendar-list-table3 .cal-item { display: grid; grid-template-rows: 1fr; grid-template-columns: auto 20%; gap: 20px; grid-template-areas: "left right"; width: 100%; margin: 0px 0px 30px; border-radius: 0px; }
.calendar-list-table3 .cal-image { grid-area: right; height: 100%; }
.calendar-list-table3 .cal-entry { grid-area: left; display: grid; grid-template-rows: 1fr; grid-template-columns: 175px auto; gap: 20px; grid-template-areas: "contentleft contentright"; width: 100%; }
	.calendar-list-table3 .hasnoimage .cal-entry { grid-column: 1 / span 2; }
.calendar-list-table3 .cal-date { grid-area: contentleft; text-align: left; padding: 0px; font-size: 1em; font-weight: 400; padding-top: 1px; }
	.calendar-list-table3 .cal-date .cal-date-short { display: none; }
	.calendar-list-table3 .cal-date .cal-date-short-int { display: block; }
	.calendar-list-table3 .cal-date u, .calendar-list-table3 .cal-date span.separator { display: inline; font-size: 1em; text-transform: none; }
	.calendar-list-table3 .cal-date span.separator { margin: 0px 5px; }
.calendar-list-table3 .cal-content { grid-area: contentright; }
.calendar-list-table3 .cal-title { font-size: 1.2em; padding-right: 30px; }
.calendar-list-table3 span.postponed { display: none; }
.calendar-list-table3 .cal-content span.postponed { display: block; margin-top: 0px; }

/* Detailseite */
/*
.calendar-detail a.cal-link { display: inline-block; background: var(--col-primary); color: #FFF; padding: 10px 17px; font-family: var(--font-header); font-size: 14px; font-weight: bold; text-decoration: none; transition: all 0.3s ease; }
	.calendar-detail a.cal-link:hover {}
*/
.calendar-detail { display: grid; grid-template-rows: repeat(3, auto); grid-template-columns: 30% auto; gap: 30px; grid-template-areas: "header header" "image content" "footer footer"; }
	.calendar-detail.hasnoimage { grid-template-areas: "header header" "content content" "footer footer"; }
.calendar-detail .cal-title { grid-area: header; font-family: var(--font-accent); font-size: 1.85em; font-weight: bold; /*color: var(--col-primary);*/ line-height: 1.25; letter-spacing: 1px; text-transform: uppercase; word-wrap: break-word; margin-bottom: -30px; }
.calendar-detail span.postponed { margin-top: 5px; padding-bottom: 5px; }
.calendar-detail .cal-image { grid-area: image; }
	.calendar-detail .cal-image a { position: relative; display: flex; }
		.calendar-detail .cal-image a:after { content: ''; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; opacity: 0; transition: all .3s ease; background: url(thumb-plus.png) no-repeat center center var(--col-overlay); }
		.calendar-detail .cal-image a:hover:after { opacity: 1; }
	.calendar-detail .cal-image img { width: 100%; height: auto; }
.calendar-detail .cal-text { grid-area: content; }
	.calendar-detail .cal-text .cal-text-title { display: none; }
.calendar-detail:not(.inPopup) .cal-data { grid-area: footer; display: flex; flex-wrap: wrap; }
	.calendar-detail:not(.inPopup) .cal-data > * { width: 35%; padding: 25px 5% 0px 0px; }
	.calendar-detail:not(.inPopup) .cal-data > *:last-child { width: 30%; padding-right: 0%; }
	.calendar-detail:not(.inPopup) .cal-data span { display: block; }
	.calendar-detail:not(.inPopup) .cal-data div:not(.cal-ticket) i { display: none; }
	.calendar-detail:not(.inPopup) .cal-data span.caption { display: block; font-size: 1.1em; font-weight: bold; margin: 0px 0px 10px 0px; }
.calendar-detail .cal-backlink { grid-column: 1 / span 2; margin-top: 30px; }
	.calendar-detail .cal-backlink-top { display: none; }
.calendar-detail .cal-morelink { margin-top: 35px; }
.calendar-detail a.cal-ticketlink { padding: 10px 17px 10px 13px; background: var(--col-primary); color: var(--col-secondary); }
	.calendar-detail a.cal-ticketlink i { display: inline-block; }

/* Detailseite Popup */
.calendar-detail.inPopup img { width: 100%; max-width: 100%; height: auto; }
.calendar-detail.inPopup { display: grid; grid-template-rows: repeat(4, auto); grid-template-columns: auto; gap: 0px; grid-template-areas: "area1" "area2" "area3" "area4"; }
.calendar-detail.inPopup .cal-title { grid-area: area1; background: var(--col-primary); color: #FFF; font-family: var(--font-accent); font-size: 1.6em; font-weight: bold; text-transform: uppercase; word-wrap: break-word; margin: -30px -30px 0px; padding: 24px 30px; }
.calendar-detail.inPopup .cal-data { grid-area: area3; background: #EEE; padding: 15px 15px; color: #000; }
	.calendar-detail.inPopup.hasnoimage .cal-data { margin: 0px -30px;  padding: 15px 30px; }
	.calendar-detail.inPopup .cal-data span.caption { display: none; }
	.calendar-detail.inPopup .cal-time:before { content:' | '; }
	.calendar-detail.inPopup .cal-loc span:after { content:', '; display: inline; }
		.calendar-detail.inPopup .cal-loc span:last-child:after { display: none; }
	.calendar-detail.inPopup .cal-ticket { margin-top: 15px; }
.calendar-detail.inPopup .cal-image { grid-area: area2; display: flex; position: relative; margin-top: 30px; overflow: hidden; }
	.calendar-detail.inPopup .cal-image img { height: 100px; object-fit: cover; object-position: center; cursor: pointer; }
	.calendar-detail.inPopup .cal-image:before, .calendar-detail.inPopup .cal-image:after { display: inline-block; content: ''; position: absolute; bottom: 14px; right: 14px; width: 7px; height: 7px; border: 2px solid #FFF; border-width: 0px 0px 2px 2px; pointer-events: none; opacity: 1; box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px; }
	.calendar-detail.inPopup .cal-image:after { border-width: 2px 2px 0px 0px; right: 10px; bottom: 18px; }
		.calendar-detail.inPopup .cal-image.maximize img { height: auto; }
		.calendar-detail.inPopup .cal-image.maximize:before, .calendar-detail.inPopup .cal-image.maximize:after { opacity: 0; }
.calendar-detail.inPopup .cal-text { grid-area: area4; margin-top: 30px; }
	.calendar-detail.inPopup .cal-text .cal-text-title { display: block; margin: 0px 0px 15px; font-weight: bold; text-transform: uppercase; word-wrap: break-word; }
.calendar-detail.inPopup .cal-backlink { display: none; }

/* Farb-Themes */
.bc-dark .calendar-list .cal-filter-date a { background: var(--col-secondary); }
	.bc-dark .calendar-list .cal-filter-date a:hover { background: var(--col-light); }
.bc-dark .calendar-list .cal-filter-more { background: var(--col-secondary); }
.bc-dark .calendar-list a.cal-filter-opener { background: var(--col-light); }
	.bc-dark .calendar-list a.cal-filter-opener:hover { background: #EEE; }
.bc-dark .calendar-list .cal-nav li > span, .bc-dark .calendar-list .cal-nav li > span span { background: var(--col-secondary) !important; border-color: var(--col-light) !important; }
.bc-dark .calendar-list .cal-item { border: 1px solid var(--col-secondary); }

.bc-light .calendar-list .cal-filter-date a.selected, .bc-light .calendar-list a.cal-filter-opener.selected, .bc-light .calendar-list .cal-nav li > a { background: var(--col-secondary) !important; color: #000; }
.bc-light .calendar-list .cal-filter-sbeg span * { color: #999; }
.bc-light .calendar-list .cal-filter-more { background: rgba(255,255,255, 0.5); }
.bc-light .calendar-list .cal-nav li > * span { border-color: #000; }
	.bc-light .calendar-list .cal-nav li > *:hover span { border-color: #FFF; }
	
.bc-light .calendar-list .cal-header { color: var(--col-secondary); }
.bc-light .calendar-list .cal-entry * { color: var(--col-dark); }
	.bc-light .calendar-list .cal-entry a.cal-item-link { color: #FFF; }



/* Modul: Leistungs-/Angebotsslider mit mBlock (ab v1.0) */
.offerGalerie  { position: relative; margin: 0px; max-width: 1350px; overflow: hidden; margin: 0px auto; }
.offerGalerie .ofG-slide { position: relative; width: 400px; height: 300px; overflow: hidden; display: block; background: #EEE; }
.offerGalerie .ofG-slide > div { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; border: 1px solid var(--col-primary); border-bottom-width: 10px; }

.offerGalerie .ofG-slide a { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 5; }

/* Pfeilnavigation */
.offerGalerie .ofG-nav { position: static; margin: 0px; width: 100px; height: auto; padding: 14px 17px; opacity: 0.75; transition: all 0.5s ease; }
	.offerGalerie .ofG-nav:hover { opacity: 1; }
	.offerGalerie .ofG-nav:after { content: ''; display: none; }
        .offerGalerie .ofG-nav svg { width: 19px; height: 25px; }
	.offerGalerie .ofG-prev { left: 0px; }
	.offerGalerie .ofG-next { right: 0px; }

	.offerGalerie .ofG-nav-wrapper { display: inline-flex; flex-direction: row-reverse; position: relative; bottom: auto; margin: 50px 0px 0px 0px; left: 50%; transform: translateX(-50%); background: var(--col-primary); border-radius: 5px; overflow: hidden; }
        .offerGalerie .ofG-nav-wrapper:after { content:''; background: rgba(255,255,255, 0.4); width: 1px; position: absolute; top: 8px; bottom: 8px; left: 50%; }
	.offerGalerie .ofG-nav polyline { stroke: #FFF; stroke-width: 3px; }

/* Bilder */	
.offerGalerie .ofG-image { z-index: 1; background: center center no-repeat; background-size: cover; }
	.offerGalerie .ofG-image picture { display: block; height: 100%; }
	.offerGalerie .ofG-image img { max-width: none !important; width: 100%; height: 100%; object-fit: cover; object-position: center; }

/* Content */	
.offerGalerie .ofG-content { z-index: 5; display: flex; justify-content: flex-start; align-items: flex-end; transition: all 0.3s ease;
	text-rendering: optimizeLegibility; font-variant-ligatures: common-ligatures; font-feature-settings: "liga", "kern"; font-kerning: normal;
	text-align: left; text-transform: uppercase; font-weight: bold; font-size: 1.143em; 
}
.offerGalerie .ofG-content > div { position: relative; width: 100%; background: rgba(255,255,255, 0.75); color: var(--col-text) !important; margin: 0px 0px 20px; padding: 13px 50px 13px 20px; overflow: hidden; transition: all 0.3s ease; }
    .offerGalerie .ofG-content > div:before, .offerGalerie .ofG-content > div:after { content:''; display: block; width: 20px; height: 40px; background: var(--col-primary); clip-path: polygon(100% 100%, 100% 0, 0 50%); position: absolute; top: 50%; right: -1px; transform: translateY(-50%); }
    .offerGalerie .ofG-content > div:after { width: 6px; height: 12px; background: #FFF; right: 3px; transform: translateY(-50%) rotate(180deg); }
    .offerGalerie .ofG-slide:hover .ofG-content > div { background: #FFF; }

/* Farb-Themes */
.bc-light .offerGalerie .ofG-nav-wrapper { background: var(--col-light); }
.bc-light .offerGalerie .ofG-nav polyline { stroke: var(--col-primary); }
.bc-light .offerGalerie .ofG-nav-wrapper:after { background: var(--col-primary); }



/* Modul: Einzelbild mit Verlinkung & imageArea (ab v1.3.7) */
.singleImage { position: relative; display: inline-block; max-width: 100%; line-height: 0px; margin: 0px auto -5px; /* -5px: inline-block-Abstand aufheben */ overflow: hidden; transition: all .3s ease; }
.singleImage img { position: relative; display: block; max-width: 100%; height: auto; z-index: -2; transition: all .3s ease; margin: 0px; image-rendering: auto; image-rendering: -webkit-optimize-contrast; }
	.singleImage.si-greytone img { filter: var(--filter-grey); }
.singleImage a { display: inline-block; position: relative; }
	.singleImage a:after { content: ''; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; opacity: 0; transition: all .3s ease; background: url(thumb-plus.png) no-repeat center center var(--col-primary-opa); }
	.singleImage a:hover:after { opacity: 1; }
.left > .singleImage { margin-left: 0px; }
.right > .singleImage { margin-right: 0px; }

.singleImage100ph, .singleImage100ph * { height: 100% !important; }
	.singleImage100ph img { object-fit: cover; object-position: center; }
.singleImage100pw, .singleImage100pw * { width: 100% !important; }

.singleImage.si-hover-grey a:after, .singleImage.si-hover-color a:after, .singleImage.si-hover-blur a:after, .singleImage.si-hover-liftup a:after, .singleImage.si-hover-scaleup a:after { display: none; }
.singleImage.si-hover-grey:hover img  { filter: var(--filter-grey); }
.singleImage.si-hover-color:hover img { filter: grayscale(0); }
.singleImage.si-hover-blur:hover img  { filter: var(--filter-blur); }
	.singleImage.si-greytone.si-hover-blur:hover img { filter: var(--filter-greyblur); }
.singleImage.si-hover-liftup:not(.hasimagemap):hover  { transform: var(--fx-liftup-transf); box-shadow: var(--fx-liftup-shadow); }
.singleImage.si-hover-scaleup:hover { transform: var(--fx-scaleup); transform-origin: center; }

/* Imagemap-Option */
.si-imagemapwrapper img { display: inline-block; z-index: auto !important; }
	.si-imagemapwrapper:hover img { filter: grayscale(0) !important; }
.si-imagemapwrapper a.area { display: flex; position: absolute; overflow: hidden; text-decoration: none; font-size: 15px; color: #FFF; text-shadow: 1px 1px #000; line-height: 1.1; transition: background 0.7s ease; }
	.si-imagemapwrapper a.area:hover, .mobile .imagemap-wrapper a.area { background: rgba(67,67,67, 0.35); }
.si-imagemapwrapper a.area span { display: inline-block; opacity: 1; width: 100%; text-align: center; padding: 0px 5px; vertical-align: middle; transition: opacity 0.3s ease; align-self: center; justify-self: center; }
	html:not(.mobile) .si-imagemapwrapper a.area span { opacity: 0; }
	.si-imagemapwrapper a.area:hover span { opacity: 1 !important; }

.si-imagemaptooltip { position: absolute; top: -10px; left: -10px; opacity: 0; width: auto; max-width: 150px; margin: 0px; padding: 4px 6px 3px; background: var(--col-primary); border-radius: 0px; font-size: 12px; color: #FFF; text-shadow: 1px 1px #000; line-height: 1.1; transition: property 0.3s ease; transition-property: transform, opacity; pointer-events: none; }
	.si-imagemaptooltip.show { opacity: 1; }
.si-imagemaptooltip-boxed { top: 0px !important; left: 0px !important; right: 0px; border-radius: 0px 0px 5px 5px; margin: 0px auto; transform: translateY(-20px); text-shadow: none; width: 100%; max-width: 350px; text-align: center; padding: 6px 12px; background: var(--col-primary-opa); color: var(--col-primary); }
	.si-imagemaptooltip-boxed.show { transform: translateY(0px); }
	


/* Modul: Video einbinden (ab v1.2) */
.video-galerie { display: -ms-grid; display: grid; -ms-grid-columns: 1fr; grid-template-columns: 1fr; grid-gap: 0px; margin: 0px auto; }
	.video-galerie.videogrid-1 { }
	.video-galerie.videogrid-2 { -ms-grid-columns: 1fr 1fr; grid-template-columns: 1fr 1fr; }
	.video-galerie.videogrid-3 { -ms-grid-columns: 1fr 1fr 1fr; grid-template-columns: 1fr 1fr 1fr; }
	
	.video-galerie video { display: block; width: 100%; }
	.video-galerie div.ct-privacy a { z-index: 5; }
	.video-galerie div.ct-privacy:after { content: ''; width: 0px; height: 0px; -webkit-transform:rotate(360deg); border-style: solid; border-width: 76px 0 76px 130px; border-color: transparent transparent transparent rgba(0,0,0, 0.1); position: absolute; top: 50%; left: 50%; z-index: 0; margin: -74px 0px 0px -65px; }

	.video-galerie.videoalign-left { margin-left: 0px; }
	.video-galerie.videoalign-center { }
	.video-galerie.videoalign-right { margin-right: 0px; }
	
	.video-galerie.videogap-sm { grid-gap: 40px; }
	.video-galerie.videogap-md { grid-gap: 90px; }
	.video-galerie.videogap-lg { grid-gap: 140px; }
	
	.video-galerie.videoheight-ori div.ct-privacy { height: 100%; min-height: 200px; }
	.video-galerie.videoheight-1-1 .plyr__video-wrapper, .video-galerie.videoheight-1-1 div.ct-privacy { aspect-ratio: 1/1 !important; }
	.video-galerie.videoheight-3-2 .plyr__video-wrapper, .video-galerie.videoheight-3-2 div.ct-privacy { aspect-ratio: 3/2 !important; }
	.video-galerie.videoheight-4-3 .plyr__video-wrapper, .video-galerie.videoheight-4-3 div.ct-privacy { aspect-ratio: 4/3 !important; }
	.video-galerie.videoheight-8-5 .plyr__video-wrapper, .video-galerie.videoheight-8-5 div.ct-privacy { aspect-ratio: 8/5 !important; }
	.video-galerie.videoheight-16-9 .plyr__video-wrapper, .video-galerie.videoheight-16-9 div.ct-privacy { aspect-ratio: 16/9 !important; }
	
.video-container { background: rgba(0,0,0, 0.07); height: auto; padding: 0px; }
	.video-container div.ct-privacy { position: relative !important; }
.video-galerie figure, .video-galerie figcaption { display: block; }
	.video-galerie figcaption { display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 5px 9px; margin-bottom: -8px; font-size: 0.85em; }
.video-container .plyr .plyr__control--overlaid { background: #FFF; }
    .video-container .plyr .plyr__control--overlaid svg use, .video-container .plyr__progress .plyr__tooltip { color: var(--col-primary); }
	.video-container .plyr .plyr__control--overlaid:hover svg use { color: #FFF; }
.video-container .plyr .plyr__control:hover, .video-container .plyr .plyr__control--overlaid:hover { background: var(--col-primary); }
.video-container .plyr input[type=range] { color: var(--col-secondary) !important; border: none !important; outline: none !important; box-shadow: none !important; }

@media screen and (max-width:560px){
	.video-container .plyr .plyr__controls { padding-top: calc(var(--plyr-control-spacing, 4px)*2); }
	.video-container .plyr .plyr__progress__container { display: none; }
}



/* Modul: Horizontale Trennlinie (ab v1.0) */
.hr-separator-wrapper { margin: 20px auto;
    --hr-col-default: #CCC;
}
    .hr-separator-wrapper:has(.hr-separator.hr-skew-left), .hr-separator-wrapper:has(.hr-separator.hr-skew-right) { visibility: hidden; overflow: hidden; }
.hr-separator { border: none; }
    .hr-separator:before, .hr-separator:after { content:''; display: block; height: 100%; border: none; display: none; flex: 0 1 calc(50% - 25px); }
.hr-separator svg { display: none; }

.hr-separator, .hr-separator:before, .hr-separator:after                                                    { background: var(--hr-col-default); border-color: var(--hr-col-default); }
.hr-separator.hr-col-primary, .hr-separator.hr-col-primary:before, .hr-separator.hr-col-primary:after       { background: var(--col-primary); border-color: var(--col-primary); }
.hr-separator.hr-col-secondary, .hr-separator.hr-col-secondary:before, .hr-separator.hr-col-secondary:after { background: var(--col-secondary); border-color: var(--col-secondary); }
.hr-separator.hr-col-accent, .hr-separator.hr-col-accent:before, .hr-separator.hr-col-accent:after          { background: var(--col-accent); border-color: var(--col-accent); }
.hr-separator.hr-col-white, .hr-separator.hr-col-white:before, .hr-separator.hr-col-white:after             { background: #FFF; border-color: #FFF; }
.hr-separator.hr-col-black, .hr-separator.hr-col-black:before, .hr-separator.hr-col-black:after             { background: #000; border-color: #000; }

.hr-separator svg path, .hr-separator svg circle                                    { fill: var(--hr-col-default); }
.hr-separator.hr-col-primary svg path, .hr-separator.hr-col-primary svg circle      { fill: var(--col-primary); }
.hr-separator.hr-col-secondary svg path, .hr-separator.hr-col-secondary svg circle  { fill: var(--col-secondary); }
.hr-separator.hr-col-accent svg path, .hr-separator.hr-col-accent svg circle        { fill: var(--col-accent); }
.hr-separator.hr-col-white svg path, .hr-separator.hr-col-white svg circle          { fill: #FFF; }
.hr-separator.hr-col-black svg path, .hr-separator.hr-col-black svg circle          { fill: #000; }

.hr-separator.hr-dashed, .hr-separator.hr-dotted { background: none !important; height: 0px !important; border-top-width: 1px; }
    .hr-separator.hr-dashed:before, .hr-separator.hr-dotted:before, .hr-separator.hr-dashed:after, .hr-separator.hr-dotted:after { display: none; }
.hr-separator.hr-dashed { border-top-style: dashed; }
.hr-separator.hr-dotted { border-top-style: dotted; }

.hr-separator.hr-fadeout                    { background: none; background-image: linear-gradient(to right, transparent, var(--hr-col-default), transparent); }
.hr-separator.hr-fadeout.hr-col-primary     { background: none; background-image: linear-gradient(to right, transparent, var(--col-primary), transparent); }
.hr-separator.hr-fadeout.hr-col-secondary   { background: none; background-image: linear-gradient(to right, transparent, var(--col-secondary), transparent); }
.hr-separator.hr-fadeout.hr-col-accent      { background: none; background-image: linear-gradient(to right, transparent, var(--col-accent), transparent); }
.hr-separator.hr-fadeout.hr-col-white       { background: none; background-image: linear-gradient(to right, transparent, #FFF, transparent); }
.hr-separator.hr-fadeout.hr-col-black       { background: none; background-image: linear-gradient(to right, transparent, #000, transparent); }

.hr-separator.hr-separated { position: relative; display: flex; justify-content: space-between; align-items: center; flex-wrap: nowrap; background: none; }
    .hr-separator.hr-separated:before, .hr-separator.hr-separated:after { display: block; }
.hr-separator.hr-separated span { display: flex; justify-content: center; align-items: center; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 40px; background: none; border: none; }
.hr-separator.hr-separated svg { display: block; object-fit: contain; object-position: center; }

.hr-separator.hr-skew-left, .hr-separator.hr-skew-right { /*width: 102%;*/ margin-left: -0.4%; }
.hr-separator.hr-skew-left { transform: rotate(-4deg); transform-origin: right; }
.hr-separator.hr-skew-right { transform: rotate(4deg); transform-origin: left; }

.hr-separator.hr-shadow { filter: drop-shadow(0px 3px 6px rgba(0,0,0, 0.30)); }
.hr-separator.hr-shadow.hr-skew-left, .hr-separator.hr-shadow.hr-skew-right { margin-top: 4px; }



/* Modul: Zeilenabstand (ab v1.3.3) */
.zeilenabstand.nodesktop { display: none; }



/* Modul: Interner Zurück-Link (ab v1.2) */
div.link-historyback { padding: 25px 0px; }
div.link-historyback.left { text-align: left; }
div.link-historyback.center { text-align: center; }
div.link-historyback.right { text-align: right; }




/* Modul: iFrame (externe Seite oder Kartenausschnitte - ab v2.0) */
.iframe-embed { max-width: 100%; height: 100%; }
	.iframe-embed:after { content: ''; clear: both; height: 0px; display: block; }
.iframe-embed.ie-left { margin: 0px auto 0px 0px; }
.iframe-embed.ie-center { margin: 0px auto; }
.iframe-embed.ie-right { margin: 0px 0px 0px auto; }

.iframe-embed iframe.ie-cardstyle-gray, .iframe-embed .ie-cardstyle-gray .leaflet-tile-pane { filter: grayscale(1) !important; }
.iframe-embed iframe.ie-cardstyle-dark, .iframe-embed .ie-cardstyle-dark .leaflet-tile-pane { filter: grayscale(1) invert(1) opacity(0.8) !important; }

/* Maps + Leaflet */
div.leaflet-container { height: 100%; }
div.leaflet-container * { color: #222 !important; }
div.leaflet-container .osm-infowindow { max-width: 320px; background: #FFF; border: 2px solid rgba(0,0,0,0.2); border-radius: 4px; padding: 8px 10px; margin-right: 55px; background-clip: paddingbox; box-shadow: 0 1px 4px -1px rgba(0,0,0,0.3); } 
	div.leaflet-container .osm-infowindow td { color: #5B5B5B; font-size: 12px; font-family: var(--font-text); } 
	div.leaflet-container .osm-infowindow td strong { color: #222; font-size: 14px; } 
div.leaflet-container img.leaflet-marker-icon { /*filter: grayscale(1);*/ }
div.leaflet-container .osm-tooltip { opacity: 1 !important; font-weight: bold; }
div.leaflet-container .marker-cluster { background: #BBB; outline: 1px solid rgba(255,255,255, 0.5); }
    div.leaflet-container .marker-cluster > div { background: var(--col-primary-opa); }
    div.leaflet-container .marker-cluster > div span { color: var(--col-primary-text) !important; font-weight: bold; }

@media only screen and (max-width: 600px) { div.leaflet-container .osm-infowindow .osm-iw-image { display: none; } }
@media only screen and (max-width: 350px) { div.leaflet-container .osm-infowindow .osm-iw-content { display: none; } }



/* Modul: Bildslider mit mBlock (ab v1.2.5) */
.slGalerie { position: relative; margin: 0px; overflow: hidden; 
	--slG-format1-1: 100%;
	--slG-format16-9: 56.25%;
	--slG-format4-3: 75%;
	--slG-format3-2: 66.66%;
	--slG-format8-5: 62.5%;
	
	--swiper-pagination-bullet-size: 11px;
}
.slGalerieSlides { transform: translate(0px); }
.slGalerie.slG-format-100perc, .slGalerie.slG-format-100perc .slGalerieSlides { height: 100% !important; }

.slGalerie .slG-slide { position: relative; padding-top: 0% !important; overflow: hidden; display: block; /*width: 100% !important; height: 100% !important;*/ }
	.slGalerie .slG-slide.slG-slidespreview { max-width: 80%; }
	.slGalerie .slG-slide:after { content: ''; padding-top: 50%; display: block; }
	
	.slGalerie.slG-format-1-1 .slG-slide:after 	{ padding-top: var(--slG-format1-1); }
	.slGalerie.slG-format-3-2 .slG-slide:after 	{ padding-top: var(--slG-format3-2); }
	.slGalerie.slG-format-4-3 .slG-slide:after 	{ padding-top: var(--slG-format4-3); }
	.slGalerie.slG-format-8-5 .slG-slide:after 	{ padding-top: var(--slG-format8-5); }
	.slGalerie.slG-format-16-9 .slG-slide:after	{ padding-top: var(--slG-format16-9); }
	
.slGalerie .slG-slide > div { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
.slGalerie .slG-slide a.slG-slidelink { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; z-index: 20; }

	
/* Dots */
.slGalerie .slG-dots { left: 50% !important; transform: translateX(-50%) !important; bottom: 10px !important; text-align: center; background: none !important; width: 100% !important; max-width: 500px; }
	.slGalerie .slG-dots span { background: #FFF; opacity: 0.35 !important; vertical-align: middle; transform: none !important; }
	.slGalerie .slG-dots span:hover, .slGalerie .slG-dots span.swiper-pagination-bullet-active { opacity: 1 !important; }
	
	.slGalerie.slG-dots-square .slG-dots span { border-radius: 0px; }
	.slGalerie.slG-dots-line .slG-dots span { border-radius: 0px; --swiper-pagination-bullet-width: 20px; --swiper-pagination-bullet-height: 3px; }
		.slGalerie.slG-dots-line .slG-dots span.swiper-pagination-bullet-active { --swiper-pagination-bullet-width: 50px; }

	/* Farben */
    .slGalerie.slG-dots-o .slG-dots span 			   { background: var(--col-text); }											/* Standard: außerhalb */
	
	.slGalerie.slG-dots-col-white 		.slG-dots span { background: #FFF; }
	.slGalerie.slG-dots-col-black 		.slG-dots span { background: #000; }
	.slGalerie.slG-dots-col-primary 	.slG-dots span { background: var(--col-primary); }
	.slGalerie.slG-dots-col-secondary 	.slG-dots span { background: var(--col-secondary); }
	.slGalerie.slG-dots-col-accent 		.slG-dots span { background: var(--col-accent); }

	/* Position */
	.slGalerie.slG-dots-lt .slG-dots, .slGalerie.slG-dots-lb .slG-dots, .slGalerie.slG-dots-ol .slG-dots { left: 0% !important; transform: translateX(10px) !important; text-align: left; }
	.slGalerie.slG-dots-rt .slG-dots, .slGalerie.slG-dots-rb .slG-dots, .slGalerie.slG-dots-or .slG-dots { left: 100% !important; transform: translateX( calc(-100% + -10px) ) !important; text-align: right; }
	.slGalerie.slG-dots-lt .slG-dots, .slGalerie.slG-dots-rt .slG-dots, .slGalerie.slG-dots-ct .slG-dots { top: 10px; bottom: auto !important; }
	.slGalerie.slG-dots-o .slG-dots { position: relative; bottom: auto !important; margin: 10px 0px 0px 0px; }
	
	
/* Pfeilnavigation */
.slGalerie .slG-nav { width: auto; height: auto; padding: 10px 17px; opacity: 0.75; transition: all 0.5s ease; }
	.slGalerie.slG-nav-defaultpos .slG-nav { padding: 10% 17px; margin: 0px; transform: translateY(-50%); }
	.slGalerie .slG-nav:hover { opacity: 1; }
		.slGalerie .slG-nav:hover svg polyline { stroke-width: 2px; }
	.slGalerie .slG-nav:after { content: ''; display: none; }
	.slGalerie .slG-prev { left: 0px; }
	.slGalerie .slG-next { right: 0px; }
.slGalerie .slG-nav svg { width: 19px; height: 33px; }
.slGalerie:is(.slG-nav-arr) .slG-nav svg { filter: drop-shadow(2px 1px 1px rgba(0, 0, 0, 0.5)); }
	
	/* Farben */
	.slGalerie					 						.slG-nav polyline 	{ stroke: #FFF; transition: all 0.5s ease; }/* Standard: Pfeil + Dreieck */				/* :not(.slG-nav-box) */
		.slGalerie.slG-nav-o:not(.slG-nav-box)			.slG-nav polyline 	{ stroke: #999; }							/* Standard: Pfeil + Dreieck außerhalb */
	.slGalerie.slG-nav-box .slG-nav 										{ background: rgba(255,255,255, 1); }		/* Standard: Box */
		.slGalerie.slG-nav-o.slG-nav-box .slG-nav 							{ background: rgba(153,153,153, 1); }		/* Standard: Box außerhalb */
	.slGalerie.slG-nav-tri 								.slG-nav polyline 	{ stroke: none !important; fill: #FFF; }	/* Standard: Dreieck */
		.slGalerie.slG-nav-o.slG-nav-tri 				.slG-nav polyline 	{ fill: #999; }								/* Standard: Dreieck außerhalb */
	
	.slGalerie.slG-nav-col-white 						.slG-nav polyline 	{ stroke: #FFF; }
	.slGalerie.slG-nav-col-white.slG-nav-tri 			.slG-nav polyline 	{ fill: #FFF; }
	.slGalerie.slG-nav-col-white.slG-nav-box 			.slG-nav 			{ background: #FFF; }
		.slGalerie.slG-nav-col-white.slG-nav-box 		.slG-nav polyline 	{ stroke: #000; }

	.slGalerie.slG-nav-col-black 						.slG-nav polyline 	{ stroke: #000; }
	.slGalerie.slG-nav-col-black.slG-nav-tri 			.slG-nav polyline 	{ fill: #000; }
	.slGalerie.slG-nav-col-black.slG-nav-box 			.slG-nav 			{ background: #000; }
		.slGalerie.slG-nav-col-black.slG-nav-box 		.slG-nav polyline 	{ stroke: #FFF; }
	
	.slGalerie.slG-nav-col-primary 						.slG-nav polyline 	{ stroke: var(--col-primary); }
	.slGalerie.slG-nav-col-primary.slG-nav-tri 			.slG-nav polyline 	{ fill: var(--col-primary); }
	.slGalerie.slG-nav-col-primary.slG-nav-box 			.slG-nav 			{ background: var(--col-primary); }
		.slGalerie.slG-nav-col-primary.slG-nav-box 		.slG-nav polyline 	{ stroke: #FFF; }
	
	.slGalerie.slG-nav-col-secondary 					.slG-nav polyline 	{ stroke: var(--col-secondary); }
	.slGalerie.slG-nav-col-secondary.slG-nav-tri 		.slG-nav polyline 	{ fill: var(--col-secondary); }
	.slGalerie.slG-nav-col-secondary.slG-nav-box 		.slG-nav 			{ background: var(--col-secondary); }
		.slGalerie.slG-nav-col-secondary.slG-nav-box 	.slG-nav polyline 	{ stroke: #FFF; }
	
	.slGalerie.slG-nav-col-accent 						.slG-nav polyline 	{ stroke: var(--col-accent); }
	.slGalerie.slG-nav-col-accent.slG-nav-tri 			.slG-nav polyline 	{ fill: var(--col-accent); }
	.slGalerie.slG-nav-col-accent.slG-nav-box 			.slG-nav 			{ background: var(--col-accent); }
		.slGalerie.slG-nav-col-accent.slG-nav-box 		.slG-nav polyline 	{ stroke: #FFF; }

	/* Position */
	.slGalerie.slG-nav-pos .slG-nav-wrapper { display: inline-flex; flex-direction: row-reverse; position: absolute; z-index: 9999; }
	.slGalerie.slG-nav-pos .slG-nav { position: static; margin: 0px 0.5px; }
	
	.slGalerie.slG-nav-lt .slG-nav-wrapper { top: 12px; left: 12px; }
	.slGalerie.slG-nav-ct .slG-nav-wrapper { top: 12px; left: 50%; transform: translateX(-50%); }
	.slGalerie.slG-nav-rt .slG-nav-wrapper { top: 12px; right: 12px; }
	.slGalerie.slG-nav-lb .slG-nav-wrapper { bottom: 12px; left: 12px; }
	.slGalerie.slG-nav-cb .slG-nav-wrapper { bottom: 12px; left: 50%; transform: translateX(-50%); }
	.slGalerie.slG-nav-rb .slG-nav-wrapper { bottom: 12px; right: 12px; }
	
	.slGalerie.slG-nav-o .slG-nav-wrapper { position: relative; bottom: auto; margin: 20px 0px 0px 0px; left: 50%; transform: translateX(-50%); }
	.slGalerie.slG-nav-ol .slG-nav-wrapper { left: 0%; transform: translateX(20px); }
	.slGalerie.slG-nav-or .slG-nav-wrapper { left: 100%; transform: translateX( calc(-100% + -20px) ); }
	
	
/* Bilder */	
.slGalerie .slG-image { z-index: 1; background: center center no-repeat; background-size: cover; }
	.slGalerie .slG-image picture { display: block; height: 100%; }
	.slGalerie .slG-image img { max-width: none !important; width: 100%; height: 100%; object-fit: cover; object-position: center; }
		.slGalerie .bgAlign-lt img { object-position: left top; }
		.slGalerie .bgAlign-rt img { object-position: right top; }
		.slGalerie .bgAlign-rb img { object-position: right bottom; }
		.slGalerie .bgAlign-lb img { object-position: left bottom; }
		.slGalerie .bgAlign-ct img { object-position: center top; }
		.slGalerie .bgAlign-cr img { object-position: right center; }
		.slGalerie .bgAlign-cb img { object-position: center bottom; }
		.slGalerie .bgAlign-cl img { object-position: left center; }
	
	.slGalerie .slG-ifx-zoom img { transition: transform 7s ease; transform-origin: bottom left; }
	.slGalerie .slG-ifx-zoom.slG-ifx-active img { transform: scale(1.2); transition-duration: 25s; }
	
	.slGalerie .slG-ifx-colorin picture { transition: filter 3s ease; filter: grayscale(1) brightness(1.2); }
	.slGalerie .slG-ifx-colorin.slG-ifx-active picture { filter: grayscale(0) brightness(1); transition-duration: 4.5s; }
	
	.slGalerie .slG-ifx-blurin picture { transition: filter 3s ease; filter: blur(10px); }
	.slGalerie .slG-ifx-blurin.slG-ifx-active picture { filter: blur(0); transition-duration: 4.5s; }
	
	.slGalerie .slG-ifx-colorin.slG-ifx-blurin picture { transition: filter 3s ease; filter: blur(10px) grayscale(1) brightness(1.2); }
	.slGalerie .slG-ifx-colorin.slG-ifx-blurin.slG-ifx-active picture { filter: blur(0) grayscale(0) brightness(1); transition-duration: 4.5s; }


/* Thumbnails */
.slGalerieThumbs { margin-top: 3px; padding-top: 5px; height: auto; transition: all 0.5s ease; }
.slGalerieThumbs .slGT-slide { width: 100px; height: 100%; margin-right: 6px; aspect-ratio: 4/3; opacity: 0.4; transition: all 0.5s ease; cursor: pointer; }
	.slGalerieThumbs .slGT-slide:hover, .slGalerieThumbs .slGT-slide.swiper-slide-thumb-active { opacity: 1; }
.slGalerieThumbs .slGT-image { height: 100%; }


/* Content */	
.slGalerie .slG-content { z-index: 5; display: flex; transition: all 0.5s ease; pointer-events: none;
	text-rendering: optimizeLegibility; font-variant-ligatures: common-ligatures; font-feature-settings: "liga", "kern"; font-kerning: normal;
	text-align: center; color: #FFF; letter-spacing: 0.1em; text-transform: uppercase; font-weight: 300; font-size: 1.143em; text-shadow: -1px 1px 0 rgb(0,0,0, 0.3), -1px 2px 2px rgb(0,0,0, 0.1);
}
	.slGalerie .slG-align-left { text-align: left; }
	.slGalerie .slG-align-right { text-align: right; }
    
.slGalerie .slG-content > div { position: relative; max-width: 800px; max-height: 100%; margin: 5% 10%; transition: all 0.5s ease; overflow: hidden; }
.slGalerie .slG-content span { position: relative; display: block; z-index: 5; }

.slGalerie .ca-cc { align-items: center; justify-content: center; }
.slGalerie .ca-lt { align-items: flex-start; justify-content: flex-start; }
.slGalerie .ca-rt { align-items: flex-start; justify-content: flex-end; }
.slGalerie .ca-rb { align-items: flex-end; justify-content: flex-end; }
.slGalerie .ca-lb { align-items: flex-end; justify-content: flex-start; }
.slGalerie .ca-ct { align-items: flex-start; justify-content: center; }
.slGalerie .ca-cr { align-items: center; justify-content: flex-end; }
.slGalerie .ca-cb { align-items: flex-end; justify-content: center; }
.slGalerie .ca-cl { align-items: center; justify-content: flex-start; }

	/* Animationen/Einblendungen */
	.slGalerie .slG-hasFX > div > span, .slGalerie .slG-hasFX > div:after { position: relative; opacity: 0; }
	
	.slGalerie .slG-fx-fade > div > span, .slGalerie .slG-fx-fade > div:after { -webkit-animation: slG-fx-fadeslide 0.75s 0s forwards cubic-bezier(.28,.83,.57,1.05); animation: slG-fx-fadeslide 0.75s 0s forwards cubic-bezier(.28,.83,.57,1.05); }	/* alle Elemente gleichzeitig einblenden */
	
	.slGalerie div[class*="slG-fx-fade-"] > div:after,
	.slGalerie .slG-fx-fade-up > div > span,
	.slGalerie .slG-fx-fade-down > div > span,
	.slGalerie .slG-fx-fade-left > div > span,
	.slGalerie .slG-fx-fade-right > div > span,
	.slGalerie .slG-fx-fade-scaleup > div > span,
	.slGalerie .slG-fx-fade-scaledown > div > span
		{ -webkit-animation: slG-fx-fadeslide 0.5s 0s forwards cubic-bezier(.28,.83,.57,1.05); animation: slG-fx-fadeslide 0.5s 0s forwards cubic-bezier(.28,.83,.57,1.05); }
			
		.slGalerie .slG-fx-fade-up > div > span { transform: translate3d(0, 100px, 0); }
		.slGalerie .slG-fx-fade-down > div > span { transform: translate3d(0, -100px, 0); }
		.slGalerie .slG-fx-fade-left > div > span { transform: translate3d(100px, 0, 0); }
		.slGalerie .slG-fx-fade-right > div > span { transform: translate3d(-100px, 0, 0); }
		.slGalerie .slG-fx-fade-scaleup > div > span { transform: scale(0); animation-name: slG-fx-fadescale; }
		.slGalerie .slG-fx-fade-scaledown > div > span { transform: scale(2); animation-name: slG-fx-fadescale; }
		
		.slGalerie div[class*="slG-fx-fade-"] span:nth-child(1) { }
		.slGalerie div[class*="slG-fx-fade-"] span:nth-child(2)	{ animation-delay: 0.2s; }
		.slGalerie div[class*="slG-fx-fade-"] span:nth-child(3) { animation-delay: 0.4s; }
		.slGalerie div[class*="slG-fx-fade-"] span:nth-child(4)	{ animation-delay: 0.8s; }
		
		@-webkit-keyframes slG-fx-fadeslide {	0% {}	100% { opacity: 1; transform: translate3d(0, 0, 0); }	}
		@keyframes slG-fx-fadeslide {			0% {}	100% { opacity: 1; transform: translate3d(0, 0, 0); }	}
		
		@-webkit-keyframes slG-fx-fadescale {	0% {}	100% { opacity: 1; transform: scale(1); }	}
		@keyframes slG-fx-fadescale {			0% {}	100% { opacity: 1; transform: scale(1); }	}

	/* Texttrenner */
	.slGalerie .slG-textseparator { display: none !important; justify-content: space-between; align-items: center; color: #FFF; margin: 19px auto 20px; width: 100%; max-width: 200px; }
		.slGalerie .slG-textseparator > span:before { content: '*'; display: block; position: relative; top: 3px; }
		.slGalerie .slG-textseparator:before, .slGalerie .slG-textseparator:after { content:''; display: block; width: 40%; border-top: 2px solid #FFF; }
	.slGalerie .slG-align-left .slG-textseparator { margin-left: 0px; }
	.slGalerie .slG-align-right .slG-textseparator { margin-right: 0px; }
	.slGalerie .slG-text1 + .slG-textseparator { display: flex !important; }
	
	/* Texte */
    .slGalerie .slG-text1, .slGalerie .slG-text2 { font-family: var(--font-header); font-weight: 600; text-transform: none; color: var(--col-primary); }
	.slGalerie .slG-text1 { font-size: 4vw; font-size: clamp(18px, 4vw, 3.5em); line-height: 1.15em; }
	.slGalerie .slG-text2 { font-family: var(--font-accent); font-weight: normal; font-size: 2vw; font-size: clamp(14px, 2vw, 1.5em); line-height: 1.3; }
		.slGalerie .slG-text1 + .slG-text2 { margin-top: 15px; }
		
		/*
		.slGalerie.slG-viewslides-2 .slG-text1 { font-size: clamp(18px, 4vw, 3.0em); }
		.slGalerie.slG-viewslides-2 .slG-text2 { font-size: clamp(14px, 2vw, 1.35em); }
		*/

		.slGalerie.slG-viewslides-3 .slG-text1 { font-size: clamp(18px, 4vw, 2.5em); }
		.slGalerie.slG-viewslides-3 .slG-text2 { font-size: clamp(14px, 2vw, 1.3em); }
		
	.slGalerie .slG-link { text-shadow: none; margin-bottom: 6px; }
	.slGalerie .slG-link a { font-size: clamp(10px, 1.2vw, 15px); margin: 0px !important; pointer-events: all; /*text-transform: none; font-weight: bold; border-radius: 5px; background: var(--col-accent-opa); color: #FFF;*/ }
		.slGalerie .slG-link a:hover { /*background: var(--col-accent); color: #FFF;*/ }
		.slGalerie .slG-text1 + .slG-link, .slGalerie .slG-text2 + .slG-link { margin-top: 35px; }

		
	.slGalerie .slG-content.slG-boxed > div { padding: 13px 20px 12px; border-radius: 10px; overflow: hidden; }
	.slGalerie .slG-content.slG-boxed > div:after { content:''; position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; z-index: 1; background: rgba(0,0,0, 0.33); }
    /*.slGalerie .slG-boxed .slG-text1 + .slG-link, .slGalerie .slG-boxed .slG-text2 + .slG-link { margin: 0px; position: absolute; right: 40px; bottom: 40px; }*/
		
		/* Farb-Themes */
		.slGalerie .slG-boxed.slG-boxed-col-white > div:after															{ background: rgba(255,255,255, 0.5); }
		.slGalerie .slG-boxed.slG-boxed-col-black > div:after															{ background: rgba(0,0,0, 0.5); }
		.slGalerie .slG-boxed.slG-boxed-col-primary > div:after															{ background: var(--col-primary-opa); }
		.slGalerie .slG-boxed.slG-boxed-col-secondary > div:after														{ background: var(--col-secondary-opa); }
		.slGalerie .slG-boxed.slG-boxed-col-accent > div:after															{ background: var(--col-accent-opa); }
		
		.slGalerie .slG-col-white span:not(.slG-link) 																	{ color: #FFF; }
		.slGalerie .slG-col-white .slG-link a 																			{ background: rgba(255,255,255, 0.75); color: #000; }
			.slGalerie .slG-col-white .slG-link a:hover																	{ background: rgba(255,255,255, 1); }
		.slGalerie .slG-col-white .slG-textseparator:before, .slGalerie .slG-col-white .slG-textseparator:after 		{ border-color: #FFF; }

		.slGalerie .slG-col-black span:not(.slG-link) 																	{ color: #000; }
		.slGalerie .slG-col-black .slG-link a 																			{ background: rgba(65,65,65, 0.75); color: #EEE; }
			.slGalerie .slG-col-black .slG-link a:hover																	{ background: rgba(65,65,65, 1); }
		.slGalerie .slG-col-black .slG-textseparator:before, .slGalerie .slG-col-black .slG-textseparator:after 		{ border-color: rgba(65,65,65, 1); }

		.slGalerie .slG-col-primary span:not(.slG-link) 																{ color: var(--col-primary); }
		.slGalerie .slG-col-primary .slG-link a 																		{ background: var(--col-primary-opa); color: #EEE; }
			.slGalerie .slG-col-primary .slG-link a:hover																{ background: var(--col-primary); }
		.slGalerie .slG-col-primary .slG-textseparator:before, .slGalerie .slG-col-primary .slG-textseparator:after 	{ border-color: var(--col-primary-opa); }

		.slGalerie .slG-col-secondary span:not(.slG-link) 																{ color: var(--col-secondary); }
		.slGalerie .slG-col-secondary .slG-link a 																		{ background: var(--col-secondary-opa); color: #EEE; }
			.slGalerie .slG-col-secondary .slG-link a:hover																{ background: var(--col-secondary); }
		.slGalerie .slG-col-secondary .slG-textseparator:before, .slGalerie .slG-col-secondary .slG-textseparator:after { border-color: var(--col-secondary-opa); }

		.slGalerie .slG-col-accent span:not(.slG-link) 																	{ color: var(--col-accent); }
		.slGalerie .slG-col-accent .slG-link a 																			{ background: var(--col-accent-opa); color: #EEE; }
			.slGalerie .slG-col-accent .slG-link a:hover																{ background: var(--col-accent); }
		.slGalerie .slG-col-accent .slG-textseparator:before, .slGalerie .slG-col-accent .slG-textseparator:after 		{ border-color: var(--col-accent-opa); }
	
		/* nachträglich die Texte anpassen, wenn Sliderhöhe zu gering */
		.slGalerie [data-initheight="300"] .slG-text1 { font-size: 3vw; font-size: clamp(18px, 3vw, 2.0em); }
		.slGalerie [data-initheight="300"] .slG-text2 { font-size: 1.5vw; font-size: clamp(14px, 1.5vw, 1.25em); }
		.slGalerie [data-initheight="300"] .slG-link { display: none; }

    /* Projektspezisifische Anpassungen */
		


/* Downloadliste (basiert auf tabelle-formatiert - ab v2.0) */
.downloadList table td.dl-item-title { width: 85%; }



/* Modul: Infobox (Spalte) */
.infobox { position: relative; padding: 8px; background-color: #FFF; font-size: 14px; margin: 0px 0px 20px; }
.infobox img { display: block; margin: 0px auto; max-width: 100%; height: auto; }
.infobox p { margin-bottom: 0px; }
.infobox p.hasimg { margin-top: 10px; }
.infobox a { width: 100%; height: 100%; position: absolute; top: 0px; left: 0px; }
.infobox .title { display: block; background-color: #245C9A; font-size: 14px; color: #FFF; margin: -5px -5px 6px; padding: 3px 6px; }


/* Modul: 3er-Infoblock */
.three-infoblocks { display: -ms-grid; display: grid; -ms-grid-columns: 1fr 1fr 1fr; grid-template-columns: 1fr 1fr 1fr; column-gap: 50px; grid-column-gap: 50px; grid-auto-rows: 1fr; -ms-grid-column-align: center; justify-items: center; -ms-flex-align: center; align-items: center; margin: 0px -150px; /*height: 415px;*/ height: auto; }
	.tib-2boxes { -ms-grid-columns: 1fr 1fr; grid-template-columns: 1fr 1fr; }
	.tib-1boxes { -ms-grid-columns: 1fr; grid-template-columns: 1fr; }
.tib-box { position: relative; width: 100%; /*height: 100%;*/ height: 0px; padding: 78.31% 0px 0px 0px; margin: 0px; background: #EEE; text-align: left; overflow: hidden; }
	.tib-2boxes .tib-box { padding-top: 59%; }
	.tib-1boxes .tib-box { padding-top: 35%; }
.tib-inner { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
	.tib-box .tib-cnt { position: absolute; left: 0px; bottom: 30px; z-index: 10; width: 100%; padding: 10px 50px; overflow: hidden; background-color: rgba(255,255,255, 0.85); font-family: 'Kanit', sans-serif; font-weight: 200; font-size: 25px; color: #3B3F3F; text-transform: uppercase; transition: all 0.5s; }
		.tib-box:hover .tib-cnt { background-color: #CC0617; color: #FFF; }
	.tib-box .tib-img { height: 100%; background-size: cover; background-position: center center; transition: all 0.5s ease; }
		.tib-box .tib-img img { display: none; }
		.tib-box:hover .tib-img { transform: scale(1.05); }
	.tib-box a {}
		.tib-box a span { display: none; }
	.tib-box span { display: block; line-height: 1; }
	.tib-box .tib-line1 { font-weight: bold; font-size: 30px; margin-bottom: 3px; color: #CC0617; transition: all 0.5s; }
		.tib-box:hover .tib-line1 { color: #FFF; }
	.tib-box .tib-line2 {}
	.tib-box .tib-linkicon { position: absolute; top: 50%; right: 0px; width: 24px; height: 48px; margin: -24px 0px 0px 0px; overflow: hidden; font-size: 21px; color: #CC0617; }
		.tib-box .tib-linkicon i { position: absolute; z-index: 5; top: 50%; left: 3px; margin-top: -16px; }
		.tib-box .tib-linkicon:after { content: ''; position: absolute; top: 0px; left: 0px; z-index: 1; width: 0px; height: 0px; -webkit-transform:rotate(360deg); border-style: solid; border-width: 24px 24px 24px 0; border-color: transparent #ffffff transparent transparent; }
	.tib-box a { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
.tib-left { text-align: left; }
.tib-center { text-align: center; }
.tib-right { text-align: right; }

section#opener .three-infoblocks { margin: 0px; column-gap: 10px; grid-column-gap: 10px; /*height: 700px;*/ }
section#opener .tib-box { padding-top: 125%; }
	section#opener .tib-2boxes .tib-box { padding-top: 82%; }
	section#opener .tib-1boxes .tib-box { padding-top: 41%; }
section#opener .tib-box .tib-cnt { left: 0px; bottom: 100px; width: 90%; padding: 17px 30px; }
	


/* Modul: Partnerslider (ab v1.0) */
.partnerslider {}
.partnerslider .pasl-wrapper {}
.partnerslider .pasl-item { display: flex; width: auto; justify-content: center; align-items: center; }
.partnerslider img { width: 100%; max-width: 100%; max-height: 100%; height: auto; }
	.partnerslider .pasl-item:not(.isSVG) img { width: auto; height: auto; }
	.partnerslider.si-greytone img { filter: grayscale(100%); transition: all 0.3s ease; }
	.partnerslider.si-greytone .pasl-item:hover img { filter: grayscale(0%); }
.partnerslider a { display: block; position: absolute; top: 0px; left: 0px; right: 0px; bottom: 0px; }



/* Modul: RSS-Feed / Feeds (ab v1.2.3) */
.feedlist { margin: 0px; padding: 0px; }
.feedlist .fl-item { display: flex; flex-direction: row; flex-wrap: nowrap; margin: 65px 0px 0px 0px; padding: 0px; transition: all 0.3s ease; }
	.feedlist .fl-item.first { border: none !important; margin-top: 0px !important; }
	.feedlist .fl-item.minmargin { margin-top: 35px; }
	.feedlist .fl-item.minmargin.hasnoimage.hasnotext { margin-top: 25px; }

.feedlist .fl-image { position: relative; margin: 0px; margin-right: 15px; /*aspect-ratio: 1/1;*/ }
	.feedlist .fl-image figure { /*position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; aspect-ratio: 1/1;*/ overflow: hidden; }
	.feedlist .fl-image img { width: 100%; height: auto; }
	.feedlist .fl-image span { display: block; background: rgba(150,150,150, 0.1); aspect-ratio: 3/2; }			/* Platzhalter-Bild */
    .feedlist .fl-image a { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; margin: 0px; padding: 0px; z-index: 10; }
.feedlist .fl-image.ratio20-80 { width: 20%; }
.feedlist .fl-image.ratio25-75 { width: 25%; }
.feedlist .fl-image.ratio30-70 { width: 30%; }
.feedlist .fl-image.ratio35-65 { width: 35%; }
.feedlist .fl-image.ratio40-60 { width: 40%; }
.feedlist .fl-image.ratio45-55 { width: 45%; }
.feedlist .fl-image.ratio50-50 { width: 50%; }

.feedlist .fl-content { width: 100%; margin: 0px; padding: 0px; }
	.feedlist .fl-item.hasimage .fl-content { margin-left: 15px; }
.feedlist .fl-content.ratio20-80 { width: 80%; }
.feedlist .fl-content.ratio25-75 { width: 75%; }
.feedlist .fl-content.ratio30-70 { width: 70%; }
.feedlist .fl-content.ratio35-65 { width: 65%; }
.feedlist .fl-content.ratio40-60 { width: 60%; }
.feedlist .fl-content.ratio45-55 { width: 55%; }
.feedlist .fl-content.ratio50-50 { width: 50%; }

.feedlist .fl-headline a { color: var(--col-text); text-decoration: none; }
.feedlist .fl-headline { font-family: var(--font-header); font-size: var(--fontsize-title); font-weight: bold; text-transform: uppercase; text-decoration: none; line-height: 1.25; }
.feedlist .fl-title { word-break: break-word; text-overflow: ellipsis; }
.feedlist .fl-date { margin: 4px 0px 0px; font-size: 0.85em; color: #999; }
	.feedlist .fl-item.minmargin.hasnoimage .fl-date { margin-top: 2px; }
    .feedlist .fl-date i { display: none; margin-right: 5px; }
.feedlist .fl-text { margin-top: 15px; }
	.feedlist .fl-item.minmargin.hasnoimage .fl-text { margin-top: 7px; }
.feedlist .fl-link { margin-top: 20px; }
	.feedlist .fl-item.minmargin.hasnoimage .fl-link { margin-top: 15px; }
	.feedlist .fl-item.minmargin.hasnoimage.hasnotext .fl-link { margin-top: 12px; }
	.feedlist .fl-link a { margin: 0px; }

/* Design: Raster */
.feedlist.feed-squares { display: flex; flex-wrap: wrap; gap: 5px 5px; justify-content: center; }
.feedlist.feed-squares .fl-item { flex: 0 1 180px; display: block; position: relative; vertical-align: top; margin: 0px 0px; cursor: pointer; }
	.feedlist.feed-squares .fl-item.bigimages { flex: 0 1 300px; }
.feedlist.feed-squares .fl-image, .feedlist.feed-squares .fl-title { position: relative; width: 100%; margin: 0px; overflow: hidden; }
	.feedlist.feed-squares .fl-image { padding-top: 100%; background: rgba(150,150,150, 0.1); }
	.feedlist.feed-squares .fl-image span { aspect-ratio: auto; }
	.feedlist.feed-squares .fl-title { position: absolute; top: 0; left: 0; z-index: 5; display: flex; justify-items: center; align-items: center; height: 100%; padding: 15px; font-size: 13px; background: var(--col-primary-opa); text-overflow: ellipsis; line-height: 1.2; opacity: 0; transition: all 0.4s ease; }
        .feedlist.feed-squares .fl-title, .feedlist.feed-squares .fl-title span { color: var(--col-primary-text) !important; }
		.feedlist.feed-squares .fl-item.bigimages .fl-title { padding: 25px; }
		.feedlist.feed-squares .fl-item:hover .fl-title { opacity: 1; }
			.feedlist.feed-squares .fl-item.hasnoimage .fl-title { opacity: 1; }
	.feedlist.feed-squares .hasnotitle .fl-title { background: url(thumb-plus.png) no-repeat center center var(--col-primary-opa); }
	.feedlist.feed-squares .hasnotitle .fl-title span { display: none; }
.feedlist.feed-squares .fl-image img, .feedlist.feed-squares a { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; margin: 0px; padding: 0px; object-fit: cover; object-position: center; }
.feedlist.feed-squares a { z-index: 10; }

/* Farb-Themes */
.bc-light .feedlist .fl-image span { background: rgba(255,255,255, 0.15); }
.bc-light .feedlist .fl-headline a, .bc-light .feedlist .fl-date { color: var(--col-light); }



/* Modul: Schnellauswahl Angebote/Leistungen (ab v1.1) */
.quickoffers { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch; background: var(--col-primary); padding: 40px 0px; color: var(--col-primary-text); }
.quickoffers .qof-item { position: relative; flex: 1 1 25%; text-align: center; min-width: 300px; border-left: 1px solid rgba(255,255,255, 0.33); }
    .quickoffers .qof-item:nth-child(1) { border-left: none; }
    .quickoffers .qof-item:nth-child(1), .quickoffers .qof-item:nth-child(2) { border-top: none; }
    .quickoffers.qof-count3 { flex-basis: 33.33%; }
    .quickoffers.qof-count3 { flex-basis: 50%; }
    .quickoffers.qof-count1 { flex-basis: 100%; border: none !important; }  
.quickoffers .qof-item-inner { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; padding: 20px 50px; }

.quickoffers span { display: block; }
.quickoffers .qof-image { width: 100%; height: 60px; margin: 0px 0px 20px; transition: all 0.3s ease; }
    .quickoffers .qof-image img { width: auto; height: auto; max-height: 60px; max-width: 100%; }
	.quickoffers .qof-item:hover .qof-image { opacity: 0.8; }
	
.quickoffers .qof-content { font-size: 15px; font-weight: normal; max-width: 270px; margin: 0px auto; transition: all 0.3s ease; }
	.quickoffers .qof-item:hover .qof-content { opacity: 0.8; }
.quickoffers .qof-title { font-family: var(--font-header); font-size: 22px; font-weight: bold; text-transform: uppercase; line-height: 1.2; color: var(--col-primary-text) !important; }
.quickoffers .qof-text { color: #E0C7DE; margin: 15px 0px 0px; transition: all 0.3s ease; }
    .quickoffers .qof-item:hover .qof-text { color: var(--col-primary-text); }
.quickoffers .qof-image {}
.quickoffers a { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
.quickoffers a.qof-linkbutton { position: relative; top: auto; left: auto; width: auto; height: auto; border: 2px solid #FFF; border-radius: 0px; margin: 25px 0px !important; padding: 15px 25px; display: inline-flex; align-items: center; text-align: left; }
    .quickoffers a.qof-linkbutton i { padding: 0px 0px 0px 10px; font-size: 13px; }
    .quickoffers a.qof-linkbutton:hover { background: var(--col-accent); color: var(--col-primary); border: 2px solid var(--col-primary-opa); }

/* Farb-Themes */
.bc-dark .quickoffers a.qof-linkbutton i { color: var(--col-primary-text); }
.bc-dark .quickoffers a.qof-linkbutton:hover i { color: var(--col-primary); }

.bc-light .quickoffers a.qof-linkbutton i { color: var(--col-accent-text); }
.bc-light .quickoffers a.qof-linkbutton:hover i { color: var(--col-primary); }



/* Modul: Fertigkeiten-Zähler (Skills - ab v1.0.1) */
.progresscounter { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 30px 0px; padding: 20px;
	--prc-col-primary: 			var(--col-primary);
	--prc-col-secondary: 		var(--col-secondary);
	--prc-col-accent: 			var(--col-accent);
	--prc-col-white: 			#FFF;
	--prc-col-black: 			#000;
	
	--prc-defaultCol-content: 	var(--col-text);
	--prc-defaultCol-fill: 		var(--col-primary);
	--prc-defaultCol-bg: 		#E7E7E7;
	
}
.progresscounter .prc-item { position: relative; text-align: center; padding: 0px; max-width: 100%; overflow: hidden; }
.progresscounter .prc-wrapper { position: relative; display: inline-block; margin: 0px; }
    .progresscounter canvas { max-width: 100%; max-height: 100%; height: auto !important; }
	.progresscounter strong { position: absolute; top: 50%; left: 50%; display: block; width: auto; min-width: 100%; transform: translate(-50%, -50%); font-size: clamp(24px, 4vw, 2.1rem); line-height: 1.05; font-family: 'Poppins', sans-serif; word-break: normal; overflow-wrap: normal; white-space: nowrap; overflow: hidden; }
    .progresscounter span { display: block; width: 100%; margin: 10px 0px 0px; text-align: center; font-weight: bold; font-size: 1.0em; line-height: 1.2; word-wrap: break-word; overflow-wrap: break-word; word-break: break-all; overflow: hidden; }

.progresscounter.prc-gap-xs { column-gap: var(--gap-xs); }
.progresscounter.prc-gap-sm { column-gap: var(--gap-sm); }
.progresscounter.prc-gap-md { column-gap: var(--gap-md); }
.progresscounter.prc-gap-lg { column-gap: var(--gap-lg); }
.progresscounter.prc-gap-xl { column-gap: var(--gap-xl); }
	
.progresscounter .prc-item.prc-col-primary strong, .progresscounter .prc-item.prc-title-col-primary .prc-title		{ color: var(--prc-col-primary) !important; }
.progresscounter .prc-item.prc-col-secondary strong, .progresscounter .prc-item.prc-title-col-secondary .prc-title 	{ color: var(--prc-col-secondary) !important; }
.progresscounter .prc-item.prc-col-accent strong, .progresscounter .prc-item.prc-title-col-accent .prc-title 		{ color: var(--prc-col-accent) !important; }
.progresscounter .prc-item.prc-col-white strong, .progresscounter .prc-item.prc-title-col-white .prc-title 			{ color: var(--prc-col-white) !important; }
.progresscounter .prc-item.prc-col-black strong, .progresscounter .prc-item.prc-title-col-black .prc-title 			{ color: var(--prc-col-black) !important; }

.progresscounter .prc-item.prc-shadow-col-white strong, .progresscounter .prc-item.prc-shadow-title-col-white .prc-title	{ text-shadow: 1px 1px 0 #FFF !important; }
.progresscounter .prc-item.prc-shadow-col-black strong, .progresscounter .prc-item.prc-shadow-title-col-black .prc-title	{ text-shadow: 1px 1px 0 #000 !important; }

/* Designs */
/* Kreise */
.progresscounter.progresscounter-circles canvas { display: block; }

/* Zahlen */
.progresscounter.progresscounter-numbers .prc-wrapper { height: auto; }
.progresscounter.progresscounter-numbers canvas { display: none; }
.progresscounter.progresscounter-numbers strong { position: static; transform: none; font-size: clamp(24px, 4vw, 2.25rem); color: var(--col-primary); }
.progresscounter.progresscounter-numbers span { margin-top: 7px; }

/* Boxes */
/* Boxes 1 */
.progresscounter[class*="progresscounter-boxes"] {}
.progresscounter[class*="progresscounter-boxes"] .prc-item { padding: 18px 20px; }
	.progresscounter[class*="progresscounter-boxes"] .prc-item.prc-rounded 			{ border-radius: 5px; }
	.progresscounter[class*="progresscounter-boxes"] .prc-item:not(.prc-nobg) 		{ background: #333; color: #FFF; }				/* Standard-BG */
	.progresscounter[class*="progresscounter-boxes"] .prc-item.prc-bg-col-primary 	{ background: var(--prc-col-primary); }
	.progresscounter[class*="progresscounter-boxes"] .prc-item.prc-bg-col-secondary	{ background: var(--prc-col-secondary); }
	.progresscounter[class*="progresscounter-boxes"] .prc-item.prc-bg-col-accent 	{ background: var(--prc-col-accent); }
	.progresscounter[class*="progresscounter-boxes"] .prc-item.prc-bg-col-white 	{ background: var(--prc-col-white); }
	.progresscounter[class*="progresscounter-boxes"] .prc-item.prc-bg-col-black 	{ background: var(--prc-col-black); }
.progresscounter[class*="progresscounter-boxes"] .prc-wrapper { height: auto; }
.progresscounter[class*="progresscounter-boxes"] canvas { display: none !important; }
.progresscounter[class*="progresscounter-boxes"] strong { position: static; transform: none; font-size: clamp(24px, 3vw, 2.15rem); text-shadow: none; }
.progresscounter[class*="progresscounter-boxes"] span { margin-top: 4px; opacity: 0.85; text-transform: none; font-weight: normal; font-size: 0.95em; font-family: 'Poppins', sans-serif; }
.progresscounter[class*="progresscounter-boxes"] .prc-image { display: flex; justify-content: center; align-items: center; width: 100%; height: 70px; margin: 0px 0px 10px; text-align: center; }
	.progresscounter[class*="progresscounter-boxes"] .prc-image img { width: auto; height: auto; max-height: 65px; max-width: 100%; }
.progresscounter[class*="progresscounter-boxes"] .prc-content { overflow: hidden; }

/* Boxes 2 */
.progresscounter.progresscounter-boxes2 .prc-wrapper { display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap; width: 100%; gap: 20px; }
	.progresscounter.progresscounter-boxes2 .prc-wrapper > * { flex: 1 1; text-align: left; }
	.progresscounter.progresscounter-boxes2 .prc-item[data-itemsize^="1"] .prc-wrapper > * { flex-basis: 100% !important; max-width: none; }
	.progresscounter.progresscounter-boxes2 .prc-item[data-itemsize^="1"] .prc-wrapper > * > * { text-align: center; }
.progresscounter.progresscounter-boxes2 span { text-align: left; }
.progresscounter.progresscounter-boxes2 .prc-image { flex: 1 0 25%; height: auto; align-items: flex-start; margin: 0px; padding-top: 2px; max-width: 90px; }
.progresscounter.progresscounter-boxes2 .prc-image img { max-height: none; }

/* Balken */
.progresscounter.progresscounter-lines { display: block; }
.progresscounter.progresscounter-lines .prc-wrapper { width: 100%; height: auto; }
.progresscounter.progresscounter-lines .prc-item { overflow: visible; }
.progresscounter.progresscounter-lines canvas, .progresscounter.progresscounter-lines .prc-wrapper > strong { display: none; }
	.progresscounter.progresscounter-lines .prc-nocontent strong { display: none !important; }
.progresscounter.progresscounter-lines span { text-align: left; padding: 0px 0px 2px 0px; }
	.progresscounter.progresscounter-lines .prc-rounded span { padding-left: 5px; }
.progresscounter.progresscounter-lines .prc-line { position: relative; color: var(--col-primary-text); }
.progresscounter.progresscounter-lines .prc-line-progress { position: absolute; top: 0px; left: 0px; height: 100%; width: 0px; z-index: 1; }
	.progresscounter.progresscounter-lines .prc-rounded .prc-line, .progresscounter.progresscounter-lines .prc-rounded .prc-line-progress { border-radius: 10px; }
.progresscounter.progresscounter-lines .prc-line strong, 
.progresscounter.progresscounter-lines .prc-line span 
    { display: none; position: absolute; top: 50%; left: 0%; right: 0%; z-index: 10; transform: translateY(-50%); width: auto; text-align: left; font-size: 0.9em; padding: 1px 10px; margin: 0px; line-height: 1; }
.progresscounter.progresscounter-lines .prc-line-progress span { display: none !important; line-height: normal; }
.progresscounter.progresscounter-lines .prc-line strong { text-align: right; }

.progresscounter.progresscounter-lines .prc-item.prc-titleinline { margin-bottom: 15px; }
	.progresscounter.progresscounter-lines .prc-item.prc-titleinline:last-child { margin-bottom: 0px; }
.progresscounter.progresscounter-lines .prc-titleinline .prc-wrapper > .prc-title { display: none !important; }
.progresscounter.progresscounter-lines .prc-titleinline .prc-line .prc-title { display: block !important; padding-left: 10px; }

.progresscounter.progresscounter-lines .prc-contentoutline:not(.prc-nocontent) .prc-line strong { top: -8%; transform: translateY(-100%); color: var(--col-text); }
.progresscounter.progresscounter-lines .prc-item.prc-titleinline.prc-contentoutline:not(.prc-nocontent) { margin-top: 20px; }

@media only screen and (max-width: 400px) { 
	.progresscounter .prc-wrapper { height: auto !important; } 
	
	/* Boxes 2 */
	.progresscounter.progresscounter-boxes2 .prc-image { max-width: none; }
	.progresscounter.progresscounter-boxes2 .prc-image img { max-height: 65px; }
	.progresscounter.progresscounter-boxes2 .prc-item .prc-wrapper > * { flex-basis: 100% !important; max-width: none; }
	.progresscounter.progresscounter-boxes2 .prc-item .prc-wrapper > * > * { text-align: center; }
	
	/* Balken */
	.progresscounter.progresscounter-lines .prc-contentoutline:not(.prc-nocontent) .prc-line strong { top: 50%; transform: translateY(-50%); left: 5px; right: auto; text-align: left; padding: 1px 5px; background: rgba(255,255,255, 0.85); color: #666 !important; border-radius: 2px; width: auto; min-width: 0px; }	
	.progresscounter.progresscounter-lines .prc-item.prc-titleinline.prc-contentoutline:not(.prc-nocontent) { margin: 0px; }
	.progresscounter.progresscounter-lines .prc-item.prc-titleinline.prc-contentoutline:not(.prc-nocontent) .prc-wrapper > .prc-title { display: block !important; }
	.progresscounter.progresscounter-lines .prc-item.prc-titleinline.prc-contentoutline:not(.prc-nocontent) .prc-line .prc-title { display: none !important; }
}




/* Gridblock Zusatzeinstellungen --> NEU: 15.04.2025 */
.gridblock { /*margin: 0px;*/ padding: 0px; 
	--GBcolumns: 1;
	--GBgap: 0px;
}
.gridtemplate-2col { --GBcolumns: 2; }
.gridtemplate-3col { --GBcolumns: 3; }
.gridtemplate-4col { --GBcolumns: 4; }
.gridtemplate-5col { --GBcolumns: 5; }
.gridtemplate-6col { --GBcolumns: 6; }
	
.gridblock, .gridblock .tmpl, .gridblock .row, .gridblock .col { box-sizing: border-box; position: relative; background-repeat: no-repeat; --padding-divisor: 1; }
.gridblock .tmpl { z-index: 5; }
.gridblock .row { display: flex; flex-wrap: wrap; margin: 0px; z-index: 5; }
.gridblock .col { display: flex; flex-grow: 1; margin: 0px auto; width: calc((100% / var(--GBcolumns)) - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }
	.gridblock .col.wAuto { width: auto !important; }
	.gridblock .col.wFull { width: 100% !important; }

	.gridtemplate-80-20 .col, 
	.gridtemplate-20-80 .col 
		{ width: calc(20% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }
	.gridtemplate-80-20 .col:nth-child(1), 
	.gridtemplate-20-80 .col:nth-child(2) 
		{ width: calc(80% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }
	
	.gridtemplate-70-30 .col, 
	.gridtemplate-30-70 .col 
		{ width: calc(30% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }
	.gridtemplate-70-30 .col:nth-child(1), 
	.gridtemplate-30-70 .col:nth-child(2) 
		{ width: calc(70% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }

	.gridtemplate-67-33 .col, 
	.gridtemplate-33-67 .col 
		{ width: calc((100% / 3) - var(--GBgap) + (var(--GBgap) / 3)); }
	.gridtemplate-67-33 .col:nth-child(1), 
	.gridtemplate-33-67 .col:nth-child(2) 
		{ width: calc( (((100% / 3) - var(--GBgap) + (var(--GBgap) / 3)) * 2) + (var(--GBgap)) ); }
	
	.gridtemplate-60-40 .col, 
	.gridtemplate-40-60 .col 
		{ width: calc(40% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }
	.gridtemplate-60-40 .col:nth-child(1), 
	.gridtemplate-40-60 .col:nth-child(2) 
		{ width: calc(60% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }
	
	.gridtemplate-25-50-25 .col,
	.gridtemplate-50-25-25 .col,
	.gridtemplate-25-25-50 .col,
	.gridtemplate-75-25 .col,
	.gridtemplate-25-75 .col
		{ width: calc((100% / 4) - var(--GBgap) + (var(--GBgap) / 4)); }
	.gridtemplate-25-50-25 .col:nth-child(2), 
	.gridtemplate-50-25-25 .col:nth-child(1), 
	.gridtemplate-25-25-50 .col:nth-child(3) 
		{ width: calc( (((100% / 4) - var(--GBgap) + (var(--GBgap) / 4)) * 2) + (var(--GBgap)) ); }
	.gridtemplate-75-25 .col:nth-child(1), 
	.gridtemplate-25-75 .col:nth-child(2) 
		{ width: calc( (((100% / 4) - var(--GBgap) + (var(--GBgap) / 4)) * 3) + (var(--GBgap) * 2) ); }
	
	
	
	.gridtemplate-16-67-16 .col, 
	.gridtemplate-67-16-16 .col, 
	.gridtemplate-16-16-67 .col 
		{ width: calc(16.5% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }
	.gridtemplate-16-67-16 .col:nth-child(2), 
	.gridtemplate-67-16-16 .col:nth-child(1), 
	.gridtemplate-16-16-67 .col:nth-child(3) 
		{ width: calc(67% - var(--GBgap) + (var(--GBgap) / var(--GBcolumns))); }

.gridblock .col > div { position: relative; z-index: 5; }	/* Inhaltsebene */

@supports (gap: 1px) {
	.gridblock .cGap-xs { --GBgap: var(--gap-xs); gap: var(--GBgap); }
	.gridblock .cGap-sm { --GBgap: var(--gap-sm); gap: var(--GBgap); }
	.gridblock .cGap-md { --GBgap: var(--gap-md); gap: var(--GBgap); }
	.gridblock .cGap-lg { --GBgap: var(--gap-lg); gap: var(--GBgap); }
	.gridblock .cGap-xl { --GBgap: var(--gap-xl); gap: var(--GBgap); }
}

/*
.gridblock .mgA-xs { margin-top: var(--margin-neg-xs); margin-bottom: var(--margin-neg-xs); }
.gridblock .mgA-sm { margin-top: var(--margin-neg-sm); margin-bottom: var(--margin-neg-sm); }
.gridblock .mgA-md { margin-top: var(--margin-neg-md); margin-bottom: var(--margin-neg-md); }
.gridblock .mgA-lg { margin-top: var(--margin-neg-lg); margin-bottom: var(--margin-neg-lg); }
.gridblock .mgA-xl { margin-top: var(--margin-neg-xl); margin-bottom: var(--margin-neg-xl); }
*/

.gridblock .ca-cc { align-items: center; justify-content: center; }
.gridblock .ca-lt { align-items: flex-start; justify-content: flex-start; }
.gridblock .ca-rt { align-items: flex-start; justify-content: flex-end; }
.gridblock .ca-rb { align-items: flex-end; justify-content: flex-end; }
.gridblock .ca-lb { align-items: flex-end; justify-content: flex-start; }
.gridblock .ca-ct { align-items: flex-start; justify-content: center; }
.gridblock .ca-cr { align-items: center; justify-content: flex-end; }
.gridblock .ca-cb { align-items: flex-end; justify-content: center; }
.gridblock .ca-cl { align-items: center; justify-content: flex-start; }

.gridblock .cs-width > div { width: 100%; }
.gridblock .cs-height > div { height: 100%; }
.gridblock .cs-full > div { width: 100%; height: 100%; }

.gridblock .bc-dark * { color: var(--col-dark); }
.gridblock .bc-light * { color: var(--col-light); }

.gridblock .colsReverse { flex-direction: row-reverse; }

.gridblock .height100p { align-self: auto; }

.gridblock .brd.brd-solid { border-style: solid; }						/* klassischer Border */
.gridblock .brd.brd-double { border-style: double; }
.gridblock .brd.brd-dotted { border-style: dotted; }
.gridblock .brd.brd-dashed { border-style: dashed; }
.gridblock .brd.brd-groove { border-style: groove; }
.gridblock .brd.brdCol-primary { border-color: var(--col-primary); }
.gridblock .brd.brdCol-secondary { border-color: var(--col-secondary); }
.gridblock .brd.brdCol-accent { border-color: var(--col-accent); }
.gridblock .brd.brdT-none { border-top: none; }
.gridblock .brd.brdR-none { border-right: none; }
.gridblock .brd.brdB-none { border-bottom: none; }
.gridblock .brd.brdL-none { border-left: none; }

.gridblock .brdOutline.brd-solid { outline-style: solid; }				/* Ouline-Border */
.gridblock .brdOutline.brd-double { outline-style: double; }
.gridblock .brdOutline.brd-dotted { outline-style: dotted; }
.gridblock .brdOutline.brd-dashed { outline-style: dashed; }
.gridblock .brdOutline.brd-groove { outline-style: groove; }
.gridblock .brdOutline.brdCol-primary { outline-color: var(--col-primary); }
.gridblock .brdOutline.brdCol-secondary { outline-color: var(--col-secondary); }
.gridblock .brdOutline.brdCol-accent { outline-color: var(--col-accent); }

.gridblock .divi { position: relative; display: block; width: 100%; margin: 0px; padding: 0px; overflow: hidden; line-height: 0; border: none; z-index: 3; }
	.gridblock .divi-aboveContent { z-index: 20; }
	.gridblock .divi-inside { position: absolute; left: 0px; }
		.gridblock .divi-top.divi-inside { top: -1px; }
		.gridblock .divi-bottom.divi-inside { bottom: -1px; }
	.gridblock .divi-outside {}
		.gridblock .divi-top.divi-outside { top: 1px; }
		.gridblock .divi-bottom.divi-outside { bottom: 1px; }
.gridblock .divi > * { display: block; position: relative; left: 50%; transform: translateX(-50%); overflow: hidden; border: none; background: none !important; max-width: none !important; transition: all 0.3s ease; }
	.gridblock .divi.divi-flipX > * { transform: translateX(-50%) rotateY(180deg); }
	.gridblock .divi.divi-flipY > * { transform: translateX(-50%) rotateX(180deg); }
	.gridblock .divi.divi-flipX.divi-flipY > * { transform: translateX(-50%) rotateX(180deg) rotateY(180deg); }
	.gridblock .divi svg.bgCol-primary > * 		{ fill: var(--col-primary); }
	.gridblock .divi svg.bgCol-secondary > * 	{ fill: var(--col-secondary); }
	.gridblock .divi svg.bgCol-accent > * 		{ fill: var(--col-accent); }	
.gridblock .divi img { height: auto; }





/* Modul: Gridblock NEU */
/*
.gridblock .row { display: flex; flex-wrap: wrap; width: 100%; margin: 0px; z-index: 5; }

.gridblock .col { display: flex; flex-grow: 1; margin: 0px auto; width: calc( (100% / var(--GBcolumns)) - var(--GBgap) ); margin-left: var(--GBgap); }

	.gridtemplate-80-20 .col, .gridtemplate-20-80 .col { width: calc(20% - var(--GBgap)); }
	.gridtemplate-80-20 .col:nth-child(1), .gridtemplate-20-80 .col:nth-child(2) { width: calc(80% - var(--GBgap)); }
	
	.gridtemplate-70-30 .col, .gridtemplate-30-70 .col { width: calc(30% - var(--GBgap)); }
	.gridtemplate-70-30 .col:nth-child(1), .gridtemplate-30-70 .col:nth-child(2) { width: calc(70% - var(--GBgap)); }
	
	.gridtemplate-60-40 .col, .gridtemplate-40-60 .col { width: calc(40% - var(--GBgap)); }
	.gridtemplate-60-40 .col:nth-child(1), .gridtemplate-40-60 .col:nth-child(2) { width: calc(60% - var(--GBgap)); }
	
	.gridtemplate-25-50-25 .col, .gridtemplate-50-25-25 .col, .gridtemplate-25-25-50 .col { width: calc(25% - var(--GBgap)); }
	.gridtemplate-25-50-25 .col:nth-child(2), .gridtemplate-50-25-25 .col:nth-child(1), .gridtemplate-25-25-50 .col:nth-child(3) { width: calc(50% - var(--GBgap)); }
	
	
	.gridtemplate-16-67-16 .col, .gridtemplate-67-16-16 .col, .gridtemplate-16-16-67 .col { width: calc(16.665% - var(--GBgap)); }
	.gridtemplate-16-67-16 .col:nth-child(2), .gridtemplate-67-16-16 .col:nth-child(1), .gridtemplate-16-16-67 .col:nth-child(3) { width: calc(66.67% - var(--GBgap)); }


	.gridtemplate-33-67 .col, .gridtemplate-67-33 .col { width: calc(33.33% - var(--GBgap)); }
	.gridtemplate-33-67 .col:nth-child(2), .gridtemplate-67-33 .col:nth-child(1) { width: calc(66.67% - var(--GBgap)); }


@supports (gap: 1px) {
	.gridblock .cGap-xs { --GBgap: var(--gap-xs); gap: 0px; left: calc(var(--GBgap) * -1); }
	.gridblock .cGap-sm { --GBgap: var(--gap-sm); gap: 0px; left: calc(var(--GBgap) * -1); }
	.gridblock .cGap-md { --GBgap: var(--gap-md); gap: 0px; left: calc(var(--GBgap) * -1); }
	.gridblock .cGap-lg { --GBgap: var(--gap-lg); gap: 0px; left: calc(var(--GBgap) * -1); }
	.gridblock .cGap-xl { --GBgap: var(--gap-xl); gap: 0px; left: calc(var(--GBgap) * -1); }
}
*/




/* Sonstiges + Editorstyles */
img.bild_links_mit_textfluss { text-align: left; margin-right: 20px; margin-bottom: 20px; float: left; }
img.bild_rechts_mit_textfluss { text-align: right; margin-bottom: 20px; margin-left: 20px; float: right; }
img.bild_links_mit_textfluss_und_rahmen { text-align: left; margin-right: 20px; margin-bottom: 20px; border: 7px solid #DDD; float: left; }
img.bild_rechts_mit_textfluss_und_rahmen { text-align: right; margin-bottom: 20px; margin-left: 20px; border: 7px solid #DDD; float: right; }
img.bild_rahmen { border: 7px solid #DDD; }

.text_standard { color: #666; text-decoration: none; font-style: normal; font-variant: normal; font-size: 1em; }
	.text_standard:hover { font-style: normal; }
.text_klein { text-decoration: none; font-style: normal; font-variant: normal; font-size: 0.75em; }
.text_grossbuchstaben { text-transform: uppercase; }
.text_einrueckung { margin-left: 1em; }

table.tabelle_links { margin-left: 0px; margin-right: auto; }
table.tabelle_mittig { margin-left: auto; margin-right: auto; }
table.tabelle_rechts { margin-left: auto; margin-right: 0px; }

a.link-historyback { padding: 25px 0px; }
.hide, .content-hide { display: none; }

.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }
.justify { text-align: justify; }

.textfarbe_rot { color: #CC0617; }
.textfarbe_grau { color: #3A3F3F; }

span.yellowbox { background-color: var(--col-primary); padding: 5px 13px; display: inline-block; color: #FFF; font-weight: bold; }

a.linkbox-rot, a.linkbox-grau, a.linkbox-balken, a.linkbox-pfeil { text-decoration: none; text-transform: uppercase; font-size: 1.2em; margin: 0px 5px 5px 0px; padding: 8px 40px; -mozborder-radius: 3px; border-radius: 3px; background: #CC0617; font-family: 'Kanit', sans-serif; font-weight: normal; color: #FFF; text-align: center; line-height: 1.75; }
	a.linkbox-rot:hover { background: #3A3F3F; }
a.linkbox-grau { background: #3A3F3F; }
	a.linkbox-grau:hover { background: var(--col-primary); color: #3A3F3F; }
a.linkbox-balken, a.linkbox-pfeil { position: relative; display: inline-block; padding: 8px 25px; background: #EEE; color: #3A3F3F; min-width: 175px; margin: 0px 5px 5px 0px; }
	a.linkbox-balken:before { content: ''; background: #CC0918; width: 6px; height: 100%; position: absolute; left: 0px; top: 0px; transition: all 0.3s ease; }
	a.linkbox-balken:hover { color: #000; }
	a.linkbox-balken:hover:before { /*mix-blend-mode: multiply;*/ width: 20px; }
a.linkbox-pfeil { background: url(btn-pfeil.png) right center no-repeat #EEE; }
	a.linkbox-pfeil:hover { color: #FFF; background-color: #CC0617; }


table.tabelle-formatiert { width: 100%; border-collapse: collapse; overflow: hidden; box-shadow: 0 0 40px 0 rgba(0,0,0,.15); border-radius: var(--borderRadius-sm); }
table.tabelle-formatiert tr { transition: all 0.3s ease; }
    table.tabelle-formatiert tr:nth-child(even) { background: #FEFEFE; }
    table.tabelle-formatiert tr:nth-child(odd) { background: rgb(242,242,242); }
table.tabelle-formatiert th, table.tabelle-formatiert td { padding: 16px 16px 16px 0px; text-align: left; vertical-align: top; word-break: break-word; }
    table.tabelle-formatiert th:first-child, table.tabelle-formatiert td:first-child { padding-left: 26px; }
    table.tabelle-formatiert th:last-child, table.tabelle-formatiert td:last-child { padding-right: 26px; }
table.tabelle-formatiert th, table.tabelle-formatiert td:before { padding-top: 18px; padding-bottom: 18px; background: var(--col-primary-opa); color: var(--col-primary-text); font-weight: bold; font-size: 1.05em; }
table.tabelle-formatiert .table-action { width: 100px; text-align: right; white-space: nowrap; }

table.tabelle-formatiert a.linkbutton-refresh { background: #EAEAEA; color: var(--col-accent-text); }
table.tabelle-formatiert a.linkbutton-delete { background: #900; }
table.tabelle-formatiert a.linkbutton-deletephone { background: #EAEAEA; color: var(--col-accent-text); }
table.tabelle-formatiert a.linkbutton-primary.linkbutton-meta:hover { background: var(--col-accent); color: var(--col-accent-text); }
	

/* TinyMCE Breitenbeschränkunen */
.maxwidth500 { max-width: 500px; margin: 0px auto; }
.maxwidth600 { max-width: 600px; margin: 0px auto; }
.maxwidth700 { max-width: 700px; margin: 0px auto; }
.maxwidth800 { max-width: 800px; margin: 0px auto; }
.maxwidth900 { max-width: 900px; margin: 0px auto; }
.maxwidth1000 { max-width: 1000px; margin: 0px auto; }
.maxwidth1100 { max-width: 1100px; margin: 0px auto; }



/* Hacks */
.ipad .content { }




/* Consent Manager + 2Klick-Lösung */
a.consent_manager-save-selection, a.consent_manager-accept-all { background-color: var(--col-primary); text-decoration: none; border: none; border-radius: 0px; }
a.consent_manager-save-selection:hover, a.consent_manager-accept-all:hover { background-color: var(--col-secondary); text-decoration: none; color: var(--col-primary); }
body a.consent_manager-close-box::before { left: 9px; }
.consent_manager-show-details .icon-info-circled:before { vertical-align: baseline !important; }
.consent_manager-wrapper { border-radius: 10px; }

.consent_manager-reopen { box-sizing: border-box; position: fixed; left: 9px; bottom: 15px; z-index: 500; overflow: hidden; cursor: pointer; opacity: 0; transition: opacity .25s ease-in-out; background: rgba(255,255,255, 0.5); border-radius: 50%; padding: 5px; }
	.consent_manager-reopen img { display: block !important; width: 25px; height: auto; margin: 0px; opacity: 0.5; transition: all 0.3s ease; }
		.consent_manager-reopen:hover img { opacity: 1; }
	.consent_manager-reopen span { display: none; color: #999; font-family: var(--font-text); font-size: 12px; font-weight: normal; letter-spacing: 0px; }
.cmcookieset .consent_manager-reopen { opacity: 1; }

div.ct-privacy { position: relative; background: #EEE center center; background-size: cover; padding: 30px; box-sizing: border-box; }
	/*.video-container div.ct-privacy { position: absolute; top: 0; left: 0; }*/
a.ct-privacy-accept { position: absolute; top: 50%; left: 50%; max-width: 500px; transform: translate(-50%,-50%); display: inline-block; width: auto; height: auto; background: var(--col-secondary); color: #FFF; border-radius: 3px; padding: 12px 20px; font-size: 14px; text-align: center; text-decoration: none; cursor: pointer; box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px; }
	a.ct-privacy-accept:hover { background: #FFF; color: #000; }
	
div.tc-privacy { background: url(/media/basic-dummy.jpg) center center; background-size: cover; padding: 25px; }
	div.tc-privacy > div { position: relative; width: auto; height: auto; text-align: center; max-width: 400px; margin: auto; background: rgba(255,255,255, 0.75); border-radius: 3px; padding: 15px 15px; box-shadow: 2px 2px 5px 0px rgba(0,0,0, 0.3); }
	div.tc-privacy > div span { display: block; margin: 20px 0px 0px; font-size: 13px; color: #000; line-height: 1.2; }
div.tc-privacy a.tc-privacy-accept { position: static; transform: none; }
div.tc-privacy + iframe { display: none; }
