/*
	RESPONSIVE STYLESHEET
	ready to go...
*/

@media (max-width: 991px) {
	#mobile_menu { position: absolute; z-index: 998; top: 122px; right: 0; width: 100%; height: calc(100vh - 122px); background: #dbe7c1; display: none; }
	body.logged-in #mobile_menu { top: 152px; height: calc(100vh - 160px); }
	#mobile_menu .closeMobileMenu { position: absolute; top: -75px; right: 8px; line-height: 60px; font-size: 32px; text-align: center; padding: 0 12px; cursor: pointer; text-transform: uppercase; color: #fcf9ab; }
	#mobile_menu .closeMobileMenu .fa { background: #284371; padding: 6px; }
	#mobile_menu .menu_flow { overflow-x: hidden; height: calc(100vh - 120px); padding-top: 0; padding-bottom: 78px; }
	#mobile_menu li { line-height: 44px; position: static !important; }
	#mobile_menu li a { display: block; text-transform: uppercase; color: #23335d; position: relative; font-size: 20px; font-weight: 700; line-height: 60px; padding: 0 42px; border-bottom: 1px solid rgba(255,255,255,0.1); }
	#mobile_menu li.menu-item-has-children > a:after { content: "\f105"; position: absolute; top: 15px; right: 15px; color: #fff; display: inline-block; font: normal normal normal 14px/1 FontAwesome; font-size: 14px; font-size: inherit; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; padding-left: 3px; }
	#mobile_menu li .sub-menu { list-style:none; margin:0; padding:0; background: rgba(255, 255, 255, 0.25); border-bottom: 1px solid #ddd; width:100%; z-index: 999; display:none; }
	#mobile_menu li .sub-menu li a { padding-left: calc(25% + 57px); }
	#mobile_menu li a:hover { text-decoration: none; }
	#mobile_menu li a br { display: none; }

	.sidebar { padding: 15px 0 0 !important; }

	.entry-content ul { padding-left: 0.5em !important; } 
	.entry-content li { padding-left: 0.25em !important; } 
	.xxPadR { padding-right: 15px !important; } 

	.social-networks.entry-socials { margin-bottom: 12px; }
}

@media (min-width: 768px) and (max-width: 768px) {
	body  { overflow-x: hidden; }
	br.visible-xs { display: block !important; }  
}

@media (max-width: 767px) {  
	body, .home  { overflow-x: hidden; overflow-y: auto; }

	header a.logo { width: 80%; padding: 5px 10px 50%; }
	header a.logo img { margin-left: -15px; }
	header:after, .cf2.job_openings:after { width: 44%; padding-bottom: 44%; } 
	#mobile_menu .closeMobileMenu { right: 5px; }
 	
	.close-modal { font-size: 0; top: 16px; right: 16px; }
	.close-modal .fa { font-size: 18px; }  
}

@media (max-width: 640px) {
	.col-xs-8 { width: 75% !important; }
	.col-xs-4 { width: 25% !important; padding-left: 0 !important; }
	header#header .logo, header#header.sticky .logo { padding-right: 0 !important; }
	header#header .logo h1, header#header.sticky .logo h1 { width: 224px; }
	header#header .company_info .compwrap, header#header.sticky .company_info .compwrap { min-width: 122px; right: 0; position: absolute; }
	header#header .cphone, header#header.sticky .cphone { white-space: nowrap; vertical-align: top; padding-top: 6px; right: 15px; position: absolute; }
}

@media (max-width: 480px) {
	.col-xs-8 { width: 80% !important; }
	.col-xs-4 { width: 20% !important; padding-left: 0 !important; } 
	header#header .row .logo { padding-top: 12px; }
	header#header .logo img, header#header.sticky .logo img { max-width: 96px; }
	header#header .logo h1, header#header.sticky .logo h1 { width: 204px; font-size: 22px; padding-left: 10px; } 
}

@media (max-width: 400px) {
	.col-xs-8 { width: 84% !important; }
	.col-xs-4 { width: 16% !important; }
	header#header .row .logo { padding-top: 16px; }
	header#header .logo img, header#header.sticky .logo img { max-width: 90px; }
	header#header .logo h1, header#header.sticky .logo h1 { width: 188px; font-size: 21px; padding-left: 6px; } 

}