.flext-has-animation {
    animation-play-state: paused;
    opacity: .01
}

.flext-animated {
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-play-state: running;
    animation-timing-function: cubic-bezier(.165, .84, .44, 1);
    opacity: 1
}

.flext-animation-delay-125 {
    animation-delay: .125s
}

.flext-animation-delay-250 {
    animation-delay: .25s
}

.flext-animation-delay-375 {
    animation-delay: .375s
}

.tripp-xt-mm-posts {
    display: none
}

@media (min-width: 1024px) {
    .tripp-xt-mega-menu {
        --tripp-xt-mega-menu-posts-columns: 3
    }

    .tripp-xt-mega-menu.has-3-columns, .tripp-xt-mega-menu.has-4-columns, .tripp-xt-mega-menu.has-5-columns, .tripp-xt-mega-menu.has-6-columns {
        --tripp-xt-grid-columns: 3
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu {
        position: static
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu > .sub-menu {
        border-radius: 0;
        left: 0;
        margin-left: calc(var(--tripp-spacing-horizontal) * -1);
        margin-right: calc(var(--tripp-spacing-horizontal) * -1);
        max-width: none;
        padding-left: var(--tripp-spacing-horizontal);
        padding-right: var(--tripp-spacing-horizontal);
        right: 0;
        width: auto
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu > .sub-menu > ul {
        display: grid;
        gap: var(--tripp-grid-gap);
        grid-template-columns: repeat(var(--tripp-xt-grid-columns), minmax(10rem, 1fr))
    }

    .desktop-menu .dropdown-menu .sub-menu > .tripp-xt-mega-menu > .sub-menu > .menu-item-has-children {
        padding-left: 2rem
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu .sub-menu .sub-menu {
        border-top: none;
        box-shadow: none;
        left: 0;
        max-height: none;
        max-width: none;
        opacity: 1;
        padding: 0;
        position: relative;
        top: 0;
        transform: none;
        transition: none;
        visibility: visible
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu > .sub-menu li > a {
        padding: .5rem 0
    }

    .desktop-menu .dropdown-menu .tripp-xt-mm-wrapper > .menu-item-has-children > a, .desktop-menu .dropdown-menu .tripp-xt-mm-wrapper > .tripp-xt-mm-categories > .menu-item-has-children > a {
        font-weight: 600;
        text-transform: uppercase
    }

    .desktop-menu .dropdown-menu .tripp-xt-mm-wrapper .sub-menu .sub-menu {
        margin-left: 1rem
    }

    .desktop-menu .dropdown-menu .sub-menu .tripp-xt-mm-categories li > a > .menu-text {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: 80%
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu .sub-menu li a img {
        display: block;
        margin-bottom: .5rem
    }

    .desktop-menu .main-navigation .tripp-xt-mega-menu .sub-menu:hover > .tripp-xt-mm-wrapper .menu-item-has-children:hover a {
        opacity: 1
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-wrapper {
        align-items: center;
        display: flex;
        flex-flow: row nowrap;
        width: 100%
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-wrapper > ul {
        flex: 1 1 20%;
        max-width: 20%;
        padding-right: var(--tripp-spacing-horizontal)
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu .tripp-xt-mm-wrapper > li a:after, .desktop-menu .dropdown-menu .tripp-xt-mega-menu .tripp-xt-mm-wrapper > li a:before {
        display: none
    }

    .desktop-menu .tripp-xt-mm-has-posts .sub-menu .tripp-xt-mm-categories {
        padding-right: 0
    }

    .desktop-menu .sub-menu:hover .tripp-xt-mm-categories > li.is-visible > a {
        opacity: 1
    }

    .desktop-menu .tripp-xt-mm-categories > li > a:after, .desktop-menu .tripp-xt-mm-categories > li > a:before {
        background: rgba(var(--tripp-color-on-surface-rgb), .48);
        content: "";
        display: inline-block;
        height: 1px;
        position: absolute;
        right: 0;
        top: 50%;
        transform: rotate(90deg) translate3d(3px, -50%, 0);
        transform-origin: right top;
        transition: transform .3s, width .3s;
        width: 6px
    }

    .desktop-menu .tripp-xt-mm-categories > li > a:after {
        transform: translate3d(3px, -50%, 0)
    }

    .desktop-menu .tripp-xt-mm-categories > li.is-visible > a:before {
        background: rgb(var(--tripp-color-on-surface-rgb));
        transform: rotate(315deg) translate3d(2px, 1px, 0)
    }

    .desktop-menu .tripp-xt-mm-categories > li.is-visible > a:after {
        background: rgb(var(--tripp-color-on-surface-rgb));
        transform: rotate(-135deg) translate3d(4px, 1px, 0)
    }

    .desktop-menu .tripp-xt-mm-has-posts .sub-menu .tripp-xt-mm-posts {
        display: block;
        flex: 1 1 80%;
        max-width: 80%;
        min-height: 25rem;
        padding-left: var(--tripp-spacing-md);
        position: relative;
        width: 100%
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content {
        bottom: 0;
        display: grid;
        gap: var(--tripp-grid-gap);
        grid-template-columns: repeat(var(--tripp-xt-mega-menu-posts-columns), minmax(10rem, 1fr));
        left: 0;
        opacity: 0;
        padding: 1rem 0;
        position: absolute;
        right: 0;
        top: 0;
        visibility: hidden;
        z-index: 0
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.content-active {
        opacity: 1;
        position: relative;
        visibility: visible
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry {
        background: #282828;
        border-radius: 1.5rem;
        display: flex;
        flex-flow: column nowrap;
        height: 25rem;
        justify-content: flex-start;
        overflow: hidden;
        transform: translateZ(0);
        transition: opacity .3s;
        width: 100%
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.is-loading .entry {
        display: flex;
        flex-direction: column;
        min-height: 25rem
    }

    .desktop-menu.has-scheme-dark .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry {
        background: #191919
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry.mega-menu-item-placeholder {
        background: transparent
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry.no-posts-found {
        background: rgba(var(--tripp-color-on-surface-rgb), .04);
        display: flex;
        flex-flow: column nowrap;
        justify-content: center;
        text-align: center
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry:last-child {
        padding-right: 0
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.content-active .entry, .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.content-active .entry a {
        color: inherit;
        opacity: 1
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.content-active:hover .entry {
        opacity: .5
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.content-active:hover .entry:hover {
        opacity: 1
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry-media {
        border-radius: 0;
        margin: 0
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .flext-media-link {
        position: relative
    }

    .desktop-menu .tripp-xt-mm-has-posts .flext-featured-media .flext-media-button {
        font-size: 1.6rem;
        height: 3rem;
        margin: 1.5rem;
        right: 0;
        top: 0;
        width: 3rem
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .flext-media-player .flext-media-controls button {
        height: 3.5rem;
        width: 3.5rem
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .has-post-thumbnail .flext-quick-view-button {
        height: 3rem;
        left: 1rem;
        top: 1rem;
        width: 3rem
    }

    @keyframes tripp-xt-mm-posts-loading-placeholder {
        0% {
            background-position: 100% 0
        }
        to {
            background-position: -100% 0
        }
    }.desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry-header {
         bottom: 1.5rem;
         color: inherit;
         min-height: 2rem;
         position: absolute
     }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry-title {
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        color: rgb(var(--tripp-color-white-rgb));
        display: -webkit-box;
        font-size: 1.6rem;
        margin: 0 1.8rem;
        overflow: hidden
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.is-loading .entry .entry-media {
        flex: 1 1 auto;
        height: 100%
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content.is-loading .entry .entry-media:after {
        animation: tripp-xt-mm-posts-loading-placeholder 1.25s linear infinite forwards;
        background: rgba(var(--tripp-color-on-surface-rgb), .08);
        background: linear-gradient(to right, rgba(var(--tripp-color-on-surface-rgb), .06) 8%, rgba(var(--tripp-color-on-surface-rgb), .08) 38%, rgba(var(--tripp-color-on-surface-rgb), .06) 54%);
        background-size: 200% 100%;
        border-radius: 1rem;
        bottom: 0;
        content: "";
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 99
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .flext-media-link:before, .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .flext-slide:before, .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .post-thumbnail a:before {
        background: linear-gradient(0deg, #282828 0, rgba(40, 40, 40, .738) 19%, rgba(40, 40, 40, .541) 34%, rgba(40, 40, 40, .382) 47%, rgba(40, 40, 40, .278) 56.5%, rgba(40, 40, 40, .194) 65%, rgba(40, 40, 40, .126) 73%, rgba(40, 40, 40, .075) 80.2%, rgba(40, 40, 40, .042) 86.1%, rgba(40, 40, 40, .021) 91%, rgba(40, 40, 40, .008) 95.2%, rgba(40, 40, 40, .002) 98.2%, transparent);
        bottom: 0;
        content: "";
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 3
    }

    .desktop-menu.has-scheme-dark .tripp-xt-mm-has-posts .tripp-xt-mm-content .flext-media-link:before, .desktop-menu.has-scheme-dark .tripp-xt-mm-has-posts .tripp-xt-mm-content .flext-slide:before, .desktop-menu.has-scheme-dark .tripp-xt-mm-has-posts .tripp-xt-mm-content .post-thumbnail a:before {
        background: linear-gradient(0deg, #191919 0, rgba(25, 25, 25, .738) 19%, rgba(25, 25, 25, .541) 34%, rgba(25, 25, 25, .382) 47%, rgba(25, 25, 25, .278) 56.5%, rgba(25, 25, 25, .194) 65%, rgba(25, 25, 25, .126) 73%, rgba(25, 25, 25, .075) 80.2%, rgba(25, 25, 25, .042) 86.1%, rgba(25, 25, 25, .021) 91%, rgba(25, 25, 25, .008) 95.2%, rgba(25, 25, 25, .002) 98.2%, transparent)
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry:hover .flext-media-link:before, .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry:hover .post-thumbnail a:before {
        top: 60%
    }

    .desktop-menu .tripp-xt-mm-has-posts .entry-media .flext-post-gallery .total-images {
        right: 1.8rem;
        top: 1.8rem
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry img {
        transition: transform .8s var(--tripp-transition-ease)
    }

    .desktop-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content .entry:hover img {
        transform: scale(1.04) translateZ(0)
    }

    .desktop-menu .tripp-xt-mm-has-posts .post-thumbnail a:hover .flext-featured-image-rollover {
        opacity: 1
    }

    .desktop-menu.full-menu .tripp-xt-mm-has-posts .tripp-xt-mm-categories {
        flex: 1 1 50%;
        height: 100%;
        max-width: 50%;
        padding-right: var(--tripp-spacing-horizontal)
    }

    .desktop-menu.full-menu .tripp-xt-mm-has-posts .tripp-xt-mm-posts {
        flex: 1 1 50%;
        height: 100%;
        max-width: 50%
    }

    .desktop-menu.full-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content {
        --tripp-xt-mega-menu-posts-columns: 1
    }
}

@media (min-width: 1200px) {
    .tripp-xt-mega-menu.has-4-columns, .tripp-xt-mega-menu.has-5-columns, .tripp-xt-mega-menu.has-6-columns {
        --tripp-xt-grid-columns: 4
    }

    .desktop-menu .main-header:not(.is-fullwidth-menu) .dropdown-menu .tripp-xt-mega-menu > .sub-menu {
        margin-left: calc((100vw - var(--tripp-wide-width)) / 2 * -1);
        margin-right: calc((100vw - var(--tripp-wide-width)) / 2 * -1)
    }

    .desktop-menu .dropdown-menu li.tripp-xt-mm-has-posts > .sub-menu > ul > li > a {
        padding: .8rem 0
    }
}

@media (min-width: 1400px) {
    .tripp-xt-mega-menu {
        --tripp-xt-mega-menu-posts-columns: 4
    }

    .tripp-xt-mega-menu.has-5-columns, .tripp-xt-mega-menu.has-6-columns {
        --tripp-xt-grid-columns: 5
    }

    .desktop-menu .dropdown-menu .tripp-xt-mega-menu .tripp-xt-mm-wrapper {
        margin: auto;
        max-width: var(--tripp-wide-width)
    }

    .desktop-menu .main-menu.menu-full-width .tripp-xt-mega-menu .tripp-xt-mm-wrapper {
        max-width: none
    }

    .desktop-menu .main-menu.menu-full-width .tripp-xt-mm-has-posts .tripp-xt-mm-content {
        --tripp-xt-mega-menu-posts-columns: 5
    }
}

@media (min-width: 1800px) {
    .tripp-xt-mega-menu.has-6-columns {
        --tripp-xt-grid-columns: 6
    }

    .desktop-menu .main-menu.menu-full-width .tripp-xt-mm-wrapper > ul {
        flex: 1 1 15%;
        max-width: 15%
    }

    .desktop-menu .main-menu.menu-full-width .tripp-xt-mm-wrapper .tripp-xt-mm-posts {
        flex: 1 1 85%;
        max-width: 85%
    }

    .desktop-menu.full-menu .tripp-xt-mm-has-posts .tripp-xt-mm-categories {
        flex: 1 1 30%;
        max-width: 30%
    }

    .desktop-menu.full-menu .tripp-xt-mm-has-posts .tripp-xt-mm-posts {
        flex: 1 1 70%;
        max-width: 70%
    }

    .desktop-menu.full-menu .tripp-xt-mm-has-posts .tripp-xt-mm-content {
        --tripp-xt-mega-menu-posts-columns: 2
    }
}

.flext-animation-delay-500 {
    animation-delay: .5s
}

.flext-animation-delay-625 {
    animation-delay: .625s
}

.flext-animation-delay-750 {
    animation-delay: .75s
}

.flext-animation-delay-875 {
    animation-delay: .875s
}

.flext-animation-delay-1000 {
    animation-delay: 1s
}

.flext-animation-delay-1125 {
    animation-delay: 1.125s
}

.flext-animation-delay-1250 {
    animation-delay: 1.25s
}

.flext-animation-delay-1375 {
    animation-delay: 1.375s
}

.flext-animation-delay-1500 {
    animation-delay: 1.5s
}

.flext-animation-delay-1625 {
    animation-delay: 1.625s
}

.flext-animation-delay-1750 {
    animation-delay: 1.75s
}

.flext-animation-delay-1875 {
    animation-delay: 1.875s
}

.flext-animation-delay-2000 {
    animation-delay: 2s
}

@keyframes flext-fade-in {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

.flext-animation-fade-in.flext-animated {
    animation-name: flext-fade-in
}

@keyframes flext-fade-up {
    0% {
        opacity: 0;
        transform: translateY(7rem)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.flext-animation-fade-up.flext-animated {
    animation-name: flext-fade-up;
    transform-origin: 50% 0
}

@keyframes flext-fade-down {
    0% {
        opacity: 0;
        transform: translateY(-7rem)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.flext-animation-fade-down.flext-animated {
    animation-name: flext-fade-down;
    transform-origin: 50% 100%
}

@keyframes flext-fade-left {
    0% {
        opacity: 0;
        transform: translateX(-7rem)
    }
    to {
        opacity: 1;
        transform: translateX(0)
    }
}

.flext-animation-fade-left.flext-animated {
    animation-name: flext-fade-left;
    transform-origin: 50% 0
}

@keyframes flext-fade-right {
    0% {
        opacity: 0;
        transform: translateX(7rem)
    }
    to {
        opacity: 1;
        transform: translateX(0)
    }
}

.flext-animation-fade-right.flext-animated {
    animation-name: flext-fade-right;
    transform-origin: 50% 0
}

@keyframes flext-elastic-in-up {
    0% {
        opacity: 0;
        transform: translateY(7rem) scaleY(1.35)
    }
    to {
        opacity: 1;
        transform: translateY(0) scaleY(1)
    }
}

.flext-animation-elastic-in-up.flext-animated {
    animation-name: flext-elastic-in-up;
    transform-origin: 50% 0
}

@keyframes flext-elastic-in-down {
    0% {
        opacity: 0;
        transform: translateY(-7rem) scaleY(1.35)
    }
    to {
        opacity: 1;
        transform: translateY(0) scaleY(1)
    }
}

.flext-animation-elastic-in-down.flext-animated {
    animation-name: flext-elastic-in-down;
    transform-origin: 50% 100%
}

@keyframes flext-elastic-in-left {
    0% {
        opacity: 0;
        transform: translateX(-7rem) scaleX(1.35)
    }
    to {
        opacity: 1;
        transform: translateX(0) scaleX(1)
    }
}

.flext-animation-elastic-in-left.flext-animated {
    animation-name: flext-elastic-in-left;
    transform-origin: 100% 50%
}

@keyframes flext-elastic-in-right {
    0% {
        opacity: 0;
        transform: translateX(7rem) scaleX(1.35)
    }
    to {
        opacity: 1;
        transform: translateX(0) scaleX(1)
    }
}

.flext-animation-elastic-in-right.flext-animated {
    animation-name: flext-elastic-in-right;
    transform-origin: 0 50%
}

@keyframes flext-zoom-in {
    0% {
        opacity: 0;
        transform: scale(0)
    }
    to {
        opacity: 1;
        transform: scale(1)
    }
}

.flext-animation-zoom-in.flext-animated {
    animation-name: flext-zoom-in;
    transform-origin: 50% 50%
}

@keyframes flext-zoom-in-up {
    0% {
        opacity: 0;
        transform: translateY(30rem) scale(0)
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1)
    }
}

.flext-animation-zoom-in-up.flext-animated {
    animation-name: flext-zoom-in-up;
    transform-origin: 50% 100%
}

@keyframes flext-zoom-in-down {
    0% {
        opacity: 0;
        transform: translateY(-30rem) scale(0)
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1)
    }
}

.flext-animation-zoom-in-down.flext-animated {
    animation-name: flext-zoom-in-down;
    transform-origin: 50% 0
}

@keyframes flext-zoom-in-left {
    0% {
        opacity: 0;
        transform: translateX(-15rem) scale(0)
    }
    to {
        opacity: 1;
        transform: translateX(0) scale(1)
    }
}

.flext-animation-zoom-in-left.flext-animated {
    animation-name: flext-zoom-in-left;
    transform-origin: 0 50%
}

@keyframes flext-zoom-in-right {
    0% {
        opacity: 0;
        transform: translateX(15rem) scale(0)
    }
    to {
        opacity: 1;
        transform: translateX(0) scale(1)
    }
}

.flext-animation-zoom-in-right.flext-animated {
    animation-name: flext-zoom-in-right;
    transform-origin: 100% 50%
}

@keyframes flext-stretch-in-left {
    0% {
        transform: scaleX(0);
        transform-origin: center left
    }
    to {
        transform: scaleX(1);
        transform-origin: center left
    }
}

.flext-animation-stretch-in-left.flext-animated {
    animation-name: flext-stretch-in-left
}

@keyframes flext-stretch-in-right {
    0% {
        transform: scaleX(0);
        transform-origin: center right
    }
    to {
        transform: scaleX(1);
        transform-origin: center right
    }
}

.flext-animation-stretch-in-right.flext-animated {
    animation-name: flext-stretch-in-right
}

@keyframes flext-rotate-in-up-left {
    0% {
        opacity: 0;
        transform: rotate(10deg) scaleY(.5) translateY(10px)
    }
    to {
        opacity: 1;
        transform: scaleX(0deg) scale(0) translate(0)
    }
}

.flext-animation-rotate-in-up-left.flext-animated {
    animation-name: flext-rotate-in-up-left;
    transform-origin: 0 0
}

@keyframes flext-rotate-in-up-right {
    0% {
        opacity: 0;
        transform: rotate(-10deg) scaleY(.5) translateY(10px)
    }
    to {
        opacity: 1;
        transform: scaleX(0deg) scale(0) translate(0)
    }
}

.flext-animation-rotate-in-up-right.flext-animated {
    animation-name: flext-rotate-in-up-right;
    transform-origin: 100% 0
}

@keyframes flext-flip-in-from-top {
    0% {
        opacity: 0;
        transform: perspective(1000px) translate3d(0, -130%, 0) rotateX(40deg)
    }
    20% {
        opacity: 1
    }
    to {
        transform: perspective(1000px) translateZ(0) rotateX(0)
    }
}

.flext-animation-flip-in-from-top.flext-animated {
    animation-duration: 1.4s;
    animation-name: flext-flip-in-from-top
}

@keyframes flext-flip-in-from-bottom {
    0% {
        opacity: 0;
        transform: perspective(1000px) translate3d(0, 130%, 0) rotateX(-40deg)
    }
    20% {
        opacity: 1
    }
    to {
        transform: perspective(1000px) translateZ(0) rotateX(0)
    }
}

.flext-animation-flip-in-from-bottom.flext-animated {
    animation-duration: 1.4s;
    animation-name: flext-flip-in-from-bottom;
    transform-style: preserve-3d
}

@keyframes flext-slide-back {
    0% {
        -webkit-clip-path: inset(0 0 99% 0);
        clip-path: inset(0 0 99% 0);
        transform: scale(1.4)
    }
    60% {
        -webkit-clip-path: inset(-5% -5% -5% -5%);
        clip-path: inset(-5% -5% -5% -5%)
    }
    to {
        -webkit-clip-path: none;
        clip-path: none;
        transform: scale(1)
    }
}

.flext-animation-slide-back.flext-animated {
    animation-duration: 2s;
    animation-name: flext-slide-back
}

@keyframes flext-fly-in {
    0% {
        opacity: 0;
        transform: scale(1.4)
    }
    to {
        opacity: 1;
        transform: scale(1)
    }
}

.flext-animation-fly-in.flext-animated {
    animation-duration: 2s;
    animation-name: flext-fly-in
}

@keyframes flext-reveal {
    0% {
        -webkit-mask-image: linear-gradient(315deg, transparent 25%, #000 75%);
        mask-image: linear-gradient(315deg, transparent 25%, #000 75%);
        -webkit-mask-position: 100%;
        mask-position: 100%;
        -webkit-mask-size: 1000% 1000%;
        mask-size: 1000% 1000%;
        opacity: 1
    }
    to {
        -webkit-mask-image: linear-gradient(315deg, #0000 25%, #000 75%);
        mask-image: linear-gradient(315deg, #0000 25%, #000 75%);
        -webkit-mask-position: 0;
        mask-position: 0;
        -webkit-mask-size: 1000% 1000%;
        mask-size: 1000% 1000%;
        opacity: 1
    }
}

.flext-animation-reveal.flext-animated {
    animation-duration: 2s;
    animation-name: flext-reveal;
    -webkit-mask-size: 1000% 1000%;
    mask-size: 1000% 1000%
}

@keyframes flext-swing {
    0% {
        transform: rotate(-15deg)
    }
    5% {
        transform: rotate(25deg)
    }
    10% {
        transform: rotate(-10deg)
    }
    40% {
        transform: rotate(380deg)
    }
    50% {
        transform: rotate(330deg)
    }
    55% {
        transform: rotate(370deg)
    }
    80% {
        transform: rotate(-20deg)
    }
    90% {
        transform: rotate(30deg)
    }
    to {
        transform: rotate(-15deg)
    }
}

.flext-animation-swing.flext-animated {
    animation-direction: alternate;
    animation-duration: 5s;
    animation-iteration-count: infinite;
    animation-name: flext-swing;
    animation-timing-function: cubic-bezier(.455, .03, .515, .955);
    transform-origin: center
}

@keyframes flext-rotate {
    0% {
        transform: rotate(0deg)
    }
    to {
        transform: rotate(-1turn)
    }
}

.flext-animation-rotate.flext-animated > * {
    animation-duration: 20s;
    animation-iteration-count: infinite;
    animation-name: flext-rotate;
    animation-timing-function: linear;
    transform-origin: center
}

.flext-has-highlight {
    --flext-highlight-color: #000;
    background-color: transparent;
    display: inline-block;
    position: relative;
    z-index: 1
}

.flext-has-highlight:before {
    content: "";
    display: inline-block;
    opacity: .7;
    position: absolute;
    z-index: -1
}

.flext-has-highlight.flext-is-style-underline {
    padding-bottom: .25rem
}

.flext-has-highlight.flext-is-style-underline:before {
    border-radius: .2em 0 0 0;
    border-top: 2px solid var(--flext-highlight-color);
    bottom: -.25rem;
    height: 1rem;
    left: 0;
    transform: rotate(-2deg);
    transform-origin: right top;
    transition: width .25s ease-in .3s;
    width: 0
}

.flext-has-highlight.flext-is-style-underline.flext-animated:before {
    width: 100%
}

.flext-has-highlight.flext-is-style-underline:after {
    border-left: 2px solid transparent;
    border-radius: .1em 0 0 .4em;
    bottom: -.25rem;
    content: "";
    height: 1rem;
    opacity: .7;
    position: absolute;
    right: -1rem;
    transform: rotate(75deg);
    transform-origin: left top;
    transition: border-left-color .1s ease-out .6s;
    width: 1rem;
    z-index: -1
}

.flext-has-highlight.flext-is-style-underline.flext-animated:after {
    border-left-color: var(--flext-highlight-color)
}

.flext-has-highlight.flext-is-style-strikethrough {
    padding-bottom: .25rem
}

.flext-has-highlight.flext-is-style-strikethrough:before {
    background: var(--flext-highlight-color);
    border-radius: .36em 0;
    bottom: .25em;
    height: .3em;
    left: 0;
    transform: rotate(-1deg);
    transition: width .25s ease-in .3s;
    width: 0
}

.flext-has-highlight.flext-is-style-strikethrough.flext-animated:before {
    width: 100%
}

.flext-has-highlight.flext-is-style-rectangle {
    --flext-rec-clip-path: min(15%, 15px);
    padding: .25rem
}

.flext-has-highlight.flext-is-style-rectangle:before {
    border: 2px solid var(--flext-highlight-color);
    border-radius: 255px 15px 255px 15px/15px 255px 15px 255px;
    bottom: 0;
    -webkit-clip-path: inset(100%);
    clip-path: inset(100%);
    left: -.25rem;
    right: -.25rem;
    top: 0
}

.flext-has-highlight.flext-is-style-rectangle.flext-animated:before {
    animation: flext-rectangle-draw 1s ease .3s forwards
}

@keyframes flext-rectangle-draw {
    0% {
        -webkit-clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0);
        clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0)
    }
    0.1% {
        -webkit-clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 0, 0 var(--flext-rec-clip-path), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 0, 0 0, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)));
        clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 0, 0 var(--flext-rec-clip-path), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 0, 0 0, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)))
    }
    23.9% {
        -webkit-clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) 0, 100% 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)));
        clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) 0, 100% 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)))
    }
    50% {
        -webkit-clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)));
        clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)))
    }
    73.9% {
        -webkit-clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)));
        clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)))
    }
    to {
        -webkit-clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)));
        clip-path: polygon(var(--flext-rec-clip-path) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), 100% 100%, 100% 0, calc(100% - var(--flext-rec-clip-path)) var(--flext-rec-clip-path), calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), 0 100%, 100% 100%, calc(100% - var(--flext-rec-clip-path)) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)), var(--flext-rec-clip-path) var(--flext-rec-clip-path), 0 0, 0 100%, var(--flext-rec-clip-path) calc(100% - var(--flext-rec-clip-path)))
    }
}

.flext-has-highlight.flext-is-style-oval {
    padding: .25rem
}

.flext-has-highlight.flext-is-style-oval:before {
    border: 2px solid transparent;
    border-radius: 48%;
    bottom: .1em;
    left: -.2em;
    right: -.2em;
    top: .1em;
    transform: rotate(-3deg)
}

@keyframes flext-oval-draw {
    0% {
        border-color: transparent
    }
    1% {
        border-bottom-color: transparent;
        border-left-color: var(--flext-highlight-color);
        border-right-color: transparent;
        border-top-color: transparent
    }
    23.9% {
        border-bottom-color: transparent;
        border-left-color: var(--flext-highlight-color);
        border-right-color: transparent;
        border-top-color: transparent
    }
    50% {
        border-bottom-color: transparent;
        border-left-color: var(--flext-highlight-color);
        border-right-color: transparent;
        border-top-color: var(--flext-highlight-color)
    }
    73.9% {
        border-bottom-color: transparent;
        border-left-color: var(--flext-highlight-color);
        border-right-color: var(--flext-highlight-color);
        border-top-color: var(--flext-highlight-color)
    }
    to {
        border-color: var(--flext-highlight-color)
    }
}

.flext-has-highlight.flext-is-style-oval.flext-animated:before {
    animation: flext-oval-draw .3s ease-in-out .3s forwards
}

.flext-has-highlight.flext-is-style-background:after, .flext-has-highlight.flext-is-style-background:before {
    background-color: var(--flext-highlight-color);
    height: 90%;
    margin-left: -.2rem;
    margin-right: -.2rem;
    transform: scaleX(0);
    transform-origin: 0 0;
    transition: transform .3s ease-in .3s;
    width: 100%
}

.flext-has-highlight.flext-is-style-background:before {
    left: -.1rem;
    top: -.1rem;
    transform: scaleX(0) rotate(2deg)
}

.flext-has-highlight.flext-is-style-background:after {
    content: "";
    display: inline-block;
    opacity: .7;
    position: absolute;
    right: -.2rem;
    top: .3rem;
    transition-delay: .6s;
    z-index: -1
}

.flext-has-highlight.flext-is-style-background.flext-animated:before {
    transform: scaleX(1) rotate(2deg)
}

.flext-has-highlight.flext-is-style-background.flext-animated:after {
    transform: scaleX(1)
}

.flext-format-underline {
    text-decoration: underline
}

.flext-has-inline-animation {
    display: inline-block;
    opacity: 0;
    position: relative;
    vertical-align: top;
    white-space: nowrap
}

.flext-has-inline-animation.flext-is-animated {
    opacity: 1
}

.flext-has-inline-animation * {
    display: inline-block;
    position: relative;
    vertical-align: top;
    white-space: nowrap
}

.flext-has-inline-animation em, em .flext-has-inline-animation {
    padding-right: .2em
}

.flext-has-inline-animation .flext-inline-word {
    left: 0;
    position: absolute;
    top: 0
}

.flext-has-inline-animation .flext-is-hidden {
    opacity: 0
}

.flext-inline-animation .flext-inline-letter {
    display: inline-block;
    white-space: pre
}

.flext-inline-clip {
    border-right: 1px solid #000;
    box-sizing: content-box;
    overflow: hidden;
    padding: 0 2px 0 0;
    width: 0
}

.flext-inline-clip.flext-is-animated {
    width: auto
}

.flext-inline-fade-up .flext-inline-animation, .flext-inline-fade-up.flext-inline-animation {
    overflow: hidden;
    transition: width .3s
}

.flext-inline-fade-up .flext-inline-word {
    backface-visibility: hidden;
    opacity: 0;
    transform: translateY(50%)
}

.flext-inline-fade-up .flext-is-visible {
    animation: flext-inline-fade-up-in .5s forwards
}

.flext-inline-fade-up .flext-is-hidden {
    animation: flext-inline-fade-up-out .5s forwards
}

@keyframes flext-inline-fade-up-in {
    0% {
        opacity: 0;
        transform: translateY(50%)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes flext-inline-fade-up-out {
    0% {
        opacity: 1;
        transform: translateY(0)
    }
    to {
        opacity: 0;
        transform: translateY(50%)
    }
}

.flext-inline-flip-horizontal {
    perspective: 300px
}

.flext-inline-flip-horizontal .flext-inline-animation, .flext-inline-flip-horizontal.flext-inline-animation {
    transition: width .3s
}

.flext-inline-flip-horizontal .flext-is-hidden {
    opacity: 1
}

.flext-inline-flip-horizontal .flext-inline-letter {
    backface-visibility: hidden;
    transform: rotateY(180deg)
}

.flext-inline-flip-horizontal .flext-in {
    animation: flext-inline-flip-horizontal-in .3s forwards
}

.flext-inline-flip-horizontal .flext-out {
    animation: flext-inline-flip-horizontal-out .3s forwards
}

@keyframes flext-inline-flip-horizontal-in {
    0% {
        transform: rotateY(180deg)
    }
    to {
        transform: rotateY(0)
    }
}

@keyframes flext-inline-flip-horizontal-out {
    0% {
        transform: rotateY(0)
    }
    to {
        transform: rotateY(-180deg)
    }
}

.flext-inline-flip-vertical .flext-inline-animation, .flext-inline-flip-vertical.flext-inline-animation {
    perspective: 300px;
    transition: width .3s
}

.flext-inline-flip-vertical .flext-is-hidden {
    opacity: 1
}

.flext-inline-flip-vertical .flext-inline-letter {
    backface-visibility: hidden;
    transform: translateZ(-20px) rotateX(90deg);
    transform-style: preserve-3d
}

.flext-inline-flip-vertical .flext-in {
    animation: flext-inline-flip-vertical-in .3s forwards
}

.flext-inline-flip-vertical .flext-out {
    animation: flext-inline-flip-vertical-out .3s forwards
}

@keyframes flext-inline-flip-vertical-in {
    0% {
        opacity: 0;
        transform: translateZ(-20px) rotateX(90deg)
    }
    60% {
        opacity: 1;
        transform: translateZ(-20px) rotateX(-10deg)
    }
    to {
        opacity: 1;
        transform: translateZ(-20px) rotateX(0deg)
    }
}

@keyframes flext-inline-flip-vertical-out {
    0% {
        opacity: 1;
        transform: translateZ(-20px) rotateX(0)
    }
    60% {
        opacity: 0;
        transform: translateZ(-20px) rotateX(-100deg)
    }
    to {
        opacity: 0;
        transform: translateZ(-20px) rotateX(-90deg)
    }
}

.flext-inline-slide-horizontal .flext-inline-animation, .flext-inline-slide-horizontal.flext-inline-animation {
    overflow: hidden;
    transition: width .3s
}

.flext-inline-slide-horizontal .flext-is-visible {
    animation: flext-inline-slide-horizontal-in .6s forwards
}

.flext-inline-slide-horizontal .flext-is-hidden {
    animation: flext-inline-slide-horizontal-out .6s forwards
}

@keyframes flext-inline-slide-horizontal-in {
    0% {
        opacity: 0;
        transform: translateX(-100%)
    }
    60% {
        opacity: 1;
        transform: translateX(20%)
    }
    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes flext-inline-slide-horizontal-out {
    0% {
        opacity: 1;
        transform: translateX(0)
    }
    60% {
        opacity: 0;
        transform: translateX(120%)
    }
    to {
        opacity: 0;
        transform: translateX(100%)
    }
}

.flext-inline-slide-vertical .flext-inline-animation, .flext-inline-slide-vertical.flext-inline-animation {
    overflow: hidden;
    transition: width .3s
}

.flext-inline-slide-vertical .flext-is-visible {
    animation: flext-inline-slide-vertical-in .6s
}

.flext-inline-slide-vertical .flext-is-hidden {
    animation: flext-inline-slide-vertical-out .6s
}

@keyframes flext-inline-slide-vertical-in {
    0% {
        opacity: 0;
        transform: translateY(-100%)
    }
    60% {
        opacity: 1;
        transform: translateY(20%)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes flext-inline-slide-vertical-out {
    0% {
        opacity: 1;
        transform: translateY(0)
    }
    60% {
        opacity: 0;
        transform: translateY(120%)
    }
    to {
        opacity: 0;
        transform: translateY(100%)
    }
}

.flext-inline-typewriter {
    width: 0
}

.flext-inline-typewriter.flext-is-animated {
    width: auto
}

.flext-inline-typewriter .flext-inline-word {
    position: relative
}

.flext-inline-typewriter .flext-inline-word.flext-is-selected {
    background: #000;
    color: #fff
}

.flext-inline-typewriter .flext-inline-word:after {
    content: "|";
    display: inline-block;
    vertical-align: top
}

.flext-inline-typewriter .flext-inline-word.flext-cursor-blink:after {
    animation: flext-inline-typewriter-blink 1s step-end infinite
}

@keyframes flext-inline-typewriter-blink {
    0%, to {
        color: transparent
    }
    50% {
        color: inherit
    }
}

.flext-inline-zoom-in .flext-inline-animation, .flext-inline-zoom-in.flext-inline-animation {
    transition: width .3s
}

.flext-inline-zoom-in .flext-inline-word {
    backface-visibility: hidden
}

.flext-inline-zoom-in .flext-is-visible {
    animation: flext-inline-zoom-in-in .6s forwards
}

.flext-inline-zoom-in .flext-is-hidden {
    animation: flext-inline-zoom-in-out .6s forwards
}

@keyframes flext-inline-zoom-in-in {
    0% {
        opacity: 0;
        transform: scale(0)
    }
    to {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes flext-inline-zoom-in-out {
    0% {
        opacity: 1;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform: scale(0)
    }
}

.flext-inline-zoom-out .flext-inline-animation, .flext-inline-zoom-out.flext-inline-animation {
    transition: width .3s ease-out .15s
}

.flext-inline-zoom-out .flext-inline-word {
    backface-visibility: hidden
}

.flext-inline-zoom-out .flext-is-visible {
    animation: flext-inline-zoom-out-in .6s forwards
}

.flext-inline-zoom-out .flext-is-hidden {
    animation: flext-inline-zoom-out-out .6s forwards
}

@keyframes flext-inline-zoom-out-in {
    0% {
        opacity: 0;
        transform: scale(2)
    }
    to {
        opacity: 1;
        transform: scale(1)
    }
}

@keyframes flext-inline-zoom-out-out {
    0% {
        opacity: 1;
        transform: scale(1)
    }
    to {
        opacity: 0;
        transform: scale(2)
    }
}