@keyframes marquee {
    100% {
        transform: translate(-100%, 0);
    }
}

.general-banner:not(.footer-banner) {
    position: fixed;
    background-color: var(--backgroundcolorbanner);
    background-image: var(--backgoundimg);
    background-size: cover;
    background-repeat: no-repeat;
    left: 0;
    right: 0;
    top: 0;
    z-index: 99999;
}
.general-banner:not(.footer-banner) .wrapper {
    width: 100%;
    padding: 0 10px;
}
.general-banner:not(.footer-banner) .text-wrapper {
    color: var(--fontcolorbanner);
}
.general-banner:not(.footer-banner) .text-wrapper p {
    margin: 0;
    color: unset;
    font-size: unset;
    line-height: unset;
}
.general-banner:not(.footer-banner) .text-wrapper a {
    color: var(--linkcolor);
    text-decoration: none;
    text-transform: unset;
    padding: unset;
}
@media all and (min-width: 576px) {
    .general-banner:not(.footer-banner) .marquee-container {
        width: 100%;
        white-space: nowrap;
        overflow: hidden;
    }
    .general-banner:not(.footer-banner) .marquee-container .marquee-content {
        padding-left: 100%;
        display: inline-block;
        animation: marquee 20s linear infinite;
    }
    .general-banner:not(.footer-banner) .marquee-container .marquee-content:hover {
        animation-play-state: paused;
    }
}
@media all and (max-width: 576px) {
    .general-banner:not(.footer-banner) .marquee-container-mobile {
        width: 100%;
        white-space: nowrap;
        overflow: hidden;
    }
    .general-banner:not(.footer-banner) .marquee-container-mobile .marquee-content-mobile {
        padding-left: 100%;
        display: inline-block;
        animation: marquee 20s linear infinite;
    }
    .general-banner:not(.footer-banner) .marquee-container-mobile .marquee-content-mobile:hover {
        animation-play-state: paused;
    }
}

body.inlobby .general-banner.footer-banner {
    display: none !important;
}

.general-banner.footer-banner {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: 999;
    height: auto;
    padding: 0 !important;
    line-height: normal;
    background-color: var(--backgroundcolorbanner);
    color: var(--fontcolorbanner);
    transform: translateY(100%);
    visibility: hidden;
    pointer-events: none;
    transition: transform 0.3s ease-in-out, visibility 0s linear 0.3s;
}
@media all and (min-width: 768px) {
    .general-banner.footer-banner {
        min-height: 50px;
    }
}
.general-banner.footer-banner.fixed {
    min-height: 78px;
}
.general-banner.footer-banner .wrapper {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    height: 100%;
}
.general-banner.footer-banner .wrapper .text-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}
.general-banner.footer-banner .wrapper a {
    display: block;
    font-family: var(--fontFamily);
}
.general-banner.footer-banner .wrapper p {
    display: flex;
    flex-direction: column;
    padding: 11px;
    margin: 0;
    text-align: center;
    text-transform: uppercase;
    font-size: 9pt;
    font-family: var(--fontFamily);
}
.general-banner.footer-banner .wrapper p a {
    margin: 10px 0;
}
@media all and (min-width: 768px) {
    .general-banner.footer-banner .wrapper p {
        display: block;
        flex-direction: unset;
        padding: 0;
        font-size: 14pt;
    }
    .general-banner.footer-banner .wrapper p a {
        display: inline;
        margin-top: 0;
    }
}

body.cta-attached .general-banner.footer-banner {
    transform: translateY(0);
    visibility: visible;
    pointer-events: auto;
    transition: transform 0.3s ease-in-out, visibility 0s linear 0s;
}

.container-footer {
    padding-bottom: 78px;
}
