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

#wrapper {  /* zum Zentrieren von Layouts usw. */
  width: 963px; 
  margin-left: 10px;
  min-height: 561px;
  background-repeat: no-repeat;
  background-position: right top;
  background-image: url(files/Layout/Hintergrund.jpg?ver=1228911073);
}
.msie6 #wrapper {
  height: 561px;
}

@media print, handheld {
  #wrapper { background-image: none; padding: 0; width: auto; min-height: 0; height: auto; margin-left: 0; }
}

.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; }

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

hr { display: none; }

#head { height: 175px; }

#head #divoben {
  height: 1px; 
  width: 1px; 
  overflow: hidden;
  position: absolute;
  left: -1px;
}

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

@media handheld {
  #head { height: auto; padding: 2px 5px 4px 5px; border: 0; }
  #head img { max-width: 100%; max-height: 80px; height: auto; width: auto; margin-top: 5px; }
  #head #divoben { height: auto; width: auto; position: static; }
  #cms_vorschau_label { display: none; }
}

@media print, embossed {
  #head { margin-bottom: 30px; }
  #cms_vorschau_label { display: none; }
}
.verticalnavi {
  background-color: #8fb521;
  margin-left: 83px;
  
  width: 214px; /* im Layout "Content" padding-left auf den gleichen oder höheren Wert setzen */
  position: absolute;
  font-weight: bold;
}

.verticalnavi #topimg {
  background-position: left top;
  background-repeat: no-repeat;
  background-image: url(files/Layout/Rundung-oben-links.gif?ver=1228757657);
  height: 07px;
}

.verticalnavi #topimg div {
  background-position: right top;
  background-repeat: no-repeat;
  background-image: url(files/Layout/Rundung-oben-rechts.gif?ver=1228757658);
  height: 07px;
}

.verticalnavi #bottomimg {
  background-position: left top;
  background-repeat: no-repeat;
  background-image: url(files/Layout/Rundung-unten-links.gif?ver=1228757658);
  height: 07px;
  font-size: 1px; /* MSIE 6 */
}

.verticalnavi #bottomimg div {
  background-position: right top;
  background-repeat: no-repeat;
  background-image: url(files/Layout/Rundung-unten-rechts.gif?ver=1228757659);
  height: 07px;
}

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

.verticalnavi li { padding: 12px 13px; }

.verticalnavi a { color: white; text-decoration: none; }
.verticalnavi li.curdir a { color: black; }

.verticalnavi a:hover,
.verticalnavi li.curdir a:hover { color: #428625; }

.verticalnavi a:active { color: black; }

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

@media handheld {
  .verticalnavi { position: static; width: auto; height: auto; padding: 0; margin: 0 5px 5px 5px; background-image: none; }
  .verticalnavi ul { padding: 0; }
  .verticalnavi li { padding: 1px 5px; }
}
#bildleiste {
  float: right;
  width: 280px;
  padding-right: 65px;
}

#content { line-height: 150%; }

.mitbild { padding: 4px 365px 20px 320px; } /* nicht .mitbild#content usw. wg. MSIE 6 */
.ohnebild { padding: 4px 65px 20px 320px; }

.content a            { color: #428625; }
.content a:visited { color: gray; }
.content a:hover { color: #8fb521; }
.content a:active { color: black; }

@media print {
  #bildleiste { padding-right: 0; }
  .mitbild { padding: 0 300px 0 0; }
  .ohnebild { padding: 0; }

  .content a,
  .content a:visited,
  .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 {
  #bildleiste { float: none; padding: 0 5px; max-width: 96%; }
  #bildleiste img { width: auto; height: auto; max-width: 100%; }
  #content { line-height: 100%; padding: 5px; }
}

h1 { 
  color: #428625;
  font-size: 140%;
  line-height: 140%;
  margin: 0 0 1em 0;
  text-transform: uppercase;
}

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

@media handheld {
  h1 { margin-bottom: 0.4em; line-height: 120%; font-size: 120%; }
}
.imgright { float: right; margin-left: 23px; }

/* nur MSIE 5 Mac */
/*\*//*/
div.image { overflow: hidden; }
/**/

@media handheld {
  .imgright { float: none; margin-left: 0; }
  .image { 
    margin: 4px 0;
    max-width: 100%;
  }
  .image img { 
    max-width: 99%;
    height: auto;
  }
}

.absatz ul, .absatz ol {
  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, .absatz ol { width: inherit; }
/**/

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

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

@media handheld {
  .absatz ul, .absatz ol {
    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; }

/* 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; }
/**/

.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 {
  .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; }
}

.absatz { margin-bottom: 1em; }

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

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


.stdform { margin-top: 1em; }

.stdform table {
  margin-top: 1em;
}

.stdform td {
  padding: 3px 5px;
}

.stdform .label {
  text-align: right;
  padding-left: 0;
}

.stdform label { color: #666666; }
.stdform .pflichtfeld label { color: black; }

.stdform .header {
  color: white;
  background-color: silver;
}

.stdform .buttonrow td { 
  padding-top: 10px;
}

.stdform .editfield { width: 350px; }

.stdform_upload_error { color: red; }
#form_msgbox { margin-top: 1em; }
#form_errormsg { color: red; }
#form_backmsg { font-weight: bold; }

@media handheld {
  .stdform table { width: 100%; }
  .stdform td, .stdform .label, .stdform .buttonrow td { padding: 0px 2px 1px 0; }
  .stdform .editfield { width: 100%; }
}

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

@media print, embossed {
  .stdform table { width: 100%; }
  .stdform .editfield { width: 100%; }
}

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

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

#vtoplink { padding-top: 1em; }
#htoplink { padding-top: 0; margin: 0; overflow: hidden; height: 0; width: 0; }

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

@media handheld {
  #htoplink { padding-top: 1em; margin-bottom: 1em; height: auto; width: auto; overflow: visible; }
}
.speisekarte .kategorie {
  color: #428625;
  font-weight: bold;
  font-size: 120%;
  padding-left: 0;
}

.speisekarte .katspacer { padding-top: 1.5em; }

.speisekarte td { vertical-align: top; }

.speisekarte .nr {
  text-align: right;
  padding-left: 0;
  padding-right: 10px;
}

.speisekarte .preis {
  white-space: nowrap;
  text-align: right;
  padding-left: 10px;
}

@media handheld {
  .speisekarte .katspacer { padding-top: 1em; }
}
ul.wochen {
  list-style-type: none;
  margin-left: 0;
  padding-left: 0;
}

fieldset {
  border: none;
  margin: 0;
  padding: 0;
}

legend,
legend span { display: block; width: 0; height: 0; overflow: hidden; position: absolute; }
/* span: bei Firefox bis 3 wirken einige der Styles nicht auf "legend" */

legend { margin: 0; padding: 0; left: 0; /* left: MSIE 5 Mac */ }
.msie6 legend,
.msie7 legend { position: relative; }

.spkarte { 
  border-top: 1px solid #8fb521;
  border-bottom: 1px solid #8fb521;
  padding-bottom: 0.5em;
}

.spkarte table { margin-top: 0.5em; }
.speisekarte .dayname { padding-left: 0; }
.speisekarte .datum { text-align: right; white-space: nowrap; }
.speisekarte .menge { text-align: right; white-space: nowrap; padding-right: 2px; padding-left: 10px; }
.speisekarte .anzahl { padding: 1px 0 0 0; }

.preisanzeige { margin-left: 0; }

.stdform input[type="submit"] { margin-left: 0; } /* Safari */

#kalender td {
  vertical-align: top;
  padding: 0 10px 1em 0;
}

#kalender td.datum,
#kalender td.zeit {
  font-weight: bold;
  text-align: right;
  white-space: nowrap;
}

#kalender td.datum {
  color: #428625;
}

#kalender td.desc {
  padding-right: 0;
}

.absatz #copyright { padding-top: 0.5em; }
.absatz #copyright,
.absatz #copyright a {
  color: gray;
  font-style: italic;
}
.absatz #copyright a  { text-decoration: none; }
.absatz #copyright a:hover { text-decoration: underline; }

.impressum .vcard { padding-bottom: 0.5em; }
.impressum .vcard p.org { margin-top: 0; }
.impressum .vcard table { margin-top: 0.2em; }
.impressum .vcard table td { padding: 0 0.5em 0 0; }
.impressum .vcard .type { display: none }
.impressum .vcard .street-address { padding-top: 0.5em; }

@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; }
}
