/* animations */
@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
@keyframes staggerFadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes blink {
    0% {
        opacity: 1;
    }

    50% {
        opacity: .2;
    }

    100% {
        opacity: 1;
    }
}
.spin-logo {
    animation: spin 14s linear(0, 0.0221, 0.0739, 0.1485, 0.2394, 0.3402, 0.4458, 0.5517, 0.6541, 0.7502, 0.8375, 0.9149, 0.9813, 1.0364, 1.0803, 1.1136, 1.1369, 1.1513, 1.1579, 1.1578, 1.1522, 1.1424, 1.1294, 1.1142, 1.0978, 1.081, 1.0643, 1.0485, 1.0338, 1.0205, 1.009, 0.9992, 0.9912, 0.9849, 0.9803, 0.9772, 0.9754, 0.9748, 0.9752, 0.9764, 0.9782, 0.9804, 0.9829, 0.9856, 0.9882, 0.9908, 0.9933, 0.9955, 0.9975, 0.9992, 1.0007, 1.0018, 1.0027, 1.0034, 1.0038, 1.004, 1.004, 1.0039, 1.0036, 1.0033, 1.0029, 1.0025, 1.0021, 1.0017, 1.0013, 1.0009, 1.0006, 1.0003, 1, 0.9998, 0.9996, 0.9995, 0.9994, 0.9994, 0.9994, 0.9994, 0.9994, 0.9994, 0.9995, 0.9996, 0.9996, 0.9997, 0.9998, 0.9998, 0.9999, 0.9999, 1, 1, 1, 1.0001, 1.0001, 1.0001, 1.0001, 1.0001, 1.0001, 1.0001, 1.0001, 1.0001, 1.0001, 1.0001, 1) 1,
               spin 12s linear 8s infinite;
}
.spin {
    animation: spin 12s linear infinite;
}
.bounce {
    animation: bounce 1.5s 300ms infinite alternate;
}

.stagger li {
    opacity: 0;
    transform: translateX(-100%);
    transition: transform 400ms cubic-bezier(0.75, -0.015, 0.565, 1.055),
        opacity 400ms cubic-bezier(0.75, -0.015, 0.565, 1.055);
    transition-timing-function: cubic-bezier(0.75, -0.015, 0.565, 1.055);
    transition-delay: calc(0.15s * var(--i));
}
.stagger-fade-in > * {
    opacity: 0;
    animation-name: staggerFadeIn;
    animation-duration: 800ms;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(0.75, -0.015, 0.565, 1.055);
    animation-delay: calc(0.45s * var(--i));
}

.typewrite::before {
    content: attr(data-ghost);
    display: block;
    visibility: hidden;
    height: auto;
    white-space: nowrap;
}
.typewrite {
    position: relative;
    display: inline-block;
    white-space: nowrap;
}