
/*
|-----------------------------------------------------------------------------------------------------------
| Main Nav Widget
|-----------------------------------------------------------------------------------------------------------
*/
.header-section .nav-hit-cont { cursor: pointer; }

.nav-primary .nav-hit-cont::after {
	content: 'Menu';
	font-size: 13px;
	font-weight: 600;
	position: relative;
	display: block;
	margin-top: -5px;
	letter-spacing: -0.4px;
}

.nav-primary .nav-hit-cont::after {
	opacity: 1;
	transition: opacity 0.5s ease-in-out 1s;
}

.nav-primary.active .nav-hit-cont::after {
	opacity: 0;
	transition: opacity 0.2s ease-in-out 0s;
	pointer-events: none;
}

.sticky .nav-primary .nav-hit-cont::after { content: none; }

.nav-hit-cont .nav-hit-inner:before,
.nav-hit-cont .nav-hit-inner:after {
	content:"";
	position: absolute;
	top: 19px;
	height:2px;
	background:#1d1d1d;
}

.nav-hit-cont.active .nav-hit-inner:after {
	animation: rotateleft 0.75s linear 0.5s forwards;
}

.nav-hit-cont.active .nav-hit-inner:before {
	animation: rotateright 0.75s linear 0.5s forwards;
}

@keyframes rotateleft {
	0% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
	50% { left: 1px; right: 1px; transform: rotate(0deg) translateY(-50%); }
	100% { left: 1px; right: 1px; transform: rotate(45deg) translateY(-50%); }
}

@keyframes rotateright {
	0% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
	50% { left: 1px; right: 1px; transform: rotate(0deg) translateY(-50%); }
	100% { left: 1px; right: 1px; transform: rotate(-45deg) translateY(-50%); }
}

.nav-hit-cont .nav-hit-inner.menu-closing:after {
	animation: rerotateleft 0.75s linear;
}

.nav-hit-cont .nav-hit-inner.menu-closing:before {
	animation: rerotateright 0.75s linear;
}

@keyframes rerotateleft {
	0% { left: 1px; right: 1px; transform: rotate(-45deg) translateY(-50%); }
	50% { left: 1px; right: 1px; transform: rotate(0deg) translateY(-50%); }
	100% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
}

@keyframes rerotateright {
	0% { left: 1px; right: 1px; transform: rotate(45deg) translateY(-50%); }
	50% { left: 1px; right: 1px; transform: rotate(0deg) translateY(-50%); }
	100% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
}

.nav-hit-inner {
	position: relative;
	z-index: 2;
}

.nav-hit-cont.active .nav-hit-inner { z-index: 10000; }

.nav-hit-cont .nav-hit-hider {
	opacity: 1;
	overflow: hidden;
	transition: opacity 0.5s ease-in-out 1s;
}

.nav-hit-cont .nav-hit-hider,
.nav-hit-cont .nav-hit-hider img { vertical-align: middle; }

.nav-hit-cont .nav-hit-hider img.btn-md-lg {
	display: none;
}

.nav-hit-cont.active .nav-hit-hider {
	opacity: 0;
	transition: opacity 0.2s ease-in-out 0s;
	pointer-events: none;
}

.nav-primary .nav-dd {
	position: fixed;
	top: 60px;
	left: 0;
	right: 0;
	height: 0;
	pointer-events: none;
	transition: height 0.5s ease-in-out 0.75s;
	background-color: #fff;
	overflow: hidden;
	visibility: hidden;
	opacity: 0;
}

.nav-primary .nav-dd.visible {
	visibility: visible;
	opacity: 1;
}

.nav-primary .nav-dd.active {
	top: 60px;
	height: calc(100vh - 60px);
	pointer-events: auto;
	transition: height 0.5s ease-in-out;
	overflow-y: auto;
	overflow-x: hidden;
}

.sticky .nav-primary .nav-dd,
.sticky .nav-primary .nav-dd.active { 
	top: 0 !important;
	height: 100vh;
}


.nav-primary .nav-dd::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background-color: #ccc;
	opacity: 0;
	transition: opacity 0s ease-in-out 0.25s;
}

.nav-primary .nav-dd.active::before {
	opacity: 1;
	transition: opacity 0s ease-in-out 1s;
}

.nav-primary .nav-dd.active .tabs-cont {min-height: 100vh;}

.nav-primary .nav-dd .tabs-cont { background-color: #fff; }

.nav-primary .nav-dd #tab-indnav {
	min-height: 100vh;
	background-color: #1d1d1d;
}

.nav-primary .nav-dd.active .nav-list.second {
	padding-top: 20px;
	transition: padding 0s 0s;
}

.nav-primary .nav-dd .nav-list.second a { color: #fff; }

.nav-primary .nav-dd .nav-list.second.child-open a { color: #b8b8b8; }

.nav-primary .nav-dd.active .nav-list.second.child-open li.selected > a,
.nav-primary .nav-dd.active .nav-list.second.child-open li.selected > .nav-children.child-open .selected a { color: #fff; }

.nav-primary .nav-dd.active .nav-list.second.child-open li.selected > .nav-children:not(.child-open) a { color: #fff; }

.nav-primary ul {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0;
	transition: padding 0s 1.25s;
}

.nav-primary #tab-mainnav > div > ul,
.nav-primary #tab-indnav > div > ul {
	position: relative;
	margin: 0 0 0 15px;
}

.nav-primary ul.nav-list > li { list-style-type: none; }

.nav-primary ul.nav-list > li:last-child { padding-bottom: 20px; }

.nav-primary ul.nav-list li > a,
.nav-primary ul.nav-list li ul li > a {
	display: inline;
	width: auto;
	font-family: 'Helvetica Neue LT W01_71488914', Arial, Helvetica, sans-serif;
	font-size: 30px;
	font-weight: normal;
	line-height: 1.4;
	color: #1d1d1d;
	text-align: left;
	padding: 6px 5px 6px 0px;
}

.nav-primary ul.nav-list li ul li > a {
	font-size: 18px;
	line-height: 1.4;
}

/* Handle all non-selected items to be greyed out */
.nav-primary ul.child-open > li.selected > a,
.nav-primary ul.child-open > li.selected ul.nav-children li > a,
.nav-primary ul.child-open > li > ul.nav-children.child-open > li.selected a { color: #1d1d1d; }

.nav-primary ul.child-open li > a,
.nav-primary ul.child-open li > ul.nav-children.child-open li > a { color: #b8b8b8; }

/* Add animated plus/minus toggle to parent items with children */
.nav-primary ul.nav-list li .circle-plus {
	position: relative;
	top: 0px;
	right: 0;
	display: inline-block;
	height: 20px;
	width: 20px;
	font-size: 1em;
	opacity: .7;
	cursor: pointer;
}

.nav-primary ul.nav-list li .circle-plus .circle .horizontal {
	position: absolute;
	background-color: #0498d9;
	width: 17px;
	height: 5px;
	left: 0px;
	top: 10px;
}

.nav-primary ul.nav-list li .circle-plus .circle .vertical {
	position: absolute;
	background-color: #0498d9;
	width: 5px;
	height: 17px;
	left: 6px;
	top: 4px;
}

.nav-primary .nav-children {
	height: auto;
	padding: 0;
	overflow: visible !important;
}

.nav-primary .nav-children {
	display: block !important;
	max-height: 0;
	padding: 0;
	overflow: hidden !important;
	transition: max-height 0.25s linear;
}

.nav-primary .selected > .nav-children {
	max-height: 1000px;
	transition: max-height 0.75s linear;
}

.nav-primary .item-child .nav-children { padding: 0 10px 0 20px; } 

.nav-primary ul.nav-list li .closed .vertical {
	transition: all 0.5s ease-in-out;
	transform: rotate(-90deg);
}

.nav-primary ul.nav-list li .closed .horizontal {
	transition: all 0.5s ease-in-out;
	transform: rotate(-90deg);
	opacity: 1;
}

.nav-primary ul.nav-list li .opened { opacity: 1; }

.nav-primary ul.nav-list li .opened .vertical {
	transition: all 0.5s ease-in-out;
	transform: rotate(90deg);
}

.nav-primary ul.nav-list li .opened .horizontal {
	transition: all 0.5s ease-in-out;
	transform: rotate(90deg);
	opacity: 0;
}

.nav-primary ul.nav-list li ul li > a { text-transform: none; }

.nav-primary ul.nav-list li.has-submenu > a,
.nav-primary ul.nav-list li ul li.has-submenu > a { width: 100%; }

.nav-primary ul.nav-list li.has-submenu > ul,
.nav-primary ul.nav-list li ul li.has-submenu > ul {
	display: none;
	list-style: none;
}

.nav-primary ul.nav-list li.has-submenu.active > ul,
.nav-primary ul.nav-list li ul li.has-submenu.active > ul,
.nav-primary ul.nav-list li.has-submenu.selected > ul,
.nav-primary ul.nav-list li ul li.has-submenu.selected > ul { display: block !important; }

.nav-primary .tabs-content > .content { padding-top: 0; }


/* Misc */
.header-section .nav-primary .weather-cont.weather-mobile {
	position: relative;
	top: 0;
	right: auto;
	left: 0;
	width: 100%;
	text-align: left;
	padding-left: 15px;
	margin: 15px 0;
}

.sticky .nav-primary .weather-cont.weather-mobile { margin-top: 75px; }

/* Brand Campaign Styles */

.header-section .brand-campaign-header .nav-primary {
	padding-right: 15px;
	padding-top: 10px;
	color: white;
}

.header-section .brand-campaign-header .nav-primary .hamburger {
	width: 30px;
    height: 20px;
    display: flex;
    justify-content: space-around;
	flex-direction: column;
	margin-bottom: 4px;
}

.header-section .brand-campaign-header .nav-primary .hamburger .line {
	width: 100%;
	height: 2px;
	background-color: white;
}

.brand-campaign-header .nav-hit-cont .nav-hit-inner:before, 
.brand-campaign-header .nav-hit-cont .nav-hit-inner:after {
	background: white;
}

@media (min-width: 64.063em) {
	.header-section .brand-campaign-header .nav-primary {
		pointer-events: all;
	}
}

/*
|-----------------------------------------------------------------------------------------------------------
| Breadcrumb/Interior Nav Widget
|-----------------------------------------------------------------------------------------------------------
*/

.breadcrumb-nav {
	font-family: 'Helvetica Neue LT W01_41488878', Arial, Helvetica, sans-serif;
	margin-bottom: 30px;
}

.breadcrumb-nav a,
.breadcrumb-nav a:link,
.breadcrumb-nav a:visited,
.breadcrumb-nav a:focus {
	font-size: 14px;
	color: #aaa9a9;
}

/*
|-----------------------------------------------------------------------------------------------------------
| Footer Nav Widget
|-----------------------------------------------------------------------------------------------------------
*/

.footer-nav-cont {
	display: inline-block;
	width: auto;
	margin-bottom: 0px;
	text-align: center;
}
.footer-nav-cont ul { margin: 0 0 0 3px; }
.footer-nav-cont ul li {
	display: inline-block;
	width: auto;
	padding: 2px 0px 3px;
	margin: 0 0 1px;
	vertical-align: middle;
	text-align: center;
	list-style: none;
}
.footer-nav-cont ul li a {
	font-family: 'Helvetica Neue LT W01_65 Md', Arial, Helvetica, serif;
	font-size: 13px;
	color: #fff;
	text-decoration: underline;
}

.footer-nav-cont ul li a:hover { color: #0498d9; }

.footer-nav-cont .pipe {
	position: relative;
	top: 2px;
	display: inline-block;
	color: #fff;
	margin: 0px 6px 0 3px;
	height: 15px;
	overflow: hidden;
}
.footer-nav-cont ul li:first-child .pipe { display: none; }


/*
|-----------------------------------------------------------------------------------------------------------
| MEDIA QUERIES
|-----------------------------------------------------------------------------------------------------------
*/
/*** Mobile ***/
@media only screen and (max-width: 40em) {
	.nav-primary .tabs.site-nav dd a { font-size: 12px; }

	.nav-primary .tabs.site-nav .pipe { margin: 0 10px; }

	/* ticket 355278 to add scrollbar*/
	.footer-nav-cont {
		display: block;
		font-size: 12px;
	}
	.footer-nav-cont a { font-size: 12px; }
}

/*** Tablet and Desk***/
@media only screen and (min-width: 40.063em){
	.nav-primary .nav-hit-cont::after {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 70px;
		font-size: 15px;
		letter-spacing: normal;
		margin: 0;
	}

	.nav-hit-cont .nav-hit-inner:before,
	.nav-hit-cont .nav-hit-inner:after { top: 12px; }

	.nav-hit-cont .nav-hit-hider img.btn-sm { display: none; }
	.nav-hit-cont .nav-hit-hider img.btn-md-lg {display: block;}

	.nav-primary .nav-children { margin-left: 0; }

	/* Level 2 nav items */
	.nav-primary ul.nav-list li .circle-plus {
		position: relative;
		top: 0px;
		height: 25px;
		width: 25px;
	}

	.nav-primary ul.nav-list li .circle-plus .circle .horizontal {
		width: 23px;
		margin-left: 6px;
		margin-top: 1px;
	}

	.nav-primary ul.nav-list li .circle-plus .circle .vertical {
		height: 23px;
		margin-left: 9px;
		margin-top: -3px;
	}

	.nav-primary ul.nav-list li ul li .circle-plus {
		position: relative;
		top: 0px;
		height: 20px;
		width: 20px;
	}

	.nav-primary ul.nav-list li ul li .circle-plus .circle .horizontal {
		width: 15px;
		height: 3px;
		margin-left: -3px;
		margin-top: -3px;
	}

	.nav-primary ul.nav-list li ul li .circle-plus .circle .vertical {
		height: 15px;
		width: 3px;
		margin-left: -3px;
		margin-top: -3px;
	}
}

/*** Tablet ***/
@media only screen and (min-width: 40.063em) and (max-width: 1024px) {
	.nav-primary ul.nav-list li ul li ul > li { max-width: 80%; }

	.nav-primary ul.nav-list li > a,
	.nav-primary ul.nav-list li ul li > a { letter-spacing: -0.05em; }

	.nav-primary ul.nav-list li ul li .circle-plus { top: 5px; }
}

/*** Desktop ***/
@media only screen and (min-width: 64.063em) {
	.header-section .top-nav-cont .top-header::after { content: none; }

	.header-section .nav-hit-cont.active { top: 19px; }

	.active .nav-hit-inner { width: 35px; }

	.nav-hit-cont .nav-hit-inner:before,
	.nav-hit-cont .nav-hit-inner:after {
		background-color: #fff;
		top: 50%;
	}

	@keyframes rotateleft {
		0% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
		50% { left: 0; right: 0; transform: rotate(0deg) translateY(-50%); }
		100% { left: 0; right: 0; transform: rotate(45deg) translateY(-50%); }
	}

	@keyframes rotateright {
		0% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
		50% { left: 0; right: 0; transform: rotate(0deg) translateY(-50%); }
		100% { left: 0; right: 0; transform: rotate(-45deg) translateY(-50%); }
	}

	@keyframes rerotateleft {
		0% { left: 0; right: 0; transform: rotate(-45deg) translateY(-50%); }
		50% { left: 0; right: 0; transform: rotate(0deg) translateY(-50%); }
		100% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
	}

	@keyframes rerotateright {
		0% { left: 0; right: 0; transform: rotate(45deg) translateY(-50%); }
		50% { left: 0; right: 0; transform: rotate(0deg) translateY(-50%); }
		100% { left: 50%; right: 50%; transform: rotate(0deg) translateY(-50%); }
	}

	.nav-primary .nav-dd,
	.nav-primary .nav-dd.active { top: 0 !important; height: 100vh; max-height: none !important; }

	.nav-primary .nav-dd::before { content: none; }

	.nav-primary .tabs.site-nav { top: -50px; }

	.nav-primary ul.nav-list li > a { font-size: 50px; }

	.nav-primary ul.nav-list li ul li > a { font-size: 24px; }

	.nav-primary ul.nav-list li.has-submenu ul li ul { top: 2px; }

	/*Desktop Hover*/
	.nav-primary ul.nav-list li.has-submenu a,
	.nav-primary ul.nav-list li ul li.has-submenu a,
	.nav-primary ul.nav-list li.has-submenu .circle-plus,
	.nav-primary ul.nav-list li ul li.has-submenu .circle-plus{
		position: relative;
		z-index: 100001;
	}

	.nav-primary .nav-dd .tabs-cont {
		display: flex;
		min-height: 100vh;
	}

	.nav-primary .nav-dd .tabs-cont .cont-wrapper { flex: 1; }

	.nav-primary .nav-dd .tabs-cont .cont-wrapper.cont-left { background-color: #fff; }

	.nav-primary .nav-dd .tabs-cont .cont-wrapper.cont-right { background-color: #1d1d1d; }

	.nav-primary .nav-dd .tabs-cont .content {
		padding-top: 100px;
		max-width: 580px;
	}

	.nav-primary .nav-dd .tabs-cont .content#tab-mainnav {margin-left: auto;max-width: 650px;padding-left: 55px;padding-right: 15px;}

	.nav-primary .nav-dd .tabs-cont .content#tab-indnav {margin-left: 55px;margin-right: 15px;}

	.nav-primary #tab-mainnav > div > ul,
	.nav-primary #tab-indnav > div > ul {
		margin: 0;
		padding: 0;
	}

	.nav-primary ul.nav-list li .circle-plus .circle .horizontal {
		width: 25px;
		margin-left: 5px;
		margin-top: 1px;
	}

	.nav-primary ul.nav-list li .circle-plus .circle .vertical {
		height: 25px;
		margin-left: 9px;
		margin-top: -3px;
	}

	.nav-primary ul.nav-list li ul li .circle-plus .circle .horizontal {
		margin-left: 5px;
		margin-top: 3px;
	}

	.nav-primary ul.nav-list li ul li .circle-plus .circle .vertical {
		margin-left: 5px;
		margin-top: 2px;
	}

	.footer-nav-cont { display: inline-block; }

	.bottom-nav-cont,
	.bottom-nav-cont a { text-align: left; }
}
