.mobile-nav__overlay {
	position: fixed;
	inset: 0;
	z-index: 99998;
	background: rgba(12, 32, 20, .55);
	opacity: 0;
	transition: opacity .25s ease-out;
}
.mobile-nav__overlay.is-open { opacity: 1; }

.mobile-nav {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 99999;
	width: min(82vw, 320px);
	height: 100%;
	padding: 64px 0 24px;
	overflow-y: auto;
	background: #088136;
	transform: translateX(100%);
	transition: transform .28s cubic-bezier(.22, .61, .36, 1);
	-webkit-overflow-scrolling: touch;
}
.mobile-nav.is-open { transform: translateX(0); }

.mobile-nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.mobile-nav li { margin: 0; }

.mobile-nav a {
	display: block;
	padding: 15px 26px;
	color: #fff;
	font-size: 17px;
	line-height: 1.35;
	text-decoration: none;
	border-bottom: 1px solid rgba(255, 255, 255, .16);
}
.mobile-nav a:hover,
.mobile-nav a:focus-visible {
	background: rgba(255, 255, 255, .12);
	color: #fff;
}
.mobile-nav a:focus-visible {
	outline: 2px solid #eda822;
	outline-offset: -2px;
}

.mobile-nav__close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	background: none;
	cursor: pointer;
}
.mobile-nav__close span {
	position: absolute;
	top: 50%;
	left: 11px;
	width: 22px;
	height: 2px;
	background: #fff;
}
.mobile-nav__close span:first-child { transform: rotate(45deg); }
.mobile-nav__close span:last-child { transform: rotate(-45deg); }
.mobile-nav__close:focus-visible {
	outline: 2px solid #eda822;
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	.mobile-nav,
	.mobile-nav__overlay { transition: none; }
}

@media (min-width: 960px) {
	.mobile-nav,
	.mobile-nav__overlay { display: none !important; }
}

@media (min-width: 960px) {
	.oceanwp-mobile-menu-icon .mobile-menu { display: none !important; }
}

@media (max-width: 959px) {
	#site-header-inner { position: relative; }
	#site-logo #site-logo-inner a img { max-width: min(240px, calc(100vw - 104px)); }
	.oceanwp-mobile-menu-icon {
		position: absolute;
		top: 50%;
		right: 12px;
		float: none;
		width: 44px;
		height: 44px;
		margin: -22px 0 0;
	}
	.oceanwp-mobile-menu-icon .mobile-menu {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 44px;
		height: 44px;
		border-radius: 4px;
	}
	.oceanwp-mobile-menu-icon .mobile-menu::before {
		content: "";
		display: block;
		width: 24px;
		height: 2px;
		background: #088136;
		box-shadow: 0 -7px 0 #088136, 0 7px 0 #088136;
	}
	.oceanwp-mobile-menu-icon .mobile-menu:focus-visible {
		outline: 2px solid #eda822;
		outline-offset: 2px;
	}
}
