@media screen and (max-width: 800px) { 
    .col-50 {width: 99.99999%;}
    .col-33 {width: 49.99999%;}
    .col-25 {width: 33.33333%;}
    .col-16 {width: 24.99999%;}
}

@media screen and (max-width: 600px) {
    .col-33 {width: 100%;}
    .col-25 {width: 49.99999%;}
    .col-16 {width: 33.33333%;}
}

@media screen and (max-width: 400px) {
    .col-25 {width: 100%;}
    .col-16 {width: 49.99999%;}
    
    .contact input[type=text], .contact input[type=email], .contact input[type=tel], .contact textarea, .contact input[type=button], .contact input[type=submit], .contact input[type=reset] {min-width: 100%;}
    .contact input[type=button], .contact input[type=submit], .contact input[type=reset] {margin-left: 0;}
}


@media screen and (min-width: 851px) {
    
    #menu, .desktop_only {display: block;}
    .menu-toggle {display: none;}
    
}


@media screen and (max-width: 1200px) {
	
	#top_menu .wrap {width: auto;}
	
}

@media screen and (max-width: 1000px) {
	
	.wrap, #content {width: auto;}
	
}

@media screen and (max-width: 960px) {

    .desktop_only,
    .menu-item .sub {display: none;}
    
    
    .flex-order-1 {order: 1;}
    .flex-order-2 {order: 2;}
    
    .row .wrap {justify-content: center;}
    
    .col-content {
        padding: 40px 0px; 
        text-align: center;
    }
    
        .col-content ul {margin-left: 0; padding: 20px; text-align: left;}
    
    .col-image {
        margin: 0 auto;
        padding: 50px 20px 0px 20px;
    }
    
    
	body { margin-top: 70px; }
	
	.menu-toggle {
		display: block;
		z-index: 99999;
	}
	
	#header, #header.smaller {background: #000; height: 70px;}
    #logo {top: 15px;}
        #logo img {height: 40px;}
    
        #header.smaller #menu {top: 60px; transition: 0s;}
        #header.smaller .nav-menu li a {padding: 15px 20px; transition: 0s;}
        #header.smaller .menu-item .sub {display: none; transition: 0s;}
	
    
    #banner {display:table; height: 140px; margin-top: 70px; width: 100%;}
   
        #banner h1, #banner.mini_banner h1, .blog_title {display:table-cell; font-size: 25px; line-height: 28px; margin: 0; vertical-align: middle;}
    
        #banner_home {height: auto;}
        
        #banner.mini_banner {height: 80px;}

	
	.content img {
		clear: both;
		margin-left: auto;
		margin-right: auto;
		width: auto;
	}
	
	#menu {
		display: none;
		position: fixed;
		top: 60px;
        right: 0;
        z-index: 9999;
	}
		#menu .wrap {clear: none; margin:0; padding:0; width:auto;}
		
		#menu ul{
			background: #333e48;
			display: block;
			margin: 0;
			padding: 0;
			width: auto;
			z-index: 99999;
		}
		
		#menu .menu-header ul,
		div.menu ul {
			list-style: none;
			margin: 0;
		}
		#menu .menu-header li,
		div.menu li {
			float: none;
			position: static;
		}
		
		#menu a {color: #fff; display: block; -webkit-border-radius: 0px; -moz-border-radius: 0px; border-radius: 0px; font-size: 14px; line-height: 30px; height: 30px; margin: 0px; padding: 15px 20px; width: 240px;}
		
		#menu ul li a {clear: both; border-bottom: 1px solid #758899; text-align: left; transition: 0s;}
		
			#menu ul ul {
				background: #666;
				box-shadow: none;
				-moz-box-shadow: none;
				-webkit-box-shadow: none;
				display: block; 
				position: static;
			}
				#menu ul ul a {
					border-bottom: 1px solid #777;
                    border-top: none;
					font-size: 12px;
                    width: 240px;
					padding: 10px 0px 10px 20px;
				}
				
				#menu ul, #menu a {max-width: 260px}
				
				
		#menu li:hover > a {
			background: #3e4c58;
			color: #fff;
			text-decoration: none;
		}
		
		#menu  ul li.current_page_item > a,
		#menu  ul li.current-menu-ancestor > a,
		#menu  ul li.current-menu-item > a,
		#menu  ul li.current-menu-parent > a,
		#menu  ul li.current-page-parent > a, 
		#menu  ul li.current-page-ancestor > a,
		#menu  ul li.current_page_parent > a, 
		#menu  ul li.current_page_ancestor > a {
			color: #fff;
		}	
    
    
    .services {padding: 20px 0;}
        .services .col-content {padding: 10px;}
    
		
	.sidebar {float: left; width: 100%;}
		
	.sidebar, .sidebar p, .sidebar h1, .sidebar h2, .sidebar h3, .sidebar img, .text_right {
		text-align: left !important;
	}
    
    
    .blog_post {padding: 0px 0px 20px 0px;}
    .blog_post_meta {margin-bottom: 40px;}
    
    .entry-content {text-align: left !important;}
        .entry-content ul, .entry-content ul li, .entry-content ol, .entry-content ol li {text-align: left !important;}
        .entry-content ul {list-style-type: disc !important; margin-left: 25px !important;}
        .entry-content ol {margin-left: 25px !important; padding: 0;}
    
    .entry-utility-social, .entry-utility-info, .entry-utility-social .social_icons ul {text-align: center;}
        .entry-utility-social {margin-bottom: 20px;}
    
	
	table {
		text-align: left;
		margin: 0 auto;
	}	
	
	th, td, tr { 
		display: block; 
		margin: 0 auto;
	}	
	
		td { 
			margin-bottom: 0px;
			min-width: 220px;
		}
		
		.table_3_column td {width: auto; padding: 0;}
		
	input[type="text"], input[type="email"], input[type="tel"], textarea, select {width: 100%;}
    
    .col-content ul, #footer_widgets ul {
        list-style-type: none;
        margin: 0 0 20px 0;
        padding: 0;
    }
    
    .col-content ul li, #footer_widgets ul li {
        margin: 0;
        padding: 0;
        text-align: center;
    }
    
    
    #footer_widgets {padding: 80px 0 40px 0;}
        #footer_widgets .col-content {font-size: 15px; padding-bottom: 0;}
        #footer_widgets h4 {font-size: 18px; margin-bottom: 5px;}
        #footer_widgets li {font-size: 15px;}
        #footer_widgets a {font-size: 15px; margin: 3px 0;}
		
		
}


@media screen and (max-width: 650px) {
    
    .mobile_only {display: block;}
    
    .gallery-columns-4 .gallery-item {width: 50%;}
    
    .button {width: auto !important;}
    
}