/**
 * Video FAQ Slider - Production-Ready Stylesheet
 *
 * Scoped styling with .vfs-* prefix.
 * Strict CSS reset to eliminate theme/kit button borders and unwanted outlines.
 * Fully responsive for Desktop (>1024px), Tablet (768px-1024px), and Mobile (<768px).
 * Hardware-accelerated CSS transforms (translate3d, scale3d, opacity).
 * Supports Horizontal (3 columns) and Vertical (Questions top + Video Thumbs side-by-side).
 *
 * @package VideoFAQSlider
 */

/* ==========================================================================
   Base Scope & CSS Variables
   ========================================================================== */
.vfs-slider {
	--vfs-accent: #C8A34A;
	--vfs-text-color: #111111;
	--vfs-gap: 32px;
	--vfs-duration: 600ms;
	--vfs-easing: ease-in-out;
	--vfs-col-questions: 32%;
	--vfs-col-main: 36%;
	--vfs-col-preview: 28%;
	--vfs-vertical-main-col: 55%;
	--vfs-aspect-ratio: 4 / 5;
	--vfs-indicator-width: 38px;
	--vfs-indicator-height: 1.5px;
	--vfs-indicator-color: #C8A34A;
	--vfs-indicator-gap: 14px;
	--vfs-play-size: 64px;
	--vfs-play-hover-scale: 1.1;

	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}

.vfs-slider *,
.vfs-slider *::before,
.vfs-slider *::after {
	box-sizing: border-box;
}

/* Hard Theme/Kit Reset: Remove any inherited button/border styling from themes, Elementor kits, or browser user agents */
.vfs-slider button,
.vfs-slider [role="button"],
.vfs-slider [role="tab"],
.vfs-slider .vfs-question-btn,
.vfs-slider .vfs-play-btn,
.vfs-slider .vfs-arrow-btn,
.vfs-slider .vfs-preview-stage {
	border: 0 !important;
	border-style: none !important;
	outline: none !important;
	box-shadow: none;
	background-image: none !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

.vfs-slider .vfs-question-btn:focus,
.vfs-slider .vfs-question-btn:focus-visible,
.vfs-slider .vfs-arrow-btn:focus,
.vfs-slider .vfs-arrow-btn:focus-visible,
.vfs-slider .vfs-play-btn:focus,
.vfs-slider .vfs-play-btn:focus-visible {
	outline: none !important;
	border: 0 !important;
	box-shadow: none;
}

/* Container (Default Horizontal 3-Column Layout) */
.vfs-container {
	display: grid;
	grid-template-columns: var(--vfs-col-questions, 32%) var(--vfs-col-main, 36%) var(--vfs-col-preview, 28%);
	gap: var(--vfs-gap, 32px);
	align-items: center;
	width: 100%;
	max-width: 1240px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

/* ==========================================================================
   Vertical Layout Mode (Questions Top, Video Thumbs Side-by-Side)
   ========================================================================== */
.vfs-slider.vfs-layout-vertical .vfs-container {
	display: grid;
	grid-template-columns: var(--vfs-vertical-main-col, 55%) calc(100% - var(--vfs-vertical-main-col, 55%) - var(--vfs-gap, 32px));
	grid-template-areas:
		"questions questions"
		"main preview";
	gap: var(--vfs-gap, 32px);
	align-items: end;
	width: 100%;
}

.vfs-slider.vfs-layout-vertical .vfs-questions-col {
	grid-area: questions;
	width: 100%;
	margin-bottom: 8px;
}

/* Questions in Vertical Mode: Horizontal Tabs / Pills */
.vfs-slider.vfs-layout-vertical.vfs-vquestions-horizontal_tabs .vfs-questions-inner {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 14px;
	width: 100%;
}

.vfs-slider.vfs-layout-vertical.vfs-vquestions-horizontal_tabs .vfs-question-btn {
	flex: 0 0 auto;
	padding: 8px 16px;
	border-radius: 4px;
	background: rgba(0, 0, 0, 0.04);
	transition: background-color 0.25s ease, color 0.25s ease;
}

.vfs-slider.vfs-layout-vertical.vfs-vquestions-horizontal_tabs .vfs-question-btn.vfs-is-active {
	background: rgba(200, 163, 74, 0.14);
}

.vfs-slider.vfs-layout-vertical.vfs-vquestions-horizontal_tabs .vfs-active-indicator {
	display: none !important;
}

/* Questions in Vertical Mode: Vertical List */
.vfs-slider.vfs-layout-vertical.vfs-vquestions-vertical_list .vfs-questions-inner {
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
}

.vfs-slider.vfs-layout-vertical .vfs-main-col {
	grid-area: main;
	width: 100%;
}

.vfs-slider.vfs-layout-vertical .vfs-preview-col {
	grid-area: preview;
	width: 100%;
	display: flex;
	flex-direction: column;
}

/* Video Columns Ratio Presets for Vertical Mode */
.vfs-slider.vfs-layout-vertical.vfs-vratio-55-45 {
	--vfs-vertical-main-col: 55%;
}
.vfs-slider.vfs-layout-vertical.vfs-vratio-50-50 {
	--vfs-vertical-main-col: 50%;
}
.vfs-slider.vfs-layout-vertical.vfs-vratio-60-40 {
	--vfs-vertical-main-col: 60%;
}
.vfs-slider.vfs-layout-vertical.vfs-vratio-65-35 {
	--vfs-vertical-main-col: 65%;
}

/* ==========================================================================
   Left Column: Questions List
   ========================================================================== */
.vfs-questions-col {
	width: 100%;
	display: flex;
	flex-direction: column;
	position: relative;
}

.vfs-questions-inner {
	display: flex;
	flex-direction: column;
	gap: 22px;
	width: 100%;
}

.vfs-question-btn {
	background: transparent;
	border: 0 !important;
	border-style: none !important;
	padding: 8px 0;
	margin: 0;
	color: var(--vfs-text-color, #111111);
	font-family: inherit;
	font-size: 1.05rem;
	line-height: 1.45;
	font-weight: 400;
	text-align: left;
	cursor: pointer;
	display: flex;
	align-items: center;
	position: relative;
	transition: color 0.3s ease, transform 0.25s ease;
	outline: none !important;
	text-decoration: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
}

.vfs-question-text {
	display: inline-block;
	transition: color 0.3s ease, font-style 0.3s ease;
}

.vfs-question-icon {
	display: inline-flex;
	align-items: center;
	margin-right: 10px;
	flex-shrink: 0;
}

/* Active Question State */
.vfs-question-btn.vfs-is-active {
	color: var(--vfs-indicator-color, #C8A34A);
	font-weight: 500;
}

.vfs-question-btn.vfs-is-active .vfs-question-text {
	font-style: italic;
}

/* Active Indicator Line */
.vfs-active-indicator {
	display: none;
	background-color: var(--vfs-indicator-color, #C8A34A);
	transition: width 0.3s ease, opacity 0.3s ease, transform 0.3s ease;
	flex-shrink: 0;
}

.vfs-question-btn.vfs-is-active .vfs-active-indicator {
	display: inline-block;
}

/* Indicator Positions */
.vfs-indicator-pos-left .vfs-question-btn {
	flex-direction: row;
}
.vfs-indicator-pos-left .vfs-active-indicator {
	width: var(--vfs-indicator-width, 38px);
	height: var(--vfs-indicator-height, 1.5px);
	margin-right: var(--vfs-indicator-gap, 14px);
}

.vfs-indicator-pos-right .vfs-question-btn {
	flex-direction: row-reverse;
	justify-content: flex-end;
}
.vfs-indicator-pos-right .vfs-active-indicator {
	width: var(--vfs-indicator-width, 38px);
	height: var(--vfs-indicator-height, 1.5px);
	margin-left: var(--vfs-indicator-gap, 14px);
}

.vfs-indicator-pos-top .vfs-question-btn {
	flex-direction: column;
	align-items: flex-start;
}
.vfs-indicator-pos-top .vfs-active-indicator {
	width: var(--vfs-indicator-width, 38px);
	height: var(--vfs-indicator-height, 1.5px);
	margin-bottom: var(--vfs-indicator-gap, 8px);
}

.vfs-indicator-pos-bottom .vfs-question-btn {
	flex-direction: column-reverse;
	align-items: flex-start;
}
.vfs-indicator-pos-bottom .vfs-active-indicator {
	width: var(--vfs-indicator-width, 38px);
	height: var(--vfs-indicator-height, 1.5px);
	margin-top: var(--vfs-indicator-gap, 8px);
}

.vfs-active-label {
	display: inline-block;
	margin-left: 10px;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 2px 6px;
	border-radius: 3px;
	background: rgba(200, 163, 74, 0.15);
	color: var(--vfs-indicator-color, #C8A34A);
}

/* ==========================================================================
   Center / Main Video Card & Stage
   ========================================================================== */
.vfs-main-col {
	width: 100%;
	position: relative;
}

.vfs-main-stage {
	display: grid;
	grid-template-columns: 1fr;
	position: relative;
	width: 100%;
}

.vfs-slide-card {
	grid-area: 1 / 1;
	width: 100%;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	position: relative;
	z-index: 1;
	will-change: transform, opacity;
	transition: opacity var(--vfs-duration, 600ms) var(--vfs-easing, ease-in-out),
	            transform var(--vfs-duration, 600ms) var(--vfs-easing, ease-in-out),
	            visibility var(--vfs-duration, 600ms) var(--vfs-easing, ease-in-out);
}

.vfs-slide-card.vfs-card-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	position: relative;
	z-index: 3;
}

/* Video Card Inner Structure */
.vfs-video-card-inner {
	position: relative;
	width: 100%;
	overflow: hidden;
	background-color: #747474;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.vfs-media-wrapper {
	position: relative;
	width: 100%;
	aspect-ratio: var(--vfs-aspect-ratio, 4 / 5);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.vfs-card-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	transform: translate3d(0, 0, 0);
	transition: transform 0.6s ease;
}

.vfs-placeholder-media {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: inherit;
}

.vfs-card-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.04);
	pointer-events: none;
	transition: background-color 0.3s ease;
}

/* Card details (Description, Learn More button) */
.vfs-card-details {
	margin-top: 14px;
	padding: 0 4px;
}

.vfs-card-desc {
	margin: 0 0 10px 0;
	font-size: 0.95rem;
	color: #555555;
	line-height: 1.5;
}

.vfs-card-btn {
	display: inline-block;
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--vfs-accent, #C8A34A);
	text-decoration: none;
	border-bottom: 1px solid var(--vfs-accent, #C8A34A);
	padding-bottom: 2px;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.vfs-card-btn:hover {
	color: #997624;
	border-color: #997624;
}

/* ==========================================================================
   Play Button Styling (Centered, Dynamic Icon, Concentric Glow)
   ========================================================================== */
.vfs-play-btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate3d(-50%, -50%, 0);
	width: var(--vfs-play-size, 64px);
	height: var(--vfs-play-size, 64px);
	border-radius: 50% !important;
	background-color: var(--vfs-accent, #C8A34A);
	border: 0 !important;
	border-style: none !important;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 4;
	color: #111111;
	box-shadow: 0 0 0 10px rgba(200, 163, 74, 0.22),
	            0 0 0 20px rgba(200, 163, 74, 0.12) !important;
	transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
	            box-shadow 0.35s ease,
	            background-color 0.3s ease;
	outline: none !important;
	line-height: 0;
	user-select: none;
}

.vfs-play-btn:hover {
	transform: translate3d(-50%, -50%, 0) scale3d(var(--vfs-play-hover-scale, 1.1), var(--vfs-play-hover-scale, 1.1), 1);
	background-color: #D6B156;
	box-shadow: 0 0 0 14px rgba(200, 163, 74, 0.28),
	            0 0 0 26px rgba(200, 163, 74, 0.16) !important;
}

.vfs-play-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
	width: 100%;
	height: 100%;
}

.vfs-play-icon svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
	display: block;
	margin: auto;
}

.vfs-play-icon i {
	font-size: 18px;
	color: currentColor;
	display: block;
	line-height: 1;
	margin: auto;
}

/* Inline Video Mount Container */
.vfs-inline-mount {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 6;
	background: #000;
}

.vfs-inline-mount iframe,
.vfs-inline-mount video {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
	object-fit: cover;
}

/* ==========================================================================
   Right Column: Navigation Arrows & Next/Preview Video Card
   ========================================================================== */
.vfs-preview-col {
	width: 100%;
	display: flex;
	flex-direction: column;
	position: relative;
}

/* Navigation Arrows (Top of Preview Area) */
.vfs-navigation {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 20px;
	margin-bottom: 18px;
	position: relative;
	z-index: 5;
}

.vfs-arrow-btn {
	background: transparent;
	border: 0 !important;
	border-style: none !important;
	padding: 0;
	margin: 0;
	cursor: pointer;
	color: var(--vfs-accent, #C8A34A);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: color 0.25s ease, transform 0.25s ease, background-color 0.25s ease;
	outline: none !important;
	user-select: none;
}

.vfs-arrow-btn:hover {
	color: #997624;
	transform: translate3d(0, -1px, 0);
}

.vfs-arrow-btn:active {
	transform: translate3d(0, 1px, 0);
}

.vfs-arrow-btn svg {
	display: block;
	stroke: currentColor;
}

/* Preview Card */
.vfs-preview-stage {
	width: 100%;
	cursor: pointer;
	position: relative;
	user-select: none;
	outline: none !important;
	border: 0 !important;
}

.vfs-preview-card {
	position: relative;
	width: 100%;
	overflow: hidden;
	background-color: #B8B8B8;
	opacity: 0.78;
	transform: scale3d(0.92, 0.92, 1);
	transform-origin: left top;
	transition: opacity 0.35s ease, transform 0.35s ease, box-shadow 0.35s ease;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
	will-change: transform, opacity;
}

.vfs-preview-stage:hover .vfs-preview-card {
	opacity: 0.92;
	transform: scale3d(0.94, 0.94, 1);
}

.vfs-preview-media-wrapper {
	position: relative;
	width: 100%;
	aspect-ratio: var(--vfs-aspect-ratio, 4 / 5);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.vfs-preview-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	transition: opacity 0.4s ease;
}

.vfs-preview-placeholder {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: inherit;
}

.vfs-preview-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.08);
	pointer-events: none;
}

.vfs-preview-play-btn {
	pointer-events: none;
	opacity: 0.85;
}

/* ==========================================================================
   Hardware-Accelerated Animation Variants
   ========================================================================== */

/* Fade Animation */
.vfs-anim-fade .vfs-slide-card {
	transform: translate3d(0, 0, 0);
}
.vfs-anim-fade .vfs-slide-card.vfs-card-active {
	opacity: 1;
}
.vfs-anim-fade .vfs-slide-card.vfs-card-exit {
	opacity: 0;
}

/* Slide Left */
.vfs-anim-slide-left .vfs-slide-card {
	transform: translate3d(40px, 0, 0);
}
.vfs-anim-slide-left .vfs-slide-card.vfs-card-active {
	transform: translate3d(0, 0, 0);
	opacity: 1;
}
.vfs-anim-slide-left .vfs-slide-card.vfs-card-exit {
	transform: translate3d(-40px, 0, 0);
	opacity: 0;
}

/* Slide Right */
.vfs-anim-slide-right .vfs-slide-card {
	transform: translate3d(-40px, 0, 0);
}
.vfs-anim-slide-right .vfs-slide-card.vfs-card-active {
	transform: translate3d(0, 0, 0);
	opacity: 1;
}
.vfs-anim-slide-right .vfs-slide-card.vfs-card-exit {
	transform: translate3d(40px, 0, 0);
	opacity: 0;
}

/* Fade + Slide (Default Smooth Experience) */
.vfs-anim-fade-slide .vfs-slide-card {
	transform: translate3d(0, 18px, 0);
}
.vfs-anim-fade-slide .vfs-slide-card.vfs-card-active {
	transform: translate3d(0, 0, 0);
	opacity: 1;
}
.vfs-anim-fade-slide .vfs-slide-card.vfs-card-exit {
	transform: translate3d(0, -18px, 0);
	opacity: 0;
}

/* Scale */
.vfs-anim-scale .vfs-slide-card {
	transform: scale3d(0.94, 0.94, 1);
}
.vfs-anim-scale .vfs-slide-card.vfs-card-active {
	transform: scale3d(1, 1, 1);
	opacity: 1;
}
.vfs-anim-scale .vfs-slide-card.vfs-card-exit {
	transform: scale3d(1.04, 1.04, 1);
	opacity: 0;
}

/* Zoom */
.vfs-anim-zoom .vfs-slide-card {
	transform: scale3d(1.06, 1.06, 1);
}
.vfs-anim-zoom .vfs-slide-card.vfs-card-active {
	transform: scale3d(1, 1, 1);
	opacity: 1;
}
.vfs-anim-zoom .vfs-slide-card.vfs-card-exit {
	transform: scale3d(0.94, 0.94, 1);
	opacity: 0;
}

/* ==========================================================================
   Accessible Lightbox Modal
   ========================================================================== */
.vfs-lightbox {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1),
	            visibility 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.vfs-lightbox.vfs-is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.vfs-lightbox-backdrop {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.88);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}

.vfs-lightbox-dialog {
	position: relative;
	z-index: 10;
	width: 90%;
	max-width: 960px;
	border-radius: 8px;
	overflow: visible;
	transform: scale3d(0.94, 0.94, 1);
	transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.vfs-lightbox.vfs-is-open .vfs-lightbox-dialog {
	transform: scale3d(1, 1, 1);
}

.vfs-lightbox-close {
	position: absolute;
	top: -44px;
	right: 0;
	background: transparent;
	border: none;
	color: #FFFFFF;
	cursor: pointer;
	padding: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: color 0.2s ease, transform 0.2s ease;
	outline: none;
}

.vfs-lightbox-close:hover {
	color: var(--vfs-accent, #C8A34A);
	transform: scale3d(1.1, 1.1, 1);
}

.vfs-lightbox-close:focus-visible {
	outline: 2px solid var(--vfs-accent, #C8A34A);
	outline-offset: 2px;
	border-radius: 4px;
}

.vfs-lightbox-media-wrap {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
	height: 0;
	background: #000000;
	border-radius: inherit;
	overflow: hidden;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
}

.vfs-lightbox-media-wrap iframe,
.vfs-lightbox-media-wrap video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
}

/* Body lock when modal is open */
body.vfs-lightbox-locked {
	overflow: hidden !important;
	touch-action: none;
}

/* ==========================================================================
   Responsive Breakpoints
   ========================================================================== */

/* --------------------------------------------------------------------------
   TABLET: 768px to 1024px (Dedicated Balanced Layout)
   -------------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1024px) {
	.vfs-container {
		grid-template-columns: var(--vfs-col-questions, 28%) var(--vfs-col-main, 42%) var(--vfs-col-preview, 30%);
		gap: var(--vfs-gap, 20px);
	}

	.vfs-slider.vfs-layout-vertical .vfs-container {
		grid-template-columns: var(--vfs-vertical-main-col, 55%) calc(100% - var(--vfs-vertical-main-col, 55%) - var(--vfs-gap, 20px));
		gap: var(--vfs-gap, 20px);
	}

	.vfs-question-btn {
		font-size: 0.95rem;
		line-height: 1.4;
	}

	.vfs-slider {
		--vfs-play-size: 54px;
		--vfs-indicator-width: 28px;
	}

	.vfs-navigation {
		margin-bottom: 12px;
		gap: 14px;
	}

	.vfs-preview-card {
		transform: scale3d(0.94, 0.94, 1);
		opacity: 0.82;
	}
}

/* --------------------------------------------------------------------------
   MOBILE: Below 768px (Clean Vertical Hierarchy & Zero Horizontal Overflow)
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
	.vfs-slider {
		overflow-x: hidden;
		width: 100%;
		max-width: 100%;
	}

	.vfs-container {
		display: flex;
		flex-direction: column;
		gap: 20px;
		width: 100%;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.vfs-slider.vfs-layout-vertical .vfs-container {
		display: flex;
		flex-direction: column;
		gap: 20px;
	}

	/* Question navigation becomes horizontally scrollable */
	.vfs-questions-col {
		width: 100%;
		max-width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE/Edge */
		padding: 4px 0 8px 0;
	}

	.vfs-questions-col::-webkit-scrollbar {
		display: none; /* Chrome/Safari */
	}

	.vfs-questions-inner {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 12px;
		width: max-content;
		padding: 0 4px;
	}

	.vfs-question-btn {
		flex: 0 0 auto;
		white-space: nowrap;
		font-size: 0.92rem;
		padding: 8px 14px;
		border-radius: 20px;
		background: rgba(0, 0, 0, 0.04);
		transition: background-color 0.25s ease, color 0.25s ease;
	}

	.vfs-question-btn.vfs-is-active {
		background: rgba(200, 163, 74, 0.16);
	}

	.vfs-active-indicator {
		display: none !important; /* Conceal side line on mobile pill tabs */
	}

	/* Main Video on Mobile */
	.vfs-main-col {
		width: 100%;
		max-width: 100%;
	}

	.vfs-slider {
		--vfs-play-size: 52px;
	}

	/* Preview column & Navigation on Mobile */
	.vfs-preview-col {
		width: 100%;
		max-width: 100%;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		margin-top: 4px;
	}

	.vfs-navigation {
		margin-bottom: 0;
		gap: 14px;
	}

	.vfs-preview-stage {
		width: 44%;
		max-width: 140px;
	}

	.vfs-preview-card {
		transform: none;
		opacity: 0.88;
	}

	.vfs-preview-stage:hover .vfs-preview-card {
		transform: none;
	}
}
