* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.join-logo {
    position: absolute;
    top: 40px;
    left: 40px;
    width: 100px;
    height: auto;
}

.start-background {
    height: 100vh;
    width: 100%;
    background-color: #f5f5f5;
    position: absolute;
    opacity: 0;
    animation: fadeBackground 1.6s ease-in-out;
    animation-direction: normal;
    z-index: -10;
}

.logo-animation {
    animation: slideLogo 1s ease-in-out;
    animation-direction: normal;
    z-index: 15;
}

@keyframes slideLogo {
    0% {
        width: 272px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    20% {
        width: 272px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    100% {
        width: 100px;
        top: 40px;
        left: 40px;
        height: auto;
    }
}

@keyframes fadeBackground {
    0% {
        opacity: 100%;
        z-index: 10;
    }
    50% {
        opacity: 100%;
    }
    99% {
        opacity: 0%;
        z-index: 10;
    }
    100% {
        z-index: -1;
    }
}

@media (max-width: 800px) {
    .join-logo {
        position: absolute;
        top: 15px;
        left: 15px;
        width: 60px;
        height: auto;
    }
    @keyframes slideLogo {
        0% {
            width: 180px;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }
        20% {
            width: 180px;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }
        100% {
            width: 60px;
            top: 15px;
            left: 15px;
            height: auto;
        }
    }
}