@import "../../common";

// Portfolio Slider Control
.rs-portfolio-slider {
    .portfolio-item  {
        position: relative;
        overflow: hidden;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        .p-title {
            transition: $transition;
            a {
                transition: inherit;
            }
        }
    }
    .rs-addon-sliders {
        position: relative;
        .portfolio-img {
            flex-shrink: 0;
        }
        &.slick-dotted {
            margin: 0;
        }
        .slick-list {
            padding: 0 !important;
            .slick-track {
                display: flex;
                align-items: center;
            }
        }
    }
    &.rs-portfolio-style1 {
        .portfolio-item  {
            .portfolio-img {
                img {
                    transition: $transition;
                }
                position: relative;
                .img-overlay {
                    position: absolute; 
                    visibility: hidden;
                    opacity: 0;
                    width: 100%; 
                    height: 0; 
                    bottom: 100%;
                    left: 0;
                    right: 0;
                    background-color: rgba(0,0,0,0.5); 
                    z-index: 2; 
                    overflow: hidden;
                    -webkit-transition: all 0.5s ease;
                    transition: all 0.5s ease;
                }
            }
    
            .portfolio-content {
                position: absolute;
                top: 30px;
                left: -200px;
                visibility: hidden;
                opacity: 0;
                -webkit-transition: all 0.5s ease;
                transition: all 0.5s ease;
                overflow: hidden;
                text-align: left;
                z-index: 3!important;
                .p-title {
                    a {
                        font-size: 24px;
                        font-weight: 700;
                        line-height: 34px;
                        color: #fff;
                    }
                    margin-bottom: 5px;
                }
                .p-category {
                    margin: 0;
                    a {
                        font-size: 16px;
                        font-weight: 500;
                        line-height: 28px;
                        color: #fff;
                    }
                }
            }
            &:hover {
                .img-overlay { 
                    opacity: 1;
                    visibility: visible;
                    bottom: 0;
                    height: 100%;
                }
                .portfolio-content {
                    left: 40px;
                    visibility: visible;
                    opacity: 1;
                }
                .p-icon {
                    bottom: 5px;
                    opacity: 1;
                }
            }
    
            .p-icon {
                position: absolute;
                right: 10px;
                bottom: -10px;
                opacity: 0;
                transition: all 0.5s ease;
                z-index: 4;
                cursor: pointer;
                
                a.prs_btn {
                    background-color: #507A7C;
                    color: #ffffff;
                    border: 2px solid #ffffff8a;
                    font-size: 16px;
                    font-style: normal;
                    font-weight: 700;
                    padding: 11px 22px 11px 27px;
                    border-radius: 2px;
                    overflow: hidden;
                    position: relative;
                    display: inline-block;
                    line-height: 28px;
                    transition: all 0.5s ease;
                    span {
                        display: inline-block;
                        position: relative;
                        z-index: 1;
                    }
    
    
                    .btn_icon_2 {
                        svg {
                            transform: translateX(-30px);
                            transition: all 0.5s ease;
                        }
                        overflow: hidden;
                        display: inline-block;
                        height: 20px;
                        line-height: 20px;
                        width: 26px;
                        position: absolute;
                        right: 0;
                        top: 4px;
                        
                    }
                    .btn_icon_1 {
                        width: 26px;
                        display: inline-block;
                        height: 20px;
                        overflow: hidden;
                        line-height: 20px;
                        top: 4px;
                        position: relative;
                        svg {
                            transition: all 0.5s ease;
                        }
                    }
                    &:hover {
                        .btn_icon_1 {
                            svg {
                                transform: translateX(30px);
                                opacity: 0;
                            }
                        }
                        .btn_icon_2 {
                            svg {
                                transform: translateX(0px);
                            }
                        }
                        
                    }
                }
                svg {
                    width: 17px;
                    height: 17px;
                    fill: #fff;
                    margin-left: 5px;
                }
            }
        }
    }
    &.rs-portfolio-style2 {
        .portfolio-item  {
            .portfolio-img {
                img {
                    transition: $transition;
                }
                position: relative;
                .img-overlay {
                    position: absolute; 
                    visibility: hidden;
                    opacity: 0;
                    width: 100%; 
                    height: 0; 
                    bottom: 100%;
                    left: 0;
                    right: 0;
                    z-index: 2; 
                    overflow: hidden;
                    -webkit-transition: all 0.5s ease;
                    transition: all 0.5s ease;
                }
            }
    
            .portfolio-content {
                background-color: $primaryColor;
                position: absolute;
                left: 0;
                bottom: -85px;
                text-align: left;
                padding: 30px;
                border: 3px solid #FFF;
                -webkit-transition: all 0.5s ease;
                transition: all 0.5s ease;
                z-index: 4;
                .p-title {
                    a {
                        font-size: 24px;
                        font-weight: 700;
                        line-height: 34px;
                        color: $titleColor;
                    }
                    margin-bottom: 5px;
                }
                .p-category {
                   
                    a {
                        font-size: 16px;
                        font-weight: 500;
                        line-height: 28px;
                        color: $bodyColor;
                    }
                }
                .numbering {
                    span {
                        font-size: 18px;
                        font-weight: 700;
                        line-height: 32px;
                        letter-spacing: 2.16px;
                        color: $titleColor;
                    }
                }
            }
    
            .p-icon {
                transition: all 0.5s ease;
                z-index: 4;
                border-top: 1px solid #e1b503;
                padding-top: 20px;
                cursor: pointer;
                a.prs_btn {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    color: $titleColor;
                }
                .btn_icon_1 {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    width: 30px;
                    height: 30px;
                    border-radius: 2px;
                    background-color: #dfb303;
                }
                svg {
                    width: 12px;
                    height: 10px;
                    fill: $titleColor;
                    path {
                        fill: $titleColor;
                    }
                }
            }
    
    
            &:hover {
                .img-overlay { 
                    opacity: 1;
                    visibility: visible;
                    bottom: 0;
                    height: 100%;
                }
    
                .portfolio-content { 
                    bottom: 0;
                    border: 3px solid #FFF;
                }
            }
    
        }
    }
    &.rs-portfolio-style3 {
        .portfolio-item  {
            .portfolio-img {
                img {
                    transition: $transition;
                }
                z-index: -1;
                position: relative;
                .img-overlay {
                    position: absolute; 
                    visibility: hidden;
                    opacity: 0;
                    width: 100%; 
                    height: 0; 
                    bottom: 100%;
                    left: 0;
                    right: 0;
                    z-index: 2; 
                    overflow: hidden;
                    -webkit-transition: all 0.5s ease;
                    transition: all 0.5s ease;
                }
            }
    
            .portfolio-content {
                background-color: #f7f7f7;
                border-radius: 15px;
                text-align: left;
                padding: 25px 40px 25px 30px;
                -webkit-transition: all 0.5s ease;
                transition: all 0.5s ease;
                z-index: 4;
                margin-left: 85px;
                margin-top: -92px;
                position: relative;
                overflow: hidden;
                .p-title {
                    a {
                        font-size: 24px;
                        font-weight: 700;
                        line-height: 34px;
                        color: $titleColor;
                    }
                    margin-bottom: 20px;
                }
                .p-category {
                   margin: 0;
                    a {
                        font-size: 16px;
                        font-weight: 500;
                        line-height: 28px;
                        color: $bodyColor;
                    }
                }
                .numbering {
                    span {
                        font-size: 18px;
                        font-weight: 700;
                        line-height: 32px;
                        letter-spacing: 2.16px;
                        color: $titleColor;
                    }
                }
            }
    
            .p-icon {
                transition: all 0.5s ease;
                z-index: 4;
                border-top: 1px solid #e1b503;
                padding-top: 20px;
                cursor: pointer;
                a.prs_btn {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    color: $titleColor;
                }
                .btn_icon_1 {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    width: 30px;
                    height: 30px;
                    border-radius: 2px;
                    background-color: #dfb303;
                }
                svg {
                    width: 12px;
                    height: 10px;
                    fill: $titleColor;
                    path {
                        fill: $titleColor;
                    }
                }
            }
    
            &:hover {
                .img-overlay { 
                    opacity: 1;
                    visibility: visible;
                    bottom: 0;
                    height: 100%;
                }
    
                .portfolio-content { 
                    bottom: 0;
                    transform: translateY(-10px);
                }
            }
    
        }
    }
    &.rs-portfolio-style4 {
        .portfolio-item  {
            .portfolio-img {
                overflow: hidden;
                position: relative;
                img {
                    transition: $transition;
                }
                position: relative;
                .img-overlay {
                    position: absolute; 
                    visibility: visible;
                    opacity: 1;
                    width: 100%; 
                    height: 100%; 
                    bottom: 0;
                    left: 0;
                    right: 0;
                    background-color: rgba(0,0,0,0.5); 
                    z-index: 2; 
                    overflow: hidden;
                    -webkit-transition: all 0.5s ease;
                    transition: all 0.5s ease;
                }
                .portfolio-link{
                    position: absolute;
                    left: 50%;
                    top: 50%;
                    z-index: 5;
                    transform: translate(-50%, -50%);
                    opacity: 0;
                    visibility: hidden;
                    -webkit-transition: all 0.5s ease;
                    transition: all 0.5s ease;
                    a{
                        display: inline-flex;
                        align-items: center;
                        justify-content: center;
                        height: 60px;
                        width: 60px;
                        background: $primaryColor;
                        box-shadow: 0 0 0 11px rgba(14, 14, 14, 0.3);
                    }
                }
            }
    
            .portfolio-content {
                position: absolute;
                bottom: -40px;
                left: 40px;
                right: 40px;
                -webkit-transition: all 0.5s ease;
                transition: all 0.5s ease;
                overflow: hidden;
                text-align: left;
                z-index: 3!important;
                .p-title {
                    a {
                        font-size: 30px;
                        font-weight: 700;
                        line-height: 36px;
                        color: #fff;
                        -webkit-transition: all 0.3s ease;
                        transition: all 0.3s ease;
                        text-decoration: none;
                        display: inline;
                        background-image: linear-gradient(to bottom, #fff 0%, #fff 100%);
                        background-size: 0 2px;
                        background-repeat: no-repeat;
                        background-position: left 100%;
                        display: inline-block;
                        &:hover{
                            background-size: 100% 2px;
                        }
                        
    
    
                    }
                }
                .p-category {
                    margin-bottom: 15px;
                    a {
                        font-size: 14px;
                        font-weight: 500;
                        line-height: 28px;
                        color: #fff;padding: 6px 14px;
                        justify-content: center;
                        align-items: center;
                        background-color: $primaryColor;
                        border-radius: 55px;
                    }
                }
            }
            &:hover {
                .img-overlay { 
                    bottom: 0;
                    height: 100%;
                    opacity: 1;
                    visibility: visible;
                }
                .portfolio-content {
                    bottom: 40px;
                    visibility: visible;
                    opacity: 1;
                }
                .p-icon {
                    bottom: 5px;
                    opacity: 1;
                }
                .portfolio-img{
                    img{
                        transform: scale(1.1);
                    }
                    .portfolio-link{
                        opacity: 1;
                        visibility: visible;
                    }
                }
            }
    
            .p-icon {
                opacity: 0;
                transition: all 0.5s ease;
                z-index: 4;
                cursor: pointer;
                margin-top: 30px;
                a.prs_btn {
                    background-color: $primaryColor;
                    color: #ffffff;
                    border: 2px solid #ffffff8a;
                    font-size: 16px;
                    font-style: normal;
                    font-weight: 700;
                    padding: 11px 22px 11px 27px;
                    border-radius: 2px;
                    overflow: hidden;
                    position: relative;
                    display: inline-block;
                    line-height: 28px;
                    transition: all 0.5s ease;
                    span {
                        display: inline-flex;
                        gap: 7px;
                        position: relative;
                        z-index: 1;
                    }
    
                    .btn_icon_2 {
                        svg {
                            transform: translateX(-30px);
                            transition: all 0.5s ease;
                        }
                        overflow: hidden;
                        display: inline-block;
                        height: 20px;
                        line-height: 20px;
                        width: 26px;
                        position: absolute;
                        right: 0;
                        top: 4px;
                        
                    }
                    .btn_icon_1 {
                        width: 26px;
                        display: inline-block;
                        height: 20px;
                        overflow: hidden;
                        line-height: 20px;
                        top: 4px;
                        position: relative;
                        svg {
                            transition: all 0.5s ease;
                        }
                    }
                    &:hover {
                        .btn_icon_1 {
                            svg {
                                transform: translateX(30px);
                                opacity: 0;
                            }
                        }
                        .btn_icon_2 {
                            svg {
                                transform: translateX(0px);
                            }
                        }
                        
                    }
                }
                svg {
                    width: 17px;
                    height: 12px;
                    fill: #fff;
                    margin-left: 2px;
                }
            }
        }
        &.clip-path-enable {
            .portfolio-img {
                clip-path: polygon(0% 0%, 88% 0, 100% 10%, 100% 100%, 0% 100%) !important;
            }
        }
    }
    &.rs-portfolio-style5 {
        .portfolio-item  {
            position: relative;
            overflow: hidden;
            .portfolio-img {
                position: relative;
                img {
                    transition: $transition;
                }
                .img-overlay {
                    position: absolute; 
                    visibility: hidden;
                    opacity: 0;
                    width: 100%; 
                    height: 0; 
                    bottom: 100%;
                    left: 0;
                    right: 0;
                    background-color: rgba(0,0,0,0.5); 
                    z-index: 2; 
                    overflow: hidden;
                    -webkit-transition: all 0.5s ease;
                    transition: all 0.5s ease;
                }
            }
            .portfolio-content {
                opacity: 0;
                position: absolute;
                top: 0;
                left: 0;
                width: 297px;
                z-index: 3 !important;
                opacity: 0;
                text-align: left;
                transition: opacity 0.3s;
                pointer-events: none;
                .p-title {
                    font-size: 20px;
                    font-weight: 700;
                    line-height: 1.34;
                    color: $titleColor;
                    margin-bottom: 5px;
                }
                .p-category {
                    a {
                        font-size: 16px;
                        font-weight: 500;
                        line-height: 28px;
                        color: $titleColor;
                        padding: 0;
                    }
                }
            }
            .content-details {
                display: flex;
                align-items: flex-start;
                flex-direction: column;
            }
            .p-icon2 {
                a.prs_btn {
                    overflow: hidden;
                    display: flex;
                    flex-flow: row-reverse nowrap;
                    justify-content: flex-end;
                    align-items: stretch;
                    position: absolute;
                    bottom: 0;
                    right: 0;
                    z-index: 4;
                    span.pbtn_icon {
                        position: relative;
                        z-index: 1;
                        font-size: 16px;
                        padding: 10px 15px 10px 15px;
                        background-color: $primaryColor;
                        color: $whiteColor;
                        transition: color .3s ease;
                       
                    }
    
                    .pbtn_text {
                        display: flex;
                        flex-direction: column;
                        justify-content: center;
                        align-items: center;
                        align-self: auto;
                        padding: 10px 0px 10px 15px;
                        background-color: $primaryColor;
                        color: $whiteColor;
                        transform-origin: center right;
                        translate: 100% 0;
                        transition: translate .7s ease,color .3s ease;
                    }
                }
                svg {
                    width: 17px;
                    height: 17px;
                    fill: #fff;
                }
            }
            &:hover {
                .portfolio-content {
                    opacity: 1;
                }
                .p-icon {
                    opacity: 1;
                }
                .p-icon2 a.prs_btn span.pbtn_icon +.pbtn_text {
                    translate: 0;
                }
                +.portfolio-content {
                    opacity: 0;
                }
            }
        }
    }
    &.rs-portfolio-style6 {
        display: flex;
        align-items: center;
        flex-direction: row-reverse;
        .rs-addon-sliders {
            width: 35%;
            position: relative;
            z-index: 1;
            .slick-list {
                z-index: 1;
                transform: translateX(-280px);
                width: calc(100% + 280px);
                position: relative;
                backdrop-filter: grayscale(1);
                background: rgba(0,0,0,0.4);
            }
            .portfolio-item {
                text-align: right;
                .portfolio-content {
                    max-width: calc(100% - 120px);
                    margin: 0 0 0 auto;
                }
            }
            &:after {
                position: absolute;
                content: '';
                left: 0;
                right: 0;
                top: 0;
                bottom: 0;
                background: #000;
                transition: $transition;
            }
        }
        .rs-thumb-sl-nav {
            width: 65%;
            .slick-track {
                display: flex;
                align-items: center;
            }
            .thumb-img {
                transition: $transition;
                height: 600px;
                transition-delay: 0.3s;
                background-repeat: no-repeat !important;
                position: relative;
                .portfolio-link{
                    position: absolute;
                    left: 30px;
                    top: 30px;
                    z-index: 5;
                    opacity: 0;
                    visibility: hidden;
                    -webkit-transition: all 0.5s ease;
                    transition: all 0.5s ease;
                    a{
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        height: 60px;
                        width: 60px;
                        border-radius: 50%;
                        background: $primaryColor;
                        position: relative;
                        &:after,
                        &:before {
                            width: 100%;
                            height: 100%;
                            background: rgba(255, 255, 255, 0.5);
                            content: "";
                            position: absolute;
                            left: 50%;
                            top: 50%;
                            transform: translateX(-50%) translateY(-50%);
                            border-radius: 50%;
                            -webkit-animation: pulse-border 1500ms ease-out infinite;
                            animation: pulse-border 1500ms ease-out infinite;
                            z-index: -1;
                            pointer-events: none;
                            animation-play-state: paused;
                        }
                        &:after {
                            animation-delay: 0.5s;
                        }
                    }
                }
                &.slick-active {
                    &:not(.slick-current) {
                        height: 500px;
                        transform: scale(0.8);
                    }
                }
                &.slick-current {
                    .portfolio-link{
                        opacity: 1;
                        visibility: visible;
                    }
                }
            }
        }
    }
    &.rs-portfolio-style7 {
        position: relative;
        overflow: hidden;
        .rs-addon-sliders {
            .portfolio-item {
                display: flex;
                justify-content: space-between;
                gap: 20px;
                .btn-wrapper {
                    display: flex;
                    align-items: flex-start;
                    justify-content: center;
                    width: 772px;
                    > * {
                        width: 50%;
                        aspect-ratio: 1/1;
                        border-radius: 50%;
                        overflow: hidden;
                    }
                    .btn-img {
                        margin-right: -25%;
                        position: relative;
                        z-index: 1;
                        pointer-events: none;
                        img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                            object-position: center;
                        }
                    }
                    a {
                        display: flex;
                        border: 1px solid #FFFFFF;
                        color: #fff;
                        background: radial-gradient(151.64% 120.36% at 47.19% -0.63%, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 100%);
                        backdrop-filter: blur(21px);
                        position: relative;
                        font-size: 24px;
                        font-weight: 600;
                        text-transform: uppercase;
                        transition: 0s;
                        svg {
                            width: 68px;
                            height: 68px;
                        }
                        i {
                            font-size: 68px;
                        }
                        svg, i {
                            position: absolute;
                            right: 23%;
                            top: 41%;
                        }
                        > span {
                            position: relative;
                            width: 100%;
                            height: 100%;
                            transform: rotate(122deg);
                            transition: transform 1s ease-in-out;
                            span {
                                position: absolute;
                                top: 18px;
                                bottom: 18px;
                                right: 18px;
                                left: 18px;
                                display: flex;
                                align-items: center;
                                text-align: right;
                                em {
                                    font-style: normal;
                                    transform: rotate(-90deg);
                                    width: 24px;
                                    display: inline-block;
                                    text-align: center;
                                }
                            }
                        }
                    }
                }
            }
        }
        .rs-thumb-sl-nav {
            position: absolute;
            left: -100px;
            bottom: -100px;
            .thumb-img {
                transform: scaleX(-1);
            }
            .slick-dots {
                top: 159px;
                right: 18px;
                left: unset;
                bottom: unset;
                width: auto;
                height: auto;
                direction: ltr;
                writing-mode: vertical-lr;
                transform: scale(-1);
                li {
                    display: none;
                    margin: 3px 0;
                    button {
                        color: #fff;
                        width: auto;
                        height: auto;
                        font-size: 16px;
                        span {
                            margin-top: 6px;
                            display: inline-block;
                        }
                    }
                    &:last-child,
                    &.slick-active {
                        display: inline-block;
                    }
                    &.slick-active {
                        button {
                            color: #fff;
                        }
                    }
                }
            }
            .slick-arrow {
                transform: rotate(-90deg);
                background: transparent;
                border-radius: 0;
                right: 9px;
                left: unset;
                width: auto;
                height: auto;
                &.slick-prev {
                    top: 110px;
                }
                &.slick-next {
                    top: 240px;
                }
                &::before {
                    font-size: 9px;
                }
                &:hover {
                    background: transparent;
                    color: $primaryColor;
                }
            }
        }
    }
}