#mobile-flag, .mobile-only {
	display: none;
}

@media screen and (max-width: 1260px) {
	#header-top-left {
		flex: 0 0 48%;
		max-width: 50%;
		padding-left: 2%;
	}

	#header-top-right {
		flex: 0 0 50%;
		max-width: 48%;
	}
}

@media screen and (max-width: 1125px) {
	/* reduce wp admin bar */
	#wpadminbar {
		position: fixed !important;
	}

	#wpadminbar .ab-top-menu > li > .ab-item {
		font-size: 0;
	}

	#header-subtext {
		display: none;
	}

	#header-menu {
		display: block;
	}

	.shrink #header-top-nav,
	.shrink #header-search,
	.shrink #header-menu {
		top: auto;
	}

	#header-top-left {
		flex: 0 0 28%;
		max-width: 30%;
	}

	#header-top-right {
		flex: 0 0 68%;
		max-width: 70%;
	}

	#header-bottom {
		position: fixed;
		transition: transform .4s;
		transform: translateX(-100%);
		z-index: 99999999;

		width: 100%;
		height: 100vh;
		background: #eee;
	}

	#header-bottom.show {
		transform: translateX(0);
	}

	#header-bottom.show #header-menu-close {
		display: block;
	}

	#header-bottom-nav {
		display: flex;
		flex-direction: column;

		width: 100%;
		padding: 30px 0;
		align-items: normal;
	}

	.header-menu-arrow {
		display: block;
		width: 30px;
		height: 30px;
		margin-top: -4px;
		margin-right: 15px;
		line-height: 1;
		text-align: center;
		background-color: #fff;
		border-radius: 50%;
		align-self: center;
		float: right;
	}

	.header-menu-arrow svg {
		display: inline-block;
		width: auto;
		height: 12px;
		margin: 9px 0 9px 2px;
		fill: #909295;
	}

	#header-bottom-nav li {
		padding: 0 40px;
	}

	#header-bottom-nav li.header-nav-item a.header-nav-link {
		text-align: left;
		padding: 15px 0;
	}
	
	#header-bottom-nav li.header-nav-item a.header-nav-link:hover,
	#header-bottom-nav li.header-nav-item a.header-nav-link:before,
	#header-bottom-nav li.header-nav-item:hover a.header-nav-link:before {
		background: inherit;
		transition: none;
	}

	.header-dropmenu {
		display: none;
		transform: translateX(-100%);
	}

	.header-dropmenu.show {
		display: block;
		transform: translateX(0);
	}

	.header-dropmenu {
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		z-index: 5;
		display: block;
		width: 103%;
		overflow-y: scroll;
		overflow-x: hidden;
		/* height: 100vh; */
		background-color: #fff;
		transition: all .5s ease-in-out;

		padding: 0;
		padding-bottom: 200px;
	}

	.header-menu-tray-header {
		display: block;
		width: 100%;
		height: 75px;
		text-align: left;
		background-color: #eee;
		border-top: 4px solid #ffd160;
		transition: background-color 1s ease, border-color 1s ease;

		line-height: 75px;
		padding-left: 15px;
		padding-right: 15px;

		color: #5f3b97;
		font-size: 18px;
		font-weight: 700;

		cursor: pointer;
	}

	.header-menu-tray-header .header-menu-arrow {
		float: left;
		margin-top: 21px;
	}

	.header-dropmenu .flex-col {
		flex: none;
		width: 100%;
		max-width: unset;
		padding-left: 15px;
		padding-right: 15px;
	}

	.header-dropmenu h1 {
		color: #69696D;
		font-size: 1.75em;
		width: 90%;
	}

	.header-dropmenu img {
		display: none;
	}
}

@media screen and (max-width: 995px) {
	#mobile-flag, .mobile-only {
		display: block;
	}

	.mobile-hide {
		display: none;
	}

	.shrink #header-top {
		height: 75px; /* reset */
	}

	#header-top-nav {
		clear: both;
	}

	.sidebar-wrap {
		float: none;
		width: 90%;
		margin: 20px auto;
	}

	.sidebar {
		padding: 0;
	}

	#hero-wrap,
	#main .content {
		padding-left: 1em;
		padding-right: 1em;
	}

	#breadcrumb ul,
	#breadcrumb ul li:first-child {
		padding-left: 0;
	}

	#breadcrumb-inner {
		padding-left: 1em;
	}

	#hero-heading {
		font-size: 2rem;
		line-height: 2.2rem;
		padding-bottom: 30px;
	}

	.part-directory {
		padding: 0 !important;
	}

	.part-directory .profile {
		width: 90% !important;
	}

	.part-directory .profile img {
		max-width: 120px;
	}

	.part-directory .profile h2 {
		font-size: 1.5rem;
	}

	.part-directory .profile h3 {
		font-size: 1.25rem;
	}

	.part-directory .profile:last-child {
		margin-bottom: 0 !important;
	}

	#footer {
		padding-top: 50px;
	}

	#footer-logo img {
		max-width: 150px;
	}

	#footer-address {
		margin-right: 30px;
	}

	#footer ul {
		margin-right: 30px;
		margin-bottom: 20px;
	}

	#footer-nav-policy {
		flex: none;
		max-width: unset;
	}

	#footer-spacer {
		display: none;
	}

	ul#footer-nav-social {
		max-width: unset;
		margin-top: 25px;
	}

	#footer-bottom {
		padding-left: 0;
	}

	#footer-copy {
		flex: none;
		max-width: 60%;
		margin: 0 auto;
	}
}

@media screen and (max-width: 630px) {
	#header-top .container.flex-row {
		display: block; /* reset flex */
	}

	#header-top-left,
	#header-top-right {
		flex: none;
		max-width: unset;
	}

	.shrink #header-logo img {
		margin-top: 15px;
	}

	#header-search {
		margin-left: 0;
	}

	#header-menu {
		margin-right: 10px;
	}

	.content h1 {
		font-size: 2rem;
		line-height: 2.3rem;
	}
}

@media screen and (max-width: 430px) {
	#header-top-nav a {
		padding-left: 8px;
		padding-right: 8px;
	}

	#header-top-nav a:last-child {
		padding-right: 15px;
	}

	#header-search,
	#header-menu {
		min-width: 80px;
		padding-left: 2px;
		padding-right: 2px;
		font-size: 13px;
		margin-top: 3px;
	}

	#header-menu {
		margin-left: 10px;
	}
}

@media screen and (max-width: 390px) {
	.shrink #header-logo img {
		transform: scale(0.50);
	}

	#header-top-nav a {
		padding-left: 6px;
		padding-right: 6px;
	}

	#header-top-nav a:last-child {
		padding-right: 12px;
	}

	#header-search,
	#header-menu {
		min-width: 75px;
		padding-left: 2px;
		padding-right: 2px;
		font-size: 12px;
		margin-top: 4px;
	}

	#header-menu {
		margin-left: 8px;
	}
}

@media screen and (max-width: 340px) {
	.shrink #header-logo img {
		transform: scale(0.45);
	}

	#header-top-nav a {
		padding-left: 4px;
		padding-right: 4px;
	}

	#header-top-nav a:last-child {
		padding-right: 10px;
	}

	#header-search,
	#header-menu {
		min-width: 70px;
		padding-left: 2px;
		padding-right: 2px;
		font-size: 12px;
		margin-top: 4px;
	}

	#header-menu {
		margin-left: 8px;
	}
}