﻿.snip_hvr {
    position: relative;
    float: left;
    overflow: hidden;
    width: 100%;
    background: #000;
    color: #fff;
}

    .snip_hvr .caption {
        display: flex;
        align-items: center;
        justify-content: center;
    }

        .snip_hvr .caption h1 {
            margin: 0;
            font-size: 75px;
        }

        .snip_hvr .caption .sol {
            text-align: left;
        }

            .snip_hvr .caption .sol h3,
            .snip_hvr .caption .sol h4 {
                font-size: 30px;
                letter-spacing: -2px;
                color: #FFEB3B;
                margin: 0;
            }

            .snip_hvr .caption .sol h4 {
                color: #fff;
            }

    .snip_hvr * {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .snip_hvr img {
        max-width: 100%;
        opacity: 1;
        width: 100%;
        -webkit-transition: opacity 0.35s;
        transition: opacity 0.35s;
    }

    .snip_hvr figcaption {
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        left: 50%;
        position: absolute;
        top: 50%;
        margin: 0 auto;
        text-align: center;
    }


    .snip_hvr h2,
    .snip_hvr p {
        margin: 0 0 5px;
        opacity: 0;
        -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
        transition: opacity 0.35s,-webkit-transform 0.35s,-moz-transform 0.35s,-o-transform 0.35s,transform 0.35s;
    }

    .snip_hvr h2 {
        font-size: 12px;
        position: relative;
        margin: 10px auto;
        font-weight: normal;
        -webkit-transform: translate3d(30%, 0%, 0);
        transform: translate3d(30%, 0%, 0);
        -webkit-transition-delay: 0.3s;
        transition-delay: 0.3s;
    }

    .snip_hvr p {
        font-weight: 200;
        -webkit-transform: translate3d(0%, 30%, 0);
        transform: translate3d(0%, 30%, 0);
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
    }

    .snip_hvr a {
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        position: absolute;
        color: #ffffff;
    }

    .snip_hvr:hover img,
    .snip_hvr.hover img {
        opacity: 0.7;
    }

    .snip_hvr:hover figcaption h2,
    .snip_hvr.hover figcaption h2 {
        opacity: 1;
        -webkit-transform: translate3d(0%, 0%, 0);
        transform: translate3d(0%, 0%, 0);
        -webkit-transition-delay: 0.4s;
        transition-delay: 0.4s;
    }

    .snip_hvr:hover figcaption p,
    .snip_hvr.hover figcaption p {
        opacity: 1;
        color: #fff;
        -webkit-transform: translate3d(0%, 0%, 0);
        transform: translate3d(0%, 0%, 0);
        -webkit-transition-delay: 0.6s;
        transition-delay: 0.6s;
    }

    .snip_hvr:hover figcaption::before,
    .snip_hvr.hover figcaption::before {
        background: rgba(255, 255, 255, 0);
        left: 30px;
        opacity: 1;
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
    }

.collection {
    position: relative;
    margin: 0 0 30px;
    padding: 0;
    /*box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);*/
}

    .collection:before {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        filter: alpha(opacity=0);
        opacity: 0;
        -webkit-transition: transform 0.3s ease-out,opacity 0.3s ease-out;
        -moz-transition: transform 0.3s ease-out,opacity 0.3s ease-out;
        -ms-transition: transform 0.3s ease-out,opacity 0.3s ease-out;
        -o-transition: transform 0.3s ease-out,opacity 0.3s ease-out;
        transition: transform 0.3s ease-out,opacity 0.3s ease-out;
        -webkit-transform: translateY(-30px) scaleY(0.3);
        -ms-transform: translateY(-30px) scaleY(0.3);
        transform: translateY(-30px) scaleY(0.3);
        -webkit-transform-origin: bottom;
        -moz-transform-origin: bottom;
        transform-origin: bottom;
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        width: 100%;
        height: 100%;
        background-color: #000;
    }

    .collection img {
        display: block;
        width: 100%;
        height: auto;
    }

    .collection img, .collection svg {
        -webkit-transform: translateZ(0);
        -ms-transform: translateZ(0);
        transform: translateZ(0);
        position: relative;
        z-index: 0;
    }

.collection-title {
    font-size: 12px;
    -webkit-transition: transform 0.3s ease-out,background-color 0.3s ease-out;
    -moz-transition: transform 0.3s ease-out,background-color 0.3s ease-out;
    -ms-transition: transform 0.3s ease-out,background-color 0.3s ease-out;
    -o-transition: transform 0.3s ease-out,background-color 0.3s ease-out;
    transition: transform 0.3s ease-out,background-color 0.3s ease-out;
    position: absolute;
    bottom: 30px;
    left: 0;
    z-index: 2;
    width: 100%;
    margin: 0;
    padding: 20px 10px 20px 0;
    background-color: rgba(0,0,0,0.4);
    font-family: "Montseratt",sans-serif;
    text-align: right;
    color: #fff;
}

.collection-description {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    padding: 55px 40px 30px 55px;
    color: #fff;
}

    .collection-description:before {
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        transform: scale(1, 0);
        top: 15px;
        left: 30px;
        width: 1px;
        height: 60px;
    }

    .collection-description:before, .collection-description:after {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        filter: alpha(opacity=0);
        opacity: 0;
        -webkit-transition: transform 0.3s ease-out 0.4s,opacity 0.2s ease-out 0.3s;
        -moz-transition: transform 0.3s ease-out 0.4s,opacity 0.2s ease-out 0.3s;
        -ms-transition: transform 0.3s ease-out 0.4s,opacity 0.2s ease-out 0.3s;
        -o-transition: transform 0.3s ease-out 0.4s,opacity 0.2s ease-out 0.3s;
        transition: transform 0.3s ease-out 0.4s,opacity 0.2s ease-out 0.3s;
        -webkit-transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        transform-origin: 0 0;
        content: '';
        position: absolute;
        display: block;
        background-color: #fff;
    }

    .collection-description:after {
        -webkit-transform: scale(0, 1);
        -ms-transform: scale(0, 1);
        transform: scale(0, 1);
        top: 30px;
        left: 15px;
        width: 60px;
        height: 1px;
    }

    .collection-description p {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        filter: alpha(opacity=0);
        opacity: 0;
        -webkit-transition: transform 0.2s ease-out 0.3s,opacity 0.2s linear 0.3s;
        -moz-transition: transform 0.2s ease-out 0.3s,opacity 0.2s linear 0.3s;
        -ms-transition: transform 0.2s ease-out 0.3s,opacity 0.2s linear 0.3s;
        -o-transition: transform 0.2s ease-out 0.3s,opacity 0.2s linear 0.3s;
        transition: transform 0.2s ease-out 0.3s,opacity 0.2s linear 0.3s;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px);
        margin: 0;
    }

.link--overlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    text-indent: -9999px;
}

.collection:hover:before {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
    filter: alpha(opacity=40);
    opacity: 0.4;
    -webkit-transform: translateY(0) scaleY(1);
    -ms-transform: translateY(0) scaleY(1);
    transform: translateY(0) scaleY(1);
}

.collection:hover .collection-title {
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    background-color: transparent;
}

.collection:hover .collection-description:before, .collection:hover .collection-description:after {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    opacity: 1;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
}

.collection:hover .collection-description p {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.snip0078 {
    position: relative;
    margin: 5px;
    margin-bottom: 10%;
    min-width: 220px;
    max-width: 380px;
    max-height: 310px;
    float: left;
}

    .snip0078 * {
        -webkit-box-sizing: padding-box;
        box-sizing: padding-box;
    }

    .snip0078 img {
        opacity: 1;
        max-width: 100%;
        border: 10px solid #000000;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
    }

    .snip0078 figcaption {
        bottom: -25%;
        width: 90%;
        right: 0;
        position: absolute;
        background: #000000;
        padding: 20px;
        -webkit-transition: all 0.3s;
        transition: all 0.3s;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        box-shadow: 0 0px 10px -10px #000000;
    }

        .snip0078 figcaption h2,
        .snip0078 figcaption p {
            margin: 0;
            color: #000;
        }

        .snip0078 figcaption h2 {
            font-size: 12px;
            font-weight: 400;
            margin-bottom: 15px;
        }

            .snip0078 figcaption h2 span {
                font-weight: 800;
            }

        .snip0078 figcaption p {
            font-size: 10px;
            font-weight: 500;
            opacity: 0.65;
            max-height: 4em;
            overflow: hidden;
        }

    .snip0078 a {
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        position: absolute;
        z-index: 1;
    }

    .snip0078.blue figcaption {
        background: #1b557a;
    }

    .snip0078.blue img {
        border: 10px solid #1b557a;
    }

    .snip0078.red figcaption {
        background: #fff;
    }

    .snip0078.red img {
        border: 10px solid #fbfbfb;
    }

    .snip0078.yellow figcaption {
        background: #a85913;
    }

    .snip0078.yellow img {
        border: 10px solid #a85913;
    }

    .snip0078:hover figcaption,
    .snip0078.hover figcaption {
        -webkit-transform: translateY(-8px);
        transform: translateY(-8px);
        box-shadow: 0 15px 15px -15px #000000;
    }

    .snip0078:hover.blue img,
    .snip0078.hover.blue img {
        border: 10px solid #2980b9;
    }

    .snip0078:hover.red img,
    .snip0078.hover.red img {
        border: 10px solid #04223c;
    }

    .snip0078:hover.yellow img,
    .snip0078.hover.yellow img {
        border: 10px solid #e67e22;
    }


@media (max-width:767px) {
    .snip_hvr .caption .sol h3, .snip_hvr .caption .sol h4 {
        font-size: medium;
    }

    .snip_hvr .caption h1 {
        font-size: large;
    }

    .snip0078 {
        margin-bottom: 15%;
    }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait) {
    .snip0078 {
        max-width: 240px !important;
    }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
    .snip0078 {
        max-width: 313px;
    }
}

@media only screen and (min-device-width: 1024px) and (max-device-width: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait) {
    .snip0078 {
        max-width: 313px !important;
    }
}
