/* --------- Generic definitions --------------- */
body
{
	line-height: 1.5em;
	font-family: Verdana, Helvetica, Arial, Sans-Serif;
	font-size: 11px;
	color: #333;
	margin: 0px;
	padding: 0px;
	background-color: #F2EDE0;
	height: 100%;
	position: relative;
}

#dim-screen {
	Z-INDEX: 99; POSITION: absolute; FILTER: alpha(opacity=90); BACKGROUND-COLOR: #000; MARGIN: 0px auto; WIDTH: 100%; DISPLAY: none; HEIGHT: 100%; TOP: 0px; LEFT: 0px; opacity: .90
}

/* --------- Seasonable --------------- */

.snowman, .snowmanIE6
{
	position: absolute;
	z-index: 999;
	bottom: -10px;
	right: 20px;
}
.snowmanIE6
{
	visibility: hidden;
}

/* --------------- Default elements -------------- */

img
{
	border: none;
}
p
{
}

h2
{
	font-family: Helvetica, Arial, Verdana;
	font-size: 1.4em;
}
h3
{
	font-family: Helvetica, Arial, Verdana;
	font-size: 1.2em;
}

h4, h5, h6
{
	font-family: Verdana, Helvetica, Arial;
	font-size: 1.0em;
}

input, textarea
{
	font-family: Verdana, Helvetica, Arial;
	padding: 2px;
}
a
{
	text-decoration: underline;
	color: #0080c0;
}
a:hover
{
	color: #74aee3;
}

ul
{
	padding: 0px;
	margin: 0 0 1em 1.5em;
}
li
{
	padding: 0px;
}
form
{
	margin: 0;
	padding: 0;
}

a
{
	color: #2040f0;
	text-decoration: underline;
}
a:hover
{
	color: #60a0f0;
}

/* ------------- Attributes ------------*/

.ajaxprogress * { display:inline !Important;}
.ajaxprogress { display:inline;}

.fullWidth
{
	width: 100% !important;
}

.big
{
	font-family: Arial, Verdana !important;
	font-size: 1.8em;
	font-weight: bold;
}

.highlight
{
	font-weight: bold;
	font-family: Verdana, Helvetica, Arial, Sans-Serif !important;
	font-size: 12px;
	line-height: 1.4em;
	color: #808080;
}

.divider
{
	padding: 10px 10px 10px 10px;
	border-bottom: solid 1px #c0c0c0;
}

.boxedblue
{
	padding: 1em;
	margin: 1em;
	background-color: #ffffff;
	border: solid 1px #e0e0e0;
}

.boxedred
{
	padding: 1em;
	margin: 1em;
	background-color: #ffffff;
	border: solid 1px #e0e0e0;
}

.inputbox
{
	padding: 1em;
	background-color: #ffffff;
	border-top: dotted 1px #c0c0c0;
}


.dark
{
	font-weight: bold;
}

.oneColumn
{
	padding: 10px 10px 10px 10px;
}

.twoColumn
{
	float: left;
	width: 50%;
	padding: 0;
}
.twoColumnThick
{
	float: left;
	width: 60%;
	padding: 0;
}
.twoColumnThin
{
	float: left;
	width: 40%;
	padding: 0;
}
.columnOne
{
	padding: 0 20px 0 0;
}
.columnTwo
{
	border-left: 1px solid #e0e0e0;
	padding: 0 0 0 20px;
}
.clear
{
	clear: both;
}

.band
{
	position: relative;
	background: #86C9EF url(../band-background.gif) repeat;
	border-bottom: 1px solid #66a9cF;
	border-top: 1px solid #66a9cF;
	color: #000040;
	padding: 0px;
	margin-top: 10px;
}

/* Slider teaser */

#slider li
{
	overflow: visible;
	position: relative;
}

#slider li div.info
{
	background: transparent url(../whitetransback.png) repeat;
	color: #202020;
	font-size: 0.9em;
	position: absolute;
	right: 5px;
	bottom: 5px;
	width:50%;
	padding: 5px;
	text-align: right;
	line-height: 1.2em;
}

#slider p.project
{
	padding: 0;
	margin: 0;
	font-weight: bold;
	color: #666;
}
#slider p.client
{
	font-style: italic;
	padding: 0;
	margin: 0;
}

.band p
{
	margin: 0;
	padding: 0 0 0.5em 0;
}
.band h2
{
	margin: 0;
	padding: 0.5em 0 0.5em 0;
}
.band .pusher
{
}
#Teaser .info
{
	color: #ffffff;
	background: #B66A38;
	padding: 20px;
}
#Teaser .info a
{
	color:
	font-weight: bold;
}
.band .columnTwo
{
	border: none;
}

.Paper
{
	position: relative;
	clear: both; 
	margin: 0 auto;
	width: 780px;
	padding: 0;
	min-width: 450px;
	text-align: left;
}

#ajax
{
	position: absolute;
	right: 2px;
	top: 2px;
	z-index: 1000;
}

.small
{
	font-size: 0.8em;
	line-height: 1.6em;
}

/* ----------- Input forms ---------------- */

.tableform
{
	margin: 1em 0;
}
.tableform .row
{
	padding: 10px 0;
	vertical-align: bottom;
	clear: left;
	margin: 0 !important;
}
.formlabel
{
  float: left;
  width: 60px;
  padding: 0 5px;
  text-align: right;
  vertical-align: bottom;
}
.formfield
{
  font-size: 1.1em;
  float: left;
  text-align: left;
  vertical-align: bottom;
}
.formareafield
{
	width: 100%;
	clear: left;
	font-size: 1.1em;
	float: left;
	text-align: left;
}
.formbutton
{
	font-weight: bold;
	font-size: 1.1em;
}
.formerror
{
	padding: 0 5px;
    vertical-align: bottom;
	float: left;
	font-weight: bold;
	text-align: left;
	font-size: 0.8em;
	line-height: 1.2em;
}
.forminfo
{
	font-size: 0.8em;
}


/* ------------ Basics -------------- */

div#Page
{
	padding: 0px;
	margin: 0;
}

/* ------------ Teaser ----------------- */

.Buzzer
{
}

.Buzzer
{
	background-image: url(../teaser.png);
	background-position: right bottom;
	background-repeat: no-repeat;
}

#Teaser
{
	font-family: Helvetica, Arial, Verdana;
	font-size: 16px;
	line-height: 1.4em;
	color: #666;
	
	width: 850px;
	margin: 0px;
	padding: 0px;
	width: 100%;
	float: none;
	clear: both;
}

#Teaser .big
{
	font-size: 2.5em !important;
}

#Page .LeftCol
{
	border-style: solid none solid none;
	border-width: 1px;
	border-color: #000000;
	background-color: #f3eeaf;
}

#Page td.Paper
{
	text-align: left;
	width: 778px;
	background-color: #e8f3fa;
}

#Page table.Paper
{
	width: 100%;
	padding: 0px;
	margin: 0px;
	background-color: Transparent;
}

#BelowHeader
{
	padding-top: 60px;
}

/* --------------- Headers ---------------- */

#Header
{
	font-size: 1.2em;
	background-position: left top;
	float: none;
	padding: 20px 0px 10px 0px;
	margin: 0px;
	text-align: center;
	clear: both;
	width: 100%;
	background: #202020;
	border-bottom: solid 1px #d0d0d0;
	position: fixed;
	height: 30px;
	z-index: 9999;
}

#Header .logo img
{
	float: right;
}
#Header p
{
}
#Header .navigation
{
	color: #e0e0e0;
}
#Header .navigation a
{
	padding: 0px 10px 0 0;
	color: #e0e0e0;
}
#Header .navigation a.selected
{
	text-decoration: none;
	font-weight: bold;
	color: #000000;
}

/* ------------------- Content --------------------- */

#Middle
{
	margin: 2em 0 2em 0;
	padding: 0px;
	float: none;
	clear: both;
}
#Middle h1
{
	margin: 0;
	line-height: 1.1em;
	font-size: 2em;
	font-weight: bold;
	color: #000000;
}
#Middle h2
{
	margin: 1em 0 0.5em 0;
	font-size: 1.7em;
	font-weight: bold;
	color: #000020;
}
#Middle h3
{
	margin: 1.5em 0 0.5em 0;
	font-size: 1.3em;
	font-weight: bold;
	color: #000020;
}

#Content
{
	width: 70%;
	float: left;
	padding: 0;
	margin: 0 0 0;
}
#Content div.text
{
	padding: 0px;
}
#Content div.subContent
{
	padding: 0 0 6px 6px;
}
#Content table.subContent
{
}
#Content td.header
{
	vertical-align: top;
	font-weight: bold;
}
#Content td.content
{
	vertical-align: top;
}
#Content p
{
	font-size: 1.2em;
	margin: 0 0 0.5em 0;
	padding: 0;
}

#InfoBox
{
	padding: 0.5em 0 0 0.5em;
	margin: 1.5em 0 1.5em 0;
	position: relative;
	width: 25%;
	min-height: 200px;
	float: right;
	border-left: solid 1px #e0e0e0;
	border-top: solid 1px #e0e0e0;
}

#InfoBox ul
{
	list-style-type: none;
}

#InfoBox ul li
{
	margin: 0.5em 0 0.5em 0;
	padding: 0;
}

/* ------------ Right box attributes/colors ---------- */

#RightColumn .blue h6
{
	background-color: #0080c0;
}
#RightColumn .blue a
{
	color: #0080c0;
}
#RightColumn .green h6
{
	background-color: #00a040;
}
#RightColumn .green a
{
	color: #00a040;
}
#RightColumn .red h6
{
	background-color: #c04000;
}
#RightColumn .red a
{
	color: #c04000;
}

#MenuBox
{
	overflow: hidden;
	text-align: center;
	font-weight: bold;
	padding: 0 0 0 0;
	margin: 0 1px 1em 0;
}
#MenuBox h6
{
	text-align: left;
	padding: 5px !important;
	margin: 0 0 0 0 !important;
	color: #ffffff !important;
	font-weight: bold;
}

#MenuBox h1 a
{
	color: #ffffff !important;
	text-decoration: none;
	font-weight: bold;
}

#MenuBox ul
{
	font-family: helvatica, Sans-Serif;
	font-size: 15px;
	font-weight: bold;
	margin: 0;
	padding: 0;
	list-style: none;
	vertical-align: middle;
}

#MenuBox ul li
{
	text-align: left;
	float: none;
	clear: both;
	padding: 5px 0 5px 10px;
	margin: 0;
}
#MenuBox ul li.selected
{
	background-position: left center;
	background-image: url('../Arrow.gif');
	background-repeat: no-repeat;
}
#MenuBox ul li.empty
{
	padding: 0px;
	height: 1em;
}

#MenuBox ul li li
{
	padding-left: 20px;
}

#MenuBox a
{
	font-weight: bold !important;
	padding: 0;
	margin: 0px;
	text-decoration: none;
}
#MenuBox a:hover
{
	color: #00ff00;
}
#MenuBox a.selected
{
	border-bottom: none;
	font-weight: bold;
	color: #000000;
	text-decoration: none;
}
#MenuBox li li a.selected
{
	font-weight: normal;
}

#RightColumn
{
	float: right;
	width: 28%;
}

#NewsBox
{
}
#NewsBox ul
{
	margin: 0;
	padding: 0 0 0 0;
	list-style: none;
	vertical-align: middle;
}
#NewsBox ul li
{
	text-align: left;
	padding: 10px;
	margin: 0;
}


#Extras
{
	background-color: #ff8000;
	float: right;
	margin: 10px 0 10px 10px;
	padding: 10px;
	border: solid 1px #ff8000;
}
.FirstPageTable
{
	margin: 0px;
	padding: 0px;
	width: 100%;
	background-image: url(../Couple.jpg);
	background-repeat: no-repeat;
	background-position: 0 100%;
}
.FirstPageTable td
{
	margin: 0px;
	padding: 0px;
	vertical-align: top;
	text-align: left;
}

/* --------------- Content blocks ------------ */

#Content .leftImage
{
	margin: 0 10px 10px 0;
	float: left;
}

#Content .rightImage
{
	margin: 0 0 10px 10px;
	float: right;
}

#Content .textBlock
{
	position: relative;
	clear: left;
}

#Content .textBlock .refpic
{
	float: right;
	position: relative;
}

#Content .textBlock .refBlock
{
	position: relative;
	margin: 0;
	padding: 0;
	float: right;
	width: 220px;
	overflow: visible;
	text-align: right;
}

#Content .textBlock .refBlock div /* This needs to be doubled for NS6 */
{
	margin: 0 0 10px 10px;
	padding: 0;
	position: relative;
	overflow: visible;
}

#Content .textBlock .refBlock img
{
}

#Content .textBlock .refBlock a img
{
	padding: 2px;
}

#Content .textBlock .refBlock a:hover img
{
	border: 2px solid #e0e0e0;
	padding: 0px;
}


table.tabledisplay
{
	margin: 2px;
}

.tableseparator td
{
	border-top: dotted 1px #e0e0e0;
}

#Content .textArea
{
	margin: 15px 5px 0em 0px;
	clear: left;
}

#Content ul.noBullet
{
	list-style: none;
}

table.info
{
	margin: 0;
	padding: 0;
	border: none;
}
table.info td
{
	vertical-align: middle;
	margin: 0;
	padding: 2px;
}

a.followupLink
{
}

a.followupLink:hover
{
}

/* Subdefinitions
*/
.CoupleImg
{
	background-color: #ffffff;
	background-image: url(../Couple.gif);
	background-position: left center;
	background-repeat: no-repeat;
}

#TopNav
{
	position: relative;
	padding: 0;
	text-align: center;
}
#TopNav ul.MainMenu
{
	display: inline;
	list-style-type: none;
	margin: 0;
}
#TopNav ul.SubMenu
{
	height: 20px;
	display: inline;
	list-style-type: none;
	margin: 0;
	padding: 2px;
	position: absolute;
	left: 0;
	top: 20px;
	background-color: #ad1347;
	border: solid 1px #ffffff;
}
#TopNav ul.SubMenu li
{
	position: relative;
	margin: 0;
}
#TopNav ul.SubMenu li a
{
	padding: 0 10px 0 10px;
	text-decoration: none;
	color: #808080;
	font-size: 8px;
	background-color: Black;
}
#TopNav ul.SubMenu li.selected a
{
	background-color: Blue;
	font-weight: bold;
}

#TopNav ul.MainMenu li
{
	display: inline;
	margin: 0;
}
#TopNav ul.MainMenu li a
{
	margin: 5px;
	text-decoration:none;
	color: #606060;
	display: inline;
}
#TopNav ul.MainMenu li.selected a
{
	font-weight: bold;
	color: #000000;
}

#TopNav a:hover span
{
	display: inline;
	padding: 0;
	text-decoration: underline;
}
#TopNav a span
{
	float: none;
	text-decoration: none;
	white-space: nowrap;
}

#InfoHeader
{
	height: 30px;
	padding: 0px;
	margin: 0 auto 0 auto;
	width: 778px;
	background-color: #ff8000;
	color: #ffffff;
	text-align: left;
}
#InfoHeader .box
{
	height: 100%;
	background-image: url(../endheader_right.gif);
	background-position: 100% 100%;
	background-repeat: no-repeat;
}
#InfoHeader .box div
{
	height: 100%;
	background-image: url(../endheader_left.gif);
	background-position: 0% 100%;
	background-repeat: no-repeat;
}
#InfoHeader .box div div
{
	height: 100%;
	background-image: url(../subheader_right.gif);
	background-position: 100% 0%;
	background-repeat: no-repeat;
}
#InfoHeader .box div div div
{
	height: 100%;
	background-image: url(../subheader_left.gif);
	background-position: 0% 0%;
	background-repeat: no-repeat;
}
#InfoHeader .box div div div div
{
	height: 100%;
}
#InfoHeader table
{
	height: 100%;
}
#InfoHeader .navigation
{
	padding: 0 0 10px 10px;
	vertical-align: middle;
	font-size: 1em;
	text-align: left;
	color: #ffffff;
}
#InfoHeader .navigation a
{
	color: #ffffff;
	text-decoration: none;
}
#InfoHeader .navigation a.selected
{
	font-weight: bold;
}

.borderImage
{
	border: solid 1px #e0e0e0;
}

#Footer
{
	margin: 0 0 0 0;
	padding: 20px 0;
	clear: both;
	width: 100%;
}

#Footer .Paper
{
	border-top: dotted 1px #404040;
	text-align: center;
}

#Footer a
{
	color: #808080;
	font-weight: bold;
	text-decoration: none;
}
#Footer a:hover
{
	color: #404040;
	text-decoration: underline;
}

#Footer img
{
	padding: 20px;
}

#Copyright
{
	padding: 20px;
}


.formTable td, .formTable th
{
	vertical-align: middle;
	text-align: left;
}
/* Errordisplay in forms */
.errorSpan
{
	position: relative;
	z-index: 1;
	left: 0px;
	top: 0px;
}
.ErrorReqField
{
	font-weight: bold;
	font-size: 0.9em;
	color: #800000;
	margin: 10px 0 0 0;
	padding: 2px;
	display: block;
}
.redbox
{
	border: solid 1px #c00000;
}
div.redbox, span.redbox
{
	margin: 1px !important;
	padding: 2px !important;
	display: inline-block !important;
}
.dividerLine
{
	width: 100%;
	height: 1px;
	border: none;
	background: #8080B0;
	margin: 10px 0 10px 0;
	padding: 0;
	display: block;
	overflow: hidden;
}
.small td
{
	font-size: 0.8em;
}
.centertable 
{
 	  width:100%;
      margin: 0 auto;
      text-align: center;
      vertical-align: middle;
}
.content
{
      margin: 0 auto;
      text-align: left;
      vertical-align: middle;
}
.right
{
	float: right;
}
#info
{
	font-size: 9px;
	color: #d0d0d0;
}

/*	Color Boxes
*/

div.BlueBox
{
	margin: 0;
	padding: 0;
	width: 100%;
	text-align: left;
	background: url(../BlueBoxRound_br.gif) no-repeat right bottom;
}
div.BlueBox div
{
	background: url(../BlueBoxRound_bl.gif) no-repeat left bottom;
}
div.BlueBox div div
{
	background: url(../BlueBoxRound_tr.gif) no-repeat right top;
}
div.BlueBox div div div
{
	margin: 0;
	padding: 15px 15px 15px 15px;
	background: url(../BlueBoxRound_tl.gif) no-repeat left top;
}
div.BlueBox div div div div
{
	margin: 0;
	padding: 0;
	background-image: none !important;
}
	 
div.BlueBox h3
{
	margin: 0 !important;
	padding: 0 !important;
	font-size: 1.6em !important;
	color: #8080B0;
	width: 100%;
}

/* Parts */
div.FormBox
{
	margin: 0;
	padding: 0;
	width: 100%;
	text-align: left;
	background: url(../BlueBoxRound_br.gif) no-repeat right bottom;
}
div.FormBox div
{
	background: url(../BlueBoxRound_bl.gif) no-repeat left bottom;
}
div.FormBox div div
{
	background: url(../BlueBoxRound_tr.gif) no-repeat right top;
}
div.FormBox div div div
{
	margin: 0;
	padding: 10px 15px 10px 15px;
	background: url(../BlueBoxRound_tl.gif) no-repeat left top;
}
div.FormBox div div div div
{
	margin: 0;
	padding: 0;
	background-image: none;
}
div.FormBox h3
{
	margin: 0px 0px 15px 0px !important;
	padding: 0px !important;
	font-size: 1.4em !important;
	color: #8080B0;
	border-bottom: solid 1px #8080B0;
	width: 100%;
}

.center
{
	text-align: center;
}
/*Parts
*/
#Registration
{
	padding: 20px;
}
#UserLogin
{
	padding: 20px;
}

/* Userclasses */

div.projects
{
	font-size: 1.1em;
	position: relative;
	margin: 3em 0 0 0;
	padding: 0;
	border: solid 1px #e0e0e0;
}


table.projects
{
	width: 100%;
	margin: 0;
	background-color: #ffffff;
}

table.projects td
{
	padding: 1px 5px 1px 5px;
}

table.projects td.type
{
	font-weight: bold;
	width: 10em;
}

/* Forms and Extras */

.leftInfo
{
	position: relative;
	width: 50%;
	margin: 1em !important;
}

.rightInfo
{
	margin: 1em !important;
	clear: right;
	position: relative;
	z-index: 999;
	float: right;
	width: 40%;
}


/* G-Map */
.map
{
	position: relative;
	display: block;
	margin: 0 1em 0 0;
	padding: 0;
	height: 150px;
	text-align: center;
	background-color: #ffffff;
}
.mapLoading
{
	text-align:center;
	display: block;
	position: absolute;
	top: 50%;
	left: 0px;
	width: 100%;
}
.mapInfo
{
	float: left;
	text-align: left;
}
.mapInfo h2
{
	margin-top: 0.5em !important;
}

/* LavaLamp Specific CSS: */

#lavaMenu 
{
	padding: 0;
	margin: 0;
	overflow: visible;
}
#lavaMenu li {
	float: left;
	list-style: none;
	padding: 0 4px 0 0;
	margin-right: 10px;
	position: relative;
	z-index: 10;
}

#lavaMenu li.backLava {
    height: 20px;
	z-index: 8;
	position: absolute;
	padding: 0;
	border-top: 4px solid #666;
}

#lavaMenu li a 
{
	font-weight: bold !important;
	text-decoration: none;
	color: #e0e0e0;
	outline: none;
	text-align: center;
	top: 7px;
	z-index: 10;
	display: block;
	float: left;
	height: 25px;
	position: relative;
	overflow: hidden;
	margin: auto 4px;    
	padding: 0px !important;
}
#lavaMenu li a:hover, #lavaMenu li a:active, #lavaMenu li a:visited {
	color: #e0e0e0;
	border: none;
}
