@-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;
	}
	.header-top h1
	{
		position: relative;
		z-index: 999999999;
	}
}
@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;
	    margin-left: auto;
	}
	.header-top
	{
		display: flex !important;
	}
	.hero article
	{
		left: 0;
		bottom: 15px;
	}
	.container
	{
	    padding-top: 35px;
	    padding-bottom: 35px;
	}
	.row
	{
		padding-left: 20px;
		padding-right: 20px;
	}
	.footer article
	{
	    padding: 20px !important;
	}
	.footer-bottom:after
	{
	    font-size: 8vh;
	}
}
@media only screen and (max-width:768px)
{
	.header-top h1 a img
	{
	    height: 50px;
	}
	.hero,
	.slider-big .slick-track,
	.mainslider .slick-list,
	.lines
	{
	    height: 75vh !important;
	}
	.hero article
	{
	    width: auto;
	    padding: 0 20px;
	}
	.alignmiddle, .getintouch, .footer article, .aboutus-tabs article, .contact .row
	{
		display: block;
	}
	.hero article h1
	{
	    font-size: 28px;
	    line-height: 30px;
	}
	.hero article h1 span
	{
	    font-size: 42px;
	}
	.hero article h3
	{
	    font-size: 16px;
	    line-height: 20px;
	}
	.hero article aside
	{
	    padding-left: 0px;
	}
	.container h2
	{
	    font-size: 28px;
	    line-height: 30px;
	}
	.intro figure, .intro aside, .why-choose-us-content, .why-choose-us-list, .getintouch aside, .getintouch figure, .footer-content, .footer-links, .footer-contact aside, .aboutus figure, .aboutus aside, .aboutus-tabs article figure, .aboutus-tabs article aside, .address-details, .gmap, .contact .formfield, .practice-areas-nav, .content, .sidebar 
	{
		width: auto;
		float: none;
	}	
	.intro aside
	{
	    padding: 35px 0px;
	    left: 0;
	}
	.intro figure, .aboutus figure
	{
		position: static;
	}
	.practice-areas ul li
	{
	    width: 50%;
	}
	.why-choose-us-list ul, .people ul
	{
	    grid-template-columns: 1fr 1fr;
	}
	.getintouch aside
	{
		padding: 15px 30px;
	}
	.getintouch figure
	{
		height: 300px;
	}
	.footer-bottom
	{
		text-align: center;
	}
	.footer-bottom p
	{
		float: none;
	}
	.footer-bottom:after
	{
	    font-size: 6vh;
	}
	.page-title
	{
	    height: 200px;
    	margin-top: 80px;
	}
	.page-title:after
	{
	    height: 6px;
	}
	.page-title h2
	{
	    font-size: 2.2rem;
	}
	.page-title nav
	{
	    left: 20px;
	}
	.gmap
	{
		padding: 20px 0;
	}	
	#my-welcome-message
	{ 
	    width: 90%;
	    height: 85%;
	    padding: 15px 30px;
	}
	.practice-areas-nav
	{
		height: auto;
    	padding-bottom: 0px;
	}
	.cookie-disclaimer
	{
	    padding: 15px 30px;
	}
}
@media only screen and (max-width:520px)
{		
	.cookie-disclaimer
	{
	    width: 94%;
	    height: 80%;
	    padding: 15px 30px;
	}
	.header-top aside
	{
	    display: none;
	}
	.hero article a.linkbutton
	{
	    font-size: 14px;
	    padding: 12px 12px 12px 25px;
	}
	.practice-areas ul li
	{
	    width: 100%;
	}
	.why-choose-us-list ul, .people ul
	{
	    grid-template-columns: 1fr;
	}
	.getintouch aside h1
	{
	    font-size: 30px;
	}
	.social-icons a
	{
	    display: inline-block;
	    float: none;
	    margin: 0 1px;
	}
	.footer-bottom:after
	{
	    font-size: 5vh;
	}
	.people-content article figure
	{
		position: static;
	}
	.people-content article figure, .people-content article aside, .careers aside, .careers .formfield
	{
		width: auto;
		float: none;
	}
	.careers aside
	{
		display: none;
	}
	.form-split
	{
	    width: 100%;
	}
}
@media only screen and (max-width:360px)
{

}