.be-video-scroll {
	position: relative;
	font-family: var(--be-font-sans);
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
.be-video-scroll.is-disabled { display: none !important; }
.be-video-scroll__section-track {
	position: relative;
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow: visible;
}
.be-video-scroll-section-pinned {
	box-sizing: border-box;
}
.be-video-scroll-section-pinned.is-active {
	will-change: top, left;
}
.be-video-scroll__track {
	position: relative;
	width: 100%;
	height: var(--be-video-scroll-runtime-height, var(--be-video-scroll-desktop-height, 620px));
	box-sizing: border-box;
}
.be-video-scroll__sticky {
	position: relative;
	top: auto;
	width: 100%;
	height: 100%;
	min-height: var(--be-video-scroll-desktop-min-height, 240px);
	box-sizing: border-box;
}
.be-video-scroll__frame {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: var(--be-video-scroll-desktop-radius, 20px);
	background: var(--be-video-scroll-bg, #000);
	transform: translateZ(0);
}
.be-video-scroll__video {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	object-fit: var(--be-video-scroll-desktop-fit, cover);
	object-position: var(--be-video-scroll-desktop-position, 50% 50%);
	background: var(--be-video-scroll-bg, #000);
	pointer-events: none;
	user-select: none;
	-webkit-user-select: none;
}
/* Fill mode measures the companion WPBakery column without allowing this shortcode
 * to inflate the row while that measurement is being taken. */
.be-video-scroll.is-measuring-fill,
.be-video-scroll.is-measuring-fill .be-video-scroll__track,
.be-video-scroll.is-measuring-fill .be-video-scroll__sticky {
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	overflow: hidden !important;
}
@media (max-width: 767px) {
	.be-video-scroll__track {
		height: var(--be-video-scroll-runtime-height, var(--be-video-scroll-mobile-height, 430px));
	}
	.be-video-scroll__sticky { min-height: var(--be-video-scroll-mobile-min-height, 240px); }
	.be-video-scroll__frame { border-radius: var(--be-video-scroll-mobile-radius, 16px); }
	.be-video-scroll__video {
		object-fit: var(--be-video-scroll-mobile-fit, cover);
		object-position: var(--be-video-scroll-mobile-position, 50% 50%);
	}
}
@media (prefers-reduced-motion: reduce) {
	.be-video-scroll__video { scroll-behavior: auto; }
}

/* 1.4.53 — optional mobile placement mount. The real player is moved here on
 * mobile; the mount itself never creates a duplicate video. */
.be-video-scroll-mobile-mount {
	display: none;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 767px) {
	.be-video-scroll-mobile-mount {
		display: block;
	}
	.be-video-scroll-origin-vacated {
		display: none !important;
	}
	.be-video-scroll__section-track--mobile {
		position: relative;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		overflow: visible;
	}
	.be-video-scroll.is-mobile-relocated {
		width: 100%;
		max-width: 100%;
	}
}

/* 1.4.54 — Scrolling Sections-style overlay slots for Video Scroll. */
.be-video-scroll .be-video-scroll__slot {
	z-index: 4;
	pointer-events: none;
}
.be-video-scroll .be-scroll-slot--top-left {
	top: var(--be-video-scroll-slot-offset-desktop, 18px);
	left: var(--be-video-scroll-slot-offset-desktop, 18px);
}
.be-video-scroll .be-scroll-slot--top-right {
	top: var(--be-video-scroll-slot-offset-desktop, 18px);
	right: var(--be-video-scroll-slot-offset-desktop, 18px);
}
.be-video-scroll .be-scroll-slot--bottom-left {
	bottom: var(--be-video-scroll-slot-offset-desktop, 18px);
	left: var(--be-video-scroll-slot-offset-desktop, 18px);
}
.be-video-scroll .be-scroll-slot--bottom-right {
	right: var(--be-video-scroll-slot-offset-desktop, 18px);
	bottom: var(--be-video-scroll-slot-offset-desktop, 18px);
}
@media (max-width: 767px) {
	.be-video-scroll {
		--be-scroll-slot-radius: var(--be-video-scroll-slot-radius-mobile, 12px);
		--be-scroll-slot-pad-x: var(--be-video-scroll-slot-pad-x-mobile, 12px);
		--be-scroll-slot-pad-y: var(--be-video-scroll-slot-pad-y-mobile, 9px);
		--be-scroll-slot-font: var(--be-video-scroll-slot-font-mobile, 11px);
		--be-scroll-slot-icon: var(--be-video-scroll-slot-icon-mobile, 17px);
	}
	.be-video-scroll .be-scroll-slot--top-left {
		top: var(--be-video-scroll-slot-offset-mobile, 14px);
		left: var(--be-video-scroll-slot-offset-mobile, 14px);
	}
	.be-video-scroll .be-scroll-slot--top-right {
		top: var(--be-video-scroll-slot-offset-mobile, 14px);
		right: var(--be-video-scroll-slot-offset-mobile, 14px);
	}
	.be-video-scroll .be-scroll-slot--bottom-left {
		bottom: var(--be-video-scroll-slot-offset-mobile, 14px);
		left: var(--be-video-scroll-slot-offset-mobile, 14px);
	}
	.be-video-scroll .be-scroll-slot--bottom-right {
		right: var(--be-video-scroll-slot-offset-mobile, 14px);
		bottom: var(--be-video-scroll-slot-offset-mobile, 14px);
	}
}
