//-----------------------------------
// PORTFOLIO GENERAL
//-----------------------------------

.yolo-desktop-1 .portfolio-item {
    width: 100%;
}

.yolo-desktop-2 .portfolio-item {
    width: 50%;
}

.yolo-desktop-3 .portfolio-item {
    width: 33.333%;
}

.yolo-desktop-4 .portfolio-item {
    width: 25%;
}

.yolo-desktop-5 .portfolio-item {
    width: 20%;
}

.yolo-desktop-6 .portfolio-item {
    width: 16.6666%;
}

@media (max-width: 992px) {
    .yolo-tablet-1 .portfolio-item {
        width: 100%;
    }

    .yolo-tablet-2 .portfolio-item {
        width: 50%;
    }

    .yolo-tablet-3 .portfolio-item {
        width: 33.333%;
    }

    .yolo-tablet-4 .portfolio-item {
        width: 25%;
    }

    .yolo-tablet-5 .portfolio-item {
        width: 20%;
    }

    .yolo-tablet-5 .portfolio-item {
        width: 16.666%;
    }
}

@media (max-width: 767px) {
    .yolo-mobile-1 .portfolio-item {
        width: 50%;
    }

    .yolo-mobile-2 .portfolio-item {
        width: 50%;
    }

    .yolo-mobile-3 .portfolio-item {
        width: 33.333%;
    }

    .yolo-mobile-4 .portfolio-item {
        width: 25%;
    }

    .yolo-mobile-5 .portfolio-item {
        width: 20%;
    }

    .yolo-tablet-6 .portfolio-item {
        width: 16.666%;
    }
}

@media(max-width: 769px) {
    .yolo-tablet-1 .portfolio-item {
        width: 100% !important;
    }

    .yolo-tablet-2 .portfolio-item {
        width: 50% !important;
    }

    .yolo-tablet-3 .portfolio-item {
        width: 33.33% !important;
    }

    .yolo-tablet-4 .portfolio-item {
        width: 25% !important;
    }
}

@media(max-width:480px) {
    .yolo-mobile-1 .portfolio-item {
        width: 100% !important;
    }

    .yolo-mobile-2 .portfolio-item {
        width: 50% !important;
    }
}

.portfolio-wrapper {
    &.yolo-desktop-2 {
        .portfolio-item {
            &.portrait {
                width: 50%;
            }

            &.landscape {
                width: 100%;
            }

            &.small_squared {
                width: 50%;
            }

            &.big_squared {
                width: 100%;
            }
        }
    }

    &.yolo-desktop-3 {
        .portfolio-item {
            &.portrait {
                width: 33.3333333%;
            }

            &.landscape {
                width: 66.6666666%;
            }

            &.small_squared {
                width: 33.3333333%;
            }

            &.big_squared {
                width: 66.6666666%;
            }
        }
    }

    &.yolo-desktop-4 {
        .portfolio-item {
            &.portrait {
                width: 25%;
            }

            &.landscape {
                width: 50%;
            }

            &.small_squared {
                width: 25%;
            }

            &.big_squared {
                width: 50%;
            }
        }
    }

    &.yolo-desktop-5 {
        .portfolio-item {
            &.portrait {
                width: 20%;

                @media screen and (max-width: 767px) {
                    width: 50%
                }
            }

            &.landscape {
                width: 40%;

                @media screen and (max-width: 767px) {
                    width: 50%
                }
            }

            &.small_squared {
                width: 20%;

                @media screen and (max-width: 767px) {
                    width: 50%
                }
            }

            &.big_squared {
                width: 40%;

                @media screen and (max-width: 767px) {
                    width: 50%
                }
            }
        }
    }

    &.yolo-desktop-6 {
        .portfolio-item {
            width: 16.6666667%;

            &.portrait {
                width: 16.6666667%;
            }

            &.landscape {
                width: 33.3333333%;
            }

            &.small_squared {
                width: 16.6666667%;
            }

            &.big_squared {
                width: 33.3333333%;
            }
        }
    }

    // Responsive
    @media screen and (max-width: 767px) {
        .portfolio-item {
            height: auto !important;

            img {
                height: auto !important;
            }
        }
    }

    @media screen and (max-width: 479px) {
        .portfolio-item {
            height: auto !important;

            img {
                height: auto !important;
            }
        }
    }
}

* {
    box-sizing: border-box;
}

@-webkit-keyframes shadow-pulse {
    0% {
        box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);
    }

    100% {
        box-shadow: 0 0 0 15px rgba(0, 0, 0, 0);
    }
}

@keyframes shadow-pulse {
    0% {
        box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);
    }

    100% {
        box-shadow: 0 0 0 15px rgba(0, 0, 0, 0);
    }
}

@-webkit-keyframes width-animation {
    0% {
        transform: scale(0);
    }

    100% {
        transform: scale(1);
    }
}

@keyframes width-animation {
    0% {
        transform: scale(0);
    }

    100% {
        transform: scale(1);
    }
}

.portfolio-item {

    .entry-thumbnail-hover {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: var(--primary_color_fade_30);
        .transition(all 0.35s ease);
        text-align: center;
        opacity: 0;

    }

    .entry-hover-inner {
        position: absolute;
        top: 50% !important;
        left: 50% !important;
        .translate(-50%, -50%);
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;

        i {
            color: @white;
            font-size: 18px;

            &:hover {
                color: var(--primary_color);
            }
        }

        h3 {
            margin-top: 3px;
            margin-bottom: 15px;
            font-size: 26px;
            opacity: 0;
            -webkit-transition: .25s ease-out 0s;
            transition: .25s ease-out 0s;
            -webkit-transform: translateY(10px);
            -ms-transform: translateY(10px);
            transform: translateY(10px);
            color: @white;

            &:hover {
                color: var(--primary_color);
            }
        }

        .category {
            display: block;
            text-transform: uppercase;
            color: @white;
            position: relative;
        }

        i,
        span.category {
            opacity: 0;
            -webkit-transition: .25s ease-out 0s;
            transition: .25s ease-out 0s;
            -webkit-transform: translateY(10px);
            -ms-transform: translateY(10px);
            transform: translateY(10px);
        }

    }

    .entry-thumbnail {
        position: relative;
        overflow: hidden;

        img {
            width: 100%;
            height: auto;
            display: block;
            max-width: 100%;
            display: inline-block;
            .transition(all 0.35s ease);
        }

        &.effect_1 {
            .entry-thumbnail-hover {
                .scale(0);
                background: fade(@black, 70%);
                text-align: center;

            }
        }

        &.effect_2 {
            .entry-thumbnail-hover {
                text-align: center;
                background-color: fade(@black, 70%);

                &:before {
                    content: '';
                    display: block;
                    position: absolute;
                    z-index: 2;
                    top: 7px;
                    left: 7px;
                    height: 25px;
                    width: 25px;
                    border-top: 4px solid var(--primary_color);
                    border-left: 4px solid var(--primary_color);
                }

                &:after {
                    content: '';
                    display: block;
                    position: absolute;
                    z-index: 2;
                    bottom: 7px;
                    right: 7px;
                    height: 25px;
                    width: 25px;
                    border-bottom: 4px solid var(--primary_color);
                    border-right: 4px solid var(--primary_color);
                }

            }
        }

        &.effect_3 {
            .entry-thumbnail-hover {
                text-align: center;
                background-color: fade(@black, 70%);
            }
        }

        &:hover {

            .entry-thumbnail-hover {
                opacity: 1;
            }

            .entry-hover-inner {
                h3 {
                    opacity: 1;
                    -webkit-transition: .5s ease-out .25s;
                    transition: .5s ease-out .25s;
                    -webkit-transform: translateY(0);
                    -ms-transform: translateY(0);
                    transform: translateY(0);
                }

                i,
                span.category {
                    opacity: 1;
                    -webkit-transition: .5s ease-out .25s;
                    transition: .5s ease-out .25s;
                    -webkit-transform: translateY(0);
                    -ms-transform: translateY(0);
                    transform: translateY(0);
                }

            }

            img {
                .scale(1.1);
            }


            &.effect_1 {
                .entry-thumbnail-hover {
                    .scale(1);
                }
            }

        }

    }

    .portfolio-title-wrap {

        &.top,
        &.bottom {
            border: 1px solid @border_color;
            text-align: center;

            .portfolio-title {
                position: relative;
                text-transform: uppercase;
                margin-top: 15px;
                display: block;
                font-size: 16px;
                padding-bottom: 10px;

                &:before {
                    content: '';
                    width: 50px;
                    height: 1px;
                    background-color: var(--text_color);
                    position: absolute;
                    bottom: 0;
                    .translateX(-50%);
                    left: 50%;
                }
            }

            .portfolio-tag {
                margin-top: 10px;
                margin-bottom: 15px;
            }
        }
    }
}

//-----------------------------------
// PORTFOLIO TABS
//-----------------------------------
.portfolio-tabs {
    margin-bottom: 30px;

    .tab-wrapper {
        &.left {
            text-align: left;

            @media(max-width: 991px) {
                text-align: center;
            }
        }

        &.center {
            text-align: center;
        }

        &.right {
            text-align: right;

            @media(max-width: 991px) {
                text-align: center;
            }
        }

        ul {
            list-style: none;
            padding: 0;
            position: relative;

            li {
                display: inline-block;
                margin-left: 12px;
                margin-right: 12px;
                position: relative;

                a {
                    border: none;
                    min-width: auto;
                    padding: 3px 5px;
                    font-weight: 500;
                    border-bottom: 1px solid transparent;
                }

                &:hover {
                    a {
                        color: var(--primary_color);
                    }
                }

                &.active {
                    a {
                        border-color: var(--primary_color);
                        color: var(--primary_color);
                    }
                }
            }
        }
    }
}

//-----------------------------------
// PRETTY PHOTO
//-----------------------------------
div.light_rounded .pp_description,
div.light_square .pp_description {
    text-align: center;
    font-weight: 600;
    font-size: 16px;

    a {
        text-decoration: none;
    }

    a:hover {
        text-decoration: none;
    }
}

//-----------------------------------
// PORTFOLIO SINGLE
//-----------------------------------

.single-portfolio {
    .portfolio-feature-wrap {
        margin-bottom: 30px;

        .paging-wrap {
            margin-top: 0px;
            margin-left: -10px;
            margin-right: -10px;

            .thumbnail-image {
                margin: 0 10px;
            }
        }
        img {
            width: 100%;
        }
    }

    .portfolio-content-wrap {
        .portfolio-title {
            margin-bottom: 46px;
            font-size: 32px;
        }

        .portfolio-details {
            max-width: 500px;
            margin-top: 50px;
            display: -ms-grid;
            display: grid;
            -ms-grid-columns: 1fr [2];
            grid-template-columns: repeat(2, 1fr);
            grid-gap: 20px 30px;

            .label {
                padding: 0;
                text-transform: uppercase;
                font-weight: 500;
                font-size: 14px;
                margin-bottom: 12px;
                color: var(--heading_color);
            }

            .value {
                display: block;
                line-height: 1.9;
            }
        }

        .portfolio-share {
            margin-top: 55px;

            .share-label {
                padding: 0;
                text-transform: uppercase;
                font-weight: 500;
                font-size: 14px;
                margin-bottom: 20px;
                color: var(--heading_color);
            }

            .social-inner {

                a {
                    font-size: 12px;
                    width: 30px;
                    height: 30px;
                    background-color: var(--heading_color);
                    color: white;
                    line-height: 32px;
                    text-align: center;
                    display: inline-block;
                    margin-right: 3px;
                }
            }
        }

    }

    .portfolio-nav-links {
        margin-top: 70px;

        .nav-list {
            display: -ms-grid;
            display: grid;
            -ms-grid-columns: (1fr)[2];
            grid-template-columns: repeat(2, 1fr);
            grid-gap: 40px 30px;

            a {
                position: relative;
                display: block;
            }

            .prev {
                a {
                    padding-left: 65px;
                }

                h6 {
                    &:before {
                        left: 0;
                        content: '\f060';
                    }
                }
            }

            .next {
                text-align: right;

                a {
                    padding-right: 65px;
                }

                h6 {
                    &:before {
                        right: 0;
                        content: '\f061';
                    }
                }
            }

            .inner {
                position: relative;
                width: 100%;
                max-width: 480px;
                display: inline-block;
                font-size: 17px;

                h6 {
                    font-size: 20px;
                    line-height: 1.2;
                    margin: 20px 0 0;

                    &:before {
                        -moz-osx-font-smoothing: grayscale;
                        -webkit-font-smoothing: antialiased;
                        display: inline-block;
                        font-style: normal;
                        font-variant: normal;
                        te xt-rendering: auto;
                        line-height: 1;
                        font-family: 'Font Awesome 5 Pro';
                        font-weight: 900;
                        position: absolute;
                        top: 50%;
                        -webkit-transform: translateY(-50%);
                        -ms-transform: translateY(-50%);
                        transform: translateY(-50%);
                        font-size: 24px;
                    }
                }
            }
        }
    }

    .portfolio-related-wrap {
        margin-top: 100px;
    }

    .portfolio-item {
        position: relative;

        .grid-image-hover {
            opacity: 0;
            top: 0;
            left: 0;
            position: absolute;
            height: 100%;
            width: 100%;
            .scale(0.7);
            background-color: fade(@white, 90%);
            .transition(all 0.35s ease-in-out);

            i {
                font-size: 36px;
                position: absolute;
                top: 50%;
                transition: all 0.35s ease-in-out;
                left: 0;
                right: 0;
                margin: 0 auto;
                text-align: center;

                &:hover {
                    color: var(--primary_color);
                }
            }
        }

        &:hover {
            .grid-image-hover {
                opacity: 1;
                .scale(0.9);
            }
        }
    }   

    .detail-01 {

        .portfolio-content-wrap {
            margin-top: 100px;

            @media (max-width: 991px) {
                margin-top: 80px;
            }
        }
    }

    .detail-02 {

        .portfolio-item {
            margin-bottom: 30px;

            img {
                width: 100%;

            }
        }

        .portfolio-content-wrap {
            padding-left: 100px;

            @media (max-width: 991px) {
                padding-left: 10px;
            }
        }
    }

    .detail-03 {

        .portfolio-content-wrap {
            padding-left: 50px;

            @media (max-width: 991px) {
                padding-left: 10px;
            }
        }
    }

    .detail-04 {
        .porfolio-gallery {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            grid-gap: 30px 30px;
        }

        .portfolio-item {

            img {
                width: 100%;

            }
        }

        .portfolio-content-wrap {
            padding-left: 50px;

            @media (max-width: 991px) {
                padding-left: 10px;
            }
        }
    }

    .detail-05 {
        .porfolio-gallery {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-gap: 30px 30px;
        }

        .portfolio-item {

            img {
                width: 100%;

            }
        }

        .portfolio-content-wrap {
            margin-top: 100px;

            @media (max-width: 991px) {
                margin-top: 80px;
            }
        }
    }

    .detail-07 {

        .portfolio-content-wrap {
            margin-top: 100px;

            @media (max-width: 991px) {
                margin-top: 80px;
            }
        }
    }
}


// Detail 05
.detail-05 {
    .container {
        .col-md-12 {
            img {
                width: 100%;
            }

            .post-grid {
                .col-md-4 {
                    .item {
                        position: relative;
                        margin-bottom: 30px;

                        .grid-image-hover {
                            opacity: 0;
                            top: 0;
                            left: 0;
                            position: absolute;
                            height: 100%;
                            width: 100%;
                            .scale(0.7);
                            background-color: fade(@white, 90%);
                            .transition(all 0.35s ease-in-out);

                            i {
                                font-size: 36px;
                                position: absolute;
                                top: 50%;
                                left: 50%;
                                .translate(-50%, -50%);
                                .transition(all 0.35s ease-in-out);

                                &:hover {
                                    color: var(--primary_color);
                                }
                            }
                        }

                        &:hover {
                            .grid-image-hover {
                                opacity: 1;
                                .scale(0.9);
                            }
                        }
                    }
                }
            }
        }

        &.portfolio-content-wrap {
            margin-top: 50px;

            .col-md-8 {
                text-align: left;

                .portfolio-info {
                    h2 {
                        color: var(--text_color);
                        margin-top: 0;
                        position: relative;
                        font-size: 24px;
                        font-weight: bold;
                        text-transform: uppercase;
                        padding-bottom: 15px;

                        &:before {
                            content: '';
                            height: 1px;
                            width: 50px;
                            background-color: var(--primary_color);
                            position: absolute;
                            bottom: 0;
                            left: 0;
                        }
                    }
                }
            }

            .col-md-4 {
                .portfolio-info {
                    .portfolio-info-box {
                        &:first-child {
                            h6 {
                                margin-top: 0;
                            }
                        }

                        h6 {
                            font-size: 18px;
                            margin-top: 30px;
                            color: var(--text_color);
                            font-weight: bold;
                        }

                        div {
                            line-height: 1.4;
                            color: var(--text_color);
                        }

                        .portfolio-term-cat {
                            span {
                                text-transform: uppercase;
                            }
                        }

                        .portfolio-term-tag {
                            span {
                                padding: 5px 10px;
                                background: #f6f6f6;
                                margin-right: 5px;
                                display: inline-block;
                                margin-top: 5px;
                                border-radius: 3px;

                                &:hover {
                                    color: @white;
                                    background: var(--primary_color);
                                }
                            }
                        }

                        .portfolio-social-profile-wrapper {
                            list-style: none;
                            list-style-type: none;
                            padding: 0;

                            li {
                                display: inline-block;
                                margin: 0 9px;
                                width: 40px;
                                height: 40px;
                                float: left;
                                border: 1px solid @border_color;

                                a {
                                    display: block;

                                    i {
                                        line-height: 38px;
                                        width: 40px;
                                        text-align: center;
                                    }
                                }

                                &:first-child {
                                    margin-left: 0;
                                }

                                &:last-child {
                                    margin-right: 0;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

//-----------------------------------
// PORTFOLIO RELATED
//-----------------------------------
.portfolio-related-wrap {
    .heading-wrap {
        margin-bottom: 40px;

        h2 {
            margin-top: 80px;
            margin-bottom: 25px;
            text-transform: capitalize;
            font-size: 32px;
        }

        .post-navigation {
            margin-top: 100px;

            .nav-links {
                width: 100%;
                margin: 0 auto;
                display: table;

                .nav-previous,
                .nav-next {
                    .post-navigation-content {
                        display: none;
                    }
                }

                .nav-previous,
                .nav-next {
                    position: relative;
                    display: table-cell;
                    width: 50%;
                    -webkit-transition: all 0.35s ease;
                    -o-transition: all 0.35s ease;
                    transition: all 0.35s ease;
                }

                .nav-next {
                    display: table-cell;
                    text-align: right;
                }

                a {
                    div {
                        i {
                            color: var(--text_color);
                            top: 0;
                            margin-top: 0;
                            text-align: center;
                            height: 50px;
                            width: 60px;
                            line-height: 50px;
                            background-color: #f6f6f6;
                            .transition(all 0.35s ease);
                        }

                        &:hover {
                            i {
                                color: var(--primary_color);
                            }
                        }
                    }
                }

                >i {
                    color: var(--text_color);
                    line-height: 50px;
                    font-size: 28px;
                    .transition(all 0.35s ease);
                }
            }
        }

        .heading {
            text-align: center;
            color: var(--text_color);
            font-size: 36px;
            margin-top: 70px;

            .heading-icon {
                font-size: 14px;
                height: 30px;
                width: 30px;
                line-height: 30px;
                position: relative;
                margin: 0 auto;
                z-index: 1;

                i {
                    font-size: 12px;
                    color: var(--primary_color);
                    height: 30px;
                    width: 30px;
                    background-color: @white;
                    line-height: 30px;
                    position: relative;
                    margin: 0 auto;
                    z-index: 1;
                }

                &:before {
                    content: '';
                    width: 70px;
                    height: 1px;
                    background-color: var(--primary_color_fade_50);
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    .translate(-50%, -50%);
                    z-index: -1;
                }
            }

            @media(max-width:479px) {
                font-size: 24px;
                margin-top: 50px;
            }
        }
    }

    .portfolio-wrap {
        margin: 0 -20px;

        @media (max-width: 1299px) {
            margin: 0 -10px;
        }
    }

}