/* CSS for PROMO */
/* Design by Evil Donkey */
/* CSS by John King */

/* Normalise / Reset CSS */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0;
	padding: 0;	border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
article, aside, figcaption, figure, footer, header, nav, section {display: block;}
html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
a:hover, a:active { outline: 0; }
b, strong { font-weight: bold; }
i { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
li { list-style: none; list-style-image: none; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; max-width: 100%; }
svg:not(:root) { overflow: hidden; }
form { margin: 0; }
button, input, select, textarea { font-size: 100%; font-family: inherit; line-height: inherit; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


/* ------------------------------------------------------------------------ */
/* Main Layout and Positioning CSS */

html {
	overflow-y: scroll;
}

body {
	min-width: 320px; 
	background: #c8d2d4;
	cursor:default;
}

#wrapper {
	max-width: 1236px;
	min-height: 100%;
	margin: 0px auto;
	padding: 0px 15px;
}

header {
	clear: both;
	min-height: 69px;
	background: #ffffff url(../graphics/notch-bottom-left.png) no-repeat left bottom;
}

#main-content {
	clear: both;
	min-height: 350px;
	padding: 50px 0px;
	background: #ffffff;
}

#main-content.profile-content {
	min-height: 0px;
}

footer {
	clear: both;
	padding-top: 27px;
	padding-bottom: 25px;
	background: #394a4c; 
}

.row-padded-full {
	padding-left: 40px;
	padding-right: 40px;
}

.row-padded-cols {
	padding-left: 28px;
	padding-right: 28px;
}

.col {
	float: left;
	width: 33.33%;
}

.col4 {
	float: left;
	width: 25%;
}

.col .col-contents,
.col4 .col-contents {
	margin: 0px 12px;
}

article {
	position: relative;
}

.indented {
	margin-left: 44px;
}


/* ------------------------------------------------------------------------ */
/* Base Font CSS */

html, html a {
	-webkit-font-smoothing: antialiased;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
}

@font-face {
    font-family: 'FuturaStdBook';
    src: url('../fonts/futurastd-book-webfont.eot');
    src: url('../fonts/futurastd-book-webfont.eot') format('embedded-opentype'),
         url('../fonts/futurastd-book-webfont.woff') format('woff'),
         url('../fonts/futurastd-book-webfont.ttf') format('truetype'),
         url('../fonts/futurastd-book-webfont.svg#FuturaStdBook') format('svg');
}

@font-face {
    font-family: 'FuturaStdMedium';
    src: url('../fonts/futurastd-medium-webfont.eot');
    src: url('../fonts/futurastd-medium-webfont.eot') format('embedded-opentype'),
         url('../fonts/futurastd-medium-webfont.woff') format('woff'),
         url('../fonts/futurastd-medium-webfont.ttf') format('truetype'),
         url('../fonts/futurastd-medium-webfont.svg#FuturaStdMedium') format('svg');
}

body, button, input, select, textarea { 
	font-family: 'FuturaStdBook',sans-serif; 
	color: #323d3e;
}

a {
	text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
	line-height: 1.25em;
}

h1 {
	font-size: 28px;
	color: #263436;
	font-family: 'FuturaStdMedium';
}

h2 {
	font-size: 16px;
	padding-bottom: 10px;
}

p {
	font-size: 14px;
	padding-bottom: 16px;
	line-height: 1.25em;
}

article a {
	color: #eb430f;
}

article h1 {
	padding-bottom: 24px;
	height: 60px;
}

article ul,
article ol {
	padding-left: 20px;
	padding-bottom: 10px;
}

article ul li {
	font-size: 16px;
	list-style-type: disc;
	padding-bottom: 2px;
}

article ol li {
	font-size: 16px;
	list-style-type: decimal;
	padding-bottom: 2px;
}

::selection {
	background: #EC4917;
	color:#fff;
	}
::-moz-selection {
	background: #EC4917;
	color:#fff;
}


/* ------------------------------------------------------------------------ */
/* Form CSS */

label {
	font-size: 14px;
}

input[type='text'],
input[type='email'],
select,
textarea {
	width: 100%;
	padding: 4px;
	margin: 4px 0px 10px 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 14px;
}

input[type='submit'] {
	float: right;
	padding: 4px 12px;
	margin: 4px 0px 10px 0px;
	border: none;
	background: #eb430f;
	font-size: 15px;
	color: #fff;
}

label.error {
	color: #EB430F;
    float: right;
    margin-top: -5px;
}

#thankyou {
	color: #EB430F;
	margin-top:10px;
}


/* ------------------------------------------------------------------------ */
/* Header & Nav */

header #logo a img { 
	display: block;
	float: left;
	height: 24px;
	padding: 20px 0px 25px 0px;
}

nav ul {
	float: right;
	padding: 12px 0px 12px 0px;
}

nav ul li {
	float: left;
	font-size: 13px;
	white-space: nowrap;
}

nav ul li a {
	display: block;
	padding: 14px 10px 14px 10px;
	color: #babbbc;
	text-transform: uppercase;
}

nav ul li:first-child a {
	padding-left: 0px;
}

nav ul li:last-child a {
	padding-right: 0px;
}

nav ul li.active a,
nav ul li a:hover {
	color: #263436;
}


/* ------------------------------------------------------------------------ */
/* Banner CSS */

#banner {
	position: relative;
	min-height: 140px;
	background: #eff5f6;
}

#banner.profile-banner {
	background:#eff5f6;
	background: #eff5f6 url(../images/topAreaPromo.gif) no-repeat 50% 50%;
}

#banner h1 {
	max-width: 860px;
	padding: 48px 0px 57px 0px;
}

#banner.profile-banner h1 {
	color: #fff;
}

#banner.contact-banner .row-padded-full {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	height: 180px;
}

.cssgradients #banner.contact-banner .row-padded-full {
	background: -moz-linear-gradient(top, rgba(239,245,246,0.77) 0%, rgba(247,250,251,0.63) 50%, rgba(255,255,255,0) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(239,245,246,0.77)), color-stop(50%,rgba(247,250,251,0.63)), color-stop(100%,rgba(255,255,255,0)));
	background: -webkit-linear-gradient(top, rgba(239,245,246,0.77) 0%,rgba(247,250,251,0.63) 50%,rgba(255,255,255,0) 100%);
	background: -o-linear-gradient(top, rgba(239,245,246,0.77) 0%,rgba(247,250,251,0.63) 50%,rgba(255,255,255,0) 100%);
	background: -ms-linear-gradient(top, rgba(239,245,246,0.77) 0%,rgba(247,250,251,0.63) 50%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to bottom, rgba(239,245,246,0.77) 0%,rgba(247,250,251,0.63) 50%,rgba(255,255,255,0) 100%);
}

.no-cssgradients #banner.contact-banner .row-padded-full {
	background: transparent url(../graphics/contact-banner-bg.png) repeat-x 0px 0px;
}

.notch-top-left .row-padded-full:after {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 8px;
	height: 8px;
	content: "";
	background: transparent url(../graphics/notch-top-left.png) no-repeat 0px 0px;
}

/* Video */
.class-rel {
	position:relative;
	z-index:2;
}

.overlay {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:#EC4917;
	opacity:.3;
	z-index: 1;
	display:block;
}

.header-unit {
  height: 150px;
  border: 2px solid #000;
  border-right:none;
  border-left: none;
  position: relative;
  padding: 20px;
}
#video-container {
	position: absolute;
}
#video-container {
	top:0%;
	left:0%;
	height:100%;
	width:100%;
	overflow: hidden;
	display:block;
}
video {
	position:absolute;
	z-index:0;
}
video.fillWidth {
	width: 100%;
}


/* ------------------------------------------------------------------------ */
/* Tools Icons */

i[class^="icon-"],
i[class*=" icon-"] {
	display: inline-block;
	width: 30px;
	height: 30px;
	margin-top: 0px;
	*margin-right: .7em;
	margin-right: 14px;
	line-height: 1;
	vertical-align: middle;
	background: transparent url(../graphics/icons-tools.png) no-repeat 0px 0px;
}

.flexslider i[class^="icon-"],
.flexslider i[class*=" icon-"] {
	*margin-right: .35em;
	margin-right: 7px;
}

i.icon-ugc { background-position: 0px 0px; }
i.icon-com { background-position: -30px 0px; }
i.icon-sms { background-position: -60px 0px; }
i.icon-sp  { background-position: -90px 0px; }
i.icon-lef { background-position: -120px 0px; }
i.icon-si  { background-position: -150px 0px; }
i.icon-ab  { background-position: -180px 0px; }
i.icon-rtv { background-position: -210px 0px; }
i.icon-cg  { background-position: -240px 0px; }
i.icon-mc  { background-position: -270px 0px; }
i.icon-oa  { background-position: -300px 0px; }

.icon-title {
	line-height: 30px;
	padding-bottom: 20px;
	font-size: 16px;
}


/* ------------------------------------------------------------------------ */
/* Home Page */

.profile-content img.icon {
	position: absolute;
	top: 0px;
	left: 0px;
}

.profile-content article p {
	font-size: 16px;
}

#tool-list-home {
	padding: 65px 0px;
	background: #eff5f6;
}

#tool-list-home p {
	max-width: 840px;
	font-size: 28px;
	color: #263436;
	font-family: 'FuturaStdMedium';
}

#tool-list-home p a {
	color: #ec4917;
}

#tool-list-home p a:hover {
	text-decoration: underline;
}

#tool-list-home .row-padded-cols {
	padding-top: 40px;
}


/* ------------------------------------------------------------------------ */
/* Tools Page */

.tools-content article {
	padding-bottom: 60px;
}


/* ------------------------------------------------------------------------ */
/* Work Page - Flexslider */

#controls {
	float: right;
	margin: 52px 0px 20px 0px;
}

#controls span {
	float: left;
	font-size: 12px;
	line-height: 30px;
	text-transform: uppercase;
}

#controls ol {
	float: left;
}

#controls ol li {
	float: left;
	font-size: 12px;
}

#controls ol li a {
	display: block;
	width: 28px;
	height: 30px;
	line-height: 30px;
	margin-left: 10px;
	padding-left: 2px;
	background: #fff;
	text-align: center;
	cursor: pointer;
}

#controls ol li a.flex-active {
	background: #ec4917;
	color: #fff;
}

.flexslider {
	position: relative;
	width: 100%;
	zoom: 1;
}

.flex-viewport {
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}

.flexslider article {
	clear: both;
	padding: 0px 40px;
}

.flexslider article .details {
	float: left;
	width: 29%;
	padding-bottom: 30px;
}

.flexslider article .images {
	float: right;
	width: 67.55%;
}

.flexslider article .icons {
	float: left;
	clear: both;
	width: 29%;
	margin-top: -30px;
	padding-bottom: 10px;
}

.flexslider p {
	font-size: 13px;
}

.flexslider p span {
	display: block;
	padding-bottom: 3px;
	color: #ec4917;
}

.inner-slider ul {
	padding: 0px;
}

.inner-slider ul.flex-direction-nav {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	*height: 0;
}

.inner-slider ul.flex-direction-nav li {
	list-style-type: none;
	padding: 0px;
}

.inner-slider ul.flex-direction-nav li a {
	bottom: 0;
    display: block;
    height: 30px;
    left: 0;
    margin-top: -15px;
    overflow: hidden;
    position: absolute;
    top: 50%;
    width: 10%;
    z-index: 10;
}

.inner-slider ul.flex-direction-nav li a.flex-next {
	left: auto;
	right: 0px;
}

.inner-slider ul.flex-direction-nav li a span {
	position: absolute;
	display: block;
	top: 50%;
	left: 0px;
	height: 30px;
	width: 30px;
	margin-top: -15px;
	background: #ec4917 url(../graphics/flexslider-arrows.png) no-repeat 0px 0px;
	opacity: 0.5;
}

.inner-slider ul.flex-direction-nav li a.flex-next span {
	left: auto;
	right: 0px;
	background-position: -30px 0px;
}

.inner-slider ul.flex-direction-nav li a:hover span {
	opacity: 1;
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; height: 0; overflow: hidden;
}
 
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ------------------------------------------------------------------------ */
/* Blog */

.outer-post {
	float: left;
	width: 542px;
	margin-bottom: 70px;
}

.the-date {
    background: none repeat scroll 0 0 #EC4917;
    color: #FFFFFF;
    float: left;
    font-family: 'FuturaStdMedium';
    font-size: 20px;
    padding: 15px;
    text-align: center;
    width: 50px;
}

.post {
    margin-bottom: -50px;
    padding: 3px 20px;
    position: relative;
    transition: margin-bottom 0.2s ease 0s;
    word-wrap: break-word;
	width: 350px;
	float:left;
}

.post h2 {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.2;
	padding:0;
    margin: -5px 0 15px -4px;
}


.post h2 a {
    color: #333333;
    display: block;
    text-decoration: none;
}


h2 + .body-text {
    margin-top: 1em;
	line-height: 1.6;
}

.post p {
    font-size: 14px;
	margin: 0;
	line-height: 1.6;
}


/* ------------------------------------------------------------------------ */
/* Client Logos - Orange */

#client-logos {
	background: #ec4917;
}

#client-logos .client-logo-list {
	text-align: justify;
	font-size: 0.1px;
	line-height: 0.1px;
}  /* technique from http://css-tricks.com/equidistant-objects-with-css/ */

#client-logos .client-logo-list:after {
  content: '';
  width: 100%;
  display: inline-block;
}

#client-logos .client-logo-list .client {
	display: inline-block;
	margin-top: 60px;
}

#client-logos p {
	padding: 50px 0px;
	font-size: 28px;
	color: #263436;
	font-family: 'FuturaStdMedium';
}

#client-logos p span {
	color: #fff;
}


/* ------------------------------------------------------------------------ */
/* Footer */

footer p,
footer p a {
	line-height: 1.6725em;
	font-size: 14px;
	color: #f0f1f2;
	vertical-align: sub;
}

footer p a:hover {
	text-decoration: underline;
}

footer .col:first-child p {
	font-size: 9px;
	color: #647779;
	text-transform: uppercase;
}

footer .col:first-child img {
	padding: 5px 0px 12px 0px;
}

footer p a.social {
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-left: 4px;
	background: transparent url(../graphics/footer-social-icons.png) no-repeat 0px 0px;
}

footer p a.linkedin {
	background-position: -18px 0px;
}

footer p a.facebook {
	background-position: -36px 0px;
}

footer p a.social:hover {
	text-decoration: none;
}


/* ------------------------------------------------------------------------ */
/* Mobile */

@media (max-width: 700px) { /* Smaller than 700 tablet */

	#wrapper {
		padding: 0px;
	}
	
	#main-content {
		padding: 30px 0px 15px 0px;
	}
	
	footer {
		padding-bottom: 0px;
	}
	
	.row-padded-full,
	.row-padded-cols {
		padding-right: 20px;
		padding-left: 20px;
	}

	.col,
	.col4 {
		float: none;
		width: 100%
	}
	
	.col .col-contents
	.col4 .col-contents {
		margin: 0px;
		padding-bottom: 20px;
	}
	
	h1 {
		font-size: 22px;
	}
	
	header #logo a img {
		padding-bottom: 0px;
	}
	
	nav ul {
		clear: both;
		float: none;
		padding: 0px;
	}
	
	nav ul li a {
		padding-right: 5px;
		padding-left: 5px;
	}
	
	#banner {
		min-height: 0px;
	}
	
	#banner.work-banner {
		min-height: 120px;
	}
	
	#banner h1 {
		padding: 20px 0px;
	}
	
	#banner.work-banner h1 {
		clear: both;
	}
	
	#tool-list-home {
		padding: 25px 0px;
	}
	
	#tool-list-home .col .col-contents{
		padding-bottom: 0px;
	}
	
	.tools-content article {
		padding-bottom: 20px;
	}
	
	#controls {
		margin: 20px 0px 0px 0px;
	}
	
	#controls ol li a {
		margin-left: 5px;
	}
	
	.flex-viewport {
		max-height: 2000px;
	}

	.flexslider article {
		padding: 0px 20px 10px 20px;
	}

	.flexslider article .details,
	.flexslider article .images {
		float: none;
		width: 100%;
		padding-bottom: 0px;
	}

	.fslexslider article .images {
		margin-left: 0px;
		padding-left: 0px;
	}

	.flexslider article .icons {
		width: 100%;
		margin-top: 20px;
	}
	
	#client-logos {
		padding-top: 20px;
	}
	
	#client-logos .row-padded-cols {
		text-align: center;
	}
	
	#client-logos .client-logo-list {
		display: inline;
	}
	
	#client-logos .client-logo-list:after {
		display: none;
	}
	
	#client-logos .client-logo-list .client {
		display: inline;
		margin-top: 0px;
	}
	
	#client-logos .row-padded-full p {
		clear: both;
		padding: 20px 0px;
	}
	
	.overlay,
	#video-container {
		display:none;
	}
	
	.outer-post,
	.post {
		padding:0;
		width:100%;
		margin-bottom: 10px;
	}
	.post {
		margin-top: 10px;
	}
	.post img {
		height: auto;
    	max-width: 100%;
    	width: 100%;
	}
	
}

@media (max-width: 420px) { /* smaller than 420 phone */
	
	#banner h1 {
		padding: 11px 0;
		font-size:19px;
	}
	
	input[type='text'],
	select,
	textarea {
		font-size: 16px;
	}

	#banner.contact-banner #map-canvas {
		height: 250px !important;
	}

	#controls span {
		display: none;
	}
	
	.inner-slider ul.flex-direction-nav li a span {
		height: 15px;
		width: 15px;
		margin-top: -7px;
		background-size: 30px 15px;
	}
	
	.inner-slider ul.flex-direction-nav li a.flex-next span {
		background-position: -15px 0px;
	}
	
	#client-logos .row-padded-cols {
		padding: 0px;
	}
	
	#client-logos .client-logo-list .client {
		display: block;
		float: left;
		padding: 0px 20px;
	}
	
}


/* ------------------------------------------------------------------------ */
/* Retina Images */

@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) {

	header {
		background-size: 8px 9px;
		background-image: url(../graphics/notch-bottom-left@2x.png);
	}
	
	.notch-top-left .row-padded-full:after {
		background-size: 8px 8px;
		background-image: url(../graphics/notch-top-left@2x.png);
	}

	i[class^="icon-"],
	i[class*=" icon-"] {
		background-size: 330px 30px;
		background-image: url(../graphics/icons-tools@2x.png);
	}
	
	footer p a.social {
		background-size: 54px 18px;
		background-image: url(../graphics/footer-social-icons@2x.png);
	}

}


/* ------------------------------------------------------------------------ */
/* IE Fixes */

.lt-ie9 #wrapper {
	width: 1000px;
}

.lt-ie8 #client-logos .client-logo-list .client {
	display: inline;
}


/* ------------------------------------------------------------------------ */
/* Print */

@media print {
	* { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important;}
	a, a:visited { text-decoration: underline; }
	a[href]:after { content: " (" attr(href) ")"; }
	abbr[title]:after { content: " (" attr(title) ")"; }
	a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	thead { display: table-header-group; }
	tr, img { page-break-inside: avoid; }
	img { max-width: 100% !important; }
	p, h2, h3 { orphans: 3; widows: 3; }
	h2, h3 { page-break-after: avoid; }
}
