@media only screen {
	/* all navs */
	nav {
		position: relative;
	}
	nav ul {
		position: relative;
		list-style: outside none none;
	}	
	nav ul li {
		position: relative;
	}
	nav ul li a {
		position: relative;
		text-transform: uppercase;
		overflow: hidden;
		white-space: pre-line;
		z-index: 1;
	}

	/* top nav */
	nav.nav-top ul {
		margin: 0;
		padding: 0;
	}	
	nav.nav-top ul li a {
		display: block;
		text-decoration: none;
	}
	nav.nav-top ul li a i {
		margin-right: 10px;
	}
	nav.nav-top ul li a:hover,
	nav.nav-top ul li.selected > a {
		text-decoration: underline;
	}

	/* secondary nav */
	nav.nav-secondary ul li a[href*="/map/"]:before {
		display: inline-block;
		position: relative;
		padding: 0 10px 0 1px;
		font-family: 'Font Awesome 5 Free';
		content: '\f3c5';
		font-weight: 900;
	}

	/* footer nav */
	nav.nav-footer ul {
		padding: 0;
		padding-inline-start: 0;
		margin-block-start: 0;
		margin-block-end: 0;
	}
	nav.nav-footer ul li {
		padding-top: 1.5em;
	}
	nav.nav-footer a {
		font-weight: 500;
		font-size: 1em;
		text-decoration: underline;
		color: black;
	}
	
	nav.nav-footer.bottom-links {
		padding-top: 1em;
		padding-bottom: 0.5em;
	}
	nav.nav-footer.bottom-links ul li {
		padding-top: 0;
	}
	nav.nav-footer.bottom-links p {
		font-weight: 800;
	}
	nav.nav-footer.bottom-links a {
		font-weight: 800;
		line-height: 2;
		text-decoration: none;
		white-space: normal;
		color: #006d5b;
	}

	/* sitemap */
	.sitemap {
		position: relative;
		padding: 0 1em 1em;
	}
	.sitemap h4 {
		margin-block-start: 0;
		font-family: Raleway;
		font-weight: 600;
		color: #d26d33
	}
	.sitemap ul {
		padding-inline-start: 0;
		list-style: none;
	}
	.sitemap ul ul {
		list-style: disc;
		padding-inline-start: 1.4em;
	}
	.sitemap ul ul ul {
		list-style: circle;
	}
	.sitemap ul ul ul ul {
		list-style: disc;
	}
	.sitemap li {
		color: #d26d33
	}
	.sitemap a {
		line-height: 2;
		text-decoration: none;
		color: #006d5b;
	}
	.sitemap a:hover {
		text-decoration: underline;
	}
	.sitemap > ul > li > a {
		font-size: 1.5em;
	}
}

@media only screen and (max-width: 64em) {
	/* navs hidden at mobile size */
	nav.nav-breadcrumb {
		display: none;
	}
	nav.nav-side {
		display: none;
	}

	nav ul li a {
		color: #006d5b;
	}

	/* main nav */
	nav.nav-top ul {
		padding-left: 1em;
	}
	nav.nav-top > ul > li.last {
		padding-bottom: 1em;
	}
	nav.nav-top ul li a {
		font-weight: 900;
		font-size: 1.3em;
		line-height: 2.6;
	}
	nav.nav-top ul li a br {
		display: none;
	}
	nav.nav-top > ul li ul li {
		height: 0;
		opacity: 0;
		transition: height 300ms linear, opacity 300ms linear;
	}
	nav.nav-top ul > li.open > ul > li {
		height: auto;
		opacity: 1;
	}
	nav.nav-top > ul li .menu-toggle {
		display: inline-block;
		position: absolute;
		width: 1.25em;
		top: 1em;
		right: 2em;
		padding: 1em;
		cursor: pointer;
		z-index: 1;
	}
	nav.nav-top > ul li .menu-toggle .fa {
		display: block;
		position: absolute;
		top: 0;
		font-size: 1.5em;
		color: #006d5b;
	}
	nav.nav-top > ul li.open > .menu-toggle .fa {
		transform: rotate(270deg);
	}

	/* secondary nav */
	nav.nav-secondary ul li a {
		font-weight: 400;
		font-size: 1.1em;
	}

	/* nav buttons */
	nav.nav-buttons {
		display: flex;
		align-items: center;
		position: fixed;
		width: 100%;
		height: 90px;
		bottom: 0;
		margin: 0;
		padding: 0;
		border-top: 2px solid white;
		font-size: 0;
		z-index: 20;
		transition: height 500ms ease;
		background-color: #d26d33;
	}
	body.menu-open nav.nav-buttons {
		height: 0;
		background-color: #d26d33;
	}
	nav.nav-buttons a {
		position: relative;
		flex-basis: 25%;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: center;
		height: 100%;
		text-decoration: none;
		color: white;
		background-color: #d26d33;
	}
	nav.nav-buttons a.open {
		background-color: #006d5b;
	}
	nav.nav-buttons a .icon {
		position: relative;
	}
	nav.nav-buttons a .icon:before {
		position: relative;
		color: inherit;
	}

	nav.nav-buttons a.button-1 .icon:before {
		content: url(/includes/public/assets/images/hotels-casinos.png);
	}
	nav.nav-buttons a.button-2 .icon:before {
		content: url(/includes/public/assets/images/shows-events.png);
	}
	nav.nav-buttons a.button-3 .icon:before {
		content: url(/includes/public/assets/images/food-drink.png);
	}
	nav.nav-buttons a.button-4 .icon:before {
		content: url(/includes/public/assets/images/things-to-do.png);
	}
	nav.nav-buttons a p {
		padding: 8px 4px 16px;
		font-weight: 500;
		font-size: 14px;
		line-height: 1;
		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		color: inherit;
	}
}

@media only screen and (max-width: 25em) {
	nav.nav-buttons a.nav-button p {
		margin: 0 auto;
		padding-left: 0;
		padding-right: 0;
		font-size: 12px;
		text-align: left;
	}
	nav.nav-buttons a.nav-button.button-1 p {
		width: 62px;
	}
	nav.nav-buttons a.nav-button.button-2 p {
		width: 56px;
	}
	nav.nav-buttons a.nav-button.button-3 p {
		width: 46px;
	}
	nav.nav-buttons a.nav-button.button-4 p {
		width: 46px;
	}
}

@media only screen and (min-width: 40.063em) {
	/* sitemap */
	.sitemap > ul {
		-moz-column-count: 2;
		-moz-column-gap: 1em;
		-webkit-column-count: 2;
		-webkit-column-gap: 1em;
		column-count: 2;
		column-gap: 1em;
	}
}

@media only screen and (min-width: 64.063em) {
	nav ul li a {
		color: black;
	}

	nav.nav-main {
		opacity: 0;
		transition: opacity 500ms linear;
	}
	nav.nav-main.loaded {
		opacity: 1;
	}

	/* main nav */
	nav.nav-top > ul {
		display: flex;
		flex-direction: row;
	}
	nav.nav-main > ul {
		justify-content: space-between;
		flex-basis: 47em;
	}
	nav.nav-top > ul > li > ul {
		display: none;
	}
	nav.nav-top > ul > li:hover > ul {
		display: block;
	}
	nav.nav-top ul li {
		width: auto;
	}
	nav.nav-top ul li a {
		font-weight: 400;
		font-size: 0.9em;
		line-height: 1;
		white-space: nowrap;
		color: white;
	}
	nav.nav-top ul li a .bolded {
		font-weight: 700;
	}
	nav.nav-top ul li a i {
		position: relative;
		top: 2px;
		left: 2px;
		margin-right: 22px;
		font-size: 23px;
		color: white;
	}
	nav.nav-top.nav-main ul li a {
		padding-top: 15px;
		text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
	}
	/* microsite */
	nav.microsite ul {
		justify-content: unset;
	}
	nav.microsite > ul > li {
		padding-right: 20px;
	}
	/* secondary nav only */
	nav.nav-secondary ul li a {
		height: 50px;
		padding-right: 25px;
		font-size: 12px;
		line-height: 50px;
		color: black;
	}
	nav.nav-secondary ul li a[href*="/map/"]:before {
		padding-right: 6px;
	}
	nav.nav-secondary ul li a i {
		color: #006d5b;
	}

	/* top-level nav only */
	nav.nav-top > ul > li.active > a {
		font-weight: 700;
		text-decoration: underline;
	}
	nav.nav-top > ul li ul li a {
		display: inline-block;
		color: white;
	}
	nav.nav-top > ul > li > ul {
		position: absolute;
		top: auto;
		right: 0;
		padding: 1em;
		background-color: #d26d33;
		z-index: 1;
	}
	nav.nav-top ul li ul li ul li {
		margin-left: 1em;
	}
	nav.nav-top > ul > li.last {
		padding-bottom: 0;
	}
	nav.nav-top .menu-toggle {
		display: none;
	}
	nav.nav-top > ul li .menu-toggle {
		left: 20px;
		top: 8px;
	}
	nav.nav-top > ul li > .fa {
		position: absolute;
		display: block;
		top: 43px;
		left: 0;
		right: 0;
		margin: 0 auto;
		color: #b8b7bd;
	}

	/* breadcrumb nav */
	nav.nav-breadcrumb {
		display: block;
		position: relative;
		padding-left: 1em;
	}
	nav.nav-breadcrumb ul {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		margin: 0;
		padding: 10px 0 0;
		list-style-type: none;
	}
	body.has-hero nav.nav-breadcrumb ul {
		padding-top: 0;
	}
	nav.nav-breadcrumb ul li a {
		font-weight: 400;
		text-decoration: none;
		text-transform: uppercase;
		color: black;
		font-size: 14px;
	}
	nav.nav-breadcrumb ul li a:hover {
		text-decoration: underline;
	}
	nav.nav-breadcrumb ul li.current a {
		font-weight: 400;
		color: #006d5b;
	}
	nav.nav-breadcrumb ul li a .fa {
		padding: 0 0.4em 0 0.3em;
	}
	nav.nav-breadcrumb ul li.current a .fa {
		display: none;
	}

	/* side nav */
	nav.nav-side {
		display: block;
		margin: 1em 0;
		padding: 1em;
		background-color: #d1dfc6;
	}
	nav.nav-side > ul {
		margin: 0;
		padding: 0;
	}
	nav.nav-side ul li {
		position: relative;
		display: block;
		overflow: hidden;
		padding: 0;
	}
	nav.nav-side li > ul {
		display: none;
	}
	nav.nav-side li.open > ul {
		display: block;
	}
	nav.nav-side ul li a {
		display: inline-block;
		position: relative;
		padding: 0.25em 0.25em 0.25em 1em;
		font-weight: 500;
		text-decoration: none;
		text-transform: uppercase;
		white-space: pre-line;
		color: black;
		z-index: 1;
	}
	nav.nav-side li.selected > a,
	nav.nav-side li > a:hover {
		text-decoration: underline;
	}
	nav.nav-side li .menu-toggle {
		display: inline-block;
		position: absolute;
		top: 0.45em;
		right: 0;
		width: 1.25em;
		padding: 0.25em;
		cursor: pointer;
		z-index: 2;
	}
	nav.nav-side li.open > .menu-toggle {
		top: 0.25em;
	}
	nav.nav-side li .menu-toggle .fa {
		display: block;
		color: #006d5b;
	}
	nav.nav-side li.open > .menu-toggle .fa {
		transform: rotate(270deg);
	}

	/* footer nav */
	nav.nav-footer {
		flex-basis: 50%;
	}
	nav.nav-footer ul li {
		padding-top: 0.5em;
	}
	nav.nav-footer a {
		font-weight: 500;
		font-size: 1.125em;
	}
	nav.nav-footer.site-links a {
		font-weight: 700;
	}

	/* nav buttons */
	nav.nav-buttons {
		display: none;
	}

	/* sitemap */
	.sitemap > ul {
		-moz-column-count: 3;
		-webkit-column-count: 3;
		column-count: 3;
	}
}

@media only screen and (min-width: 75em) {
	/* top navs */
	nav.nav-top ul li a {
		font-size: 1em;
	}
	nav.nav-top.nav-main ul li a {
		padding-top: 13px;
	}	
	nav.nav-secondary ul li a {
		padding-right: 55px;
		font-size: 12px;
	}
	nav.nav-main > ul {
		flex-basis: 57em;
	}
}

@media only screen and (min-width: 90em) {
	nav.nav-breadcrumb {
		padding-left: 0;
	}
	/* sitemap */
	.sitemap {
		padding: 0 0 1em;
	}
}

/* internet explorer only */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	nav.nav-buttons a .icon {
		top: 16px;
	}
	nav.nav-buttons a.nav-button p {
		max-width: 5.625em;
	}
}
