/* Cursor */


.mouse p {
    margin-top: 53px;
    margin-left: -48px;
    letter-spacing: 12px;
    text-indent: 12px;
    font-size: 16px;
    color: #f4f4f4;
    animation: colorText 10s ease-out infinite, nudgeText 10s ease-out infinite;
}
.mouse {
    background: #4e5559a9 linear-gradient(transparent 0%, transparent 50%, #f4f4f48e 50%, #f4f4f48e 100%);
    position: absolute;
    left: 49%;
    bottom: 0px;
    width: 29px;
    height: 44px;
    border-radius: 100px;
    background-size: 100% 200%;
    animation: colorSlide 10s linear infinite, nudgeMouse 10s ease-out infinite;
}
.mouse:before, .mouse:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.mouse:before {
    width: 24px;
    height: 41px;
    background-color: #0c1c35;
    border-radius: 100px;
}
.mouse:after {
    background-color: hwb(0 96% 4% / 0.431);
    width: 5px;
    height: 5px;
    border-radius: 100%;
    animation: trackBallSlide 10s linear infinite;
}
@keyframes colorSlide {
    0% {
        background-position: 0% 100%;
   }
    20% {
        background-position: 0% 0%;
   }
    21% {
        background-color: #4e5559;
   }
    29.99% {
        background-color: #f4f4f4;
        /* background-position: 0% 0%; */
   }
    30% {
        background-color: #4e5559;
        /* background-position: 0% 100%; */
   }
    50% {
        /* background-position: 0% 0%; */
   }
    51% {
        background-color: #4e5559;
   }
    59% {
        background-color: #f4f4f4;
        background-position: 0% 0%;
   }
    60% {
        background-color: #4e5559;
        /* background-position: 0% 100%; */
   }
    80% {
        /* background-position: 0% 0%; */
   }
    81% {
        background-color: #4e5559;
   }
    90%, 100% {
        background-color: #f4f4f4;
   }
}
@keyframes trackBallSlide {
    0% {
        opacity: 1;
        transform: scale(1) translateY(-10px);
   }
    6% {
        opacity: 1;
        transform: scale(0.9) translateY(5px);
   }
    14% {
        opacity: 0;
        transform: scale(0.4) translateY(40px);
   }
    15%, 19% {
        opacity: 0;
        transform: scale(0.4) translateY(-20px);
   }
    28%, 29.99% {
        opacity: 1;
        transform: scale(1) translateY(-20px);
   }
    30% {
        opacity: 1;
        transform: scale(1) translateY(-20px);
   }
    36% {
        opacity: 1;
        transform: scale(0.9) translateY(5px);
   }
    44% {
        opacity: 0;
        transform: scale(0.4) translateY(40px);
   }
    45%, 49% {
        opacity: 0;
        transform: scale(0.4) translateY(-20px);
   }
    58%, 59.99% {
        opacity: 1;
        transform: scale(1) translateY(-20px);
   }
    60% {
        opacity: 1;
        transform: scale(1) translateY(-20px);
   }
    66% {
        opacity: 1;
        transform: scale(0.9) translateY(5px);
   }
    74% {
        opacity: 0;
        transform: scale(0.4) translateY(40px);
   }
    75%, 79% {
        opacity: 0;
        transform: scale(0.4) translateY(-20px);
   }
    88%, 100% {
        opacity: 1;
        transform: scale(1) translateY(-20px);
   }
}
@keyframes nudgeMouse {
    0% {
        transform: translateY(0);
   }
    20% {
        transform: translateY(8px);
   }
    30% {
        transform: translateY(0);
   }
    50% {
        transform: translateY(8px);
   }
    60% {
        transform: translateY(0);
   }
    80% {
        transform: translateY(8px);
   }
    90% {
        transform: translateY(0);
   }
}
@keyframes nudgeText {
    0% {
        transform: translateY(0);
   }
    20% {
        transform: translateY(2px);
   }
    30% {
        transform: translateY(0);
   }
    50% {
        transform: translateY(2px);
   }
    60% {
        transform: translateY(0);
   }
    80% {
        transform: translateY(2px);
   }
    90% {
        transform: translateY(0);
   }
}
@keyframes colorText {
    21% {
        color: #4e5559;
   }
    30% {
        color: #f4f4f4;
   }
    51% {
        color: #4e5559;
   }
    60% {
        color: #f4f4f4;
   }
    81% {
        color: #4e5559;
   }
    90% {
        color: #f4f4f4;
   }
}
