*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    background:#000;
    overflow:hidden;
}

.splash-screen{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100vh;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    background:#000;
}

.logo{
    width:350px;
    max-width:80%;
    animation:logoPulse 2.5s ease-in-out infinite;
}

.loading-line{
    width:250px;
    height:3px;
    background:rgba(255,255,255,.15);
    margin-top:40px;
    overflow:hidden;
    border-radius:10px;
}

.loading-line span{
    display:block;
    width:40%;
    height:100%;
    background:#fff;

    animation:loading 1.5s linear infinite;
}

@keyframes loading{
    from{
        transform:translateX(-150%);
    }
    to{
        transform:translateX(350%);
    }
}

@keyframes logoPulse{
    0%{
        opacity:.5;
        transform:scale(0.95);
    }
    50%{
        opacity:1;
        transform:scale(1);
    }
    100%{
        opacity:.5;
        transform:scale(0.95);
    }
}