@media only screen and (max-width: 1600px) {

	.wrapper {
	    padding: 0 40px;
	}
	
	#hero {
		height: 652px;
	}
	
	#home_content {
	    height: 550px;
	}
	
	.col {
	    padding: 80px 40px 40px 40px;
	}
	
	#home_main .left, #home_main .right {
	    padding: 60px 40px;
	}
	
	#footer .left, #footer .right {
		padding: 40px;
	}
	
	#nav ul li a {
		padding: 15px;
	}
	
	#mobile_nav ul {
		display: none;
	}
	

}


/* =============================================
   START MOBILE NAV
============================================= */

@media only screen and (max-width: 1240px) {
	
	#nav {
		display: none;
	}
	
	#top {
		background: rgba(0, 0, 0, .9);
	}

	#m_menu {
		display: block;
		position: absolute;
		top: 25px;
		right: 11px;
		width: 45px;
		height: 40px;
		background-size: cover;
		background-repeat: no-repeat;
		background-image: url(../images/m_menu.png);
		background-position: center top;
		-webkit-transition: all .4s;
		-moz-transition: all .4s;
		-o-transition: all .4s;
		transition: all .4s;
		z-index: 100;
	}
	
	#m_menu.close {
		background-position: center bottom;
	}
	
	#mobile_nav {
		position: absolute;
		text-align: center;
		top: 100%;
		left: 0;
		width: 100%;
		background: rgba(0, 0, 0, .9);
		text-transform: uppercase;
		font-size: 18px;
	    font-weight: 500;
	    line-height: 1;
	    letter-spacing: 1px;
	    padding: 0 0 30px 0;
	}
	
	#mobile_nav ul {
		display: block;
		border-bottom: 1px solid rgba(255,255,255,.25);
		padding: 0;
		margin: 0 auto;
		width: 100%;
		max-width: 350px;
	}
	
	#mobile_nav li {
		margin: 0;
		border-top: 1px solid rgba(255,255,255,.25);
	}
	
	#mobile_nav li a {
		display: block;
		padding: 15px 0;
		color: #ffffff;
	}
	
	#mobile_nav li {
		position: relative;
	}
	
	#mobile_nav li a:hover {
		color: #A52A2F;
	}
	
	#mobile_nav li.active a {
		color: #A52A2F;
	}
	
	#mobile_nav li.dd_open a {
		color: #A52A2F;
		cursor: pointer;
	}
	
	#mobile_nav ul.subnav {
		display: none;
		margin: 0;
		padding: 0 0 10px 0;
	}
	
	#mobile_nav ul.subnav li a {
		padding: 10px 0;
		font-size: 17px;
	}
	
	#mobile_nav .subnav {
		text-transform: none;
		border: none;
	}
	
	#mobile_nav .subnav li {
		border: none;
	}
	
	.sub_toggle {
		position: absolute;
		top: 2px;
		right: 0;
		width: 32px;
		height: 32px;
		z-index: 20;
		display: inline-block;
		font-size: 22px;
		font-weight: normal;
		line-height: 44px;
		color: #ffffff;
		-webkit-transition: all .4s;
		-moz-transition: all .4s;
		-o-transition: all .4s;
		transition: all .4s;
		cursor: pointer;
		text-align: center;
	}
	
	.sub_toggle:hover {
		color: #A52A2F;
	}
	
	#footer_logos li {
		margin: 0 10px;
		height: 70px;
	}
	
	.grid-item {
		width: 50%;
	}

	
}



@media only screen and (max-width: 960px) {

	body {
		-webkit-text-size-adjust: none;
	}
	
	input[type=text], textarea, input[type=submit] {
		-webkit-appearance: none;
		-webkit-border-radius:0; 
		border-radius:0;
	}

	.wrapper {
	    padding: 0 30px;
	}
	
	#nav {
	    margin: 28px -15px 0 0;
	}
	
	#nav ul li#home_nav {
		display: none;
	}
	
	
	
	#hero {
		height: 502px;
	}
	
	#home_content {
	    height: 400px;
	    text-align: center;
	}
	
	#home_content h1 {
		font-size: 70px;
	}
	
	#home_content a {
	    margin: 25px 0 0 0;
	    font-size: 15px;
	    padding: 12px 25px;
	}
	
	#home_cols h2 {
		font-size: 22px;
	}
	
	#home_cols h2 span {
		font-size: 12px;
		margin: 0 0 3px 0;
	}
	
	#home_cols p {
	    font-size: 15px;
	    line-height: 22px;
	}
	
	.col {
	    padding: 45px 30px;
	}
	
	.col.one {
		float: left;
		width: 50%;
	}
	
	.col.two {
		float: right;
		width: 50%;
	}
	
	.col.three {
		display: block;
		float: none;
		width: 100%;
		clear: both;
	}
	
	#home_cols p::after {
	    display: none;
	}
	
	#home_main .left, #home_main .right {
	    padding: 45px 30px;
	    float: none;
	    width: 100%;
	}
	
	#home_main h2 {
		font-size: 36px;
		margin: 0 0 25px 0;
	}
	
	#home_main h2 span {
	    font-size: 16px;
	    margin: 0 0 2px 0;
	}
	
	#home_main p {
	    font-size: 16px;
	    line-height: 26px;
	}
	
	#home_main ul li {
	    font-size: 16px;
	    line-height: 20px;
	}
	
	#home_main a.cta {
	    margin: 25px 0 0 0;
	    font-size: 15px;
	    padding: 12px 25px;
	}

	#footer .right {
		float: none;
	    width: 100%;
	    padding: 45px 30px;
	    background: #292929;
	}
	
	#footer .left {
		float: none;
	    width: 100%;
	    padding: 45px 30px;
	    font-size: 13px;
	}
	
	#footer_links {
		font-size: 14px;
	}
	
	#social {
	    margin: 0 0 15px 0;
	    font-size: 36px;
	}
	
	#page, #posts {
	    padding: 45px 0;
	    font-size: 16px;
		line-height: 26px;
	}
	
	#header {
	    height: 352px;
	}
	
	#header .content {
	    height: 250px;
	}
	
	#header h1, #header h2 {
	    font-size: 55px;
	}
	
	#header a {
		font-size: 12px;
	}
	
	#intro {
	    padding: 0 50px;
        font-size: 20px;
		line-height: 34px;
	}
	
	#page h2, #posts h2 {
	    font-size: 22px;
	}
	
	#page p + h2 {
	    margin-top: 25px;
	}
	
	#page h3, #posts h3 {
		font-size: 17px;
	}
	
	#team h3 {
	    font-size: 22px;
	}
	
	#case_studies ul li, #pubs ul li {
		margin: 0 10px 10px 10px;
		max-width: 280px;
	}
	
	#page .left {
		float: none;
		width: 100%;
		padding: 0;
	}
	
	#page .right {
		float: none;
		width: 100%;
		padding: 0;
		margin: 40px 0 0 0;
	}
	
	#page h1 {
		font-size: 34px;
	}
	
	#page h1 span {
		font-size: 22px;
	}
	
	.subtitle {
	    font-size: 17px;
	    line-height: 1.4;
	    margin: 0 auto 25px auto;
	}
	
	#news p {
	    padding: 0 0 20px 0;
	}
	
	.post {
	    margin: 0 0 30px 0;
	    padding: 0 0 30px 0;
	}
	
	.post .right {
		width: 280px;
	}
	
	.post .left {
		width: calc(100% - 280px);
		padding: 0 30px 0 0;
	}
	
	.blogauthor {
	    margin: 0 0 20px 0;
	}
	
	#download a {
	    font-size: 15px;
	    padding: 12px 24px;
	}
	
	#services .left {
		float: left;
		width: 150px;
	}
	
	#services .right {
		float: right;
		width: calc(100% - 150px);
		padding: 0 0 0 30px;
		margin: 0;
	}
	
	.new-service {
		width: 50%;
	}
	

}






/* =============================================
   MOBILE LANDSCAPE
============================================= */

@media only screen and (max-width: 767px) {

	
	
	.wrapper {
	    padding: 0 20px;
	}
	
	#logo {
		width: 100px;
	}
	
	#top {
		height: 90px;
	}
	
	#hero {
		height: 360px;
	}
	
	#home_content {
	    height: 270px;
	}
	
	#home_content h1 {
	    font-size: 50px;
	}
	
	#home_content a {
	    margin: 20px 0 0 0;
	    font-size: 13px;
	    padding: 10px 20px;
	}
	
	.col.one {
	    float: none;
	    width: 100%;
	}
	
	.col.two {
		float: none;
		width: 100%;
	}
	
	.col {
	    padding: 35px 20px;
	}
	
	#home_main .left, #home_main .right {
	    padding: 35px 20px;
	}
	
	#home_main p {
	    font-size: 15px;
	    line-height: 23px;
	}
	
	#home_main h2 {
	    font-size: 34px;
	    margin: 0 0 20px 0;
	}
	
	#home_main h2 span {
	    font-size: 15px;
	}
	
	#home_main a.cta {
	    margin: 20px 0 0 0;
	    font-size: 14px;
	    padding: 10px 20px;
	}
	
	#home_main ul li {
	    font-size: 15px;
	    line-height: 22px;
	    margin: 0 0 7px 0;
	}
	
	#footer .right {
	    padding: 35px 20px;
	}
	
	#footer .left {
	    padding: 35px 20px;
	    text-align: center;
	}
	
	#social {
	    text-align: center;
	}
	
	#social a {
	    margin: 0 5px;
	}
	
	#footer_links {
		display: none;
	}
	
	#header {
	    height: 240px;
	}
	
	#header .content {
	    height: 150px;
	}
	
	#header h1, #header h2 {
	    font-size: 36px;
		line-height: 40px;
	}
	
	#page, #posts {
	    padding: 25px 0;
	    font-size: 15px;
	    line-height: 23px;
	}
	
	#intro {
	    padding: 0;
	    font-size: 17px;
	    line-height: 24px;
	    color: #777;
	}
	
	#intro::after {
	    width: 100%;
	}
	
	#page .wrapper, #posts .wrapper {
	    padding: 0 20px;
	}
	
	#page h2, #posts h2 {
	    font-size: 20px;
	}
	
	#page h3, #posts h3 {
	    font-size: 16px;
	    font-weight: 600;
	}
	
	ul {
	    margin: 0 0 25px 30px;
	}
	
	#page ul.double li, #page ol.double li {
	    margin: 0 0 15px 0;
	}
	
	#case_studies ul li, #pubs ul li {
	    margin: 10px;
	    max-width: 100%;
	}
	
	#page h1 {
	    font-size: 26px;
	}
	
	#page h1 span {
	    font-size: 18px;
	}
	
	.subtitle {
	    font-size: 16px;
	    margin: 0 auto 20px auto;
	}
	
	#ticket a {
	    display: block;
	}
	
	#event {
	    margin: 20px 0 0 0;
	}
	
	.post .right {
		float: none;
	    width: 100%;
	}
	
	.post .left {
		float: none;
	    width: 100%;
	    margin: 15px 0 0 0;
	    padding: 0;
	}
	
	.gform_body ul li {
	    margin: 0 0 15px 0;
	}
	
	#field_2_1, #field_2_6 {
	    float: none;
	    width: 100%;
	}
	
	#field_3_5, #field_3_6 {
	    float: none;
	    width: 100%;
	}
	
	#intro br {
		display: none;
	}
	
	.gform_button {
		width: 100%;
	}
	
	.member {
		width: 50%;
		font-size: 12px;
	}
	
	.overlay {
		opacity: 1;
	}
	
	#team h3 {
		font-size: 17px;
	}
	
	
	img.alignright {
		float: none;
		display: block;
		margin: 0 auto 20px auto;
	}
	
	img.alignleft {
		float: none;
		display: block;
		margin: 0 auto 20px auto;
	}
	
	.grid-item {
		width: 100%;
	}
	
	#services {
		margin-bottom: 10px;
	}
	
	.service {
		margin: 0 0 40px 0;
		text-align: center;
	}
	
	#services .left {
		float: none;
		width: 90px;
		margin: 10px auto 20px auto;
		padding: 0;
	}
	
	#services .right {
		float: none;
		width: 100%;
		padding: 0;
	}
	
	#services h2::after {
	    margin: 20px auto;
	}
	
	.rel_post {
		float: none;
		width: 100%;
	}
	
	.rel_post:nth-child(even) {
		padding: 20px 0;
	}
	
	.rel_post:nth-child(odd) {
		padding: 20px 0;
	}
	
	
	
}


@media only screen and (max-width: 600px) {

	.new-service {
		width: 100%;
		float: none;
	}
	
}
