/* Reset styles */
:link,:visited {text-decoration: none;}
ul,ol {list-style: none;}
h1,h2,h3,h4,h5,h6,pre,code,p {font-size: 1em;}
ul,ol,dl,li,dt,dd,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input {margin: 0; padding: 0;}
a img,:link img,:visited img {border: none;}
address {font-style: normal;}

/* Fonts */

@font-face {
    font-family: 'Diavlo';
    src: url('fonts/diavlo_light_ii_37-webfont.eot');
    src: url('fonts/diavlo_light_ii_37-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/diavlo_light_ii_37-webfont.woff') format('woff'),
         url('fonts/diavlo_light_ii_37-webfont.ttf') format('truetype'),
         url('fonts/diavlo_light_ii_37-webfont.svg#DiavloLight') format('svg');
    font-weight: normal;
    font-style: normal;

}

/* Headings */

h1, h2, h3, h4, h5, h6 {
	margin: 20px 0px 10px 0;
	font-weight: normal;
}

h1 {
	font: 41px Diavlo;
	line-height: 1em;
	text-transform: uppercase;
	letter-spacing: -1px;
	color: #706a97;
	margin: 0 0 28px -30px;
	background: url('../i/h1-shadow.png') no-repeat 0 100%;
	padding: 0 0 28px 30px;
}

h2 {
	font: 30px Diavlo;
	line-height: 1em;
	text-transform: uppercase;
	letter-spacing: -1px;
	color: #8a81bf;
	margin: 0 0 25px 0;
}

h4 {
	font: 18px Arial, Helvetica, sans-serif;
	color: #82acd4;
	margin: 0 0 3px 0;
}

h4 a:link, h4 a:visited {
	color: #82acd4;
	text-decoration: none;
}

h4 a:hover {
	color: #706a97;
}

h5 {
	font: bold 14px Arial, Helvetica, sans-serif;
	color: #5a5a5a;
	text-transform: uppercase;
	margin: 0 0 10px 0;
	line-height: 1em;
}

/* Links */

a:link, a:visited, a:active {
	color: #6886bc;
	text-decoration: underline;
}

a:hover {
	color: #6886bc;
	text-decoration: none;
}

/* Paragraphs */
 
p {
	margin: 0 0 15px 0;
	line-height: 1.5em;
}

/* Lists */

.content ul {
	margin: 0 0 10px 9px;
}

.col-right ul {
	margin: 0 0 10px 0;
}

.content li, .col-right li {
	background: url('../i/marker.png') no-repeat 0 -197px;
	font: 14px Arial, Helvetica, sans-serif;
	color: #5a5a5a;
	padding: 0 0 0 21px;
	margin: 0 0 5px 0;
}

/* Clearfix */

.clearfix:after {
    content:"."; 
    display:block; 
    height:0; 
    clear:both; 
    visibility:hidden;
}

.clearfix {
    display:inline-block;
}

.clearfix {
    display:block;
}

* html .clearfix {
    height: 1%;
}

.clear {
	clear: both;
	height: 0px;
	font-size: 1px;
	line-height: 0;
	overflow: hidden;
}

/* Layout */

body {
	font: 14px Arial, Helvetica, sans-serif;
	color: #5a5a5a;
	background: #FFF url('../i/page-bg-repeat.jpg') repeat-x;
	-webkit-text-size-adjust: none;
}

.outer {
	background: url('../i/page-bg.jpg') no-repeat 50% 0;
	overflow: hidden;
}


.all {
	width: 940px;
	margin: 0 auto;
}

/* Header */

.header {
	position: relative;
	overflow: hidden;
	margin: 0 0 17px 0;
}

.logo {
	margin: 17px 0 0 3px;
}

/* Menu */

.menu {
	position: absolute;
	top: 51px;
	right: 5px;
}

.menu li {
	float: left;
	display: inline;
	font: bold 13px Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	margin: 0 0 0 1px;
}

.menu a:link, .menu a:visited {
	color: #4c699c;
	float: left;
	display: inline;
	height: 24px;
	line-height: 24px;
	padding: 0 8px;
	text-decoration: none;
}

.menu a:hover {
	color: #FFF;
}

.menu li.current a:link, .menu li.current a:hover, .menu li.current a:visited {
	background: #9b94c6;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	color: #FFF;
}

.homepage .all {
	background: url('../i/homepage-bg.png') no-repeat 0 126px;
}

/* Top pic */

.top-pic {
	padding: 10px;
	float: left;
	display: inline;
	/*background: url('../i/top-pic-bg.png');
	border-radius: 9px;
	-moz-border-radius: 9px;
	-webkit-border-radius: 9px;*/
	position: relative;
}

.slider-no-js .slider { height: 292px; overflow: auto !important; }
.slider, .slider .panel { width: 631px; height: 292px; } 
.slider-wrapper { clear: both; }
.slider { float: left; overflow: hidden; position: relative }
.panel { display: block; float: left; }
.panel-container { position: relative }

.top-pic img {
	border-radius: 9px;
	-moz-border-radius: 9px;
	-webkit-border-radius: 9px;
}

.pic-caption {
	position: absolute;
	bottom: 43px;
	left: 10px;
	height: 50px;
	background: #6886bc;
	font: 22px Diavlo;
	text-transform: uppercase;
	color: #FFF;
	line-height: 50px;
	padding: 0 15px;
	word-spacing: -1px;
}

/* Welcome */

.welcome {
	margin: 0 0 17px 0;
}

/* Our Expertise */

.expertise {
	float: left;
	display: inline;
	margin: 0 0 0 15px;
	padding: 0 0 0 5px;
	width: 265px;
}

.expertise h1 {
	margin: 0 0 12px -5px;
	background: transparent;
	padding: 0;
}

.expertise-list li {
	font-size: 16px;
	font-weight: bold;
	color: #82acd4;
	padding: 0 0 0 38px;
	margin: 0 0 11px 0;
	background: url('../i/marker.png') no-repeat 14px -97px;
}

.expertise-list li.color {
	background-position: 14px 3px;
}

/* Boxes */

.boxes {
	background: url('../i/shadow.png') no-repeat 0 40px;
}

.box {
	float: left;
	display: inline;
	width: 290px;
	margin: 0 30px 0 0;
}

.box h2 {
	margin: 0 0 35px 0;
}

.project-pic {
	float: left;
	display: inline;
	border: 4px solid #8ab0d7;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px; 
	margin: 0 0 0 2px;
}

.project-info {
	float: left;
	display: inline;
	width: 200px;
	margin: 5px 0 0 10px;
	font-size: 13px;
	color: #5a5a5a
}

.projects {
	margin: 0 !important;
}

.projects li {
	clear: both;
	width: 100%;
	margin: 0 0 10px 0 !important;
	background: transparent !important;
	padding: 0 !important;
}

.projects li:before {content: "."; display: block; height: 0; clear: both; visibility:hidden;}
.projects li:after {content: "."; display: block; height: 0; clear: both; visibility:hidden;}
* html .projects li {height: 1%;}

/* Button */

.button a:link, .button a:visited, input.button {
	background: #82b9da;
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
	color: #FFF;
	float: left;
	display: inline;
	padding: 0 11px;
	height: 25px;
	line-height: 25px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	text-decoration: none;
	border: 0px solid transparent;
	cursor: pointer;
}

.button a:hover, input.button:hover {
	background: #9b94c6;
}

.box .inner {
	height: 164px;
}

.box p {
	line-height: 1.5em;
}

.button big {
	font-size: 20px;
	float: left;
	display: inline;
}

.button .fleft {
	float: left;
	display: inline;
	margin: 5px 0 0 5px;
	line-height: 14px;
}

#clients-box {
	width: 260px;
	margin: 0 0 0 30px;
}

.clients {
	margin: 0 !important;
}

.clients li {
	float: left;
	display: inline;
	background: #8ab0d7 !important;
	padding: 4px !important;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	margin: 0 10px 10px 0 !important;
	display: table; height: 61px; #position: relative; overflow: hidden;
}

.clients li div {
	width: 112px;
	height: 61px;
	background: #FFF;
	text-align: center;
	#position: absolute; #top: 50%;display: table-cell; vertical-align: middle;
}


.clients img {
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	#position: relative; #top: -50%;
}


/* Footer */

.footer {
	font-size: 12px;
	color: #706a97;
	background: url('../i/footer-shadow.gif') no-repeat;
	padding: 12px 0 40px 0;
	margin: 40px 0 0 0;
	line-height: 1.5em;
}

.footer a:link, .footer a:visited {
	color: #706a97;
	text-decoration: underline;
}

.footer a:hover {
	text-decoration: none;
}

.copyright {
	float: right;
	display: inline;
	text-align: right;
}

/* Columns */

.columns {
	background: url('../i/columns-bg.png') repeat-x;
	border-radius: 9px;
	-moz-border-radius: 9px;
	-webkit-border-radius: 9px;
}

.content {
	float: left;
	display: inline;
	margin: 35px 0 0 0;
	padding: 0 0 0 30px;
	width: 620px;
}

.wrapper {
	margin: 0 55px 0 5px;
}

.sidebar {
	float: left;
	display: inline;
	width: 260px;
	margin: 35px 0 0 15px;
}

/* Reasons */

.reason {
	margin: 0 0 17px 0;
}

.number {
	float: left;
	display: inline;
	background: #8ab0d7;
	padding: 6px;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	margin: 7px 0 0 0;
}

.number span {
	float: left;
	display: inline;
	background: #FFF;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	font: bold 22px Diavlo;
	color: #8a81bf;
	width: 28px;
	height: 28px;
	line-height: 28px;
	text-align: center;
}

.info {
	float: left;
	display: inline;
	width: 500px;
	margin: 0 0 0 15px;
}

.reason ul li {
	margin: 0 0 12px 0;
}

/* Clients in the sidebar */

.sidebar-clients h2 {
	margin: 0 0 19px 0;
}

.sidebar-clients .clients {
	margin: 0 0 5px 0;
}

/* Boxes on internal page */

.content .boxes {
	margin: 60px 0 0 -30px;
	background: url('../i/shadow-small.png') no-repeat 0 40px;
}

/* Clients page */

.clients-big {
	margin: 32px 0 0 8px !important;
}

.clients-big li {
	float: left;
	display: inline;
	background: #8ab0d7;
	padding: 5px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 0 0 20px 24px;
	display: table; height: 80px; #position: relative; overflow: hidden;
}

.clients-big li div {
	width: 147px;
	height: 80px;
	background: #FFF;
	text-align: center;
	#position: absolute; #top: 50%;display: table-cell; vertical-align: middle;
}

.clients-big img {
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	#position: relative; #top: -50%;
}

.sidebar .expertise-list {
	margin: -12px 0 0 0 !important;
}

.sidebar .expertise-list li {
	padding: 0 0 0 23px;
	margin: 0 0 11px 0;
	background-position: 0 -97px;
}

.sidebar .expertise-list li.color {
	background-position: 0 3px;
}

/* Contact form */

.contact-columns {
	margin: 0 0 0 5px;
	padding: 0 0 15px 0;
}

.contact-details {
	float: left;
	display: inline;
	width: 240px;
}

.contact-details p {
	line-height: 1.8em;
	margin: 0 0 24px 0;
}

.contact-form {
	float: left;
	display: inline;
	width: 355px;
	margin: 4px 0 0 0;
}

/* Form */

.form p {
	margin: 0 0 35px 10px;
	line-height: 1.7em;
}

.label {
	float: left;
	display: inline;
	width: 87px;
	text-align: right;
	font: bold 14px Arial, Helvetica, sans-serif;
	color: #666666;
	margin: 6px 0 0 0;
	text-transform: uppercase;
}

.formw {
	float: left;
	display: inline;
	width: 228px;
	margin: 0 0 0 12px;
}

.text {
	background: url('../i/text-bg.gif') no-repeat;
	width: 239px;
	border: 0px solid transparent;
	font: 14px Arial, Helvetica, sans-serif;
	color: #919aa7;
	padding: 7px 10px;
}

.textarea {
	background: url('../i/textarea-bg.gif') repeat-y;
	width: 259px;
	height: 110px;
}

.textarea textarea {
	border: 0px solid transparent;
	background: transparent;
	margin: 7px 0 7px 10px;
	font: 14px Arial, Helvetica, sans-serif;
	color: #919aa7;
	width: 239px;
	height: 96px;
}

.line {
	clear: both;
	width: 100%;
	margin: 0 0 12px 0;
}

.line:before {content: "."; display: block; height: 0; clear: both; visibility:hidden;}
.line:after {content: "."; display: block; height: 0; clear: both; visibility:hidden;}
* html .line {height: 1%;}

.captcha img {
	border: 1px solid #9dabb8;
	margin: 0 0 10px 0;
}

#captcha {
	background: url('../i/captcha-bg.gif') no-repeat;
	width: 89px;
}

/* Completed projects */

.headline {
	padding: 35px 0 7px 30px;
}

.headline h1 {
	background: url('../i/shadow.png') no-repeat -15px 100%;
}

.col-left {
	float: left;
	display: inline;
	margin: 0 0 0 18px;
	width: 211px;
}

.col-right {
	float: left;
	display: inline;
	margin: 0 0 0 35px;
	width: 650px;
}

.col-left h2, .col-right h2 {
	margin: 0 0 15px 0;
}

/* Submenu */

.submenu a:link, .submenu a:visited {
	display: block;
	background: #82b9da;
	font: bold 12px Arial, Helvetica, sans-serif;
	color: #FFF;
	text-decoration: none;
	text-transform: uppercase;
	height: 25px;
	line-height: 25px;
	padding: 0 0 0 10px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	margin: 0 0 6px 0;
}

.submenu a:hover, .submenu li.current a:link, .submenu li.current a:visited {
	background: #9b94c6;
}

.client-logo {
	float: right;
	display: inline;
	background: #8ab0d7;
	padding: 5px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: -8px 40px 0 0;
	text-align: center;
	display: table; height: 80px; #position: relative; overflow: hidden;
}

.client-logo div {
	width: 147px;
	height: 80px;
	background: #FFF;
	text-align: center;
	#position: absolute; #top: 50%;display: table-cell; vertical-align: middle;
}

.client-logo img {
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	#position: relative; #top: -50%;
}

/* Slideshow */

.slideshow-wrapper {
	margin: 27px 0 0 0;
	border: 8px solid #8ab0d7;
	background: #8ab0d7;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	width: 634px;
	overflow: hidden;
	height: 330px;
	padding: 0 0 3px 0;
}

.slideshow-container {
	width: 634px;
	height: 295px;
	position: relative;
}

div.slideshow-container,
div.loader,
div.slideshow a.advance-link {
	width: 634px; /* This should be set to be at least the width of the largest image in the slideshow with padding */
}

div.loader,
div.slideshow a.advance-link,
div.caption-container {
	height: 295px; /* This should be set to be at least the height of the largest image in the slideshow with padding */	
}

div.loader {
	position: absolute;
	top: 0;
	left: 0;
	background-image: url('../i/loader.gif');
	background-repeat: no-repeat;
	background-position: center;
}

div.slideshow span.image-wrapper {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
div.slideshow a.advance-link {
	display: block;
	line-height: 295px; /* This should be set to be at least the height of the largest image in the slideshow with padding */
	text-align: center;
}

div.slideshow a.advance-link:hover,
div.slideshow a.advance-link:active,
div.slideshow a.advance-link:visited {
	text-decoration: none;
}
div.slideshow a.advance-link:focus {
	outline: none;
}

div.slideshow img {
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}
div.caption-container {
	position: relative;
	color: #FFF;
}
span.image-caption {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

div.caption-container {
	
}

div.caption {
	margin: 14px 0 0 3px;
}

div.image-title {
	font-weight: bold;
	font-size: 1.4em;
}
div.image-desc {
	line-height: 1.3em;
	padding-top: 12px;
}
div.download {
	margin-top: 8px;
}
div.photo-index {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 0 12px;
}

/* Thumbnails */

.thumbs {
	margin: 18px 0 34px -17px !important;
	height: 89px;
}

.thumbs li {
	float: left;
	display: inline;
	background: transparent;
	padding: 0;
	border: 5px solid #8ab0d7;
	background: #8ab0d7;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	margin: 0 0 0 17px;
}

.thumbs li img {
	float: left;
	display: inline;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}
.error{
	background-color: #F99;
	padding: 15px;
	border: 1px solid #C30;
}