@font-face {
    font-family: "Roboto";
    font-style: italic;
    font-weight: 300;
    src: url("../fonts/roboto-v29-latin-300italic.eot");
    src: local(""), url("../fonts/roboto-v29-latin-300italic.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v29-latin-300italic.woff2") format("woff2"), url("../fonts/roboto-v29-latin-300italic.woff") format("woff"), url("../fonts/roboto-v29-latin-300italic.ttf") format("truetype"), url("../fonts/roboto-v29-latin-300italic.svg#Roboto") format("svg")
}

@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/roboto-v29-latin-300.eot");
    src: local(""), url("../fonts/roboto-v29-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v29-latin-300.woff2") format("woff2"), url("../fonts/roboto-v29-latin-300.woff") format("woff"), url("../fonts/roboto-v29-latin-300.ttf") format("truetype"), url("../fonts/roboto-v29-latin-300.svg#Roboto") format("svg")
}

@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/roboto-v29-latin-regular.eot");
    src: local(""), url("../fonts/roboto-v29-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v29-latin-regular.woff2") format("woff2"), url("../fonts/roboto-v29-latin-regular.woff") format("woff"), url("../fonts/roboto-v29-latin-regular.ttf") format("truetype"), url("../fonts/roboto-v29-latin-regular.svg#Roboto") format("svg")
}

@font-face {
    font-family: "Roboto";
    font-style: italic;
    font-weight: 400;
    src: url("../fonts/roboto-v29-latin-italic.eot");
    src: local(""), url("../fonts/roboto-v29-latin-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v29-latin-italic.woff2") format("woff2"), url("../fonts/roboto-v29-latin-italic.woff") format("woff"), url("../fonts/roboto-v29-latin-italic.ttf") format("truetype"), url("../fonts/roboto-v29-latin-italic.svg#Roboto") format("svg")
}

@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/roboto-v29-latin-700.eot");
    src: local(""), url("../fonts/roboto-v29-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v29-latin-700.woff2") format("woff2"), url("../fonts/roboto-v29-latin-700.woff") format("woff"), url("../fonts/roboto-v29-latin-700.ttf") format("truetype"), url("../fonts/roboto-v29-latin-700.svg#Roboto") format("svg")
}

@font-face {
    font-family: "Roboto";
    font-style: italic;
    font-weight: 700;
    src: url("../fonts/roboto-v29-latin-700italic.eot");
    src: local(""), url("../fonts/roboto-v29-latin-700italic.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-v29-latin-700italic.woff2") format("woff2"), url("../fonts/roboto-v29-latin-700italic.woff") format("woff"), url("../fonts/roboto-v29-latin-700italic.ttf") format("truetype"), url("../fonts/roboto-v29-latin-700italic.svg#Roboto") format("svg")
}

@font-face {
    font-family: "Roboto Condensed";
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/roboto-condensed-v19-latin-300.eot");
    src: local(""), url("../fonts/roboto-condensed-v19-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-condensed-v19-latin-300.woff2") format("woff2"), url("../fonts/roboto-condensed-v19-latin-300.woff") format("woff"), url("../fonts/roboto-condensed-v19-latin-300.ttf") format("truetype"), url("../fonts/roboto-condensed-v19-latin-300.svg#RobotoCondensed") format("svg")
}

@font-face {
    font-family: "Roboto Condensed";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/roboto-condensed-v19-latin-regular.eot");
    src: local(""), url("../fonts/roboto-condensed-v19-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-condensed-v19-latin-regular.woff2") format("woff2"), url("../fonts/roboto-condensed-v19-latin-regular.woff") format("woff"), url("../fonts/roboto-condensed-v19-latin-regular.ttf") format("truetype"), url("../fonts/roboto-condensed-v19-latin-regular.svg#RobotoCondensed") format("svg")
}

@font-face {
    font-family: "Roboto Condensed";
    font-style: italic;
    font-weight: 400;
    src: url("../fonts/roboto-condensed-v19-latin-italic.eot");
    src: local(""), url("../fonts/roboto-condensed-v19-latin-italic.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-condensed-v19-latin-italic.woff2") format("woff2"), url("../fonts/roboto-condensed-v19-latin-italic.woff") format("woff"), url("../fonts/roboto-condensed-v19-latin-italic.ttf") format("truetype"), url("../fonts/roboto-condensed-v19-latin-italic.svg#RobotoCondensed") format("svg")
}

@font-face {
    font-family: "Roboto Condensed";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/roboto-condensed-v19-latin-700.eot");
    src: local(""), url("../fonts/roboto-condensed-v19-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/roboto-condensed-v19-latin-700.woff2") format("woff2"), url("../fonts/roboto-condensed-v19-latin-700.woff") format("woff"), url("../fonts/roboto-condensed-v19-latin-700.ttf") format("truetype"), url("../fonts/roboto-condensed-v19-latin-700.svg#RobotoCondensed") format("svg")
}

.font-family--1 {
    text-transform: none;
    font-weight: 300
}

.font-family--2,
.text--uppercase--typography,
.schriftgroesse-h3,
.schriftgroesse-h2,
.schriftgroesse-h1,
h6,
h5,
h4,
h3,
h2,
h1,
body {
    text-transform: none
}

/*!
 * Hamburgers 
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
    padding: 15px 15px;
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: .15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: rgba(0, 0, 0, 0);
    border: 0;
    margin: 0;
    overflow: visible
}

.hamburger:hover {
    opacity: .7
}

.hamburger.is-active:hover {
    opacity: .7
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
    background-color: #000
}

.hamburger-box {
    width: 40px;
    height: 24px;
    display: inline-block;
    position: relative
}

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: .15s;
    transition-timing-function: ease
}

.hamburger-inner::before,
.hamburger-inner::after {
    content: "";
    display: block
}

.hamburger-inner::before {
    top: -10px
}

.hamburger-inner::after {
    bottom: -10px
}

.hamburger--3dx .hamburger-box {
    perspective: 80px
}

.hamburger--3dx .hamburger-inner {
    transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dx .hamburger-inner::before,
.hamburger--3dx .hamburger-inner::after {
    transition: transform 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dx.is-active .hamburger-inner {
    background-color: rgba(0, 0, 0, 0) !important;
    transform: rotateY(180deg)
}

.hamburger--3dx.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dx.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dx-r .hamburger-box {
    perspective: 80px
}

.hamburger--3dx-r .hamburger-inner {
    transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dx-r .hamburger-inner::before,
.hamburger--3dx-r .hamburger-inner::after {
    transition: transform 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dx-r.is-active .hamburger-inner {
    background-color: rgba(0, 0, 0, 0) !important;
    transform: rotateY(-180deg)
}

.hamburger--3dx-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dx-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dy .hamburger-box {
    perspective: 80px
}

.hamburger--3dy .hamburger-inner {
    transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dy .hamburger-inner::before,
.hamburger--3dy .hamburger-inner::after {
    transition: transform 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dy.is-active .hamburger-inner {
    background-color: rgba(0, 0, 0, 0) !important;
    transform: rotateX(-180deg)
}

.hamburger--3dy.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dy-r .hamburger-box {
    perspective: 80px
}

.hamburger--3dy-r .hamburger-inner {
    transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dy-r .hamburger-inner::before,
.hamburger--3dy-r .hamburger-inner::after {
    transition: transform 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dy-r.is-active .hamburger-inner {
    background-color: rgba(0, 0, 0, 0) !important;
    transform: rotateX(180deg)
}

.hamburger--3dy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dxy .hamburger-box {
    perspective: 80px
}

.hamburger--3dxy .hamburger-inner {
    transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dxy .hamburger-inner::before,
.hamburger--3dxy .hamburger-inner::after {
    transition: transform 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dxy.is-active .hamburger-inner {
    background-color: rgba(0, 0, 0, 0) !important;
    transform: rotateX(180deg) rotateY(180deg)
}

.hamburger--3dxy.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dxy-r .hamburger-box {
    perspective: 80px
}

.hamburger--3dxy-r .hamburger-inner {
    transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dxy-r .hamburger-inner::before,
.hamburger--3dxy-r .hamburger-inner::after {
    transition: transform 0s .1s cubic-bezier(0.645, 0.045, 0.355, 1)
}

.hamburger--3dxy-r.is-active .hamburger-inner {
    background-color: rgba(0, 0, 0, 0) !important;
    transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg)
}

.hamburger--3dxy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--arrow.is-active .hamburger-inner::before {
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1)
}

.hamburger--arrow.is-active .hamburger-inner::after {
    transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1)
}

.hamburger--arrow-r.is-active .hamburger-inner::before {
    transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1)
}

.hamburger--arrow-r.is-active .hamburger-inner::after {
    transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1)
}

.hamburger--arrowalt .hamburger-inner::before {
    transition: top .1s .1s ease, transform .1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.hamburger--arrowalt .hamburger-inner::after {
    transition: bottom .1s .1s ease, transform .1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.hamburger--arrowalt.is-active .hamburger-inner::before {
    top: 0;
    transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
    transition: top .1s ease, transform .1s .1s cubic-bezier(0.895, 0.03, 0.685, 0.22)
}

.hamburger--arrowalt.is-active .hamburger-inner::after {
    bottom: 0;
    transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
    transition: bottom .1s ease, transform .1s .1s cubic-bezier(0.895, 0.03, 0.685, 0.22)
}

.hamburger--arrowalt-r .hamburger-inner::before {
    transition: top .1s .1s ease, transform .1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.hamburger--arrowalt-r .hamburger-inner::after {
    transition: bottom .1s .1s ease, transform .1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
    top: 0;
    transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
    transition: top .1s ease, transform .1s .1s cubic-bezier(0.895, 0.03, 0.685, 0.22)
}

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
    transition: bottom .1s ease, transform .1s .1s cubic-bezier(0.895, 0.03, 0.685, 0.22)
}

.hamburger--arrowturn.is-active .hamburger-inner {
    transform: rotate(-180deg)
}

.hamburger--arrowturn.is-active .hamburger-inner::before {
    transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1)
}

.hamburger--arrowturn.is-active .hamburger-inner::after {
    transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1)
}

.hamburger--arrowturn-r.is-active .hamburger-inner {
    transform: rotate(-180deg)
}

.hamburger--arrowturn-r.is-active .hamburger-inner::before {
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1)
}

.hamburger--arrowturn-r.is-active .hamburger-inner::after {
    transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1)
}

.hamburger--boring .hamburger-inner,
.hamburger--boring .hamburger-inner::before,
.hamburger--boring .hamburger-inner::after {
    transition-property: none
}

.hamburger--boring.is-active .hamburger-inner {
    transform: rotate(45deg)
}

.hamburger--boring.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0
}

.hamburger--boring.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg)
}

.hamburger--collapse .hamburger-inner {
    top: auto;
    bottom: 0;
    transition-duration: .13s;
    transition-delay: .13s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--collapse .hamburger-inner::after {
    top: -20px;
    transition: top .2s .2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity .1s linear
}

.hamburger--collapse .hamburger-inner::before {
    transition: top .12s .2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform .13s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--collapse.is-active .hamburger-inner {
    transform: translate3d(0, -10px, 0) rotate(-45deg);
    transition-delay: .22s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top .2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity .1s .22s linear
}

.hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-90deg);
    transition: top .1s .16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform .13s .25s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--collapse-r .hamburger-inner {
    top: auto;
    bottom: 0;
    transition-duration: .13s;
    transition-delay: .13s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--collapse-r .hamburger-inner::after {
    top: -20px;
    transition: top .2s .2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity .1s linear
}

.hamburger--collapse-r .hamburger-inner::before {
    transition: top .12s .2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform .13s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--collapse-r.is-active .hamburger-inner {
    transform: translate3d(0, -10px, 0) rotate(45deg);
    transition-delay: .22s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--collapse-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top .2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity .1s .22s linear
}

.hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top .1s .16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform .13s .25s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--elastic .hamburger-inner {
    top: 2px;
    transition-duration: .275s;
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55)
}

.hamburger--elastic .hamburger-inner::before {
    top: 10px;
    transition: opacity .125s .275s ease
}

.hamburger--elastic .hamburger-inner::after {
    top: 20px;
    transition: transform .275s cubic-bezier(0.68, -0.55, 0.265, 1.55)
}

.hamburger--elastic.is-active .hamburger-inner {
    transform: translate3d(0, 10px, 0) rotate(135deg);
    transition-delay: .075s
}

.hamburger--elastic.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0
}

.hamburger--elastic.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-270deg);
    transition-delay: .075s
}

.hamburger--elastic-r .hamburger-inner {
    top: 2px;
    transition-duration: .275s;
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55)
}

.hamburger--elastic-r .hamburger-inner::before {
    top: 10px;
    transition: opacity .125s .275s ease
}

.hamburger--elastic-r .hamburger-inner::after {
    top: 20px;
    transition: transform .275s cubic-bezier(0.68, -0.55, 0.265, 1.55)
}

.hamburger--elastic-r.is-active .hamburger-inner {
    transform: translate3d(0, 10px, 0) rotate(-135deg);
    transition-delay: .075s
}

.hamburger--elastic-r.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0
}

.hamburger--elastic-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(270deg);
    transition-delay: .075s
}

.hamburger--emphatic {
    overflow: hidden
}

.hamburger--emphatic .hamburger-inner {
    transition: background-color .125s .175s ease-in
}

.hamburger--emphatic .hamburger-inner::before {
    left: 0;
    transition: transform .125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top .05s .125s linear, left .125s .175s ease-in
}

.hamburger--emphatic .hamburger-inner::after {
    top: 10px;
    right: 0;
    transition: transform .125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top .05s .125s linear, right .125s .175s ease-in
}

.hamburger--emphatic.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: rgba(0, 0, 0, 0) !important
}

.hamburger--emphatic.is-active .hamburger-inner::before {
    left: -80px;
    top: -80px;
    transform: translate3d(80px, 80px, 0) rotate(45deg);
    transition: left .125s ease-out, top .05s .125s linear, transform .125s .175s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.hamburger--emphatic.is-active .hamburger-inner::after {
    right: -80px;
    top: -80px;
    transform: translate3d(-80px, 80px, 0) rotate(-45deg);
    transition: right .125s ease-out, top .05s .125s linear, transform .125s .175s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.hamburger--emphatic-r {
    overflow: hidden
}

.hamburger--emphatic-r .hamburger-inner {
    transition: background-color .125s .175s ease-in
}

.hamburger--emphatic-r .hamburger-inner::before {
    left: 0;
    transition: transform .125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top .05s .125s linear, left .125s .175s ease-in
}

.hamburger--emphatic-r .hamburger-inner::after {
    top: 10px;
    right: 0;
    transition: transform .125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top .05s .125s linear, right .125s .175s ease-in
}

.hamburger--emphatic-r.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: rgba(0, 0, 0, 0) !important
}

.hamburger--emphatic-r.is-active .hamburger-inner::before {
    left: -80px;
    top: 80px;
    transform: translate3d(80px, -80px, 0) rotate(-45deg);
    transition: left .125s ease-out, top .05s .125s linear, transform .125s .175s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.hamburger--emphatic-r.is-active .hamburger-inner::after {
    right: -80px;
    top: 80px;
    transform: translate3d(-80px, -80px, 0) rotate(45deg);
    transition: right .125s ease-out, top .05s .125s linear, transform .125s .175s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.hamburger--minus .hamburger-inner::before,
.hamburger--minus .hamburger-inner::after {
    transition: bottom .08s 0s ease-out, top .08s 0s ease-out, opacity 0s linear
}

.hamburger--minus.is-active .hamburger-inner::before,
.hamburger--minus.is-active .hamburger-inner::after {
    opacity: 0;
    transition: bottom .08s ease-out, top .08s ease-out, opacity 0s .08s linear
}

.hamburger--minus.is-active .hamburger-inner::before {
    top: 0
}

.hamburger--minus.is-active .hamburger-inner::after {
    bottom: 0
}

.hamburger--slider .hamburger-inner {
    top: 2px
}

.hamburger--slider .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: .15s
}

.hamburger--slider .hamburger-inner::after {
    top: 20px
}

.hamburger--slider.is-active .hamburger-inner {
    transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-5.7142857143px, -6px, 0);
    opacity: 0
}

.hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-90deg)
}

.hamburger--slider-r .hamburger-inner {
    top: 2px
}

.hamburger--slider-r .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: .15s
}

.hamburger--slider-r .hamburger-inner::after {
    top: 20px
}

.hamburger--slider-r.is-active .hamburger-inner {
    transform: translate3d(0, 10px, 0) rotate(-45deg)
}

.hamburger--slider-r.is-active .hamburger-inner::before {
    transform: rotate(45deg) translate3d(5.7142857143px, -6px, 0);
    opacity: 0
}

.hamburger--slider-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(90deg)
}

.hamburger--spin .hamburger-inner {
    transition-duration: .22s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--spin .hamburger-inner::before {
    transition: top .1s .25s ease-in, opacity .1s ease-in
}

.hamburger--spin .hamburger-inner::after {
    transition: bottom .1s .25s ease-in, transform .22s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--spin.is-active .hamburger-inner {
    transform: rotate(225deg);
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top .1s ease-out, opacity .1s .12s ease-out
}

.hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom .1s ease-out, transform .22s .12s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--spin-r .hamburger-inner {
    transition-duration: .22s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--spin-r .hamburger-inner::before {
    transition: top .1s .25s ease-in, opacity .1s ease-in
}

.hamburger--spin-r .hamburger-inner::after {
    transition: bottom .1s .25s ease-in, transform .22s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--spin-r.is-active .hamburger-inner {
    transform: rotate(-225deg);
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--spin-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top .1s ease-out, opacity .1s .12s ease-out
}

.hamburger--spin-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg);
    transition: bottom .1s ease-out, transform .22s .12s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--stand .hamburger-inner {
    transition: transform .075s .15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s .075s linear
}

.hamburger--stand .hamburger-inner::before {
    transition: top .075s .075s ease-in, transform .075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--stand .hamburger-inner::after {
    transition: bottom .075s .075s ease-in, transform .075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--stand.is-active .hamburger-inner {
    transform: rotate(90deg);
    background-color: rgba(0, 0, 0, 0) !important;
    transition: transform .075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s .15s linear
}

.hamburger--stand.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top .075s .1s ease-out, transform .075s .15s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--stand.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom .075s .1s ease-out, transform .075s .15s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--stand-r .hamburger-inner {
    transition: transform .075s .15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s .075s linear
}

.hamburger--stand-r .hamburger-inner::before {
    transition: top .075s .075s ease-in, transform .075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--stand-r .hamburger-inner::after {
    transition: bottom .075s .075s ease-in, transform .075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--stand-r.is-active .hamburger-inner {
    transform: rotate(-90deg);
    background-color: rgba(0, 0, 0, 0) !important;
    transition: transform .075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s .15s linear
}

.hamburger--stand-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top .075s .1s ease-out, transform .075s .15s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--stand-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom .075s .1s ease-out, transform .075s .15s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--squeeze .hamburger-inner {
    transition-duration: .075s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--squeeze .hamburger-inner::before {
    transition: top .075s .12s ease, opacity .075s ease
}

.hamburger--squeeze .hamburger-inner::after {
    transition: bottom .075s .12s ease, transform .075s cubic-bezier(0.55, 0.055, 0.675, 0.19)
}

.hamburger--squeeze.is-active .hamburger-inner {
    transform: rotate(45deg);
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top .075s ease, opacity .075s .12s ease
}

.hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom .075s ease, transform .075s .12s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.hamburger--vortex .hamburger-inner {
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1)
}

.hamburger--vortex .hamburger-inner::before,
.hamburger--vortex .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: .1s;
    transition-timing-function: linear
}

.hamburger--vortex .hamburger-inner::before {
    transition-property: top, opacity
}

.hamburger--vortex .hamburger-inner::after {
    transition-property: bottom, transform
}

.hamburger--vortex.is-active .hamburger-inner {
    transform: rotate(765deg);
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1)
}

.hamburger--vortex.is-active .hamburger-inner::before,
.hamburger--vortex.is-active .hamburger-inner::after {
    transition-delay: 0s
}

.hamburger--vortex.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0
}

.hamburger--vortex.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg)
}

.hamburger--vortex-r .hamburger-inner {
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1)
}

.hamburger--vortex-r .hamburger-inner::before,
.hamburger--vortex-r .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: .1s;
    transition-timing-function: linear
}

.hamburger--vortex-r .hamburger-inner::before {
    transition-property: top, opacity
}

.hamburger--vortex-r .hamburger-inner::after {
    transition-property: bottom, transform
}

.hamburger--vortex-r.is-active .hamburger-inner {
    transform: rotate(-765deg);
    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1)
}

.hamburger--vortex-r.is-active .hamburger-inner::before,
.hamburger--vortex-r.is-active .hamburger-inner::after {
    transition-delay: 0s
}

.hamburger--vortex-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0
}

.hamburger--vortex-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg)
}

/*!
 * Hover.css (http://ianlunn.github.io/Hover/)
 * Version: 2.3.2
 * Author: Ian Lunn @IanLunn
 * Author URL: http://ianlunn.co.uk/
 * Github: https://github.com/IanLunn/Hover

 * Hover.css Copyright Ian Lunn 2017. Generated with Sass.
 */
.hvr-grow {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    transition-duration: .3s;
    transition-property: transform
}

.hvr-grow:active,
.hvr-grow:focus,
.hvr-grow:hover {
    transform: scale(1.1)
}

.hvr-shrink {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    transition-duration: .3s;
    transition-property: transform
}

.hvr-shrink:active,
.hvr-shrink:focus,
.hvr-shrink:hover {
    transform: scale(0.9)
}

@keyframes hvr-pulse {
    25% {
        transform: scale(1.1)
    }

    75% {
        transform: scale(0.9)
    }
}

.hvr-pulse {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0)
}

.hvr-pulse:active,
.hvr-pulse:focus,
.hvr-pulse:hover {
    animation-name: hvr-pulse;
    animation-duration: 1s;
    animation-timing-function: linear;
    animation-iteration-count: infinite
}

@keyframes hvr-pulse-grow {
    to {
        transform: scale(1.1)
    }
}

.hvr-pulse-grow {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0)
}

.hvr-pulse-grow:active,
.hvr-pulse-grow:focus,
.hvr-pulse-grow:hover {
    animation-name: hvr-pulse-grow;
    animation-duration: .3s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: alternate
}

@keyframes hvr-pulse-shrink {
    to {
        transform: scale(0.9)
    }
}

.hvr-pulse-shrink {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0)
}

.hvr-pulse-shrink:active,
.hvr-pulse-shrink:focus,
.hvr-pulse-shrink:hover {
    animation-name: hvr-pulse-shrink;
    animation-duration: .3s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: alternate
}

@keyframes hvr-push {
    50% {
        transform: scale(0.8)
    }

    100% {
        transform: scale(1)
    }
}

.hvr-push {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0)
}

.hvr-push:active,
.hvr-push:focus,
.hvr-push:hover {
    animation-name: hvr-push;
    animation-duration: .3s;
    animation-timing-function: linear;
    animation-iteration-count: 1
}

@keyframes hvr-pop {
    50% {
        transform: scale(1.2)
    }
}

.hvr-pop {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0)
}

.hvr-pop:active,
.hvr-pop:focus,
.hvr-pop:hover {
    animation-name: hvr-pop;
    animation-duration: .3s;
    animation-timing-function: linear;
    animation-iteration-count: 1
}

.hvr-float {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    transition-duration: .3s;
    transition-property: transform;
    transition-timing-function: ease-out
}

.hvr-float:active,
.hvr-float:focus,
.hvr-float:hover {
    transform: translateY(-8px)
}

.hvr-sink {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    transition-duration: .3s;
    transition-property: transform;
    transition-timing-function: ease-out
}

.hvr-sink:active,
.hvr-sink:focus,
.hvr-sink:hover {
    transform: translateY(8px)
}

.hvr-forward {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    transition-duration: .3s;
    transition-property: transform
}

.hvr-forward:active,
.hvr-forward:focus,
.hvr-forward:hover {
    transform: translateX(8px)
}

.hvr-backward {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    transition-duration: .3s;
    transition-property: transform
}

.hvr-backward:active,
.hvr-backward:focus,
.hvr-backward:hover {
    transform: translateX(-8px)
}

.hvr-fade {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    overflow: hidden;
    transition-duration: .3s;
    transition-property: color, background-color
}

.hvr-fade:active,
.hvr-fade:focus,
.hvr-fade:hover {
    background-color: #2098d1;
    color: #fff
}

.hvr-sweep-to-right {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    transition-property: color;
    transition-duration: .3s
}

.hvr-sweep-to-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098d1;
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition-property: transform;
    transition-duration: .3s;
    transition-timing-function: ease-out
}

.hvr-sweep-to-right:active,
.hvr-sweep-to-right:focus,
.hvr-sweep-to-right:hover {
    color: #fff
}

.hvr-sweep-to-right:active:before,
.hvr-sweep-to-right:focus:before,
.hvr-sweep-to-right:hover:before {
    transform: scaleX(1)
}

.hvr-bounce-to-right {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    transition-property: color;
    transition-duration: .5s
}

.hvr-bounce-to-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098d1;
    transform: scaleX(0);
    transform-origin: 0 50%;
    transition-property: transform;
    transition-duration: .5s;
    transition-timing-function: ease-out
}

.hvr-bounce-to-right:active,
.hvr-bounce-to-right:focus,
.hvr-bounce-to-right:hover {
    color: #fff
}

.hvr-bounce-to-right:active:before,
.hvr-bounce-to-right:focus:before,
.hvr-bounce-to-right:hover:before {
    transform: scaleX(1);
    transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66)
}

@keyframes hvr-ripple-out {
    100% {
        top: -12px;
        right: -12px;
        bottom: -12px;
        left: -12px;
        opacity: 0
    }
}

.hvr-ripple-out {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative
}

.hvr-ripple-out:before {
    content: "";
    position: absolute;
    border: #e1e1e1 solid 6px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    animation-duration: 1s
}

.hvr-ripple-out:active:before,
.hvr-ripple-out:focus:before,
.hvr-ripple-out:hover:before {
    animation-name: hvr-ripple-out
}

.hvr-underline-from-left {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    overflow: hidden
}

.hvr-underline-from-left:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 100%;
    bottom: 0;
    background: #2098d1;
    height: 4px;
    transition-property: right;
    transition-duration: .3s;
    transition-timing-function: ease-out
}

.hvr-underline-from-left:active:before,
.hvr-underline-from-left:focus:before,
.hvr-underline-from-left:hover:before {
    right: 0
}

.hvr-underline-from-center {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    overflow: hidden
}

.hvr-underline-from-center:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 51%;
    right: 51%;
    bottom: 0;
    background: #2098d1;
    height: 4px;
    transition-property: left, right;
    transition-duration: .3s;
    transition-timing-function: ease-out
}

.hvr-underline-from-center:active:before,
.hvr-underline-from-center:focus:before,
.hvr-underline-from-center:hover:before {
    left: 0;
    right: 0
}

.hvr-underline-reveal {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    overflow: hidden
}

.hvr-underline-reveal:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    bottom: 0;
    background: #2098d1;
    height: 4px;
    transform: translateY(4px);
    transition-property: transform;
    transition-duration: .3s;
    transition-timing-function: ease-out
}

.hvr-underline-reveal:active:before,
.hvr-underline-reveal:focus:before,
.hvr-underline-reveal:hover:before {
    transform: translateY(0)
}

body.hidden-scroll {
    overflow: hidden
}

.sl-overlay {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #fff;
    opacity: .7;
    display: none;
    z-index: 1035
}

.sl-wrapper {
    z-index: 1040
}

.sl-wrapper button {
    border: 0 none;
    background: rgba(0, 0, 0, 0);
    font-size: 28px;
    padding: 0;
    cursor: pointer
}

.sl-wrapper button:hover {
    opacity: .7
}

.sl-wrapper .sl-close {
    display: none;
    position: fixed;
    right: 30px;
    top: 30px;
    z-index: 10060;
    margin-top: -14px;
    margin-right: -14px;
    height: 44px;
    width: 44px;
    line-height: 44px;
    font-family: Arial, Baskerville, monospace;
    color: #000;
    font-size: 3rem
}

.sl-wrapper .sl-close:focus {
    outline: none
}

.sl-wrapper .sl-counter {
    display: none;
    position: fixed;
    top: 30px;
    left: 30px;
    z-index: 1060;
    color: #000;
    font-size: 1rem
}

.sl-wrapper .sl-navigation {
    width: 100%;
    display: none
}

.sl-wrapper .sl-navigation button {
    position: fixed;
    top: 50%;
    margin-top: -22px;
    height: 44px;
    width: 22px;
    line-height: 44px;
    text-align: center;
    display: block;
    z-index: 10060;
    font-family: Arial, Baskerville, monospace;
    color: #000
}

.sl-wrapper .sl-navigation button.sl-next {
    right: 5px;
    font-size: 2rem
}

.sl-wrapper .sl-navigation button.sl-prev {
    left: 5px;
    font-size: 2rem
}

.sl-wrapper .sl-navigation button:focus {
    outline: none
}

@media(min-width: 35.5em) {
    .sl-wrapper .sl-navigation button {
        width: 44px
    }

    .sl-wrapper .sl-navigation button.sl-next {
        right: 10px;
        font-size: 3rem
    }

    .sl-wrapper .sl-navigation button.sl-prev {
        left: 10px;
        font-size: 3rem
    }
}

@media(min-width: 50em) {
    .sl-wrapper .sl-navigation button {
        width: 44px
    }

    .sl-wrapper .sl-navigation button.sl-next {
        right: 20px;
        font-size: 3rem
    }

    .sl-wrapper .sl-navigation button.sl-prev {
        left: 20px;
        font-size: 3rem
    }
}

.sl-wrapper .sl-image {
    position: fixed;
    touch-action: none;
    z-index: 10000
}

.sl-wrapper .sl-image img {
    margin: 0;
    padding: 0;
    display: block;
    border: 0 none;
    width: 100%;
    height: auto
}

@media(min-width: 35.5em) {
    .sl-wrapper .sl-image img {
        border: 0 none
    }
}

@media(min-width: 50em) {
    .sl-wrapper .sl-image img {
        border: 0 none
    }
}

.sl-wrapper .sl-image iframe {
    background: #000;
    border: 0 none
}

@media(min-width: 35.5em) {
    .sl-wrapper .sl-image iframe {
        border: 0 none
    }
}

@media(min-width: 50em) {
    .sl-wrapper .sl-image iframe {
        border: 0 none
    }
}

.sl-wrapper .sl-image .sl-caption {
    display: none;
    padding: 10px;
    color: #fff;
    background: rgba(0, 0, 0, .8);
    font-size: 1rem;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

.sl-wrapper .sl-image .sl-caption.pos-top {
    bottom: auto;
    top: 0
}

.sl-wrapper .sl-image .sl-caption.pos-outside {
    bottom: auto
}

.sl-wrapper .sl-image .sl-download {
    display: none;
    position: absolute;
    bottom: 5px;
    right: 5px;
    color: #000;
    z-index: 1060
}

.sl-spinner {
    display: none;
    border: 5px solid #333;
    border-radius: 40px;
    height: 40px;
    left: 50%;
    margin: -20px 0 0 -20px;
    opacity: 0;
    position: fixed;
    top: 50%;
    width: 40px;
    z-index: 1007;
    animation: pulsate 1s ease-out infinite
}

.sl-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

.sl-transition {
    transition: transform ease 200ms
}

@keyframes pulsate {
    0% {
        transform: scale(0.1);
        opacity: 0
    }

    50% {
        opacity: 1
    }

    100% {
        transform: scale(1.2);
        opacity: 0
    }
}

@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0px, 0, 0)
}

.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-multirow-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-container-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-container-3d {
    perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-container-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
    scroll-snap-type: y mandatory
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: calc(var(--swiper-navigation-size)/44*27);
    height: var(--swiper-navigation-size);
    margin-top: calc(-1*var(--swiper-navigation-size)/2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    text-transform: none;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-button-next.swiper-button-white,
.swiper-button-prev.swiper-button-white {
    --swiper-navigation-color: #ffffff
}

.swiper-button-next.swiper-button-black,
.swiper-button-prev.swiper-button-black {
    --swiper-navigation-color: #000000
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: .3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33)
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-container-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0px, -50%, 0)
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: .2s transform, .2s top
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s left
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: .2s transform, .2s right
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, 0.25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-container-horizontal>.swiper-pagination-progressbar,
.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-white {
    --swiper-pagination-color: #ffffff
}

.swiper-pagination-black {
    --swiper-pagination-color: #000000
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, 0.1)
}

.swiper-container-horizontal>.swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: swiper-preloader-spin 1s infinite linear;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg)
    }
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube {
    overflow: visible
}

.swiper-container-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next+.swiper-slide,
.swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .6;
    filter: blur(50px);
    z-index: 0
}

.swiper-container-flip {
    overflow: visible
}

.swiper-container-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.pretty * {
    box-sizing: border-box
}

.pretty input:not([type=checkbox]):not([type=radio]) {
    display: none
}

.pretty {
    position: relative;
    display: inline-block;
    margin-right: 1em;
    white-space: nowrap;
    line-height: 1
}

.pretty input {
    position: absolute;
    left: 0;
    top: 0;
    min-width: 1em;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: 0;
    margin: 0;
    padding: 0;
    cursor: pointer
}

.pretty .state label {
    position: initial;
    display: inline-block;
    font-weight: normal;
    margin: 0;
    text-indent: 1.5em;
    min-width: calc(1em + 2px)
}

.pretty .state label:before,
.pretty .state label:after {
    content: "";
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    display: block;
    box-sizing: border-box;
    border-radius: 0;
    border: 1px solid rgba(0, 0, 0, 0);
    z-index: 0;
    position: absolute;
    left: 0;
    top: calc(0% - (100% - 1em) - 8%);
    background-color: rgba(0, 0, 0, 0)
}

.pretty .state label:before {
    border-color: #bdc3c7
}

.pretty .state.p-is-hover,
.pretty .state.p-is-indeterminate {
    display: none
}

@keyframes zoom {
    0% {
        opacity: 0;
        transform: scale(0)
    }
}

@keyframes tada {
    0% {
        animation-timing-function: ease-in;
        opacity: 0;
        transform: scale(7)
    }

    38% {
        animation-timing-function: ease-out;
        opacity: 1;
        transform: scale(1)
    }

    55% {
        animation-timing-function: ease-in;
        transform: scale(1.5)
    }

    72% {
        animation-timing-function: ease-out;
        transform: scale(1)
    }

    81% {
        animation-timing-function: ease-in;
        transform: scale(1.24)
    }

    89% {
        animation-timing-function: ease-out;
        transform: scale(1)
    }

    95% {
        animation-timing-function: ease-in;
        transform: scale(1.04)
    }

    100% {
        animation-timing-function: ease-out;
        transform: scale(1)
    }
}

@keyframes jelly {
    0% {
        transform: scale3d(1, 1, 1)
    }

    30% {
        transform: scale3d(0.75, 1.25, 1)
    }

    40% {
        transform: scale3d(1.25, 0.75, 1)
    }

    50% {
        transform: scale3d(0.85, 1.15, 1)
    }

    65% {
        transform: scale3d(1.05, 0.95, 1)
    }

    75% {
        transform: scale3d(0.95, 1.05, 1)
    }

    100% {
        transform: scale3d(1, 1, 1)
    }
}

@keyframes rotate {
    0% {
        opacity: 0;
        transform: translateZ(-200px) rotate(-45deg)
    }

    100% {
        opacity: 1;
        transform: translateZ(0) rotate(0)
    }
}

@keyframes pulse {
    0% {
        box-shadow: 0px 0px 0px 0px #bdc3c7
    }

    100% {
        box-shadow: 0px 0px 0px 1.5em rgba(189, 195, 199, 0)
    }
}

.pretty.p-default.p-fill .state label:after {
    transform: scale(1)
}

.pretty.p-default .state label:after {
    transform: scale(0.6)
}

.pretty.p-default input:checked~.state label:after {
    background-color: #bdc3c7 !important
}

.pretty.p-default.p-thick .state label:before,
.pretty.p-default.p-thick .state label:after {
    border-width: .1428571429em
}

.pretty.p-default.p-thick .state label:after {
    transform: scale(0.4) !important
}

.pretty.p-icon .state .icon {
    position: absolute;
    font-size: 1em;
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    left: 0;
    z-index: 1;
    text-align: center;
    line-height: normal;
    top: calc(0% - (100% - 1em) - 8%);
    border: 1px solid rgba(0, 0, 0, 0);
    opacity: 0
}

.pretty.p-icon .state .icon:before {
    margin: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    flex: 1;
    justify-content: center;
    align-items: center;
    line-height: 1
}

.pretty.p-icon input:checked~.state .icon {
    opacity: 1
}

.pretty.p-icon input:checked~.state label:before {
    border-color: #5a656b
}

.pretty.p-svg .state .svg {
    position: absolute;
    font-size: 1em;
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    left: 0;
    z-index: 1;
    text-align: center;
    line-height: normal;
    top: calc(0% - (100% - 1em) - 8%);
    border: 1px solid rgba(0, 0, 0, 0);
    opacity: 0
}

.pretty.p-svg .state svg {
    margin: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: flex;
    flex: 1;
    justify-content: center;
    align-items: center;
    line-height: 1
}

.pretty.p-svg input:checked~.state .svg {
    opacity: 1
}

.pretty.p-image .state img {
    opacity: 0;
    position: absolute;
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    top: 0;
    top: calc(0% - (100% - 1em) - 8%);
    left: 0;
    z-index: 0;
    text-align: center;
    line-height: normal;
    transform: scale(0.8)
}

.pretty.p-image input:checked~.state img {
    opacity: 1
}

.pretty.p-switch input {
    min-width: 2em
}

.pretty.p-switch .state {
    position: relative
}

.pretty.p-switch .state:before {
    content: "";
    border: 1px solid #bdc3c7;
    border-radius: 60px;
    width: 2em;
    box-sizing: unset;
    height: calc(1em + 2px);
    position: absolute;
    top: 0;
    top: calc(0% - (100% - 1em) - 16%);
    z-index: 0;
    transition: all .5s ease
}

.pretty.p-switch .state label {
    text-indent: 2.5em
}

.pretty.p-switch .state label:before,
.pretty.p-switch .state label:after {
    transition: all .5s ease;
    border-radius: 100%;
    left: 0;
    border-color: rgba(0, 0, 0, 0);
    transform: scale(0.8)
}

.pretty.p-switch .state label:after {
    background-color: #bdc3c7 !important
}

.pretty.p-switch input:checked~.state:before {
    border-color: #5a656b
}

.pretty.p-switch input:checked~.state label:before {
    opacity: 0
}

.pretty.p-switch input:checked~.state label:after {
    background-color: #5a656b !important;
    left: 1em
}

.pretty.p-switch.p-fill input:checked~.state:before {
    border-color: #5a656b;
    background-color: #5a656b !important
}

.pretty.p-switch.p-fill input:checked~.state label:before {
    opacity: 0
}

.pretty.p-switch.p-fill input:checked~.state label:after {
    background-color: #fff !important;
    left: 1em
}

.pretty.p-switch.p-slim .state:before {
    height: .1em;
    background: #bdc3c7 !important;
    top: calc(50% - .1em)
}

.pretty.p-switch.p-slim input:checked~.state:before {
    border-color: #5a656b;
    background-color: #5a656b !important
}

.pretty.p-has-hover input:hover~.state:not(.p-is-hover) {
    display: none
}

.pretty.p-has-hover input:hover~.state.p-is-hover {
    display: block
}

.pretty.p-has-hover input:hover~.state.p-is-hover .icon {
    display: block
}

.pretty.p-has-focus input:focus~.state label:before {
    box-shadow: 0px 0px 3px 0px #bdc3c7
}

.pretty.p-has-indeterminate input[type=checkbox]:indeterminate~.state:not(.p-is-indeterminate) {
    display: none
}

.pretty.p-has-indeterminate input[type=checkbox]:indeterminate~.state.p-is-indeterminate {
    display: block
}

.pretty.p-has-indeterminate input[type=checkbox]:indeterminate~.state.p-is-indeterminate .icon {
    display: block;
    opacity: 1
}

.pretty.p-toggle .state.p-on {
    opacity: 0;
    display: none
}

.pretty.p-toggle .state.p-off,
.pretty.p-toggle .state .icon,
.pretty.p-toggle .state .svg,
.pretty.p-toggle .state img {
    opacity: 1;
    display: inherit
}

.pretty.p-toggle .state.p-off .icon {
    color: #bdc3c7
}

.pretty.p-toggle input:checked~.state.p-on {
    opacity: 1;
    display: inherit
}

.pretty.p-toggle input:checked~.state.p-off {
    opacity: 0;
    display: none
}

.pretty.p-plain input:checked~.state label:before,
.pretty.p-plain.p-toggle .state label:before {
    content: none
}

.pretty.p-plain.p-plain .icon {
    transform: scale(1.1)
}

.pretty.p-round .state label:before,
.pretty.p-round .state label:after {
    border-radius: 100%
}

.pretty.p-round.p-icon .state .icon {
    border-radius: 100%;
    overflow: hidden
}

.pretty.p-round.p-icon .state .icon:before {
    transform: scale(0.8)
}

.pretty.p-curve .state label:before,
.pretty.p-curve .state label:after {
    border-radius: 20%
}

.pretty.p-smooth label:before,
.pretty.p-smooth label:after,
.pretty.p-smooth .icon,
.pretty.p-smooth .svg {
    transition: all .5s ease
}

.pretty.p-smooth input:checked+.state label:after {
    transition: all .3s ease
}

.pretty.p-smooth input:checked+.state .icon,
.pretty.p-smooth input:checked+.state .svg,
.pretty.p-smooth input:checked+.state img {
    animation: zoom .2s ease
}

.pretty.p-smooth.p-default input:checked+.state label:after {
    animation: zoom .2s ease
}

.pretty.p-smooth.p-plain input:checked+.state label:before {
    content: "";
    transform: scale(0);
    transition: all .5s ease
}

.pretty.p-tada:not(.p-default) input:checked+.state .icon,
.pretty.p-tada:not(.p-default) input:checked+.state .svg,
.pretty.p-tada:not(.p-default) input:checked+.state img,
.pretty.p-tada:not(.p-default) input:checked+.state label:before,
.pretty.p-tada:not(.p-default) input:checked+.state label:after {
    animation: tada .7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1 alternate;
    opacity: 1
}

.pretty.p-jelly:not(.p-default) input:checked+.state .icon,
.pretty.p-jelly:not(.p-default) input:checked+.state .svg,
.pretty.p-jelly:not(.p-default) input:checked+.state img,
.pretty.p-jelly:not(.p-default) input:checked+.state label:before,
.pretty.p-jelly:not(.p-default) input:checked+.state label:after {
    animation: jelly .7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    opacity: 1
}

.pretty.p-jelly:not(.p-default) input:checked+.state label:before {
    border-color: rgba(0, 0, 0, 0)
}

.pretty.p-rotate:not(.p-default) input:checked~.state .icon,
.pretty.p-rotate:not(.p-default) input:checked~.state .svg,
.pretty.p-rotate:not(.p-default) input:checked~.state img,
.pretty.p-rotate:not(.p-default) input:checked~.state label:before,
.pretty.p-rotate:not(.p-default) input:checked~.state label:after {
    animation: rotate .7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    opacity: 1
}

.pretty.p-rotate:not(.p-default) input:checked~.state label:before {
    border-color: rgba(0, 0, 0, 0)
}

.pretty.p-pulse:not(.p-switch) input:checked~.state label:before {
    animation: pulse 1s
}

.pretty input[disabled] {
    cursor: not-allowed;
    display: none
}

.pretty input[disabled]~* {
    opacity: .5
}

.pretty.p-locked input {
    display: none;
    cursor: not-allowed
}

.pretty input:checked~.state.p-primary label:after,
.pretty.p-toggle .state.p-primary label:after {
    background-color: #428bca !important
}

.pretty input:checked~.state.p-primary .icon,
.pretty input:checked~.state.p-primary .svg,
.pretty.p-toggle .state.p-primary .icon,
.pretty.p-toggle .state.p-primary .svg {
    color: #fff;
    stroke: #fff
}

.pretty input:checked~.state.p-primary-o label:before,
.pretty.p-toggle .state.p-primary-o label:before {
    border-color: #428bca
}

.pretty input:checked~.state.p-primary-o label:after,
.pretty.p-toggle .state.p-primary-o label:after {
    background-color: rgba(0, 0, 0, 0)
}

.pretty input:checked~.state.p-primary-o .icon,
.pretty input:checked~.state.p-primary-o .svg,
.pretty input:checked~.state.p-primary-o svg,
.pretty.p-toggle .state.p-primary-o .icon,
.pretty.p-toggle .state.p-primary-o .svg,
.pretty.p-toggle .state.p-primary-o svg {
    color: #428bca;
    stroke: #428bca
}

.pretty.p-default:not(.p-fill) input:checked~.state.p-primary-o label:after {
    background-color: #428bca !important
}

.pretty.p-switch input:checked~.state.p-primary:before {
    border-color: #428bca
}

.pretty.p-switch.p-fill input:checked~.state.p-primary:before {
    background-color: #428bca !important
}

.pretty.p-switch.p-slim input:checked~.state.p-primary:before {
    border-color: rgb(36.3553719008, 86.4297520661, 129.6446280992);
    background-color: rgb(36.3553719008, 86.4297520661, 129.6446280992) !important
}

.pretty input:checked~.state.p-info label:after,
.pretty.p-toggle .state.p-info label:after {
    background-color: #5bc0de !important
}

.pretty input:checked~.state.p-info .icon,
.pretty input:checked~.state.p-info .svg,
.pretty.p-toggle .state.p-info .icon,
.pretty.p-toggle .state.p-info .svg {
    color: #fff;
    stroke: #fff
}

.pretty input:checked~.state.p-info-o label:before,
.pretty.p-toggle .state.p-info-o label:before {
    border-color: #5bc0de
}

.pretty input:checked~.state.p-info-o label:after,
.pretty.p-toggle .state.p-info-o label:after {
    background-color: rgba(0, 0, 0, 0)
}

.pretty input:checked~.state.p-info-o .icon,
.pretty input:checked~.state.p-info-o .svg,
.pretty input:checked~.state.p-info-o svg,
.pretty.p-toggle .state.p-info-o .icon,
.pretty.p-toggle .state.p-info-o .svg,
.pretty.p-toggle .state.p-info-o svg {
    color: #5bc0de;
    stroke: #5bc0de
}

.pretty.p-default:not(.p-fill) input:checked~.state.p-info-o label:after {
    background-color: #5bc0de !important
}

.pretty.p-switch input:checked~.state.p-info:before {
    border-color: #5bc0de
}

.pretty.p-switch.p-fill input:checked~.state.p-info:before {
    background-color: #5bc0de !important
}

.pretty.p-switch.p-slim input:checked~.state.p-info:before {
    border-color: rgb(35.345177665, 143.5228426396, 175.654822335);
    background-color: rgb(35.345177665, 143.5228426396, 175.654822335) !important
}

.pretty input:checked~.state.p-success label:after,
.pretty.p-toggle .state.p-success label:after {
    background-color: #5cb85c !important
}

.pretty input:checked~.state.p-success .icon,
.pretty input:checked~.state.p-success .svg,
.pretty.p-toggle .state.p-success .icon,
.pretty.p-toggle .state.p-success .svg {
    color: #fff;
    stroke: #fff
}

.pretty input:checked~.state.p-success-o label:before,
.pretty.p-toggle .state.p-success-o label:before {
    border-color: #5cb85c
}

.pretty input:checked~.state.p-success-o label:after,
.pretty.p-toggle .state.p-success-o label:after {
    background-color: rgba(0, 0, 0, 0)
}

.pretty input:checked~.state.p-success-o .icon,
.pretty input:checked~.state.p-success-o .svg,
.pretty input:checked~.state.p-success-o svg,
.pretty.p-toggle .state.p-success-o .icon,
.pretty.p-toggle .state.p-success-o .svg,
.pretty.p-toggle .state.p-success-o svg {
    color: #5cb85c;
    stroke: #5cb85c
}

.pretty.p-default:not(.p-fill) input:checked~.state.p-success-o label:after {
    background-color: #5cb85c !important
}

.pretty.p-switch input:checked~.state.p-success:before {
    border-color: #5cb85c
}

.pretty.p-switch.p-fill input:checked~.state.p-success:before {
    background-color: #5cb85c !important
}

.pretty.p-switch.p-slim input:checked~.state.p-success:before {
    border-color: hsl(120, 39.3162393162%, 34.1176470588%);
    background-color: hsl(120, 39.3162393162%, 34.1176470588%) !important
}

.pretty input:checked~.state.p-warning label:after,
.pretty.p-toggle .state.p-warning label:after {
    background-color: #f0ad4e !important
}

.pretty input:checked~.state.p-warning .icon,
.pretty input:checked~.state.p-warning .svg,
.pretty.p-toggle .state.p-warning .icon,
.pretty.p-toggle .state.p-warning .svg {
    color: #fff;
    stroke: #fff
}

.pretty input:checked~.state.p-warning-o label:before,
.pretty.p-toggle .state.p-warning-o label:before {
    border-color: #f0ad4e
}

.pretty input:checked~.state.p-warning-o label:after,
.pretty.p-toggle .state.p-warning-o label:after {
    background-color: rgba(0, 0, 0, 0)
}

.pretty input:checked~.state.p-warning-o .icon,
.pretty input:checked~.state.p-warning-o .svg,
.pretty input:checked~.state.p-warning-o svg,
.pretty.p-toggle .state.p-warning-o .icon,
.pretty.p-toggle .state.p-warning-o .svg,
.pretty.p-toggle .state.p-warning-o svg {
    color: #f0ad4e;
    stroke: #f0ad4e
}

.pretty.p-default:not(.p-fill) input:checked~.state.p-warning-o label:after {
    background-color: #f0ad4e !important
}

.pretty.p-switch input:checked~.state.p-warning:before {
    border-color: #f0ad4e
}

.pretty.p-switch.p-fill input:checked~.state.p-warning:before {
    background-color: #f0ad4e !important
}

.pretty.p-switch.p-slim input:checked~.state.p-warning:before {
    border-color: rgb(199.125, 123.75, 16.875);
    background-color: rgb(199.125, 123.75, 16.875) !important
}

.pretty input:checked~.state.p-danger label:after,
.pretty.p-toggle .state.p-danger label:after {
    background-color: #d9534f !important
}

.pretty input:checked~.state.p-danger .icon,
.pretty input:checked~.state.p-danger .svg,
.pretty.p-toggle .state.p-danger .icon,
.pretty.p-toggle .state.p-danger .svg {
    color: #fff;
    stroke: #fff
}

.pretty input:checked~.state.p-danger-o label:before,
.pretty.p-toggle .state.p-danger-o label:before {
    border-color: #d9534f
}

.pretty input:checked~.state.p-danger-o label:after,
.pretty.p-toggle .state.p-danger-o label:after {
    background-color: rgba(0, 0, 0, 0)
}

.pretty input:checked~.state.p-danger-o .icon,
.pretty input:checked~.state.p-danger-o .svg,
.pretty input:checked~.state.p-danger-o svg,
.pretty.p-toggle .state.p-danger-o .icon,
.pretty.p-toggle .state.p-danger-o .svg,
.pretty.p-toggle .state.p-danger-o svg {
    color: #d9534f;
    stroke: #d9534f
}

.pretty.p-default:not(.p-fill) input:checked~.state.p-danger-o label:after {
    background-color: #d9534f !important
}

.pretty.p-switch input:checked~.state.p-danger:before {
    border-color: #d9534f
}

.pretty.p-switch.p-fill input:checked~.state.p-danger:before {
    background-color: #d9534f !important
}

.pretty.p-switch.p-slim input:checked~.state.p-danger:before {
    border-color: rgb(159.5514018692, 38.0747663551, 34.4485981308);
    background-color: rgb(159.5514018692, 38.0747663551, 34.4485981308) !important
}

.pretty.p-bigger label:before,
.pretty.p-bigger label:after,
.pretty.p-bigger .icon,
.pretty.p-bigger .svg,
.pretty.p-bigger .img {
    font-size: 1.2em !important;
    top: calc(0% - (100% - 1em) - 35%) !important
}

.pretty.p-bigger label {
    text-indent: 1.7em
}

@media print {

    .pretty .state:before,
    .pretty .state label:before,
    .pretty .state label:after,
    .pretty .state .icon {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact
    }
}

.color-1,
.factbox,
.cp-inline--area {
    background-color: #5b85aa
}

.color-1--l2 {
    background-color: #e7eef6
}

.color-1--l1 {
    background-color: #cadaec
}

.color-1--d1 {
    background-color: #6797c1
}

.color-1--d2 {
    background-color: none
}

.color-2 {
    background-color: #002b4f
}

.color-2--l2 {
    background-color: #e8ecef
}

.color-2--l1 {
    background-color: #294d6b
}

.color-2--d1 {
    background-color: none
}

.color-2--d2 {
    background-color: none
}

.color-3 {
    background-color: #6797c1
}

.color-3--l2 {
    background-color: none
}

.color-3--l1 {
    background-color: none
}

.color-3--d1 {
    background-color: none
}

.color-3--d2 {
    background-color: none
}

.color-4 {
    background-color: none
}

.color-4--l2 {
    background-color: none
}

.color-4--l1 {
    background-color: none
}

.color-4--d1 {
    background-color: none
}

.color-4--d2 {
    background-color: none
}

.color-white {
    background-color: #fff
}

.color-black {
    background-color: #000
}

.color-0 {
    background-color: #ccc
}

.color-0--l3 {
    background-color: #f9f9f9
}

.color-0--l2 {
    background-color: #ededed
}

.color-0--l1 {
    background-color: #e0e0e0
}

.color-0--d1 {
    background-color: #ababab
}

.color-0--d2 {
    background-color: gray
}

.color-0--d3 {
    background-color: #474747
}

.font-color-0,
.standard-schriftfarbe {
    color: #34597a
}

.objectfit-el {
    overflow: hidden
}

.objectfit-el.compat-object-fit {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.objectfit-el.compat-object-fit .objectfit-picture {
    display: none
}

.objectfit-el.compat-object-fit .objectfit-picture .objectfit-img {
    display: none;
    -o-object-fit: none !important;
    object-fit: none !important
}

.objectfit-el .objectfit-img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block
}

.measure--sm {
    max-width: 61rem;
    margin: 0 auto
}

.measure--md {
    max-width: 74rem;
    margin: 0 auto
}

.measure--lg {
    max-width: 81rem;
    margin: 0 auto
}

.measure--xl {
    max-width: 111rem;
    margin: 0 auto
}

.measure-space {
    padding-left: 1.875rem;
    padding-right: 1.875rem
}

.measure-space.shadow-content {
    padding: 0
}

@media screen and (min-width: 54rem) {
    .measure-space {
        padding-left: 3.5rem;
        padding-right: 3.5rem
    }
}

.hide-block--sm {
    display: none
}

@media(min-width: 32rem) {
    .hide-block--sm {
        display: block
    }
}

.hide-block--md {
    display: none
}

@media(min-width: 54rem) {
    .hide-block--md {
        display: block
    }
}

.hide-block--lg {
    display: none
}

@media(min-width: 64rem) {
    .hide-block--lg {
        display: block
    }
}

.hide-inline-block--sm {
    display: none
}

@media(min-width: 32rem) {
    .hide-inline-block--sm {
        display: inline-block
    }
}

.hide-inline-block--md {
    display: none
}

@media(min-width: 54rem) {
    .hide-inline-block--md {
        display: inline-block
    }
}

.hide-inline-block--lg {
    display: none
}

@media(min-width: 64rem) {
    .hide-inline-block--lg {
        display: inline-block
    }
}

.float-img--left {
    max-width: 100%;
    height: auto;
    margin-top: 5px
}

.float-img--left img {
    display: block
}

@media(min-width: 54rem) {
    .float-img--left {
        max-width: 60%;
        float: left;
        margin-right: 2rem
    }
}

.float-img--right {
    max-width: 100%;
    height: auto;
    margin-top: 5px
}

.float-img--right img {
    display: block
}

@media(min-width: 54rem) {
    .float-img--right {
        max-width: 60%;
        float: right;
        margin-left: 2rem
    }
}

.clear--left {
    clear: left
}

.clear--right {
    clear: right
}

.shadow,
.kachel-hauptkategorie .sbox-wrapper,
.kachel-linked-doc .sbox-wrapper {
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, .2)
}

.columns {
    -moz-column-count: auto;
    column-count: auto;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    -moz-columns: 19rem;
    columns: 19rem
}

.inline {
    display: inline
}

.inline-block {
    display: inline-block
}

.block {
    display: block
}

.relative {
    position: relative
}

.w100 {
    width: 100%
}

.w90 {
    width: 90%
}

.w80 {
    width: 80%
}

.w70 {
    width: 70%
}

.w60 {
    width: 60%
}

.w50 {
    width: 50%
}

.w40 {
    width: 40%
}

.w30 {
    width: 30%
}

.w20 {
    width: 20%
}

.w10 {
    width: 10%
}

.success,
.warning,
.error,
.notice {
    font-weight: bold;
    text-align: center;
    padding: 2rem;
    margin: 0 auto;
    border-radius: 5px
}

.success {
    background: #d7edd7;
    color: #48ce36;
    border: 1px solid #9fb39f
}

.warning {
    background: #f7f1cd;
    color: #dbbe01;
    border: 1px solid #b9b498
}

.error {
    background: #f4cfcd;
    color: #a10101;
    border: 1px solid #b79997
}

.notice {
    background: #d5d7d9;
    color: #5f6468;
    border: 1px solid #acafb2
}

/*! excerpts from normalize.css v3.0.1 | MIT License | git.io/normalize */
body {
    margin: 0
}

aside,
details,
main,
summary {
    display: block
}

template {
    display: none
}

a:active,
a:hover {
    outline: 0
}

abbr[title] {
    border-bottom: 1px dotted
}

b,
strong {
    font-weight: bold
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sup {
    top: -0.5em
}

sub {
    bottom: -0.25em
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: border-box;
    height: 0
}

pre {
    overflow: auto
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}

button[disabled],
html input[disabled] {
    cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

input {
    line-height: normal
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search] {
    -webkit-appearance: textfield;
    box-sizing: content-box
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto;
    resize: none
}

optgroup {
    font-weight: bold
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

address {
    font-style: normal
}

.grd-col {
    display: flex;
    flex-direction: column;
    min-height: 1px
}

.grd-col--100 {
    height: 100%
}

.grd-fill {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 1
}

.grd-align--justify-start {
    justify-content: flex-start
}

.grd-align--justify-end {
    justify-content: flex-end
}

.grd-align--justify-around {
    justify-content: space-around
}

.grd-align--justify-between {
    justify-content: space-between
}

.grd-align--justify-center {
    justify-content: center
}

.grd-align--justify-stretch {
    justify-content: stretch
}

.grd-align--align-start {
    align-items: flex-start
}

.grd-align--align-end {
    align-items: flex-end
}

.grd-align--align-center {
    align-items: center
}

.grd-align--self-center {
    align-self: center
}

.grd {
    padding-left: 2rem;
    padding-right: 2rem
}

@media(min-width: 64rem) {
    .grd {
        padding-left: 4rem;
        padding-right: 4rem
    }
}

.grd-row {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    max-width: 100%
}

.grd-row-col-1-24 {
    max-width: 4.1666666667%;
    flex-basis: 4.1666666667%
}

.grd-row-col-2-24 {
    max-width: 8.3333333333%;
    flex-basis: 8.3333333333%
}

.grd-row-col-3-24 {
    max-width: 12.5%;
    flex-basis: 12.5%
}

.grd-row-col-4-24 {
    max-width: 16.6666666667%;
    flex-basis: 16.6666666667%
}

.grd-row-col-5-24 {
    max-width: 20.8333333333%;
    flex-basis: 20.8333333333%
}

.grd-row-col-6-24 {
    max-width: 25%;
    flex-basis: 25%
}

.grd-row-col-7-24 {
    max-width: 29.1666666667%;
    flex-basis: 29.1666666667%
}

.grd-row-col-8-24 {
    max-width: 33.3333333333%;
    flex-basis: 33.3333333333%
}

.grd-row-col-9-24 {
    max-width: 37.5%;
    flex-basis: 37.5%
}

.grd-row-col-10-24 {
    max-width: 41.6666666667%;
    flex-basis: 41.6666666667%
}

.grd-row-col-11-24 {
    max-width: 45.8333333333%;
    flex-basis: 45.8333333333%
}

.grd-row-col-12-24 {
    max-width: 50%;
    flex-basis: 50%
}

.grd-row-col-13-24 {
    max-width: 54.1666666667%;
    flex-basis: 54.1666666667%
}

.grd-row-col-14-24 {
    max-width: 58.3333333333%;
    flex-basis: 58.3333333333%
}

.grd-row-col-15-24 {
    max-width: 62.5%;
    flex-basis: 62.5%
}

.grd-row-col-16-24 {
    max-width: 66.6666666667%;
    flex-basis: 66.6666666667%
}

.grd-row-col-17-24 {
    max-width: 70.8333333333%;
    flex-basis: 70.8333333333%
}

.grd-row-col-18-24 {
    max-width: 75%;
    flex-basis: 75%
}

.grd-row-col-19-24 {
    max-width: 79.1666666667%;
    flex-basis: 79.1666666667%
}

.grd-row-col-20-24 {
    max-width: 83.3333333333%;
    flex-basis: 83.3333333333%
}

.grd-row-col-21-24 {
    max-width: 87.5%;
    flex-basis: 87.5%
}

.grd-row-col-22-24 {
    max-width: 91.6666666667%;
    flex-basis: 91.6666666667%
}

.grd-row-col-23-24 {
    max-width: 95.8333333333%;
    flex-basis: 95.8333333333%
}

.grd-row-col-24 {
    max-width: 100%;
    flex-basis: 100%
}

.grd-row-col-1-24,
.grd-row-col-1-24--xs,
.grd-row-col-1-24--sm,
.grd-row-col-1-24--md,
.grd-row-col-1-24--lg,
.grd-row-col-2-24,
.grd-row-col-2-24--xs,
.grd-row-col-2-24--sm,
.grd-row-col-2-24--md,
.grd-row-col-2-24--lg,
.grd-row-col-3-24,
.grd-row-col-3-24--xs,
.grd-row-col-3-24--sm,
.grd-row-col-3-24--md,
.grd-row-col-3-24--lg,
.grd-row-col-4-24,
.grd-row-col-4-24--xs,
.grd-row-col-4-24--sm,
.grd-row-col-4-24--md,
.grd-row-col-4-24--lg,
.grd-row-col-5-24,
.grd-row-col-5-24--xs,
.grd-row-col-5-24--sm,
.grd-row-col-5-24--md,
.grd-row-col-5-24--lg,
.grd-row-col-6-24,
.grd-row-col-6-24--xs,
.grd-row-col-6-24--sm,
.grd-row-col-6-24--md,
.grd-row-col-6-24--lg,
.grd-row-col-7-24,
.grd-row-col-7-24--xs,
.grd-row-col-7-24--sm,
.grd-row-col-7-24--md,
.grd-row-col-7-24--lg,
.grd-row-col-8-24,
.grd-row-col-8-24--xs,
.grd-row-col-8-24--sm,
.grd-row-col-8-24--md,
.grd-row-col-8-24--lg,
.grd-row-col-9-24,
.grd-row-col-9-24--xs,
.grd-row-col-9-24--sm,
.grd-row-col-9-24--md,
.grd-row-col-9-24--lg,
.grd-row-col-10-24,
.grd-row-col-10-24--xs,
.grd-row-col-10-24--sm,
.grd-row-col-10-24--md,
.grd-row-col-10-24--lg,
.grd-row-col-11-24,
.grd-row-col-11-24--xs,
.grd-row-col-11-24--sm,
.grd-row-col-11-24--md,
.grd-row-col-11-24--lg,
.grd-row-col-12-24,
.grd-row-col-12-24--xs,
.grd-row-col-12-24--sm,
.grd-row-col-12-24--md,
.grd-row-col-12-24--lg,
.grd-row-col-13-24,
.grd-row-col-13-24--xs,
.grd-row-col-13-24--sm,
.grd-row-col-13-24--md,
.grd-row-col-13-24--lg,
.grd-row-col-14-24,
.grd-row-col-14-24--xs,
.grd-row-col-14-24--sm,
.grd-row-col-14-24--md,
.grd-row-col-14-24--lg,
.grd-row-col-15-24,
.grd-row-col-15-24--xs,
.grd-row-col-15-24--sm,
.grd-row-col-15-24--md,
.grd-row-col-15-24--lg,
.grd-row-col-16-24,
.grd-row-col-16-24--xs,
.grd-row-col-16-24--sm,
.grd-row-col-16-24--md,
.grd-row-col-16-24--lg,
.grd-row-col-17-24,
.grd-row-col-17-24--xs,
.grd-row-col-17-24--sm,
.grd-row-col-17-24--md,
.grd-row-col-17-24--lg,
.grd-row-col-18-24,
.grd-row-col-18-24--xs,
.grd-row-col-18-24--sm,
.grd-row-col-18-24--md,
.grd-row-col-18-24--lg,
.grd-row-col-19-24,
.grd-row-col-19-24--xs,
.grd-row-col-19-24--sm,
.grd-row-col-19-24--md,
.grd-row-col-19-24--lg,
.grd-row-col-20-24,
.grd-row-col-20-24--xs,
.grd-row-col-20-24--sm,
.grd-row-col-20-24--md,
.grd-row-col-20-24--lg,
.grd-row-col-21-24,
.grd-row-col-21-24--xs,
.grd-row-col-21-24--sm,
.grd-row-col-21-24--md,
.grd-row-col-21-24--lg,
.grd-row-col-22-24,
.grd-row-col-22-24--xs,
.grd-row-col-22-24--sm,
.grd-row-col-22-24--md,
.grd-row-col-22-24--lg,
.grd-row-col-23-24,
.grd-row-col-23-24--xs,
.grd-row-col-23-24--sm,
.grd-row-col-23-24--md,
.grd-row-col-23-24--lg,
.grd-row-col-24,
.grd-row-col-24--xs,
.grd-row-col-24--sm,
.grd-row-col-24--md,
.grd-row-col-24--lg {
    flex-grow: 1;
    flex-shrink: 1;
    flex-direction: column;
    box-sizing: border-box
}

.grd-row-col-1-24--xs,
.grd-row-col-1-24--sm,
.grd-row-col-1-24--md,
.grd-row-col-1-24--lg,
.grd-row-col-2-24--xs,
.grd-row-col-2-24--sm,
.grd-row-col-2-24--md,
.grd-row-col-2-24--lg,
.grd-row-col-3-24--xs,
.grd-row-col-3-24--sm,
.grd-row-col-3-24--md,
.grd-row-col-3-24--lg,
.grd-row-col-4-24--xs,
.grd-row-col-4-24--sm,
.grd-row-col-4-24--md,
.grd-row-col-4-24--lg,
.grd-row-col-5-24--xs,
.grd-row-col-5-24--sm,
.grd-row-col-5-24--md,
.grd-row-col-5-24--lg,
.grd-row-col-6-24--xs,
.grd-row-col-6-24--sm,
.grd-row-col-6-24--md,
.grd-row-col-6-24--lg,
.grd-row-col-7-24--xs,
.grd-row-col-7-24--sm,
.grd-row-col-7-24--md,
.grd-row-col-7-24--lg,
.grd-row-col-8-24--xs,
.grd-row-col-8-24--sm,
.grd-row-col-8-24--md,
.grd-row-col-8-24--lg,
.grd-row-col-9-24--xs,
.grd-row-col-9-24--sm,
.grd-row-col-9-24--md,
.grd-row-col-9-24--lg,
.grd-row-col-10-24--xs,
.grd-row-col-10-24--sm,
.grd-row-col-10-24--md,
.grd-row-col-10-24--lg,
.grd-row-col-11-24--xs,
.grd-row-col-11-24--sm,
.grd-row-col-11-24--md,
.grd-row-col-11-24--lg,
.grd-row-col-12-24--xs,
.grd-row-col-12-24--sm,
.grd-row-col-12-24--md,
.grd-row-col-12-24--lg,
.grd-row-col-13-24--xs,
.grd-row-col-13-24--sm,
.grd-row-col-13-24--md,
.grd-row-col-13-24--lg,
.grd-row-col-14-24--xs,
.grd-row-col-14-24--sm,
.grd-row-col-14-24--md,
.grd-row-col-14-24--lg,
.grd-row-col-15-24--xs,
.grd-row-col-15-24--sm,
.grd-row-col-15-24--md,
.grd-row-col-15-24--lg,
.grd-row-col-16-24--xs,
.grd-row-col-16-24--sm,
.grd-row-col-16-24--md,
.grd-row-col-16-24--lg,
.grd-row-col-17-24--xs,
.grd-row-col-17-24--sm,
.grd-row-col-17-24--md,
.grd-row-col-17-24--lg,
.grd-row-col-18-24--xs,
.grd-row-col-18-24--sm,
.grd-row-col-18-24--md,
.grd-row-col-18-24--lg,
.grd-row-col-19-24--xs,
.grd-row-col-19-24--sm,
.grd-row-col-19-24--md,
.grd-row-col-19-24--lg,
.grd-row-col-20-24--xs,
.grd-row-col-20-24--sm,
.grd-row-col-20-24--md,
.grd-row-col-20-24--lg,
.grd-row-col-21-24--xs,
.grd-row-col-21-24--sm,
.grd-row-col-21-24--md,
.grd-row-col-21-24--lg,
.grd-row-col-22-24--xs,
.grd-row-col-22-24--sm,
.grd-row-col-22-24--md,
.grd-row-col-22-24--lg,
.grd-row-col-23-24--xs,
.grd-row-col-23-24--sm,
.grd-row-col-23-24--md,
.grd-row-col-23-24--lg,
.grd-row-col-24--xs,
.grd-row-col-24--sm,
.grd-row-col-24--md,
.grd-row-col-24--lg {
    max-width: 100%;
    flex-basis: 100%
}

@media screen and (min-width: 2rem) {
    .grd-row-col-1-24--xs {
        max-width: 4.1666666667%;
        flex-basis: 4.1666666667%
    }

    .grd-row-col-2-24--xs {
        max-width: 8.3333333333%;
        flex-basis: 8.3333333333%
    }

    .grd-row-col-3-24--xs {
        max-width: 12.5%;
        flex-basis: 12.5%
    }

    .grd-row-col-4-24--xs {
        max-width: 16.6666666667%;
        flex-basis: 16.6666666667%
    }

    .grd-row-col-5-24--xs {
        max-width: 20.8333333333%;
        flex-basis: 20.8333333333%
    }

    .grd-row-col-6-24--xs {
        max-width: 25%;
        flex-basis: 25%
    }

    .grd-row-col-7-24--xs {
        max-width: 29.1666666667%;
        flex-basis: 29.1666666667%
    }

    .grd-row-col-8-24--xs {
        max-width: 33.3333333333%;
        flex-basis: 33.3333333333%
    }

    .grd-row-col-9-24--xs {
        max-width: 37.5%;
        flex-basis: 37.5%
    }

    .grd-row-col-10-24--xs {
        max-width: 41.6666666667%;
        flex-basis: 41.6666666667%
    }

    .grd-row-col-11-24--xs {
        max-width: 45.8333333333%;
        flex-basis: 45.8333333333%
    }

    .grd-row-col-12-24--xs {
        max-width: 50%;
        flex-basis: 50%
    }

    .grd-row-col-13-24--xs {
        max-width: 54.1666666667%;
        flex-basis: 54.1666666667%
    }

    .grd-row-col-14-24--xs {
        max-width: 58.3333333333%;
        flex-basis: 58.3333333333%
    }

    .grd-row-col-15-24--xs {
        max-width: 62.5%;
        flex-basis: 62.5%
    }

    .grd-row-col-16-24--xs {
        max-width: 66.6666666667%;
        flex-basis: 66.6666666667%
    }

    .grd-row-col-17-24--xs {
        max-width: 70.8333333333%;
        flex-basis: 70.8333333333%
    }

    .grd-row-col-18-24--xs {
        max-width: 75%;
        flex-basis: 75%
    }

    .grd-row-col-19-24--xs {
        max-width: 79.1666666667%;
        flex-basis: 79.1666666667%
    }

    .grd-row-col-20-24--xs {
        max-width: 83.3333333333%;
        flex-basis: 83.3333333333%
    }

    .grd-row-col-21-24--xs {
        max-width: 87.5%;
        flex-basis: 87.5%
    }

    .grd-row-col-22-24--xs {
        max-width: 91.6666666667%;
        flex-basis: 91.6666666667%
    }

    .grd-row-col-23-24--xs {
        max-width: 95.8333333333%;
        flex-basis: 95.8333333333%
    }

    .grd-row-col-24--xs {
        max-width: 100%;
        flex-basis: 100%
    }
}

@media screen and (min-width: 32rem) {
    .grd-row-col-1-24--sm {
        max-width: 4.1666666667%;
        flex-basis: 4.1666666667%
    }

    .grd-row-col-2-24--sm {
        max-width: 8.3333333333%;
        flex-basis: 8.3333333333%
    }

    .grd-row-col-3-24--sm {
        max-width: 12.5%;
        flex-basis: 12.5%
    }

    .grd-row-col-4-24--sm {
        max-width: 16.6666666667%;
        flex-basis: 16.6666666667%
    }

    .grd-row-col-5-24--sm {
        max-width: 20.8333333333%;
        flex-basis: 20.8333333333%
    }

    .grd-row-col-6-24--sm {
        max-width: 25%;
        flex-basis: 25%
    }

    .grd-row-col-7-24--sm {
        max-width: 29.1666666667%;
        flex-basis: 29.1666666667%
    }

    .grd-row-col-8-24--sm {
        max-width: 33.3333333333%;
        flex-basis: 33.3333333333%
    }

    .grd-row-col-9-24--sm {
        max-width: 37.5%;
        flex-basis: 37.5%
    }

    .grd-row-col-10-24--sm {
        max-width: 41.6666666667%;
        flex-basis: 41.6666666667%
    }

    .grd-row-col-11-24--sm {
        max-width: 45.8333333333%;
        flex-basis: 45.8333333333%
    }

    .grd-row-col-12-24--sm {
        max-width: 50%;
        flex-basis: 50%
    }

    .grd-row-col-13-24--sm {
        max-width: 54.1666666667%;
        flex-basis: 54.1666666667%
    }

    .grd-row-col-14-24--sm {
        max-width: 58.3333333333%;
        flex-basis: 58.3333333333%
    }

    .grd-row-col-15-24--sm {
        max-width: 62.5%;
        flex-basis: 62.5%
    }

    .grd-row-col-16-24--sm {
        max-width: 66.6666666667%;
        flex-basis: 66.6666666667%
    }

    .grd-row-col-17-24--sm {
        max-width: 70.8333333333%;
        flex-basis: 70.8333333333%
    }

    .grd-row-col-18-24--sm {
        max-width: 75%;
        flex-basis: 75%
    }

    .grd-row-col-19-24--sm {
        max-width: 79.1666666667%;
        flex-basis: 79.1666666667%
    }

    .grd-row-col-20-24--sm {
        max-width: 83.3333333333%;
        flex-basis: 83.3333333333%
    }

    .grd-row-col-21-24--sm {
        max-width: 87.5%;
        flex-basis: 87.5%
    }

    .grd-row-col-22-24--sm {
        max-width: 91.6666666667%;
        flex-basis: 91.6666666667%
    }

    .grd-row-col-23-24--sm {
        max-width: 95.8333333333%;
        flex-basis: 95.8333333333%
    }

    .grd-row-col-24--sm {
        max-width: 100%;
        flex-basis: 100%
    }
}

@media screen and (min-width: 54rem) {
    .grd-row-col-1-24--md {
        max-width: 4.1666666667%;
        flex-basis: 4.1666666667%
    }

    .grd-row-col-2-24--md {
        max-width: 8.3333333333%;
        flex-basis: 8.3333333333%
    }

    .grd-row-col-3-24--md {
        max-width: 12.5%;
        flex-basis: 12.5%
    }

    .grd-row-col-4-24--md {
        max-width: 16.6666666667%;
        flex-basis: 16.6666666667%
    }

    .grd-row-col-5-24--md {
        max-width: 20.8333333333%;
        flex-basis: 20.8333333333%
    }

    .grd-row-col-6-24--md {
        max-width: 25%;
        flex-basis: 25%
    }

    .grd-row-col-7-24--md {
        max-width: 29.1666666667%;
        flex-basis: 29.1666666667%
    }

    .grd-row-col-8-24--md {
        max-width: 33.3333333333%;
        flex-basis: 33.3333333333%
    }

    .grd-row-col-9-24--md {
        max-width: 37.5%;
        flex-basis: 37.5%
    }

    .grd-row-col-10-24--md {
        max-width: 41.6666666667%;
        flex-basis: 41.6666666667%
    }

    .grd-row-col-11-24--md {
        max-width: 45.8333333333%;
        flex-basis: 45.8333333333%
    }

    .grd-row-col-12-24--md {
        max-width: 50%;
        flex-basis: 50%
    }

    .grd-row-col-13-24--md {
        max-width: 54.1666666667%;
        flex-basis: 54.1666666667%
    }

    .grd-row-col-14-24--md {
        max-width: 58.3333333333%;
        flex-basis: 58.3333333333%
    }

    .grd-row-col-15-24--md {
        max-width: 62.5%;
        flex-basis: 62.5%
    }

    .grd-row-col-16-24--md {
        max-width: 66.6666666667%;
        flex-basis: 66.6666666667%
    }

    .grd-row-col-17-24--md {
        max-width: 70.8333333333%;
        flex-basis: 70.8333333333%
    }

    .grd-row-col-18-24--md {
        max-width: 75%;
        flex-basis: 75%
    }

    .grd-row-col-19-24--md {
        max-width: 79.1666666667%;
        flex-basis: 79.1666666667%
    }

    .grd-row-col-20-24--md {
        max-width: 83.3333333333%;
        flex-basis: 83.3333333333%
    }

    .grd-row-col-21-24--md {
        max-width: 87.5%;
        flex-basis: 87.5%
    }

    .grd-row-col-22-24--md {
        max-width: 91.6666666667%;
        flex-basis: 91.6666666667%
    }

    .grd-row-col-23-24--md {
        max-width: 95.8333333333%;
        flex-basis: 95.8333333333%
    }

    .grd-row-col-24--md {
        max-width: 100%;
        flex-basis: 100%
    }
}

@media screen and (min-width: 64rem) {
    .grd-row-col-1-24--lg {
        max-width: 4.1666666667%;
        flex-basis: 4.1666666667%
    }

    .grd-row-col-2-24--lg {
        max-width: 8.3333333333%;
        flex-basis: 8.3333333333%
    }

    .grd-row-col-3-24--lg {
        max-width: 12.5%;
        flex-basis: 12.5%
    }

    .grd-row-col-4-24--lg {
        max-width: 16.6666666667%;
        flex-basis: 16.6666666667%
    }

    .grd-row-col-5-24--lg {
        max-width: 20.8333333333%;
        flex-basis: 20.8333333333%
    }

    .grd-row-col-6-24--lg {
        max-width: 25%;
        flex-basis: 25%
    }

    .grd-row-col-7-24--lg {
        max-width: 29.1666666667%;
        flex-basis: 29.1666666667%
    }

    .grd-row-col-8-24--lg {
        max-width: 33.3333333333%;
        flex-basis: 33.3333333333%
    }

    .grd-row-col-9-24--lg {
        max-width: 37.5%;
        flex-basis: 37.5%
    }

    .grd-row-col-10-24--lg {
        max-width: 41.6666666667%;
        flex-basis: 41.6666666667%
    }

    .grd-row-col-11-24--lg {
        max-width: 45.8333333333%;
        flex-basis: 45.8333333333%
    }

    .grd-row-col-12-24--lg {
        max-width: 50%;
        flex-basis: 50%
    }

    .grd-row-col-13-24--lg {
        max-width: 54.1666666667%;
        flex-basis: 54.1666666667%
    }

    .grd-row-col-14-24--lg {
        max-width: 58.3333333333%;
        flex-basis: 58.3333333333%
    }

    .grd-row-col-15-24--lg {
        max-width: 62.5%;
        flex-basis: 62.5%
    }

    .grd-row-col-16-24--lg {
        max-width: 66.6666666667%;
        flex-basis: 66.6666666667%
    }

    .grd-row-col-17-24--lg {
        max-width: 70.8333333333%;
        flex-basis: 70.8333333333%
    }

    .grd-row-col-18-24--lg {
        max-width: 75%;
        flex-basis: 75%
    }

    .grd-row-col-19-24--lg {
        max-width: 79.1666666667%;
        flex-basis: 79.1666666667%
    }

    .grd-row-col-20-24--lg {
        max-width: 83.3333333333%;
        flex-basis: 83.3333333333%
    }

    .grd-row-col-21-24--lg {
        max-width: 87.5%;
        flex-basis: 87.5%
    }

    .grd-row-col-22-24--lg {
        max-width: 91.6666666667%;
        flex-basis: 91.6666666667%
    }

    .grd-row-col-23-24--lg {
        max-width: 95.8333333333%;
        flex-basis: 95.8333333333%
    }

    .grd-row-col-24--lg {
        max-width: 100%;
        flex-basis: 100%
    }
}

@media screen and (min-width: 81rem) {
    .grd-row-col-1-24--xl {
        max-width: 4.1666666667%;
        flex-basis: 4.1666666667%
    }

    .grd-row-col-2-24--xl {
        max-width: 8.3333333333%;
        flex-basis: 8.3333333333%
    }

    .grd-row-col-3-24--xl {
        max-width: 12.5%;
        flex-basis: 12.5%
    }

    .grd-row-col-4-24--xl {
        max-width: 16.6666666667%;
        flex-basis: 16.6666666667%
    }

    .grd-row-col-5-24--xl {
        max-width: 20.8333333333%;
        flex-basis: 20.8333333333%
    }

    .grd-row-col-6-24--xl {
        max-width: 25%;
        flex-basis: 25%
    }

    .grd-row-col-7-24--xl {
        max-width: 29.1666666667%;
        flex-basis: 29.1666666667%
    }

    .grd-row-col-8-24--xl {
        max-width: 33.3333333333%;
        flex-basis: 33.3333333333%
    }

    .grd-row-col-9-24--xl {
        max-width: 37.5%;
        flex-basis: 37.5%
    }

    .grd-row-col-10-24--xl {
        max-width: 41.6666666667%;
        flex-basis: 41.6666666667%
    }

    .grd-row-col-11-24--xl {
        max-width: 45.8333333333%;
        flex-basis: 45.8333333333%
    }

    .grd-row-col-12-24--xl {
        max-width: 50%;
        flex-basis: 50%
    }

    .grd-row-col-13-24--xl {
        max-width: 54.1666666667%;
        flex-basis: 54.1666666667%
    }

    .grd-row-col-14-24--xl {
        max-width: 58.3333333333%;
        flex-basis: 58.3333333333%
    }

    .grd-row-col-15-24--xl {
        max-width: 62.5%;
        flex-basis: 62.5%
    }

    .grd-row-col-16-24--xl {
        max-width: 66.6666666667%;
        flex-basis: 66.6666666667%
    }

    .grd-row-col-17-24--xl {
        max-width: 70.8333333333%;
        flex-basis: 70.8333333333%
    }

    .grd-row-col-18-24--xl {
        max-width: 75%;
        flex-basis: 75%
    }

    .grd-row-col-19-24--xl {
        max-width: 79.1666666667%;
        flex-basis: 79.1666666667%
    }

    .grd-row-col-20-24--xl {
        max-width: 83.3333333333%;
        flex-basis: 83.3333333333%
    }

    .grd-row-col-21-24--xl {
        max-width: 87.5%;
        flex-basis: 87.5%
    }

    .grd-row-col-22-24--xl {
        max-width: 91.6666666667%;
        flex-basis: 91.6666666667%
    }

    .grd-row-col-23-24--xl {
        max-width: 95.8333333333%;
        flex-basis: 95.8333333333%
    }

    .grd-row-col-24--xl {
        max-width: 100%;
        flex-basis: 100%
    }
}

*,
*::after,
*::before {
    box-sizing: border-box
}

img,
canvas,
iframe,
video,
svg,
select,
textarea {
    max-width: 100%
}

.a--unstyled {
    text-decoration: none;
    background: rgba(0, 0, 0, 0);
    transition: none
}

.a--unstyled:hover {
    color: inherit;
    transition: none
}

a,
.color-active,
.font-color-active {
    color: #34597a
}

a:hover,
a:active,
a .color-active--hvr,
.color-active:hover,
.color-active:active,
.color-active .color-active--hvr,
.font-color-active:hover,
.font-color-active:active,
.font-color-active .color-active--hvr {
    color: #5b85aa
}

.swiper-slide {
    height: auto
}

.swiper-slide .slider-tile {
    overflow: auto;
    background-color: hsl(0, 0%, 97%)
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23%23E2E2E2'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23%23E2E2E2'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-next {
    right: -1.5rem
}

.swiper-button-prev {
    left: -1.5rem
}

.swiper-button-next,
.swiper-button-prev {
    display: none;
    top: 50%;
    transform: translateY(-50%)
}

@media(min-width: 54rem) {

    .swiper-button-next,
    .swiper-button-prev {
        display: block
    }
}

.swiper-notification {
    visibility: hidden
}

.swiper-pagination {
    position: relative;
    width: 100%;
    padding-top: 1.8rem
}

.swiper-pagination .swiper-pagination-bullet {
    margin: .2rem;
    background: #e7eef6
}

.swiper-pagination .swiper-pagination-bullet-active {
    background: #5b85aa
}

button {
    border: 0;
    outline: 0
}

hr {
    border: none;
    border-top: 1px solid #5b85aa
}

q {
    quotes: "„" "”";
    font-style: italic;
    display: block;
    margin-top: 2rem !important;
    margin-bottom: 2rem !important
}

body {
    color: #34597a
}

::-moz-selection {
    background: #cadaec
}

::selection {
    background: #cadaec
}

.mark,
mark {
    background: #e7eef6
}

input,
select,
textarea,
.textarea {
    padding: .5rem;
    margin-bottom: .5rem;
    display: block;
    width: 100%;
    box-shadow: none
}

.textarea {
    background-color: #fff
}

input[type=submit] {
    margin-top: .85rem
}

input[type=checkbox] {
    display: inline-block;
    vertical-align: bottom;
    width: auto
}

.file {
    position: relative;
    display: inline-block;
    cursor: pointer;
    height: 2.5rem;
    width: 100%
}

.file input {
    min-width: 14rem;
    margin: 0;
    filter: alpha(opacity=0);
    opacity: 0
}

.file-custom {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 5;
    height: auto;
    min-height: 35px;
    padding: .5rem;
    line-height: 1.2;
    color: #002b4f;
    background-color: #fff;
    overflow: hidden
}

.file-custom span {
    display: none
}

.file-custom:before {
    position: absolute;
    top: -0.075rem;
    right: -0.075rem;
    bottom: -0.075rem;
    z-index: 6;
    display: block;
    content: "Datei auswählen";
    height: auto;
    width: 100%;
    padding: .5rem 1rem;
    line-height: 1.5;
    color: #fff;
    background-color: #34597a
}

.file.selected .file-custom:before {
    content: "Datei ändern"
}

.file-custom:hover:before,
.file input:focus~.file-custom:before {
    background-color: #95b6d9
}

@media screen and (min-width: 430px) {
    .file-custom span {
        display: inline
    }

    .file-custom:before {
        width: auto
    }
}

.control {
    position: relative;
    display: inline-block;
    padding-left: 1.5rem;
    cursor: pointer
}

.control input {
    position: absolute;
    opacity: 0;
    z-index: -1
}

.control-indicator {
    position: absolute;
    top: .25rem;
    left: 0;
    display: block;
    width: 1rem;
    height: 1rem;
    line-height: 1rem;
    font-size: 65%;
    color: #34597a;
    text-align: center;
    background-color: #fff;
    background-size: 50% 50%;
    background-position: center center;
    background-repeat: no-repeat
}

.checkbox .control-indicator {
    border-radius: .25rem
}

.checkbox input:checked~.control-indicator {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgOCA4IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA4IDgiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cGF0aCBmaWxsPSIjMzQ1OTdhIiBkPSJNNi40LDFMNS43LDEuN0wyLjksNC41TDIuMSwzLjdMMS40LDNMMCw0LjRsMC43LDAuN2wxLjUsMS41bDAuNywwLjdsMC43LTAuN2wzLjUtMy41bDAuNy0wLjdMNi40LDFMNi40LDF6IgoJLz4KPC9zdmc+Cg==)
}

.p0 {
    padding: 0
}

.p0--l {
    padding-left: 0
}

.p0--r {
    padding-right: 0
}

.p0--t {
    padding-top: 0
}

.p0--b {
    padding-bottom: 0
}

.p1 {
    padding: 1rem
}

.p1--tb {
    padding-top: 1rem;
    padding-bottom: 1rem
}

.p1--lr {
    padding-left: 1rem;
    padding-right: 1rem
}

.p1--l {
    padding-left: 1rem
}

.p1--r {
    padding-right: 1rem
}

.p1--t {
    padding-top: 1rem
}

.p1--b {
    padding-bottom: 1rem
}

.p1i {
    padding: 1.875rem
}

.p1i--tb {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem
}

.p1i--lr {
    padding-right: 1.875rem;
    padding-left: 1.875rem
}

.p1i--l {
    padding-left: 1.875rem
}

.p1i--r {
    padding-right: 1.875rem
}

.p1i--t {
    padding-top: 1.875rem
}

.p1i--b {
    padding-bottom: 1.875rem
}

.p1o,
.factbox,
.cp-inline--area {
    padding: 1.875rem
}

.p1o--tb {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem
}

.p1o--lr {
    padding-right: 1.875rem;
    padding-left: 1.875rem
}

.p1o--l {
    padding-left: 1.875rem
}

.p1o--r {
    padding-right: 1.875rem
}

.p1o--t {
    padding-top: 1.875rem
}

.p1o--b {
    padding-bottom: 1.875rem
}

.p2 {
    padding: 2rem
}

.p2--tb {
    padding-top: 2rem;
    padding-bottom: 2rem
}

.p2--lr {
    padding-left: 2rem;
    padding-right: 2rem
}

.p2--l {
    padding-left: 2rem
}

.p2--r {
    padding-right: 2rem
}

.p2--t {
    padding-top: 2rem
}

.p2--b {
    padding-bottom: 2rem
}

.p2i {
    padding: 2.8125rem
}

.p2i--tb {
    padding-top: 2.8125rem;
    padding-bottom: 2.8125rem
}

.p2i--lr {
    padding-right: 2.8125rem;
    padding-left: 2.8125rem
}

.p2i--l {
    padding-left: 2.8125rem
}

.p2i--r {
    padding-right: 2.8125rem
}

.p2i--t {
    padding-top: 2.8125rem
}

.p2i--b {
    padding-bottom: 2.8125rem
}

.p2o {
    padding: 2.8125rem
}

.p2o--tb {
    padding-top: 2.8125rem;
    padding-bottom: 2.8125rem
}

.p2o--lr {
    padding-right: 2.8125rem;
    padding-left: 2.8125rem
}

.p2o--l {
    padding-left: 2.8125rem
}

.p2o--r {
    padding-right: 2.8125rem
}

.p2o--t {
    padding-top: 2.8125rem
}

.p2o--b {
    padding-bottom: 2.8125rem
}

.p3 {
    padding: 3rem
}

.p3--tb {
    padding-top: 3rem;
    padding-bottom: 3rem
}

.p3--lr {
    padding-left: 3rem;
    padding-right: 3rem
}

.p3--l {
    padding-left: 3rem
}

.p3--r {
    padding-right: 3rem
}

.p3--t {
    padding-top: 3rem
}

.p3--b {
    padding-bottom: 3rem
}

.p3i {
    padding: 3.75rem
}

.p3i--tb {
    padding-top: 3.75rem;
    padding-bottom: 3.75rem
}

.p3i--lr {
    padding-right: 3.75rem;
    padding-left: 3.75rem
}

.p3i--l {
    padding-left: 3.75rem
}

.p3i--r {
    padding-right: 3.75rem
}

.p3i--t {
    padding-top: 3.75rem
}

.p3i--b {
    padding-bottom: 3.75rem
}

.p3o {
    padding: 3.75rem
}

.p3o--tb {
    padding-top: 3.75rem;
    padding-bottom: 3.75rem
}

.p3o--lr {
    padding-right: 3.75rem;
    padding-left: 3.75rem
}

.p3o--l {
    padding-left: 3.75rem
}

.p3o--r {
    padding-right: 3.75rem
}

.p3o--t {
    padding-top: 3.75rem
}

.p3o--b {
    padding-bottom: 3.75rem
}

.p4 {
    padding: 4rem
}

.p4--tb {
    padding-top: 4rem;
    padding-bottom: 4rem
}

.p4--lr {
    padding-left: 4rem;
    padding-right: 4rem
}

.p4--l {
    padding-left: 4rem
}

.p4--r {
    padding-right: 4rem
}

.p4--t {
    padding-top: 4rem
}

.p4--b {
    padding-bottom: 4rem
}

.p4i {
    padding: 4.6875rem
}

.p4i--tb {
    padding-top: 4.6875rem;
    padding-bottom: 4.6875rem
}

.p4i--lr {
    padding-right: 4.6875rem;
    padding-left: 4.6875rem
}

.p4i--l {
    padding-left: 4.6875rem
}

.p4i--r {
    padding-right: 4.6875rem
}

.p4i--t {
    padding-top: 4.6875rem
}

.p4i--b {
    padding-bottom: 4.6875rem
}

.p4o {
    padding: 4.6875rem
}

.p4o--tb {
    padding-top: 4.6875rem;
    padding-bottom: 4.6875rem
}

.p4o--lr {
    padding-right: 4.6875rem;
    padding-left: 4.6875rem
}

.p4o--l {
    padding-left: 4.6875rem
}

.p4o--r {
    padding-right: 4.6875rem
}

.p4o--t {
    padding-top: 4.6875rem
}

.p4o--b {
    padding-bottom: 4.6875rem
}

.m0 {
    margin: 0
}

.m0--l {
    margin-left: 0
}

.m0--r {
    margin-right: 0
}

.m0--t {
    margin-top: 0
}

.m0--b {
    margin-bottom: 0
}

.m1 {
    margin: 1rem
}

.m1--tb {
    margin-top: 1rem;
    margin-bottom: 1rem
}

.m1--lr {
    margin-left: 1rem;
    margin-right: 1rem
}

.m1--l {
    margin-left: 1rem
}

.m1--r {
    margin-right: 1rem
}

.m1--t {
    margin-top: 1rem
}

.m1--b,
hr,
hr.s1 {
    margin-bottom: 1rem
}

.m2 {
    margin: 2rem
}

.m2--tb {
    margin-top: 2rem;
    margin-bottom: 2rem
}

.m2--lr {
    margin-left: 2rem;
    margin-right: 2rem
}

.m2--l {
    margin-left: 2rem
}

.m2--r {
    margin-right: 2rem
}

.m2--t {
    margin-top: 2rem
}

.m2--b {
    margin-bottom: 2rem
}

.m3 {
    margin: 3rem
}

.m3--tb {
    margin-top: 3rem;
    margin-bottom: 3rem
}

.m3--lr {
    margin-left: 3rem;
    margin-right: 3rem
}

.m3--l {
    margin-left: 3rem
}

.m3--r {
    margin-right: 3rem
}

.m3--t {
    margin-top: 3rem
}

.m3--b {
    margin-bottom: 3rem
}

.m4 {
    margin: 4rem
}

.m4--tb {
    margin-top: 4rem;
    margin-bottom: 4rem
}

.m4--lr {
    margin-left: 4rem;
    margin-right: 4rem
}

.m4--l {
    margin-left: 4rem
}

.m4--r {
    margin-right: 4rem
}

.m4--t {
    margin-top: 4rem
}

.m4--b {
    margin-bottom: 4rem
}

.font-family--1 {
    font-family: "Antenna Condensed", sans-serif
}

.font-family--2,
.text--uppercase--typography,
.schriftgroesse-h3,
.schriftgroesse-h2,
.schriftgroesse-h1,
h6,
h5,
h4,
h3,
h2,
h1,
body {
    font-family: "Roboto Condensed", sans-serif
}

.font--light {
    font-weight: 200
}

.font--regular {
    font-weight: 400
}

.font--bold,
.list--ordered li::before {
    font-weight: 700
}

.font--extra-bold {
    font-weight: 900
}

.font--lowercase {
    text-transform: lowercase
}

.font--italic {
    font-style: italic
}

.font--center,
q {
    text-align: center
}

.font--left {
    text-align: left
}

.font--right {
    text-align: right
}

.font--capitalize {
    text-transform: capitalize
}

.font--headline-1,
.schriftgroesse-h1,
h1 {
    font-size: calc(2rem + 11*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--headline-1,
    .schriftgroesse-h1,
    h1 {
        font-size: 43px
    }
}

.font--headline-1,
.schriftgroesse-h1,
h1 {
    margin-bottom: .25em;
    margin-top: .2em;
    letter-spacing: 0px;
    line-height: 1.093em
}

.font--headline-2,
.schriftgroesse-h2,
h2 {
    font-size: calc(1.75rem + 5*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--headline-2,
    .schriftgroesse-h2,
    h2 {
        font-size: 33px
    }
}

.font--headline-2,
.schriftgroesse-h2,
h2 {
    margin-bottom: .25em;
    margin-top: .2em;
    letter-spacing: 0;
    line-height: 1.212em
}

.font--headline-3,
.schriftgroesse-h3,
h3 {
    font-size: calc(1.25rem + 8*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--headline-3,
    .schriftgroesse-h3,
    h3 {
        font-size: 28px
    }
}

.font--headline-3,
.schriftgroesse-h3,
h3 {
    margin-bottom: .31em;
    margin-top: .3em;
    letter-spacing: 0;
    line-height: 1.179em
}

.font--headline-4,
section.modul h2,
h4 {
    font-size: calc(1.125rem + 5*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--headline-4,
    section.modul h2,
    h4 {
        font-size: 23px
    }
}

.font--headline-4,
section.modul h2,
h4 {
    margin-bottom: .31em;
    margin-top: .3em;
    letter-spacing: 0px;
    line-height: 1.2em
}

.font--headline-5,
.list--bullets li,
.list--bullets,
.list--ordered li,
.list--ordered,
h5 {
    font-size: calc(1.0625rem + 2*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--headline-5,
    .list--bullets li,
    .list--bullets,
    .list--ordered li,
    .list--ordered,
    h5 {
        font-size: 19px
    }
}

.font--headline-5,
.list--bullets li,
.list--bullets,
.list--ordered li,
.list--ordered,
h5 {
    margin-bottom: .31em;
    margin-top: .3em;
    letter-spacing: 0px;
    line-height: 1.2em
}

.font--headline-6,
.teaser,
h6 {
    font-size: calc(0.875rem + 0*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--headline-6,
    .teaser,
    h6 {
        font-size: 14px
    }
}

.font--headline-6,
.teaser,
h6 {
    margin-bottom: .325em;
    margin-top: .31em;
    letter-spacing: 0px;
    line-height: 1.2em
}

.font--sub-1,
q {
    font-size: calc(1.25rem + 5*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--sub-1,
    q {
        font-size: 25px
    }
}

.font--sub-1,
q {
    margin-bottom: .325em;
    margin-top: .2em;
    letter-spacing: 0px;
    line-height: 1.12em
}

.font--sub-2 {
    font-size: calc(0.9375rem + 0*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    .font--sub-2 {
        font-size: 15px
    }
}

.font--sub-2 {
    margin-bottom: .35em;
    margin-top: .3em;
    letter-spacing: 0px;
    line-height: 1.333em
}

.font--body-1 {
    font-size: calc(1rem + 4*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    .font--body-1 {
        font-size: 20px
    }
}

.font--body-1 {
    margin-top: .5em;
    margin-bottom: 1em;
    letter-spacing: 0px;
    line-height: 1.4em
}

.font--body-2,
.font--footer {
    font-size: calc(1rem + 1*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--body-2,
    .font--footer {
        font-size: 17px
    }
}

.font--body-2,
.font--footer {
    margin-top: .8em;
    margin-bottom: .9em;
    letter-spacing: 0px;
    line-height: 1.235em
}

.font--caption,
figcaption {
    font-size: calc(0.75rem + 2*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--caption,
    figcaption {
        font-size: 14px
    }
}

.font--caption,
figcaption {
    display: block;
    margin-bottom: .5em;
    margin-top: .8em;
    letter-spacing: 0px;
    line-height: 140%
}

.font--button,
.button,
.button--pill-outline,
.button--pill,
.button--outline,
.button--solid,
button {
    font-size: calc(1.125rem + 0*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .font--button,
    .button,
    .button--pill-outline,
    .button--pill,
    .button--outline,
    .button--solid,
    button {
        font-size: 18px
    }
}

.font--button,
.button,
.button--pill-outline,
.button--pill,
.button--outline,
.button--solid,
button {
    margin-bottom: .325em;
    margin-top: .31em;
    letter-spacing: 0px;
    font-weight: bold;
    line-height: 100%
}

.font--button-medium {
    font-size: calc(0.9375rem + 0*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    .font--button-medium {
        font-size: 15px
    }
}

.font--button-medium {
    margin-bottom: .325em;
    margin-top: .31em;
    letter-spacing: 0px;
    font-weight: bold;
    line-height: 100%
}

.font--button-small {
    font-size: calc(0.75rem + 0*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    .font--button-small {
        font-size: 12px
    }
}

.font--button-small {
    margin-bottom: .325em;
    margin-top: .31em;
    letter-spacing: 0px;
    font-weight: bold;
    line-height: 100%
}

.font--error {
    color: #a10101
}

.font--sucess {
    color: #48ce36
}

.font--warning {
    color: #dbbe01
}

body {
    font-size: calc(1rem + 4*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    body {
        font-size: 20px
    }
}

p {
    font-size: inherit
}

.teaser {
    font-weight: bold;
    font-size: calc(1.25rem + 2*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    .teaser {
        font-size: 22px
    }
}

.teaser {
    margin-top: calc(1.8rem + 35.2*(100vw - 20rem)/(1920 - 320));
    margin-bottom: calc(1rem + 16*(100vw - 20rem)/(1920 - 320))
}

.block-space--tb-sm {
    margin-top: calc(1.5rem + 8*(100vw - 20rem)/(1920 - 320));
    margin-bottom: calc(1.5rem + 8*(100vw - 20rem)/(1920 - 320))
}

.block-space--t-sm {
    margin-top: calc(1.5rem + 8*(100vw - 20rem)/(1920 - 320))
}

.block-space--b-sm {
    margin-bottom: calc(1.5rem + 8*(100vw - 20rem)/(1920 - 320))
}

.block-space--tb-md {
    margin-top: calc(2rem + 16*(100vw - 20rem)/(1920 - 320));
    margin-bottom: calc(2rem + 16*(100vw - 20rem)/(1920 - 320))
}

.block-space--t-md {
    margin-top: calc(2rem + 16*(100vw - 20rem)/(1920 - 320))
}

.block-space--b-md {
    margin-bottom: calc(2rem + 16*(100vw - 20rem)/(1920 - 320))
}

.block-space--tb-lg {
    margin-top: calc(3rem + 16*(100vw - 20rem)/(1920 - 320));
    margin-bottom: calc(3rem + 16*(100vw - 20rem)/(1920 - 320))
}

.block-space--t-lg {
    margin-top: calc(3rem + 16*(100vw - 20rem)/(1920 - 320))
}

.block-space--b-lg {
    margin-bottom: calc(3rem + 16*(100vw - 20rem)/(1920 - 320))
}

.button,
.button--pill-outline,
.button--pill,
.button--outline,
.button--solid,
button {
    padding: 1em 2.125em;
    background-color: rgba(0, 0, 0, 0);
    margin: 0;
    display: inline-block;
    border-radius: 5px
}

a.button--solid,
a.button--outline,
a.button--pill,
a.button--pill-outline {
    transition: all .2s ease-in-out
}

a.button--solid:hover,
a.button--outline:hover,
a.button--pill:hover,
a.button--pill-outline:hover {
    transition: all .2s ease-in-out
}

.button--solid,
.button--pill {
    background-color: #34597a;
    color: #fff;
    border: 2px solid #34597a
}

.button--solid:hover,
.button--pill:hover {
    background-color: #5b85aa;
    color: #fff;
    border: 2px solid #5b85aa;
    transition: all .2s ease-in-out
}

.button--outline,
.button--pill-outline {
    background-color: rgba(0, 0, 0, 0);
    transition: all .2s ease-in-out;
    color: #000;
    border: 2px solid #34597a
}

.button--outline:hover,
.button--pill-outline:hover {
    background-color: #5b85aa;
    color: #fff;
    border: 2px solid rgba(0, 0, 0, 0)
}

.button--pill {
    border-radius: 50px
}

.button--pill-outline {
    border-radius: 50px
}

.button.bubble--bottom,
button.bubble--bottom,
.button--solid.bubble--bottom,
.button--outline.bubble--bottom,
.button--pill.bubble--bottom,
.button--pill-outline.bubble--bottom {
    position: relative;
    margin-bottom: 10px
}

.button.bubble--bottom:hover::before,
button.bubble--bottom:hover::before,
.button--solid.bubble--bottom:hover::before,
.button--outline.bubble--bottom:hover::before,
.button--pill.bubble--bottom:hover::before,
.button--pill-outline.bubble--bottom:hover::before {
    border-color: #5b85aa rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

.button.bubble--bottom::before,
button.bubble--bottom::before,
.button--solid.bubble--bottom::before,
.button--outline.bubble--bottom::before,
.button--pill.bubble--bottom::before,
.button--pill-outline.bubble--bottom::before {
    content: "";
    position: absolute;
    border-style: solid;
    left: calc(50% - 10px);
    bottom: -10px;
    border-width: 10px 10px 0;
    border-color: #34597a rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    transition: all .2s ease-in-out
}

.button.bubble--top,
button.bubble--top,
.button--solid.bubble--top,
.button--outline.bubble--top,
.button--pill.bubble--top,
.button--pill-outline.bubble--top {
    position: relative;
    margin-top: 10px
}

.button.bubble--top:hover::before,
button.bubble--top:hover::before,
.button--solid.bubble--top:hover::before,
.button--outline.bubble--top:hover::before,
.button--pill.bubble--top:hover::before,
.button--pill-outline.bubble--top:hover::before {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #5b85aa
}

.button.bubble--top::before,
button.bubble--top::before,
.button--solid.bubble--top::before,
.button--outline.bubble--top::before,
.button--pill.bubble--top::before,
.button--pill-outline.bubble--top::before {
    content: "";
    position: absolute;
    border-style: solid;
    right: calc(50% - 10px);
    top: -10px;
    border-width: 0 10px 10px;
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #34597a;
    transition: all .2s ease-in-out
}

.button.bubble--left,
button.bubble--left,
.button--solid.bubble--left,
.button--outline.bubble--left,
.button--pill.bubble--left,
.button--pill-outline.bubble--left {
    position: relative;
    margin-left: 10px
}

.button.bubble--left:hover::before,
button.bubble--left:hover::before,
.button--solid.bubble--left:hover::before,
.button--outline.bubble--left:hover::before,
.button--pill.bubble--left:hover::before,
.button--pill-outline.bubble--left:hover::before {
    border-color: rgba(0, 0, 0, 0) #5b85aa rgba(0, 0, 0, 0) rgba(0, 0, 0, 0)
}

.button.bubble--left::before,
button.bubble--left::before,
.button--solid.bubble--left::before,
.button--outline.bubble--left::before,
.button--pill.bubble--left::before,
.button--pill-outline.bubble--left::before {
    content: "";
    position: absolute;
    border-style: solid;
    left: -10px;
    top: calc(50% - 10px);
    border-width: 10px 10px 10px 0;
    border-color: rgba(0, 0, 0, 0) #34597a rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
    transition: all .2s ease-in-out
}

.button.bubble--right,
button.bubble--right,
.button--solid.bubble--right,
.button--outline.bubble--right,
.button--pill.bubble--right,
.button--pill-outline.bubble--right {
    position: relative;
    margin-right: 10px
}

.button.bubble--right:hover::before,
button.bubble--right:hover::before,
.button--solid.bubble--right:hover::before,
.button--outline.bubble--right:hover::before,
.button--pill.bubble--right:hover::before,
.button--pill-outline.bubble--right:hover::before {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #5b85aa
}

.button.bubble--right::before,
button.bubble--right::before,
.button--solid.bubble--right::before,
.button--outline.bubble--right::before,
.button--pill.bubble--right::before,
.button--pill-outline.bubble--right::before {
    content: "";
    position: absolute;
    border-style: solid;
    right: -10px;
    top: calc(50% - 10px);
    border-width: 10px 0 10px 10px;
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #34597a;
    transition: all .2s ease-in-out
}

.button-icon-font--before {
    position: relative;
    padding-right: 2.5em
}

.button-icon-font--before::before {
    content: "";
    background-image: url("../icons/feather/arrow-right.svg");
    background-size: 1em;
    background-position: center;
    position: absolute;
    top: .7em;
    right: 1.2em;
    height: 1em;
    width: 1em;
    margin-left: .5em;
    display: inline-block;
    font-weight: normal;
    font-style: normal;
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr
}

.button-icon-font--before::before:hover {
    background-image: url("right")
}

.list--unstyled {
    list-style-type: none;
    margin: 0;
    padding: 0
}

.list--inline li {
    display: inline-block
}

.list--inline li:not(:last-child) {
    margin-right: 1em
}

.list--ordered {
    counter-reset: item;
    list-style-type: none;
    margin-left: 0;
    padding-left: 0
}

.list--ordered .list--ordered>li {
    padding-left: 2em
}

.list--ordered .list--ordered .list--ordered>li {
    padding-left: 2.8em
}

.list--ordered li {
    display: block;
    padding-left: 1.1em;
    position: relative
}

.list--ordered li::before {
    content: "";
    content: counters(item, ".") ".";
    counter-increment: item;
    position: absolute;
    left: 0
}

.list--bullets {
    padding-left: 0;
    list-style: none;
    margin-left: 0
}

.list--bullets li {
    position: relative;
    padding-left: .8em;
    line-height: 120%
}

.list--bullets li::before {
    content: "";
    transform: translateY(-50%);
    top: .5em;
    position: absolute;
    left: 0;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4LjUyIDguNTIiPjxkZWZzPjxzdHlsZT4uY2xzLTF7ZmlsbDojMzUzNTM1O308L3N0eWxlPjwvZGVmcz48dGl0bGU+cHVua3Q8L3RpdGxlPjxnIGlkPSJFYmVuZV8yIiBkYXRhLW5hbWU9IkViZW5lIDIiPjxnIGlkPSJFYmVuZV8xLTIiIGRhdGEtbmFtZT0iRWJlbmUgMSI+PGNpcmNsZSBjbGFzcz0iY2xzLTEiIGN4PSI0LjI2IiBjeT0iNC4yNiIgcj0iNC4yNiIvPjwvZz48L2c+PC9zdmc+");
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    height: .4em;
    width: .4em
}

[data-list=bullet] {
    list-style-type: disc
}

.table--responsive {
    overflow-x: auto;
    min-height: .1%;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar
}

.table--responsive th {
    padding: 1rem;
    text-align: left
}

.table--responsive td {
    padding: .5rem 1rem;
    max-width: 350px;
    vertical-align: top
}

.table--responsive .table {
    width: 100%;
    overflow-y: scroll;
    margin-bottom: 0;
    min-width: 780px
}

.table--adaptive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    overflow-x: none;
    min-height: .01%;
    border: 1px solid #dedede
}

.table--adaptive thead {
    background: #78466e;
    color: #fff
}

@media(min-width: 54rem) {
    .table--adaptive thead {
        display: none
    }
}

.table--adaptive th {
    padding: 1rem;
    text-align: left
}

@media(min-width: 54rem) {
    .table--adaptive tr {
        display: block;
        max-width: none
    }
}

.table--adaptive td {
    padding: .5rem 1rem;
    display: block;
    max-width: none
}

@media(min-width: 54rem) {
    .table--adaptive td {
        display: inline-block;
        max-width: 350px
    }
}

@media(min-width: 54rem) {
    .table--adaptive tbody {
        display: block;
        max-width: none
    }
}

.table--adaptive .table {
    width: 100%;
    margin-bottom: 0
}

@media(min-width: 54rem) {
    .table--adaptive .table {
        display: block;
        max-width: none
    }
}

.content--fixed-bottom-padding {
    margin-bottom: 30rem
}

.fixed-bottom-el {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 30rem;
    z-index: -1
}

.footer-v1 {
    background-color: #474747;
    color: #ededed
}

.footer-v1 a {
    color: #ededed;
    transition: color .4s ease
}

.footer-v1 a:hover,
.footer-v1 a:focus {
    color: rgb(211.5, 211.5, 211.5)
}

.footer-v1 .footer--item-1 ul {
    margin-bottom: 1rem;
    padding: 0
}

.footer-v1 .footer--item-1 ul li {
    display: inline-block;
    padding-right: 1rem
}

.footer-v1 .footer--item-2 .inner-left {
    margin-top: 1rem;
    margin-left: 0rem
}

@media(min-width: 64rem) {
    .footer-v1 .footer--item-2 {
        display: flex
    }
}

.footer-v1 .footer--item-2 p {
    margin: 0
}

.navigation-open {
    height: 100%;
    overflow: hidden
}

#main-navigation {
    display: none;
    z-index: 1;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    padding: 1rem
}

.navigation-open #main-navigation {
    display: block
}

#main-navigation a {
    color: #000
}

#main-navigation a:hover {
    text-decoration: none
}

#main-navigation .toggle-subnavi {
    position: absolute;
    right: calc(1rem + 4px);
    top: calc(1.5em + 6px);
    display: inline;
    border: 2px solid #fff;
    border-width: 0 1px 1px 0;
    padding: 6px;
    margin: -3px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transition: all .3s ease-out;
    border-radius: 0 !important
}

#main-navigation .lvl-1.entry {
    position: relative;
    padding: 1rem 0
}

#main-navigation .lvl-1.entry .nav-link {
    padding: .375rem 1rem;
    display: inline-block;
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 120%;
    font-weight: normal
}

#main-navigation .lvl-1.entry .nav-link.lvl-1.active {
    color: #002b4f
}

#main-navigation .lvl-1.entry.open-subnavi {
    background: #5b85aa
}

#main-navigation .lvl-1.entry.open-subnavi .lvl-1.nav-link.active {
    color: #5b85aa
}

#main-navigation .lvl-1.entry.open-subnavi .lvl-2.nav-link.active {
    text-decoration: underline
}

#main-navigation .lvl-1.entry.open-subnavi .subnavi {
    display: block
}

#main-navigation .lvl-1.entry.open {
    background: #5b85aa
}

#main-navigation .lvl-1.entry .subnavi {
    display: none
}

#main-navigation .lvl-2.entry .nav-link {
    font-size: 1.1rem;
    padding: .35rem 1.25rem;
    margin: 0 0 .4rem 0
}

#main-navigation .lvl-1.entry.open-subnavi>.toggle-subnavi,
#main-navigation .lvl-2.entry.open-subnavi>.toggle-subnavi {
    transform: rotate(-135deg);
    transition: all .3s ease-in
}

#main-navigation .subnavi.lvl-2 {
    display: block
}

@media screen and (min-width: 64rem) {
    #main-navigation {
        display: block;
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        padding: 0;
        background: none;
        text-align: right
    }

    #main-navigation ul.lvl-0 {
        display: flex;
        justify-content: space-between;
        border-top: none;
        list-style-type: none;
        margin: 0;
        padding: 0
    }

    #main-navigation .lvl-1 {
        text-align: left
    }

    #main-navigation .lvl-1.entry {
        display: inline-block;
        border: none;
        padding: 0
    }

    #main-navigation .lvl-1.entry .nav-link {
        font-size: 1rem;
        padding-top: .55rem;
        padding-bottom: .55rem
    }

    #main-navigation .lvl-1.entry .nav-link.has-subnavi::after {
        content: "";
        display: inline-block;
        height: .375rem;
        width: .625rem;
        margin-left: .4rem;
        margin-top: -0.3rem;
        vertical-align: middle;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.97 5.27'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:%23gb(91, 133, 170);%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Eicon-arrow-gray-down%3C/title%3E%3Cpolygon class='a' points='4.99 5.27 0 0.74 0.67 0 4.99 3.92 9.3 0 9.97 0.74 4.99 5.27'/%3E%3C/svg%3E") center center/contain no-repeat
    }

    #main-navigation .lvl-1.entry .nav-link.active,
    #main-navigation .lvl-1.entry .nav-link:hover {
        color: #002b4f
    }

    #main-navigation .lvl-1.entry .nav-link.active::after,
    #main-navigation .lvl-1.entry .nav-link:hover::after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.97 5.27'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:%23gb(0, 43, 79);%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Eicon-arrow-gray-down%3C/title%3E%3Cpolygon class='a' points='4.99 5.27 0 0.74 0.67 0 4.99 3.92 9.3 0 9.97 0.74 4.99 5.27'/%3E%3C/svg%3E")
    }

    #main-navigation .lvl-1.entry .toggle-subnavi {
        display: none
    }

    #main-navigation .lvl-1.entry:hover .subnavi.lvl-1,
    #main-navigation .lvl-1.entry .open-subnavi .subnavi.lvl-1 {
        display: block
    }

    #main-navigation .lvl-1.entry:last-child .lvl-1.subnavi {
        right: 0
    }

    #main-navigation .subnavi.lvl-1 {
        position: absolute;
        background: #fff;
        padding: .8rem .8rem .4rem 0
    }

    #main-navigation .subnavi.lvl-1 .entry .nav-link {
        white-space: nowrap;
        padding-top: .375rem;
        padding-bottom: .375rem
    }

    #main-navigation .subnavi.lvl-1 .entry .nav-link:hover,
    #main-navigation .subnavi.lvl-1 .entry .nav-link.active {
        color: #5b85aa
    }
}

#breadcrumb {
    display: block;
    font-size: .8rem;
    line-height: 140%;
    padding-top: 1rem;
    padding-bottom: 1rem
}

#breadcrumb a {
    padding: 0;
    margin: 0 .4rem 0 0;
    color: #34597a;
    line-height: 140%;
    text-decoration: none;
    display: inline-block;
    font-weight: normal
}

#breadcrumb a:hover {
    color: #002b4f
}

#breadcrumb a:hover::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5.27 9.97'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23gb(0, 43, 79);stroke-miterlimit:10;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Eicon-arrow-red-right%3C/title%3E%3Cpolyline class='a' points='0.37 0.34 4.6 4.99 0.37 9.64'/%3E%3C/svg%3E")
}

#breadcrumb a::before {
    content: "";
    display: inline-block;
    height: .4375rem;
    width: .3125rem;
    margin-right: .4rem;
    margin-top: -0.1rem;
    vertical-align: middle;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5.27 9.97'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23gb(91, 133, 170);stroke-miterlimit:10;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Eicon-arrow-red-right%3C/title%3E%3Cpolyline class='a' points='0.37 0.34 4.6 4.99 0.37 9.64'/%3E%3C/svg%3E") center center/contain no-repeat
}

#breadcrumb ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: inline-block
}

#breadcrumb li {
    display: inline-block;
    white-space: nowrap
}

#breadcrumb li:hover .sub-navigation {
    display: block
}

#breadcrumb .lvl-0 a::before {
    display: none
}

#breadcrumb .entry {
    position: relative;
    padding: 0;
    margin-right: 0;
    line-height: 120%
}

#breadcrumb .entry:last-child {
    padding: 0
}

#breadcrumb .sub-navigation {
    display: none;
    position: absolute;
    top: .8125rem;
    left: .3rem;
    background-color: #fff;
    padding: .5rem .25rem .25rem .25rem;
    box-shadow: 0px 2px 2px #d1d1d1;
    z-index: 1000;
    border: none
}

#breadcrumb .sub-navigation li {
    display: block
}

#breadcrumb .sub-navigation a {
    padding: 0 0 0 8px;
    text-transform: none
}

#breadcrumb .sub-navigation a::before {
    display: none
}

#breadcrumb .currentEntry a {
    color: #002b4f
}

#breadcrumb .currentEntry a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5.27 9.97'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23gb(0, 43, 79);stroke-miterlimit:10;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Eicon-arrow-red-right%3C/title%3E%3Cpolyline class='a' points='0.37 0.34 4.6 4.99 0.37 9.64'/%3E%3C/svg%3E")
}

.objectfit-header {
    position: relative;
    width: 100%;
    height: 90vw;
    overflow: hidden
}

@media(min-width: 54rem) {
    .objectfit-header {
        height: 80vh
    }
}

.objectfit-header .measure--lg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%
}

.objectfit-header .objectfit-picture {
    height: 100%;
    width: 100%
}

@media(min-width: 54rem) {
    .objectfit-header .objectfit-picture {
        height: 100%;
        width: auto
    }
}

.objectfit-header .objectfit-img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block
}

.objectfit-header .header-img {
    min-width: 100%;
    display: block
}

.objectfit-header .desc-wrapper {
    position: absolute;
    top: 0;
    width: 100%
}

.accordion .accordion-item .accordion-content {
    display: none
}

.accordion .accordion-item.open .accordion-title.icon::before {
    transform: rotate(90deg)
}

.accordion header {
    cursor: pointer;
    padding: 1rem
}

.accordion header .accordion-title {
    margin: 0;
    position: relative;
    display: inline-block
}

.accordion header .accordion-title.icon::before {
    content: "";
    display: inline-block;
    height: 1rem;
    width: .5rem;
    margin-right: .4rem;
    margin-top: -0.375rem;
    vertical-align: middle;
    transition: all .3s;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5.27 9.97'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:none;stroke:%23gb(91, 133, 170);stroke-miterlimit:10;%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Eicon-arrow-red-right%3C/title%3E%3Cpolyline class='a' points='0.37 0.34 4.6 4.99 0.37 9.64'/%3E%3C/svg%3E") center center/contain no-repeat
}

input,
textarea,
.textarea {
    margin-bottom: 0;
    width: 100%;
    color: #002b4f;
    border: none;
    outline: none
}

.border-effect input,
.border-effect textarea,
.border-effect .textarea {
    border: 0;
    border-bottom: 1px solid #002b4f;
    background: rgba(0, 0, 0, 0);
    padding-left: 0;
    padding-right: 0
}

input~.focus-effect,
textarea~.focus-effect,
.textarea~.focus-effect {
    position: absolute;
    bottom: 0;
    width: 0;
    height: 2px;
    background-color: #002b4f;
    transition: .4s
}

.left input~.focus-effect,
.left textarea~.focus-effect,
.left .textarea~.focus-effect {
    left: 0
}

.spread input~.focus-effect,
.spread textarea~.focus-effect,
.spread .textarea~.focus-effect {
    left: 50%
}

input:focus,
textarea:focus,
.textarea:focus {
    outline: none
}

.left input:focus~.focus-effect,
.left.has-content input:focus~.focus-effect,
.left textarea:focus~.focus-effect,
.left.has-content textarea:focus~.focus-effect,
.left .textarea:focus~.focus-effect,
.left.has-content .textarea:focus~.focus-effect {
    width: 100%;
    transition: .4s
}

.spread input:focus~.focus-effect,
.spread.has-content input:focus~.focus-effect,
.spread textarea:focus~.focus-effect,
.spread.has-content textarea:focus~.focus-effect,
.spread .textarea:focus~.focus-effect,
.spread.has-content .textarea:focus~.focus-effect {
    left: 0%;
    width: 100%;
    transition: .4s
}

.form-v1 {
    background: #e8ecef;
    position: relative
}

.form-v1 label {
    line-height: 1.8em
}

.form-v1 .form-field {
    margin-bottom: .5rem;
    position: relative
}

.form-v1 .form-field.select .select-style {
    overflow: hidden;
    position: relative;
    background: #fff
}

.form-v1 .form-field.select .select-style select {
    padding: .5rem;
    margin: 0;
    border: none;
    box-shadow: none;
    background: rgba(0, 0, 0, 0);
    background-image: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.form-v1 .form-field.select .select-style select:focus {
    outline: none
}

.form-v1 .form-field.select .select-style::after {
    content: "";
    pointer-events: none;
    display: block;
    position: absolute;
    height: 100%;
    width: 50px;
    top: 0;
    right: 0;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.97 5.27'%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill:%23gb(128, 128, 128);%7D%3C/style%3E%3C/defs%3E%3Ctitle%3Eicon-arrow-gray-down%3C/title%3E%3Cpolygon class='a' points='4.99 5.27 0 0.74 0.67 0 4.99 3.92 9.3 0 9.97 0.74 4.99 5.27'/%3E%3C/svg%3E") center center/11px 6px no-repeat
}

.form-v1 a {
    color: #002b4f
}

.form-v1 a.button,
.form-v1 a.button--solid,
.form-v1 a.button--outline,
.form-v1 a.button--pill,
.form-v1 a.button--pill-outline {
    color: #fff
}

.form-v1 .pretty .state label:before {
    background-color: #fff;
    border-color: rgba(0, 0, 0, 0)
}

.form-v1 .pretty.p-icon input:checked~.state .icon {
    color: #002b4f
}

.form-v1 .pretty.p-icon input:checked~.state label:before {
    border-color: rgba(0, 0, 0, 0)
}

.split-modul .text-container {
    padding-top: 1rem
}

@media(min-width: 64rem) {
    .split-modul .text-container {
        padding-top: 0;
        padding-right: 2rem;
        padding-left: 2rem
    }
}

.split-modul .text-container p:first-child {
    margin-top: -0.3em
}

.m1half--t {
    margin-top: .5rem
}

.p1o.sbox,
.sbox.factbox,
.sbox.cp-inline--area {
    padding: .9375rem 1.875rem
}

@media screen and (min-width: 64rem) {

    .p1o.sbox,
    .sbox.factbox,
    .sbox.cp-inline--area {
        padding: 1.875rem
    }
}

.font--body-1 {
    margin: 0
}

.gototop-wrapper {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    pointer-events: none
}

.gototop {
    font-size: 12px;
    color: #718ba2;
    text-align: right;
    position: relative;
    padding-top: 2em;
    padding-bottom: 2em;
    display: inline-block;
    padding-right: 1.25rem;
    margin-right: 1.875rem;
    cursor: pointer;
    pointer-events: all
}

@media screen and (min-width: 81rem) {
    .gototop {
        margin-right: .5rem
    }
}

.gototop::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    border: 1px solid #718ba2;
    border-width: 0 1px 1px 0;
    padding: 4px;
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    margin: 0;
    transition: top .1s ease-in-out
}

.gototop:hover::after {
    top: 46%
}

.hidden {
    display: none
}

.nolink {
    cursor: not-allowed
}

.nolinkdiv {
    display: none;
    position: absolute;
    padding: .5rem;
    border: 1px solid #34597a;
    background: #fff;
    font-size: 14px;
    z-index: 1000
}

i.icon {
    display: inline-block;
    height: 1em;
    width: 1em;
    vertical-align: middle;
    background: rgba(0, 0, 0, 0) center center/contain no-repeat;
    margin-top: -0.15em
}

i.icon.download-white {
    background-image: url(../img/icons/icon-download-white.svg)
}

i.icon.kalender {
    background-image: url(../img/icons/calendar.svg)
}

i.icon.marker-white {
    background-image: url(../img/icons/marker-white.svg)
}

i.icon.link {
    background-image: url(../img/icons/icon-external-open.svg);
    margin-left: .5em
}

.contact-infos i.icon.link {
    margin-right: .3em;
    margin-left: 0
}

i.icon.link-int {
    background-image: url(../img/icons/icon-internal-open.svg);
    margin-left: .5em;
    height: .55em
}

i.icon.website {
    background-image: url(../img/icons/url.svg)
}

i.icon.mobile {
    background-image: url(../img/icons/icon-mobile.svg)
}

picture img {
    vertical-align: bottom
}

.button,
.button--solid,
.button--outline,
.button--pill,
.button--pill-outline,
button {
    border: none
}

.button:hover,
.button--outline:hover,
.button--pill:hover,
.button--pill-outline:hover,
button:hover,
.button--solid:hover {
    border: none
}

.button.font--button-small,
.font--button-small.button--outline,
.font--button-small.button--pill,
.font--button-small.button--pill-outline,
button.font--button-small,
.button--solid.font--button-small {
    padding-top: .5rem;
    padding-bottom: .5rem
}

.button.font--button-medium,
.font--button-medium.button--outline,
.font--button-medium.button--pill,
.font--button-medium.button--pill-outline,
button.font--button-medium,
.button--solid.font--button-medium {
    padding: 1em 2em
}

section {
    padding: 1.875rem 0;
    width: 100%
}

section.nopadding {
    padding: 0
}

section#intro-wifoe {
    padding: 2rem 0
}

@media screen and (min-width: 54rem) {
    section#intro-wifoe {
        padding: 80px 0
    }
}

section.color-1,
section.factbox,
section.cp-inline--area {
    color: #fff
}

section.color-1--l2,
section.color-2--l2 {
    border-top: 1px solid #fff
}

section.slider {
    padding-bottom: 4.875rem
}

section.nopadding {
    padding: 0
}

section.content {
    padding-bottom: 0
}

.modul>section {
    padding-top: 0;
    padding-bottom: 0
}

main>section>:last-child {
    padding-bottom: 120px
}

main.content>section:last-of-type {
    padding-bottom: 120px
}

main>section.kacheln>:last-child {
    padding-bottom: 0px
}

.float--right {
    float: right
}

.float--left {
    float: left
}

.settings-open {
    overflow: hidden
}

a,
.textlink {
    font-weight: bold;
    color: #34597a;
    text-decoration: underline
}

a:hover,
.textlink:hover {
    color: #5b85aa
}

button a,
a.button,
a.button--solid,
a.button--outline,
a.button--pill,
a.button--pill-outline,
a.button.button--solid {
    text-decoration: none;
    line-height: 100%;
    display: inline-flex;
    color: #fff
}

button a.button--icon,
a.button.button--icon,
a.button--icon.button--solid,
a.button--icon.button--outline,
a.button--icon.button--pill,
a.button--icon.button--pill-outline,
a.button.button--solid.button--icon {
    position: relative;
    padding-right: 3em
}

button a .icon,
a.button .icon,
a.button--solid .icon,
a.button--outline .icon,
a.button--pill .icon,
a.button--pill-outline .icon,
a.button.button--solid .icon {
    position: absolute;
    right: .5em
}

.color-1 a,
.factbox a,
.cp-inline--area a {
    color: #34597a
}

.color-1 a:hover,
.factbox a:hover,
.cp-inline--area a:hover {
    color: #e8ecef
}

.color-1 a.button,
.factbox a.button,
.cp-inline--area a.button,
.color-1 a.button--solid,
.factbox a.button--solid,
.cp-inline--area a.button--solid,
.color-1 a.button--outline,
.factbox a.button--outline,
.cp-inline--area a.button--outline,
.color-1 a.button--pill,
.factbox a.button--pill,
.cp-inline--area a.button--pill,
.color-1 a.button--pill-outline,
.factbox a.button--pill-outline,
.cp-inline--area a.button--pill-outline,
.color-1 a.button.button--solid {
    color: #fff
}

.color-1 button:hover,
.factbox button:hover,
.cp-inline--area button:hover,
.color-1 a.button:hover,
.factbox a.button:hover,
.cp-inline--area a.button:hover,
.color-1 a.button--solid:hover,
.factbox a.button--solid:hover,
.cp-inline--area a.button--solid:hover,
.color-1 a.button--outline:hover,
.factbox a.button--outline:hover,
.cp-inline--area a.button--outline:hover,
.color-1 a.button--pill:hover,
.factbox a.button--pill:hover,
.cp-inline--area a.button--pill:hover,
.color-1 a.button--pill-outline:hover,
.factbox a.button--pill-outline:hover,
.cp-inline--area a.button--pill-outline:hover,
.color-1 a.button.button--solid:hover {
    background: #fff;
    color: #6797c1
}

a.color-1,
a.factbox,
a.cp-inline--area {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    color: #fff;
    text-decoration: none
}

a.color-1 span.title,
a.factbox span.title,
a.cp-inline--area span.title {
    margin-bottom: 1rem
}

a.color-1:hover,
a.factbox:hover,
a.cp-inline--area:hover {
    cursor: pointer
}

@media screen and (min-width: 54rem) {

    a.color-1,
    a.factbox,
    a.cp-inline--area {
        flex-direction: row
    }

    a.color-1 span,
    a.factbox span,
    a.cp-inline--area span {
        margin-right: .2rem
    }

    a.color-1 span.title,
    a.factbox span.title,
    a.cp-inline--area span.title {
        margin-right: 1.5rem;
        margin-bottom: 0
    }
}

.border-effect input,
.border-effect textarea {
    border-bottom: 1px solid #5b85aa
}

.color-1 .border-effect input,
.factbox .border-effect input,
.cp-inline--area .border-effect input,
.color-1 .border-effect textarea,
.factbox .border-effect textarea,
.cp-inline--area .border-effect textarea {
    border-bottom: 1px solid #34597a
}

input~.focus-effect,
textarea~.focus-effect {
    background-color: #5b85aa
}

.color-1 input~.focus-effect,
.factbox input~.focus-effect,
.cp-inline--area input~.focus-effect,
.color-1 textarea~.focus-effect,
.factbox textarea~.focus-effect,
.cp-inline--area textarea~.focus-effect {
    background-color: #34597a
}

img[alt=""],
img:not([alt]) {
    outline: 0
}

header#header,
footer#footer {
    background: #5b85aa
}

header#header .measure-space {
    padding: .5rem 1.875rem .5rem .5rem
}

@media screen and (min-width: 54rem) {
    header#header .measure-space {
        padding: 1.875rem
    }
}

@media screen and (min-width: 54rem) {
    header#header .measure-space {
        padding: 1.5rem 1.5rem 0 1.5rem
    }
}

footer#footer .measure-space {
    padding: 1.875rem
}

@media screen and (min-width: 64rem) {
    footer#footer .measure-space {
        padding: 1.5rem
    }
}

.notch {
    position: relative
}

.notch:before {
    content: "";
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    shape-outside: polygon(50% 100%, 0 0, 100% 0);
    background: inherit;
    width: 65px;
    height: 20px;
    top: 0;
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
    border: 10px solid #fff
}

.notch.notch-white:before {
    border-color: #fff
}

.notch.notch-color-1--l2:before {
    border-color: #e7eef6
}

.notch.notch-color-2--l2:before {
    border-color: #e8ecef
}

.notch.notch-color-1:before {
    border-color: #5b85aa
}

.objectfit-header .descr-wrapper {
    position: relative
}

.objectfit-header .descr-wrapper .measure--lg {
    position: relative
}

.objectfit-header .descr-wrapper .measure-space {
    padding: 0
}

@media screen and (min-width: 54rem) {
    .objectfit-header {
        max-height: 1080px
    }

    .objectfit-header .descr-wrapper {
        padding: 0 10%;
        position: absolute;
        top: 50%
    }

    .objectfit-header .descr-wrapper .measure-space {
        padding: 0
    }
}

.buehne-text {
    padding: 1.3rem;
    width: 100%;
    background: #5b85aa;
    font-size: calc(1rem + 2*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    .buehne-text {
        font-size: 18px
    }
}

.buehne-text {
    color: #fff
}

.buehne-text h1 {
    margin: 0 0 .5rem 0;
    line-height: 100%
}

@media screen and (min-width: 54rem) {
    .buehne-text {
        padding: 1.5rem;
        width: auto
    }

    .buehne-text span {
        display: block
    }
}

@media screen and (min-width: 81rem) {
    .buehne-text {
        max-width: 45%;
        width: auto
    }
}

header#header {
    height: 120px;
    z-index: 21;
    position: fixed;
    top: 0;
    left: 0;
    right: 0
}

header#header .hamburger {
    display: flex;
    align-items: center;
    padding-right: 0;
    overflow: visible;
    position: absolute;
    right: 0;
    z-index: 100;
    top: calc(10ch - clamp(2rem, 39% - 1rem, 5rem))
}

.navigation-open header#header .hamburger {
    top: 0
}

.navigation-open header#header .hamburger .eyeAble_customToolOpenerClass {
    position: fixed;
    left: calc(16.45% + 2rem)
}

.navigation-open header#header:has(#head-search.active) .eyeAble_customToolOpenerClass {
    left: calc(50% - 1rem);
    transition: all .8s ease-in-out .1s
}

header#header .hamburger.is-active:hover,
header#header .hamburger:hover {
    opacity: 1
}

header#header .hamburger-inner,
header#header .hamburger-inner::after,
header#header .hamburger-inner::before {
    background-color: #fff;
    border-radius: 0
}

header#header .header-wrapper {
    position: relative;
    height: 100%
}

.navigation-open header#header .header-wrapper {
    background-color: #fff;
    padding-top: 0;
    padding-bottom: 0
}

header#header .header-wrapper-inner {
    height: 11.05vh;
    justify-content: flex-end;
    transition: height .3s linear
}

header#header .logo-container {
    height: 100%
}

.navigation-open header#header .logo-container {
    display: none
}

.navigation-open header#header .wifoe-textlogo {
    display: none
}

header#header .badge-energiekrise {
    display: block;
    height: 3rem;
    width: 3rem;
    background: rgba(0, 0, 0, 0) url(/standards/img/badge-energiekrise-mobile.svg) center center/contain no-repeat;
    margin-left: .6rem;
    transition: all .3s ease-in-out
}

@media screen and (min-width: 1150px) {
    header#header .badge-energiekrise {
        margin-left: 2rem;
        position: relative;
        top: 14px;
        height: 4rem;
        width: 4rem
    }
}

@media screen and (min-width: 1400px) {
    header#header .badge-energiekrise {
        background-image: url(/standards/img/badge-energiekrise.svg);
        top: 44px;
        position: relative;
        height: 113px;
        width: 236px;
        margin-left: 4rem
    }
}

@media screen and (min-width: 1400px) {
    .nav-is-sticky header#header .badge-energiekrise {
        height: 83px;
        width: 166px;
        top: 31px
    }
}

header#header .haupt-logo-fixed {
    background-color: #5b85aa;
    position: fixed;
    top: 0rem;
    left: 0;
    padding: .4rem .5rem .38rem
}

@media screen and (min-width: 54rem) {
    header#header .haupt-logo-fixed {
        padding: .7rem
    }
}

@media screen and (min-width: 64rem) {
    header#header .haupt-logo-fixed {
        padding: 1.15rem;
        z-index: 100
    }

    .nav-is-sticky header#header .haupt-logo-fixed {
        padding: .7rem;
        z-index: unset
    }
}

@media screen and (min-width: 81rem) {
    header#header .haupt-logo-fixed {
        padding: 1.37rem
    }

    .nav-is-sticky header#header .haupt-logo-fixed {
        padding: .7rem
    }
}

header#header #logo img {
    height: 120px;
    transition: height .3s linear
}

.nav-is-sticky header#header #logo img {
    width: auto
}

header#header #logo img {
    width: auto
}

header#header .navigation-wrapper .top {
    justify-content: flex-end;
    padding-top: calc(11.05vh - 4.5rem)
}

@media screen and (min-width: 35.5em) {
    header#header .hamburger {
        top: calc(50% - 1.8rem)
    }

    .nav-is-sticky header#header .hamburger {
        top: calc(50% - 1.8rem)
    }

    header#header .navigation-wrapper .top {
        justify-content: flex-start;
        align-items: center
    }

    header#header .navigation-wrapper .top .logo-microsite-alternativ {
        justify-content: flex-start;
        top: clamp(.1rem, 69% - 2.5rem + .9vh, 2rem);
        padding-left: 0;
        height: clamp(2.43rem, 50% - 1rem, 5rem);
        right: unset
    }

    .navigation-open header#header .header-wrapper-inner {
        height: 12.5vh
    }
}

@media screen and (min-width: 54rem) {
    header#header .hamburger {
        top: calc(50% - 1.8rem)
    }

    .nav-is-sticky header#header .hamburger {
        top: calc(50% - 1.8rem)
    }

    header#header .navigation-wrapper .top {
        padding-top: calc(11.05vh - 6.5rem);
        justify-content: flex-start;
        align-items: center
    }

    .nav-is-sticky header#header .navigation-wrapper .top {
        padding-top: calc(11.05vh - 7rem)
    }

    header#header {
        height: 110px;
        transition: height .3s linear
    }

    .nav-is-sticky header#header {
        height: 86px
    }

    .navigation-open header#header {
        height: 12.5vh
    }

    header#header .header-wrapper-inner {
        align-items: center;
        height: calc(112px - 3rem);
        transition: height .3s linear
    }

    .nav-is-sticky header#header .header-wrapper-inner {
        height: calc(88px - 3rem)
    }

    .navigation-open header#header .header-wrapper-inner {
        height: 12.5vh
    }

    header#header .hvr-grow .logo {
        height: 100%;
        display: block;
        line-height: 100%
    }

    header#header .hvr-grow .logo img {
        display: block
    }

    header#header #logo img {
        height: calc(164px - 3rem)
    }

    .nav-is-sticky header#header #logo img {
        height: 8.5vh;
        min-height: 88px
    }

    header#header .navigation-wrapper {
        transition: height .3s linear;
        height: 100%
    }

    header#header .navigation-wrapper .top {
        height: 100%;
        padding-left: 2rem
    }

    .nav-is-sticky header#header .navigation-wrapper {
        height: 100%
    }

    .nav-is-sticky header#header .navigation-wrapper .top {
        height: 100%
    }
}

@media screen and (min-width: 64rem) {
    header#header {
        height: 138px;
        transition: height .3s linear
    }

    header#header .measure-space {
        padding-bottom: 0
    }

    header#header .hamburger {
        display: none
    }

    header#header .header-wrapper {
        justify-content: space-between;
        align-items: flex-end
    }

    header#header .header-wrapper-inner {
        align-items: flex-end;
        justify-content: flex-start;
        height: 144px
    }

    .nav-is-sticky header#header .header-wrapper-inner {
        height: 88px
    }

    header#header .logo-container {
        align-self: flex-start
    }

    header#header #logo img {
        height: calc(164px - 3rem)
    }

    .nav-is-sticky header#header #logo img {
        height: calc(86px - 1rem);
        min-height: unset
    }

    header#header .navigation-wrapper {
        height: 144px;
        padding-bottom: 1.9rem;
        padding-left: 4.7rem
    }

    header#header .navigation-wrapper .top {
        height: 48.6%;
        padding: 0;
        transition: height .3s linear;
        align-items: flex-end;
        justify-content: flex-start
    }

    .nav-is-sticky header#header .navigation-wrapper {
        height: 86px;
        padding-bottom: 1.54rem;
        padding-left: 2rem
    }

    .nav-is-sticky header#header .navigation-wrapper .top {
        height: 18.2%;
        padding-top: 0
    }
}

@media screen and (min-width: 81rem) {
    header#header {
        height: 204.3px
    }

    header#header .header-wrapper-inner {
        height: 204.3px
    }

    header#header #logo img {
        height: calc(236px - 2.75rem)
    }

    .nav-is-sticky header#header #logo img {
        height: calc(86px - .9rem)
    }

    header#header .navigation-wrapper {
        height: 204.3px;
        padding-bottom: 1.5rem;
        padding-left: 8rem
    }

    .nav-is-sticky header#header .navigation-wrapper {
        padding-left: 1rem
    }

    .nav-is-sticky header#header {
        height: 86px
    }

    .nav-is-sticky .nav-is-sticky header#header .top {
        height: 40%
    }
}

@media screen and (min-width: 120em) {
    header#header .navigation-wrapper {
        padding-left: 7.5rem
    }

    .nav-is-sticky header#header .navigation-wrapper {
        padding-left: 0rem
    }
}

header#header #main-navigation-wrapper {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    overflow-y: scroll
}

.navigation-open header#header #main-navigation-wrapper {
    display: flex;
    background: #5b85aa;
    overflow-y: scroll
}

header#header #main-navigation-wrapper {
    flex-direction: column
}

@media screen and (min-width: 64rem) {
    header#header #main-navigation-wrapper {
        overflow-y: visible;
        top: 164px;
        display: flex;
        position: relative;
        top: 0;
        bottom: auto;
        right: auto;
        transition: height .3s linear;
        height: 52%
    }

    .nav-is-sticky header#header #main-navigation-wrapper {
        height: 80%
    }
}

header#header #main-navigation {
    margin-left: 0 !important;
    position: relative;
    top: 0;
    z-index: 20;
    padding: 0;
    padding-top: 30vh;
    background-color: #5b85aa;
    text-align: left;
    flex-direction: column
}

.navigation-open header#header #main-navigation {
    background: #5b85aa;
    width: 100%
}

@media screen and (min-width: 64rem) {
    .navigation-open header#header #main-navigation {
        display: flex;
        flex-direction: column
    }
}

header#header #main-navigation .lvl-1.entry,
header#header #main-navigation .lvl-2.entry {
    padding: .8rem 4.2rem .8rem 1.875rem;
    font-size: 1.25rem;
    line-height: 1em;
    font-weight: bold
}

header#header #main-navigation .lvl-1.entry a,
header#header #main-navigation .lvl-2.entry a {
    display: inline-block;
    text-decoration: none;
    color: #fff;
    font-weight: 700;
    width: 100%;
    padding: 0 1rem 0 0;
    margin-bottom: 0
}

header#header #main-navigation .lvl-1.entry.active,
header#header #main-navigation .lvl-2.entry.active {
    background: #e7eef6
}

header#header #main-navigation .lvl-1.entry.active .toggle-subnavi,
header#header #main-navigation .lvl-2.entry.active .toggle-subnavi {
    border-color: #34597a
}

header#header #main-navigation .lvl-1.entry.active>a.nav-link,
header#header #main-navigation .lvl-2.entry.active>a.nav-link {
    color: #718ba2
}

header#header #main-navigation .lvl-1.entry.open-subnavi,
header#header #main-navigation .lvl-2.entry.open-subnavi {
    background: #fff
}

header#header #main-navigation .lvl-1.entry.open-subnavi .toggle-subnavi,
header#header #main-navigation .lvl-2.entry.open-subnavi .toggle-subnavi {
    border-color: #34597a
}

header#header #main-navigation .lvl-1.entry.open-subnavi a,
header#header #main-navigation .lvl-2.entry.open-subnavi a {
    color: #34597a
}

header#header #main-navigation .lvl-1.entry .shadow-overlay,
header#header #main-navigation .lvl-2.entry .shadow-overlay {
    display: none
}

header#header #main-navigation .lvl-1.entry .subnavi,
header#header #main-navigation .lvl-2.entry .subnavi {
    display: none;
    overflow: scroll;
    margin-top: .8rem;
    margin-left: -1.875rem;
    width: calc(100% + 3.75rem);
    -ms-overflow-style: none;
    scrollbar-width: none
}

header#header #main-navigation .lvl-1.entry .subnavi::-webkit-scrollbar,
header#header #main-navigation .lvl-2.entry .subnavi::-webkit-scrollbar {
    display: none
}

header#header #main-navigation .lvl-2.entry.open-subnavi {
    background: #e7eef6
}

header#header #main-navigation .lvl-2.entry.open-subnavi a {
    color: #34597a
}

header#header #main-navigation .lvl-2.entry.open-subnavi>a.nav-link {
    text-decoration: underline
}

header#header #main-navigation .lvl-1.entry:first-child a.nav-link {
    justify-content: flex-start
}

header#header #main-navigation .lvl-1.entry:first-child a.nav-link::after {
    left: 0
}

.navigation-open header#header #main-navigation .lvl-1.entry#home {
    position: fixed;
    top: 0;
    width: 100%;
    height: calc(21.5vh - 2.75rem);
    padding: 15px;
    text-align: center;
    background: #5b85aa;
    z-index: 5
}

.navigation-open header#header #main-navigation .lvl-1.entry#home a {
    background: #34597a;
    position: absolute;
    left: 16.45%;
    border-radius: 21%;
    padding: .09rem .45rem;
    width: -moz-fit-content;
    width: fit-content
}

.navigation-open header#header #main-navigation .lvl-1.entry#home svg {
    max-width: 17.5px;
    max-height: 14.9px
}

.navigation-open header#header #main-navigation .lvl-1.entry#home svg .cls-1 {
    stroke: #fff
}

.navigation-open header#header #main-navigation .lvl-1.entry.head-search {
    border-bottom: none;
    padding: 0
}

header#header #main-navigation .lvl-1.entry.open-subnavi {
    padding-bottom: 0
}

header#header #main-navigation .lvl-1.entry.open-subnavi .subnavi.lvl-1 {
    display: block
}

header#header #main-navigation .lvl-1.entry#home span {
    display: none
}

header#header #main-navigation .lvl-2.entry {
    padding: .8rem 1.875rem;
    font-size: 1.25rem;
    line-height: 1em;
    font-weight: bold
}

header#header #main-navigation .lvl-2.entry.active {
    background: #e7eef6
}

header#header #main-navigation .lvl-2.entry.open-subnavi .subnavi.lvl-2 {
    display: block
}

header#header #main-navigation .has-subnavi {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: flex-start;
    position: relative
}

header#header #main-navigation .has-subnavi .toggle-subnavi {
    right: 1.875rem;
    top: 1.425rem;
    padding: 6px;
    margin: -3px
}

header#header #main-navigation .lvl-3.entry {
    text-transform: initial;
    padding: .2em 1.875rem
}

header#header #main-navigation .lvl-3.entry .nav-link {
    display: inline-flex;
    align-items: center
}

@media screen and (min-width: 54rem) {

    header#header #main-navigation .lvl-1.entry a,
    header#header #main-navigation .lvl-2.entry a {
        padding: 0
    }
}

@media screen and (min-width: 64rem) {
    header#header #main-navigation {
        padding: 0;
        margin-left: -0.5rem;
        height: 100%;
        background: none;
        flex-direction: row;
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        flex-flow: row wrap
    }

    header#header #main-navigation .lvl-1.entry:first-child {
        max-width: 8rem;
        padding: 12px 2px 13px 2px
    }

    .nav-is-sticky header#header #main-navigation .lvl-1.entry:first-child {
        padding: 2px 2px 7px 2px
    }

    header#header #main-navigation .lvl-1.entry:nth-last-child(2) {
        padding: 12px 2px 13px 2px
    }

    .nav-is-sticky header#header #main-navigation .lvl-1.entry:nth-last-child(2) {
        padding: 2px 2px 7px 2px
    }

    header#header #main-navigation .lvl-1.entry {
        line-height: 1.2em;
        flex-grow: 1;
        flex-shrink: 1;
        flex-basis: auto;
        font-size: 1rem;
        text-align: center;
        border-bottom: none;
        padding: 12px 0 13px 0;
        position: relative;
        overflow: hidden
    }

    .nav-is-sticky header#header #main-navigation .lvl-1.entry {
        padding: 0 0 7px 0
    }

    header#header #main-navigation .lvl-1.entry:last-child::after {
        display: none
    }

    header#header #main-navigation .lvl-1.entry.head-search {
        width: 12%
    }

    header#header #main-navigation .lvl-1.entry.head-search::after {
        display: none
    }

    header#header #main-navigation .lvl-1.entry a.nav-link {
        font-size: 14px;
        transition: padding .3s linear;
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 2rem;
        overflow: hidden
    }

    header#header #main-navigation .lvl-1.entry a.nav-link::after {
        content: "";
        height: 7px;
        bottom: -7px;
        left: 20%;
        right: 20%;
        background: #fff;
        position: absolute;
        width: 60%;
        transition: bottom .3s ease-in-out
    }

    header#header #main-navigation .lvl-1.entry a.nav-link.has-subnavi {
        background: rgba(0, 0, 0, 0)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link {
        background: rgba(0, 0, 0, 0);
        padding-right: 6px
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link::before {
        content: "";
        position: absolute;
        display: inline-block;
        border: 1px solid #fff;
        border-width: 0 1px 1px 0;
        padding: 2px;
        transform: translate(-102%) rotate(45deg);
        transition: all .3s ease-out;
        height: 2px;
        margin-right: 0px;
        margin-bottom: 0px;
        margin-left: 0px;
        vertical-align: middle;
        right: -4px
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover>a.nav-link::before {
        border-color: #34597a;
        transform: translate(-102%) rotate(45deg);
        right: -3px
    }

    header#header #main-navigation .lvl-1.entry.active {
        background: none
    }

    header#header #main-navigation .lvl-1.entry:hover>a.nav-link,
    header#header #main-navigation .lvl-1.entry.active>a.nav-link {
        color: #fff
    }

    header#header #main-navigation .lvl-1.entry:hover>a.nav-link::after,
    header#header #main-navigation .lvl-1.entry.active>a.nav-link::after {
        bottom: 0;
        transition: bottom .3s ease-in-out
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover,
    header#header #main-navigation .lvl-1.entry.has-subnavi:focus-within {
        background: #fff;
        overflow: visible
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover::before,
    header#header #main-navigation .lvl-1.entry.has-subnavi:focus-within::before {
        border: 1px solid #34597a !important;
        border-width: 0 1px 1px 0 !important
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover::after,
    header#header #main-navigation .lvl-1.entry.has-subnavi:focus-within::after {
        background: rgba(0, 0, 0, 0)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover a.nav-link,
    header#header #main-navigation .lvl-1.entry.has-subnavi:focus-within a.nav-link {
        z-index: 40;
        position: relative;
        color: #34597a
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover a.nav-link::after,
    header#header #main-navigation .lvl-1.entry.has-subnavi:focus-within a.nav-link::after {
        display: none
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover .shadow-overlay,
    header#header #main-navigation .lvl-1.entry.has-subnavi:focus-within .shadow-overlay {
        display: block;
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        z-index: 30;
        background: #fff
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover>.subnavi,
    header#header #main-navigation .lvl-1.entry.has-subnavi:focus-within>.subnavi {
        display: block;
        overflow: visible;
        -webkit-appearance: none;
        box-shadow: 0 0 15px 0 rgba(0, 0, 0, .2)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus) {
        background: #fff;
        overflow: visible
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus)::before {
        border: 1px solid #34597a !important;
        border-width: 0 1px 1px 0 !important
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus)::after {
        background: rgba(0, 0, 0, 0)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus) a.nav-link {
        z-index: 40;
        position: relative;
        color: #34597a
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus) a.nav-link::after {
        display: none
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus) a.nav-link:focus-visible {
        outline: none !important;
        box-shadow: unset !important
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus) .shadow-overlay {
        display: block;
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        z-index: 30;
        background: #fff;
        outline: none;
        box-shadow: 0 0 0 2px #b80a07
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:has(>a.nav-link:focus)>.subnavi {
        display: block;
        overflow: visible;
        -webkit-appearance: none;
        box-shadow: 0 0 15px 0 rgba(0, 0, 0, .2)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi .lvl-2.entry:has(>a.nav-link:focus) a.nav-link:focus-visible,
    header#header #main-navigation .lvl-1.entry.has-subnavi .lvl-3.entry:has(a.nav-link:focus) a.nav-link:focus-visible {
        outline: none !important;
        box-shadow: unset !important
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi .lvl-2.entry:has(>a.nav-link:focus),
    header#header #main-navigation .lvl-1.entry.has-subnavi .lvl-3.entry:has(a.nav-link:focus) {
        outline: 2px solid #b80a07;
        outline-offset: -2px
    }

    header#header #main-navigation .lvl-1.entry .subnavi {
        z-index: 20;
        margin-left: 0;
        margin-top: -7px;
        top: 100%;
        width: auto;
        min-width: 100%;
        padding: 2rem 0;
        box-shadow: none
    }

    header#header #main-navigation .lvl-1.entry .subnavi .lvl-2.entry {
        padding: .6rem 4rem .6rem 2rem
    }

    header#header #main-navigation .lvl-1.entry .subnavi .lvl-2.entry:hover {
        background: #e7eef6
    }

    header#header #main-navigation .lvl-1.entry .subnavi .lvl-2.entry:hover>a.nav-link {
        text-decoration: underline;
        color: #009adf
    }

    header#header #main-navigation .lvl-1.entry .subnavi .lvl-2.entry a.nav-link {
        min-height: unset;
        border: none;
        padding: 0;
        justify-content: flex-start;
        overflow: visible;
        white-space: nowrap
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi.last>.subnavi {
        right: 0
    }

    header#header #main-navigation .lvl-2.entry {
        border-top: none
    }

    header#header #main-navigation .lvl-2.entry.active,
    header#header #main-navigation .lvl-2.entry:hover {
        background: #e7eef6
    }

    header#header #main-navigation .lvl-2.entry:hover .subnavi.lvl-2 {
        display: block;
        left: 100%;
        top: 0;
        padding: 10px 0;
        position: absolute;
        background: #fff;
        box-shadow: 15px 0 15px -7px rgba(0, 0, 0, .2)
    }

    header#header #main-navigation .lvl-2.entry:hover .subnavi.lvl-2.toLeft {
        right: 100%;
        left: auto;
        box-shadow: -15px 0 15px -7px rgba(0, 0, 0, .2)
    }

    header#header #main-navigation .lvl-2.entry.has-subnavi .toggle-subnavi {
        right: 1.875rem;
        top: 1.14rem;
        padding: 4.27px;
        margin: -3px;
        display: block;
        border-color: #34597a
    }

    header#header #main-navigation .lvl-3.entry {
        padding: .6rem 1.875rem
    }

    header#header #main-navigation .lvl-3.entry.active,
    header#header #main-navigation .lvl-3.entry:hover {
        background: #e7eef6
    }

    header#header #main-navigation .lvl-3.entry.active>a.nav-link,
    header#header #main-navigation .lvl-3.entry:hover>a.nav-link {
        text-decoration: underline;
        color: #009adf !important
    }
}

@media screen and (min-width: 81rem) {
    header#header #main-navigation .lvl-1.entry .head-search {
        width: 16%
    }

    header#header #main-navigation .lvl-1.entry#home span {
        display: block
    }

    .nav-is-sticky header#header #main-navigation .lvl-1.entry#home span {
        display: none
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link {
        background: rgba(0, 0, 0, 0);
        padding-right: 5px
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link::before {
        content: "";
        padding: 3px;
        height: 3px;
        right: -6px
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover>a.nav-link::before {
        border-color: #34597a;
        transform: translate(-102%) rotate(45deg);
        right: -2px
    }
}

@media screen and (min-width: 1260px) {
    header#header #main-navigation {
        margin-left: -1rem
    }

    header#header #main-navigation .lvl-1.entry a.nav-link {
        font-size: 14px
    }
}

@media screen and (min-width: 1596px) {
    header#header #main-navigation {
        margin-left: -2rem
    }

    header#header #main-navigation .lvl-1.entry a.nav-link {
        font-size: 16px
    }

    header#header #main-navigation .lvl-1.entry a.nav-link::after {
        content: "";
        left: 1.7rem;
        right: 1.7rem;
        width: calc(100% - 3.4rem)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link {
        background: rgba(0, 0, 0, 0)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link::before {
        right: -0.1rem
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover>a.nav-link::before {
        right: -0.1rem
    }
}

@media screen and (min-width: 120em) {
    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link {
        background: rgba(0, 0, 0, 0)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link::before {
        right: .5rem
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover>a.nav-link::before {
        right: .5rem
    }
}

@media screen and (min-width: 2300px) {
    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link {
        background: rgba(0, 0, 0, 0)
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi>a.nav-link::before {
        right: 1.5rem
    }

    header#header #main-navigation .lvl-1.entry.has-subnavi:hover>a.nav-link::before {
        right: 1.5rem
    }
}

@media screen and (min-width: 64rem) {
    header#header #main-navigation-wrapper.microsite .lvl-1.entry.head-search {
        width: 25%
    }
}

main {
    position: relative;
    min-height: 80vh;
    padding-top: 120px
}

@media screen and (min-width: 54rem) {
    main {
        padding-top: 110px
    }
}

@media screen and (min-width: 64rem) {
    main {
        padding-top: 138px
    }

    .nav-is-sticky main {
        padding-top: 88px
    }
}

@media screen and (min-width: 81rem) {
    main {
        padding-top: 204px
    }
}

:focus-visible {
    outline: 2px solid #b80a07;
    outline-offset: 0px
}

.factbox,
.cp-inline--area {
    margin: 1.875rem 0;
    display: block;
    color: #fff
}

.factbox a,
.cp-inline--area a {
    color: #fff
}

.factbox .factbox-headline,
.cp-inline--area .factbox-headline {
    color: #fff;
    font-weight: bold
}

.partnerlogo {
    max-width: 25%
}

h1 {
    margin-bottom: .4em
}

h1,
.font--headline-1,
.schriftgroesse-h1 {
    hyphens: auto
}

.headline-link-more {
    display: inline;
    font-size: 1rem;
    padding: 0 0 0 1em
}

.headline-link-more::after {
    content: "";
    padding: 0 0 0 1.333em;
    margin: 0 0 0 .5rem;
    background: url(../img/icons/dummy.svg) no-repeat center center/100%;
    width: 1.333em;
    height: 1.333em
}

.headline-link-more a {
    text-decoration: none;
    font-weight: 300
}

ul.list--rect,
section.content ul {
    list-style-type: none !important;
    margin: .9375rem 0 1.875rem 0;
    padding: 0;
    overflow: hidden
}

ul.list--rect li,
section.content ul li {
    position: relative;
    padding-left: .825em;
    margin-bottom: .3em
}

ul.list--rect li::before,
section.content ul li::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    left: 0;
    position: absolute;
    margin-right: 7px;
    background-color: #5b85aa;
    top: 7px
}

.color-1 ul.list--rect li::before,
.color-1 section.content ul li::before,
section.content .color-1 ul li::before,
.factbox ul.list--rect li::before,
.factbox section.content ul li::before,
section.content .factbox ul li::before,
.cp-inline--area ul.list--rect li::before,
.cp-inline--area section.content ul li::before,
section.content .cp-inline--area ul li::before {
    background-color: #fff
}

ol {
    margin: .9375rem 0 1.875rem 0;
    padding: 0;
    padding-inline-start: 18px
}

ol li {
    margin-bottom: .3em
}

ol li::marker {
    color: #5b85aa
}

.color-1 ol li::marker,
.factbox ol li::marker,
.cp-inline--area ol li::marker {
    color: #fff
}

hr,
hr.s1 {
    width: 100%;
    border: none;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    height: 1px;
    background: none;
    border-bottom-color: #cadaec
}

hr.hr-white,
hr.s1.hr-white {
    border-bottom-color: #fff
}

hr.hr-nomargin,
hr.s1.hr-nomargin {
    margin: 0
}

.split-modul {
    background: #e7eef6
}

@media screen and (min-width: 64rem) {
    .split-modul .name-right {
        display: inline;
        text-align: right
    }

    .split-modul .text-container {
        padding-top: 3px
    }

    .split-modul .text-container--left {
        padding-left: 0;
        padding-right: 1.875rem
    }
}

.big-button-wrapper {
    width: 100%;
    justify-content: space-between
}

.big-button-wrapper button.font--button-small {
    padding: .4em 1em;
    display: flex;
    align-items: center
}

.big-button-wrapper button.font--button-small i.icon.download-white {
    height: 2em;
    width: 2em;
    margin-left: .5em
}

.big-button-wrapper-neu {
    display: flex
}

.big-button-wrapper-neu a {
    display: flex;
    justify-content: space-between;
    flex-grow: 1;
    text-decoration: none;
    flex-direction: column;
    align-items: flex-end
}

@media screen and (min-width: 32rem) {
    .big-button-wrapper-neu a {
        flex-direction: row;
        align-items: center
    }
}

.big-button-wrapper-neu a:hover {
    cursor: pointer
}

.big-button-wrapper-neu a:hover .download-descr-wrapper span.title {
    text-decoration: underline
}

.big-button-wrapper-neu.border-white {
    border-bottom: 1px solid #fff
}

.big-button-wrapper-neu.border-white--right {
    border-right: 1px solid #fff
}

.big-button-wrapper-neu .download-descr-wrapper {
    padding-bottom: .9375rem;
    width: 100%
}

@media screen and (min-width: 32rem) {
    .big-button-wrapper-neu .download-descr-wrapper {
        padding-bottom: 0;
        max-width: 60%
    }
}

@media screen and (min-width: 54rem) {
    .big-button-wrapper-neu .download-descr-wrapper {
        max-width: 80%
    }
}

.big-button-wrapper-neu .download-descr-wrapper span.title {
    width: 100%
}

.big-button-wrapper-neu .download-descr-wrapper span.descr {
    font-weight: 400;
    font-size: .8em
}

.big-button-wrapper-neu button.font--button-small {
    padding: .4em 1em;
    display: flex;
    align-items: center
}

.big-button-wrapper-neu button.font--button-small i.icon.download-white {
    height: 2em;
    width: 2em;
    margin-left: .5em
}

hr.big-button-wrapper-hr {
    margin: 0
}

.small-button-wrapper {
    font-size: 1rem;
    padding: .25rem .25rem .25rem .5rem;
    text-decoration: none;
    display: flex;
    float: left;
    align-items: center;
    margin: 0 .5rem .5rem 0
}

.small-button-wrapper button.font--button-small {
    font-size: 10px;
    padding: 4px
}

.small-button-wrapper button.font--button-small i.icon.kalender {
    height: 1.6em;
    width: 1.6em;
    margin-left: .5em
}

.small-button-wrapper .title {
    font-size: 1rem;
    margin-right: 1.5em
}

button.font--button-small.button-route {
    padding: .5em .5em .5em 1em
}

button.font--button-small i.icon.marker-white {
    height: 1.6em;
    width: 1.6em;
    margin-left: .5em
}

.swiper-wrapper {
    flex-direction: row
}

.big-slider .swiper-wrapper {
    margin: 0
}

.swiper-nav-container,
.slider-v1--container {
    margin-bottom: 0
}

.swiper-pagination {
    bottom: 0;
    position: absolute;
    height: 6px;
    padding-top: 0;
    width: calc(100% - 4rem)
}

@media screen and (min-width: 54rem) {
    .swiper-pagination {
        padding-top: 1.8rem
    }
}

.swiper-pagination.headswiper-pagination {
    position: relative;
    margin: 0 auto 1.875rem auto;
    top: auto;
    bottom: 6px;
    padding: 0
}

@media screen and (min-width: 54rem) {
    .swiper-pagination.headswiper-pagination {
        position: absolute;
        bottom: auto;
        top: 100%;
        margin: 0;
        padding-top: .625rem
    }
}

@media screen and (min-width: 81rem) {
    .swiper-pagination.headswiper-pagination {
        bottom: 4rem;
        top: auto;
        padding-top: 0;
        margin-bottom: 0
    }
}

.swiper-pagination .swiper-pagination-bullet {
    cursor: pointer;
    border-radius: 0;
    width: 12px;
    height: 6px;
    display: inline-block;
    background: #cadaec
}

@media screen and (min-width: 54rem) {
    .big-slider.start .swiper-pagination .swiper-pagination-bullet {
        background: #cadaec
    }
}

.swiper-pagination .swiper-pagination-bullet {
    opacity: 1;
    margin: .4rem
}

.swiper-pagination .swiper-pagination-bullet:focus {
    outline: none
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #34597a
}

@media screen and (min-width: 54rem) {
    .big-slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background: #34597a
    }
}

.swiper-button-prev,
.swiper-button-next {
    background: none;
    display: none;
    outline: none;
    width: auto;
    height: auto
}

@media screen and (min-width: 54rem) {

    .swiper-button-prev,
    .swiper-button-next {
        display: flex;
        justify-content: center;
        align-items: center
    }
}

.swiper-button-prev.headswiper-button-prev,
.swiper-button-prev.headswiper-button-next,
.swiper-button-next.headswiper-button-prev,
.swiper-button-next.headswiper-button-next {
    background: #e7eef6;
    opacity: .76;
    display: flex;
    width: 1.875rem;
    height: 2rem;
    top: 37.5vw
}

@media screen and (min-width: 54rem) {

    .swiper-button-prev.headswiper-button-prev,
    .swiper-button-prev.headswiper-button-next,
    .swiper-button-next.headswiper-button-prev,
    .swiper-button-next.headswiper-button-next {
        width: 3rem;
        height: 3.5rem;
        top: 60%
    }
}

@media screen and (min-width: 64rem) {

    .swiper-button-prev.headswiper-button-prev,
    .swiper-button-prev.headswiper-button-next,
    .swiper-button-next.headswiper-button-prev,
    .swiper-button-next.headswiper-button-next {
        top: 55%
    }
}

.swiper-button-prev::after,
.swiper-button-next::after {
    font-size: 1.25rem;
    color: #34597a
}

@media screen and (min-width: 54rem) {

    .swiper-button-prev::after,
    .swiper-button-next::after {
        font-size: 27px
    }
}

.img-swiper-nav-container {
    padding-bottom: 1.875rem
}

@media screen and (min-width: 64rem) {
    .img-swiper-nav-container {
        padding-bottom: 0
    }
}

.swiper-button-prev.img-slider-button-prev,
.swiper-button-next.img-slider-button-next {
    display: none
}

@media screen and (min-width: 64rem) {

    .swiper-button-prev.img-slider-button-prev,
    .swiper-button-next.img-slider-button-next {
        display: block;
        top: 60%
    }
}

.swiper-pagination.img-slider-pagination {
    padding-top: 0;
    bottom: 1.875rem
}

@media screen and (min-width: 64rem) {
    .swiper-pagination.img-slider-pagination {
        display: none;
        bottom: 0
    }
}

.swiper-button-prev {
    left: 1.5rem
}

.swiper-button-prev.headswiper-button-prev,
.modul.galerie .swiper-button-prev {
    left: 0
}

.swiper-button-next {
    right: 1.5rem
}

.swiper-button-next.headswiper-button-next,
.modul.galerie .swiper-button-next {
    right: 0
}

.img-slider {
    padding: 0 .9375rem
}

.img-slider .img-wrapper {
    padding: .9375rem
}

.modul.galerie .img-slider {
    margin: 0 .9375rem;
    padding: 0
}

.accordion-arrow::after,
.split-modul.accordion-item header.split-modul-header h5::after,
.accordion-modul header::after {
    content: "";
    position: absolute;
    border: 2px solid #34597a;
    border-width: 0 2px 2px 0;
    padding: 7px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transition: all .3s ease-out;
    margin: 0
}

.accordion-arrow-open::after,
.split-modul.accordion-item.open header.split-modul-header h5::after,
.accordion-modul.open header::after {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transition: all .3s ease-out
}

.p1s {
    padding: .3rem
}

input,
select,
textarea,
label {
    font-size: 1rem
}

.state label {
    line-height: 1
}

.state label.checkbox.small-text span {
    font-size: 12px
}

.pretty {
    white-space: normal
}

.pretty .state label {
    text-indent: 0
}

.pretty .state label:after,
.pretty .state label:before,
.pretty.p-svg .state .svg {
    top: 0
}

.form-v1 .form-field {
    margin-bottom: .8rem
}

footer#footer {
    color: #fff;
    font-size: 1rem
}

footer#footer ul {
    padding: 0;
    margin: 0 0 1.5em 0;
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-flow: wrap;
    justify-content: space-around
}

footer#footer ul li {
    margin: 0 .5rem 1em .5rem
}

footer#footer ul li.active a {
    text-decoration: underline
}

footer#footer .footer--item-2 adress {
    font-size: 14px
}

footer#footer .footer--item-2 .grd-row {
    flex-direction: column;
    align-items: center;
    text-align: center
}

footer#footer span.divider {
    display: block
}

footer#footer span.divider.nobr {
    display: inline-flex
}

footer#footer span.divider.nobr::after {
    content: ", ";
    font-weight: 400
}

footer#footer span a {
    text-decoration: none;
    font-weight: 400
}

footer#footer #footerlogo {
    padding-top: 1.3rem
}

footer#footer a,
footer#footer a:visited,
footer#footer a:active,
footer#footer a:focus {
    color: #fff;
    text-transform: none
}

footer#footer a.footernav,
footer#footer a:visited.footernav,
footer#footer a:active.footernav,
footer#footer a:focus.footernav {
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none
}

footer#footer a:hover,
footer#footer a:focus,
footer#footer a:visited:hover,
footer#footer a:visited:focus,
footer#footer a:active:hover,
footer#footer a:active:focus,
footer#footer a:focus:hover,
footer#footer a:focus:focus {
    color: #294d6b
}

@media screen and (min-width: 54rem) {
    footer#footer ul {
        justify-content: flex-start;
        height: 100%;
        margin: 0 0 2.5em 0
    }

    footer#footer ul li {
        margin-right: 1.85em;
        margin-left: 0
    }

    footer#footer .footer--item-2 .grd-row {
        flex-direction: row;
        align-items: flex-end;
        text-align: left;
        justify-content: space-between
    }

    footer#footer span.divider {
        padding-right: 1em;
        display: inline-flex
    }

    footer#footer span.divider::after {
        content: "|";
        padding: 0 0 0 1em;
        background: none
    }

    footer#footer span.divider.nobr::after {
        content: "|"
    }

    footer#footer #footerlogo {
        padding-top: 0;
        float: right
    }
}

.sl-image {
    background: #fff
}

.table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch
}

.table,
table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 1.875rem
}

.table tr:nth-of-type(odd),
table tr:nth-of-type(odd) {
    background-color: #dce6ef
}

.table,
table {
    border: 1px solid #cadaec
}

.table td,
.table th,
table td,
table th {
    border: 1px solid #cadaec
}

.table td p,
.table th p,
table td p,
table th p {
    margin: 0
}

.table tr:nth-child(2n),
table tr:nth-child(2n) {
    background-color: #e7eef6;
    color: #34597a
}

.table th,
table th {
    background-color: #95b6d9;
    color: #fff
}

.table td,
.table th,
table td,
table th {
    text-align: left;
    padding: 1rem;
    vertical-align: top;
    border-top: 1px solid #cadaec
}

.table,
table {
    border: 1px solid #cadaec
}

#video-container {
    position: relative
}

#video-container video {
    aspect-ratio: 16/9
}

#video-container video[poster] {
    -o-object-fit: cover;
    object-fit: cover
}

#video-container .play-button {
    width: 90px;
    height: 90px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 1;
    transition: opacity .3s ease-in-out;
    cursor: pointer;
    z-index: 12
}

#video-container.play .play-button {
    opacity: 0
}

.objectfit-header.microsite-header.video-header,
.objectfit-header.video-header {
    height: auto
}

.video-header .microsite-text-container {
    pointer-events: none
}

.zweispaltig h1.headline-einspaltig,
.zweispaltig h1:has(.headline-einspaltig),
.zweispaltig h2.headline-einspaltig,
.zweispaltig h2:has(.headline-einspaltig),
.zweispaltig h3.headline-einspaltig,
.zweispaltig h3:has(.headline-einspaltig),
.zweispaltig h4.headline-einspaltig,
.zweispaltig h4:has(.headline-einspaltig),
.zweispaltig h5.headline-einspaltig,
.zweispaltig h5:has(.headline-einspaltig),
.zweispaltig h6.headline-einspaltig,
.zweispaltig h6:has(.headline-einspaltig) {
    -moz-column-span: all;
    column-span: all
}

.zweispaltig h1.headline-spaltigkeit-nutzen,
.zweispaltig h1:has(.headline-spaltigkeit-nutzen),
.zweispaltig h2.headline-spaltigkeit-nutzen,
.zweispaltig h2:has(.headline-spaltigkeit-nutzen),
.zweispaltig h3.headline-spaltigkeit-nutzen,
.zweispaltig h3:has(.headline-spaltigkeit-nutzen),
.zweispaltig h4.headline-spaltigkeit-nutzen,
.zweispaltig h4:has(.headline-spaltigkeit-nutzen),
.zweispaltig h5.headline-spaltigkeit-nutzen,
.zweispaltig h5:has(.headline-spaltigkeit-nutzen),
.zweispaltig h6.headline-spaltigkeit-nutzen,
.zweispaltig h6:has(.headline-spaltigkeit-nutzen) {
    -moz-column-span: none;
    column-span: none
}

.sbox-link {
    display: block;
    height: 100%
}

.kachel-event .sbox-wrapper {
    pointer-events: none
}

.kachel-event .sbox-wrapper * {
    pointer-events: none
}

.kachel-event .sbox-link {
    pointer-events: auto;
    display: block;
    height: 100%
}

.input-container:has(input:focus, textarea:focus, .textarea:focus, select:focus) {
    outline: 2px solid #b80a07;
    outline-offset: -3px
}

.calendar-dateselect--wrapper a:focus-visible {
    outline-offset: -2px
}

.buehne {
    height: 100%;
    width: auto;
    max-height: 244px
}

div.kachel-headline {
    text-align: center;
    display: block
}

div.kachel-headline .show-all {
    border: 1px solid #bdcedd;
    border-radius: 5px;
    padding: .5rem 1.25rem .5rem 1.25rem;
    font-weight: 400;
    margin-left: 1rem;
    display: inline-block;
    margin: 0
}

.color-2--l2 div.kachel-headline .show-all {
    background: #fff
}

div.kachel-headline .show-all span::after {
    content: "";
    background: url(../img/icons/icon-external-open.svg) no-repeat
}

section.color-1--l2 div.kachel-headline,
section.color-2--l2 div.kachel-headline {
    justify-content: center;
    text-align: center;
    display: block
}

.label-container {
    position: relative;
    left: -7px;
    top: -7px;
    display: flex;
    flex-wrap: wrap
}

.sbox .label-container,
.eventbox-wrapper .label-container {
    position: absolute
}

.kachel-descr .label-container {
    position: absolute
}

@media screen and (min-width: 54rem) {
    .kachel-descr .label-container {
        position: absolute
    }
}

.kachel-big .label-container {
    position: relative
}

.label-container.label-right {
    left: auto;
    right: 0;
    background: #cadaec
}

.labeldevider:not(:last-child) {
    width: 1px;
    background: #fff;
    transform-origin: 100% 100%;
    transform: skewX(-30deg);
    z-index: 13;
    display: none
}

.label {
    margin-bottom: .2rem;
    position: relative;
    display: flex;
    align-items: center;
    padding: .35rem .5rem .35rem .35rem;
    margin-right: .05rem;
    border-radius: 4px;
    font-size: 13px;
    height: 26px;
    line-height: 26px;
    color: #fff
}

.label:before {
    height: 100%;
    width: 1.5rem
}

.label.label-right,
.label-right .label {
    font-size: 15px;
    color: #34597a;
    font-weight: 600;
    padding: .25rem 1rem .25rem .5rem
}

.label.label-right:before,
.label-right .label:before {
    content: "";
    position: absolute;
    top: 0;
    left: -1rem;
    width: 1rem;
    height: 100%;
    z-index: 10;
    transform-origin: 100% 100%;
    transform: skewX(-30deg);
    border-left: 1rem solid #cadaec
}

.label.section-hannoverimpuls {
    white-space: nowrap
}

.label.section-hannoverimpuls span {
    z-index: 10;
    font-weight: bold
}

.label.section-hannoverimpuls:before {
    width: 1.2rem;
    z-index: 10
}

.label.section-region,
.label.section-stadt {
    white-space: nowrap
}

.label.section-region span,
.label.section-stadt span {
    z-index: 10;
    font-weight: bold
}

.label.section-region:before,
.label.section-stadt:before {
    width: 1.4rem;
    z-index: 10
}

.label.label_extern {
    color: #34597a;
    padding-left: 0;
    background: #fff
}

.label.art-veranstaltung,
.label.art-aktuelles,
.label.art-story,
.label.thema {
    background: #6797c1;
    padding: .25rem 1rem .25rem .5rem;
    margin-right: 1px
}

.sbox .label.art-veranstaltung span,
.sbox .label.art-aktuelles span,
.sbox .label.art-story span,
.sbox .label.thema span {
    display: none
}

@media screen and (min-width: 81rem) {

    .sbox .label.art-veranstaltung span,
    .sbox .label.art-aktuelles span,
    .sbox .label.art-story span,
    .sbox .label.thema span {
        display: inline-block
    }
}

.kacheln .label.art-veranstaltung,
.kacheln .label.art-aktuelles,
.kacheln .label.art-story,
.kacheln .label.thema {
    margin-right: .25rem;
    padding-right: .5rem
}

.label.thema {
    padding-right: .5rem;
    white-space: nowrap;
    margin-bottom: 1px
}

.label.art-veranstaltung:before {
    content: "";
    background: url(../img/icons/calendar.svg) no-repeat left center/contain
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .label.art-veranstaltung:before {
        background-image: url(../img/icons/calendar.png)
    }
}

.label.art-aktuelles:before {
    content: "";
    background: url(../img/icons/news.svg) no-repeat left center/contain
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .label.art-aktuelles:before {
        background-image: url(../img/icons/news.png)
    }
}

@media screen and (min-width: 54rem) {
    .kacheln .label.art-story {
        padding-right: .5rem
    }
}

@media screen and (min-width: 81rem) {
    .kacheln .label.art-story {
        padding-right: 1rem
    }
}

.label.art-story:before {
    content: "";
    background: url(../img/icons/story.svg) no-repeat left center/contain
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .label.art-story:before {
        background-image: url(../img/icons/story.png)
    }
}

.label.section-hannoverimpuls {
    background: #ee4c26
}

.label.section-hannoverimpuls.multiple.full {
    padding-right: .7rem
}

.label.section-hannoverimpuls:before {
    content: "";
    background: url(../img/icons/hi-small.svg) no-repeat left center/contain
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .label.section-hannoverimpuls:before {
        background-image: url(../img/icons/hi-small.png)
    }
}

.label.section-hannoverimpuls:before {
    height: 95%
}

.label.section-hannoverimpuls:after {
    border-right: 1rem solid #ee4c26
}

.label.section-region {
    background: #005498
}

.label.section-region:before {
    content: "";
    background: url(../img/icons/region-small.svg) no-repeat left center/contain
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .label.section-region:before {
        background-image: url(../img/icons/region-small.png)
    }
}

.label.section-region:after {
    border-right: 1rem solid #005498
}

.label.section-stadt {
    background: #e3000f
}

.label.section-stadt:before {
    content: "";
    background: url(../img/icons/stadt-small.svg) no-repeat left center/contain
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .label.section-stadt:before {
        background-image: url(../img/icons/stadt-small.png)
    }
}

.label.section-stadt:after {
    border-right: 1rem solid #e3000f
}

.kachel-descr .label-container-landingpage .label.thema {
    margin-bottom: .45rem;
    font-size: 11px;
    line-height: 100%;
    height: auto;
    padding: .2rem .5rem .2rem .5rem
}

.kachel-descr.download-descr {
    padding-left: 1rem
}

@media screen and (min-width: 81rem) {

    .download-preview,
    .kachel-descr.download-descr {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

.wifoe-textlogo {
    color: #fff;
    font-weight: 600
}

.wifoe-textlogo:has(.logo-microsite-buehne) {
    position: relative;
    padding-bottom: 1rem;
    max-width: 700px;
    visibility: hidden;
    display: none
}

.wifoe-textlogo:has(.logo-microsite-buehne-top) {
    width: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.wifoe-textlogo .logo-microsite-alternativ {
    width: auto;
    position: absolute;
    top: clamp(.5rem, 53% - 4.5rem + .9vh, 2rem);
    height: clamp(2.7rem, 50% - 1rem, 5rem);
    padding-left: 2rem;
    right: 0
}

.wifoe-textlogo .logo-microsite-buehne-top {
    height: auto
}

.wifoe-textlogo .logo-microsite-buehne {
    width: auto;
    padding-left: 2rem;
    right: 0;
    max-width: 70%;
    height: auto;
    visibility: hidden;
    max-height: 180px
}

@media screen and (max-width: 32rem) {
    #header .wifoe-textlogo:not(:has(.logo-microsite-alternativ)) {
        font-size: 4.534vw;
        width: auto;
        position: absolute;
        top: clamp(.5rem, 53% - 4.5rem + .9vh, 2rem)
    }
}

@media screen and (min-width: 54rem) {
    .wifoe-textlogo:has(.logo-microsite-buehne) {
        visibility: visible;
        display: block
    }

    .wifoe-textlogo:has(.logo-microsite-buehne-top) {
        visibility: hidden;
        display: none
    }

    #header .wifoe-textlogo {
        font-size: calc(1.25rem + 6*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 54rem)and (min-width: 120em) {
    #header .wifoe-textlogo {
        font-size: 26px
    }
}

@media screen and (min-width: 54rem) {
    .nav-is-sticky #header .wifoe-textlogo {
        font-size: calc(0.875rem + 0*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 54rem)and (min-width: 120em) {
    .nav-is-sticky #header .wifoe-textlogo {
        font-size: 14px
    }
}

@media screen and (min-width: 54rem) {
    .wifoe-textlogo .logo-microsite-buehne-top {
        visibility: hidden
    }

    .wifoe-textlogo .logo-microsite-buehne {
        justify-content: flex-start;
        padding-left: 0;
        right: unset;
        z-index: 10;
        max-width: 70%;
        height: auto;
        visibility: visible;
        max-height: clamp(13.75rem, 8.949vw + 8.012rem, 19.75rem)
    }
}

@media screen and (min-width: 64rem) {
    #header .wifoe-textlogo {
        font-size: calc(1.25rem + 6*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 64rem)and (min-width: 120em) {
    #header .wifoe-textlogo {
        font-size: 26px
    }
}

@media screen and (min-width: 64rem) {
    .nav-is-sticky #header .wifoe-textlogo {
        font-size: calc(0.875rem + 0*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 64rem)and (min-width: 120em) {
    .nav-is-sticky #header .wifoe-textlogo {
        font-size: 14px
    }
}

@media screen and (min-width: 64rem) {
    .wifoe-textlogo .logo-microsite-alternativ {
        width: auto;
        position: absolute;
        top: clamp(-1rem, 53% - 4.5rem + .9vh, 2rem) !important;
        height: clamp(2.5rem, 50% - 1rem, 5rem);
        padding-left: 0;
        right: unset
    }

    .wifoe-textlogo .logo-microsite-buehne {
        width: auto;
        padding-left: 0;
        right: unset;
        z-index: 10;
        max-width: 70%;
        height: auto
    }
}

@media screen and (min-width: 81rem) {
    .wifoe-textlogo .logo-microsite-buehne {
        width: auto;
        padding-left: 0;
        right: unset;
        z-index: 10;
        max-width: 70%;
        height: auto
    }
}

.search-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    background: #34597a;
    border-radius: 6px
}

.search-v4.active .search-wrapper {
    background: unset;
    border-radius: 20px
}

@media screen and (min-width: 64rem) {
    .search-wrapper {
        width: calc(100% - 1rem);
        margin-left: 1rem;
        position: relative;
        max-width: 100%;
        height: 100%;
        background: unset;
        border-radius: unset
    }
}

.search-v4 input {
    border-radius: 20px;
    border: 1px solid #fff;
    border-color: #34597a;
    transition: all .8s ease-in-out .1s;
    width: 100%;
    outline: none;
    z-index: 10;
    position: relative;
    background: rgba(0, 0, 0, 0);
    margin-bottom: 0;
    padding-right: 25%;
    padding: .25rem;
    cursor: pointer
}

@media screen and (min-width: 64rem) {
    .search-v4 input {
        width: 100%;
        border: 1px solid #fff;
        border-color: rgba(0, 0, 0, 0)
    }
}

.search-v4 input:focus {
    transition-delay: 0;
    width: 100%;
    border: 1px solid #ccc;
    z-index: 5;
    background: #fff;
    cursor: text
}

.filled.search-v4 input {
    width: 100%;
    padding-right: 25%;
    border: 1px solid #ccc;
    background: #fff
}

.filled.search-v4 button {
    transition: none;
    transform: none;
    z-index: 10
}

.search-v4 button,
.search-v4.empty button {
    background: url(../img/icons/search-white.svg) no-repeat center center/15px 15px;
    height: 15px;
    width: 15px;
    padding: 4px;
    position: absolute;
    z-index: 5;
    right: .5rem
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {

    .search-v4 button,
    .search-v4.empty button {
        top: 15%
    }
}

@media screen and (min-width: 64rem) {

    .search-v4 button,
    .search-v4.empty button {
        right: .6rem;
        background: url(../img/icons/search-white.svg) no-repeat center center/21px 21px;
        height: 21px;
        width: 21px;
        padding: 4px
    }
}

.search-v4 button,
.search-v4.empty button {
    transition: all .8s ease-in-out;
    transition-delay: .1s
}

.search-v4 input:focus~button {
    background: url(../img/icons/search.svg) no-repeat center center/15px 15px;
    transform: rotateZ(360deg);
    transition-delay: 0
}

@media screen and (min-width: 64rem) {
    .search-v4 input:focus~button {
        background: url(../img/icons/search.svg) no-repeat center center/21px 21px
    }
}

a.suchergebnis {
    text-decoration: none;
    font-weight: normal;
    width: 100%
}

a.suchergebnis p {
    margin-bottom: .5rem
}

a.suchergebnis:hover {
    color: #34597a
}

a.suchergebnis .more {
    text-decoration: underline;
    text-align: right
}

a.suchergebnis .more span:hover {
    color: #5b85aa
}

#header .lvl-1.entry#home svg {
    height: 100%;
    width: 100%;
    max-width: 16px;
    max-height: 13.6px
}

#header .lvl-1.entry#home svg .cls-1 {
    fill: none;
    stroke: #fff;
    stroke-linejoin: round;
    stroke-width: .125em
}

.navigation-open #header .lvl-1.entry#home svg .cls-1 {
    stroke: #34597a
}

#header #head-search {
    position: fixed;
    top: 0;
    height: 3.738rem;
    padding: 15px;
    text-align: center;
    z-index: 50;
    width: 16.45%;
    display: none
}

#header #head-search.active {
    width: 50%;
    transition: width .8s ease-in-out .1s
}

.navigation-open #header #head-search {
    display: block
}

#header #head-search form {
    height: 100%;
    width: 100%
}

@media screen and (min-width: 64rem) {
    #header #head-search {
        height: auto;
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 2rem;
        padding: 0;
        width: 100%
    }

    #header #head-search.active {
        width: 100%;
        transition: width .8s ease-in-out .1s
    }
}

#header #metanav {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    font-size: .9375rem;
    color: #34597a;
    z-index: 20
}

#header #metanav .metanav-inner {
    display: block
}

#header #metanav #metanav2-top {
    display: none
}

.navigation-open #header #metanav {
    display: block;
    position: relative;
    top: auto;
    right: auto
}

.navigation-open #header #metanav .lvl-1.entry {
    display: flex;
    margin-left: 0;
    padding: .8rem 1.875rem;
    font-size: 1.25rem;
    line-height: 1em
}

#header #metanav .lvl-1.entry {
    display: inline-flex;
    margin-left: .5rem;
    color: #fff;
    text-decoration: none;
    font-weight: 400;
    border-bottom: 1px solid #fff
}

@media screen and (min-width: 64rem) {
    #header #metanav .lvl-1.entry {
        border: none
    }
}

#header #metanav .lvl-1.entry:hover,
#header #metanav .lvl-1.entry.active {
    color: #fff;
    text-decoration: underline
}

@media screen and (min-width: 64rem) {
    .nav-is-sticky #header #metanav .social-links {
        display: none
    }
}

#header #metanav .language-selector {
    position: relative
}

#header #metanav .language-selector ul {
    display: none;
    max-height: 0;
    overflow: hidden
}

#header #metanav .language-selector ul li {
    text-align: left
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector ul li {
        padding: 4px 9px !important;
        margin: 0 !important
    }
}

#header #metanav .language-selector ul a {
    padding-left: 27px !important;
    font-weight: 400;
    text-decoration: none
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector ul a {
        margin-left: 12px;
        padding-left: 0px !important
    }
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector ul .entry {
        width: 80px
    }
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector ul {
        left: 32px;
        position: absolute;
        z-index: 30;
        background-color: #fff
    }
}

@media screen and (min-width: 1150px) {
    #header #metanav .language-selector ul {
        left: 56px
    }
}

#header #metanav .language-selector ul {
    transition: max-height .3s ease-in-out
}

@media screen and (min-width: 54rem) {
    #header #metanav .language-selector li.lvl-1.entry {
        display: block
    }
}

#header #metanav .language-selector li.lvl-1.entry .language-de,
#header #metanav .language-selector li.lvl-1.entry .language-en {
    text-transform: lowercase;
    padding: 0;
    color: #34597a
}

#header #metanav .language-selector li.lvl-1.entry .language-de:hover,
#header #metanav .language-selector li.lvl-1.entry .language-en:hover {
    color: #34597a;
    text-decoration: underline
}

#header #metanav .language-selector li.lvl-1.entry .language-en {
    color: #fff
}

#header #metanav .language-selector li.lvl-1.entry .language-en:hover {
    color: #fff;
    text-decoration: underline
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector li.lvl-1.entry .language-en:hover {
        color: #34597a
    }
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector li.lvl-1.entry .language-en {
        color: #34597a
    }
}

#header #metanav .language-selector #language-selector {
    cursor: pointer;
    display: flex;
    position: relative;
    height: 100%
}

.navigation-open #header #metanav .language-selector #language-selector {
    width: 100%
}

#header #metanav .language-selector #language-selector .language-de,
#header #metanav .language-selector #language-selector .language-en {
    display: inline;
    white-space: nowrap;
    color: #fff;
    padding: 0 .5em
}

#header #metanav .language-selector #language-selector .language-de {
    display: flex;
    position: relative;
    justify-content: end;
    text-align: end;
    transition: all .3s ease-in-out
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector .language-de .description {
        padding-left: 5px
    }
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector .language-de {
        justify-content: center;
        width: 80px;
        padding: 4px 0px
    }

    #header #metanav .language-selector #language-selector .language-de:not(.matchless)::before {
        content: "";
        display: inline;
        border: 1px solid #fff;
        border-width: 0 1px 1px 0;
        padding: 3px;
        transform: translate(0%, -20%) rotate(45deg);
        -webkit-transform: translate(0%, -20%) rotate(45deg);
        transition: all .3s ease-out;
        height: 3px;
        margin-top: 4px;
        margin-right: 0px;
        margin-bottom: 0px;
        margin-left: 0px
    }

    .navigation-open #header #metanav .language-selector #language-selector .language-de:not(.matchless)::before {
        position: absolute;
        right: 1.875rem;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg)
    }
}

#header #metanav .language-selector #language-selector #language-selector-icon {
    background: url(../img/icons/metanav.svg) no-repeat left top/cover;
    width: 19px;
    height: 19px
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector #language-selector-icon {
        margin-right: 5px
    }
}

#header #metanav .language-selector #language-selector:not(.matchless)::after {
    content: "";
    display: inline;
    border: 1px solid #fff;
    border-width: 0 1px 1px 0;
    padding: 3px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transition: all .3s ease-out;
    margin: 0
}

.navigation-open #header #metanav .language-selector #language-selector:not(.matchless)::after {
    position: absolute;
    right: 1.875rem;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg)
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector:not(.matchless)::after {
        display: none
    }
}

#header #metanav .language-selector #language-selector.opened+ul {
    max-height: 120px;
    display: block
}

#header #metanav .language-selector #language-selector.opened+ul li {
    text-align: left
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector.opened+ul li {
        padding: 4px 9px
    }
}

#header #metanav .language-selector #language-selector.opened+ul a {
    padding-left: 27px
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector.opened+ul {
        border-top: 1px solid #cadaec
    }
}

#header #metanav .language-selector #language-selector.opened .active::before {
    transform: translate(0%, 40%) rotate(-135deg) !important;
    -webkit-transform: translate(0%, 40%) rotate(-135deg) !important;
    transition: all .3s ease-out
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector.opened .active {
        background-color: #fff;
        color: #34597a
    }
}

#header #metanav .language-selector #language-selector.opened .active::before {
    border: 1px solid #34597a !important;
    border-width: 0 1px 1px 0 !important
}

#header #metanav .language-selector #language-selector.opened::after {
    transform: rotate(-135deg) !important;
    -webkit-transform: rotate(-135deg) !important;
    transition: all .3s ease-out
}

@media screen and (min-width: 64rem) {
    #header #metanav .language-selector #language-selector.opened.entry:hover {
        color: #34597a !important
    }
}

#header #metanav #link-hannoverde {
    color: #fff;
    text-decoration: none;
    font-weight: 300;
    border: none
}

#header #metanav #link-hannoverde:hover {
    text-decoration: underline
}

#header #metanav #link-hannoverde #hannover-icon {
    background: url(../img/icons/metanav.svg) no-repeat 100% top/cover;
    width: 19px;
    height: 19px
}

#header #metanav #link-hannoverde .description {
    padding: 0 0 0 .5em
}

#header #metanav .downloads::before {
    content: "";
    display: inline-block;
    height: 1rem;
    width: 1.19rem;
    margin-right: .63rem;
    margin-bottom: 3px;
    background: url(../img/icons/icon-download-white.svg) center center/contain no-repeat;
    vertical-align: middle
}

@media screen and (min-width: 64rem) {
    #header #metanav {
        display: flex;
        position: fixed;
        top: .5rem;
        right: 1.875rem;
        border: none;
        width: 100%;
        padding-left: 10rem;
        justify-content: space-between
    }

    .nav-is-sticky #header #metanav {
        justify-content: flex-end
    }

    .nav-is-sticky #header #metanav #metanav2-top {
        display: flex;
        flex-wrap: nowrap
    }

    #header #metanav .language-selector {
        border: none
    }

    #header #metanav .metanav-inner {
        display: flex
    }
}

@media screen and (min-width: 1150px) {
    #header #metanav {
        padding-left: 9rem
    }

    #header #metanav .lvl-1.entry {
        margin-left: 2rem
    }
}

@media screen and (min-width: 81rem) {
    #header #metanav {
        padding-left: calc(4vw + 9.4rem) !important
    }
}

@media screen and (min-width: 120em) {
    #header #metanav {
        padding-left: calc(4vw + 9rem) !important
    }
}

#header #metanav2 {
    display: none;
    position: absolute;
    top: 7rem;
    right: 0;
    font-size: .761rem;
    color: #34597a;
    z-index: 19;
    width: 100%
}

.navigation-open #header #metanav2 {
    display: flex;
    position: absolute;
    top: 5rem;
    right: auto;
    z-index: 20
}

.navigation-open #header #metanav2 .lvl-1.entry {
    display: flex;
    margin-left: 0;
    padding: .8rem 1.875rem;
    font-size: 1.25rem;
    line-height: 1em
}

#header #metanav2 .lvl-1.entry {
    display: inline-flex;
    margin-left: .5rem;
    color: #fff;
    text-decoration: none;
    font-weight: 400;
    border-bottom: 1px solid #fff
}

@media screen and (min-width: 64rem) {
    #header #metanav2 .lvl-1.entry {
        border: none
    }
}

#header #metanav2 .lvl-1.entry:hover,
#header #metanav2 .lvl-1.entry.active {
    color: #fff;
    text-decoration: underline
}

#header #metanav2 .sandboxes {
    visibility: hidden;
    height: 0
}

#header #metanav2 .sandboxes .sandbox {
    background: #fff;
    border-right: 1px solid #5b85aa;
    position: relative
}

#header #metanav2 .sandboxes .sandbox:last-child {
    border-right: none
}

#header #metanav2 .sandboxes .sandbox a {
    display: block;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

#header #metanav2 .sandboxes .sandbox img {
    max-width: 70%;
    max-height: 70%
}

#header #metanav2 .sandboxes .sandbox::after {
    content: "";
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 9px;
    height: 9px;
    border-bottom: 3px solid #5b85aa;
    border-right: 3px solid #5b85aa
}

#header #metanav2 #button-wirtschaftfoerderung {
    font-weight: bold
}

#header #metanav2 #button-wirtschaftfoerderung .sidebutton-arrow {
    display: block
}

#header #metanav2 #button-wirtschaftfoerderung .sidebutton-icon {
    margin-right: 1rem
}

#header #metanav2 #button-wirtschaftfoerderung.opened {
    z-index: 30;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, .2)
}

#header #metanav2 #button-wirtschaftfoerderung.opened .sidebutton-font {
    display: block
}

#header #metanav2 #button-wirtschaftfoerderung.opened {
    background-color: #fff;
    color: #34597a;
    width: 20rem;
    position: absolute;
    right: 5.4vw;
    top: -1rem;
    padding: 1rem 0
}

#header #metanav2 #button-wirtschaftfoerderung.opened .sandboxes {
    height: auto;
    display: flex;
    position: relative;
    background-color: #fff;
    z-index: 30;
    padding-top: 1rem;
    transition: all .8s ease-in-out .1s;
    visibility: visible
}

#header #metanav2:has(#button-wirtschaftfoerderung.opened) {
    z-index: 30
}

@media screen and (min-width: 64rem) {
    #header #metanav2 {
        width: 100%;
        display: grid;
        justify-content: end;
        position: fixed;
        top: 2.5rem;
        right: 1.875rem;
        border: none;
        grid-template-columns: 6% 6% 6% 8% 5.5%;
        grid-template-rows: 11px 1fr 13px
    }

    #header #metanav2 .language-selector {
        border: none
    }

    #header #metanav2 #button-wirtschaftfoerderung.opened,
    #header #metanav2 #button-wirtschaftfoerderung-top.opened {
        background-color: #fff;
        color: #34597a
    }

    #header #metanav2 #button-wirtschaftfoerderung.opened .sandboxes,
    #header #metanav2 #button-wirtschaftfoerderung-top.opened .sandboxes {
        display: flex;
        background-color: #fff;
        z-index: 30
    }

    .nav-is-sticky #header #metanav2 {
        display: none
    }
}

@media screen and (min-width: 1150px) {
    #header #metanav2 {
        grid-template-columns: 6% 6% 6% 8% 5.8%
    }

    #header #metanav2 .lvl-1.entry {
        margin-left: 2rem
    }
}

@media screen and (min-width: 81rem) {
    #header #metanav2 #button-wirtschaftfoerderung .sidebutton-icon {
        margin-right: 0
    }

    #header #metanav2 #button-wirtschaftfoerderung.opened {
        width: auto;
        position: relative;
        right: auto
    }

    #header #metanav2 {
        top: 4.3rem;
        grid-template-rows: 17px 1fr 15px;
        grid-template-columns: 9% 15% 12% 21% 4% !important
    }
}

@media screen and (min-width: 1400px) {
    #header #metanav2 {
        grid-template-columns: 9.6% 15% 12% 21% 5% !important
    }
}

@media screen and (min-width: 1596px) {
    #header #metanav2 {
        grid-template-columns: 10% 15% 12.5% 20% 5.5% !important
    }
}

@media screen and (min-width: 120em) {
    #header #metanav2 {
        grid-template-columns: 10.19% 14% 12.1% 17% 5.5% !important
    }
}

#header #metanav2 .hvr-grow:focus {
    transition-duration: unset;
    transition-property: unset;
    transform: unset;
    position: relative;
    z-index: 1
}

@media screen and (min-width: 64rem) {
    #header #main-navigation {
        align-items: stretch
    }

    #header #main-navigation .lvl-1.entry a.nav-link {
        height: 100%;
        border: none
    }

    #header #main-navigation .lvl-1.entry a.nav-link span {
        white-space: pre-line
    }
}

.nav-is-sticky #language-selector.opened+ul {
    top: 28px
}

#sidebuttons {
    display: flex
}

.navigation-open #sidebuttons {
    display: none
}

#sidebuttons a {
    text-decoration: none
}

.sidebutton {
    display: inline-block;
    padding: 15px;
    color: #fff
}

.sidebutton:hover {
    color: #fff
}

.sidebutton {
    font-size: 1.063rem;
    line-height: 1.118em;
    width: 50%;
    background: #009be0;
    background-image: linear-gradient(to right, rgb(0, 155, 224) 25%, rgb(26, 132, 188) 100%)
}

.sidebutton::after {
    content: "";
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 8px;
    height: 8px;
    border-bottom: 3px solid #66c2ec;
    border-right: 3px solid #66c2ec
}

.sidebutton#button-terminfinder {
    border-bottom: 1px solid #66c2ec
}

.sidebutton1 {
    display: inline-block;
    color: #fff;
    text-decoration: unset;
    position: relative
}

.sidebutton1:hover,
.sidebutton1:focus {
    color: #fff
}

.sidebutton1 {
    font-size: .76rem;
    line-height: 1.118em;
    text-align: center;
    width: inherit;
    grid-row: 2
}

.sidebutton1#button-wirtschaftfoerderung {
    cursor: pointer
}

.sidebutton1#button-wirtschaftfoerderung.opened .sidebutton-content::before {
    content: "";
    height: 0%;
    width: 0
}

.sidebutton1#button-wirtschaftfoerderung.opened .sidebutton-content::after {
    content: "";
    height: 0;
    width: 0
}

.sidebutton1#button-terminfinder-top {
    cursor: pointer
}

.sidebutton1.eyeAble_customToolOpenerClass {
    display: none !important;
    text-align: end;
    grid-column: 5;
    grid-row: 1/4
}

.sidebutton1.eyeAble_customToolOpenerClass img {
    max-height: 37px
}

.sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content {
    position: relative
}

.sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::before {
    content: "";
    position: absolute;
    left: 0;
    height: 100%;
    top: 5%;
    width: 1px;
    background: #5b85aa;
    background: linear-gradient(0deg, rgb(91, 133, 170) 4%, rgb(80, 117, 150) 41%, rgb(80, 117, 150) 68%, rgb(91, 133, 170) 100%)
}

.sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::after {
    content: "";
    position: absolute;
    left: 1px;
    height: 100%;
    top: 5%;
    width: 1px;
    background: #699bc6
}

@media screen and (min-width: 64rem) {
    .sidebutton1.eyeAble_customToolOpenerClass {
        display: block !important
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content {
        position: relative
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::before {
        top: 5%;
        height: 115%
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::after {
        height: 115%;
        top: 5%
    }
}

@media screen and (min-width: 81rem) {
    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content {
        position: relative
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::before {
        top: 10%;
        height: 115%
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::after {
        height: 115%;
        top: 10%
    }

    .sidebutton1.eyeAble_customToolOpenerClass img {
        max-height: 39px
    }
}

@media screen and (min-width: 1400px) {
    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content {
        position: relative
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::before {
        top: 10%;
        height: 100%
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::after {
        height: 100%;
        top: 10%
    }

    .sidebutton1.eyeAble_customToolOpenerClass img {
        max-height: 50px
    }
}

@media screen and (min-width: 1596px) {
    .sidebutton1.eyeAble_customToolOpenerClass img {
        max-height: 56px
    }
}

@media screen and (min-width: 120em) {
    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content {
        position: relative
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::before {
        top: 10%;
        height: 80%
    }

    .sidebutton1.eyeAble_customToolOpenerClass .sidebutton-content::after {
        height: 80%;
        top: 10%
    }
}

.sidebutton1 .sidebutton-content {
    transition: all .5s ease-in-out .1s
}

.sidebutton1 .sidebutton-content::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 1px;
    background: #5b85aa;
    background: linear-gradient(0deg, rgb(91, 133, 170) 4%, rgb(80, 117, 150) 41%, rgb(80, 117, 150) 68%, rgb(91, 133, 170) 100%)
}

.sidebutton1 .sidebutton-content::after {
    content: "";
    position: absolute;
    left: 1px;
    top: 0%;
    height: 100%;
    width: 1px;
    background: #699bc6
}

.sidebutton1 .sidebutton-content .sidebutton-font {
    padding: .7em 2.1em 0
}

@media screen and (max-width: 320px) {
    .sidebutton1 .sidebutton-content .sidebutton-font {
        padding: .7em 1.45em 0
    }
}

.sidebutton1 .sidebutton-content .sidebutton-font {
    max-width: 100%
}

.sidebutton1 .sidebutton-content .sidebutton-icon {
    height: 2.05em;
    display: inline-block;
    width: 100%;
    max-width: 2.57em
}

@media screen and (min-width: 64rem) {
    .sidebutton1 {
        font-size: 1.063rem
    }

    .sidebutton1 .sidebutton-content {
        position: relative
    }

    .sidebutton1 .sidebutton-content::before {
        top: -47%;
        height: 200%
    }

    .sidebutton1 .sidebutton-content::after {
        top: -47%;
        height: 200%
    }

    .nav-is-sticky .sidebutton1 .sidebutton-content::before {
        top: -18%;
        height: 138%;
        right: 0;
        left: unset
    }

    .nav-is-sticky .sidebutton1 .sidebutton-content::after {
        top: -18%;
        height: 138%;
        right: 1px;
        left: unset
    }

    .sidebutton1 .sidebutton-content .sidebutton-font {
        padding: 0 1em
    }

    .sidebutton1 .sidebutton-content .sidebutton-icon {
        height: 1.465em;
        display: inline-block;
        width: 100%;
        max-width: 1.61em
    }
}

#metanav2 .sidebutton1:focus-visible {
    box-shadow: unset;
    outline: unset
}

#metanav2 .sidebutton1:focus-visible .sidebutton-content {
    padding: 0 .3rem
}

#metanav2 .sidebutton1:focus-visible .sidebutton-content>div {
    outline: 2px solid #b80a07;
    transition-duration: unset;
    transition-property: unset;
    transform: unset;
    position: relative;
    z-index: 1
}

#metanav2 .sidebutton1:focus-visible .sidebutton-content .sidebutton-icon {
    margin: .3rem 0
}

.nav-is-sticky #metanav2-top .sidebutton1 {
    display: inline-block;
    color: #fff;
    text-decoration: unset;
    font-size: 1.1rem;
    line-height: .118em;
    text-align: center;
    grid-row: 2;
    width: 4.4rem
}

.nav-is-sticky #metanav2-top .sidebutton1:focus {
    padding: .3rem .1rem;
    z-index: 1
}

.nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass img {
    max-height: 31px;
    cursor: pointer;
    width: -webkit-fit-content
}

.nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass {
    width: 3.7rem;
    text-align: center
}

.nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass.sidebutton-content {
    position: relative
}

.nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass.sidebutton-content::before {
    content: "";
    position: absolute;
    left: unset;
    right: 2px;
    top: -8%;
    height: 118%;
    width: 1px;
    background: #5b85aa;
    background: linear-gradient(0deg, rgb(91, 133, 170) 4%, rgb(80, 117, 150) 41%, rgb(80, 117, 150) 68%, rgb(91, 133, 170) 100%)
}

.nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass.sidebutton-content::after {
    content: "";
    position: absolute;
    left: unset;
    right: 3px;
    top: -8%;
    height: 118%;
    width: 1px;
    background: #699bc6
}

.nav-is-sticky #metanav2-top .sidebutton1 .sidebutton-font {
    display: none
}

.nav-is-sticky #metanav2-top .sidebutton1 .sandboxes {
    visibility: hidden;
    height: 0
}

.nav-is-sticky #metanav2-top .sidebutton1 .sandboxes .sandbox {
    background: #fff;
    border-right: 1px solid #5b85aa;
    position: relative
}

.nav-is-sticky #metanav2-top .sidebutton1 .sandboxes .sandbox:last-child {
    border-right: none
}

.nav-is-sticky #metanav2-top .sidebutton1 .sandboxes .sandbox a {
    display: block;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.nav-is-sticky #metanav2-top .sidebutton1 .sandboxes .sandbox a:focus {
    z-index: 1;
    position: relative
}

.nav-is-sticky #metanav2-top .sidebutton1 .sandboxes .sandbox img {
    max-width: 70%;
    max-height: 70%
}

.nav-is-sticky #metanav2-top .sidebutton1 .sandboxes .sandbox::after {
    content: "";
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 9px;
    height: 9px;
    border-bottom: 3px solid #5b85aa;
    border-right: 3px solid #5b85aa
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top {
    font-weight: bold;
    cursor: pointer
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top .sidebutton-arrow {
    display: block
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top {
    width: 5.4rem
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top .sidebutton-icon {
    margin-right: 1rem;
    margin-left: .2rem
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top.opened .sidebutton-content::before {
    content: "";
    height: 0%;
    width: 0
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top.opened .sidebutton-content::after {
    content: "";
    height: 0;
    width: 0
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top.opened {
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, .2);
    width: 20rem;
    z-index: 30;
    position: absolute;
    right: 4rem;
    padding-top: 1rem;
    top: 0
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top.opened .sidebutton-font {
    display: block
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top.opened {
    background-color: #fff;
    color: #34597a
}

.nav-is-sticky #metanav2-top .sidebutton1#button-wirtschaftfoerderung-top.opened .sandboxes {
    height: auto;
    display: flex;
    position: relative;
    background-color: #fff;
    z-index: 30;
    width: 99.7%;
    right: -1px;
    padding: 1rem 0;
    visibility: visible;
    transition: all .8s ease-in-out .1s
}

.nav-is-sticky #metanav2-top .sidebutton1:has(#button-wirtschaftfoerderung-top.opened) {
    z-index: 30
}

@media screen and (min-width: 81rem) {
    .nav-is-sticky #metanav2-top .sidebutton1 {
        width: 5.79rem
    }

    .nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass img {
        max-height: 31px
    }

    .nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass {
        width: 4.5rem
    }

    .nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass::before {
        top: -8%;
        height: 130%
    }

    .nav-is-sticky #metanav2-top .sidebutton1.eyeAble_customToolOpenerClass::after {
        top: -8%;
        height: 130%
    }
}

.sidebutton-content .sidebutton-icon {
    height: 1.465em;
    display: inline-block;
    width: 100%;
    max-width: 1.61em
}

#button-terminfinder .sidebutton-content .sidebutton-icon,
#button-terminfinder-top .sidebutton-content .sidebutton-icon {
    background: url("../img/icons/calendar.svg") no-repeat left center/contain
}

#button-newsletter .sidebutton-content .sidebutton-icon {
    background: url("../img/icons/mail.svg") no-repeat left center/contain
}

#button-news .sidebutton-content .sidebutton-icon {
    background: url("../img/icons/news.svg") no-repeat left center/contain
}

#button-wirtschaftfoerderung .sidebutton-content .sidebutton-icon,
#button-wirtschaftfoerderung-top .sidebutton-content .sidebutton-icon {
    background: url("../img/icons/wirtschaftsfoerderungen.svg") no-repeat left center/contain
}

#button-wirtschaftfoerderung.opened .sidebutton-content .sidebutton-icon,
#button-wirtschaftfoerderung-top.opened .sidebutton-content .sidebutton-icon {
    background: url("../img/icons/wirtschaftsfoerderungen-blue.svg") no-repeat left center/contain
}

.sidebutton-content .sidebutton-arrow {
    height: .765em;
    width: .777em;
    display: none;
    max-width: 2em
}

@media screen and (min-width: 64rem) {

    #button-wirtschaftfoerderung .sidebutton-content .sidebutton-arrow::before,
    #button-wirtschaftfoerderung-top .sidebutton-content .sidebutton-arrow::before {
        content: "";
        display: inline-block;
        border: 1px solid #fff;
        border-width: 0 1px 1px 0;
        padding: 4px;
        transform: translate(0%, -20%) rotate(45deg);
        -webkit-transform: translate(0%, -20%) rotate(45deg);
        transition: all .3s ease-out;
        height: 3px;
        margin-top: 4px;
        margin-right: 0px;
        margin-bottom: 0px;
        margin-left: 0px;
        vertical-align: super
    }

    #button-wirtschaftfoerderung.opened .sidebutton-content .sidebutton-arrow::before,
    #button-wirtschaftfoerderung-top.opened .sidebutton-content .sidebutton-arrow::before {
        transform: translate(0%, 40%) rotate(-135deg) !important;
        -webkit-transform: translate(0%, 40%) rotate(-135deg) !important;
        transition: all .3s ease-out
    }
}

@media screen and (min-width: 64rem)and (min-width: 64rem) {

    #button-wirtschaftfoerderung.opened .sidebutton-content .sidebutton-arrow,
    #button-wirtschaftfoerderung-top.opened .sidebutton-content .sidebutton-arrow {
        background-color: #fff;
        color: #34597a
    }
}

@media screen and (min-width: 64rem) {

    #button-wirtschaftfoerderung.opened .sidebutton-content .sidebutton-arrow::before,
    #button-wirtschaftfoerderung-top.opened .sidebutton-content .sidebutton-arrow::before {
        border: 1px solid #34597a !important;
        border-width: 0 1px 1px 0 !important
    }
}

#button-terminfinder .sidebutton-content .sidebutton-arrow,
#button-newsletter .sidebutton-content .sidebutton-arrow,
#button-news .sidebutton-content .sidebutton-arrow {
    background: url("../img/icons/tow-arrows.svg") no-repeat left center/contain
}

.sidebutton-content .sidebutton-font {
    padding-left: 1em;
    max-width: 100%
}

@media screen and (min-width: 54rem) {
    #sidebuttons {
        position: absolute;
        top: calc(100% + 1rem);
        flex-direction: column
    }

    .sidebutton {
        font-size: 16px;
        width: 100%;
        padding: 1em
    }

    .sidebutton-content .sidebutton-icon {
        width: 2em
    }

    .sidebutton-content .sidebutton-font {
        display: none
    }
}

@media screen and (min-width: 1150px) {
    #sidebuttons {
        top: calc(100% + 2rem)
    }
}

@media screen and (min-width: 81rem) {
    .sidebutton {
        font-size: 17px;
        width: 100%;
        padding: 26px 15px
    }

    .sidebutton-content {
        width: auto
    }

    .sidebutton-content .sidebutton-icon {
        width: 100%
    }

    .sidebutton-content .sidebutton-arrow {
        display: inline-block
    }

    .sidebutton-content .sidebutton-font {
        display: block
    }

    .sidebutton1 .sidebutton-content .sidebutton-font {
        padding-right: .5rem;
        padding-left: .5rem
    }
}

@media screen and (min-width: 1400px) {
    .sidebutton {
        font-size: 17px;
        width: 100%;
        padding: 26px 15px
    }

    .sidebutton1 .sidebutton-content .sidebutton-font {
        padding-right: 1rem;
        padding-left: 1rem
    }
}

@media screen and (min-width: 1596px) {
    #sidebuttons {
        top: calc(100% + 4rem)
    }
}

.big-slider {
    background: #e8ecef
}

.big-slider .bigslider_gradient {
    display: none
}

@media screen and (min-width: 64rem) {
    .big-slider .bigslider_gradient {
        display: block
    }

    #microsite .big-slider .bigslider_gradient {
        background: linear-gradient(to right, #e8ecef 15%, transparent);
        width: 35%
    }
}

.big-slider .label-container {
    left: 0
}

.big-slider a:focus-visible {
    outline: unset
}

.big-slider a:focus-visible>button {
    outline: 2px solid #b80a07;
    outline-offset: 0
}

.big-slider .swiper-slide {
    position: relative;
    height: 100%
}

.big-slider .text-img-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%
}

.big-slider .text-img-container .font--headline-1,
.big-slider .text-img-container .schriftgroesse-h1,
.big-slider .text-img-container h1 {
    line-height: 100%;
    margin-top: .5em
}

.big-slider .text-container {
    width: 100%;
    order: 2
}

.big-slider .text-container .text-wrapper {
    height: 100%
}

.big-slider .text-container .text-wrapper .outer {
    background: #e8ecef
}

.start .big-slider .text-container .text-wrapper .outer {
    background: #fff
}

.big-slider .text-container .text-wrapper .outer {
    justify-content: center;
    padding: 1.875rem 0
}

.big-slider .text-container .text-wrapper .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: auto 0
}

.big-slider .text-container .text-wrapper .button,
.big-slider .text-container .text-wrapper .button--solid,
.big-slider .text-container .text-wrapper .button--outline,
.big-slider .text-container .text-wrapper .button--pill,
.big-slider .text-container .text-wrapper .button--pill-outline {
    margin-top: 1rem
}

.big-slider .text-container .img-container {
    order: 1
}

.big-slider.start,
.big-slider.start .text-container .text-wrapper .outer {
    background: #fff
}

.start .big-slider {
    background: #fff
}

@media screen and (min-width: 54rem) {
    .big-slider .text-img-container {
        padding-left: 6%
    }

    .big-slider .text-container {
        position: absolute;
        height: 100%;
        z-index: 5
    }

    .big-slider .text-container .text-wrapper .outer {
        padding: 1rem;
        height: 100%;
        display: flex
    }

    .big-slider .text-container .text-wrapper .inner {
        height: auto
    }

    .big-slider .text-container .text-wrapper .button,
    .big-slider .text-container .text-wrapper .button--solid,
    .big-slider .text-container .text-wrapper .button--outline,
    .big-slider .text-container .text-wrapper .button--pill,
    .big-slider .text-container .text-wrapper .button--pill-outline {
        margin-top: 2rem
    }

    .big-slider .font--headline-1,
    .big-slider .schriftgroesse-h1,
    .big-slider h1 {
        font-size: 20px
    }

    .big-slider .font--headline-1+div,
    .big-slider .schriftgroesse-h1+div,
    .big-slider h1+div {
        font-size: 15px
    }

    .big-slider .img-container img {
        display: block;
        float: right
    }
}

@media screen and (min-width: 64rem) {
    .big-slider .text-container .text-wrapper .outer {
        padding: 0rem
    }

    .big-slider .text-container .text-wrapper .inner {
        padding-top: 0
    }

    .big-slider .font--headline-1,
    .big-slider .schriftgroesse-h1,
    .big-slider h1 {
        font-size: 26px
    }

    .big-slider .font--headline-1+div,
    .big-slider .schriftgroesse-h1+div,
    .big-slider h1+div {
        font-size: 17px
    }
}

@media screen and (min-width: 81rem) {
    .big-slider .text-wrapper .outer {
        padding: 50px
    }

    .big-slider .text-wrapper .text-container {
        max-width: 61rem
    }

    .big-slider .font--headline-1,
    .big-slider .schriftgroesse-h1,
    .big-slider h1 {
        font-size: calc(2rem + 11*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 81rem)and (min-width: 120em) {

    .big-slider .font--headline-1,
    .big-slider .schriftgroesse-h1,
    .big-slider h1 {
        font-size: 43px
    }
}

@media screen and (min-width: 1400px) {
    .big-slider .text-container .text-wrapper.measure-space {
        padding: 2rem
    }

    .big-slider .img-container img {
        width: 100%
    }

    .big-slider .font--headline-1,
    .big-slider .schriftgroesse-h1,
    .big-slider h1 {
        font-size: calc(2rem + 7*(100vw - 20rem)/1600)
    }

    .big-slider .font--headline-1+div,
    .big-slider .schriftgroesse-h1+div,
    .big-slider h1+div {
        font-size: 20px;
        line-height: 130%
    }
}

@media screen and (min-width: 1596px) {
    .big-slider .text-img-container {
        padding-left: 0
    }
}

@media screen and (min-width: 64rem) {
    .bigslider_gradient {
        width: 40%;
        background: linear-gradient(to right, white 10%, transparent);
        height: 100%;
        display: block;
        position: absolute;
        left: 0;
        top: 0
    }

    .big-slider .font--headline-1,
    .big-slider .schriftgroesse-h1,
    .big-slider h1 {
        font-size: calc(2rem + 11*(100vw - 20rem)/1600)
    }
}

.noGradient {
    width: 95% !important
}

@media screen and (max-width: 64rem) {
    .noGradient {
        width: 100% !important
    }
}

#intro-wifoe {
    color: #fff
}

#intro-wifoe .buehne {
    margin: 2.5rem;
    padding-left: 2rem;
    padding-right: 2.5rem
}

@media screen and (min-width: 32rem) {
    #intro-wifoe .buehne {
        padding-left: 1.875rem;
        padding-right: 1.875rem
    }
}

#intro-wifoe .buehne {
    position: relative
}

#intro-wifoe .buehne .banner-buehne {
    position: relative;
    z-index: 1;
    height: auto;
    width: auto
}

#intro-wifoe .buehne .banner-buehne .buehne-inner {
    padding: 1.5rem
}

@media screen and (min-width: 32rem) {
    #intro-wifoe .buehne .banner-buehne .buehne-inner {
        padding: 2.175rem
    }
}

#intro-wifoe .buehne .banner-buehne .buehne-inner {
    text-align: left;
    z-index: 5;
    background-image: linear-gradient(22deg, #0095d6, #005498 52%, #005498);
    color: #fff
}

#intro-wifoe .buehne .banner-buehne .buehne-inner h1,
#intro-wifoe .buehne .banner-buehne .buehne-inner p {
    font-size: 1.5rem
}

@media screen and (min-width: 64rem) {

    #intro-wifoe .buehne .banner-buehne .buehne-inner h1,
    #intro-wifoe .buehne .banner-buehne .buehne-inner p {
        font-size: 2.625rem
    }
}

@media screen and (max-width: 64rem) {

    #intro-wifoe .buehne .banner-buehne .buehne-inner h1,
    #intro-wifoe .buehne .banner-buehne .buehne-inner p {
        font-size: 4vw
    }
}

#intro-wifoe .buehne .banner-buehne .buehne-inner h1,
#intro-wifoe .buehne .banner-buehne .buehne-inner p {
    hyphens: auto;
    margin: 0
}

#intro-wifoe .buehne .banner-buehne .buehne-inner p {
    font-weight: 100
}

#intro-wifoe .buehne .banner-buehne::before {
    content: "";
    height: calc(100% + 2.5rem);
    width: calc(100% + 2.5rem);
    position: absolute;
    z-index: -1;
    bottom: -2.5rem;
    left: -2.5rem;
    background-image: linear-gradient(90deg, #009ee3, #005498)
}

#intro-wifoe .buehne .banner-buehne::after {
    content: "";
    height: calc(100% + 2.5rem);
    width: calc(100% + 2.5rem);
    position: absolute;
    top: -2.5rem;
    right: -2.5rem;
    z-index: -1;
    background-image: linear-gradient(90deg, #b60a06, #e3000f)
}

#intro-wifoe .text {
    padding-top: 1.875rem;
    padding-left: 1.875rem;
    padding-right: 1.875rem;
    margin-top: 3rem
}

#intro-wifoe .text h2 {
    color: #fff;
    line-height: 100%;
    margin-top: -0.1em;
    margin-bottom: 1rem
}

#intro-wifoe .text p {
    margin-top: 0
}

#intro-wifoe .sandboxes .sandbox {
    background: #fff;
    border-right: 1px solid #5b85aa;
    position: relative
}

#intro-wifoe .sandboxes .sandbox a {
    display: block;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

#intro-wifoe .sandboxes .sandbox img {
    max-width: 70%;
    max-height: 70%;
    padding: .8rem
}

#intro-wifoe .sandboxes .sandbox::after {
    content: "";
    position: absolute;
    bottom: 8px;
    right: 8px;
    width: 9px;
    height: 9px;
    border-bottom: 3px solid #5b85aa;
    border-right: 3px solid #5b85aa
}

@media screen and (min-width: 54rem) {
    #intro-wifoe .buehne {
        max-width: calc(100% - 60px)
    }

    #intro-wifoe .text {
        padding-top: 0px;
        padding-left: 2rem
    }
}

@media screen and (min-width: 54rem)and (-ms-high-contrast: none),
screen and (min-width: 54rem)and (-ms-high-contrast: active) {
    #intro-wifoe img {
        width: 70%
    }
}

@media screen and (min-width: 64rem) {
    #intro-wifoe .measure--xl.p4--lr {
        padding: 0
    }

    #intro-wifoe .text {
        margin-top: 0px
    }
}

@media screen and (min-width: 81rem) {
    #intro-wifoe .text {
        padding-left: 50px
    }
}

#intro-wifoe .intro-logo-container {
    margin: 0;
    display: inline-block;
    width: 25%;
    padding-top: 3px
}

@media screen and (min-width: 54rem) {
    #intro-wifoe .intro-logo-container {
        width: 50%
    }
}

@media screen and (min-width: 64rem) {
    #intro-wifoe .intro-logo-container {
        width: 35%
    }
}

#intro-wifoe .intro-logo-container {
    float: left;
    padding-right: 1rem;
    padding-bottom: 1rem
}

#intro-wifoe .intro-logo-container .logo-wrapper {
    padding: .8rem 1.5rem;
    background: #fff
}

.badge-wrapper {
    position: relative;
    width: 155px;
    height: 155px;
    margin: -11% auto 0 auto;
    z-index: 10
}

@media screen and (min-width: 54rem) {
    .badge-wrapper {
        margin-top: -77px
    }
}

.badge-wrapper a {
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse at center, rgb(227, 0, 15) 0%, rgb(227, 0, 15) 70%, rgba(227, 0, 15, 0) 70.3%);
    color: #fff;
    text-decoration: none;
    display: grid;
    align-items: center;
    justify-content: center
}

.badge-wrapper a span {
    font-size: 20px;
    line-height: 1.25;
    padding: 0;
    text-align: center
}

@media screen and (min-width: 32rem) {
    .badge-wrapper a span {
        padding-bottom: 12%
    }
}

.badge-wrapper a:after {
    content: "";
    background: url(/standards/img/icons/badge-arrow-down.svg) no-repeat center bottom/8% auto
}

@media screen and (min-width: 32rem) {
    .badge-wrapper a:after {
        background: url(/standards/img/icons/badge-arrow-down.svg) no-repeat center bottom/10% auto
    }
}

.badge-wrapper a:after {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    bottom: 1rem
}

@media screen and (min-width: 32rem) {
    .badge-wrapper a {
        font-size: 20px
    }
}

@media screen and (min-width: 64rem) {
    .badge-wrapper a {
        font-size: 20px
    }
}

#breadcrumb {
    font-size: .875rem;
    padding-top: .5em;
    padding-bottom: 1.5rem
}

#breadcrumb ul {
    display: block
}

#breadcrumb li {
    white-space: normal;
    padding: 0;
    margin: 0
}

#breadcrumb li::before {
    display: none
}

#breadcrumb a {
    margin: 0 10px 0 0;
    color: #526f87
}

#breadcrumb a:hover {
    text-decoration: underline
}

#breadcrumb a::before {
    display: none
}

#breadcrumb a::after {
    content: "/";
    display: inline-block;
    height: 1em;
    width: auto;
    padding: 0 0 0 12px;
    background: none
}

#breadcrumb .currentEntry a {
    font-weight: bold;
    color: #34597a
}

#breadcrumb .currentEntry a::after {
    display: none
}

#backlink {
    margin-bottom: .625rem;
    display: inline-block
}

#backlink a {
    border-radius: 4px;
    background-color: #fff;
    border: 1px solid #c2cdd7;
    float: left;
    display: block;
    color: #34597a;
    padding: .25rem .8rem .25rem .8rem;
    text-decoration: underline;
    font-size: 13px;
    line-height: 1rem;
    height: 26px;
    margin: 0 .5rem 0 0
}

#backlink a:hover {
    color: #6797c1
}

#backlink .label {
    float: left;
    margin-left: 6px
}

#backlink .label.art-aktuelles,
#backlink .label.art-story,
#backlink .label.art-veranstaltung {
    color: #34597a;
    background: #fff
}

#backlink .label.art-aktuelles::before {
    background-image: url(../img/icons/news-blue.svg)
}

#backlink .label.art-story::before {
    background-image: url(../img/icons/story-blue.svg)
}

#backlink .label.art-veranstaltung::before {
    background-image: url(../img/icons/calendar-blue.svg)
}

#backlink .label-container,
.split-modul-header .label-container {
    top: 0
}

blockquote {
    margin: 0 .9375rem
}

blockquote .factbox,
blockquote .cp-inline--area {
    margin: 1.875rem -0.9375rem
}

blockquote .factbox a,
blockquote .cp-inline--area a {
    text-decoration: none
}

blockquote p {
    margin: 0
}

.cp-inline--box,
.cp-inline--area {
    border: 3px solid #95b6d9;
    padding: 1.5rem 1.8rem
}

.cp-inline--box p,
.cp-inline--box ul,
.cp-inline--box ol,
.cp-inline--box li,
.cp-inline--box span,
.cp-inline--area p,
.cp-inline--area ul,
.cp-inline--area ol,
.cp-inline--area li,
.cp-inline--area span {
    color: inherit
}

section.content .cp-inline--box ul>li::before,
.cp-inline--box ul>li::before,
section.content .cp-inline--area ul>li::before,
.cp-inline--area ul>li::before {
    content: url("data:image/svg+xml,%3Csvg id='a' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3.58 7.72'%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill:%2395b6d9;%7D%3C/style%3E%3C/defs%3E%3Cpath class='b' d='m1.34,0l2.25,3.77v.19l-2.25,3.77H0l1.92-3.86L0,0h1.34Z'/%3E%3C/svg%3E");
    height: 14px;
    width: 5px;
    top: 2px
}

.cp-inline--area {
    border: none
}

.cp-inline--area p,
.cp-inline--area ul,
.cp-inline--area ol,
.cp-inline--area li,
.cp-inline--area span {
    color: #fff
}

section.content ul {
    margin: 1.875rem 0
}

section.content ul.linklist li {
    padding-left: 0
}

section.content ul.linklist li::before {
    display: none
}

section.content .factbox ul,
section.content .cp-inline--area ul {
    font-weight: 400
}

section.content .factbox ul li::before,
section.content .cp-inline--area ul li::before {
    color: #34597a
}

section.modul {
    margin: 0 0 1.875rem 0;
    padding: 0
}

section.modul::after {
    content: "";
    display: block;
    clear: both
}

section.modul.galerie {
    margin: -0.9375rem 0 .9375rem 0
}

section.modul>:last-child {
    margin-bottom: 0
}

section.modul>:last-child.galerie {
    margin-bottom: 0
}

section.modul>:first-of-type.inline-img+*:first-of-type {
    margin-top: 0
}

section.modul>p {
    margin: 0 0 .9375rem 0
}

section.modul>p>img {
    padding: 0 1rem 1rem 0
}

section.modul>blockquote {
    margin-bottom: .9375rem
}

section.modul>h2+ul,
section.modul>h3+ul,
section.modul>h4+ul {
    margin-top: .9375rem
}

.editorial {
    width: 100%;
    margin: 0 0 1rem 0
}

.editorial p {
    margin: 0
}

.img-galerie .img-wrapper {
    padding: 0 .9375rem
}

.img-galerie {
    overflow: hidden;
    max-width: none;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
    width: calc(100% + 1.875rem)
}

figure {
    margin: 0 0 1.875rem 0;
    position: relative
}

figure.nomargin,
.sbox figure {
    margin: 0
}

figure.inline-img {
    margin: 0 0 .9375rem 0;
    width: 100%
}

figure.inline-img img {
    width: 100%
}

@media screen and (min-width: 32rem) {
    figure.inline-img {
        display: inline-block
    }

    figure.inline-img.left,
    figure.inline-img.right,
    figure.inline-img.left_drittel,
    figure.inline-img.right_drittel,
    figure.inline-img.left_viertel,
    figure.inline-img.right_viertel {
        width: calc(50% - .9375rem - 2px)
    }

    figure.inline-img.left,
    figure.inline-img.left_drittel,
    figure.inline-img.left_viertel {
        float: left;
        margin: .2em .9375rem 1.875rem 0
    }

    figure.inline-img.right,
    figure.inline-img.right_drittel,
    figure.inline-img.right_viertel {
        float: right;
        margin: .2em 0 1.875rem .9375rem
    }
}

@media screen and (min-width: 620px) {

    figure.inline-img.left,
    figure.inline-img.right {
        width: calc(50% - .9375rem - 2px)
    }

    figure.inline-img.left_drittel,
    figure.inline-img.right_drittel {
        width: calc(33% - .9375rem - 2px)
    }

    figure.inline-img.left_viertel,
    figure.inline-img.right_viertel {
        width: calc(25% - .9375rem - 2px)
    }
}

.zweispaltig h3,
.zweispaltig h4,
.zweispaltig h5,
.zweispaltig h6 {
    -moz-column-span: all;
    column-span: all
}

@media screen and (min-width: 32rem) {
    .zweispaltig figure.inline-img.right {
        width: 100%;
        float: none;
        margin-left: 0
    }
}

@media screen and (min-width: 64rem) {
    .zweispaltig figure.inline-img {
        -moz-column-span: all;
        column-span: all;
        width: auto;
        display: block
    }

    .zweispaltig figure.inline-img.left,
    .zweispaltig figure.inline-img.right,
    .zweispaltig figure.inline-img.left_drittel,
    .zweispaltig figure.inline-img.right_drittel {
        display: inline;
        -moz-column-span: none;
        column-span: none
    }

    .zweispaltig figure.inline-img.left_drittel,
    .zweispaltig figure.inline-img.right_drittel {
        width: calc(65% - .9375rem - 2px)
    }

    .zweispaltig figure.inline-img.right_drittel {
        float: right
    }

    .zweispaltig figure.inline-img.left,
    .zweispaltig figure.inline-img.right {
        margin: .2em 0 1.875rem 0
    }
}

@media screen and (min-width: 64rem) {

    .zweispaltig:not(:has(.factbox)),
    .zweispaltig p .factbox,
    .zweispaltig p .cp-inline--area {
        -moz-column-count: 2;
        column-count: 2;
        -moz-column-gap: 7%;
        column-gap: 7%;
        -moz-column-fill: balance;
        column-fill: balance;
        hyphens: auto
    }
}

.copyright {
    position: absolute;
    bottom: 8px;
    right: 8px;
    font-size: 12px;
    line-height: 120%;
    color: #fff;
    font-weight: 400;
    z-index: 10;
    text-align: right;
    text-shadow: 0px 0px 6px rgba(0, 0, 0, .5)
}

@media screen and (min-width: 54rem) {
    .imgnotch .copyright {
        bottom: 33px
    }
}

.kachel-img .copyright {
    font-size: 10px;
    opacity: .8
}

.copyright-wrapper {
    background: #fff
}

.copyright-wrapper,
a.img-wrapper {
    position: relative;
    display: block
}

@media screen and (min-width: 32rem) {

    .imgnotch .copyright-wrapper,
    .imgnotch a.img-wrapper {
        height: 100%
    }

    .imgnotch .copyright-wrapper.flex-wrapper-img-bottom,
    .imgnotch a.img-wrapper.flex-wrapper-img-bottom {
        display: flex;
        flex-direction: row;
        align-items: flex-end
    }
}

@media screen and (min-width: 54rem) {
    .galerie-space {
        padding: 0 1.625rem
    }
}

section.modul.testimonial {
    padding: 0 1.625rem;
    margin: 3.75rem 0
}

section.modul.testimonial.no-slider {
    margin: 1.875rem 0
}

.testimonial-slide {
    padding: 3.25rem 10%
}

.testimonial-slide .testimonial-text {
    font-size: 2rem
}

.testimonial-slide .testimonial-text.font-s {
    font-size: 1.45rem
}

.testimonial-slide .testimonial-text.font-s span.quotation {
    font-size: 2.25rem;
    line-height: 1.45rem
}

.testimonial-slide .testimonial-text.font-m {
    font-size: 1.7rem
}

.testimonial-slide .testimonial-text.font-m span.quotation {
    font-size: 2.5rem;
    line-height: 1.7rem
}

.testimonial-slide .testimonial-text.font-l {
    font-size: 2rem
}

.testimonial-slide .testimonial-text.font-l span.quotation {
    font-size: 2.9rem;
    line-height: 2rem
}

.testimonial-slide .testimonial-text {
    padding-bottom: 3.75rem
}

.testimonial-slide .testimonial-name {
    font-weight: 700;
    font-size: 20px
}

.testimonial-swiper-nav-container .swiper-pagination {
    position: relative;
    padding: 0 0 1.875rem 0
}

.testimonial-swiper-nav-container .swiper-button-next,
.testimonial-swiper-nav-container .swiper-button-prev {
    transform: none
}

.testimonial-wrapper {
    padding: 3.75rem 0
}

.testimonial-wrapper.align-center {
    padding: 1.875rem 0
}

.testimonial-wrapper {
    justify-content: center
}

@media screen and (min-width: 64rem) {
    .testimonial-wrapper {
        justify-content: space-between
    }

    .testimonial-wrapper.align-center {
        justify-content: center
    }

    .testimonial-wrapper.align-around {
        justify-content: space-around
    }
}

.testimonial-wrapper .testimonial-item {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #95b6d9;
    padding-bottom: 1.625rem;
    margin-bottom: 1.625rem
}

.testimonial-wrapper .testimonial-item:last-child {
    border-bottom: none
}

@media screen and (min-width: 64rem) {
    .testimonial-wrapper .testimonial-item {
        border-bottom: none;
        padding: 0;
        margin: 0
    }
}

.testimonial-wrapper .testimonial-text {
    font-size: 1.3rem;
    line-height: 120%;
    padding-bottom: 1.875rem
}

.testimonial-wrapper .testimonial-text span {
    font-size: 2rem;
    line-height: 1.2rem
}

.testimonial-wrapper .testimonial-name {
    font-weight: 700;
    font-size: 1rem
}

.imgnotch {
    position: relative;
    z-index: 10
}

.imgnotch .objectfit-header {
    height: auto;
    overflow: visible
}

.imgnotch .objectfit-header .header-img {
    min-width: 100%;
    display: block;
    max-height: inherit;
    -o-object-fit: cover;
    object-fit: cover
}

.imgnotch .descr-wrapper {
    padding-bottom: 25px
}

.imgnotch .descr-wrapper .buehne-text {
    padding: 1.875rem;
    padding-bottom: 50px;
    overflow: hidden
}

.imgnotch .descr-wrapper .buehne-text h1 {
    text-transform: inherit;
    font-size: calc(2rem + 30*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    .imgnotch .descr-wrapper .buehne-text h1 {
        font-size: 62px
    }
}

.imgnotch+section {
    padding-top: 0
}

@media screen and (min-width: 54rem) {

    .imgnotch:before,
    .imgnotch:after {
        bottom: 0
    }

    .imgnotch .objectfit-header,
    .imgnotch .flex-wrapper-img-bottom {
        max-height: 60vh;
        margin-bottom: 2vh
    }

    .imgnotch .descr-wrapper {
        padding-bottom: 0;
        bottom: 20%;
        top: auto
    }

    .imgnotch .descr-wrapper .buehne-text {
        padding: 2rem 3rem;
        max-width: 50vw;
        padding-bottom: 50px;
        overflow: hidden
    }

    .imgnotch+section {
        padding-top: 2rem
    }
}

@media screen and (min-width: 64rem) {

    .imgnotch .objectfit-header,
    .imgnotch .flex-wrapper-img-bottom {
        max-height: 86vh
    }

    .imgnotch .descr-wrapper {
        bottom: 10%;
        width: 100%;
        padding-left: 20%
    }

    .imgnotch .descr-wrapper .buehne-text {
        max-width: 45vw;
        font-size: 26px
    }
}

@media screen and (min-width: 81rem) {
    .imgnotch .descr-wrapper .buehne-text {
        max-width: 50%
    }
}

@media screen and (min-width: 1600px) {
    .imgnotch .descr-wrapper .buehne-text {
        max-width: 45%
    }
}

@media screen and (min-width: 120em) {
    .imgnotch .descr-wrapper .buehne-text {
        font-size: 24px
    }

    .imgnotch .descr-wrapper .buehne-text h1 {
        font-size: 58px
    }

    .imgnotch .objectfit-header,
    .imgnotch .flex-wrapper-img-bottom {
        max-height: 90vh
    }
}

.objectfit-header.microsite-header {
    height: auto
}

.objectfit-header.microsite-header .copyright-wrapper {
    height: 100%
}

@media screen and (min-width: 54rem) {
    .objectfit-header.microsite-header {
        height: 60vh
    }
}

@media screen and (min-width: 64rem) {
    .objectfit-header.microsite-header {
        height: 70vh
    }
}

.kachel-hauptkategorie h3,
.kachel-linked-doc h3 {
    font-size: calc(1.25rem + 2*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .kachel-hauptkategorie h3,
    .kachel-linked-doc h3 {
        font-size: 22px
    }
}

.kachel-hauptkategorie .editorial,
.kachel-linked-doc .editorial {
    font-size: calc(0.8125rem + 3*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {

    .kachel-hauptkategorie .editorial,
    .kachel-linked-doc .editorial {
        font-size: 16px
    }
}

.kachel-hauptkategorie .sbox-wrapper,
.kachel-linked-doc .sbox-wrapper {
    padding: 1.875rem;
    background: #fff
}

.kachel-hauptkategorie .copyright-wrapper img,
.kachel-linked-doc .copyright-wrapper img {
    vertical-align: bottom
}

.kachel-hauptkategorie .kachel-descr,
.kachel-linked-doc .kachel-descr {
    padding: 1rem 0 1.875rem 0;
    position: relative
}

.kachel-hauptkategorie .kachel-descr .button,
.kachel-hauptkategorie .kachel-descr .button--solid,
.kachel-hauptkategorie .kachel-descr .button--outline,
.kachel-hauptkategorie .kachel-descr .button--pill,
.kachel-hauptkategorie .kachel-descr .button--pill-outline,
.kachel-linked-doc .kachel-descr .button,
.kachel-linked-doc .kachel-descr .button--solid,
.kachel-linked-doc .kachel-descr .button--outline,
.kachel-linked-doc .kachel-descr .button--pill,
.kachel-linked-doc .kachel-descr .button--pill-outline {
    width: 38px;
    height: 33px;
    padding: 0;
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center
}

.kachel-hauptkategorie .kachel-descr .button img,
.kachel-hauptkategorie .kachel-descr .button--solid img,
.kachel-hauptkategorie .kachel-descr .button--outline img,
.kachel-hauptkategorie .kachel-descr .button--pill img,
.kachel-hauptkategorie .kachel-descr .button--pill-outline img,
.kachel-linked-doc .kachel-descr .button img,
.kachel-linked-doc .kachel-descr .button--solid img,
.kachel-linked-doc .kachel-descr .button--outline img,
.kachel-linked-doc .kachel-descr .button--pill img,
.kachel-linked-doc .kachel-descr .button--pill-outline img {
    width: 35%;
    height: auto
}

.kachel-hauptkategorie .kachel-descr .newsletter-button,
.kachel-linked-doc .kachel-descr .newsletter-button {
    width: -moz-fit-content;
    width: fit-content;
    height: 33px;
    position: relative;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 .8rem
}

.kachel-hauptkategorie .kachel-descr .newsletter-button img,
.kachel-linked-doc .kachel-descr .newsletter-button img {
    width: 35%;
    height: auto
}

.kachel-hauptkategorie .kachel-descr .label-container-landingpage {
    position: relative;
    left: 0;
    top: 0;
    margin-bottom: .45rem
}

.kachel-hauptkategorie .kachel-descr .label-container-landingpage .label.thema {
    margin-bottom: .1rem;
    margin-right: .1rem
}

.kachel-hauptkategorie-trenner {
    display: none
}

.kachel-hauptkategorie .sbox-link,
.kachel-linked-doc .sbox-link {
    text-decoration: none;
    font-weight: inherit;
    display: block;
    height: 100%
}

.kachel-hauptkategorie .sbox-link:hover,
.kachel-linked-doc .sbox-link:hover {
    color: inherit
}

@media screen and (min-width: 54rem) {

    .kachel-hauptkategorie .sbox,
    .kachel-hauptkategorie .sbox-wrapper,
    .kachel-linked-doc .sbox,
    .kachel-linked-doc .sbox-wrapper {
        padding: 1.25rem;
        height: 100%;
        box-shadow: none
    }

    .kachel-hauptkategorie .sbox,
    .kachel-linked-doc .sbox {
        padding: .875rem
    }

    .kachel-hauptkategorie .sbox-wrapper,
    .kachel-linked-doc .sbox-wrapper {
        background: #e8ecef
    }

    .kachel-hauptkategorie .kachel-img,
    .kachel-linked-doc .kachel-img {
        padding: 0;
        position: relative;
        align-content: center
    }

    .kachel-hauptkategorie .editorial,
    .kachel-linked-doc .editorial {
        padding-bottom: 40px
    }

    .kachel-hauptkategorie .kachel-descr,
    .kachel-linked-doc .kachel-descr {
        padding: 0 0 0 .875rem;
        display: flex;
        flex-direction: column;
        height: 100%;
        align-items: flex-start;
        justify-content: space-between;
        font-size: .938rem;
        line-height: 1.333em
    }

    .kachel-hauptkategorie .kachel-descr h3,
    .kachel-linked-doc .kachel-descr h3 {
        margin-top: -3px;
        margin-bottom: .3em
    }

    .kachel-hauptkategorie .kachel-descr .label-container-landingpage+h3,
    .kachel-linked-doc .kachel-descr .label-container-landingpage+h3 {
        margin-top: 0;
        margin-bottom: .1em
    }

    .kachel-hauptkategorie .kachel-descr .font--body-2,
    .kachel-hauptkategorie .kachel-descr .font--footer,
    .kachel-linked-doc .kachel-descr .font--body-2,
    .kachel-linked-doc .kachel-descr .font--footer {
        margin: 0
    }
}

@media screen and (min-width: 64rem) {
    .kachel-hauptkategorie h3 {
        font-size: calc(0.875rem + 4*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 64rem)and (min-width: 120em) {
    .kachel-hauptkategorie h3 {
        font-size: 18px
    }
}

@media screen and (min-width: 64rem) {
    .kachel-hauptkategorie .editorial {
        font-size: calc(0.75rem + 2*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 64rem)and (min-width: 120em) {
    .kachel-hauptkategorie .editorial {
        font-size: 14px
    }
}

@media screen and (min-width: 81rem) {
    .kachel-hauptkategorie h3 {
        font-size: calc(1.25rem + 2*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 81rem)and (min-width: 120em) {
    .kachel-hauptkategorie h3 {
        font-size: 22px
    }
}

@media screen and (min-width: 81rem) {
    .kachel-hauptkategorie .editorial {
        font-size: calc(0.75rem + 4*(100vw - 20rem)/(1920 - 320))
    }
}

@media screen and (min-width: 81rem)and (min-width: 120em) {
    .kachel-hauptkategorie .editorial {
        font-size: 16px
    }
}

@media screen and (min-width: 81rem) {
    .measure--lg .kachel-linked-doc {
        max-width: 48% !important;
        flex-basis: 48% !important
    }

    .measure--lg .kachel-linked-doc .sbox {
        padding: 1.25rem 0
    }

    .measure--lg .kachel-linked-doc .sbox-wrapper>div,
    .measure--lg .kachel-linked-doc .sbox-wrapper>div.relative.grd-row>.kachel-descr {
        height: 100%
    }

    .measure--lg .kachel-linked-doc .sbox-wrapper .kachel-img {
        max-width: 33.3333333333%;
        flex-basis: 33.3333333333%
    }

    .measure--lg .kachel-linked-doc .sbox-wrapper .kachel-descr {
        max-width: 66.6666666667%;
        flex-basis: 66.6666666667%
    }

    .measure--lg .hr-mobile {
        display: none
    }
}

.button-route+img {
    height: 100%
}

.kacheln-wrapper {
    align-items: stretch;
    flex-basis: auto;
    flex-wrap: wrap
}

.grid {
    position: relative;
    width: 100%;
    margin-bottom: 2rem
}

.grid-sizer {
    width: 25%
}

.grid-item {
    width: 25%
}

.grid-item .sbox {
    padding: 1.5rem
}

.grid-item--width2 {
    width: 50%
}

@media(max-width: 64rem) {

    .grid-sizer,
    .grid-item {
        width: 33.333%
    }

    .grid-item--width2 {
        width: 66.666%
    }
}

@media(max-width: 54rem) {

    .grid-sizer,
    .grid-item {
        width: 50%
    }

    .grid-item--width2 {
        width: 100%
    }
}

@media(max-width: 32rem) {

    .grid-sizer,
    .grid-item {
        width: 100%
    }
}

.kachel-event .sbox-wrapper,
.kachel-story .sbox-wrapper,
.kachel-news .sbox-wrapper,
.kachel-info .sbox-wrapper,
.kachel-download .sbox-wrapper {
    background: #fff;
    border: 1px solid #d9e3eb
}

.kachel-event .sbox-wrapper.color-1--l2,
.kachel-story .sbox-wrapper.color-1--l2,
.kachel-news .sbox-wrapper.color-1--l2,
.kachel-info .sbox-wrapper.color-1--l2,
.kachel-download .sbox-wrapper.color-1--l2 {
    background: #e7eef6;
    border: 1px solid #e7eef6
}

.kachel-event .sbox-wrapper.color-1,
.kachel-event .sbox-wrapper.factbox,
.kachel-event .sbox-wrapper.cp-inline--area,
.kachel-story .sbox-wrapper.color-1,
.kachel-story .sbox-wrapper.factbox,
.kachel-story .sbox-wrapper.cp-inline--area,
.kachel-news .sbox-wrapper.color-1,
.kachel-news .sbox-wrapper.factbox,
.kachel-news .sbox-wrapper.cp-inline--area,
.kachel-info .sbox-wrapper.color-1,
.kachel-info .sbox-wrapper.factbox,
.kachel-info .sbox-wrapper.cp-inline--area,
.kachel-download .sbox-wrapper.color-1,
.kachel-download .sbox-wrapper.factbox,
.kachel-download .sbox-wrapper.cp-inline--area {
    background: #5b85aa;
    border: 1px solid #5b85aa
}

.kachel-event .sbox-wrapper.color-2--l2,
.kachel-story .sbox-wrapper.color-2--l2,
.kachel-news .sbox-wrapper.color-2--l2,
.kachel-info .sbox-wrapper.color-2--l2,
.kachel-download .sbox-wrapper.color-2--l2 {
    background: #e8ecef;
    border: 1px solid #e8ecef
}

.kachel-event .sbox,
.kachel-event .sbox-wrapper,
.kachel-story .sbox,
.kachel-story .sbox-wrapper,
.kachel-news .sbox,
.kachel-news .sbox-wrapper,
.kachel-info .sbox,
.kachel-info .sbox-wrapper,
.kachel-download .sbox,
.kachel-download .sbox-wrapper {
    height: 100%
}

.color-1--l2 .kachel-event .sbox,
.color-1--l2 .kachel-event .sbox-wrapper,
.color-1--l2 .kachel-story .sbox,
.color-1--l2 .kachel-story .sbox-wrapper,
.color-1--l2 .kachel-news .sbox,
.color-1--l2 .kachel-news .sbox-wrapper,
.color-1--l2 .kachel-info .sbox,
.color-1--l2 .kachel-info .sbox-wrapper,
.color-1--l2 .kachel-download .sbox,
.color-1--l2 .kachel-download .sbox-wrapper {
    border: none
}

.kachel-event .sbox-link,
.kachel-story .sbox-link,
.kachel-news .sbox-link,
.kachel-info .sbox-link,
.kachel-download .sbox-link {
    text-decoration: none;
    font-weight: inherit;
    display: block;
    height: 100%
}

.kachel-event .sbox-link:hover,
.kachel-story .sbox-link:hover,
.kachel-news .sbox-link:hover,
.kachel-info .sbox-link:hover,
.kachel-download .sbox-link:hover {
    color: inherit
}

.kachel-event header,
.kachel-story header,
.kachel-news header,
.kachel-info header,
.kachel-download header {
    position: relative;
    color: #fff;
    background: #5b85aa
}

.kachel-event header h4,
.kachel-story header h4,
.kachel-news header h4,
.kachel-info header h4,
.kachel-download header h4 {
    padding-top: calc(13px + 1.5rem)
}

.kachel-event .kachel-descr,
.kachel-story .kachel-descr,
.kachel-news .kachel-descr,
.kachel-info .kachel-descr,
.kachel-download .kachel-descr {
    display: flex;
    flex-direction: column;
    height: 70%;
    justify-content: stretch;
    font-size: .938rem;
    line-height: 1.333em;
    padding-top: .9375rem;
    padding: 1.5rem
}

@media screen and (min-width: 54rem) {

    .kachel-event .kachel-descr.first,
    .kachel-story .kachel-descr.first,
    .kachel-news .kachel-descr.first,
    .kachel-info .kachel-descr.first,
    .kachel-download .kachel-descr.first {
        position: absolute;
        height: unset;
        background-color: #fff;
        opacity: .95;
        bottom: 0;
        left: 0;
        margin: 3.5rem
    }
}

@media screen and (min-width: 64rem) {

    .kachel-event .kachel-descr.first,
    .kachel-story .kachel-descr.first,
    .kachel-news .kachel-descr.first,
    .kachel-info .kachel-descr.first,
    .kachel-download .kachel-descr.first {
        max-width: 50%
    }
}

.kachel-event .kachel-descr.first .label-container,
.kachel-story .kachel-descr.first .label-container,
.kachel-news .kachel-descr.first .label-container,
.kachel-info .kachel-descr.first .label-container,
.kachel-download .kachel-descr.first .label-container {
    left: 18px;
    top: 18px
}

@media screen and (min-width: 54rem) {

    .kachel-event .kachel-descr.first .label-container,
    .kachel-story .kachel-descr.first .label-container,
    .kachel-news .kachel-descr.first .label-container,
    .kachel-info .kachel-descr.first .label-container,
    .kachel-download .kachel-descr.first .label-container {
        left: -7px;
        top: -7px
    }
}

.kachel-event img,
.kachel-story img,
.kachel-news img,
.kachel-info img,
.kachel-download img {
    width: 100%;
    display: block
}

.kachel-event .icon img,
.kachel-story .icon img,
.kachel-news .icon img,
.kachel-info .icon img,
.kachel-download .icon img {
    width: auto;
    display: inline
}

.kachel-contact .kachel-descr,
.kachel-download .kachel-descr {
    padding-top: 0
}

@media screen and (min-width: 54rem) {
    .kachel-download .kachel-descr {
        margin-top: -0.4rem;
        padding-top: 0
    }
}

.kachel-event header h4 {
    margin-bottom: 0;
    hyphens: auto
}

.kachel-event header span.serientermin {
    font-size: .938rem;
    line-height: 1em
}

.kachel-event .kachel-descr {
    justify-content: space-between
}

.kachel-event hr {
    padding-top: 0;
    margin-top: 1rem
}

.kachel-event h5 {
    margin-top: 0
}

.kachel-event .date h5 span,
.kachel-event .place h5 span {
    position: relative
}

.kachel-event .date h5 span::before,
.kachel-event .place h5 span::before {
    content: "";
    height: 100%;
    max-height: 22px;
    position: relative;
    display: inline;
    width: 100%;
    position: absolute;
    left: 0
}

.kachel-event .date {
    padding-bottom: 1.3rem
}

.kachel-event .date h5 span {
    padding-left: 2rem
}

.kachel-event .date h5 span::before {
    background: url("../img/icons/calendar-blue.svg") no-repeat left center/contain;
    max-width: 22px
}

.kachel-event .place h5 span {
    padding-left: 1.5rem
}

.kachel-event .place h5 span::before {
    background: url("../img/icons/marker-blue.svg") no-repeat left center/contain;
    max-width: 16px
}

.kachel-news header,
.kachel-story header {
    background: #fff
}

.kachel-news header h4,
.kachel-story header h4 {
    margin-bottom: 0
}

.kachel-more .sbox,
.kachel-more .sbox-wrapper {
    height: 100%
}

.kachel-more .sbox-wrapper {
    background: #fff
}

.kachel-more .sbox-link {
    text-decoration: none;
    font-weight: inherit
}

.kachel-more h5 {
    margin-top: 0
}

.kachel-more .kachel-descr {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
    font-size: .938rem;
    line-height: 1.333em
}

.accordion-modul {
    border-bottom: 1px solid #cadaec;
    background: #e7eef6;
    padding: .9375rem 1.875rem
}

.accordion-modul:last-child {
    border: none
}

.accordion-modul header h3,
.accordion-modul header h4,
.accordion-modul header h5 {
    padding-right: 2rem
}

.accordion-modul header {
    padding: 0;
    position: relative;
    line-height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between
}

.accordion-modul header::after {
    position: relative;
    display: inline-block
}

.accordion-yellow {
    background-color: #fff438 !important
}

.accordion-pink {
    background-color: #ff38a7 !important;
    color: #fff
}

.accordion-pink.accordion-modul header::after {
    border-color: #fff
}

.accordion-green {
    background-color: #a7ff38 !important
}

.accordion-darkBlue {
    background-color: #2989ff !important;
    color: #fff
}

.accordion-darkBlue.accordion-modul header::after {
    border-color: #fff
}

.accordion .accordion-item .accordion-content .descr::after {
    content: "";
    display: block;
    clear: both
}

@media screen and (min-width: 54rem) {
    .accordion.accordions-responsive .accordion-modul header::after {
        display: none
    }

    .accordion.accordions-responsive .accordion-item .accordion-content {
        display: block
    }
}

.split-modul {
    padding: .9375rem 1.875rem;
    margin: 0 0 1.875rem 0
}

.split-modul .label {
    align-self: flex-start
}

.split-modul header.split-modul-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: column
}

@media screen and (min-width: 54rem) {
    .split-modul header.split-modul-header {
        flex-direction: row;
        align-items: center
    }
}

.split-modul header.split-modul-header {
    padding: 0
}

.split-modul header.split-modul-header .label-position {
    display: none;
    font-size: .9rem;
    line-height: 130%;
    padding: 0 1rem 0 0
}

@media screen and (min-width: 54rem) {
    .split-modul header.split-modul-header .label-position {
        flex: 1;
        padding: 0 1.3rem;
        text-align: right
    }
}

.split-modul header.split-modul-header h5 {
    margin: .9375rem 0 0 0
}

@media screen and (min-width: 54rem) {
    .split-modul header.split-modul-header h5 {
        margin: 0
    }
}

.split-modul .split-modul-body {
    padding-top: .9375rem;
    padding-bottom: .9375rem
}

.split-modul .split-modul-body p {
    margin: 0
}

.split-modul .split-modul-body .split-modul-link {
    display: block
}

.split-modul .img-wrapper {
    text-align: right;
    order: 1
}

@media screen and (min-width: 54rem) {
    .split-modul .img-wrapper {
        order: 2
    }
}

.split-modul .text-container--left {
    order: 2;
    padding-left: 1rem
}

@media screen and (max-width: 54rem) {
    .split-modul .text-container--left .inner {
        font-size: smaller
    }
}

@media screen and (min-width: 54rem) {
    .split-modul .text-container--left {
        padding-right: 1rem;
        padding-left: 0;
        order: 1
    }
}

.split-modul.accordion-item {
    border-bottom: 1px solid #cadaec;
    margin: 0
}

.split-modul.accordion-item header.split-modul-header .label-position {
    display: block;
    order: 3
}

@media screen and (min-width: 54rem) {
    .split-modul.accordion-item header.split-modul-header .label-position {
        order: initial
    }
}

.split-modul.accordion-item header.split-modul-header h5 {
    position: relative;
    line-height: 100%;
    display: flex;
    align-items: flex-end;
    width: 100%
}

@media screen and (min-width: 54rem) {
    .split-modul.accordion-item header.split-modul-header h5 {
        width: auto
    }
}

.split-modul.accordion-item header.split-modul-header h5 span {
    padding-right: 1rem
}

.split-modul.accordion-item header.split-modul-header h5::after {
    right: 0;
    display: inline-block
}

@media screen and (min-width: 54rem) {
    .split-modul.accordion-item header.split-modul-header h5::after {
        position: relative;
        display: inline-block
    }
}

.split-modul.accordion-item.open header.split-modul-header h5::after {
    top: 3px
}

.contact-infos {
    justify-content: flex-start
}

.contact-infos a {
    white-space: nowrap;
    text-decoration: none;
    padding-right: 1rem
}

@media screen and (min-width: 32rem) {
    .contact-infos a {
        padding-right: 1.32rem
    }
}

.inner:has(.contact-infos) {
    line-height: 135%
}

@media screen and (min-width: 1150px) {
    .inner:has(.contact-infos) {
        font-size: 18px !important
    }
}

.contact-infos div {
    padding-bottom: .4rem
}

.iframe-custom.newsletter-form {
    min-height: 810px
}

@media screen and (min-width: 32rem) {
    .iframe-custom.newsletter-form {
        min-height: 1040px
    }
}

@media screen and (min-width: 54rem) {
    .iframe-custom.newsletter-form {
        min-height: 1100px
    }
}

.kachel-linked-doc .sbox,
.kachel-linked-doc .sbox-wrapper {
    height: 100%;
    box-shadow: none
}

.kachel-linked-doc .logo-wrapper {
    text-align: center
}

.kachel-linked-doc .logo-wrapper img {
    width: 80%;
    height: auto
}

.kachel-linked-doc .kachel-descr {
    padding: 1.875rem 0;
    font-size: .938rem;
    line-height: 1.333em
}

.kachel-linked-doc .kachel-descr h3 {
    margin-top: 0
}

.kachel-linked-doc .kachel-descr .font--body-2,
.kachel-linked-doc .kachel-descr .font--footer {
    margin: 0
}

@media screen and (min-width: 32rem) {
    .kachel-linked-doc .kachel-descr {
        padding: 0 0 0 .875rem
    }
}

@media screen and (min-width: 54rem) {
    .kachel-linked-doc .sbox {
        padding: 1.875rem 0
    }

    .kachel-linked-doc .copyright-wrapper {
        background: #e8ecef
    }

    .kachel-linked-doc .kachel-descr {
        height: calc(100% + 6px);
        padding: 0 0 1.875rem .875rem
    }
}

.filter-container {
    display: flex;
    flex-direction: column
}

@media screen and (min-width: 64rem) {
    .filter-container {
        justify-content: space-between;
        flex-direction: row;
        align-items: center;
        flex-wrap: wrap
    }
}

.filter-container h1 {
    justify-content: flex-start;
    min-width: 25%
}

.filter-container.filter-row {
    margin-bottom: 2rem;
    justify-content: flex-start;
    width: calc(100% + 1rem);
    margin: 0 -0.5rem;
    max-width: none
}

@media screen and (min-width: 64rem) {
    .filter-container.filter-row {
        display: flex;
        flex-grow: 1;
        margin: 0 -0.5rem .4em 0;
        justify-content: flex-start;
        width: auto;
        max-width: calc(100% + .5rem)
    }
}

.filter-container.filter-row .input-container {
    margin: .5rem;
    width: calc(100% - 1rem)
}

.filter-container.filter-row .input-container.select {
    z-index: 5
}

.filter-container.filter-row .input-container.select .select-style {
    z-index: 2
}

.filter-container.filter-row .input-container.select:after {
    z-index: -1
}

.calendar-download {
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: 100%
}

@media screen and (min-width: 54rem) {
    .calendar-download {
        flex-basis: 50%
    }
}

.calendar-download {
    padding: 0 .5rem .5rem 0
}

.calendar-download.event-over {
    opacity: .4
}

.calendar-download .small-button-wrapper {
    display: flex;
    margin: 0;
    width: 100%;
    height: 100%;
    justify-content: space-between;
    align-items: stretch
}

.calendar-download .small-button-wrapper .event-title {
    display: block;
    font-size: 1.2rem
}

.kachel-story img,
.kachel-download img {
    width: 100%
}

.kachel-story.kachel-big .sbox-wrapper,
.kachel-download.kachel-big .sbox-wrapper {
    box-shadow: none
}

.kachel-story.kachel-big header,
.kachel-download.kachel-big header {
    position: unset
}

.kachel-story.kachel-big header .copyright-wrapper,
.kachel-download.kachel-big header .copyright-wrapper {
    overflow: hidden;
    height: 100%
}

.kachel-story.kachel-big .label-container,
.kachel-download.kachel-big .label-container {
    position: absolute
}

.kachel-story.kachel-big .kachel-descr,
.kachel-download.kachel-big .kachel-descr {
    height: auto;
    background: #5b85aa
}

.kachel-story.kachel-big .kachel-descr h5,
.kachel-download.kachel-big .kachel-descr h5 {
    font-size: calc(1.125rem + 5*(100vw - 20rem)/1600);
    color: #fff;
    margin-bottom: 0
}

.kachel-story.kachel-big .kachel-descr .text,
.kachel-download.kachel-big .kachel-descr .text {
    font-size: inherit;
    margin-top: .5em;
    margin-bottom: 1em
}

.kachel-story.kachel-big .kachel-descr a.button.button--solid:hover,
.kachel-story.kachel-big .kachel-descr a.button--solid:hover,
.kachel-story.kachel-big .kachel-descr a.button--pill:hover,
.kachel-download.kachel-big .kachel-descr a.button.button--solid:hover,
.kachel-download.kachel-big .kachel-descr a.button--solid:hover,
.kachel-download.kachel-big .kachel-descr a.button--pill:hover {
    background: #fff;
    color: #34597a
}

@media screen and (min-width: 54rem) {

    .kachel-story.kachel-big img,
    .kachel-download.kachel-big img {
        width: auto;
        min-height: 100%;
        max-width: none;
        min-width: 100%
    }

    .kachel-story.kachel-big header,
    .kachel-download.kachel-big header {
        position: unset
    }

    .kachel-story.kachel-big .label-container,
    .kachel-download.kachel-big .label-container {
        position: relative
    }

    .kachel-story.kachel-big .kachel-descr,
    .kachel-download.kachel-big .kachel-descr {
        height: 100%
    }

    .kachel-story.kachel-big .kachel-descr.p1--t,
    .kachel-download.kachel-big .kachel-descr.p1--t {
        padding-top: 1.875rem
    }

    .kachel-story.kachel-big .kachel-descr h5,
    .kachel-download.kachel-big .kachel-descr h5 {
        font-size: 2.5rem
    }

    .kachel-story.kachel-big .kachel-descr .text,
    .kachel-download.kachel-big .kachel-descr .text {
        font-size: calc(1rem + 4*(100vw - 20rem)/(1920 - 320));
        letter-spacing: 0px;
        line-height: 1.4em
    }
}

@media screen and (min-width: 54rem)and (min-width: 120em) {

    .kachel-story.kachel-big .kachel-descr .text,
    .kachel-download.kachel-big .kachel-descr .text {
        font-size: 20px
    }
}

@media screen and (min-width: 54rem) {

    .kachel-story.kachel-big .kachel-descr .font--button-small,
    .kachel-download.kachel-big .kachel-descr .font--button-small {
        font-size: calc(0.9375rem + 0*(100vw - 20rem)/(1920 - 320));
        padding: 1em 2.125em
    }
}

@media screen and (min-width: 54rem)and (min-width: 120em) {

    .kachel-story.kachel-big .kachel-descr .font--button-small,
    .kachel-download.kachel-big .kachel-descr .font--button-small {
        font-size: 15px
    }
}

#microsite .badge-wrapper {
    position: absolute !important;
    height: auto !important;
    width: auto !important;
    bottom: 130% !important;
    right: 50% !important;
    top: auto !important;
    left: auto !important
}

@media screen and (min-width: 54rem) {
    #microsite .badge-wrapper {
        bottom: 45px !important;
        right: -24px !important
    }
}

#microsite .objectfit-header {
    margin-bottom: 0
}

#microsite .imgnotch {
    position: relative;
    z-index: 10
}

#microsite .imgnotch::before {
    border-bottom: 20px solid #fff;
    content: "";
    border-left: 0 solid rgba(0, 0, 0, 0);
    border-right: 37px solid rgba(0, 0, 0, 0);
    display: block;
    width: 50%;
    position: absolute;
    top: -20px;
    height: 20px
}

#microsite .imgnotch::after {
    border-bottom: 20px solid #fff;
    content: "";
    border-right: 0 solid rgba(0, 0, 0, 0);
    border-left: 37px solid rgba(0, 0, 0, 0);
    display: block;
    width: 50%;
    position: absolute;
    top: -20px;
    height: 20px;
    right: 0
}

#microsite .imgnotch.notch-white::before {
    border-bottom: 20px solid #fff
}

#microsite .imgnotch.notch-white::after {
    border-bottom: 20px solid #fff
}

#microsite .imgnotch.notch-color-1--l2::before {
    border-bottom: 20px solid #e7eef6
}

#microsite .imgnotch.notch-color-1--l2::after {
    border-bottom: 20px solid #e7eef6
}

#microsite .imgnotch.notch-color-2--l2:before {
    border-bottom: 20px solid #e8ecef
}

#microsite .imgnotch.notch-color-2--l2:after {
    border-bottom: 20px solid #e8ecef
}

#microsite .imgnotch.notch-color-1::before {
    border-bottom: 20px solid #5b85aa
}

#microsite .imgnotch.notch-color-1::after {
    border-bottom: 20px solid #5b85aa
}

#microsite .imgnotch+section {
    padding-top: 0
}

#microsite header {
    height: -moz-fit-content;
    height: fit-content
}

#microsite .descr-wrapper {
    padding-bottom: 0;
    width: auto;
    padding-right: 0
}

@media screen and (min-width: 54rem) {
    #microsite .descr-wrapper {
        z-index: 20;
        width: 100%;
        max-width: 50vw;
        bottom: 0;
        padding-bottom: 8%
    }
}

@media screen and (min-width: 64rem) {
    #microsite .descr-wrapper {
        padding-left: 10%;
        max-width: 45vw
    }
}

@media screen and (min-width: 81rem) {
    #microsite .descr-wrapper {
        width: 50%;
        max-width: 50%;
        padding-right: 40px;
        padding-left: 10%
    }
}

@media screen and (min-width: 1600px) {
    #microsite .descr-wrapper {
        max-width: 45%
    }
}

#microsite .buehne-text {
    background-color: #5b85aa;
    max-width: 100%;
    padding: 3rem;
    position: relative;
    overflow: visible
}

@media screen and (min-width: 81rem) {
    #microsite .buehne-text {
        max-width: 700px
    }
}

#microsite .buehne-text .label-container {
    left: 0
}

#microsite .buehne-text .label-container span {
    display: flex
}

#microsite .buehne-text .button,
#microsite .buehne-text .button--solid,
#microsite .buehne-text .button--outline,
#microsite .buehne-text .button--pill,
#microsite .buehne-text .button--pill-outline {
    border: 2px solid #34597a
}

#microsite .buehne-text .button:hover,
#microsite .buehne-text .button--solid:hover,
#microsite .buehne-text .button--outline:hover,
#microsite .buehne-text .button--pill:hover,
#microsite .buehne-text .button--pill-outline:hover {
    border: 2px solid #fff
}

#microsite .microsite-header {
    max-height: none;
    height: -moz-fit-content;
    height: fit-content
}

#microsite .microsite-header .copyright-wrapper {
    height: 100%
}

#microsite .microsite-header .copyright-wrapper.verlauf {
    max-width: 1800px
}

#microsite .microsite-header .copyright-wrapper {
    width: 100%
}

#microsite .microsite-header .copyright-wrapper img {
    display: block;
    width: 100%
}

@media screen and (min-width: 64rem)and (orientation: landscape) {
    #microsite .microsite-header .copyright-wrapper {
        height: calc(100vh - 138px);
        min-height: 730px
    }
}

@media screen and (min-width: 81rem)and (orientation: landscape) {
    #microsite .microsite-header .copyright-wrapper {
        height: calc(100vh - 204px);
        min-height: 730px
    }
}

#microsite .microsite-header #video-container {
    height: 100%
}

@media screen and (min-width: 64rem) {
    #microsite .microsite-header #video-container {
        min-height: 45rem
    }
}

#microsite .microsite-header #video-container video {
    height: 100%
}

@media screen and (min-width: 64rem)and (orientation: landscape) {
    #microsite .copyright-wrapper.header-notch {
        height: calc(100vh - 118px);
        min-height: 730px
    }
}

@media screen and (min-width: 81rem)and (orientation: landscape) {
    #microsite .copyright-wrapper.header-notch {
        height: calc(100vh - 184px);
        min-height: 730px
    }
}

#microsite .badge-wrapper a {
    font-size: calc(1rem + 12*(100vw - 20rem)/(1920 - 320))
}

@media screen and (min-width: 120em) {
    #microsite .badge-wrapper a {
        font-size: 28px
    }
}

#microsite .badge-wrapper a span {
    min-width: 100px
}

.badge span {
    max-width: 250px
}

.microsite-verlauf {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5
}

.microsite-verlauf.verlauf-1 {
    background: url("../img/verlauf.png") no-repeat left center/cover
}

.microsite-verlauf.verlauf-3 {
    background: url("../img/verlauf_hi.png") no-repeat left center/cover
}

.microsite-verlauf.verlauf-4 {
    background: url("../img/verlauf_region.png") no-repeat left center/cover
}

.microsite-verlauf.verlauf-5 {
    background: url("../img/verlauf_lhh.png") no-repeat left center/cover
}

.microsite-img-container {
    z-index: 5;
    background: #d6d6d6
}

.microsite-text-container {
    z-index: 10
}

@media screen and (min-width: 64rem)and (orientation: landscape) {

    .microsite-header:has(.wifoe-textlogo),
    #microsite-header:has(.wifoe-textlogo) {
        min-height: 730px
    }
}

#microsite-header:before {
    content: "";
    background-image: linear-gradient(to right, rgb(214, 214, 214) 56%, rgba(214, 214, 214, 0) 100%);
    width: 100%;
    height: 100%;
    left: -50%;
    position: absolute
}

#microsite-header.no-gradient:before {
    display: none
}

.microsite-content .imgnotch {
    position: relative;
    z-index: 10
}

.microsite-content .imgnotch::before {
    border-bottom: 20px solid #fff;
    content: "";
    border-left: 0 solid rgba(0, 0, 0, 0);
    border-right: 37px solid rgba(0, 0, 0, 0);
    display: block;
    width: 50%;
    position: absolute;
    top: -20px;
    height: 20px
}

.microsite-content .imgnotch::after {
    border-bottom: 20px solid #fff;
    content: "";
    border-right: 0 solid rgba(0, 0, 0, 0);
    border-left: 37px solid rgba(0, 0, 0, 0);
    display: block;
    width: 50%;
    position: absolute;
    top: -20px;
    height: 20px;
    right: 0
}

.microsite-content .imgnotch.notch-white::before {
    border-bottom: 20px solid #fff
}

.microsite-content .imgnotch.notch-white::after {
    border-bottom: 20px solid #fff
}

.microsite-content .imgnotch.notch-color-1--l2::before {
    border-bottom: 20px solid #e7eef6
}

.microsite-content .imgnotch.notch-color-1--l2::after {
    border-bottom: 20px solid #e7eef6
}

.microsite-content .imgnotch.notch-color-2--l2:before {
    border-bottom: 20px solid #e8ecef
}

.microsite-content .imgnotch.notch-color-2--l2:after {
    border-bottom: 20px solid #e8ecef
}

.microsite-content .imgnotch.notch-color-1::before {
    border-bottom: 20px solid #5b85aa
}

.microsite-content .imgnotch.notch-color-1::after {
    border-bottom: 20px solid #5b85aa
}

.microsite-content .imgnotch+section {
    padding-top: 0
}

.badge-neu {
    position: absolute;
    background: url("../img/badge-neu.svg") no-repeat left center/contain;
    top: -2.5rem;
    right: -2rem;
    width: 21.91%;
    height: 100%;
    max-height: 21.91vw;
    z-index: 5
}

@media screen and (min-width: 32rem) {
    .badge-neu {
        width: 11.91%;
        max-width: 100px;
        max-height: 100px;
        right: 1rem;
        bottom: auto
    }
}

.show-more {
    text-align: center;
    display: inline-flex;
    justify-content: center;
    flex-direction: row;
    cursor: pointer
}

.show-more.msnry {
    position: absolute;
    bottom: -40px;
    right: 40%;
    width: 100%;
    left: 0
}

.show-more::before {
    content: "";
    background: url("../img/icons/loadmore.svg") no-repeat left center/contain;
    height: auto;
    width: 1.5rem;
    margin-right: .7rem
}

.show-more:hover::before {
    transform: rotate(360deg);
    transition: transform .6s ease-out
}

@media screen and (min-width: 54rem) {
    footer#footer .footer--item-2 .grd-row {
        align-items: center
    }
}

footer#footer .footer--item-2 .grd-row a {
    color: #34597a
}

footer#footer .footer--item-2 .grd-row a:hover {
    color: #5b85aa
}

.footer--item-2 {
    justify-content: space-between
}

.footer--item-2 .left {
    text-align: center;
    margin-bottom: 2rem;
    order: 2
}

.footer--item-2 .mid {
    order: 1;
    width: 100%;
    text-align: center;
    margin-bottom: 2rem
}

.footer--item-2 .right {
    text-align: right;
    order: 3
}

@media screen and (min-width: 54rem) {
    .footer--item-2 .left {
        text-align: left;
        order: 1
    }

    .footer--item-2 .left,
    .footer--item-2 .mid {
        margin-bottom: 0
    }

    .footer--item-2 .mid {
        order: 2;
        justify-content: center
    }
}

.social-links {
    overflow: visible;
    justify-content: space-between;
    position: relative;
    overflow: visible;
    display: flex;
    flex-direction: row
}

.social-link {
    height: 2rem;
    display: inline-block;
    width: 100%;
    max-width: 1.8rem
}

.social-link#logo-YouTube,
.social-link#logo-metanav-YouTube {
    background: url("../img/icons/youtube.svg") no-repeat left center/contain
}

.social-link#logo-Xing,
.social-link#logo-metanav-Xing {
    background: url("../img/icons/xing.svg") no-repeat left center/contain
}

.social-link#logo-LinkedIn,
.social-link#logo-metanav-LinkedIn {
    background: url("../img/icons/linkedin.svg") no-repeat left center/contain
}

.social-link#logo-Facebook,
.social-link#logo-metanav-Facebook {
    background: url("../img/icons/facebook.svg") no-repeat left center/contain
}

.social-link#logo-Instagram,
.social-link#logo-metanav-Instagram {
    background: url("../img/icons/insta.svg") no-repeat left center/contain
}

.social-link#logo-X,
.social-link#logo-metanav-X {
    background: url("../img/icons/x.svg") no-repeat left center/contain
}

@media screen and (min-width: 54rem) {
    .social-link {
        height: 1.7rem;
        max-width: 1.5rem;
        margin: 0 .75rem
    }

    #metanav .social-link {
        height: 18px;
        width: 19px;
        margin: 0 .5rem
    }
}

.tooltip {
    width: 100%;
    left: 0;
    right: 0;
    padding: .5rem 1rem;
    font-size: .813rem;
    display: none;
    background-color: #fff;
    outline: none;
    font-weight: 600;
    position: absolute;
    bottom: 3.6rem;
    z-index: 50;
    transition: all .2s ease-in-out
}

.tooltip.opened {
    display: flex;
    flex-direction: column;
    gap: 3px
}

#footer .tooltip {
    top: unset;
    bottom: 2.8rem
}

#footer .tooltip.opened {
    display: flex;
    flex-direction: column;
    text-align: start;
    gap: 3px
}

.tooltip .tooltip-before {
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background: inherit;
    width: 22px;
    height: 12px;
    position: absolute;
    text-align: center;
    bottom: -11px
}

.tooltip .tooltip-after {
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    background: inherit;
    width: 22px;
    height: 12px;
    bottom: -11px;
    position: absolute;
    text-align: center
}

@media screen and (min-width: 32rem) {
    .tooltip {
        padding: .5rem 1rem;
        left: auto;
        right: auto;
        width: auto;
        width: -moz-fit-content;
        width: fit-content
    }

    .tooltip#links-metanav-YouTube {
        left: 1.5rem;
        right: auto
    }

    .tooltip#links-YouTube {
        left: 2%;
        right: auto;
        transform: translate(-25%, 0)
    }

    .tooltip#links-metanav-Xing {
        left: 15%;
        right: auto
    }

    .tooltip#links-Xing {
        left: 15%;
        right: auto
    }

    .tooltip#links-LinkedIn,
    .tooltip#links-metanav-LinkedIn {
        left: 41%;
        transform: translate(-50%, 0);
        right: auto
    }

    .tooltip#links-LinkedIn {
        left: 44%
    }

    .tooltip#links-Facebook,
    .tooltip#links-metanav-Facebook {
        left: 54%;
        transform: translate(-50%, 0);
        right: auto
    }

    .tooltip#links-metanav-Instagram {
        right: 14%;
        left: auto
    }

    .tooltip#links-Instagram {
        right: 18%;
        left: auto
    }

    .tooltip#links-metanav-X {
        right: 1.4rem;
        left: auto
    }

    .tooltip#links-X {
        right: 0%;
        left: auto;
        transform: translate(2%, 0)
    }
}

@media screen and (min-width: 54rem) {
    .tooltip {
        width: auto
    }

    .tooltip#links-metanav-YouTube,
    .tooltip#links-metanav-Xing,
    .tooltip#links-metanav-LinkedIn,
    .tooltip#links-metanav-Facebook,
    .tooltip#links-metanav-Instagram,
    .tooltip#links-metanav-X {
        top: calc(100% + 1rem)
    }

    .tooltip {
        top: -3rem;
        bottom: unset
    }

    .tooltip .tooltip-before {
        clip-path: polygon(100% 100%, 0% 100%, 50% 0%);
        background: inherit;
        width: 22px;
        height: 12px;
        top: -12px;
        bottom: unset;
        position: absolute;
        text-align: center
    }
}

@media screen and (min-width: 64rem) {
    .tooltip#links-metanav-YouTube {
        left: -10px;
        right: auto
    }

    .tooltip#links-metanav-Xing {
        left: -10px;
        right: auto
    }

    .tooltip#links-metanav-Instagram {
        right: 0;
        left: auto
    }

    .tooltip#links-metanav-X {
        right: 0;
        left: auto
    }

    .tooltip#links-metanav-LinkedIn {
        left: 24%;
        transform: translate(-50%, 0);
        right: auto
    }

    #metanav .tooltip.opened {
        display: flex;
        flex-direction: column;
        gap: 3px
    }
}

@media screen and (min-width: 81rem) {
    .tooltip#links-YouTube {
        left: 7%;
        right: auto;
        transform: translate(25%, 0)
    }

    .tooltip#links-X {
        right: 19%;
        left: auto;
        transform: translate(25%, 0)
    }

    .tooltip#links-Xing {
        left: 25%;
        right: auto
    }
}

.social-links:has(.social-link:focus-within) .tooltip:has(a:focus) {
    display: flex
}

.tooltip.tip-left:after {
    left: 20px
}

.tooltip.tip-center:after {
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0
}

.tooltip.tip-right:after {
    right: 20px
}

.tooltip.tip-left:after {
    left: 20px
}

.tooltip.tip-center:after {
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0
}

.tooltip.tip-right:after {
    right: 20px
}

.tooltip a {
    color: #34597a;
    white-space: nowrap
}

.tooltip a:hover {
    color: #5b85aa
}

.color-2--l2 h4 {
    text-align: left
}

div.partnerlogos {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-evenly;
    width: 100%
}

.partnerlogos>a,
.partnerlogos>img {
    width: auto;
    text-align: center;
    margin: 1rem 0;
    padding: 0 1rem;
    max-width: 50%;
    max-height: 100px
}

@media screen and (min-width: 54rem) {

    .partnerlogos>a,
    .partnerlogos>img {
        max-width: 25%
    }
}

.partnerlogos>a,
.partnerlogos>img {
    height: auto
}

.partnerlogos>a img {
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%
}

@media screen and (min-width: 54rem) {
    .object-right.ez-embed-type-image {
        display: inline-block;
        float: right
    }
}

.red-calltoaction {
    background: #e3000f;
    color: #fff;
    display: block;
    margin-bottom: 4rem;
    text-align: center;
    width: 100%;
    padding: .5rem;
    position: relative
}

.red-calltoaction::after {
    content: "";
    clip-path: polygon(50% 100%, 0 0, 100% 0);
    shape-outside: polygon(50% 100%, 0 0, 100% 0);
    background: inherit;
    width: 32px;
    height: 12px;
    top: 100%;
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
    border: 6px solid #e3000f
}

.list-item-container {
    width: 100%;
    border-top: 1px solid #95b6d9;
    padding: 1.3rem 0;
    height: auto
}

.sciencearea-branchen {
    display: inline-flex;
    align-items: center
}

.sciencearea-branchen .branchenicon {
    width: 2rem;
    height: auto;
    margin: 0 .2rem
}

.sciencearea-branchen .branchenicon img {
    width: 100%;
    height: 100%
}

.filter-container {
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 2rem
}

.branchen-select-outer-container {
    margin: .5rem;
    width: calc(100% - 1rem)
}

.branchen-select-container {
    justify-content: space-between
}

.branchen-select-container .branchen-select {
    width: 12.5%;
    height: auto;
    position: relative
}

.branchen-select-container .unternehmensfilter-checkbox {
    position: absolute;
    z-index: -1
}

.branchen-select-container .branchen-select-icon {
    z-index: 20;
    background: #fff;
    width: 100%;
    padding: .75rem
}

.branchen-select-container .branchen-select-icon:hover {
    background: #e7eef6;
    cursor: pointer
}

.branchen-select-container .branchen-select input[type=radio]:checked+.branchen-select-icon {
    background: #e7eef6
}

.branchen-select-container label {
    hyphens: auto;
    display: flex;
    flex-direction: column;
    text-align: center;
    font-size: .8rem;
    margin: .3rem
}

.branchen-headline {
    margin-bottom: .5rem
}

#delete-branchen-wrapper {
    margin: 1.5rem 0 1rem 0
}

#delete-branchen {
    display: none;
    padding: .2em .4em .2em 1.5em;
    cursor: pointer;
    font-size: .9rem;
    background: #e7eef6 url(/standards/img/icons/cross.png) no-repeat .4em center/0.6em
}

#unternehmensliste {
    overflow: hidden
}

.schriftfarbe-blau {
    color: #6797c1
}

#vrechkatalogliste .description-row.long-text {
    position: relative;
    padding-bottom: 1.5rem
}

#vrechkatalogliste .description-row.long-text .description {
    position: relative;
    max-height: 120px;
    padding-bottom: 19px;
    overflow: hidden;
    transition: .3s ease-in-out
}

#vrechkatalogliste .description-row.long-text .description-arrow {
    background: rgba(0, 0, 0, 0) url(../img/icons/icon-arrow-down.svg) center center/contain no-repeat;
    display: block;
    width: 1rem;
    height: 1rem;
    position: absolute;
    bottom: 0rem;
    left: 50%;
    transform: translateX(-50%);
    transition: .3s ease-in-out;
    cursor: pointer
}

#vrechkatalogliste .description-row.long-text .description::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 19px;
    background: linear-gradient(0deg, white, transparent);
    opacity: 1;
    transition: .3s ease-in-out
}

#vrechkatalogliste .description-row.long-text.open .description {
    max-height: 900px
}

#vrechkatalogliste .description-row.long-text.open .description-arrow {
    transform: translateX(-50%) rotate(180deg)
}

#vrechkatalogliste .description-row.long-text.open .description::after {
    opacity: 0
}

.popup h4 {
    font-size: 17px;
    margin: .5rem 0
}

.popup p {
    margin: .5rem 0;
    font-size: 17px
}

.popup hr {
    margin: 0
}

.modal {
    z-index: 2000;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: .2s ease-in-out;
    background-color: #fff;
    width: 500px;
    max-width: 80%;
    height: -moz-fit-content;
    height: fit-content;
    max-height: 80%;
    bottom: 0;
    overflow-y: auto;
    overflow-x: hidden
}

.modal-button {
    padding: 0;
    width: 100%;
    height: 100%
}

.modal.active {
    transform: translate(-50%, -50%) scale(1)
}

.modal-header {
    padding: 10px 15px 0 15px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.modal-header .title {
    font-size: 1.25rem;
    font-weight: bold
}

.modal-header .close-button {
    text-align: end;
    width: 100%;
    padding: 0;
    cursor: pointer;
    border: none;
    outline: none;
    background: none;
    font-size: 2.25rem;
    font-weight: 400;
    line-height: 1.5rem
}

.modal-img img {
    height: auto
}

.modal-body article {
    padding: 0 1.875rem 1.875rem 1.875rem
}

#overlay {
    z-index: 1500;
    position: fixed;
    opacity: 0;
    transition: 200ms ease-in-out;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(234, 240, 247, .8);
    pointer-events: none
}

#overlay.active {
    opacity: 1;
    pointer-events: all
}

.stopScroll {
    height: 100vh;
    overflow-y: hidden
}

.extraSpace {
    padding: 0
}

@media screen and (min-width: 54rem) {
    .extraSpace {
        padding-left: 1.625rem;
        padding-right: 1.625rem
    }
}

.newsletter-kachel-links {
    display: flex;
    justify-content: center
}

.newsletter-kachel-links a {
    text-align: center;
    margin: 1rem;
    width: 12rem;
    justify-content: center;
    align-items: center
}

nav ul .hidden {
    display: none !important
}

#stoerer-wrapper {
    position: sticky;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000
}

.stoerer {
    position: absolute;
    bottom: 50px;
    display: flex;
    align-items: center;
    width: calc(100% - 3.75rem);
    right: 1.875rem;
    max-width: 570px
}

.stoerer_circle {
    position: absolute;
    left: 0;
    top: 0;
    box-shadow: -2px 0 5px rgba(0, 0, 0, .18);
    transform: translateY(-50%) rotate(5deg);
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background-color: #ef5d1e;
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2em;
    overflow: hidden;
    text-transform: uppercase
}

.stoerer_circle span {
    padding: 12px 8px;
    hyphens: auto
}

.stoerer_body {
    margin-left: 60px;
    padding: 30px 30px 30px 84px;
    background: #70b0d6 url("/standards/img/icons/cta_veranstaltungen-hi.svg") 55px 60% no-repeat;
    color: var(--white);
    align-items: center;
    height: 100%;
    overflow: hidden;
    height: auto;
    box-shadow: 0 0 5px rgba(0, 0, 0, .18)
}

.stoerer_text {
    font-size: 23px;
    line-height: 1.3em;
    align-items: center;
    font-weight: 600;
    height: 2.6em;
    overflow: hidden;
    hyphens: auto
}

.stoerer_cta {
    padding: 30px 0 0 0
}

.stoerer_btn {
    display: inline-block;
    padding: 12px 30px;
    background-color: #34597a;
    color: #fff;
    border: none;
    border-radius: 3px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    white-space: nowrap;
    transition: opacity .2s ease
}

.stoerer_btn:hover {
    opacity: .75;
    color: #fff
}

@media screen and (min-width: 570px) {
    #stoerer-wrapper {
        height: 130px
    }

    .stoerer_circle {
        top: 50%
    }

    .stoerer_body {
        padding-top: 0;
        padding-bottom: 0;
        height: 100px;
        background: #70b0d6 url("/standards/img/icons/cta_veranstaltungen-hi.svg") calc(50% + 55px) 8px no-repeat
    }

    .stoerer_cta {
        display: flex;
        align-items: flex-end;
        justify-content: center;
        padding: 30px 0 30px 30px
    }

    .stoerer_text,
    .stoerer_cta {
        flex-grow: 1;
        flex-shrink: 1;
        box-sizing: border-box;
        max-width: 50%;
        flex-basis: 50%
    }
}

@media screen and (min-width: 1024px) {
    .stoerer {
        width: auto;
        right: -20px
    }
}

.factbox--schriftfarbe-weiss {
    color: #fff
}

p:has(.factbox--schriftfarbe-weiss) {
    background: #5b85aa;
    padding: 2rem
}

.schriftfarbe-weiss {
    color: #fff
}

.text--outline--blue {
    color: inherit
}

p:has(.text--outline--blue) {
    background: #fff;
    padding: 2rem;
    border: 2px solid #5b85aa
}

.text--uppercase--typography {
    font-size: calc(1.42rem + (100vw - 20rem)/960)
}

p:has(.text--uppercase--typography) {
    text-align: center;
    padding: 2rem
}

/*# sourceMappingURL=style.min.css.map */