/*freispiel*/
div#zip-ai-sidebar-admin-trigger {
    display: none;
}

.page-id-25 {
    min-width: 100vw;
    min-height: 100vh;
    /* overflow: hidden; */
    background-image: url('../img/ENORM_Freispielen_Event-Hintergrund_2025.jpg');
    background-size: 100vw;
    max-width: 100%;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    gap: 100px;
    padding-top: 50px;
}

main#primary.ff-main {
    display: flex;
    flex-direction: column;
    gap: 80px;
}

#header.ff-header {
    display: flex;
    width: 100%;
    justify-content: center;
}

.ff-header-wrapper {
    display: flex;
    width: 90vw;
    justify-content: space-between;
}

.ff-date {
    display: grid;
    grid-template-columns: 1fr;
}

.ff-date>span {
    display: flex;
    justify-content: space-between;
    font-family: var(--headlinefont);
}

.ff-date span {
    width: 100%;
    font-size: clamp(32px, calc(32px + (75 - 32) * ((100vw - 375px) / (1700 - 375))), 75px);
    flex: 0;
    color: #000;
}

.ff-logo {
    max-height: 450px;
    height: 31vw;
    min-height: 170px;
}

.ff-logo img {
    width: auto;
    height: 100% !important;
}

/*heading*/
.ff-heading {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: fit-content;
    margin: 0 auto;
}

span.ff-heading-2 {
    width: 97%;
    justify-content: space-between;
    display: flex;
}

.ff-heading * {
    color: #7E4D92;
}

.ff-heading-1 {
    font-family: var(--headlinefont);
    letter-spacing: 0.1em;
    font-size: clamp(35px, calc(35px + (120 - 35) * ((100vw - 375px) / (1700 - 375))), 120px);
    font-weight: 400;
}

.ff-heading>span {
    max-width: 90vw;
    text-align: center;
}

span.ff-heading-2 * {
    font-size: clamp(20px, calc(20px + (40 - 20) * ((100vw - 375px) / (1700 - 375))), 40px);
    text-transform: lowercase;
    font-family: var(--headlinefont);
}

/*artists*/
div#artists-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    gap: 30px 25px;
    max-width: 90vw;
    margin: 0 auto;
}

div#artists-list>span {
    font-size: clamp(17px, calc(17px + (68 - 17) * ((100vw - 375px) / (1700 - 375))), 68px);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #000;
    position: relative;
}

div#artists-list>span:after {
    content: attr(data-title);
    position: absolute;
    top: 50%;
    color: #7E4D92 !important;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    transition: 0.6s ease-in-out 0s;
    width: 0%;
    white-space: nowrap;
    overflow: hidden;
    background: #000;
    height: auto !important;
    margin-top: -.02em;
}

div#artists-list>span:hover:after {
    width: 100%;
}


/*footer*/
.ff-footer-wrapper-1 {
    display: flex;
    justify-content: space-between;
    max-width: 90vw;
    margin: 0 auto;
}

.ff-footer-wrapper-1-col.ff-footer-wrapper-1-col-2 {
    max-width: clamp(30px, 38vw, calc(386px * 1.5));
}

.ff-footer-wrapper-1-col.ff-footer-wrapper-1-col-1 {
    max-width: clamp(30px, 38vw, calc(153px * 1.5));
}

footer#footer {
    display: grid;
    gap: 5vw;
    width: 100%;
    max-width: 90vw;
    margin: 0 auto;
}

.ff-footer-wrapper-1 {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    width: 100%;
}

.ff-footer-wrapper-2 * {
    color: #7E4D92;
    font-size: clamp(15px, calc(15px + (32 - 15) * ((100vw - 375px) / (1700 - 375))), 32px);

    letter-spacing: 0.25em;
}


span.ff-footer-wrapper-2-txt-1 {
    font-family: var(--headlinefont);
    display: flex;
    justify-content: space-between;
}


span.ff-footer-wrapper-2-txt-2 {
    justify-content: space-between;
    display: flex;
}

span.ff-footer-wrapper-2-txt-2 * {
    font-size: clamp(10px, calc(10px + (32 - 10) * ((100vw - 375px) / (1700 - 375))), 32px);
}

/*popup*/
div#ff-popup {
    position: fixed;
    height: 100vh;
    width: 100vw;
    background-image: url('../img/ENORM_Freispielen_Event-Hintergrund_2025.jpg');
    transition: all .5s ease 0s;
    transform: scale(0);
    background-size: 100%;
    top: 0;
}

div#ff-popup[aria-hidden="false"] {
    transform: scale(1);
}

.ff-popup__dialog {
    width: 100%;
    height: 100%;
    overflow-y: scroll;
}

.ff-popup__close {
    position: absolute;
    right: 25px;
    top: 25px;
    padding: 0 !important;
    background-color: transparent;
    border: none !important;
    height: 40px;
    width: 40px;
    display: flex;
}

.ff-popup__close span {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ff-popup__close span:before,
.ff-popup__close span:after {
    content: '';
    display: block;
    height: 3px;
    width: 100%;
    position: absolute;
    background-color: #000;
}

.ff-popup__close span:before {
    rotate: -45deg;
}

.ff-popup__close span:after {
    rotate: 45deg;
}

div#ff-popup-body {
    min-height: 100%;
    min-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    /* overflow: scroll; */
    padding: 40px 0;
}

.ff-popup-content {
    width: 90%;
    max-width: 1079px;
}

.ff-popup-content-wrapper {
    display: grid;
    grid-template-columns: 50% auto;
    gap: 5vw;
}

.ff-popup-image-wrapper {

    position: relative;
}

.ff-popup-image-wrapper:after {
    content: '';
    display: block;
    height: 89.33%;
    width: 100%;
    background-size: contain;
    background: url(../img/img-mask.svg);
    position: absolute;
    top: -4%;
    background-size: contain;
    rotate: 0deg;
    z-index: -1;
    left: -8%;
    transform: scale(1.4);
}

.ff-popup-image-wrapper-inner {
    height: 100%;
    width: 100%;
    position: relative;
    border-radius: 50%;
    overflow: hidden;
    /*
    mask-image: url(../img/img-mask.svg);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    */
}

.ff-popup-image-wrapper-inner:after {
    content: '';
    display: block;
    width: 100%;
    padding-bottom: 100%;
}

.ff-popup-image-wrapper-inner img {
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.ff-popup-social {
    display: flex;
    width: 100%;
    justify-content: center;
    gap: 10px;
    margin-top: 50px;
}

a.ff-social:before {
    content: '';
    display: block;
    height: 2rem;
    width: 2rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 5px;
    overflow: hidden;
}

a.ff-social-instagram:before {
    background-image: url(../img/instagram.svg);
}

a.ff-social-facebook:before {
    background-image: url(../img/facebook.svg);
}

a.ff-social-soundcloud:before {
    background-image: url(../img/soundcloud.svg);
}

a.ff-social-bandcamp:before {
    background-image: url(../img/bandcamp.svg);
}

a.ff-social-website:before {
    background-image: url(../img/globe.svg);
}

.ff-popup-name-wrapper {
    display: flex;

}

.ff-popup-col.ff-popup-col-2 * {
    color: #000 !important;
}

.ff-popup-name-wrapper p {
    font-family: var(--headlinefont);
    letter-spacing: 0.11em;
    font-size: 37px;
    color: #fff;
    display: flex;
    width: fit-content;
    padding: 0;
    margin: 0 !important;
}

div#footer-logo-ff {
    display: flex;
    gap: var(--gap-m);
    align-items: center;
}

.ft-logo {
    display: block;
    height: auto;
    width: auto;
}

img.image.wp-image-139.attachment-medium.size-medium {}

.ft-logo img {
    width: 100% !important;
    height: auto !important;
    max-height: 68px;
    max-width: 122px !important;
}

@media screen and (max-width: 1200px) {
    .ff-popup-content-wrapper {
        display: grid;
        grid-template-columns: 1fr;
        gap: 5vw;
    }

    .ff-popup-image-wrapper {
        position: relative;
        max-width: 680px;
        margin: 0 auto;
        width: 80%;
    }

    div#footer-logo-ff {
        flex-wrap: wrap;
        justify-content: center;
    }

    .ft-logo {
        flex-basis: 18%;
        display: flex;
        justify-content: center;
    }

    .ft-logo img {
        width: auto !important;
        height: auto !important;
        max-height: 73px;
        max-width: 122px !important;
    }

}

@media screen and (max-width: 990px) {
    .ff-footer-wrapper-2 {
        gap: 11px;
        display: grid;
    }

    span.ff-footer-wrapper-2-txt-1 {
        flex-wrap: wrap;
    }

    div#artists-list {
        gap: 22px 15px;
    }
}

@media screen and (max-width: 576px) {
    .ff-popup-name-wrapper p {
        font-size: 27px;
    }

    .ff-footer-wrapper-1 {
        flex-direction: column;
        gap: 30px;
        width: 100%;
        max-width: 239px;
    }

    .ff-footer-wrapper-1-col {
        width: 100%;
        max-width: unset !important;
    }
}