/*  HTML5 ✰ Boilerplate  */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,  footer, header, hgroup,
menu, nav, section, summary, time, mark, audio, video { margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
nav ul { list-style:none; }
blockquote, q { quotes:none; }
blockquote:before, blockquote:after,
q:before, q:after { content:''; content:none; }
a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }
ins { background-color:#ff9; color:#000; text-decoration:none; }
mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
input, select { vertical-align:middle; }

body { font:13px/1.231 sans-serif; *font-size:small; }
select, input, textarea, button { font:99% sans-serif; }
pre, code, kbd, samp { font-family: monospace, sans-serif; }

body, select, input, textarea { color: #626262; }
h1,h2,h3,h4,h5,h6 { font-weight: bold; }
html { overflow-y: scroll; }

a:hover, a:active { outline: none; }
a, a:active, a:visited { color: #607890; }
a:hover { color: #036; }

ul, ol { margin-left: 1.8em; }
ol { list-style-type: decimal; }

nav ul, nav li { margin: 0; }
small { font-size: 85%; }
strong, th { font-weight: bold; }
td, td img { vertical-align: top; }
sub { vertical-align: sub; font-size: smaller; }
sup { vertical-align: super; font-size: smaller; }
pre { padding: 15px;  white-space: pre;  white-space: pre-wrap;  white-space: pre-line;  word-wrap: break-word; }
textarea { overflow: auto; }
.ie6 legend, .ie7 legend { margin-left: -7px; }
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
.ie7 input[type="checkbox"] { vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }
label, input[type=button], input[type=submit], button { cursor: pointer; }
button, input, select, textarea { margin: 0; }
input:valid, textarea:valid { }
input:invalid, textarea:invalid { border-radius: 1px;  -moz-box-shadow: 0px 0px 5px red; -webkit-box-shadow: 0px 0px 5px red;  box-shadow: 0px 0px 5px red; }
.no-boxshadow input:invalid,
.no-boxshadow textarea:invalid { background-color: #f0dddd; }

::-moz-selection{ background: #FF5E99; color:#fff; text-shadow: none; }
::selection { background:#FF5E99; color:#fff; text-shadow: none; }
a:link { -webkit-tap-highlight-color: #FF5E99; }

button { width: auto; overflow: visible; }
.ie7 img { -ms-interpolation-mode: bicubic; }

.ir { display: block; text-indent: -999em; overflow: hidden; background-repeat: no-repeat; text-align: left; direction: ltr; }
.hidden { display: none; visibility: hidden; }
.visuallyhidden { position: absolute !important; clip: rect(1px 1px 1px 1px);  clip: rect(1px, 1px, 1px, 1px); }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; visibility: hidden; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


/* 	Primary Styles Dlugosch
 * 	Author: Carsten Peters - carsten-peters.net
 * 	Version: 24.04.2018
 */

body { font: 11px/18px Verdana, sans-serif; }
body#beispiel,
body#impressum,
body#datenschutz { background: url(../images/7-Impressum.jpg); }
#background img { position: absolute; top: 0; left: 0; min-height: 649px; height: auto !important; min-width: 957px; width: auto !important; width: 100%; margin: 0 auto; display: block; overflow: hidden; }

#header { position: absolute; right: 0; width: 260px; height: 100%; background: url(../images/bg.png); z-index: 20; }
.ie6 #header { height: 800px; }
#beispiel #header { background: none; }
#bg { position: fixed; right: 0; width: 260px; height: 100%; background: url(../images/bg.png); z-index: 15; }
#main { position: absolute; bottom: 0; right: 159px; width: 300px; height: 65%; /*height: 505px;*/ padding: 25px 25px 10px 20px; border-right: 13px solid #626262; background: url(../images/bg.png); overflow: auto; z-index: 30; }
#home #main { height: 55%; /*height: 356px;*/ }
#angebot #main { width: 537px; height: 50%; /*height: 356px;*/ }
#arbeitsweise #main { width: 417px; height: 66%; /*height: 522px;*/ }
#fallbeispiele #main { width: 585px; height: 45%; /*height: 375px;*/ }
#beispiel #main { position: relative; width: 767px; height: auto; float: right; margin: 200px 0 0 0; }
#impressum #main,
#datenschutz #main { width: 537px; height: 68%; }
.ie6 #profil #main,
.ie6 #impressum #main,
.ie7 #impressum #main { position: relative; float: right; height: auto; margin: 200px 0 0 0; }
.ie6 #profil #main { margin: 280px 0 0 0; }
#beispiel #main { width: 747px; padding: 25px 45px 10px 20px; }
#kontakt #main { width: 250px; height: 52%; /* height: 448px; */ }
#navigation { position: absolute; width: 100px; bottom: 30px; right: 59px; z-index: 40; }
#beispiel #navigation { top: 390px; }
.ie6 #beispiel #navigation { right: 30px; }
#navigation ul { margin: 0 0 0 -13px; }
#navigation li { }
#navigation a { font-size: 13px; height: 25px; line-height: 25px; display: block; color: #626262; padding: 0 0 0 10px; border-left: 13px solid #626262; text-decoration: none; }
#navigation a:hover,
#navigation a:focus,
#home #navigation .home a,
#angebot #navigation .angebot a,
#arbeitsweise #navigation .arbeitsweise a,
#fallbeispiele #navigation .fallbeispiele a,
#profil #navigation .profil a,
#kontakt #navigation .kontakt a,
#impressum #navigation .impressum a,
#datenschutz #navigation .datenschutz a,
#beispiel #navigation .close a { border-left: 13px solid #e7501e; color: #e7501e; }
#beispiel #main .close { background: none; padding: 0; text-indent: 0; }
#beispiel #main .close a { background: url(../images/link.png) no-repeat 0 50%; padding: 0 0 0 15px; margin: -5px 0 0 -2px; }
#beispiel #main .print { padding: 0; }
#beispiel #navigation .print a { border: none; background: url(../images/print.gif) no-repeat 0 2px; padding: 0 0 0 23px; margin: 28px 0 0 0; line-height: 14px; height: 28px; }

h1 a { position: absolute; top: 82px; right: 0; background: url(../images/logo.png); width: 260px; height: 74px; z-index: 10; }
h2 { font-size: 18px; line-height: 21px; color: #e7501e; margin: 0 0 15px 0; font-weight: normal; }
h3 { font-size: 12px; color: #e7501e; margin: 20px 0 10px 0; font-weight: normal; }
p, dl { margin: 0 0 10px 0; }
ul { list-style: none; }
#main a { color: #e7501e; text-decoration: none; }
#fallbeispiele #main a { background:url(../images/link.png) no-repeat 0 50%; padding: 0 0 0 15px }
#main ul { margin: 0 4px 10px 0; }
#main li { background: url(../images/dot.gif) no-repeat 0 5px; padding: 0 0 10px 0; text-indent: 8px; }
#angebot #main ul,
#profil #main ul { padding: 0; margin-top: -10px; }
#angebot #main li,
#profil #main li { padding: 0; }
.important { color: #e7501e; }
.legend { margin: -10px 0 20px 0; font-style: italic; text-align: center; }
.image { text-align: center; }
dt { float: left; width: 4.5em; }


/*
 *	CSS Styles that are needed by jScrollPane for it to operate correctly.
 */

.jspContainer { overflow: hidden; position: relative; }
.jspPane { position: absolute; }
.jspVerticalBar { position: absolute; top: 0; right: 4px; width: 14px; cursor: pointer; height: 100%; background: #fff; border-right: 1px solid #bababa; }
.jspHorizontalBar { position: absolute; bottom: 0; left: 0; width: 100%; height: 16px; }
.jspVerticalBar *, .jspHorizontalBar * { margin: 0; padding: 0; }
.jspCap { display: none; }
.jspHorizontalBar .jspCap { float: left; }
.jspTrack { background: #fff; position: relative; }
.jspDrag { /*background: #bababa;*/ position: relative; top: 0; left: 7px; cursor: pointer; background: url(../images/scroll_drag.gif) no-repeat top; }
.jspHorizontalBar .jspTrack, .jspHorizontalBar .jspDrag { float: left; height: 100%; }
.jspArrow { background: #50506d; text-indent: -20000px; display: block; cursor: pointer; }
.jspArrow .jspDisabled { cursor: default; background: #80808d; }
.jspVerticalBar .jspArrow { height: 16px; }
.jspHorizontalBar .jspArrow { width: 16px; float: left; height: 100%; }
.jspVerticalBar .jspArrow:focus { outline: none; }
.jspCorner { background: #eeeef4; float: left; height: 100%; } /* Yuk! CSS Hack for IE6 3 pixel bug :( */
* html .jspCorner { margin: 0 -3px 0 0; }

@media all and (orientation:portrait) { }
@media all and (orientation:landscape) { }
@media screen and (max-device-width: 480px) {

	body, #header { background-image: none !important; }
	#backstretch, .jspVerticalBar, #beispiel #navigation, .print { display: none !important; }
	#header { position: absolute; top: 0; left: 0; float: none; clear: both; width: auto; height: auto; overflow: visible; min-width: 0; min-height: 0; }
	#main { position: absolute !important; top: 250px; left: 0; float: none; clear: both; width: auto; height: auto; overflow: visible; min-width: 0; min-height: 0; border: none; margin: 0; }
	#beispiel #main { top: 90px; margin: 0; }
	#navigation { position: absolute; top: 80px; left: 10px; float: none; clear: both; width: auto; height: auto; overflow: visible; min-width: 0; min-height: 0; }
	h1 a { position: absolute; top: 5px; left: 0; width: 260px; height: 74px; }
	img { max-width: 100%; height: auto; }
	.no-scroll-pane, #beispiel .no-scroll-pane { width: 280px !important; }
}
