@font-face {font-family: JosefinSans; font-style: normal; font-weight: 100; src:url("fonts/JosefinSans-Thin.ttf") format("truetype");}
@font-face {font-family: JosefinSans; font-style: normal; font-weight: 300; src:url("fonts/JosefinSans-Light.ttf") format("truetype");}
@font-face {font-family: RobotoCondensed; font-style: normal; font-weight: 400; src:url("fonts/RobotoCondensed-Light.ttf") format("truetype");}


/* RESET BROWSERSTYLE */
body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,hr,blockquote {padding: 0; margin: 0;}


/* ONEPAGE CLASSES */

.h2onepage_container {padding: 40px 0 60px 0; margin: 0 auto;}
.h2onepage_container_inner {max-width: 900px; margin: 0 auto;}
.h2onepage_container_1 {background: #fff;}
.h2onepage_container_2 {background: #b0b6b9; color: #444;}
.h2onepage_container_3 {background: #d0d9d3;}


/* GLOBAL */

h1 {font-family: RobotoCondensed, georgia, serif; color: #356; font-size: 28px; line-height: 1.2em; font-weight: 400; padding: 0; margin: 24px 0 24px 0;}
h2 {font-family: RobotoCondensed, georgia, serif; color: #356; font-size: 28px; line-height: 1.2em; font-weight: 400; padding: 0; margin: 24px 0 10px 0;}
h3 {font-family: RobotoCondensed, georgia, serif; color: #356; font-size: 28px; line-height: 1.2em; font-weight: 400; padding: 0; margin: 24px 0 10px 0;}
h4 {font-family: RobotoCondensed, georgia, serif; color: #356; font-size: 28px; line-height: 1.4em; font-weight: 400; padding: 0; margin: 24px 0 10px 0;}
h5 {font-family: RobotoCondensed, georgia, serif; color: #356; font-size: 24px; line-height: 1.4em; font-weight: 400; padding: 0; margin: 24px 0 10px 0;}
h6 {font-family: RobotoCondensed, georgia, serif; color: #356; font-size: 22px; line-height: 1.4em; font-weight: 400; padding: 0; margin: 24px 0 10px 0;}
p {margin: 10px 0;}
ol {margin: 6px 0;}
ol li {line-height: 1.0em; border: 0; padding: 3px 0; margin: 2px 0 2px 22px;}
ul {list-style-image: url(images/inhlist.gif); margin: 6px 0;}
ul li {line-height: 1.2em; border: 0; padding: 3px 0; margin: 2px 0 2px 17px;}
hr {height: 1px; clear: both; color: #aaa; background-color: #aaa; border: 0; margin: 16px 0;}
blockquote {padding: 2px 0 2px 20px; border-left: 3px solid #999;}





/* 
##############################
 C O N T E N T  C L A S S E S 
##############################
*/

/* Bilder / Images */
img.tplge_left {max-width: 46%; float: left; margin: 0 20px 10px 0;}
img.tplge_right {max-width: 46%; float: right; margin: 0 0 10px 20px;}
img.tplge_centered {max-width: 98%; display: block; margin: 16px auto;}
img.tplge_border {border: 5px solid #689;}
img.tplge_border_white {border: 1px solid #fff;}
img.tplge_border_sepia {border: 5px solid #776;}
img.tplge_noborder {border: 0;}

.tplge_box01 {clear: both; background: #e0e6e9; border: 3px solid #abc; padding: 16px 24px; margin: 16px 0;}
.tplge_code {max-height: 310px; background: #eee; color: #333; font-family: 'courier new', monospace; font-size: 15px; border: 3px solid #a0a6a9; padding: 16px 24px; margin: 24px 0; overflow: auto;}

.tplge_clearLeft {clear: left;}
.tplge_clearRight {clear: right;}
.tplge_clearBoth {clear: both;}





/* 
##############################
           B O D Y
##############################
*/

/* BODY UND SEITE / BODY AND PAGE */
body {color: #566; font-family: arial, sans-serif; font-size: 16px; font-weight: 400; line-height: 1.4em;}
#body {min-width: 300px; background: #454545; text-align: left;}
#top {}





/* KOPFBEREICH / HEADERS */

.tplge_headersContainer {}

/* top header */
.tplge_topheader {color: #666; padding: 0; margin: 0;}
#tplge_topheader h1 {color: white; font-family: JosefinSans, georgia, serif; font-style: italic; font-size: 72px; line-height: 72px; font-weight: 100; letter-spacing: 0; padding: 0 16px; margin: 0;}

/* languagemenu */
div.langmenu_container {text-align: right; padding: 6px 20px 10px 0; margin: 0;}
.langmenu_container img {border: 3px solid #998; padding: 0; margin: 0 0 0 24px;}

/* searchbox */
.tplge_searchboxContainer {width: 260px; float: right; background: #fff url('images/lupe1.jpg') right top no-repeat; border: 3px solid #909c93; border-radius: 15px; color: #620; padding: 0; margin: 30px 16px 24px 0; overflow: hidden;}
#searchbox {text-align: left; padding: 0; margin: 0;}
#searchbox input.submit {background: none; color: transparent; font-family: courier new; font-size: 24px; line-height: 24px; font-weight: 700; border: 0px solid #999; padding: 3px 0 0 0; margin: 0;}
#searchbox input.submit:hover {cursor: pointer;}
#searchbox input.text {width: 196px; background: #fff; float: left; font-size: 14px; border: 0; border-right: 1px solid #999; border-radius: 15px 0 0 15px; padding: 6px 12px; margin: 0;}

/* onePageToc */
.tplge_onePageToc {}
.tplge_onePageTocIn {font-family: RobotoCondensed, arial, sans-serif; font-size: 20px; font-weight: 400; padding: 24px 10px 6px 12px; margin: 0; border-radius: 24px 0 0 0;} 




/* image header */
.tplge_imageHeader {background: #a0a9a3; padding: 0; margin: 0;}
.tplge_imageHeader img {max-width: 100%; display: block; padding: 0; margin: 0 auto;}





/* INHALT / CONTENT */

.tplge_content {background: #fff; min-height: 120px;}
.tplge_contentin {}
#tplge_contentin li {background: none;}

#tplge_contentin input {background: #fff; color: #344; border: 1px solid #b0b9bf; padding: 3px 6px;}
#tplge_contentin textarea {width: 90%; background: #fff; color: #344; font-family: arial, sans-serif; font-size: 15px; border: 1px solid #b0b9bf; padding: 6px;}

#tplge_contentin input.submit, #tplge_contentin input#submit {background: url(images/button.jpg) repeat-x; float: left; color: #333; font-size: 14px; line-height: 18px; border: 1px solid #666; border-radius: 3px; padding: 2px 6px; margin: 0 6px 16px 0; box-shadow: 0 0 0}
div.submitButton {min-height: 24px;}
div.submitButton input {float: left; background: url(images/button.jpg) repeat-x!important; border: 1px solid #999!important;}
#cmsimple_mailform {max-width: 900px; padding: 20px; margin: 0 auto;}
#cmsimple_mailform h1 {font-size: 32px; line-height: 30px; font-weight: 400; padding: 0; margin: 0 0 24px 0;}

.tplge_button {background: url(images/button.jpg) repeat-x; float: right; color: #333; line-height: 24px; border: 1px solid #666; border-radius: 3px; padding: 3px 9px; margin: 6px 16px 0 9px;}
.tplge_homepageLink {padding: 16px 16px 9px 16px;}

/* login */
div.cmsimple_loginform {max-width: 900px; padding: 36px 16px 96px 16px; margin: 0 auto;}





/* FUSSLINKS / FOOTER LINKS */

.tplge_footersContainer {min-height: 360px; color: #999; font-size: 14px; text-align: right; padding: 6px 20px; margin: 0;}
.tplge_footersContainer span {padding: 6px; white-space: nowrap;}

/* CMSimple MENU */
#tplge_footersContainer ul.menulevel2 {font-size: 16px; padding-left: 16px;}
#tplge_footersContainer ul li span {padding: 0;}
#tplge_footersContainer ul li a {padding: 0;}

/* scroll-to-top-button */
#tplge_up {position: fixed; bottom: 24px; right: 10px; display: block; opacity: 0.75; transition: 2s;}

/* footer links */
.tplge_footersContainer a:link {color: #bbb; text-decoration: none;}
.tplge_footersContainer a:visited {color: #bbb; text-decoration: none;}
.tplge_footersContainer a:hover {color: #f90; text-decoration: underline;}
.tplge_footersContainer a:active {color: #f90; text-decoration: underline;}
.tplge_footersContainer a:focus {color: #f90; text-decoration: underline;}





/* LINKFORMATIERUNG / LINKS */
a:link {color: #369; text-decoration: none;}
a:visited {color: #369; text-decoration: none;}
a:hover {color: #c50; text-decoration: underline;}
a:active {color: #c50; text-decoration: underline;}
a:focus {color: #c50; text-decoration: underline;}





/* 
##############################
 S O N S T I G E S / R E S T
############################## 
*/





/* 
############################## 
   R E S P O N S I V E  CSS
############################## 
*/

@media (min-width: 1025px) and (max-width: 1280px) {
#tplge_topheader h1 {font-size: 48px; line-height: 48px; font-weight: 300;}
}



@media (min-width: 720px) and (max-width: 1024px) {
.h2onepage_container_inner {max-width: 640px; margin: 0 auto;}
#tplge_topheader h1 {font-size: 36px; line-height: 36px; font-weight: 300;}
}



@media (max-width: 719px) {
.h2onepage_container_inner {max-width: 360px; padding: 20px; margin: 0 auto;}
#tplge_topheader h1 {font-size: 36px; line-height: 36px; font-weight: 300; text-align: left;}
}

@media (max-width: 959px) {
.tplge_slimmenu {max-width: 360px; margin: 0 0 0 auto;}
}





/* 
##############################
     S L I M M E N U   CSS
############################## 
*/

ul.slimmenu ul, ul.slimmenu li {display: block; float: left; box-sizing:border-box;}

/* 1. Menüebene */
ul.slimmenu {background: #3b4e4f; display: block; float: right; border-left: 1px solid #909699;  padding:0; margin:0; list-style-type:none; box-sizing:border-box;}
ul.slimmenu li {min-width: 140px; box-sizing: border-box; position: relative; float: left; display:inline-block; font-family: RobotoCondensed, arial, sans-serif; font-size:20px; border-right:1px solid #909699; padding:0; margin:0;}
ul.slimmenu li:last-child {border-right: 1px solid #808f83;}

/* 2. Menüebene */
ul.slimmenu li ul {background: #505f53; position:absolute; left:0; top:100%; z-index:999; display:none; width:100%; border: 0px solid #606f63; border-radius: 0; padding:0; margin:0; list-style-type:none;}
ul.slimmenu li ul li {width:100%; font-size:18px; padding:0; margin:0; border-top: 1px solid #a0a6a9; border-right: 0; border-bottom: 0; border-left: 0;}
ul.slimmenu li ul li:first-child {border-top: 0;}
ul.slimmenu li ul li:last-child {border-right: 0;}

/* 3. Menüebene */
ul.slimmenu li ul li ul {background: #708c80; position:absolute; left:100%; top:10px; z-index:999; display:none; width:100%; border: 3px solid #c0c6c9; border-radius: 3px; padding:0; margin:0 0 0 -12px;;}
ul.slimmenu li ul li ul li {width: 100%; top:0; right:0; padding:0; margin:0; border: 0; border-bottom: 1px solid #a0a6a9;}
ul.slimmenu li ul li ul li:first-child {border-left: 0;}
ul.slimmenu li ul li ul li:last-child {border-bottom: 0;}
ul.slimmenu li:nth-child(4n) ul li ul {left:-90%;}

/* Links */
ul.slimmenu a {height: 26px; display:block; color: #ddd; padding: 6px 10px; font-weight:400; border: 1px solid transparent; overflow: hidden;}
ul.slimmenu li.docs a, ul.slimmenu li.sdocs a {padding:6px 56px 6px 10px;}
ul.slimmenu li ul li.docs a, ul.slimmenu li ul li.sdocs a {padding:6px 10px 6px 56px;}
ul.slimmenu li:nth-child(4n) ul li.docs a, ul.slimmenu li:nth-child(4n) ul li.sdocs a {padding:6px 56px 6px 10px;}
ul.slimmenu li.doc a, ul.slimmenu li.sdoc a {padding: 6px 10px;}
ul.slimmenu li ul li.doc a, ul.slimmenu li ul li.sdoc a {padding: 6px 10px;}

ul.slimmenu li a:hover {text-decoration:none; background-color:#606f63; border: 1px solid transparent;}
ul.slimmenu li ul li a {height: auto; min-height: 20px;}
ul.slimmenu li ul li ul li a {min-height: 0; padding: 6px 10px;}

/* Toggle Buttons ml1 */
ul.slimmenu li .sub-toggle {position:absolute; right:0; top:0; z-index:998; width:46px; height:42px; text-align:center; border: 0px solid #ccc; border-radius: 0 0 0 15px; cursor:pointer;}
ul.slimmenu li .sub-toggle:before {content:''; display:inline-block; height:100%; vertical-align:middle;}
ul.slimmenu li .sub-toggle {display:inline-block; font-size:20px; color: #fa0; vertical-align:middle; text-align: center;}
ul.slimmenu li .expanded {color: #fff;}

/* Toggle Buttons ml2 */
ul.slimmenu li ul li .sub-toggle {position:absolute; right: auto; left:0; top:0; z-index:998; width:46px; height:42px; text-align:center; border: 0px solid #ccc; border-radius: 0 0 15px 0; cursor:pointer;}
ul.slimmenu li ul li .sub-toggle:before {content:''; display:inline-block; height:100%; vertical-align:middle;}
ul.slimmenu li ul li .sub-toggle {display:inline-block; font-size:20px; color: #fa0; vertical-align:middle; text-align: center;}
ul.slimmenu li ul li .expanded {color: #fff;}

/* Toggle Buttons ml2 rechts*/
ul.slimmenu li:nth-child(4n) ul li .sub-toggle {background: #607c60; position:absolute; left: auto; right:0; top:0; z-index:998; width:46px; height:42px; text-align:center; border: 0px solid #ccc; border-radius: 0 0 0 15px; cursor:pointer;}
ul.slimmenu li:nth-child(4n) ul li .sub-toggle:before {content:''; display:inline-block; height:100%; vertical-align:middle;}
ul.slimmenu li:nth-child(4n) ul li .sub-toggle {display:inline-block; font-size:24px; color: #dcc; vertical-align:middle; text-align: center;}
ul.slimmenu li:nth-child(4n) ul li .expanded {color: #fc0;}

/* Kennzeichnung der aktiven Seite */
ul.slimmenu li.sdoc, ul.slimmenu li.sdocs {background:#707f73;}
ul.slimmenu li ul li.sdoc, ul.slimmenu li ul li.sdocs {background:#808f83;}
ul.slimmenu li ul li ul li.sdoc, ul.slimmenu li ul li ul li.sdocs {background:#909f93;}



/* S L I M M E N U  Responsive Design (sollte mit dem Wert für resizeWidth: in der Initialisierung in der template.htm übereinstimmen) */

@media (max-width: 959px) {

/* Expand-Collapse-Button */
.menu-collapser {background:#405c50; color:#ccc; font-weight: 700; position:relative; width:100%; height: 44px; line-height: 36px; font-size:20px; box-sizing:border-box; border: 1px solid #969096; padding: 2px 2px 2px 12px; margin: 0;}
.collapse-button {color:#fff; float: right; padding:4px 9px; border: 0px solid #aaa; border-radius:3px; cursor:pointer; box-sizing:border-box;}
.collapse-button:hover,.collapse-button:focus {background-color:#090; color:#fff;}
.collapse-button .icon-bar {background-color:#eee; display:block; height:3px; width:24px; margin:5px 0; font-size: 60px; border-radius:1px;}

/* 1. Menüebene */
ul.slimmenu {border: 1px solid #909699; border-top: 0; border-radius: 0;}
ul.slimmenu li {background: #505f53; display:block; width:100%; border:0; border-bottom: 1px solid #909699; box-sizing:border-box;}
ul.slimmenu li:first-child {border-top: 0;}
ul.slimmenu li:last-child {border-right: 0; border-bottom: 0;}

/* 2. Menüebene */
ul.slimmenu li ul {position:static; display:none; border: 0; border-top: 1px solid #909699;}
ul.slimmenu li ul li {background: #606f63; border: 0; border-top: 1px solid #909699; padding: 0; margin: 0;}

/* 3. Menüebene */
ul.slimmenu li ul li ul {background: #707f73; position:static; display:none; border:0; padding: 9px 0; margin: 0;}
ul.slimmenu li ul li ul li {background: #707f73; min-height: 0; left:0; top:0; border: 0;}
ul.slimmenu li ul li ul li:first-child {border: 0;}
ul.slimmenu li ul li ul li:last-child {top:0; left:0;}

/* Links */
ul.slimmenu li a {height: auto; min-height: 40px; display:block; box-sizing:border-box;}
ul.slimmenu li ul li a {min-height: 36px;}
ul.slimmenu li ul li ul li a {height: auto; min-height: 0;}
ul.slimmenu li a:hover {background-color:#405c50; border: 1px solid transparent;}
ul.slimmenu li:nth-child(4n) ul li.docs a, ul.slimmenu li:nth-child(4n) ul li.sdocs a {padding:6px 10px 6px 56px;}

/* Toggle buttons */
ul.slimmenu li .sub-toggle{height:40px;}
ul.slimmenu li:nth-child(4n) ul li .sub-toggle {background: #607c60; position:absolute; left: auto; left:0; top:0; z-index:998; width:46px; height:42px; text-align:center; border: 0px solid #ccc; border-radius: 0 0 15px 0; cursor:pointer;}
ul.slimmenu li:nth-child(4n) ul li .sub-toggle:before {content:''; display:inline-block; height:100%; vertical-align:middle;}
ul.slimmenu li:nth-child(4n) ul li .sub-toggle {display:inline-block; font-size:24px; color: #dcc; vertical-align:middle; text-align: center;}

/* Kennzeichnung der aktiven Seite */
ul.slimmenu li.sdoc, ul.slimmenu li.sdocs {background:#405c50;}
ul.slimmenu li ul li.sdoc, ul.slimmenu li ul li.sdocs {background:#405c50;}
ul.slimmenu li ul li ul li.sdoc, ul.slimmenu li ul li ul li.sdocs {background:#405c50;}
ul.slimmenu li:nth-child(4n) ul li .expanded {color: #fc0;}
}
