/* =============================================================================
 * reset & defaults
 * ========================================================================== */

/*     --reset
------------------------------------------------- */
* {margin: 0; padding: 0; border: 0; outline: 0; background-repeat: no-repeat; text-rendering: optimizeLegibility;}
#wrapper *, #styler-panel * {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
#colorbox *, #wrapper .mejs-container * {-webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box;}
ol, ul {list-style: none;}
table {border-spacing: 0;}
html {-webkit-font-smoothing: antialiased}
   
/*     --float classes
------------------------------------------------- */
.float-left {float: left;}
.float-right {float: right;}

/*     --lightbox link höhe
------------------------------------------------- */
.image_container a {line-height: 0;}

/*     --lightbox width
------------------------------------------------- */ 
#mbCenter img {width: auto; max-width: 100%; height: auto; vertical-align: middle;}

/*     --clearings + defaults
------------------------------------------------- */
.inside{position:relative;text-align:left}
.block{overflow:hidden}
.clear,#clear{height:0.1px;font-size:0.1px;line-height:0.1px;clear:both}
.invisible{width:0;height:0;left:-1000px;top:-1000px;position:absolute;overflow:hidden;display:inline}
.custom{display:block;text-align:left}
.custom:after{content:".";display:block;height:0;clear:both;visibility:hidden}
*+html #main{position:static}
header,footer,nav,section,aside,article,figure,figcaption{display:block}
#container:after {content: "\0020"; display: block; height: 0; clear: both; visibility: hidden;}

/*     --icon-font
------------------------------------------------- */
body[class^="icon-"]:before,
body[class*="icon-"]:before,
.ce_list[class^="icon-"]:before,
.ce_list[class*="icon-"]:before,
.mod_navigation li[class^="icon-"]:before,
.mod_navigation li[class*="icon-"]:before {content: '';}
.i-code {display: none;}

/*     --chromeframe
------------------------------------------------- */
#chromeframe {background: red; padding: 10px; color: #fff; text-align: center; position: relative; z-index: 10000;}

/*     --license-tracking
------------------------------------------------- */
#license-tracking {display: none;}


/* =============================================================================
 * columns for better content separation -responsive
 * ========================================================================== */

.full       		{overflow: hidden; margin-left: 0; width:100%; float:left;	position:relative;}
.one_half			{overflow: hidden; margin-left: 4%; width:48%; float:left; 	position:relative;}
.one_third			{overflow: hidden; margin-left: 5%; width:30%; float:left; position:relative;}
.two_third			{overflow: hidden; margin-left: 5%; width:65%; float:left; position:relative;} 
.one_fourth			{overflow: hidden; margin-left: 4%; width:22%; float:left; 	position:relative;}
.two_fourth			{overflow: hidden; margin-left: 4%; width:48%; float:left; 	position:relative;}
.three_fourth		{overflow: hidden; margin-left: 4%; width:74%; float:left; 	position:relative;}
.one_fifth			{overflow: hidden; margin-left: 5%; width:16%; float:left;	position:relative;}
.two_fifth			{overflow: hidden; margin-left: 4%; width:37%; float:left;	position:relative;}
.three_fifth		{overflow: hidden; margin-left: 4%; width:57%; float:left; 	position:relative;}
.four_fifth			{overflow: hidden; margin-left: 4%; width:79%; float:left; 	position:relative;}

.full.first, .one_fifth.first, .one_fourth.first, .two_fourth.first, .one_third.first, .two_fifth.first, .one_half.first, .three_fifth.first, .two_third.first, .three_fourth.first, .four_fifth.first { margin-left: 0!important; clear: left;}


/* =============================================================================
 * general styles & page setup
 * ========================================================================== */

a {color: #444; text-decoration: none;}
.link {color:#BD2532}

#main a[target="_blank"]::before {font-family: "icons"; content: "\e8f3"; display: inline-block; margin-right: 5px;color:#bd2532}

#main a.button[target="_blank"]::before {content: ""!important}

#main li a {color:#555;}
#main li a[target="_blank"]::before {margin-right:0;color:#555;content:""}
#main li a[target="_blank"]::after {color:#BD2532;font-family: "icons"; content: "\e8f3"; display: inline-block; margin-left: 5px;}

p {margin-bottom: 15px;}
blockquote {font-style: italic; font-size: 16px; margin-bottom: 20px;}
blockquote p {line-height: 22px;}
iframe {max-width: 100%;}
#container .image_container img {}
code, pre {font-family: monospace;}
hr {padding: 0; border: none; border-top: medium double #ddd; color: #ccc; text-align: center; height: 1px; margin: 25px 0;}

/*     --divider/border for ce_elements
------------------------------------------------- */
.border-top {border-top: 1px solid #ccc; padding-top: 20px;}
.border-bottom {border-bottom: 1px solid #ccc; padding-bottom: 20px;}

/*     --headlines
------------------------------------------------- */
h1, h2, h3, h4, h5, h6  {padding: 0.75em 0 0.8em; line-height: 1.6;font-family:  'Open Sans', sans-serif; font-weight: normal;}
h1 {color: #BD2532;font-size: 30px; border-bottom: 1px solid #EDEDED; margin-bottom: 0.4em; padding: 0 0 0.1em 0;}
h2 {font-size: 22px; padding:0.75 0 1em 0!important}
h3 {font-size: 20px;}
h4 {font-size: 18px;}
h5 {font-size: 13px;}
h6 {font-size: 12px;}

/*     --h1-h6 as divider
------------------------------------------------- */
.divider h1, .divider h2, .divider h3, .divider h4, .divider h5, .divider h6, h1.divider, h2.divider, h3.divider, h4.divider, h5.divider, h6.divider {background: url(../img/title-bg.png) repeat; text-align: center; line-height: 1.1em; margin-bottom: 30px; padding: 0 10px;}
.divider span {background: #fff; padding: 5px 10px;}
.divider_2 h1, .divider_2 h2, .divider_2 h3, .divider_2 h4, .divider_2 h5, .divider_2 h6, h1.divider_2, h2.divider_2, h3.divider_2, h4.divider_2, h5.divider_2, h6.divider_2 {background: url(../img/title-bg2.png) repeat-x left 59%; line-height: 1.6em; margin-bottom: 30px; border: 0;}
.divider_2 span {background: #fff; padding: 0 10px 0 0;}

/*     --body
------------------------------------------------- */
body {color: #555; overflow-x: hidden; background-repeat: repeat;}
body {background: #8b8b8b url(../img/bg_default.png); background-repeat:repeat-x}
body {font-family: 'Open Sans', sans-serif; font-size: 13px; line-height: 19px;}

/*     --page-width layout_boxed
------------------------------------------------- */
#top-container .inside, #header .inside, #container-inside, #footer .inside {width: 1200px; margin: 0 auto;}
#wrapper {width: 1200px; margin: 0 auto;}
body#container-inside {padding: 30px;}

/*     --top
------------------------------------------------- */
#top-container {background: #fff;}

/*     --shadow-top
------------------------------------------------- */
#header #shadow-top {position: absolute; left: 0; top: 0; z-index: 1000; display: none;}
#header #shadow-top, .home #header #shadow-top {display: block;}
#shadow-top {width: 100%;}


/*     --header
------------------------------------------------- */
#header {position: relative; z-index: 10;}
#header .ce_gallery {overflow: visible;}
#header .mod_article {overflow: visible;}

/*     --header-image
------------------------------------------------- */
#header .image_container {margin: 0;}

#slider {margin-bottom:25px}
#slider .rsts-skin-default .rsts-nav {
    right: 20px!important;
	bottom:8px!important;
}
#slider .rsts-skin-default .rsts-nav-bullets a {
    border-radius:0%!important;
    box-shadow: none!important;
    display: inline-block;
    height: 14px;
	 width:14px;
    margin: 12px 6px;
}
.rsts-skin-default .rsts-nav-bullets a:hover, .rsts-skin-default .rsts-nav-bullets a.active {
    background-color: #BD2532!important;
}
/*     --mod_breadcrumb
------------------------------------------------- */
.mod_breadcrumb {position: absolute; width: 100%; bottom: -50px; left: 0; border-bottom: 1px solid #ddd; border-top: 1px solid #ddd; padding: 4px 0; color: #5e5e5e; font-size: 11px;}
.mod_breadcrumb li {float: left; margin-right: 5px; white-space: nowrap;}
.mod_breadcrumb li:before {font-family: "icons"; content: '\ea08'; margin-right: 5px;}
.mod_breadcrumb li.first:before {display: none;}
.mod_breadcrumb a {color: #5e5e5e;}
body.mod_breadcrumb {padding-left: 30px;}

/*     --container
------------------------------------------------- */
#container {clear: both; background: #fff url(../img/bg_main.png) repeat-x; padding-top: 70px; padding-bottom: 35px; margin: 0 auto; position: relative;}
body.layout_full #container {padding-top: 70px;}
body#container {padding-top: 30px;}


/* =============================================================================
 * sidebars
 * ========================================================================== */

/*     --sidebar_left
------------------------------------------------- */
body #main {overflow: hidden; width:73%; padding-right:25px;float:left; }
body #left {overflow: hidden; padding-left:25px; padding-right: 5%; width:27%; float:left; position:relative;}

/* =============================================================================
 * footer
 * ========================================================================== */

#footer {color:#888;background: #383838; margin-top: 20px; font-size: 12px; line-height: 18px;}
#footer .inside {padding: 20px;}
#footer h4 {
	margin:0;padding:10px 0 10px 0;
	color:#fff;
}
#footer a {color:#888;text-decoration:underline}

/* =============================================================================
 * home header-images
 * ========================================================================== */

.headerpic_1 {width: 68%; float: left; margin: 1% 0; -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none;}
.headerpic_2 {width: 31%; float: right; margin: 1% 0; -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none;}
.headerpic_3 {width: 31%; float: right; -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none;}
.headerpic_transparent {-moz-box-shadow: none!important; -webkit-box-shadow: none!important; box-shadow: none!important;}


/* =============================================================================
 * menues
 * ========================================================================== */
 /*     --logo
------------------------------------------------- */
#logo {width:27%;padding:20px 6% 20px 25px;margin:0;}
body#logo {padding: 20px;}
body.no_header #logo {padding: 20px 0;}

#links {position:absolute;top:20px;right:25px;text-transform:uppercase}

/*     --mainmenue
------------------------------------------------- */
nav#mainmenu {width:73%;z-index:1000;position:absolute;top:125px;right:0;overflow: visible!important; line-height: 0;}
nav#mainmenu ul {position:absolute;border-right:25px solid #fff;background: url(../img/bg_main_menu.png) repeat;position: relative; display: inline-table;	width: 100%; white-space:nowrap;}
nav#mainmenu ul ul {width: auto; display: none;}
nav#mainmenu ul:after {content: ""; clear: both; display: block;}
nav#mainmenu ul li {position:relative;float: left;}
nav#mainmenu ul li:hover > ul {display: block;}
nav#mainmenu ul li a {padding:15px 40px;color: #fff;font-size:1.2em;text-transform:uppercase;display: block; text-decoration: none; position: relative; line-height: 24px; border-right:1px solid #000}
nav#mainmenu ul li a.first {border-top: 0;}
nav#mainmenu ul li a:hover {}
nav#mainmenu ul ul {border-right:0;font-size: 12px;background: #262626;border-radius: 0px; padding: 0; position: absolute; top: 100%;right:0}
nav#mainmenu ul ul li {float: none; position: relative;}
nav#mainmenu ul ul li a {padding: 7px 20px 7px 20px; border-bottom: 1px solid #ccc; line-height: 24px;}	
nav#mainmenu ul ul ul {position: absolute; left: 100%; top:0;}
nav#mainmenu ul a:before {line-height: 24px!important; width: 20px!important}
nav#mainmenu ul a.trail,
nav#mainmenu ul a.active,
nav#mainmenu ul a:hover {color: #fff;}
nav#mainmenu ul ul li a:hover, nav#mainmenu ul ul li a.active {border-right: 1px solid #BD2532;}
#dropdown li a:hover, #dropdown li a.active, #dropdown li a.trail, #dropdown ul li a:hover, #dropdown ul li a.trail, #dropdown ul li a.active, #dropdown ul li.active a {background: #BD2532;}

/*     --submenu-sidebar
------------------------------------------------- */
#submenu {margin-bottom: 60px;}
#submenu a {font-size:1.1em;text-transform:uppercase;display: block; padding: 10px 10px; margin-bottom: 2px; border-bottom: 1px solid #ddd;}
#submenu li ul li {border: 0;}
#submenu ul ul {margin-left: 12px; margin-top: 5px;}
#submenu ul ul li {padding: 0;}
#submenu a:hover, #submenu a.active, #submenu span {color: #BD2532;background: #eee;}

#submenu ul li.active > ul, #submenu ul li.trail > ul{ display: block;}

#submenu ul ul {display: none;}
#submenu ul ul ul {display: none;}
#submenu ul ul ul ul {display: none;}
#submenu h2, #kontaktbox h2 {height:50px;font-size:1.4em;text-transform:uppercase;padding:10px 10px;color:#fff;background:url(../img/bg_subnav_headline.png) repeat-x}
/*     --hide mobilmenue
------------------------------------------------- */
.selectnav {display: none;}
#mobnav {display: none!important;}

#kontaktbox {margin-bottom:50px;border: 1px solid #ddd;}
#kontaktbox .tel {margin-top:7px;font-size:1.4em;}
#kontaktbox .tel:before {
	color:#bd2532;
    content: "\f098";
    display: inline-block;
    font-family: "icons";
    font-size: 30px;
    font-style: normal;
    font-weight: normal;
    line-height: 1em;
    text-align: center;
    text-decoration: inherit;
    width: 1em;
	padding-right:10px;
}
#kontaktbox p {margin:0;padding:10px 0 10px 10px}
#kontaktbox .termine {text-transform:uppercase;background:#bd2532;color:#fff;font-weight:bold}
#kontaktbox hr {margin:5px 8px!important}
#kontaktbox .link {padding-top:0;width:100%;padding-right:10px;text-align:right}
#kontaktbox .link a{color:#bd2532!important;}

/* =============================================================================
 * features + contao modules
 * ========================================================================== */

/*     --back links
------------------------------------------------- */
.back a:before {font-family: "icons"; content: '\e881'; margin-right: 5px;}

/*     --table_simple
------------------------------------------------- */
table {margin-bottom: 10px; border-bottom: solid 3px #E3E3E3; width: 100%;}
table td {border-top: solid 1px #E3E3E3; padding: 0.5em; text-align: left;}
table td p {margin: 0;}
table th {text-align: left; padding: 0.5em;}

/*     --table_extended
------------------------------------------------- */
.table-extended table {text-align: center; color: #666; font-size: 12px; text-shadow: 1px 1px 0px #fff; border: 1px solid #e0e0e0;}
.table-extended table td {border-bottom: 1px solid #e0e0e0; border-left: 1px solid #e0e0e0; border-top: 1px solid #ffffff; background: #fafafa;}
.table-extended table th {border-bottom: 1px solid #e0e0e0; border-top: 1px solid #fafafa; background: #ededed;}
.table-extended table th.col_first {text-align: left;}
.table-extended table tr.odd td {background: #f6f6f6;}
.table-extended table td.col_first {text-align: left; border-left: 0;}
.table-extended table .row_last td {border-bottom: 0;}
.table-extended table td:hover {background: #ddd!important;}
.table-extended table td {-webkit-transition:all .4s ease-in-out; -o-transition:all .4s ease-in-out; -moz-transition:all .4s ease-in-out; transition:all .4s ease-in-out;}

/*     --ce_gallery with responsive grid
------------------------------------------------- */
.ce_gallery .row1	{overflow: hidden; margin-left: 0; width:100%; float:left; margin-bottom: 15px;}
.ce_gallery .row2	{overflow: hidden; margin-left: 4%; width:48%; float:left; margin-bottom: 15px;}
.ce_gallery .row3	{overflow: hidden; margin-left: 5%; width:30%; float:left; margin-bottom: 15px;}
.ce_gallery .row4	{overflow: hidden; margin-left: 4%; width:22%; float:left; margin-bottom: 15px;}
.ce_gallery .row5	{overflow: hidden; margin-left: 5%; width:16%; float:left; margin-bottom: 15px;}
.ce_gallery .row6	{overflow: hidden; margin-left: 2%; width:15%; float:left; margin-bottom: 15px;}
.ce_gallery .row7	{overflow: hidden; margin-left: 1.5%; width:13%; float:left; margin-bottom: 15px;}
.ce_gallery .row8	{overflow: hidden; margin-left: 1.71%; width:11%; float:left;	position:relative;}
.ce_gallery .row9	{overflow: hidden; margin-left: 1.25%; width:10%; float:left;	position:relative;}
.ce_gallery .row10	{overflow: hidden; margin-left: 1%; width:9.1%; float:left;	position:relative;}
.ce_gallery .row11	{overflow: hidden; margin-left: 1.1%; width:8.09%; float:left;	position:relative;}
.ce_gallery .row12	{overflow: hidden; margin-left: 1%; width: 7.41%; float:left;	position:relative;}

.ce_gallery .col_first {margin-left: 0!important; clear: both;}

.ce_gallery img {width: 100%; display: block; height: auto;}
.ce_gallery li a img:hover {-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; opacity:.5;}
.ce_gallery li a img {-webkit-transition:all .2s ease-in-out;	-o-transition:all .2s ease-in-out;	-moz-transition:all .2s ease-in-out; transition:all .2s ease-in-out;}
.ce_gallery .caption {letter-spacing: 0; word-spacing: 0; font-size: 12px; line-height: 16px;}

/* special classes for ce_gallery */
.ce_gallery.image-border img {border: 1px solid #ddd;}
.ce_gallery.opacity img {-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; opacity: 0.7;}
.ce_gallery.opacity img:hover {-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; opacity: 1;}

/*     --image_container
------------------------------------------------- */
.image_container {position: relative; padding: 0; margin-bottom: 10px;}
.image_container .caption {background: #888; color: #fff; padding: 3px 6px; width: auto!important; font-size: 11px; position: absolute; right: 0; bottom: 0; width: auto!important;}
.image_container.float_right, .image_container.float_left {float: right; width: 45%; padding: 0; margin-bottom: 3%;}
.image_container.float_right {margin-left: 5%;}
.image_container.float_left {margin-right: 5%;}
.noresize .image_container {margin: 0!important; width: auto!important}

/*     --list
------------------------------------------------- */
.ce_text ul, .ce_list ul, .ce_text ol, .ce_list ol {margin-bottom: 15px;}
.ce_text li, .ce_list li, .ce_text ol, .ce_list ol {line-height: 1.5em;}
.ce_text ol, .ce_list ol {list-style: decimal; padding-left: 25px;}
.ce_text ol ol, .ce_list ol ol {list-style: upper-alpha;}
.ce_text ol ol ol, .ce_list ol ol ol {list-style: lower-roman;}

.ce_list ul li, .ce_text ul li {list-style-type: none; position: relative;}
.ce_list ul li:before, .ce_text ul li:before {position: absolute; left: -25px; width: 25px; top: 3px;}
.ce_list ul, .ce_text ul {padding-left: 25px;}

/*     --blockquote
------------------------------------------------- */
.blockquote-a {padding-left: 35px; position: relative;}
.blockquote-a p{text-align: justify; font-family: Georgia, Times, serif; font-size: 13px; font-style: italic; line-height: 20px;}
.blockquote-a:before {font-family: "icons"; content: "\275e"; text-indent: 0; display: inline-block; position: absolute; top: 0px; left: 0; margin-right: 5px; font-style: normal; font-size: 25px;}
.blockquote-b {padding-left: 35px; position: relative;}
.blockquote-b {font-size: 17px; line-height: 24px;}
.blockquote-b:before {font-family: "icons"; content: "\275c"; text-indent: 0; display: inline-block; position: absolute; top: 0px; left: 0; margin-right: 5px; font-style: normal; font-size: 25px;}

/*     --ce_comments
------------------------------------------------- */
.ce_comments .widget {margin-bottom: 10px;}

	/*     --dropcaps
------------------------------------------------- */
.dropcap-red p:first-letter  {font-size: 48px; float: left; display:block; margin:0 7px 0 0; line-height: 1; color: #8C2626;}
.dropcap-blue p:first-letter  {font-size: 48px; float: left; display:block; margin:0 7px 0 0; line-height: 1; color: #26738C;}
.dropcap-grey p:first-letter  {font-size: 48px; float: left; display:block; margin:0 7px 0 0; line-height: 1; color: #9B9B9B;}
.dropcap-black p:first-letter  {font-size: 48px; float: left; display:block; margin:0 7px 0 0; line-height: 1; color: #000;}

	/*     --hyperlinks + forms submit buttons
------------------------------------------------- */
.button, input[type="submit"], input.submit {font-size:1.1em!important;background: #BD2532!important;color: #fff!important; font-weight: normal; text-shadow: -1px -1px 1px rgba(0,0,0, 0.25); padding: 10px 12px!important; text-align: center; display: inline-block; margin-bottom: 18px; -webkit-box-shadow: 0 2px 2px rgba(0,0,0, 0.2), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12); -moz-box-shadow: 0 2px 2px rgba(0,0,0, 0.2), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12); box-shadow: 0 2px 2px rgba(0,0,0, 0.2), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12); cursor: pointer;}
.button:hover, input[type="submit"]:hover, input.submit:hover {background:#BD2532;color: #fff; text-decoration: none; -webkit-box-shadow: 0 2px 1px rgba(0,0,0, 0.2), inset 0 1px 1px rgba(255,255,255, 0.5), inset 0 10px 20px rgba(255,255,255, 0.20), inset 0 -10px 20px rgba(0,0,0, 0.12); -moz-box-shadow: 0 2px 1px rgba(0,0,0, 0.2), inset 0 1px 1px rgba(255,255,255, 0.5), inset 0 10px 20px rgba(255,255,255, 0.20), inset 0 -10px 20px rgba(0,0,0, 0.12);    box-shadow: 0 2px 1px rgba(0,0,0, 0.2), inset 0 1px 1px rgba(255,255,255, 0.5), inset 0 10px 20px rgba(255,255,255, 0.20), inset 0 -10px 20px rgba(0,0,0, 0.12);}
.button:active, input[type="submit"]:active, input.submit:active {background:#BD2532;-webkit-box-shadow: inset 0 2px 2px rgba(0,0,0, 0.3), inset 0 10px 20px rgba(0,0,0, 0.08); -moz-box-shadow: inset 0 2px 2px rgba(0,0,0, 0.3), inset 0 10px 20px rgba(0,0,0, 0.08); box-shadow: inset 0 2px 2px rgba(0,0,0, 0.3), inset 0 10px 20px rgba(0,0,0, 0.08);}


/* icons */
.button.large[class^="icon-"]:before, .button.large[class*=" icon-"]:before {font-size: 33px; line-height: 33px; margin-right: 0.5em; vertical-align: middle;}
.button[class^="icon-"]:before, .button[class*=" icon-"]:before {margin-right: 0.6em;}

#portfolio .one_third {margin-bottom:30px;}
#portfolio .image_container {max-height:117px; margin-bottom:0px}
#portfolio img {height:100%}
#portfolio .one_third h2 {height:100%;width:50%;position:absolute;top:0;left:0;background:#BBB;z-index:50;color:#fff;font-size: 20px; line-height:25px;display: block; padding:10px 10px 0 10px; 
-webkit-box-shadow: 0 2px 2px rgba(0,0,0, 0.2), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12); -moz-box-shadow: 0 2px 2px rgba(0,0,0, 0.2), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12); box-shadow: 0 2px 2px rgba(0,0,0, 0.2), inset 0 1px 0 rgba(255,255,255, 0.35), inset 0 10px 20px rgba(255,255,255, 0.12), inset 0 -10px 30px rgba(0,0,0, 0.12);}
#portfolio h2:hover {background:#BD2532;}

.product {margin-top:30px;border:1px solid #ddd}
.product h3 {background:#ddd;padding:5px 10px}
.product p {padding:5px 10px}
.product img {width:100%;height:auto}
.product a {color:#BD2532}
.product .button {float:right;margin-bottom:10px}

/*     --mod_sitemap
------------------------------------------------- */
.mod_sitemap ul ul {margin-left: 15px;}
.mod_sitemap ul li {border-bottom: 1px dashed #ddd; padding-bottom: 15px; margin-bottom: 15px; font-weight: normal;}
.mod_sitemap ul li ul li {border: 0; padding-bottom: 0px; margin-bottom: 3px;}
.mod_sitemap li.submenu {font-weight: bold;}

/*     --mod_faqlist
------------------------------------------------- */
.mod_faqpage {counter-reset: mod_faqpage;}
.mod_faqpage h2 {margin-bottom: 20px;}
.mod_faqpage section h3::before {counter-increment: mod_faqpage; content: counter(mod_faqpage, decimal); display: inline-block; width: 7%; margin-right: 0.5em; padding: 0.1em; color: white; text-align: center; background: #ddd;}
.mod_faqpage section {margin-bottom: 35px;}
.mod_faqpage .info {font-size: 11px;}
.mod_faqpage .info:before {font-family: "icons"; content: "\e82f"; text-indent: 0; display: inline-block; position: relative; top: 0px; left: 0; margin-right: 5px;}
.mod_faqpage .toplink {border-bottom: 1px solid #ddd;}
.mod_faqpage .toplink:before {font-family: "icons"; content: "\e911"; text-indent: 0; display: inline-block; position: relative; top: 0px; left: 0; margin-right: 5px;}



.mod_search input {border-radius:0!important;width: 45%!important; float: left;}
.mod_search input[type="search"] {-webkit-appearance: textfield!important; margin-right: 20px!important; padding-right: 0!important;}
.mod_search .even, .mod_search .odd {padding-bottom: 15px; border-bottom: 1px solid #ddd; margin-bottom: 15px;}
.mod_search .relevance {float: right; font-size: 12px;}
.mod_search .submit:before {font-size: 16px; line-height: 1em; font-family: 'icons';  font-style: normal;  font-weight: normal;  speak: none;  display: inline-block;  text-decoration: inherit;  width: 1em; text-align: center; content: '\e92a';}
.mod_search .submit {color:#fff;border-radius:0!important;background:#BD2532;margin: 0; padding: 5px; display: inline-block; height: 30px; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; opacity: 1;}
.mod_search .submit:hover {opacity: 0.7;}
#container .mod_search .submit {height: 34px;}
#container .mod_search form {overflow: hidden;}

#top .mod_search {width:210px!important;position: absolute; right: 25px; top:60px; z-index: 50;}
#top .mod_search input[type="search"] {width: 175px!important; margin: 0!important; height: 30px; border: 0; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; opacity: 0.8;background:#ccc}
#top .mod_search .submit {border:0!important;width:35px}


/*     --mod_nl_reader
------------------------------------------------- */
.mod_nl_reader table {border: 0!important;}
.mod_nl_reader table td {padding: 0; border: 0!important;}

/*     --mod_nl_list
------------------------------------------------- */
.mod_nl_list li {border-bottom: 1px solid #ededed; padding: 15px 0;}
.mod_nl_list li a {margin-left: 40px;}

/*     --404 page
------------------------------------------------- */
#page-404 h1 {font-size: 120px; text-align: center; text-shadow: 0 -1px 1px #666666, 0 1px 1px #FFFFFF; color: #ccc; border: 0; margin: 0;}
#page-404 p {text-transform: uppercase; font-size: 20px; text-align: center;}
#page-404 p a {text-transform: none; margin: 0;}

/*     --video
------------------------------------------------- */
.ce_video_custom {position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;}
.ce_video_custom iframe, .ce_video_custom object, .ce_video_custom embed {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

/*     --ce_downloads
------------------------------------------------- */
.ce_downloads p {border-bottom: 1px dotted #ccc; padding-bottom: 15px;}
.ce_downloads img {margin-right: 20px; vertical-align: middle;}
.ce_downloads p span {font-style: italic; font-size: 10px;}

/* =============================================================================
 * forms
 * ========================================================================== */

/*     --input-wrapper
------------------------------------------------- */
.input-wrapper {margin-bottom: 12px; position:inherit!important}
.input-wrapper * {width: 99.9%!important; margin-left: 0!important;}
.ce_form .full {width: 99.9%;}

/*     --fieldset+legend
------------------------------------------------- */
fieldset {border: 1px solid #ccc; padding: 0.5em; margin-bottom: 20px;}
.dark fieldset {border: 1px solid #222222;}
legend {display: none;}

/*     --input, select, textarea
------------------------------------------------- */
input, select, textarea {width: 100%; padding: 10px; margin: 0; border: 1px solid #ccc; color: #333; background: #fff; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: inset 0px 0px 1px 1px #ddd; box-shadow: inset 0px 0px 1px 1px #ddd;}
input[type="search"] {-webkit-appearance: none; border-radius: 0;}
select {height: 35px; padding: 8px;}
textarea {height: 200px;}

/*     --radio-buttons
------------------------------------------------- */
.radio_container {margin-top: 1px;}
.radio_container legend span {margin-bottom: 5px; display: inline;}
.radio_container label {float: none;}
.radio_container input {width: 20px; border: none; padding: 0; box-shadow: none; -webkit-box-shadow: none;}
.radio_container legend {display: block; overflow: hidden;}
.radio_container span {display: block;}

/*     --checkboxes
------------------------------------------------- */
.checkbox_container {margin-top: 1px;}
.checkbox_container legend span {margin-bottom: 5px; display: inline;}
.checkbox_container label {float: none;}
.checkbox_container input {width: 20px!important; border: none!important; padding: 0; box-shadow: none; -webkit-box-shadow: none;}
.checkbox_container legend {display: block; overflow: hidden;}
.checkbox_container span {display: block;}

/*     --submit-button
------------------------------------------------- */
.submit_container {margin-top: 20px;}
.submit_container input {width: auto!important;}
.submit {-webkit-appearance:none;}

/*     --errors
------------------------------------------------- */
label.error {color: red;}
input.error {border: 1px solid red;}
p.error {color: red; clear: both;}

/*     --captcha
------------------------------------------------- */
.ce_form .captcha {width: 20%; float: left; margin-right: 2%;}
.ce_form .captcha_text {width: 70%; float: left; line-height: 33px;}
.ce_form .captcha-container {background: #ecd0d0; padding: 2%;}



/* fullsize background-image */
body.bg_full {background-image: url(../img/backgrounds/bg_full.jpg); -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; background-attachment: fixed; background-position: center top; background-repeat: repeat;}
body.bg_full2 {background-image: url(../img/backgrounds/bg_full2.jpg); -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; background-attachment: fixed; background-position: center top; background-repeat: repeat;}
body.ie8.bg_full, body.ie8.bg_full2 {background-repeat: no-repeat; background-position: top center;}


/* =============================================================================
 * media-queries
 * ========================================================================== */

/*     --tablets
------------------------------------------------- */
@media only screen and (max-width: 1200px) {
	/* body */
	body {padding: 0;}
	body.header {background: none!important;}

	#top-container {width:100%!important}
	nav#mainmenu {
		top:60%;
	}
	nav#mainmenu ul li a {padding:15px 30px}
	/* width */
	#top-container .inside, #header .inside, #footer .inside, body#container, .welcome-line .inside {width: 100%!important;}
	#container {width: 100%;}
	#container-inside {width: 100%!important;; padding: 0;}	
	#wrapper {width: 100%;}
	
	/* logo */
	#logo img {width:100%}

	/* mod_breadcrumb */
	.mod_breadcrumb {padding: 4px 20px;}

	/* footer */
	#footer {padding: 0 20px; margin: 0;}
	
}

@media only screen and (max-width: 1040px) {
	nav#mainmenu ul li a {padding:13px 15px!important}
	#submenu h2, #kontaktbox h2 {
		font-size: 1.2em;
		height: 40px;
	}
	#kontaktbox .tel {font-size: 1.1em}
	#portfolio .one_third h2 {font-size:14px; padding:10px}
}
@media only screen and (max-width: 940px) {
	#footer .one_fourth {display:none}
	#footer .three_fourth {width:100%;margin-left:0} 
}
@media only screen and (max-width: 885px) {
	nav#mainmenu ul li a {padding:10px 10px!important}
	#top .mod_search {
		top: 43px;
	}	
}
/*     --phones
------------------------------------------------- */
@media only screen and (max-width: 767px) {
	/* body */
	body {padding: 0;}
	body.header {background: none!important;}
	/* wrapper */
	#wrapper {width: 100%;}
	#left {display:none}
	#main {width:100%!important}
	#main {padding-right:0!important}
	/* container */
	#container {padding-top: 0px!important;}
	body.home #container {padding-top: 20px!important;}
	#container-inside {padding: 20px!important;}
	
	/* header */
 	#header {display: none;}
 	body.home #header {display: block;}
 	
	/* logo */
	#logo {text-align: center; width:225px!important;}
	
	/* hotline */
	#hotline {display: none;}
		
	/* shadow-top */
	#shadow-top {display: none!important;}
	
	/* menu + mobilemenu */
	#mainmenu {display: none;}
	#submenu {display: none;}
	#mobnav, .selectnav {display: inline-block;}
	.selectnav {width: 100%;}
	
	/* sidebar */
	body.sidebar_left #main,
	body.sidebar_left #left,
	body.sidebar_right #main,
	body.sidebar_right #right,
	body.sidebar_both #main,
	body.sidebar_both #left,
	body.sidebar_both #right {width: 100%; margin: 0;}
	
	body.sidebar_left #main .inside,
	body.sidebar_left #left .inside,
	body.sidebar_right #main .inside,
	body.sidebar_right #right .inside,
	body.sidebar_both #main .inside,
	body.sidebar_both #left .inside,
	body.sidebar_both #right .inside {width: 100%; float: none; padding: 0; border: 0; margin: 0;}
 	#right {margin-top: 15px!important; padding-top: 15px; border-top: 4px solid #ddd;}
 	#left {margin-bottom: 15px!important; padding-bottom: 15px; border-bottom: 4px solid #ddd;}
 	
 	/* image_container */
 	.image_container {margin-bottom: 10px; width: 100%; padding: 0; margin: 0 0 10px 0; float: none;}
 	
 	/* ce_text */
 	#main .ce_text {margin-bottom: 10px!important; width: 100%;}
 	
 	/* ce_headline */
 	.ce_headline {margin-top: 0!important;}
 	
 	/* footer */
 	#footer .inside {padding: 0px;}

 	/* disable webkit text size adjust (for iPhone) */
 	html {-webkit-text-size-adjust: none;} 
 	
 	/* tables */
 	table {font-size: 9px;}
 	
	
	/* mobnav */
  	.js #mobnav { display: none; }
  	.js .selectnav { display: block; margin-bottom: 10px;}
  	#dropdown {display: none!important;}

  	/* headlines */
  	h1 {font-size: 24px; margin-bottom: 15px;}
	h2 {font-size: 20px; margin-bottom: 15px;}
	h3 {font-size: 18px; margin-bottom: 10px;}
	h4 {font-size: 16px; margin-bottom: 10px;}
	h5 {font-size: 13px; margin-bottom: 10px;}
	h6 {font-size: 12px; margin-bottom: 10px;}
	
	
	/* mod_subscribe */
	.mod_subscribe input {width: 100%; margin-bottom: 10px;}
	
	/* mod_registration */
	.mod_registration label, .mod_registration input, .mod_registration .submit_container input, .mod_registration .captcha_text {width: 100%; margin: 0;}
	.mod_registration .captcha_text {margin: 5px 0 15px 0;}
	.mod_registration p.error {margin-left: 0;}
	
	/* forms */
	form label {margin-bottom: 2px!important;}
	form .captcha_text {line-height: 1em;}
	
	/* video button */
	.mejs-overlay-button {display: none!important;}
 }

@media only screen and (max-width: 500px) {
	/* top search */
	#top .mod_search, #slider {display: none;}
	
 	/* css-framework */
	.full, .one_half, .one_third, .two_third, .one_fourth, .two_fourth, .three_fourth, .one_fifth, .two_fifth, .three_fifth, .four_fifth {width: 100%; margin: 0 0  15px 0;}
	
}
/* =============================================================================
 * font-icons
 * ========================================================================== */

@font-face {font-family: 'icons'; src: url("../font/icons.eot"); src: url("../font/icons.eot?#iefix") format('embedded-opentype'), url("../font/icons.woff") format('woff'), url("../font/icons.ttf") format('truetype'), url("../font/icons.svg#icons") format('svg'); font-weight: normal;  font-style: normal;}

/*     --set default icon not to mod_navigation <li>
------------------------------------------------- */
.mod_navigation li:before {content:''!important; margin-right: 0px!important;}

/*     --icons
------------------------------------------------- */
.ce_list ul li:before, .ce_text ul li:before {content:'\ea04';}
.ce_list.type2 ul li:before, .ce_text.type2 ul li:before  {content:'\e935';}
.ce_list.type3 ul li:before, .ce_text.type3 ul li:before  {content:'\2605';}


i[class^="icon-"]:before,
i[class*="icon-"]:before,
.mod_navigation li[class^="icon-"] a:before,
.mod_navigation li[class*="icon-"] a:before,
.mod_navigation li[class^="icon-"] span:before,
.mod_navigation li[class*="icon-"] span:before,
#footer a[class^="icon-"]:before,
#footer a[class*="icon-"]:before,
.ce_headline[class^="icon-"]:before,
.ce_headline[class*="icon-"]:before,
.ce_list ul li:before,
.ce_text ul li:before,
.button[class^="icon-"]:before,
.button[class*="icon-"]:before,
.servicebox[class^="icon-"]:before,
.servicebox[class*="icon-"]:before,
#footer li[class^="icon-"]:before,
#footer li[class*="icon-"]:before{
  font-family: 'icons';
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  margin-right: 0.5em;
  text-align: center;
  line-height: 1em;
}


