body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
.justify-items-start{justify-items:start}.justify-items-center{justify-items:center}.justify-items-end{justify-items:end}.content-start{align-content:start}.content-center{align-content:center}.content-end{align-content:end}.items-start{align-items:start}.items-center{align-items:center}.items-end{align-items:end}[class*=grid_]{display:grid;grid-gap:1rem}[class*=grid_]>.block{margin-bottom:0}@media(min-width: 576px){.grid_mobile_100{grid-template-columns:1fr}.grid_mobile_50_50{grid-template-columns:repeat(2, 1fr)}.grid_mobile_33_33_33{grid-template-columns:repeat(3, 1fr)}.grid_mobile_25_25_25_25{grid-template-columns:repeat(4, 1fr)}.grid_mobile_75_25{grid-template-columns:3fr 1fr}.grid_mobile_25_75{grid-template-columns:1fr 3fr}.grid_mobile_66_33{grid-template-columns:2fr 1fr}.grid_mobile_33_66{grid-template-columns:1fr 2fr}.grid_mobile_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_mobile_25_50_25{grid-template-columns:1fr 2fr 1fr}.grid_mobile_25_25_50{grid-template-columns:1fr 1fr 2fr}.grid_mobile_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_mobile_30_40_30{grid-template-columns:3fr 4fr 3fr}.grid_mobile_30_30_40{grid-template-columns:3fr 3fr 4fr}}@media(min-width: 768px){.grid_tablet_100{grid-template-columns:1fr}.grid_tablet_50_50{grid-template-columns:repeat(2, 1fr)}.grid_tablet_33_33_33{grid-template-columns:repeat(3, 1fr)}.grid_tablet_25_25_25_25{grid-template-columns:repeat(4, 1fr)}.grid_tablet_75_25{grid-template-columns:3fr 1fr}.grid_tablet_25_75{grid-template-columns:1fr 3fr}.grid_tablet_66_33{grid-template-columns:2fr 1fr}.grid_tablet_33_66{grid-template-columns:1fr 2fr}.grid_tablet_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_tablet_25_50_25{grid-template-columns:1fr 2fr 1fr}.grid_tablet_25_25_50{grid-template-columns:1fr 1fr 2fr}.grid_tablet_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_tablet_30_40_30{grid-template-columns:3fr 4fr 3fr}.grid_tablet_30_30_40{grid-template-columns:3fr 3fr 4fr}.grid_tablet_20_40_40{grid-template-columns:1fr 2fr 2fr}.grid_tablet_40_20_40{grid-template-columns:2fr 1fr 2fr}.grid_tablet_40_40_20{grid-template-columns:2fr 2fr 1fr}}@media(min-width: 992px){.grid_desktop_100{grid-template-columns:1fr}.grid_desktop_50_50{grid-template-columns:repeat(2, 1fr)}.grid_desktop_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_desktop_33_33_33{grid-template-columns:repeat(3, 1fr)}.grid_desktop_75_25{grid-template-columns:3fr 1fr}.grid_desktop_25_75{grid-template-columns:1fr 3fr}.grid_desktop_66_33{grid-template-columns:2fr 1fr}.grid_desktop_33_66{grid-template-columns:1fr 2fr}.grid_desktop_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_desktop_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_desktop_50_25_25{grid-template-columns:2fr 1fr 1fr}.grid_desktop_25_50_25{grid-template-columns:1fr 2fr 1fr}.grid_desktop_25_25_50{grid-template-columns:1fr 1fr 2fr}.grid_desktop_40_30_30{grid-template-columns:4fr 3fr 3fr}.grid_desktop_30_40_30{grid-template-columns:3fr 4fr 3fr}.grid_desktop_30_30_40{grid-template-columns:3fr 3fr 4fr}.grid_desktop_20_40_40{grid-template-columns:1fr 2fr 2fr}.grid_desktop_40_20_40{grid-template-columns:2fr 1fr 2fr}.grid_desktop_40_40_20{grid-template-columns:2fr 2fr 1fr}.grid_desktop_25_25_25_25{grid-template-columns:repeat(4, 1fr)}.grid_desktop_40_20_20_20{grid-template-columns:2fr 1fr 1fr 1fr}.grid_desktop_20_40_20_20{grid-template-columns:1fr 2fr 1fr 1fr}.grid_desktop_20_20_40_20{grid-template-columns:1fr 1fr 2fr 1fr}.grid_desktop_20_20_20_40{grid-template-columns:1fr 1fr 1fr 2fr}.grid_desktop_20_20_20_20_20{grid-template-columns:repeat(5, 1fr)}}

#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
.content-slider{overflow:hidden;visibility:hidden;position:relative}.slider-wrapper{overflow:hidden;position:relative}.slider-wrapper>*{float:left;width:100%;position:relative}.slider-control{height:30px;position:relative}.slider-control a,.slider-control .slider-menu{position:absolute;top:9px;display:inline-block}.slider-control .slider-prev{left:0}.slider-control .slider-next{right:0}.slider-control .slider-menu{top:0;width:50%;left:50%;margin-left:-25%;font-size:27px;text-align:center}.slider-control .slider-menu b{color:#bbb;cursor:pointer}.slider-control .slider-menu b.active{color:#666}
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
  border: 0;
  vertical-align: bottom;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
  margin: 0;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
  border: none;
  margin: 0;
  padding: 0;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}
/* open-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../../files/private/fonts/open-sans-v35-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../../files/private/fonts/open-sans-v35-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* open-sans-300italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../../files/private/fonts/open-sans-v35-latin-300italic.woff2') format('woff2'),
       url('../../files/private/fonts/open-sans-v35-latin-300italic.ttf') format('truetype');
}
/* open-sans-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: normal;
  src: url('../../files/private/fonts/open-sans-v35-latin-regular.woff2') format('woff2'),
       url('../../files/private/fonts/open-sans-v35-latin-regular.ttf') format('truetype');
}
/* open-sans-italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: normal;
  src: url('../../files/private/fonts/open-sans-v35-latin-italic.woff2') format('woff2'),
       url('../../files/private/fonts/open-sans-v35-latin-italic.ttf') format('truetype');
}
/* open-sans-600 - latin */
@font-face {
  font-display: swap;
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: bold;
  src: url('../../files/private/fonts/open-sans-v35-latin-600.woff2') format('woff2'),
       url('../../files/private/fonts/open-sans-v35-latin-600.ttf') format('truetype'); 
}

/* open-sans-600italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: bold;
  src: url('../../files/private/fonts/open-sans-v35-latin-600italic.woff2') format('woff2'),
       url('../../files/private/fonts/open-sans-v35-latin-600italic.ttf') format('truetype');
}



/* Farben */
html {	    
	--beige1: #edd3b9; /*         color: var(--beige1) */
	--beige2: #fff5e6; /* hell    color: var(--beige2) */
	--beige3: #deb080; /* dunkel  color: var(--beige3) */
	
	--grau1: #575858;  /*         color: var(--grau1); */
	--grau2: #9c9d9d;  /* hell    color: var(--grau2); */
	--grau3: #434444;  /* dunkel  color: var(--grau3); */
}


/* ALLGEMEIN */

html {
	font-family: 'Open Sans';
	font-style: normal;
	font-size: 17px;
	line-height: 1.5;
	color: var(--grau1);
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

p {margin: 0.5em 0;}

a {text-decoration: none; color: var(--beige3); transition: 0.2s;}
a:hover {color: var(--grau1);}

h1, h2, h3 {font-weight: bold;}
h1 {margin: 0.5em 0; line-height: 1.3;}
h2 {font-size: 1.6em; text-transform: uppercase;}

.ce_text ul {padding-left: 1em; padding-bottom: 0.5em;}

#cboxPrevious, #cboxNext {outline: 0;} /*Lightbox*/
.ce_youtube {margin: 1em 0;}
iframe {border: none;}

.overflow_visible {overflow: visible;}
.overflow_visible.ce_cp_grid_start > div {overflow: visible;}
.text-align_center {text-align: center;}
.text-align_right {text-align: right;}

.abstand_oben_0 {margin-top: 0;}
.abstand_oben,
.abstand_oben_1 {margin-top: 1em;}
.abstand_oben_2 {margin-top: 2em;}
.abstand_oben_3 {margin-top: 3em;}

.abstand_unten_0 {margin-bottom: 0;}
.abstand_unten,
.abstand_unten_1 {margin-bottom: 1em !important;}
.abstand_unten_2 {margin-bottom: 2em;}
.abstand_unten_3 {margin-bottom: 3em;}

.error {color: red; font-weight: bold;}

[class*="grid_"] > .block {margin-bottom: unset;}

.rowgap0 .grid_start {row-gap: 0;}
.rowgap0-5 .grid_start {row-gap: 0.5em;}
.gap1 .grid_start {gap: 1em;}

.silbentrennung {hyphens: auto;}

#container,
#footer .inside {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 2em;
}



/**** HEADER ****/

#header {
	position: sticky;
	top: -4em;
	margin-bottom: 1em;
	padding-bottom: 0.3em;
	background: white;
	z-index: 2;
}

#header .inside {
	display: grid;
	grid-template-columns: 1fr 16em 66em 1fr;
}

.header-links {}
.header-rechts {grid-column: 4;}

/* Logo */
.logo {width: 16em; grid-column: 2; transition: 1s;}
.scroll .logo {width: 8em; margin-top: 3.4em;}

/* Sprachenwechsler */
.mod_changelanguage {
	display: none; /* ERSTMAL AUSBLENDEN */
	position: absolute;
	top: 7em;
	left: 0;
	padding: 1.9em 1.1em 1.9em 0.5em;
	text-align: left;
	transition: 1s;
}
.scroll .mod_changelanguage {left: -3em;}
.mod_changelanguage::after {
	content: url('../../files/private/img/kreis-beige-li.svg');
	top: 0;	left: 0;
	position: absolute;
	width: 2.8em;
	opacity: 0.6;
	z-index: 1;
}
.mod_changelanguage ul {margin: 0; padding: 0; position: relative; z-index: 2;}
.mod_changelanguage li {display: block; margin: 0; line-height: 1.4;}
.mod_changelanguage li strong {font-weight: normal; color: white;}
.mod_changelanguage li a {color: var(--grau1);}
.mod_changelanguage li a:hover {color: var(--beige1);}


/* Top-Header */
.top-header {position: absolute; top: 0; right: calc(50vw - 43em); padding: 0.8em 4.3em 0;}
.top-header::after {
	content: url('../../files/private/img/kreis-grau.svg');
	top: 0;	left: 0;
	position: absolute;
	width: 13em;
	opacity: 0.5;
	z-index: -1;
}
.top-header img {width: 1.23em; filter: brightness(3); transition: 0.2s;}
.top-header img:hover {filter: brightness(1);}
.telefon, .email {display: inline-block; cursor: pointer;}
.telefon {margin-right: 1.7em;}
.klappding {display: none; position: absolute; color: white; background: #444d; padding: 2em; margin-top: 1.1em; width: 21em; max-width: calc(100vw - 6em); right: 0; z-index: 2;}
.visible .klappding {display: block;}
.klappding:after {
	content: "╳";
	position: absolute;
	top: 0;
	right: 0.5em;
	font-size: 1.5em;
	cursor: pointer;
}
.klappding a:hover {color: white;}

/* Navigation */
.menu-icon {display: none;}
.hauptmenu {margin: 4.1em 5.7em 0 0; overflow: visible; text-align: right; font-size: 1.1em;}
.hauptmenu ul {margin: 0; padding: 0;}
.hauptmenu li {display: inline-block; margin-left: 0.7em; text-transform: uppercase; font-weight: bold;}
.hauptmenu li strong,
.hauptmenu li a {
	display: block;
	padding: 0.4em 0;
}	
.hauptmenu li strong,
.hauptmenu li a.trail {color: var(--beige3);}
.hauptmenu li a {color: var(--grau1);}
.hauptmenu li a:hover {color: var(--beige3);}

.mod_navigation ul.level_1 li {position: relative;}
.mod_navigation ul.level_1 li ul {
	display: none;
	position: absolute;
	width: 13em;
	padding: 1em 1.5em;
	text-align: left;
	background: #444e;
	z-index: 1;
}
.mod_navigation ul > li:hover > ul {display: block;}

.hauptmenu .level_2 li {display: block; margin-left: 0; font-size: 1rem; text-transform: none;}
.hauptmenu .level_2 li a {color: white;}
.hauptmenu .level_2 li a:hover {color: var(--beige1);}


/**** TITELBILD ****/

.mod_pageimage {position: relative;}
.mod_pageimage img {width: 100%;}
/* .mod_pageimage figcaption {position: absolute; bottom: 0; color: white; text-shadow: 0 0 4px black; font-size: 0.7em; right: 3px; opacity: 0.8;} */


/**** INHALT ****/

#container {min-height: calc(100vh - 19em);}

main {margin-top: 1.5em;}
main figure {position: relative;}
/* main figcaption {position: absolute; bottom: 0; color: white; text-shadow: 0 0 3px black; font-size: 0.7em; right: 3px;} */
/* main .ce_image.rund figcaption {bottom: 0.5em; left: 0; right: 0; text-align: center;} */
img.rund {border-radius: 50%;}

.ce_text:not(.hinweis) p {text-align: justify;}

.ce_text > ul {margin-top: 0.5em;}


/* Bildunterschriften nur im Impressum */
figcaption {display: none;}
.figcaption_anzeigen figcaption {display: block;}

/* Hinweis-Kasten */
.ce_cp_grid_start.flex .grid_start {display: flex;}
.ce_cp_grid_start.flex .grid_desktop_66_33 .hinweis {min-width: 27.2%;}
.hinweis {
	margin-bottom: 3em;
	padding: 0.5em 2em 2em;
	background: var(--beige2);
	text-align: center;
}


/* graue Flächen */
.mod_article {overflow: visible;}
.hg_grau, .hg_beige {
	position: relative;
	margin: 5em 0 3em;
	padding: 1.5em 0;
	color: white;
	overflow: visible;
}
.hg_grau::before, .hg_beige::before {
    content: "";
    height: 100%;
    width: 100vw;
    position: absolute;
    top: 0;
    left: calc(600px - 50vw);
    z-index: -2;
}
.hg_grau::before {background: var(--grau2);}
.hg_beige::before {background: var(--beige2);}

.hg_grau::after, .hg_beige::after {
	content: url('../../files/private/img/kreis-beige2-re.svg');
	position: absolute;
	right: calc(600px - 50vw);
	top: -9em;
	width: 4em;
	opacity: 0.5;
	z-index: -1;
}
.hg_beige::after {content: url('../../files/private/img/kreis-beige1-re.svg');}

/* Teaser mit Bild und Text darunter (Darstellung wird nicht mehr verwendet)*/
.teaser {position: relative; color: var(--grau1); background: white;}
.teaser .text {margin: 1em 1em 1.5em;}
.teaser h3 {margin-bottom: 0.5em; text-transform: uppercase;}
a.teaser {display: block; height: 100%; color: var(--grau1);}
a.teaser:hover {color: var(--grau1); background: var(--beige2);}

a.teaser .pfeil {position: absolute; right: 1em; bottom: 1em;}
a.teaser .pfeil img {width: 2em; transition: 0.5s;}
a.teaser:hover .pfeil img {rotate: 45deg;}
.teaser .text a {color: var(--grau1);}
.teaser .text a:hover {color: var(--beige3);}

/* Teaser-Kachel mit Bild */
.teaser_kachel {display: block; position: relative;}
.teaser_kachel .overlay {position: absolute; bottom: 0; height: 100%; width: 100%; background-image: linear-gradient(to bottom,rgba(255,255,255,0),rgba(0,0,0,0.7) 100%);
}
.teaser_kachel .text {position: absolute; bottom: 0; left: 1em; color: white;}
.teaser_kachel .text .titel {text-transform: uppercase; margin: 0.7em 0;}
.teaser_kachel img {transform: scale(1); transition: 0.5s;}
.teaser_kachel:hover img {transform: scale(1.2);}

/* Teaser rund */
.ce_rsce_teaser_rund {justify-self: center;}
.teaser_rund {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 12rem;
	height: 12rem;
	margin: 1rem;
	padding: 1rem;
	border-radius: 8rem;
	text-align: center;
	color: var(--grau1);
	background: var(--beige1);
	transition: 0.5s;
}
.teaser_rund:hover {width: 14rem; height: 14rem; margin: 0; font-size: 1.17em;}
.teaser_rund h3 {text-transform: uppercase;}
.teaser_rund .pfeil img {width: 1.8em;}
.teaser_rund .text a {color: var(--grau1); transition: 0.5s;}
.teaser_rund .text a:hover {color: var(--beige3);}


/* Start -> Kontakt */
.kontakt a[href^="tel:"],
.kontakt a[href^="mailto:"] {color: inherit; padding-left: 2em;}
.kontakt a[href^="tel:"] {background: url("../../files/private/img/icon-phone-beige.svg") no-repeat left center; background-size: 1.3em auto;}
.kontakt a[href^="mailto:"] {background: url("../../files/private/img/icon-mail-beige.svg") no-repeat left center; background-size: 1.3em auto;}
.kontakt a[href^="tel:"]:hover,
.kontakt a[href^="mailto:"]:hover {color: var(--beige3);}

.kontakt td {padding-right: 0.8em;}


/* Spalten */
.grid_start {gap: 3em;}
.gap6 .grid_start {gap: 6em;}

/* Galerie */
.ce_gallery > ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
	gap: 1em;
}
.ce_gallery figure {overflow: hidden;}
.ce_gallery a img {transform: scale(1); transition: 0.5s;}
.ce_gallery a:hover img {transform: scale(1.2);}


/* Formular */
.ce_form,
.mod_login {margin: 2em 0; padding: 0.5em 2em 1.5em; color: white; background: var(--grau1);}
form .widget-text,
form .widget-password {display: grid; grid-template-columns: 9em 1fr;}
form .widget-text label,
form .widget-password label {padding-top: 0.7em;}
form .widget-text input,
form .widget-password input {margin-bottom: 0.7em; padding: 0.7em; border: none; color: black;}
form .widget-explanation {margin-left: 9em;}

.ce_form .widget-checkbox,
.ce_form .widget-radio {margin-bottom: 1em;}
.ce_form .widget-checkbox span,
.ce_form .widget-radio span {display: block; margin-left: 9em;}

form .widget-submit {text-align: right;}

/* Buttons */
a.button,
button.submit,
button[type=submit],
a.hyperlink_txt {
	display: inline-block;
	margin: 0.5em 0;
	padding: 0.5em 1.5em;
	color: white;
	border: 1px solid var(--beige3);
	text-align: center;
	background: var(--beige3);	
}
a.button:hover,
button.submit:hover,
button[type=submit]:hover,
a.hyperlink_txt:hover {color: var(--beige3); background: white;}


/* Visuelle Formulare (MFA) */
.mfa .ce_form {margin-top: 0.4em; padding: 1em; color: black; background: var(--beige2);}

.mfa form .widget-explanation {margin-left: unset;}
.mfa form .widget-text {display: block;}
.mfa form .widget-text input {width: calc(100% - 1.5em);}

.widget-pagebreak {text-align: right;}

form .widget-checkbox.visuell fieldset,
form .widget-radio.visuell fieldset{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
form .widget-checkbox.visuell legend,
form .widget-radio.visuell legend{
	margin: 0 0 1em;
	font-weight: bold;
}
form .widget-checkbox.visuell span,
form .widget-radio.visuell span{
	margin: -0.5em 0 0 -0.5em;
	display: inline-flex;
	align-items: center;
	width: 10em;
	height: 10em;
	border-radius: 5em;
	text-align: center;
	overflow: hidden;
	cursor: pointer;
}
form .widget-checkbox.visuell span input,
form .widget-radio.visuell span input {display: none;}
form .widget-checkbox.visuell span label,
form .widget-radio.visuell span label {
	position: relative;
	width: 100%;
	padding: 4.3em 1em;
	border-radius: 5em;
	color: white;
	background: #43444488;
}
form .widget-checkbox.visuell :checked + label,
form .widget-radio.visuell :checked + label {color: black; background: #edd3b9aa;}






/* Videos */
iframe {border: none;}
.ce_vimeo a, .ce_youtube a {position: relative;}
.ce_vimeo a::before, .ce_youtube a::before {
	content: '▶';
	position: absolute;
	left: calc(50% - 29px);
	bottom: 0;
	margin-bottom: calc(25% - 45px);
	font-size: 4em;
	color: white;
	opacity: 0.8;
}
.ce_vimeo a:hover::before, .ce_youtube a:hover::before {color: var(--gold);}

.ce_vimeo figure::before {
	content: 'Durch das Laden dieses Videos stimmen Sie den Datenschutzbedingungen von Vimeo.com Inc. zu. Vimeo setzt dann in Ihrem Browser Cookies (vimeo.com/privacy).';
}
.ce_youtube a::after {
	content: 'Durch das Laden dieses Videos stimmen Sie den Datenschutzbedingungen von Google LLC zu. YouTube setzt dann in Ihrem Browser Cookies (policies.google.com/privacy).';
}
.ce_vimeo figure::before,
.ce_youtube a::after {
	position: absolute;
	padding: 0.6em;
	left: 0;
	right: 5px;
	bottom: 0;
	font-size: 0.7em;
	color: white;
	background: #0009;
	z-index: 1;
}


/* Slider */
.ce_sliderStart {position: relative;}
.content-slider img {width: 100%; height: auto;}
.slider-control {
	width: 100%;
	position: absolute;
	height: calc(50% + 40px);
	top: calc(50% - 40px);
}
.slider-control .slider-prev,
.slider-control .slider-next {font-size: 0;}
.slider-control .slider-prev {left: 1rem; transform: rotate(180deg);}
.slider-control .slider-next {right: 1rem;}
.slider-control .slider-prev:before,
.slider-control .slider-next:before {
	content: '';
	display: block;
	width: 21px;
	height: 40px;
	margin: 0 10px;
	filter: drop-shadow(0 0 2px #0004);
}
.slider-control .slider-prev:before {background: url('../../files/private/img/pfeil_rechts_weiss.svg') no-repeat;}
.slider-control .slider-next:before {background: url('../../files/private/img/pfeil_rechts_weiss.svg') no-repeat;}
.slider-control .slider-menu {bottom: 0; top: unset; font-size: 2em;}
.slider-control .slider-menu b {color: #fff8;}
.slider-control .slider-menu b.active {color: #fff;}

/*
.ce_hyperlink h3 {margin-bottom: 0;}
*/


/* Slick Slider */
.slick-slide figure {position: relative;}
.breit .slick-slide figure img {width: 100%;}
/* .slick-slide figcaption {
	max-width: 50vw;
	position: absolute;
	bottom: 0.5em;
	right: 1em;
	color: white;
	text-align: right;
	text-shadow: 0 0 5px black;
}
.slick-slide figcaption .fotograf {display: block;} */

.slick-slider button {border: none; background: none;}
.slick-slider button.slick-prev,
.slick-slider button.slick-next {position: absolute; top: calc(50% - 1em); z-index: 1;}
.slick-slider button.slick-prev {left: 1em;}
.slick-slider button.slick-next {right: 1em;}
.slick-arrow img {width: 1.3em;}
.slick-prev img {transform: rotate(180deg);}

.slick-dots {
	width: 100%;
	position: absolute;
	bottom: 0;
	padding-left: 0;
	color: white;
	text-align: center;
}
.slick-dots li {display: inline-block; margin: 0 4px;}
.slick-dots li button {
	width: 10px;
	height: 10px;
	border: 1px solid white;
	border-radius: 5px;
	font-size: 0;
	background: white;
}
.slick-dots li.slick-active button {background: none;}






/**** FOOTER ****/

#footer {margin-top: 8em; font-size: 0.8em; background: var(--beige2);}
#footer .inside {margin: 0 auto; text-align: center; text-transform: uppercase;}

footer nav {display: inline-block;}
footer ul {margin: 0; padding: 0; list-style: none;}
footer li {display: inline-block;}
footer a {display: block; padding: 1em; color: var(--grau1);}
footer a:hover {color: var(--beige3);}

footer .social {display: inline-block; margin-right: 4em;}
footer .social img {width: 1.4em; margin-right: 0.2em;}


.ncoi---blocked {background: black;}
.mod_cookieOptInRevoke {margin: 1em 0 1em 1.5em; float: right;}
.mod_cookieOptInRevoke a {cursor: pointer;}




/*********** RESPONSIV ***********/
/*********** RESPONSIV ***********/
/*********** RESPONSIV ***********/
/*********** RESPONSIV ***********/


/*********** DESKTOP EXTRABREIT ***********/
@media (min-width:1501px) {

html {font-size: 1.1em;}
#container, #footer .inside {max-width: 1360px;}

.hg_grau::before, .hg_beige::before {left: calc(680px - 50vw);}
.hg_grau::after, .hg_beige::after {right: calc(680px - 50vw);}

} /* Ende Desktop extrabreit */


/*********** DESKTOP BREIT ***********/
@media (max-width:1500px) {

.top-header {right: 0;}


} /* Ende Desktop breit */



/*********** DESKTOP MITTEL ***********/
@media (max-width:1300px) {

html {font-size: 15px;}

#header .inside {grid-template-columns: 0 16em 1fr 0;}
.hauptmenu {margin-right: 2em;}

} /* Ende Desktop mittel */


/*********** DESKTOP SCHMAL ***********/
@media (max-width:1260px) {
	
.hg_grau::before, .hg_beige::before {left: -2em;}
.hg_grau::after, .hg_beige::after {right: -2em;}


} /* Ende Desktop schmal */



/*********** TABLET 1 ***********/
@media (max-width:900px) {

#header .inside {grid-template-columns: 0 15em 1fr 0;}
.logo {width: 15em;}
.hauptmenu {font-size: 1em;}
.grid_start {gap: 1.5em;}

.ce_cp_grid_start.flex .grid_tablet_50_50 .hinweis {min-width: 42%;}

} /* Ende Tablet 1 */




/*********** TABLET 2 ***********/
@media (max-width:767px) {


.top-header {padding: 0.3em 3.3em 0;}
.top-header::after {width: 11em;}	
.hauptmenu .level_1 > .first {display: none;}

.teaser,
a.teaser {display: grid; grid-template-columns: 1fr 1fr;}
.teaser h3 {margin-top: 0.5em;}

.ce_cp_grid_start.flex .grid_mobile_100 {display: block;}

.mfa #main {margin-top: 0;}
.mfa h1 {margin: 0;}
.widget-checkbox.visuell {max-width: 28em;}

} /* Ende Tablet 2 */



/*********** TABLET 3 ***********/
@media (max-width:650px) {

#container, #footer .inside {padding: 0 1em;}
.hauptmenu {margin-right: 1em;}
.hg_grau::before, .hg_beige::before {left: -1em;}
.hg_grau::after, .hg_beige::after {right: -1em;}

#header {margin-bottom: 0.5em;}
#header .inside {grid-template-columns: 0 13em 1fr 0;}
.logo {width: 13em;}
.hauptmenu {margin-top: 3.4em; transition: 0.2s;}
header.scroll .hauptmenu {margin-top: 4.4em;}
.hauptmenu li {margin-left: 0.6em;}
.mod_changelanguage {top: 5.5em;}

.slider-control .slider-prev {left: 0;}
.slider-control .slider-next {right: 0;}
	
} /* Ende Tablet 3 */


/*********** MOBIL 1 ***********/
@media (max-width:600px) {

#header {position: relative; top: unset;}
.top-header {right: 1em; padding: 0.2em 2.7em 0;}
 .top-header::after {width: 10em;}
 
.menu-icon {display: block; padding-right: 1em; cursor: pointer;}
.menu-icon:hover {opacity: 0.6;}
.menu-icon img {width: 2em;}

.hauptmenu {position: relative; overflow: visible; margin-right: 0;}
.hauptmenu ul.level_1 {
	display: none;
	position: absolute;
	right: 0;
	margin-top: 1.5em;
	width: 100vw;
    padding: 1em 0;
    text-align: center;
	background: #444d;
	z-index: 2;
}
.hauptmenu li {display: block; margin-right: 0.6em; border-bottom: 1px solid var(--grau2);}
.hauptmenu .level_1 > .first {display: block; border-top: 1px solid var(--grau2);}

.hauptmenu li strong,
.hauptmenu li a {padding: 0.5rem 1rem; font-size: 1.2em;}
.hauptmenu li a {color: white;}
.hauptmenu li a:hover {color: var(--grau3); background: var(--beige1);}

/* Untermenues immer aus */ .mod_navigation ul > li:hover > ul {display: none;} 



} /* Ende Mobil 1 */




/*********** MOBIL 2 ***********/
@media (max-width:500px) {

/* .ce_hyperlink a {margin: 0;} */

footer .social {display: block; margin-right: 0;}
footer nav {display: block;}

} /* Ende Mobil 2 */




/*********** MOBIL 3 ***********/
@media (max-width:400px) {

.teaser,
a.teaser {display: block;}

} /* Ende Mobil 3 */




/********* TOUCHSCREENS *********/
@media (hover: none) {


} /* Ende Touchscreens */
