.infra-slider,
.infra-slider .slider-inner,
.infra-slider .slick-list,
.infra-slider .slick-track,
.infra-slider .slick-slide,
.infra-slider figure {
    height: 100%;
}
.infra-slider {
    position: relative;
}
.infra-slider.full-width {
    width: 100vw;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}
.infra-slider .container {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.infra-slider .direction {
    z-index:auto
}
.infra-slider .slider-inner {
    margin-bottom: 0;
}
.infra-slider .slider-item {
    height:100%;
    position:relative;
    vertical-align: middle;
}
.infra-slider .slider-item img {
    width:100%;
    max-width:100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}
.infra-slider .slider-item picture {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.infra-slider .slider-item .caption {
    position: absolute;
    bottom: 28px;
    color: #fff;
    max-width: 420px;
}
.infra-slider .slider-item .caption .caption-description p {
    color:#fff
}
.infra-slider .slider-item figure {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    max-height: 60vh;
    min-height: 300px;
    margin:0;
    position: relative;
}
.infra-slider .slider-item figure:after {
    content: '';
    padding-bottom: 40%;
    display: block;
}
.infra-slider.full-width .slider-item figure:after {
    /* padding-bottom: 70vh; */
}

@media (max-width:1199px) {
}
@media (max-width:991px) {
    .infra-slider .slider-item .caption {
        bottom:calc(50% - 2rem);
        left:10%
    }
    .infra-slider .slider-item .caption .display-1 {
        font-size:2rem
    }
    .infra-slider .slider-item .caption-description {
        display:none
    }
}
@media (max-width:767px) {
    .infra-slider .slider-item .caption {
        bottom:calc(50% - 1.5rem)
    }
    .infra-slider .slider-item .caption .display-1 {
        font-size:1.5rem
    }
    .infra-slider .infra-slider-control .icon-next i,.infra-slider .infra-slider-control .icon-prev i {
        font-size:2rem
    }
}
.infra-slider .slick-arrow {
    border: 0;
    background: none;
    pointer-events: all;
    top: 50%;
    height: auto;
    outline: none;
    position: absolute;
    transform: translateY(-50%);
}
.infra-slider .slick-arrow.slick-prev {
    left: 0;
    right: auto;
}
.infra-slider .slick-arrow.slick-next {
    left: auto;
    right: 0;
}
.infra-slider .slick-arrow > i {
    border-radius: 0;
    background: #fff;
    color: #000;
}
.infra-slider .arrows-wrapper{
}
.infra-slider .arrows-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    text-align: center;
}

.infra-slider .dots-wrapper {
    position: absolute;
    top: 0;
    right: 2rem;
    bottom: 0;
    pointer-events: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.infra-slider .slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 0;
}
.infra-slider .slick-dots li {
    pointer-events: all;
    font-size: 0;
    padding: 10px;
}

.infra-slider .slick-dots li button {
    border-radius: 0;
    width: 4px;
    height: 20px;
    padding: 0;
    font-size: 0;
    min-width: auto;
    border: 0;
    background: #fff;
    transition: width .3s;
    outline: none;
}
.infra-slider .slick-dots li.slick-active button {
    background: #f7941d;
}

.arrows-wrapper-thumbs .slick-dots {
    display: flex;
    flex-wrap: wrap;
}
.arrows-wrapper-thumbs .slick-dots li {
    position: relative;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    cursor: pointer;
}

@media (min-width: 576px) {
    .arrows-wrapper-thumbs .slick-dots li {
        -ms-flex: 0 0 33.3334%;
        flex: 0 0 33.3334%;
        max-width: 33.3334%;
    }
}
@media (min-width: 768px) {
    .arrows-wrapper-thumbs .slick-dots li {
        -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
    }
}
@media (min-width: 992px) {
    .arrows-wrapper-thumbs .slick-dots li {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}
@media (min-width: 1200px) {
    .arrows-wrapper-thumbs:not(.col-md-6) .slick-dots li {
        -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
        max-width: 12.5%;
    }
}
.arrows-wrapper-thumbs .slick-dots li:after {
    content: '';
    display: block;
    padding-bottom: calc( 100% - 1rem );
    transition: all .3s;
    margin: .5rem;
    background: #000;
    opacity: 0.5;
}
.arrows-wrapper-thumbs .slick-dots li:hover:after {
    opacity: 0.25;
}
.arrows-wrapper-thumbs .slick-dots li.slick-active:after {
    opacity: 0;
}
.arrows-wrapper-thumbs .slick-dots li img {
    left: .5rem;
    right: .5rem;
    top: .5rem;
    bottom: .5rem;
    width: calc( 100%  - 1rem);
    height: calc( 100%  - 1rem);
    position: absolute;
    object-fit: cover;
}

.infra-slider.infra-slider-mosaic {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(9, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}

.infra-slider.infra-slider-mosaic .slider-item:nth-child(1) { grid-area: 1 / 1 / 5 / 6; }
.infra-slider.infra-slider-mosaic .slider-item:nth-child(2) { grid-area: 5 / 1 / 6 / 6; }
.infra-slider.infra-slider-mosaic .slider-item:nth-child(3) { grid-area: 1 / 6 / 6 / 13; }
.infra-slider.infra-slider-mosaic .slider-item:nth-child(4) { grid-area: 6 / 1 / 10 / 10; }
.infra-slider.infra-slider-mosaic .slider-item:nth-child(5) { grid-area: 6 / 10 / 10 / 13; }

.infra-slider.infra-slider-mosaic .slider-item picture {
    max-width: 100%;
    height: auto;
    display: block;
}
.infra-slider.infra-slider-mosaic .slider-item picture * {
    max-width: 100%;
    height: auto;
}
