/* ----------------------------------------------------------------------------------------------------------

    Structure:
    display; position; float; z-index; overflow; width; height; margin; padding; border; background; align; font;

    Content:
    
        1) HTML tags, reset
        2) Universal styles (display, float, margin, text-align...)
        3) Generally HTML styles (table, ul, dl...)
        4) Layout
        5) Page: Home
        
---------------------------------------------------------------------------------------------------------- */

/* ----------------------------------------------------------------------------------------------------------
1) HTML tags, reset
---------------------------------------------------------------------------------------------------------- */

* {
	margin:0;
	padding:0;
}
body, div, span, p, a, img, ul, ol, li, caption, table, thead, tbody, tfoot, tr, th, td, form, fieldset, legend, label, dl, dt, dd, blockquote, applet, object, h1, h2, h3, h4, h5 {
	border:0;
}
body {
	padding-bottom:20px;
	font:0.8em/1.5 "arial", sans-serif;
	text-align:center;
	background-image: url(../design/page-bg.jpg);
	background-repeat: repeat-x;
	background-position: 0 0;
	background-color: #FFF;
}
h1, h2, h3, h4, h5, h6 {
	margin:15px 0 10px 0;
}
h1 {
	font-size:180%;
	color: #333;
}
h2 {
	font-size:160%;
}
h3 {
	font-size:140%;
}
h4 {
	font-size:120%;
}
h5 {
	font-size:100%;
}
p {
	margin: 0.75em 0;
}
table, ul, ol, dl, fieldset {
	margin:15px 0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
	font-size:100%;
}
th {
	text-align:center;
	font-weight:bold;
}
th, td {
	padding:3px 7px;
}
ul, ol {
	margin-left:30px;
}
ul ul, ol ol {
	margin:0;
	margin-left:20px;
}
ol {
	list-style-type:decimal;
}
li {
	display:list-item;
}
dt {
	font-weight:bold;
}
dd {
	margin-left:30px;
}
fieldset {
	position:relative;
	padding:10px;
}
legend {
	position:absolute;
	top:-1em;
	margin:0;
	padding:5px 10px;
	font-size:100%;
	font-weight:bold;
}
/* ----------------------------------------------------------------------------------------------------------
2) Universal styles (display, float, margin, text-align...)
---------------------------------------------------------------------------------------------------------- */

.box {
	min-height:1px;
}
.box:after {
	display:block;
	visibility:hidden;
	clear:both;
	line-height:0;
	font-size:0;
	content:".";
}
.relative {
	position:relative;
}
.clear {
	clear:both;
}
.f-left {
	float:left !important;
}
img.f-left {
	float:left;
	margin-right:10px;
}
.f-right {
	float:right !important;
}
img.f-right {
	float:right;
	margin-left:10px;
}
.t-left {
	text-align:left !important;
}
.t-center {
	text-align:center !important;
}
.t-right {
	text-align:right !important;
}
.t-justify {
	text-align:justify !important;
}
.va-top {
	vertical-align:top;
}
.va-middle {
	vertical-align:middle;
}
.va-bottom {
	vertical-align:bottom;
}
.nom {
	margin:0 !important;
}
.nomt {
	margin-top:0 !important;
}
.nomb {
	margin-bottom:0 !important;
}
.noscreen {
	display:none;
}
/* ----------------------------------------------------------------------------------------------------------
3) Generally HTML styles (table, ul, dl...)
---------------------------------------------------------------------------------------------------------- */            

table.table-style01 {
	width:100%;
}
table.table-style01 th {
	text-align:center;
}
ul.ul-style01 {
	margin:15px 0 15px 20px;
	padding:0;
	list-style:none;
}
ul.ul-style01 li {
	margin:0;
	padding:0;
	padding-left:15px;
	background:url("../design/ul-style01.gif") 0 5px no-repeat;
}
ul.ul-style01 ul {
	margin:0;
	padding:0;
	list-style:none;
}
ul.ul-style01 ul li {
	background:url("../design/ul-style01-sub.gif") 0 5px no-repeat;
}
/* ----------------------------------------------------------------------------------------------------------
4) Layout
---------------------------------------------------------------------------------------------------------- */

#main {
	width:910px;
	margin:0 auto;
	text-align:left;
}
#header {
	position:relative;
	height:177px;
	overflow:visible;
	background-color: transparent;
	background-image: url(../design/header.jpg);
	background-repeat: no-repeat;
	background-position: right top;
}
#logo {
	position:absolute;
	top:35px;
	left:0px;
	margin:0;
	font-size:200%;
	letter-spacing:-1px;
	font-weight:normal;
	background-image: url(../design/logo.png);
	background-repeat: no-repeat;
	height: 180px;
	width: 220px;
}
#logo span {
	font-weight:bold;
}
#logo a {
	text-decoration:none;
}
#slogan {
	position:absolute;
	top:0px;
	right:-18px;
	width:376px;
	font-size:120%;
	font-weight:normal;
	font-style:italic;
	text-align:center;
	background-image: url(../design/splashtop.png);
	background-repeat: no-repeat;
	background-position: right top;
	height: 195px;
}
#nav {
	padding-top: 0;
	padding-right: 0px;
	padding-left: 15px;
	background-image: url(../design/aside-box.png);
	background-repeat: no-repeat;
	background-position: right top;
	margin-right: 15px;
	position: relative;
}
#nav ul {
	margin:0;
	padding:0;
	list-style:none;
}
#nav ul li {
	display:block;
	margin:0;
	padding:0;
}
#nav ul li a {
	display:block;
	text-decoration:none;
	padding-right: 5px;
	padding-left: 5px;
	font-weight: bold;
}
#nav ul li#nav-active a {
	font-weight:bold;
	text-decoration:underline;
}
#cols {
	background-image: url(../design/page-corners.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-color: transparent;
}
#content {
	float:right;
	width:655px;
	overflow:hidden;
}
#content strong,
#content h2,
#content h3 {
	color: #0C602A;
}

#content #content-title {
	margin:0;
	padding:15px 20px 10px 15px;
	font-size:140%;
	font-weight:normal;
	background-repeat: no-repeat;
	background-position: right top;
}
#content #content-in {
	padding:15px 20px 10px 15px;
}
#aside {
	float:left;
	width:255px;
	overflow:hidden;
	background-image: url(../design/edge.png);
	background-repeat: no-repeat;
	background-position: right 35px;
}
#aside #aside-title {
	margin:0;
	padding:15px 15px 10px 15px;
	font-size:140%;
	font-weight:normal;
	background-repeat: no-repeat;
	background-position: 0 0;
	color: #769E4E;	
}
#aside .aside-in {
	padding:10px 10px 15px 10px;
}
#aside .aside-box {
	padding:10px;
	background:url("../design/aside-box.png") 0 0 no-repeat;
}
#aside .title {
	margin:0 5px 0 0;
	padding:10px 15px;
	font-size:100%;
}
#cols-bottom {
	width:910px;
	height:12px;
	font-size:0;
	background-color: #FFF;
	background-repeat: no-repeat;
	background-position: 0 0;
}
#footer {
	width:870px;
	height:57px;
	background-image: url(../design/footer.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
	padding-top: 100px;
	padding-right: 20px;
	padding-bottom: 0;
	padding-left: 20px;
}
#footer p {
	margin:0;
	color: #FFF;
	font-size: 11px;
}
#footer a {
	color: #A6D21B;
	text-decoration: none;
}
.testimonials {
	margin-top: 12px;
	border: solid #ececec 1px;
	background-color: #fffdc2;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding-left: 15px;
	padding-right: 15px;
}
.testimonials .quote {
	padding-bottom: 10px;
	font-size: 13px;
	line-height: 17px;
	margin-bottom: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FC3;
}


#pageGallery {
	width: 420px;
}

#search {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding: 5px;
	border: solid 1px #ececec;
	background: #ececec;
	text-align: center;
}
#search h4 {
	padding: 0;
	margin: 0;
}
#search input {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding: 5px;
	border: solid 1px #ececec;
	display: block;
}
.boxed {
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	padding: 15px;
	border: solid 1px #ececec;
	background-image: url(../design/aside-box.png);
	background-position: right top;
	background-repeat: no-repeat;
	margin:0px;
	display: block;
	max-width: 600px;
}

.contactform {
	background-color: #ECECEC;
	background-image: url(../design/aside-box.png);
	background-position: right top;
	background-repeat: no-repeat;
	background: #ececec;
	
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
}
.contactform input {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding: 5px;
	border: solid 1px #ececec;
}
.contactform label {
	display: block;
	font-size: 10px;
	font-weight: bold;
}
/* ----------------------------------------------------------------------------------------------------------
5) Page: Home
---------------------------------------------------------------------------------------------------------- */

#perex {
	margin-right: 5px;
	background-color: transparent;
	background-image: url(../design/bigger-impact.png);
	background-repeat: no-repeat;
	background-position: -5px 0px;
	position: relative;
	z-index: 1000;
	height: 253px;
	margin-top: 0px;
	padding-top: 0px;
	padding-right: 15px;
	padding-bottom: 0px;
	padding-left: 15px;
	margin-bottom: 0px;
}
#perex p {
	margin:0;
}
#sections {
	background:url("../design/sections.gif") 0 0 repeat-y;
}
#sections-bottom {
	width:620px;
	height:7px;
	background:url("../design/sections-bottom.gif") 0 0 no-repeat;
	font-size:0;
}
.section {
	float:left;
	width:200px;
}
.section p {
	margin:0;
}
.section.margin {
	margin:0 10px;
}
.section h3 {
	margin:0;
	padding:10px;
	font-size:100%;
	background-image: url(../design/section-title.jpg);
	background-repeat: no-repeat;
	background-position: 0 top;
}
.section-in {
	margin-bottom:10px;
	padding:0 10px 10px 10px;
}
.section-in p {
	margin: 0.75em 0;
}
dl#news, dl#news dd {
	margin:0;
}
dl#news dt {
	clear:both;
	padding-left:18px;
	background:url("../design/ico-list.gif") 0 2px no-repeat;
}
dl#news dd {
	margin:7px 0 10px 0;
	padding-bottom:10px;
}
dl#news dd span.date {
	padding-right:10px;
	background:url("../design/date.gif") 100% 50% no-repeat;
	font-size:85%;
	font-weight:bold;
}
img.boxy {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border: 2px white solid;
	-webkit-box-shadow: 0px 0px 5px #999;
	-moz-box-shadow: 0px 0px 5px #999;
	margin: 7px;
	float: left;
	clear: none;
}
.product-desc {
	clear: left;
}

/* @group Accordion */

dl.accordion
{
	width: 220px;
}
dl, dt, dd {
	margin: 0px;
	padding: 0px;
	text-indent: 0px;
}
.accordion p,
.accordion a {
	text-decoration: none;
}

/* @group Ebene 1 */

dl.accordion dt
{
	position: relative;
	height: 20px;
	font-weight: bold;
	font-size:15px;
	color: #F04E28;
	cursor: pointer;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #F3F3F3;
	background-color: transparent;
	background-image: url(icon_accordion_closed.png);
	background-repeat: no-repeat;
	padding-top: 3px;
	padding-right: 0;
	padding-bottom: 2px;
	padding-left: 25px;
}

* html dl.accordion dt
{
	cursor: hand;
/*	filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='icon_accordion_closed.png', sizingMethod='crop');
	background-image: none;*/
}

dl.accordion dt.open,
#open_accordion_entry
{
	background-image: url(icon_accordion_open.png); !important
	height: auto;
	display: block;
}

* html dl.accordion dt.open
{
/*	filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='icon_accordion_open.png', sizingMethod='crop');
	background-image: none;*/
}

dl.accordion dd
{
	position: relative;
	overflow: hidden;
	background-color: transparent;
}

/* @group Inhalt */

dl.accordion dd.sub_accordion
{
	
}

dl.accordion dd.accordion_content
{
	padding-top: 0;
	padding-right: 5px;
	padding-bottom: 0;
	padding-left: 2px;
}

dl.accordion dd.accordion_content p
{
	padding: 5px 0 7px 0;
}

/* @end */

/* @end */

/* @group Ebene 2 */

dl.accordion dd dl dt
{
	padding-left: 30px;
	background-position: 5px 0;
	background-color: transparent;
	color: #F07744;
}

dl.accordion dd dl dd.accordion_content,
dl.accordion dd dl p
{
	padding-left: 30px;
}

/* @end */

/* @group Ebene 3 */

dl.accordion dd dl dd dl dt
{
	padding-left: 35px;
	background-color: transparent;
	background-position: 10px 0;
	color: #F09C50;
}

dl.accordion dd dl dd dl dd.accordion_content,
dl.accordion dd dl dd dl p
{
	padding-left: 40px;
}

/* @end */

/* @group Ebene 4 */

dl.accordion dd dl dd dl dd dl dt
{
	padding-left: 40px;
	background-color: transparent;
	background-position: 15px 0;
	color: #F1D96F;
}

dl.accordion dd dl dd dl dd dl dd.accordion_content,
dl.accordion dd dl dd dl dd dl p
{
	padding-left: 45px;
}

/* @end */

