body {
    background-color: #262626;
}

html, body {
    overflow: hidden;
    height: 100%;
    margin: 0;
}

p, h1, h2 {
    font-family: 'IBM Plex Sans', sans-serif;
    color: #d9dbde
}

a {
    color: inherit;
    text-decoration: inherit;
}

#logo-container {
    top: 50%;
    transform: translateY(50%);
}

#main-logo {
    cursor: pointer;
    max-width: 50vw;
    max-height: 50vh;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: transparent;
}

#main-logo.rotate {
    animation-name: rotate-center;
    animation-duration: 2.5s;
    animation-timing-function: ease;
    animation-iteration-count: infinite;
    animation-delay: 0s;
    animation-direction: normal;
    animation-fill-mode: none;
}

#roll-container.roll {
    animation-name: roll;
    animation-duration: 1.1s;
    animation-timing-function: linear;
    animation-iteration-count: 4;
}

#animation-container.bounce {
    animation-name: bounce-top;
    animation-duration: 0.75s;
    animation-timing-function: ease;
    animation-iteration-count: 1;
}

#animation-container.move {
    animation-name: move;
    animation-duration: 5s;
    animation-timing-function: none;
    animation-iteration-count: 1;
}

@keyframes rotate-center {
    0%{
      -webkit-transform: rotate(-15deg);
      transform: rotate(-15deg);
    }
    50%{
      -webkit-transform: rotate(15deg);
      transform: rotate(15deg);
    }
    100%{
      -webkit-transform: rotate(-15deg);
      transform: rotate(-15deg);
    }
}

@keyframes move{
    0% { 
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    50% {
        transform: translateX(120vw);
        -webkit-transform: translateX(120vw);
    }
    50.1% {
        transform: translateX(-120vw);
        -webkit-transform: translateX(-120vw);
    }
    100% {
        transform: translateX(0);
        -webkit-transform: translateX(0);
    }
}

@keyframes roll{
    0% { 
        -webkit-transform: rotate(0); 
        transform: rotate(0);
    }
    100% {
        -webkit-transform: rotate(360deg); 
        transform: rotate(360deg);
    }
}

@keyframes bounce-top {
    0%{
        -webkit-transform: translateY(-45px);
        transform: translateY(-45px);
    }
    25%{
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40%{
        -webkit-transform: translateY(-24px);
        transform: translateY(-24px);
    }
    55%{
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    65%{
        -webkit-transform: translateY(-12px);
        transform: translateY(-12px);
    }
    75%{
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    82%{
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px);
    }
    87%{
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    93%{
        -webkit-transform: translateY(-4px);
        transform: translateY(-4px);
    }
    100%{
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
