.vybog-slider {
	position: relative;
	margin: 0 auto;
	width: 100%;
	overflow: hidden;
	border-radius: 6px;
}

.vybog-slider--fullwidth {
	max-width: none !important;
}

.vybog-slider__stage {
	position: relative;
	width: 100%;
	overflow: hidden;
}

/* ===== Slides ===== */
.vybog-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	visibility: hidden;
	z-index: 1;
}

.vybog-slide.is-active {
	opacity: 1;
	visibility: visible;
	z-index: 2;
}

.vybog-slide__bg {
	position: absolute;
	inset: 0;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 0;
}

.vybog-slide__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
}

.vybog-slide__layers {
	position: absolute;
	inset: 0;
	z-index: 2;
}

/* Fade transition (default) */
.vybog-slide.transition-fade {
	transition: opacity 0.6s ease;
}

/* Slide transition */
.vybog-slide.transition-slide {
	transition: transform 0.6s ease, opacity 0.6s ease;
}
.vybog-slide.transition-slide.is-active {
	transform: translateX(0);
}
.vybog-slide.transition-slide.is-leaving {
	transform: translateX(-100%);
}

/* Zoom transition */
.vybog-slide.transition-zoom {
	transition: transform 0.6s ease, opacity 0.6s ease;
}
.vybog-slide.transition-zoom.is-active {
	transform: scale(1);
}
.vybog-slide.transition-zoom.is-leaving {
	transform: scale(1.15);
}

/* ===== Layers ===== */
.vybog-layer {
	position: absolute;
	transform: translate(-50%, -50%);
	transition-property: opacity, transform;
	white-space: nowrap;
	box-sizing: border-box;
}

.vybog-layer--richtext,
.vybog-layer--richtext *,
.vybog-layer[style*="width:"],
.vybog-layer[style*="width:"] * {
	white-space: normal !important;
	word-break: break-word;
	box-sizing: border-box;
}

.vybog-layer--richtext h1,
.vybog-layer--richtext h2,
.vybog-layer--richtext h3,
.vybog-layer--richtext h4,
.vybog-layer--richtext h5,
.vybog-layer--richtext h6 {
	margin-top: 0;
	margin-bottom: 0.25em;
	line-height: 1.2;
}

.vybog-layer--richtext p {
	margin-top: 0;
	margin-bottom: 0.5em;
	line-height: inherit;
}

.vybog-layer--richtext p:last-child,
.vybog-layer--richtext div:last-child {
	margin-bottom: 0;
}

.vybog-container-submodule h1,
.vybog-container-submodule h2,
.vybog-container-submodule h3,
.vybog-container-submodule h4,
.vybog-container-submodule h5,
.vybog-container-submodule h6 {
	margin-top: 0;
	margin-bottom: 0.25em;
	line-height: 1.2;
}

.vybog-container-submodule p {
	margin-top: 0;
	margin-bottom: 0.5em;
	line-height: inherit;
}

.vybog-container-submodule p:last-child,
.vybog-container-submodule div:last-child {
	margin-bottom: 0;
}

/* Theme heading/link rules must not replace a text layer's saved colour. */
.vybog-layer--text {
	word-break: break-word;
}

.vybog-layer--text h1,
.vybog-layer--text h2,
.vybog-layer--text h3,
.vybog-layer--text h4,
.vybog-layer--text h5,
.vybog-layer--text h6,
.vybog-layer--text div,
.vybog-layer--text p,
.vybog-layer--text strong,
.vybog-layer--text b,
.vybog-layer--text a {
	color: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
	word-break: break-word;
}

.vybog-layer--richtext h1:not([style*="color"]),
.vybog-layer--richtext h2:not([style*="color"]),
.vybog-layer--richtext h3:not([style*="color"]),
.vybog-layer--richtext h4:not([style*="color"]),
.vybog-layer--richtext h5:not([style*="color"]),
.vybog-layer--richtext h6:not([style*="color"]),
.vybog-layer--richtext p:not([style*="color"]),
.vybog-layer--richtext div:not([style*="color"]),
.vybog-layer--richtext blockquote:not([style*="color"]),
.vybog-layer--richtext a:not([style*="color"]) {
	color: inherit !important;
}

.vybog-layer--hidden-responsive { display: none !important; }

.vybog-layer.is-hidden {
	opacity: 0;
	pointer-events: none;
}

.vybog-layer.is-visible {
	opacity: 1;
}

/* Entrance directions — combined with the transform origin of translate(-50%,-50%) */
.vybog-layer.vybog-anim-fade.is-hidden { opacity: 0; }

.vybog-layer.vybog-anim-slide-left.is-hidden { transform: translate(calc(-50% - 60px), -50%); opacity: 0; }
.vybog-layer.vybog-anim-slide-left.is-visible { transform: translate(-50%, -50%); }

.vybog-layer.vybog-anim-slide-right.is-hidden { transform: translate(calc(-50% + 60px), -50%); opacity: 0; }
.vybog-layer.vybog-anim-slide-right.is-visible { transform: translate(-50%, -50%); }

.vybog-layer.vybog-anim-slide-up.is-hidden { transform: translate(-50%, calc(-50% + 60px)); opacity: 0; }
.vybog-layer.vybog-anim-slide-up.is-visible { transform: translate(-50%, -50%); }

.vybog-layer.vybog-anim-slide-down.is-hidden { transform: translate(-50%, calc(-50% - 60px)); opacity: 0; }
.vybog-layer.vybog-anim-slide-down.is-visible { transform: translate(-50%, -50%); }

.vybog-layer.vybog-anim-zoom.is-hidden { transform: translate(-50%, -50%) scale(0.6); opacity: 0; }
.vybog-layer.vybog-anim-zoom.is-visible { transform: translate(-50%, -50%) scale(1); }

.vybog-layer.vybog-anim-none.is-hidden { opacity: 1; }

.vybog-layer__button {
	display: inline-block;
	padding: calc(12px * var(--vybog-layout-scale, 1)) calc(28px * var(--vybog-layout-scale, 1));
	border-radius: 4px;
	text-decoration: none;
	background: #2563eb;
	color: #fff;
}

/* ===== Nav arrows ===== */
.vybog-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	background: rgba(0,0,0,0.35);
	color: #fff;
	border: none;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	cursor: pointer;
	font-size: 16px;
	line-height: 1;
	transition: background 0.2s ease;
}

.vybog-nav:hover {
	background: rgba(0,0,0,0.6);
}

.vybog-nav--prev { left: 16px; }
.vybog-nav--next { right: 16px; }

/* ===== Bullets ===== */
.vybog-bullets {
	position: absolute;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 8px;
	z-index: 5;
}

.vybog-bullet {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: rgba(255,255,255,0.5);
	border: none;
	padding: 0;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.2s ease;
}

.vybog-bullet.is-active {
	background: #fff;
	transform: scale(1.2);
}

.vybog-empty-notice {
	padding: 12px 16px;
	background: #fff3cd;
	border: 1px solid #ffe69c;
	color: #664d03;
	border-radius: 4px;
}

/* Responsive breakpoints */
@media (max-width: 782px) {
	.vybog-nav {
		width: 32px;
		height: 32px;
		font-size: 13px;
	}
}

/* ===== Container Layer ===== */
.vybog-layer--container {
	white-space: normal !important;
	box-sizing: border-box;
	max-width: 100%;
}
.vybog-container-box {
	width: 100%;
	height: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
.vybog-container-submodule {
	box-sizing: border-box;
}
.vybog-container-submodule p,
.vybog-container-submodule h1,
.vybog-container-submodule h2,
.vybog-container-submodule h3,
.vybog-container-submodule h4,
.vybog-container-submodule h5,
.vybog-container-submodule h6,
.vybog-container-submodule div,
.vybog-container-submodule a {
	color: inherit !important;
}

