html, body { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }

div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, pre, a, abbr, acronym, address, code, del, dfn, em, img, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, tbody, tfoot, thead, tr { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }

blockquote, q { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; quotes: "" ""; }
blockquote:before, q:before, blockquote:after, q:after { content: ""; }

th, td, caption { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; text-align: left; font-weight: normal; vertical-align: middle; }

table { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; border-collapse: separate; border-spacing: 0; vertical-align: middle; }

a img { border: none; }

#page_text { display: inline; float: left; margin-right: 10px; width: 465px; padding-top: 1em; min-height: 1300px; height: auto !important; height: 1300px; text-align: left; }
* html #page_text { overflow-x: hidden; }
#page_text article { padding-left: 20px; padding-right: 10px; color: white; line-height: 1.5em; display: block; padding-top: 1em; }
#page_text article hgroup h1 { color: black; letter-spacing: -.05em; font-size: 280%; line-height: 100%; }
#page_text article hgroup h2 { color: black; letter-spacing: -.05em; font-size: 150%; padding-top: .2em; }
#page_text article h3 { margin-top: 1em; font-size: 150%; letter-spacing: -.1em; font-weight: bold; }
#page_text article h4 { margin-top: 1em; font-size: 120%; letter-spacing: -.1em; font-weight: bold; }
#page_text article p { margin-top: 1em; text-align: justify; }
#page_text article p.lead { font-weight: bold; text-transform: uppercase; }
#page_text article ol, #page_text article ul { padding-left: 2em; }
#page_text article ul { list-style: disc outside; }
#page_text article ol { list-style: decimal outside; }
#page_text article a { color: white; border-bottom: 2px dotted white; text-decoration: none; }
#page_text article a:hover { border-style: solid; }

form ol { list-style: none; }
form ol li { padding: .3em .1em; }
form input.example { color: #999999; }

#newsletter_form label { display: none; }
#newsletter_form input { width: 100%; font-size: 15px; padding: .2em .3em; }

nav#main_menu { display: block; width: 1000px; height: 150px; margin: 0 auto; }

nav#section_nav { width: 940px; margin: 0 auto; overflow: hidden; display: inline-block; height: 400px; display: block; background: url(../images/section_menu_header.png) no-repeat; }
nav#section_nav { display: block; }
nav#section_nav section { padding: 1em 1em 1em 1em; }
nav#section_nav #section_nav_col_1 { display: inline; float: left; margin-right: 10px; width: 227.5px; }
* html nav#section_nav #section_nav_col_1 { overflow-x: hidden; }
nav#section_nav #section_nav_col_2 { display: inline; float: left; margin-right: 0; width: 148.333px; }
* html nav#section_nav #section_nav_col_2 { overflow-x: hidden; }
nav#section_nav h1 { letter-spacing: -.05em; color: white; font-weight: bold; font-size: 130%; margin-bottom: 0.5em; text-transform: uppercase; font-size: 12px; padding: 1em 0 1em 1em; }
nav#section_nav ul { list-style: none; }
nav#section_nav ul li a { font-size: 12px; color: #999; text-decoration: none; display: block; padding: 0.25em 1em; }
nav#section_nav ul li a:hover { color: black; background-color: white; font-weight: bold; }

.lang_en nav#section_nav #section_nav_col_1 { display: inline; float: left; margin-right: 10px; width: 187.917px; }
* html .lang_en nav#section_nav #section_nav_col_1 { overflow-x: hidden; }
.lang_en nav#section_nav #section_nav_col_2 { display: inline; float: left; margin-right: 0; width: 187.917px; }
* html .lang_en nav#section_nav #section_nav_col_2 { overflow-x: hidden; }

.lang_de nav#section_nav #section_nav_col_2 { display: inline; float: left; margin-right: 0; width: 385.833px; }
* html .lang_de nav#section_nav #section_nav_col_2 { overflow-x: hidden; }
.lang_de nav#section_nav #section_nav_col_1 { display: none; }

#contact_info { background: url(../images/contact_info_bg.png) no-repeat; display: block; position: absolute; left: 645px; top: 450px; width: 238px; height: 395px; color: white; line-height: 1.3em; padding: 120px 20px 20px 20px; text-align: left; font-size: 12px; }
#contact_info #contact_data { font-size: 13px; }
#contact_info hgroup { display: block; margin-bottom: 1.5em; font-size: 14px; }
#contact_info hgroup h1 { font-weight: bold; }
#contact_info hgroup h2 { color: #999; }
#contact_info section { display: block; }
#contact_info section h1 { font-weight: bold; border-bottom: 1px solid #999; }
#contact_info section ul { margin-top: 1em; list-style: none; }
#contact_info section a { text-decoration: none; color: white; }

section#newsletter { top: 900px; }
section#newsletter hgroup { background: url(../images/email_icon.png) no-repeat left top; }

section#guestbook_last_entry { top: 1100px; }
section#guestbook_last_entry hgroup { background: url(../images/email_icon.png) no-repeat left top; }

section.sidebar_block { display: block; position: absolute; left: 645px; text-align: left; width: 238px; }
section.sidebar_block hgroup { display: block; padding-left: 65px; padding-bottom: 1em; }
section.sidebar_block hgroup h1, section.sidebar_block hgroup h1 a { color: #8f4db0; text-transform: uppercase; font-size: 15px; font-weight: bold; }
section.sidebar_block hgroup h2 { color: #999999; }
section.sidebar_block h3 { font-size: 14px; font-weight: bold; color: #8f4db0; }
section.sidebar_block p { color: #333333; text-align: justify; line-height: 1.5em; }
section.sidebar_block p.meta { margin-bottom: 1em; border-bottom: 1px solid #8f4db0; color: #999999; font-size: 10px; }

#page_text h3.other_contacts { font-size: 13px; margin-top: 3em; }

#page_text .contact_section { overflow: hidden; display: block; margin-top: 1em; border-top: 1px dotted #d673ff; padding-top: 1em; }
#page_text .contact_section h1 { margin: 0; color: black; letter-spacing: -.05em; color: white; font-size: 16px; font-weight: bold; }
#page_text .contact_section .address { display: block; }
#page_text .contact_section .info, #page_text .contact_section .available { padding-top: 1em; display: block; margin-left: 1em; padding: .2em 0; }
#page_text .contact_section h2 { color: black; letter-spacing: -.05em; color: white; font-size: 13px; font-weight: bold; }
#page_text .contact_section p { margin: 0; }
#page_text .contact_section .available { display: inline; float: left; margin-right: 0; width: 148.333px; }
* html #page_text .contact_section .available { overflow-x: hidden; }
#page_text .contact_section .info { display: inline; float: left; margin-right: 10px; width: 227.5px; }
* html #page_text .contact_section .info { overflow-x: hidden; }
#page_text .contact_section .contact_info { display: block; background-color: #9d54c1; overflow: hidden; padding: 1em 0; }

#page_text #main_contact .misc { font-size: 11px; padding: .5em 1em; }

body { background: url(../images/bg.jpg) center top; font: 12px  helvetica, verdana, arial, sans-serif; }

#container { padding-top: 30px; position: relative; width: 1000px; margin: 0 auto; }
#container #content { width: 940px; margin: 0 auto; overflow: hidden; display: inline-block; position: relative; background: url(../images/content-bg.png) left top repeat-y; }
#container #content { display: block; }
#container #image_photo { width: 511px; height: 619px; background: url(../images/mp_image_photo.png) no-repeat; position: absolute; right: 0; top: 0; }
#container footer { clear: both; display: block; text-align: center; padding-top: 100px; padding-bottom: 10px; color: #d673ff; font-size: 85%; }
#container footer a { color: #ff92ff; }

.polaroid { display: block; text-align: center; background-color: white; padding: 10px 10px 30px 10px; margin-top: 2em; border: 1px solid #999999; }

#flashMessage { padding-left: 20px; padding-right: 10px; color: white; line-height: 1.5em; display: block; letter-spacing: -.05em; font-size: 13px; font-weight: bold; background-color: #d673ff; }

#GuestbookAddForm fieldset legend { letter-spacing: -.05em; font-size: 16px; font-weight: bold; margin: 1em 0; }
#GuestbookAddForm fieldset label { display: block; letter-spacing: -.05em; margin-top: 1em; font-weight: bold; font-size: 11px; color: #d673ff; }
#GuestbookAddForm fieldset input, #GuestbookAddForm fieldset textarea { font-size: 14px; color: black; width: 90%; padding: 1%; }
#GuestbookAddForm fieldset .error textarea, #GuestbookAddForm fieldset .error input { border: 2px solid #f00; color: #f00; }

#page_text .guestbook_entry { display: block; margin-top: 2em; font-size: 14px; line-height: 1.5em; text-align: justify; }
#page_text .guestbook_entry header { display: block; border-bottom: 1px solid; margin-bottom: .5em; overflow: hidden; color: white; }
#page_text .guestbook_entry header h1 { font-size: 15px; font-weight: bold; letter-spacing: -.05em; }
#page_text .guestbook_entry header p.meta { font-size: 10px; margin: 0; }

body.page_index #container #content { background: url(../images/content-bg-index.png) left top repeat-y; }
body.page_index #container #contact_info { background: url(../images/contact_info_bg-index.png) no-repeat; }
body.page_index #container section#newsletter hgroup { background: url(../images/email_icon-index.png) no-repeat left top; }
body.page_index #container section#guestbook_last_entry hgroup { background: url(../images/email_icon-index.png) no-repeat left top; }
