@media screen and (max-width:640px)
{
	#device-info { background: cyan; } #device-info p { color: #000; }
	.desktop-only, .shrunk-1080, .screen-1280, .screen-1024, .tablet-only, .mobile-only, .smallest-width-reached-only { display: none; }
	.mobile-only { display: block; }
	
	.gksm-custom-menu-widget ul li a
	{
		padding: 7px 5%;
		font-size: 0.7em;
	}
	
	/* MOBILE headings */
	h1, h2, h3, h4, h5, h6 { line-height: normal; }
	h1 { font-size: 1.6em; padding: 0 25px 7px 10px; }
	h2 { font-size: 1.2em; }
	h3 { font-size: 1.1em; }
	h4 { font-size: 1em; }
	h5 { font-size: 0.9em; }
	h6 { font-size: 0.8em; }
		
	body.show-featured-paragraph .content > p:first-of-type,
	p.featured-paragraph-special,
	.content div#project-gallery-info-container p
	{
		padding-left: 10px;
		font-size: 1em;
		line-height: 1.3em;
		margin: 0 0 15px 0;
	}
		.content div#project-gallery-info-container p
		{
			font-size: 0.95em;
			line-height: 1.2em;
		}

	/* override all ul and p sizes within main content */
	.content p,
	.content ul li,
	.content ol li
	{
		line-height: 1.4em;
		font-size: 0.825em;
		margin: 0 0 20px 0;
	}

	/* Wordpress content image alignment */
	.alignleft,
	.alignright,
	.aligncenter
	{ 
		display: block; 
		float: none;
		margin: 10px 0 15px 0;
		box-shadow: none;
	}
	article img
	{
		width: auto !important;
		max-width: 280px !important;
		height: auto !important;
		float: none !important;
	}

	/* project-gallery-info-container */
	#project-gallery-info-container { float: none; clear: none; }
	.content  article p#find-out-more-about-builder 
	{
		padding: 0;
		margin: 0 0 12px 0;
		width: 100%;
		float: left;
		clear: both;
	}
	.content p#find-out-more-about-builder a
	{
		font-weight: bold;
		font-size: 1.05em;
		padding: 0 15px 0 0;
		margin:  0 0 0 0;
		background-position: top right;
	}
	
	/* which of these... */
	div#which-of-these div { padding: 10px 5%; }
	div#which-of-these p
	{
		display: block;
		padding: 0;
		margin: 0;
		text-align: center;
		font-size: 0.85em;
		line-height: normal;
		background: none;
	}

	#nav-main ul.menu { width: 85%;	}
	
	/* home page 3 easy steps section */
	.three-easy-steps-text
	{
		display: block;
		width: 90%;
		padding: 0 5% 0 5%;
		margin: 0 0 10px 0;
		font-size: 0.7em;
		float: left;
		clear: both;
	}
	.three-easy-steps-text strong
	{
		display: block;
		float: left;
		font-size: 6em;
	}
	.three-easy-steps-text span
	{
		display: block;
		float: left;
		margin: 28px 0 0 15px;
		font-size: 1.9em;
	}
	ul.three-easy-steps-list { padding: 0 0 10px 0; float: left; clear: both; }
	ul.three-easy-steps-list li { margin: 0 0 5px 0; }

	/* galleries-quick-links-home */
	ul.galleries-quick-links-home li { margin: 0; }
	ul.galleries-quick-links-home li a
	{
		padding: 25px;
		margin: 0 0 5px 0;
	}
	ul.galleries-quick-links-home li a img
	{
		display: none;
	}
	ul.galleries-quick-links-home li a span
	{
		display: inline;
		max-width: none;
		width: auto;
		float: none;
		margin: 0;
	}
		body.post-type-archive-showcases ul.galleries-quick-links-home li a { padding: 30px 30px 30px 30px; font-size: 1.15em; }
	
	/* expert-help */
	.content p.expert-help
	{
		margin-bottom: 10px !important;
	}
	a.expert-help-button
	{
		font-size: 0.95em;
		width: 90%;
		padding: 15px 5% !important;
	}
	
	/* MOBILE showcase main page template */
	article img.company-logo
	{
		padding-top: 10px !important;
	}
	div.info-block
	{
		float: none;
	}
	.content div.owner-info p
	{
		font-size: 1.05em;
	}
	article img.owner-photo
	{
		width: 200px !important;
		margin: 0 auto;
	}
	div.owner-info h3
	{
		padding: 9px 0;
		font-size: 1em;
		text-align: center;
	}
	/* company-contact-form */
	.content p.contact-form-expander { margin: 0; }
	p.contact-form-expander a
	{
		padding: 20px 5% 20px 5%;
		font-size: 1.2em;
	}

	/* showcase-gallery-previews */
	ul.showcase-gallery-previews
	{
		max-width: none !important;
		width: 100%;
		margin: 0;
	}
	ul.showcase-gallery-previews li a
	{
		margin: 0 10px 10px 0;
		padding: 0;
		float: left;
		clear: none;
		width: 130px;
	}
	article ul.showcase-gallery-previews li a img
	{
		float: left;
		clear: both;
		width: 100% !important;
		max-width: none !important;
	}
	ul.showcase-gallery-previews li a strong
	{
		font-size: 1em;
		padding: 7px 0;
		margin: 0;
		float: left;
		clear: both;
		text-align: center;
		width: 100%;
	}	
	/* END showcase-gallery-previews */

	#footer-nav-main ul
	{
		float: left;
		clear: both;
		width: 95%;
		padding: 0 5% 0 0;
	}
	/* footer 2nd level menu links */
	#footer-nav-main ul ul li a,
	#footer-nav-main ul li a span.menu-item-description
	{
		color: #fff;
		padding: 0 0 0 0;
		float: none;
	}
	#footer-nav-main ul li a span.menu-item-description
	{
		padding: 0 0 0 5px;
	}

	article img.grid-item
	{
		max-width: none !important;
		width: 47% !important;
	}
	
	/* showcase form */
	div.company-contact-form form
	{
		padding: 10px 5% 15px 5%;
	}
	
	/* breadcrumbs (nav xt plugin) */
	#breadcrumb-container
	{
		margin: 0 auto 15px auto;
		font-size: 0.7em;
	}
	#breadcrumb-container a { padding: 0; }
	
	/* special download links */
	a.download-button
	{
		display: block;
		padding: 20px 25px 20px 25px;
		width: auto;
	}
	
	
	/* sponsor ads mobile */
	body.tax-showcase_category a.sponsor-ad img,
	body.single-showcases a.sponsor-ad img
	{
		width: 160px !important;
	}
	a.sponsor-ad span
	{
		font-size: 0.75em !Important;
	}
}




@media screen and (max-width:410px)
{
	article img.grid-item
	{
		max-width: none !important;
		width: 46% !important;
		margin: 0 5px 5px 0;
		min-width: 130px !important;
	}
}




@media screen and (max-width:320px)
{
	#device-info { background: red; }
	#device-info p { color: #fff; }
	.desktop-only { display: none; }
	.mobile-only { display: none; }
	.smallest-width-reached-only { display: block; }
	
	p#site-title { display: none; }
	
	#nav-main ul.menu { width: 100%;	}
	
	a#menu-toggle-small-screens { text-indent: -9999px; width: 35px; }
	
	
	/* home page 3 easy steps section */
	.three-easy-steps-text
	{
		font-size: 0.5em;
	}
	.three-easy-steps-text span
	{
		margin-top: 20px;
		margin-left: 5px;
	}

	ul.galleries-quick-links-home li a
	{
		padding: 15px;
		font-size: 1.1em;
	}
	
	/* MOBILE SMALLEST showcase main page template */
	div.owner-info
	{
		padding: 0 0 0 0;
		border: none;
	}
	div.info-block
	{
		margin: 10px 0 0 0;
		font-size: 0.85em;
	}
	article img.owner-photo
	{
		margin: 0 auto;
		float: none;
		width: 180px !important;
	}
	div.owner-info h3
	{
		padding: 7px 0;
	}
}