
body
{
 color: #333;
 font-size: 75%;
 font-family: Trebuchet MS, Helvetica, Arial, Sans, sans-serif;
 font-weight: normal;
 line-height: 1.8em;
 margin: 4px;
 background: #FFFFFF url(/images/bg-main-greywave.png) repeat-x fixed top;
}

html>body { font-size: 9pt; }

a:link,
a:visited
{
 color: #228;
 text-decoration: none;
 font-weight: 700;
}

a:active
{
 color: #f30;
 text-decoration: none;
}

a:hover
{
 color: #228;
 text-decoration: none;
 border-bottom: 1px solid #f30;
}

a.textlink[rel="external"]
{ 
  background: url("/images/link-ext_aktiv.png") no-repeat 0 0.2em;
  padding-left: 14px;
}

a.textlink
{
  background: url("/images/link-int_aktiv.png") no-repeat 0 0.2em;
  padding-left: 14px;
}

h1,
h2,
h3,
p { text-decoration: none; }

h1,
h2,
h3
{
 text-transform:uppercase;
 letter-spacing: 0.1em;
 font-weight: 700;
}

h1
{
 color: #333;
 font-size: 1.1em;
 background: #E3E4E9;
 padding: 0px 6px 0px 6px;
 margin: 1em 0em 1em 0em;
 line-height: 1.6em;
 width: 97%; /* shitty IE needs this */
}

html>body h1 { width: 98%; /* good browsers need this */ }

h2
{
 color: #444;
 font-size: 1em;
 padding: 0px 8px;
 margin: 2.4em 0em 1.2em;
 white-space: nowrap;
 border-bottom: 1px solid #999;
 border-left: 1px solid #999;
 line-height: 1.6em;
 width: 97%;
}

h2:before { content: url("/images/h2-pre.png"); }

h3
{
 color: #444;
 font-size: 1em;
 margin: 2em 0em 0.8em;
}

p { margin: 0em 0em 1em 0em; }

p.noskip { margin: -1em 0em 0em 0em; }

p.h2skip { margin: 2.4em 0em 1em 0em; }

tt,
code,
kbd
{
 font: 1em/1.8em "Courier New", Courier, monospace;
 color: #003;
}

code,
kbd,
pre
{
 speak-punctuation: code;
 speak-numeral: digits;
}

/* keyboard shortcuts */
kbd
{
 padding: 0px 1px 0px 1px;
 border-width: 1px 2px 2px 1px;
 border-style: solid;
 background: #faf6f6;
 color: #000;
 border-color:  #edd #baa #baa #eed;
}

pre
{
 font: 1em/1.8em "Courier New", Courier, monospace;
 padding: 0.6em 1em 0.4em 1em;
 border: 1px solid #999;
 margin-bottom: 1em;
 overflow: hidden;
 color: #003;
}

abbr,
acronym,
.description
{
 border-width: 0 0 1px 0;
 /* padding-bottom: 2px; */
 border-style: dotted; /* copy gecko's behaviour to IE */
 cursor: help;
}

abbr.nomarkup,
acronym.nomarkup
{
 border-width: 0;
 cursor: auto;
}

abbr { speak: spell-out; }

acronym { speak: normal; }

/* not in link */
a>abbr,
a>acronym,
a>.description,
a>abbr.nomarkup,
a>acronym.nomarkup { cursor: pointer; }

dfn
{
 font-size: 0.9em;
 line-height: 1.2em !important;
}

ol
{
 padding: 0px;
 margin: 0em 0em 1em 0.5em;
}

ol li ul { margin-bottom: 0em; }

ol li ul li ul { margin-top: -1.5em; }

ol.alpha
{
 list-style-type: lower-latin;
 list-style-position: default;
}

ul
{
 padding: 0px;
 margin: 0em 0em 1em 0em;
 list-style: square;
}

li
{
 margin-left: 1.2em;
 margin-bottom: 0.3em;
 text-align: left;
}

ul.accesskeys li
{
 list-style: none;
 margin-left: 0em;
 margin-top: 0em;
 white-space: nowrap;
}

a em
{
 font-style: normal;
 text-decoration: underline;
}

table
{
 width: 100%;
 border-spacing: 0px;
 border: 1px solid #999;
 caption-side: bottom;
 table-layout:auto;
 border-collapse:collapse;
 margin-bottom: 0.8em;
}

table caption
{
 text-align: right;
 font-size: 0.8em;
 margin-bottom: 0.8em;
}

td,
th
{
 border: 1px solid #999;
 padding-left: 1em;
 padding-right: 1em;
}

form
{
 margin: 0px;
 padding: 0px;
}

.caption
{
 font-size: 0.8em;
 margin-top: -1em;
}

/* Fuer Cynthia Says */
fieldset
{
 border: 1px solid #999;
 margin: 2em 0em 2em 0em;
 padding: 1em 1em 1.5em 1.5em;
}

legend { display: none; }

table.keytable tr th,
table.keytable tr td
{
 vertical-align: top;
 text-align: left;
 border: 1px solid #999;
 padding-left: 1em;
 padding-right: 1em;
}

table.keytable
{
 margin-top: 1em;
 margin-bottom: 0em;
}

table.keytable caption { margin-bottom: 3em; }

.clear { clear: both; }

.lower { text-transform: lowercase; }

.alert
{
 color: #FF6600;
}


/**********************************************
preise
***********************************************/

#nettopreise { display: none; }

#nettopreise table { border: 1px solid #999; }

#nettopreise table tr td,
#nettopreise table tr th
{
 border: none;
 border-bottom: 1px solid #999;
}

#nettopreise table tr th { border-bottom: 3px double #999; }

#bruttopreise { display: block; }

#bruttopreise table { border: 1px solid #999; }

#bruttopreise table tr td,
#bruttopreise table tr th
{
 border: none;
 border-bottom: 1px solid #999;
}

#bruttopreise table tr th { border-bottom: 3px double #999; }

/**********************************************
kontaktformular
***********************************************/

#formular table
{
 width: 100%;
 border-spacing: 0px;
 margin-left: auto;
 margin-right: auto;
 margin-bottom: 20px;
 margin-top: 10px;
 border: 0px;
}

#formular td
{
 white-space: nowrap;
 text-align: left;
 vertical-align: top;
 padding: 4px 4px 4px 0px;
 margin: 0px;
 border: 0px;
}

#formular input,
textarea
{
 white-space: nowrap;
 text-align: left;
 vertical-align: top;
 margin: 0px 0px 0px 8px;
 padding: 2px;
 border: 1px solid #333;
 width: 300px;
}

#formular input:focus,
textarea:focus { background: #F1F1F1; }

#formular #absenden
{
 font-size: 0.9em;
 text-align: center;
 vertical-align:middle;
 margin: 8px;
 padding: 3px;
 border: 1px outset #000;
 width: 306px;
}

#formular textarea
{
 height: 10em;
 overflow: auto;
 white-space: pre; /* this make IE work -- break lines and enable CR */
}

#formular .alert label
{
 color: #FF6600;
 margin-left: 0.3em;
 font-weight: 700;
}

#formular .alert td { background: #F2F2F2; }

/**********************************************
suchseite
***********************************************/

#suchen input
{
 white-space: nowrap;
 text-align: left;
 vertical-align: top;
 margin: 0.5em 0em 0em;
 padding: 2px;
 border: 1px solid #333;
 width: 160px;
 font: 200 12px Geneva, "Courier New", Courier, monospace;
}

#suchen #absenden
{
 font-size: 0.9em;
 text-align: center;
 vertical-align:middle;
 margin: 1.5em 0em 1.5em 0em;
 padding: 3px;
 border: 1px outset #000;
 width: 166px;
 font: 200 11px Helvetica, Arial, sans-serif;
}

#suchen p
{
 text-align: left;
 margin: 0px 0px 8px 8px;
 padding: 3px;
}

.neuesuche label { display: none; }

#ergebnis h3 { clear: both; }

#ergebnis ol
{
 clear: both;
 margin: 0em;
 padding: 0em;
}

#ergebnis li
{
 margin: 0em 2em 1em 1.5em;
 line-height: 1.4em;
}

/**********************************************
top navigation
***********************************************/
#nav
{
 position: relative;
 margin: 0em;
 margin-top: 1em;
 height:28px;
 font: 200 1em/1.2em Helvetica, Arial, sans-serif;
 white-space: nowrap;
}

#nav ul
{
 height: 28px;
 border: 0px;
 padding: 0em;
 margin: 0em 1.8em 0em 1em;
 list-style: none;
}

#nav li
{
 height: 24px;
 float: left;
 margin-left: 0em;
}

#nav li a { text-transform: lowercase; }

#nav li a:hover { border-bottom: none; }

#nav li.navright
{
 color: #282B32;
 float: right;
 margin-left: 1.5em;
 text-shadow: 0.25em 0.25em 0.3em #707070;
}

#nav li.navright a
{
 color: #282B32;
 text-decoration:none;
 font-weight: 200;
}

#nav li.navright a:hover,
li.navright a:active
{
 text-decoration:none;
 padding-bottom: 0px;
 border-bottom: 1px solid #545E82;
}

/**********************************************
left navigation
***********************************************/
#sub
{
 margin: 1.7em 0em 0em;
 font: 200 1em/12px Helvetica, Arial, sans-serif;
 float:left;
 left: 0;
}

html>body #sub
{
 position: absolute;
 margin-top: 1.2em;
}

#sub ul
{
 position: relative;
 width: 14em;
 padding: 0em 0em 0em 1em;
 margin: 0em;
 list-style: none;
}

#sub li
{
 margin: 0em;
 padding: 0em;
 line-height: 0;
}

#sub li a
{
 color: #445;
 display:block;
 letter-spacing: 0.1em;
 font-weight: 200;
 text-decoration:none;
 margin: 0em;
 padding-bottom: 0.2em;
 border: none;
 line-height: 2em;
}

html>body #sub li a
{
 margin-top: 1em;
 margin-bottom: 0.8em;
 line-height: 1em;
}

#sub li a:hover
{
 color: #000;
 background: #f0f0f0 url(/images/sub-bg.png) no-repeat 100% 50%;
}

#sub li a:active
{
 color: #000;
 background: url(/images/sub-bg.png) no-repeat 100% 50%;
}

/**********************************************
left tertiaer navigation
***********************************************/
#sub2 { margin: 0em; }

#sub2 li
{
 margin: 0em;
 width: 13em;
}

#sub2 li a
{
 color: #667;
 display:block;
 letter-spacing: normal;
 font-weight: 200;
 border: none;
 line-height: 2em;
}

html>body #sub2 li a
{
 margin-top: 0em;
 margin-bottom: 0.7em;
 line-height: 1em;
}

#sub2 li a:hover
{
 color: #000;
 background: #f0f0f0 url(/images/sub-bg.png) no-repeat 100% 50%;
 text-decoration:none;
}

#sub2 li a:active
{
 color: #000;
 background: url(/images/sub-bg.png) no-repeat 100% 50%;
}

/**********************************************
Unternavigation Seite
***********************************************/
 #sub3
{
 position: relative;
 border-bottom: 1px dotted #999;
 padding: 0.2em 0em 0em 0;
 margin: 0em 0 3em 10px;
 float: none;
 color: #003;
 font-size: 0.9em;
 text-align: left;
 width: auto;
 white-space:nowrap;
 background: #fff;
}

#sub3 li
{
 border-top: 1px dotted #666;
 padding: 1em 0em 0em 0em;
 list-style: none;
 margin: 0em 0em 0.8em 1px;
 line-height: 0em;
}

#sub3 li:first-child { border-top: none; }

ul.toc
{
 padding: 1em;
 margin-bottom: 2em;
 list-style: none;
 font-size: 0.9em;
 border: 1px solid #999;
 width: 10%;
 white-space: nowrap;
 display: table;
}

ul.toc li
{
 padding: 0px;
 margin-left: 0em;
 list-style: none;
 line-height: 1.3em;
}

ul.toc li a
{
 margin-left: 0em;
 color: #012;
 font-size: 1.1em;
 line-height: 1.4em;
 font-weight: normal;
}

ul.toc li a:before { content: url("/images/link_named.png") " "; }

ul.subtoc
{
 padding:0.5em;
 padding-left: 1.8em;
 margin-bottom: -0.5em;
 list-style: none;
 font-size: 0.95em;
 white-space: nowrap;
 display: table;
}

ul.subtoc li
{
 padding: 0px;
 margin-left: 0em;
 list-style: none;
 line-height: 1.3em;
}

ul.subtoc li a
{
 color: #011;
 font-weight: normal;
}

ul.subtoc li a:before { content: url("/images/1pixel.gif"); }

/**********************************************
topelement
***********************************************/

#top
{
 left: 0px;
 top: 0px;
 height: 28px;
 margin-right: auto;
 margin-left: auto;
 position: relative;
 width: 82em;
 background: #848EAA url(/images/bg-top-grau.jpg) repeat 50%;
 border: 1px solid #556;
 text-align: right;
 vertical-align: middle;
}

html>body #top
{
 min-width: 75em;
 max-width: 90em;
 width: 90%;
}

.search input
{
 width: 140px;
 height: 14px;
 margin: 4px 74px;
 vertical-align: 50%;
 background: #D5D9E6;
 border-top: 2px solid #556;
 border-right: 1px solid #FFF;
 border-bottom: 1px solid #FFF;
 border-left: 2px solid #556;
 font: 200 11px Geneva, "Courier New", Courier, monospace;
 color: #000;
 top: 2px;
}

.search label { display: none; }

.searchbutton
{
 position: absolute;
 right: 14px;
 top: 5px;
 width: 46px;
 height: 20px;
 margin: 0px;
 vertical-align: 50%;
}

html>body .searchbutton { top: 4px; }

.searchbutton label { display: none; }

/**********************************************
inhaltselement
***********************************************/
#container
{
 left: 0px;
 top: 3px;
 margin-right: auto;
 margin-left: auto;
 margin-bottom: 10px;
 padding-bottom: 10px;
 position: relative;
 width: 82em;
 border: 1px solid #556;
 background: #fff;
}

html>body #container
{
 min-width: 75em;
 max-width: 90em;
 width: 90%;
}


div.subcolumns
{
 overflow:hidden;
 width:100%;
}

div.left-col
{
float: left;
width: 74%;
border-right: 1px dotted #ccc;
padding: 0 10px 10px 0;
margin: 0 -10px 10px 0;
}

/* rechte Spalte */

div.right-col
{
float: right;
width: 25%;
margin: 0 0px 10px 0;
margin-left: -5px;
}
div.right-col div
{
padding: 0 5px 0 10px;
}

div#twitter_div
{

}

div#twitter_div h2
{
 color: #444;
 font-size: 1em;
 padding: 0px 8px 10px 1px;
 margin: 0 0em 1.2em;
 white-space: nowrap;
border-bottom: 1px dotted #ccc;
 border-left: none;
 line-height: 1.6em;
 width: 97%;
}

div#twitter_div h2:before { content: url("/images/1pixel.gif"); }

ul#twitter_update_list 
{
margin: 0;
}

ul#twitter_update_list li
{
font-size: 95%;
 list-style-type: none;
 padding-bottom: 0.75em;
 margin-bottom: 0.5em;
 margin-left: 0em;
 line-height: 1.4em;
border-bottom: 1px dotted #ccc;
}

ul#twitter_update_list li a
{
display: none;
}

ul#twitter_update_list li span a
{
display: inline-block;
margin-top: 5px;
color: rgb(255,100,0);
font-weight: normal;
}
a#twitter-link { font-size: 90%}

/* mittlere Spalte */

#content
{
 margin: 16px 16px 0px 16em;
 border-left: 1px dotted #667;
 padding-left: 20px;
 clear: none;
}

#content a:hover { border-bottom: none; }

#content a.textlink:hover { border-bottom: 1px solid #f66; }

#content a.pagelink:hover { border-bottom: 1px solid #f66; }

#content .alert
{
 color: #FF6600;
 font-weight: 700;
}

.homebox
{
 border: 1px solid #999;
 padding: 20px;
 margin: 0em 0em 2em 0em;
 color: #003;
 text-align: left;
 overflow: hidden;
}

.homebox img
{
 float: left;
 margin-right: 0.8em;
 margin-top: 0.5em;
 padding: 5px;
 border: 1px solid #999;
}

.homebox ul { list-style: none; }

.homebox li
{
 margin: 0em 0em 1em 0em;
 padding: 0em;
 color:#333;
 font-size: 0.95em;
}

.homebox h3 { margin: 0.1em 0em 0.8em 150px; }

.homebox h2 { margin: 0.5em 0em 0.8em; }

.homebox p { margin-left: 150px}

div.trenner 
{  
 border-top: 1px dotted #667;
 height: 10px;
}

.textbox
{
 border: 1px solid #999;
 padding: 1em 1em 0.8em 1em;
 margin: 0.5em 2.5em 1.5em 0em;
 float: left;
 width: 45%;
 color: #003;
 font: 0.9em/1.8em "Courier New", Courier, monospace;
 text-align: left;
 overflow: hidden;
}

.textboxnormal
{
 border: 1px solid #999;
 padding: 1em 1em 0.8em 1em;
 margin: 0.5em 2em 1.5em 0em;
 float: left;
 width: 41%;
 color: #003;
 font-size: 0.95em; /* /1.4em; */ /* not valid, added line-height */
 /* line-height: 1.4em; */
 text-align: left;/* overflow: hidden;*/
}

html>body .textbox { font-size: 1em; }

/* partnerschaften */

ul.grid
{
 display: table;
 margin-bottom: -0.5em
}

li.grid
{
 margin-left: 0px;
 margin-right: 8px;
 margin-bottom: 8px;
 padding: 0px;
 border: 1px solid #999; /* remove me */
 float: left;
 width: 160px;
 height: 100px;
 line-height: 100px;
 display: block;
 text-align: center;
}

.grid a:hover { border: none; }

.grid img { vertical-align: middle; }

.map1
{
 border: 1px solid #999;
 padding: 10px;
 margin: 16px 25px 15px 0px;
 float: left;
 width: 20em;
 height: 20em;
 background: url(/zfimages/karte_ffm-darmstadt.png) no-repeat 50% 75%;
}

.map2
{
 border: 1px solid #999;
 padding: 10px;
 margin: 16px 25px 15px 0px;
 float: left;
 width: 20em;
 height: 20em;
 background: url(/zfimages/map-darmstadt.png) no-repeat 63% 50%;
 clear: left;
}

.map3
{
 border: 1px solid #999;
 padding: 10px;
 margin: 16px 25px 15px 0px;
 float: left;
 width: 20em;
 height: 20em;
 background: url(/zfimages/map-da_city.png) no-repeat 47% 50%;
 clear: left;
}

.map1 img { display: none; }

.map2 img { display: none; }

.map3 img { display: none; }

img.cap
{
 position:relative;
 top:220px;
 left:220px;
 border:1px solid #f30;
 display:inherit;
}

a.cap
{
 position: relative;
 top: 0px;
 font-size: 0.9em;
 color: #f60;
 display: table;
 background: #fff;
 padding-left: 5px;
 padding-right: 5px;
 border: 1px solid #999;
}

#footer
{
 font-size: 0.8em;
 padding: 1em 0em 0em;
 margin: -0.4em 0em -1em;
 border-top: 1px dotted #667;
 white-space: nowrap;
 clear: left;
 text-align: center;
}

#footer img { margin-top: 1.2em; }

#footer a:link { color: #333; }

#footer img.gotop
{
 margin-top: 0.4em;
 text-align: right;
 float: right;
 margin-right: 0.4em;
}

#logo
{
 position: relative;
 bottom: 3em;
 left: 1em;
 float:left;
}

.gotop
{
 text-align:right;
 float: right;
 margin-top: 2.4em;
 overflow: visible;
 margin-right: 0.4em;
}

/**********************************************
bilder allgemein
***********************************************/
img { border: 0px; }

img.txt
{
 border: 1px solid #999;
 padding: 10px;
 margin: 5px 25px 15px 0px;
 float: left;
}

/**********************************************
referenzliste
***********************************************/
.referenz
{
 width: 100%;
 margin: 1em 0em 1em 0.1em;
 vertical-align: middle;
 float: left;
}

html>body .referenz { float: none; }

.referenz a
{
 margin: 1em 0em 1em 0em;
 vertical-align: middle;
 color: #333 !important;
 font-weight: 200 !important;
 text-decoration: none;
}

.referenz a:hover { border-bottom: 1px solid #f30; }

.referenz img
{
 margin-right: 10px;
 vertical-align: middle;
 border: none;
}

.referenz img a:hover { border-bottom: 1px solid #fff; }

.liste { text-transform: uppercase; }

.liste ul
{
 list-style-type: none;
 margin-bottom: 2em;
 text-transform: none;
}

.liste li
{
 list-style-type: none;
 margin-bottom: 0.75em;
 font-size: 0.95em;
 text-transform: none;
 margin-left: 0em;
 line-height: 1.4em;
}

/**********************************************
preview ausgeklappt
***********************************************/

/* container */
div.pv-full
{
 display: none;
 margin: 0px 18px 0px 0px;
 padding: 0px;
}

div.pv-full p
{
 text-align: left;
 margin-left: 260px;
}

/* image (gross) */
img.pv-image
{
 margin-right: 10px;
 margin-top: 4px;
 vertical-align: top;
 float: left;
 clear: none;
 display: inline;
}

/* fuer gute browser gibts was extra */
html>body img.pv-image
{
 border-style: solid;
 border-width: 1px;
 border-color: #999999;
 padding: 10px;
}

/* close button (unten) */
.closeview
{
 margin-top: 30px;
 margin-left: 0px;
 padding: 0px;
 clear: left;
}

.closeview img { cursor: pointer; }

/**********************************************
allgemeine auszeichnungen
***********************************************/

.announce
{
 font-weight: 200;
 text-transform:uppercase;
 letter-spacing: 0.1em;
 font-size: 1.1em;
 line-height: 1.8em;
}

.left
{
 text-align: left;
 float: left;
}

.right { text-align: right; }

.center { text-align: center; }

.pointer { cursor: pointer; }

.small { font-size: 0.8em; }

.nobreak { white-space: nowrap; }

.servingo
{
 font-weight: 700;
 font-style: italic;
}

.humboldt
{ text-transform: uppercase; }

/**********************************************
accessability
***********************************************/

.skipnav
{
 position: absolute;
 top: 0px;
 left: -999px;
 width: 990px;
}

/**********************************************
media print
***********************************************/

@media print {

body { background: #FFF url(); }

abbr,
acronym,
.description { border: 0; }

abbr[title]:after,
acronym[title]:after,
.description[title]:after
{
 font-size: 80%;
 content: " (" attr(title) ")";
}

abbr[title].nomarkup:after,
acronym[title].nomarkup:after { content: ""; }

a.textlink[href]:after
{
 font-size: 85%;
 content: " [" attr(href) "]";
 font-family: Arial, Helvetica;
 color: #555;
}

/*
a.textlink[href|="/"]:after {
 content: " [http://www.zeitform.de" attr(href) "]";
}
*/

h1
{
 font-size: 1.3em;
 padding: 0px;
 margin: 8px 0px 0px 0px;
}

h2 { margin: 24px 0px 12px 0px; }

p,
ul,
li { line-height: 1.5em; }

/* topelement */
#top { display: none; }

/* inhaltselement */
#container
{
 margin: 0em;
 padding-left: 0em;
 padding-right: 0em;
 border: none;
 background: #fff;
}

#content
{
 margin: 16px;
 border: none;
 padding-left: 0px;
 text-align: left;
 width: 165mm;
}

div.homebox table img { display: none; }

div.homebox table { margin-left: -1em; }

div.referenz img { display: none; }

.announce
{
 margin: 20px 0px 24px 0px;
 font-size: 1.2em;
 line-height: 1.8em;
}

.map1
{
 border: 1px solid #999;
 padding: 10px;
 margin: 3em 0em 3em 0em;
 float: none;
 width: auto;
 height: auto;
}

.map2
{
 border: 1px solid #999;
 padding: 10px;
 margin: 3em 0em 3em 0em;
 float: none;
 width: auto;
 height: auto;
 page-break-before: auto;
}

.map3
{
 border: 1px solid #999;
 padding: 10px;
 margin: 3em 0em 3em 0em;
 float: none;
 width: auto;
 height: auto;
}

.map1 img { display: block; }

.map2 img { display: block; }

.map3 img { display: block; }

a.cap,
img.cap { display: none; }

#logo { bottom: 2em; }

.gotop { display: none; }

/* top navigation */
#nav
{
 margin: 10px 16px 10px 16px;
 border-bottom: 1px dotted #667;
}

#nav ul { margin: 0px; }

#nav li.navright { display: none; }

/* left navigation */
#sub { display: none; }

/* content navigation */
#sub3 { display: none; }

/* container */
.referenz { margin: 4em 0em 1em 0em; }

div.pv-full { display: block; }

.closeview img { visibility: hidden;/* display: none; */
}
} /* end media print */
