.displaynone {
    display: none !important;
}

.invisible {
    visibility: hidden;
}

.transparent {
    opacity: 0 !important;
}

.transition_fast {
    -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    transition: all 0.1s ease-out;
    animation-duration: 0.1s
}

.transition_def {
    -webkit-transition: all 0.8s ease-out;
    -moz-transition: all 0.8s ease-out;
    -o-transition: all 0.8s ease-out;
    transition: all 0.8s ease-out
}

.transition_slow {
    -webkit-transition: all 1s ease-out;
    -moz-transition: all 1s ease-out;
    -o-transition: all 1s ease-out;
    transition: all 1s ease-out
}

a:not(.simple) {
    display: inline;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    /* color: unset; */
    text-decoration: none;
    /* -webkit-transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); */
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: translateZ(0) perspective(1px);
    backface-visibility: hidden;
    z-index: 1;
    position: relative;
}

a.disabled .section {
    filter: blur(3px);
}

a.disabled:after {
    content: "Coming Soon";
    font-size: 3em;
    color: black;
    font-family: 'concourse_sc';
    font-feature-settings: 'c2sc';
    position: absolute;
    background-color: white;
    padding: 0.2em;
}

a[href]:not(.simple):hover {
    transform: scale(0.985, 0.985) perspective(1px);
}

/* ----------------------------------------------
 * Generated by Animista on 2021-3-7 14:46:36
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */
/**
 * ----------------------------------------
 * animation flip-vertical-right
 * ----------------------------------------
 */
:root {
    --animate-duration: 1s;
    --animate-delay: 1s;
    --animate-repeat: 1;
    --pastel_yellow: rgba(251, 251, 239, 1);
    --pastel_blue: rgba(239, 251, 251, 1);
    --pastel_purple: rgba(251, 239, 251, 1);
    --black: #2b2b2b;
    --highlighter_blue: rgba(139, 151, 251, 1);
    --other_black: #5b5b5b;
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-duration: var(--animate-duration);
    animation-duration: var(--animate-duration);
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both
}

.animated.infinite {
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite
}

@-webkit-keyframes image_blur {
    0% {
        -webkit-filter: blur(0px);
    }

    50% {
        -webkit-filter: blur(55px);
    }

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

@keyframes image_blur {
    0% {
        filter: blur(0px);
    }

    50% {
        filter: blur(55px);
    }

    100% {
        filter: blur(0px);
    }
}

.image_blur {
    -webkit-animation: image_blur 0.25s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: image_blur 0.25s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}

.flip-vertical-right {
    -webkit-animation: flip-vertical-right 0.25s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: flip-vertical-right 0.25s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}

@-webkit-keyframes flip-vertical-right {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }
}

@keyframes flip-vertical-right {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }
}

.flip-vertical-left {
    -webkit-animation: flip-vertical-left 0.25s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: flip-vertical-left 0.25s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}

@-webkit-keyframes flip-vertical-left {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(-180deg);
        transform: rotateY(-180deg);
    }
}

@keyframes flip-vertical-left {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(-180deg);
        transform: rotateY(-180deg);
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

.fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    50% {
        -webkit-transform: scale3d(1.25, 1.25, 1.25);
        transform: scale3d(1.25, 1.25, 1.25)
    }

    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }

    50% {
        -webkit-transform: scale3d(1.25, 1.25, 1.25);
        transform: scale3d(1.25, 1.25, 1.25)
    }

    to {
        -webkit-transform: scaleX(1);
        transform: scaleX(1)
    }
}

.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out
}

@-webkit-keyframes shakeX {
    0%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }

    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0)
    }

    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0)
    }
}

@keyframes shakeX {
    0%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }

    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0)
    }

    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0)
    }
}

.shakeX {
    -webkit-animation-name: shakeX;
    animation-name: shakeX
}

@-webkit-keyframes shakeY {
    0%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }

    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }
}

@keyframes shakeY {
    0%, to {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }

    10%, 30%, 50%, 70%, 90% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    20%, 40%, 60%, 80% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }
}

.shakeY {
    -webkit-animation-name: shakeY;
    animation-name: shakeY
}

@-webkit-keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg)
    }

    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg)
    }

    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg)
    }

    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg)
    }

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

@keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg)
    }

    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg)
    }

    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg)
    }

    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg)
    }

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

.headShake {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-name: headShake;
    animation-name: headShake
}
