#cursor-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 90%;
    cursor: pointer;
}

#cursor-overlay:hover .cursor {
    visibility: visible;
}

.cursor {
    visibility: hidden;
    width: 180px;
    height: 180px;
    /* border: 2px solid rgb(255, 255, 255); */
    /* border-radius: 50%; */
    position: absolute;
    /* transition-duration: 200ms; */
    transition-timing-function: ease-out;
    /* animation: cursorAnim .5s infinite alternate; */
    /* pointer-events: none; */

    font-size: 2em;
    color: white;
    font-weight: 500;
    text-align: center;
    line-height: 180px;
/* 
    animation: 1.2s loading-anim cubic-bezier(.77, 0, .175, 1) infinite both;
	border-left-color: #3484b7;
	-webkit-animation: 1.2s loading-anim cubic-bezier(.77, 0, .175, 1) infinite both;
  	    animation: 1.2s loading-anim cubic-bezier(.77, 0, .175, 1) infinite both;
  	border-radius: 50%; */
}

.cursor::after {
    content: "";
    width: 180px;
    height: 180px;
    position: absolute;
    left: -2px;
    top: -2px;

    border: 2px solid rgba(255, 255, 255, 0.0);
    border-radius: 50%;
    /* position: absolute; */

    animation: 1.2s loading-anim cubic-bezier(.77, 0, .175, 1) infinite both;
	border-left-color: #3484b7;
	-webkit-animation: 1.2s loading-anim cubic-bezier(.77, 0, .175, 1) infinite both;
  	    animation: 1.2s loading-anim cubic-bezier(.77, 0, .175, 1) infinite both;
}

@keyframes cursorAnim {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(.7);
    }
}

@keyframes cursorAnim2 {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(.4);
    }
}

@keyframes cursorAnim3 {
    0% {
        transform: scale(1);
        font-size: 2em;
    }
    50% {
        transform: scale(0.8);
        font-size: 2em;
    }
    100% {
        transform: scale(1);
        font-size: 2em;
    }
}

.expand {
    animation: cursorAnim3 .5s forwards;
}

.separator {
    display: flex;
    align-items: center;
    text-align: center;
    color: white;
    font-size: 2em;
}

.separator::before, .separator::after {
    content: '';
    flex: 1;
    border-bottom: 2px solid rgba(255, 255, 255, 0.5);
}

.separator:not(:empty)::before {
    margin-right: .25em;
}

.separator:not(:empty)::after {
    margin-left: .25em;
}