half/* =============================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }

::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }

a { color: #00e; }
a:visited { color: #676767; }
a:hover { color: #666666; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
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; }

ul, ol { margin: 1em 0; padding: 0; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

svg:not(:root) { overflow: hidden; }

figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }


/* ===== Initializr Styles =====================================================
   Author: Jonathan Verrecchia - verekia.com/initializr/responsive-template
   ========================================================================== */

html {background-color: #676767;}

body{
	font:16px/32px "Roboto","museo",serif;
	font-weight: 100;
	background-color: #4F44A3;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#4f44a3+0,ec87c0+100 */
background: #4f44a3; /* Old browsers */
background: -moz-linear-gradient(-45deg,  #4f44a3 0%, #ec87c0 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg,  #4f44a3 0%,#ec87c0 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg,  #4f44a3 0%,#ec87c0 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}

body > section {
	background: #444;
	color: #ddd;
	font-size: 75%;
	padding: .5em;

}

.wrapper{
	width:90%;
	margin:0 5%;
}

.with-images img {
		width: 100%;
		float: right;
}



/* ==============
    MOBILE: Menu
   ============== */

#header-container {
	background-color: #fff;
	border-top: #ffdc00 2px solid;

}

nav a{
	display:block;
	color:#444;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
}

nav a:hover, nav a:visited{
	color:#676767;
}

nav a:hover{
	text-decoration:underline;
}

/* ==============
    MOBILE: Main
   ============== */

#main{
	padding:30px 0;
}

#main article h1{
	font-size:2.25em;
	line-height: 1em;
}


#footer-container {
	color:white;
	padding:20px 0;
	background: #676767;
}

.left {
	float: left
}

.right {
	float: right;
}

/* 	==============
	Contact Form
	============== */
	
form {
    margin: 4% 0;
    padding: 4%;
    background: #fff;
    border: 1px #ccc solid;
/*
	-moz-box-shadow: 0 0 5px 3px #efefef;
	-webkit-box-shadow: 0 0 5px 3px #efefef;
	box-shadow: 0 0 5px 3px #efefef;
*/
}



.input-group input, .input-group select {
    border: 1px solid #C3CBD3;
    border-radius: 3px 3px 3px 3px;
    display: block;
    font-family: "Helvetica Neue",Arial,sans-serif;
    font-size: 1em;
    margin-bottom: 16px;
    padding: 10px;
    width: 100%;
}

form div.personal-details {
	width: 90%;
	float: inherit;
}

form div.message {
	width: 90%;
	float: inherit;
}

form div.message textarea {
	width: 100%;
	padding: 10px;
	background: #F7F7F7;
	border: 1px #ccc solid;
}

form div.submit {
	width: 100%;
	background: #444;
}

div.message > input {
	float: right;
	margin: 4% 0;
}

/*	============
	Contact panel
	============ */



.contact-details p {
	width: 100%;
	color: #fff;
}

.contact-details p:first-child {
	padding-bottom: 2%;
	border-bottom: 1px #ccc solid;
}

/*	=======
	Our Approach
	======= */
	
#our-approach div > article {
	width: 90%;
	padding:0 2% 2%;
}

#our-approach ul {
	width: 90%;
	margin: 0;
	padding: 0 2% 2%;
	list-style-type: none;
}

#our-approach li {
	background: #fff;
	padding: 4%;
	border-bottom: 1px #ccc solid;

}

#our-approach img {
	width: 100%;
}

/*	===============
	Web Build
	=============== */
	
	#web-build li img {
		width: 100%;
	}



/*	===============
	Button Styles
	=============== */
	
	


.button {
/*
	-moz-box-shadow:inset 0px 1px 0px 0px #fff6af;
	-webkit-box-shadow:inset 0px 1px 0px 0px #fff6af;
	box-shadow:inset 0px 1px 0px 0px #fff6af;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ffec64), color-stop(1, #ffab23) );
	background:-moz-linear-gradient( center top, #ffec64 5%, #ffab23 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffec64', endColorstr='#ffab23');
*/
	background-color:#3BAFDA;
/*
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
*/
	border:1px solid #4FC1E9;
	display:inline-block;
	color:#fff;
	font-family:"Roboto", arial;
	font-size:15px;
	font-weight:200;
	padding:6px 24px;
	text-decoration:none;
/* 	text-shadow:1px 1px 0px #430b59; */
text-transform: uppercase;
}

.button:hover {
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ffab23), color-stop(1, #ffec64) );
	background:-moz-linear-gradient( center top, #ffab23 5%, #ffec64 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffab23', endColorstr='#ffec64');
	background-color:#ffab23;
}

.button:active {
	position:relative;
	top:1px;
}
/* This imageless css button was generated by CSSButtonGenerator.com */


/* ===============
    ALL: IE Fixes
   =============== */

.ie7 #title{ padding-top:20px; }


/* ===== Primary Styles ========================================================
   Author:
   ========================================================================== */

h1 {
	font-size: 2.25em;
	text-align: center;
	color: #fff;
	font-weight: 100;
}

article > header > p {
	font-size: 2.25em;
	border-bottom: 1px #676767 solid;
	border-top: 1px #676767 solid;
	line-height: 1.2em;
	padding: 1em 0;
	text-align: center;
}

section {
	display: block;
}

section li {
	margin-bottom: 1em;
}


section h2 {
	border-top: #ffdc00 4px solid;
	font-size: 2em;
	padding-top: .5em;
	display: block;
}

section h3 {
	margin-bottom: .25em;
}

section ul.image-list li {
	list-style-type: none;
	margin-bottom: 2em;
}

section ul.image-list img {
	margin-bottom: 1em;
}

article section img {
	margin-right: 1em;
}

.half {
	width: 50%;
}

ul.four-col {
	margin-top: 0;
}

ul.four-col li{
	list-style-type: none;
	padding: 0 2% 2% 2%;
	margin: 0;
}

ul.four-col li h3{

	margin: 0;

}

.with-images img + p {
	font-weight: bold;
}

/* Call out style */

p.quote {
	font-size: 1.75em;
	width: 96%;
	line-height: 1.2em;
	background: #ddd;
	border-left: 8px #676767 solid;
	padding: 2%;
	font-family: Georgia, serif;
	font-style: oblique;
}




/* ============================================================================================================================
== BUBBLE WITH AN ISOCELES TRIANGLE
** ============================================================================================================================ */

/* THE SPEECH BUBBLE
------------------------------------------------------------------------------------------------------------------------------- */


/* ============================================================================================================================
== TWITTER
** ============================================================================================================================ */

.example-twitter {
	position:relative;
	padding:30px;
	margin:0 0 0.5em;
	color:#333;
	background:#ddd;
	/* css3 */
	-webkit-border-radius:0 0 10px 10px;
	-moz-border-radius:0 0 10px 10px;
	border-radius:0 0 10px 10px;
}

.example-twitter p {font-size:28px; line-height:1.25em;}


/*
creates the triangle
.example-twitter:after {
	content:"";
	position:absolute;
	top:-30px;
	left:50px;
	border:15px solid transparent;
	border-bottom-color:#ddd;

    display:block; 
    width:0;
}
*/

/* display of quote author (alternatively use a class on the element following the blockquote) */
.example-twitter + p {padding-left:15px; font:14px Arial, sans-serif;}



/* MOsaic styles */

.details{ margin:15px 20px; }	
.mosaic-block h4{ font:300 16px  line-height:160%; letter-spacing:0.15em; color:#fff; text-shadow:1px 1px 0 rgb(0,0,0); }
.mosaic-block p{ font:300 12px  color:#aaa; text-shadow:1px 1px 0 rgb(0,0,0);}
.mosaic-block a{ text-decoration:none; }





/* =============================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 480px) {

/* ====================
    INTERMEDIATE: Menu
   ==================== */
	
	nav a{
		float:left;
		margin:0 1.7%;
		padding:.5em;
		margin-bottom:0;
		margin-top: 1em;
		background: #FFF;
		transition: background 200ms linear 0s;
		-moz-transition: background 200ms linear 0s;
		-webkit-transition: background 200ms linear 0s;
		border-radius: .5em;

	}
	
	nav a:hover{
		background: #FFDC00;
		transition: background 200ms linear 0s;
		-moz-transition: background 200ms linear 0s;
		-webkit-transition: background 200ms linear 0s;
		transition: color 200ms linear 0s;
		-moz-transition: color 200ms linear 0s;
		-webkit-transition: color 200ms linear 0s;
		text-decoration: none;
	}
	
	nav li:first-child a{ margin-left:0;  }
	nav li:last-child  a{ margin-right:0; }
	
	
		
		/* 	==============
	Contact Form
	============== */
	
	form {
	    margin: 4% 0;
	    padding: 4%;
	    background: #fff;
	    border: 1px #ccc solid;
	}
	
	.input-group input, .input-group select {
	    border: 1px solid #C3CBD3;
	    border-radius: 3px 3px 3px 3px;
	    display: block;
	    font-family: "Helvetica Neue",Arial,sans-serif;
	    font-size: 1em;
	    margin-bottom: 16px;
	    padding: 10px;
	    width: 80%;
	}
	
	form div.personal-details {
		width: 40%;
		float: left;
	}
	
	form div.message {
		width: 58%;
		float: right;
	}
	
	form div.message textarea {
		width: 90%;
		padding: 10px;
		background: #F7F7F7;
		border: 1px #ccc solid;
	}
	
	form div.submit {
		width: 100%;
		background: #444;
	}
	
	div.message > input {
		float: right;
		margin: 2%;
	}
	
	
/* ========================
    INTERMEDIATE: IE Fixes
   ======================== */

	nav ul li{
		display:inline;
	}	
	.oldie nav a{
		margin:0 0.7%;		
	}
	
}

@media only screen and (min-width: 768px) {

/* ====================
    WIDE: CSS3 Effects
   ==================== */
   
   .contact-details p {
	width: 46%;
	margin: 0 auto;
	text-align: center;
}


/* ============
    WIDE: Menu
   ============ */
	
	#title{
		float:left;
	}

	nav{
		float:right;
		width:84%;
	}

/* ============
    WIDE: Main
   ============ */

	#main article{
		float:left;
		width:100%;
	}
	
		/*	=======
		Our Approach
		======= */
		
	#our-approach div > article {
		width: 46%;
		float: left;
	}
	
	#our-approach ul {
		width: 46%;
		float: right;
	}
	
		/* =====
		Layout
		===== */
		
	article section img {
		float: left;
	}
	
	ul.four-col li {
		width: 21%;
		float: left;
	}
	
	.third {
		width: 30%;
	}
	
	footer section {
		width: 23%;
		padding: 0 1%;
		float: left;
	}
	
	footer section li{
		margin-left: 2em;
	}
	
	footer section form{
		background: #545454;
		border: 1px #444 solid;
		-moz-box-shadow: 0 0 5px 3px #545454;
		-webkit-box-shadow: 0 0 5px 3px #545454;
		box-shadow: 0 0 5px 3px #545454;
	}
	
	footer section form label {
		color: #bbb;
	}
	
	footer section form input, footer section form textarea {
		background: #444;
		border: 1px #111 solid;
		color: #bbb;
		padding: .5em;
	}
	
	footer section form .button {
		float: right;
		margin-top: 8%;
	}
	
	footer section form .button {
		-moz-box-shadow:inset 0px 1px 0px 0px #111;
		-webkit-box-shadow:inset 0px 1px 0px 0px #111;
		box-shadow:inset 0px 1px 0px 0px #111;
		background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #444), color-stop(1, #222) );
		background:-moz-linear-gradient( center top, #444 5%, #222 100% );
		filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#444', endColorstr='#222');
		background-color:#ffec64;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		border:1px solid #666;
		display:inline-block;
		color:#ddd;
		font-family:arial;
		font-size:15px;
		font-weight:bold;
		padding:6px 24px;
		text-decoration:none;
		text-shadow:1px 1px 0px #000;
	}

	.button:hover {
		background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #666), color-stop(1, #222) );
		background:-moz-linear-gradient( center top, #666 5%, #222 100% );
		filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#666', endColorstr='#222');
		background-color:#ffab23;
	}
	
	section .mosaic-block {
		width:46%;
	}

	
	/* =================
		web build section
		+++++++++++++++++++
	*/
		
	
	#web-build section {
		display: block;
	}
	
	#web-build section p {
		width: 33%;
		float: left;
	}
	
	#web-build section p.quote {
		width: 96%;
	}
	
	#web-build aside {
		width: 64%;
		float: right;
	}
	
	#web-build aside h3 {
		background: #a7a7a7;
		color: #eee;
		padding: .5em;
		webkit-border-radius:10px 10px 0 0 ;
		-moz-border-radius:10px 10px 0 0 ;
		border-radius:10px 10px 0 0 ;
		margin-bottom: 0;
		border-bottom: 1px #444 solid;
		
	}
	
	/* ======
	With Images
	============ */
	.with-images img {
		width: 30%;
		float: right;
	}
	
	.with-images p {
	width: 60%;
	}
	
	.with-images p.quote {
	width: 96%;
	}
	
	.with-images img {
	padding: 0 0 20px 40px;
	}

	/*	=====
		Case Studies
		===== */
		
		#case-study section.clearfix div {
			width: 46%;
			padding: 0 2%;
			float: left;
		}





}

@media only screen and (min-width: 1140px) {

/* ===============
    Maximal Width
   =============== */

	.wrapper{
		width:1026px; /* 1140px - 10% for margins */
		margin:0 auto;
	}
}



/* =============================================================================
   Non-Semantic Helper Classes
   ========================================================================== */

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

/* =============================================================================
   Print Styles
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}



/*	=================
	Image SLider
	================= */

#full-width-slider {
  width: 100%;
}
.coloredBlock {
  padding: 12px;
  background: rgba(255,0,0,0.6);
  color: #FFF;
   width: 200px;
   left: 20%;
   top: 5%;
}
.infoBlock {
  position: absolute;
  top: 30px;
  right: 30px;
  left: auto;
  max-width: 25%;
  padding-bottom: 0;
  background: #FFF;
  background: rgba(255, 255, 255, 0.8);
  overflow: hidden;
  padding: 20px;
}
.infoBlockLeftBlack {
  color: #FFF;
  background: #000;
  background: rgba(0,0,0,0.75);
  left: 30px;
  right: auto;
}
.infoBlock h4 {
  font-size: 20px;
  line-height: 1.2;
  margin: 0;
  padding-bottom: 3px;
}
.infoBlock p {
  font-size: 14px;
  margin: 4px 0 0;
}
.infoBlock a {
  color: #FFF;
  text-decoration: underline;
}
.photosBy {
  position: absolute;
  line-height: 24px;
  font-size: 12px;
  background: #FFF;
  color: #000;
  padding: 0px 10px;
  position: absolute;
  left: 12px;
  bottom: 12px;
  top: auto;
  border-radius: 2px;
  z-index: 25; 
} 
.photosBy a {
  color: #000;
}
.fullWidth {
  max-width: 1400px;
  margin: 0 auto 24px;
}

@media screen and (min-width:960px) and (min-height:660px) {
  .heroSlider .rsOverflow,
  .royalSlider.heroSlider {
      height: 400px !important;
  }
}

@media screen and (min-width:960px) and (min-height:1000px) {
    .heroSlider .rsOverflow,
    .royalSlider.heroSlider {
        height: 400px !important;
    }
}
@media screen and (min-width: 0px) and (max-width: 800px) {
  .royalSlider.heroSlider,
  .royalSlider.heroSlider .rsOverflow {
    height: 300px !important;
  }
  .infoBlock {
    padding: 10px;
    height: 100%;
    max-height: 100%;
    min-width: 40%;
    left: 0;
    top: 0;
    right: auto;
    font-size: 12px;
  }
  .infoBlock h3 {
     font-size: 14px;
     line-height: 17px;
  }
}
