/* Video Loader Overlay */
.video-loader {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 25;
}

.loader-content {
    position: relative;
    width: 120px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loader-logo {
    font-size: 16px;
    font-weight: 800;
    color: #fff;
    z-index: 2;
    letter-spacing: 1px;
}

.loader-logo span {
    color: var(--accent-color);
}

.loader-circle {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    animation: rotate 2s linear infinite;
    z-index: 1;
}

.loader-circle circle {
    fill: none;
    stroke: var(--accent-color);
    stroke-width: 4;
    stroke-linecap: round;
    stroke-dasharray: 283;
    /* 2 * PI * 45 */
    stroke-dashoffset: 75;
    animation: dash 1.5s ease-in-out infinite;
}

@keyframes rotate {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes dash {
    0% {
        stroke-dashoffset: 283;
    }

    50% {
        stroke-dashoffset: 75;
    }

    100% {
        stroke-dashoffset: 283;
    }
}