/** Owl Carousel - Modernized */
:root {
    --owl-nav-size: 40px;
    --owl-transition: 0.3s ease-in-out;
}

/* Animate */
.owl-carousel .animated {
    animation-duration: 1000ms;
    animation-fill-mode: both;
}
.owl-carousel .owl-animated-in { z-index: 0; }
.owl-carousel .owl-animated-out { z-index: 1; }
.owl-carousel .fadeOut { animation-name: fadeOut; }

@keyframes fadeOut {
    0% { opacity: 1; }
    100% { opacity: 0; }
}

/* Auto Height */
.owl-height {
    transition: height 500ms ease-in-out;
}

/* Core */
.owl-carousel {
    display: none;
    width: 100%;
    position: relative;
    z-index: 1;
    -webkit-tap-highlight-color: transparent;
}
.owl-carousel.owl-loaded { display: block; }
.owl-carousel.owl-loading { opacity: 0; display: block; }
.owl-carousel.owl-hidden { opacity: 0; }

.owl-carousel .owl-stage {
    position: relative;
}
.owl-carousel .owl-stage::after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-controls .owl-nav .owl-prev,
.owl-carousel .owl-controls .owl-nav .owl-next,
.owl-carousel .owl-controls .owl-dot {
    cursor: pointer;
    user-select: none;
}

.owl-carousel .owl-refresh .owl-item { display: none; }
.owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    user-select: none;
    backface-visibility: hidden;
}
.owl-carousel .owl-item img {
    display: inline-block;
    transform-style: preserve-3d;
}
.owl-carousel.owl-text-select-on .owl-item { user-select: auto; }
.owl-carousel .owl-grab { cursor: grab; }
.owl-carousel.owl-rtl { direction: rtl; }
.owl-carousel.owl-rtl .owl-item { float: right; }

/* No JS fallback */
.no-js .owl-carousel { display: block; }

/* Lazy Load */
.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease;
}

/* Theme - Nav buttons */
.owl-theme .owl-controls .owl-nav div {
    position: absolute;
    top: 50%;
    margin-top: calc(var(--owl-nav-size) / -2);
    width: var(--owl-nav-size);
    height: var(--owl-nav-size);
    line-height: var(--owl-nav-size);
    text-align: center;
    font-size: 0;
    color: #fff;
    background: var(--color-primary);
    border: 0;
    outline: 0;
    cursor: pointer;
    transition: var(--owl-transition);
}
.owl-theme .owl-controls .owl-nav div:hover { background: var(--color-dark); }
.owl-theme .owl-controls .owl-nav div.owl-prev { left: 0; }
.owl-theme .owl-controls .owl-nav div.owl-next { right: 0; }
.owl-theme .owl-controls .owl-nav div.owl-prev::before,
.owl-theme .owl-controls .owl-nav div.owl-next::before {
    font-family: 'FontAwesome';
    font-size: 14px;
    color: #fff;
    transition: var(--owl-transition);
}
.owl-theme .owl-controls .owl-nav div.owl-prev::before { content: "\f104"; }
.owl-theme .owl-controls .owl-nav div.owl-next::before { content: "\f105"; }
.owl-theme .owl-controls .owl-nav div.owl-prev:hover::before,
.owl-theme .owl-controls .owl-nav div.owl-next:hover::before { color: var(--color-primary); }
