/*----------------------------------------------------------------------------------------------------*/
/*   basic definitions   */
/*----------------------------------------------------------------------------------------------------*/

body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address,
cite, code, del, details, 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, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	background: transparent;
	border: 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 100%;
	margin: 0;
	padding: 0;
	outline: 0;
	vertical-align: baseline;
}

article, aside, details, figure, footer, header, hgroup, nav, section {
	display: block;
}

img {
	display: block;
	height: auto;
	max-width: 100%;
}

body {
	background: #fff;
	color: #333;
	font: 100% "Myriad Pro", PTSansCaptionRegular, Arial, Helvetica, sans-serif;
	hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	line-height: 140%;
}

h1 {
	border-bottom: 1px solid #2a3336;
	clear: both;
	color: #2a3336;
	font-size: 2em;
	font-weight: lighter;
	line-height: 1em;
	margin: 0 0 20px 0;
	padding: 30px 0 0 0;
}
h2 {
	border-bottom: 1px solid #2a3336;
	color: #2a3336;
	font-size: 1.7em;
	font-weight: lighter;
	line-height: 1em;
	margin: 0 0 10px 0;
	padding: 30px 0 0 0;
}
h3 {
	color: #2a3336;
	font-size: 1.3em;
	font-weight: lighter;
	line-height: 1em;
	margin: 0 0 10px 0;
	padding: 20px 0 0 0;
}
.left {
	text-align: left;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.top {
	vertical-align: top;
}
.bold {
	font-weight: bold;
}
.clearer {
	clear: both;
	height: 1px;
	width: 1px;
}
.comment {
	font-size: 10px;
	line-height: 14px;
}
a:link, a:visited {
	color: #333;
}
a:hover {
	text-decoration: none;
}
a[href^="tel"]:link, a[href^="tel"]:visited, a[href^="tel"]:hover {
	text-decoration: none;
}
#disclaimer_old {
	background: #fff;
	color: #c10122;
	padding: 5px;
	position: absolute;
	text-align: center;
	top: 0;
	width: 100%;
}
#disclaimer_old a:link, #disclaimer_old a:visited {
	color: #c10122;
}


/*----------------------------------------------------------------------------------------------------*/
/*   wrapper / logo   */
/*----------------------------------------------------------------------------------------------------*/

.wrapper {
	margin: 0 auto;
	width: 1000px;
}
#wrapper_logo {
	background-color: #fff;
	margin: 60px 0 0 0;
	overflow: hidden;
	width: 100%;
}
#logo {
	display: block;
	float: left;
	height: 140px;
	margin: 20px auto;
	width: 555px;
}
#logo_bosch {
	float: right;
	height: 130px;
	margin: 25px 0 0 0;
	width: 140px;
}
#logo_bosch img {
	width: 100%;
}

#wrapper_tab {
	background: #fff;
	border-bottom: 20px solid #333;
	display: table;
	width: 100%;
}
#wrapper_main {
	border: none;
	clear: both;
	margin: 0;
	min-height: 600px;
	padding: 10px 0 40px 0;
}
#wrapper_main ol, #wrapper_main ul {
	margin: 0 0 18px 40px;
}
#wrapper_main ol li, #wrapper_main ul li {
	margin: 0 0 15px 0;
}
#wrapper_top {
	display: table-header-group;
	width: 100%;
}
#wrapper_top_table {
	border-bottom: 2px solid #333;
	border-top: 2px solid #333;
}

/*----------------------------------------------------------------------------------------------------*/
/*   content   */
/*----------------------------------------------------------------------------------------------------*/

#wrapper_main .content_status {
	font-size: 12px;
	margin: 0;
}
#wrapper_main .fb-like {
	float: right;
}
#wrapper_main .content_menu {
	display: table;
	font: 400 16px/20px 'Vegur';
	margin: 20px auto;
	overflow: hidden;
}
#wrapper_main .content_menu_item {
	display: table-cell;
	padding: 2px;
	vertical-align: top;
	width: 200px;
}
#wrapper_main .content_menu_item_div {
	border: 1px solid #eee;
	text-align: center;
}
#wrapper_main .content_menu_item_div_inv {
	background: #c10122;
	border: 1px solid #c10122;
	color: #fff;
	text-align: center;
}
#wrapper_main .content_menu_item_div img, #wrapper_main .content_menu_item_div_inv img {
	margin: 0;
	width: 100%;
}
#wrapper_main .content_menu_item_div:hover {
	background: #c10122;
	border: 1px solid #c10122;
}
#wrapper_main .content_menu_item a:link, #wrapper_main .content_menu_item a:active, #wrapper_main .content_menu_item a:visited {
	text-decoration: none;
}
#wrapper_main .content_menu_item a:hover {
	color: #fff;
}
#wrapper_main .content_menu_titel {
	border: none;
	padding: 3px;
}
#wrapper_main .content_block {
	overflow: hidden;
	padding: 10px 0 0 0;
}
#wrapper_main .content_div_text, #wrapper_main .content_div_image_center {
	margin: 3px 0 3px 0;
	padding: 0;
	text-align: center;
	width: 100%;
}
#wrapper_main .content_div_image_center img {
	width: 100%;
}
#wrapper_main .content_div_image_center_titel {
	text-align: center;
	width: 100%;
}
#wrapper_main .content_div_text {
	text-align: left;
}
#wrapper_main .content_div_text_left {
	float: left;
	padding: 0 0 2% 0;
	text-align: left;
	width: 65%;
}
#wrapper_main .content_div_text_right {
	float: right;
	text-align: left;
	width: 65%;
}
#wrapper_main .content_div_image_left {
	float: left;
	padding: 0 0 2% 0;
	text-align: left;
	width: 33%;
}
#wrapper_main .content_div_image_right {
	float: right;
	text-align: right;
	width: 33%;
}
#wrapper_main .content_div_image_left.h2, #wrapper_main .content_div_image_right.h2 {
	padding: 32px 0 0 0;
}
#wrapper_main .content_div_image_left.h3, #wrapper_main .content_div_image_right.h3 {
	padding: 20px 0 0 0;
}

#wrapper_main .content_div_image {
	margin: 0;
	padding: 0 0 10px 0;
}
#wrapper_main .content_div_image_description {
	margin: 5px 0 10px 0;
	padding: 0;
	font-size: 0.9em;
	line-height: 1em;
	text-align: center;
	width: 100%;
}
#wrapper_main ul.content_div_files {
	list-style-type: none;
	margin: 0;
	overflow: hidden;
	padding: 0 0 10px 0;
}
#wrapper_main ul.content_div_files li {
	background: #fff url(/images/bg_download.png) left top no-repeat;
	border: 1px solid #f2f2f2;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	margin: 0 0 5px 0;
	min-height: 50px;
	padding: 2px 5px 10px 50px;
}
#wrapper_main .content_div_files_description {
	font-size: 0.9em;
	line-height: 1.1em;
	margin: 2px 0 0 0;
}

.main_content_video_frame {
	padding: 0 0 20px 0;
}
.main_content_video_titel {
	background: #54acb8;
	color: #fff;
	display: block;
	font: 500 1.1em/1.2em 'Montserrat';
	padding: 5px 3px 3px 3px;
	text-align: center;
	width: 100% !important;
}
.main_content_video_description {
	display: block;
	font: 200 0.8em/1.1em 'Merriweather';
	padding: 5px 3px 3px 3px;
	width: 100% !important;
}
.main_content_video {
	height: 0;
	padding-bottom: 56.25%;
	padding-top: 0;
	position: relative;
	margin: 0;
}
.main_content_video iframe, .main_content_video .main_content_video_a_youtube, .main_content_video .main_content_video_a_vimeo, .main_content_video .main_content_video_overlay {
	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.main_content_video a span {
	display: none;
}
.main_content_video .main_content_video_a_youtube, .main_content_video .main_content_video_a_vimeo {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.main_content_video .main_content_video_a_youtube:before, .main_content_video .main_content_video_a_vimeo:before {
	background: rgba(0, 0, 0, 0.6) url(/images/icon_play.svg) center center no-repeat;
	background-size: 30px 30px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	color: #fff;
	content: "";
	height: 60px;
	left: 50%;
	margin: -30px -50px;
	position: absolute;
	top: 50%;
	transition: background-color 0.1s linear;
	-webkit-transition: background-color 0.1s linear;
	-moz-transition: background-color 0.1s linear;
	-ms-transition: background-color 0.1s linear;
	-o-transition: background-color 0.1s linear;
	width: 100px;
}
.main_content_video .main_content_video_a_youtube:hover:before, .main_content_video .main_content_video_overlay_a_youtube:hover:before {
	background-color: #cc181e;
}
.main_content_video .main_content_video_a_vimeo:hover:before, .main_content_video .main_content_video_overlay_a_vimeo:hover:before {
	background-color: #00a4ed;
}
.main_content_video .main_content_video_overlay {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	font-size: 12px;
	line-height: 22px;
	overflow: hidden;
}
.main_content_video .main_content_video_overlay.main_content_video_overlay_no_bg {
	background-color: #888;
}
.main_content_video .main_content_video_overlay div {
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	left: 0;
	padding: 10px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0, -50%);
	-webkit-transform: translate(0, -50%);
	-moz-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	-o-transform: translate(0, -50%);
	text-align: center;
}
.main_content_video .main_content_video_overlay.main_content_video_overlay_no_bg div {
	background: transparent;
}
.main_content_video .main_content_video_overlay div p {
	color: #fff;
	font-size: 12px;
	margin: 0;
	padding: 0;
}
.main_content_video .main_content_video_overlay div a {
	color: #fff;
	display: block;
	margin: 5px 0;
}
.main_content_video .main_content_video_overlay div a:before {
	background: rgba(0, 0, 0, 0.6) url(/images/icon_play.svg) center center no-repeat;
	background-size: 30px 30px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	color: #fff;
	content: "";
	display: block;
	height: 60px;
	margin: auto;
	transition: background-color 0.1s linear;
	-webkit-transition: background-color 0.1s linear;
	-moz-transition: background-color 0.1s linear;
	-ms-transition: background-color 0.1s linear;
	-o-transition: background-color 0.1s linear;
	width: 100px;
}

#wrapper_main .main_content_div_iframe {
	padding: 0 0 20px 0;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_1, #wrapper_main .main_content_div_iframe .main_content_iframe_2, #wrapper_main .main_content_div_iframe .main_content_iframe_3, #wrapper_main .main_content_div_iframe .main_content_iframe_4, #wrapper_main .main_content_div_iframe .main_content_iframe_5 {
	height: 0;
	padding-top: 0;
	position: relative;
	margin: 0;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_1 {
	padding-bottom: 30%;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_2 {
	padding-bottom: 50%;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_3 {
	padding-bottom: 100%;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_4 {
	padding-bottom: 200%;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_5 {
	padding-bottom: 56.25%;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_1 iframe, #wrapper_main .main_content_div_iframe .main_content_iframe_2 iframe, #wrapper_main .main_content_div_iframe .main_content_iframe_3 iframe, #wrapper_main .main_content_div_iframe .main_content_iframe_4 iframe, #wrapper_main .main_content_div_iframe .main_content_iframe_5 iframe {
	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
#wrapper_main .main_content_div_iframe .main_content_iframe_a {
	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}


#wrapper_main .content_div_galerie {
	clear: both;
	margin: 20px 0;
	width: 100%;
}
#wrapper_main .content_div_galerie_table ul {
	list-style-type: none;
	overflow: hidden;
	padding: 0;
	margin: 0 0 20px 0;
}
#wrapper_main .content_div_galerie_table li {
	float: left;
	margin: 0 75px 0 0;
	overflow: hidden;
	padding: 0 0 20px 0;
	position: relative;
	text-align: center;
	vertical-align: top;
	width: 283px;
}
#wrapper_main .content_div_galerie_table li:nth-child(3n+3) {
	margin: 0;
}
#wrapper_main .content_div_galerie_table li:nth-child(3n+4) {
	clear: both;
}
#wrapper_main .content_div_galerie_table a:link, #wrapper_main .content_div_galerie_table a:visited {
	text-decoration: none;
}
#wrapper_main .content_div_galerie_table li img {
	margin: 0;
	width: 100%;
}
#wrapper_main .content_div_galerie_image {
	position: relative;
}
#wrapper_main .content_div_galerie_image_titel {
    background-color: #111;
    background-color: rgba(0,4,0,0.80);
    bottom: 0;
    color: #fff;
    display: none;
    font-size: 0.85em;
    height: auto;
    left: 0px;
    line-height: 1em;
	margin: 0;
    padding: 7px;
    position: absolute;
    transition: 1s;
    -moz-transition: 1s;
    -webkit-transition: 1s;
    width: 100%;
}
#wrapper_main .content_div_galerie_image_titel strong {
    font-size: 1em;
    font-weight: bold;
    line-height: 0.85em;
}
#wrapper_main .no-touch .content_div_galerie_table li:hover .content_div_galerie_image_titel {
    display: block;
}
#wrapper_main .content_div_galerie_url {
	font-size: 80%;
	line-height: 85%;
	padding: 2px;
	text-align: center;
	width: 100%;
}
#wrapper_main .content_google_map {
	float: right;
	height: 300px;
	margin: 10px 0;
	width: 50%;
}


/*----------------------------------------------------------------------------------------------------*/
/*   menu_top / menu / menu_button   */
/*----------------------------------------------------------------------------------------------------*/

#menu_top_bg {
	background: #333;
	box-shadow: 0px 3px 3px 0px rgba(50, 50, 50, 0.53);
	-moz-box-shadow: 0px 3px 3px 0px rgba(50, 50, 50, 0.53);
	-webkit-box-shadow: 0px 3px 3px 0px rgba(50, 50, 50, 0.53);
	padding: 5px 30px;
	position: absolute;
	top: 30px;
	width: 100%;
}
nav.menu_top {
	display: block;
	float: right;
	font: 500 16px/16px 'Vegur-Light';
	text-align: right;
}
nav.menu_top ul {
	display: table;
	list-style: none;
}
nav.menu_top li {
	display: table-cell;
	hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	-o-hyphens: none;
	-webkit-hyphens: none;
	margin: 0;
	padding: 0;
	vertical-align: top;
	white-space: nowrap;
}
nav.menu_top li a:link, nav.menu_top li a:visited {
	color: #fff;
	text-decoration: none;
}
nav.menu_top li a:link.active {
	color: #fff;
	text-decoration: underline;
}
nav.menu_top li a:hover {
	text-decoration: underline;
}
nav.menu_top li .icon {
	display: inline;
	float: left;
	margin: 0 2px 0 0;
}
nav.menu_top .menu_top_link {
	display: block;
	margin: 0 10px 0 0;
}
nav.menu_top li .menu_top_text {
	display: block;
	padding: 5px 20px 0 0;
}
nav.menu_top form {
	display: inline;
}
nav.menu_top .menu_top_suche label {
	display: none;
}
nav.menu_top .menu_top_suche input {
	background: #eee;
	border: 1px solid #ccc;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	color: #666;
	font-size: 14px;
	height: 14px;
	line-height: 10px;
	margin: 0;
	padding: 2px 5px;
	width: 110px;
	vertical-align: center;
}

#menu_bg {
	background-color: #c10122;
	height: 34px;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	width: 100%;
	position: relative;
	text-align: center;
}
nav.menu {
	border: 0;
	margin: 0;
	padding: 0;
}
nav.menu ul {
	background: none;
	border: 0;
	display: table;
	left: 0 !important;
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	position: absolute;
	right: 0 !important;
	top: 0;
	width: 800px;
}
nav.menu ul li {
	display: table-cell;
	padding: 0;
}
nav.menu ul li a {
	border: 0;
	display: block;
	font: 500 20px/20px 'Vegur-Light';
	padding: 8px 20px 6px 20px;
	text-decoration: none;
}
nav.menu ul li a:link, nav.menu ul li a:visited {
	color: #fff;
	text-decoration: none;
}
nav.menu ul li a:hover {
	background-color: #fff;
	border: 0;
	color: #666;
}
nav.menu ul li span, nav.menu ul li a.menu_aktiv {
	background-color: #fff;
	border: 0;
	border-left: 1px solid #fff;
	display: block;
	color: #666;
	font: 500 20px/20px 'Vegur-Light';
	padding: 8px 20px 6px 20px;
}
nav.menu ul.lev2 {
	display: none;
}
nav.menu .menu_hide {
	display: none;
}

#menu_button {
	display: none;
}

/*----------------------------------------------------------------------------------------------------*/
/*   footer   */
/*----------------------------------------------------------------------------------------------------*/

footer {
	border: none;
	color: #4D4D4D;
	font-size: 0.8em;
	line-height: 1.5em;
	overflow: hidden;
	padding: 20px 0 30px 0;
}
footer a:link, footer a:visited {
	color: #4D4D4D;
	text-decoration: none;
}
.footer_bold {
	font-size: 1.2em;
	font-weight: bold;
	padding: 10px 0 0 0;
}
.footer_text {
	clear: both;
	display: table;
	margin: 10px 0 0 0;
	width: 100%;
}
.footer_text_cell, .footer_text_cell_1, .footer_text_cell_2, .footer_text_cell_3, .footer_text_cell_4 {
	display: table-cell;
	vertical-align: top;
}
.footer_text_cell_1 {
	width: 320px;
}
.footer_text_cell_2 {
	width: 250px;
}
.footer_text_cell_3 {
	padding: 10px 0;
	width: 250px;
}
.footer_text_cell_4 {
	width: 180px;
}
.footer_copyright {
	clear: both;
	padding: 20px 0 0 0;
	text-align: center;
}
.footer_text_cell_3 {
	padding: 10px 0;
}
.footer_text_cell_4 img {
	margin: 0 0 0 auto;
}


/*----------------------------------------------------------------------------------------------------*/
/*   form_general   */
/*----------------------------------------------------------------------------------------------------*/

.form_general {
	border: 10px solid #fbfbfb;
	margin: 0 auto 20px auto;
	padding: 15px;
	width: 620px;
}
.form_general legend {
	color: #999;
	font-size: 0.95em;
	margin: 0;
	padding: 2px;
}
.form_general .form_table {
	display: table;
}
.form_general .form_row {
	display: table-row;
}
.form_general .form_cell {
	display: table-cell;
}
.form_general .label {
	font-size: 1em;
	line-height: 1.2em;
	padding: 7px 10px 7px 10px;
	text-align: right;
	vertical-align: middle;
	width: 200px;
}
.form_general .input {
	padding: 3px 10px 3px 10px;
	vertical-align: middle;
}
.form_general .form_input_text, .form_general .form_input_textarea, .form_general .form_input_small, .form_general .form_select {
	background:#fbfbfb;
	border: 1px solid #ddd;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	font-size: 1em;
	padding: 5px;
}
.form_general .form_input_text, .form_general .form_input_textarea {
	width: 300px;
}
.form_general .form_input_small {
	width: 80px;
}
.form_general .comment {
	font-size: 0.9em;
	text-align: center;
}
.form_general .form_div_button {
	text-align: center;
}
.form_general input.form_button {
	background: #c10122;
	border: 1px solid #2a3336;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	color: #fff;
	font-size: 1.3em;
	margin: 15px 0 15px 0;
	padding: 5px 20px 5px 20px;
	text-decoration: none;
}
.form_general input.form_button:hover {
	background: #fff;
	border: 1px solid #c10122;
	color: #666;
}
.form_general .such_button {
	padding: 0;
	text-align: center;
}
.form_1, .form_2, .form_3, .form_4 {
	border: 0;
}
.form_general .form_3, .form_general .form_4 {
	display: none;
}
.form_error {
	background-color: #ff9999;
	border: 1px #990000 solid;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	color: #000000;
	margin: 5px 0 15px 0;
	padding: 5px;
	text-align: center;
}
.btn {
	background: #c10122;
	border: 1px solid #2a3336;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	color: #fff !important;
	font-size: 1.3em;
	margin: 15px 0 15px 0;
	padding: 5px 20px 5px 20px;
	text-align: center;
	text-decoration: none;
}
.btn:hover {
	background: #fff;
	border: 1px solid #c10122;
	color: #666 !important;
}

/*----------------------------------------------------------------------------------------------------*/
/*   mediaqueries   */
/*----------------------------------------------------------------------------------------------------*/

@media only screen and (min-width: 300px)
{

	@font-face {
		font-family: 'Vegur';
		src: url('/include_fonts/vegur-regular.eot');
		src: url('/include_fonts/vegur-regular.eot?#iefix') format('embedded-opentype'), url('/include_fonts/vegur-regular.woff') format('woff'), url('/include_fonts/vegur-regular.ttf') format('truetype'), url('/include_fonts/vegur-regular.svg') format('svg');
		font-weight: normal;
		font-style: normal;
		font-display: optional;
	}
	@font-face {
		font-family: 'Vegur-Light';
		src: url('/include_fonts/Vegur-Light.eot');
		src: url('/include_fonts/Vegur-Light.eot?#iefix') format('embedded-opentype'), url('/include_fonts/Vegur-Light.woff') format('woff'), url('/include_fonts/Vegur-Light.ttf') format('truetype'), url('/include_fonts/Vegur-Light.svg') format('svg');
		font-weight: normal;
		font-style: normal;
		font-display: optional;
	}
	body {
		background: #d3d3d3;
		font: 100% "Vegur", Helvetica, Arial, Verdana, sans-serif;
		line-height: 150%;
		padding: 30px 0 0 0;
	}
	h1, h2, h3 {
		font-family: "Vegur-Light";
		border-bottom: none;
		font-weight: normal;
	}
	h1 {
		font-size: 3em;
	}
	h2 {
		font-size: 2.3em;
	}
	h3 {
		font-size: 2em;
	}
	p {
		margin: 0 0 18px 0;
	}
	#disclaimer_old {
		display: none;
	}

	/*---   wrapper / logo   ---*/

	.wrapper {
		overflow: visible;
		position: relative;
		width: 1200px;
	}
	#wrapper_logo {
		margin: 0;
	}

	/*---   content   ---*/

	#wrapper_main .content_menu_item {
		max-width: 200px;
		width: auto;
	}
	#wrapper_main .content_div_text, #wrapper_main .content_div_image_center {
		margin: 0 auto;
		width: 1200px;
	}
	#wrapper_main .content_div_image_center {
		clear: both;
	}
	#wrapper_main .content_div_text_left {
		padding: 0 10px 10px 0;
		margin: 0;
		width: 820px;
	}
	#wrapper_main .content_div_text_right {
		padding: 0 0 10px 10px;
		margin: 0;
		width: 820px;
	}
	#wrapper_main .content_div_image_left, #wrapper_main .content_div_image_right {
		padding: 0;
		margin: 0;
		width: 350px;
	}
	#wrapper_main ul.content_div_files li {
		background: #fff url(/images/bg_download_r.png) left top no-repeat;
		background-size: 45px 45px;
	}
	#wrapper_main .content_div_video {
		clear: both;
		height: 0;
		margin: 20px 0;
		padding-bottom: 56.25%;
		padding-top: 0;
		position: relative;
		width: 100%;
	}
	#wrapper_main .content_div_video iframe {
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		width: 100%;
	}
	#wrapper_main .content_div_galerie_table li {
		width: 350px;
	}

	/*---   menu_top   ---*/

	#menu_top_bg {
		padding: 5px 0;
		top: 0;
	}

	/*---   footer   ---*/

	.footer_text_cell, .footer_text_cell_1, .footer_text_cell_2, .footer_text_cell_3, .footer_text_cell_4 {
		width: auto;
	}

}
@media only screen and (max-width: 1250px)
{

	/*---   wrapper   ---*/

	.wrapper {
		width: 1050px;
	}

	/*---   content   ---*/

	#wrapper_main .content_div_text, #wrapper_main .content_div_image_center {
		margin: 0 auto;
		width: 1050px;
	}
	#wrapper_main .content_div_text_left, #wrapper_main .content_div_text_right {
		width: 680px;
	}
	#wrapper_main .content_div_galerie {
		width: 1050px;
	}
	#wrapper_main .content_div_galerie_table li {
		margin: 0 2% 0 0;
		padding: 0 0 2% 0;
		width: 32%;
	}

	/*---   menu   ---*/

	nav.menu {
		width: 1050px;
	}

}
@media only screen and (max-width: 1100px)
{

	/*---   wrapper   ---*/

	.wrapper {
		width: 910px;
	}

	/*---   content   ---*/

	#wrapper_main .content_div_text, #wrapper_main .content_div_image_center {
		margin: 0 auto;
		width: 910px;
	}
	#wrapper_main .content_div_text_left, #wrapper_main .content_div_text_right {
		width: 530px;
	}
	#wrapper_main .content_div_galerie {
		width: 910px;
	}

	/*---   menu   ---*/

	nav.menu {
		width: 910px;
	}

}
@media only screen and (max-width: 940px)
{

	body {
		padding: 10px 0 0 0;;
	}
	a[href^="tel"]:link, a[href^="tel"]:visited, a[href^="tel"]:hover {
		text-decoration: underline;
	}

	/*---   wrapper / logo   ---*/

	.wrapper {
		width: 95%;
	}
	#logo {
		clear: both;
		float: none;
		height: auto;
		margin: 10px 0;
		width: 350px;
	}
	#logo_bosch {
		display: none;
	}
	#wrapper_main {
		margin: 10px 0 0 0;
		min-height: 0;
	}
	#wrapper_top {
		padding: 30px 30px;
		vertical-align: top;
	}
	#wrapper_top_table {
		display: table;
		padding: 0;
		width: 100%;
	}

	/*---   content   ---*/

	#wrapper_main .content_div_text, #wrapper_main .content_div_image_center {
		margin: 0 auto;
		width: 100%;
	}
	#wrapper_main .content_div_text_left, #wrapper_main .content_div_text_right {
		width: 65%;
	}
	#wrapper_main .content_div_image_left, #wrapper_main .content_div_image_right {
		width: 33%;
	}
	#wrapper_main .content_div_galerie {
		width: 100%;
	}
	#wrapper_main .content_google_map {
		float: none;
		height: 300px;
		margin: 10px 0;
		width: 100%;
	}

	/*---   menu_top / menu / menu_button   ---*/

	#menu_top_bg {
		height: 10px;
	}
	nav.menu_top {
		display: none;
	}

	#menu_bg  {
		border: 0;
		display: table-header-group;
		height: auto;
		text-align: left;
	}
	nav.menu {
		clear: both;
		display: none;
		margin: 10px 0;
		padding: 10px 0;
		position: relative;
		top: auto;
		width: 100%;
	}
	nav.menu ul {
		border-top: 1px solid #666;
		display: block;
		float: none;
		margin: 0;
		position: relative;
		width: auto;
	}
	nav.menu ul li {
		display: block;
	}
	nav.menu ul li a, nav.menu ul li span {
		border-bottom: 1px solid #666;
		font-size: 40px;
		line-height: 40px;
		padding: 5px 0 0 5px;
	}
	nav.menu ul li a:hover {
		border-bottom: 1px solid #666;
	}
	nav.menu ul li span, nav.menu ul li a.menu_aktiv {
		background: #fff;
		border-bottom: 1px solid #666;
		font-size: 40px;
		line-height: 40px;
		padding: 5px 0 0 5px;
	}
	nav.menu ul.lev2 {
		border-top: none;
	}
	nav.menu ul.lev2 li a, nav.menu ul.lev2 li span, nav.menu ul.lev2 li a.menu_aktiv {
		font-size: 30px;
		line-height: 30px;
		padding: 5px 0 0 25px;
	}
	nav.menu ul.lev2 li span {
		border-bottom: 1px solid #666;
	}
	nav.menu ul.lev2 {
		background: none;
		border-bottom: none;
		border-top: none;
		display: inline;
		font-weight: normal;
		list-style-type: none;
		margin: 0;
		padding: 0;
		position: relative;
		right: 0;
		top: 0;
	}
	nav.menu .menu_hide {
		display: block;
	}

	#menu-open:target nav.menu {
		display: block;
	}
	#menu_button {
		display: block;
		margin: 0;
		position: absolute;
		right: 10px;
		top: 20px;
	}
	#menu_button .menu_open {
		display: block;
	}
	#menu_button .menu_close {
		display: none;
	}
	#menu-open:target #menu_button .menu_open {
		display: none;
	}
	#menu-open:target #menu_button .menu_close {
		display: block;
	}

	/*---   footer   ---*/

	.footer_text {
		display: block;
	}
	.footer_text_cell, .footer_text_cell_1, .footer_text_cell_2, .footer_text_cell_3, .footer_text_cell_4 {
		display: block;
		width: 100%;
	}
	.footer_text_cell_4 img {
		margin: 10px 0 0 0;
	}
	.footer_copyright {
		text-align: left;
	}

	/*---   form_general   ---*/

	.form_general {
		padding: 5px;
		width: 400px;
	}
	.form_general legend {
		font-size: 0.95em;
	}
	.form_general .form_table {
		margin: 0 auto;
	}
	.form_general .form_cell {
		display: block;
	}
	.form_general .label {
		font-size: 1em;
		line-height: 1.1em;
		padding: 10px 5px 0 15px;
		text-align: left;
		vertical-align: bottom;
	}
	.form_general .input {
		padding: 0 10px 3px 10px;
		vertical-align: top;
	}
	.form_general .form_input_text, .form_general .form_input_textarea, .form_general .form_input_small {
		width: 325px;
	}
	.form_general input.form_button {
		font-size: 1.3em;
		margin: 15px 0 5px 0;
		padding: 5px 20px 5px 20px;
	}
	.form_general .form_3, .form_general .form_4 {
		display: none;
	}

}
@media only screen and (max-width: 479px)
{

	h1 {
		padding: 10px 0 0 0;
	}

	/*---   wrapper   ---*/

	#logo {
		width: 75%;
	}
	#wrapper_main {
		padding: 0 0 30px 0;
	}
	#wrapper_main p {
		font-size: 120%;
	}

	/*---   wrapper   ---*/

	#wrapper_main .content_div_text_left, #wrapper_main .content_div_text_right {
		float: none;
		padding: 0 0 10px 0;
		width: 100%;
	}
	#wrapper_main .content_div_image_left, #wrapper_main .content_div_image_right {
		float: none;
		width: 100%;
	}
	#wrapper_main .content_div_image_left img, #wrapper_main .content_div_image_right img {
		width: 100%;
	}

	/*---   form_general   ---*/

	.form_general {
		padding: 10px;
		width: 300px;
	}
	.form_general .form_table {
		width: 260px;
	}
	.form_general .label {
		padding: 7px 0 1px 5px;
	}
	.form_general .input {
		padding: 0 0 5px 0;
	}
	.form_general .form_input_text, .form_general .form_input_textarea, .form_general .form_input_small {
		width: 250px;
	}
	.form_general input.form_button {
		font-size: 1.1em;
		margin: 15px 0 5px 0;
		padding: 5px 10px 5px 10px;
	}

}

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