/* ############################################################################################# 
## AMB-CMS-TEMPLATE ##################################################################################
############################################################################################# */

@font-face {
    font-family: 'open_sanslight';
    src: url('../../fonts/OpenSans-Light-webfont.eot');
    src: url('../../fonts/OpenSans-Light-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/OpenSans-Light-webfont.woff') format('woff'),
         url('../../fonts/OpenSans-Light-webfont.ttf') format('truetype'),
         url('../../fonts/OpenSans-Light-webfont.svg#open_sanslight') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sanslight_italic';
    src: url('../../fonts/OpenSans-LightItalic-webfont.eot');
    src: url('../../fonts/OpenSans-LightItalic-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/OpenSans-LightItalic-webfont.woff') format('woff'),
         url('../../fonts/OpenSans-LightItalic-webfont.ttf') format('truetype'),
         url('../../fonts/OpenSans-LightItalic-webfont.svg#open_sanslight_italic') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sansregular';
    src: url('../../fonts/OpenSans-Regular-webfont.eot');
    src: url('../../fonts/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/OpenSans-Regular-webfont.woff') format('woff'),
         url('../../fonts/OpenSans-Regular-webfont.ttf') format('truetype'),
         url('../../fonts/OpenSans-Regular-webfont.svg#open_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sansitalic';
    src: url('../../fonts/OpenSans-Italic-webfont.eot');
    src: url('../../fonts/OpenSans-Italic-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/OpenSans-Italic-webfont.woff') format('woff'),
         url('../../fonts/OpenSans-Italic-webfont.ttf') format('truetype'),
         url('../../fonts/OpenSans-Italic-webfont.svg#open_sansitalic') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sansbold';
    src: url('../../fonts/OpenSans-Bold-webfont.eot');
    src: url('../../fonts/OpenSans-Bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../../fonts/OpenSans-Bold-webfont.woff') format('woff'),
         url('../../fonts/OpenSans-Bold-webfont.ttf') format('truetype'),
         url('../../fonts/OpenSans-Bold-webfont.svg#open_sansbold') format('svg');
    font-weight: normal;
    font-style: normal;
}
body {
  	font-family: 'open_sanslight', arial, verdana, sans-serif;
	background: url('../../../../res/templates/images/bg-body.png') #fefefe;
  	margin: 0;
	padding: 0;
	background-attachment:fixed;
}
body *{
	margin: 0;
	padding: 0;  
	font-size: 16px;
	line-height: 160%;
	color: rgb(53, 53, 53);
}

/* #### HEADLINES ############################### */


h1 {
	font-size:45px;
    font-family: 'open_sanslight', arial, verdana, sans-serif;
	margin: 25px auto 10px;
	text-transform:uppercase;
    color:rgb(53, 53, 53);
	font-weight:normal;
	line-height: 120%;
	max-width:1200px;
	width:94%;
}
.default h1:after {
	content: '';
	width: 75px;
	height: 1px;
	margin: 10px 0 30px;
	background:rgb(0, 119, 186);
	display: block;
}
h2 {
    font-family: 'open_sansbold', arial, verdana, sans-serif;
	font-size:23px;
	margin: 50px 0 25px 0;
	text-transform:uppercase;
    color:rgb(53, 53, 53);
	font-weight:normal;
	line-height: 120%;
}
h3 {
	font-size:20px;
    font-family: 'open_sansbold', arial, verdana, sans-serif;
	text-transform:uppercase;
	margin:25px 0px 5px 0px;
	font-weight:normal;
	line-height: 120%;
	color:#494949;
}
h4 {
	font-size:16px;
    font-family: 'open_sansbold', arial, verdana, sans-serif;
	font-weight:normal;
	margin:20px 0px 4px 0px;
	line-height: 120%;
}



/* text- and list-margins */

a, .link{
	color: rgb(0, 119, 186);
	text-decoration: none;
	-webkit-transition: all .25s ease;
	-moz-transition: all .25s ease;
	-ms-transition: all .25s ease;
	-o-transition: all .25s ease;
	transition: all .25s ease;
}
a:focus,a:hover,
	.link:focus,.link:hover {
	color: rgb(0, 0, 0);
	text-decoration: none;
}
ul, ol {
	margin: 0;
}
li {
	padding:5px 0;
	margin: 0 0 0 15px;
	list-style-type:square;
	border-bottom:1px solid rgba(53, 53, 53, 0.08);
}
li:last-child {
	border:none!important;
}
p, table, form{
	margin: 0 0 15px;
	width:100%;
	line-height:150%;
}
p {
	  -webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-o-hyphens: auto;
	hyphens: auto;
}
strong {
    font-family: 'open_sansbold', arial, verdana, sans-serif;
	font-weight:normal;	
}
small, small *{
	font-size: 11px;
	display: inline-block;
}
figure img {
	width:100%;
}
hr {
	background:rgba(53, 53, 53, 0.08);
	height:5px;
	margin:20px 0;
	display:inline-block;
	width:100%;
	border:none;
}

/* #### GRID ############################### */
.row {
  width: 94%;
  padding:30px 3%;
  max-width:1200px;
  margin:0 auto;
}
.row::after {
    content: "";
    clear: both;
    display: block;
}
[class*="col-"] {
    float: left;
}
.col-2 {width: 14.66%;margin:0 1%;}
.col-2_5 {width: 20%;margin:0;}
.col-3 {width: 23%;margin:0 1%;}
.col-4 {width: 31.33%;margin:0 1%;}
.col-5 {width: 39.66%;margin:0 1%;}
.col-6 {width: 48%;margin:0 1%;}
.col-7 {width: 56.33%;margin:0 1%;}
.col-8 {width: 64.66%;margin:0 1%;}
.col-9 {width: 73%;margin:0 1%;}
.col-10 {width: 81.33%;margin:0 1%;}
.col-12 {width: 100%;}
.col-last {margin-right:0;}

.cms_contentblock {
	max-width:1200px;
	margin:0 auto;
	width: 94%;
	padding: 0 3% 50px;
}
.default .cms_contentblock:first-child {
	padding: 20px 3% 50px;
}
.cms_contentblock.cms_contentblock_bpadding0 {
	padding-bottom: 0;
}




/* ############################################################################################# 
## NAVIGATION ##################################################################################
############################################################################################# */

#menuToggle input{
	display:none;
}
.black_layer {
		display:none;
}
nav {
	margin-top:30px;
}
nav li {
	float:left;
	margin:0;
	list-style-type:none!important;
	border:none;
	padding:0;
	position:relative;
	height:60px;
}
nav li a {
	padding:10px 20px 10px 0;
	font-size:25px;
}
nav li ul {
	display:none;
	position:absolute;
	min-width:200px;
	background:rgb(0, 119, 186);
	top:60px;
}
nav li:hover ul {
	display:block;
	padding:10px;
}
nav li ul li {
	float:none;
	width:100%;
	margin:0;
	padding:0;
	border-bottom:1px solid rgba(255,255,255,0.1);
	height:auto;
}
nav li ul li:last-child{
	border:none;
}
nav li ul a {
	color:#fff;
	font-size:smaller;
	display:block;
	padding: 10px;
}
nav li ul a:hover {
	background:rgba(0,0,0,0.2);
	color:#fff;
}



@media only screen and (max-width: 767px) {
	#menuToggle {
		display: block;
		position: relative;
		z-index: 1;
		-webkit-user-select: none;
		user-select: none;
	}
	#menuToggle input {
		display: block;
		width: 40px;
		height: 32px;
		position: absolute;
		top: -7px;
		left: -5px; 
		cursor: pointer;
		opacity: 0;
		z-index: 2; 
		-webkit-touch-callout: none;
	}
	#menuToggle span {
		display: block;
		width: 33px;
		height: 4px;
		margin-bottom: 5px;
		position: relative;
		background: #fff;
		border-radius: 3px;
		z-index: 1;
		transform-origin: 4px 0px;
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
				  background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
				  opacity 0.55s ease;
	}
	#menuToggle span:first-child {
		transform-origin: 0% 0%;
	}
	#menuToggle span:nth-last-child(2) {
		transform-origin: 0% 100%;
	}
	#menuToggle input:checked ~ span {
		opacity: 1;
		transform: rotate(45deg) translate(-2px, -1px);
		background: #232323;
	}
	#menuToggle input:checked ~ span:nth-last-child(3) {
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);
	}
	#menuToggle input:checked ~ span:nth-last-child(2) {
		transform: rotate(-45deg) translate(0, -1px);
	}
	#menu {
		position: absolute;
		width: auto;
		margin: -100px 0 0 -40px;
		padding: 20px;
		padding-top: 125px;
		background: #fff;
		list-style-type: none;
		-webkit-font-smoothing: antialiased;
		transform-origin: 0% 0%;
		transform: translate(-100%, 0);
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
		min-width: 320px;
		box-sizing: border-box;
	}
	.black_layer {
		background: rgba(0,0,0,0.8);
		display:none;
		position: absolute;
		width: 100vw;
		height: 100vh;
		padding: 0;
		margin: -30px 30px 30px -31px;
	}	
	#menuToggle input:checked ~ .black_layer {
		display:block;
	}
	nav li {
		font-size: 20px;
		width:100%;
		float:none;
		border-bottom: 1px solid rgba(0,0,0,0.2);
	}
	#menuToggle input:checked ~ ul {
		transform: none;
	}
	nav {
		margin-top:20px!important;
	}
	nav li ul {
		position:inherit;
		padding:0!important;
		background:none;
		top:0;
	}
	nav li {
		height:auto;
		margin-left:10px;
	}
	nav li:hover {
		height:auto;
		margin-left:10px;
		background:rgba(0,0,0,0.05);
	}
	nav li ul li {
		border:none!important;
		margin-left:15px!important;
	}
	nav li ul li:hover, nav li ul li a:hover {
		background:none;
	}
	nav li a {
		font-size: 18px;
		padding: 10px 5px 10px 10px;
		display: block;
		font-family: 'open_sansbold', arial, verdana, sans-serif;
		text-transform: uppercase;
	}
	nav li ul a {
		color:rgb(0, 119, 186)!important;
		font-family: 'open_sansregular', arial, verdana, sans-serif;
		text-transform:none;
		padding: 5px 5px 5px 10px !important;
	}
	nav li ul a:hover {
		color:rgb(0, 0, 0)!important;
	}
	.sticky nav li a {
		color:rgb(0, 119, 186)!important;
	}
}


/* ############################################################################################# 
## Inhalt ##################################################################################
############################################################################################# */


/* #### HEADER ############################### */
#header {
	margin: 0 auto 20px;
	width: 100%;
	padding:0;
	position:fixed;
	border-top:10px solid rgb(0, 119, 186);
	-webkit-transition: all .25s ease;
	-moz-transition: all .25s ease;
	-ms-transition: all .25s ease;
	-o-transition: all .25s ease;
	transition: all .25s ease;
}
#header .row {
	padding:0;
}
#header .col-3 {
	width:25%;
	margin:0;
}
#header .col-9 {
	width:75%;
	margin:0;
}
#logo {
	background:#fff;
	padding:20px;
	box-sizing:border-box;
	margin-top:-10px;
	-webkit-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	-moz-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
}
#logo a img {
	width:100%;
	max-height:80px;
}
.sticky {
	position: fixed;
	max-width:none!important;
	height:100px!important;
	margin:0!important;
	padding:0;
	left: 0;
	top: 0;
	border:none!important;
	z-index: 100;
	background:rgb(0, 119, 186)!important;
	-webkit-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	-moz-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
}
.sticky nav li a {
	color:#fff;
}
.sticky nav {
	margin-top:40px;
}
.sticky #logo {
	margin-top:0;
}

/* #### IMPRESSION ############################### */

#impression {
	margin:0 auto -30px;
	width: 100%;
	display:block;
	padding-top:21px;
	height:630px;
}
#impression .cms_contentblock {
	width:100%;
	max-width:none;
	padding:0;
	display:inline-block;
	height:630px;
}
#impression .cms_contentblock > div {
	width:100%;
	max-width:1200px;
	margin:0 auto;
}
#impression h1 {
	color: #fff;
	font-size: 35px;
	margin: 180px 0 0 55%;
	width: 45%;
}
#impression figure {
	margin: -16px 0 0 51%;
	width: 48%;
}

/* #### ENTRY ############################### */

.entry .cb_2-3_1-3 {
	display: -webkit-flex !important;
	display: -ms-flex !important;
	display: flex !important;
	-webkit-flex-wrap: wrap !important;
	-ms-flex-wrap: wrap !important;
	flex-wrap: wrap !important;
}
.entry h2 {
	margin-top:0;
}
.entry h2:after {
	content:'';
	margin:15px 0;
	height:5px;
	background:rgba(0,0,0,0.1);
	width:100px;
	display:block;
}
.entry .cb_2-3_1-3_left {
	background:#fff;
	padding:40px 40px 20px;
	box-sizing:border-box;
	-webkit-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	-moz-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
}
.entry .cb_2-3_1-3_right {
	background:#ffcb00;
	padding:40px 40px 20px;
	box-sizing:border-box;
	-webkit-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	-moz-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
}

/* #### FLEX ############################### */

.flex > div {
	display: -webkit-flex !important;
	display: -ms-flex !important;
	display: flex !important;
	-webkit-flex-wrap: wrap !important;
	-ms-flex-wrap: wrap !important;
	flex-wrap: wrap !important;
}
.flex h2 {
	margin-top:0;
}
.flex h2:after {
	content:'';
	margin:15px 0;
	height:5px;
	background:rgba(0,0,0,0.1);
	width:100px;
	display:block;
}
.flex > div > div {
	background:#fff;
	padding:40px 40px 20px;
	box-sizing:border-box;
	-webkit-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	-moz-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
}
.flex .clear {
	display:none;
}
.flex figure {
	margin: -20px -20px -7px;
}

/* #### CONTENT ############################### */

#content {
	margin:0 auto -10px;
	width: auto;
	padding:20px 0;
	display:block;
}
.default #content {
	padding-top:150px !important;
}


/* #### FOOTER ############################### */

#footer {
	margin: 10px auto 0;
	width: 94%;
	padding:20px 3%;
	background:rgb(0, 119, 186);
	clear:both;
}
#footer span, #footer li, #footer a, #footer #copyright {
	color:#fff!important;
	font-size:12px;
}
#footer h4 {
	color:#fff!important;
	font-size:14px;
	margin-bottom:10px;
}
#footer h4:before {
	content:'';
	display:block;
	width:50px;
	background:rgba(255,255,255,0.2);
	height:5px;
	margin:0 0 40px;
}
#footer ul, #footer img {
	margin-top:20px;
}
#footer li {
	list-style-type:none;
	border-bottom:1px solid rgba(255,255,255,0.2);
	margin:0!important;
}
#footer .information li {
	padding:0;
}
#footer .information li a {
	padding:5px 0;
	display:block;
}
#footer .information li a:hover {
	background:rgba(0,0,0,0.2);
	padding:5px 10px;
}
#footer span {
	width:60px;
	float:left;
	display:block;
}
#footer img {
	width:100%;
}
#copyright {
	width: 100%;
	padding:20px 0;
	margin:0 auto;
	text-align:center;
	background:#0067a1;
	color:#fff;
	font-size:12px;
}

/* table-styles */

table{
	border-collapse: collapse;
}
	table tr{
	}
		table tr th{
			text-align: left;
		}
		table tr th, table tr th *{
		}
		table tr th,
		table tr td{
			padding: 6px 20px 6px 10px;
			vertical-align: top;
			border-bottom: solid 1px rgba(0,0,0,0.1);
		}
		table tr:nth-child(even){
			background: rgba(0,0,0,0.05);
		}
		table tr:hover{
			background: rgba(0,0,0,0.08);
		}


		
		
/* form-styles */

.form_row {
	display: block;
	margin:5px;
}
.form_row_header {
	padding:0;
	color:rgb(53, 53, 53);
	height:auto!important;
	border-bottom:1px solid rgb(53, 53, 53);
	clear: both;
	margin: 30px 0 20px !important;
	display: inline-block!important;
}
.form_row_header h2 {
	font-size:20px;
	margin:0 0 10px 0;
	position:inherit;
  	font-family: 'open_sanslight', arial, verdana, sans-serif;
}
.form_field input, 
.form_field textarea,
.form_field select {
	padding: 5px 10px;
    width: 100%;
	box-sizing:border-box;
	font-family: open_sansbold;
	border: none;
	background: #f9f9f9;
	border: 1px solid #ddd;
	height: 36px;
	line-height: 36px;
}
.form_field textarea {
	height:150px;
}
.form_field input:hover, 
.form_field textarea:hover,
.form_field select:hover {
	background: rgba(0,119,186,0.2);	
}
.form_field input.checkbox {
	/*float: left;*/
	height: auto;
	margin: 8px 2% 0 0;
	width: auto;
	padding: 0px;
}
.form_field button,
.form_field input[type="submit"],
.form_field input[type="button"],
.button,
.cms_content_button,
a.cms_content_button{
	color: #fff;
	background:rgb(0, 119, 186);
	font-size:16px;
	width: auto;
	border: none;
	padding: 10px 20px 10px;
	-webkit-appearance: none;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
    font-family: 'open_sansbold', arial, verdana, sans-serif;
	text-transform:uppercase;
	display:inline-block;
	margin: 10px 0;
	position:relative;
}
.form_field button:before,
.form_field input[type="submit"]:before,
.form_field input[type="button"]:before,
.button:before,
input.button:before,
.cms_content_button:before,
a.cms_content_button:before {
	content:'';
	font-family: 'FontAwesome';
	font-size:20px;
	float: left;
	margin-right: 10px;
	display:block;	
}
button:hover ,
.form_field input[type="submit"]:hover ,
.form_field input[type="button"]:hover ,
.button:hover ,
.cms_content_button:hover ,
a.cms_content_button:hover {
	color:#fff;
	cursor:pointer;
	background:rgb(0, 0, 0);
}
.cms_content_form_submit {
	position:relative;
}
.cms_content_form_submit input.button {
	position: absolute;
	left: 0;	
}
.mce-menubtn button,
.mce-btn button{
	color: #333 !important;
}

a.button{
	padding: 10px 20px;
	transition: none;
	-webkit-appearance: none;
}


.form_label .invalid{
	color: #f00;
}

.form_field input.invalid,
.form_field textarea.invalid,
.form_field select.invalid{
	border: solid 1px #f55;
}
.form_field div.field_errors{
	display: none;
}

.form_help{
	position: relative;
	display: inline-block;
	padding: 1px 5px;
	border-radius: 20px;
	background: #666;
	color: #fff;
	font-size: 10px;
	margin: 0px 0px 0px 5px;
}
.form_help span{
	display: none;
	position: absolute;
	top: 10px;
	left: 10px;
	padding: 10px;
	border: 1px solid #ddaa33;
	background: #ffdd99;
	color: #000;
	width: 300px;
	font-weight: normal;
	z-index: 100;
}
.form_help:hover span{
	display: inline-block;
}
	
	
	
	
/* common classes */

.clear{
	clear: both;
}

.message,
.cms.cms_message_success,
.cms.cms_message_errors{
	margin-bottom: 20px;
	padding: 10px;
	display: inline-block;
}
.message ul,
.cms.cms_message_success ul,
.cms.cms_message_errors ul{
	margin-bottom: 0px;
	margin-left: 15px;
}
	
.cms.cms_message_success,
.cms.cms_message_errors{
	display: none; /* normally not displayed because they will be displayed in a popup */
	position: absolute;
	z-index: 1000;
	width: 400px;
	margin-left:-200px;
	left:50%;
	top: 200px;
	padding-top: 20px;
}
.cms .cms_message_close{
	font-weight: bold;
	font-size: 20px;
	padding: 5px 10px;
	cursor: pointer;
	float: right;
	position: absolute;
	right: 0px;
	top: 0px;
}
.cms.cms_message_success.active,
.cms.cms_message_errors.active{
	display: block;
}
.errors,
.cms.cms_message_errors{
	background: #fdd;
	color: #f00;
}
.errors *,
.cms.cms_message_errors *{
	color: #f00;
}	
.warnings{
	background: #fea;
	color: #b70;
}
.warnings *{
	color: #b70;
}	
.success,
.cms.cms_message_success{
	background: #dfd;
	color: #080;
}
.success *,
.cms.cms_message_success *{
	color: #080;
}
.cms_content figcaption{
	font-size: 10px;
}
.cms_picture_credits .cms_picture_credit_image:nth-child(2n){
	background: #f4f4f4;
}
.cms_collectioncontent_accordion,
.cms_collectioncontent_slider{
	border: 1px solid rgb(232, 232, 232) !important;
}
.cms_collectioncontent_accordion .cms_collectioncontent_data,
.cms_collectioncontent_accordion .cms_content_collection_content_title,
.cms_collectioncontent_slider .cms_collectioncontent_data{
	background: rgb(232, 232, 232) !important;
}
.cms_opening_hours_state_closed_today, .cms_opening_hours_state_open, .cms_opening_hours_state_will_open {
	color: #fff;
    margin-bottom: 10px;
    padding: 10px 0;
    text-align: center;
}
.cms_content_map_marker_layer {
	z-index:99;
}


/* ############################################################################################# 
## KONFIGURATOR ##################################################################################
############################################################################################# */


.konfigurator > div {
	background:#fff;
	padding:40px 40px 20px;
	box-sizing:border-box;
	-webkit-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	-moz-box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
	box-shadow: 0px 0px 20px -14px rgba(0,0,0,0.50);
}
.konfigurator .svg-wrapper {
	display:block;
}
.konfigurator .form_row {
	display:block;
	margin-bottom:5px;
	height:36px;
	width:100%;
}
.konfigurator .form_label {
	width:45%;
	float:left;
	display:block;
}
.konfigurator .form_field {
	width:50%;
	float:right;
	display:block;
}
input:focus {
	background:rgba(226,0,0,0.1)
}
.konfigurator .svg-wrapper .form_label {
	width: 20% !important;
	max-width: 60px;
}
.konfigurator .svg-wrapper .form_field {
	width:40%;
	max-width:60px;
}
.konfigurator .svg-wrapper #svgDiv {
	float: left;
	display: block;
	width: 50%;
	position: relative;
	background: rgba(0,0,0,0.03);
	padding:20px;
	box-sizing:border-box;
}
.konfigurator .svg-wrapper svg {
	height: auto !important;
	width: calc(100% - 40px) !important;
	position: absolute;
}
.konfigurator .svg-wrapper img {
	width:100%;
}
.konfigurator .svg-wrapper .form_row {
	display:flex;
	float:none;
	width:40%;
	margin-left: 55%;	
}
.konfigurator .group-wrapper:first-child {
	width: 49%;
	float: left;
	margin: 0 1% 0 0;
	display: block;	
}
.konfigurator .group-wrapper:nth-child(2) {
	width: 49%;
	float: left;
	margin: 0 0 0 1%;
	display: block;	
}
.konfigurator .group-wrapper .form_label {
	flex:3!important;
}
label {
	font-size:14px!important;
}
label p,label p a, .checkbox_label {
	font-size:12px!important;
}


/* ############################################################################################# 
## RWD ##################################################################################
############################################################################################# */


@media only screen and (max-width: 1000px) {
	nav li a {
		padding: 10px 5px;
		font-size: 18px;
		font-family: 'open_sansbold', arial, verdana, sans-serif;
	}
	.konfigurator .group-wrapper:first-child,
	.konfigurator .group-wrapper:nth-child(2){
		width: 100%!important;
		float: none!important;
	}
}
@media only screen and (max-width: 767px) {
	[class*="col-"] {
		float: none;
		padding: 10px;
		width:100%;
		box-sizing:border-box;
	}
	.cb_float-right_left, .cb_float-left_right, .cb_1-2_1-2_left, .cb_1-2_1-2_right, .cb_1-3_2-3_left, .cb_1-3_2-3_right, .cb_2-3_1-3_left, .cb_2-3_1-3_right, .cb_1-3_1-3_1-3_left, .cb_1-3_1-3_1-3_middle, .cb_1-3_1-3_1-3_right {
		margin-right: 0 !important;
	}
	#wrapper {
		width:100%;
		/* padding:0 1%; */
		margin:0;
		border:none;
		position:relative;
	}
	#header {
		display:inherit;
		height:auto;
		position:fixed;
		max-width:767px;
		height:80px!important;
		margin:0!important;
		padding:0 0 !important;
		border-top:none!important;
		left: auto;
		top: auto;
		z-index: 100;
		width:inherit;
		background: rgb(0, 119, 186) 
	}
	.sticky {
		height:80px;
		width:inherit;
	}
	#logo {
		height:80px!important;
		padding: 10px;
		width:50%!important;
		position:absolute;
		right:0;
		top:0;
		margin:0!important;
	}
	#logo img {
		max-height: 60px!important;
	}
	#impression {
		padding-top:0;
	}
	#impression .cms_contentblock {
		background-position: -528px 0!important;
	}
	#impression h1 {
		color: #000;
		margin: 170px auto 0;
		width: 80%;
		text-align: center;
	}
	#impression figure {
		margin: 10px 0 0 5%;
		width: 90%;
	}
	#content {
		padding:0 2% 20px;
	}
	.konfigurator .form_row {
		margin: 0 0 10px 0!important;
		height: auto!important;
		width: 100%!important;
	}
	.konfigurator .form_label,
	.konfigurator .group_wrapper.form_label {
		flex:none!important;
		width:100%!important;
		float:none!important;
	}
	.konfigurator .form_field,
	.konfigurator .group_wrapper.form_field {
		flex:none!important;
		width:100%!important;
		float:none!important;
	}
	.konfigurator .svg-wrapper {
		display: inline-block;
		width: 100%;
	}
	.konfigurator .svg-wrapper #svgDiv {
		width:100%!important;
		padding:10px!important;
		height:auto;
		margin-bottom:20px;
	}
	.konfigurator .svg-wrapper svg {
		width: calc(100% - 20px) !important;
	}
	.konfigurator .svg-wrapper .form_row {
		width:33%!important;
		margin:0;
		float:left;
	}
	.konfigurator .svg-wrapper .form_label {
		display:none;
	}
	.konfigurator .svg-wrapper .form_field {
		float:left!important;
		width:90%!important;
	}
	.konfigurator .svg-wrapper .form_field input{
		padding: 0px 0 0 5px;
	}
	.konfigurator .svg-wrapper .form_field input::placeholder {
		color: rgb(0, 119, 186);		
	}
	.konfigurator .svg-wrapper input.small {
		width:100%!important;
	}
}
@media only screen and (max-width: 500px) {
	#impression h1 {
		font-size:30px;
	}
	h1{
		font-size:28px;
	}
	h2{
		font-size:18px;
	}
	#header {
	max-width:320px;
	}
	.entry .cb_2-3_1-3_left,
	.entry .cb_2-3_1-3_right,
	.flex > div > div,
	.konfigurator > div {
		padding:20px 10px!important;
	}
	.flex figure {
		margin: -10px 0 -17px;
	}
	#content, #footer {
		width: 98%;
		padding: 0 1% 20px;
	}
	.konfigurator .svg-wrapper #svgDiv {
		width:100%!important;
		padding:0!important;
		height:auto;
		margin-bottom:20px;
	}
	.konfigurator .svg-wrapper svg {
		width: 100%!important;
	}
}
@media only screen and (max-width: 400px) {
	.konfigurator{
		padding: 20px 0 50px!important;
		width:100%!important;
	}
	.konfigurator .svg-wrapper .form_label {
		width:28px;
		margin-right:0;
	}
	.konfigurator .svg-wrapper .form_field {
		float:left;
		width:65%;
	}
	.konfigurator .svg-wrapper .form_field input{
	padding: 0px 0 0 5px;
	}
	.konfigurator .svg-wrapper input.small {
		width:100%!important;
	}
}

