@-ms-viewport
{
	width:device-width;
}
@-viewport
{
	width:device-width;
}
@media only screen and (max-width:1200px)
{
	img
	{
		max-width:100%;
	}
}
@media only screen and (max-width:1024px)
{	
	.nav
	{
		position: absolute;
		right: 0;
		left: 0;
		z-index: 9999999;
		float: right;
		padding: 0 0;
		margin: 0;
		top: 0;
	}
	.nav ul li
	{
		margin: 0;
	}
	.nav ul li a
	{
		padding: 8px 0px;
		text-align:center;
    	background: rgba(0,0,0,0.8);
		color:#fff;
	}
	.nav-shrink .nav ul li a
	{
		padding: 8px 0px;
		text-align:center;
	}
	.nav ul li ul li a, .nav-shrink .nav ul li ul li a
	{
    	background: #fff;
		color:#000;
		text-align:center;
	}
	.nav ul li a i
	{
		display:none;
	}
	.nav ul li ul
	{
		position: relative;
		left:0;
		width: auto;
		-webkit-transform: translateX(-0%);
		transform: translateX(-0%);
		padding: 20px;
	}
	.nav ul ul li a, .nav-shrink .nav ul li ul li a
	{
		text-align:center;
	} 
	.nav ul li ul:before
	{
		top: -12px;
		left: 0;
		right:0;
	}
	.nav ul li a span
	{
		display: block;
	}
	.nav ul li:hover > a, .nav ul li.active > a 
	{
		color:#fff;
	}
	.nav-shrink .nav ul li a
	{
		color:#fff;
	}
	.nav ul li a::after
	{
		display:none;
	}
	.nav ul li ul aside
	{
		width: auto;
		float: none;
		padding: 0;
		display: block !important;
		text-align: center;
		margin: 0 !important;
	}
	.header-strip
	{
		padding: 5px 20px;
	}
	.header-top
	{
		padding: 10px 20px;
	}
	.header-top .alignmiddle
	{
		display: flex !important;
	}
	.header-top h1, .header-top aside
	{
		position: relative;
		z-index: 99999999;
	}
	.header-top aside
	{
		margin-left: auto;
		margin-right: 50px;
	}
}
@media only screen and (max-width:960px)
{
	.container
	{
		padding: 0px 20px;
	}
	.intro
	{
		padding: 100px 20px;
	}
	.footer article
	{
		padding: 30px 20px;
        display: flex;
        flex-wrap: wrap;
	}
	.footer article aside
	{
		margin-right: 0%;
		width: 33.333333%;
		float: left;
	}
}
@media only screen and (max-width:768px)
{
	.alignmiddle, .aboutus, .footer-bottom .alignmiddle
	{
		display: block;
	}
	.header-strip .alignmiddle
	{
		display: flex !important;
	}
	.container h2
	{
		font-size: 24px;
		line-height: 26px;
	}
	.aboutus figure, .aboutus aside, .gmap, .address-details
	{
		width: auto;
		float: none;
	}
	.intro h1
	{
		font-size: 28px;
		line-height: 30px;
	}
	.footer article aside
	{
		width: 50%;
	}
	.footer-bottom p
	{
		float: none;
		text-align: center;
	}
	.page-title h1
	{
		font-size: 34px;
		line-height: 34px;
	}
	.aboutus figure img
	{
		height: auto;
	}
	.aboutus aside
	{
		margin: 30px 0;
	}
	.develop h1
	{
		font-size: 26px;
		margin-top: 50px;
	}
	.image-with-content article
	{
		grid-template-columns: 1fr;
	}
	.image-with-content article aside
	{
		padding: 15px 30px;
	}
	.image-with-content article:nth-of-type(even) figure
	{
		order: 0;
	}
	.image-with-content article aside:before
	{
		top: -30px;
		left: 0;
		right: 0;
		margin: auto;
		border-bottom: solid 15px #090909;
		border-right: solid 15px transparent;
		border-left: solid 15px transparent;
		border-top: solid 15px transparent;
		transform: translateY(0%);
	}
	.image-with-content article:nth-of-type(even) aside:before
	{
		left: 0;
		right: 0;
		border-bottom: solid 15px #090909;
		border-left: solid 15px transparent;
		border-right: solid 15px transparent;
		border-top: solid 15px transparent;
	}
	.image-content-box ul
	{
		grid-template-columns: 1fr 1fr;
	}
	.card-body
	{
		display: block;
		text-align: center;
	}
}
@media only screen and (max-width:520px)
{	
	.header-top h1 a
	{
		font-size: 20px;
	}
	.intro h3, .services-page h3
	{
		font-size: 33px;
		line-height: 33px;
	}
	.footer
	{
		text-align: center;
	}
	.footer article aside
	{
		width: 100%;
		float: none;
	}
	.aboutus aside ul
	{
		grid-template-columns: 1fr;
	}
	.image-content-box ul
	{
		grid-template-columns: 1fr;
	}	
}
@media only screen and (max-width:320px)
{
	
}