.clearer.tabs { height: 1.5em; }
.left { float: left; }
.center { float: left; margin-left: 0.6em; }
.right { float: right; }

html, body { height: 100%; margin: 0; padding: 0; }
/*html, body, #bg-holder { min-height: 100%; margin: 0; padding: 0; }*/
#bg-holder { position: relative; height: 100%; }
#content-holder { min-height: 100%; }
#footer-spacer { height: 50px; clear: both; }
#footer-holder { height: 50px; margin-top: -50px; }
#footer { width: 842px; margin-left: auto; margin-right: auto; }
#content { width: 842px; margin-left: auto; margin-right: auto; }
#header { width: 880px; margin-left: auto; margin-right: auto; text-align: center; }
#navi-holder { height: 42px; margin: 0; }
#navi { width: 842px; margin: auto; }
#navi { display: none; }
/*#navi * { vertical-align: middle; }*/

/* navigation */
.navi-trenner-l { margin-left: -4px; }
.navi-trenner-m { margin-left: 0; }
.navi-trenner-r { margin-right: -4px; }
.navi-holder { position: relative; z-index: 99; }
.navi-main, .navi-service { list-style-type: none; margin: 0; padding: 0; }
.navi-main li, .navi-service li { float: left; margin: 0; padding:0; }
.navi-main li *, .navi-service li * { vertical-align: middle; }
.navi-item { padding: 0 1em; }
.navi-service { float: right; }

.navi-main ul li { float: none; list-style-type: none; }
ul.level1 li { position: relative; }
ul.level2 { position: absolute; top: 41px; left: 0; margin: 0; padding: 0; }
ul.level2 * { position: relative; }
ul.level2 li { padding: 0.5em 0 0.5em 1em; }
ul.level3 { margin: 0.5em 0 -0.5em -1em; padding: 0; }
ul.level3 li { padding: 0.5em 0 0.5em 2em; }

#service-button-holder { position: absolute; right: 0; top: 0; padding-right: 7px; }
.service-button { width: 99px; height: 23px; float: left; text-align: center; padding-top: 0.1em; margin-left: -4px; }

.breadcrumb { margin: 0 0 0.2em; }

/* content */
#content { padding: 10px; }
#content-main { float: left; width: 610px; }
#content-teaser { float: right; width: 224px; }
.box { padding: 0.75em 0.75em 0; } /* ie breaks shadows if all padding is done here -> moved bottom to .shadow */
.content-img { float: left; margin: 0.2em 1em 0.2em 0; position: relative;/* width: 280px;*/ }
.content-img.right { float: right; margin: 0.2em 0 0.2em 1em; }
.content-img-title { margin: 0.4em 0 0 0; }
.headline-img { height: 7.5em; overflow: hidden; position: relative; }
table.abstand td { padding: 0 6px; }
table.abstand { margin-left: -5px; margin-right: -6px; }
#controls { position: absolute; right: 0; z-index: 10; }
.p.text table { border-style: solid; border-collapse: collapse; border-color: #3c1a0c; }
.p.text td { padding: 2px 4px; }

/* rounded boxes */
.rounded-t, .rounded-b { width: 100%; position: relative; }
.rounded-t-l { margin: 0 10px 0 0; /*padding: 8px 0 0 8px;*/ }
/*.rounded-t-r { position: absolute; top: 0; right: 0; width: 10px; height: 100%; }*/
.rounded-t-r { margin: 0 0 0 -10px; padding: 10px 0 0; position: relative; left: 10px; }
.rounded-b-r { position: absolute; bottom: 0; right: 0; width: 10px; height: 10px; }
.rounded-b-l { height: 10px; margin-right: 10px; }

/* shadows */
.shadow { position: relative; padding-bottom: 0.75em; margin-bottom: 1.49em; }
.shadow { border-bottom: 0.01em white solid; }
/* for dynamic part */
.shadow-main { /*background: yellow;*/ padding: 0 6px; position: relative; margin: 0 -6px; }
.shadow-main-l { background: url(/media/bilder/_layout/shadow-left.png) repeat-y; position: absolute; left: 0; width: 6px; height: 100%; }
.shadow-main-r { background: url(/media/bilder/_layout/shadow-right.png) repeat-y right; position: absolute; right: 0; width: 6px; height: 100%; }
.shadow-top { /*background: green; width: 100%;*/ height: 6px; position: relative; margin: 0 -6px; }
.shadow-top-l { background: url(/media/bilder/_layout/shadow-top-left.png) no-repeat; position: absolute; left: 0; width: 6px; height: 6px; }
.shadow-top-r { background: url(/media/bilder/_layout/shadow-top-right.png) no-repeat top right; position: absolute; right: 0; width: 6px; height: 6px; }
.shadow-top-m { background: url(/media/bilder/_layout/shadow_top.png) repeat-x; margin: 0 6px; height: 6px; }
.shadow-bottom { /*background: blue; width: 100%;*/ height: 6px; position: relative; margin: -1.49em -6px 0.5em; }
.shadow-bottom-l { background: url(/media/bilder/_layout/shadow-bottom-left.png) no-repeat; position: absolute; left: 0; width: 6px; height: 6px; }
.shadow-bottom-r { background: url(/media/bilder/_layout/shadow-bottom-right.png) no-repeat bottom right; position: absolute; right: 0; width: 6px; height: 6px; }
.shadow-bottom-m { background: url(/media/bilder/_layout/shadow-bottom.png) repeat-x bottom; margin: 0 6px; height: 6px; }

/* content-bg */
/**
 * became obsolete because background is now in #content-holder's css
/**
 * never use position: fixed with flash!!
#content-bg { position: absolute; height: 100%; width: 880px; left: 50%; margin-left: -440px; z-index: 1; }
#content-bg img { width: 100%; height: 100%; }
 */
#header-holder, #navi-holder, #content, #footer-holder { position: relative; z-index: 5; }
#navi-holder { z-index: 10; }

/* startseite */
.start-half { width: 417px; }
.start-full { width: 100%; }
.start-third { width: 274px; position: relative; }
.img-full { margin-bottom: -0.75em; }
.calendar td { width: 2.8em; }
.calendar th, .calendar td { text-align: center; vertical-align: baseline; }
.calendar th a { display: block; width: 100%; }
.calendar { margin: 0 auto; }
.box.episodes { margin: 0.75em 0 -0.75em; padding-top: 1.5em; padding-bottom: 1.5em; }
.box.episodes .p { margin-bottom: 0; }
.box.episodes a img { vertical-align: middle; }

/* teaser */
#content-teaser .calendar td { width: 2.2em; }

/*sitemap*/
/* not working in ie
.sitemap ul { border-color: black; border-style: solid; margin-bottom: 1.5em; }
.sitemap li { display: block; width: 12em; }
.sitemap ul { border-width: 1px 1px 0 0; }
.sitemap li li { margin-left: 9em; }
.sitemap li li li { float: none; }
*/
.sitemap, .sitemap ul { list-style-type: none; }
/*.sitemap ul { margin-bottom: 1.5em; }*/
.sitemap li { width: 13em; }
.sitemap li li { padding-left: 11em; }
.sitemap div { margin: 0 0 0.7em; padding: 3px }
.sitemap ul { margin-top: -1.5em; }
/*
.sitemap ul li { margin-bottom: 1.5em; }
.sitemap ul ul li { margin-bottom: 0; }
*/

/* terminkalender */
.p.event { margin-bottom: 3em; }
.p.event.teaser { width: 96%; padding: 0.75em; margin-bottom: 1.8em; }
.events-overview .calendar-holder { float: left; width: 300px; margin-right: 20px; }
.events-overview .random-events { float: left; width: 270px; }

.map { width: 50%; height: 20.6em; display: none; }

/* betriebe */
.map.betrieb { display: block; float: left; }
.p.address { float: left; width: 40%; padding-left: 1em; }


/* kontaktformular */
.contact .clearer { height: 1em; }
.contact .spacer { display: none; }
.label { float: left; width: 15%; min-height: 8px; }
.field { float: left; width: 45%; }
#company, #surname, #phone, #fax, #email, #message { width: 99.05%; float: left; }
#salutation { width: 27%; float: left; }
#forename { width: 65%; float: right; }
#street, #city { width: 70%; }
#number, #zip { width: 20%; }
#street, #zip { float: left; }
#number, #city { float: right; }
#message { height: 5em; }

/* flashkarte */
#flashkarte, #flashkarte * { position: static; }

/* footer */
#footer { padding-top: 1.5em; }

/* ie7 haslayout fixes */
h1 { zoom: 1; }
