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"]:before { 
 content: url("/images/link-ext_aktiv.png");
}

a.textlink:before {
 content: url("/images/link-int_aktiv.png");
}

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;
 width: 60%;
 white-space: nowrap;
 border-bottom: 1px solid #999;
 border-left: 1px solid #999;
 line-height: 1.6em;
}

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 1.6em;
}

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

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

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

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

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

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

#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: 1.2em;
}

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

#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-right: 1px dotted #999;
 border-bottom: 1px dotted #999;
 border-left: 1px dotted #999;
 padding: 0.2em 0em 0em;
 margin: 0em 0em 1em 3em;
 float: right;
 color: #003;
 font-size: 0.9em;
 text-align: left;
 width: 12em;
 white-space:nowrap;
 padding-right: 1em;
 display: compact;
 }

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

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

#top {
 left: 0px;
 top: 0px;
 height: 28px;
 margin-right: auto;
 margin-left: auto;
 position: relative;
 width: 62em;
 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: 55em;
 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: 62em;
 border: 1px solid #556;
 background: #fff;
}

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

#content {
 margin: 16px 16px 0px 16em;
 text-align: justify;
 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: 0em;
 margin: 0em 0em 2em 0em;
 width: 99%;
 color: #003;
 text-align: left;
 overflow: hidden;
}

.homebox table {
 width: auto;
 border-spacing: 0px;
 border: none;
 margin: 0.5em 0.3em 0em;
}

.homebox td {
 vertical-align: top;
 border: none;
}

.homebox img {
 margin-bottom: 0.8em;
 margin-top: 0.5em;
}

.homebox ul {
 list-style: none;
}

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

.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;
 font-weight: 200;
 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; 
}

/* 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-right: -14px;
 padding: 0px;
 text-align: right;
 overflow: visible;
 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;
}
/**********************************************
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: 80%;
 content: " [" attr(href) "]";
 font-family: "Courier New", Courier, monospace;
 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;
}

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

.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 */