@-ms-viewport
{
	width:device-width;
}
@-viewport
{
	width:device-width;
}
@media only screen and (max-width:1400px)
{
	.hero figure
	{
		right: -100px;
	}
}
@media only screen and (max-width:1300px)
{
	.hero figure
	{
		right: -50px;
	}
	.hero .row
	{
		padding: 0px 20px;
	}
}
@media only screen and (max-width:1200px)
{
	img
	{
		max-width:100%;
	}
	.hero aside
	{
		width: 40%;
	}
	.hero aside h1
	{
		font-size: 50px;
		line-height: 50px;
	}
	.hero aside h2
	{
		font-size: 24px;
	}
}
@media only screen and (max-width:1024px)
{	
	.header
	{
		padding: 10px 10px;
	}
	.hero figure
	{
		right: 0;
	}
	.hero:after
	{
		right: 0;
		width: 350px;
		height: 350px;
	}
}
@media only screen and (max-width:960px)
{
	.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:#034ea2;
	}
	.nav-shrink .nav ul li a
	{
		color:#fff;
	}
	.nav ul li a::after
	{
		display:none;
	}
	.header
	{
		padding: 10px 10px;
	}
	.header-top .alignmiddle, .header-strip .alignmiddle
	{
		display: flex !important;
	}
	.header-top h1, .header-top aside
	{
		position: relative;
		z-index: 99999999;
	}
	.header-top aside
	{
		margin-left: auto;
		margin-right: 75px;
	}
	.hero aside h2:before
	{
		left: 0;
		z-index: -8;
	}
	.hero figure
	{
		width: 70%
	}
	.container
	{
		padding: 25px 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
	{
		display: block;
	}
	.header	.alignmiddle
	{
		display: flex !important;
	}
	.hero
	{
		height: auto;
	}
	.hero .row
	{
		height: auto;
		padding-top: 50px;
	}
	.hero figure
	{
		position: relative;
		right: 0 !important;
	}
	.hero aside
	{
		text-align: center;
	}
	.hero aside h2:before
	{
		left: 0;
		width: 50px;
		height: 50px;
		z-index: -8;
	}
	.container h1
	{
		font-size: 48px;
		line-height: 48px;
	}
	.container h2
	{
		font-size: 30px;
		line-height: 30px;
	}
	.intro figure, .intro aside, .hero aside, .hero figure, .lifestyle aside, .lifestyle figure, .testimonials figure, .testimonials aside
	{
		width: auto !important;
		float: none;
	}
	.intro aside h1
	{
        margin-top: 20px;
        margin-left: 0;
        padding: 0;
	}
	.workout-programs .alignmiddle
	{
		display: flex !important;
		align-items: center !important;
	}
	.workout-programs aside
	{
		margin-top: 20px;
	}
	.workout-programs ul
	{
		grid-template-columns: 1fr 1fr;
	}
	.workout-programs:before
	{
		transform: rotate(-0deg);
	}
	.group-classes ul li
	{
		width: 33.333333%;
		margin: -5px;
	}
	.testimonials:after
	{
		top: auto;
		bottom: 0;
		right: 0px;
		z-index: -8;
	}
	.lifestyle aside h1
	{
		margin-top: 0;
		left: 0;
	}
	.faqs .accordion
	{
		font-size: 15px;
		padding: 10px 40px 10px 10px;
	}
	.faqs .accordion:after
	{
		right: 10px;
    	line-height: 23px;
	}
	.footer article aside
	{
		width: 50%;
	}
	.scrollup
	{
		bottom: 10px;
		right: 10px;
		width: 30px;
		height: 30px;
		line-height: 28px;
	}
	.social-icons-fixed
	{
		bottom: 50px;
		right: 10px;
	}
	.social-icons-fixed a
	{
		width: 30px;
		height: 30px;
		padding: 7px 0;
		font-size: 18px;
		margin: 5px 0px;
	}
	.footer-bottom p
	{
		float: none;
		text-align: center;
	}
	.opentime p
	{
		display: inline-block;
	}
	.modal-content
	{
		width: 90%;
	}
	.mobile-button-align{
	    margin: 15px auto!important;
    display: block!important;
	}
}
@media only screen and (max-width:520px)
{	
	.header-top h1 img
	{
		height: 80px;
	}
	.workout-programs .alignmiddle
	{
		display: block!important;
	}
	.workout-programs-video, .workout-programs aside
	{
		width: auto;
	}
	.workout-programs ul
	{
		grid-template-columns: 1fr 1fr;
	}
	.group-classes ul li
	{
		width: 100%;
		margin: 5px 0;
    	border-radius: 10px;
	}
	.group-classes ul li:after
	{
		padding-top: 36%;
	}
	.results ul
	{
		grid-template-columns: 1fr 1fr;
	}
	.footer
	{
		text-align: center;
	}
	.footer article aside
	{
		width: 100%;
		float: none;
	}
	.social-icons a
	{
		display: inline-block;
		float: none;
		margin: 0 1px;
	}
}
@media only screen and (max-width:320px)
{
	.workout-programs ul
	{
		grid-template-columns: 1fr;
	}
	.results ul
	{
		grid-template-columns: 1fr;
	}
}