/*-----------------------------------------------------------------------------
invia-freiburg.de Style Sheet 

version:   1.1
author:    Achim Schlemmer
email:     info@aschlemmer.net
website:   http://www.aschlemmer.net/
-----------------------------------------------------------------------------*/

/* =General
-----------------------------------------------------------------------------*/


/* Remove padding and margin */
* {
  margin: 0;
	padding: 0;
}

/* Put it back on certain elements */
h1, h2, h3, h4, h5, h6, p, pre, blockquote, form, fieldset, table {
  margin: 1em 0;
}

/* Remove border around linked images */
img {
	border: 0;
}

html\:abbr, abbr, acronym {
ÊÊcursor: help;
ÊÊborder-bottom: 1px dashed #000;
}

/* =Typography
-----------------------------------------------------------------------------*/

body {
	width: 99.9%;
	background: #fff;
	font-family: Arial, sans-serif;
	font-size: 0.9em;
}


/* =One True Layout
-----------------------------------------------------------------------------*/

#block_1
	{
	float: left;
	width: 50%;
	margin-left: 25%;
	background-color: #fff;
	}
* html #block_1
	{
	display: inline;
	}
#block_2
	{
	float: left;
	width: 24.9%;
	margin-left: -75%;
	background-color: #004080;
	}
#block_3
	{
	float: left;
	width: 24%;
	background-color: #ffe9a6;
	}
/* Start Mac IE5 filter \*/
#block_1, #block_2, #block_3
	{
	padding-bottom: 32767px !important;
	margin-bottom: -32767px !important; 
	}
@media all and (min-width: 0px) {
#block_1, #block_2, #block_3
	{
	padding-bottom: 0 !important;
	margin-bottom: 0 !important; 
	}
#block_1:before, #block_2:before, #block_3:before
	{
	content: '[DO NOT LEAVE IT IS NOT REAL]';
	display: block;
	background: inherit;
	padding-top: 32767px !important;
	margin-bottom: -32767px !important;
	height: 0;
	}
}
/* End Mac IE5 filter */
/* IE Win can be a bit out - you might need to adjust  
bottom value by -1px or as required */
.verticalalign
	{
	display: block;
	position: absolute;
	bottom: 4em;
	color: #000;
	font-size: 100%;
	margin: 0px 15px 0px 10px;
	padding: 5px;
		}
#block_1 .verticalalign
	{
	width: 50%;
	}
#block_2 .verticalalign
	{
	width: 25%;
	}
#block_3 .verticalalign
	{
	width: 22%;
	}
/* hack for Opera 7+ */
@media all and (min-width: 0px){
.verticalalign
	{
	width: 100% !important;
	}
/* But Opera 9 does it right, so CSS3 hax to the max */
div[id^="wrapper"] #block_1 .verticalalign
	{
	width: 50% !important;
	}
div[id^="wrapper"] #block_2 .verticalalign
	{
	width: 25% !important;
	}
div[id^="wrapper"] #block_3 .verticalalign
	{
	width: 24% !important;
	}
}
/* hack for IEs of all persuasions */
* html .verticalalign
	{
	width: 100% !important;
	}
.verticalalign p
	{
	position: absolute;
	bottom: 0;
	right: 0;
	left: 5px;
	padding: 0;
	background: inherit;
	color: #000;
	}
#wrapper
	{
	position: relative;
	overflow: hidden; /* This hides the excess padding in non-IE browsers */
	}
/* we need this for IE 5.01 - otherwise the wrapper does not expand to the
necessary height (unless fixed, this problem becomes even more acute 
weirdness as the method is enhanced */
#wrapper
	{
/* Normally a Holly-style hack height: 1% would suffice but that causes 
IE 5.01 to completely collapse the wrapper - instead we float it */
	float: left;
/* NB. possibly only IE 5.01 needs to get this float value - otherwise 5.5 sometimes 
(I saw it happen many moons ago) makes the width of wrapper too small 
the float: none with the comment is ignored by 5.01,
5.5 and above see it and carry on about their business
It's probably fine to just remove it, but it's left here 
just in case that many moons ago problem rears its head again */
	float/**/: none;
	}
/* easy clearing */
#wrapper:after
	{
	content: '[DO NOT LEAVE IT IS NOT REAL]'; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
	}
#wrapper
	{
	display: inline-block;
	}
/*\*/
#wrapper
	{
	display: block;
	}
/* end easy clearing */
/* Safari needs this - otherwise the ghost overflow, though painted 
correctly obscures links and form elements that by rights should be above it.
An unintended side-effect is that it cause such elements to vanish in IE 5.01
and 5.5, hence the child selector hack */
* > #footer, * > form, * > #notes, * > .output
	{
	position: relative;
	z-index: 1000;
	}


/* =Links
-----------------------------------------------------------------------------*/

a:link {
	color: #004080;
	}
	
a:visited {
	color: #004080;
	}

a:hover {
	background: #ffcc00;
	text-decoration: none;
	}

a:active {
	background: #ffcc00;
	}
	
a.footertext {
	font-size: 100%;
	 color: #fff;
	padding-left: 0.25em;

	padding-right: 0.25em}
	
a.footertext:visited
	{ color: #fff; }
	
a.footertext:hover
	{ color: #004080;
	background-color: #fff;
}

a.smallreferer:link { color: #333; font-weight: bold;text-decoration: none;}
a.smallreferer:visited { color: #333; font-weight: bold;text-decoration: none; }
a.smallreferer:hover { color: black; text-decoration: none; background-color: #0f0; font-weight: bold; }
a.smallreferer:active { color: black; text-decoration: none; background-color: #0f0; font-weight: bold; }
a.smallreferer:focus { color: black; text-decoration: none; background-color: #0f0; font-weight: bold; }

a.yb:link { color: #333; font-weight: bold;text-decoration: none; }
a.yb:visited { color: #333; font-weight: bold;text-decoration: none;}
a.yb:hover { color: #FFF; text-decoration: none; background-color: #4C80CC; font-weight: bold; }
a.yb:active { color: #FFF; text-decoration: none; background-color: #4C80CC; font-weight: bold; }
a.yb:focus { color: #FFF; text-decoration: none; background-color: #4C80CC; font-weight: bold; }


/* =Branding
-----------------------------------------------------------------------------*/

#logo { 
	display: inline;
	position: absolute;
	top: 3px;
	margin-left: 80%;
}

#logo a:link, #logo a:visited, #logo a:hover, #logo a:active { background-color: #fff; }


/* =Main Nav
-----------------------------------------------------------------------------*/

#navcontainer { 
	position: relative;
	float: left;
	font-family: arial, Helvetica, sans-serif;
	font-size: 0.9em;
	width: 100%;
}

#navcontainer ul
{
width: 100%;
margin: 0;
padding: 0;
list-style-type: none;
border: none;
}

#navcontainer li { 

	margin: 0;  
	border-bottom: 1px solid #f5f5f5;
}

#navcontainer li a
{
display: block;
padding: 6px 10px;
color: #fff;
background: #004080;
text-decoration: none;
border: 0;
border-left: 5px solid #004080;
width: 92%;
}					

html>body #navcontainer li a { width: auto; }


#navcontainer a:hover
{
text-decoration: underline;
border-left: 5px solid #fb0000;
}

#navcontainer ul ul {
	width: 100%;
}

#navcontainer ul ul li { margin: 0; padding: 0; background-color: #fff; border-bottom: 1px solid #004080; border-top: 0;}

#navcontainer ul ul li a
{
display: block;
width: 86%;
padding: 5px 5px 5px 20px;
color: #004080;
background-color: #FFF;
text-decoration: none;
font-size: 0.95em;
font-weight: normal;
border: 0;
border-right: 5px solid #fff;
border-left: 5px solid #fff;
}

#navcontainer ul ul li a:hover
{
padding: 5px 9px 5px 20px;
font-size: 0.95em;
font-weight: normal;
background-color: #fff;
color: #004080;
border: 0;
border-left: 5px solid #fb0000;
text-decoration: underline;
}

#activetop a
{
  color: #004080; 
  background: #fff; 
  font-weight: bold; 
  border-right: 5px solid #fff; 
  border-bottom: 1px solid #004080;
}

#activesub a:hover
{
  color: #004080; 
  font-weight: bold; 
  border-right: 5px solid #fff; 
  border-bottom: 1px solid #004080;
}

a.thissub
{
  color: #fff; 
  background: #fff; 
  font-weight: bold; 
  border-left: 5px solid #fb0000; 
  border-bottom: 1px solid #004080;
}

a.thissub:hover
{
  color: #004080; 
  background: #ccc; 
  font-weight: bold; 
  border-left: 5px solid #fb0000; 
  border-bottom: 1px solid #004080;
}

li.first
{
  border-top: 1px solid #f5f5f5;
}

li#topactiveself a
{ 
color: #004080; 
background: #fff; 
font-weight: bold; 	
border-left: 5px solid #fb0000;
border-bottom: 1px solid #004080;  
}

li#topactiveself li a:hover 
{ 
color: #004080; 
font-weight: bold; 
border-left: 5px solid #fb0000; 
border-bottom: 1px solid #004080; 
}

li#topactiveroot a
{ 
color: #004080; 
background: #fff; 
font-weight: bold; 	
border-left: 5px solid #004080;
border-bottom: 1px solid #004080;  
}

li#topactiveroot a:hover 
{ 
color: #004080; 
background: #fff; 
font-weight: bold; 
border-left: 5px solid #fb0000; 
border-bottom: 1px solid #004080; 
}

li ul li#subactiveself a
{
color: #004080; 
background: #fff; 
font-weight: bold; 
border-left: 5px solid #fb0000;
border-top: 1px solid #fff;
}

li ul li#subactiveself a:hover 
{ 
text-decoration: underline;
font-weight: bold; 
border-left: 5px solid #fb0000;
border-top: 1px solid #fff;
}

#subcurrent
{
	font-weight: bold; border-left: 5px solid #fb0000; padding-right: 15px;
}

/* =Map
-----------------------------------------------------------------------------*/

.map img {
	width: 97%;
	max-width: 300px;
	float: none;
	padding: 2%;
}

.map a:hover 
{
background: none;
}





/* =Main Content
-----------------------------------------------------------------------------*/

.picture {
	margin: 10px 0px 10px 10px;
	border: 1px solid #bebebe;
	padding: 0;
	float: right;
	}
	
.pictureLeft {
	margin: 10px 10px 10px 0px;
	border: 1px solid #bebebe;
	padding: 0;
	float: left;
	}

.pictureBig {
	margin: 0px 0px 10px 0px;
	border: 1px solid #bebebe;
	padding: 0;
	float: none;
	max-width: 425px;
	width:expression(document.body.clientWidth > 425? "425px": "auto" );
	display: block;
	}
	
.pictureNoBorder {
	border: 0;
	margin: 10px 10px 10px 0px;
	float: right;
}
	
	
p { margin: 0; }

#content {
	padding-top: 15px;
	padding-left: 30px;
	padding-right: 23px;
	}
	
#content a {
	font-weight: bold;
}

#content p {
	color: #333;
	background-color: #fff;
	font-size: 1em;
	line-height: 1.3em;
	margin-bottom: 0.5em;
	margin-top: 0.5em;
}

#content dl {
	color: #333;
	background-color: #fff;
	font-size: 1em;
	line-height: 1.3em;
	padding-bottom: 0.5em;
	padding-top: 0.5em;
}

#content li {
	color: #333;
	background-color: #fff;
	font-size: 1em;
	line-height: 1.3em;
	margin-top: 0.625em;
	list-style-type: disc;
}

.verticalalign li {
	list-style-type: none;
	}

#content ul li {
	padding: 0px;
	margin-left: 1em;
}
	
h1 {font-size:1.5em; color: #555;  	line-height: 1.3em;
}
h2 {font-size:1.2em; color: #333; font-weight: bold; line-height: 1.3em; margin: 1.5em 0 0 0;
 }

h5
{
	color: #004080;
	background-color: #ffc900;
	font-size: 1.8em;
	margin-left: 10px;
	vertical-align: center;
}

h3 {	
	font: bold 0.75em Arial, sans-serif; 
	color: #000;
	line-height: 140%;
	/* background: #fac8c8; */
	border-left: 5px solid #fb0000;
	margin-bottom: 0;
	margin-top: 19px;
	margin-left: 15px;
	margin-right: 15px;
	padding: 5px;
	text-transform: uppercase;
}


strong
	{ font-weight: bold; }

.subhead
{
	color: #004080;
	background-color: #ffc900;
	font-weight: normal;
	margin-left: 10px;
	margin-top: -20px;
}

.teaser {
	border: 0;
	border-left: 1px solid #fb0000;
	border-bottom: 5px solid #ffe9a6;
	color: #000;
	font-size: 80%;
	margin: 0px 15px 0px 15px;
	padding: 5px;
}

.teaser li {
	list-style-type: none;
	}
	
.teaserLast {
	margin-bottom: 5em;
	}

.pagenavi {
	font-weight: bold;
	margin: 1em 0em 2em 0em;
}

/* Standortkarte gross */

.mapDetail img {
	width: 90%;
	max-width: 600px;
	float: left;
	padding: 2%;
}


/* =Secondary Content
-----------------------------------------------------------------------------*/




/* =Header
-----------------------------------------------------------------------------*/

#header
{
	height: 9em;
	padding: 0.5em 0;
	width: 75%;
	background: #ffc900 0 50%;
	-moz-background-clip: initial;
	-moz-background-origin: initial;
	-moz-background-inline-policy: initial;
}



/* =Footer
-----------------------------------------------------------------------------*/

#footer
{
	float: left;
	clear: both;
	width: 99%;
	background: #004080 0 50%;
	padding: 0.5em;
	-moz-background-clip: initial;
	-moz-background-origin: initial;
	-moz-background-inline-policy: initial;
}

.footertext
{
	padding-left: 25%;
	color: #fff;
	font-size: 0.80em;
}

.asyb 
{
	font-family: Verdana, sans-serif; font-size: 9px; font-weight: normal; color: #000; 
}

/* =Forms
-----------------------------------------------------------------------------*/

/* Removes fieldset borders. even on Opera 7 */
fieldset {
  border: 1px solid transparent;
}

#searchform {
	padding: 0px 12px;
	margin: -7px 0 -7px 0;
	}

#searchform input.inp
	{
	border: 1px solid #ddd; 
	width: 100px; 
	background: #ffffff; 
	font: 10px verdana, sans-serif; 
	color: #000; 
	font-weight:bold; 
	padding: 3px 0 4px 0;
	margin: 0 4px 0 4px;	
	outline: none;
	float: left;
	display: inline;
}
	
#searchform input.inp:hover,
#searchform input.inp:focus
	{ border: 1px solid #ffcc00;
	  background-color: #ffe9a6;
}

.searchButton {
	font-weight: bold;
	font-size: 100%;
	}
	
.fd_results { font-weight: bold; color: #000; }	

.url { font-size: 75%; }

/* Contact form */

.fond { background: #f8f8f8 0 50%; }
fieldset { margin: 1em 0; padding: 1em; border: 1px solid #ccc; background: #f8f8f8 0 50%; }
legend { font-weight: bold; color: #000; border: 1px solid #ccc; background: #ffc900 0 50%; padding: 0.5em; }
label { float: left; width: 10em; }
input { width: 200px; }
textarea { width: 300px; height: 150px; }


/* =Tables
-----------------------------------------------------------------------------*/

table { 
  border-spacing: 0;
	border-collapse: collapse;
}

td {
  text-align: left;
	font-weight: normal;
}



/* =Misc 1
-----------------------------------------------------------------------------*/

html\:abbr
{
  cursor: help;
  border-bottom: 1px dashed #004080;
}




/* =Misc 2
-----------------------------------------------------------------------------*/


