/* GENERAL */
* {
	outline: none;
}

abbr,
acronym {
	border: none;
}

q {
	quotes: none;
	font-style: italic;
	color: #666;
}

hr {
	margin: 25px 0;
	height: 1px;
	background: #046;
	border: none;
	border-top: 1px solid #046;
}

/* HTML, BODY */

html {
	background: #E9E9E9;
}

body {
	font: 10pt/20px "Trebuchet MS", sans-serif;
	color: #333;
}

/* CONTAINER */

#container {
	background: url("images/container_bg.png") repeat-y;
}

/* HEADER */

#header {
	background: #08C /* image is randomised in the HTML */ no-repeat 20px 20px;
}

#header h1 {
	background: url("images/header_bg.png") no-repeat;
}

#header p {
	color: #FFF;
	text-align: right;
	font-size: 12pt;
	font-weight: bold;
	text-transform: uppercase;
}

/* MENU */

/* first level */
#menu li {
	list-style-type: none;
	margin-right: 10px;
	float: left;
}

#menu a {
	display: block;
	padding: 5px 10px;
	color: #FFF;
	text-decoration: none;
	font-size: 9pt;
	font-weight: bold;
}

#menu a.submenu {
	padding-right: 22px;
	background: url("images/menu_arrow.gif") no-repeat right center;
	cursor: default;
}

#menu a:hover {
	background-color: #000;
	cursor: default;
}

#menu a:visited:hover,
#menu a:link:hover {
	text-decoration: underline;
	cursor: pointer;
}

#menu a.menu_open {
	background-color: #000;
}

/* second level */
#menu ul {
	visibility: hidden;
	z-index: 100;
	margin: 0;
	padding: 0;
	position: absolute;
	background: #000;
}

#menu ul li {
	float: none;
	margin: 0;
}

#menu ul li a {
	float: none;
	width: 150px;
}

#menu ul li a:hover {
	background-color: #333;
}

/* NAVIGATION PATH */

#navpath {
	font-size: 7pt;
	text-indent: 10px;
	line-height: 15px;
	color: #AAA;
}

#navpath a {
	color: #AAA;
	text-decoration: none;
}

#navpath a:hover {
	color: #666;
	text-decoration: underline;
}

/* CONTENT */

#content h1 {
	margin: 30px 0 8px 0;
	line-height: 25px;
	font-size: 17pt;
	font-style: italic;
	color: #000;
	clear: both;
}

#content h2 {
	margin: 20px 0 5px 0;
	font-size: 13pt;
	color: #046;
	clear: both;
}

/* these styles add a facy Web 2.0 effect */
/*#content>h2 {
	position: relative;
}
#content>h2 span {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background: url("images/h2_fade.png") left top;
}*/

#content h3 {
	margin: 20px 0 5px 0;
	font-size: 10pt;
	color: #333;
	text-decoration: underline;
	/*clear: both;*/
}

#content a {
	color: #046;
	text-decoration: underline;
}

#content a:hover {
	color: #08C;
}

#content a img {
	border: none;
	cursor: pointer;
}

#content sup {
	line-height: 1em;
	vertical-align: 4px;
}

#content p {
	margin: 0 0 15px 0;
	text-align: justify;
}

#content p.more {
	margin-bottom: 0;
	text-align: right;
	font-style: italic;
}

#content p.more a {
	color: #666;
}

#content p.more a:hover {
	color: #333;
}

#content p.image {
	text-align: center;
}

#content img.left {
	float: left;
	margin: 2px 15px 10px 0;
}

#content img.right {
	float: right;
	margin: 2px 0 10px 15px;
}

#content span.pr {
	font-weight: bold;
	color: #08C;
}

#content span.disk {
	cursor: help;
	text-decoration: underline;
}

#content ul {
	margin: 0 0 15px 0;
	padding: 0 0 0 20px;
}

#content ul ul {
	margin-bottom: 5px;
}

#content ul li {
	list-style-type: disc;
}

#content ol {
	margin: 0 0 15px 0;
	padding: 0 0 0 20px;
}

#content ul.sitemap {
	font-weight: bold;
}

#content ul.sitemap ul {
	font-weight: normal;
}

#content ul.sitemap ul ul {
	margin-bottom: 0;
}

#content table {
	margin: 0 0 15px 0;
	width: 100%;
	border-collapse: collapse;
	font-size: 10pt;
	line-height: 20px;
}

#content table.smaller {
	font-size: 9pt;
	line-height: 18px;
}

#content table.smallest {
	font-size: 8pt;
	line-height: 16px;
}

#content table th {
	border-bottom: 1px solid #666;
}

#content table th,
#content table td {
	padding: 1px 0;
	text-align: left;
	vertical-align: top;
}

#content p+h2,
#content ul+h2 {
	margin-top: 30px;
}

#content table+h2 {
	margin-top: 10px;
}

#content table+h3 {
	margin-top: 10px;
}

#content h1+h2 {
	margin-top: 15px;
}

#content h2+h3 {
	margin-top: 0;
}

#content table.rows {
	margin: 0 -2px 15px -2px;
}

#content table.rows th,
#content table.rows td {
	padding: 1px 2px;
}

#content table.rows tr.odd {
	/* inherts white */
}

#content table.rows tr.even {
	background: #E9E9E9;
}

#content table.limieten {
	font-size: 8pt;
	line-height: 1.3em;
}

#content table.pictures {
	margin: 10px 0 0 0;
	line-height: 15px;
}

#content table.pictures td {
	text-align: center;
	vertical-align: middle;
	padding-bottom: 15px;
}

#content table.pictures a img {
	border: 2px solid #E9E9E9;
	cursor: pointer;
}

#content table.pictures a:hover img {
	border-color: #333;
}

#content table.overview {
	margin: 10px 0 0 0;
}

#content table.overview td {
	padding: 0;
}

#content table.overview tr.titles td {
	vertical-align: top;
	padding: 0 10px 15px 10px;
}

table.calendar thead {
	display: none;
}

#content div#notice {
	background-color: #E9E9E9;
	border: 1px solid #999;
	margin: 20px;
	padding: 15px 20px 0 20px;
}

#content div#notice h2 {
	margin-top: 0;
}

#content div#notice-xmas {
	background: #D7E2D8 url("images/bg_xmas_notice.png") no-repeat 2px 2px;
	border: 1px solid #051;
	margin: 20px;
	padding: 10px 30px 10px 60px;
}

#content div#notice-xmas * {
	font-weight: bold; 
	color: #051;
	margin: 0;
	text-indent: 60px;
}

/* GUESTBOOK */

#sign {
	margin: 20px 0;
	background: #E9E9E9;
	border: 1px solid #E9E9E9;
}

#sign p {
	text-align: center;
	margin: 0;
	padding: 5px;
	font-weight: bold;
	font-style: italic;
	cursor: pointer;
}

#sign p.disabled {
	cursor: default;
}

#sign form {
	display: none;
	margin: -15px 0 0 0;
	padding: 0 4px 4px 4px;
}

#sign fieldset {
	margin: 15px;
	padding: 0;
	border-style: none;
}

#sign label {
	display: block;
	width: 100px;
	float: left;
	clear: left;
	padding-top: 3px;
	font-weight: bold;
	line-height: 1.3em;
}

#sign input,
#sign textarea {
	font: 10pt/1.3em "Trebuchet MS", sans-serif;
	margin: 1px 0;
}

#sign input.button {
	line-height: 1.5em;
	margin-top: 8px;
	font-weight: bold;
}

#sign img.captcha {
	vertical-align: -4px;
}

#sign #guestbook_links {
	display: none;
}

#content div.page {
	display: none;
}

#content div.page p.info {
	margin-bottom: 2px;
	color: #666;
	font-size: 8pt;
}

#content div.page p.info a {
	color: #666; 
}

#content div.page p.info a:hover {
	color: #046; 
}

#content ul.guestbook_nav {
	margin: 0 0 5px 0;
	padding: 0;
	text-align: center;
	font-weight: bold;
}

#content ul.guestbook_nav li {
	display: inline;
	margin: 0;
	padding: 0 2px;
	background: transparent;
}

/* SIDEBAR */

#extra {
	margin-top: 25px;
	background: #E9E9E9 url("images/sidebar_bottom.png") no-repeat center bottom;
	padding-bottom: 5px;
}

#extra h2 {
	margin: 10px 0 0 0;
	padding: 5px 10px;
	font-size: 11pt;
	color: #000;
}

#extra h2.extra-first-header {
	margin: 0;
	background: url("images/sidebar_top.png") no-repeat center top;
}

/* latest picture */
#extra p.image {
	margin: 0 0 -17px 0;
	text-align: center;
}

#extra p.image a img {
	border: none;
}

/* favorites */
#extra ul {
	margin: 0 10px;
	padding: 0;
	font-size: 9pt;
	line-height: 15px;
}

#extra ul li {
	list-style-type: none;
	padding: 0 0 5px 12px;
	text-indent: -12px;
}

#extra ul li a {
	background: url("images/bullet.gif") no-repeat 0 7px;
	padding: 0 0 0 12px;
	color: #333;
}

#extra a:hover {
	color: #046;
}

/* agenda */
#extra table {
	width: 180px;
	margin: 0 10px;
	border-collapse: collapse;
	font-size: 8pt;
	line-height: 15px;
}

#extra thead {
	display: none;
}

#extra tbody tr.first-row td {
	border-top: none;
}

#extra td {
	padding: 1px 0;
	vertical-align: top;
	border-top: 1px solid #CCC;
}

#extra td.date {
	color: #666;
	text-align: right;
	padding-right: 8px;
}

#extra table a {
	color: #333;
	text-decoration: underline;
}

#extra table a:hover {
	color: #046;
}

/* FOOTER */

#footer {
	padding: 30px 20px 20px 20px;
	background: url("images/footer_bg.png") no-repeat center bottom;
}

#footer p {
	margin: 0;
	background: #E9E9E9;
	text-align: center;
	font-size: 8pt;
	color: #666;
}

#footer a {
	color: #666;
	text-decoration: none;
}

#footer a:hover {
	color: #333;
	text-decoration: underline;
}
