@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');
@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700&family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Noto+Serif+KR:wght@200;300;400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Saira:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url('https://cdn.jsdelivr.net/npm/galmuri@latest/dist/galmuri.css');

#site_bgm_box {
    width: 0px;
    height: 0px;
    overflow: hidden;
}

:root,
::before,
::after {
    --foreground-medium: #555;
    --background-medium: #999;

    --foreground-dark: #121212;
    --foreground-light: #fafafa;

    --background-light: #fafafa;
    --background-light-c: #fafafacc;
    --background-light-8: #fafafa88;
    --background-light-3: #fafafa33;

    --background-dark: #222;
    --background-dark-c: #222c;
    --background-dark-8: #2228;
    --background-dark-3: #2223;

    --gradient-dark: #cacacaca;
    --gradient-light: #cacaca33;

    --line-height: 1.8;
    --line-height-n: 1.15;
    --line-height-xn: 0.85;
    --font-xl: 48px;
    --font-l: 32px;
    --font-m: 24px;
    --font-ms: 16px;
    --font-s: 14px;
    --font-xs: 12px;
    --font-xxs: 10px;
}

@-webkit-keyframes flash-in-bottom {
    0% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        opacity: 0
    }

    30% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 0
    }
}

@keyframes flash-in-bottom {
    0% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        opacity: 0
    }

    30% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 0
    }
}

@-webkit-keyframes flash-in-top {
    0% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
        opacity: 0
    }

    30% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 0
    }
}

@keyframes flash-in-top {
    0% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
        opacity: 0
    }

    30% {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 0
    }
}

@-webkit-keyframes shine {
    to {
        background-position: 200% center;
    }
}

@keyframes shine {
    to {
        background-position: 200% center;
    }
}

@-webkit-keyframes tracking-in-expand {
    0% {
        letter-spacing: -.5em;
        opacity: 0
    }

    40% {
        opacity: .6
    }

    100% {
        opacity: 1
    }
}

@keyframes tracking-in-expand {
    0% {
        letter-spacing: -.5em;
        opacity: 0
    }

    40% {
        opacity: .6
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes tracking-in-contract {
    0% {
        letter-spacing: 1em;
        opacity: 0
    }

    40% {
        opacity: .6
    }

    100% {
        letter-spacing: normal;
        opacity: 1
    }
}

@keyframes tracking-in-contract {
    0% {
        letter-spacing: 1em;
        opacity: 0
    }

    40% {
        opacity: .6
    }

    100% {
        letter-spacing: normal;
        opacity: 1
    }
}

@-webkit-keyframes tracking-out-expand {
    0% {
        opacity: 1
    }

    60% {
        opacity: .8
    }

    100% {
        letter-spacing: 1em;
        opacity: 0
    }
}

@keyframes tracking-out-expand {
    0% {
        opacity: 1
    }

    60% {
        opacity: .8
    }

    100% {
        letter-spacing: 1em;
        opacity: 0
    }
}

@-webkit-keyframes focus-in-contract {
    0% {
        letter-spacing: 1em;
        -webkit-filter: blur(12px);
        filter: blur(12px);
        opacity: 0
    }

    100% {
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@keyframes focus-in-contract {
    0% {
        letter-spacing: 1em;
        -webkit-filter: blur(12px);
        filter: blur(12px);
        opacity: 0
    }

    100% {
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@-webkit-keyframes blur-out-expand {
    0% {
        -webkit-filter: blur(.01);
        filter: blur(.01)
    }

    100% {
        letter-spacing: 1em;
        -webkit-filter: blur(12px) opacity(0);
        filter: blur(12px) opacity(0)
    }
}

@keyframes blur-out-expand {
    0% {
        -webkit-filter: blur(.01);
        filter: blur(.01)
    }

    100% {
        letter-spacing: 1em;
        -webkit-filter: blur(12px) opacity(0);
        filter: blur(12px) opacity(0)
    }
}

@-webkit-keyframes kenburns-bottom {
    0% {
        -webkit-transform: scale(1) translateY(0);
        transform: scale(1) translateY(0);
        -webkit-transform-origin: 50% 84%;
        transform-origin: 50% 84%
    }

    100% {
        -webkit-transform: scale(1.1) translateY(15px);
        transform: scale(1.1) translateY(15px);
        -webkit-transform-origin: bottom;
        transform-origin: bottom
    }
}

@keyframes kenburns-bottom {
    0% {
        -webkit-transform: scale(1) translateY(0);
        transform: scale(1) translateY(0);
        -webkit-transform-origin: 50% 84%;
        transform-origin: 50% 84%
    }

    100% {
        -webkit-transform: scale(1.1) translateY(15px);
        transform: scale(1.1) translateY(15px);
        -webkit-transform-origin: bottom;
        transform-origin: bottom
    }
}

@-webkit-keyframes slide-in-left {
    0% {
        -webkit-transform: translateX(-16px);
        transform: translateX(-16px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes slide-in-left {
    0% {
        -webkit-transform: translateX(-16px);
        transform: translateX(-16px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@-webkit-keyframes slide-in-right {
    0% {
        -webkit-transform: translateX(100px);
        transform: translateX(100px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes slide-in-right {
    0% {
        -webkit-transform: translateX(100px);
        transform: translateX(100px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@-webkit-keyframes slide-in-bottom {
    0% {
        -webkit-transform: translateY(40px);
        transform: translateY(40px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes slide-in-bottom {
    0% {
        -webkit-transform: translateY(40px);
        transform: translateY(40px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes slide-in-fwd-center {
    0% {
        -webkit-transform: translateZ(-1400px);
        transform: translateZ(-1400px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 1
    }
}

@keyframes slide-in-fwd-center {
    0% {
        -webkit-transform: translateZ(-1400px);
        transform: translateZ(-1400px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 1
    }
}

@-webkit-keyframes slide-out-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(-16px);
        transform: translateX(-16px);
        opacity: 0
    }
}

@keyframes slide-out-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(-16px);
        transform: translateX(-16px);
        opacity: 0
    }
}

@-webkit-keyframes slide-out-bottom {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(16px);
        transform: translateY(16px);
        opacity: 0
    }
}

@keyframes slide-out-bottom {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(16px);
        transform: translateY(16px);
        opacity: 0
    }
}

@-webkit-keyframes slide-out-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(-16px);
        transform: translateY(-16px);
        opacity: 0
    }
}

@keyframes slide-out-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(-16px);
        transform: translateY(-16px);
        opacity: 0
    }
}

@-webkit-keyframes slide-out-top-full {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(-200%);
        transform: translateY(-200%);
        opacity: 0
    }
}

@keyframes slide-out-top-full {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(-200%);
        transform: translateY(-200%);
        opacity: 0
    }
}

@-webkit-keyframes slide-out-right {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(16px);
        transform: translateX(16px);
        opacity: 0
    }
}

@keyframes slide-out-right {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(16px);
        transform: translateX(16px);
        opacity: 0
    }
}

@-webkit-keyframes fade-out {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@keyframes fade-out {
    0% {
        opacity: 1
    }

    100% {
        opacity: 0
    }
}

@-webkit-keyframes fade-out-bottom {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        opacity: 0
    }
}

@keyframes fade-out-bottom {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        opacity: 0
    }
}

@-webkit-keyframes fade-out-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
        opacity: 0
    }
}

@keyframes fade-out-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
        opacity: 0
    }
}

@-webkit-keyframes fade-out-right {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
        opacity: 0
    }
}

@keyframes fade-out-right {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
        opacity: 0
    }
}

@-webkit-keyframes fade-out-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
        opacity: 0
    }
}

@keyframes fade-out-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
        opacity: 0
    }
}

@-webkit-keyframes fade-out-bck {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateZ(-80px);
        transform: translateZ(-80px);
        opacity: 0
    }
}

@keyframes fade-out-bck {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        opacity: 1
    }

    100% {
        -webkit-transform: translateZ(-80px);
        transform: translateZ(-80px);
        opacity: 0
    }
}

@-webkit-keyframes fade-in {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fade-in {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@-webkit-keyframes fade-in-top {
    0% {
        -webkit-transform: translateY(-16px);
        transform: translateY(-16px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes fade-in-top {
    0% {
        -webkit-transform: translateY(-16px);
        transform: translateY(-16px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes fade-in-bottom {
    0% {
        -webkit-transform: translateY(16px);
        transform: translateY(16px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes fade-in-bottom {
    0% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes fade-in-right {
    0% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes fade-in-right {
    0% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@-webkit-keyframes fade-in-left {
    0% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@keyframes fade-in-left {
    0% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1
    }
}

@-webkit-keyframes scale-up-hor-center {
    0% {
        -webkit-transform: scaleX(.1);
        transform: scaleX(.1)
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        opacity: 1;
    }
}

@keyframes scale-up-hor-center {
    0% {
        -webkit-transform: scaleX(.1);
        transform: scaleX(.1)
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        opacity: 1;
    }
}

@-webkit-keyframes scale-up {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes scale-up {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-webkit-keyframes flip-in-hor-bottom {
    0% {
        -webkit-transform: rotateX(80deg);
        transform: rotateX(80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }
}

@keyframes flip-in-hor-bottom {
    0% {
        -webkit-transform: rotateX(80deg);
        transform: rotateX(80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }
}

@-webkit-keyframes flip-in-hor-top {
    0% {
        -webkit-transform: rotateX(-80deg);
        transform: rotateX(-80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }
}

@keyframes flip-in-hor-top {
    0% {
        -webkit-transform: rotateX(-80deg);
        transform: rotateX(-80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }
}

@-webkit-keyframes flip-in-ver-right {
    0% {
        -webkit-transform: rotateY(-80deg);
        transform: rotateY(-80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }
}

@keyframes flip-in-ver-right {
    0% {
        -webkit-transform: rotateY(-80deg);
        transform: rotateY(-80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }
}

@-webkit-keyframes flip-in-ver-left {
    0% {
        -webkit-transform: rotateY(80deg);
        transform: rotateY(80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }
}

@keyframes flip-in-ver-left {
    0% {
        -webkit-transform: rotateY(80deg);
        transform: rotateY(80deg);
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }
}

@-webkit-keyframes swing-in-top-fwd {
    0% {
        -webkit-transform: rotateX(-100deg);
        transform: rotateX(-100deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0deg);
        transform: rotateX(0deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 1
    }
}

@keyframes swing-in-top-fwd {
    0% {
        -webkit-transform: rotateX(-100deg);
        transform: rotateX(-100deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0deg);
        transform: rotateX(0deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 1
    }
}

@-webkit-keyframes swing-in-top-bck {
    0% {
        -webkit-transform: rotateX(70deg);
        transform: rotateX(70deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0deg);
        transform: rotateX(0deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 1
    }
}

@keyframes swing-in-top-bck {
    0% {
        -webkit-transform: rotateX(70deg);
        transform: rotateX(70deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0deg);
        transform: rotateX(0deg);
        -webkit-transform-origin: top;
        transform-origin: top;
        opacity: 1
    }
}

@-webkit-keyframes swing-in-right-fwd {
    0% {
        -webkit-transform: rotateY(-100deg);
        transform: rotateY(-100deg);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 1
    }
}

@keyframes swing-in-right-fwd {
    0% {
        -webkit-transform: rotateY(-100deg);
        transform: rotateY(-100deg);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 1
    }
}

@-webkit-keyframes swing-in-right-bck {
    0% {
        -webkit-transform: rotateY(70deg);
        transform: rotateY(70deg);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 1
    }
}

@keyframes swing-in-right-bck {
    0% {
        -webkit-transform: rotateY(70deg);
        transform: rotateY(70deg);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: right;
        transform-origin: right;
        opacity: 1
    }
}

@-webkit-keyframes swing-in-bottom-fwd {
    0% {
        -webkit-transform: rotateX(100deg);
        transform: rotateX(100deg);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 1
    }
}

@keyframes swing-in-bottom-fwd {
    0% {
        -webkit-transform: rotateX(100deg);
        transform: rotateX(100deg);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 1
    }
}

@-webkit-keyframes swing-in-bottom-bck {
    0% {
        -webkit-transform: rotateX(-70deg);
        transform: rotateX(-70deg);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 1
    }
}

@keyframes swing-in-bottom-bck {
    0% {
        -webkit-transform: rotateX(-70deg);
        transform: rotateX(-70deg);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        -webkit-transform-origin: bottom;
        transform-origin: bottom;
        opacity: 1
    }
}

@-webkit-keyframes swing-in-left-fwd {
    0% {
        -webkit-transform: rotateY(100deg);
        transform: rotateY(100deg);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 1
    }
}

@keyframes swing-in-left-fwd {
    0% {
        -webkit-transform: rotateY(100deg);
        transform: rotateY(100deg);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 1
    }
}

@-webkit-keyframes swing-in-left-bck {
    0% {
        -webkit-transform: rotateY(-70deg);
        transform: rotateY(-70deg);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 1
    }
}

@keyframes swing-in-left-bck {
    0% {
        -webkit-transform: rotateY(-70deg);
        transform: rotateY(-70deg);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 0
    }

    100% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        -webkit-transform-origin: left;
        transform-origin: left;
        opacity: 1
    }
}

@-webkit-keyframes flip-out-hor-top {
    0% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateX(70deg);
        transform: rotateX(70deg);
        opacity: 0
    }
}

@keyframes flip-out-hor-top {
    0% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateX(70deg);
        transform: rotateX(70deg);
        opacity: 0
    }
}

@-webkit-keyframes flip-out-hor-bottom {
    0% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateX(-70deg);
        transform: rotateX(-70deg);
        opacity: 0
    }
}

@keyframes flip-out-hor-bottom {
    0% {
        -webkit-transform: rotateX(0);
        transform: rotateX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateX(-70deg);
        transform: rotateX(-70deg);
        opacity: 0
    }
}

@-webkit-keyframes flip-out-ver-left {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateY(-70deg);
        transform: rotateY(-70deg);
        opacity: 0
    }
}

@keyframes flip-out-ver-left {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateY(-70deg);
        transform: rotateY(-70deg);
        opacity: 0
    }
}

@-webkit-keyframes flip-out-ver-right {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateY(70deg);
        transform: rotateY(70deg);
        opacity: 0
    }
}

@keyframes flip-out-ver-right {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
        opacity: 1
    }

    100% {
        -webkit-transform: rotateY(70deg);
        transform: rotateY(70deg);
        opacity: 0
    }
}

@-webkit-keyframes scale-in-hor-left {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
        opacity: 1
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
        opacity: 1
    }
}

@keyframes scale-in-hor-left {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
        opacity: 1
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
        opacity: 1
    }
}

@-webkit-keyframes scale-in-hor-right {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1
    }
}

@keyframes scale-in-hor-right {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        -webkit-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
        opacity: 1
    }
}

@-webkit-keyframes scale-in-hor-center {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        opacity: 1
    }
}

@keyframes scale-in-hor-center {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
        opacity: 1
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
        opacity: 1
    }
}

@-webkit-keyframes content-tab-slide {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 0;
    }

    100% {
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px);
        opacity: 1;
    }
}

@keyframes content-tab-slide {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 0;
    }

    100% {
        -webkit-transform: translateX(-100px);
        transform: translateX(-100px);
        opacity: 1;
    }
}

@-webkit-keyframes visual-area-slide {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        -webkit-transform: translateX(320px);
        transform: translateX(320px);
    }
}

@keyframes visual-area-slide {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        -webkit-transform: translateX(320px);
        transform: translateX(320px);
    }
}

@-webkit-keyframes puff-in-center {
    0% {
        -webkit-transform: scale(2);
        transform: scale(2);
        -webkit-filter: blur(4px);
        filter: blur(4px);
        opacity: 0
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@keyframes puff-in-center {
    0% {
        -webkit-transform: scale(2);
        transform: scale(2);
        -webkit-filter: blur(4px);
        filter: blur(4px);
        opacity: 0
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-filter: blur(0);
        filter: blur(0);
        opacity: 1
    }
}

@-webkit-keyframes slide-in-top {
    0% {
        -webkit-transform: translateY(-16px);
        transform: translateY(-16px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes slide-in-top {
    0% {
        -webkit-transform: translateY(-16px);
        transform: translateY(-16px);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes slide-in-top-full {
    0% {
        -webkit-transform: translateY(-200%);
        transform: translateY(-200%);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes slide-in-top-full {
    0% {
        -webkit-transform: translateY(-200%);
        transform: translateY(-200%);
        opacity: 0
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes wobble-hor-bottom {

    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transform-origin: 50% 50%;
        transform-origin: 50% 50%
    }

    15% {
        -webkit-transform: translateX(-30px) rotate(-6deg);
        transform: translateX(-30px) rotate(-6deg)
    }

    30% {
        -webkit-transform: translateX(15px) rotate(6deg);
        transform: translateX(15px) rotate(6deg)
    }

    45% {
        -webkit-transform: translateX(-15px) rotate(-3.6deg);
        transform: translateX(-15px) rotate(-3.6deg)
    }

    60% {
        -webkit-transform: translateX(9px) rotate(2.4deg);
        transform: translateX(9px) rotate(2.4deg)
    }

    75% {
        -webkit-transform: translateX(-6px) rotate(-1.2deg);
        transform: translateX(-6px) rotate(-1.2deg)
    }
}

:root {
    --wobble-unit: .6px;
    --wooble-deg: 0.3deg;
}

@keyframes wobble-hor-bottom {

    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transform-origin: 50% 50%;
        transform-origin: 50% 50%
    }

    15% {
        -webkit-transform: translateX(calc(-10*var(--wobble-unit))) rotate(calc(-5*var(--wooble-deg)));
        transform: translateX(calc(-10*var(--wobble-unit))) rotate(calc(-5*var(--wooble-deg)));
    }

    30% {
        -webkit-transform: translateX(calc(5*var(--wobble-unit))) rotate(calc(5*var(--wooble-deg)));
        transform: translateX(calc(5*var(--wobble-unit))) rotate(calc(5*var(--wooble-deg)))
    }

    45% {
        -webkit-transform: translateX(calc(-5*var(--wobble-unit))) rotate(calc(-3*var(--wooble-deg)));
        transform: translateX(calc(-5*var(--wobble-unit))) rotate(calc(-3*var(--wooble-deg)))
    }

    60% {
        -webkit-transform: translateX(calc(3*var(--wobble-unit))) rotate(calc(2*var(--wooble-deg)));
        transform: translateX(calc(3*var(--wobble-unit))) rotate(calc(2*var(--wooble-deg)))
    }

    75% {
        -webkit-transform: translateX(calc(-2*var(--wobble-unit))) rotate(calc(-1*var(--wooble-deg)));
        transform: translateX(calc(-2*var(--wobble-unit))) rotate(calc(-1*var(--wooble-deg)))
    }
}

@keyframes ping {
    from {
        -webkit-transform: scale(0.2);
        transform: scale(0.2);
        opacity: 1;
    }

    to {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0;
    }
}

@-webkit-keyframes ping {
    from {
        -webkit-transform: scale(0.2);
        transform: scale(0.2);
        opacity: 1;
    }

    to {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0;
    }
}

@keyframes floating {
    from {
        -webkit-transform: translateY(-8px);
        transform: translateY(-8px);
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes floating {
    from {
        -webkit-transform: translateY(-8px);
        transform: translateY(-8px);
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}