/* --- styles for KK-Tavastia public site --- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; }

body {
	background: #89C0D6 url(/pics/body-bg.gif) top left repeat-x;
	font-family: arial, helvetica, sans-serif;
	font-size: 90%;
	}

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

/* --- main elements --- */
#wrapper {
	position: relative;
	width: 963px;
	margin: 0 auto;
	padding: 0;
	height: 100%;
	z-index: 2;
	}

#header {
	position: relative;
	width: 963px;
	height: 30px;
	margin: 0 0 10px 0;
	padding: 82px 0 0 0;
	background: transparent url(/pics/header-bar.gif) 0px 55px no-repeat;
	z-index: 3;
	}

.maskotti {
	position: absolute; 
	top: 30px; 
	left: -50px;
	behavior: url(/style/iepngfix.htc);
	}
	
#catNav {
	position: relative;
	width: 942px;
	height: 27px;
	padding: 12px 10px 4px 10px;
	margin: 0;
	color: #000;
	background: #fff;
	font-weight: bold;
	font-size: 12px;
	border-right: 1px solid #6B6B6A;
	z-index: 2;
	}
	
#nav {
	position: relative;
	float: left;
	width: 199px;
	margin: 7px 0 0 0;
	padding: 0;
	z-index: 2;
	}

#contentWrapper {
	position: relative;
	padding: 11px 11px 45px 11px;
	background: #fff;
	margin: 7px 0 0 206px;
	width: 734px;
	border-right: 1px solid #6B6B6A;
	border-bottom: 1px solid #6B6B6A;
	z-index: 2;
	}
	
#footer {
	position: relative;
	width: 963px;
	margin: 0 auto;
	padding: 15px 0 5px 0;
	text-align: center;
	font-size: 11px;
	color: #000;
	z-index: 2;
	
	}
	
	#footer.subFooter { width: 754px; padding-left: 209px; }
	#footer.blogFooter a {color: #FFF;}
	#footer.blogFooter {color: #FFF;}

#frontpage {
	position: relative;
	background: #fff;
	border-right: 1px solid #6B6B6A;
	padding: 1px 0 10px 0;
	margin: 0 0 0px 0;
	width: 962px;
	min-height: 490px;
	z-index: 2;
	}
	
.bannerEdges {
	position: absolute; 
	top: 13px; 
	left: -5px;
	behavior: url(/style/iepngfix.htc);
	height: 239px;
	width: 5px;
	}

/* --- colortheme --- */
#colorTheme {
	position: absolute;
	width: 980px;
	height: 347px;
	background: transparent url(/pics/header-bg.gif) top center no-repeat;
	z-index: 1;
	}
	
/* --- header specifics --- */
h1#logo, #header ul, #search { position: absolute; }
	h1#logo { 
		top: 67px; 
		left: 20px;
		width: 140px;
		height: 24px;
		overflow: hidden;
		text-indent: -10000px;
		background: #fff url(/pics/studentnet/white-header-logo.gif) top left no-repeat;
		cursor: pointer;
		z-index: 3;
		}
		
		h1#logo a { display: block; width: 100%; height: 100%; }
		
		
	#header ul {
		top: 71px;
		right: 215px;
		padding: 0;
		line-height: 13px;
		background: transparent;
		font-size: 12px;
		font-weight: bold;
		}

		#header ul li { 
			padding: 2px 12px;
			display: block;
			float: left;
			border-left: 1px solid #B3B3B3;
			}

			#header ul li:first-child { border-left: none; }

		#header ul li a { color: #676566; font-size: 12px; }
			#header ul#links li.selected a { color: #fff; }
		
	#header #search { top: 67px; right: 16px; width: 200px; height: 25px; }

	#header #search input#textinput, #header #search input#submitbutton, #tools div input#courseinput, #tools div input#coursebutton, #tools div input#btn { 
		position: absolute;
		top: 0px;
		height: 15px;
		padding: 5px 0;
		border: none;
		margin: 0;
		}

		#header #search input#textinput, #tools div input#courseinput {
			width: 168px;
			height: 15px;
			padding-left: 7px;
			background: #fff url(/pics/studentnet/white-search-inputtext-bg.gif) top left no-repeat;
			color: #999;
			}

		#header #search input#submitbutton, #tools div input#coursebutton, #tools div input#btn { 
			right: 0px;
			width: 25px;
			height: 25px;
			padding: 45px 0 0 0;
			background: transparent url(/pics/studentnet/yellow-search-submitbutton.gif) top left no-repeat;
			cursor: pointer;
			text-indent: 100px;
			color: #000;
			font-size: 8px;
			}

			#header #search input#submitbutton { text-indent: -100px; }
			
	#tools div input#courseinput { position: relative; margin-left: 14px; margin-top: 5px; padding-bottom: 8px; }
	#tools div input#coursebutton, #tools div input#btn { top: 79px; right: 12px; }

/* --- frontpage --- */

#frontpage #slogan {
	color: #008dd0;
	font-size: 35px;
	font-weight: normal;
	position: absolute;
	right: 32px;
	top: 21px;
	width: 330px;
	text-align:right;
	line-height: 35px;
	z-index: 10;
	}
	 
	 #frontpage #slogan span {color: #ff380c;font-family: Times New Roman;font-style: italic;}
	
#frontpage #lift {
	position: absolute;
	right: 32px;
	top: 102px;
	width: 230px;
	color: #2f2f2f;
	font-size: 12px;
	z-index: 10;
	}

	#frontpage #lift p { margin: 0 0 10px 0;}
	#frontpage #lift a { color: #0079C5; font-weight: bold; text-decoration: underline; }

#blogBanner {
	position: absolute; 
	top: 230px ;
	height:78px; width:254px; 
	background: transparent url(/pics/blogi-banner-bg.png) no-repeat 0px 0px;
	z-index: 11;
	right: 32px;
	}
	
#blogBanner a{color: #FFF; padding:16px 0 0 35px ; display: block; font-weight: bold; outline:none;}

/* --- frontpage nav --- */
#frontpage a.bigLink {
	position: relative;
	display: block;
	width: 217px;
	height: 52px;
	padding: 0 17px;
	margin: 0 0 7px 0;
	color: #fff;
	font-size: 12px;
	font-weight: normal;
	}
	
	#frontpage a.bigLink span {
		display: block;
		padding: 6px 0 3px 0;
		margin: 0 0 3px 0;
		border-width: 0 0 1px 0;
		border-style: solid;
		font-size: 16px;
		line-height: 19px;
		font-weight: bold;
		}
	
	#frontpage #linkYouth { background: #ff380c; margin-top: 12px; }
		#frontpage a#linkYouth span { border-color: #ff6a49; }
	#frontpage #linkAdult { background: #008dd0; margin: 0 0 8px 0;}
		#frontpage a#linkAdult span { border-color: #40aadc; }
	#frontpage #linkGeneral { background: #ffcf00; margin: 0 0 11px 0;color:#6e6e6e; }
		#frontpage a#linkGeneral span { border-color: #ffdb40; }
	#frontpage #linkJob { background: #2f2f2f; color:#7ebff9; }
		#frontpage a#linkJob span { border-color: #636363; }

	#frontpage a:hover { text-decoration: none; }

/* --- frontpage news --- */
#frontpageNews {
	position: relative;
	width: 400px;
	padding: 0 0 20px 0;
	margin: 0px 0 0 16px;
	height: 161px;
	line-height:13px;
	}

	#frontpageNews h3 {
		color: #0078C1;
		border-bottom: 1px solid #BDC7BD;
		padding: 19px 0 10px 0;
		margin: 0 0 10px 0;
		font-size: 14px;
		text-transform: uppercase;
		}

	#frontpageNews a { font-size: 11px; font-weight: bold; color: #676566; }
		#frontpageNews a.altLink { 
			position: absolute;
			top: 20px;
			right: 0px;
			color: #0078C1; 
			text-decoration: underline;
			}

	#frontpageNews ul { list-style-type: none;  }
		#frontpageNews ul li {
			position: relative;
			padding: 6px 70px 6px 12px;
			margin: 0;
			background: transparent url(/pics/li-arrow.gif) 2px 14px no-repeat;
			}

	#frontpageNews ul li a:hover { text-decoration: underline; }
	#frontpageNews ul li span { position: absolute; top: 8px; right: 5px; font-size: 11px; color: #aaa; }
	
/* ------ frontpage search ------ */
#frontpage #courseSearch {
	position: absolute;
	top: 287px;
	//top: 288px;
	right: 0px;
	width: 505px;
	height: 214px;
	//height: 213px;
	background: #ececec;
	font-size: 11px;
	}
	
	#courseSearch #leftSide {
		width: 310px;
		padding: 0 16px 0 21px;
		}
	
	#courseSearch h3 {
		color: #161112;
		border-bottom: 1px solid #D2D2D3;
		padding: 23px 0 7px 0;
		margin: 0 0 18px 0;
		font-size: 12px;
		}
	
	#courseSearch strong { display: block; margin: 0 0 5px 0; }
	#courseSearch span.formSpan, #subpageSearch span.formSpan { position: relative; display: block; margin: 0 0 5px 0; line-height: 15px; }
		#subpageSearch span.formSpan { margin: 0 15px 3px 15px; }
	#courseSearch span.formSpan input, #subpageSearch span.formSpan input { position: absolute; top: 2px; left: 3px; width: 12px; height: 12px; margin: 0; padding: 0; }
	#courseSearch span.formSpan label, #subpageSearch span.formSpan label { font-size: 11px; color: #000; padding: 0 0 0 19px; cursor: pointer; }
		#subpageSearch span.formSpan label { color: #fff; font-weight: bold; }
		#subpageSearch p { margin: 0 0 12px 0; }

	#courseSearch select {
		position: relative;
		width: 235px;
		font-size: 11px;
		position: relative;
		border: 1px solid #ccc;
		background: #fff;
		color: #424242;
		padding: 0;
		margin: 7px 0 0 0;
		}

	#courseSearch #rightSide {
		position: absolute;
		top: 22px;
		right: 16px; 
		width: 233px;
		height: 226px;
		padding: 0;
		margin: 0;
		overflow: hidden;
		text-align: right;
		}
		
		#courseSearch #rightSide img { behavior: url(/style/iepngfix.htc);}

/* ------ subnavigation - nav ------ */
/* -- lists -- */
#nav ul { position: relative; list-style-type: none; margin: 0; padding: 0; }
#nav ul ul { padding: 0 0 6px 0; margin: 3px 0 0 0;  }
#nav ul ul ul { padding: 0; margin: 0; background: transparent; }

/* --  list-items -- */
#nav ul li { 
	position: relative;
	display: block;
	padding: 0;
	margin: 0 0 2px 0;
	border-right: 1px solid #6B6B6A;
	border-bottom: 1px solid #6B6B6A;
	background: #fff;
	}

#nav ul ul li { border: none; padding: 0 4px 0 0; background: transparent url(/pics/li-arrow.gif) 8px 7px no-repeat; margin: 0 0 0 2px; }
#nav ul ul ul li { margin-left: 6px; background: none; padding-right: 0; }
#nav ul ul ul ul li { margin-left: 0; }

#nav li.listElementTop {
	display: block;
	padding: 0;
	margin: 0;
	height: 9px;
	background: #fff;
	}

/* -- links -- */
#nav ul li a {
	position: relative;
	display: block;
	color: #676566;
	text-decoration: none;
	font-size: 12px;
	font-weight: bold;
	padding: 8px 6px 8px 11px;
	}

	#nav ul ul li a { font-size: 11px; padding: 3px 0 4px 12px; margin: 0 4px 0 6px; }
	#nav ul ul ul li a { font-weight: normal; padding: 3px 0; margin: 0 4px 0 12px; }
	#nav ul ul ul ul li a { margin-left: 20px; }
	#nav ul ul ul ul ul li a { margin-left: 30px; }
	#nav ul ul ul ul ul ul li a { margin-left: 40px; }

	#nav ul li a.selectLink { color: #fff; }
	#nav ul ul li a.selectLink { background: transparent; }
	#nav.blog ul li a.selectLink { background: #9c0500; }

	#nav ul li a:hover { text-decoration: underline; }

/* ------ main category nav ------ */
	#catNav a {
		display: block;
		font-size: 12px;
		color: #676566;
		font-weight: bold;
		}
	
	#catNav ul#intraLinks { position: absolute; top: 12px; right: 10px; }
		#catNav ul#intraLinks li {
			padding: 2px 12px
			}
	
	#catNav ul li {
		padding: 2px 15px;
		display: block;
		float: left;
		border-left: 1px solid #B3B3B3;
		}
		
		#catNav ul li.selected a { color: #fff; }

/* --- frontpage banners --- */
#banners {
	position: relative;
	width: 962px;
	z-index: 2;
	background: #FFFFFF url(/pics/banner-clouds-bg.jpg) no-repeat 0px 0px;
	padding-top: 50px;
	padding-bottom:10px;
	border-right: 1px solid #6B6B6A;
	border-bottom: 1px solid #6B6B6A;
	}

	#banners br { display: none; }
	#banners p { margin: 0; padding: 0; }

	#banners table { border-collapse: collapse; }
	#banners table td { padding: 0 14px 0 0; margin: 0; }

	#banners a {
		display: block;
		float: left;
		text-align: center;
		width: 220px;
		height: 99px;
		margin: 0;
		}
		
		#banners a:last-child { margin: 0; }
	
/* ------ footer ------ */
#footer span { margin: 0 5px; }
#footer span a { text-decoration: none; color: #000; font-weight: normal; }

/* ------ contentWrapper ------ */
#contentWrapper h2#pageTitle { 
	margin: 0;
	padding: 0 12px 5px 12px;
	font-size: 22px;
	border-bottom: 2px solid #E0E0E0;
	}

#contentWrapper #tools {
	position: relative;
	float: right;
	width: 232px;
	}

	#tools #subpageSearch { position: relative; margin: 9px 0 0 7px; padding: 0 0 2px 0; }
		#subpageSearch h3 { color: #fff; font-size: 14px; margin: 0; padding: 11px 15px; }
		#subpageSearch select { width: 199px; border: 1px solid #ccc; padding: 1px; font-size: 11px; color: #000; margin: 0 15px 14px 15px; }

#contentWrapper #imagePlace {
	position: relative;
	width: 232px;
	height: 219px;
	margin: 0 0 11px 0;
	background: transparent url(/pics/imageplace-bg.gif) top left no-repeat;
	}
	
	#contentWrapper #imagePlace img { position: relative; margin: 1px 0 0 1px; width: 228px; height: 214px; }
	
#contentWrapper #imagePlaceBig {
	position: relative;
	width: 734px;
	height: 281px;
	margin: 0 0 10px 0;
	}
	
	#contentWrapper #imagePlaceBig img { width: 734px; height: 281px; margin: 0; }

/* ------ content ------ */
#content {
	position: relative;
	padding: 0 12px 1px 12px;
	width: 469px;
	}

div#content.projectdatabase {
 	width: 100%;
 	padding: 0;
}

div#content.projectdatabase div.grid table {
	width: 640px;
	}

#content, #content p { font-size: 12px; color: #3A3738; }
#content p { line-height: 16px; margin: 15px 0; }

#content a { font-weight: bold; }

#content h1, #content h2, #content h3,
#content h4, #content h5, #content h6 { position: relative; padding: 0; color: #3A3738; }
	#content h1, #content h2 { margin: 10px 0 5px 0; border-width: 0 0 2px 0; border-style: solid; border-color: #E0E0E0;}
	#content h3, #content h4, #content h5, #content h6, #content h3.otsikko { margin: 8px 0 4px 0; }

#content h1 { 
	margin: 0 0 10px 0;
	padding: 5px 0;
	font-size: 22px;
	border-bottom: 2px solid #E0E0E0;
	}

#content h2 { font-size: 14px; padding: 5px 0; }
#content h3 { font-size: 14px; padding: 5px 0; }
#content h4 { font-size: 12px; padding: 5px 0; }
#content h5 { font-size: 12px; }
#content h6 { font-size: 12px; }

#content h3.otsikko { font-size: 14px; color: #0052B4; }

#content img.vasen { float: left; margin: 0 12px 6px 0; }
#content img.oikea { float: right; margin: 0 0 6px 12px; }

#content table { float: none; margin: 10px 0; height: auto; }
#content blockquote { margin-left: 30px; }

#content ul { list-style-type: disc; }
#content ol { list-style-type: decimal; }
#content ul, #content ol { margin: 10px 0 10px 25px; }
#content ul ul, #content ol ol { margin: 2px 0 2px 15px; }

#content span.strong, #contentWide span.highlight { padding: 0 2px; color: #333; font-weight: bold; }
#content p.paivitysvastaava { color: #00923f; }

img.vasen { float: left; margin: 0 12px 6px 0; }
img.oikea { float: right; margin: 0 0 6px 12px; }

#bm2 div#lead { border-color: #fff #fff #ddd #fff; }

/* ------ kurssitietokanta ------ */
#courseListingWrapper a.courseLink, #courseListingWrapper a.courseArea, #content a.courseLink, #content a.courseArea, #content a.courseMainCat { position: relative; display: block; }
	#courseListingWrapper a.courseLink,#content a.courseLink { padding: 4px 5px; border-bottom: 1px solid #cdf; }
		#courseListingWrapper a.courseLink:hover, #content a.courseLink:hover { background-color: #e0eaff; }
		#content a.odd, #courseListingWrapper a.odd { background: #f0f5ff; }
	#content a.courseArea {  }
	#courseListingWrapper a.selectedType, #content a.selectedType { font-weight: bold; }
	#courseListingWrapper a.courseMainCat, #content a.courseMainCat { margin: 12px 0 4px 0; font-size: 14px; font-weight: bold; }

#content #coursedb h4.courseTop,#courseListingWrapper h4.courseTop { margin: 10px 0 0 0; padding: 0 0 2px 0; border-bottom: 1px solid #cdf; }
#content #coursedb strong.infoTitle,#courseListingWrapper strong.infoTitle { display: block; margin: 10px 0 2px 0; }
#content #coursedb p.adobeinfo,#courseListingWrapper p.adobeinfo { padding: 8px 10px; background: #eee; border: 1px dashed #ccc; margin: 15px 0; text-align: center; }
#content #coursedb p.adobeinfo small, #courseListingWrapper p.adobeinfo small { display: block; line-height: 12px; }

#content #coursedb strong.infoTitleAdults,#courseListingWrapper strong.infoTitleAdults { display: block; margin: 10px 0 2px 0; color:#0079C5; }
#content #coursedb p.nodeDescAdults {padding-left: 10px; margin-top: 3px;}

#content #coursedb table td { padding: 3px 0; }
#content #coursedb table td input, #content #coursedb table td select { border: 1px solid #666; background: #f6f6f6; }
#content #coursedb table td input:focus, #content #coursedb table td select:focus { border: 1px solid #999; background: #fff; }
	#content #coursedb table td input.radiobutton { border: none; background: #fff; }
	#content #coursedb table td input.submitter {
		border-width: 2px;
		border-style: solid;
		border-color: #ddd #aaa #aaa #ddd;
		background: #ccc;
		padding: 0 15px;
		}
#content #coursedb table span.mandatory { color: #c00; margin-left: 2px; }
#content #coursedb table span.normalBlock { display: block; font-size: 11px; font-weight: normal; }
#content #coursedb table label { cursor: pointer; }

#courseListingWrapper { position: relative; width: 100%;}
	#courseListingWrapper h3, #courseListingWrapper h4, #courseListingWrapper h5 { margin: 	8px 0 4px; color:#3A3738; }
		#courseListingWrapper h3 { font-size: 14px; padding: 5px 0;}
	#courseListingWrapper a { color:#0079C5; font-size: 12px; font-weight: bold;}
	#courseListingWrapper div.areaList { float:left;  width: 60%; position: relative;  margin-right: 2%;}
	#courseListingWrapper div.shortCourseList { float:left;  width: 38%;}

/* ------ yhteystiedot ------ */
#content #contacts .odd { background: #f0f5ff; }
#content #contacts em span { display: block; font-size: 11px; margin-top: 1px; }

#content #contacts ul#contactAreas { border-top: 1px solid #cdf; margin: 10px 0 0 0; list-style-type: none; }
#content #contacts ul#contactAreas li { background-image: none !important; border-bottom: 1px solid #cdf; margin: 0; padding: 0; }
#content #contacts ul#contactAreas li a { display: block; margin: 0; padding: 5px 6px; }
	#content #contacts ul#contactAreas li a:hover { background: #e0eaff; }

#content #contacts div.contactPerson { position: relative; padding: 6px; border-bottom: 1px solid #cdf; }
	#content #contacts span.personLinks { position: relative; display: block; margin: 0 0 8px 0; }
	#content #contacts span.personLinks a { font-weight: bold; font-size: 14px; }
	#content #contacts span.personLinks a.personMail { position: absolute; bottom: 0px; left: 48%; font-size: 11px; }

	#content #contacts span.personPhones { position: absolute; left: 48%; bottom: 6px; }
	
	#content #contacts img { position: absolute; top: 0px; right: 0px; }
	#content #contacts p.personInfo { position: relative; margin: 0; padding: 0 6px 0 105px; height: 18px; }
	#content #contacts p.personInfo strong { position: absolute; top: 0px; left: 0px; width: 100px; text-align: right; }
	
	#content #contacts #letters { border-bottom: 1px solid #ccc; padding: 5px 6px; margin: 0; text-align: center; }
	#content #contacts #letters a { margin: 0 1px; font-size: 16px; font-weight: bold; }
	#content #contacts #letters a#currentLetter { background: #f0f5ff; padding: 0 3px; border: 1px solid #cdf; }


 /* -- menu -- */
#menu { font-size: 12px; }
	#menuNavi { position: relative; padding: 0 5px 8px 5px; font-size: 13px; font-weight: bold; }
	#menuNavi select {
		margin: 0;
		padding: 0;
		border-width: 1px;
		border-style: solid;
		border-color: #ec0;
		background-color: #fff9cc;
		}
		#menuNavi select:focus { background-color: #fe9; }
	#menuNavi select#restaurantSelect { position: absolute; top: 0px; right: 0px; }
	
	#menu table.menuByDays { border-collapse: collapse; width: 100%; }	
	#menu table.menuByDays td.dayLeft, #menu table.menuByDays td.dayRight { font-size: 11px; padding: 0 0 4px 0; vertical-align: top; width: 49%; }
		#menu table.menuByDays td.dayLeft { padding-right: 2px; }
		#menu table.menuByDays td.dayRight { padding-left: 2px; }
	#menu table.menuByDays h5 { font-size: 11px; padding: 1px 5px; margin: 0 0 2px 0; background: #FFD109; color: #fff; }

	#menu table td.restaurantDesc {}
	#menu table td.restaurantDesc div {border:1px solid #FFD109; margin:0.5em auto; padding:5px;}







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

.clearfix {
	display: inline-block;
	}

/* piilotetaan mac-ie:lta \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* pois piilosta */
 */
 
 /* -- menu -- */
#menu { font-size: 12px; }
	#menuNavi { position: relative; padding: 0 5px 8px 5px; font-size: 13px; font-weight: bold; }
	#menuNavi select {
		margin: 0;
		padding: 0;
		border-width: 1px;
		border-style: solid;
		border-color: #ec0;
		background-color: #fff9cc;
		}
		#menuNavi select:focus { background-color: #fe9; }
	#menuNavi select#restaurantSelect { position: absolute; top: 0px; right: 0px; }
	
	#menu table.menuByDays { border-collapse: collapse; width: 100%; }	
	#menu table.menuByDays td.dayLeft, #menu table.menuByDays td.dayRight { font-size: 11px; padding: 0 0 4px 0; vertical-align: top; width: 49%; }
		#menu table.menuByDays td.dayLeft { padding-right: 2px; }
		#menu table.menuByDays td.dayRight { padding-left: 2px; }
	#menu table.menuByDays h5 { font-size: 11px; padding: 1px 5px; margin: 0 0 2px 0; background: #FFD109; color: #fff; }

	#menu table td.restaurantDesc {}
	#menu table td.restaurantDesc div {border:1px solid #FFD109; margin:0.5em auto; padding:5px;}

