@charset "utf-8";

* { margin: 0; padding: 0 }
a { outline:0 }
a img { border: 0; text-decoration: none }
html, body { height: 100%; background: #777 }
body { font: 100.01%/1.4em Arial, Helvetica, sans-serif; min-width: 920px;
  background: #fff url(/images/layout/bg-body.gif) top right repeat-y; max-width: 1200px }

/* skiplinks */
#skip { position: absolute; left: 0; top: 0; z-index: 10 }
#skip li a { position: absolute; left: -10000px; top: -10000px }
#skip li a:focus { left: 50px; top: 90px; color: #fff; background: #000; padding: .3em .7em;
  text-decoration: none; font-size: .9em; width: 13em }

/* main divs, footer */
#container { position: relative; min-height: 100%; height: auto;
  background: transparent url(/images/layout/bg-container.gif) top left repeat-y }
#content { width: auto; min-height: 550px; border-right: 180px solid #d9d9d9;
  border-left: 45px solid #d9d9d9; padding: 40px 50px 2em 20px; background: #fff }
#sidebar { position: absolute; right: 0; top: 220px; width: 180px; padding-bottom: 2em }
#footer { bottom: 1.6em; right: 0; width: 165px; position: absolute; font-size: .7em; }

/* "hidden" headlines */
h1 { top: 40px; right: 15px; position: absolute; width: 155px; height: 115px;
  background: transparent url(/images/layout/logo-dav.png) top left no-repeat }
h1 a { text-indent: -10000px; display: block; width: 155px; height: 80px; text-decoration: none }
h2 { text-indent: -10000px; width: 100%; height: 150px;
  background: transparent url(/images/layout/header.jpg) 0 0 no-repeat; border-bottom: 3px solid #fff }

/* main Menu */
#main-menu { position: absolute; top: 150px; left: 0; list-style: none; margin-top: -2em; font-size: .75em; width: 100% }
#main-menu li { float: left; text-transform: uppercase; background: #fff }
#main-menu li a, #main-menu li span { text-decoration: none; font-weight: bold; color: #9a1820;
  display: block; padding: .8em .7em }
#main-menu li:hover a, #main-menu li a:hover,
#main-menu li a:focus, #main-menu li a.active { color: #a9a9a9 }
#main-menu li.first { margin-left: 45px; background: transparent url(/images/layout/ecke-links.gif) top left no-repeat }
#main-menu li.first a { padding-left: 18px }
#main-menu li.last { background: transparent url(/images/layout/ecke-rechts.gif) top right no-repeat }
#main-menu li.last a { padding-right: 22px }
/* submenus 2. level */
#main-menu li ul { top: 2.5em; font-size: .9em; padding-top: .75em; display: block; left: -100000px; position: absolute;
list-style: none; z-index: 5; background: white; border-bottom: 1px solid #9A1820 }
#main-menu li ul li { border: 1px solid #9a1820; border-width: 0px 1px }
#main-menu li:hover ul { left: auto }
#main-menu li:hover ul li a:hover,
#main-menu li ul li a:hover, #main-menu li ul li a.active,
#main-menu li:hover ul li a.active { color: #a9a9a9; background: #f8f8f8 }
#main-menu li ul li a { padding: .2em .7em }
#main-menu li:hover ul li,
#main-menu li ul li { float: none; text-transform: none; background: none; border-right: 1px solid #9A1820 }
#main-menu li ul li a, #main-menu li:hover ul li a, #main-menu li.first ul li a { color: #9a1820 }

/* child menu */
#content #child-menu { margin-top: .4em; list-style: none; width: 100%; line-height: 1em;
padding: 0; border-bottom: 1px solid #ccc; margin-bottom: 2em; float: left }
#content #child-menu li { float: left; padding-bottom: 1em; color: #a9a9a9; background: none; padding-left: 0 }
#content #child-menu li span,
#content #child-menu li a { border-left: 1px solid black; text-decoration: none; display: block; padding: 0 .6em }
#content #child-menu li.first span,
#content #child-menu li.first a { border-left: 0px none; padding-left: 0 }

/* content */
#content a { text-decoration: underline; color: #9a1820 }
#content a:hover, #content a:focus { text-decoration: none; color: #a9a9a9 }
#content a span { position: absolute; top: -10000px; left: -10000px }
#content h3, #content h4, #content h5 { color: #9a1820; font: 1.3em Georgia, serif; padding-bottom: .1em }
#content h3 { clear: left; padding-top: .8em }
#content h4, #content h5 { font-size: .91em; padding: .7em 0 .3em; line-height: 1.3em }
#content h4 { margin-bottom: -.3em }
#content h5 { margin-top: -.9em }
#content p, #content h6 { font-size: .8em; line-height: 1.5em; padding: .5em 0 }
#content h6 { padding: 0 0 0 }
#content #path { padding: 0 0 1em }
#content ul, #content ol { font-size: .8em; line-height: 1.5em; padding: .5em 0 }
#content ul *, #content ol * { font-size: 1em }
#content ol { padding-left: 1.3em }
#content ul { list-style: none }
#content ul li { background: transparent url(/images/layout/list-item.gif) 0 .65em no-repeat; padding-left: 12px }
#content table { margin: 1em 0; font-size: .8em; border-collapse: collapse; max-width: 100% }
#content table th, #content table td { font-size: 1em; line-height: 1.5em; padding: .4em 1.5em .4em 0;
border-bottom: 1px solid #d9d9d9; vertical-align: top }
#content table th { border-color: #555; text-align: left; vertical-align: bottom }
#content table td * { font-size: 1em; padding-bottom: 0; padding-top: 0 }
/* forms */
#content form { font-size: .8em; margin: 1em 0 1.4em; width: auto }
#content form .button { margin-top: 1.5em; width: auto; color: white; background: #9a1820; padding: 2px 1em; cursor: pointer }
#content form textarea:hover, #content form textarea:focus,
#content form input:hover, #content form select:hover,
#content form input:focus, #content form select:focus { background: #ffd }
#content form .button:focus, #content form .button:hover { background: #a9a9a9; color: #9a1820 }
#content form fieldset { border: 1px solid #d9d9d9; padding: 1em; width: auto }
#content form fieldset legend { font-weight: bold; padding: 0 1em; color: #a9a9a9 }
#content form fieldset .button { display: block; margin-top: .4em }
#content form fieldset p { font-size: 1em }

/* sidebar */
#sidebar { border-top: 3px solid white }
#sidebar p { font-size: .72em; line-height: 1.6em; padding: .9em 15px; border-bottom: 3px solid white }
#sidebar p strong { display: block; color: #9a1820; text-transform: uppercase }
#sidebar p a { color: #000; text-decoration: none; }
#sidebar p a:hover { color: #9a1820 }
#sidebar p span.bold {  display: block; padding: .2em 0; font-weight: bold; }
#sidebar p em { display: block; font-size: .9em; line-height: 1.2em; font-style: normal; }
#sidebar form { font-size: .72em; line-height: 1.6em; padding: .9em 15px; border-bottom: 3px solid white }
#sidebar form fieldset { border: 0px none }
#sidebar form fieldset legend { color: #9a1820; text-transform: uppercase; font-weight: bold }
#sidebar form fieldset label { position: absolute; left: -10000px; top: -10000px }
#sidebar form fieldset input { width: 100%; margin: .6em 0 .2em }
#sidebar form fieldset .button { width: auto; color: white; background: #9a1820; padding: 1px .6em; cursor: pointer }
#sidebar form fieldset p { font-size: .85em; margin: 0; padding: 0; border: none }
#sidebar div#logo-av { text-indent: -10000px; background: white url(/images/layout/logo-av.png) 15px 15px no-repeat; padding: 15px; height: 62px;  }

/* footer */
#footer span { color: #9a1820 }
#footer a { color: #000; text-decoration: none }
#footer a:hover { color: #9a1820; text-decoration: underline }

/* special id and classes */
.clear { clear: both }
.zoom { cursor: pointer }
.noborder { border: 0px none }
#content .pagination a { text-decoration: none }
#content #path { margin-bottom: 1.4em; margin-top: -1.6em }
#content h4.divide { padding-top: 1em }

/* Elementtypen */
/****************/
.standard #content div.image { float:right; margin:0pt 0pt 1.4em 2em }
.standard #content div.image img { border:1px solid #D9D9D9 }

/* startseite */
#content ul.artikel-startseite { list-style: none; margin-left: -20px; margin-right: -50px;
margin-top: -1.4em; margin-bottom: 1.4em }
#content ul.artikel-startseite li { background: none; line-height: 1.4em;
padding: 1.4em 50px 1.4em 20px; border-bottom: 1px solid #d9d9d9; _position: relative }
#content ul.artikel-startseite li h3 { font-size: 1.3em; padding: 0; margin: 0; clear: none }
#content ul.artikel-startseite li h4 { font: bold 1em Arial, Helvetica, Verdana, sans-serif;
color: black; padding: 0; margin: 0; padding-top: .2em }
#content ul.artikel-startseite li h3 a { text-decoration: none }
#content ul.artikel-startseite p { font-size: 1em }
#content ul.artikel-startseite li img { float: left; margin: .2em 25px 1.4em 0; border: 1px solid #d9d9d9 }
#content ul.artikel-startseite:after { content: "."; height: 0; clear: left; display: block; visibility: hidden }

/* erweiterter Link .linkliste */
#content ul.linkliste { line-height: 1.6em }
#content ul.linkliste li span.info { color: #a9a9a9; font-size: .85em; padding-left: 1em }

/* artikel */
#content ul.artikel { padding-left: 0; padding-top: 1em; list-style: none }
#content ul.artikel li { background : none; padding-left: 0; padding-bottom: 1em; overflow: auto }
#content ul.artikel li img { float: left; margin: 0 1em 1em 0; border: 1px solid #d9d9d9 }
#content ul.artikel li h4 { padding-top: 0; font-size: 1em }
#content ul.artikel li p { font-size: 1em }
#content ul.artikel li h4 a { text-decoration: none }

/* kontakt */
#kontaktformular { font-size: .8em; margin-top: 2em }
#kontaktformular fieldset { width: 35em; padding: 1em }
#kontaktformular fieldset legend { padding: 0 .5em; font-weight: bold }
#kontaktformular fieldset label { clear: left; float: left; width: 11em; padding-top: .6em }
#kontaktformular fieldset input,
#kontaktformular fieldset textarea { width: 20em; float: left; margin-top: .6em }
#kontaktformular fieldset textarea { overflow-y: auto; width: 20.4em; height: 10em }
#kontaktformular fieldset .button { width: auto; clear: left; margin: 1.6em 0; margin-left: 10.5em }
#kontaktformular p { clear: left }

/* MailForm */
.mailForm #content form label { display: block }
.mailForm #content form input, .mailForm #content form textarea { width: 95% }
.mailForm #content form textarea { height: 17em }
.mailForm #content form .button { width: auto }

/* anwaltsuche */
.anwaltsuche #content { padding-right: 30px }
.anwaltsuche #content #anwaltsuche { padding-top: 1em; padding-bottom: 1em }
.anwaltsuche #content #anwaltsuche fieldset { overflow: auto; border: 0 none; border-top: 1px solid black; padding: .5em 0 1em }
.anwaltsuche #content #anwaltsuche legend { font-weight: bold; font-size: 1em; padding: 0; padding-right: 1em; color: black }
.anwaltsuche #content #anwaltsuche p { padding: 0; padding-top: .6em; float: left; width: 100% }
.anwaltsuche #content #anwaltsuche label { clear: left; float: left; width: 17em; cursor: pointer; padding-top: .2em }
.anwaltsuche #content #anwaltsuche input, .anwaltsuche #anwaltsuche select { float: left; width: 45% }
.anwaltsuche #content #anwaltsuche input { width: 44.5% }
.anwaltsuche #content #anwaltsuche #plz { width: 7em; margin-right: 1em }
.anwaltsuche #content #anwaltsuche #bgh { width: auto; margin-right: 1em; clear: left; margin-top: 1.1em }
.anwaltsuche #content #anwaltsuche #label-bgh { width: auto; clear: none; margin-top: 1em }
.anwaltsuche #content #anwaltsuche #label-umkreis { width: auto; clear: none; padding-right: .5em }
.anwaltsuche #content #anwaltsuche #umkreis { width: auto }
.anwaltsuche #content #anwaltsuche #like label,
.anwaltsuche #content #anwaltsuche #optionen label { float: none; padding: 0 1em 0 .4em; width: auto; display: inline }
.anwaltsuche #content #anwaltsuche #like input,
.anwaltsuche #content #anwaltsuche #optionen input { float: none; width: auto; vertical-align: middle }
.anwaltsuche #content #anwaltsuche .inline input { float: none; width: auto; vertical-align: middle; border: 0px none; margin-right: .3em }
.anwaltsuche #content #anwaltsuche .inline label { float: none; width: auto; padding-right: .6em }
.anwaltsuche #content #anwaltsuche #optionen span { padding-right: 1em }
.anwaltsuche #content #anwaltsuche .button { width: auto; float: none; clear: left; margin-top: .4em }
.anwaltsuche #content #anwaltsuche .duplicateButton, .anwaltsuche #anwaltsuche .helpButton,
.anwaltsuche #content #anwaltsuche .deleteButton { text-decoration: none; display: block; float: right; width: 25px; height: 20px; text-indent: -10000px; background: white url(/images/layout/button-duplicate.gif) top left no-repeat }
.anwaltsuche #content #anwaltsuche .deleteButton { background: white url(/images/layout/button-delete.gif) top left no-repeat; width: 20px }
.anwaltsuche #content #anwaltsuche .helpButton { background: white url(/images/layout/button-help.gif) top left no-repeat; width: 20px }
#anwaltsuche.portal .duplicateButton { width: 20px }
.anwaltsuche #content #anwaltsuche .label-rechtsgebiet { padding-top: .8em; padding-bottom: .6em }
.anwaltsuche #content #anwaltsuche .kategorie { margin-bottom: .6em }
.anwaltsuche #content #anwaltsuche .helptext { position: relative; clear: left; display: block;
top: 5px; margin-bottom: .6em; padding: .6em; padding-right: 3em; border: 1px solid #9a1820 }
.anwaltsuche #content #anwaltsuche .helptext a.close { position: absolute; right: 2px; top: 2px;
width: 16px; height: 16px; text-indent: -10000px;
background: transparent url(/images/layout/button-close.gif) top left no-repeat }
/* suchergebnis */
.anwaltsuche #content #anwaltsuche-suchergebnis { border-collapse: collapse; font-size: .8em; margin: 1em 0 2em }
.anwaltsuche #content #anwaltsuche-suchergebnis th,
.anwaltsuche #content #anwaltsuche-suchergebnis td { vertical-align: top; padding: .3em; padding-right: 2.5em; border-bottom: 1px solid black }
.anwaltsuche #content #anwaltsuche-suchergebnis th { text-align: left }
.anwaltsuche #content #anwaltsuche-suchergebnis td .email { line-height: 10px; margin-top: .4em; height: 10px; display: block; text-indent: -10000px; background: transparent url(/images/layout/icon-mail.gif) 0 0 no-repeat }
.anwaltsuche #content #anwaltsuche-suchergebnis td .homepage { line-height: 10px; margin-top: .8em; height: 10px; display: block; text-indent: -10000px; background: transparent url(/images/layout/icon-homepage.gif)  0 0 no-repeat }
.anwaltsuche #content #anwaltsuche-suchergebnis td a:hover { background-position: 0 -10px }
.anwaltsuche #content #anwaltsuche-suchergebnis td .fortbildung { vertical-align: middle; margin-left: .2em }
/* Google Maps */
.anwaltsuche #content #google-map { position: relative; width: 95%; height: 400px; border: 1px solid #999 }
.anwaltsuche #content #google-map #map { width: 65%; height: 100%; border-right: 1px solid #999 }
.anwaltsuche #content #google-map #closeMapLink { position: absolute; right: 3px; top: 3px; font-size: .8em }
.anwaltsuche #content #google-map #address { position: absolute; left: 68%; top: 70px; width: 26% }
.anwaltsuche #content #google-map form { position: absolute; left: 68%; top: 170px; width: 26%; font-size: .8em }
.anwaltsuche #content #google-map form fieldset { width: 100%; border: 0px none; padding: 0 }
.anwaltsuche #content #google-map form fieldset legend { font-weight: bold; width: 100%; color: black; padding: 0; margin: 0 }
.anwaltsuche #content #google-map form fieldset label { display: block; padding-top: 1em; border-top: 1px solid black }
.anwaltsuche #content #google-map form fieldset label span { font-size: .85em; display: block }
.anwaltsuche #content #google-map form fieldset input { width: 100% }
.anwaltsuche #content #google-map form fieldset .button { width: auto }
.anwaltsuche #content a.mapLink { text-decoration: none; color: black }
/* profil */
.anwaltsuche #content.profil h3 { padding-bottom: .5em }
.anwaltsuche #content.profil h4 { padding-bottom: 0 }
.anwaltsuche #content.profil h5 { padding-top: .8em; padding-bottom: .3em }
.anwaltsuche #content.profil ul { margin-top: 0 }
.anwaltsuche #content.profil #profilfoto { display: block; float: right; border: 1px solid #ccc; padding: 3px }
.anwaltsuche #content.profil #profilfoto img { display: block }
/* ajax */
.ac_div { z-index: 1000; background: transparent }
.ac_results { border: 1px solid gray; list-style: none; position: absolute;
display: none }
.ac_results li { background-color: white; padding: 0 5px; white-space: nowrap; color: #000; text-align: left; font-size: .8em }
.ac_results li.ac_over { cursor: pointer;	background-color: #a91820; color: #fff }
.ac_results li .ac_match { text-decoration: none }

/* Startseite */
.startseite #content #anwaltsuche { margin-top: 1em; float: left; width: 320px; clear: left }
.startseite #content #anwaltsuche fieldset { padding-left: 15px; padding-right: 15px }
.startseite #content #anwaltsuche div { padding-top: 0 }
.startseite #content #anwaltsuche p { padding: 0; padding-bottom: .5em; margin-left: 0 }
.startseite #content #anwaltsuche #plz { width: 60px }
.startseite #content #anwaltsuche #umkreis { width: auto }
.startseite #content #anwaltsuche label { font-size: 1em; padding-top: .8em; display: block; float: left; width: 50px; clear: left }
.startseite #content #anwaltsuche input { float: left; margin-top: .8em; width: 230px; padding: 1px }
.startseite #content #anwaltsuche select { float: left; margin-top: .8em; padding: 0 }
.startseite #content #anwaltsuche div span { float: right; display: block; margin-right: 0 }
.startseite #content #anwaltsuche div span select { width: auto }
.startseite #content #anwaltsuche div select.rechtsgebiet { width: 100%; display: block; }
.startseite #content #anwaltsuche div label#label-umkreis { clear: none; width: auto; padding-right: .8em }
.startseite #content #anwaltsuche .button { width: auto; clear: left; display: block; margin-top: 1.5em; padding: 2px .7em }
.startseite #content #anwaltsuche p.more { float: right; margin-top: 1.9em }

/**************/ /**************************************/
/* IE - Hacks */ /*  _ => IE 6 + < || * => IE 7 + <    */
/**************/ /**************************************/

#container { _height: 100% }

h1 { _background: none; _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader (src='/images/layout/logo-dav.png'); }
h1 a { _height: 115px }

#main-menu { *z-index: 10 }
#main-menu li.first { _margin-left: 23px }
#main-menu li.hover a { _color: #a9a9a9 }
#main-menu li.hover ul { _left: auto; background: white }
#main-menu li.hover ul li a:hover,
#main-menu li.hover ul li a.active { _color: #a9a9a9; _background: #f8f8f8 }
#main-menu li.hover ul li { _position: relative; _line-height: 0 }
#main-menu li.hover ul li a { _color: #9a1820; _position: relative; _padding: 1.25em .7em }

#sidebar { _width: 175px }
#sidebar p { _width: 149px }
#sidebar p a { _height: 1% }
#sidebar form fieldset legend { *left: -.5em; *position: relative }
#sidebar form fieldset .button { *padding: 0 }

.anwaltsuche #content #anwaltsuche fieldset { *position: static }
.anwaltsuche #content #anwaltsuche legend { *position: static; *margin-left: -.45em; *margin-bottom: 1em }
.anwaltsuche #content #anwaltsuche p { *overflow: none; _height: 1% }
.anwaltsuche #content #anwaltsuche .helptext { *border-top: 2px solid #9a1820; *top: 0;
*margin-top: 5px; _display: none; *padding-top: .2em; _padding-top: .6em }
.anwaltsuche #content form.logout { *height: 1%; *position: relative }

#content #child-menu, #content #path { *position: relative; *float: none }
#content ul ul { font-size: 1em }
#content ol ol { font-size: 1em }
#content form fieldset { *position: relative }
#content form fieldset legend { *position: relative; *left: 0; *top: -1em }

#content div.image { _position: relative }

/* kontakt */
#kontaktformular fieldset legend { *margin-left: -.45em; *margin-bottom: 1em }
#kontaktformular fieldset textarea { *width: 20em }
#kontaktformular fieldset .button { *margin-left: 9em }

/* Startseite */
.startseite #content #anwaltsuche fieldset .button { *padding: 1px .2em }
