/**
 * Slider widget styles.
 *
 * Adapted from Happy Addons for Elementor (GPL-2.0+), copied verbatim from
 * assets/css/widgets/common.min.css (wrapper rules for the "happy-addon"
 * class the widget keeps) and assets/css/widgets/slider-carousel.min.css.
 */

/* common.min.css (wrapper rules) */
.happy-addon>.elementor-widget-container{word-wrap:break-word;overflow-wrap:break-word}.happy-addon>.elementor-widget-container,.happy-addon>.elementor-widget-container *{-webkit-box-sizing:border-box;box-sizing:border-box}.happy-addon:not(:has(.elementor-widget-container)),.happy-addon:not(:has(.elementor-widget-container)) *{-webkit-box-sizing:border-box;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word}.happy-addon p:empty{display:none}.happy-addon .elementor-inline-editing{min-height:auto!important}

/* slider-carousel.min.css */
.ha-carousel .slick-vertical .slick-slide,.ha-slider .slick-vertical .slick-slide{border:0}.ha-carousel .slick-next,.ha-carousel .slick-prev,.ha-slider .slick-next,.ha-slider .slick-prev{z-index:999;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;padding:0;border:1px solid rgba(255,255,255,.8);border-radius:50%;background-color:rgba(255,255,255,.8);color:#8c8c8c;font-size:15px;opacity:1}.ha-carousel .slick-next:focus,.ha-carousel .slick-next:hover,.ha-carousel .slick-prev:focus,.ha-carousel .slick-prev:hover,.ha-slider .slick-next:focus,.ha-slider .slick-next:hover,.ha-slider .slick-prev:focus,.ha-slider .slick-prev:hover{background-color:#fff;color:#8c8c8c}.ha-carousel .slick-next:before,.ha-carousel .slick-prev:before,.ha-slider .slick-next:before,.ha-slider .slick-prev:before{display:none;content:""}.ha-carousel .slick-next>svg,.ha-carousel .slick-prev>svg,.ha-slider .slick-next>svg,.ha-slider .slick-prev>svg{width:auto;height:1em;fill:currentColor}.ha-carousel .slick-disabled,.ha-slider .slick-disabled{opacity:.7}.ha-carousel .slick-prev,.ha-slider .slick-prev{right:auto;left:25px}.ha-carousel .slick-next,.ha-slider .slick-next{right:25px}.ha-carousel .slick-dots,.ha-slider .slick-dots{bottom:-40px}.ha-carousel .slick-dots li,.ha-slider .slick-dots li{margin-right:2px;margin-left:2px}.ha-carousel .slick-dots li button:focus,.ha-carousel .slick-dots li button:hover,.ha-slider .slick-dots li button:focus,.ha-slider .slick-dots li button:hover{background-color:transparent}.ha-carousel .slick-dots li button:before,.ha-slider .slick-dots li button:before{color:#1b1b1b;opacity:1}.ha-carousel .slick-dots .slick-active button:before,.ha-carousel .slick-dots li button:hover:before,.ha-slider .slick-dots .slick-active button:before,.ha-slider .slick-dots li button:hover:before{-webkit-transform:scale(1.5);-ms-transform:scale(1.5);transform:scale(1.5)}.ha-carousel .slick-next,.ha-carousel .slick-prev{width:2.66em;height:2.66em}.ha-slider .slick-next,.ha-slider .slick-prev{width:3.33em;height:3.33em}.ha-carousel .slick-slider:not(.slick-vertical) .slick-slide{padding-right:5px;padding-left:5px}.ha-carousel .slick-slider.slick-vertical .slick-slide{padding-top:5px;padding-bottom:5px}.ha-slick-item{position:relative;display:inline-block;overflow:hidden;vertical-align:bottom}.ha-slick-content{position:absolute;bottom:0;padding:1.5rem;width:100%;background:-webkit-gradient(linear,left top,left bottom,from(transparent),to(rgba(0,0,0,.3)));background:-webkit-linear-gradient(transparent,rgba(0,0,0,.3));background:linear-gradient(transparent,rgba(0,0,0,.3))}.ha-slick-title{display:block;margin-top:0;margin-bottom:.2rem;color:#fff;font-size:20px}.ha-slick-subtitle{margin:0;color:#fff}

/* Own slider (no slick): the track is a row of full-width slides moved with
   a transform; with "fade" the slides share one cell and cross-fade. The
   first slide shows from the first paint, at its final size. */
.cbe-slider {
	position: relative;
	overflow: hidden;
}

.cbe-slider .ha-slick {
	display: flex;
	transition: transform var(--cbe-speed, 300ms) ease;
	will-change: transform;
	touch-action: pan-y;
}

/* Other stylesheets on the site still carry slick's ".slick-slide { display:
   none }" (shown by slick's own init): override it. */
.cbe-slider .ha-slick > .ha-slick-slide {
	display: block;
	flex: 0 0 100%;
	min-width: 0;
	height: auto;
	float: none;
}

.cbe-slider--fade .ha-slick {
	display: grid;
	transition: none;
}

.cbe-slider--fade .ha-slick-slide {
	grid-area: 1 / 1;
	opacity: 0;
	transition: opacity var(--cbe-speed, 300ms) ease;
}

.cbe-slider--fade .ha-slick-slide.slick-active {
	opacity: 1;
}

.cbe-slider .ha-slick-item {
	display: block;
}

.ha-slick-img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	user-select: none;
	-webkit-user-drag: none;
}

/* Arrows and dots wait for the script (no dead buttons before it runs). */
.cbe-slider:not(.is-ready) .slick-arrow,
.cbe-slider:not(.is-ready) .slick-dots {
	visibility: hidden;
}

.cbe-slider .slick-prev,
.cbe-slider .slick-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
}

/* Dots as slick-theme drew them: the style controls target button:before. */
.cbe-slider .slick-dots {
	position: absolute;
	right: 0;
	left: 0;
	display: block;
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: center;
}

/* The dots sit under the slider (bottom: -40px): clip the sides only. */
.cbe-slider:has(.slick-dots) {
	overflow: visible;
	clip-path: inset(0 0 -60px 0);
}

.cbe-slider .slick-dots li {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 0;
	cursor: pointer;
}

.cbe-slider .slick-dots li button {
	display: block;
	width: 20px;
	height: 20px;
	padding: 5px;
	font-size: 0;
	line-height: 0;
	color: transparent;
	background: transparent;
	border: 0;
	outline: none;
	cursor: pointer;
}

.cbe-slider .slick-dots li button:before {
	content: "\2022";
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	font-family: Arial, sans-serif;
	font-size: 6px;
	line-height: 20px;
	text-align: center;
	color: #000;
	opacity: 0.25;
}

.cbe-slider .slick-dots li.slick-active button:before {
	opacity: 0.75;
}

.cbe-slider .slick-dots li button:focus-visible {
	outline: 2px solid #25b6bd;
}

@media (prefers-reduced-motion: reduce) {
	.cbe-slider .ha-slick,
	.cbe-slider--fade .ha-slick-slide {
		transition: none;
	}
}
