*
{
    margin: 0; padding: 0;
}

body
{
    text-align: center;
    font: normal 12px/20px arial,helvetica,sans-serif;
    color: #666;
    background: url(../pics/bg/body.gif) 0 0 repeat-x #eceef0;
}

hr                                                { display: none; }
.nodisplay
{ 
    position: absolute;
    left: -1000px;
    top: -1000px;
    width: 0px;
    height: 0px;
    overflow: hidden;
    display: inline;
}

.spacer                                            { display: block; clear: both; height: 1px; overflow: hidden; padding: 0; margin: -1px 0 0 0; }

fieldset                                        { border: none; }
legend                                            { display: none; }
input, select                                    { width: 95%; }
.checkbox, .radio                                { width: auto; }
input:focus, textarea:focus                        { background-color: #fff; }
.button:focus                                    { background-color: transparent; }
label                                            { cursor: pointer; }

img                                             { border: 0px none; }
strong                                            { font-weight: bold; }
a                                                { color: #009ee0; }
a:visited                                        { color: #009ee0; }
a:hover                                            { color: #009ee0; }

ul, ol                                            { list-style: none; }
li a                                            { display: block; text-decoration: none; }

p                                                { margin: 0 0 20px 0; }
abbr                                            { cursor: help; }
h1, h2, h3, h4, h5, h6                            { font-size: 100%; }

/* ******************** page blocks */

#home{
	border-top: 1px solid #e1e5e6;
	padding-top: 15px;
}

#page
{
    width: 780px;
    text-align: left;
    margin: 0 auto;
    background-color: #fff;
}

#header
{
    padding: 0 10px;
}

#logo
{
    width: 180px;
    float: left;
    height: 100px;
}

#logo a
{
    display: block;
    height: 90px;
    background: url(../pics/logo.gif) 0 0 no-repeat;
}
#service{
	float: right;
	padding-top: 10px;
}

#service li
{
    float: left;
    background: url(../pics/bg/service_line.gif) 100% 50% no-repeat;
}

#service li a
{
    float: left;
    color: #9f9fa0;
    padding: 0 5px;
}

#service li a:hover, #service li a:focus
{
    text-decoration: underline;
}

#lang
{
    float: right;
    padding-top: 10px;
}

#lang li
{
    float: left;
    background: url(../pics/bg/service_line.gif) 100% 50% no-repeat;
}

#lang li a, #lang li span
{
    float: left;
    padding: 0 5px;
}

#lang li a
{
    text-decoration: underline;
}

#lang li span
{
    font-weight: bold;
    display: block;
}



#nav
{
    float: left;
    width: 100%;
    border-top: 1px solid #e1e5e6;
    border-bottom: 1px solid #e1e5e6;
    list-style-type: none;
}

#nav li
{
    float: left;
}

#nav li a
{
    padding: 5px 12px;
    background: url(../pics/bg/arrow.gif) 2px 50% no-repeat;
}

#nav li a:hover, #nav li a:focus
{
    text-decoration: underline;
}

#nav li a.active
{
    text-decoration: underline;
    font-weight: bold;
}

#nav li ul 
{
	float: left;
	width: 220px;
	padding-top: -2px;
	display: none;
	background: #fff;
	position: absolute;
	filter: alpha(opacity=90);-moz-opacity: 0.90;opacity: 0.90;
}

#nav li ul li 
{
    float: none;
    border-color: #e1e5e6;
    border-style: solid;
    border-width: 0.6px;
    border-top:0px;
}

#nav li ul li a
{
    width: 200px;
    height: 100%;
    background: none;
    margin-left: 10px;
}

#nav li:hover ul, #nav li.open ul 
{    
    display: inline;
}

#content
{
    padding: 20px 30px;
}

#footer
{
    background: 95% 50% no-repeat #e1e5e6;
    padding: 40px 20px 20px 20px;
}

#footer ul
{
    width: 100%;
    float: left;
}

#footer ul li
{
    float: left;
}

#footer ul li a
{
    float: left;
    color: #666;
    padding: 0 10px;
}

#footer ul li a:hover, #footer ul li a:focus
{
    text-decoration: underline;
}


/* ******************** elements styles */

#visual
{
    background: url(../pics/visual.jpg) 0 0 no-repeat;
    height: 220px;
    margin-bottom: 10px;
}

.halfleft
{
    float: left;
    width: 360px;
    margin-top: 15px;
}

.halfright
{
    float: right;
    width: 360px;
    margin-top: 15px;
}

.image, .smallimage
{
    width: 170px;
    margin-right: 10px;
    text-align: right;
    float: left;
}

.image img
{
    display: block;
}
.image .caption {
    text-align: left;
    font-style: italic;
}

.text
{
    float: left;
    width: 530px;
}

.inset
{
    margin-left: 180px;
}

.halfleft .image, .halfright .image
{
    padding-top: 20px;
}

.halfleft .text, .halfright .text
{
    width: 170px;
}

.halfleft .cat, .halfright .cat
{
	width: 270px;
	margin-left: 80px;
}

.halfleft .split, .halfright .split
{
	width: 340px;
	margin-left: 10px;
}

.more
{
    margin-top: -20px;
    background: url(../pics/bg/arrow.gif) 0 0.55em no-repeat;
    padding-left: 10px;
}

#content h1
{
    font-size: 18px;
    color: #006ab3;
    margin: 0 10px 10px 180px;
    font-weight: normal;
}

.roofline
{
    margin: 0 10px 10px 180px;
    font-weight: normal;
    font-style: italic;
}

h2
{
    color: #006ab3;
}

p.teaser
{
    margin: 0 10px 20px 180px;
    /*font-weight: bold;*/
}

.text p.teaser
{
    margin: 0 0 20px 0;
}

.section
{
    margin-top: 20px;
}

.intro
{
    margin: 0 10px 0 180px;
}

ul.std
{
    margin-bottom: 20px;
}

ul.std li
{
    padding-left: 10px;
    background: url(../pics/bg/bullet.gif) 0 7px no-repeat;
}

div.back
{
    border-top: 1px solid #e1e5e6;
    padding-left: 10px;
    background: url(../pics/bg/arrow.gif) 0 50% no-repeat;
    margin-top: 20px;
}

ul.more
{
    margin: 0;
    margin-left: 180px;
    background-image: none;
    padding: 0;
}

ul.more li
{
    margin-bottom: 20px;
}

ul.more li a
{
    padding-left: 10px;
    background: url(../pics/bg/arrow.gif) 0 0.7em no-repeat;
}

ul.more li a span
{
    float: right;
    margin-top: -1.7em;
    clear: both;
}

ul.more li a:hover, ul.more li a:focus
{
    text-decoration: underline;
}

.col
{
    float: left;
    width: 31%;
    margin-right: 1%;
    padding-right: 1%;
    margin-left: -1px;
    border-right: 1px solid #e1e5e6;
}

/* ***************** Jumplist */

ul.jumplist {
    margin: 0;
    margin-left: 180px;
    background-image: none;
    padding: 0;
}

ul.jumplist li {
    float: left;
    margin-bottom: 20px;
    margin-right: 8px;
}

ul.jumplist li.prev span, ul.jumplist li.next span {
    border: 1px solid white;
}

ul.jumplist li a, ul.jumplist li span {
    display: block;
    width: 20px;
    overflow: hidden;
    border: 1px solid #e1e5e6;
    text-align: center;
    padding-bottom: 1px;
    height: 20px;
    vertical-align: center;
}

ul.jumplist li.prev a img, ul.jumplist li.next a img {
    padding: 0.7em 0;
}
ul.jumplist li a span {
    display: none;
}
ul.jumplist li a:hover, ul.jumplist li a:focus {
    text-decoration: underline;
}

/* ******************** jobs */

.tab
{
    float: left;
    background: url(../pics/bg/tab_line.gif) 0 100% repeat-x;
    width: 95%;
    padding-left: 5%;
    margin-bottom: 18px;
}

.tab li
{
    float: left;
    background: url(../pics/bg/tab_right.gif) 100% 0 no-repeat;
    margin-left: -1px;
}

.tab li a, .tab li span
{
    float: left;
    padding: 0 10px;
    background: url(../pics/bg/tab_left.gif) 0 0 no-repeat;
    border-bottom: 1px solid #9f9fa0;
    display: block;
}

.tab img
{
    top: 2px;
    position: relative;
}

.tab li a:hover, .tab li span
{
    border-bottom: 1px solid #fff;
}

.tip
{
    background-color: #e6f8ff;
    padding: 9px 10px;
    margin-bottom: 18px;
}

/* ******************** forms */

fieldset li
{
    clear: left;
    padding: 9px 0;
}

li label
{
    width: 200px;
    float: left;
    text-align: right;
    padding-right: 20px;
}

li input, li select
{
    width: 480px;
}

div.button
{
    margin-bottom: 18px;
    text-align: right;
}

.button input
{
    width: auto;
    cursor: pointer;
    font: normal 100%/1.5em arial,helvetica,sans-serif;
    border: 0 solid;
    text-decoration: underline;
    text-align: left;
    padding: 5px 15px;
    background: url(../pics/bg/arrow.gif) 5px 50% no-repeat transparent;
    color: #009ee0;
}

div.error
{
    background-color: #f8f5e2;
    padding: 9px 10px;
    margin-bottom: 18px;
}

li.error
{
    background-color: #f8f5e2;
    font-weight: bold;
}

li sup, div sup
{
    color: #ff0000;
    line-height: 0;
    font-size: 18px;
    top: 5px;
    position: relative;
}

table
{
    border: 1px solid #9f9fa0;
    border-collapse: collapse;
    width: 98%;
    margin-bottom: 18px;
}

table tr th
{
    background-color: #9f9fa0;
    color: #fff;
}

table tr td
{
    border-bottom: 1px solid #9f9fa0;
}

div.joboffer-select
{
    float: left;
}

#joboffer-select-row1
{
    width: 300px;
}

#joboffer-select-row2
{
    width: 290px;
}

#joboffer-select-row2 input
{
    margin-top: 1.5em;
}

#joboffer-select-row3
{
    width: auto;
    float: right;
    margin-top: 1.5em;
}

/** BEREICHSAUSWAHL **/
#areas #page { background-color: transparent; }

#areas #logo {
	float: none;
	height: 112px;
	padding-left: 20px;
	width: auto;
}

#areas #logo a { background-image: url("../pics/logo_areas.gif"); }

#areas .halfleft, #areas .halfright {
	margin-top: 0;
	width: 380px;
}

#areas .box { background-color: #fff; }

#areas .wrapper { padding: 30px; }

#areas a.button {
	background: url("../pics/bg/forward.gif") 10px 50% no-repeat #408fc6;
	color: #fff;
	display: block;
	font-size: 1.2em;
	padding: 0.5em 34px;
	text-decoration: none;
}

#areas a.button:hover {	background-color: #666; }

/* ******************** override */
.last
{
    border: 0 none !important;
    background-image: none !important;
}
#home h1 {
    margin: 0 0 0 10px;
    font-size: 125%;
}
