/**
** Footer
** This file contains the styles for the footer in the theme.
*/

footer {
    background-color: var(--ast-global-color-3);
    margin-bottom: var(--miniform-height);
}

footer a {
    text-decoration: none;
    transition: all 0.5s ease 0s;
    color: inherit;
}

footer .wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--gap-xl) + 10px);
}

footer .wrap .inner-wrap {
    max-width: 1115px;
    display: flex;
    align-items: start;
    justify-content: center;
    margin: 0 auto;
    gap: calc(var(--gap-xl) + var(--gap-s));
    padding-top: calc(var(--gap-m) + var(--gap-l));
    width: 90vw;
}

footer .wrap .inner-wrap #footer-links {
    display: flex;
    width: 255px;
    height: auto;
}

footer .footer-second-part {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
}

footer .footer-second-part .footer-mitte {
    display: flex;
    gap: 237px;
    align-items: flex-end;
}

footer .footer-second-part #footer-mitte p {
    color: var(--ast-global-color-1);
    font-family: var(--headlinefont);
    font-size: clamp(18px, calc(18px + (25 - 18) * ((100vw - 375px) / (1920 - 375))), 25px);
    font-style: normal;
    font-weight: 400;
    line-height: 1.44;
    white-space: nowrap;
}

footer .footer-second-part #footer-rechts {
    flex-direction: column;
    align-items: flex-end;
    align-items: center;
    display: flex;
    gap: 5px;
}

footer .wrap .inner-wrap #footer-rechts img {
    width: var(--h2-font-size);
    height: calc(var(--h2-font-size) * 2.25) !important;
}

footer .wrap .inner-wrap #footer-rechts p {
    color: var(--ast-global-color-0);
    font-family: var(--headlinefont);
    font-size: clamp(20px, calc(20px + (25 - 20) * ((100vw - 375px) / (1920 - 375))), 25px);
    font-style: normal;
    font-weight: 400;
    line-height: 1.44;
    white-space: nowrap;
}

footer .wrap #footer-nav {
    padding-bottom: calc(var(--gap-xl) - 10px);
    padding-top: calc(var(--gap-xl) - 10px);
}

footer .wrap #footer-nav .menu-footer-menu-englisch-container ul#menu-footer-menu-englisch,
footer .wrap #footer-nav .menu-footer-menu-english-container ul#menu-footer-menu-english,
footer .wrap #footer-nav .menu-footer-menu-container ul#menu-footer-menu {
    display: flex;
    gap: 75px;
    list-style: none;
    margin: 0 !important;
}

footer .wrap #footer-nav * {
    color: var(--ast-global-color-0);
    font-size: 0.813rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2;
    white-space: nowrap;
}

footer .wrap #footer-nav a:hover {
    color: var(--ast-global-color-1);
}

footer #footer-logos {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--ast-global-color-0);
    height: 133px;
}

footer #footer-logos .footer-logos-inner-wrapper {
    display: flex;
    gap: calc(var(--cont-gap) - 25px);
    align-items: center;
}

footer #footer-logos .footer-logos-inner-wrapper .ft-logo {
    max-width: 121px;
}

footer.site-footer#colophon {
    display: none;
}


/*------ SOCIAL SHARE -------------*/

.heateorSssSharing,
.heateorSssSharingButton {
    margin: 0;
}

.heateor_sss_sharing_container.heateor_sss_horizontal_sharing {
    margin-top: 1vw;
}

ul.heateor_sss_follow_ul li,
ul.heateor_sss_sharing_ul li {
    float: right !important;
}


/*----------------- END SOCIAL SHARE -------------*/

@media (min-width: 1920px) {
    .ft-logo {
        margin: 0 50px;
    }
}

@media (max-width: 1200px) {
    footer .wrap .inner-wrap {
        flex-direction: column;
        justify-content: center;
        width: 70vw;
    }
    #footer-links {
        width: 225px !important;
    }
}

@media (max-width: 900px) {
    #footer-nav #menu-footer-menu-englisch,
    #footer-nav #menu-footer-menu {
        gap: 50px !important;
    }
}

@media (max-width: 768px) {
    div#mobile-bar {
        display: flex;
    }
    .inner-wrap {
        align-items: center !important;
    }
    .footer-mitte {
        flex-direction: column;
        gap: 44px !important;
        align-items: center !important;
    }
    .footer-mitte #footer-mitte {
        text-align: center;
    }
    #footer-nav #menu-footer-menu-englisch,
    #footer-nav #menu-footer-menu {
        flex-direction: column;
        gap: 0 !important;
        text-align: center;
    }
    #footer-logos {
        padding-top: 50px;
        height: unset !important;
        padding-bottom: 90px;
    }
    #footer-logos .footer-logos-inner-wrapper {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 40px !important;
        row-gap: 25px !important;
        justify-items: center;
    }
    #footer-logos .footer-logos-inner-wrapper .ft-logo:nth-child(3) {
        order: 4;
    }
}

@media (max-width: 576px) {
    footer #footer-logos .footer-logos-inner-wrapper .ft-logo {
        max-width: 90px;
    }
    footer #footer-logos .footer-logos-inner-wrapper .ft-logo:nth-child(2) {
        max-width: 109px;
    }
    footer #footer-logos .footer-logos-inner-wrapper .ft-logo:nth-child(4) {
        scale: 0.9;
    }
    #footer-nav {
        padding-bottom: 50px !important;
        padding-top: 44px !important;
    }
    .inner-wrap {
        gap: 50px !important;
    }
}

@media (max-width: 420px) {
    #footer-links {
        width: 56vw !important;
        justify-content: center;
    }
    footer .wrap .inner-wrap #footer-rechts img {
        width: 6.9vw;
        height: 65px !important;
    }
    #footer .logo-luna {
        max-height: 60px !important;
    }
}

@media (max-width: 320px) {
    /*----------------- ELEMENT -------------*/
    /*----------------- END ELEMENT ---------*/
}