/****************************************************

	SITE: Reichwald & Partner

	Farben:

		LinkBlau:	#294466
		Rot:		#e70022

	hallo@stephan-grass.de 2008

******************************************************/

* {margin: 0; padding: 0;}


/* Clear Floated Elements
----------------------------------------------------------------------------------------------------*/

/* http://sonspring.com/journal/clearing-floats */

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

/* http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */

.clearfix:before,
.clearfix:after {
  content: '\0020';
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix:after {
  clear: both;
}

/*
  The following zoom: 1 rule is specifically for IE6 + IE7.
  Move to separate stylesheet if invalid CSS is a problem.
*/

.clearfix {
  zoom: 1;
}

*,
body * { position: static; z-index: 9000; }

html
{
    background: #E1F2FF url(/images/hgr_html.jpg);
	height: 100%;
}

body
{
    font-family: Arial,Helvetica,sans-serif;
    font-size: 75%;
    line-height: 1.4em;
    background: transparent url(/images/hgr_body.jpg) repeat-y;
    color: #000;
    min-height: 100%;
	margin-left:65px;
	margin-right:65px;
}
h1, h2, h3, h4, h5, li li, li p, td p, td, blockquote p {font-size: 1em}

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

/****************************************************
	ALLGEMEINE STYLES
******************************************************/

.clear { clear: both; }
.invisible { display: none; }

img { border: none; }
.imgLeft { float: left;  clear: left; margin: 2px 10px 10px 0;}
.imgRight { float: right; margin: 4px 0 10px 10px; }


a
	{
		color: #294466;
	}
a:hover
	{
		color: #ff3166;
	}

a.download { padding-left: 25px ; }
a.pdf { background: transparent url(/images/media_pdf.gif) no-repeat; }
a.ppt { background: transparent url(/images/media_ppt.gif) no-repeat; }
a.txt { background: transparent url(/images/media_txt.gif) no-repeat; }
a.doc { background: transparent url(/images/media_doc.gif) no-repeat; }
a.xls { background: transparent url(/images/media_xls.gif) no-repeat; }
a.zip { background: transparent url(/images/media_zip.gif) no-repeat; }
a.swf {	background: transparent url(/images/media_swf.gif) no-repeat; }
a.mov {	background: transparent url(/images/media_mov.gif) no-repeat; }
a.mp3 {	background: transparent url(/images/media_mp3.gif) no-repeat; }

.mediaImage img { display: none; }

a.more
	{
		padding-left: 10px;
		background: transparent url(/images/link_arrow.gif) no-repeat 0 4px;
	}
a.zoomImageLink { padding: 0 5px; }
a.zoomImageLink image
	{

	}

h1
	{
        font-size: 1.5em;
		font-weight: normal;
		line-height: 1.2em;
    }
h1.title
	{
		color: #000;
    }
h1.subTitle
	{
		color: #fff;
    }

h2, h3, h4
	{
        margin-bottom: 1em;
    }
h2
	{
        color: #0573BC;
    }


hr
	{
		height: 1px;
		color: #000;
	}

p { margin-bottom: 1em; }



table
	{
		margin-bottom: 2em;
    }

td { padding: 0.1em 0.5em!important; vertical-align: top;}

table.border
	{
		border-collapse: collapse;
		border: solid 1px #ccc;
	}

table.border td { vertical-align: top; border: solid 1px #ccc;}

#wrap
	{
		text-align: left;
		background: transparent;
        position: relative;
        z-index: 9000;
	}

#headerBox
	{
		position: relative;
		background: #93AFC9 url(/images/hgr_headerBox.jpg);
		width: 100%;
		border-bottom: solid 1px #fff;
        z-index: 8000;
    }

#titleBox,
#titleBox *,
#mainBodyBox,
#mainBodyBox * { z-index: 3000;
}

#keyvisual
	{
		position: relative;
		width: 180px;
		height: 240px;
		float: right;
		background-repeat: no-repeat;
    }
.withImage
	{
        border-left: solid 2px #fff;
		border-right: solid 1px #fff;
    }


#logo_TopNavBox
	{
        width: 105%;
        margin-bottom: 20px;
		
        position: relative;
        z-index: 6000;
        top: 0 !important;
        height: 120px;
        overflow:  hidden;
    }


#logoBox
	{
		background: #fff;
		float: left;
		padding: 0px 0 0 0px;
		height: 120px;
		width: 320px;
		margin-right: 20px;
    }

#titleBox
	{
        position: static;
		width: 496px;

        margin: 98px 0 -16px 340px;
        float: none;
        clear: both;
    }
	#pointBox
	{
        position: relative;
		width: 100px;

        margin: 0px 0 16px 96%;
        float: none;
        clear: both;
    }


#mainBodyBox
	{
		float: left;
		width: 856px;
        position: relative;
    }


#contextBox
	{
        float: left;
		width: 320px;
		min-height: 450px;
		font-size: 0.9em;
        color: #fff;
		line-height: 1.3em;
		background: transparent url(/images/hgr_contextBox.jpg) no-repeat left bottom;
    }
#contextBox a
	{
        color: #fff;
    }


.mainMediaBox
	{
        border-bottom: solid 4px #fff;
		width: 320px;
    }


.contextBoxItem
	{
		padding: 20px;
    }



#contentBox
	{
        float: left;
		position: relative;
		width: 495px;
		padding: 20px;
    }
.rightMediaBox
	{
        border: solid 1px #fff;
		position: absolute;
		top: 20px;
		left: 537px;
    }

#logoMediaBox
	{

    }
#logoMediaBox img
	{
		margin: 0 10px 10px 0;
    }

/*************************
	Service - Navigation
**************************/
#serviceNav
	{
		list-style: none;
        float: right;
		margin-left:100px;
		margin-right:65px;
		padding-top: 10px;
		line-height: 1.2em;
        top: 0;
    }
#serviceNav a
	{
		font-size: 11px;
		color: #fff;
		text-decoration: none;
        line-height: 1.2em;
	}
#serviceNav a:hover
	{
		color: #e70022;
    }


#serviceNav li
	{
        display: block;
        float: right;
		padding-right: 20px;
    }




/*************************
	Haupt - Navigation
**************************/

#navigation * {
    z-index: 5900;
}

#navigation {
margin-left: 65px;
    height: 28px;
	width: 100%;
    z-index: 6000;
    position: absolute;
}



ul#mainnavigation,
#mainnavigation ul {
    position: relative;
    height: 28px;
    background-color: #FFFFFF;
    margin-left: -65px;
	margin-right: 65px;
    padding-left: 50px;
}

ul#mainnavigation { min-width: 900px; }

#mainnavigation,
#mainnavigation li ul {
    list-style-type: none;
    list-style-position: outside;
    margin: 0;
    padding: 0;
    position: relative
}

#mainnavigation li {
    float: left;
    background-color: #FFFFFF;
}



    #mainnavigation li span,
    #mainnavigation li a {
        width: auto;
    }

    #mainnavigation > li > span,
    #mainnavigation > li > a {
        width: 145px;
    }

    #mainnavigation li > span,
    #mainnavigation li > a,
    #mainnavigation li > ul {
        background-color: #FFFFFF;
        display: block;
        padding: 5px 17px;
        text-align: center;
    }

#mainnavigation a:link,
#mainnavigation a:visited,
#mainnavigation a:active,
#mainnavigation a:focus,
#mainnavigation a:hover,
#mainnavigation span {
    color: #000000;
    text-decoration: none;
    display: block;
    padding: 5px 0;

    font-weight: bold;
}

    #mainnavigation a:active,
    #mainnavigation a:focus,
    #mainnavigation a:hover,
    #mainnavigation span:active,
    #mainnavigation span:focus,
    #mainnavigation span:hover {
        color: #FFFFFF;
    }

#mainnavigation ul li a:link,
#mainnavigation ul li a:visited,
#mainnavigation ul li a:active,
#mainnavigation ul li a:focus,
#mainnavigation ul li a:hover {
    font-weight: normal;
    padding: 5px 0;
	background-color: #E04F73;
        border-top: 1px solid #000000;
}

    #mainnavigation ul li ul li a:link,
    #mainnavigation ul li ul li a:visited,
    #mainnavigation ul li ul li a:active,
    #mainnavigation ul li ul li a:focus,
    #mainnavigation ul li ul li a:hover {
        padding: 2px 0;
        border-top:  none;
        text-align: left;
		background-color: #E04F73;
		
    }
		#mainnavigation li:hover > span,
        #mainnavigation li:hover  > a,
		#mainnavigation li:hover  > ul{ background-color: #E04F73; }

        #mainnavigation li.active > span,
        #mainnavigation li.active > a,
        #mainnavigation li.active > ul { background-color: #E04F73; }

        #mainnavigation li > ul { padding-top: 0; padding-bottom: 5px; width: auto; }

    #mainnavigation li:after {
        content: '\0020';
      display: block;
      overflow: hidden;
      visibility: hidden;
      width: 0;
      height: 0;
    }

    #mainnavigation li.active,
    #mainnavigation li.active ul li,
    #mainnavigation li.active ul li ul
    #mainnavigation li.active a,
    #mainnavigation li.active ul li a {
        background-color: #E04F73;
    }



        #mainnavigation li.active a:link,
        #mainnavigation li.active a:visited,
        #mainnavigation li.active a:active,
        #mainnavigation li.active a:focus,
        #mainnavigation li.active a:hover,

        #mainnavigation li.active li.activ.sub > a:link,
        #mainnavigation li.active li.activ.sub > a:visited,
        #mainnavigation li.active li.activ.sub > a:active,
        #mainnavigation li.active li.activ.sub > a:focus,
        #mainnavigation li.active li.activ.sub > a:hover {
            color: #000000;
        }

            #mainnavigation li.active li.activ a:link,
            #mainnavigation li.active li.activ a:visited,
            #mainnavigation li.active li.activ a:active,
            #mainnavigation li.active li.activ a:focus,
            #mainnavigation li.active li.activ a:hover,
                
            #mainnavigation li.active a:active,
            #mainnavigation li.active a:focus,
            #mainnavigation li.active a:hover,
            #mainnavigation li.active a.activ,
            #mainnavigation li.active a.active,
            #mainnavigation li.active span.active {
                color: #FFFFFF;
            }

    #mainnavigation li ul li {
        float: none;
        clear: both;
        padding: 0;
        width: 145px;
    }

    #mainnavigation li ul li a {
        text-align: left;
        background-color: #FFF;
    }

        #mainnavigation li.active ul li a {
            border-top-color: #000000;
        }

        #mainnavigation li ul li ul {
            border-top: none;
        }

        #mainnavigation li ul li ul li {
            border-top: none;
            padding-left: 0;
        }

#mainnavigation li ul {
    background-color: #E04F73;
    height: auto;
}

    #mainnavigation li.active ul {
        background-color: #E04F73;
    }

#mainnavigation li ul {
    display: none;
}

#mainnavigation li:hover ul {
    display: block;
}

#mainnavigation li              { z-index: 5890; }
#mainnavigation li *            { z-index: 5880; }
#mainnavigation li ul li        { z-index: 5000; }
#mainnavigation li ul li *      { z-index: 4999; }
#mainnavigation li ul li ul li  { z-index: 4550; }
#mainnavigation li ul li ul li * { z-index: 4540; }


#navigation {z-index: 4000;}
#mainnavigation { z-index: 4010; }
#mainnavigation li              { z-index: 4005; }
#mainnavigation li *            { z-index: 5880; }
#mainnavigation li ul li        { z-index: 5000; }
#mainnavigation li ul li *      { z-index: 4999; }
#mainnavigation li ul li ul li  { z-index: 4550; }
#mainnavigation li ul li ul li * { z-index: 4540; }


/*
.nav
	{
	 	list-style: none;
		background: #fff;
		float: left;
		vertical-align:middle;
		margin: 0px 6px;
		font-weight: bold;
		font-size: 12px;
		padding: 10px 10px 0 10px;
		min-width: 120px;
		min-height: 65px;
		
    }
.nav a, .nav.active li.activ ul a
	{
        text-decoration: none;
		color: #666;
    }
.nav a:hover
	{
		color: #ff3166;
	}

.nav.active
	{
		background: #FF3166;
    }
.nav.active a
	{
		color: #000;
    }
.nav.active li.activ a, .nav.active a:hover
	{
        color: #fff;
    }


.nav ul
	{
	 	list-style: none;
		margin: 0;
		position: absolute;
		top: 240px;
		left: 0;
		width: 280px;
		padding: 20px;
		background: #fff;
    }
.nav ul a.activ
	{
        color: #e70022!important;
    }
.nav ul a:hover
	{
		color: #e70022!important;
	}

.nav ul ul
	{
		position: static;
		padding: 0;
		width: auto;
		margin-left: 20px;
	}
.nav ul, .nav li.activ ul ul
	{
        display: none;
    }

.nav li.activ ul, .nav ul li.activ ul
	{
		display: block;
    }


#subNav
	{
		background: #fff;
    }
#subNav a.activ
	{
        color: #e70022!important;
    }
#subNav a:hover
	{
		color: #ff3166!important;
	}


#subNav ul
	{
		position: static;
		padding: 0;
		width: auto;
		margin-left: 20px;
	}
*/


/*************************
	LISTEN
**************************/

/* Dokumentenliste links */

.contextBoxDocList
	{
		position: relative;
		float: left;
		list-style: none;
		width: 280px;
		padding: 20px;
		margin: 0;
		background: #fff;
		line-height: 30px;
	}
.contextBoxDocList li
	{
		float: left;
		width: 100%;
    }

.contextBoxDocList img
	{
		float: left;
		margin-right: 10px;
	}
.contextBoxDocList a
	{
		text-decoration: none;
		color: #666666!important;
    }
.contextBoxDocList li.active a, .contextBoxDocList a:hover
	{
		color: #ff3166!important;
    }

/* Dokumentenliste */

.cat_2 .docList
	{
		list-style: none;
		margin-left: 0;
    }
.cat_2 .docList li
	{
        background: #fff;
		padding: 5px;
		margin-bottom: 5px;
    }


.cat_2 .docList h3, .cat_2 .docList p
	{
        margin: 0;
    }


/* Sitenavigation */

#siteNav
	{
		clear: both;
		float: right;
        position: relative;
		margin: 1em 0;
		text-align: right;
	}
#siteNav a
	{
		margin: 0 5px;
	}


#goTop
	{
		display: block;
		clear: both;
		background: transparent url(/images/gotop.gif) no-repeat top left;
		width: 100px;
		padding-top: 16px;
		font-size: 1px;
		text-decoration: none;
		line-height: 1px;
		color: #F5F5F5;
	}


/*************************
	FORMULARE
**************************/

form
	{
		margin: 1.4em 0;
		padding: 0;
	}
input, textarea, select
	{
		width: 250px;
	}
.fbError
	{
		color: #cc0000;
	}
.fbError input, .fbError textarea
	{
		border: solid 2px #cc0000;
	}
.formField
	{
		clear: both;
		padding: 2px 0;
	}
.formField label
	{
		width: 120px;
		float: left;

	}
.button
	{
		margin-left: 120px;
		margin-top: 20px;
	}
.radio
	{
		width: auto;
	}

.radioSet
	{
		display: inline;
		padding-right: 1em;
	}
.radioLabel
	{
		position: relative;
		top: -2px;
		padding: 0 0.5em;
	}
.radioSet.fbError
	{
		border: none;
	}
.check
	{
		float: left;
		clear: both;
	}
.formField label.checkboxLabel, .formField label.radioLabel
	{
		position: relative;
		top: 0;
		float: none;
		padding-left: 0.5em;
		width: 100%;
	}
.formHint
	{
		clear: both;
		padding: 1em 0;
		font-size: 0.8em;
	}
.formField h4	{ padding: 1em 0;}



.alertBox h4
	{
		display: none;
		font-size: 1.2em;
	}
.alertBox
	{
		color: #cc0000;
		padding: 0 0 20px 50px;
		background: transparent url(/images/alertSign.gif) no-repeat left top;
		margin-top: 20px;
	}
.alertBox ul
	{
		color: #cc0000
	}

/*
#mainBodyBox, #mainBodyBox *, #titleBox, #titleBox * { position: static !important; } */
