/* Cursor */
.cursor_none {
    cursor: none;
    transition: all .5s ease;
}

.-color-red {
    color: #D20A0A;
}

.-color-green {
    color: #83B002;
}

.-color-accent-lilac {
    color: #1d215c;
}

.-color-black {
    color: #000;
}

.-color-accent-lilac-bg {
    background: #1d215c;
}

.-color-video-bg:before {
    color: transparent;
    border: 1px dashed #fff;
    animation: Rotate 10s infinite linear;
}

.ht-cursor.-color-video-bg:before {
    top: -40px;
    left: -40px;
    display: block;
    width: 80px;
    height: 80px;
}

.ht-cursor {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 150;
    contain: layout style size;
    pointer-events: none;
    will-change: transform;
    transition: opacity 0.3s, color 0.4s;
}

.-color-accent-lilac {
    background: var(--purple) !important;
}

.ht-cursor:before {
    content: "";
    position: absolute;
    top: -24px;
    left: -24px;
    display: block;
    width: 60px;
    height: 60px;
    transform: scale(0);
    /*background: var(--purple);*/
    border-radius: 50%;
    transition: transform 0.3s ease-in-out, opacity 0.1s;
}

.ht-cursor-text {
    position: absolute;
    top: -13px;
    left: -34px;
    width: 85px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: scale(0) rotate(10deg);
    opacity: 0;
    color: white;
    font-size: 1vw;
    /*line-height: 20px;*/
    text-align: center;
    letter-spacing: -0.01em;
    transition: opacity 0.4s, transform 0.3s;
}

@supports (mix-blend-mode: exclusion) {
    .ht-cursor.-exclusion, .ht-cursor.-opaque {
        mix-blend-mode: exclusion;
    }
}

@supports (mix-blend-mode: exclusion) {
    .ht-cursor.-exclusion:before, .ht-cursor.-opaque:before {
        background: white;
    }
}

.ht-cursor.-normal, .ht-cursor.-text {
    mix-blend-mode: normal;
}

    .ht-cursor.-normal:before,
    .ht-cursor.-text:before {
        background: var(--purple);
    }

.ht-cursor.-inverse {
    color: white;
}

.ht-cursor.-visible:before {
    transform: scale(0.2);
}

.ht-cursor.-visible.-active:before {
    transform: scale(0.23);
    transition-duration: 0.2s;
}

.ht-cursor.-pointer:before {
    transform: scale(0.15);
}

.ht-cursor.-text:before {
    opacity: 0.85;
    transform: scale(1.7);
}

.ht-cursor.-text .ht-cursor-text {
    opacity: 1;
    transform: scale(1);
}

.ht-cursor.-text.-active:before {
    transform: scale(1.6);
    transition-duration: 0.2s;
}

.ht-cursor.-opaque:before {
    transform: scale(1.32);
}

.ht-cursor.-opaque.-active:before {
    transform: scale(1.2);
}

.ht-cursor.-md:before {
    transform: scale(1.5);
}

.ht-cursor.-lg:before {
    transform: scale(2);
}

.ht-cursor.-hidden:before {
    transform: scale(0);
}
/*cursor*/
@keyframes Rotate {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
    }
}

.cursor_none {
    cursor: none !important;
}

.-color-accent-lilac-bg::before {
    background: #f4f5f8 !important;
    border: 1px solid #1f1f1f8c;
    width: 65px;
    height: 66px;
}

.-color-accent-lilac-bg .ht-cursor-text {
    color: #1f1f1f;
    width: 100px;
    left: 9px;
    top: 4px;
    transform: translate(-50%, -50%) !important;
    height: 100%;
}
