@-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 ul li
	{
		margin: 0 12px;
	}
}
@media only screen and (max-width:960px)
{
	.header-top
	{
	    padding: 15px 20px;
	}
	.nav
	{
		position: absolute;
		right: 0;
		left: 0;
		z-index: 9999999;
		float: right;
		padding: 0 0;
		margin: 0;
		top: 0;
	}
	.nav ul li
	{
		margin: 0 0;
	}
	.nav ul li a
	{
		padding: 8px 0px;
		text-align:center;
    	background: #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:#000;
	}
	.nav ul li a::after
	{
		display:none;
	}
	.header-top aside
	{
	    margin-right: 50px;
	    position: relative;
	    z-index: 999999999;
	}
	.header-top
	{
		display: flex !important;
	}
	.hero article
	{
		left: 0;
	}
	.container
	{
	    padding-top: 35px;
	    padding-bottom: 35px;
	}
	.row
	{
		padding-left: 20px;
		padding-right: 20px;
	}
	.footer article
	{
		padding: 30px 20px;
        display: flex;
        flex-wrap: wrap;
	}
	.footer article aside, .footer-content
	{
		margin-right: 0%;
		width: 50%;
		float: left;
	}
}
@media only screen and (max-width:768px)
{
	.hero article
	{
	    width: auto;
	    padding: 0 20px;
	}
	.alignmiddle
	{
		display: block;
	}
	.hero article h1
	{
	    font-size: 28px;
	    line-height: 30px;
	}
	.hero article h3
	{
	    font-size: 16px;
	    line-height: 20px;
	}
	.container h2
	{
	    font-size: 28px;
	    line-height: 30px;
	}
	.intro aside, .intro figure, .services-content h2, .services-content aside, .services-list article aside, .services-list article figure, .address-details, .gmap, .contact .formfield
	{
		width: auto;
		float: none;
	}
	.services:before
	{
	    height: 35px;
	}
	.services-list article:after
	{
	    top: 10px;
	    left: 0;
	}
	.services-list article aside h3
	{
	    font-size: 28px;
	}
	.gmap
	{
		padding: 20px 0;
	}
}
@media only screen and (max-width:520px)
{	
	.header-top aside
	{
		display: none;
	}
	.getintouch h1
	{
	    font-size: 30px;
	}
	.footer
	{
		text-align: center;
	}
	.footer article aside, .footer-content
	{
		width: 100%;
		float: none;
	}
	.footer-content
	{
		padding: 0 0 20px 0;
	    border-bottom: solid 1px #fff;
	    border-right: none;
	}
	.social-icons a
	{
	    display: inline-block;
	    float: none;
	    margin: 0 1px;
	}
	.footer-bottom p
	{
		float: none;
	}
}
@media only screen and (max-width:360px)
{
	
}