/*Flip Box*/
@import '../../../scss/base';
.rs-flip-box {
    .rs-flip-box-inner {
        position: relative;
        z-index: 1;
        margin: 0;
        padding: 0;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;

        .rs-flip-box-wrap {
            position: relative;
            -webkit-transform: translateZ(0);
            -webkit-perspective: 1000px;
            perspective: 1000px;
        }

        .front-part,
        .back-part {
            top: 0;
            right: 0;
            left: 0;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -webkit-align-items: center;
            align-items: center;
            -ms-flex-align: center;
            height: 300px;
            background-color: transparent;
            background-position: center;
            background-clip: padding-box;
            background-size: cover;
            background-repeat: no-repeat;
            text-align: center;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            -webkit-perspective: 1000px;
            perspective: 1000px;
            -webkit-transition: -webkit-transform .6s cubic-bezier(.2, .85, .4, 1.275);
            transition: -webkit-transform .6s cubic-bezier(.2, .85, .4, 1.275);
            transition: transform .6s cubic-bezier(.2, .85, .4, 1.275);
            transition: transform .6s cubic-bezier(.2, .85, .4, 1.275),
                -webkit-transform .6s cubic-bezier(.2, .85, .4, 1.275);

            &:before {
                position: absolute;
                top: 0;
                left: 0;
                z-index: -9;
                width: 100%;
                height: 100%;
                background-color: transparent;
                content: "";
            }
        }

        .front-part {
            position: relative;
            bottom: 0;
            z-index: 10;
            padding: 30px;
            border: 1px solid #ddd;
            border-radius: 5px;
            background-color: #6094da;

            .front-content-part {
                .front-icon-part {
                    margin-bottom: 10px;

                    span {
                        display: inline-block;
                        text-align: center;
                        color: var(--whiteColor);
                        font-size: 30px;
                        line-height: 1;

                        img {
                            width: 60px;
                            height: 60px;
                        }
                    }
                }

                .front-title-part {
                    margin-bottom: 10px;

                    .front-title {
                        margin: 0;
                        font-weight: bold;
                        font-size: 20px;
                        line-height: 1.5;
                        color: var(--whiteColor);
                    }
                }

                .front-desc-part {
                    .front-desc {
                        margin-bottom: 0;
                        font-size: 16px;
                        color: var(--whiteColor);
                    }
                }

                .front-btn-part {
                    .front-btn {
                        display: inline-block;
                        line-height: 1;

                        i {
                            transition: var(--transition);
                        }
                    }
                }
            }
        }

        .back-part {
            position: absolute;
            z-index: -1;
            padding: 30px;
            border-radius: 5px;
            background-color: #562dd4;

            .back-content-part {
                .back-icon-part {
                    display: inline-block;
                    margin-bottom: 20px;
                    text-align: center;

                    .back-img {
                        display: inline-block;
                    }

                    span {
                        display: inline-block;
                        text-align: center;

                        img {
                            width: 60px;
                            height: 60px;
                        }
                    }
                }

                .back-title-part {
                    margin-bottom: 10px;

                    .back-title {
                        margin: 0;
                        font-weight: bold;
                        font-size: 20px;
                        line-height: 1.5;
                    }
                }

                .back-desc-part {
                    .back-desc {
                        margin-bottom: 0;
                        font-size: 16px;
                    }
                }

                .back-btn-part {
                    .back-btn {
                        display: inline-block;
                        line-height: 1;
                        padding: 10px 25px;
                        color: var(--titleColor);
                        background: var(--whiteColor);

                        i {
                            transition: var(--transition);
                        }

                        &.icon-after {
                            span {
                                float: left;
                            }

                            i {
                                margin-left: 10px;
                            }
                        }

                        &.icon-before {
                            span {
                                float: right;
                            }

                            i {
                                margin-right: 10px;
                            }
                        }

                        &:hover {
                            background: #1f1c51;
                            color: var(--whiteColor);
                        }
                    }
                }
            }
        }

        .front-content-part,
        .back-content-part {
            position: relative;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -webkit-flex-direction: column;
            -ms-flex-direction: column;
            flex-direction: column;
            width: 100%;
            transition: all .9s ease 0s;
        }

        &.rs-flip-right {
            .front-part {
                -webkit-transform: rotateY(0);
                transform: rotateY(0);
            }

            .back-part {
                -webkit-transform: rotateY(-180deg);
                transform: rotateY(-180deg);
            }

            .back-content-part {
                right: 15px;
            }

            &:hover {
                .back-part {
                    -webkit-transform: rotateY(0);
                    transform: rotateY(0);
                }

                .front-part {
                    -webkit-transform: rotateY(180deg);
                    transform: rotateY(180deg);
                }

                .back-content-part {
                    right: 0;
                }
            }
        }

        &.rs-flip-left {
            .front-part {
                -webkit-transform: rotateY(0);
                transform: rotateY(0);
            }

            .back-part {
                -webkit-transform: rotateY(180deg);
                transform: rotateY(180deg);
            }

            .back-content-part {
                left: 15px;
            }

            &:hover {
                .front-part {
                    -webkit-transform: rotateY(-180deg);
                    transform: rotateY(-180deg);
                }

                .back-part {
                    -webkit-transform: rotateY(0);
                    transform: rotateY(0);
                }

                .back-content-part {
                    left: 0;
                }
            }
        }

        &.rs-flip-up {
            .front-part {
                -webkit-transform: rotateX(0);
                transform: rotateX(0);
            }

            .back-part {
                -webkit-transform: rotateX(-180deg);
                transform: rotateX(-180deg);
            }

            .back-content-part {
                top: 15px;
            }

            &:hover {
                .front-part {
                    -webkit-transform: rotateX(180deg);
                    transform: rotateX(180deg);
                }

                .back-part {
                    -webkit-transform: rotateX(0);
                    transform: rotateX(0);
                }

                .back-content-part {
                    top: 0;
                }
            }
        }

        &.rs-flip-down {
            .front-part {
                -webkit-transform: rotateX(0);
                transform: rotateX(0);
            }

            .back-part {
                -webkit-transform: rotateX(180deg);
                transform: rotateX(180deg);
            }

            .back-content-part {
                bottom: 15px;
            }

            &:hover {
                .front-part {
                    -webkit-transform: rotateX(-180deg);
                    transform: rotateX(-180deg);
                }

                .back-part {
                    -webkit-transform: rotateX(0);
                    transform: rotateX(0);
                }

                .back-content-part {
                    bottom: 0;
                }
            }
        }

        &:hover {
            .back-part {
                z-index: 1;
            }

            .front-part {
                z-index: -1;
            }
        }
    }

    &:after {
        display: block;
        visibility: hidden;
        clear: both;
        height: 0;
        content: " ";
        font-size: 0;
    }
}