html { 
	overflow-y: scroll; /*-moz-scrollbars-vertical; */
	background-color: #b2b2b2;
	background-image: url(/site_media/images/gfx2/bg.jpg);
}

/**************************** Element Styles **********************************/


body {
    font-family: "Trebuchet MS",Arial,Sans-Serif !important;
}

h1 {
	border-bottom:1px solid #CCCCCC;
	font-size: 138.5%;
	margin:0 0 0.8em;
	color: #333333;
}

em {
    font-style: italic;
}

h2 {
	border-bottom:1px solid #CCCCCC;
	width: 70%;
	font-size: 138.5%;
	margin:0 0 0.8em 0;
	color: #333333;
}

h3 {
	color: #333333;
	font-weight: bold;
	font-size: 108%;
	line-height: 2em;
}

h4 {
	font-weight: bold;
	font-size: 108%;
	line-height: 3em;
}

h5 {
	font-size: 100%;
	font-weight: bold;
}

h1 a, h2 a {
	text-decoration: none;
}

/*h2 a {
    color: #333333;
}*/

a {
	color: #FF4040;
}

hr {
	margin: 1.5em 0 1.5em 0;
	color: #CCCCCC;
}

table {
	vertical-align:top;
}

th {
	font-weight: bold;
}

td, th {
	padding: 3px;
}

strong {
	font-weight: bold;
}

.justify {
    text-align: justify;
}

table.wide {
    width: 100%;
}

table.wide input[type="text"], table.wide input[type="password"] {
    width: 16em;
}

label.required {
    font-weight: bold;
}

th.not_required label, label.not_required  {
    font-weight: normal;
}

input[type="submit"], button {
    padding: 0.2em 1em 0.2em 1em;
}

input[type="text"], input[type="password"], select {
    border: 1px solid #AAA;
    padding: 5px;
    font-size: 108%;
}

.page_content textarea {
    border: 1px solid #AAA;
    padding: 5px;
    font-size: 108%;
    width: 13.2em;
}

span.subtitle {
    font-size: 77%;
}

ul.nodisc li {
    list-style-type: none !important;
    list-style: none !important;
    list-style-image: none !important;
    list-style-position: outside !important;
}


ol.A li {
    list-style-type: upper-alpha !important;
}

ol.i li {
    list-style-type: upper-roman !important;
}


fieldset {
    padding: 1em 2em;
    background-color: #eee;
    border: 1px solid #CCC;
    margin: 0.5em 0 2em 0;
}
.errorlist li {
    color: #BF3030;
    padding: 0;
    margin: 0;
    display: block;
}

.form-row div {
    margin-right: 2em;
}

legend {
    font-size: 108%;
    font-weight: bold;
    color: #333333;
    padding: 0 4px 0 4px;
}

.form-row div {
    float: left;
}

.form-row {
    clear: left;
}

.form-row div input, button {
    margin: 3px 0 3px 0;
}

.form-row label {
    width: 8em;
    display: block;
    float: left;
    padding: 5px 0;
}

.form-row ul.errorlist {
    margin-left: 8em;
}

.form-row .choice_field {

    width: 15em;
    margin: 0 1px 0 0;
}

textarea.wide {
    width: 98.5%;
}

/******************************* Document *************************************/

.document {
    /* changed yui doc2 to center doc content */
    margin-left: auto;
    margin-right: auto;
    margin-top: 2em;
    margin-bottom: 2em;
    background-color: #FFFFFF;
}

.body {
    background-color: #FFFFFF;
    background-image:url(/site_media/images/gfx2/sidebar_bg.jpg);
    background-position: right top;
    background-repeat: repeat-y;
    overflow: hidden;
    padding-bottom: 1em;
    
}

.clear_left { /* clear left floating */
    clear: left;
}

.clear_right { /* clear right floating */
    clear: right;
}

/********************************* Header *************************************/

.header_bar {
    height:34px;
    background-image:url(/site_media/images/gfx2/header_bar.jpg);
    background-position: top;
    background-repeat: no-repeat;
    padding-left:20px;
}

.header_bar a {
    text-decoration: none !important;
    color: #CCCCCC; /* TODO: evtl. bessere Farbe! */
    margin-left:4px;
}

.header {
	height: 150px;
    background-position: top;
    background-repeat: repeat-y;
    background-color: #FFFFFF;
}

.default_banner {
    background-image:url(/site_media/images/gfx2/header/default_bg.jpg);
}

.news_banner {
    background-image:url(/site_media/images/gfx2/header/news_bg.jpg);
}

.projekte_banner {
    background-image:url(/site_media/images/gfx2/header/projekte_bg.jpg);
}

.header .logo h1 {
    float: right;
    text-decoration: none;
    border-bottom: none;
    margin: 0 0 0 0;
    padding: 0 21px 0 0;
}

.header .logo h1 a {
	cursor: pointer;
	height: 150px;
	width: 167px;
	display: block;
	background: url("/site_media/images/gfx2/logo.jpg");
	background-position: center;
	background-repeat: no-repeat;
}

.header .logo h1 a span {
    display: none; /* Browsers without css will display company name here */
}

/******************************** Topbar **************************************/

.navi_topbar h1 {
    display: none;
}

.navi_topbar_wrapper {
    background-color: #808080;
    height: 1.8em;
    font-size: 108%;
}

.navi_topbar {
    padding: 0 2em 0 2em;
    display:table;
}

.navi_topbar ul {
    display:table-row;
    vertical-align:bottom;
}

.navi_topbar li {
    list-style: none;
    display:table-cell;
    /*padding-right: 1.4em;*/
	white-space:nowrap;
	line-height: 1.8em;
}

.navi_topbar li a {
    color: #FFFFFF;
    text-decoration: none;
}

.navi_topbar li a.active {
	color: #000000;
}

.navi_topbar li a:hover {
	color: #FFFFFF;
}

/********************************* Sidebar ************************************/

.sidebar_wrapper {
    float: right;
    width: 168px;
    margin-right:20px;
    /*height: 300px;*/
}

.sidebar {
    padding-right: 1px;
}

.sidebar_image {
    
    width: 188px !important;
    background: url("/site_media/images/gfx2/sidebar_top_bg.jpg");
	background-position: top right;
	background-repeat: no-repeat;
	margin-bottom: -13px;
}

.sidebar_bottom {
    height: 32px;
    background: url("/site_media/images/gfx2/sidebar_bottom.jpg");
    background-color: #FFFFFF;
	background-position: top right;
	background-repeat: no-repeat;
}

.sidebar h1 {
    border-bottom: 0px;
    font-size: 108%; /* = .navi_topbar.font-size */
    line-height: 1.8em;
    padding: 0 0.5em 0 0.5em;
    margin-top: 10px;
    margin-right: -1px;
    border-right: 1px solid #8a8a8a;
    background-color:#666666;
    color: #FFFFFF;
    margin-bottom: 0px;
}

.sidebar h1 a {
    color: #FFFFFF;
}

.sidebar a {
    color: #000000;
}

h1.sidebar_first {
    background-color: #AAAAAA;
    margin-bottom:3em;
}

.sidebar ul {
    border-bottom: 1px solid #FFFFFF;
}

.sidebar li {
    line-height: 1.5em;
    padding: 0.25em 0.5em 0.25em 0.5em;
    border-bottom: 1px solid #CCCCCC;
    border-top: 1px solid #FCFCFC;
}

.sidebar li a {
    text-decoration: none;
}

.sidebar ul.nodisc {
    margin: 0 0 0 0;
}

.sidebar ul li {
    list-style-position:inside;
    list-style-type:square;
    list-style-image:url(/site_media/images/bullet.gif);
}

.sidebar #search {
    border-right: 1px solid #8a8a8a;
    background-color:#666666;
    margin-top: 10px;
    margin-right: -1px;
}
.sidebar input {
    border: 0px;
    width: 136px;
    font-size: 108%;
    background-color:#666666;
    color: #FFFFFF;
    background-image: url("/site_media/images/search.png");
	background-position: 145px center;
	background-repeat: no-repeat;
	padding-right:26px;
}

/******************************** Messages ************************************/

.messages li {
    background-color: #DDFFDD;
    border-bottom: 1px solid #008000;
    padding: 0.5em 1em 0.5em 1em;
    font-weight: bold;
    line-height: 1.5em;
}

.messages li.error {
    background-color: #FF8080;
    border-bottom: 1px solid #BD4848;
}

/****************************** Page Content **********************************/

.page_content {
    background-color: #FFFFFF;
    /*margin-right: 188px;*/
    width: 761px;
    float:left;
    min-height: 600px;
}


.content, .content#tinymce {
	padding: 2em 3em 1em 3em !important;
	text-align:left;
}

.content .admin, .admin_link {
	float:right;
}


.content p {
	line-height: 1.5em;
	margin: 0.4em 0 0.6em !important;
}

.content ul, .content ol {
	margin-left: 2em;
	margin-top: 0.3em;
}

.content ol li {
	list-style-type: decimal;
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	line-height: 1.3em;
}

.content ul li {
	list-style-type:disc;
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	line-height: 1.3em;
}

.content ul li ul li {
	list-style-type:circle;
	padding: 0px;
	padding-bottom: 0.25em;
	padding-top: 0.25em;
}

.content ul li ul li ul li {
	list-style-type: square;
	padding: 0px;
}

.content p.photo {
	text-align:center;
}

.content p.photo img, .content img.photo {
	border: 2px solid #CCCCCC;
	background-color: #EEEEEE;
	padding: 4px;
}

table.spaces td {
	padding: 0.5em 1em 0.5em 1em;
}


/********************************* Footer *************************************/

.footer {
    height:21px;
    background-image:url(/site_media/images/gfx2/footer_bg.jpg);
    background-position: top;
    background-repeat: no-repeat;
    line-height:21px;
    color: #FFFFFF;
    text-align:center;
}

/*************************** Specials (move?) *********************************/

.paginator {
    margin-top:2em;
    line-height:3em;
    border-top: 1px solid #CCC;
    text-align:center;
    font-size:93%;
}

.auth {
	text-align:right;
	bottom: 0px;
}

.centering {
    text-align: center;
}

.right {
    text-align: right;
}

.left_thirty {
	float: left;
	width: 30%;
}

.right_seventy {
	margin-left: 33%;
}

.left_seventy {
	float: left;
	width: 70%;
}

.right_thirty {
    margin-left: 73%;
}

.left_fifty {
	float: left;
	width: 48%;
}

.right_fifty {
    margin-left: 53%;
}

.seperate_left {
    border-left: 5px dotted #CCCCCC;
	padding-left: 1em;
	padding-right: -1em;
}

.small {
	width: 60%;
}

a.external {
	padding-right: 13px;
	background: transparent url("/site_media/images/external.png");
	background-position: right center;
	background-repeat: no-repeat;
}

.draft {
	background-color: #F8F8F8 ;
	background-image: url(/site_media/images/draft.png);
	border: 1px solid #999999;
	padding: 1em;
	margin-bottom: 1em;
}

.draft legend {
	font-size: 108%;
	font-weight: bold;
	color: #333333;
}

.draft_inline {
	text-decoration: line-through;
}

.partner_images {
    text-align: center;
    margin-top: 2em;
}

/*.home {
    text-align: justify;
}

.home_left {
    height: 550px;
    background-color: #eeeeee;
    padding: 1em;
    border: 1px solid #ccc;
    margin-left: -1em;
}

.home_left li {
    list-style: none !important;
}

.home_left ul {
    margin: 0 !important;
}*/

.home_skills {
    background-color: #eee;
    padding: 1em;
    border: 2px solid #ccc;
}

.rss {
    background: transparent url(/site_media/images/rss.png);
    background-position: right center;
    padding-right: 14px;
    background-repeat: no-repeat;
}

.skills {
    width: 100%;
}

.skills td, .skills th {
    border: 1px solid #CCCCCC;
}

.skills th {
    background-color: #EEE;
}

