body {
  font-family: arial, geneva, sans-serif;
  font-size: 82%;
  color: black;
  background-color: #eaebeb;
  margin: 0;
  padding: 0;
}
@media print {
  body { color: black; background-color: white; }
}

.stdred { color: #9d0217; }

.nowrap { white-space: nowrap; }
.thinspace { margin-left: -0.17em; }

img { border: 0; }

p  { margin: 1em 0; } /* MSIE Win nimmt sonst einen erheblich größeren Abstand */

div.clearer { clear: both; height: 1px; width: 1px; margin-bottom: -1px; overflow: hidden; } /* height usw. für Opera und Netscape */
br.clearer { clear: both; }

hr { height: 1px; border: 0; border-top: 1px solid #b7b7b7; padding: 0; margin: 0; color: white;  }

@media print {
  hr { border-top-color: black; }
}
.leftmargin { padding-left: 13em; }

#head { height: 112px; }

#head img  { margin-top: 65px; }

#head br,
#head #skiplink { display: none; }

@media handheld {
 .leftmargin { padding-left: 0; }
  #head img { margin: 0; max-width: 100%; max-height: 40px; }
  #head { height: auto; padding: 2px 5px 4px 5px; }
  #head #skiplink { display: block; padding-bottom: 2px; }
  #cms_vorschau_label { display: none; }
}

@media aural, braille {
  #head #skiplink { display: inline; }
}

@media print {
 .leftmargin { padding-left: 0; }
  #head { height: auto; }
  #head img { margin-top: 0; margin-bottom: 1em; }
  #cms_vorschau_label { display: none; }
}

#head #oben { height: 0; width: 0; display: block; overflow: hidden; }

.navilinks {
  font-size: 1.1em;
  width: 9.5em; /* im Layout "Content" padding-left auf den gleichen oder höheren Wert setzen */
  text-align: right;
  position: absolute;
}
.msie6 .navilinks,
.msie7 .navilinks { margin-top: -0.85em; }

.verticalnavi #langlinks {
  height: 61px;
  margin-top: -1em; 
  line-height: 1em;
}
.verticalnavi .ugMac#langlinks { height: 60px; }
.msie6 .verticalnavi #langlinks,
.msie7 .verticalnavi #langlinks { height: 59px; margin-top: 0; }
/* nur MSIE 5 Mac */
/*\*//*/
.verticalnavi { top: 99px; }
.verticalnavi #langlinks { margin-top: -1px; }
/**/

.verticalnavi #langlinks li {
  display: inline;
  color: #b6b6b6;
  border-right: 1px solid #b6b6b6;
  padding: 0 4px 0 0; /* im Layout "Seiten-Fuß" im Top-Link auf den gleichen Wert setzen */
  line-height: 130%;
}
.msie6 .verticalnavi #langlinks li,
.msie7 .verticalnavi #langlinks li { line-height: 100%; padding: 0 0 0 4px; }

.verticalnavi #langlinks li.lastchild {
  border-right: none;
  padding-right: 0;
}

.verticalnavi ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.verticalnavi li {
  padding: 0 0 0 5px;
  line-height: 138%;
}
.verticalnavi li.linkspacer {
  padding-top: 20px;
}

.navilinks a { /* wird auch in #footer (Layout "Seiten-Fuß") verwendet */
  color: #7f7f82;
  text-decoration: none;
}

.navilinks li.curdir a { color: #9d0217; }

.navilinks a:focus,
.navilinks li.curdir a:focus { color: white; background-color: #9d0217; padding-left: 2px; }
.navilinks a:hover,
.navilinks li.curdir a:hover { color: black; background-color: transparent; }
.navilinks a:active,
.navilinks li.curdir a:active { color: #b10019; background-color: transparent; }

@media print, embossed {
  .verticalnavi { display: none; }
}

@media handheld {
  .navilinks {
    position: static; 
    width: auto; 
    text-align: left; 
  }
  .verticalnavi {
    margin-top: 0; 
  }
  .verticalnavi ul { padding-left: 3px; }
  .verticalnavi li,
  .verticalnavi li.linkspacer { padding: 2px; line-height: 100%; }

  .verticalnavi #langlinks { height: auto; }
  .verticalnavi #langlinks li {
    display: list-item;
    border-right: none;
    padding: 2px;
    line-height: 100%;
  }
  .verticalnavi #langlinks li.lastchild { padding-right: 2px; }
}
#content {
  line-height: 130%;
  padding-top: 48px;
  padding-right: 40px;
  min-height: 318px;
  background-color: white;
  background-image: url(files/Layout/Navi-Hintergrund.gif?ver=1222851306);
  background-repeat: no-repeat;
  background-position: 25px 15px;

/*padding-left: Breite der senkrechten Navigation+gewünschter Rand, oder
   border-left: Breite der Navi, gewünschten Rand mit padding setzen
   nicht margin-left, im MSIE 6/7 bei zentrierten Layouts die Navigation nach rechts rutscht */
}
.msie6 #content { height: 318px; }

.content               { max-width: 730px; }
.content a            { color: #9d0217; }
.content a:visited { color: #a18186; }
.content a:focus { color: white; background-color: #9d0217; text-decoration: none; }
.content a:hover { color: #7f7f82; background-color: transparent; text-decoration: underline; }
.content a:active { color: #b10019; background-color: transparent; text-decoration: underline; }

.searchlink { display: block; padding-bottom: 1.5em; }
.searchlink a:before {
  content: "« " ;
  font-size: 1.2em;
}

@media print {
  #content { padding: 0; min-height: 0; background-image: none; }
  .content a,
  .content a:visited,
  .content a:focus,
  .content a:hover,
  .content a:active { color: black; text-decoration: underline; }
  .content a[href^="http"]:after { content: " <"attr(href)">"; }
  .content .notprinturl a[href^="http"]:after { content: ""; }
  .msie6 #content { height: auto; }
}

@media handheld {
  #content { 
    line-height: 120%;
    padding: 5px;
    border-left: 0;
    min-height: 0;
    background-image: none; 
  }
}

h1 { 
  margin: 0;
  overflow: hidden;
  height: 0;
  font-size: 120%
}

h2, h3, h4, h5, h6 {
  font-size: 100%;
  margin: 0;
  display: inline;
}

@media print, handheld {
  h1 { 
    margin-bottom: 1em;
    padding-top: 3px;
    overflow: visible;
    height: auto;
  }
}

@media handheld {
  h1 { margin-bottom: 0.6em; }
}
dl.image { margin: 0; overflow: auto; } /* hidden kann Netscape 7.1 nicht - siehe auch ganz unten */

dl.image img {
  vertical-align: bottom; /* weil Firefox sonst unter dem Bild einen waagerechten Spalt einfügt */
}

.imgleft { float: left; margin-right: 23px; }

dl.image dd {
  text-align: center;
  color: black;
  background-color: silver;
  padding: 3px 1px;
  margin: 0;
}

/* nur MSIE 5 Mac */
/*\*//*/
div.image { overflow: hidden; }
dl.image { overflow: visible; }
dl.image dd { display: table-cell; }
/**/

@media handheld {
  .imgleft { float: none; margin-right: 0;}
  .image { 
    margin: 4px 0;
    max-width: 100%;
  }
  .image img { 
    max-width: 99%;
    height: auto;
  }
  dl.image dd { 
    padding: 1px;
  }
}

@media print {
  dl.image dd { 
    padding: 3px 0;
    border: 1px solid black;
    border-top-width: 0;
    color: black;
    background-color: transparent;
  }
  .msie7 dl.image { overflow: hidden; } 
  /* da Netscape 7.1 hidden nicht kann, zeigt der MSIE 7 Scrollbalken im Drucklayout */
}

.absatz ul {
  padding-top: 0; 
  margin-top: 0; 
  padding-bottom: 0; 
  margin-bottom: 0;
}

/* nur MSIE 5 Mac - evtl. muss hier ein fester px-Wert hin */
/*\*//*/
.absatz ul { width: inherit; }
/**/

.listemptyline li {
  margin-bottom: 1em;
}

.listemptyline ul {
  margin-bottom: 0em;
}

@media handheld {
  .absatz ul {
    padding-left: 11px; margin-left: 0;
  }
}


.stdtable table {
  background-color: white; 
  border-collapse: collapse;
}

.stdtable table,
.stdtable table th,
.stdtable table td  { border: 1px solid #e0e0e0; }

.tableright.newline { clear: right; }
.tableleft.newline { clear: left; }
.msie6 .tableright.newline { clear: both; }
.msie6 .tableleft.newline { clear: both; }

.tableleft { float: left; margin-right: 1.5em; }
.tableright { float: right; margin-left: 1.5em; }

/* nur MSIE 5 Mac */
/*\*//*/
.stdtable table { border-top-width: 0; border-left-width: 0; }
.stdtable table th,
.stdtable table td { border-bottom-width: 0; border-right-width: 0; }
.tableleft h2.block,
.tableright h2.block { float: left; }
.tableright table,
.tableleft table { float: left; clear: left; }
/**/

.width100 { float: none; margin-right: 0; }
.width100 table { width: 100%; }
.stdtable table th,
.stdtable table td  { vertical-align: top; padding: 4px; }

.alignright table th,
.alignright table td  { text-align: right; }

.firstcol table tr td:first-child { background-color: #e8e8e8; }

.nowrap .text table th,
.nowrap .text table td { white-space: nowrap; }

.tableheader table tr:first-child td,
.stdtable table th { background-color: #d0d0d0; }

.stdtable table th { text-align: left; font-weight: normal; }

@media handheld {
  .tableleft { float: none; margin-right: 0em; }
  .tableright { float: none; margin-left: 0em; }
  .stdtable table    { border-color: silver; }
  .stdtable table th,
  .stdtable table td { border-color: silver; padding: 1px; }
  .nowrap .text table th,
  .nowrap .text table td { white-space: normal; }
}

@media print {
  .stdtable table, 
  .stdtable table th,
  .stdtable table td { border-color: black; }

  .firstcol table tr td:first-child,
  .tableheader table tr:first-child td,
  .stdtable table th { background-color: transparent; font-weight: bold; }
}


/* MSIE 6/7 kann :lang(de) noch nicht */
.lang_de .content blockquote {
  padding-left: 43px;
  background-image: url(files/Layout/Quote.gif?ver=1222851306);
}

.lang_en .content blockquote {
  padding-left: 43px;
  background-image: url(files/Layout/Quote_en.gif?ver=1222851307);
}

.content blockquote {
  color: #666666;
  margin: 0;
  background-repeat: no-repeat;
}

@media handheld, print {
  .lang_de .content blockquote,
  .lang_en .content blockquote { padding-left: 0; background-image: none; }
  :lang(de) .content blockquote:before { content: "„"; }
  :lang(de) .content blockquote:after { content: "“"; }
  :lang(en) .content blockquote:before { content: "“"; }
  :lang(en) .content blockquote:after { content: "”"; }
}

@media print {
  .content blockquote { color: black; }
}
.absatz { margin-bottom: 1em; }

h2.block { 
  display: block; 
  margin-bottom: 1em;
}

.newline { clear: both; }

.nofloat { overflow: hidden; }
.msie6 .nofloat { overflow: visible; height: 1%; }

/* nur MSIE 5 Mac, da er bei overflow:hidden tatsächlich Text abschneidet */
/*\*//*/
.nofloat { overflow: visible; }
/**/

@media handheld {
  .absatz { margin-bottom: 0.5em; }
  h2.block { margin-bottom: 0.5em; }
}


dl.dir dd {
  margin-left: 0;
  padding-left: 0;
}

dl.dir dt {
  margin-top: 1.5em;
}

@media handheld {
  dl.dir dt {
    margin-top: 1em;
  }
}

#footer { padding: 0 40px 10px 0; }

#slogan {
  padding-top: 0.7em;
  text-transform: lowercase;
  color: white;
  font-size: 3.1em;
  letter-spacing: 3px;
}

#footer .navilinks a { line-height: 6px; }
.msie6 #footer .navilinks a,
.msie7 #footer .navilinks a { line-height: 100%; }
.msie6 #footer .navilinks,
.msie7 #footer .navilinks { margin-top: -0.2em; }

#pagebuttons {
  list-style-type: none;
  margin: 2px 0 0 0;
  padding: 0;
  display: inline; 
  position: absolute;
}
.msie6 #pagebuttons,
.msie7 #pagebuttons { margin: 0; }

#pagebuttons li { 
  display: inline;
}

#pagebuttons a,
#pagebuttons span {
  padding: 2px 6px;
  color: white;
}
.msie6 #pagebuttons a,
.msie6 #pagebuttons span,
.msie7 #pagebuttons a,
.msie7 #pagebuttons span { line-height: 150%; }

#pagebuttons a {
  text-decoration: none;
  background-color: #9d0217;
}
#pagebuttons a:focus { background-color: #de6f7e; }
#pagebuttons a:hover { background-color: #c7001b; }
#pagebuttons a:active { background-color: #850012; }

#pagebuttons span {
  background-color: #8a8b8d;
}

#htoplink { visibility: hidden; } /* keine Wirkung auf aural und braille, das ist auch gewollt */

@media aural, handheld {
  #slogan { display: none; }
}

@media print, embossed {
  #footer { display: none; }
}

@media handheld {
  #footer { padding: 5px; }
  #footer .navilinks a { line-height: 80%; }
  #footer .navilinks,
  #pagebuttons { position: static; }
  #footer .navilinks { float: right; }
  #htoplink { visibility: visible; }
}
#startseitengrafik div { 
  width: 125px; 
  height: 1px;
  overflow: hidden;
  line-height: 0; 
  margin-right: 10px;
  float: left; 
}

#startseitengrafik img {
  margin: 0 10px 10px 0;
}

@media handheld {
  #startseitengrafik div { display: none; }
  #startseitengrafik img { max-width: 100%; height: auto; margin: 0 5px 5px 0; }
}
ul.absatzliste {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.niederlassung { margin-bottom: 10px; }
.msie6 .niederlassung,
.msie7 .niederlassung { height: 1%; }

.niederlassung img {
  float: left;
  margin-right: 20px;
}

.niederlassung .vcard { overflow: hidden; }
.msie6 .niederlassung .vcard { overflow: visible; height: 1%; }

.niederlassung .org { font-weight: bold; }

@media print, handheld {
  .niederlassung { margin-bottom: 1em; }
  .niederlassung img { display: none; }
  .niederlassung .vcard { display: block; }
}

form#suchfeld { margin: 0 0 1em 0; } /* 1em für Firefox; */

form#suchfeld label { /* sonst springt das Suchfeld */
  display: block; 
  height: 0; 
  overflow: hidden;
}

#suchwort { width: 200px; }

@media handheld {
  #suchwort { max-width: 50%; font-size: 50%; }
  #suchbutton { font-size: 50%; }
}

@media print, embossed {
  form#suchfeld { display: none; }
}

.suchwort { color: #9d0217; }
.trenner    { color: #9d0217; }


.sitemap_1,
.sitemap_1 ul { 
  list-style-type: none;
  margin-bottom: 0.7em;
}

.sitemap_1 { 
  padding-left: 0;
  margin-left: 0;  /* für MSIE 5 Mac */
  margin-top: 2px;
  font-weight: bold;
}

.sitemap_2    { font-weight: normal; }
.sitemap_1 li { padding-bottom: 2px; }

@media handheld {
  .sitemap_1, .sitemap_1 ul {
    list-style-type: none; 
    margin-bottom: 0.2em;
    padding-left: 0;
  }
  .sitemap_1 ul {padding-left: 1em; }
}

.absatz #copyright { list-style-type: none; margin: 0; padding: 0; }
.absatz #copyright,
.absatz #copyright a {
  color: gray;
  font-style: italic;
}
.absatz #copyright a  { text-decoration: none; }
.absatz #copyright a:focus { color: white; }
.absatz #copyright a:hover { color: gray; text-decoration: underline; }

.impressum .vcard p.org { margin-top: 0; }
.impressum .vcard p.org strong { font-size: 120%; }
.impressum .vcard table td { padding: 0 0.5em 0 0; }
.impressum .vcard .type { display: none }

.impressum .foto { border: 1px solid silver; float: left; margin-right: 20px; }

@media handheld {
  .impressum .foto { float: none; display: block; margin-right: 0; max-width: 100%; }
}
@media print {
  .impressum #anfahrtlink { display: none; }
  .absatz #copyright a { color: black; text-decoration: underline; font-style: normal; display: block; margin-top: 1em; }
}
@media embossed {
  .impressum #anfahrtlink { display: none; }
}
