:root {
	--vk-ohio-accent: #d90a2c;
	--vk-ohio-bg: rgba(23, 22, 26, .992);
	--vk-ohio-ease: cubic-bezier(.4, 0, .2, 1);
	--vk-ohio-font: "Space Grotesk", "Space Grotesk Bold", -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", Helvetica, Arial, sans-serif;
}

body.vk-ohio-active {
	overflow: hidden !important;
}

body.vk-ohio-shortcode #masthead .desktop-hamburger,
body.vk-ohio-shortcode #masthead .mobile-hamburger {
	display: none !important;
}

.vk-ohio-ui,
.vk-ohio-ui * {
	box-sizing: border-box;
}

.vk-ohio-toggle {
	position: fixed;
	top: 37.5px;
	left: max(20px, calc((100vw - 1265.66px) / 2));
	z-index: 10000001;
	display: block;
	width: 56px;
	height: 56px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--vk-ohio-accent);
	border-radius: 50%;
	background: rgba(255, 255, 255, .025);
	color: #fff;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: background-color .35s var(--vk-ohio-ease);
}

.vk-ohio-toggle::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: var(--vk-ohio-accent);
	transform: scale(0);
	transition: transform .35s var(--vk-ohio-ease);
}

.vk-ohio-toggle:hover::before,
.vk-ohio-toggle:focus-visible::before {
	transform: scale(1);
}

.vk-ohio-toggle > span {
	position: absolute;
	top: 50%;
	left: 19px;
	z-index: 1;
	display: block;
	width: 18px;
	height: 2px;
	border-radius: 1px;
	background: currentColor;
	transform-origin: center;
	transition: transform .4s var(--vk-ohio-ease);
}

.vk-ohio-toggle > span:first-child {
	transform: translateY(-4px);
}

.vk-ohio-toggle > span:last-child {
	transform: translateY(4px);
}

.vk-ohio-toggle.is-open {
	background: transparent;
}

.vk-ohio-toggle.is-open::before {
	transform: scale(0);
}

.vk-ohio-toggle.vk-suppress-hover::before,
.vk-ohio-toggle.vk-suppress-hover:hover::before,
.vk-ohio-toggle.vk-suppress-hover:focus::before,
.vk-ohio-toggle.vk-suppress-hover:focus-visible::before {
	transform: scale(0) !important;
}

.vk-ohio-toggle.is-open > span:first-child {
	transform: rotate(45deg);
}

.vk-ohio-toggle.is-open > span:last-child {
	transform: rotate(-45deg);
}

.vk-ohio-popup {
	position: fixed;
	inset: 0;
	z-index: 9999999;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: var(--vk-ohio-bg);
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition:
		opacity .5s ease-in-out,
		visibility 0s linear .5s;
}

.vk-ohio-popup.is-open {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transition-delay: 0s;
}

.vk-ohio-elementor-content {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 100dvh;
	overflow: hidden auto;
}

.vk-ohio-elementor-content > .elementor,
.vk-ohio-elementor-content > .e-con,
.vk-ohio-elementor-content > .elementor > .elementor-element {
	min-height: 100%;
}

.vk-ohio-container {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: min(100%, 1180px);
	height: 100%;
	margin: 0 auto;
	padding: 0 20px;
}

.vk-ohio-holder {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 75%;
	height: 100%;
	overflow: hidden auto;
	scrollbar-width: none;
}

.vk-ohio-holder::-webkit-scrollbar {
	display: none;
}

.vk-ohio-menu {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.vk-ohio-item {
	margin: 0 !important;
	padding: 5px 0 !important;
	overflow: hidden;
	list-style: none !important;
	opacity: 0;
	transform: translateY(30px);
}

.vk-ohio-popup.is-open .vk-ohio-item {
	animation: vkOhioSlideUp .35s var(--vk-ohio-ease) forwards;
	animation-delay: calc(.05s + var(--vk-index) * .05s);
}

@keyframes vkOhioSlideUp {
	to {
		opacity: 1;
		transform: none;
	}
}

.vk-ohio-item > a,
.vk-ohio-item > a:visited {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	padding: 0 0 0 20px;
	overflow: hidden;
	color: #fff;
	font-family: var(--vk-ohio-font);
	font-size: 10vh;
	font-weight: 700;
	line-height: 1;
	text-align: left;
	text-decoration: none !important;
	text-transform: uppercase;
}

.vk-ohio-number {
	position: absolute;
	top: .35em;
	left: 0;
	z-index: 3;
	color: rgba(255, 255, 255, .35);
	font-family: var(--vk-ohio-font);
	font-size: 14px;
	font-weight: 700;
	line-height: 20px;
	transition: transform .4s var(--vk-ohio-ease), opacity .4s var(--vk-ohio-ease);
}

.vk-ohio-label {
	position: relative;
	display: block;
	width: 100%;
	height: .95em;
	overflow: hidden;
}

.vk-ohio-label > span {
	position: absolute;
	top: 0;
	left: 10px;
	display: flex;
	width: 100%;
	line-height: .95;
	transition: transform .4s var(--vk-ohio-ease), opacity .4s var(--vk-ohio-ease);
}

.vk-ohio-label > span:first-child {
	transform: translateY(0);
	opacity: 1;
}

.vk-ohio-label > .vk-ohio-cloned {
	color: #fff;
	-webkit-text-stroke: 1px #fff;
	-webkit-text-fill-color: transparent;
	transform: translateY(100%);
	opacity: 0;
}

.vk-ohio-item > a:hover .vk-ohio-label > span:first-child,
.vk-ohio-item > a:focus-visible .vk-ohio-label > span:first-child {
	transform: translateY(-110%);
}

.vk-ohio-item > a:hover .vk-ohio-cloned,
.vk-ohio-item > a:focus-visible .vk-ohio-cloned {
	transform: translateY(0);
	opacity: .5;
}

.vk-ohio-item > a:hover .vk-ohio-number,
.vk-ohio-item > a:focus-visible .vk-ohio-number {
	transform: translateX(1rem);
	opacity: 0;
}

.vk-ohio-cursor {
	position: fixed;
	top: 0;
	left: 0;
	border-radius: 50%;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	will-change: transform;
}

.vk-ohio-cursor-outer {
	z-index: 10000000;
	width: 30px;
	height: 30px;
	margin: -15px 0 0 -15px;
	border: 1px solid var(--vk-ohio-accent);
	opacity: .5;
	transition: transform .08s ease-out, visibility .2s;
}

.vk-ohio-cursor-inner {
	z-index: 10000001;
	width: 6px;
	height: 6px;
	margin: -3px 0 0 -3px;
	background: var(--vk-ohio-accent);
	transition:
		width .2s var(--vk-ohio-ease),
		height .2s var(--vk-ohio-ease),
		margin .2s var(--vk-ohio-ease),
		opacity .2s;
}

html.vk-ohio-cursor-on,
html.vk-ohio-cursor-on body,
html.vk-ohio-cursor-on a,
html.vk-ohio-cursor-on button {
	cursor: none !important;
}

html.vk-ohio-cursor-on .vk-ohio-cursor {
	visibility: visible;
}

html.vk-ohio-cursor-on .vk-ohio-cursor-inner {
	opacity: 1;
}

html.vk-ohio-cursor-on .vk-ohio-cursor-inner.is-link {
	width: 20px;
	height: 20px;
	margin: -10px 0 0 -10px;
	opacity: .5;
}

html.vk-ohio-cursor-hidden .vk-ohio-cursor {
	visibility: hidden;
}

@media screen and (max-width: 768px) {
	.vk-ohio-toggle {
		top: 20px;
		right: 20px;
		left: auto;
	}

	.vk-ohio-container {
		flex-direction: column;
		width: 100%;
		padding: 0 20px;
	}

	.vk-ohio-holder {
		width: 100%;
	}

	.vk-ohio-item > a,
	.vk-ohio-item > a:visited {
		padding-left: 20px;
		font-size: 9vw;
	}

	.vk-ohio-number {
		top: .25em;
		font-size: 11px;
	}

	.vk-ohio-label > span {
		left: 10px;
	}
}

@media (hover: none), (pointer: coarse) {
	.vk-ohio-cursor {
		display: none !important;
	}

	.vk-ohio-toggle::before,
	.vk-ohio-toggle:hover::before,
	.vk-ohio-toggle:focus::before,
	.vk-ohio-toggle:focus-visible::before,
	.vk-ohio-toggle:active::before {
		transform: scale(0) !important;
	}

	.vk-ohio-toggle,
	.vk-ohio-toggle:hover,
	.vk-ohio-toggle:focus,
	.vk-ohio-toggle:active {
		background: rgba(255, 255, 255, .025) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.vk-ohio-popup,
	.vk-ohio-item,
	.vk-ohio-label > span,
	.vk-ohio-number,
	.vk-ohio-toggle > span {
		animation-duration: .01ms !important;
		transition-duration: .01ms !important;
	}
}
