/**********************************************************
// Modal >> Nav
**********************************************************/
.Modal-Nav {
	margin: auto;
	padding: 0;
	width: 100%;
	height: 100%;
	border: 0;
	display: none;
	overflow: hidden;
	background: var(--Color-Black);
	position: fixed;
	z-index: 99999;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
	}

body.admin-bar .Modal-Nav { top: 4rem; }

.Modal-Nav-BG {
	height: 0;
	background: var(--Color-Black);
	overflow: hidden;
	position: absolute;
	z-index: 100;
	right: 0;
	left: 0;
	top: 0;
	}

.Modal-Nav-BG.Open { height: 100vh; }

.Modal-Nav-BG:after {
    padding-bottom: 150%;
    content: '';
    display: block;
	}

.Modal-Nav-BG img {
	width: 100%;
	height: 100%;
	object-fit: cover;
    object-position: top center;
	}

.Modal-Nav-Outer {
	padding-right: 2.1875rem;
	overflow-x: hidden;
    overflow-y: scroll;
	position: absolute;
	z-index: 200;
	bottom: 0;
	right: -3.125rem;
	left: 0;
	top: var(--70px);
	}

.Modal-Nav-Inner {
	margin: auto;
	padding: var(--15px) var(--20px) var(--20px) var(--20px);
	width: 100%;
	max-width: 31.25rem;
	display: none;
	}

body.admin-bar .Modal-Nav-Inner { padding-bottom: var(--60px); }

/**********************************************************
// Modal >> Nav >> Top
**********************************************************/
.Modal-Nav-Top {
	background: var(--Color-Black);
	position: relative;
	z-index: 5000;
	}

.Modal-Nav-Top-Outer { padding: var(--10px) var(--20px); }
.Modal-Nav-Top-Inner {
	margin: auto;
	width: 100%;
	max-width: var(--1280px);
	height: var(--50px);
	text-align: center;
	font-size: 0;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	}

.Modal-Nav-Top-Center {
	margin: auto;
	width: 46%;
	flex: 1;
	}

.Modal-Nav-Top-Left {
	margin: 0;
	width: 27%;
	}

.Modal-Nav-Top-Right {
	margin-left: auto;
	text-align: right;
	width: 27%;
	}

/**********************************************************
// Modal >> Nav >> Logo
**********************************************************/
.Modal-Nav-Logo {
	margin: auto;
	padding: var(--5px);
	display: inline-block;
	vertical-align: top;
	border-radius: var(--5px);
	line-height: 0;
	font-size: 0;
	}

.Modal-Nav-Logo:focus-visible,
.Modal-Nav-Logo:focus { outline: var(--1px) solid rgba(255, 255, 255, 0.25); }

.Modal-Nav-Logo img {
	width: auto;
	height: auto;
	max-height: var(--14px);
	}

.Modal-Nav-Logo:focus-visible img,
.Modal-Nav-Logo:focus img,
.Modal-Nav-Logo:hover img { opacity: 1; }

/**********************************************************
// Modal >> Nav >> Close
**********************************************************/
.Modal-Nav-Close {
	margin: 0;
	padding: 0;
	width: var(--50px);
	height: var(--50px);
	border-radius: 100%;
	border: 0;
	background: var(--Color-Black);
	color: var(--Color-White);
	transition-property: color, background;
	transition-duration: 0.2s;
	transition-timing-function: ease-in-out;
	font-size: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	}

.Modal-Nav-Close:hover,
.Modal-Nav-Close:focus {
	outline: 0;
	border: 0;
	background: var(--Color-White);
	color: var(--Color-Black);
	}

.Modal-Nav-Close i { font-size: var(--30px); }

/**********************************************************
// Modal >> Nav >> Social
**********************************************************/
.Modal-Nav-Social {
	margin: var(--15px) auto 0 auto;
	text-align: center;
	display: block;
	}

.Modal-Nav-Social li {
	margin: 0 var(--10px);
	display: inline-block;
	vertical-align: top;
	}

.Modal-Nav-Social li a {
	width: var(--50px);
	height: var(--50px);
	border-radius: 100%;
	border: 0.125rem solid var(--Color-Black);
	background: var(--Color-White);
	color: var(--Color-Black);
	font-size: var(--20px);
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	}

.Modal-Nav-Social li a:hover { text-decoration: none; }
.Modal-Nav-Social li a:focus { outline: 0; }
.Modal-Nav-Social li a:hover,
.Modal-Nav-Social li a:focus-visible {
	outline: var(--2px) solid var(--Color-White);
	background: var(--Color-White);
	color: var(--Color-Black);
	}

/**********************************************************
// Modal Nav >> Links
**********************************************************/
.Modal-Nav-Links li {
	padding: var(--10px) 0;
	text-align: center;
	display: block;
	}

.Modal-Nav-Links li.menu-item-has-children { padding-bottom: 0; }
.Modal-Nav-Links li.menu-item-has-children .sub-menu { margin-top: var(--5px); }

.Modal-Nav-Links a {
	color: var(--Color-White);
	text-align: center;
	text-transform: uppercase;
	letter-spacing: var(--1px);
	line-height: 1.5em;
	font-weight: 300;
	font-size: var(--16px);
	transition: all 0.2s ease-in-out;
	display: inline-block;
	position: relative;
	top: 0;
	}

.Modal-Nav-Links a:before {
	content: '';
	height: var(--2px);
	opacity: 0;
	transition: all 0.2s ease-in-out;
	background: var(--Color-White);
	position: absolute;
	bottom: -0.125rem;
	right: 0;
	left: 0;
	}

.Modal-Nav-Links a:hover:before,
.Modal-Nav-Links a:focus-visible:before { opacity: 1; }

.Modal-Nav-Links a:hover,
.Modal-Nav-Links a:focus-visible {
	color: var(--Color-White);
	text-decoration: none;
	top: -0.125rem;
	}

.Modal-Nav-Links li a em { text-transform: initial; }

.Modal-Nav-Links .menu > li.current_page_parent > a,
.Modal-Nav-Links li.current_page_item > a,
.Modal-Nav-Links li.Section > a {
	padding: var(--5px) var(--10px) var(--3px) var(--10px);
	border-radius: var(--5px);
	background: var(--Color-White);
	color: var(--Color-Black);
	top: 0 !important;
	}

.Modal-Nav-Links .menu > li.current_page_parent > a:hover:before,
.Modal-Nav-Links li.current_page_item > a:hover:before,
.Modal-Nav-Links li.Section > a:hover:before,
.Modal-Nav-Links .menu > li.current_page_parent > a:focus-visible:before,
.Modal-Nav-Links li.current_page_item > a:focus-visible:before,
.Modal-Nav-Links li.Section > a:focus-visible:before {
	opacity: 0 !important;
	}

.Modal-Nav-Links .sub-menu li { padding-left: var(--30px); }

/**********************************************************
// Media Queries
**********************************************************/
@media /* 768px */
all and (max-width: 48rem),
all and (max-device-width: 48rem)
{
	body.admin-bar .Modal-Nav { top: 5.8rem; }
}

@media /* 500px */
all and (max-width: 31.25rem),
all and (max-device-width: 31.25rem)
{
	.Modal-Nav-Top-Left,
	.Modal-Nav-Top-Right { width: 20%; }
	.Modal-Nav-Top-Center { width: 60%; }
}
