/*! Worldsfastest Accessibility Control v1.6.0
   External file on purpose: strict-CSP sites (nonce'd style-src) drop
   un-nonced inline styles, and the sr-only utility must never be lost.
   Optional groups are gated on wfac-* classes the output filter adds to
   the <html> element, so per-fix toggles keep working with a static file. */

/* --- Utilities (always active; the server fixes and JS rely on them) --- */
.wfac-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
.wfac-sr-only-focusable:not(:focus):not(:focus-within) {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
.wfac-sr-only-focusable:focus,
a.skip-link:focus {
	position: fixed !important;
	top: 8px !important;
	left: 8px !important;
	z-index: 100000 !important;
	display: inline-block !important;
	padding: 12px 20px !important;
	background: #000 !important;
	color: #fff !important;
	font-size: 16px !important;
	text-decoration: underline !important;
	clip: auto !important;
	width: auto !important;
	height: auto !important;
	overflow: visible !important;
}

/* Pause/play control wfac.js adds to autoplaying background videos. */
.wfac-video-host { position: relative; }
.wfac-video-toggle {
	position: absolute;
	bottom: 12px;
	left: 12px;
	z-index: 20;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.55);
	color: #fff;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
}
.wfac-video-toggle:hover,
.wfac-video-toggle:focus {
	background: rgba(0, 0, 0, 0.85);
}
/* Icon drawn in CSS — the button contains no text at all, so its aria-label
   is its only name and checkers can't call it an override of visible text. */
.wfac-video-toggle .wfac-vt-icon {
	display: inline-block;
	vertical-align: middle;
	width: 10px;
	height: 12px;
	border-left: 3px solid currentColor;
	border-right: 3px solid currentColor;
}
.wfac-video-toggle.wfac-vt-paused .wfac-vt-icon {
	width: 0;
	height: 0;
	margin-left: 3px;
	border-top: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 11px solid currentColor;
	border-right: 0;
}

/* --- Focus outline (html.wfac-focus) ---
   Flatsome resets outlines in several places; !important wins there while
   :where keeps our own selector weight low. */
html.wfac-focus :where(a, button, input, select, textarea, [tabindex]):focus-visible {
	outline: 2px solid #1a56db !important;
	outline-offset: 2px !important;
}
@supports not selector(:focus-visible) {
	html.wfac-focus a:focus,
	html.wfac-focus button:focus,
	html.wfac-focus input:focus,
	html.wfac-focus select:focus,
	html.wfac-focus textarea:focus {
		outline: 2px solid #1a56db !important;
		outline-offset: 2px !important;
	}
}

/* --- Sticky header/footer focus offset (html.wfac-sticky) ---
   scroll-padding on the root plus scroll-margin on the focusable elements
   themselves: both only influence where the browser scrolls an element into
   view, so a focused control is never left under a sticky header or footer.
   Neither property has any visual effect on layout. */
html.wfac-sticky {
	scroll-padding-top: 130px;
	scroll-padding-bottom: 110px;
}
html.wfac-sticky a,
html.wfac-sticky button,
html.wfac-sticky input,
html.wfac-sticky select,
html.wfac-sticky textarea,
html.wfac-sticky [tabindex] {
	scroll-margin-top: 130px;
	scroll-margin-bottom: 110px;
}

/* --- Closed dropdowns out of the AT tree and tab order (html.wfac-dd) ---
   Flatsome hides closed dropdowns with opacity:0 + left:-99999px, leaving
   them exposed to assistive tech and keyboard focus. visibility removes
   both; the theme's open states (plus focus handling in wfac.js, which adds
   Flatsome's own .current-dropdown class) restore it. */
html.wfac-dd .nav-dropdown {
	visibility: hidden;
	-webkit-transition: opacity 0.25s, visibility 0.25s;
	transition: opacity 0.25s, visibility 0.25s;
}
html.wfac-dd li.current-dropdown > .nav-dropdown,
html.wfac-dd.no-js li.has-dropdown:hover > .nav-dropdown {
	visibility: visible;
}
