/*
 * Sass CSS3 Mixins! The Cross-Browser CSS3 Sass Library
 * Extend */

.bp-element-our-works {
    .thumbnail {
        overflow: hidden;
        position: relative;
        min-height: 512px;
        img {
            max-width: unset;
            width: unset !important;
            transform: translate(-50%, -50%);
            position: absolute;
            left: 50%;
            top: 50%;
        }
    }
    .item-info {
        padding-left: 80px;
        position: absolute;
        right: 0;
        top: 34px;
        width: 350px;
        opacity: 0;
        visibility: hidden;
        transition: all 0.5s;
        .title {
            font-size: 18px;
            font-weight: 600;
            line-height: 1.13;
            letter-spacing: 1.1px;
            padding-bottom: 14px;
            margin-bottom: 55px;
            position: relative;
            margin-left: -80px;
            &:before {
                content: '';
                position: absolute;
                bottom: -20px;
                left: 80px;
                width: 68px;
                height: 2px;
                transition: all 0.5s;
            }
        }
        .des {
            color: #bebebe;
        }
        .button {
            height: 50px;
            line-height: 46px;
            -webkit-border-radius: 25px;
            -moz-border-radius: 25px;
            border-radius: 25px;
            border: solid 2px #ffffff;
            padding: 0 50px;
            font-size: 16px;
            font-weight: 500;
            letter-spacing: 0.3px;
            color: #ffffff;
            background: none;
            margin-top: 70px;
        }
    }
    .view-all {
        height: 92px;
        text-align: center;
        position: relative;
        a {
            display: inline-block;
            position: absolute;
            left: 50%;
            margin-left: -15px;
            bottom: 0;
            font-size: 16px;
            font-weight: 500;
            letter-spacing: 0.3px;
            color: #bebebe;
            padding-left: 40px;
            line-height: 12px;
            text-transform: uppercase;
            &:before {
                content: '';
                width: 30px;
                height: 1px;
                background-color: #464646;
                position: absolute;
                bottom: 0;
                left: 0;
            }
        }
    }
    &.layout-1 {
        .our-works-title {
            padding-top: 143px;
            padding-bottom: 72px;
            .title {
                font-size: 20px;
                font-weight: normal;
                line-height: 1;
                letter-spacing: 1.6px;
                display: inline-block;
                width: 40%;
                margin: 0;
            }
        }
        .nav-filter {
            float: right;
            display: inline-block;
            width: 60%;
        }
        .cat-list {
            display: flex;
            list-style: none;
            justify-content: flex-end;
            margin: 14px 0 0;
            li {
                padding: 0 32px;
                &:last-child {
                    padding-right: 0;
                }
                &:first-child {
                    padding-left: 0;
                }
                a {
                    font-size: 20px;
                    letter-spacing: 0.6px;
                    position: relative;
                    padding-bottom: 5px;
                    border-bottom: 1px solid transparent;
                    cursor: pointer;
                    &:before {
                        content: '';
                        position: absolute;
                        bottom: -8px;
                        left: 50%;
                        width: 0;
                        height: 0;
                        border-left: 8px solid transparent;
                        border-right: 8px solid transparent;
                        opacity: 0;
                    }
                    &:after {
                        content: '';
                        position: absolute;
                        bottom: -7px;
                        left: 50%;
                        width: 0;
                        height: 0;
                        border-left: 7px solid transparent;
                        border-right: 7px solid transparent;
                        border-top: 7px solid #13223b;
                        transform: translate(-50%, 0);
                        opacity: 0;
                    }
                }
                &.current a {
                    &:before, &:after {
                        opacity: 1;
                    }
                }
                &:hover a {
                    &:before, &:after {
                        opacity: 1;
                    }
                }
            }
        }
        .our-works-content {
            margin-bottom: -1px;
        }
        .loop-wrapper .item {
            width: 25%;
        }
        .item__inner {
            position: relative;
        }
        .item__thumbnail {
            position: relative;
            &:before {
                content: '';
                width: 100%;
                height: 100%;
                position: absolute;
                top: 0;
                left: 0;
                opacity: 0;
                visibility: hidden;
                transition: all 0.5s;
            }
            &:after {
                content: '';
                position: absolute;
                left: 15px;
                right: 15px;
                bottom: 15px;
                top: 15px;
                border: 1px solid rgba(255, 255, 255, 0.6);
                opacity: 0;
                visibility: hidden;
                transition: all 0.5s;
            }
        }
        .item__info {
            position: absolute;
            left: 0;
            top: 50%;
            width: 100%;
            padding: 0 60px;
            text-align: center;
            transform: translate(0%, -50%);
            opacity: 0;
            visibility: hidden;
            transition: all 0.5s;
            i {
                font-size: 50px;
                margin-bottom: 17px;
            }
        }
        .item__title {
            font-size: 14px;
            line-height: normal;
            font-weight: 500;
            letter-spacing: 0.9px;
            position: relative;
            margin: 0 0 3px;
            text-transform: uppercase;
            a {
                font-size: 20px;
            }
        }
        .item__category {
            font-size: 18px;
            font-weight: 300;
            line-height: 1.44;
            letter-spacing: 0.5px;
        }
        .item:hover {
            .item__thumbnail {
                &:before {
                    opacity: 0.7;
                    visibility: visible;
                }
                &:after {
                    opacity: 1;
                    visibility: visible;
                }
            }
            .item__info {
                opacity: 1;
                visibility: visible;
            }
        }
    }

    &.layout-2 {
        display: flex;
        .our-works-title {
            width: 200px;
        }
        .our-works-content {
            flex-grow: 1;
            .item {
                width: 315px;
                height: 484px;
            }
        }
    }
}