* {
    margin: 0;
    padding: 0;
    border: 0;
}

html {
	height: 100.01%;
}

html, body {
    text-align: center;

}

body {
    line-height: 1.5;
    font-family: arial, sans-serif;
    font-size: 100.01%;
    font-size: 0.8em;
    background-image: url(../images/background.png);
    background-repeat: repeat-x;
    background-color: #d7dfe8;
}

#wrapper {
    min-width: 40em;
    max-width: 68em;
    width: 88%;
    text-align: left;
    margin: 0 auto;
    border-right: 1em solid #8ca3c1;
}

#containeraussen
{
	z-index: 1;
    border-left: 14em solid #8ca3c1;	/* definiert die weite und farbe des rahmens */
    border-right: 12em solid #bac7da;	/* definiert die weite und farbe des rahmens */
    background-color: #fff;
}

#containerinnen
{
	z-index: 2;
	width: 100%;
}

* html #containerinnen
{
	position: relative;	/* behebt ein render bug in IE under */
}

.box
{
	padding: 0 0.8em;	/* this padding is applied to every major box 
				   within the layout for a uniform gutter 
				   between borders 

				   _NOTE_: a small glitch in IE seems to appear
				   if this class has vertical padding applied
				   to it. so in cases where you want to add 
				   vert padding, use the parent element. margin
				   values here don't work because .inside has
				   a key role in border generation */
}


/* ----- inhalt ----- */
#inhalt {
    margin: 0 -1px;		   /* without this, boxes stop floating next to 
				            each other */
    width: 100%;
    border-width: 0;        /* reset value from that in the version 4 
				            stylesheet. this isn't in borders.css because
				            were you to create a print.css and not 
				            include borders.css, then the v4 border would
				            still remain when you print. */
}

#navigation, #randspalte, #inhalt {
	float: left;
	position: relative;	   /* IE hat ein display/render bug mit non-floated 
				            block elementen innerhalb floated block elementen. 
				            position:relative des floatenden elementes behebt diesen fehler. */
	z-index: 10;
	overflow: visible;	    /* behebt den IE italics bug */
}

#inhalt ul {
	margin-left: 1em;
}


/* ----- randspalte ----- */

#randspalte {
	float: right;		    /* floating this right allows for the right
				            column block to appear before the content
				            column in the flow of the document. doing
				            this allows for any easy 3 column layout
				            in NN4.

				            There is certainly a lot, in terms of layout
				            'theory' about how the flow of the document
				            should be. I won't get into it here. */
	width: 12em;
	margin: 0 -12em 0 1px;	/* wie oben in #containeraussen definiert */
}


/* ----- navigation ----- */
#navigation {
	width: 14em;
	margin: 0 1px 0 -14em;  /* like in the #contentColumn selector, without
				            the 1px margin on the opposite side of the 
				            box, boxes stop floating next to each 
				            other */
	z-index: 11;

}

#navigation ul { /* alle Listen */ 
    margin: 0; 
    list-style: none;
} 

#navigation a { 
    display: block; 
    width: 12.5em;
    text-decoration: none;
    line-height: 2em;
    color: #000;
    border-bottom: 1px solid #fff;
    border-left: 0.5em solid #1a4682;
    padding: 0 0 0 1em;
} 

#navigation li { /* alle Listenelemente */ 
    float: left; 
    width: 14em;
    background-color: #bac7da;  
}

#navigation li a.daddy { /* Listenelemente mit Unterpunkten */ 
    background: url(../images/pfeil.gif) center no-repeat;
    background-position: 12em;
    background-color: #bac7da;
}

#navigation li ul { /* Listen 2. Ebene */ 
    position: absolute; 
    width: 14em; 
    left: -999em; /* durch "left" außerhalb des sichtbaren Bereichs wird das gleiche erreicht wie durch "display: none", kann aber auch von Textbrowser angezeigt werden */ 
    margin: -2.1em 0 0 14em; 
} 

#navigation li li a.daddy { /* Listenelemente mit Unterpunkten */ 
    background: url(../images/pfeil.gif) center no-repeat;
    background-position: 12em;
} 

#navigation li ul ul { /* Listen 3. Ebene und weiter */ 
   margin: -2.1em 0 0 14em; 
} 

#navigation li:hover ul ul, #navigation li.sfhover ul ul { 
    left: -999em; 
} 

#navigation li:hover ul, #navigation li li:hover ul, #navigation li.sfhover ul, #navigation li li.sfhover ul { /* Listen, die unterhalb von "gehoverten" Menüpunkte liegen */ 
    left: auto; 
} 

/*
#navigation li#active { // Listen zur aktuellen Kategorie
    font-style: italic!important;
} */

#navigation a:link, #navigation a:visited { 
    color: #000;
}

#navigation a:hover, #navigation a.daddy:hover { 
    background: #1a4682;
    color: #fff;
    border-left: 0.5em solid #8ca3c1;
}

#inhalt a:link, td a:visited { 
    color: #1a4682;

}

#inhalt a:hover { 
    background: #bac7da;
    color: #1a4682;
}

#randspalte a:link, #randspalte a:visited { 
    color: #1a4682;
}

#randspalte a:hover { 
    background: #fff;
    color: #1a4682;
}


/* ----- inhalt allgemein ----- */
img.logo {
    float: left;
}

img.teaser {
    float: right;
}
p img {
    display: block;
}

h1 {
    margin: 0;
    padding: 0;
}

h2 {
    font-size: 2em;
    color: #1a4682;
}

h3 {
    font-size: 1.3em;
    color: #1a4682;
    padding-top: 1em;
}

h4 {
    font-size: 1.3em;
    color: #1a4682;
    padding-top: 1em;
}

#randspalte p {
    margin-bottom: 1em;
    border-bottom: 0.1em solid #8ca3c1;
}

/* ----- tabellen ----- */
table {
    text-align: left;
    border-spacing: 0;
    border-collapse: collapse;
}

td {
    vertical-align: top;
    padding-right: 1em;
}

tr.border td {
    border-bottom: 1px solid #8ca3c1;
    padding-bottom: 0.5em;
}

/* ----- listen ----- */
ol {
    margin: 0;
    padding: 0 0 0.5em 1.45em;
    list-style-position: outside;
}


ul#sitemap {
    margin: 0;
    padding: 0 0 0.5em 1.45em;
    list-style-position: outside;
}

ul#sitemap li ul {
    margin: 0;
    padding: 0 0 0.5em 2.8em;
    list-style-position: outside;
    font-weight: bold;
}

ul#sitemap li ul li ul {
    margin: 0;
    padding: 0 0 0.5em 2.8em;
    list-style-position: outside;
    font-weight: normal;
}

ul#sitemap li ul li ul li ul {
    margin: 0;
    padding: 0 0 0.5em 2.8em;
    list-style-position: outside;
    font-style: italic;
}



/* ----- formulare ----- */
input.textfeld, #Anliegen {
  border: 1px solid #8ca3c1;
  padding: 0.2em;
  margin-bottom:0.5em;
}

input.button {
  padding: 0.2em;
  background: #8ca3c1;
  color: #fff;
}

input.button:hover {
  background: #1a4682;
}

input.textfeld:focus, #Anliegen:focus {
  border: 1px solid #1a4682;
  padding: 0.2em;
  margin-bottom:0.5em;
}



/* ----- suche ----- */

/* ----- fusszeile ----- */
#fusszeile {
    text-align: center;
    font-size: 0.8em;
    padding-top: 0.5em;
    color: #1a4682;
}

#fusszeile a:link, #fusszeile a:visited { 
    color: #1a4682;
}

#fusszeile a:hover { 
    background-color: #fff;
}

.clear
{
	padding-bottom: 1px;	/* for Gecko-based browsers */
	margin-bottom: -1px;	/* for Gecko-based browsers */
	clear: both;
}

hr.clear {
    height: 0px;
	padding-bottom: 1px;	/* for Gecko-based browsers */
	margin-bottom: -1px;	/* for Gecko-based browsers */
	clear: both;
    visibility:hidden;
}


/* ----- newsletter ----- */

#newsletterbox {
    clear: left;
    margin-top: 5em;
    padding: 0 0.8em 1em;
    background: #bac7da;
}

a#go:link, a#go:visited {
    border: none;
    color: #1a4682;
    background: #fff;
    display: inline;
    width: auto;
    padding: 0.2em;
}

a#go:hover { 
    color: #fff;
    background: #1a4682;
}


/* einklinker */

#einklinker {
	width: 14em;
	height: 171px;
	background: url(../images/einklinker.png) no-repeat 2px 0;
	text-indent:-999em;
	position: relative;
	margin: 20px 0 0 0;
}

#einklinker a {
	width: 14em;
	height: 171px;
	position: absolute;
	border: 0;
	padding:0;
	margin:0;
	top:0;
	left:0;
}

#einklinker a:hover {
	background:none;
	border: 0;
	padding:0;
	margin:0;
}
