/* 

COLORS 
Yellow: #f3ce05
Pink: #FB2378
Turq: #00CCCC
Green: #94bf00

*/

/* RESET */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, input, textarea {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section { 
    display:block;
}

ul, ol { list-style:none; }

a { margin:0; padding:0; font-size:100%; text-decoration:none; vertical-align:baseline; background:transparent; }
ins { background-color:#ff9; color:#000; text-decoration:none; }
mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
	
/* CLEARFIX */

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	}
* html .clearfix { zoom: 1; } /* IE6 */
*:first-child+html .clearfix
 { zoom: 1; } /* IE7 */

/* BASIC STUFF */

html {overflow-y: scroll;}

body, input, textarea {
	background:#fff;
	color:#666;
	font: 13px Arial, Verdana, Helvetica;
}

a, a:visited, a:active {
	color:#333;
	text-decoration:none;
	font-weight:bold;
	-webkit-transition: color 0.2s linear;
	-moz-transition: color 0.2s linear;
	-o-transition: color 0.2s linear;
	transition: color 0.2s linear;
}

a:hover {
	color: #00cccc;
}

h1 {
	font:bold 30px Rockwell, Calibri, Arial, Verdana, Helvetica;
	letter-spacing:-1px;
	margin-bottom:1em;
	color:#333;
}

h2 {
	font: normal 30px Rockwell, Calibri, Arial, Verdana, Helvetica;
	margin-bottom:1em;
	color:#333;
	letter-spacing:-1px;
}

h3 {
	font-size:18px;
	margin-bottom:1em;
	font-weight:normal;
}

p, ul, ol {
	line-height:1.5em;
}

p {
	margin-bottom:1.5em;
}

/* MAIN BLOCKS */

#header {
	height:150px;
	width:960px;
	margin: auto;
}

#section {height:355px;}

#page_company #section {background: #2b2b2b url(images/sec_home.png) no-repeat center;}
#page_services #section {background: #2b2b2b url(images/sec_palvelut.png) no-repeat center;}
#page_references #section {background: #2b2b2b url(images/sec_referenssit.png) no-repeat center;}
#page_contact #section {background: #2b2b2b url(images/sec_yhteystiedot.png) no-repeat center;}
#page_maintenance #section {background: #2b2b2b url(images/sec_maintenance.png) no-repeat top center;}
#page_notfound #section {background: #2b2b2b url(images/sec_notfound.png) no-repeat top center;}

#content {
	background: #ffffff;
	width:960px;
	margin:auto;
	padding-bottom:0px;
}

#bottom {
	background: #212121 url(images/bg_bottom.png) repeat-x bottom;
	height:343px;
}

#footer {
	width:960px;
	height:343px;
	margin:auto;
	background: transparent url(images/bg_footer.png) no-repeat bottom;
}

/* HEADER & NAV */

#logo {
	float:left;
	margin-top:30px;
}

#nav {
	float:right;
	width: 650px;
	text-align: center;
}

#nav li {
	float: left;
	display: block;
	text-align: center;
}

#nav a {
	display: block;
	float: left;
	height:66px;
	width: 130px;
	color: #898b89;
	font-weight: normal;
	font-size: 17px;
	font-family:Rockwell, Calibri, Arial, Verdana, Helvetica;
	padding: 85px 0 0 0;
}

#nav a span {
	display: block;
	font-size: 13px;
	font-family: Calibri, Arial, Helvetica, sans-serif;
	color: #cccccc;
	-webkit-transition: color 0.2s linear;
	-moz-transition: color 0.2s linear;
	-o-transition: color 0.2s linear;
	transition: color 0.2s linear;
}

#nav a:hover {

}

a:hover#nav_company span, #page_company #nav_company span { color: #f3ce05 }
a:hover#nav_services span, #page_services #nav_services span { color: #94bf00 }
a:hover#nav_references span, #page_references #nav_references span { color: #00CCCC }
a:hover#nav_contact span, #page_contact #nav_contact span { color: #FB2378 }

#page_company #nav_company,
#page_services #nav_services,
#page_references #nav_references,
#page_contact #nav_contact {
	background: #2b2b2b url(images/nav_bg.png) repeat-x;
	color: #fff;
}

#lang a:hover span {
	color: #00CCCC;
}

a#nav_company { background-position: 0 0; }
a#nav_services { background-position: -130px 0; }
a#nav_references { background-position: -260px 0; }
a#nav_contact { background-position: -390px 0; }

a:hover#nav_company { background-position: 0 -150px; }
a:hover#nav_services { background-position: -130px -150px; }
a:hover#nav_references { background-position: -260px -150px; }
a:hover#nav_contact { background-position: -390px -150px; }

#page_company #nav_company { background-position: 0 -300px; }
#page_services #nav_services { background-position: -130px -300px; }
#page_references #nav_references { background-position: -260px -300px; }
#page_contact #nav_contact { background-position: -390px -300px; }

/*a#nav_company { background-position: 0 0; }
a#nav_services { background-position: -130px 0; }
a#nav_references { background-position: -260px 0; }
a#nav_contact { background-position: -390px 0; }

a:hover#nav_company { background-position: 0 -150px; }
a:hover#nav_services { background-position: -130px -150px; }
a:hover#nav_references { background-position: -260px -150px; }
a:hover#nav_contact { background-position: -390px -150px; }

#page_company #nav_company { background-position: 0 -300px; }
#page_services #nav_services { background-position: -130px -300px; }
#page_references #nav_references { background-position: -260px -300px; }
#page_contact #nav_contact { background-position: -390px -300px; }*/

#nav span {
	
}

/*#nav span {
	display: none;
}*/


/* CONTENT BLOCKS */

.col, .col2, .news, .col4, #refelist {
	padding:40px 0px;
	border-top:1px dashed #999;
}

.col2 div {
	float:left;
	width:460px;
	margin-right:40px;
}

.col2 p {
	text-align:justify;
}

/* HOME */

.intro {width:530px;}
.intro p {text-align:justify;}
.intro h1 {font-weight:normal;}

.introbox {
	width:255px;
	float:left;
	padding-right:40px;

}

.newsbox {
	width:195px;
	float:left;
	height: 180px ;
	margin-right:40px;
	padding-bottom:30px;
	background: transparent url(images/box_shadow.png) bottom center no-repeat;
}

.newsbox h3 {
	background:#00cccc;
	color:#fff;
	font-size:15px;
	padding:6px;
	margin:0;
	padding-left:15px;
}

.newsbox p {
	background:#333;
	color:#f7f7f7;
	padding:15px;
	height:125px;
}

.newsbox a {color:#fff;}

.newsbox a:hover {color:#00cccc;}

.readmore {
	display:block;
	margin-top:10px;
	text-align:right;
}

.case { 
	width: 193px; 
	height: 193px; 
	margin-right:40px; 
	float:left; 
	display: block;
	border:1px solid #999;
	overflow: hidden; 
	position: relative; 
}

.case img, #page_company .case img:hover { 
	position: absolute; 
	top: 0; 
	left: 0; 
	border: 0; 
}

#page_company .case img { 
	position: absolute; 
	top: -195px; 
	left: 0; 
	border: 0; 
}

.boxcaption { 
	float: left; 
	position: absolute; 
	background: #323232; 
	height: 100px; 
	width: 100%; 
	}
	
.boxcaption h3 {
	color: #fff;
	font-family:Rockwell, Calibri, Arial, Verdana, Helvetica;
	line-height:50px;
	padding-left: 10px;
	font-weight:normal;
}



.captionfull .boxcaption {
	top: 195px;
	left: 0;
}
.caption .boxcaption {
	top: 100px;
	left: 0;
}

/* SERVICES */

.col5 div {
	float:left;
	width:165px;
	margin-right:33px;
	margin-bottom:20px;
}

/* REFERENCES */

#page_references h1 {color:#00cccc;margin-top:40px;}

#refelist .case {
	margin-right:60px;
	margin-bottom:60px;
}

#refelist {display: block}
#refelist .noborder, .noborder {border:1px solid #fff;}
#refelist img, .arrowleft img, .arrowright img {position:absolute;}
#refelist .last, #refelistintro .last {margin-right:0px;}

.col4 div {
	float:left;
	width:195px;
	margin-right:60px;
}

#refenavi h1 {
	float:left;
	margin-bottom:1em;
	padding-left:1em;
}

.arrowright {
	float:right;
	background:#cccccc;
	height:45px;
	width:45px;
	margin-top:35px;
	overflow:hidden;
	position:relative;
}

.arrowright img {margin-left:-45px;}

.arrowleft {
	float:left;
	background:#cccccc;
	height:45px;
	width:45px;
	margin-top:35px;
	overflow:hidden;
	position:relative;
}

a:hover.arrowleft, a:hover.arrowright  {background:#333;}

/* CONTACT */
#page_contact h1, #page_contact h2 {color:#fb2378}


.intro {
	padding-bottom:40px;
	padding-top:40px;
}

#contactinfo  {
	padding-bottom:0px;
	padding-top:40px;
	
}

.staff {
	border-left:1px dashed #999;
}

.staff ul {
	float:left;
	width:210px;
	margin: 0 31px 40px 0;
}

.staff img {
	margin: 0 0 10px 0;
}

.middle {margin-left:50px;margin-right:60px;}

.company {
	width: 215px;
	float:left;
	height: 390px;
	
	}

.company h3 {
	margin-top: 40px;
}

.regref {
	font-weight: normal;
}

.staff {

	padding-left:40px;
	width:694px;
	float:left;
}

.half {width:48%;}

#refenavi h1 span {color:#999;font-size:0.7em;padding-left:20px;}

/* NEWS */

.news {width:500px;}

/* FOOTER */

.footerbox {
	float:left;
	width:160px;
	padding-top:60px;
	margin-right:0em
}



#footer, #footer a {
	color:#fff;
	font-weight:normal;
}

#footer a:hover {
	color:#00cccc;
	font-weight:normal;
}

#footer h3 {
	color:#999;
	font-family:calibri, arial, helvetica;
}

#footernotes {padding-top:120px;}

.blue {color:#00cccc;}

.social {margin-left:80px;}

.fb {
	background: transparent;
	background-image:url(images/social_fb.gif);
	background-position:left middle;
	background-repeat:no-repeat;
	height:30px;
	padding-left:40px;
	line-height:30px;
}

.tw {
	background: transparent;
	background-image:url(images/social_tw.gif);
	background-position:left middle;
	background-repeat:no-repeat;
	height:30px;
	padding-left:40px;
	line-height:30px;
}

/* DETAILS */


.ingres {color:#333;}
.left {float:left;}
.right {float:right;}
.clr {clear:both;}
.line {border-bottom:1px dashed #999;}
.col4 .last {margin-right:0px;}
.col5 .last {margin-right:0px;}
.col2 .last {margin-right:0px;}
.col .last {margin-right:0px;}
ul.last {margin-right:0px;}
#contactform .last {margin-right:0px;}
.last ul {margin-right:0px;}
.fix {margin-right:5px;}



.bold {font-weight:bold;}

.firsth {padding-top:40px;}

h2 span {
	color:#ccc;
	padding-left:20px;
	float:right;
}

/* NIVO SLIDER*/

.nivoSlider {
	position:relative;
}
.nivoSlider img {
	position:absolute;
	top:0px;
	left:0px;
}

.nivoSlider a.nivo-imageLink {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	border:0;
	padding:0;
	margin:0;
	z-index:60;
	display:none;
}

.nivo-slice {
	display:block;
	position:absolute;
	z-index:50;
	height:300px;
}

.nivo-caption {
	position:absolute;
	left:0px;
	bottom:0px;
	background:#111;
	color:#fff;
	width:100%;
	z-index:89;
	margin-bottom: 20px;
}
.nivo-caption p {
	padding:15px;
	margin:0;
}

.nivo-directionNav a {
	position:absolute;
	top:43%;
	z-index:99;
	cursor:pointer;
}
.nivo-prevNav {
	left:0px;
	top:0px;
	display:block;
	height:45px;
	width:45px;
	background: url(../images/buttons/left.gif) 0px 0px;
}
.nivo-nextNav {
	right:0px;
	display:block;
	height:45px;
	width:45px;
	background: url(../images/buttons/right.gif) -45px 0px;
}

a.nivo-prevNav:hover {
background: url(../images/buttons/left.gif) -45px 0px;
}

a.nivo-nextNav:hover {
background: url(../images/buttons/right.gif) 0px 0px;
}

.nivo-controlNav {
	position:absolute;
	left:0%;
	bottom:0px;
	width:460px;
	margin-top:20px;
}

.nivo-controlNav a {
	position:relative;
	z-index:99;
	cursor:pointer;
	display:block;
	background:#ccc;
	height:11px;
	width:11px;
	float:left;
	text-indent:-9999px;
	margin-right:7px;
}

.nivo-controlNav a.active {
	background:#333;
}

#slider img, #slider2 img, #slider3 img, #slider4 img, #slider5 img, #slider6 img, #slider7 img, #slider8 img {display:none;}

#slider {
	display: block;
	margin-right:0px;
	float:right;
	height: 320px;
	background: url(images/refeloader.gif) 50% 50% no-repeat;
}

#slider2, #slider3, #slider4, #slider5, #slider6, #slider7, #slider8 {
	height:320px;
	display: block;
	margin-bottom:40px;
	margin-right:0px;
	float:left;
	background: url(images/refeloader.gif) 50% 50% no-repeat;
}
	
#referenssit div h2 {margin-bottom:0.2em;}

/* FORM */

#contact_us {
	border-top: 1px dashed #999;
	padding: 40px 0 80px 0;
}

.requiredinfo {
	color: #fb2378;
}

p.requiredinfo {
	float: right;
}

label {
	display: block;
	height: 30px;
	line-height: 30px;
	font-weight: bold;
}

label.error {
	float: right;
	color: #fb2378;
	font-weight: normal;
}

input, textarea {
	border: 1px solid #999;
	padding: 5px;
	width: 448px;
}

input:focus, textarea:focus {
	border: 1px solid #000;
	-webkit-transition: border 0.2s linear;
	-moz-transition: border 0.2s linear;
	-o-transition: border 0.2s linear;
	transition: border 0.2s linear;
}

input.error, textarea.error {
	border: 1px solid #fb2378;
}

textarea.error {
	margin-bottom: -1px;
}

fieldset {
	width: 460px;
	float: left;
}

fieldset.messagearea {
	margin-left: 40px;
}

textarea {
	height: 132px;
	margin-bottom: 29px;
}

button {
	background: #212121;
	width: 460px;
	border: none;
	height: 27px;
	color: #fff;
	line-height: 27px;
	margin: 0;
	padding:0;
	cursor: pointer;
	font-weight: bold;
}

button:hover {
	background: #fb2378;
}

#post_submit {
	background: #fb2378;
	padding: 30px 30px 10px 30px;
	color: #fff;
	margin: 0 0 30px 0;
}

#post_submit h2 {
	color: #fff;
}

/* SHADOWBOX */

#sb-title-inner,#sb-info-inner,#sb-loading-inner,div.sb-message{font-family:"HelveticaNeue-Light","Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:200;color:#fff;}
#sb-container{position:fixed;margin:0;padding:0;top:0;left:0;z-index:999;text-align:left;visibility:hidden;display:none;}
#sb-overlay{position:relative;height:100%;width:100%;}
#sb-wrapper{position:absolute;visibility:hidden;width:100px;}
#sb-wrapper-inner{position:relative;border:1px solid #303030;overflow:hidden;height:100px;}
#sb-body{position:relative;height:100%;}
#sb-body-inner{position:absolute;height:100%;width:100%;}
#sb-player.html{height:100%;overflow:auto;}
#sb-body img{border:none;}
#sb-loading{position:relative;height:100%;}
#sb-loading-inner{position:absolute;font-size:14px;line-height:24px;height:24px;top:50%;margin-top:-12px;width:100%;text-align:center;}
#sb-loading-inner span{background:url(images/loading.gif) no-repeat;padding-left:34px;display:inline-block;}
#sb-body,#sb-loading{background-color:#060606;}
#sb-title,#sb-info{position:relative;margin:0;padding:0;overflow:hidden;}
#sb-title,#sb-title-inner{height:26px;line-height:26px;}
#sb-title-inner{font-size:16px;}
#sb-info,#sb-info-inner{height:20px;line-height:20px;}
#sb-info-inner{font-size:12px;}
#sb-nav{float:right;height:16px;padding:2px 0;width:45%;}
#sb-nav a{display:block;float:right;height:16px;width:16px;margin-left:3px;cursor:pointer;background-repeat:no-repeat;}
#sb-nav-close{background-image:url(images/close.png);}
#sb-nav-next{background-image:url(images/next.png);}
#sb-nav-previous{background-image:url(images/previous.png);}
#sb-counter{float:left;width:45%;}
#sb-counter a{padding:0 4px 0 0;text-decoration:none;cursor:pointer;color:#fff;}
#sb-counter a.sb-counter-current{text-decoration:underline;}
div.sb-message{font-size:12px;padding:10px;text-align:center;}
div.sb-message a:link,div.sb-message a:visited{color:#fff;text-decoration:underline;}
