/* Weby Slider – frontend */
.weby-slider {
	--weby-accent: #222;
	--weby-btn-text: #fff;
	--weby-minh-d: 480px;
	--weby-minh-m: 420px;
	--weby-speed: 600ms;
	position: relative;
	width: 100%;
	overflow: hidden;
	line-height: 1.4;
}
.weby-slider *,
.weby-slider *::before,
.weby-slider *::after { box-sizing: border-box; }

.weby-slider__viewport { position: relative; overflow: hidden; width: 100%; }
.weby-slider__track {
	display: flex;
	align-items: stretch;
	width: 100%;
	transition: transform var(--weby-speed) cubic-bezier(.25,.8,.25,1);
	will-change: transform;
}
.weby-slider__slide {
	position: relative;
	flex: 0 0 100%;
	width: 100%;
	min-width: 0;
	overflow: hidden;
}
/* Before JS runs, only the first slide is visible (no layout jump). */
.weby-slider:not(.is-ready) .weby-slider__slide:not(:first-child) { visibility: hidden; }

/* Fade: every slide is moved back onto position 0 by JS and cross-faded. */
.weby-slider--fade .weby-slider__track { transition: none; }
.weby-slider--fade .weby-slider__slide {
	opacity: 0;
	transition: opacity var(--weby-speed) ease, visibility 0s linear var(--weby-speed);
	visibility: hidden;
}
.weby-slider--fade .weby-slider__slide.is-active {
	opacity: 1;
	visibility: visible;
	transition: opacity var(--weby-speed) ease, visibility 0s;
	z-index: 1;
}

/* ---------- Image slide (finished artwork) ---------- */
.weby-slider__link,
.weby-slider__picture { display: block; width: 100%; height: 100%; }
.weby-slider__picture img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

/* Fixed ratio (optional, set in slider settings) */
.weby-slider--ratio-d .weby-slider__slide { aspect-ratio: var(--weby-ratio-d); }
.weby-slider--ratio-d .weby-slider__slide--image img { height: 100%; }

/* ---------- Content slide (background + heading + text + button) ---------- */
.weby-slider__slide--content {
	display: flex;
	align-items: center;
	min-height: var(--weby-minh-d);
	background: #333;
}
.weby-slider__bg,
.weby-slider__bg img,
.weby-slider__overlay {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}
.weby-slider__bg img { object-fit: cover; max-width: none; }
.weby-slider__overlay { background: #000; pointer-events: none; }
.weby-slider__slide--dark .weby-slider__overlay { background: #fff; }

.weby-slider__slide--valign-top { align-items: flex-start; }
.weby-slider__slide--valign-bottom { align-items: flex-end; }

.weby-slider__content {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 48px 72px;
}
/* Text block: width + horizontal position follow the slide's alignment. */
.weby-slider__inner { max-width: var(--weby-content-w, 640px); margin: 0 auto; }
.weby-slider__slide--align-left .weby-slider__inner { margin-left: 0; text-align: left; }
.weby-slider__slide--align-center .weby-slider__inner { text-align: center; }
.weby-slider__slide--align-right .weby-slider__inner { margin-right: 0; text-align: right; }

.weby-slider .weby-slider__slide .weby-slider__title {
	margin: 0 0 .4em;
	padding: 0;
	font-size: var(--weby-title-d, 44px);
	font-weight: var(--weby-title-fw, 700);
	line-height: 1.15;
}
.weby-slider .weby-slider__slide .weby-slider__text {
	max-width: var(--weby-text-w, 520px);
	font-size: var(--weby-text-d, 18px);
	font-weight: var(--weby-text-fw, 400);
	line-height: 1.5;
}
.weby-slider__slide--align-center .weby-slider__text { margin-left: auto; margin-right: auto; }
.weby-slider__slide--align-right .weby-slider__text { margin-left: auto; }
.weby-slider .weby-slider__text p { margin: 0 0 .6em; padding: 0; font: inherit; color: inherit; }
.weby-slider .weby-slider__text p:last-child { margin-bottom: 0; }
.weby-slider .weby-slider__text a { color: inherit; text-decoration: underline; }

/* Colors: slide's light/dark choice, unless a fixed color is set in slider settings. */
.weby-slider__slide--light .weby-slider__content { color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,.3); }
.weby-slider__slide--dark .weby-slider__content { color: #1d1d1d; }
.weby-slider .weby-slider__slide--light .weby-slider__title { color: var(--weby-title-c, #fff); }
.weby-slider .weby-slider__slide--dark .weby-slider__title { color: var(--weby-title-c, #1d1d1d); }
.weby-slider .weby-slider__slide--light .weby-slider__text { color: var(--weby-text-c, #fff); }
.weby-slider .weby-slider__slide--dark .weby-slider__text { color: var(--weby-text-c, #1d1d1d); }

.weby-slider .weby-slider__slide .weby-slider__btn {
	display: inline-block;
	margin-top: 1.4em;
	padding: var(--weby-btn-py, 13px) var(--weby-btn-px, 29px);
	border: var(--weby-btn-bw, 0) solid var(--weby-btn-bc, #fff);
	border-radius: var(--weby-btn-r, 3px);
	background: var(--weby-accent);
	color: var(--weby-btn-text);
	font-size: var(--weby-btn-fs, 16px);
	font-weight: var(--weby-btn-fw, 600);
	line-height: 1.2;
	letter-spacing: normal;
	text-decoration: none;
	text-shadow: none;
	transition: filter .2s ease, transform .2s ease, background-color .2s ease, color .2s ease;
}
.weby-slider .weby-slider__slide .weby-slider__btn:hover,
.weby-slider .weby-slider__slide .weby-slider__btn:focus-visible,
.weby-slider .weby-slider__slide .weby-slider__btn.is-hover { filter: brightness(1.12); transform: translateY(-1px); }
.weby-slider--btn-hover .weby-slider__slide .weby-slider__btn:hover,
.weby-slider--btn-hover .weby-slider__slide .weby-slider__btn:focus-visible,
.weby-slider--btn-hover .weby-slider__slide .weby-slider__btn.is-hover {
	filter: none;
	background: var(--weby-btn-hbg, var(--weby-accent));
	color: var(--weby-btn-htx, var(--weby-btn-text));
}
.weby-slider--btn-hover-noborder .weby-slider__slide .weby-slider__btn:hover,
.weby-slider--btn-hover-noborder .weby-slider__slide .weby-slider__btn:focus-visible,
.weby-slider--btn-hover-noborder .weby-slider__slide .weby-slider__btn.is-hover { border-color: transparent; }

/* Arrow that slides in on hover (like Divi buttons). */
.weby-slider--btn-arrow .weby-slider__slide .weby-slider__btn::after {
	content: "\2192";
	display: inline-block;
	width: 0;
	margin-left: 0;
	overflow: hidden;
	opacity: 0;
	vertical-align: top;
	transition: width .25s ease, margin .25s ease, opacity .25s ease;
}
.weby-slider--btn-arrow .weby-slider__slide .weby-slider__btn:hover::after,
.weby-slider--btn-arrow .weby-slider__slide .weby-slider__btn:focus-visible::after,
.weby-slider--btn-arrow .weby-slider__slide .weby-slider__btn.is-hover::after { width: 1em; margin-left: .45em; opacity: 1; }

/* ---------- Arrows & dots ---------- */
.weby-slider__arrow {
	position: absolute;
	top: 50%;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: -22px 0 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,.85);
	box-shadow: 0 2px 8px rgba(0,0,0,.15);
	cursor: pointer;
	opacity: 0;
	transition: opacity .25s ease, background .2s ease;
}
.weby-slider:hover .weby-slider__arrow,
.weby-slider__arrow:focus-visible { opacity: 1; }
.weby-slider__arrow:hover { background: #fff; }
.weby-slider__arrow--prev { left: 16px; }
.weby-slider__arrow--next { right: 16px; }
.weby-slider__arrow span {
	display: block;
	width: 11px;
	height: 11px;
	border-top: 2px solid #222;
	border-right: 2px solid #222;
}
.weby-slider__arrow--prev span { transform: translateX(2px) rotate(-135deg); }
.weby-slider__arrow--next span { transform: translateX(-2px) rotate(45deg); }

.weby-slider__dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 14px;
	z-index: 3;
	display: flex;
	justify-content: center;
	gap: 8px;
	pointer-events: none;
}
.weby-slider__dot {
	width: 10px;
	height: 10px;
	margin: 0;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	background: rgba(0,0,0,.25);
	box-shadow: 0 0 2px rgba(0,0,0,.4);
	cursor: pointer;
	pointer-events: auto;
	transition: background .2s ease, transform .2s ease;
}
.weby-slider__dot[aria-current="true"] { background: #fff; transform: scale(1.15); }

.weby-slider__empty {
	padding: 60px 20px;
	border: 2px dashed #c3c4c7;
	background: #f6f7f7;
	color: #50575e;
	text-align: center;
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	.weby-slider__slide--content { min-height: var(--weby-minh-m); }
	.weby-slider--ratio-d .weby-slider__slide { aspect-ratio: auto; }
	.weby-slider--ratio-m .weby-slider__slide { aspect-ratio: var(--weby-ratio-m); }
	.weby-slider__content { padding: 32px 22px 44px; }
	.weby-slider .weby-slider__slide .weby-slider__title { font-size: var(--weby-title-m, 28px); }
	.weby-slider .weby-slider__slide .weby-slider__text { font-size: var(--weby-text-m, 15px); }
	.weby-slider__arrow { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.weby-slider { --weby-speed: 1ms; }
}

/* ---------- Frontend "Uredi slider" button (logged-in editors only) ---------- */
.weby-slider-edit {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 20;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	border: 0;
	border-radius: 999px;
	background: #1d2327;
	color: #fff;
	font: 600 13px/1.2 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	box-shadow: 0 4px 14px rgba(0,0,0,.25);
	cursor: pointer;
	opacity: .9;
}
.weby-slider-edit:hover,
.weby-slider-edit:focus-visible { opacity: 1; background: #2271b1; }
.weby-slider-edit-data { display: none; }
