.carousel__container{
    position:relative;
    opacity:1;
    transition:opacity 0.3s ease-in-out;
}

.carousel__container--canvas .slick-prev,
.carousel__container--canvas .slick-next{
    border:none;
    background-color:transparent;
}

.carousel__container.loading{
    min-height:100px;
    /* 	opacity: 0; */
}

.slick-prev, .slick-next{
    /* VERTICAL | HORIZONTAL CENTER ALIGN CROSS-BROWSER, height: must be declared */
    margin: auto;
    position: absolute;
    top: 0; bottom: 0;
    border-radius:50%;
    border:1px solid #eaeaea;
    height:40px;
    width:40px;
    color:#a10000;
    display:inline-block;
    text-align:center;
    font-size:12px;
    cursor:pointer;
    transition:all 0.3s ease-in-out;
    background:#fff;
    z-index:1;
}

.slick-prev .i-arrow:before, .slick-next .i-arrow:before{
    font-size:10px;
}

.canvasCarousel__nav .slick-prev, .canvasCarousel__nav .slick-next{
    border:none;
    background-color:transparent;
}

/* HOME PRODUCTS CAROUSEL */
.carousel__container .slick-dots{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    margin: auto;
    padding: 15px 25px;
}
.carousel__container .slick-dots li{
    margin-right:14px;
}

.carousel__container .slick-dots li:last-child{
    margin-right:0
}

.carousel__container .slick-dots li button{
    background:transparent;
    display:block;
    color:transparent;
    padding:0;
    width:12px;
    height:12px;
    border-radius:50%;
    border:1px solid #b3b3b3;
}

.carousel__container .slick-dots li.slick-active button{
    background:#b3b3b3
}

/* HOME CANVAS CAROUSEL */

.carousel__container--canvas .slick-dots{
    position:absolute;
    display:flex;
    justify-content:center;
    margin: 0 auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    padding: 15px 25px;
}

.carousel__container--canvas .slick-dots li{
    margin-right:14px;
}

.carousel__container--canvas .slick-dots li:last-child{
    margin-right:0
}

.carousel__container--canvas .slick-dots li button{
    background:transparent;
    display:block;
    color:transparent;
    padding:0;
    width:12px;
    height:12px;
    border-radius:50%;
    border:1px solid #FFF;
}

.carousel__container--canvas .slick-dots li.slick-active button{
    background:#fff
}

.carouselCollectionTab__container button.slick-next, .carouselCollectionTab__container button.slick-prev {
    margin-top: -136px;
}

/**
 * PRODUCT CAROUSEL
 */

/* TODO: STANDARDIZE ALL CAROUSEL CLASSES FOR BETTER SUPPORT (BEM STRUCTURE) */
.row--productCarousel .carousel__title,
.productCarouselComponentContainer .productCarouselTitle,
.carousel__collection__title{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex; /* NON GRID BROWSER SUPPORT FOR TITLE LINES */
    font-family: MuseoSans, sans-serif;
    font-weight: 700;
    font-size:25px;
    color: #000;
    margin: 30px 60px;
}
.row--productCarousel .slick-prev,
.row--productCarousel .slick-next{
    border: 1px solid #e5e5e5;
    margin-top: -66px;
}

/* NON GRID BROWSER SUPPORT FOR TITLE LINES */
.row--productCarousel .carousel__title:before, .row--productCarousel .carousel__title:after,
.productCarouselComponentContainer .productCarouselTitle:before, .productCarouselComponentContainer .productCarouselTitle:after,
.carousel__collection__title:before, .carousel__collection__title:after{
    display:block; /* IE HACK */
    content: "";
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    border-top: 1px solid lightgrey;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin: auto 10px;
}

@supports (display: grid){
    .row--productCarousel .carousel__title,
    .productCarouselComponentContainer .productCarouselTitle,
    .carousel__collection__title{
        display:grid;
        grid-template-columns:1fr auto 1fr;
        grid-gap:1em;
        align-items:center;
    }

    .row--productCarousel .carousel__title:before, .row--productCarousel .carousel__title:after,
    .productCarouselComponentContainer .productCarouselTitle:before, .productCarouselComponentContainer .productCarouselTitle:after,
    .carousel__collection__title:before, .carousel__collection__title:after{
        margin:0; /* RESET MARGIN FROM FLEX LAYOUT */
    }

}
/**
 * PRODUCT CAROUSEL MEDIA QUERIES
 */

@media (min-width: 704px) {
    .row--productCarousel .carousel__title,
    .productCarouselComponentContainer .productCarouselTitle,
    .carousel__collection__title{
        font-size:30px;
    }
}