@font-face {
    font-display: swap;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('../Webfonts/montserrat-v26-latin-regular.woff2') format('woff2');
}
@font-face {
    font-display: swap;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url('../Webfonts/montserrat-v26-latin-700.woff2') format('woff2');
}


:root .landingpage,
:root .landingpage  + .msg-cookies{
    --color-primary: 210, 44, 136; /*NEU*/
    --color-secondary: 0, 0, 1; /*NEU*/
    --color-secondary-light: 210, 44, 136; /*NEU*/

    --color-font: 0, 0, 1; /*NEU*/

    --color-table-bg-tr-primary: 191, 191, 191; /*NEU*/

    --color-custom-2: 191, 191, 191; /*NEU*/
    --color-custom-3: 247, 204, 38; /*NEU*/

    --font-1: 'Montserrat';
    --font-2: 'Montserrat';
}

body .landingpage {
    font: 400 28px/1.42857 var(--font-1);
    color: rgb(var(--color-font));
}

.landingpage .text-center {
    text-align: center;
}
.landingpage .content a.link-arrow-right {
    font-weight: 700;
}

.landingpage .headline-outer b,
.landingpage .headline b {
    color: rgb(var(--color-primary));
}

.landingpage  .frame-space-after-small {
    margin-bottom: 20px;
}
.landingpage .frame-space-after-none {
    margin-bottom: 0;
}

.landingpage header.main .logo {
    left: calc(50% - 108px);
    width: 216px;
    height: 100%;
    background-image: url("../Images/bg-logo-ffh-transparent.png");
    background-position-y: center;
}
.landingpage header.main.scrolled .logo {
    left: calc(50% - 62px);
    width: 124px;
}
.landingpage .header-image {
    margin: 0;
    padding: 172px 0 76px;
    background-color: rgb(var(--color-secondary));
}
.landingpage .slogan,
.landingpage header.main .header-actions {
    display: none;
}
.landingpage header.main {
    background-color: rgb(var(--color-secondary));
}

.landingpage .headline-outer h1 {
    display: inline-block;
    margin: -45px 0 30px;
    padding: 30px 42px 22px 36px;
    font: 700 42px/1.23809 var(--font-2);
    color: inherit;
    border-radius: 0 40px 0 0;
    background-color: rgba(255,255,255,.88);
}
.landingpage .headline-outer h2 {
    display: block;
    font-size: inherit;
    border-bottom: none;
}
.landingpage .headline-outer h2 span {
    font-size: 40px;
    font-weight: 700;
}

.landingpage .frame-layout-110 {
    margin-top: -107px;
    padding: 127px 0 80px;
    color: #fff;
    background-color: rgb(var(--color-primary));
}
.landingpage .frame-layout-110 .col-xxl-10 {
    width: 100%;
}
.landingpage .frame-layout-110 .offset-xxl-1 {
    margin-left: 0;
}

.landingpage .frame-layout-120 {
    background-color: rgb(var(--color-secondary));
    color: #fff;
    padding: 80px 0 124px;
}
.landingpage .frame-layout-120 .col-xxl-10 {
    width: 100%;
}
.landingpage .frame-layout-120 .offset-xxl-1 {
    margin-left: 0;
}
.landingpage .frame-layout-120 .inner {
    /*margin: 0 -30px;*/
}
.landingpage .frame-layout-120 .headline-outer {
    margin: 0 0 30px;
}
.landingpage .frame-layout-120 h2 {
    color: #fff;
}
.landingpage .frame-layout-120 h2 span {
    font-size: 52px;
}
.landingpage .frame-layout-120 .ce-textpic {
    overflow: visible;
}
.landingpage .frame-layout-120 .ce-bodytext {
    font-size: 38px;
}
.landingpage .frame-layout-120 .ce-bodytext a {
    color: #fff;
    font-weight: 700;
}
.landingpage .content .frame-layout-120 a.link-arrow-right {
    margin: 0 0 0 52px;
}
.landingpage .content .frame-layout-120 a.link-arrow-right::before {
    top: 20px;
    left: -52px;
    width: 38px;
    height: 24px;
    background-image: url("../Images/bg-arrow-right-white.svg");
    background-size: contain;
}

.landingpage .folder .fold .fold-title {
    font-weight: 700;
}

.landingpage .infobox .infobox-content {
    color: #fff;
    background-color: rgb(var(--color-secondary));
}
.landingpage .infobox .title .headline {
    display: block;
    font-family: var(--font-1);
    line-height: 1.225;
    color: #fff;
    font-weight: 700;
    border-bottom: none;
}
.landingpage .infobox .title .headline span {
    font-size: 40px;
}
.landingpage .infobox .text p a {
    font-weight: 700;
}
.landingpage .infobox .text p a.link-arrow-right::before {
    top: 13px;
    background-image: url("../Images/bg-arrow-right-white.svg");
}
.landingpage .infobox .icon {
    opacity: .78;
}

.landingpage .image-text-teaser .text-box .title .headline {
    display: block;
    line-height: 1.23810;
    font-weight: 700;
    border-bottom: none;
}
.landingpage .image-text-teaser .text-box .title .headline span {
    font-size: 42px;
}

.landingpage .publications .bg-color .color {
    background-color: rgba(255,255,255, .81);
}
.landingpage .publications .content .title {
    margin-bottom: 60px;
    font-size: 42px;
}
.landingpage .publications .content .title .headline {
    display: block;
    line-height: 1.23810;
    font-weight: 700;
    text-align: left;
    color: rgb(var(--color-font));
    border-bottom: none;
}
.landingpage .publications .item {
    background-color: rgb(var(--color-primary));
}
.landingpage .publications .more-all {
    padding: 0 138px;
    text-align: left;
}
.landingpage .publications .more-all a {
    padding: 0 0 0 38px;
}
.landingpage .publications .more-all a::before {
    left: 0;
    background-image: url("../Images/bg-arrow-right-black.svg");
}
.landingpage .publications .more-all a span {
    border-bottom-color: rgb(var(--color-font));
}
.landingpage .publications .more-all a:hover span {
    border-bottom-color: transparent;
}

.landingpage .image-text-teaser .text-box a.link-arrow-right::before {
    top: 14px;
}

.landingpage footer.main .fold-title .logo {
    width: 142px;
    height: 70px;
    background-image: url("../Images/bg-logo-ffh-transparent.png");
}
.landingpage footer.main .fold-title .text {
    font-size: 22px;
    line-height: 1.54545;
}
.landingpage footer.main .fold-title .actions {
    font-weight: 700;
    font-size: 22px;
    color: rgb(var(--color-primary));
}
.landingpage footer.main .fold-title .actions a span {
    border-bottom-color: rgb(var(--color-primary));
}
.landingpage footer.main .fold-title .actions a:hover span {
    border-bottom-color: transparent;
}
.landingpage footer.main .fold-title .actions .footer-link::before {
    background-image: url("../Images/bg-arrow-right-magenta.svg");
}
.landingpage footer.main .fold-title .actions .do-open::before {
    background-image: url("../Images/bg-arrow2-up-magenta.svg");
}
.landingpage footer.main .fold-content .headline {
    font-size: 23px;
    font-weight: 700;
    border-bottom: none;
}
.landingpage footer.main .footer-stage .social .headline {
    font-size: 23px;
    font-weight: 700;
    color: rgb(var(--color-primary));
    border-bottom: none;
}
.landingpage footer.main .footer-stage {
    font-size: 16px;
}
.landingpage footer.main .footer-stage .sponsors .sponsor h4 {
    font-size: 10px;
}



.landingpage footer.main .footer-bottom {
    font-size: 17px;
}

.landingpage + .msg-cookies {
    font-family: var(--font-1);
}
.landingpage + .msg-cookies h2 {
    font-size: 28px;
    font-weight: 700;
}

.landingpage .juicer-feed .j-paginate {
    position: relative;
    display: block;
    width: 270px;
    padding: 20px 40px 20px 70px;
    font: 700 22px/1.42857 var(--font-1);
    border: none;
    border-radius: 0 40px 0 0;
    color: #fff;
    text-transform: none;
    background-color: rgba(var(--color-primary), 1);
}
.landingpage .juicer-feed .j-paginate::before {
    content: '';
    position: absolute;
    top: 28px;
    left: 24px;
    width: 28px;
    height: 14px;
    background: url("../Images/bg-arrow-right-white.svg") no-repeat;
    background-size: 28px auto;
    transform: rotate(90deg);
}
.landingpage .juicer-feed .j-paginate:hover {
    background-color: rgba(var(--color-font), 1);
}

@media (min-width: 992px) and (max-width:1199px) {

    .landingpage .frame-layout-120 .inner {
        margin: 0 -32px;
    }

    .box .box-layer .inner .headline {
        font-size: 32px;
    }
    .box .box-layer .inner .inner-content .layer-content {
        font-size: 22px;
    }
    .box .box-layer .inner .inner-content .layer-content .image {
        max-width: 50%;
    }
}

@media (max-width: 991px) {

    body .landingpage {
        font-size: 20px;
    }

    .landingpage .header-image {
        padding: 180px 0 40px;
    }
    .landingpage .headline-outer.h1 {
        margin: -30px 0 0;
    }
    .landingpage .headline-outer h1 {
        margin: 0 0 10px;
        padding: 16px 32px 12px 16px;
        font-size: 27px;
        border-radius: 0 40px 0 0;
    }
    .landingpage .headline-outer h2 span {
        font-size: 28px;
    }

    .landingpage .frame-layout-110 {
        margin-top: -42px;
        padding: 56px 0 40px;
    }

    .landingpage .frame-layout-120 {
        padding: 40px 0 40px;
    }
    .landingpage .frame-layout-120 .inner {
        margin: 0;
    }
    .landingpage .frame-layout-120 .ce-bodytext {
        font-size: 22px;
    }
    .landingpage .content .frame-layout-120 a.link-arrow-right::before {
        top: 10px;
        left: -38px;
        width: 28px;
        height: 14px;
    }

    .landingpage .infobox .title .headline span {
        font-size: 28px;
    }

    .landingpage .infobox .text p a.link-arrow-right::before {
        top: 9px;
    }

    .landingpage .image-text-teaser .text-box .title .headline span {
        font-size: 28px;
    }
    .image-text-teaser .text-box {
        padding: 20px;
        font-size: 22px;
    }
    .landingpage .image-text-teaser .text-box a.link-arrow-right::before {
        top: 9px;
    }

    .box .box-layer {
        padding: 40px 15px 40px;
    }
    .box .box-layer .inner {
        padding: 52px 0 40px;
        border-radius: 0 0 40px 0;
    }
    .box .box-layer .inner .inner-content {
        padding: 0 15px 0;
    }
    .box .box-layer .inner .close {
        top: 15px;
        right: 15px;
        width: 30px;
        height: 30px;
    }
    .box .box-layer .inner .close::before, .box .box-layer .inner .close::after {
        border-left-width: 3px;
    }
    .box .box-layer .inner .headline {
        margin: 0 0 24px;
        font-size: 22px;
    }
    .box .box-layer .inner .inner-content .layer-content .image {
        margin: 0 0 0 20px;
        max-width: 40%;
    }

    .landingpage .folder .fold .fold-title {
        font-size: 20px;
    }

    .landingpage .publications .content .title {
        font-size: inherit;
    }
    .landingpage .publications .content .title .headline span {
        font-size: 28px;
    }
    .landingpage .publications .more-all a {
        border-bottom: none;
    }

    .landingpage footer.main .fold-title .text {
        font-size: 16px;
    }
    .landingpage footer.main .fold-title .actions {
        font-size: 18px;
    }
    .landingpage footer.main .footer-stage .social .headline {
        font-size: 20px;
    }
    .landingpage footer.main .footer-bottom {
        font-size: 14px;
    }
}

@media (max-width: 767px) {

    .landingpage header.main .logo {
        width: 124px;
        left: calc(50% - 62px);
    }

    .landingpage .header-image {
        padding-top: 90px;
    }

    .box .box-layer .inner .inner-content .layer-content {
        /*flex-direction: column;*/
    }
    /*.box .box-layer .inner .inner-content .layer-content .image {
        max-width: unset;
        margin: 40px 0 0;
    }*/
    .box .box-layer .inner .inner-content .layer-content .image {
        margin: 0 0 0 20px;
        max-width: 40%;
    }

    .landingpage .publications .more-all {
        padding: 0;
    }
}

@media (max-width: 574px) {
    .box .box-layer .inner .inner-content .layer-content {
        display: flex;
        flex-direction: column;
    }
    .box .box-layer .inner .inner-content .layer-content .image {
        max-width: unset;
        margin: 0 0 32px;
    }
}

.landingpage footer.main .footer-stage address .address {
    margin: 0;
    font-size: 14px;
}

.landingpage footer.main .footer-stage nav.footer {
    margin: 0 30px 0 0;
}

.landingpage footer.main .footer-stage .sponsors .sponsor {
    margin: 0 34px 0 0;
}
.landingpage footer.main .footer-stage .sponsors .sponsor:first-of-type {
    margin: 0;
}
.landingpage footer.main .footer-stage nav.footer ul {
    font-size: 14px;
}
.landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(3) .sponsor-logo img {
    max-height: 65px;
    width: auto;
}
.landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(3) {
    margin: 0;
}
.landingpage footer.main .footer-stage {
    font-size: 14px;
}

.landingpage .cookie-content-placeholder h3 {
    font-weight: 700;
    border: none;
}
.landingpage .cookie-content-placeholder a.placeholder-accept-cookie {
    border-bottom-color: #000;
}
.landingpage .cookie-content-placeholder a.placeholder-accept-cookie:hover {
    border-bottom-color: transparent;
}
.landingpage .cookie-content-placeholder a.placeholder-accept-cookie::before {
    background-image: url("../Images/bg-arrow-down-black.svg");
}

@media (max-width: 1399px) and (min-width: 1200px) {
    .landingpage footer.main .footer-stage {
        font-size: 13px;
    }
    .landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(1),.landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(2) {
        margin: 0 10px 0 0;
    }
    .landingpage footer.main .footer-stage address .address {
        margin: 0 10px 0 0;
    }

    .landingpage footer.main .footer-stage .social {
        margin: 0 30px 0 0;
    }
    .landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(2) .sponsor-logo {
        width: 100%;
        height: 47px;
        background-size: contain;
    }
    .landingpage footer.main .footer-stage .sponsors .sponsor {
        width: 133px;
    }
    footer.main .footer-stage .sponsors .sponsor:nth-of-type(1) .sponsor-logo {
        width: 133px;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .landingpage footer.main .footer-stage .sponsors {
        margin: 30px;
        width: 100%;
        justify-content: center;
    }

    .landingpage footer.main .footer-stage > * {
        margin: 0 20px;
    }

    .landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(2) {
        margin: 0 30px 0 0;
    }
}
@media (max-width: 1399px){
    .landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(3) .sponsor-logo img {
        max-height: 65px;
    }
}
@media (max-width: 991px){
    .landingpage footer.main .footer-stage .sponsors .sponsor {
        margin: 0 17px 0 0;
    }
}
@media (max-width: 767px){
    .landingpage footer.main .footer-stage .sponsors .sponsor {
        margin: 15px 0;
        justify-content: center;
        max-width: 250px;
    }

    .landingpage footer.main .footer-stage .sponsors .sponsor {
        margin: 15px 0;
    }

    .landingpage footer.main .footer-stage .sponsors {
        margin: 30px 0 0;
        flex-flow: column;
        align-items: center;
        display:flex;
    }

    .landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(1),.landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(2),.landingpage footer.main .footer-stage .sponsors .sponsor:nth-of-type(3) {
        align-items: center;
        text-align: center;
        width: auto;
    }
}
@media (max-width: 1199px){
    .landingpage footer.main .footer-stage address .address {
        margin: 0 20px 0 0;
    }
}
