/* css created and developed by 12bis3.de - zeitgemaess kommunizieren */

* {
	margin: 0;
	padding: 0;
}

html {
	height: 100%;
}

/* -------------
main definitions
--------------*/


body {
	background: #fff;
	font-size: 80%;
	min-height: 101%;
	/*padding-bottom: 1em;*/
	color: #606061;
	font-family: arial, helvetica, sans-serif;
}

img {
	border: none;
}

a:link, a:visited, a:active {
	color: #182260;
	text-decoration: none;
}
a:hover, a:focus {
	color: #182260;
	text-decoration: underline;
}

h1 {
	color: #182260;
	background: url(/fileadmin/templates/img/bg-h1.png) no-repeat bottom transparent;
	font-size: 140%;
	padding: 0 40px 0.4em 0;
	margin: 0 0 0.7em 0;
}

h2 {
	color: #182260;
	font-size: 120%;
	margin: 0 0 0.6em 0;
	clear: both;
}

h3 {
	color: #182260;
	font-size: 110%;
	margin: 0 0 0.4em 0;
}

h4 {
	color: #182260;
	font-size: 100%;
	margin: 0 0 0.2em 0;
}

h5 {
	color: #606061;
	font-size: 100%;
	margin: 0 0 0.2em 0;
	clear: both;
}

h6 {
	color: #606061;
	font-size: 100%;
	font-weight: normal;
	clear: both;
}

p {
	margin: 0 0 1em 0;
}

strong, b {
	font-weight: bold;
}

em, i {
	font-style: italic;
}


/* ---------------
layout definitions 
----------------*/

#container {
	background: url(/fileadmin/templates/img/bg-container.png) repeat-y #fff;
	margin: 0 auto;
	width: 850px;
	padding: 0 7px;
}

#header {
	height: 125px;
	background: url(/fileadmin/templates/img/bg-header.jpg) no-repeat transparent;
	padding: 20px 9px 0 0;
	text-align: right;
}

#navigation {
	width: 155px;
	background: url(/fileadmin/templates/img/bg-navigation.png) no-repeat bottom right #ebf7ce;
	padding: 35px 0 140px 0;
	float: left;
	text-align: right;
}

#content {
	width: 491px;
	line-height: 150%;
	padding: 37px 22px 0 22px;
	float: left;
	background: url(/fileadmin/templates/img/bg-content.png) repeat-x #fff;
}

#service {
	width: 160px;
	padding: 40px 0 0 0;
	float: left;
	background: url(/fileadmin/templates/img/bg-content.png) repeat-x #fff;
}


#footer {
	clear: left;
	background: url(/fileadmin/templates/img/bg-footer.png) no-repeat transparent;
	padding-top: 5px;
	margin: 0 0 1em 177px;
	font-size: 85%;
}

/* --------------
header defintions
---------------*/

#header p {
	margin: 16px 0 0 0;
	color: #fff;
	float: right;
}

* html #header p {
	margin: 13px 0 0 0;
}


* + html #header p {
	margin: 13px 0 0 0;
}
#header p a {
	color: #fff;
}

#header form {
	float: right;
	margin: 14px 0 0 0;
}

* html #header form {
	margin: 11px 0 0 0;
}
* + html #header form {
	margin: 11px 0 0 0;
}

#header label {
	width: auto;
	color: #fff;
	padding: 2px 10px 0 0;
}

#header input {
	width: 128px;
	border: 1px solid #fff;
	background-color: #ebf7ce;
	padding: 1px 2px;
}

#header input:hover, #header input:focus {
	background-color: #fff;
}

#header button {
	background: none;
	border: none;
	cursor: pointer;
}


/* ------------------
navigation defintions
-------------------*/

#navigation ul {
	list-style-type: none;
}

#navigation ul li {
	margin-bottom: 1px;
}

#navigation ul li a {
	color: #182260;
	display: block;
	padding: 5px 20px 5px 5px;
	font-weight: bold;
}

#navigation ul li a:hover, #navigation ul li a:focus, #navigation ul li a.aktiv {
	background-color: #f9fdf0;
	color: #99cc33;
	text-decoration: none;
}

#navigation ul ul {
	background-color: #f9fdf0;
	padding: 2px 0 5px 0;
}

#navigation ul ul li a {
	padding: 3px 20px 3px 5px;
	font-weight: normal;
	font-size: 90%;
}

#navigation ul ul li a:hover, #navigation ul ul li a:focus, #navigation ul ul li a.aktiv {
	background-color: transparent;
}



/* ---------------
content defintions
----------------*/

h4 span, h3 span, h1 span, h2 span {
	color: #99cc33;
}

#content img {
	border-bottom: 2px solid #99cc33;
	border-top: 1px solid #99cc33;
}

/* Änderungen für Typo (P.D.2009/02)*/
img.image-left, #teaser img, dl.image-left, #teaser dl.image-left,
#teaser_double img, #teaser_double dl.image-left,
.teaser_double img, .teaser_double dl.image-left {
	float: left;
	margin: 0.4em 0.6em 0.5em 0;
	clear: both;
}

img.image-right, dl.image-right {
	float: right; 
	margin: 0.4em 0 0.5em 0.6em;
	clear: both;
}

dl.image-big {
	margin: 0 0 1em 0;
	/*background: url(/fileadmin/templates/img/bg-teaserbox.png) no-repeat transparent;
	padding-top: 1em;*/
	clear: both;
}

dl.image-left dt, dl.image-right dt {
	line-height: 100%;
}

dl.image-big dt, div.images dl dt {
	text-align: center;
	line-height: 100%;
}

dl.image-left dd, dl.image-right dd, dl.image-big dd, div.images dl dd {
	font-style: italic;
	color: #99cc33;
	font-size: 90%;
	line-height: 130%;
	margin-top: 0.1em;
}

dl.image-big dd {
	text-align: center;
}

dl.image-left dd p, dl.image-right dd p {
	margin: 0;
}

div.images {
	background: url(/fileadmin/templates/img/bg-teaserbox.png) no-repeat transparent;
	padding-top: 1em;
	margin: 0 0 1em 0;
	clear: both;
}

div.images dl {
	float: left;
	padding-right: 15px;
}

/* teaser boxen */

dl.text-teaser-left {
	background: url(/fileadmin/templates/img/bg-teaserbox.png) no-repeat transparent;
	padding-top: 1.2em;
	width: 491px;
	margin: 0 0 1em 0;
}

dl.text-teaser-left dt {
	width: 145px;
	float: left;
	padding: 0 0 1px 0;
	margin-bottom: 0.3em;
}

dl.text-teaser-left dt img, dl.text-teaser-right dt img {
	margin-top: 0.3m;
}

dl.text-teaser-left dd {
	width: 346px;
	float: left;
	margin-bottom: 0.3em;
}

dl.text-teaser-right {
	background: url(/fileadmin/templates/img/bg-teaserbox.png) no-repeat transparent;
	padding-top: 1.2em;
	width: 491px;
	margin: 0 0 1em 0;
}

dl.text-teaser-right dt img {
	margin-top: 0.3m;
}

dl.text-teaser-right dd {
	width: 346px;
	float: right;
	margin-bottom: 0.3em;
}

dl.text-teaser-right dt {
	width: 145px;
	float: right;
	padding: 0 0 1px 0;
	margin-bottom: 0.3em;
}


/* teaser boxen */

#teaser {
	/*background: url(/fileadmin/templates/img/bg-teaserbox.png) no-repeat transparent;*/
	/*padding-top: 1.2em;*/
	margin: 1.2em 0 1em 0;
}

/* Änderungen für Typo (P.D.2009/02)*/
#teaser h4, #teaser_double h4, .teaser_double h4 {
	background: url(/fileadmin/templates/img/bg-teaser-h4.png) right bottom transparent no-repeat;
	padding-right: 25px;
}

#teaser-left, .teaser-left {
	clear: left;
	float: left;
	width: 233px;
	padding: 0 25px 0 0;
	margin-top: 1em;
}

#teaser-right, .teaser-right {
	float: left;
	width: 233px;
	margin-top: 1em;
}

#teaser p a, .termine p a {
	font-weight: bold;
	background: url(/fileadmin/templates/img/bg-link-more.png) no-repeat right center transparent;
	padding: 0 11px 0 1px;
}

#content ul {
	margin: 0 0 1em 2em;
	list-style-type: none;
}

#content ol {
	margin: 0 0 1em 2em;
}

#content ol li {
	margin-bottom: 0.1em;
}

#content ul li {
	background: url(/fileadmin/templates/img/bg-ul-listing.png) no-repeat 0 4px transparent;
	padding-left: 14px;
	margin-bottom: 0.1em;
}


/* downloads */

div.downloads, div.termindetail {
	clear: both;
	margin: 0 0 1.2em 0;
	padding: 2px 12px 4px 12px;
	background: url(/fileadmin/templates/img/bg-downloads.png) no-repeat #ebf7ce;
}

#content div.downloads ul, #content div.termindetail ul {
	margin: 0.8em 0 0.6em 0;
}

#content div.downloads ul li, #content div.termindetail ul li {
	background: url(/fileadmin/templates/img/bg-download-listing.png) no-repeat 0 5px transparent;
}

#content div p a {
	background: url(/fileadmin/templates/img/bg-link-more.png) no-repeat right center transparent;
	padding: 0 11px 0 1px;
	font-weight: bold;
}

/* Änderungen für Typo (P.D.2009/02)*/
#content div p.bodytext a {
	background: none;
	padding: 0 0 0 0px;
	font-weight: normal;
}

/* Änderungen für Typo (P.D.2009/02)*/
#content div.tx-bfactorthemensuche-pi1 p a {
	background: none;
	padding: 0 0 0 0px;
	font-weight: normal;
}

#content div.termindetail dl {
	width: 467px;
	margin: 0.5em 0 0.3em 0;
}

#content div.termindetail dl dt {
	width: 160px;
	float: left;
	padding-bottom: 0.3em;
	clear: left;
	color: #182260;
}

#content div.termindetail dl dd {
	width: 307px;
	float: left;
	padding-bottom: 0.3em;
}



/* pager */

ul.pager {
	/*padding: 0.8em 0 0 0;*/
	margin: 0 0 1em 0 !important;
	/*border-top: 1px solid #004a99;*/
	list-style-type: none !important;
	font-size: 90%;
}

#content ul.pager li {
	float: left;
	padding: 0;
	background: none;
}
ul.pager li a {
	background: none;
	padding: 0;
}
ul.pager li.p-left {
	width: 33.3%;
}
ul.pager li.p-center {
	text-align: center;
	width: 33.3%;
}
ul.pager li.p-right {
	text-align: right;
	width: 33.3%;
}

ul.pager li a.aktiv {
	border-top: 1px solid #004f92;
	border-bottom: 1px solid #004f92;
	text-decoration: none;
}


/* table */

table {
	border-collapse: collapse;
	width: auto;
	margin-bottom: 1.2em;
}
table td {
	padding: 2px 5px;
	vertical-align: top;
	text-align: left;
	background: #f9fdf0;
	border-bottom: 2px solid #fff;
}
table tr:hover td {
	background: #ebf7ce;
}

/* Änderungen für Typo (P.D.2009/02)*/
table.imgtext-table tr:hover td {
	background: none;
}

table td.position {
	width: 200px;
}
table td.email {
	width: 180px;
}
table td.name {
	width: 150px;
}
table td.telefon {
	width: 136px;
}

table thead td, table th {
	font-weight: bold;
	border-top: 1px solid #99cc33;
	border-bottom: 2px solid #99cc33;
	background: #ebf7ce;
	vertical-align: top;
	text-align: left;
	padding: 2px 5px;
}

table tfoot td {
	font-style: italic;
	font-size: 85%;
	border-bottom: 1px solid #99cc33;
}

/* medien / referenten */

#content ul.medien {
	margin: 1.5em 0 1.2em 0;
}

#content ul.medien li {
	background: #ebf7ce;
	margin-bottom: 4px;
	padding: 0;
}

#content ul.medien li a {
	padding: 0.2em 30px 0.2em 0.6em;
	background: #ebf7ce;
	display: block;
}

#content ul.medien li a:hover, #content ul.medien li a:focus {
	background: #99cc33 url(/fileadmin/templates/img/bg-medien.png) no-repeat right center;
	color: #fff;
	text-decoration: none;
}

h2.referenten {
	background: url(/fileadmin/templates/img/bg-teaserbox.png) no-repeat transparent;
	padding-top: 1.2em;
}

object#referenten {
	padding: 0 0 0 50px;
	margin-bottom: 1em;
}


div.dynmap div a {
	padding: 0 0 0 15px;
	display: block; 
	background: url(/fileadmin/templates/img/listing-karte.png) no-repeat transparent 0 3px;
}



.video {
	margin-bottom: 1.5em;
}


/* termine */

.termine h3 {
	margin-bottom: 0.2em;
}

.termine h6 {
	margin: 1.5em 0 0.2em 0;
}


/* sitemap */

#content ul.sitemap {
	margin: 0 0 1em 0;
}

#content ul.sitemap li {
	background: url(/fileadmin/templates/img/bg-teaserbox.png) no-repeat transparent;
	padding: 0.8em 0 0.5em 0.5em;
}

#content ul.sitemap li a {
	font-weight: bold;
}

#content ul.sitemap ul li {
	background: url(/fileadmin/templates/img/bg-ul-listing.png) no-repeat 0 4px transparent;
	padding: 0 0 0 14px;
	margin-bottom: 0.1em;
}

#content ul.sitemap ul {
	margin: 0.5em 0 0.6em 2em;
}

#content ul.sitemap ul li a {
	font-weight: normal;
}


/* ---------------
service defintions
----------------*/

#servicebox {
	background: url(/fileadmin/templates/img/bg-service-bottom.png) no-repeat bottom left #f1f1f5;
	padding-bottom: 20px;
	line-height: 140%;
}

#servicebox div {
	background: url(/fileadmin/templates/img/bg-service-boxes.png) no-repeat transparent;
	padding: 15px 13px 0 13px;
}

#servicebox h5 {
	color: #99cc33;
}

#servicebox p a {
	background: url(/fileadmin/templates/img/bg-link-more-normal.png) no-repeat right transparent;
	padding: 0 11px 0 1px;
}

#servicebox span.service-top p a {
	background: url(/fileadmin/templates/img/bg-link-more.png) no-repeat right transparent;
}

* html #servicebox span.service-top p a {
	background: none;
}
* + html #servicebox span.service-top p a {
	background: none;
}
#servicebox p {
	margin: 0 0 0.7em 0;
}
#servicebox > p {
	margin: 0 0 0.7em 0;
	padding: 15px 13px 0 13px;
}


#servicebox span.service-top p {
	padding: 14px 13px 12px 13px;
	margin: 0;
	font-weight: bold;
	background: url(/fileadmin/templates/img/bg-service-top.png) no-repeat transparent top left;
}

#servicebox ul {
	list-style-type: none;
	margin: 0 0 0.7em 0;
}

#servicebox ul li {
	background: url(/fileadmin/templates/img/bg-service-listing.png) no-repeat 0 4px transparent;
	padding-left: 14px;
	margin-bottom: 0.1em;
}


/*-----------------
footer definitionen
-----------------*/

#footer p a {
	background: url(/fileadmin/templates/img/icon-print.png) no-repeat left center transparent;
	padding-left: 17px;
}



/* ------------------
formular definitionen
-------------------*/

fieldset {
	border: 2px solid #f0efef;
	margin-bottom: 1.2em;
	padding: 10px 10px 0 10px;
}

legend {
	font-size: 100%;
	font-weight: bold;
	color: #182260;
}

label {
	width: 120px;
	float: left;
}

input, textarea, select {
	width: 300px;
	border: 1px solid #99cc33;
	padding: 3px 2px;
	font-family: arial, helvetica, sans-serif;
	font-size: 100%;
	color: #606061;
	background: #f9fdf0;
}

.tx-indexedsearch-searchbox select {
	width:150px;
}

p.input-small input {
	width: 50px;
}

select {
	width: 306px;
}

option {
	padding: 0 3px;
	background: transparent;
}

textarea {
	height: 100px;
}

p.text-big textarea {
	height: 180px;
}

input:hover, input:focus, textarea:hover, textarea:focus, select:hover, select:focus {
	background: #ebf7ce;
}

input.small {
	width: auto;
	padding-right: 5px;
}

input.input-small {
	width: 30px;
}

input.radio-check {
	width: auto;
	border: none;
	background: none;
}

input.submit-it, p.submit input {
	width: 306px;
	font-weight: bold;
}

p.check-radio input {
	width: auto;
	margin-right: 10px;
	float: left;
}

p.check-radio label {
	width: 380px;
	float: left;
}

form h4 {
	margin-bottom: 0.6em;
}

.profil label {
	width: auto;
	float: none;
}

input.error {
	border: 1px solid #e6431f;
}

p.error {
	color: #e6431f;
	padding: 0.5em;
	border: 1px solid #e6431f;
	margin: 0 0 1.5em 0;
}
div.error ul {
	margin: 0 0 1em 2em;
}












/* clear me baby */

.clear:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clear {
	display: inline-table;
}
* html .clear {
	height: 1px;
}
* + html .clear {
	height: 1%;
}
.clear {
	display: block;
}



