.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible:not(.cc-hide-focus)+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-group{display:flex;flex-wrap:wrap;justify-content:space-between;align-content:center}.cc-group>label{flex-grow:1;margin:5px 0 5px 10px}.cc-cookies{display:none;width:100%}.cc-detail-btn{padding:8px 10px;line-height:1.2rem}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px}.cc-detail-btn,.cc-detail-btn-details{display:inline-block;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn span:nth-child(2),.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn.cc-active span:nth-child(1),.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn.cc-active span:nth-child(2),.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn:hover,.cc-detail-btn-details:hover{background:rgba(0,0,0,0);color:var(--ccb-detail-clr-hvr, #717171)}
@charset "UTF-8";
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
figcaption,
figure {
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * Add the correct display in IE.
 */
main {
  display: block;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 */
button {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

button,
[type=button],
[type=reset],
[type=submit] {
  /**
   * Remove the inner border and padding in Firefox.
   */
  /**
   * Restore the focus styles unset by the previous rule.
   */
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Show the overflow in Edge.
 */
input {
  overflow: visible;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
  /**
   * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
   */
}
[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  color: inherit; /* 2 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Add the correct display in IE 9-.
 */
menu {
  display: block;
}

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}

.clear {
  height: 0.1px;
  font-size: 0.1px;
  line-height: 0.1px;
  clear: both;
}

.invisible, .fe-unsichtbar {
  width: 0;
  height: 0;
  left: -1000px;
  top: -1000px;
  position: absolute;
  overflow: hidden;
  display: inline;
}

.video_container video, .video_container audio {
  width: 100%;
  height: auto;
}

.responsive {
  position: relative;
  height: 0;
  box-sizing: content-box;
}
.responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.responsive.ratio-169 {
  padding-bottom: 56.25%;
}
.responsive.ratio-1610 {
  padding-bottom: 62.5%;
}
.responsive.ratio-219 {
  padding-bottom: 42.8571%;
}
.responsive.ratio-43 {
  padding-bottom: 75%;
}
.responsive.ratio-32 {
  padding-bottom: 66.6666%;
}

/**
 * Set the global `box-sizing` state to `border-box`.
 *
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 * paulirish.com/2012/box-sizing-border-box-ftw
 */
html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

/* HTML-Tags und Klassen */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  color: #747474;
  overflow-x: hidden;
}

::-moz-selection {
  background-color: hsl(120deg, 7%, 73%);
  color: #fff;
}

::selection {
  background-color: hsl(120deg, 7%, 73%);
  color: #fff;
}

a {
  color: inherit;
  -webkit-text-decoration-color: hsl(120deg, 7%, 73%);
  text-decoration-color: hsl(120deg, 7%, 73%);
  text-decoration-offset: 0.2em;
  text-underline-offset: 0.25em;
  text-decoration-thickness: 1px;
}
a:hover {
  color: hsl(120deg, 10%, 60%);
}

.ce_text p:first-child,
.ce_text figure:first-child {
  margin-top: 0;
}

blockquote {
  color: hsl(120deg, 10%, 60%);
  margin: 0;
  font-size: 1.333em;
}
blockquote cite {
  display: inline-block;
  margin-left: 0.5em;
  color: #747474;
  font-size: 1rem;
}

figure {
  margin: 0;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

iframe {
  display: block;
  border: 0;
}

hr {
  clear: both;
  border: 0;
  border-bottom: 1px solid #747474;
  margin: 1rem 0;
}

.blocklink, .download-element a {
  display: block;
}

.float_left,
.float_right {
  margin-bottom: 0.5555555556rem;
}

.float_above,
.float_below {
  text-align: center;
}

@media (min-width: 720px) {
  .float_left {
    float: left;
    margin-right: 1.1111111111rem;
    max-width: 48%;
  }
  .float_right {
    float: right;
    margin-left: 1.1111111111rem;
    max-width: 48%;
  }
}
.btn, .ce_hyperlink.button a, button.submit, a.toplink {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: hsl(120deg, 7%, 73%);
  color: #fff;
  text-decoration: none;
  padding: 0.25em 1.1111111111rem;
  border: 0;
}
@media (min-width: 720px) {
  .btn, .ce_hyperlink.button a, button.submit, a.toplink {
    display: inline-block;
    width: unset;
  }
}
.btn:hover, .ce_hyperlink.button a:hover, button.submit:hover, a.toplink:hover {
  background-color: #747474;
}

.visible {
  width: auto;
  height: auto;
  left: auto;
  top: auto;
  position: unset;
  overflow: visible;
  display: block;
}

.crisp {
  image-rendering: -webkit-pixelated;
  image-rendering: pixelated;
  image-rendering: -webkit-crisp-edges;
  image-rendering: -moz-crisp-edges;
  image-rendering: crisp-edges;
}

table {
  border-collapse: collapse;
}

td, th {
  text-align: left;
  vertical-align: top;
  padding: 0.4em 1.1111111111rem;
  border-top: 1px solid #BBCCBD;
}
td.col_first, td:first-child, th.col_first, th:first-child {
  padding-left: 0;
}
td.col_last, td:last-child, th.col_last, th:last-child {
  padding-right: 0;
}
.row_0 td, .row_0 th {
  border-top: 0;
}
thead td, thead th {
  border-top: 0;
  border-bottom: 1px solid #BBCCBD;
}
td p, th p {
  margin: 0;
}

/* Webfonts*/
/* open-sans-800 - latin */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 800;
  src: local(""), url("../../files/theme-feddersen/dist/fonts/open-sans-v29-latin-800.woff2") format("woff2"), url("../../files/theme-feddersen/dist/fonts/open-sans-v29-latin-800.woff") format("woff"); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
html {
  font-family: "museo-sans", Avenir, "Century Gothic", Corbel, "URW Gothic", source-sans-pro, sans-serif;
  font-weight: 100;
}
@media (min-width: 720px) {
  html {
    font-size: 1.0625rem;
  }
}
@media (min-width: 1500px) {
  html {
    font-size: 1.125rem;
  }
}

b, strong {
  font-weight: 700;
}

h1, h2, h3, h4, .toggler, h5, h6,
.h1, .h2, .h3, .h4, .h5 {
  margin-top: 1.5em;
  margin-bottom: 1rem;
}
h1 + *, h2 + *, h3 + *, h4 + *, .toggler + *, h5 + *, h6 + *,
.h1 + *, .h2 + *, .h3 + *, .h4 + *, .h5 + * {
  margin-top: 0;
}

h1, h2, h3,
.h1, .h2, .h3 {
  line-height: 1.2;
}

h1, .h1 {
  display: inline-block;
  font-size: 2.2222222222em;
  font-weight: 300;
  text-transform: uppercase;
}
h1::after, .h1::after {
  content: "";
  display: block;
  width: 3.5em;
  height: 0;
  border-bottom: 1px solid hsl(120deg, 7%, 73%);
  margin-top: 0.8em;
}

h2, .h2 {
  font-size: 2.2222222222em;
  font-weight: 300;
  text-transform: lowercase;
}

h3, .h3,
h4,
.toggler, .h4 {
  font-size: 1em;
  font-weight: 500;
  margin-bottom: 0;
}

ul, ol {
  padding-left: 1.1111111111rem;
}

.pagenumber {
  font-family: "Open Sans", sans-serif;
  font-size: 25vw;
  font-weight: 800;
  color: hsl(120deg, 7%, 79%);
  line-height: 0.8;
  padding-left: 0 !important;
  margin: 0;
  margin-top: -0.07em;
}
@media (min-width: 720px) {
  #start .pagenumber {
    position: absolute;
    bottom: 19vw;
  }
}
@media (min-width: 1020px) {
  .pagenumber {
    font-size: 13.8888888889em;
  }
}

.color-0 {
  color: hsl(120deg, 10%, 60%);
}

.color-1 {
  color: hsl(120deg, 7%, 73%);
}

.color-2 {
  color: hsl(120deg, 7%, 79%);
}

.color-3 {
  color: hsl(120deg, 7%, 88%);
}

.white {
  color: #fff;
}

/* Layout */
[id=header] .inside {
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
}

[id=footer] .inside, [id=header] {
  padding-left: 5vw;
  padding-right: 5vw;
  width: 100%;
}
@media (min-width: 1100px) {
  [id=footer] .inside, [id=header] {
    padding-left: 3.3333333333rem;
    padding-right: 3.3333333333rem;
  }
}

html {
  scroll-padding-top: 170px;
}

[id=wrapper] {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: calc(136px + 2rem);
}

[id=header] {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 110;
  background: rgba(222, 227, 222, 0.6);
  background: hsl(120deg, 7%, 88%);
  color: #aebaae;
  padding-top: 1rem;
  padding-bottom: 1rem;
  transition: 0.3s;
}
[id=header] .inside {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  text-align: center;
}
@media (min-width: 1020px) {
  [id=header] .inside {
    text-align: left;
  }
}

a#logo {
  margin-right: auto;
}

#logo img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top;
  object-position: top;
  height: 136px;
  transition: 0.3s;
}

.custom {
  width: 100%;
}

[id=footer] {
  background: hsl(120deg, 7%, 73%);
  color: #fff;
  font-weight: 300;
  width: 100%;
}
[id=footer] a {
  color: inherit;
  text-decoration: none;
}
[id=footer] .inside {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
[id=footer] .ce_text {
  text-align: center;
}
[id=footer] .ce_text ul {
  color: #747474;
  font-size: 1.6666666667em;
  text-transform: uppercase;
  padding: 0;
  margin: 1.5em 0;
}
[id=footer] .ce_text li {
  display: inline-block;
}
[id=footer] .ce_text li:not(:first-child)::before {
  content: "und ";
  color: #fff;
}
[id=footer] .ce_text p {
  display: inline-block;
  margin: 0;
}
[id=footer] .ce_text p:not(:first-child)::before {
  content: "·";
  margin-right: 0.3em;
}

[id=container] {
  flex: 1;
  width: 100%;
  line-height: 1.2222222222;
}
[id=container] > * {
  box-sizing: border-box;
}

[id=main] > .inside {
  padding-bottom: 6vh;
}
[id=main] .mod_article > * {
  padding-left: 5%;
  padding-right: 5%;
}
@media (min-width: 1020px) {
  [id=main] .mod_article > * {
    padding-left: 15%;
  }
  [id=main] .mod_article h1 {
    margin-left: -10%;
  }
}
@media (min-width: 1625px) {
  [id=main] .mod_article > * {
    padding-left: calc((100vw - 1300px) / 2 + 4.5rem);
    padding-right: calc((100vw - 1300px) / 2 - 4.5rem);
  }
  [id=main] .mod_article h1 {
    margin-left: -12rem;
  }
}

.contao-cookiebar {
  --ccb-backdrop: rgba(0, 0, 0, .75);
  --ccb-anim-duration: .5s;
  --ccb-checked-clr: hsl(120deg, 10%, 60%);
  --ccb-checked-bg: hsl(120deg, 7%, 88%);
  --ccb-unchecked-clr: #9c9b99;
  --ccb-unchecked-bg: #fff;
  --ccb-disabled-clr: #c8c7c5;
  --ccb-disabled-bg: #f4f4f4;
  --ccb-focus-clr: #00a4f4;
}

.ce_form {
  margin: 1.1111111111rem 0;
}

[id=main] .widget {
  margin: 1em 0;
}

label {
  display: block;
}

.textfeld, textarea, input.text,
input.captcha {
  width: 100%;
  border: 1px solid hsl(120deg, 7%, 73%);
  border-radius: 0;
  padding: 0.5555555556rem 1.1111111111rem;
}

button.submit {
  cursor: pointer;
}

span.mandatory {
  color: hsl(120deg, 7%, 73%);
  margin-left: 0.25em;
}

p.error {
  color: #f34910;
  margin-bottom: 0.25em;
}

input.error {
  border-color: #f34910 !important;
}

.checkbox_container,
.radio_container {
  padding: 0;
  border: 0;
}
.checkbox_container span,
.radio_container span {
  display: flex;
}
.checkbox_container span input,
.radio_container span input {
  width: 1em;
  height: 1.3333em;
  margin-right: 1em;
}

.card {
  position: relative;
  -webkit-perspective: 1000px;
  perspective: 1000px;
}
.card .ce_text {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: 0.6s;
}
.card h1 {
  margin-left: 0 !important;
  margin-top: 0;
  font-size: 1.6em;
}
.card .front {
  -webkit-transform: rotateY(0deg);
  transform: rotateY(0deg);
  position: absolute;
  width: 100%;
}
.card .front figure {
  -webkit-filter: grayscale(0.9);
  filter: grayscale(0.9);
  margin: 1em auto 0;
}
.card .back {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
  font-size: 0.8888888889rem;
}
.card .back figure {
  margin-top: 1em;
  -webkit-transform: scaleX(-100%);
  transform: scaleX(-100%);
}
.card:hover .front {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}
.card:hover .back {
  -webkit-transform: rotateY(0deg);
  transform: rotateY(0deg);
}
@media (min-width: 500px) {
  .card .ce_text {
    display: flex;
    justify-content: space-between;
  }
  .card figure {
    width: 42%;
    max-width: 260px;
    flex-shrink: 0;
  }
}
@media (min-width: 1020px) {
  .card h1 {
    font-size: 2.2222222222em;
  }
}

.wrap {
  position: relative;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow: hidden;
}
.wrap.bg-color-1 {
  background: hsl(120deg, 7%, 73%);
}
.wrap.bg-color-2 {
  background: hsl(120deg, 7%, 79%);
}
.wrap.bg-color-3 {
  background: hsl(120deg, 7%, 88%);
}
.wrap.hasNoImage {
  padding-bottom: 25vw;
}
.wrap.hasImage .pagenumber {
  position: absolute;
  top: 0;
}
.wrap > * {
  padding-left: 5%;
  padding-right: 5%;
}
@media (min-width: 1020px) {
  .wrap > * {
    padding-left: 15%;
  }
}
@media (min-width: 1625px) {
  .wrap > * {
    padding-left: calc((100vw - 1300px) / 2 + 4.5rem);
    padding-right: calc((100vw - 1300px) / 2 - 4.5rem);
  }
}
.wrap > figure {
  padding: 0;
}
.wrap > figure img {
  width: 100%;
}

.ecke {
  position: relative;
  min-height: calc(20vw + 2px);
  border-bottom: 1px solid #fff;
  margin-top: -20vw;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.ecke svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 20vw;
}
.ecke :not(svg) {
  position: relative;
}
.ecke + .cols h2 {
  margin-top: 0;
}

@media (min-width: 720px) {
  .cols {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    display: flex;
    justify-content: space-between;
  }
  .cols > .ce_image {
    align-self: center;
  }
  .cols > * {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    flex-basis: 33%;
    flex-grow: 1;
  }
  .cols > *.col-66 {
    flex-basis: 66%;
  }
}

.ce_text > div {
  color: hsl(120deg, 10%, 60%);
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
  padding: 0.5em 0.75em;
  border: 3px solid;
  margin: 1rem 0;
}

.adresse {
  position: relative;
  background: #f4f6f4;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  padding: 2em 4em 1em;
  border: 2px solid #fff;
  outline: 1px solid hsl(120deg, 10%, 60%);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  margin: 1em auto;
}
.adresse::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4em;
  height: 4em;
  background: url("../../files/theme-feddersen/dist/img/paperclip.svg") no-repeat center/contain;
  pointer-events: none;
  -webkit-transform: translate(-40%, -50%);
  transform: translate(-40%, -50%);
}

.v-space {
  width: 100%;
  margin: 0;
}

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

.download-element {
  padding: 0;
  background-color: hsl(120deg, 7%, 88%);
  background-image: url(../../files/theme-feddersen/dist/img/icn-download-blue.svg);
  background-position: 0.5555555556rem center;
  background-size: 1.5em;
}
.download-element a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
  padding-left: 3rem;
}
.download-element .size {
  font-size: 0.8888888889rem;
  padding-left: 0.5em;
  border-left: 1px solid hsl(120deg, 7%, 73%);
  margin-left: 0.5em;
}

.ce_hyperlink {
  margin: 1.1111111111rem 0;
}
.ce_hyperlink a {
  display: block;
}
.ce_hyperlink a[href*=http]:before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url(../../files/theme-feddersen/dist/img/icn-externer-link.svg) no-repeat left;
  margin-right: 0.2em;
}
.spalte-rechts .ce_hyperlink.button {
  text-align: center;
}

/* Akkordeon */
.toggler {
  padding-left: 1.6em;
  cursor: pointer;
  transition: 0.4s;
  outline: 0;
}
.toggler .ui-icon {
  position: absolute;
  margin-left: -1.6em;
  margin-top: 0.2em;
  width: 1.0588235294em;
  height: 1.0588235294em;
  background: url(../../files/theme-feddersen/dist/img/icn-toggle-oben.svg) no-repeat left/contain;
  vertical-align: middle;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  transition: 0.3s;
}
.toggler.ui-state-active .ui-icon {
  -webkit-transform: none;
  transform: none;
}

.accordion {
  padding-bottom: 2em;
}

.ce_gallery ul {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 1.1111111111rem -0.5555555556rem 1.1111111111rem 0;
}
@media (max-width: 1020px) {
  .ce_gallery ul {
    justify-content: space-around;
  }
}
.ce_gallery li {
  list-style: none;
  margin-right: 0.5555555556rem;
}
.ce_gallery li:not(:last-child) {
  margin-bottom: 0.5555555556rem;
}
.ce_gallery img {
  width: 100%;
}

.pagination {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  font-size: 0.8888888889rem;
}
.pagination ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
}
.pagination a, .pagination strong {
  display: inline-block;
  text-align: center;
  height: 2em;
  line-height: 2;
  text-decoration: none;
  background: hsl(120deg, 7%, 79%);
  color: hsl(120deg, 7%, 73%);
  padding: 0 0.75em;
  margin-right: 5px;
}
.pagination a:hover {
  background-color: black;
}
.pagination strong {
  background-color: hsl(120deg, 7%, 73%);
  color: #fff;
}

/* Druckversion */
@media print {
  #header,
#footer,
.mobile_menu {
    display: none !important;
  }
}
/* Ende Druckversion */
nav ul,
nav li,
.mod_articlelist ul,
.mod_articlelist li {
  padding: 0;
  margin: 0;
  list-style: none;
}
nav a, nav strong,
.mod_articlelist a,
.mod_articlelist strong {
  display: block;
  color: inherit;
  text-decoration: none;
  font-weight: inherit;
}
nav a.nav-disabled,
.mod_articlelist a.nav-disabled {
  pointer-events: none;
}

button#mbtn,
button#toggle-navi {
  background-color: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  position: relative;
  z-index: 110;
  width: 50px;
  height: 100%;
  overflow: hidden;
  margin-left: 3.3333333333rem;
  display: flex;
  align-items: center;
}
button#mbtn svg,
button#toggle-navi svg {
  width: 200%;
  height: 100%;
  vertical-align: middle;
  flex-shrink: 0;
  transition: 0.3s;
}
.menu-open button#mbtn svg,
.menu-open button#toggle-navi svg {
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
button#mbtn line,
button#toggle-navi line {
  stroke: hsl(120deg, 7%, 73%);
  stroke-width: 4px;
  transition: 0.3s;
}
@media (min-width: 1020px) {
  button#mbtn,
button#toggle-navi {
    display: none;
  }
}

@media (max-width: 1019px) {
  .nav-overlay {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: fixed;
    z-index: 100;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 100%;
    will-change: transform;
    -webkit-transform: translate3d(0, -100%, 0) scale3d(1, 1, 1);
    transform: translate3d(0, -100%, 0) scale3d(1, 1, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: 0.5s;
    background: hsl(120deg, 10%, 60%);
    color: #fff;
    font-size: 1.6em;
  }
  .menu-open .nav-overlay {
    -webkit-transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1);
    transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1);
    opacity: 1;
  }
}
@media (min-width: 1020px) {
  .nav-overlay {
    display: flex;
  }
}

.mobile_menu_trigger {
  cursor: pointer;
  position: relative;
  z-index: 110;
  width: 50px;
  height: 100%;
  overflow: hidden;
  margin-left: 3.3333333333rem;
  display: flex;
  align-items: center;
}
.mobile_menu_trigger svg {
  width: 200%;
  height: 100%;
  vertical-align: middle;
  flex-shrink: 0;
}
.mobile_menu_trigger line {
  stroke: hsl(120deg, 7%, 73%);
  stroke-width: 4px;
  transition: 0.3s;
}
@media (min-width: 1020px) {
  .mobile_menu_trigger {
    display: none;
  }
}
.mobile_menu_active .mobile_menu_trigger svg {
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.nav-impr .level_1 {
  display: flex;
  font-size: 1rem;
}
.nav-impr .level_1 > li {
  padding: 0 0.5em;
}
.nav-impr .level_1 > li.first {
  padding-left: 0;
}
.nav-impr .level_1 > li.last {
  padding-right: 0;
}

[id=header] .nav-main {
  margin: 0;
  text-transform: uppercase;
  overflow: visible;
}
[id=header] .nav-main a, [id=header] .nav-main strong {
  white-space: nowrap;
}
@media (min-width: 1020px) {
  [id=header] .nav-main li {
    margin-left: 1.8vw;
  }
}
@media (min-width: 1100px) {
  [id=header] .nav-main li {
    margin-left: 2.5vw;
  }
}
@media (min-width: 1300px) {
  [id=header] .nav-main li {
    margin-left: 2.75rem;
  }
}
@media (max-width: 1019px) {
  [id=header] .nav-main a, [id=header] .nav-main strong {
    color: inherit;
    padding: 3vh 1em;
    transition: 0.3s;
  }
  [id=header] .nav-main.mod_articlelist li::after {
    content: "";
    display: block;
    width: 3em;
    height: 0;
    border-bottom: 1px solid hsl(120deg, 7%, 73%);
    margin: auto;
  }
  [id=header] .nav-main li.active a, [id=header] .nav-main li.active strong {
    font-weight: normal;
  }
}
@media (min-width: 1020px) {
  [id=header] .nav-main {
    color: hsl(120deg, 10%, 60%);
    font-size: 0.8888888889rem;
  }
  [id=header] .nav-main ul {
    display: flex;
    height: 100%;
  }
  [id=header] .nav-main a, [id=header] .nav-main strong {
    font-weight: normal;
    padding: 0.3em 0.6em;
    transition: 0.4s;
  }
  [id=header] .nav-main a:hover {
    color: #747474;
  }
  [id=header] .nav-main li.active a, [id=header] .nav-main li.active strong {
    background: hsl(120deg, 10%, 60%);
    color: #fff;
  }
}
@media (min-width: 1020px) and (max-width: 1200px) {
  [id=header] .nav-main li.start {
    display: none;
  }
}

.nav-footer {
  font-weight: 500;
}
.nav-footer a, .nav-footer strong {
  display: block;
  padding: 0.5em 0;
  text-align: center;
}
.nav-footer a span, .nav-footer strong span {
  display: inline-block;
  padding-bottom: 0.25em;
  border-bottom: 1px solid transparent;
}
.nav-footer a:hover span {
  border-color: hsl(120deg, 7%, 73%);
}
.nav-footer strong {
  color: hsl(120deg, 7%, 73%);
}
.nav-footer .level_1 > li > a.active span, .nav-footer .level_1 > li > a.trail span, .nav-footer .level_1 > li > strong.active span, .nav-footer .level_1 > li > strong.trail span {
  border-color: currentColor;
}
.nav-footer .level_2 > li > a.active span, .nav-footer .level_2 > li > a.trail span, .nav-footer .level_2 > li > strong.active span, .nav-footer .level_2 > li > strong.trail span {
  font-weight: bold;
}
@media (min-width: 500px) {
  .nav-footer a, .nav-footer strong {
    display: inline-block;
  }
  .nav-footer .level_1 {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 720px) {
  .nav-footer .level_1 {
    justify-content: space-around;
  }
}
@media (min-width: 1020px) {
  .nav-footer .level_1 {
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-left: -1.1111111111rem;
    margin-right: -1.1111111111rem;
  }
  .nav-footer a, .nav-footer strong {
    padding: 0.5em 1.1111111111rem;
  }
}

.headroom--unpinned {
  scroll-padding-top: 94px;
}
.headroom--unpinned #header {
  padding-top: 8px;
  padding-bottom: 8px;
}
.headroom--unpinned #logo img {
  height: 78px;
}
/*# sourceMappingURL=../maps/theme.css.map */

