/**********************************************************
// Modal >> Nav
**********************************************************/
.Modal-Nav {
	margin: auto;
	padding: 0;
	width: 100%;
	height: 100%;
	border: 0;
	display: none;
	overflow: hidden;
	background: var(--Color-Light-Gray);
	position: fixed;
	z-index: 99999;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
	}

body.admin-bar .Modal-Nav { top: 4rem; }

.Modal-Nav-Outer {
	padding-right: 3.125rem;
	overflow-x: hidden;
    overflow-y: scroll;
	position: absolute;
	z-index: 200;
	bottom: 0;
	right: -3.125rem;
	left: 0;
	top: 0;
	}

.Modal-Nav-Inner {
	margin: auto;
	padding: var(--90px) 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 >> Button
**********************************************************/
.Modal-Nav-Button {
	margin-top: var(--5px);
	margin-bottom: var(--20px);
	padding: var(--12px) var(--15px);
	border-radius: var(--5px);
	background: var(--Color-Yellow);
	color: var(--Color-Dark);
	text-align: center;
	text-transform: uppercase;
	letter-spacing: var(--1px);
	font-weight: 700;
	font-size: var(--16px);
	transition-property: color, background;
	transition-duration: 0.2s;
	transition-timing-function: ease-in-out;
	display: block;
	}

.Modal-Nav-Button:hover,
.Modal-Nav-Button:focus {
	background: var(--Color-Green);
	color: var(--Color-White);
	}

/**********************************************************
// Modal >> Nav >> Top
**********************************************************/
.Modal-Nav-Top {
	background: var(--Color-White);
	position: relative;
	z-index: 5000;
	}

.Modal-Nav-Top-Outer { padding: var(--15px); }
.Modal-Nav-Top-Inner {
	margin: auto;
	width: 100%;
	max-width: var(--1280px);
	min-height: var(--40px);
	font-size: 0;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	}

.Modal-Nav-Top-Left { margin: 0; }
.Modal-Nav-Top-Right { margin-left: auto; }

/**********************************************************
// Modal >> Nav >> Logo
**********************************************************/
.Modal-Nav-Logo {
	margin: auto;
	line-height: 0;
	font-size: 0;
	border-radius: var(--4px);
	display: inline-block;
	position: relative;
	}

.Modal-Nav-Logo img {
	width: auto;
	height: auto;
	max-height: var(--30px);
	}

/**********************************************************
// Modal >> Nav >> Close
**********************************************************/
.Modal-Nav-Close {
	padding: 0;
	cursor: pointer;
	line-height: 0;
	background-color: transparent;
	border: 0;
	color: var(--Color-Dark);
	transition-property: color;
	transition-duration: 0.2s;
	transition-timing-function: ease-in-out;
	display: inline-flex;
	align-items: center;
	position: relative;
	}

.Modal-Nav-Close:hover,
.Modal-Nav-Close:focus,
.Modal-Nav-Close:focus-visible {
	color: var(--Color-Red);
	outline: 0;
	}

.Modal-Nav-Close:hover i,
.Modal-Nav-Close:focus i,
.Modal-Nav-Close:focus-visible i {
	background: var(--Color-Red);
	color: var(--Color-White);
	}

.Modal-Nav-Close-Label {
	margin-right: var(--10px);
	text-transform: uppercase;
	letter-spacing: var(--1px);
	font-family: var(--Font-Default);
	font-weight: 700;
	font-size: var(--14px);
	position: relative;
	display: inline-block;
	vertical-align: middle;
	}

.Modal-Nav-Close i {
	padding: var(--5px);
	width: var(--30px);
	height: var(--30px);
	font-size: var(--20px);
	border-radius: 100%;
	background: var(--Color-Orange);
	color: var(--Color-White);
	transition: 0.2s background ease-in-out;
	display: inline-block;
	vertical-align: middle;
	}

/**********************************************************
// 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-Light-Gray);
	background: var(--Color-Green);
	color: var(--Color-White);
	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-Yellow);
	background: var(--Color-Yellow);
	color: var(--Color-White);
	}

/**********************************************************
// Modal Nav >> Links
**********************************************************/
.Modal-Nav-Links li {
	padding: var(--5px) 0;
	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 {
	padding: var(--10px) var(--15px);
	background: var(--Color-Green);
	color: var(--Color-White);
	border-radius: var(--5px);
	text-align: center;
	text-transform: uppercase;
	letter-spacing: var(--1px);
	line-height: 1.5em;
	font-weight: 600;
	font-size: var(--14px);
	transition: all 0.2s ease-in-out;
	display: block;
	position: relative;
	}

.Modal-Nav-Links a:hover,
.Modal-Nav-Links a:focus {
	background: var(--Color-Yellow);
	color: var(--Color-White);
	}

.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 {
	background: var(--Color-Dark-Green);
	color: var(--Color-White);
	}

.Modal-Nav-Links li.Section > a {
	background: var(--Color-Dark-Green);
	color: var(--Color-White);
	}

.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 /* 400px */
all and (max-width: 25rem),
all and (max-device-width: 25rem)
{
	.Modal-Nav-Close-Label { display: none; }
}
