﻿/***** Start of primary nav ******/
#menu-button{display: none;}
nav.mobile { display:none;}

nav.primary {
	font-family: var(--GothamBold);
    text-transform: uppercase;
	color: var(--white);
	padding: 30px 0 0 0;
	}
	nav.primary > ul {
	}
	nav.primary ul * {
	}
	nav.primary ul li {
		padding: 25px 10px ;
		font-size:15px;
		}
	nav.primary ul li a {
		transition: .3s ease all;
		opacity: 1;
		font-size:15px;
		}
	nav.primary ul li:hover > a {
		opacity: .6;
		}
	nav.primary ul ul {
		display: none;
		position: absolute;
		left: 0px;
		color: var(--black);
		background-color: var(--grey);
		width: 100%;
	}
	nav.primary ul ul li {
		padding: 0;
	}
	nav.primary ul li:hover ul {
		display: flex;
		z-index: 100;
		box-shadow: 0 0 20px var(--black);
		margin-top: 25px;
		left: var(--sm-padding);
		right: var(--sm-padding);
		width: 100% - calc(var(--sm-padding));
	}
	nav.primary ul li:hover ul.mega-nav .mega-nav-group {
		padding: var(--sm-padding);
		display: flex;
	}
	nav.primary ul li:hover ul.mega-nav img {
		object-position: center;
		object-fit: cover;
		aspect-ratio: 1 / 1;
		max-width: 375px;
	}
	nav.primary ul li:hover ul.mega-nav .mega-menu-links {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 0px 10px;
	}
	nav.primary ul li:hover ul li a {
		opacity: 1;
		font-size: 16px;
		line-height: 22px;
		width: 100%;
    	display: block;
		padding: 5px 0;
	}
	nav.primary ul li:hover ul li a:hover {
		opacity: .6;
	}

/******** End of primary Nav ***************/

@media screen and (max-width: 1100px)  {

/*==============================
	Mobile Nav Styles			
================================*/	
nav.primary{display:none;}
#menu-button{ 
	font-size: 24px;
	padding: 17px;
	position: relative;
	line-height: 36px; 
	z-index: 400;
	color: var(--white);
	text-align: right;
	display: flex;
    align-items: flex-end;
	width: 100%;
	}
	#menu-button a{
		opacity: 1;
		transition: .3s ease opacity;
		font-size: 28px;
		text-decoration: none;
		font-weight:normal;
		margin: 0;
		width: 100%;
		text-align: center;
	}
	#menu-button a:hover {
		opacity: .6;
	}
nav.mobile {
	font-weight: 700;
	font-style: normal;
	display:block;
	position: fixed;
	top: -100vh;
	left: 0;
	width: 100%;
	height: 100vh;
	background: var(--white);
	z-index: 500; /* needs to be higher than #menu-button, adjust as needed */
	overflow-y: scroll;
	overflow-x: hidden;
}
nav.mobile .mega-nav-group {
	padding: var(--sm-padding) 0;
}
/* MENU HEADER SOCIAL MEDIA */
	nav.mobile .social-media {
		position: absolute;
		display: inline-block;
		font-size: 16px;
		padding: 0 0 0 15px;
		color: var(--black) !important;
		top: -34px;
		left: 0;
		font-size: 14px;
		font-weight: bold;
	}
	
	nav.mobile .social-media a:link, nav.mobile .social-media a:visited {color:var(--black); text-decoration:none;}
	nav.mobile .social-media a:hover, nav.mobile .social-media a:active {color:var(--black); text-decoration:underline;}

/* MENU HEADER STYLES */
nav.mobile .mobile_top {
	position: relative;
	display:block;
	padding: 0;
	margin:50px 0 10px 0;
	color: var(--black);
	background-color: var(--white);
	font-size: 18px;
	font-weight: 400;
}
nav.mobile .sub-tab li {
	padding-left: 15px;
    border-left: 1px solid;
    margin-left: 10px;
}

/* MENU CLOSE 'X' BUTTON */
nav.mobile .menu-toggle {
	position: absolute;
	padding: 10px 15px;
	font-size:20px;
	font-weight: bold;
	background: var(--white);
	color: var(--black);
	text-decoration: none;
	top:-38px;
	right:5px;
	opacity: 1;
	border-radius: 0;
	transition: .3s ease opacity;
}
nav.mobile .menu-toggle:hover { /* Menu close button on hover */
	opacity: .6;
}

/* MENU LIST STYLE */
nav.mobile .mobile-sub-nav {
	padding-left: 15px;
}
nav.mobile ul {
	list-style: none;
	margin:0;
	font-family: var(--GothamBold);
	font-weight: 900;
	font-style: normal;
}

nav.mobile img {
	width: 100%;
	max-height: 350px;
	object-fit: cover;
	object-position: center;
}
nav.mobile p {
	padding: 10px 15px;
	color: var(--white);
}

/* FIRST LEVEL */
nav.mobile ul li {
	position: relative;
	display: block;
	font-size:16px;
	color: var(--black);
	text-decoration: none;
	text-align: left;
	transition: background 0.5s ease;
}
nav.mobile ul li:last-of-type {
	margin-bottom: 20px;
}

nav.mobile ul li ul {
	background-color: var(--black);
	color: var(--black);
	text-transform: uppercase;
}

nav.mobile ul li ul li:hover {
	background-color: var(--white);
	color: var(--black);
}

/* SECOND LEVEL */
nav.mobile ul li li:last-child {border:none;}
nav.mobile ul li li {
	position: relative;
	display: block;
	color: var(--white);
	text-decoration: none;
	padding: 10px 15px;
}

nav.mobile ul li .click{/* dropdown menu indicator arrow be sure to include this image with your image files */ 
	cursor:pointer;
	color:var(--black);
	padding: 0 15px;
	line-height: 48px;
	display: block;
	width: 100%;
	}
	
nav.mobile ul li a{
	cursor:pointer;
	color:var(--black);
	padding: 0 15px;
	line-height: 48px;
	display: block;
	width: 100%;
	}
	
	
.nav-footer {color:var(--white); position:absolute; font-size:14px; line-height:16px; padding:15px 10px; background-color: var(--black);font-family: var(--GothamBook), sans-serif;font-weight: 400;font-style: normal;text-align: center;bottom: 0;right: 0;left: 0;}

/* FONT AWESOME ICONS */
nav.mobile ul li .fa{
	width:25px;
	font-weight:100;
	padding:8px 3px;
	margin:0 6px 0 0;
	text-align:center;
	background:#292929;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}

nav.mobile ul li .fa-chevron-down {color:var(--white);}
}