/* Fonts */
@import url('https://fonts.googleapis.com/css?family=Montserrat:400,600');

/**
 * Colour palette
 * #ffffff : White
 */

/* Standardschrift */
html {
    font-size: 100%;
}
body {
    /* Standard: Lauftext */
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 1em;
    line-height: 1.5em;
    color: #000000;
}

/* 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;
}
.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 */
/**
 * CSS-Selektor ".ce-bodytext a" NICHT nutzen um links zu formatieren(!),
 * da dies nahezu alle Module beeinflusst.
 * Auch die Eigenschaften für den Selektor "a" so beibelassen.
 */
a {
    text-decoration: none;
    color: inherit;
}

.content-section .news-detail__bodytext a {
    color: #4abcc2;
}

.link {
    text-decoration: underline;
}
.link:hover,
.link:focus,
.link:active {}

.link--internal {}
.link--internal-blank {}
.link--external {}
.link--external-blank {}
.link--download {}
.link--mail {}

.ce-bodytext [href*="linkedin.com"],
.ce-bodytext [href*="twitter.com"] {
    display: inline-flex;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    overflow: hidden;
    text-indent: -9999px;
    white-space: nowrap;
    margin-top: 1em;
    text-decoration: none;
}

.ce-bodytext [href*="linkedin.com"]:before,
.ce-bodytext [href*="twitter.com"]:before {
    color: #000;
    float: left;
    text-indent: 0;
    font-size: 2em;
}

.ce-bodytext [href*="linkedin.com"]:before {
    content: "\f08c";
}

.ce-bodytext [href*="twitter.com"]:before {
    content: "\f081";
}

/* Code-Snippet (used in KnowHow) */
.code-snippet__figure {
    margin: 0;
}
.code-snippet__caption {
    margin-top: -.5em;
    background-color: #f1f1f1;
    padding: 1em 1.25em 0;
    border-bottom: 2px solid #313131;
    margin-bottom: 2em;
}
.code-snippet__caption p:last-child {
    margin-bottom: 1em;
}

/* Tabellen */
.table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.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 {
    min-width: 230px;
    background-size: 20px 100%;
}
.contenttable td,
.contenttable th {
    padding: 0.5em 0.75em;
    border: 1px solid #ccc;
    transition: background-color .125s;
}
.contenttable p {
    margin: 0;
}
/* 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 {
    position: relative;
    z-index: 2;
}
.header__logo-link {
    display: block;
    padding-top: 20px;
    padding-bottom: 24px;
    width: 100%;
    text-align: center;
}
.header__logo-image {
}

/* Banner(-Slider) */
.banner {
    position: relative;
    z-index: 1;
}
.banner-slider {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 0;

    /* 800/3200*100 */
    padding-bottom: 25%;

    /* 900/1600*100 */
    /* padding-bottom: 56.25%; */ /* Bei Anpassung beachte .banner-slider__element-wrap--video .plyr__controls */
}
.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);
    color: inherit;
    font-size: 3em;
    line-height: 1em;
    position: absolute;
    top: 80px;
    right: 176px;
    left: 176px;
    bottom: 80px;
    text-align: center;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 0;
    z-index: 1;
}

.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%;
}
.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;
    max-width: 50%;
    display: flex;
}
.banner-slider__caption-text {
    background-color: rgba(0, 0, 0, 0.65);
    color: #ffffff;
    padding: 1em 1.5em;
}
.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%); }

/* Breadcrumb */
.breadcrumb {
    background-color: #eeeeef;
}
.breadcrumb__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    padding-right: 1em;
    line-height: 1.5em;
    padding-top: .25em;
    padding-bottom: .25em;
}
.breadcrumb__item {}
.breadcrumb__item:not(:last-child)::after {
    content: "\f054";
    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;
    font-size: .65em;
    position: relative;
    top: -.125em;
}
.breadcrumb__link {
    display: inline-block;
    padding: .5em 1em;
    text-align: right;
}
.breadcrumb__link--no-link {
    cursor: default;
}
.breadcrumb__item:last-child .breadcrumb__link {
    padding-right: 0;
}

/* 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;
}

/* News-Videos */
.mediaelement-video {
    display: block;
    height: 0;
    padding-bottom: 56.25%;
    position: relative;
}
.mediaelement-video video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    height: auto;
    max-width: 100%;
    height: 100%;
}

/* Navigations */

.navigations-col {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    padding-top: 2px;
    padding-bottom: 15px;
}


.navigations {
    height: 100%;
    text-transform: uppercase;
    text-align: center;
}

/* Navigation: Main */
.navigation {
    color: inherit;
    text-align: center;
}
.navigation__list {
    list-style: none;
    padding: 0;
    margin: 0;
    float: none;
    display: inline-block;
}
.navigation__item {
    float: left;
    position: relative;
    margin-left: .25em;
}

.navigation__link {
    display: inline-block;
    color: inherit;
    text-decoration: none;
    position: relative;
    padding: .5em 1em;
    border-bottom: 1px solid white;
    font-weight: 600;
}
.navigation__item:not(.navigation__item--active):hover .navigation__link {
    /* background-color: rgba(0,0,0,0.65); */
    /* color: white; */
    color: #4abcc2;
}
.navigation__item--active .navigation__link {
    /* background-color: #000000; */
    /* color: white; */
    color: #4abcc2;
}

/* Navigation: Main > Sub */
.navigation__level2 {
    display: none;
    position: absolute;
    top: 2.5em;
    list-style: none;
    padding: 0;
    margin: 0;
    background: #efeff0;
    min-width: 100%;
    padding-top: .25em;
    padding-bottom: .5em;
}
.navigation__item:hover > .navigation__level2 {
    display: block;
}
.navigation__level2-link {
    display: block;
    color: inherit;
    text-decoration: none;
    background-color: inherit;
    white-space: nowrap;
    padding-left: 1em;
    padding-right: 1em;
    padding-top: .25em;
    padding-bottom: .25em;
}
.navigation__level2-link:not(.navigation__level2-item--active):hover {
    background-color: rgba(0,0,0,0.65);
    color: white;
}
.navigation__level2-item--active {
    background-color: #000000;
    color: white;
}

/* Navigation: Meta */
.navigation-meta {
    display: inline-block;
    float: none;
}
.navigation-meta__list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.navigation-meta__text {
    display: inline-block;
    padding: .5em .25em;
}
.navigation-meta__item {
    float: left;
}
.navigation-meta__link {
    color: inherit;
    text-decoration: none;
    display: inline-block;
}

.navigation-meta__link--active::after {}

/* Footer-Navigation */
.navigation-footer__list {
    margin: 0;
    padding: 0;
    list-style: none;
    font-style: normal;
}
.navigation-footer__item {
    float: left;
}
.navigation-footer__text {
    display: inline-block;
    padding: .5em .25em;
}
.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__item--buttons-and-list > .button {
    display: none;
}

/* 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 {
    padding-left: 0;
    margin: 0 -0.25em 1em;
}
.navigation-category-list__item {
    margin: 0 0.25em 0.5em;
}
.navigation-category-list__item.button {
    border-width: 2px;
}
.navigation-category-list__item.button:hover,
.navigation-category-list__item.button:focus,
.navigation-category-list__item.button:has(> .navigation-category-list__link--active) {
    color: #000000;
    background-color: #ffffff;
}

.navigation-category-list__link {
    font-size: 1em;
}

/* 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 #000;
    background-color: transparent;
    font-weight: 400;
    font-size: 1.1em;
    line-height: 1.2272727272727273em;
    color: #000;
    border-radius: 0;
    padding-top: .7em;
    padding-bottom: .7em;
    padding-left: 20px;
    padding-right: 20px;
    font-family: inherit;
    outline: none;
    box-sizing: border-box;
}
.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 {
    line-height: 1.25em;
    margin-bottom: .75em;
    margin-top: 1em;
    font-weight: 600;
    text-transform: uppercase;
}
h1, .heading--h1 { font-size: 3em }
h2, .heading--h2 {font-size: 2em;}
h3, .heading--h3 { font-size: 1.5em; text-transform: unset;}
h4, .heading--h4 { font-size: 1em }
h5, .heading--h5 { font-size: .75em }

/* @keyframes blinker {
  50% {
    opacity: .25;
    transform: scale(3) translateY(0.25em) translateX(3em) rotate(-10deg);
    color: red;
  }
  55% {
      transform: scale(0.5) translateY(2.25em) translateX(1em) rotate(-10deg);
      color: red;
      opacity: 1;
  }
} */

[data-subheader] {
    position: relative;
}
[data-subheader]::after {
    content: attr(data-subheader);
    font-size: .75rem;
    display: inline-block;
    opacity: 1;
    position: absolute;
    bottom: 0;
    line-height: 0;
    left: 0;
    animation: blinker .125s linear infinite;
}

h4 + p, .heading--h4 + p{
    margin-top: 0.5em;
}

h5 + p, .heading--h5 + p{
    margin-top: 0.25em;
}

.heading--left { text-align: left }
.heading--right { text-align: right }
.heading--center { text-align: center }

/* Paragraphs */
p, .paragraph {
    color: inherit;
    margin-top: 0;
    margin-bottom: 1.5em;
}

/* 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 */

/* Backgrounds & section paddings */
.main {
    /**
     * Prevents horizontal scrollbars if background-grey is applied
     */
    overflow: hidden;

    /* wegen Inhaltselemente am Ende "Dateiliste" und  DropDown. */
    padding-bottom: 3em;
}

.main .container > .content-section {
    padding-bottom: 2em;
    padding-top: 2em;
}

.main .container .content-section--no-paddings {
    /**
     * Wegen CType shortcut.
     * Siehe: fileadmin/theme/extensions/fluid_styled_content/Resources/Private/Layouts/Default.html
     * Verhindert doppelte paddings
     */
    padding-bottom: 0;
    padding-top: 0;
}

.main .container > .content-section > header .heading,
.container > .content-section .ce-bodytext > .heading:first-child {
    margin-top: 0;
}

.background-grey,
.background-red,
.background-blue {
    position: relative;
}
.background-grey::before,
.background-red::before,
.background-blue::before {
    content: "";
    position: absolute;
    z-index: 0;
    bottom: 0;
    top: 0;
    width: calc(100vw);
    background-color: rgba(0,0,0,0.05);
    left: calc((100vw - 100%) / 2 * -1);
}
.background-red::before {
    background-color: rgba(165, 50, 57, 0.1);
}
.background-blue::before {
    background-color: rgba(110, 142, 165, 0.1);
}
.background-grey > *,
.background-red > *,
.background-blue > * {
    z-index: 1;
    position: relative;
}

/* Buttons */
.button,
.button-force,
.pagination a {
    display: inline-block;
    cursor: pointer;
    text-transform: none;
    text-decoration: none;
    color: #fff;
    text-align: center;
    border: 3px solid #000000;
    padding: .75em calc(1em + 3px) .75em 1em;
    background-color: #000;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    line-height: inherit;
    outline: none;
    min-width: 48px;
}
.button--small {
    font-size: .85em;
    padding: .25em .5em;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.button--ghost {
    background-color: transparent;
    color: #000;
    border-color: #000;
    text-transform: uppercase;
    border-width: 1px;
}
.button--has-no-action {
    cursor: default;
}
.button:hover,
.button:focus,
.button--active,
.pagination .active a {
   /* background-color: transparent;*/
    color: grey;
  /*  border-color: #000000;*/
}
.button--has-no-action:hover,
.button--has-no-action:focus {
    background-color: inherit;
    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: left;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 1em;
}

.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);
}

/* Messages */
.message {
    border: 1px solid #000000;
    margin-bottom: 40px;
    padding-left: 1em;
    padding-right: 1em;
    background-color: #f7f7f7;
    cursor: default;
    padding-top: 1em;
}
.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: 500;
    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 */
}

/* Styleguide */
.styleguide-heading {
    margin-bottom: 2rem;
}

.styleguide-description {
    display: block;
    margin-bottom: 0;
    margin-top: 0.15em;
    font-size: 1rem;
    line-height: 1.5rem;
    font-family: 'Work Sans', sans-serif;
    font-weight: 400;
    text-transform: none;
    color: #ccc;
}

/* 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__image-wrap {
    margin-bottom: 1em;
}

.news-list__heading--blog {
    margin-bottom: .125em;
}

.news-list__category-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.news-list__category-item--inline-plain {display: inline; font-style: italic; }
.news-list__category-item--inline-plain:not(:last-child)::after {
    content: ", "
}

.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: #d0d0d0;
    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__more::after {
    content: "";
    position: absolute;
    inset: 0;
}
.news-list__more--text {
    position: relative;
    font-weight: 600;
}
.news-list__more--text::after {
    content: "";
    display: inline-block;
    background-image: url(/fileadmin/theme/icons/icon-top-black.svg);
    background-repeat: no-repeat;
    transform: rotate(90deg) translateX(8px);
    position: relative;
    left: 1.25em;
    transition: 0.2s ease;
    width: 0.75rem;
    height: 1.5rem;
}
.news-list__more:hover .news-list__more--text::after {
    left: 2.5em;
}

.news-list__footer {
    flex-shrink: 0;
    align-self: flex-end;
}

.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 {}



/* Blog */
.news-list__date--blog {
    order: unset;
    margin-top: 0.25em;
    margin-bottom: 1em;
}
.news-list__categories--blog {
    order: -1;
    margin-top: 1.25em;
}

.news-list__teaser-text > p:last-child {
    margin-bottom: 0;
}
.news-list__teaser-text {
    margin-bottom: 1em;
}




/* News-Detail */
.news-detail__share {
    margin-top: 3em;
    margin-bottom: 1em;
}

.news-detail__teaser {

  font-weight: bold;
    line-height: 1.5em;
}

.news-detail__categories {
  font-style: italic;

}
.news-detail__categories--commaseparated span:not(:last-child)::after {
    content: ", ";
}

.news-detail__bodytext ul {
    margin-bottom: 2em;
}

/* 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;
}
.news-detail__related-news-article {
    margin-bottom: 40px;
}
.news-detail__related-news-date {
    margin-top: .5em;
    display: block;
    margin-bottom: -.9em;
}

/* Blog */
.tx-t3extblog {}

.blog__article {
    margin-bottom: 40px;
}
.blog__tag-cloud .button {
    text-transform: none;
    letter-spacing: 0;
}
.blog__tag-cloud-item .button:hover,
.blog__tag-cloud-item .button:focus,
.blog__tag-cloud-item .button--active {
    color: #ffffff;
    background-color: #000000;
}
.blog__tag-cloud-list {
    list-style: none;
    padding: 0;
    margin: 0 -.25em 1em;
}

.blog__tag-cloud-item  {
    display: inline-block;
    margin: 0 .25em .4em;
}

.blog__tag-cloud-item:not(.blog__tag-cloud-item--buttons) {
    display: inline-block;
    margin: 0 .25em .5em;
    font-size: .85em;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.blog__tag-cloud-item:not(:last-child):not(.blog__tag-cloud-item--buttons)::after {
    content: " | ";
}

.blog__thumbnail {
    margin: 0;
    padding: 0;
    margin-bottom: 20px;
}

.blog__heading {
    margin-top: 10px;
    margin-bottom: 10px;
}

.blog__comments-amount {
    display: inline-block;
    margin-bottom: .5em;
}

.blog__pagination {
    margin-top: 28px;
}

.form--blog-comment {
    padding: 2em 0;
}

.blog__teaser .gallery {
    display: none;
}

.blog__tag-cloud-amount {
    display: inline-block;
    background-color: inherit;
    color: inherit;
    /* opacity: .5; */
    text-align: center;
    margin-left: .5em;
}

.blog__tag-cloud-link:hover .blog__tag-cloud-amount,
.button--active .blog__tag-cloud-amount,
.button:focus .blog__tag-cloud-amount {
    opacity: 1;
    background-color: inherit;
}

/* Blog-Detail */
.blog__comment {
    background-color: #f3f3f3;
    padding: 1.25em 1.25em 1em;
    border-bottom: 1px solid black;
}
.blog__comment:last-child {
    border: 0;
}

.blog__comment p {
    margin-bottom: .25em;
}

.blog__comment-title {display: block;margin-bottom: .25em;}

/* Blog-Results */
.blog-results {}
.blog-results__list {
    list-style: none;
    width: 100%;
}
.blog-results__item {
    border-bottom: 1px solid #7e7e7e;
    padding-bottom: 2em;
    margin-bottom: 1.5em;
}
.blog-results__blog-title {
    margin-top: 0;
}
.blog-results__blog-link {}
.blog-results__blog-tags {}

/* tx_news und pw_comments: Kommentare */
#writeComment {
    min-width: 100%;
    margin: 0;
}

.comments-container {
    margin: 0;
    min-width: 100%;
}
#writeComment h3 {
    padding-top: 0;
    margin-bottom: .2em;
}

#writeComment textarea {
    padding-top: .7em;
    padding-bottom: .7em;
    padding-left: 20px;
    padding-right: 20px;
    font-family: inherit;
    font-size: 1.1em;
    line-height: 1.2272727272727273em;
}
.comments-list .comment-box {
    width: auto;
}

.reply-list li:before {
    content: none;
}

.comments-list {
    margin-top: 1em;
}
/* News-list-minimal */
.news-list-minimal {
    margin: 0;
    padding: 0;
    list-style: none;
}


.news-list-minimal__item {
    margin-bottom: 1.25em;
    border: 0;
    border-bottom: 1px solid #d0d0d0;
}

.news-list-minimal__item--topnews {
    background-image: linear-gradient(to right bottom, #0086be 0%, #00dde3 100%);
    color: white;
    padding: 20px;
    border-bottom: 0;
    position: relative;
    padding-bottom: 1px;
}

.news-list-minimal__item--topnews .news-list-minimal__footer {
    margin-bottom: 25px;
}
.news-list-minimal__item--topnews::after {
    content: "TOP";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    background-image: linear-gradient(to right top, #0086be 0%, #00dde3 100%);
    padding: 0 3em;
    transform-origin: bottom left;
    transform: translateY(-100%) translateX(0) rotate(-90deg);
    margin-top: 8.125em;
    font-size: .75em;
}

.news-list-minimal__item--topnews .button {
    color: white;
    border-color: white;
}


.news-list-minimal__date-time {}
.news-list-minimal__heading {
    display: inline;
    font-size: 1em;
}
.news-list-minimal__teaser {}
.news-list-minimal__teaser-text {
    margin-top: 25px;
}
.news-list-minimal__categories {}
.news-list-minimal__category-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.news-list-minimal__category-item {
    display: inline;
    font-size: .85em;
    text-transform: uppercase;
    letter-spacing: .05em;
    font-style: italic;
}
.news-list-minimal__category-item:not(:last-child)::after {
    content: " | ";
}
.news-list-minimal__footer {
    margin: 20px 0 30px;
}

.news-list-minimal-and-image__image-wrap {
    margin-bottom: 40px;
}


/* 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: #000;
}
.files__link:hover,
.files__link:focus {
    text-decoration: underline;
}
.files__link::before,
.files__link::after {
    content: none;
}
.files__description {
    display: block;
    color: #000;
}
.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--news-detail {
    margin-top: 20px;
    margin-bottom: 0;
}
.gallery__figure {
    position: relative;
    margin: 0;
    margin-bottom: 40px;
    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;
}

/* 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;
    font-size: 1em;
    color: grey;
}
.navigation-pagination__item,
.navigation-pagination .pagination li { /* genericcatalogue */
    float: left;
    position: relative;
}
.navigation-pagination__item + .navigation-pagination__item::before {
    content: "|";
    position: absolute;
    left: -1px;
    top: 50%;
    transform: translateY(-50%);
    color: grey;
}
.navigation-pagination__text {
    padding: 0.25em 1em;
    transition: 0.25s ease-in-out;
}
.navigation-pagination__text--active {
    font-weight: 600;
    color: #000;
}
.navigation-pagination__text:hover {
    color: #000;
}
.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;
}

/* Searchform */
.searchform__formelements-wrap {
    display: flex;
}
.searchform__textfield {
    width: 0;
    flex-grow: 1;
    margin-right: 10px;
}
.searchform__submit {
    float: none;
    margin: 0;
}

/* Horizontal Lines */
.ce-div {
    margin-top: 1.5em;
    margin-bottom: .8em;
    border: 0;
    border-bottom: 1px solid #d0d0d0;
}

/* 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;
}

/* 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;
}

/* 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: 60px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: calc(100% - 60px);
}
.slicknav_menu .slicknav_icon-bar {
    background: #222222;
}
.slicknav__logo-link {
    display: block;
}
.slicknav__logo-img {
    height: 40px;
    max-width: 149px;
    margin-left: 0;
}
.slicknav_btn {
    margin: 0;
    border-radius: 0;
    box-sizing: border-box;
    float: right;
    height: 60px;
    display: flex;
    align-items: center;
    width: 60px;
    justify-content: center;
    background-color: transparent;
    text-shadow: none;
    padding: 0;
    background-image: url(../images/navbar.svg);
    background-repeat: no-repeat;
    background-position: center;
    outline: none;
}

.slicknav_btn.slicknav_open {
    background-image: url(../images/plus--black.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-color: #ffffff;
    color: #000000;
    font-size: 18px;
    padding: 0;
    letter-spacing: 0.05em;
    line-height: 1.5;
    max-height: calc(100vh - 60px);
    overflow-y: auto;
    border-bottom: 1px solid black;
}

.slicknav_nav .slicknav_row,
.slicknav_nav a {
    margin: 0;
    padding: 0;
    display: inline-block;
}
.slicknav_nav .slicknav_item a,
.slicknav_nav .slicknav__item .slicknav__link,
.slicknav_nav .slicknav-meta__link,
.slicknav_nav .slicknav__level2-link  {
    display: inline-block;
    padding: 15.5px 20px;
    color: inherit;
}
.slicknav_nav .slicknav-meta__link {
    padding: 11px 20px;
    font-size: 15px;
}

.slicknav__item,
.slicknav-meta__item {
    border-top: 1px solid #000000;
    position: relative;
}

.slicknav_nav .slicknav_open {
    background-color: #5c5c5c;
    color: #ffffff;
}

.slicknav__level2-item {background-color: #a5a5a5;}
.slicknav__level2-item--active {background-color: #a5a5a5;}


.slicknav__item--active {
    background-color: #eaeaea;
    /* color: #222222; */
}
.slicknav_nav a:hover,
.slicknav_nav .slicknav_row:hover {
    border-radius: 0;
    color: inherit;
    /* position: relative; */
    background-color: inherit;
}
.slicknav_nav .slicknav_arrow {
    float: right;
    font-size: inherit;
    color: transparent;
    display: block;
    width: 42px;
    position: relative;
    height: 42px;
    position: absolute;
    right: 9.5px;
    top: 7px;
    /* transform: rotate(45deg); */
}
.slicknav_nav .slicknav_arrow::after {
    content: "+" !important;
    display: inline-block;
    position: absolute;
    right: 0;
    margin-top: 0;
    top: 0;
    background-image: url(../images/plus.svg);
    background-repeat: no-repeat;
    color: transparent;
    background-size: 26px 26px;
    width: 100%;
    height: 100%;
    /* transform: rotate(90deg); */
    background-position: center;
}
.slicknav_open .slicknav_arrow::after {
    /* transform: rotate(45deg); */
    background-image: url(../images/minus.svg);
    background-size: 26px 3px;
    top: -1px;
}
.slicknav-meta__item:not(.slicknav-meta__item--language) {
    background-color: #e9e9e9;
    color: #5c5c5c;
}
.slicknav-meta__item--language {
    width: 25%;
    float: left;
    text-align: center;
    background-color: #eeeeee;
    color: #5b5b5b;
}
.slicknav-meta__item--active {
    background-color: #5c5c5c;
    color: inherit;
}
.slicknav_nav .slicknav__level2 {
    padding-left: 0;
    margin-left: 0;
    background-color: #a5a5a5;
}

/* Sitemap */
.sitemap {}
.sitemap__list {}
.sitemap__item {}
.sitemap__link {}
.sitemap__text {}

/* Footer */
.footer {
    background-color: #000000;
    padding: 3em 0;
    margin-top: 3em;
    color: #fff;
}

/* ToTop-Button */
.totop-button {
    display: block;
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 4em;
    height: 4em;
    background-color: #000000;
    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--visible {
    transform: translateX(0);
}

/* Cookie-Banner */
#cc-notification.cc-mobile {
    position: fixed !important;
}
#cc-notification h2 {
    margin-right: 145px !important;
}
#cc-notification {
    background-color: #f2f2f2 !important;
}
#cc-notification #cc-notification-wrapper {
    padding: 12px 20px 0 !important;
}
#cc-notification #cc-notification-permissions li strong {
    color: #000000 !important;
}
#cc-notification h2 span, #cc-notification h2 {
    margin-bottom: 12px !important;
}
#cc-notification h2, #cc-notification h3, #cc-notification p {
    font-size: 1.1em;
    color: #333 !important;
    line-height: 1.5;
    text-transform: inherit;
    letter-spacing: inherit;
}
#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: 1px solid #ffffff;
    display: inline-block;
    border-radius: 0 !important;
    font-size: 16px;
    padding: 0.125em 1.25em;
    background-color: #1a171b !important;
    border-color: #2d64a5;
    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: #000000 !important;
    text-decoration: none !important;
    background-color: transparent !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: #000000!important;
    text-decoration: underline !important;
}
#cc-notification a:hover{
    color: #000000 !important;
    text-decoration: none !important;
}
#cc-notification.cc-mobile h2 span,
#cc-notification.cc-mobile h2 {
    font-size: 1.05em;
    line-height: 1.6;
}
#cc-notification.cc-mobile {
    bottom: auto !important;
    top: 58.75px;
    z-index: 999 !important;
}
#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-Queries
 * Defaults: fileadmin/theme/css/t8-grid.css
 */

@media (max-width: 1250px) {
    .logo-col {
        width: 100%;
        text-align: center;
    }
    .header__logo-link {
        /* display: inline-block; */
    }
    .navigations-col {
        width: 100%;
        padding-top: 0;
        padding-bottom: 0;
    }
    .navigation-meta-col {
        /* text-align: center; */
    }
    .navigation-meta {
        /* display: inline-block; */
        /* float: none; */
    }
    .navigation {
    }
    .navigation__list  {
        /* float: none; */
        /* display: inline-block; */
    }

    /**
     * Tabellen
     * Entfernung Mouseover Effekt wegen "Scroll-Schatten"
     */
    /* .contenttablecell-hover {
        background-color: transparent;
    }
    th.contenttablecell-hover.contenttablecell-hover--vertical,
    th.contenttablecell-hover.contenttablecell-hover--horizontal {
        background-color: transparent;
    }
    .contenttablecell-hover--horizontal {}
    .contenttablecell-hover--vertical {}
    .contenttablecell-hover--horizontal.contenttablecell-hover--vertical {
        background-color: transparent;
    } */
}

@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;
    }
}

@media (max-width: 1023px) {
    body {
        font-size: 85%;
    }

    /* section paddings */
    .main .container > .content-section {
        padding-bottom: 1em;
        padding-top: 1em;
    }

    /* 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);
    }

    /* Mobile Navigation & Header Logo */
    .slicknav_menu {
        display: block;
    }
    .navigations {
        display: none;
    }
    .header__logo-link {
        display: none;
    }

    /* Anpassung Ankerlink wegen fixer mobiler Navigation */
    .anchor {
        padding-top: 3.125em; /* entspricht höhe mobile navigation */
        margin-top: -3.125em; /* entspricht höhe mobile navigation */
        display: block;
    }

    /* Wrapper - unter mobiler NAvigation platzieren */
    .wrapper {
        padding-top: 3.125em; /* entspricht höhe mobile navigation */
    }

    /* Banner */
    .banner-slider {
        /* 900/1600*100 */
        padding-bottom: 56.25%;
    }
    .banner-slider__caption {
        display: none;
    }
    .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) {
    body {
        font-size: 75%
    }

    /* 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;
    }

    /**
     * Korrektur inkonsitente Überschrifteabstände zu Abstätzen oberhalb bei
     * zwei untereinander erfassten Spaltenelementen mit jeweils Inhalt inkl.
     * Überschriften.
     */
    .content-section > [class*="col"]:nth-child(2) >.content-section .col12 > .heading:not(.heading--h1),
    .content-section > [class*="col"]:nth-child(2) + * >.content-section .col12 > .heading:not(.heading--h1) {
        margin-top: 1em
    }
}
