.rivax-fancy-text {
    margin: 0;
	user-select: none;
}

.rivax-fancy-text-list {
    display: inline-block;
    position: relative;
	transform: translate(0, 0);
    transition: 0.6s cubic-bezier(.2,1,.3,1);
}

.rivax-fancy-text-item {
    display: inline-block;
    width: fit-content;
    transition: 0.3s;
    font-weight: inherit;
    font-style: inherit;
    position: absolute;
    white-space: nowrap;
    left: 0;
    top: 0;
}

.rivax-fancy-text .gradient-list .rivax-fancy-text-item {
    background-image: linear-gradient(90deg, #f1776f  0%,#dbc28a  50%,#54c0bd  100%);
    background-clip: border-box;
    background-clip: text;
    text-fill-color: transparent;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.rivax-fancy-text-list:not(.initialized) .rivax-fancy-text-item:nth-of-type(n+2) {
    display: none;
}

.rivax-fancy-text-item span {
    display: inline-block;
    white-space: nowrap;
}

.rivax-fancy-text-item.is-visible {
    position: relative;
}


/* Animation clip */

.rivax-fancy-text.clip .rivax-fancy-text-list {
    overflow: hidden;
    vertical-align: bottom;
    transition: 0s;
}

.rivax-fancy-text.clip .rivax-fancy-text-list::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    width: 2px;
    height: 100%;
    background-color: currentColor;
}

body.rtl .rivax-fancy-text.clip .rivax-fancy-text-list::after {
    left: 0;
    right: auto;
}

.rivax-fancy-text.clip .rivax-fancy-text-item {
    opacity: 0;
    padding-inline-end: 5px;
}

.rivax-fancy-text.clip .rivax-fancy-text-item.is-visible {
    opacity: 1;
}

/* Animation rotate-1 */

.rivax-fancy-text.rotate-1 .rivax-fancy-text-list {
    perspective: 300px;
    text-align: initial;
}

.rivax-fancy-text.rotate-1 .rivax-fancy-text-item {
    opacity: 0;
    transform-origin: 50% 100%;
    transform: rotateX(180deg);
}

.rivax-fancy-text.rotate-1 .rivax-fancy-text-item.is-visible {
    opacity: 1;
    transform: rotateX(0);
    animation: cd-rotate-1-in 1.2s;
}

.rivax-fancy-text.rotate-1 .rivax-fancy-text-item.is-hidden {
    transform: rotateX(180deg);
    animation: cd-rotate-1-out 1.2s;
}

@keyframes cd-rotate-1-in {
    0% {
        transform: rotateX(180deg);
        opacity: 0;
    }
    35% {
        transform: rotateX(120deg);
        opacity: 0;
    }
    65% {
        opacity: 0;
    }
    100% {
        transform: rotateX(360deg);
        opacity: 1;
    }
}
@keyframes cd-rotate-1-out {
    0% {
        transform: rotateX(0);
        opacity: 1;
    }
    35% {
        transform: rotateX(-40deg);
        opacity: 1;
    }
    65% {
        opacity: 0;
    }
    100% {
        transform: rotateX(180deg);
        opacity: 0;
    }
}

/* Animation rotate-2 */

.rivax-fancy-text.rotate-2 .rivax-fancy-text-list {
    perspective: 300px;
}

.rivax-fancy-text.rotate-2 .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.rotate-2 .rivax-fancy-text-item.is-visible {
    opacity: 1;
    width: 100%;
}

.rivax-fancy-text.rotate-2 .rivax-fancy-text-list i {
    display: inline-block;
    opacity: 0;
    transform: translateX(20px);
    font-style: normal;
}

.rivax-fancy-text.rotate-2 .rivax-fancy-text-list i.in {
    animation: cd-rotate-2-in 0.6s forwards;
}

.rivax-fancy-text.rotate-2 .rivax-fancy-text-list i.out {
    animation: cd-rotate-2-out 0.6s forwards;
}

@keyframes cd-rotate-2-in {
    0% {
        opacity: 0;
        transform: translateX(20px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes cd-rotate-2-out {
    0% {
        opacity: 1;
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        transform: translateX(-20px);
    }
}

/* Animation rotate-3 */

.rivax-fancy-text.rotate-3 .rivax-fancy-text-list {
    perspective: 300px;
}

.rivax-fancy-text.rotate-3 .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.rotate-3 .rivax-fancy-text-item.is-visible {
    opacity: 1;
    width: 100%;
}

.rivax-fancy-text.rotate-3 .rivax-fancy-text-list i {
    display: inline-block;
    transform: rotateY(180deg);
    backface-visibility: hidden;
    font-style: normal;
}

.rivax-fancy-text.rotate-3 .rivax-fancy-text-list i.in {
    animation: cd-rotate-3-in 0.6s forwards;
}

.rivax-fancy-text.rotate-3 .rivax-fancy-text-list i.out {
    animation: cd-rotate-3-out 0.6s forwards;
}


@keyframes cd-rotate-3-in {
    0% {
        transform: rotateY(180deg);
    }
    100% {
        transform: rotateY(0);
    }
}

@keyframes cd-rotate-3-out {
    0% {
        transform: rotateY(0);
    }
    100% {
        transform: rotateY(-180deg);
    }
}

/* Animation type */

.rivax-fancy-text.type .rivax-fancy-text-list {
    display: inline-flex;
    overflow: hidden;
}

.rivax-fancy-text.type .rivax-fancy-text-list::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    bottom: auto;
    transform: translateY(-50%);
    height: 100%;
    width: 1px;
}

.rivax-fancy-text.type .rivax-fancy-text-item {
    visibility: hidden;
}

.rivax-fancy-text.type .rivax-fancy-text-item.is-visible {
    visibility: visible;
}

.rivax-fancy-text.type .rivax-fancy-text-list i {
    position: absolute;
    visibility: hidden;
    font-style: normal;
}

.rivax-fancy-text.type .rivax-fancy-text-list i.in {
    position: relative;
    visibility: visible;
}

.rivax-fancy-text.type .rivax-fancy-text-list.waiting::after {
    animation: cd-pulse 1s infinite;
}

.rivax-fancy-text.type .rivax-fancy-text-list.selected {
    background-color: #aebcb9;
}

.rivax-fancy-text.type .rivax-fancy-text-list.selected::after {
    visibility: hidden;
}

@keyframes cd-pulse {
    0% {
        transform: translateY(-50%) scale(1);
        opacity: 1;
    }
    40% {
        transform: translateY(-50%) scale(0.9);
        opacity: 0;
    }
    100% {
        transform: translateY(-50%) scale(0);
        opacity: 0;
    }
}

/* Animation bar-loading */

.rivax-fancy-text.bar-loading .rivax-fancy-text-list::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 3px;
    width: 0;
    background: currentColor;
    z-index: 2;
    transition: width 0.3s -0.1s;
}

.rivax-fancy-text.bar-loading .rivax-fancy-text-list.is-loading::after {
    width: 100%;
    transition: width 3s;
}

.rivax-fancy-text.bar-loading .rivax-fancy-text-item {
    top: 0.2em;
    opacity: 0;
    transition: opacity 0.3s;
}

.rivax-fancy-text.bar-loading .rivax-fancy-text-item.is-visible {
    opacity: 1;
    top: 0;
}

.rivax-fancy-text.bar-loading .rivax-fancy-text-item.is-hidden {
    transition: 0.3s ease-out;
}

/* Animation slide */

.rivax-fancy-text.slide .rivax-fancy-text-list {
    overflow: hidden;
    vertical-align: bottom;
}

.rivax-fancy-text.slide .rivax-fancy-text-item {
    opacity: 0;
    top: 0.2em;
}

.rivax-fancy-text.slide .rivax-fancy-text-item.is-visible {
    top: 0;
    opacity: 1;
    animation: slide-in 0.6s;
}

.rivax-fancy-text.slide .rivax-fancy-text-item.is-hidden {
    animation: slide-out 0.6s;
}

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

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


/* Animation slide 2 */

.rivax-fancy-text.slide-2 .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.slide-2 .rivax-fancy-text-item.is-visible {
    opacity: 1;
    animation: slide-2-in .8s cubic-bezier(.86,0,.07,1) both;
}

.rivax-fancy-text.slide-2 .rivax-fancy-text-item.is-hidden {
    animation: slide-2-out .8s cubic-bezier(.86,0,.07,1) both;
}

@keyframes slide-2-in {
    from {
        transform: translateY(65%) rotateX(-95deg);
        opacity: 0
    }
    to {
        transform: translateY(0) rotateX(0);
        opacity: 1
    }
}

@keyframes slide-2-out {
    from {
        transform: translateY(0) rotateX(0);
        opacity: 1
    }
    to {
        transform: translateY(-65%) rotateX(95deg);
        opacity: 0
    }
}

/* Animation zoom-out */

.rivax-fancy-text.zoom-out .rivax-fancy-text-list {
    perspective: 300px;
}

.rivax-fancy-text.zoom-out .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.zoom-out .rivax-fancy-text-item.is-visible {
    opacity: 1;
    animation: zoom-out 0.8s;
}

.rivax-fancy-text.zoom-out .rivax-fancy-text-item.is-hidden {
    animation: zoom-in 0.8s;
}


@keyframes zoom-out {
    0% {
        opacity: 0;
        transform: translateZ(100px);
    }
    100% {
        opacity: 1;
        transform: translateZ(0);
    }
}

@keyframes zoom-in {
    0% {
        opacity: 1;
        transform: translateZ(0);
    }
    100% {
        opacity: 0;
        transform: translateZ(-100px);
    }
}

/* Animation zoom-fade */

.rivax-fancy-text.zoom-fade .rivax-fancy-text-list {
    perspective: 300px;
}

.rivax-fancy-text.zoom-fade .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.zoom-fade .rivax-fancy-text-item.is-visible {
    opacity: 1;
    animation: zoom-fade-in 0.8s;
}

.rivax-fancy-text.zoom-fade .rivax-fancy-text-item.is-hidden {
    animation: zoom-fade-out 0.8s;
}


@keyframes zoom-fade-out {
    0% {
        opacity: 1;
        transform: scale(1);
        filter: blur(0);
    }
    100% {
        opacity: 0;
        transform: scale(1.2);
        filter: blur(10px);
    }
}

@keyframes zoom-fade-in {
    0% {
        opacity: 0;
        transform: scale(1.2);
        filter: blur(10px);
    }
    100% {
        opacity: 1;
        transform: scale(1);
        filter: blur(0);
    }
}


/* Animation scale */

.rivax-fancy-text.scale .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.scale .rivax-fancy-text-item.is-visible {
    opacity: 1;
}

.rivax-fancy-text.scale .rivax-fancy-text-list i {
    display: inline-block;
    opacity: 0;
    transform: scale(0);
    font-style: normal;
}

.rivax-fancy-text.scale .rivax-fancy-text-list i.in {
    animation: scale-up 0.6s forwards;
}

.rivax-fancy-text.scale .rivax-fancy-text-list i.out {
    animation: scale-down 0.6s forwards;
}

.rivax-fancy-text.scale:hover {
    transform: unset !important;
}


@keyframes scale-up {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    60% {
        transform: scale(1.2);
        opacity: 1;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}
@keyframes scale-down {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    60% {
        transform: scale(0);
        opacity: 0;
    }
}

/* Animation push */

.rivax-fancy-text.push .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.push .rivax-fancy-text-item.is-visible {
    opacity: 1;
    animation: push-in 0.6s;
}

.rivax-fancy-text.push .rivax-fancy-text-item.is-hidden {
    animation: push-out 0.6s;
}

@keyframes push-in {
    0% {
        opacity: 0;
        transform: translateX(-100%);
    }
    60% {
        opacity: 1;
        transform: translateX(10%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes push-out {
    0% {
        opacity: 1;
        transform: translateX(0);
    }
    60% {
        opacity: 0;
        transform: translateX(110%);
    }
    100% {
        opacity: 0;
        transform: translateX(100%);
    }
}


/* Animation fadeout */

.rivax-fancy-text.fadeout .rivax-fancy-text-item {
    opacity: 0;
    overflow: hidden;
    transform: translateX(-100%);
    vertical-align: bottom;
}

.rivax-fancy-text.fadeout .rivax-fancy-text-item, .rivax-fancy-text.fadeout .rivax-fancy-text-item span{
    transition: 0.8s cubic-bezier(.2,1,.3,1);
}

.rivax-fancy-text.fadeout .rivax-fancy-text-item span {
    transform: translateX(100%);
}

.rivax-fancy-text.fadeout .rivax-fancy-text-item.is-visible,
.rivax-fancy-text.fadeout .rivax-fancy-text-item.is-visible span {
    opacity: 1;
    transition-delay: .4s;
    transform: translateX(0);
}


/* Animation bouncing */

.rivax-fancy-text.bouncing .rivax-fancy-text-item {
    opacity: 0;
}

.rivax-fancy-text.bouncing .rivax-fancy-text-item.is-visible {
    opacity: 1;
}

.rivax-fancy-text.bouncing .rivax-fancy-text-list i {
    display: inline-block;
    opacity: 0;
    transform: translateY(0);
    font-style: normal;
}

.rivax-fancy-text.bouncing .rivax-fancy-text-list i.in {
    opacity: 1;
    animation: waviy-in 1s forwards;
}

.rivax-fancy-text.bouncing .rivax-fancy-text-list i.out {
    opacity: 0;
    animation: waviy-out 1s forwards;
}

@keyframes waviy-in {
    0%,
    100%,
    40% {
        transform: translateY(0);
    }
    20% {
        transform: translateY(-20px);
    }
}

@keyframes waviy-out {
    0%,
    100%,
    40% {
        transform: translateY(-20px);
    }
    20% {
        transform: translateY(0);
    }
}