	.mobile-menu {
		display: none;
	}
	.back {
		display: none;
	}
#mobile-utility {
	display: none;
}

@media screen and (min-width: 0em) and (max-width: 63.9375em) {

	.mobile-menu {
		display: block;
		padding-left: .625rem;
	}
	.back {
		display: flex;
		align-items: center;
	}
	.back a:before {
		background: url("/public/images/icons/menu-back.png") no-repeat;
		background-size: 28px auto;
    width: 28px;
    height: 28px;
    content: "";
    float: left;
    margin-right: 5px;
    align-items: center;
	}

	.mobile-menu .menu-icon {
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;
    color: white;
    vertical-align: middle;
    align-items: center;
    margin-top: 14px;
		text-decoration: none;
		font-size: 18px;
	}
	.mobile-menu .menu-icon:hover {
		cursor: pointer;
		text-decoration: underline;
	}
	.mobile-menu .menu-icon:before {
		background: url("/public/images/icons/menu.png") no-repeat;
		background-size: 36px auto;
    width: 36px;
    height: 36px;
    content: "";
    float: left;
    margin-right: 5px;
    align-items: center;
	}
	.mobile-menu .menu-icon.active:before {
		background: url("/public/images/icons/menu-close.png") no-repeat;
		background-size: 36px auto;
	}
	#main_nav {
		height: auto !important;
		background: #b51218;
		position: absolute !important;
		left: -99999px;
		width: 100%;
		top: 49px;
	}
	#main_nav.active {
		left: 0;
	}
	#nav_container ul#main_nav li {
		float: none;
	}
	#nav_container ul#main_nav li.opened {
		position: static;
	}
	#nav_container ul#main_nav li a {
		width: 100%;
		padding: 15px .625rem 32px;
		font-size: 22px;
	}
	#nav_container ul#main_nav li.has_sub .subnav_container {
		display: none !important;
	  left: 0;
	}
	#nav_container ul#main_nav li.opened .subnav_container {
		left: 100% !important;
		background: none;
    position: absolute;
    padding: 0;
   box-shadow: none;
   border: none;
    left: -999999em;
		width: 100% !important;
		top: 0;
		z-index: 9999;
	}
	#nav_container ul#main_nav li.opened .subnav_container ul {
		height: auto !important;
    background: #b51218;
    position: absolute !important;
    left: 0;
    /* top: 64px; */
    width: 100%;
	}
	#nav_container ul#main_nav li.opened .subnav_container ul li a {
		color: white;
		font-family: "Oswald", arial, sans-serif;
		text-decoration: none;
		text-transform: uppercase;
		display: inline-block;
		border: solid 1px transparent;
		line-height: 1em;
		height: 10px;
		font-size: 22px;
		font-weight: 300;
		width: 100%;
		padding: 15px .625rem 32px 2rem;
	}

	#nav_container ul#main_nav li.opened .subnav_container ul li.no-indent a {
		padding-left: .625rem;
	}

	#nav_container ul#main_nav li.has_sub .arrow {
		display: none !important;
	}
	#header_container {
		position: relative;
	}
	.main-content {
		margin-top: -26px;
	}
	.mobile-expanded {
		padding: 0 !important;
	}
	.top-main-nav {
		width: auto;
		position: relative;
	}
	#site_footer ul {
		font-size: 1.65em;
		margin: 15px auto;
	}
	#homebanner_container #image_panel #hb_controls {
		margin-left: .5rem !important;
    padding: 10px 8px 4px 4px !important;
	}
	.mobile-margin {
		margin-bottom: 2rem;
	}
	#nav_container ul#main_nav li.opened .subnav_container ul li:not(.hide-for-large) a.active {
		background: #a20002;
		border: solid 1px #e0070a;
		box-shadow: 0 0 3px rgba(0, 0, 0, 0.3) inset;
	}
	.main-content ul#page_mini_nav {
		height: auto;
	}
	.main-content ul#page_mini_nav li {
		float: none;
		border-right: solid 1px transparent;
		line-height: 1.2em;
		padding: 0;
		text-align: center;
		margin-bottom: 1rem;
	}
}

@media screen and (min-width: 0em) and (max-width: 40em) {
	#mobile-utility {
		display: block;
	}
	#header #social_links {
		display: none;
	}
	#site_footer #social_links {
		display: block !important;
	}
	#text_sizes, #utility_links {
		display: none;
	}
	#header_container {
		top: -35px;
	}
}
