	@keyframes stuckMoveDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}
	@keyframes stuckMoveUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}
	@keyframes stuckFadeIn{0%{opacity:0}to{opacity:1}}

	/* HEADER */
	
	/* mobile nav */
	.menu_wrap ul.small_menu {z-index: 102; position: relative; display: flex; flex-wrap: wrap;}
	.menu_wrap ul.small_menu ul.sub-menu {display: block; opacity: 1; height: 100%; position: static; overflow: hidden; padding: 0; margin: 0 auto; width: 100%;}
	.menu_wrap ul.small_menu ul.sub-menu ul.sub-menu {margin: 0 0 8px 8px;}
	.menu_wrap ul.small_menu li {padding: 0 20px; display: block; text-align: left; position: relative; z-index: 3; font-size: 18px; line-height: 20px;}
	.menu_wrap ul.small_menu li.hide_small_menu {display: none;}
	.menu_wrap ul.small_menu > li {flex: 100% 0 0; border-right: 2px solid #fff; margin-bottom: 42px; max-width: 20%; width: 100%;}
	.menu_wrap ul.small_menu > li:nth-child(5n) {border: none;}
	.menu_wrap ul.small_menu li.menu-item-has-children {background: none !important;}
	.menu_wrap ul.small_menu ul.sub-menu li {padding: 0 0 1px;}
	.menu_wrap ul.small_menu span.hidden_mobile_menu {display: none;}
	.menu_wrap ul.small_menu a {position: relative; padding: 0 0 10px; text-align: left; background: none; width: auto; display: block;}
	.menu_wrap ul.small_menu > li > a, .menu_wrap ul.small_menu li.menu-item-has-children > a {margin-bottom: 14px; font-size: 20px; display: inline-block;}
	
	#header_wrap .closed_state {display: none;}
	#header_wrap .small_menu_button.open .closed_state {display: block;}
	#header_wrap .small_menu_button .closed_state {margin-left: 0; width: auto; height: auto;}
	#header_wrap .small_menu_button .closed_state svg {width: 22px; max-height: none; position: relative;}
	#header_wrap .small_menu_button.open .small_menu_icon span:not(.closed_state) > svg {display: none;}
	
	.breadcrumbs {display: none; position: absolute; bottom: 14px; left: 0; right: 0; text-align: right; overflow: hidden;}
	#header_wrap.moving .breadcrumbs {display: block;}
	.breadcrumbs span.delim {display: inline-block; padding: 0 8px;}
	
	#header_fixed { animation: stuckFadeIn 1s;}
	#header .header_inner {position: relative;}
	.m2tp_logo {padding: 14px 0;}
	#header img.main_logo {display: inline-block;}
	#header img.fixed_logo {display: none;}
	#header .site_tagline {overflow: hidden; text-align: right; width: auto; position: absolute; bottom: 10px; right: 0;}	
	#header .site_tagline.menu_has_childmenu {display: none;}
	
	#header_wrap {z-index: 99998;}
	#header_wrap.moving #header_fixed {position: fixed; top: 0; left: 0; right: 0; z-index: 9999; animation: stuckMoveDown .6s; min-width: 320px; margin: auto;}
	#header_wrap.stuckMoveDown #header_fixed{animation: stuckMoveUp .6s;}
	body.admin-bar #header_wrap.moving #header_fixed{top: 32px;}
	#header_wrap.moving #header .site_tagline {display: none;}
	#header_wrap .ghosted {visibility: hidden; position: absolute; top: 0; bottom: 0;}
	#header_wrap.moving .ghosted {position: relative;}
	#header_wrap.moving img.main_logo {display: none;}
	#header_wrap.moving img.fixed_logo {display: inline-block;}
	#header_wrap.moving .primary_menu  {display: none;}
	
	.header_icon svg {display: block; width: 100%; height: auto; max-height: 27px;}
	.contact_strip .header_icon svg {max-height: 22px;} 
	
	#nav {text-align: right; margin-left: auto; width: 100%;}
	ul.primary_menu li {display: inline-block; padding: 0 0 6px 14px; position: relative;}
	ul.primary_menu li:hover {z-index: 99999;}
	ul.primary_menu li a:not(.abs) {padding: 0; position: relative;}
	ul.primary_menu ul.sub-menu {width: 170px; text-align: left;}
	ul.primary_menu li.menu-item-has-children > ul.sub-menu {display: none; position: absolute; padding: 2px 14px; left: 0; top: 23px; z-index: 9999; border: none;}	
	ul.primary_menu li.menu-item-has-children > ul.sub-menu ul.sub-menu {left: 100%; top: -4px;}
	ul.primary_menu li.menu-item-has-children:hover > ul.sub-menu {display: block;}
	ul.primary_menu li.menu-item-has-children > ul.sub-menu > li, 
	ul.primary_menu li.menu-item-has-children > ul.sub-menu li.menu-item-has-children:hover > li {padding: 5px 0; display: block;}	
	ul.primary_menu li.menu-item-has-children.current-menu-item, 
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor {position: static;}
	ul.primary_menu li.menu-item-has-children.current-menu-item > ul.sub-menu, 
	ul.primary_menu li.menu-item-has-children.current-menu-item:hover > ul.sub-menu, 
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor > ul.sub-menu,
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor > ul.sub-menu li.current-product-ancestor > ul.sub-menu{display: block; top: 22px; padding: 0; text-align: right; background: none; width: 768px; left: auto; right: 0; z-index: 9; border: none;}	
	ul.primary_menu li.menu-item-has-children.current-menu-item > ul.sub-menu ul.sub-menu, 
	ul.primary_menu li.menu-item-has-children.current-menu-item:hover > ul.sub-menu ul.sub-menu, 
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor > ul.sub-menu ul.sub-menu {right: 0; top: 25px; left: auto;}
	ul.primary_menu li.menu-item-has-children.current-menu-item > ul.sub-menu li, 
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor > ul.sub-menu li {padding: 5px 0 5px 14px; display: inline-block;}
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor li.menu-item-has-children.current-menu-ancestor:hover, ul.primary_menu li.menu-item-has-children.current-menu-ancestor > ul.sub-menu li.current-product-ancestor {position: static;}
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor li.menu-item-has-children.current-menu-ancestor:hover > ul {display: block; top: 25px; padding: 0 0 20px; background: none; width: 100%; right: 0; z-index: 9; border: none;}
	ul.primary_menu li.menu-item-has-children.current-menu-ancestor li.menu-item-has-children.current-menu-ancestor:hover ul.sub-menu li{padding: 5px 0 5px 14px; display: inline-block;}
	
	/* 4th+ levels can F-Off */
	ul.primary_menu li.menu-item-has-children ul.sub-menu li.menu-item-has-children ul.sub-menu li.menu-item-has-children ul.sub-menu{display: none !important;}
	
	ul:is(.primary_menu) .header_icon {display: none;}
	ul:is(.primary_menu) li.menu-item-has-children {padding-right: 25px !important;}
	ul:is(.primary_menu) li.menu-item-has-children > a .header_icon {display: inline-block; margin-left: 0; padding-top: 0; position: absolute; top: 6px; right: -27px;}
	ul.primary_menu .header_icon svg {max-height: 12px;}	
	ul.primary_menu .sub-menu .header_icon svg {max-height: 11px;}
	ul.primary_menu .sub-menu li.menu-item-has-children > a .header_icon {top: 5px;}
	
	.small_menu_button {display: inline-block; text-align: right; margin-left: 28px;}	
	html.no-js #wrap .small_menu_button {display: none;}
	html.no-js ul.small_menu {display: block; position: static;}
	.small_menu_page_title_text {display: none;}
	#header_wrap.moving .small_menu_page_title_text {display: none;}
	.small_menu_icon {display: inline-block;}
	.small_menu_icon > span > svg{width: 30px;}
	#menu_close {z-index: 99998;}
	.menu_wrap {transform: translate(0,-3000px); transition: transform .5s; display: block; position: absolute; top: auto; left: 0; right: 0; bottom: auto; z-index: 99998; width: 100%;}
	body.menu_open .menu_wrap{transform: translate(0,0);}	
		
	#header .contact_strip {text-align: right; position: absolute; top: 14px; right: 0; left: 0; overflow: hidden; height: 22px;}
	.contact_strip_block {display: inline-block; padding-left: 10px; vertical-align: top;}
	.contact_strip_block.telephone {padding-left: 48px; top: 2px;}
	.contact_strip_block:first-of-type {padding-left: 0 !important;}
	.header_icon {margin-left: 28px; margin-bottom: 14px; display: inline-block; position: relative; vertical-align: top; width: 22px; height: 22px;}
	.header_icon.view_account_wrap {width: auto; height: auto; margin-bottom: 0;}
	.email_icon.header_icon {width: 28px;}
	
	.m2tp_logo {display: inline-block; height: 134px;}
	#header_wrap.moving #header_fixed .m2tp_logo {height: 84px;}
	#nav {position: absolute; right: 0; top: 50px;}
	.header_col_wrap {position: absolute; top: 0; bottom: 0; left: 0; right: 0;}
	
	@media only screen and (min-width: 1024px){
		.header_icon.logged_out.view_account_wrap {vertical-align: sub;}
	}
	
	@media only screen and (max-width: 1023px){
		#wrap ul.primary_menu {display: none;}
		#header_wrap.has_mobile_menu .contact_strip {padding-top: 34px;}
		#header .contact_strip .contact_strip_block {padding-left: 0 !important;}
		.menu_wrap {overflow: auto; padding-bottom: 20px;}
		.menu_wrap ul.small_menu {display: block; padding: 0 0 20px; height: auto; overflow: hidden;}
		.menu_wrap ul.small_menu ul.sub-menu {display: block; opacity: 1; height: 100%; position: static; overflow: hidden; padding: 0; margin: 0 auto; width: 100%;}
		.menu_wrap ul.small_menu > li{border: none; margin-bottom: 28px; max-width: 100%;}
		.menu_wrap ul.small_menu > li > a {margin-bottom: 0;}
		.menu_wrap ul.small_menu li, .menu_wrap ul.small_menu a {text-align: right;}
		.menu_wrap ul.small_menu > li > a, .menu_wrap ul.small_menu li.menu-item-has-children > a {margin-bottom: 0;}
		.mobile_menu_icon {display: block; position: absolute; top: 0; bottom: auto; right: 0; left: auto;} 
		.breadcrumbs {display: block; top: 9px; bottom: auto; right: 50px;}
		#header .site_tagline.menu_has_childmenu {display: block;}
		.contact_strip_block.telephone {top: auto;}
		#header .contact_strip {height: 60px;}
	}

	@media only screen and (max-width: 782px){
		body.admin-bar #header_wrap.moving #header_fixed {top: 46px;}
		.header_icon {margin: 0 20px 0 0;}
		.breadcrumbs {font-size: 14px;}
		#header_wrap.has_mobile_menu .contact_strip {padding-top: 0;}
		#main_header {padding-top: 50px;}
		#header_wrap.moving #main_header {padding-top: 0;}
		.header_col_wrap {left: 0 !important;}
		#header .contact_strip {height: 22px; text-align: left;}
		#header_wrap.moving #header .contact_strip {height: auto; text-align: right; top: auto; bottom: 10px;}
		#header_wrap.moving .mobile_menu_icon {position: static; display: inline-block;}
		#header_wrap.moving .small_menu_button {margin-left: 0;}
		#header_wrap .breadcrumbs {display: none !important;}
	}
	
	@media only screen and (max-width: 600px){
		body.open_search.admin-bar .search_field, body.admin-bar #header_wrap.moving #header_fixed  {top: 0;}
		#wrap #header .site_tagline {display: none;}
		#header_wrap.moving .contact_strip_block.socials {display: none;}
	}	
	
	@media only screen and (max-width: 498px){
	}
	
	@media only screen and (max-width: 350px){
	}