#loader {
    width: 100%;
    position: absolute;
    top: calc(50% - 150px);
    margin-left: auto;
    margin-right: auto;
    max-height: 500px;
    z-index: 1;
    text-align: center;
}

#loader-image {
    max-height: 150px;
    min-height: 100px;
}

#loader-text {
    font-family: monospace;
    font-size: 14px;
    color: #111111 !important;
    z-index: 1000;
}

#loader-spinner {
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 64px;
    height: 50px;
}

#loader-spinner div {
    position: absolute;
    top: 27px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #e05887;
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
}

#loader-spinner div:nth-child(1) {
    left: 6px;
    animation: ellipsis1 0.6s infinite;
}

#loader-spinner div:nth-child(2) {
    left: 6px;
    animation: ellipsis2 0.6s infinite;
}

#loader-spinner div:nth-child(3) {
    left: 26px;
    animation: ellipsis2 0.6s infinite;
}

#loader-spinner div:nth-child(4) {
    left: 45px;
    animation: ellipsis3 0.6s infinite;
}

@keyframes ellipsis1 {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}
@keyframes ellipsis3 {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@keyframes ellipsis2 {
    0% {
        transform: translate(0, 0);
    }
    100% {
        transform: translate(19px, 0);
    }
}
