* {
    margin: 0;
    padding: 0
}

.root {
    background: white;
}

.root, canvas {
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
}

canvas {
    background: transparent !important;
}

video {
    object-fit: fill;
}

.underlay, .overlay {
    position: absolute;
    top: 0;
    left: 0;
}

.preload {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url('images/loader_background.jpg') no-repeat;
    background-size: cover;
    top: 0;
    left: 0;
}

.preload .frame_borders {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url('images/frame_borders.png') no-repeat;
    background-size: cover;
}

.preload .frame_shadow {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url('images/frame_shadow.png') no-repeat;
    background-size: cover;
}

.preload .logo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 191px;
    height: 43px;
    margin-left: -95px;
    margin-top: -40px;
    background: url('images/logo.png');
}

.preload .wheel {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70px;
    height: 70px;
    margin-left: -35px;
    margin-top: -7px;
    background: url('images/loader.png');
    -webkit-animation: rotate 1s steps(4) 0s infinite normal;
    -moz-animation: rotate 1s steps(4) 0s infinite normal;
    -o-animation: rotate 1s steps(4) 0s infinite normal;
    animation: rotate 1s steps(4) 0s infinite normal;
}

.preload .wheel_shadow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70px;
    height: 70px;
    margin-left: -35px;
    margin-top: 10px;
    background: url('images/loader_shadow.png');
    -webkit-animation: rotate 1s steps(4) 0s infinite normal;
    -moz-animation: rotate 1s steps(4) 0s infinite normal;
    -o-animation: rotate 1s steps(4) 0s infinite normal;
    animation: rotate 1s steps(4) 0s infinite normal;
}

.border {
    position: absolute;
}

.border.top, .border.bottom {
    left: 0;
    height: 1px;
    width: 100%;
}

.border.top {
    top: 0;
    border-top: 1px solid black;
}

.border.bottom {
    bottom: 0;
    border-bottom: 1px solid black;
}

.border.left, .border.right {
    top: 0;
    width: 1px;
    height: 100%;
}

.border.left {
    left: 0;
    border-left: 1px solid black;
}

.border.right {
    right: 0;
    border-right: 1px solid black;
}

@keyframes rotate {
    0% {
        transform: rotate(0deg)
    }
    50% {
        transform: rotate(180deg)
    }
    100% {
        transform: rotate(360deg)
    }
}

@-moz-keyframes rotate {
    0% {
        -moz-transform: rotate(0deg)
    }
    50% {
        -moz-transform: rotate(180deg)
    }
    100% {
        -moz-transform: rotate(360deg)
    }
}

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

@-o-keyframes rotate {
    0% {
        -o-transform: rotate(0deg)
    }
    50% {
        -o-transform: rotate(180deg)
    }
    100% {
        -o-transform: rotate(360deg)
    }
}
/*
@keyframes rotate {
    0% {
        transform: rotate(0deg)
    }
    12.5% {
        transform: rotate(45deg)
    }
    25% {
        transform: rotate(90deg)
    }
    37.5% {
        transform: rotate(135deg)
    }
    50% {
        transform: rotate(180deg)
    }
    62.5% {
        transform: rotate(225deg)
    }
    75% {
        transform: rotate(270deg)
    }
    87.5% {
        transform: rotate(315deg)
    }
    100% {
        transform: rotate(360deg)
    }
}

@-moz-keyframes rotate {
    0% {
        -moz-transform: rotate(0deg)
    }
    12.5% {
        -moz-transform: rotate(45deg)
    }
    25% {
        -moz-transform: rotate(90deg)
    }
    37.5% {
        -moz-transform: rotate(135deg)
    }
    50% {
        -moz-transform: rotate(180deg)
    }
    62.5% {
        -moz-transform: rotate(225deg)
    }
    75% {
        -moz-transform: rotate(270deg)
    }
    87.5% {
        -moz-transform: rotate(315deg)
    }
    100% {
        -moz-transform: rotate(360deg)
    }
}

@-webkit-keyframes rotate {
    0% {
        -webkit-transform: rotate(0deg)
    }
    12.5% {
        -webkit-transform: rotate(45deg)
    }
    25% {
        -webkit-transform: rotate(90deg)
    }
    37.5% {
        -webkit-transform: rotate(135deg)
    }
    50% {
        -webkit-transform: rotate(180deg)
    }
    62.5% {
        -webkit-transform: rotate(225deg)
    }
    75% {
        -webkit-transform: rotate(270deg)
    }
    87.5% {
        -webkit-transform: rotate(315deg)
    }
    100% {
        -webkit-transform: rotate(360deg)
    }
}

@-o-keyframes rotate {
    0% {
        -o-transform: rotate(0deg)
    }
    12.5% {
        -o-transform: rotate(45deg)
    }
    25% {
        -o-transform: rotate(90deg)
    }
    37.5% {
        -o-transform: rotate(135deg)
    }
    50% {
        -o-transform: rotate(180deg)
    }
    62.5% {
        -o-transform: rotate(225deg)
    }
    75% {
        -o-transform: rotate(270deg)
    }
    87.5% {
        -o-transform: rotate(315deg)
    }
    100% {
        -o-transform: rotate(360deg)
    }
}*/