/**
 *  
 *  STYLE FOR IMAGE CAROUSEL 
 *
 *
 *  1.1. Image Carousel layout 1 - style 1
 *
 *  1.2. Image Carousel layout 1 - style 2
 *
 *  1.3. Image Carousel layout 1 - style 3
 *
 *  1.4. Image Carousel layout 2
 *
 *  1.5. Image Carousel layout 3
 *
 *
 *
 */


/*----------  1.1. Image Carousel layout 1 - style 1 ----------*/
    .slz-image-carousel {
        margin-left: -15px;
        margin-right: -15px;
        position: relative;
    }
    .slz-image-carousel .item {
        padding: 0 15px;
        position: relative;
    }
    .slz-image-carousel .btn {
        position: absolute;
        z-index: 10;
        top: 50%;
        font-size: 0;
        opacity: 0;
        visibility: hidden;
        background-color: transparent;
        transition: all 0.3s ease;

        -webkit-transform: translate(0, -50%);
           -moz-transform: translate(0, -50%);
            -ms-transform: translate(0, -50%);
                transform: translate(0, -50%);
    }

    .slz-image-carousel .btn:hover,
    .slz-image-carousel .btn:focus
    .slz-image-carousel .btn:active {
        box-shadow: none;
    }

    .slz-image-carousel .icons {
        font-size: 50px;
    }

    .slz-image-carousel .btn-prev {
        left: -50px;
    }

    .slz-image-carousel .btn-next {
        right: -50px;
        left: auto;
    }

    .slz-image-carousel:hover .btn-prev {
        left: 20px;
        opacity: 1;
        visibility: visible;
    }

    .slz-image-carousel:hover .btn-next {
        right: 20px;
        opacity: 1;
        visibility: visible;
    }

    .slz-image-carousel .btn-prev .icons:before {
        content: "\f104";
    }

    .slz-image-carousel .btn-next .icons:before {
        content: "\f105";
    }

    .slz-image-carousel .slick-dotted.slick-slider {
        margin-bottom: 40px;
    }

    .slz-image-carousel .slick-dots {
        padding: 0;
        margin: 0;
        bottom: -35px;
        z-index: 1;
    }

    .slz-image-carousel .slick-dots li button {
        padding: 0;
    }

    .slz-image-carousel .slick-dots li button:before {
        font-size: 12px;
        transition: all 0.3s ease;
    }

    .slz-image-carousel .block-image:before {
        padding-top: 100%;
    }

/*----------  1.2. Image Carousel layout 1 - style 2 ----------*/
    .slz-image-carousel.style-2 {
        margin: 0;
    }

    .slz-image-carousel.style-2 .item {
        padding: 0;
    }

/*----------  1.3. Image Carousel layout 1 - style 3 ----------*/
    .slz-image-carousel.style-3 .item:nth-child(odd) {
        margin-top: 50px;
    }

    .dh-container {
        position: relative;
        overflow: hidden;
    }

    .dh-overlay {
        position: absolute;
        top: -100%;
        height: 100%;
        width: 100%;
        background-color: rgba(0, 0, 0, 0.6);
    }

/*----------  1.4. Image Carousel layout 2  ----------*/

    .slz-carousel-mockup {
        position: relative;
        overflow: hidden;
        padding-top: 6%;
        padding-bottom: 6%;
    }

    .slz-carousel-mockup.style-2 {
        padding-top: 0;
        padding-bottom: 0;
    }

    .slz-carousel-mockup.style-2 .item {
        padding: 0 15px 50px 15px;
    }

    .slz-carousel-mockup .carousel-overflow {
        position: relative;
    }

    .slz-carousel-mockup .slick-list {
        overflow: visible;
    }

    .slz-carousel-mockup.slz-image-carousel .slick-dotted.slick-slider {
        margin-bottom: 0;
    }
    
    .slz-carousel-mockup .block-image,
    .slz-carousel-mockup.style-2 .slick-center .block-image {
        position: relative;
        -webkit-box-shadow: 8px 15px 10px 0px rgba(0,0,0,0.15);
        -moz-box-shadow: 8px 15px 10px 0px rgba(0,0,0,0.15);
        box-shadow: 8px 15px 10px 0px rgba(0,0,0,0.15);
    }

    .slz-carousel-mockup .slick-center .block-image {
        box-shadow: none;
    }

    .slz-carousel-mockup .block-image:before{
        padding-top: 177.5%;
    }

    .slz-carousel-mockup .block-image > a{
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left:0;
        overflow: hidden;
        /*pointer-events: none;*/
    }

    .slz-carousel-mockup .block-image a:after {
        content: none;
    }

    .slz-carousel-mockup .item:not(.slick-current) .block-image a:before {
        position: absolute;
        opacity: 0;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        z-index: 10;
        content: "";
        background-color: rgba(0, 0, 0, 0.5);
        transition: all 0.3s ease;
    }

    .slz-carousel-mockup.style-2 .item.slick-current .block-image a:before {
        position: absolute;
        opacity: 0;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        z-index: 10;
        content: "";
        background-color: rgba(0, 0, 0, 0.5);
        transition: all 0.3s ease;
    }

    .slz-carousel-mockup .item .block-image:hover a:before,
    .slz-carousel-mockup.style-2 .item.slick-current .block-image:hover a:before {
        opacity: 1;
    }
    
    .slz-carousel-mockup .slick-slide .block-image > a .img-slider-item{
        position: absolute;
        height: 100%;
        width:auto;
        left: 50%;
        max-width: initial;
        top: 0;
        transform: translate(-50%,0);
        -webkit-transform: translate(-50%,0);
        -moz-transform: translate(-50%,0);
        -ms-transform: translate(-50%,0);
        -o-transform: translate(-50%,0);
    }

    .slz-carousel-mockup .slider-mockup {
        position: absolute;
        top: 0px;
        left: 50%;
        bottom: 0px;
        height:100%;
        min-width: 274px;
        background: none;
        transform: translate(-50%, 0px);
        pointer-events: none;
    }

    .slz-carousel-mockup .slider-mockup:before{
        content:none;
    }

    .slz-carousel-mockup .slider-mockup img{
        position: absolute;
        height: 130% !important;
        width:auto;
        left: 50%;
        top: -15%;
        display: block;
        transform: translate(-50%,0);
        -webkit-transform: translate(-50%,0);
        -moz-transform: translate(-50%,0);
        -o-transform: translate(-50%,0);
        -o-transform: translate(-50%,0);
    }

    .slz-carousel-mockup.slz-image-carousel .slick-dots {
        bottom: 10px;
    }

    .slz-carousel-mockup.slz-image-carousel.style-2 .slick-dots {
        bottom: 60px;
    }

    .slz-carousel-mockup .btn {
        top: auto;
        bottom: 20px;
        padding: 0px 15px;
        line-height: 1;
        border:none;
        opacity: 1;
        visibility: visible;
    }

    .slz-carousel-mockup.style-2 .btn {
        bottom: 0px;
    }

    .slz-carousel-mockup .icons {
        font-size: 40px;
    }

    .slz-carousel-mockup .btn.btn-prev{
        left: 45%;
        -moz-transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        -o-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
    }

    .slz-carousel-mockup .btn.btn-next{
        right: 45%;
        -moz-transform: translateX(100%);
        -webkit-transform: translateX(100%);
        -o-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
    }

    .slz-carousel-mockup .image-title {
        text-align: center;
        position: absolute;
        text-transform: capitalize;
        font-size: 20px;
        bottom: 5px;
        z-index: 5;
        left: 50%;
        transform: translateX(-50%);
        opacity: 0;
        visibility: hidden;
    }

    .slz-carousel-mockup.style-2 .item.slick-center .image-title {
        opacity: 1;
        visibility: visible;
    }

/*----------  1.5. Image Carousel layout 3  ----------*/

    .slz-carousel-syncing {
        position: relative;
        margin: 0 auto;
        overflow: hidden;
    }

    .slz-carousel-syncing .slider-for .item {
        padding: 0;
    }

    .slz-carousel-syncing .slider-for .image-gallery-wrapper {
        display: block;
        position: relative;
        overflow: hidden;
        margin-bottom: 0;
        background-color: #fff;
    }

    .slz-carousel-syncing .slider-for .image-gallery-wrapper:before {
        display: block;
        content: '';
        padding-top: 57%;
    }

    .slz-carousel-syncing .slider-for .image-gallery-wrapper .images {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 3;
    }

    .slz-carousel-syncing .slider-for .image-gallery-wrapper img {
        width: auto;
        height: 100%;
        max-width: none;
        position: absolute;
        top: 0;
        left: 50%;
        margin: 0;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
    }

    .slz-carousel-syncing .slider-for + .slider-nav {
        margin-top: 10px;
    }

    .slz-carousel-syncing .slider-nav {
        margin: 0 -5px;
    }

    .slz-carousel-syncing .slider-nav .item {
        padding: 0 5px 0 5px;
        cursor: pointer;
    }

    .slz-carousel-syncing .slider-nav + .slider-for {
        margin-top: 10px;
    }

/*----------  1.6. Image Carousel centermode  --------*/
    .slz-carousel-centermode.slz-image-carousel  {
        margin: 0;
    }

    .slz-carousel-centermode.slz-image-carousel .item {
        padding: 0;
    }

    .slz-carousel-centermode:hover .btn-prev {
      left: 22%;
    }

    .slz-carousel-centermode:hover .btn-next {
      right: 22%;
    }

    .slz-carousel-centermode .block-image:before {
        padding-top: 67%;
    }

    .slz-carousel-centermode .block-image:after {
        position: absolute;
        content: "";
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 3;
        background-color: rgba(0, 0, 0, 0.5);
        transition: all 0.5s ease;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
    }

    .slz-carousel-centermode .slick-current .block-image:after {
        opacity: 0;
        visibility: hidden;
    }

/*===========================================
=            RESPONSIVE                     =
===========================================*/

    @media screen and (max-width: 1024px) {
        .slz-carousel-mockup .block-image:before {
            padding-top: 160%;
        }

        .slz-carousel-mockup .btn {
            bottom: 15px;
        }
    }

    @media screen and (max-width: 768px) {
        .slz-carousel-mockup {
            padding-top: 60px;
            padding-bottom: 60px;
        }

        .slz-carousel-mockup .btn {
            bottom: 17px;
        }
    }

    @media screen and (max-width: 767px) {
        .slz-image-carousel {
            margin: 0 -10px;
        }

        .slz-image-carousel .item {
            padding: 0 10px;
        }

        .slz-carousel-mockup.style-2 .item {
            padding: 0 10px 50px 10px;
        }

        .slz-carousel-mockup {
            padding-top: 70px;
            padding-bottom: 70px;
            margin: 0;
        }

        .slz-carousel-mockup .slider-mockup {
            min-width: 320px;
        }
    }

    @media screen and (max-width: 480px) {

        .slz-carousel-mockup.style-2 .item {
            padding: 0 10px;
        }

        .slz-carousel-mockup.slz-image-carousel.style-2 .slick-dots {
            bottom: 10px;
        }
    }

    @media screen and (max-width: 414px) {
        .slz-image-carousel.style-3 .item:nth-child(odd) {
            margin-top: 0;
        }

        .slz-carousel-syncing .slider-for .image-gallery-wrapper:before {
            padding-top: 100%;
        }
    }
/*=====  End of RESPONSIVE  ================*/