html, body {
	height: 100%;
	width: 100%;
}
body {
	background-color: #FFFFFF;
	background-image: url(images/bg.jpg);
	background-repeat: repeat-x;
	color: #333333;
	margin: 0px;
	padding: 0px;
}

body.sub {
	background-image: url(images/sub_bg.jpg);
}

.content {
	width: 630px;
	margin-left: 6px;
}
.wide .content {
	width: 940px;
}
.contentcontainer {
	padding-top: 10px;	
}
.sub .contentcontainer {
	padding-top: 30px;	
}

.main_left {
	background-image:url(images/main_left.jpg);
	background-repeat:no-repeat;
	background-position:right top;
}
.sub .main_left {
	background-image:url(images/sub_main_left.jpg);
}

.leftwebcontent {
	width: 280px;
	height: 260px;
}

.main_middle {
	background-image: url(images/main_bg.jpg);
	background-repeat: no-repeat;
	background-position:left top;
	width: 980px;
}
.sub .main_middle { 
	background-image: url(images/sub_main_bg.jpg);
}

.main_right {
	background-image: url(images/main_right.jpg);
	background-repeat:no-repeat;
	background-position:left top;
}
.sub .main_right {
	background-image: url(images/sub_main_right.jpg);
}


.hmenucontainer {
	position: relative;
	height: 94px;
}

/** BANNERIT START **/
.bannercontainer {
	position: relative;
	height: 285px;
}

.sub .bannercontainer {
	height: 156px;	
}

.bannercarousel {
	width:966px;
	height:266px;
	position:absolute;
	top: 6px;
	left: 7px;
	overflow: hidden;
}
.sub .bannercarousel {
	height: 150px;
}
.banneritem {
	position: relative;
	width:966px;
	height:266px;
	overflow: hidden;
}
.sub .banneritem {
	height: 150px;
}
.banneritem .bannertext {
	position: absolute;
	top: 40px;
	left: 47px;
	width: 580px;
	height: auto;
}
.banneritem .header {
	font-size: 36px;
	color: #FFFFFF;
	font-family: Arial, Helvetica, sans-serif;
}
.banneritem .slogan {
	font-size: 18px;
	color: #FFFFFF;
	font-family: Arial, Helvetica, sans-serif;
}
.banneritem .description {
	margin-top: 15px;
	font-size: 14px;
	color: #FFFFFF;
	font-family: Arial, Helvetica, sans-serif;
}

/* CAROUSEL CONTROLS START */
.bannernavi {
	z-index: 10;
	position: absolute; 
	top: 210px;
	left: -8px;
	height: 44px;
	width: 500px;
}
.bannernavi .left {
	float: left;
	background-image: url(images/bannernavi_left.png);
	background-repeat:no-repeat;
	background-position: top left;
	width: 8px;
	height: 44px;
}
.bannernavi .middle {
	float: left;	
	background-image: url(images/bannernavi_bg.png);
	background-repeat:repeat-x;
	background-position: top left;
	width: 450px;
	height: 44px;
}
.bannernavi .right {
	float: left;	
	background-image: url(images/bannernavi_right.png);
	background-repeat:no-repeat;
	background-position: top left;
	width: 16px;
	height: 44px;
}
#carouselnavi {
	padding-top: 10px;
	padding-left: 15px;
}
a.carouselcontrol {
	padding-left: 10px; 
	background-image: url(images/bullet_nuoli.png);
	background-repeat: no-repeat;
	background-position: left center;
	color: #8f8f8f;
	font-size: 12px;
	font-family: Arial, Helvetica, sans-serif;
	margin-right: 5px;
}
/* CAROUSEL CONTROLS END */

/* CAROUSEL START */
/**
 * This <div> element is wrapped by jCarousel around the list
 * and has the classname "jcarousel-container".
 */
.jcarousel-container {
    position: relative;
}

.jcarousel-clip {
    z-index: 2;
    padding: 0;
    margin: 0;
    overflow: hidden;
    position: relative;
}

.jcarousel-list {
    z-index: 1;
    overflow: hidden;
    position: relative;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
}

.jcarousel-list li,
.jcarousel-item {
    float: left;
    list-style: none;
    /* We set the width/height explicitly. No width/height causes infinite loops. */
    width: 966px;
    height: 266px;
}

/**
 * The buttons are added dynamically by jCarousel before
 * the <ul> list (inside the <div> described above) and
 * have the classnames "jcarousel-next" and "jcarousel-prev".
 */
.jcarousel-next {
    z-index: 3;
    display: none;
}

.jcarousel-prev {
    z-index: 3;
    display: none;
}
/* CAROUSEL END */
/** BANNERIT END **/

a.logolink {
	height: 63px;
	width: 205px;
	position: absolute;
	top: 17px; left: 0;
	text-decoration: none;
}

/** HMENU START **/

div.hmenu {
	position: absolute;
	bottom: 0; right: 5px;
	width: 746px;
	overflow: hidden;
	height: 43px;
}

div.hmenu span.left {
	height: 43px;
	width: 8px;
	display:block;
	float:left;
	background-image: url(images/hmenu_left.png);
	background-repeat:no-repeat;
	background-position: left bottom;
}
div.hmenu span.middle {
	height: 43px;
	display:block;
	float:left;	
	background-image: url(images/hmenu_bg.png);
	background-repeat: repeat-x;
	background-position: left bottom;
}

div.hmenu span.right {
	height: 43px;
	width: 8px;
	display:block;
	float:left;	
	background-image: url(images/hmenu_right.png);
	background-repeat:no-repeat;
	background-position: right bottom;
}

div.hmenu .spacer {
	display: block;
	padding-top: 13px;
	padding-right: 14px;
	padding-left: 14px;
	cursor: pointer;
}

a.hmenuitemselected,
a.hmenuitem {
	float: right;
	margin-right: 3px;
	height: 43px;
	margin-top: 5px;
	text-decoration: none;
	color: #FFFFFF;
	font-family:Arial, Helvetica, sans-serif;
	font-size: 12px;
	vertical-align: bottom;
}

a.hmenuitemselected {
	margin-top: 0px;	
}
/** HMENU END **/

.footer_bg {
	height: 130px;
	background-color: #CCCCCC;
	background-image: url(images/footer_bg.jpg);
	background-repeat: repeat-x;
}
.footer_bg td {
	color:#666666;
	line-height: 18px;
}

.footer_bg a {
	color:#666666;
}
.footermenu {
	color:#333333;
	text-align: right;
	word-spacing: 3px;
}
.footermenu a {
	color:#333333;
	word-spacing: normal;
}
.copyright {
	color:#666666;
	font-size: 10px;
	text-align: right;
	margin-top: 10px;
}
.bct {
	display: none;
}
/** VMENU START **/
.vmenuheader {
	color:#6cc032;
	display:block;
	font-size:22px;
	font-weight:normal;
	margin-bottom:17px;
	margin-top:5px;
	text-align:left;
	font-family:  Arial, sans-serif;
}
.vmenu {
	width: 290px;
}
.left_maincol .vmenu {
	margin-left: 6px;
}
.sub .vmenu {
	padding-top: 8px;
}

/* vmenun ensimmainen taso: containeri */
div.vmenu div.selected, 
div.vmenu div.level2 {
	display:block;
	padding-top: 8px;
	padding-bottom: 8px;
	border-top: 1px solid #cbcbcb;
	border-bottom: 1px solid #ffffff;
	padding-left: 10px;
}

div.vmenu div.selected {
/*	background-image: url(images/vmenu_bg.jpg);
	background-repeat: repeat-x;
	background-position: left bottom;*/
	background-color: #f4f4f4;
}

/* vmenun ensimmainen taso: linkki */
div.vmenu div.selected a,
div.vmenu div.level2 a {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: normal;
	color: #333333;
	display:block;
	text-decoration: none;
	background-image: url(images/bullet.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 20px;

}
div.vmenu div.selected a {
	font-weight: bold;
}

/* vmenun toinen taso: containeri */
div.vmenu div.selected div.selected, 
div.vmenu div.level3 {
	margin-top: 5px;
	margin-bottom: 5px;
	padding-left: 0px;
	background-image: none;
}

/* vmenun toinen taso: linkki */
div.vmenu div.selected div.selected a, 
div.vmenu div.level3 a { 
	font-size: 11px;
}

div.vmenu div.selected div.selected a{
	text-decoration:underline;
}

div.vmenu div.level3 a:hover,
div.vmenu a:hover {
	text-decoration:underline;
}
div.vmenu div.selected div.level3  a { 
	font-weight: normal; 
}


/** VMENU END **/
/** NEWS START **/
div.news {
	margin-bottom:20px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}
div.news div.header {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-weight: bold;
	color: #666666;
	margin-top: 3px;
	margin-bottom: 3px;
}
div.news div.time {
	font-family: Arial, Helvetica, sans-serif;
	float: right;
	font-size:10px;
	color: #254d0a;
	font-weight:normal;
	background-image:url(images/bullet_klo.jpg);
	background-repeat: no-repeat;
	background-position: left 3px;
}
div.news div.description {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #888888;
	line-height: 18px;
	margin-bottom: 3px;

}
div.news a.more {
	display:block;
}
	

/** NEWS END **/

.right_maincol {
	background-image: url(images/harmaaviiva.jpg);
	background-repeat: no-repeat;
	background-position:left 13px;
	padding-left: 19px;
}
.left_maincol {
	background-image: url(images/harmaaviiva.jpg);
	background-repeat: no-repeat;
	background-position:right 13px;
}
.sub .left_maincol {
	background-image: none;
}

.referenssishow {
	position:relative; height: 240px; width: 100%; margin: auto;
	overflow: hidden;
}
.referenssishowitems {
	
}
.referenssishowitems .item {
	height: 240px; width: 100%;
	background-image: url(images/naytto.jpg);
	background-position: left top;
	background-repeat: no-repeat;
	position: static;
}


/** KUVAGALLERIA ALKAA **/
.webgallery {

}
.webgallery .galleryrowsplitter {
	clear: both;
	height: 20px;
}
.webgallery .galleryitem {
	width: 280px;
	height: 210px;
	float: left;
	margin-right: 30px;
	overflow: hidden;
}

.webgallery .galleryitem .linkwrapper {
	border: 2px solid #cccccc;
}
.webgallery .galleryitem a.image {
	display: block;
	width: 276px;
	height: 176px;
	overflow: hidden;
	opacity: 0.8;
}


.webgallery .galleryitem a.image img {
}

.webgallery .galleryitem .text {
	padding-top: 3px;

}
.webgallery .galleryitem .text a {
	font-weight: bold;
}
.webgallery .galleryitem .text .description {
	display: none;
}

/***/

/** FANCYBOX ALKAA **/

.fancytitlebar {
	text-align: left;	
}
.fancyclose {
	float: right;	
}
.fancyboxcontent {
	width: 600px; /* TÄMÄ SAMAKSI KUIN medium kuvan leveys*/
	height: 480px;
	overflow: hidden;
}

.fancyboxcontent h3 {
	color: #333333;
	font-size: 12px;
	margin: 10px 0 5px 0;		
}
.fancyboxcontent .desc {
	color: #333333;
	font-size: 12px;
	margin: 0;	
}


#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	height: 40px;
	width: 40px;
	margin-top: -20px;
	margin-left: -20px;
	cursor: pointer;
	overflow: hidden;
	z-index: 1104;
	display: none;
}

* html #fancybox-loading {	/* IE6 */
	position: absolute;
	margin-top: 0;
}

#fancybox-loading div {
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 480px;
	background-image: url('images/fancybox.png');
}

#fancybox-overlay {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: #000;
	z-index: 1100;
	display: none;
}

* html #fancybox-overlay {	/* IE6 */
	position: absolute;
	width: 100%;
}

#fancybox-tmp {
	padding: 0;
	margin: 0;
	border: 0;
	overflow: auto;
	display: none;
}

#fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 20px;
	z-index: 1101;
	display: none;
}

#fancybox-outer {
	position: relative;
	width: 100%;
	height: 100%;
	background: #FFF;
}

#fancybox-inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: 0;
	outline: none;
	overflow: hidden;
}

#fancybox-hide-sel-frame {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
}

#fancybox-close {
	position: absolute;
	top: -15px;
	right: -15px;
	width: 30px;
	height: 30px;
	background-image: url('images/fancybox.png');
	background-position: -40px 0px;
	cursor: pointer;
	z-index: 1103;
	display: none;
}

#fancybox_error {
	color: #444;
	font: normal 12px/20px Arial;
	padding: 7px;
	margin: 0;
}

#fancybox-content {
	height: auto;
	width: auto;
	padding: 0;
	margin: 0;
}

#fancybox-img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	border: none;
	outline: none;
	line-height: 0;
	vertical-align: top;
	-ms-interpolation-mode: bicubic;
}

#fancybox-frame {
	position: relative;
	width: 100%;
	height: 100%;
	border: none;
	display: block;
}

#fancybox-title {
	position: absolute;
	bottom: 0;
	left: 0;
	font-family: Arial;
	font-size: 12px;
	z-index: 1102;
}

.fancybox-title-inside {
	padding: 10px 0;
	text-align: center;
	color: #333;
}

.fancybox-title-outside {
	padding-top: 5px;
	color: #FFF;
	text-align: center;
	font-weight: bold;
}

.fancybox-title-over {
	color: #FFF;
	text-align: left;
}

#fancybox-title-over {
	padding: 10px;
	background-image: url('images/fancy_title_over.png');
	display: block;
}

#fancybox-title-wrap {
	display: inline-block;
}

#fancybox-title-wrap span {
	height: 32px;
	float: left;
}

#fancybox-title-left {
	padding-left: 15px;
	background-image: url('images/fancybox.png');
	background-position: -40px -90px;
	background-repeat: no-repeat;
}

#fancybox-title-main {
	font-weight: bold;
	line-height: 29px;
	background-image: url('images/fancybox-x.png');
	background-position: 0px -40px;
	color: #FFF;
}

#fancybox-title-right {
	padding-left: 15px;
	background-image: url('images/fancybox.png');
	background-position: -55px -90px;
	background-repeat: no-repeat;
}

#fancybox-left, #fancybox-right {
	position: absolute;
	top: 0px;
	height: 80%;
	width: 35%;
	cursor: pointer;
	outline: none;
	background-image: url('images/blank.gif');
	z-index: 1102;
	display: none;
}

#fancybox-left {
	left: 0px;
}

#fancybox-right {
	right: 0px;
}

#fancybox-left-ico, #fancybox-right-ico {
	position: absolute;
	top: 50%;
	left: -9999px;
	width: 30px;
	height: 30px;
	margin-top: -15px;
	cursor: pointer;
	z-index: 1102;
	display: block;
}

#fancybox-left-ico {
	background-image: url('images/fancybox.png');
	background-position: -40px -30px;
}

#fancybox-right-ico {
	background-image: url('images/fancybox.png');
	background-position: -40px -60px;
}

#fancybox-left:hover, #fancybox-right:hover {
	visibility: visible;    /* IE6 */
}

#fancybox-left:hover span {
	left: 20px;
}

#fancybox-right:hover span {
	left: auto;
	right: 20px;
}

.fancy-bg {
	position: absolute;
	padding: 0;
	margin: 0;
	border: 0;
	width: 20px;
	height: 20px;
	z-index: 1001;
}

#fancy-bg-n {
	top: -20px;
	left: 0;
	width: 100%;
	background-image: url('images/fancybox-x.png');
}

#fancy-bg-ne {
	top: -20px;
	right: -20px;
	background-image: url('images/fancybox.png');
	background-position: -40px -162px;
}

#fancy-bg-e {
	top: 0;
	right: -20px;
	height: 100%;
	background-image: url('images/fancybox-y.png');
	background-position: -20px 0px;
}

#fancy-bg-se {
	bottom: -20px;
	right: -20px;
	background-image: url('images/fancybox.png');
	background-position: -40px -182px; 
}

#fancy-bg-s {
	bottom: -20px;
	left: 0;
	width: 100%;
	background-image: url('images/fancybox-x.png');
	background-position: 0px -20px;
}

#fancy-bg-sw {
	bottom: -20px;
	left: -20px;
	background-image: url('images/fancybox.png');
	background-position: -40px -142px;
}

#fancy-bg-w {
	top: 0;
	left: -20px;
	height: 100%;
	background-image: url('images/fancybox-y.png');
}

#fancy-bg-nw {
	top: -20px;
	left: -20px;
	background-image: url('images/fancybox.png');
	background-position: -40px -122px;
}

/* IE */

#fancybox-loading.fancybox-ie div	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_loading.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-close		{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_close.png', sizingMethod='scale'); }

.fancybox-ie #fancybox-title-over	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_title_over.png', sizingMethod='scale'); zoom: 1; }
.fancybox-ie #fancybox-title-left	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_title_left.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-title-main	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_title_main.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-title-right	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_title_right.png', sizingMethod='scale'); }

.fancybox-ie #fancybox-left-ico		{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_nav_left.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-right-ico	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_nav_right.png', sizingMethod='scale'); }

.fancybox-ie .fancy-bg { background: transparent !important; }

.fancybox-ie #fancy-bg-n	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_n.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-ne	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_ne.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-e	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_e.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-se	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_se.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-s	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_s.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-sw	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_sw.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-w	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_w.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-nw	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/fancy_shadow_nw.png', sizingMethod='scale'); }

/*** FANCYBOX LOPPUU **/