@media screen and (max-width:1700px) {
	.hero-banner img.img-bg {
		height:375px;
		width:auto;
		max-width:none;
		position:relative;
		left:50%;
		-webkit-transform:translateX(-50%);
			-ms-transform:translateX(-50%);
				transform:translateX(-50%);
	}
	.home .hero-banner img.img-bg {
		height:670px;
	}
}
@media screen and (max-width:1200px) {
	.wrapper {
		padding-left:30px;
		padding-right:30px;
	}
	#pageheader .primary-nav {
		right:230px;
	}
	#pageheader .widgets {
		right:20px;
	}
	
	
	.hero-banner {
		min-height:0;
		overflow:hidden;
		max-height:none;
	}
}
/* Tablet, landscape */
@media screen and (max-width:1023px) {
	#pageheader .wrapper {
		overflow:hidden;
	}
	#brand {
		height:90px;
		margin:20px 0 40px 0;
	}
	#pageheader .primary-nav {
		top:auto;
		bottom:10px;
		right:30px;
	}
	#pageheader .widgets {
		top:50px;
		right:30px;
	}
	#pageheader .widgets .search {
		position:relative;
		display:inline-block;
		width:25px;
		vertical-align:middle;
		margin-right:10px;
		overflow:hidden;
	}
	#pageheader .widgets .search.active {
		width:220px;
	}
	#pageheader .widgets .search form {
		width:220px;
		left:-240px;
	}
	#pageheader .widgets .search input.search-field {
		width:160px;
	}
	
}

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

	/* Cards */
	.cards {
		display:block;
		position:relative;
		overflow:visible;
	}
	.cards .row {
		display:block;
		overflow:visible;
	}
	.cards .card {
		display:block;
	}
	.cards.c2 .card,
	.cards.c3 .card { 
		width:100%; 
		margin: 20px 0;
	}
	
	
	/* Quote Boxes */
	.quote-bg {
		position:relative;
	}
	.quote-bg > img {
		position:absolute;
		z-index:-1;
		top:50%;
		-webkit-transform:translateY(-50%);
			-ms-transform:translateY(-50%);
				transform:translateY(-50%);
	}
	.quote-text {
		position:static;
		-webkit-transform:none;
			-ms-transform:none;
				transform:none;
	}
	.quote-box {
		color:#fff;
		margin:0;
		padding:40px 10%;
		border-radius:5px;
		text-align:center;
		-webkit-box-shadow: 5px 5px 25px 5px rgba(4,30,65,0.45);
		-moz-box-shadow: 5px 5px 25px 5px rgba(4,30,65,0.45);
		box-shadow: 5px 5px 25px 5px rgba(4,30,65,0.45);
	}
	.quote-box .quote {
		font-size:1.3889em;
	}
	.quote-box .quote p:last-child {
		margin-bottom:0;
	}
	.quote-box .citation {
		font-weight:600;
		opacity:0.75;
		margin:1.5em 0;
	}
	
}

/* Tablet, portrait */
@media screen and (max-width:768px) {

}

/* Smartphones */
@media screen and (max-width:767px) {

	.desktop-only {
		display:none !important;
	}
	.mobile-only {
		display:block !important;
	}
	.mobile-only-ib {
		display:inline-block !important;
	}
	.mobile-only-i {
		display:inline !important;
	}

	.wrapper {
		padding-left:5%;
		padding-right:5%;
	}
	
	.column {
		float:none;
		width:100%;
		margin-right:0;
	}
	
	/* Header area */
	#pageheader .wrapper {
		padding:0;
		width:100%;
		margin:0;
		overflow:hidden;
	}
	#brand {
		width:50%;
		height:auto;
		margin:20px 0 20px 5%;
		float:left;
	}
	#brand img {
		-webkit-transform:none;
			-ms-transform:none;
				transform:none;
		position:static;
	}
	#pageheader .widgets {
		display:none;
	}
	
	#nav-toggle { 
		display:block;  
		height:auto;
		width:40px;
		padding:10px 0;
		position:absolute;
		right:5%;
		top:25px;
	}
	#nav-toggle .label {
		position:absolute;
		left:-10000px;
	}
	#nav-toggle .line {
		display:block;
		height:5px;
		margin:5px 0;
		background:#1E252B;
	}
	#pageheader .primary-nav,
	#needs-nav {
		display:none; 
	}
	#pageheader #mobile-nav {
		clear:both;
		padding-bottom:10px;
	}
	#pageheader #mobile-nav li {
		display:block;
	}
	#pageheader #mobile-nav a {
		display:block;
		text-decoration:none;
		padding:10px 5%;
	}
	#pageheader #mobile-nav .need a {
		color:#fff;
		background-color:#1E252B;
		display:block;
	}
	#pageheader #mobile-nav li.menu-item-has-children {
		position:relative;
	}
	#pageheader #mobile-nav li.menu-item-has-children > a:after {
		content:'';
		position:absolute;
		top:0;
		right:5%;
		width:24px;
		height:24px;
		margin-top:5px;
		background:#ccc url(../img/chevron_right.svg) no-repeat center;
		background-size:50%;
	}
	#pageheader #mobile-nav li > .sub-menu-control {
		position:absolute;
		top:0;
		right:0;
		width:calc(5% + 30px);
		height:100%;
	}
	#pageheader #mobile-nav li.menu-item-has-children.open > a:after {
		-webkit-transform:rotate(90deg);
			-ms-transform:rotate(90deg);
				transform:rotate(90deg);
		-webkit-transform-origin:center;
			-ms-transform-origin:center;
				transform-origin:center;
	}
	#pageheader #mobile-nav .sub-menu {
		display:none;
	}
	#pageheader #mobile-nav .sub-menu a {
		padding-left:10%;
	}
	
	/* Mobile Search */
	.mobile-search {
		padding:10px 5% 20px 5%;
		overflow:hidden;
	}
	#pageheader .mobile-search input.search-field {
		border: 1px solid #cacaca;
		border-radius:5px 0 0 5px;
		font-size: 0.8em;
		line-height: 35px;
		height:35px;
		padding:0 5px;
		width: calc(100% - 60px);
		float:left;
		outline:none !important;
		box-sizing: border-box;
	}
	#pageheader .mobile-search input.search-submit {
		background: #fff;
		border: 1px solid #cacaca;
		border-left:0;
		border-radius:0 5px 5px 0;
		font-size:0.8em;
		color:#000;
		height: 35px;
		float:left;
		line-height:35px;
		width:60px;
		padding:0;
		position: relative;
		outline:none !important;
	}
	
	/* Page Footer */
	#ftr-widgets {
		width:100%;
		display:block;
	}
	#ftr-widgets .widget {
		float:none;
		width:100% !important;
	}
	#pagefooter h3.widget-title {
		margin-top:1em;
	}
	
	
	/**************************
	4.2 Header Styles
	**************************/
	h1, h2 {
		font-size:2.2222em;
	}
	
	
	/**************************
	4.4 Flexible Content Patterns
	**************************/	

	/* Call to Action */
	.cta-box {
		padding:45px 17%;
	}
	.cta-box .button + .cta-link {
		margin-left:0;
		display:block;
		margin-top:0.5em;
	}


	/* Columns */
	.columns .row {
		overflow:hidden;
	}
	.columns .column {
		float:none;
		margin-left:0;
	}
	.columns .column:first-child {
		margin-left:0;
	}
	.columns.c2 .column,
	.columns.c3 .column,
	.columns.c4 .column {
		width:100%;
	}
	.columns .h3-ttl-spacer {
		display:none;
	}



	/* Full-Width Hero Banners */
	.hero-banner {
		position:relative;
		color:#fff; /* default colour */
		margin-bottom:20px !important;
		overflow:hidden;
		width:100vw;
		background-repeat:no-repeat;
		background-position:center;
		background-size: cover;
	}
	.flexible-home .hero-banner {
		min-height:50vh;
		height:auto;
		box-shadow: inset 0 0 0 1000px #f1f1f1c7;
	}
	.hero-banner:before {
		display:none;
	}
	.hero-banner .banner-text,
	.home .hero-banner .banner-text {
		margin:20px 0;
	}
	.hero-banner .banner-text > .wrapper > * {
		max-width:100%;
		min-width:0;
		padding-left:0;
		padding-right:0;
	}
	/*.hero-banner .banner-text * {
		color:inherit;
	}*/
	.hero-banner .button {
		margin-right:20px;
	}
	.hero-banner .button a {
		color:#041e41;
	}
	.hero-banner .button + .cta-link {
		margin-left:0;
	}


	/* Image with Text*/
	.image-text img.image {
		width:100%;
		margin-top:1em;
		display:block;
		padding-left:0 !important;
		padding-right:0 !important;
	}
	.image-text .text-container {
		width:100%;
		display:block;
		padding-left:0 !important;
		padding-right:0 !important;
		border:0 !important;
	}
	/* left aligned */
	.image-text.image-left .text {
		padding-left:0;
	}
	/* right aligned */
	.image-text.image-right .text {
		padding-right:0;
		text-align:left;
	}


	/* Text Block */


	/* Related Content */
	#related-content h3 {
		margin-bottom:0.25em;
	}
	#related-content .pre-meta {
		font-style: italic;
		margin-bottom:0.5em;
	}
	
	
	/* Post Styles */
	.post-list article.post, 
	body.paged .post-list article.post, 
	body.archive .post-list article.post,
	.post-list article.postcount-1 {
		float:none;
		width:100%;
		margin-left:0;
	}
	
	/* Search Results */
	.search-title {
		margin-top:0;
	}
	body.search article .entry-thumbnail,
	body.search article .entry-text {
		display:block;
		width:100%;
		padding-right:0;
	}
	
	/* buttons */
	input[type="submit"], .button a {
		padding:10px 20px;
		line-height:1;
	}
	
	/* Case Studies Page */
	#featured-case {
		padding:2em 0;
		border-bottom:1px solid #cacaca;
		border-top:1px solid #cacaca;
		margin-bottom:2em;
	}
	#featured-case .entry-thumbnail, 
	#featured-case .text {
		float:none;
		width:100%;
		padding:0;
	}
	#case-studies {
		margin-left:0;
		margin-right:0;
	}

}

@media screen and (max-width:479px) {
	
	#case-studies .entry-thumbnail, 
	#case-studies .text {
		float:none;
		width:100%;
		padding:0;
	}
	
}