/* Chez Fefe – Банери (началната страница) */

/* Ред на WPBakery „на цяла ширина“ се разтяга от JS, който е в края на страницата –
   дотогава слайдърът е тесен (1170px). Докато JS-ът не е минал (init="false"),
   разтягаме само самия слайдър, а не реда: JS-ът на WPBakery мери реда и ако
   редът е преместен, смята грешно отместване. body е с overflow-x: hidden. */
.vc_row[data-vc-full-width="true"][data-vc-full-width-init="false"]:has(.cfb) {
	overflow: visible;
}
.vc_row[data-vc-full-width="true"][data-vc-full-width-init="false"] .cfb {
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
}

.cfb {
	position: relative;
	width: 100%;
	height: 100vh;
	height: 100svh;
	/* Никога по-висок от банера (16:9) – иначе краищата с текста се изрязват.
	   На по-ниски от 16:9 екрани (21:9) изрязва леко горе/долу. */
	max-height: 56.25vw;
	overflow: hidden;
	background: #f1f2f4;
}
.cfb-track,
.cfb-slide {
	position: absolute;
	inset: 0;
}
/* Преливане (по подразбиране). --cfb-speed идва от настройките на слайдъра. */
.cfb-slide {
	display: block;
	opacity: 0;
	visibility: hidden;
	transition: opacity var(--cfb-speed, .9s) ease, visibility 0s linear var(--cfb-speed, .9s);
}
.cfb-slide.is-active {
	opacity: 1;
	visibility: visible;
	transition: opacity var(--cfb-speed, .9s) ease, visibility 0s;
	z-index: 1;
}

/* Плъзгане: позициите се задават от banners.js (transform). */
.cfb--slide .cfb-slide {
	opacity: 1;
	transform: translateX(100%);
	transition: transform var(--cfb-speed, .9s) cubic-bezier(.4, 0, .2, 1), visibility 0s linear var(--cfb-speed, .9s);
}
.cfb--slide .cfb-slide.is-active {
	transform: none;
	transition: transform var(--cfb-speed, .9s) cubic-bezier(.4, 0, .2, 1), visibility 0s;
}
.cfb--slide .cfb-slide.is-leaving {
	visibility: visible;
	z-index: 1;
}
.cfb-slide picture,
.cfb-slide img {
	display: block;
	width: 100%;
	height: 100%;
}
.cfb-slide img {
	object-fit: cover;
	object-position: center;
	max-width: none;
}
.cfb-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 28px;
	z-index: 2;
	display: flex;
	justify-content: center;
	gap: 10px;
}
.cfb-dot {
	width: 10px;
	height: 10px;
	padding: 0;
	border: 1px solid rgba(35, 35, 44, .5);
	border-radius: 50%;
	background: rgba(255, 255, 255, .7);
	cursor: pointer;
	transition: background .2s, transform .2s;
}
.cfb-dot.is-active {
	background: #23232c;
	border-color: #23232c;
	transform: scale(1.2);
}
.cfb-dot:focus-visible {
	outline: 2px solid #23232c;
	outline-offset: 3px;
}
@media (orientation: portrait) {
	/* вертикален банер 9:16 */
	.cfb {
		max-height: 177.78vw;
	}
}
@media (prefers-reduced-motion: reduce) {
	.cfb-slide,
	.cfb-slide.is-active,
	.cfb--slide .cfb-slide {
		transition: none;
	}
}
