:root
{
    --cursor-size: 20px;
    --cursor-hovered_size_coef: 3;
    --header-height: 40px;
    --color-main: #A6051A;
    --color-secondary: #FFEB00;
    --color-dark: #111111;
    --color-light: #FFFFFF;
}
*
{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body
{
    overflow: hidden;
    cursor: none;
}

img
{
    width: 100%;
}

.webgl
{
    position: fixed;
    top: 0;
    left: 0;
    outline: none;
}



#cursor
{
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    height: var(--cursor-size);
    width: var(--cursor-size);
    background-color: var(--color-main);
    border-radius: 50%;
    pointer-events: none;
    mix-blend-mode: difference;
    will-change: height, width;
    z-index: 8;
    transition: height .4s ease-in-out, width .3s ease-in-out, transform .1s ease-out;
}

#cursor.active
{
    display: block;
}

#cursor.hovered {
    height: calc(var(--cursor-size) * var(--cursor-hovered_size_coef));
    width: calc(var(--cursor-size) * var(--cursor-hovered_size_coef));
}


header
{
    position: absolute;
    position: absolute;
    top: 0;
    left: 0;
    height: var(--header-height);
    width: 100%;
    z-index: 5;
}

.views-list
{
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
}

.view
{
    width: calc(100% / 3);
    height: 100%;
    line-height: var(--header-height);
    cursor: none;
    font-family: Arial, Helvetica, sans-serif;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
    transition: all .4s ease-in-out;
    color: var(--color-light);
}

.view:hover, .view.active
{
    background-color: var(--color-main);
}

.loading
{
    position: absolute;
    height: 100vh;
    width: 100vw;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-color: var(--color-dark);
    z-index: 20;
    will-change: opacity;
    transition: opacity .6s ease-in-out;
}

.loading.ready
{
    opacity: 0;
}

.loading.hide
{
    display: none;
}

.loading .logo
{
    --logo-size: 36px;
    height: var(--logo-size);
    width: var(--logo-size);
    font-size: 32px;
    animation: bounce .5s cubic-bezier(0.165, 0.840, 0.440, 1.000) infinite alternate;
    animation-delay: .05s;
    will-change: transform;
}

.loading .logo img
{
    height: 100%;
    object-fit: contain;
}

.loading .letters_list
{
    margin-left: 10px;
    font-family: Helvetica, sans-serif;
    font-size: 32px;
    font-weight: bold;
    color: var(--color-light);
}

.loading .letter
{
    display: inline-block;
    text-transform: uppercase;
    animation: bounce .5s cubic-bezier(0.165, 0.840, 0.440, 1.000) infinite alternate;
}

.loading .letter:nth-child(1)
{
    animation-delay: .10s;
}

.loading .letter:nth-child(2)
{
    animation-delay: .15s;
}

.loading .letter:nth-child(3)
{
    animation-delay: .20s;
}

.loading .letter:nth-child(4)
{
    animation-delay: .25s;
}

.loading .letter:nth-child(5)
{
    animation-delay: .30s;
}

.loading .letter:nth-child(6)
{
    animation-delay: .35s;
}

.loading .letter:nth-child(7)
{
    animation-delay: .40s;
}

@keyframes bounce
{
    0%{transform: translateY(0px);}
    100% {transform: translateY(-1em);}
}

/*# sourceMappingURL=main.css.map*/