/* Fonts */
/**
 * Open Sans: https://fonts.google.com/specimen/Exo+2?selection.family=Exo+2:300,500,600,700
 * 400  : regular
 * 600  : semi-bold
 * 700  : bold
 */
@import url('//fonts.googleapis.com/css?family=Open+Sans:400,600,700');

/**
 * Colour palette
 * #ffffff : White
 */


/* Standardschrift */
html {
    font-size: 100%;
}
body {
    /* Standard: Lauftext */
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.65;
    color: #4a4a4a;
}

/* Sticky Footer: https://codepen.io/dezertdezine/pen/zKjggy */
html, body {
    height: 100%;
}
body {
    display: flex;
    flex-direction: column;
}
body > .anchor {
    flex-shrink: 0;
}
.wrapper {
    flex: 1 0 auto;
    overflow: hidden;
}
.footer {
    flex-shrink: 0;
}

/* Grid-Warnings */
.container .container {
    background-color: rgba(189, 0, 0, 0.25);
    color: rgba(255, 255, 255, 0.5);
    position: relative;
}
.container .container::before {
    content: "Fluid Grid-Layout innerhalb Spalte ist nicht erlaubt.";
    position: absolute;
    left: 10px;
    top: 10px;
    background: red;
    color: white;
    display: inline-block;
    padding: .25em .5em;
    font-weight: bold;
    border-radius: 2px;
}

/* Helpers */
.nowrap {
    white-space: nowrap;
}
.clearfix::before,
.clearfix::after {
    content: "";
    display: table;
    clear: both;
}
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}
input[type="radio"].visuallyhidden {
    position: absolute;
    opacity: 0;
    top: 50%;
}
.invisible {
    visibility: hidden;
}
.hidden {
    display: none;
}
img {
    /*width: 100%;*/
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.abbr[title] {
    text-decoration: none;
}
.center {
    text-align: center;
}
.content {
    padding: 0;
    margin-top: 0;
    margin-bottom: 0;
}
fieldset {
    border: 0;
    padding: 0;
}
address {
    font-style: normal;
}
strong, b {
    font-weight: 600;
}

/* Links */
a {
    text-decoration: none;
    color: #94C01F;
}

a:hover {
    text-decoration: underline;
}

.heading__link:hover,
.navigation__link:hover,
.navigation__level2-link:hover,
.navigation__level3-link:hover,
.link--arrow:hover {
    text-decoration: none;
}

.link--arrow {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.05em;
    transition: color 0.3s ease;
    font-size: 0.85em;
}

.link--arrow:hover {
    color: #1354A0;
}

.link--arrow::before {
    content: "\f178";
    font-family: "Font Awesome 5 Pro";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 400;
    padding-left: 0;
    padding-right: 0.5em;
    transition: padding 0.3s ease;
}

.link--arrow:hover::before {
    padding-left: 0.25em;
    padding-right: 0.25em;
}

/* Tabellen */
.table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 1em;
}

.table::-webkit-scrollbar {
    height: 1em;
    width: 1em;
}
.table::-webkit-scrollbar-track {
    background: #fff;
}
.table::-webkit-scrollbar-thumb {
    background: #000;
    border: 0.25em solid #fff;
    border-radius: .5em;
}
.contenttable {
    border-collapse: collapse;
    width: 100%;
}
.contenttable caption {
    margin-bottom: 1em;
    text-align: left;
    display: none;
}
.contenttable td {
    width: 50%;
    background-size: 20px 100%;
}
.contenttable td,
.contenttable th {
    padding: 0em 0.75em 0em 0;
    border: 0;
    transition: background-color .125s;
    vertical-align: top;
}
.contenttable--no-borders td,
.contenttable--no-borders th {
    border: 0;
    padding-left: 0;
}
.contenttable p {
    margin: 0;
}

.contenttable .contenttable {
    margin-top: 1em;
}
.contenttable .contenttable tbody tr td {
    padding-bottom: 0;
    padding-top: 0;
}
.contenttable .contenttable tbody tr td:first-child {
    width: 25%;
}


/* Tabelle Mouseover */
/* .contenttablecell-hover {
    background-color: #f9f9f9;
}
th.contenttablecell-hover.contenttablecell-hover--vertical,
th.contenttablecell-hover.contenttablecell-hover--horizontal {
    background-color: #efefef;
}
.contenttablecell-hover--horizontal {}
.contenttablecell-hover--vertical {}
.contenttablecell-hover--horizontal.contenttablecell-hover--vertical {
    background-color: #efefef;
} */

/* Header */
.header__top {
    position: relative;
}

.header__top__metanav {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1400px;
    margin: auto;
    z-index: 1;
}

.header__top__metanav > .content:first-child {
    padding: 0 20px;
}

.header__logo__wrap {
    display: flex;
    justify-content: flex-end;
}

.header__logo__link {
    display: block;
    width: 25%;
    max-width: 250px;
    margin-top: 2%;
}

.header > .content > .col12 {
    padding-left: 0;
}

.content__main {
    margin-top: -13vw;
    min-height: 13vw;
    z-index: 1;
    position: relative;
}

.content__main::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: calc((100vw - 100%)/-2);
    background-color: #fff;
    z-index: -1;
}

.content__main__content {
    padding-bottom: 1em;
    padding-left: 7.5em;
}

.content__sidebar > .content-section:first-child,
.content__sidebar > .content-section.content-section--no-paddings:first-child + .content-section {
    padding-top: 0 !important;
}

.content__sidebar > .content-section:first-child .box--green,
.content__sidebar > .content-section--no-paddings:first-child + .content-section .box--green {
    transform: translateY(-50%);
    margin-bottom: -4.5em;
}


/* Banner(-Slider) */
.banner {
    position: relative;
    z-index: 1;
}
.banner-slider {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 0;

    /*padding-bottom: 40%;*/
    padding-bottom: 32%;
    z-index: -1;

    /* 900/1600*100 */
    /* padding-bottom: 56.25%; */ /* Bei Anpassung beachte .banner-slider__element-wrap--video .plyr__controls */
}
.banner-slider::after {
    content: "";
    background-image: url(../images/dreiecke-header.svg);
    background-size: contain;
    background-position: 65% center;
    background-repeat: no-repeat;

    position: absolute;
    top: 0;
    right: 55%;
    bottom: 13vw;
    width: 100%;
    max-width: 1400px;
    transform: translateX(50%);
}
.banner-slider--background-transparent { background-color: transparent; color: #000000 }
.banner-slider--background-white { background-color: #ffffff; color: #000000 }
.banner-slider--background-black { background-color: #000000; color: #ffffff }

.banner-slider--keep-ratio {}
.banner-slider--fix-height {
    padding-bottom: 0;
    min-height: 450px;
}
.banner-slider--content-always-visible {
    padding-bottom: 0;
    height: 450px;
    max-height: calc(100vh - 250px);
}

[data-banner-slider-text]::before {
    content: attr(data-banner-slider-text);
    font-size: 2.185em;
    line-height: 1.5;
    color: #94C01F;

    position: absolute;
    top: 0;
    right: 50%;
    bottom: 13vw;
    width: 100%;
    max-width: 1400px;
    transform: translateX(50%);
    text-align: right;
    z-index: 1;
    padding: 0 20px;

    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-top: calc(67px + 2.5em);
    box-sizing: border-box;
}

.banner-slider__elements {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 1000%;
    transition: all .75s cubic-bezier(0.79, 0, 0.36, 1);
}
.banner-slider__figure {
    width: 10%;
    margin: 0;
    float: left;
    height: 100%;
    position: relative;
}
.banner-slider__element-wrap {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-size: cover;
    background-position: 50% 50%;

    /*background-size: auto 100%;
    background-position: calc((100vw - 1400px)/2 - 200px);*/
    background-repeat: no-repeat;
}

.banner-slider__element-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-image: linear-gradient(90deg, #f2f2f2, #d8d8d8, #cdcdcd, #e0e0e0);
    z-index: -1;
}
.banner-slider__element-wrap--image-orientation-middle {}
.banner-slider__element-wrap--image-orientation-top { background-position: 50% top }
.banner-slider__element-wrap--image-orientation-bottom { background-position: 50% bottom }

/* https://jsfiddle.net/c6Lj9ek2/7/ */
.banner-slider__element-wrap--video {
    right: auto;
    bottom: auto;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    transform: translateX(-50%) translateY(-50%);
}
.banner-slider__element-wrap--video-orientation-middle {}
.banner-slider__element-wrap--video-orientation-top {
    top: 0;
    transform: translateX(-50%) translateY(0);
}
.banner-slider__element-wrap--video-orientation-bottom {
    top: auto;
    transform: translateX(-50%) translateY(0);
    bottom: 0;
}
.banner-slider__element-wrap--video .plyr {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.banner-slider__element-wrap--video .plyr__controls {
    display: none;
}
.banner-slider__element {
    display: none;
}
.banner-slider__element--image {}
.banner-slider__element--video {
    position: absolute;
    display: block;
    border: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.banner-slider__caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: center;
}
.banner-slider__caption-text {
    color: #ffffff;
    padding: 2.5em 0 1.5em;
    width: 100%;
    max-width: 1400px;
    font-weight: 600;
    font-size: 2.5em;
    line-height: 1.5em;
    letter-spacing: 0.075em;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: content-box;
}
.banner-slider__video-button {
    background-color: rgb(0, 0, 0);
    border: 0;
    width: 3.6em;
    display: block;
    background-image: url(../images/icon-play.svg);
    background-repeat: no-repeat;
    background-size: 1em;
    background-position: center;
    cursor: pointer;
    outline: none;
    padding: 1em 1.5em;
    font: inherit;
}
.banner-slider__video-button--playing {
    background-image: url(../images/icon-pause.svg);
}
.banner-slider__arrows {
    position: absolute;
    bottom: 0;
    right: 0;
    display: inline-block;
    z-index: 10;
}
.banner-slider__arrow-item {
    float: left;
}
.banner-slider__arrows-list {
    display: none;
    margin: 0;
    padding: 0;
    list-style: none;
}
.banner-slider__arrow-button {
    background-color: #000000;
    padding: 2em 2em 2em;
    display: block;
    cursor: pointer;
    position: relative;
}
.banner-slider__arrow-button::before {
    content: "";
    background-image: url(../images/icon-arrow-left--white.svg);
    width: 1.5em;
    height: 1em;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
}
.banner-slider__arrow-button::after {
    content: "";
    position: absolute;
    height: 2em;
    right: 0;
    top: 1.5em;
    width: 0.03125em;
    background-color: white;
}
.banner-slider__arrow-button--next::before {
    background-image: url(../images/icon-arrow-right--white.svg);
}
.banner-slider__arrow-button--next::after {
    right: auto;
    left: 0;
}

.banner-slider__radio-nr-1:checked ~ .banner-slider__arrows .banner-slider__arrows-list--1 { display: block }
.banner-slider__radio-nr-1:checked ~ .banner-slider__elements { transform: translateX(0%); }
.banner-slider__radio-nr-2:checked ~ .banner-slider__arrows .banner-slider__arrows-list--2 { display: block }
.banner-slider__radio-nr-2:checked ~ .banner-slider__elements { transform: translateX(-10%); }
.banner-slider__radio-nr-3:checked ~ .banner-slider__arrows .banner-slider__arrows-list--3 { display: block }
.banner-slider__radio-nr-3:checked ~ .banner-slider__elements { transform: translateX(-20%); }
.banner-slider__radio-nr-4:checked ~ .banner-slider__arrows .banner-slider__arrows-list--4 { display: block }
.banner-slider__radio-nr-4:checked ~ .banner-slider__elements { transform: translateX(-30%); }
.banner-slider__radio-nr-5:checked ~ .banner-slider__arrows .banner-slider__arrows-list--5 { display: block }
.banner-slider__radio-nr-5:checked ~ .banner-slider__elements { transform: translateX(-40%); }
.banner-slider__radio-nr-6:checked ~ .banner-slider__arrows .banner-slider__arrows-list--6 { display: block }
.banner-slider__radio-nr-6:checked ~ .banner-slider__elements { transform: translateX(-50%); }
.banner-slider__radio-nr-7:checked ~ .banner-slider__arrows .banner-slider__arrows-list--7 { display: block }
.banner-slider__radio-nr-7:checked ~ .banner-slider__elements { transform: translateX(-60%); }
.banner-slider__radio-nr-8:checked ~ .banner-slider__arrows .banner-slider__arrows-list--8 { display: block }
.banner-slider__radio-nr-8:checked ~ .banner-slider__elements { transform: translateX(-70%); }
.banner-slider__radio-nr-9:checked ~ .banner-slider__arrows .banner-slider__arrows-list--9 { display: block }
.banner-slider__radio-nr-9:checked ~ .banner-slider__elements { transform: translateX(-80%); }
.banner-slider__radio-nr-10:checked ~ .banner-slider__arrows .banner-slider__arrows-list--10 { display: block }
.banner-slider__radio-nr-10:checked ~ .banner-slider__elements { transform: translateX(-90%); }

/* Video Elemente */
.video {
    margin: 0;
    padding: 0;
}
.video__video {
    max-width: 100%;
    height: 0;
}
.video__video:not(.plyr__video-wrapper) {
    /**
     * plyr greift nicht auf iPhones für mp4
     * Es wird das normale HTML5 Video-Tag eingsetzt.
     * Deshalb höhe auf auto, statt 0, damit Video sichtbar.
     */
    height: auto;
}
.plyr__play-large {
    cursor: pointer;
    border: 0;
    background-color: black;
    padding: 26px;
    border-radius: 0;
    outline: 0;
}
.plyr--video .plyr__controls {
    padding-top: 10px;
}

/* Navigation: Main */
.navigation {
    font-weight: 600;
    color: #fff;
    font-size: 1.375em;
    line-height: 1.36em;
}

.navigation__list {
    float: none !important;
    list-style: none;
    padding: 0;
    margin: 0;

    display: flex;
    justify-content: flex-start;
    align-items: center;

    position: relative;
}

.navigation__list::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: calc((100vw - 100%)/-2);
    background: linear-gradient(140.64deg, #94C01F 0%, #3C9401 100%);
}

.navigation__item {
    float: none;
    position: relative;
}
.navigation__link {
    display: inline-block;
    color: inherit;
    text-decoration: none;
    position: relative;
    padding: 0.75em 1em 0.75em;
}
.navigation__item:not(.navigation__item--active):hover .navigation__link {
    background-color: #3C9401;
    color: inherit;
}
.navigation__item--active .navigation__link {
    background-color: #3C9401;
    color: inherit;
}

.navigation__item:first-child .navigation__link {
    padding-left: 1.25em;
}

/* Navigation: Main > Sub */
.navigation__level2 {
    display: none;
    position: absolute;
    left: 0;
    top: calc(100% + 0.53em);

    list-style: none;
    padding: 0;
    margin: 0;
    background-color: #70625A;
    min-width: 350px;
    color: #fff;
    text-transform: none;
}

.navigation__level2::before {
    content: "";
    display: block;
    width: 0.5em;
    height: 0.5em;
    transform: rotate(45deg);
    transform-origin: top right;
    position: absolute;
    top: 0;
    left: 1em;
    background-color: inherit;
    z-index: -1;
}

.navigation__level2::after {
    content: "";
    display: block;
    position: absolute;
    top: -0.53em;
    left: 0;
    right: 0;
    height: 0.71em;
}

.navigation__item:hover > .navigation__level2,
.navigation__item.hovered > .navigation__level2 {
    display: block;
}
.navigation__level2-item {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(255,255,255,0.5);
}
.navigation__level3-item {
    border-top: 1px solid rgba(255,255,255,0.5);
}
.navigation__level2-link, .navigation__level3-link {
    display: block;
    color: inherit;
    text-decoration: none;
    background-color: inherit;
    white-space: nowrap;
    padding-left: 1em;
    padding-right: 1em;
    padding-top: .75em;
    padding-bottom: .75em;
    width: 100%;
}
.navigation__level3-link {
    padding-left: 2em;
}
.navigation__level3-text {
    font-weight: 400;
    font-size: 0.82em;
}
.navigation__level2-link--has-subnav {
    width: calc(100% - 3.625rem);
}

.navigation__level2-icon {
    width: 3.625rem;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 1.5em;
    font-size: 0.65em;
    font-weight: normal;
    cursor: pointer;
}

.navigation__level2-link:hover, .navigation__level2-link:hover + .navigation__level2-icon,
.navigation__level3-item:hover .navigation__level3-link {
    background-color: #5C5049;
}

.navigation__level2-item--active .navigation__level2-link, .navigation__level2-item--active .navigation__level2-icon,
.navigation__level3-item--active .navigation__level3-link {
    background-color: #5C5049;
}

.navigation__level3 {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    transition: height 0.4s ease-in-out;
    overflow: hidden;
}

.navigation__level3:not(.navigation__level3--visible) {
    height: 0 !important;
}

.navigation__level3--visible:not(.navigation__level3--in-progress) {
    height: auto !important;
}

/* Navigation: Meta */
.navigation-meta {
    font-size: 0.85em;
}
.navigation-meta__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
}

.navigation-meta__item {
    float: none;
    display: flex;
    align-items: center;
}

.navigation-meta__item + .navigation-meta__item::before {
    content: "|";

}

.navigation-meta__link {
    color: inherit;
    display: block;
    padding: .5em .5em;
}

[href*="support"].navigation-meta__link::before {
    content: "\f590";
    font-family: "Font Awesome 5 Pro";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 400;
    padding-left: 0;
    padding-right: 0.5em;
    transition: padding 0.3s ease;
}

[href*="kontakt"].navigation-meta__link::before {
    content: "\f0e0";
    font-family: "Font Awesome 5 Pro";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    font-weight: 400;
    padding-left: 0;
    padding-right: 0.5em;
    transition: padding 0.3s ease;
}

/* Footer-Navigation */
.navigation-footer__list {
    margin: 0;
    padding: 0;
    list-style: none;
    font-style: normal;
    float: none !important;
}
.navigation-footer__item {
    float: none;
    display: block;
}
.navigation-footer__text {

}
.navigation-footer__link {
    color: inherit;
    text-decoration: none;
}
.navigation-footer__link:hover,
.navigation-footer__link:active {
    text-decoration: underline;
}


/* Navigation Category (Buttons) */
.navigation-category {
    display: inline-block;
}
.navigation-category--buttons-and-list {
    display: block;
}
.navigation-category__list {
    display: inline;
    list-style: none;
    margin: 0;
    padding: 0;
}

.navigation-category__list--buttons-and-list {
    display: block;
}
.navigation-category__item {
    float: left;
    display: inline;
    max-width: 100%;
}
.navigation-category__item--buttons-and-list {
    display: block;
    width: 100%;
}
/* Navigation Category (DropDown) */
.navigation-category--dropdown {
    position: relative;
    max-width: 100%;
    display: flex;
    margin-bottom: .5em;
}
.button--dropdown-button {}
.button--dropdown-button-active ~ .navigation-category__list--dropdown {
    display: block;
}
.navigation-category__list--dropdown {
    position: absolute;
    z-index: 1;
    top: 3.125em;
    left: 0;
    display: inline-block;
    display: none;
    width: 100%;
    /* background-color: #eeeeef; */
}
.navigation-category__item--dropdown {
    float: none;
    display: block;
    background-color: #eeeeee;
}
.navigation-category__drowndown-children-list {
    padding: 0;
    margin: 0;
    list-style: none;
}
.navigation-category__drowndown-children-item {}
.navigation-category__drowndown-children-link {
    display: block;
    padding: .5em 1em;
}
.navigation-category__dropdown-main-cat-wrap {
    display: flex;
    /* flex-direction: row-reverse; */
}

/* Kategorie-Menu: Hauptkategoriebuttons mit Unterkategorieliste */
.navigation-categroy-list {}
.navigation-category-list--buttons-and-list {
    margin-bottom: 1em;
}
.navigation-category-list__link--active {
    font-weight: 700;
}

/* Banner & Claim */

/* Formulare */
.form {}
.form__legend {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}
.form__fieldwrap {
    margin-bottom: 40px;
}
.form__input {
    width: 100%;
    border: 1px solid #4a4a4a;
    background-color: transparent;
    font-weight: 400;
    font-size: 1em;
    line-height: 1.2272727272727273em;
    color: #4a4a4a;
    border-radius: 0;
    padding-top: .7em;
    padding-bottom: .7em;
    padding-left: 20px;
    padding-right: 20px;
    font-family: inherit;
    outline: none;
}
.form__input--textarea {
    min-height: 266px;
}
.form__input:focus {
    outline: 3px solid #000000;
}
.form__checkboxes--error .form__label {
    color: #A53239;
}
.form__input:required {}
.form__input:invalid {}
.form__input:invalid:focus {
    outline-color: #A53239;
}
.form__input:valid {}
.form__input:valid:focus {
    outline-color: #9fac92;
}

/* Headings */
h1, h2, h3, h4, h5,
.heading--h1, .heading--h2, .heading--h3, .heading--h4, .heading--h5 {
    color: #94C01F;
    text-transform: none;
    line-height: 1.25;
    margin-top: 1.5em;
    margin-bottom: 0.85em;
}
h1, .heading--h1 {
    font-weight: 700;
    font-size: 1.75em;
    line-height: 1.25;
}
h1 + h2, .heading--h1 + h2,
h1 + .heading--h2, .heading--h1 + .heading--h2 {
    margin-top: 0.5em;
}
h2, .heading--h2 {
    font-weight: 700;
    font-size: 1.75em;
    line-height: 1.25;
}
h2 + h3, .heading--h2 + h3,
h2 + .heading--h3, .heading--h2 + .heading--h3 {
    margin-top: 0.35em;
}
h3, .heading--h3 {
    font-weight: 700;
    font-size: 1.25em;
    line-height: 1.375;
}
h3 + h4, .heading--h3 + h4,
h3 + .heading--h4, .heading--h3 + .heading--h4 {
    margin-top: 0.25em;
}
h4, .heading--h4 {
    font-weight: 400;
    font-size: 1.25em;
    line-height: 1.5;
}

h4 + p, .heading--h4 + p {
    margin-top: 0.5em;
}

h4 + p .link--arrow:first-child, .heading--h4 + p .link--arrow:first-child {
    margin-top: 1em;
    display: inline-block;
}

h5, .heading--h5 {}

h5 + p, .heading--h5 + p{
    margin-top: 0.25em;
}

.heading--left { text-align: left }
.heading--right { text-align: right }
.heading--center { text-align: center }

/* Container */
.container--main-content {
    padding-top: 0;
}

/* Home News-Box */
.col12[data-cuid="521"], .col12[data-cuid="628"] {
    background-color: rgba(59, 27, 11, 0.07);
    border-top: 15px solid #3b1b0b;
    padding-top: 33px;
    margin-top: -48px;
    padding-left: 36px;
    padding-right: 36px;
    padding-bottom: 22px;
    margin-right: 20px;
    margin-left: 20px;
}
.news-list-home__article-wrap {font-size: 1.125em;line-height: 1.83em;letter-spacing: 1.6px;margin-top: 4px;}
.news-list-home__article {
    color: #3b1b0b;
}
.news-list-home__contents-wrapper {}
.news-list-home__contents {}
.news-list-home__date-time {}
.news-list-home__date-time::after {
    content: " – ";
}
.news-list-home__teaser {}
.news-list-home__teaser-text {}
.news-list-home__footer {}

.news-list-home__heading {
    font-weight: 700;
    display: inline;
    font-size: 1em;
    text-transform: none;
    letter-spacing: 1.6px;
    margin-top: 0;
    margin-bottom: 0;
    color: #421f0e;
}


/* Paragraphs */
p, .paragraph {
    color: inherit;
    margin-top: 0;
    margin-bottom: 1em;
}
p,
.paragraph,
.ce-bodytext li,
.form__label {
    letter-spacing: 0.027777777777777776em;
}

/* Aligments */
.align-center { text-align: center }
.align-left { text-align: left }
.align-right { text-align: right }
.text-right { text-align: right; }
.text-left { text-align: left; }
.text-center { text-align: center; }

/* Floats */
.float-right { float: right }
.float-left { float: left }

/* Anker */
.anchor { display: block }

/* Lists */
/* CSS-Klasse .list NICHT formatieren */

.ce-bodytext ul:not(.files__list) {
    padding-left: 0;
    list-style: none;
}
.ce-bodytext li:not(.files__item) {
    position: relative;
    padding-left: 1.25em;
}
.ce-bodytext li:not(.files__item)::before {
    content: "";
    width: .3em;
    height: .3em;
    display: inline-block;
    position: absolute;
    left: 0;
    top: .7em;
    border-radius: 50%;
    background-color: black;
}

/* Backgrounds & section paddings */
.main {
    padding-bottom: 0;
    padding-top: 0;
}

.main .content__sidebar > .content-section,
.main .content__main__content > .content-section {
    padding-bottom: 3.5em;
    padding-top: 3.5em;
}

.main .content__sidebar > .content-section:not([class^="background"]):not(.content-section--no-paddings) + .content-section:not([class^="background"]):not(.content-section--no-paddings),
.main .content__main__content > .content-section:not([class^="background"]):not(.content-section--no-paddings) + .content-section:not([class^="background"]):not(.content-section--no-paddings),
.main .content__sidebar > .content-section.background-grey:not(.content-section--no-paddings) + .content-section.background-grey:not(.content-section--no-paddings),
.main .content__main__content > .content-section.background-grey:not(.content-section--no-paddings) + .content-section.background-grey:not(.content-section--no-paddings) {
    margin-top: -2.25em
}

.main > .content__fullwidth > .content-section {
    padding-top: 4.5em;
    padding-bottom: 4.5em;
}

.main > .content__fullwidth > .content-section:not([class^="background"]) + .content-section:not([class^="background"]),
.main > .content__fullwidth > .content-section.background-grey + .content-section.background-grey {
    margin-top: -2.75em;
}

.main .content__sidebar > .content-section.content-section--no-paddings,
.main .content__main__content > .content-section.content-section--no-paddings,
.main > .content__fullwidth > .content-section.content-section--no-paddings {
    padding-top: 0;
    padding-bottom: 0;
}

.background-grey,
.background-red,
.background-green,
.background-blue {
    position: relative;
}

.background-grey::before,
.background-red::before,
.background-green::before,
.background-blue::before {
    content: "";
    position: absolute;
    z-index: 0;
    bottom: 0;
    top: 0;
    width: calc(100vw);
    background-color: #E3E3DC;
    left: calc((100vw - 100%) / 2 * -1);
}
/*.background-red::before {
    background-color: rgba(165, 50, 57, 0.1);
}
.background-green::before {
    background-color: #76bd1d;
}*/


.background-blue::before {
    background-color: rgba(110, 142, 165, 0.1);
}
.background-grey > *,
.background-red > *,
.background-green > *,
.background-blue > * {
    z-index: 1;
    position: relative;
}

/* Rand */
.background-border > * {
    border: 1px solid #3b1b0b;
    padding-top: 1em;
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 40px;
}

/* Buttons */
.button,
.pagination a {
    display: inline-block;
    cursor: pointer;
    text-transform: uppercase;
    text-decoration: none;
    color: inherit;
    text-align: center;
    border: 1px solid #eeeeee;
    padding: .6em 1.5em;
    background-color: #eeeeee;
    font-family: inherit;
    font-weight: 700;
    font-size: inherit;
    line-height: inherit;
    outline: none;
    min-width: 48px;
}
.button--small {
    font-size: .75em;
    padding: .25em .5em;
}
.button--ghost {
    background-color: transparent;
    border-color: #4a4a4a;
}
.button--has-no-action {
    cursor: default;
}
.button:hover,
.button:focus,
.button--active,
.pagination .active a {
    background-color: #3b1b0b;
    color: white;
    /* background-image: url(../images/icon-arrow-right--white.svg); */
}

.button--has-no-action:hover,
.button--has-no-action:focus {
    background-color: #eeeeee;
    color: inherit;
}
.button--category {
    float: left;
    margin-right: .5em;
    margin-bottom: .5em;
    white-space: nowrap;
    max-width: 100%;
    text-overflow: ellipsis;
    overflow: hidden;
}
.button--fullwidth {
    width: 100%;
    margin-right: 0;
}
.button--text-align-left {
    text-align: left;
}
.button--submit {
    float: right;
    padding-left: 15px;
    padding-right: 15px;
}

.button--reset {}
.button--dropdown {
    float: none;
    margin-right: 0;
    margin-bottom: 0;
    text-align: left;
    flex-grow: 1;
}
.button--dropdown-button {
    flex-grow: 1;
    text-align: left;
    margin-left: .5em;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: 100%;
    padding-right: 2.875em;
}
.button--dropdown-button::after {
    content: "\f078";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 1em;
    margin-top: 0.1875em;
}
.button--dropdown-button-active::after {
    content: "\f077"
}
.button--dropdown-button
.button--dropdown {
    float: none;
    display: block;
    margin-right: 0;
    margin-bottom: 0;
    text-align: left;
}
.button--drowndown-children-link {
    float: none;
    display: block;
    margin-right: 0;
    text-align: left;
    margin-left: 1.5em;
}

.button--expand-button {
    background-image: url(../images/icon-plus.svg);
    background-position: center;
    background-size: .75em .75em;
    background-repeat: no-repeat;
    font-size: inherit;
    /* margin-right: .5em; */
}
.button--expand-button:hover,
.button--expand-button:focus {
    background-image: url(../images/icon-plus--white.svg);
}

.button--ghost-arrow {
    border: solid 3px #3b1b0b;
    background-color: transparent;
    color: #3b1b0b;
    font-size: 1em;
    font-weight: 700;
    letter-spacing: 1.4px;
    background-image: url(../images/icon-arrow-right.svg);
    background-repeat: no-repeat;
    background-size: auto .75em;
    background-position: right 1.5em center;
    padding-right: 8.75em;
    margin-top: 1.25em;
}
.button--ghost-arrow:hover,
.button--ghost-arrow:focus {
    /* background-color: #3b1b0b; */
    /* color: white; */
    background-image: url(../images/icon-arrow-right--white.svg);
}


.background-green .button--ghost-arrow {
    border-color: white;
    color: white;
    background-image: url(../images/icon-arrow-right--white.svg);
}
.background-green .button--ghost-arrow:hover {
    border-color: white;
    color: white;
    background-color: transparent;
    background-image: url(../images/icon-arrow-right--white.svg);
}


.button--dark-arrow {
    background-color: #1b8100;
    border: solid 3px #1b8100;
    color: #ffffff;
    letter-spacing: 1.4px;
    background-image: url(../images/icon-arrow-right--white.svg);
    background-repeat: no-repeat;
    background-size: auto .75em;
    background-position: right 1.5em center;
    padding-right: 8.75em;
    margin-top: 1.25em;
}
.button--dark-arrow:hover,
.button--dark-arrow:focus {
    background-color: #1a7303;
    border-color: #1a7303;
}

.button--bright-arrow {
    background-color: #ffffff;
    border: solid 3px #ffffff;
    color: #76bd1d;
    letter-spacing: 1.4px;
    background-image: url(../images/icon-arrow-right--green.svg);
    background-repeat: no-repeat;
    background-size: auto .75em;
    background-position: right 1.5em center;
    padding-right: 8.75em;
    margin-top: 1.25em;
}
.button--bright-arrow:hover,
.button--bright-arrow:focus {
    background-color: #ffffff;
    border: solid 3px #ffffff;
    color: #76bd1d;
}

.button--minimal-arrow {
    background-color: transparent;
    border: solid 3px transparent;
    color: #3b1b0b;
    letter-spacing: 1.4px;
    background-image: url(../images/icon-arrow-right.svg);
    background-repeat: no-repeat;
    background-size: auto .75em;
    background-position: right 1.5em center;
    padding-right: 5.25em;
    padding-left: 0;
    transition: all .125s;
}
.button--minimal-arrow:hover,
.button--minimal-arrow:focus {
    background-color: transparent;
    color: #3b1b0b;
    background-position: right 1.15em center;
}

.button--ghost-green-no-arrow {
    border: solid 2px #76bd1d;
    background-color: transparent;
    color: #76bd1d;
    font-size: 1em;
    font-weight: 700;
    letter-spacing: 1.4px;
    margin-top: 1.25em;
    margin-left: 10px;
    margin-right: 10px;
}
.button--ghost-green-no-arrow:hover,
.button--ghost-green-no-arrow:focus {
    background-color: #76bd1d;
    color: white;
}

.button--ghost-green-left-arrow {
    border: solid 2px #3b1b0b;
    background-color: transparent;
    color: #3b1b0b;
    font-size: 1em;
    font-weight: 700;
    letter-spacing: 1.4px;
    background-image: url(../images/icon-arrow-left--brown.svg);
    background-repeat: no-repeat;
    background-size: auto .75em;
    background-position: left 1.5em center;
    padding-left: 6.75em;
    margin-top: 1.25em;
}
.button--ghost-green-left-arrow:hover,
.button--ghost-green-left-arrow:focus {
    background-color: #3b1b0b;
    color: white;
    background-image: url(../images/icon-arrow-left--white.svg);
}


/* Messages */
.message {
    border: 1px solid #000000;
    margin-bottom: 40px;
    padding-left: 1em;
    padding-right: 1em;
    background-color: #f7f7f7;
    cursor: default;
}
.message--bad {
    border-color: #A53239;
    background-color: #ac3239;
    padding-top: 1em;
    color: white;
}

/* Temporär: Ausblenden Block "Provatsphäre Einstellungen" */
#cc-tag {
  display: none !important;
}

/* Zitate */
.quote {
    text-align: center;
    margin-bottom: 3em; /* 60/20 */
    margin-top: 1.75em; /* 35/20 */
}
.quote::before {}
.quote__content {
    padding: 0 2.5em; /* 50/20 */
}
.quote__cite-text {
    font-size: inherit;
    font-weight: 600;
    margin-bottom: 0.8em; /* 16/20 */
    display: block;
}
.quote__cite-text::before,
.quote__cite-text::after {
    content: none;
}
.quote__footer {}
.quote__source {
    font-size: 14px;
    color: #9b9b9b;
    font-style: normal;
    line-height: 1.8571428571428572em; /* 26/14 */
}

/* News List */
.news-list__main {
    flex: 1 0 auto;
}
.news-list__heading {
    margin-top: 0;
    display: -webkit-box;
}

.news-list__article-wrap--three-columns .news-list__heading {
    margin-top: .5em;
}

/* Maximale Zeilenanzahl */
@supports (-webkit-line-clamp: 2) and (-webkit-box-orient: vertical) {
    .news-list__heading {
        -webkit-line-clamp: 2; /* number of lines to show */
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}

.news-list__category-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.news-list__date {
    order: -1;
}
.news-list__article-wrap--three-columns  .news-list__date {
    padding-top: .5em;
    margin-bottom: -.8em;
}
.news-list__article-wrap {
    position: relative;
    padding-bottom: 2em;
    margin-bottom: 2em;
}
.news-list__article-wrap::after {
    content: "";
    height: 1px;
    position: absolute;
    left: 20px;
    right: 20px;
    background-color: black;
    bottom: 0;
}
.news-list__article-wrap:first-child {
    padding-top: 0;
}
.news-list__article-wrap:last-child {
    border-bottom: none;
}
.news-list__article {
    height: 100%;
}
.news-list__article-wrap--two-columns .news-list__teaser {
    flex-grow: 1;
}

/* Maximale Zeilenanzahl */
@supports (-webkit-line-clamp: 3) and (-webkit-box-orient: vertical) {
    .news-list__article-wrap--two-columns .news-list__heading {
        -webkit-line-clamp: 3; /* number of lines to show */
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
}
.news-list__article-wrap--three-columns .news-list__article {
    flex-direction: column;
}
.news-list__contents {
    height: 100%;
    flex-direction: column;
}

.news-list__footer {
    flex-shrink: 0;
}

.news-list__article-wrap--three-columns {}
.news-list__article-wrap--three-columns .news-list__article {

}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE10+ CSS styles go here */
    .news-list__article-wrap--three-columns .news-list__article {
        flex-direction: row;
        height: auto;
    }
}
.news-list__article-wrap--three-columns .news-list__main {}
.news-list__article-wrap--three-columns .news-list__main-inner {}
.news-list__article-wrap--three-columns .news-list__image-wrap {}
.news-list__article-wrap--three-columns .news-list__image-link {}
.news-list__article-wrap--three-columns .news-list__image {}
.news-list__article-wrap--three-columns .news-list__contents-wrapper {}
.news-list__article-wrap--three-columns .news-list__contents {}
.news-list__article-wrap--three-columns .news-list__header {}
.news-list__article-wrap--three-columns .news-list__heading {}
.news-list__article-wrap--three-columns .news-list__heading-link {}
.news-list__article-wrap--three-columns .news-list__heading-text {}
.news-list__article-wrap--three-columns .news-list__date {}
.news-list__article-wrap--three-columns .news-list__date-time {}
.news-list__article-wrap--three-columns .news-list__footer {}

/* News-Detail */
.news-detail__share {
    margin-top: 3em;
    margin-bottom: 1em;
}

.news-detail__backlink {
    margin-left: 0;
}

/* News-Detail: Related News-Items */
.news-detail__related-news-image-col {
    order: -2;
}
.news-detail__related-news-date-col {
    order: -1;
}
.news-detail__related-news-title {
    margin-bottom: 0;
    font-size: 1em;
}
.news-detail__related-news-article {
    margin-bottom: 40px;
}
.news-detail__related-news-date {
    margin-top: .5em;
    display: block;
    margin-bottom: -.9em;
}

/* Dateiliste */
.files__list {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-bottom: 1.5em;
}
.files__name {
    text-decoration: none !important;
    display: inline-block;
    width: calc(100% - 13em);
}
.files__link {
    text-decoration: none;
    display: block;
    width: 100%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    color: #4a4a4a;
}
.files__link:hover,
.files__link:focus {
    text-decoration: underline;
}
.files__link::before,
.files__link::after {
    content: none;
}
.files__description {
    display: block;
    color: #9a9a9a;
}
.files__size {
    display: inline-block;
    float: right;
    width: 13em;
    text-align: right;
    box-sizing: border-box;
    padding-right: 2.25em;
    position: absolute;
    right: 0;
    top: 1em;
}
.files__item {
    margin: 0;
    border-bottom: 1px solid #CCCCCC;
    padding: 1em 0 .5em;
    background: url('../images/file-icons/Icon_Default.svg') no-repeat right .75em;
    background-size: 1.5em 2em;
    position: relative;
    box-sizing: content-box; /* behebt unschönes ruckeln wegen jQuery slideUp() und slideDown() Animation */
}
.files__item .files__size::before {
    content: "";
}
.files__item[data-file-name$=".doc"] .files__size::before,
.files__item[data-file-name$=".docx"] .files__size::before {
    content: "Word | ";
}
.files__item[data-file-name$=".doc"],
.files__item[data-file-name$=".docx"] {
    background-image: url('../images/file-icons/Icon_Word.svg');
}
.files__item[data-file-name$=".ppt"] .files__size::before,
.files__item[data-file-name$=".pptx"] .files__size::before {
    content: "PowerPoint | ";
}
.files__item[data-file-name$=".ppt"],
.files__item[data-file-name$=".pptx"] {
    background-image: url('../images/file-icons/Icon_Powerpoint.svg');
}
.files__item[data-file-name$=".xls"] .files__size::before,
.files__item[data-file-name$=".xlsx"] .files__size::before {
    content: "Excel | ";
}
.files__item[data-file-name$=".xls"],
.files__item[data-file-name$=".xlsx"] {
    background-image: url('../images/file-icons/Icon_Excel.svg');
}
.files__item[data-file-name$=".pdf"] {
    background-image: url('../images/file-icons/Icon_Powerpoint.svg');
}
.files__item[data-file-name$=".pdf"] .files__size::before {
    content: "PDF | ";
}
.files__item[data-file-name$=".jpg"] .files__size::before,
.files__item[data-file-name$=".jpeg"] .files__size::before,
.files__item[data-file-name$=".png"] .files__size::before,
.files__item[data-file-name$=".gif"] .files__size::before,
.files__item[data-file-name$=".tiff"] .files__size::before,
.files__item[data-file-name$=".bmp"] .files__size::before {
    content: "Bild | ";
}
.files__item[data-file-name$=".jpg"],
.files__item[data-file-name$=".jpeg"],
.files__item[data-file-name$=".png"],
.files__item[data-file-name$=".gif"],
.files__item[data-file-name$=".tiff"],
.files__item[data-file-name$=".bmp"] {
    background-image: url('../images/file-icons/Icon_Bild.svg');
}

/* Image-Gallery / Images */
.gallery {
    margin-bottom: -20px;
}
.gallery__figure {
    position: relative;
    margin: 0;
    margin-bottom: 40px;
    overflow: hidden;
}

.background-border .gallery__figure {
    margin-bottom: 20px;
}

/*.content-section[data-ctype="textmedia"] {
    // margin-bottom: 2em;
}
[data-ctype="textmedia"] {
    overflow: hidden;
}*/

.container--no-gaps .gallery__figure,
.content--no-gaps .gallery__figure {
    margin-bottom: 0;
}

.container--no-gaps .gallery,
.content--no-gaps .gallery {
    margin-bottom: 40px;
}

.gallery__link {
    display: block;
}
.gallery__image {
    display: block;
    max-width: 100%;
}
.gallery__figure:hover .gallery__image { }
.gallery__image--force-100-percent {
    max-width: none;
    width: 100%;
}
.gallery__caption {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.4);
    color: white;
    padding-left: 1em;
    padding-right: 1em;
    font-size: 1em;
    padding-top: 1em;
}

.gallery__figure--box-shadow {
    box-shadow: 0 0 20px 0 rgba(0,0,0,0.2);
    display: inline-block;
    background-color: #fff;
}

.gallery__figure--force-100-percent {
    display: block;
}

.gallery__figure--sw .gallery__image {
    -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
}

/* Text & Media (Positionierung) */
.ce-right.ce-intext:not(.ce-nowrap) .gallery {
    display: inline-block;
    float: right;
    margin-left: 12px;
    width: 33.333333333333336%; /* tbd: media query */
}
.ce-left.ce-intext:not(.ce-nowrap) .gallery {
    display: inline-block;
    float: left;
    margin-right: 12px;
    width: 33.333333333333336%; /* tbd: media query */
}
.ce-right .gallery__image {
    margin-left: auto;
    /* margin-right: 0; */
}
.ce-left .gallery__image {
    margin-left: 0;
    margin-right: auto;
}

/* Navigation Pagination */
.navigation-pagination {
    margin-bottom: 3.5em;
}
.navigation-pagination__info {}
.navigation-pagination__list,
.navigation-pagination .pagination { /* genericcatalogue */
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-block;
    margin: 0 auto;
    margin-left: -.25em;
}
.navigation-pagination__item,
.navigation-pagination .pagination li { /* genericcatalogue */
    float: left;
    margin-right: .25em;
    margin-left: .25em;
    margin-bottom: .25em;
}
.navigation-pagination__item--current {}
.navigation-pagination__item--last {}
.navigation-pagination__item--next {}
.navigation-pagination__text,
.navigation-pagination .page { /* genericcatalogue */
    min-width: 3.125em; /* 50/16 */
}
.navigation-pagination__link {}

/* Product DB */
.project-navigation {}
.project-navigation__list {}
.project-navigation__item {}
.project-navigation__item--reset {}
.project-navigation__sub {}
.project-navigation__button--active {}
.project-navigation__button--maincategory:hover,
.project-navigation__button--maincategory:focus {}
.project-navigation__button--active + .project-navigation__sub {}
.project-navigation__sub li::before {}
.product-items {}
.product-items__item {}
.product-items__item-description {}
.product-items__item-description::before,
.product-items__item-description::after {}
.product-items__item:hover .product-items__item-description {}
.product-items__item-link {}
.product-items__item-description p {}

.category__description--hidden{
        display: none;
}

.category__description {
    padding-bottom: 2em;
}

/* Search (indexed_search) */
.tx-indexedsearch-searchbox {}

.searchform__wrapper {
    display: flex;
    align-items: flex-end;
}

.tx-indexedsearch-form {
    margin-bottom: 1px;
    width: 100%;
    padding-right: 5px;
}

.tx-indexedsearch-form label {
    margin-bottom: 0.75em;
    display: block;
}

div.tx-indexedsearch-browsebox {
    margin: 3.5em 0 2.5em 0;
    border-bottom: 1px solid #ccc;
    text-align: center;
    padding-bottom: 2em;
}

ul.tx-indexedsearch-browsebox {
    margin-top: 1.5em;
    padding: 0;
    display: flex;
    justify-content: center;
}

.tx-indexedsearch-browsebox li {
    list-style: none;
    padding: 0 1em;
}

.tx-indexedsearch-browsebox:last-child {
    border: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.tx-indexedsearch-res {
    border-bottom: 1px solid #ccc;
    padding-bottom: 1em;
}

.tx-indexedsearch-text-item-path {
    font-size: 0.85em;
}

/* Placeholder text */
::-webkit-input-placeholder {
    color: #9b9b9b;
    text-transform: uppercase;
}
:-moz-placeholder {
    color: #9b9b9b;
    text-transform: uppercase;
}
::-moz-placeholder {
    color: #9b9b9b;
    text-transform: uppercase;
}
:-ms-input-placeholder {
    color: #9b9b9b;
    text-transform: uppercase;
}

/* Image slider*/
.image-slider {
    position: relative;
    width: 100%;
}
.image-slider__images {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    -webkit-transition: all .75s cubic-bezier(0.79, 0, 0.36, 1);
    transition: all .75s cubic-bezier(0.79, 0, 0.36, 1);
}
.image-slider__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    bottom: 0;
    border: 0;
    height: 100%;
}
.image-slider__images { width: 1000% }

.image-slider__figure {
    width: 10%;
    margin: 0;
    float: left;
    height: 100%;
    position: relative;
}

.image-slider__radio-nr-1:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(0); transform: translateX(0) }
.image-slider__radio-nr-2:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-10%); transform: translateX(-10%) }
.image-slider__radio-nr-3:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-20%); transform: translateX(-20%) }
.image-slider__radio-nr-4:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-30%); transform: translateX(-30%) }
.image-slider__radio-nr-5:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-40%); transform: translateX(-40%) }
.image-slider__radio-nr-6:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-50%); transform: translateX(-50%) }
.image-slider__radio-nr-7:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-60%); transform: translateX(-60%) }
.image-slider__radio-nr-8:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-70%); transform: translateX(-70%) }
.image-slider__radio-nr-9:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-80%); transform: translateX(-80%) }
.image-slider__radio-nr-10:checked ~ .image-slider__images-wrap .image-slider__images { -webkit-transform: translateX(-90%); transform: translateX(-90%) }

.image-slider__image-wrap {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-size: cover;
    background-position: 50% 50%;
}
.image-slider__images-wrap {
  position: relative;
    width: 100%;
    padding-bottom: 100%;
    overflow: hidden;
}
.image-slider__video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.image-slider__caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    /*padding: 30px 24px;*/
    padding: 1.6666666666666667em 1.3333333333333333em 0.4444444444444444em; /* 30/18; 24/18; 8/18 */
    margin-bottom: 0;
    background-color: rgba(0,0,0,0.25);
    color: white;
}
.image-slider__arrows-list {
    list-style-type: none;
    display: none;
}
.image-slider__arrows {
    height: 0;
    display: none;
}
.image-slider__radio-nr-1:checked ~ .image-slider__arrows .image-slider__arrows-list-1 { display: block; }
.image-slider__radio-nr-2:checked ~ .image-slider__arrows .image-slider__arrows-list-2 { display: block; }
.image-slider__radio-nr-3:checked ~ .image-slider__arrows .image-slider__arrows-list-3 { display: block; }
.image-slider__radio-nr-4:checked ~ .image-slider__arrows .image-slider__arrows-list-4 { display: block; }
.image-slider__radio-nr-5:checked ~ .image-slider__arrows .image-slider__arrows-list-5 { display: block; }
.image-slider__radio-nr-6:checked ~ .image-slider__arrows .image-slider__arrows-list-6 { display: block; }
.image-slider__radio-nr-7:checked ~ .image-slider__arrows .image-slider__arrows-list-7 { display: block; }
.image-slider__radio-nr-8:checked ~ .image-slider__arrows .image-slider__arrows-list-8 { display: block; }
.image-slider__radio-nr-9:checked ~ .image-slider__arrows .image-slider__arrows-list-9 { display: block; }
.image-slider__radio-nr-10:checked ~ .image-slider__arrows .image-slider__arrows-list-10 { display: block; }

.image-slider__arrow-button {
    width: 4em;
    height: 4em;
    position: absolute;
    top: 50%;
    margin-top: -2em;
    border: 0;
    cursor: pointer;
    background-color: transparent;
    text-align: center;
}
.image-slider__arrow-button--previous {
    left: 0;
}
.image-slider__arrow-button--next {
    right: 0;
}
.image-slider__icon-arrow {
    color: white;
    font-size: 3.75em;
}
/*http://lea.verou.me/2011/01/styling-children-based-on-their-number-with-css3/*/
/*Hide arrows if only one image vorhanden.*/
.image-slider__arrows-list:first-child:nth-last-child(1) {
    display: none !important;
}

.image-slider__thumbnails {
    width: auto;
    float: none;
    margin-top: 20px;
}

.image-slider__thumbnail-label {
    cursor: pointer;
    display: block;
    opacity: .5;
    -webkit-transition: all .75s cubic-bezier(0.79, 0, 0.36, 1);
    transition: all .75s cubic-bezier(0.79, 0, 0.36, 1);
}
.image-slider__thumbnail-item {
    margin-bottom: 20px;
}
.image-slider__radio-nr-1:checked  ~ .image-slider__thumbnails [for="detail-slide-1"] { opacity: 1 }
.image-slider__radio-nr-2:checked  ~ .image-slider__thumbnails [for="detail-slide-2"] { opacity: 1 }
.image-slider__radio-nr-3:checked  ~ .image-slider__thumbnails [for="detail-slide-3"] { opacity: 1 }
.image-slider__radio-nr-4:checked  ~ .image-slider__thumbnails [for="detail-slide-4"] { opacity: 1 }
.image-slider__radio-nr-5:checked  ~ .image-slider__thumbnails [for="detail-slide-5"] { opacity: 1 }
.image-slider__radio-nr-6:checked  ~ .image-slider__thumbnails [for="detail-slide-6"] { opacity: 1 }
.image-slider__radio-nr-7:checked  ~ .image-slider__thumbnails [for="detail-slide-7"] { opacity: 1 }
.image-slider__radio-nr-8:checked  ~ .image-slider__thumbnails [for="detail-slide-8"] { opacity: 1 }
.image-slider__radio-nr-9:checked  ~ .image-slider__thumbnails [for="detail-slide-9"] { opacity: 1 }
.image-slider__radio-nr-10:checked ~ .image-slider__thumbnails [for="detail-slide-10"] { opacity: 1 }

.image-slider__thumbnail-image {
    display: block;
}
.image-slider__thumbnail-item::before {
    content: none !important;
}
.image-slider__arrow-item::before {
    content: none !important;
}
.image-slider__thumbnail-list {
    list-style: none;
}

/* 50/50 Text mit Bild (quadratisch) */
.ce-50-50-text-image {
    background-color: #3b1b0b;
    color: #ffffff;
    margin-top: 5.5%;
}
.ce-50-50-text-image__text {
    align-items: center;
    display: flex;
}
.ce-50-50-text-image__text-inner {
    padding: 3.8em;
}
.ce-50-50-text-image__text h2,
.ce-50-50-text-image__text h3,
.ce-50-50-text-image__text h4 {
    color: #ffffff;
    text-transform: none;
    font-weight: 600;
    letter-spacing: 4px;
    font-size: 34px;
    margin-bottom: 41px;
}
.ce-50-50-text-image__image-wrap {
    background-size: cover;
}
.ce-50-50-text-image__image {
    width: 100%;
}
.ce-50-50-text-image .button--minimal-arrow {
    color: #ffffff;
    background-image: url(../images/icon-arrow-right--white.svg);
}

/* Referenz */
[class*="col"][data-ctype="dce_dceuid6"] {
    border: 1px solid #3b1b0b;
    padding-top: 1em;
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 40px;
}
.reference {}
.reference__image {}
.reference__description {
    margin-top: 1em;
}

/* Kontaktbox */
.ce-contact {
    margin-top: 4.5%;
}
.ce-contact__text-top {
    font-size: 1.5625em;
    letter-spacing: 0.1em;
    color: #38373c;
    margin-bottom: 0.56em;
}

/* Totop Footer */
.footer-totop {
    text-transform: uppercase;
    letter-spacing: 0.9px;
    display: inline-block;
    position: relative;
    padding-top: 3.125em;
    padding-left: 2em;
    padding-bottom: 2em;
    padding-right: 2.5em;
}
.footer-totop::after {
    content: url(../images/icon-arrow-right.svg);
    display: block;
    transform: rotate(-90deg);
    transform-origin: right bottom;
    position: absolute;
    right: 0;
    top: 0;
}

/* Footer */
.social-media {
    margin-bottom: 2.2em;
}
.social-media::before,
.social-media::after {
    content: "";
    display: table;
    clear: both;
}
.social-media__list {
    display: inline-block;
    float: right;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 40px;
}
.social-media__item {
    float: left;
    padding-left: 20px;
}

.newsletter {
    margin-bottom: 2.2em;
}
.newsletter__form {}
.newsletter__input-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #4a4a4a;
    border: 2px solid white;
}
.newsletter__input-wrap > * {
    width: 100%;
}
.newsletter__hint {
    padding: 14px;
    padding-left: 18px;
    padding-right: 15px;
    text-transform: uppercase;
    width: auto;
    font-weight: 400;
    font-size: 22px;
    line-height: 27px;
}
.newsletter__hint::before {
    content: attr(data-newsletter-hint);
}
.newsletter__input {
    font-size: 22px;
    line-height: 27px;
    border: 0;
    background-color: white;
    padding-left: 18px;
    padding-right: 18px;
    font-family: "Work Sans", sans-serif;
    border-radius: 0;
}
.newsletter__submit {
    width: 115px;
    background-color: #4a4a4a;
    border: 0;
    cursor: pointer;
}
.newsletter__submit i {
    color: white;
    font-size: 30px;
    position: relative;
    left: -2px;
}


/* cookie banner */
#cc-notification {
    /* display: none !important; */
}
#cc-notification h2 {
    margin-right: 145px !important;
}

#cc-notification {
    background-color: #E3E3DC !important;
}
#cc-notification #cc-notification-wrapper {
    padding: 12px 20px 0 !important;
}
#cc-notification h2 span, #cc-notification h2 {
    margin-bottom: 12px !important;
    letter-spacing: inherit;
}
#cc-notification h2, #cc-notification h3, #cc-notification p {
    font-size: 1.1em;
    color: #4a4a4a !important;
    line-height: 1.5;
}
#cc-notification h2 span {
    font-size: inherit;
}
#cc-notification a, #cc-notification a:visited {
    font-size: 1em !important;
    line-height: inherit;
}

#cc-notification ul.cc-notification-buttons li a, #cc-notification ul.cc-notification-buttons li a:visited {
    font-size: inherit !important;

}
#cc-notification ul.cc-notification-buttons li a, #cc-notification ul.cc-notification-buttons li a:visited {
    color: #ffffff !important;
    text-decoration: none;
    border: none !important;
    display: inline-block;
    border-radius: 0 !important;
    font-size: 16px;
    padding: 0.125em 1.25em;
    background-color: #70625A !important;
    margin-top: 4px !important;
    transition: unset;
}
#cc-notification ul.cc-notification-buttons li a:hover, #cc-notification ul.cc-notification-buttons li a:active, #cc-notification ul.cc-notification-buttons li #cc-approve-button-allsites:hover, #cc-notification ul.cc-notification-buttons li #cc-approve-button-allsites:active {
    color: #fff !important;
    text-decoration: none !important;
    background-color: #5C5049 !important;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    border-radius: 0 !important;
}
#cc-notification ul.cc-notification-buttons {
  width: 200px !important;
}
#cc-notification a, #cc-notification a:visited {
    color: #94C01F!important;
    text-decoration: none !important;
    letter-spacing: inherit !important;
}
#cc-notification a:hover{
    color: #94C01F !important;
    text-decoration: underline !important;
}

#cc-notification.cc-mobile h2 span, #cc-notification.cc-mobile h2 {
    font-size: 1.05em;
    line-height: 1.6;
}

#cc-notification.cc-mobile {
    position: relative !important;
    z-index: 1 !important;
    top: 80px;
    bottom: auto !important;
    /*border-bottom: 1px solid #ccc !important;*/
	border-top: 0;
    /*border-bottom: 2px solid #F1F1F1 !important;*/
    box-shadow: none;
}

#cc-notification.cc-mobile ul.cc-notification-buttons li a, #cc-notification.cc-mobile ul.cc-notification-buttons li a:visited {
    margin-top: 0 !important;
}

@media screen and (max-width: 1025px) {
    #cc-notification h2 {
        margin-right: 0 !important;
    }
    #cc-notification ul.cc-notification-buttons {
        position: static !important;
        width: auto !important;
    }
    #cc-notification ul.cc-notification-buttons li a, #cc-notification ul.cc-notification-buttons li a:visited {
        float: none !important;
        margin-bottom: 1.5em !important;
    }
}

/* Mobile Menu */
.slicknav_menu {
    display: none;
    background-color: #ffffff;
    font-size: inherit;
    padding: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 20;
}
.slicknav_brand {
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    padding: 0 0 0 20px;
    height: 80px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: calc(100% - 80px);
}
.slicknav__logo-link {
    display: block;
}
.slicknav__logo-img {
    width: 153px;
    height: auto;
}
.slicknav_btn {
    margin: 0;
    border-radius: 0;
    box-sizing: border-box;
    float: right;
    height: 80px;
    display: flex;
    align-items: center;
    width: 80px;
    justify-content: center;
    background-color: transparent;
    text-shadow: none;
    padding: 0;
    background-image: url(../images/navbar--am.svg);
    background-repeat: no-repeat;
    background-position: center;
    outline: none;
}

.slicknav_btn.slicknav_open {
    background-image: url(../images/plus--black--am.svg);
    background-repeat: no-repeat;
    color: transparent;
    background-size: 26px 26px;
    /* width: 100%; */
    /* height: 100%; */
    transform: rotate(45deg);
    background-position: center;
}

.slicknav_menu .slicknav_icon {
    visibility: hidden;
}

.slicknav_nav {
    background: linear-gradient(140.64deg, #94C01F 0%, #3C9401 100%);
    color: #ffffff;
    font-size: 1.15em;
    font-weight: 600;
    padding: 0;
    letter-spacing: 0.05em;
    line-height: 1.5;
    max-height: calc(100vh - 80px);
    overflow-y: auto;
    border-bottom: 1px solid #76bd1d;
}

.slicknav__level2-icon {
    display: none;
}

.slicknav_nav .slicknav_row,
.slicknav_nav a {
    margin: 0;
    padding: 0;
    display: block;
}

.slicknav_nav .slicknav_row {
    display: flex;
	justify-content: space-between;
    align-items: center;
}

.slicknav_nav .slicknav_item a,
.slicknav_nav .slicknav__item .slicknav__link,
.slicknav_nav .slicknav-meta__link,
.slicknav_nav .slicknav__level2-link,
.slicknav_nav .slicknav__level3-link {
    display: inline-block;
    padding: 15.5px 20px;
    color: inherit;
}

.slicknav__item,
.slicknav-meta__item {
    border-top: 1px solid #ffffff;
    position: relative;
}

.slicknav__level2-item {
    background-color: #70625A;
    color: #fff;
}

.slicknav__level3-item {
    padding-left: 20px;
}

.slicknav__item--active, .slicknav-meta__item--active {
    background-color: #3C9401;
}

.slicknav__level2-item--active > .slicknav_row,
.slicknav__level3-item--active,
.slicknav__level2-item--active:not(.slicknav__level2-item--has-subnav) {
    background-color: #5C5049 !important;
}

.slicknav_nav a:hover,
.slicknav_nav .slicknav_row:hover {
    border-radius: 0;
    color: inherit;
    /* position: relative; */
    background-color: inherit;
}

.slicknav_nav .slicknav_arrow {
    font-size: inherit;
    color: transparent;
    display: block;
    width: 42px;
    height: 42px;
    position: relative;
}
.slicknav_nav .slicknav_arrow::after {
    content: "" !important;
    display: inline-block;
    position: absolute;
    right: 0;
    margin-top: 0;
    top: -.125em;
    background-image: url(../images/plus--white.svg);
    background-repeat: no-repeat;
    color: transparent;
    background-size: 20px 20px;
    width: 100%;
    height: 100%;
    /* transform: rotate(90deg); */
    background-position: center;
    transform: scale(0.75);
}
.slicknav_nav .slicknav__level2-item .slicknav_arrow::after {
    background-image: url(../images/plus--white.svg);
    background-size: 20px 20px;
}
.slicknav_open .slicknav_arrow::after {
    /* transform: rotate(45deg); */
    background-image: url(../images/minus--white.svg);
    background-size: 20px 3px;
    top: -.125em;
}
.slicknav_nav .slicknav_open.slicknav__level2-item .slicknav_arrow::after {
    background-image: url(../images/minus--white.svg);
    background-size: 20px 3px;
}

.slicknav_nav .slicknav__level2, .slicknav_nav .slicknav__level3 {
    margin: 0;
    padding: 0;
}

/* Sitemap */
.sitemap {}
.sitemap__list {}
.sitemap__item {}
.sitemap__link {}
.sitemap__text {}

.content__fullwidth > .content-section > [class^="col"] > .content-section,
.content__main__content > .content-section > [class^="col"] > .content-section {
    height: 100%;
}
/* Box weiss */
.box--white {
    padding: 3.85em 2em 2em;
    background-color: #fff;
    position: relative;
    transition: box-shadow 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.box--white > .gallery {
    width: 100%;
    flex: none;
}

.box--white > .ce-bodytext {
    width: 100%;
    flex: 1 0 auto;
    z-index: 1;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.box--white > .ce-bodytext > * {
    width: 100%;
}

.box--white > .ce-bodytext > :last-child {
    flex: 1 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.box--white:hover {
	box-shadow: 0 0 20px 0 rgba(74,74,74,0.3);
}


.box--white--no-header-link .ce-bodytext p:last-child a::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
}

.box--white .heading__link::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

.box--white .link--arrow {
    z-index: 1;
}

/* Box Grün */
.box--green {
    background: linear-gradient(140.64deg, #94C01F 0%, #3C9401 100%);
    color: #fff;
    padding: 0.5em 1em;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    box-shadow: 0 0 20px 0 rgba(74,74,74,0.3);
}

.box--green .col4 {
    min-width: 120px;
    width: 33.333% !important;
    flex: none;
}

.box--green .gallery__figure, .box--green .gallery, .box--green .gallery__figure, .box--green .gallery__image {
    margin: 0;
}

.box--green h3 {
    margin-top: 1em;
    margin-bottom: 0.5em;
}

/*.box--green .link--arrow {
    font-size: 0.85em;
}*/

.box--green h1, .box--green .heading--h1,
.box--green h2, .box--green .heading--h2,
.box--green h3, .box--green .heading--h3,
.box--green h4, .box--green .heading--h4,
.box--green h5, .box--green .heading--h5,
.box--green a {
    color: inherit;
}

/* Footer */
.footer {
    background-image: url(../images/dreiecke-footer.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;

    padding: 4.25em 0 0.5em;
    color: #fff;
    position: relative;
}

.footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(140.64deg, #94C01F 0%, #3C9401 100%);
    z-index: -1;
}

.footer h1, .footer .heading--h1,
.footer h2, .footer .heading--h2,
.footer h3, .footer .heading--h3,
.footer h4, .footer .heading--h4,
.footer h5, .footer .heading--h5,
.footer a {
    color: inherit;
}

.footer a {
    text-decoration: none;
}

.footer a:hover {
    text-decoration: underline;
}
/*
.footer .gallery {
    margin: -20px;
}

.footer > .container > .content-section:first-child > .col8 > .content-section > .col12 {
    padding: 0;
}

.footer .gallery__content {
    margin: 0;
}

.footer .gallery .col12 {
    padding: 0;
}*/

.footer .gallery__figure, .footer .gallery {
    margin: 0;
}

.footer .container > .content-section:last-child {
    font-size: 0.75em;
    color: #4A4A4A;
    margin-top: 3em;
}
/* ToTop-Button
.totop-button {
    display: block;
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 4em;
    height: 4em;
    background-color: #008e00;
    z-index: 10;
    background-image: url(../images/icon-top-white.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 25%;
    transform: translateX(5.5em);
    transition: all .125s ease-in-out;
}
.totop-button:hover {
    background-color: #1a7303;
}
.totop-button--visible {
    transform: translateX(0);
} */

/**
 * Media-Queries
 * Defaults: fileadmin/theme/css/t8-grid.css
 */

@media (min-width: 2000px) {
    .banner-slider {
        padding-bottom: 0;
        /*height: 680px;*/
        height: 550px;
    }

    .banner-slider::after {
        bottom: 220px;
    }

    .header__logo__link {
        width: 300px;
        margin-top: 3em;
    }

    .content__main {
        margin-top: -220px;
        min-height: 220px;
    }

    [data-banner-slider-text]::before {
        padding-top: calc(135px + 2.5em);
    }
}

@media (max-width: 2000px) {
    .banner-slider__element-wrap {
        background-position: left 80% center;
    }
}

@media (max-width: 1400px) {
    .box--green {
        font-size: 0.9em;
    }
}

@media (max-width: 1250px) {
    body {
        font-size: 90%;
    }

    /* Banner */
    [data-banner-slider-text]::before {
        font-size: 1.925em;
        /*padding-top: 15%;*/
        padding-top: 11%;
    }

    .header__logo__link {
        margin-top: 1%;
    }

    /* Grid */
    .col3.col-medium-6 {
        width: 50%;
        margin-top: 40px;
    }

    .col3.col-medium-6:first-child, .col3.col-medium-6:nth-child(2) {
        margin-top: 0;
    }

    /* Page Layout */
    .content__main__content {
        padding-left: 4em;
    }

    .box--green {
        font-size: 0.85em;
    }

    .box--green .col4 {
        min-width: 0;
    }

    .footer .gallery__figure {
        max-width: 300px;
    }

}

@media (max-width: 1023px) {
    body {
        font-size: 85%;
    }

    /* Mobile Navigation & Header Logo */
    .slicknav_menu {
        display: block;
    }

    .header {
        display: none;
    }

    .navigation-meta-col {
        display: none;
    }

    /* section paddings */
    .main .content__sidebar > .content-section,
    .main .content__main__content > .content-section {
        padding-bottom: 3.5em;
        padding-top: 3.5em;
    }

    .main .content__sidebar > .content-section:not([class^="background"]):not(.content-section--no-paddings) + .content-section:not([class^="background"]):not(.content-section--no-paddings),
    .main .content__main__content > .content-section:not([class^="background"]):not(.content-section--no-paddings) + .content-section:not([class^="background"]):not(.content-section--no-paddings),
    .main .content__sidebar > .content-section.background-grey:not(.content-section--no-paddings) + .content-section.background-grey:not(.content-section--no-paddings),
    .main .content__main__content > .content-section.background-grey:not(.content-section--no-paddings) + .content-section.background-grey:not(.content-section--no-paddings) {
        margin-top: -1.75em;
    }

    .main > .content__fullwidth > .content-section {
        padding-top: 4em;
        padding-bottom: 4em;
    }

    .main > .content__fullwidth > .content-section:not([class^="background"]) + .content-section:not([class^="background"]),
    .main > .content__fullwidth > .content-section.background-grey + .content-section.background-grey {
        margin-top: -2.25em;
    }

    /* Bildergallerie */
    .ce-left.ce-intext:not(.ce-nowrap) .gallery,
    .ce-right.ce-intext:not(.ce-nowrap) .gallery {
        width: 100%;
    }

    /* Uploads/Filelist/Dateiliste */
    .files__item[data-file-name] .files__size::before {
        content: none;
    }
    .files__name {
        width: calc(100% - 7em);
    }

    /* Anpassung Ankerlink wegen fixer mobiler Navigation */
    .anchor {
        padding-top: 80px; /* entspricht höhe mobile navigation */
        margin-top: -80px; /* entspricht höhe mobile navigation */
        display: block;
    }

    /* Wrapper - unter mobiler Navigation platzieren */
    .wrapper {
        padding-top: 80px; /* entspricht höhe mobile navigation */
    }

    .content__sidebar > .content-section:first-child > .col12,
    .content__sidebar > .content-section.content-section--no-paddings:first-child + .content-section > .col12 {
        display: flex;
        justify-content: flex-end;
    }

    .content__sidebar > .content-section:not(.content-section--no-paddings):first-child + .content-section,
    .content__sidebar > .content-section.content-section--no-paddings:first-child + .content-section + .content-section {
        padding-top: 4em;
    }

    .content__sidebar > .content-section:first-child .box--green,
    .content__sidebar > .content-section--no-paddings:first-child + .content-section .box--green {
        width: 100%;
        max-width: 325px;
        margin: 0;
        position: absolute;
        z-index: 2;
    }

    .content__sidebar > .content-section:not(.content-section--no-paddings):first-child ~ .content-section:last-child,
    .content__sidebar > .content-section.content-section--no-paddings:first-child + .content-section ~ .content-section:last-child {
        padding-bottom: 0 !important;
    }

    .content__sidebar > .content-section:not(.content-section--no-paddings):first-child ~ .content-section:last-child::after,
    .content__sidebar > .content-section.content-section--no-paddings:first-child + .content-section ~ .content-section:last-child::after {
        content: "";
        display: block;
        width: 100%;
        border-bottom: 1px solid #E3E3DC;
        margin: 0 20px;
        margin-top: 1.5em;
        margin-bottom: -1.5em;
    }

    .content__main {
        margin: 0;
        min-height: 0;
    }

    .content__main::before {
        content: none;
    }

    .content__main__content {
        padding: 0;
    }

    .header__logo__link {
        display: none;
    }

    [data-banner-slider-text]::before {
        /*top: 15%;*/
        top: 11%;
        bottom: 3em;
        padding: 20px;
        left: 40%;
        right: 0;
        transform: none;
        width: auto;
        align-items: flex-start;
    }

    .banner-slider::after {
        bottom: 0;
    }

    .footer .container > .content-section > .col4 > .content-section > .col8.col-medium-6 {
        width: 60%;
    }

    .footer .container > .content-section > .col4 > .content-section > .col4.col-medium-6 {
        width: 40%;
    }

    .footer .gallery__figure {
        max-width: 250px;
    }

    /* Banner */
    .banner-slider {
        /* 900/1600*100 */
        /* padding-bottom: 56.25%; */
        height: auto;
    }

    .banner-slider__caption {
        /* display: none; */
        position: relative;
    }
    .banner-slider__arrows {
        font-size: .75em;
    }

    /* Produkte-DB, genericcatalogue */
    .chosen-container {
        margin-bottom: 20px;
    }
    .content:not(.content--custom-media) > .tx-genericcatalogue__reset-col {
        width: auto;
    }
    .content:not(.content--custom-media) > .tx-genericcatalogue__textsearch-col {
        width: auto;
        flex-grow: 1;
    }
    .tx_genericcatalogue__select {
        margin-bottom: 20px;
    }

    /* News-Detail */
    .news-detail__related-news-article {
        margin-bottom: 20px;
    }
}

@media (max-width: 767px) {
    /* section paddings */
    .main .content__sidebar > .content-section,
    .main .content__main__content > .content-section {
        padding-bottom: 2.25em;
        padding-top: 2.25em;
    }

    .main .content__sidebar > .content-section:not([class^="background"]):not(.content-section--no-paddings) + .content-section:not([class^="background"]):not(.content-section--no-paddings),
    .main .content__main__content > .content-section:not([class^="background"]):not(.content-section--no-paddings) + .content-section:not([class^="background"]):not(.content-section--no-paddings),
    .main .content__sidebar > .content-section.background-grey:not(.content-section--no-paddings) + .content-section.background-grey:not(.content-section--no-paddings),
    .main .content__main__content > .content-section.background-grey:not(.content-section--no-paddings) + .content-section.background-grey:not(.content-section--no-paddings) {
        margin-top: -1.5em;
    }

    .main > .content__fullwidth > .content-section {
        padding-top: 2.75em;
        padding-bottom: 2.75em;
    }

    .main > .content__fullwidth > .content-section:not([class^="background"]) + .content-section:not([class^="background"]),
    .main > .content__fullwidth > .content-section.background-grey + .content-section.background-grey {
        margin-top: -1.85em;
    }

    /* Grid */
    .content-section > .col3.col-medium-6 + .col3.col-medium-6 {
        margin-top: 40px;
    }

    .content-section > .col4:not(:first-child),
    .content-section > .col6:not(:first-child),
    .content-section > .col8:not(:first-child),
    .content-section > .col9:not(:first-child) {
        margin-top: 40px;
    }

	.ce-textpic > .col8:last-child,
	.ce-textpic > .col4:last-child, {
        margin-top: 40px;
    }

    /* Banner */
    [data-banner-slider-text]::before {
        top: 0;
    }

    /* Footer */
    .footer {
        background-image: none;
        padding-top: 2.75em;
    }

    .footer > .container > .content-section:first-child > .col4 > .content-section > [class^="col"]:not(:first-child) {
        margin-top: 0;
    }

    .footer .container > .content-section:last-child {
        margin-top: 3em;
    }

    .footer .gallery__figure {
        max-width: 480px;
    }

    .footer .container > .content-section > .col4 > .content-section > .col8.col-medium-6 {
        width: 100%;
    }

    .footer .container > .content-section > .col4 > .content-section > .col4.col-medium-6 {
        width: 100%;
    }

    /* News-Detail */
    .news-detail__related-news-article {
        margin-bottom: 1em;
        border-bottom: 1px solid #ccc;
    }
    .content--medium-reduce-gaps:not(.content--custom-media) .news-detail__related-news-article {
        padding-bottom: 1em;
    }
    .news-detail__related-news-date-col { order: 0 }
    .news-detail__related-news-image-col { order: 0 }
    .news-detail__related-news-date {
        margin-bottom: 1em;
        margin-top: -.5em;
    }
    .news-detail__related-news-title {
        margin-top: 0;
        margin-bottom: 1em;
    }
}

@media (max-width: 480px) {
    .banner-slider {
        padding-bottom: 50%
    }

    [data-banner-slider-text]::before {
        font-size: 1.5em;
        align-items: center;
        bottom: 0;
    }

    .banner-slider__element-wrap {
        background-position: left 35% center;
    }

    .content__sidebar > .content-section:first-child .box--green,
    .content__sidebar > .content-section--no-paddings:first-child + .content-section .box--green {
        left: auto;
        right: 20px;
        max-width: none;
        width: auto;
        transform: translateY(-25%);
    }

    .content__main__content {
        padding-top: 2em;
    }

    .box--green {
        padding-top: 0;
        padding-bottom: 0;
    }

    .box--green .col4 {
        max-width: 65px;
        padding: 0 10px;
    }

    .box--green h3, .box--green .heading--h3 {
        font-size: 1.15em;
    }

    .box--green .heading--h4, .box--green h4 {
        margin-bottom: 0;
        font-size: 1.15em;
    }

    .box--green .heading--h4 + p, .box--green h4 + p {
        margin-top: 0;
    }
}

@media (max-width: 350px) {
    .banner-slider {
        padding-bottom: 60%
    }

    .banner-slider::after {
        background-size: cover;
    }

    [data-banner-slider-text]::before {
        font-size: 1.5em;
    }

}



.accordion{ 
  margin-bottom: 2em; 
}
.accordion__head{ 
  cursor: pointer;  
  -webkit-transition: color .3s ease-in-out; 
  transition: color .3s ease-in-out;  
  display: -ms-flexbox; display: 
  -webkit-flex; display: flex;  
  -webkit-justify-content: space-between; -ms-flex-pack: justify; 
  justify-content: space-between;  
  -webkit-align-items: baseline; 
  -ms-flex-align: baseline; 
  align-items: baseline;  
  padding: .75em 1.75em;  
  background-color: #94C01F;  
  color: #fff;  
  -webkit-transition: background-color .25s ease-in-out,color .25s ease-in-out; 
  transition: background-color .25s ease-in-out,color .25s ease-in-out; 
}
.accordion__head .heading{ 
  font-size: 1.25em;  
  line-height: 1.5;  
  letter-spacing: 0;  
  color: inherit;  
  font-weight: 600;  
  margin: 0; 
}
.accordion__head:hover .accordion__plus{ 
  -webkit-transform: scale(1.05); 
  -ms-transform: scale(1.05); 
  transform: scale(1.05); 
}
.accordion__head--open{ 
  background-color: #3C9401;  
  color: #fff; 
}
.accordion__head--open .accordion__plus::before{ 
  -webkit-transform: rotate(180deg); 
  -ms-transform: rotate(180deg); 
  transform: rotate(180deg); 
}
.accordion__head--open .accordion__plus::after{ 
  -webkit-transform: rotate(180deg); 
  -ms-transform: rotate(180deg); 
  transform: rotate(180deg); 
}
.accordion__plus{ 
  -webkit-flex: none; 
  -ms-flex: none; 
  flex: none;  
  margin-left: 1em;  
  position: relative;  
  font-size: 1em;  
  width: 1em;  
  height: 1em;  
  -webkit-transition: transform .25s ease-in-out; 
  transition: transform .25s ease-in-out; 
}
.accordion__plus::before,.accordion__plus::after{ 
  content: "";  
  position: absolute;  
  left: 0;  
  right: 0;  
  top: 50%;  
  border: 1px solid;  
  -webkit-transition: transform .25s ease-in-out; 
  transition: transform .25s ease-in-out; 
}
.accordion__plus::after{ 
  -webkit-transform: rotate(90deg); 
  -ms-transform: rotate(90deg); 
  transform: rotate(90deg); 
}
.accordion__content{ 
  overflow: hidden;  
  -webkit-transition: height .5s ease; 
  transition: height .5s ease; 
}
.accordion__content:not(.accordion__content--inprogress){ 
  height: auto !important; 
}
.accordion__content.accordion__content--closed{ 
  height: 0 !important; 
}
.accordion__content__inner{ 
  padding: 1.5em 1.75em;  
  background-color: #f5f5f5; 
}
.accordion__content__inner .ce-bodytext > *:first-child{ 
  margin-top: 0; 
}
.accordion__content__inner .ce-bodytext > *:last-child{ 
  margin-bottom: 0; 
}
.main > .container > .content-section.content-section--accordion{
  margin-top: 0 !important;  
  margin-bottom: 0 !important;  
  padding-top: 0;  
  padding-bottom: 0; 
}
.content-section + .content-section--accordion .accordion{ 
  margin-top: 2em; 
}
.content-section--accordion + .content-section--accordion .accordion{ 
  margin-top: -1.25em; 
}
.main .content__sidebar > .content-section.content-section--accordion + .content-section--accordion .accordion,
.main .content__main__content > .content-section.content-section--accordion + .content-section--accordion .accordion {
    margin-top: -5.25em; 
}
.content-section--accordion:last-child .accordion{
  margin-bottom: 0; 
}

