/**
 * Layout and positioning
 */
html, body { margin: 0; padding: 0; }
body { font-size: small; }


div#header{ position: relative; width: 1000px; height: 178px; margin: 0 auto;  }
div#header h1 { position: absolute; left: 27px; top: 53px; height: 60px; width: 270px; margin: 0; padding: 0; }
div#header p.subtitle { position: absolute; top: 95px; left: 10px; }

div#header ul#nav { overflow: hidden; height: 60px; margin: 0; padding: 63px 0 0 411px; }
div#header ul#nav li { float: left; width: 125px; height: 60px; margin: 0; padding: 0; }
div#header ul#nav li a { display: block; padding: 15px 0 0 20px; }

div#header ul#nav li ul, div#header ul#nav li form { display: none; overflow: hidden; position: absolute; right: 75px; top: 124px; margin: 0; padding: 12px 0 0 0; }
div#header ul#nav li.active ul, div#header ul#nav li.active form { display: block; }
div#header ul#nav li ul li { width: auto; height: auto; }
div#header ul#nav li ul li a { margin-right: 2em; padding: 0.5em 1em; }
div#header ul#nav li.quicksearch form { padding-right: 32px; }
div#header ul#nav li.quicksearch form p { margin: 0; padding: 0; }
div#header ul#nav li.quicksearch form p input { width: 22.5em; }
div#header ul#nav li.quicksearch form p button { position: absolute; right: 0; top: 13px; width: 26px; height: 23px; }

div#quicksearch_results { position: absolute; width: 525px; /* top and right set by script */ }
div#quicksearch_results div.b1 { padding: 15px 15px 0 15px; }
div#quicksearch_results div.b1 div { padding: 0 0 15px 0; }
div#quicksearch_results div.b1 p.empty { margin: 0; padding: 0 0 15px 0; }

div#content_wrapper { position: relative; top: -105px; margin: 0 0 -105px 0; padding: 0; }
div#content { position: relative; width: 900px; margin: 0 auto; padding: 84px 50px 1px 50px; }

div#eye_catcher_wrapper { }
div#eye_catcher { width: 1000px; margin: 0 auto; padding: 1px 0 105px 0; overflow: auto; }
div#eye_catcher h2 { margin: 0; padding: 0; }

div#misc_info { clear: both; margin: 0; padding: 0; }
div#misc_info ul.panels { overflow: auto; width: 1000px; margin: 0 auto; padding: 0; }
div#misc_info ul.panels li.panel { float: left; width: 260px; padding: 30px; }

div#misc_info ul.panels li#sitemap ul { margin: 0; padding: 0; }
div#misc_info ul.panels li#sitemap ul li { margin: 0.9em 0 0 0; padding: 0; }
div#misc_info ul.panels li#sitemap ul li ul li { margin: 0.45em 0 0 2em; padding: 0; }

div#misc_info div#footer ul { position: relative; width: 1000px; margin: 0 auto; padding: 0.75em 0; text-align: right; }
div#misc_info div#footer ul li { display: inline; margin: 0; padding: 0 10px; }
div#misc_info div#footer ul li:first-child { float: left; }

div#misc_info li#contact form p { overflow: auto; }
div#misc_info li#contact form p input, div#misc_info li#contact form p textarea { float: left; margin: 0; padding: 3px; }
div#misc_info li#contact form p input { width: 117px; }
div#misc_info li#contact form p input:first-child { margin-right: 10px; }
/* Width changed from 252px to 248px because the original value (and values
 * above 248px) made IE6 crash when jQuery was loaded... for whatever reason. */
div#misc_info li#contact form p textarea { width: 248px; }

/**
 * Typography, color and backgrounds
 */
body { color: #505050; background-color: #eff4f9; }
body, textarea { font-family:sans-serif; } /** hab verdana mal rausgenommen */
a { color: #c52417; text-decoration: none; }
a:hover { color: #c52417; text-decoration: underline; }
input.empty, textarea.empty { font-style: italic; }
h3 { font-size: 1.5em; font-weight: normal; }

div#header_wrapper { color: #fff; background: #617ca7 url(/images/header_background.png) no-repeat center top; }
div#header h1 { background: url(/images/logos/brachthäuser.net.png) center center no-repeat; text-indent: -10000px; }
div#header p.subtitle { text-indent: -10000px; }

div#header ul#nav { list-style: none; }
div#header ul#nav li { }
div#header ul#nav li.active { background-repeat: no-repeat; background-position: center top; }
div#header ul#nav li { color: #eaeef4; text-shadow: #444 0 1px 1px; }
div#header ul#nav li a { font-size: 0.85em; color: #b7cae9; text-decoration: none; }
div#header ul#nav li a em { font-size: 1.1em; display: block; font-style: normal; color: white; text-transform: uppercase; text-decoration: none; }
div#header ul#nav li label { font-size: 0.85em; }

div#header ul#nav li ul { list-style: none; }
div#header ul#nav li ul li a { color: #eaeef4; text-shadow: #475974 0 1px 1px; } /* vorher 475974 */
div#header ul#nav li ul li a:hover { color: #fff; text-shadow: #4f5e77 0 1px 1px; background: url(/images/nav/second_level_background.png); }

div#header ul#nav li.quicksearch form button { opacity: 0.75; border: none; background: url(/images/icons/quickseach.png) no-repeat center center; text-indent: -10000px; }
div#header ul#nav li.quicksearch form .empty { color: #a5b4ca; }
div#header ul#nav li.quicksearch form input.loading { background-image: url(/images/icons/loading.gif); background-repeat: no-repeat; background-position: 98% 50%; }
div#quicksearch_results { color: #6e82a3; background-color: #dde6f2; border: 1px solid #bfcbdb;  }
div#quicksearch_results div.b1 { border: 1px solid #f6ffff; }
div#quicksearch_results div.b1 p.empty { text-align: center; }
div#quicksearch_results h3 { margin: 0; padding: 0; width: 65%; border-bottom: 1px solid #94a4bc; font-size: 1.125em; }

div#eye_catcher_wrapper { background: #2d4162 url(/images/eye_catcher_background.jpg) no-repeat center top; }
div#eye_catcher { color: #c9d1dc; } /** formerly #9cabc2 but too dark */
div#eye_catcher h2 { color: #fefefe; font-weight: normal; font-size: 2em; text-shadow: #333 0 1px; }
div#eye_catcher h2 em { display: block; font-weight: bold; font-style: normal; text-transform: uppercase; }
div#eye_catcher a { color: #fff; font-weight: bold;}


div#content_wrapper { background: url(/images/content_background.png) no-repeat 50% -32px; }
div#content { }
div#content p { line-height: 1.5em; }

div#misc_info { font-size: 0.9em; line-height: 1.5em; color: #c7d2e3; background: #233148 url(/images/misc_info_background.jpg) no-repeat center bottom; }
div#misc_info h2 { color: #fff; font-size: 1.25em; font-weight: normal; }
div#misc_info h3 { color: #fff; font-size: 1em; }
div#misc_info a { color: #fff; }
div#misc_info ul.panels { list-style: none; }

div#misc_info li#sitemap ul { list-style: none; font-size: 0.95em; }
div#misc_info li#sitemap ul li { font-weight: bold; }
div#misc_info li#sitemap ul li ul li { font-weight: normal; }
div#misc_info li#sitemap ul li ul li a { color: #c7d2e3; }

div#misc_info li#contact { border: 1px solid #677c9c; border-width: 0 1px 1px 1px; background: url(/images/misc_info_contact_background.png); }
div#misc_info li#contact h2 em { font-style: normal; font-weight: bold; }
div#misc_info li#contact form p input[type=text], div#misc_info li#contact form p textarea { font-size: 1em; color: #fff; background-color: #5c77a0; border: 1px solid #6a84aa; }
div#misc_info li#contact form p .empty { color: #c7d2e3; }

div#misc_info div#footer { font-size: 0.85em; color: #7f8898; font-weight: bold; text-shadow: #1f2c40 2px 2px 0; background: url(/images/footer_background.png); }
div#misc_info div#footer a { color: #d6dae0; }
div#misc_info div#footer a:hover { color: #a9acb1; text-decoration: none; }

p.error { font-weight: bold; color:#C0372D; }

/**
 * Individual background images
 */
div#header ul#nav li.search.active { background-image: url(/images/nav/search_active.png); }
div#header ul#nav li.offer.active { background-image: url(/images/nav/offer_active.png); }
div#header ul#nav li.company.active { background-image: url(/images/nav/company_active.png); }
div#header ul#nav li.quicksearch.active { background-image: url(/images/nav/quicksearch_active.png); }


/**
 * Guidance buttons (aka "big red"® buttons)
 */
.guidance_button { display: table; color: #fff; text-shadow: #633 0 1px 1px; }
.guidance_button span { display: block; margin: 0; padding: 0; background-position: 100% 0%; background-repeat: no-repeat; }
.guidance_button span span { background-position: 0% 0%; background-repeat: no-repeat; }
.guidance_button span span span { background-repeat: repeat-x; background-position: 0% 0%; }

.guidance_button:hover span { background-position: 100% 100%; }
.guidance_button:hover span span { background-position: 0% 100%; }
.guidance_button:hover span span span { background-position: 0% 100%; }

button.guidance_button { cursor: pointer;  margin: 0; padding: 0; border: none; background: none; }
a.guidance_button { text-decoration: none; }

.guidance_button.large { font-size: 1em; }
.guidance_button.large span { padding: 0 36px 0 0; background-image: url(/images/buttons/large_right.png); }
.guidance_button.large span span { padding: 0 0 0 8px; background-image: url(/images/buttons/large_left.png); }
.guidance_button.large span span span { height: 41px; line-height: 41px; padding: 0 7px 0 3px; background-image: url(/images/buttons/large_background.png); }

.guidance_button.small { font-size: 0.9em; }
.guidance_button.small span { padding: 0 24px 0 0; background-image: url(/images/buttons/small_right.png); }
.guidance_button.small span span { padding: 0 0 0 8px; background-image: url(/images/buttons/small_left.png); }
.guidance_button.small span span span { height: 28px; line-height: 27px; padding: 0 7px 0 3px; background-image: url(/images/buttons/small_background.png); }

.guidance_button.small.back span { padding: 0 8px 0 0; background-image: url(/images/buttons/small_back_right.png); }
.guidance_button.small.back span span { padding: 0 0 0 24px; background-image: url(/images/buttons/small_back_left.png); }
.guidance_button.small.back span span span { padding: 0 3px 0 7px; background-image: url(/images/buttons/small_background.png); }


/**
 * Highlight boxes
 */
div.highlight { width: 907px; margin: 0 0 20px 0; padding: 10px 0 0 0; background: url(/images/content_highlight_top.png) no-repeat left top; }
div.highlight div.b1 { margin: 0; padding: 0 0 10px 0; background: url(/images/content_highlight_bottom.png) no-repeat left bottom; }
div.highlight div.b2 { margin: 0; padding: 1px 10px 1px 10px; background: url(/images/content_highlight_background.png) repeat-y left center; }


/**
 * Form styles
 */
input, select, textarea { margin: 0; padding: 6px 3px; font-size: 1em; color: #6e82a3; background-color: #dde6f2; border: 1px solid #bfcbdb; }


/**
 * Pagination (HTML generated by the will_paginate plugin)
 */
div.pagination { margin: 0; padding: 10px 0; text-align: center; color: #888; }
div.pagination a, div.pagination span { padding: 3px 5px; border: 1px solid transparent; text-decoration: none; }
div.pagination a:hover { color: #7188a8; border-color: #bfcbdb; background-color: #edf1f6; text-decoration: underline; }


/**
 * Gallery lists
 * overflow: auto erzeugt in der partnerliste einen scrollbalken, deshalb display table als alternative
 * Habs auf overflow: hidden geändert, da eh nur das padding versteckt wird und table an anderen stellen
 * wieder probleme macht.
 */
ul.portrait_gallery { overflow: hidden; margin: 0.5em -20px 0.5em 0; padding: 0; list-style: none; font-size: 0.85em; }
ul.portrait_gallery li { float: left; width: 150px; height: 150px; margin: 0.5em 20px 0.5em 0; }
ul.portrait_gallery li a { display: block; text-decoration: none; }
ul.portrait_gallery li img { display: block; margin: 0; padding: 5px; border: 1px solid #e1e5e6; background-color: #fff; }
ul.portrait_gallery li span { display: block; margin: 0.25em 0; padding: 0; color: #d06962; text-align: right; }
ul.portrait_gallery li span strong { display: block; color: #c0372d; }
ul.portrait_gallery li a:hover span { text-decoration: none; }
ul.portrait_gallery li a:hover span strong { text-decoration: underline; }

/** Pagelist in Quicksearch */
ul.pages { list-style: none; padding: 0px; }
ul.pages li { margin-left: 10px; }
body.quick-search ul.pages li { margin-top: 7px;}
/**
 * jQuery autocompleter
 */
input.ac_loading { background-image: url(/images/icons/loading.gif); background-repeat: no-repeat; background-position: 98% 50%; }
div.ac_results { color: #6e82a3; background-color: #dde6f2; border: 1px solid #bfcbdb;  }
div.ac_results ul { margin: 0; padding: 0; list-style: none; border: 1px solid #f6ffff; }
div.ac_results ul li { overflow: hidden; margin: 0; padding: 4px 5px; cursor: pointer; }
div.ac_results ul li em { float: right; font-style: normal; }
div.ac_results ul li.ac_over { background-color: #bbc8da; }


/**
 * Special eye catcher styles
 */
div#eye_catcher ul.sections { height: 245px; margin: 0; padding: 60px 25px 25px 25px; list-style: none; }
div#eye_catcher ul.sections li { position: relative; display: none; }
div#eye_catcher ul.sections li.active { display: block; }

div#eye_catcher ul.sections li.search input { height: 17px; }

div#eye_catcher ul.sections li.search form { color: #bdd1ef; }
div#eye_catcher ul.sections li.search form fieldset.basics { overflow: hidden; position: absolute; top: 152px; margin: 0; padding: 0; border: none; }
div#eye_catcher ul.sections li.search form fieldset.basics p { float: left; width: 240px; margin: 1em 25px 0 0; }
div#eye_catcher ul.sections li.search form fieldset.basics p label { margin: 0; padding: 0.25em 0 0 0; }
div#eye_catcher ul.sections li.search form fieldset.basics select { display: block; width: 215px; margin-top: 8px; }
div#eye_catcher ul.sections li.search form fieldset.basics p.location { display: block; }
div#eye_catcher ul.sections li.search form fieldset.basics p.location input { width: 250px; margin-top: 8px; }
div#eye_catcher ul.sections li.search form fieldset.optional { position: absolute; top: 0; left: 550px; width: 235px; }
div#eye_catcher ul.sections li.search form p.buttons { position: absolute; top: 168px; left: 820px; }

div#eye_catcher ul.sections li.search form fieldset.optional { padding: 0 10px 15px 10px; border: 1px solid #607595; }
div#eye_catcher ul.sections li.search form fieldset.optional p { margin: 1em 0 0 0; }
div#eye_catcher ul.sections li.search form fieldset.optional input { width: 94px; }
div#eye_catcher ul.sections li.search form fieldset.optional label.label { display: block; padding: 0 0 0.75em 0; }

div#eye_catcher ul.sections li.sell p, div#eye_catcher ul.sections li.let p { width: 400px; }
div#eye_catcher ul.sections li.sell p.button, div#eye_catcher ul.sections li.let p.button { width: auto; position: absolute; top: 150px; }

div#eye_catcher ul.sections li ul.gallery { position: absolute; top: -30px; left: 500px; width: 491px; height: 272px; margin: 0; padding: 0; list-style: none; background: url(/images/eye_catcher_gallery_background.png) no-repeat left top; }
div#eye_catcher ul.sections li ul.gallery li { display: none; margin: 0; padding: 38px 0 0 38px; }
div#eye_catcher ul.sections li ul.gallery li a { display: block; position: relative; width: 415px; color: #505050; text-decoration: none; }
div#eye_catcher ul.sections li ul.gallery li a img { display: block; border: none; }
div#eye_catcher ul.sections li ul.gallery li a span { position: absolute; width: 401px; left: 0; bottom: 0; padding: 7px; background: url(/images/image_overlay.png); font-weight: bold; font-size: 0.8em; }
div#eye_catcher ul.sections li ul.gallery li.active { display: block; }

div#eye_catcher ul.selector { overflow: hidden; height: 80px; margin: 0; padding: 0; }
div#eye_catcher ul.selector li { float: left; width: 331px; }
div#eye_catcher ul.selector li a { display: block; height: 66px; padding: 12px 30px 0 70px; border: 1px solid transparent;  font-weight: normal;}
div#eye_catcher ul.selector li a strong { display: block; margin: 0 0 0.5em 0; }

div#eye_catcher ul.selector { list-style: none; background: url(/images/eye_catcher_selector_backgroud.png) no-repeat center top; }
div#eye_catcher ul.selector li a { position: relative; font-size: 0.85em; color: #778cad; text-decoration: none; }
div#eye_catcher ul.selector li a strong { font-size: 1.18em; color: #98a4b6; }
div#eye_catcher ul.selector li a span { position: absolute; left: 10px; top: 10px; width: 40px; height: 40px; opacity: 0.5; background-position: left top; background-repeat: no-repeat; }

div#eye_catcher ul.selector li.active a, div#eye_catcher ul.selector li.active a:hover { color: #bdd1ef; border: 1px solid #506586; background-color: #2d3f5a; }
div#eye_catcher ul.selector li.active a strong, div#eye_catcher ul.selector li.active a:hover strong { color: #fff; text-shadow: #000 0 1px; }
div#eye_catcher ul.selector li.active a span, div#eye_catcher ul.selector li.active a:hover span { opacity: 1; }

div#eye_catcher ul.selector li a:hover { color: #a1acbc; border: 1px solid #3c5477; background-color: #314564; }
div#eye_catcher ul.selector li a:hover strong { }
div#eye_catcher ul.selector li a:hover span { opacity: 0.75; }

div#eye_catcher ul.selector li.search a span { background-image: url(/images/icons/search_section.png); }
div#eye_catcher ul.selector li.sell a span { background-image: url(/images/icons/sell_section.png); }
div#eye_catcher ul.selector li.let a span { background-image: url(/images/icons/let_section.png); }


/**
 * Frontpage styles
 */
div#content p.slogan { font-size: 1.5em; margin: 0; padding: 0; font-weight: normal; }
div#content h2 { font-size: 2.3em; margin: 0.5em 0 1.5em 0; padding: 0; line-height: 1.4; font-weight: normal; }
div#content h2, div#content p.intro { width: 515px; }
div#content ul.panels { position: absolute; right: 45px; top: 84px; width: 320px; margin: 0; padding: 0; list-style: none; }
div#content ul.panels li.panel { margin: 0 0 2em 0; padding: 0; }
div#content ul.panels p { width: auto; margin: 0; padding: 0 10px 0.5em 15px; font-size: 0.87em; }
div#content ul.panels h3 { padding: 10px 10px 0.8em 15px; margin: 0; font-size: 1.3em; }
div#content ul.panels h4 { padding: 0 10px 0.5em 15px; margin: 0; font-size: 0.9em; }

div#content ul.panels.contact {  top: 190px; }

div#content ul.panels li.panel.boxed { padding: 1px; color: #858585; background-color: #f6ffff; border: 1px solid #bfcbdb; }
div#content ul.panels li.panel.boxed ul { background-color: #dde6f2; margin: 0px; padding: 4px; }
div#content ul.panels li.panel.boxed ul li { margin-left: 15px; }
div#content ul.panels li.panel.boxed h3 {  height: 35px; margin: 0; padding: 20px 15px 0 15px; background: #dde6f2 right top no-repeat; color: #6e82a3; text-shadow: #fff -1px 1px 1px; }
div#content ul.panels li.panel.boxed p, div#content ul.panels li.panel.boxed dl { font-size: 0.85em; width: auto; margin: 0; padding: 0 10px 0.5em 15px; background-color: #dde6f2; }
div#content ul.panels li.panel.boxed form { margin: 0; padding: 15px 0 5px 0; background: #dde6f2; width: inherit; }
div#content ul.panels li.panel.boxed form label { display: block; float: left; width: 100px; color: #505050; height: 20px;}
div#content ul.panels li.panel.boxed form input { color: #505050; background: #e7edf5; }
div#content ul.panels li.panel.boxed p.further_info { padding-bottom: 15px; }
div#content ul.panels li.panel.boxed dl dt { float: left; margin: 0; padding: 0 0 0.25em; }
div#content ul.panels li.panel.boxed dl dd { margin: 0 0 0 100px; padding: 0 0 0.25em; }

div#content ul.panels li#partner_signup h3 { background: #dde6f2 url(/images/partner_label.png) right top no-repeat;  }
div#content ul.panels li#contact_telefon h3 { background: #dde6f2 url(/images/telefon_label.png) right top no-repeat; }
div#content ul.panels li#immotracking_login h3 { background: #dde6f2 url(/images/login_label.png) right top no-repeat; }
div#content ul.panels li#search_panel h3 { background: #dde6f2 url(/images/suche_label.png) right top no-repeat; }
div#content ul.panels li#unternehmen_infos h3 { background: #dde6f2 url(/images/infos_label.png) right top no-repeat; }

div#content ul.panels li#partner_per_country p { width: auto; }
div#content ul.panels li#partner_per_country label { display: block; padding-bottom: 0.5em; }

div#content div.staff { font-size: 0.85em; margin: 2em 0; }
div#content div.staff div.b2 { overflow: hidden; }
div#content div.staff div.b2 div.info { float: left; width: 325px; padding: 5px 0 0 15px; }
div#content div.staff ul.people { margin-left: 350px; margin-bottom: 0; }

div#content div.highlight.staff h3 { font-size: 1.5em; font-weight: normal; padding-left: 0px; margin-left: 0px; }
div#content div.highlight.staff h3 em { font-size: 1.25em; font-weight: bold; font-style: normal; }
div#content div.highlight.staff p { margin: 1em 0; padding: 0; }
div#content div.highlight.staff dl { overflow: auto; margin: 0; padding: 0; }
div#content div.highlight.staff dl dt { float: left; margin: 0; padding: 0 0 0.25em; }
div#content div.highlight.staff dl dd { margin: 0 0 0 100px; padding: 0 0 0.25em; }
div#content div.highlight.staff ul.people { font-size: 1em; }


/**
 * Search eye catcher
 */
div#eye_catcher.search { width: 920px; padding: 45px 20px 105px 20px; color: #bdd1ef; background: url(/images/eye_catcher_search_background.png) no-repeat center top; }

div#eye_catcher.search ol { overflow: hidden; margin: 0; padding: 0; font-size: 0.85em; color: #8a9ab3; list-style: none; background: url(/images/search_progress/bottom.png) repeat-x 50% 22px; }
div#eye_catcher.search ol li { float: left; width: 255px; height: 30px; padding: 0 0 0 45px; line-height: 30px; background-repeat: no-repeat; background-position: left top; }
div#eye_catcher.search ol li.active { color: white; }

div#eye_catcher.search ol li { background-image: url(/images/search_progress/1.png); }
div#eye_catcher.search ol li.active { background-image: url(/images/search_progress/1_active.png); }
div#eye_catcher.search ol li + li { background-image: url(/images/search_progress/2.png); }
div#eye_catcher.search ol li + li.active { background-image: url(/images/search_progress/2_active.png); }
div#eye_catcher.search ol li + li + li { background-image: url(/images/search_progress/3.png); }
div#eye_catcher.search ol li + li + li.active { background-image: url(/images/search_progress/3_active.png); }

div#eye_catcher.search form { margin: 0; padding: 0; }
div#eye_catcher.search form fieldset { margin: 45px 0 0 0; padding: 0; border: none; }
div#eye_catcher.search form fieldset h3 { margin: 0; padding: 0.5em 0; font-size: 1em; border-bottom: 1px solid #738bb0; }
div#eye_catcher.search form fieldset p {}
div#eye_catcher.search form fieldset p label.caption { display: block; margin: 0.5em 0; }

div#eye_catcher.search form p.buttons { overflow: hidden; margin: 45px 0 0 0; padding: 0; }
div#eye_catcher.search form p.buttons a { float: left; }
div#eye_catcher.search form p.buttons button { float: right; }

div#eye_catcher.search.type form { }
div#eye_catcher.search.type form fieldset { float: left; width: 415px; margin-right: 25px; }
div#eye_catcher.search.type form p.notice { clear: both; width: 415px; padding-top: 45px; }

div#eye_catcher.search.location form fieldset { overflow: hidden; }
div#eye_catcher.search.location form fieldset p { margin: 1em 0 1em 470px; padding: 0; }
div#eye_catcher.search.location form fieldset p.location { float: left; width: 470px; margin-left: 0; }
div#eye_catcher.search.location form fieldset p.location label { display: block; padding: 0 0 0.5em 0; }
div#eye_catcher.search.location form fieldset p.location input { width: 275px; }

div#eye_catcher.search.details form fieldset.attributes { overflow: hidden; }
div#eye_catcher.search.details form fieldset.attributes p { float: left; width: 290px; margin: 1em 0 0 0; padding: 0; }
div#eye_catcher.search.details form fieldset.attributes p input { width: 95px; }
div#eye_catcher.search.details form fieldset.destricts ul { overflow: hidden; margin: 1em 0; padding: 0; list-style: none; }
div#eye_catcher.search.details form fieldset.destricts ul li { float: left; width: 290px; margin: 0; padding: 0.5em 0; }


body.topobjekte ul.gallery { overflow: hidden; margin: 1em 0 0 0; padding: 0; list-style: none; }
body.topobjekte ul.gallery li { float: left; margin: 0 1em 1em 0; padding: 18px; border: 1px solid #c1ccdb; background-color: #f6fafb; }
body.topobjekte ul.gallery li a.portrait { display: block; position: relative; color: #505050; }
body.topobjekte ul.gallery li a img { width: 230px; padding: 7px; background: #fff; border: 1px solid #c3cedd; }
body.topobjekte ul.gallery li a.portrait img { display: block; }
body.topobjekte ul.gallery li a.portrait span { position: absolute; left: 7px; bottom: 7px; width: 217px; padding: 7px; background: url(/images/image_overlay.png); font-size: 0.85em; }
/* width explicitly set to a fixed value (230px + 2*7px) because IE can't handle 100% in this case (takes it as with of the document) */
body.topobjekte ul.gallery li table { width: 244px; margin: 1em 0; padding: 0; }
body.topobjekte ul.gallery li table th { padding: 0 0.25em 0 0; color: #82a0a7; text-align: left; font-weight: bold; }
body.topobjekte ul.gallery li table td { color: #494949; font-weight: normal; }

/**
 * Expose list
 */
body.expose-list div#content { width: 1000px; padding: 44px 0 1px 0; }

body.expose-list div#eye_catcher h2 { margin:40px 20px 0px; }

body.expose-list ul#toolbar { width: 998px; height: 45px; margin: 0; padding: 0; list-style: none; }
body.expose-list ul#toolbar li { float: left; height: 45px; line-height: 45px; margin: 0; padding: 0 15px; }
body.expose-list ul#toolbar li.button { padding: 0; }
body.expose-list ul#toolbar li.button a { display: block; padding: 0 15px 0 50px; }

body.expose-list ul#toolbar { color: #a4b5d0; background-color: #38537d; border: 1px solid #54729c; }
body.expose-list ul#toolbar li { border-right: 1px solid #425e88; }
body.expose-list ul#toolbar li a { color: white; text-decoration: none; }
body.expose-list ul#toolbar li.button a { background-position: 15px 7px; background-repeat: no-repeat; }
body.expose-list ul#toolbar li.button a:hover, body.expose-list ul#toolbar li.button a:focus, ul#toolbar li.button a:active { background-color: #2d3f5a; background-position: 15px -60px; }
body.expose-list ul#toolbar a#list-perspective, body.expose-list ul#toolbar a#gallery-perpective { float: right; width: 27px; margin-left: 10px; text-indent: -10000px; background-position: left 9px; background-repeat: no-repeat; }
body.expose-list ul#toolbar a:hover#list-perspective, body.expose-list ul#toolbar a:hover#gallery-perpective { background-position: left -58px; }
body.expose-list ul#toolbar a#list-perspective { background-image: url(/images/icons/results_list.png); }
body.expose-list ul#toolbar a#gallery-perpective { background-image: url(/images/icons/results_gallery.png); }

body.expose-list ul#toolbar li.perspectives { width: 126px; }
body.expose-list ul#toolbar li.order { width: 261px; }
body.expose-list ul#toolbar li.recommend.button { width: 228px; }
body.expose-list ul#toolbar li.recommend.button a { background-image: url(/images/icons/results_recommend.png); }
body.expose-list ul#toolbar li.print.button { width: 175px; }
body.expose-list ul#toolbar li.print.button a { background-image: url(/images/icons/results_print.png); }		
body.expose-list ul#toolbar li.save.button { width: 174px; border-right: none; }
body.expose-list ul#toolbar li.save.button a { background-image: url(/images/icons/results_save.png); }
body.expose-list ul#toolbar li.back_to_list.button { width:200px; }
body.expose-list ul#toolbar li.back_to_list.button a { background-image: url(/images/icons/results_back_to_list.png); }

body.expose-list ul#toolbar li.print.button { float: right; border-left: 1px solid #425e88; }
body.expose-list ul#toolbar li.recommend.button { float: right; border-right: none; }
body.expose-list ul#toolbar li.recommend.button ul li { width: 228px; }
body.expose-list ul#toolbar li.recommend.button ul li.bar { display:block; height: 2px; background-color: #425E88; }
body.expose-list ul#toolbar li.recommend.button ul li a span { float: left; display: block; margin: 0 10px 0 0; }

body.expose-list ul#toolbar li.dropdown.button { position: relative; }
body.expose-list ul#toolbar li.dropdown.button a { padding: 0 25px 0 15px; background-image: url(/images/icons/results_dropdown.png); background-repeat: no-repeat; background-position: 97% 55%; }
body.expose-list ul#toolbar li.dropdown.button a:hover, body.expose-list ul#toolbar li.dropdown.button a:focus, ul#toolbar li.dropdown.button a:active { background-position: 97% 55%; }
body.expose-list ul#toolbar li.dropdown.button a span { color: #a4b5d0; }
body.expose-list ul#toolbar li.dropdown.button ul { display: none; position: absolute; z-index: 1; right: 0; margin: 0; padding: 0; background-color: #38537d; border: 1px solid #54729c; }
body.expose-list ul#toolbar li.dropdown.button ul li { float: none; height: auto; display: block; margin: 0; padding: 0; border: 1px solid #425e88; border-width: 0 0 1px 0; }
body.expose-list ul#toolbar li.dropdown.button ul li a { padding: 5px 15px; line-height: 1.5em; background-image: none; }


body.expose-list div#filter { float: left; margin: 20px 0 0 20px; width: 225px; }
body.expose-list div#filter div.panel { margin: 0; padding: 0; border: 1px solid #dde6f2; /* to force collapsing margins */ }
body.expose-list div#filter h3 { margin: 0; padding: 15px 0 0 15px; }
body.expose-list div#filter form p, body.expose-list #filter form fieldset { margin: 15px; padding: 0; }
body.expose-list div#filter form legend { margin: 0; padding: 0; }
		
body.expose-list div#filter div.panel#result-count { padding: 15px; }
body.expose-list div#filter div.panel#result-count div p { margin: 0; padding: 1em; }

body.expose-list div#filter { padding: 1px; border: 1px solid #bfcbdb; }
body.expose-list div#filter div.panel { background-color: #dde6f2; }
body.expose-list div#filter h3 { font-size: 1em; border-bottom: 1px solid #bfcbdb; }
		
body.expose-list div#filter form label { display: block; font-weight: bold; }
body.expose-list div#filter form fieldset { border: none; }
body.expose-list div#filter form input[type='text'] { width: 80px; padding: 4px; border: 1px solid #bfcbdb; background-color: #edf1f6; }
body.expose-list div#filter form p input[type='text'] { display: inline; width: 135px; border: none; background: none; }
body.expose-list div#filter form a { color: #c52417; }
		
body.expose-list div#filter div.panel#result-count div { border: 1px solid #bfcbdb; padding: 1px; background-color: #fff; }
body.expose-list div#filter div.panel#result-count div p { /*color: #476268;*/ background-color: #bfcbdb; }
		
body.expose-list div#filter div.panel#type-filter form label { font-weight: normal; }
body.expose-list div#filter div.panel#type-filter form label em { font-style: normal; color: #7a91b5; }


body.expose-list div#results { margin: 20px 20px 0 270px; }
body.expose-list div#results ul { margin: 1em 0 0 0; padding: 0; list-style: none; }
body.expose-list div#results ul li { padding: 20px; border: 1px solid #c1ccdb; background-color: #f6fafb; }
body.expose-list div#results ul li a img { padding: 7px; background: #fff; border: 1px solid #c3cedd; }

body.expose-list div#results ul.list li { overflow: auto; margin: 0 0 1em 0; }
body.expose-list div#results ul.list li h3 { margin: 0; padding: 0 0 0.5em 0; }
body.expose-list div#results ul.list li a img { float: left; margin: 0 1em 0 0;  }
body.expose-list div#results ul.list li dl { display: inline; margin: 0; padding: 0 0 0.25em 0; border-bottom: 1px solid #cad2de; }
body.expose-list div#results ul.list li dl dt { display: inline; margin: 0; padding: 0 0.25em 0 0; color: #82a0a7; }
body.expose-list div#results ul.list li dl dd { display: inline; margin: 0; padding: 0 1em 0 0; color: #494949; font-weight: bold; }

body.expose-list div#results ul.gallery { overflow: hidden; }
body.expose-list div#results ul.gallery li { float: left; margin: 0 1em 1em 0; }
body.expose-list div#results ul.gallery li a.portrait { display: block; position: relative; color: #505050; }
body.expose-list div#results ul.gallery li a.portrait img { display: block; }
body.expose-list div#results ul.gallery li a.portrait span { position: absolute; left: 7px; bottom: 7px; width: 270px; padding: 7px; background: url(/images/image_overlay.png); font-size: 0.8em; }
body.expose-list div#results ul.gallery li table { width: 298px; margin: 1em 0; padding: 0; }
body.expose-list div#results ul.gallery li table th { padding: 0 0.25em 0 0; color: #82a0a7; text-align: left; font-weight: normal; }
body.expose-list div#results ul.gallery li table td { color: #494949; font-weight: bold; }

body.expose-list div#results div.pagination { text-align: center; border: 0px solid #e4e8ef; }
body.expose-list div#results div.pagination.top { border-bottom-width: 1px; }
body.expose-list div#results div.pagination.bottom { border-top-width: 1px; }


/**
 * Expose-Page
 */
body.expose div#eye_catcher { position: relative; }
body.expose div#eye_catcher h2 { margin: 40px 20px 25px 20px; }
body.expose div#eye_catcher div.infobox { overflow: auto; width: 936px; /*1000 - 2 * 37 - 2 */ margin: 0 31px -45px 31px; padding: 0 0 10px 0; border-left: 1px solid #485B78; border-right: 1px solid #485B78; border-top: 1px solid #5D79A2; background-color: #2D4364; } /** @todo hintergrundbild einfügen */
body.expose div#eye_catcher div.infobox div.column { float: left; width: 282px; /* 936 / 3 - 30 */ margin: 10px 15px; }
body.expose div#eye_catcher a.arrow { position: absolute; top: 240px; overflow: hidden; text-indent: -20000px; display: block; width: 31px; height: 47px; background-position: top left; background-repeat: none; }
body.expose div#eye_catcher a.arrow.prev { left: 1px; background-image: url(/images/buttons/arrow-left.png); }
body.expose div#eye_catcher a.arrow.next { right: 1px; background-image: url(/images/buttons/arrow-right.png); }
body.expose div#eye_catcher img.map { padding: 5px; border: 1px solid #e1e5e6; background-color: #fff; }

body.expose div#content div.infobox { overflow: auto; width: 980px; }
body.expose div#content div.infobox div.column { width: 280px; /* 960 / 3 - 40 */margin: 10px 20px;  float: left;}

/** Copy & Paste von der Startseite **/
body.expose a.partner { display: block; text-decoration: none; float: left; font-size: 0.8em;  width: 150px; margin-right: 15px;}
body.expose a.partner img { display: block; margin: 0; padding: 5px; border: 1px solid #e1e5e6; background-color: #fff; }
body.expose a.partner span { display: block; margin: 0.25em 0; padding: 0; color: #d06962; text-align: right; }
body.expose a.partner span strong { display: block; color: #c0372d; font-weight: bold; font-size: 1.1em; }


body.expose div#content div.highlight.partner.responsible h3 { margin-bottom: 25px;}
body.expose div#content div.highlight.partner.responsible p { line-height: 1.4em; }
body.expose div#content div.highlight.partner.responsible div.adress { float: left; }
body.expose div#content div.highlight.partner.responsible form { width: 350px; }
body.expose div#content div.highlight.partner.responsible form textarea { width: 302px; margin-left: 2px; }
body.expose div#content div.highlight.partner.responsible form fieldset { float: none; width: 320px; padding: 0; }
body.expose div#content div.highlight.partner.responsible form fieldset p { float: none; width: 320px; padding: 0; }
body.expose div#content div.highlight.partner.responsible form fieldset input { width: 145px; float: left; margin: 2px; }

body.expose table.datatable td, body.expose table.datatable th { text-align: left; padding: 2px 4px; vertical-align: top; }
body.expose table.datatable th { width: 150px; font-weight: normal; }
body.expose table.datatable th.important { font-weight: bold; }

/* Haken */
body.expose table.datatable span.item-checked { text-indent: -20000px; display: block; width: 12px; height: 12px; background-image: url(/images/haken.png); margin: 2px;}
body.expose div#eye_catcher table.datatable span.item-checked { background-image: url(/images/haken_weiss.png); 2px;}

body.expose div#eye_catcher table.datatable tr.even td, body.expose div#eye_catcher table.datatable tr.even th { background-color: #3D5882; }
body.expose div#eye_catcher table.datatable span.item_checked {}
body.expose div#content div.datatable {border:1px solid #BFCBDB; padding:1px; width: 308px;}
body.expose div#content div.table-wrapper { border:1px solid #DDE6F2; margin:1px; background-color:#DDE6F2; padding: 10px; }
body.expose div#content div.datatable table {  }
body.expose div#content table tr.even td, body.expose div#content table tr.even th { background-color: #BDD1EF; }

/**
 * Gallery auf der Expose-Seite
 */
body.expose div.gallery { width: 980px; height: 250px; margin: 20px 18px; }
body.expose ul.big-image { list-style: none; margin: 0px; padding: 1px; float: left; }
body.expose ul.big-image li { display: none; width: 432px; }
body.expose ul.big-image li span { display: block; width: 410px; text-align: center; margin-top: 5px; font-style:italic; float: left; color: #505050;}
body.expose ul.big-image li img.lupe { display: block; border: 0px; margin: 6px; padding: 0px; }
body.expose ul.big-image li:first-child { display: block; }
body.expose ul.big-image li img { display: block; margin: 0px; padding: 7px; border: 1px solid #e1e5e6; background-color: #fff; }

body.expose ul.previews { height: 235px; list-style: none; margin: 0; padding: 1px; width: 490px; float: left; overflow: hidden;}
body.expose ul.previews li.slider { width: 20000px; }
body.expose ul.previews li.slider ul { list-style: none; margin: 0 7px; padding: 0px; height: 235px; width: 150px; float: left; }
body.expose ul.previews li.slider ul li {  }
body.expose ul.previews li.slider ul li.inactive {  opacity: 0.4; }
body.expose ul.previews li.slider ul li img { display: block; margin: 0 0 20px 0; padding: 5px; border: 1px solid #e1e5e6; background-color: #fff; }

body.expose div.gallery a.next, body.expose div.gallery a.prev { display: block; float: left; height: 130px; width: 14px; overflow: hidden; text-indent: -20000px; }
body.expose div.gallery a.next { background: url(/images/buttons/arrow_right_blue.png) no-repeat bottom; }
body.expose div.gallery a.prev { background: url(/images/buttons/arrow_left_blue.png) no-repeat bottom; }
/**
 * Static Pages
 */
div#eye_catcher img.moodimage { padding: 8px; background: #ffffff; margin: 45px 0 0 0; } /** @todo Schatten fehlt **/
div#content ul.columns { list-style: none; margin: 0px 0 50px 0; padding: 0px; clear: both; overflow: auto; }
div#content ul.columns li.column { float: left; width: 31%; margin: 0 15px; }
div#content ul.columns li.column.first { margin: 0 15px 0 0; }
div#content ul.columns li.column.last { margin: 0 0 0 15px; }
div#content ul.columns li.column p { text-align: justify; line-height: 1.4em; }
div#content ul.columns li.column q { font-weight: bold; font-size: 0.95em; } /* am besten replacen */
div#content ul.columns li.column img { width: 270px; padding: 4px; border: 1px solid #d8dcdc; background: #fff; display: block; }
div#content ul.columns li.column h3:first-child { margin-top: 0px; }

/**
 * Panels, welche in einem Spalten-Layout liegen
 */
div#content ul.columns li.column ul.panels { width: 280px; }

div#content div.highlight h3 { margin: 20px 15px 15px 15px; }
div#content div.highlight ul.columns { padding: 0px 20px 0 20px; margin: 0px;}
div#content div.highlight ul.columns li.column { width: 300px; }
div#content div.highlight ul.columns li.column.last { width: 185px; }
div#content div.highlight ul.columns li.contact h4 { margin: 15px 0 5px;  }
div#content div.highlight ul.columns li.contact p { font-size: 0.9em; line-height: 1.4em;  }

div#content ul.featurelist li { margin: 8px 0; list-style-image: url(/images/haken.png); width: inherit; }

div#content ul.linklist { list-style: none; padding: 0px; margin: 0px; }
div#content ul.linklist li { padding: 0px; margin: 5px 0px; width: inherit; }


/**
 * Partnerliste
 */
div#content h3.partnerstate { margin: 0; padding: 0.5em 0 0 0; font-size: 1.3em; border-bottom: 1px solid #c1cde0; }

/** 
 * Partnerseite
 */
div#content div.highlight.partner div.b2 { overflow: auto; }
div#content div.highlight.partner div.details { margin: 0px 15px 15px 15px; }
div#content div.highlight.partner div.details h4 { margin: 0px; }
div#content div.highlight.partner div.details p { margin: 10px 0; line-height: 1.7em; }

div#content div.highlight.partner form { float: right; width: 560px; }
div#content div.highlight.partner form label { display: block; font-weight: bold; }
div#content div.highlight.partner form fieldset { margin: 0px; float: left; border: none;  }
div#content div.highlight.partner form fieldset.attributes p { width: 200px; padding: 0px 8px 9px 8px; }
div#content div.highlight.partner form fieldset.attributes input { margin: 5px 0; width: 190px; }
div#content div.highlight.partner form fieldset textarea { margin: 5px 0; width: 300px; }
div#content div.highlight.partner form p.buttons { margin: 15px 0 0; }
div#content div.highlight.partner form a { color: #c52417; }


div#partner_eyecatcher { margin: 40px 0 0 0; overflow: auto; }
div#partner_eyecatcher div.text { width: 480px; text-align: justify; margin-bottom: 20px; line-height: 1.5em; }  
div#partner_eyecatcher h2 { margin: 0 0 20px 0; line-height: 1.6em; }
div#partner_eyecatcher h2 em { text-transform: uppercase; font-size: 1.1em; }
div#partner_eyecatcher img.partner { float: right; background: #fff; padding: 7px; border: 1px solid #f1f2f5; margin-left: 15px; } /** schatten fehlt */

/**
 * Static Pages - Forms (like above)
 */
div#content form.contact { margin: 0; padding: 0; width: 530px; }
div#content form.contact fieldset { margin: 45px 0 0 0; padding: 0; border: none; }
div#content form.contact fieldset h3 { margin: 0; padding: 0.5em 0 0 0; font-size: 1.3em; border-bottom: 1px solid #c1cde0; }
div#content form.contact fieldset p { }
div#content form.contact fieldset p label.caption { display: block; margin: 0.5em 0; }

div#content form.contact p.buttons { overflow: hidden; margin: 45px 0 0 0; padding: 0; }
div#content form.contact p.buttons a { float: left; }
div#content form.contact p.buttons button { float: right; }

div#content form.contact fieldset.attributes { overflow: hidden; }
div#content form.contact fieldset.attributes p { float: left; width: 260px; margin: 1em 0 0 0; padding: 0; }
div#content form.contact fieldset.attributes input[type=text], div#content form fieldset.attributes select  { width: 220px; }
div#content form.contact .fieldWithErrors input, div#content form.contact .fieldWithErrors select, div#content form.contact .fieldWithErrors textarea { border-color: #D06962; }
div#content form.contact .fieldWithErrors { display: inline; }
div#content form.contact fieldset.attributes p.text { width: 500px}
div#content form.contact fieldset.attributes textarea { width: 475px}


/**
 * Schnellsuche
 */
body.quick-search .guidance_button { display: inline; }
body.quick-search div#searchresults { width: 570px; }
body.quick-search div#searchresults ul { display: table; }
body.quick-search div#searchresults ul.gallery li { padding: 10px; }
body.quick-search div#searchresults ul.gallery li a span { width: 218px; }
body.quick-search div#searchresults h3 { border-bottom: 1px solid #cccccc; }

/**
 * For pages with a two column layout
 */
body.two-columns div#content { overflow: hidden; }
body.two-columns div#content div.content-column { float: left; width: 570px; }
body.two-columns div#content ul.panels { float: none; position: static; margin-left: 580px; }

/**
 * Impressum
 */
body.impressum div#content h2.border { border-bottom: 1px solid #C1CDE0; margin-top: 2em; width: 100%;}

/**
 * Komplette Immobilien Liste
 */
div#content ul.immobilien-orts-list { list-style: none; margin: 0px; padding: 0px; }

/**
 * Bewerbungsformular
 */

body.bewerbung div#content form.contact fieldset.attributes label { margin: 0 10px 0 5px; }
body.bewerbung div#content form.contact fieldset.attributes p.break { clear: left; }
body.bewerbung div#content form.contact fieldset.attributes p.full { width: 475px; }
