/* SSS OY 2008 */

/* Basic styles */
body {
	margin: 0;
	padding: 0;
	font-family: Arial, Helvetica, Verdana, sans-serif;
	font-size: small;
	color: #2d5e9a;
	background: #006aae url(../img/body_bg.gif) repeat-x;
	/*background: #007dcc url(../img/body_bg.jpg) no-repeat top center;*/
}
img {
	border: none;
}
h1 {
	margin: 5px 2px 15px 2px;
	padding: 0;
	font-size: 160%;
	color: #2d5e9a;
}
h2 {
	font-size: 100%;
	font-weight: bold;
	margin: 5px 0 10px 0;
	padding: 0;
	color: #2d5e9a;
}
h3 {
	font-size: 100%;
	font-weight: bold;
	color: #2d5e9a;
}
p {
	margin: 1px 0 15px 0;
	padding: 0;
}
a,
a:visited {
	text-decoration: none;
	color: #007dcc;
}
a:hover {
	text-decoration: underline;
}
.clearer {
	clear: both;
}


/* DIVs */
#container {
	width: 992px;
	margin: 0 auto 18px auto;
	font-size: 85%;
}
#containerwrap {
	
}
#logo {
	margin: 0;
	padding: 0;
	width: 250px;
	float: left;
}
#tools {
	margin: 0;
	padding: 0 0 0 15px;
	height: 30px;
	/*line-height: 28px;*/
	float: right;
	text-align: right;
	background: transparent url(../img/tools_bg_left.gif) no-repeat top left;
	color: #ffffff;
	_width: 300px;
}
#toolswrap {
	margin: 0;
	padding: 0 10px 0 0;
	height: 100%;
	white-space: nowrap;
	background: transparent url(../img/tools_bg_right.gif) no-repeat top right;
}
#tools ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#tools li {
	margin: 0;
	float: left;
	padding: 8px 0 0 0;
}
#tools a {
	color: #ffffff;
	font-weight: bold;
	border-right: 1px solid white;
	padding: 0 10px 0 10px;
}
#tools label {
	font-weight: bold;
	padding: 8px 10px 0px 10px;
	margin: 0;
	float: left;
}
#links {
	float: left;
}
#quickfind {
	float: left;
	width: 225px;
}
#quickfind #find {
	float: left;
	margin: 6px 0 5px 0;
	padding: 1px;
	height: 13px;
	width: 120px;
	font-size: 90%;
	border: 1px solid white;
}
#quickfind #btn_Etsi {
	float: left;
	margin: 6px 0 0 5px;
	padding: 0; 
}
#quickfind form {
	margin: 0;
	padding: 0;
	float: left;
}

#navi {
	margin: 0;
	padding: 0;
	clear: both;
	background: transparent url(../img/navi_bg_left.gif) no-repeat top left;
	height: 31px;
	line-height: 31px;
	border-bottom: 1px solid #7cb9dc;
}
#naviwrap {
	background: transparent url(../img/navi_bg_right.gif) no-repeat top right;
	height: 31px;
}
#navi ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#navi li {
	margin: 0;
	padding: 0;
	float: left;
}
#navi a {
	display: block;
	color: white;
	font-weight: bold;
	padding: 0 10px 0 10px;
}
#navi a:hover,
#navi li.current a {
	background-color: #27aeeb;
	text-decoration: none;
	border-left: 1px solid #74b9e5;
	border-right: 1px solid #74b9e5;
	/*border-bottom: 1px solid #74b9e5;*/
	padding: 0 9px 0 9px;
}
#navi li a.first,
#navi li.current a.first {
	padding-left: 30px;	
}
#navi li a.first:hover, 
#navi li.current a.first {
	padding-left: 30px;	
	border-left: 0px solid #74b9e5;
	background: transparent url(../img/navi_first_hover_bg.gif) no-repeat top left;
}

#headercontent {
	margin: 0;
	padding: 0;
	clear: both;
	float: left;
	background-color: white;
	border-left: 1px solid #c4e4f4;
	border-right: 1px solid #c4e4f4;
}
#online_login {
	/* HUOM. Osa tyyleistä laitettu templatessa onlinelogin-tagissa! */
	margin: 0;
	padding: 0;
	color: #004b5e;
}
#online_loginwrap {
	/* HUOM. Osa tyyleistä laitettu templatessa onlinelogin-tagissa! */
}
#online_login a,
#content_subpage #online_login a,
#content_subpage #leftcol_content a {
	text-decoration: none;
	font-weight: normal;
}
#online_login a:hover,
#content_subpage #online_login a:hover, 
#content_subpage #leftcol_content a:hover {
	text-decoration: underline;
}
#online_login ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
#online_login li {
	background: transparent url(../img/bullet.gif) no-repeat top left;
	padding: 0 0 0 20px;
	margin: 3px 0 0 0;
}
#online_login form {
	margin: 0;
	padding: 0;
}
#online_login label {
	font-weight: bold;
}
#online_login #cmdLogin {
	margin: 8px 0 5px 0;
}
#online_login .textbox {
	height: 1em;
	width: 140px;
}
#online_login h3 {
	color: #007dcc;
	font-family: Helvetica;
	font-size: 150%;
	font-weight: bold;
	margin: 0;
	padding: 10px 0 0 0;
}
#online_login p {
	margin: 0;
	padding: 0 0 5px 0;
}

#section_pic {
	float: left;
	margin: 0;
	padding: 0;
	width: 752px;
	overflow: hidden;
	border-bottom: 2px solid white;
	z-index: 1;
}

#content {
	clear: both;
	float: left;
	width: 100%;
	margin: 0;
	padding: 12px 0 0 0;
	background: white url(../img/content_bg.gif) no-repeat top left;
	min-height: 250px;
	_height: 250px;
}
#contentcolumn #content {
	padding-bottom: 20px;
}
.contentcol_fp {
	float: left;
	margin: 0 0 0 8px;
	_margin: 0 0 0 6px;
	padding: 0;
	width: 238px;
}
.contentcol_fp h2 {
	background: white url(../img/fp_h2_bg.gif) no-repeat top left;
	margin: 0;
	padding: 6px 10px 5px 10px;
	color: white;
}
.contentcol_fp .banners,
.contentcol_section_fp .banners {
	text-align: center;
	background: transparent url(../img/contentcol_content_bg.gif) no-repeat top left;
	padding-top: 10px;
}
.contentcol_fp .banner {
}
.contentcol_fp .newslink_fp {
	font-weight: bold;
}
.contentcol_content {
	background: transparent url(../img/contentcol_content_bg.gif) no-repeat top left;
	padding: 10px 13px 8px 13px;
}

a.bullet,
#content_subpage a.bullet {
	background: transparent url(../img/bullet.gif) no-repeat top left;
	padding: 0 0 0 20px;
	margin-top: 5px;
	font-weight: bold;
	display: block;
	text-decoration: none;
}
a.bullet:hover,
#content_subpage a.bullet:hover {
	text-decoration: underline;
}


#sitemap {
	clear: both;
	float: left;
	width: 100%;
	background: #d0edfa url(../img/sitemap_bg.gif) repeat-x top left;
	margin: 0;
	padding: 14px 0 10px 0;
	border-bottom: 1px solid #e6eef4;
}
#sitemapwrap {
	
}
#sitemap ul {
	list-style-type: none;
	float: left;
	margin: 0 0 0 20px;
	_margin: 0 0 0 15px;
	padding: 0;
	width: 116px;
}
#sitemap li {
	margin: 0;
	padding: 0;
}
#sitemap a {
	color: #35a6d9;
	display: block;
	border-top: 1px solid #bdddf2;
	padding: 2px 4px 2px 4px;
	margin: 0;
	_height: 1%;
}
#sitemap .toplevel a {
	font-weight: bold;
	border-top: 0px solid;
}

#footer {
	clear: both;
	float: left;
	width: 100%;
	margin: 0;
	padding: 0 0 20px 0;
	background: transparent url(../img/footer_bg_left.gif) no-repeat top left;
	color: white;
	font-weight: bold;
	height: 21px;
	line-height: 21px;
	text-align: center;
}
#footerwrap {
	background: transparent url(../img/footer_bg_right.gif) no-repeat top right;
	height: 21px;
}
#footer span {
	padding-right: 7px;
}
#footer ul {
	float: left;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#footer li {
	margin: 0;
	padding: 0;
	float: left;
}
#footer a {
	color: white;
	font-weight: bold;
	padding: 0 7px 0 7px;
	border-left: 1px solid white;
}


/* SUBPAGE STYLES */
div.intro {
	font-weight: bold;
}
#content_subpage {
	clear: both;
	float: left;
	width: 990px;
	margin: 0;
	padding: 0;
	background-color: white;
	min-height: 250px;
	_height: 250px;
	border-left: 1px solid #c4e4f4;
	border-right: 1px solid #c4e4f4;
}
#content_subpage a {
	text-decoration: underline;
}
#content_subpage a:hover {
	text-decoration: none;
}

#leftcolumn {
	width: 238px;
	float: left;
	margin: 0;
	padding: 0;
}
#leftcolumnwrap {
	padding: 5px 10px 10px 26px;
}
#contentcolumn {
	float: left;
	width: 752px;
	margin: 0;
	padding: 0;
}
/* HACK osion etusivun ylimääräisen p-tagin varalta, jonka NAS laittaa */
#contentcolumn #content p {
	margin: 0;
	padding: 0;
}
#contentcolumn #content div p {
	margin: 1px 0 15px 0;
	padding: 0;
}

#subnavi {
	margin: 0 0 10px 0;
	padding: 0;
	list-style-type: none;
	width: 202px;
	min-height: 230px;
	_height: 230px;
}
#subnavi li {
	margin: 0;
	padding: 0;
}
#subnavi li a {
	display: block;
	_height: 1%;
	padding: 7px 10px 6px 3px;
	text-decoration: none;
	color: #007dcc;
	font-weight: bold;
	border-bottom: 1px solid #e3e5e4;
}
#subnavi li.activeparent {
	background: transparent url(../img/subnavi_arrow.gif) no-repeat top right;
}
#subnavi li.active a {
	background-color: #29afeb;
	color: white;
	font-weight: bold;
}
#subnavi li.active ul a {
	background-color: white;
	color: #007dcc;
	font-weight: normal;
}
#subnavi li a:hover {
	background-color: #29afeb;
	color: white;
}
#subnavi li.active ul a:hover {
	background-color: #29afeb;
	color: white;
}

/* Second level */
#subnavi ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#subnavi ul a {
	font-weight: normal;
	padding-left: 15px;
}
/* Third level */
#subnavi ul ul a {
	padding-left: 36px;
}

.contentcol_section_fp {
	float: left;
	margin: 0 0 0 14px;
	_margin: 0 0 0 12px;
	padding: 0;
	width: 352px;
}
.contentcol_section_fp h2 {
	background: white url(../img/section_fp_h2_bg.gif) no-repeat top left;
	margin: 0;
	padding: 6px 10px 5px 10px;
	color: white;
}
#content_subpage_content {
	padding: 15px 150px 20px 34px;
	min-height: 470px;
	_height: 470px;
	width: 560px;
}
/*
img#content_bottom_pic {
	position: absolute;
	right: 0;
	bottom: 0;
}
*/
#section_pic_subpage {
	margin: 0;
	padding: 0;
	overflow: hidden;
}
#leftcol_content {
	margin-top: 30px;
}


/* Uutiset*/
p.news_fp {
	margin: 0 0 8px 0;
	padding: 0 0 8px 0;
	border-bottom: 1px solid #bdddf2;
}
#news_date {
	font-weight:bold;
	margin-bottom:10px;
}

#news_intro {
	font-weight:700;
	font-style:italic;
	padding:0 0 10px 0;
}
#news_title {
	font-weight:bold;
	margin-bottom:10px;
}
#news_text {
}
.news_boxtitle {
	font-weight:bold;
}



/* COLLAPSIVE PANEL */

#leftcolumn dl { 
	margin-top: 20px;
}
#leftcolumn dt {
	margin: 1px 0 0 0;
	padding: 0;
	background: transparent url(../img/ajaxbox_bg_left.gif) no-repeat top left;
	height: 24px;
}
#leftcolumn dt a {
	margin: 0;
	padding: 5px;
	display: block;
	_height: 1%;
	background: transparent url(../img/ajaxbox_bg_right.gif) no-repeat top right;
	color: white;
	font-weight: bold;
	text-decoration: none;
}
#leftcolumn dt a:hover {
	text-decoration: underline;
}
#leftcolumn dd { 
	margin: -3px 0 -2px 0;
	padding: 5px;
	border-left: 1px solid #cae8f6;
	border-right: 1px solid #cae8f6;
	border-bottom: 1px solid #cae8f6;
}


/* TARJOUSLASKURI */
.asiakastyypin_valinta {
	padding-bottom: 10px;
}
.sopimustyyppi_intro {
	margin: 5px 0 10px 20px;
	padding: 5px;
	background-color: #eeeeff;
}
.sopimustyypin_valinta {
	padding-bottom: 10px;
}
.mittaustavat {
	margin-left: 50px;
	padding-bottom: 10px;
}
#yritysasiakas_sulakekoko_lisatieto {
	margin: 5px 0 10px 20px;
	padding: 5px;
	background-color: #eeeeff;
}
.lisakentat {
	padding-bottom: 10px;
}
.pricetable {
	width: 350px;
}
	.pricetable td {
		padding: 1px;
	}
.kulutusarvio-info {
	padding: 15px 0 5px 0;
	font-weight: bold;
}
.lisakentat label {
	display: block;
	float: left;
	min-width: 80px;
	padding: 5px 10px 5px 0;
}

/* Etäluentahaun tyylit */
#etahaku_txt {
	float: left;
	width: 110px;
	margin: 3px 0 0 0;
}
#etahaku_field {
	float: left;
}
#etahaku_field #find_etaluenta {
	margin: 3px 0 0 0;
	padding: 1px;
	height: 13px;
	font-size: 90%;
	/*border: 1px solid lime;*/
}

#etahaku_but {
	float: left;
	margin: 0 0 0 10px;
	padding: 0; 
}

/* Etäluentahaun tyylit */

/* Etäluenta kysymys&vastaus */
 .jscom, .mix htcom   { color: #4040c2; }
.com      { color: green; }
.regexp   { color: maroon; }
.string   { color: teal; }
.keywords { color: blue; }
.global   { color: #008; }
.numbers  { color: #880; }
.comm     { color: green; }
.tag      { color: blue; }
.entity   { color: blue; }
.string   { color: teal; }
.aname    { color: maroon; }
.avalue   { color: maroon; }
.jquery   { color: #00a; }
.plugin   { color: red; }

.basic, #list2, #list3, #navigation { width:20em; }


/*ul.bulletlist li { list-style-type: square; }
ol.numberlist li { list-style-type: decimal; }
*/
#log { position:fixed; bottom: 0; right:1em; text-align:right; }
#switch { position: fixed; bottom: 0; right: 15em; }

.basic  {
	width: 650px;
}
.basic div {
	background-color: #FFFFFF;
}

.basic p {
	margin-bottom : 10px;
	border: none;
	text-decoration: none;
	font-weight: bold;
	font-size: 10px;
	margin: 0px;
	padding: 5px 10px 10px 10px;
	color: #2d5e9a;
}
.basic a {
	cursor:pointer;
	display:block;
	padding: 5px 0 10px 10px;;
	margin-top: 0;
	font-weight: bold;
	font-size: 12px;
	color: #FFFFFF;
	/*background-color: #00a0c6
	border-top: 1px solid #FFFFFF;
	border-bottom: 1px solid #999;*/
	background: transparent url("../img/bg_accordion.jpg") no-repeat top left;
}
.basic a:hover {
	background: transparent url("../img/bg_accordion_hi.jpg") no-repeat top left;
}
.basic a.selected {
	color: #FFFFFF;
	background: transparent url("../img/bg_accordion.jpg") no-repeat top left;
}
.basic div a {
	display: inline;
	color: #2d5e9a;
	font-weight: bold;
	font-size: 10px;
	background: none;
	margin: 0;
	padding: 0;
	text-decoration: underline;
}
.basic div a:hover {
	text-decoration: none;
	background: none;
}
#list2 {
	height: 178px;
	border: 1px solid #eee;
	overflow: hidden;
}
#list2 .red {
	color: red;
	background-color: red;
}
#list2 .green {
	color: green;
	background-color: green;
}
#list2 .blue {
	color: blue;
	background-color: blue;
}
#list2 dd { height: 130px; overflow: hidden; }

#list3 { border: 1px solid #111; }
#list3 div.selected .title { font-weight: bold; }
#list3 div div {
	border-left:8px solid #6699CC;
	padding: 5px;
}
#list3 div.title {
	border: 1px solid #3366AA;
	background-color: #6699CC;
	padding: 10px;
	cursor: pointer;
}
#list3 div.selected {
	border-bottom: none;
}

#navigation {
	border:1px solid #5263AB;
	margin:0px;
	padding:0px;
	text-indent:0px;
	background-color:#E2E2E2;
	width:200px;
}
#navigation a.head {
	cursor:pointer;
	border:1px solid #CCCCCC;
	background:red url(../img/bg_accordion.jpg) no-repeat scroll 3px 4px;
	color:#FFFFFF;
	display:block;
	font-weight:bold;
	margin:0px;
	padding:0px;
	text-indent:14px;
	text-decoration: none;
}
#navigation a.head:hover {
	color:#FFFF99;
}
#navigation a.selected {
	background-image: url(expanded.gif);
}
#navigation a.current {
	background-color:#FFFF99;
}
#navigation ul {
	border-width:0px;
	margin:0px;
	padding:0px;
	text-indent:0px;
}
#navigation li {
	list-style:none outside none; display:inline;
}
#navigation li li a {
	color:#000000;
	display:block;
	text-indent:10px;
	text-decoration: none;
}
#navigation li li a:hover {
	background-color:#FFFF99;
	color:#FF0000;
}

#wizard {
	width: 200px;
	border: 1px solid black;
}
#wizard .title {
	background-color:#DDDDDD;
}


/* Etäluenta kysymys&vastaus */





/* CLEARFIX to fix backgrounds etc for elements that have floated child elements */
.clearfix:after
{
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
	.clearfix
	{
		display: inline-block;
	}
	html[xmlns] .clearfix
	{
		display: block;
	}
	* html .clearfix
	{
		height: 1%;
	}

