/*
*	cliclab³ miniFlex V1.0
*	Copyright 2018, c.schneider@e-sens-e.de
/******************************************************************************
*	css/styles.css
*	2018-22-01	(c) e.sens.e GmbH
*   mobile first
*	inkl. css-rset
*   open font
*   basics
*   tags
*   Allgemeine Klassen
*   Wrapper
*   Header
*   Top Navigation
*   Body
*   Left Navigation
*   Pane - Left, Center, Right
*   Content
*   Footer
*   Page Border
*   type color
*   red:                    #c70010;
*   blue:                   #292929;
*   lightgrey:              #c6c6c6;
*   grey:                	#b2b2b2;
*   blue                    #212637;

*   link					#627d95;
*   footer:                 #888888;


/*************************************************************
* Fonts
*************************************************************/

@font-face {
    font-family: 'vigaregular';
    src: url('../fonts/viga-regular-webfont.eot');
    src: url('../fonts/viga-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/viga-regular-webfont.woff2') format('woff2'),
         url('../fonts/viga-regular-webfont.woff') format('woff'),
         url('../fonts/viga-regular-webfont.svg#vigaregular') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'utahregular';
    src: url('../fonts/utah-webfont.eot');
    src: url('../fonts/utah-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/utah-webfont.woff2') format('woff2'),
         url('../fonts/utah-webfont.woff') format('woff'),
         url('../fonts/utah-webfont.svg#utahregular') format('svg');
    font-weight: normal;
    font-style: normal;

}
	

@font-face {
      font-family: 'fontello';
      src: url('../fonts/fontello.eot');
      src: url('../fonts/fontello.eot#iefix') format('embedded-opentype'),
           url('../fonts/fontello.woff') format('woff'),
           url('../fonts/fontello.woff2') format('woff2'),
           url('../fonts/fontello.svg#fontello') format('svg');
      font-weight: normal;
      font-style: normal;
    }
	



/******************************************************************************
* css-reset
* inspired by Stephan Heller [daik.de] <heller@daik.de>
******************************************************************************/

* {
	outline: medium none;
}

body {
    margin: 0;
}
blockquote,
dd,
figure {
    margin-right: 0;
    margin-left: 0; 
}
fieldset {
    padding-right: 0;
    padding-left: 0;
}

img, fieldset
{
	border-style:		none;
}

body,
blockquote,
button,
dd,
dl,
fieldset,
h1, h2, h3, h4, h5, h6,
hr,
input,
menu,
ol,
p,
pre,
select,
textarea {
    margin: 0;
    padding: 0;
}

address,
article,
aside,
audio,
blockquote,
canvas,
del,
div,
dl,
fieldset,
figcaption,
figure,
footer,
form,
h1, h2, h3, h4, h5, h6,
header,
hgroup,
li,
ol,
p,
pre,
section,
table,
td,
tfoot,
th,
ul,
video,
input {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	-webkit-tap-highlight-color: rgba( 0, 0, 0, 0 );
	-webkit-overflow-scrolling: touch;
	*behavior: url(../boxsizing.htc);
}

ul, 
ol {
    list-style: none;
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 0;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}
th {
    text-align: left;
}
td, th {
    vertical-align: baseline; 
}

hr {
    height: 1px;
    background-color: #fff;
    border-width: 1px 0px 0px;
    border-style: solid none none;
    border-color: #ccc;
}

input, 
button,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: inherit;    
}

button,
input[type=button],
input[type=color],
input[type=email],
input[type=password],
input[type=reset],
input[type=search],
input[type=submit],
input[type=tel],
input[type=text],
input[type=url],
textarea {
    -webkit-border-radius: 0;
    border-radius: 0;
    background-image: url('');
}

textarea {
	overflow-y: auto;
    resize: vertical;
}

button,
input[type=button],
input[type=search],
input[type=reset],
input[type=submit] {
    -webkit-appearance: none;
	cursor: pointer;
}

.br{border: 1px dotted red !important;}
.col_0{xbackground: red!important;}
.info,.info2{width:100%;height:50px; display:block;}

a:hover 				{ text-decoration: none; }
a:active			{ background: none; color: black; }

.scale-with-grid img,
img.scale-with-grid {
	max-width: 100%;
	height: auto;
}

.scale-with-grid img,
img.scale-with-grid{
	width: 100%;
}

.mobile_center {
	text-align: center;
}

/******************************************************************************
* basic
******************************************************************************/

html {
	overflow-x: hidden;
	overflow-y: scroll;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
	text-rendering: optimizeLegibility;
}

body
{
	font-family: 				utahregular, sans-serif;
	color: 						#666;
	height: 					100%;
	background: 				white;
	font-size:                  16px;
}

html, body {
	font-size: calc(14px + 2 * (100vw - 320px) / 448);
    line-height: calc(20px + 5 * (100vw - 320px) / 448);
}


form
{
	display:		inline;		/* IE */
}

small { font-size: 80%;}
sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup { top: -0.5em; }
sub { bottom: -0.25em; }

h1{
    font-size: 1.750em;
    line-height: 1.5em; 
	text-rendering: optimizeLegibility;
}

h2,h3{
  font-size: 1.714em; 
  line-height: 1em; 
  text-rendering: optimizeLegibility;
}

.textblock,p{
	line-height: 1.5em;
}

a:link,
a:visited
{
	color:				#C70010;
	text-decoration: 	none;
	outline: 			0;
}

a:hover,
a:active
{
	text-decoration: none;
	outline: 0;
	color: #040603;
}

a.agrey:link,
a.agrey:visited {
	color: grey;
}


a:focus {
	outline: thin dotted;
}

.shortbrief,
.footsb,
.hide-text {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	font:0/0 a;
}





/******************************************************************************
* header
******************************************************************************/

#header::after {
    background-color: #fff;
    border-bottom: 1px solid #eee;
    bottom: 0;
    content: "";
    height: inherit;
    left: 0;
    position: absolute;
    right: 0;
    z-index: -1;
}

#header {
    height: 3.57143rem;
    left: 0;
    padding: 1.42857rem 2.85714rem;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateZ(0px);
    transition: transform 0.5s ease-in-out 0s, -webkit-transform 0.5s ease-in-out 0s;
    width: 100vw;
    z-index: 1010;
    -moz-box-align: center;
    -moz-box-pack: justify;
    align-items: center;
    display: flex;
    height: 4.57143rem;
    justify-content: space-between;
}	

.header__brand{
    left: 0.42857rem;
    position: absolute;
    top: 1.72571rem;
    transform: translateY(-30%);
    width: 4.8rem;
}

.header__context-nav{
	position: absolute;
    right: 1.42857rem;
    top: 50%;
    transform: translateY(-50%);
	z-index: 101;
}

.header__main-nav {
	display: block;
	xwidth: 100%;
}

.header__social {
	display: block;
	margin-right: 2em;
}

#timer {
    display:none;
}


/******************************************************************************
* wrapper 
******************************************************************************/


.main_content {
	margin-top: 0px;
	position: relative;
	background-color: white;
	margin-bottom: 0;
}

.main_content.menu-opened {
	margin-top: 280px;
}

.container {
    margin-left: auto;
    margin-right: auto;
    max-width: 1024px;
    padding-left: 0;
    padding-right: 0;
	overflow: hidden;
}

.container.wide {
	  max-width: 1200px;
}

.section.nospace {
    padding-bottom: 0em;
	border-bottom: none;
}

.m-flex{
	letter-spacing: -0.34em;
	*letter-spacing: normal; /* reset IE < 8 */
    *word-spacing: -0.43em; /* IE < 8: collapse white-space between units */
    text-rendering: optimizespeed; /* Webkit: fixes text-rendering: optimizeLegibility */
	 display: -webkit-flex;
    -webkit-flex-flow: row wrap;
    /* IE10 uses display: flexbox */
    display: -ms-flexbox;
    -ms-flex-flow: row wrap;
}

.noline {
	border: none;
}

.mobile-m-box,
.mobile-m-box2,
.m-box,
.m-box2 {
	padding: 0.093em 0.8125em 0.093em 0.8125em;
}

.lt-ie9 .m-box {
		padding: 0.093em 0.8125em 0.093em 0;
	}

.lt-ie8 .m-box {
		padding: 0;
	}
	
.alpha {
	padding-left:	0px;
}

.omega {
	padding-right:	0px;
}

.logo {
	display: block;
}

.logo:focus {
	outline: 0px solid;
}

.logo img {
	max-width: 100%;
    min-width: 70px;
    width: 100%;
}

.no-border {
	border:none;
}

/* Service
============================== */

.message {
	background: #80bb3f;
	text-align: center;
}

/* navBar
============================== */


/* Accordian
================================================== */

/* todo */
.textblockgrouptype_accordion,
.textblockgroup {
	width: 100%;
	overflow: hidden;
	float: left;
}

.collapsible-head,
.collapsible-header {
	display: block;
	letter-spacing: 0em;
	font-family: 'Viga',vigaregular,sans-serif;
	xfont-size: 1.5rem;
	color: #292929;
	font-size: 1.063em; /* 20 */
	height: 40px;
	background: transparent url(../img/plus-minus.png) 99% 10px no-repeat;
	padding-left: 0px;
	line-height:  40px;
	margin: .833em;
	outline: none;
	text-decoration: none;
	cursor: pointer;
    margin-bottom: 5px;
	border-bottom: 2px solid #c50010;
}

.collapsible-head:hover {
	color: #c50010;
}

.collapsible-body {
	margin-top: 10px;
	margin-bottom: 20px;
	/*margin-left: 20px;*/
	display: none;
	width: 100%;
}

.no-js .collapsible-body {
	display: block;
}

.lt-ie9 .collapsible-body {
	padding-left: 3em;
}

.collapsible-body .textblock_div1-2 img {
	margin: 0 0 0.5em;
}

.collapsible-head.active {
	color: #c50010;
	background: transparent url(../img/plus-minus.png) 99% -50px no-repeat;
}

.collapsible-body .textblock strong.textblock_subline{
	font-size: 1.000em;
}

/* todo end*/

/* Flexslider
============================== */

.flexslider .slides > li {
    border: none;
}

.main_content .flexslider  {
	border: none;
}

.flex-direction-nav .flex-prev{
     xleft: 10px;
}

.flex-direction-nav .flex-next {
    xright: 10px;
}

#slider,
.flexslider .slides {
	position: relative;
	width: 100%;
}

div.textblockgrouptype_carousel > div.container{
	height: auto;
	margin-bottom: 10px;
}

/* superwide */

#slider.superwide {
	margin-left: inherit;
    margin-right: inherit;
	max-width: inherit;
}

.flexslider .slides div {
	width: 100%;	
	position: absolute;
	z-index: 200;
	right: 0%;
	left: 0%;
	bottom: 33%;
	color: white;
	display: none;
	padding: 0 2em;
}
/*
.flexslider .slides img.mobile{
	display: block;
}

.flexslider .slides img.desktop{
	xdisplay: none;
}

.flexslider .slides div h3{
	text-shadow: 1px 1px 20px rgba(0, 0, 0, 0.5);
	font-size: 2em;
}

.flexslider .slides div h3 strong{
}
*/
.flex-direction-nav a {
    top: 40%!important;
	xoutline: none;
}

.flexslider.carousel{
	margin-left: 1em!important;
	margin-right: 1em!important;
	margin-bottom: 2.5em!important;
	width: 100%;
}

.flexslider.carousel .slides > li {
	min-width: 290px;
	min-height: 280px;
}

.flexslider.carousel .flex-active {
	background-color: #C70010;
}

/* Maps
============================== */

#map {width: 100%; height: 400px; }


/* Fancybox
============================== */

   #fancybox-left-ico, #fancybox-left:hover span { left: -20px!important;}
   #fancybox-right-ico, #fancybox-right:hover span  { right: -20px!important; left: auto!important; }
   
   .fancybox-next {
		background: red none repeat scroll 0 0;
		right: -60px!important;
		outline: medium none!important;
	}
	
   .fancybox-prev {
		background: green none repeat scroll 0 0;
		left: -60px!important;
		outline: medium none!important;
   }
   
   .fancybox-prev span,
   .fancybox-next span {
		visibility: visible!important;
	}
	
	.fancybox-close {
		right: -42px!important;
	}

	.fancybox-opened .fancybox-skin {
    box-shadow: none!important;
}


/* Tabpanel
================================================== */

/* vertcal Tabpanel
================================================== */

.vtabbox .contenttabs {
   display: none;
}

.vtabbox .tabpanel {
	float: inherit;
	display: block;
}

.vtabbox .tab,
.vtabbox h3.tabpanel,
.vtabbox .tabpanel .textblock {
	letter-spacing:0;
}

.vtabbox .tab {
	display: block;
	line-height: 3em;
	border-bottom: 2px solid #e3e3e3;
	color: #e3e3e3;
	outline: 0px solid;
	padding-left: .5em;
}

.vtabbox .tab:link,
.vtabbox .tab:visited{
	color: #9F9F9F;
	outline: 0px solid;
	text-decoration: none;
}

.vtabbox .tab.selectedTab {
	color: #fbb03b;
	background: #e3e3e3;
	xbackground: #fbb03b;
}

.vtabbox h3.tabpanel {
	display: none;
	margin: 0.375em 1.25em;
	padding: .25em;
	border-bottom: 2px solid #fbb03b;
	font-size: 1.4em;
    font-weight: normal;
    line-height: 1.25em;
	background: #fbb03b;
}


/* horizontal Tabpanel
================================================== */

.htabbox.tabpanel {
	background: aqua;
}

.htabbox .contenttabs {
	width: 100%;
	display: none;
	overflow: hidden;
	border-bottom: 4px solid #a08f62;
	margin-bottom: 0.5em;
}

.lt-ie8 .tabpanel .m-box {
	padding: 0;
}

.htabbox .tabbox .tab {
	position: relative;
	display: block;
	height: auto;
	width: 110px;
	width: 25%;
	color: #87888a;
	outline: none;
	float: left;
	font-size: 1em;
	xfont-weight: bold;
	letter-spacing:0em;
	text-decoration: none;
}

.htabbox .tabbox3 {
	padding: 0 0.675em;
}

.htabbox .tabbox3 .tab {
	width: 31%;
	background: #515151;
	color: white;
	margin-right: 18px;
}

.htabbox .tabbox3 .tab2 {
	margin-right: 0;
}

.htabbox .tabbox  h3.tabpanel {
	display: block;
	position: relative;
    border-bottom: 4px solid #a08f62;
	letter-spacing: 0;
	font-size: 1.250em;
	line-height: 20px;
	text-align: center;
	padding: .5em;
}

/* Butttonstyle
.htabbox .tabbox  h3.tabpanel {
	display: block;
	position: relative;
	background: #a50c07;
	color: white;
	letter-spacing: 0;
	font-size: 1em;
	line-height: 20px;
	height: 60px;
	text-align: center;
	padding: .5em;
}
*/

/* Butttonstyle width arrow button
div.textblock.boilerplate p a:last-child:before,
.tabbox .tab:before,
h3.tabpanel:before,
.tabbox .tab.selectedTab:before{
		content:' ';
		display: block;
		height: 12px;
		width: 100%;
		background: #E4E4E4;
		bottom: 0;
		position: absolute;
		left:0;
		right:0;
		z-index:0;
}



.htabbox h3.tabpanel:after,
.htabbox .tabbox .tab.selectedTab:after {
		content:' ';
		display: block;
		width: 0;
		height: 0;
		bottom: 0;
		left:0;
		right:0;
		z-index:1;
		position: absolute;
		border-style: solid;
		border-width: 13px 13px 0 13px;
		border-color: #a50c07 transparent transparent transparent;
		margin-left:auto;
		margin-right:auto;	
}
*/

.section.htabbox .tabbox{
	padding-top: 1em;
}

.htabbox .tabbox div.tabpanel {
	display: block;
}

.htabbox div.tabpanel div.textblock h3 {
	font-size: 1.250em;
	margin: 10px 0;
}

.htabbox .tabbox .tab0.selectedTab {

	}

.htabbox .lt-ie9.tabbox .tab {
	xheight: 120px;
	xbackground: yellow;
}


/******************************************************************************
* cliclab generic
******************************************************************************/

.float_left
{
	clear:			left;
	float:			left;
}

.float_right
{
	clear:			right;
	float:			right;
}

.align_left
{
	text-align:		left;
}

.align_right
{
	text-align:		right;
}

.align_center
{
	text-align:		center;
}

.align_justify
{
	text-align:		justify;
}

.allcaps
{
	text-transform:		uppercase;
}

.valign_top {
	display: block;
}

.valign_auto {
	text-align:		right;
	margin-left: 	1em;
	float: 			right;
}

.image-container.float_right,
.image-container.float_left
{
	margin-right: 	0em;
	width: 			100%;
}

.textblock img.float_right,
.textblock img.float_left,
.image-container.float_right img,
.image-container.float_left img
{
	width: 			100%;
}

.lt-ie9 .image-container.float_right,
.lt-ie9 .image-container.float_left,
.lt-ie9 .textblock img.float_left,
.lt-ie9 .textblock img.float_right,
.lt-ie9 .image-container.float_right img,
.lt-ie9 .image-container.float_left img
{
	width:auto;
}

.lt-ie9 .textblock img.float_right,
.lt-ie9 .image-container.float_right {
	margin-left: 2em;
}

.lt-ie9 .textblock img.float_left,
.lt-ie9 .image-container.float_left {
	margin-right: 2em;
}

.image-container.float_right
{
	margin-left: 	0em;
}

/*************************************************************
* textblocks global
*************************************************************/
div.textblock {
}

div.textblock b {
	font-weight: bold;
	color: #393939;
}

div.textblock b.hilite {
	padding-left: 1.5em;
	position: relative;
}
 
div.textblock b.hilite::before {
	content:" ";
	width: 15px;
	height: 15px;
	display:block;
	background-color:#C70010;
	font-weight: bold;
	border-radius: 3px;
	top:3px;
	left:0;
	position: absolute;
}

div.textblock h2,
div.textblock h5,
div.textblock h4,
div.textblock h3 {
    color:                      #292929;
	font-weight:                normal;
	margin:                     1em 0 .25em 0;
	font-family:           		'Viga',vigaregular,sans-serif;
	font-size: 					1.5rem;
	line-height: 				1.15em;
	padding-bottom: 			.35em;
}

div.textblock.headline h2,
div.textblock.headline h3 {
	font-size: 					1.5rem;
	line-height: 				1.15em;
	padding-bottom: 			.35em;
}

div.textblock.headline h3 {
	padding-bottom: 			0;
}


div.textblock.headline_border h3 {
	border-bottom: 4px solid #C70010;
	padding-bottom: .25em;
}

div.textblock.redbox h3,
div.textblock.redbox strong.textblock_subline  {
	xcolor: white;
}

div.textblock.redbox h3 {
	margin-top:0;
}

div.textblock.redbox div  {
	xbackground: #C70010;
	border-radius: 10px;
	xcolor: white;
	padding-top: 1em;
	padding-bottom: 1em;
	padding:1em;
	border:1px solid #C70010;
}

div.textblock.redbox.opak div{
	background: #C70010;
	color: white;
}
div.textblock.redbox.opak div a:link,
div.textblock.redbox.opak div a:visited{
	color: white;
}
div.textblock.redbox.opak h3,
div.textblock.redbox.opak b,
div.textblock.redbox.opak strong,
div.textblock.redbox.opak strong.textblock_subline{
	color: white;
}

div.textblock.redbox.opak .button {
	background: #292F39;
}

div.textblock.redbox.opak div a:hover{
	color: white;
	text-decoration: underline;
}

div.textblock.greybox,
div.textblock.redbox {
	margin-bottom: 1.5em;
}

.map div.textblock.redbox.opak{
	font-size: 14px;
	line-height: 19px;
}

div.textblock.greybox h3,
div.textblock.greybox strong.textblock_subline  {
}

div.textblock.greybox h3 {
	margin-top:0;
}

div.textblock.greybox > div  {
	background: #EAEAEA url(../img/infobox.png) 1em .5em no-repeat;
	border-radius: 10px;
	padding: 1.2em 1em 1em 4.25em;
	margin-top: 1em;
}
div.textblock.greybox.alert div {
	background: #EAEAEA url(../img/wichtigbox-icon.png) 1em 1em no-repeat;
}

div.textblock.redbox  {
	background: transparent url(../img/servicebox-icon.png) 1.5em 1em no-repeat;
	margin-top: 30px;
}
div.textblock.redbox  div {
	padding-left:4em;
}

div.textblock.greybox div.readmore {
	display:none;
}

div.textblock.greybox a.more {
	float: right;
	margin-right: 1em;
}

div.textblock a.bold {
	font-weight:bold;
}


/*************************************************************
* section -> textblocks modules
*************************************************************/

.section.whitebg .container{
	background: white;
}

.section.greybg{
	background: #EFEFEF;
}

.section.darkgreybg{
	background: #292f39;
}

.section.redbg{
	background: #C70010;
}

.section.redbg .textblock h3,
.section.darkgreybg .textblock h3,
.section.redbg .textblock,
.section.darkgreybg .textblock{
	color: white;
}

.section.bgimage {
	min-height: 180px;
	background-size: cover;
	background-position: center top;
}

.section .img-box{
	display: flex;
	align-items: stretch;
}

.section .img-box.m-box {
	xpadding:0;
}

.section .text-center {
	display: flex;
	align-items: center;
    justify-content: center;
	padding: 2rem 0;
}

.section .text-center div {
	width: 50%;
}
/*************************************************************
* modul bignumber
*************************************************************/

.counts {
	background: #EDEDED;
	padding-top: 2em;
	padding-bottom: 2em;
}

.bignumber {
	font-size: 2em;
}

.counts::before {
    content: ' ';
    display: block;
    width: 0;
    height: 0;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    position: absolute;
    border-style: solid;
    border-width: 25px 25px 0 25px;
    border-color: white transparent transparent transparent;
    margin-left: auto;
    margin-right: auto;
}

/*************************************************************
* kontakt
*************************************************************/


/*Select*/

.dropcontainer {
    position:relative;
    color: white;
    width: 100%;
    margin-bottom: 1.25em;
} 

.trigger {
    color: white!important;
    padding: 1em 0;
	font-size: 1em;
    width: 100%;
	outline: none;
    background: transparent url(../img/select-arrow-open.png) 98% center no-repeat;
    display: block;
    border: none;
    border-bottom: 1px solid white;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    letter-spacing: 0.5px;
	outline: 0px solid white dotted;
}

.activetrigger {
    color: white!important;
	letter-spacing: 0.5px;
    font-weight: bold;
    padding: 1em 0;
    width: 100%;
    background: transparent url(../img/select-arrow-close.png) 98% center no-repeat;
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.trigger:focus,
.activetrigger:focus {
	outline: none;
}

div.section div.textblock .activetrigger a,
div.section div.textblock .dropcontainer a {
	color: white;
	letter-spacing: 0.5px;
}


div.section div.textblock .dropcontainer ul {
	display: block;
    border: none;
    list-style-type: none;
    padding: 0;
    margin: 0;
    width: 100%;
    z-index: 100;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	-webkit-transition: all 0.5s ease; 
    -moz-transition: all 0.5s ease; 
    -o-transition: all 0.5s ease; 
    transition: all 0.5s ease;
}

div.section div.textblock .dropcontainer ul li {
    padding: 0;
	margin:0!important;
	background: none;
	font-weight: bold;
	display: block;
}

.dropcontainer ul li:hover {
    outline: none;
}

div.section div.textblock .dropcontainer ul li:first-child {
    display: none;
}

.dropcontainer ul li:last-child {
    border-bottom: none;
}

.dropdownhidden {
    xdisplay: none!important;
	opacity:0;
	height: 0;
}

.dropdownvisible {
    height: auto;
	xdisplay: block;
opacity:1;
}


/*Kontaktformular*/

input, textarea {
    padding: 0;
    font-size: 1.15em;
	letter-spacing: 0.5px;
	font-weight: bold;
	border: none;
	color: white;
    border-bottom: 1px solid white;
    margin-bottom: 1em;
    width: 100%;
	background: transparent;
}
input.error {
	margin-bottom: 0em;
}
label.error {
	font-size: .85em;
}
label.error::after {
	height: 1em;
	vertical-align: top;
	content: "";
	display:block;
}
input[type="text"],
input[type="tel"],
input[type="email"],
 textarea {
    padding: .25em 0;
}

label {
    font-size: 1em;
    line-height: 1.3;
    letter-spacing: 0.5px;
    color: white;
    padding: 0px;
    background: transparent;
	cursor:pointer;
}

/*Checkboxen */

input[type="checkbox"] {
    -moz-appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    background: none;
    border: 1px solid white;
    outline: none;
    vertical-align: Middle;
    margin-bottom: 3px;
    margin-right: 5px;
    border-radius: 0px;
    outline: 0 none;
	cursor:pointer;
}

input[type="checkbox"]:checked {
	background: url(../img/checkbox_active.svg);
}

/*validator*/

label.error {
    display: none;
}

a.trigger.error,
input.error,
textarea.error {
    border: 1px solid red;
}

input.submit,
.kontakt1, .kontakt2 {
        width: 100%;
    }

input.submit {
	background: #C70010;
	color: white;
	border:1px solid white;
	padding: .5em 0;
	margin-top: 1em;
	margin-bottom: 2em;
	font-weight:normal;
}

#email-form a,
.zustimmung a{
	color: white;
	text-decoration: underline;
}

.phonefilter,
.cl-form-done,
.cl-form-fail {
	display:none;
}
/*************************************************************
* content
*************************************************************/


div.textblock h3 b {
	font-weight:				bold;
}

div.textblock h3 i {
    display:                    block;
    float:                      right;
    font-size:                  inherit;
    font-style:                 normal;
    font-weight:                normal;
}

div.textblock img,
div.textblock object {
    margin-bottom:               30px;
    margin-left:                 0px;
    margin-right:                30px;
    margin-top:                  30px; 
}

div.textblock img.float_left,
div.textblock object.float_left {
    margin-left:                 0px;
    margin-right:                10px;
    margin-top:                  0px;
    margin-bottom:               1em;
}

div.textblock img.float_right,
div.textblock object.float_right {
    margin-left:                 10px;
    margin-right:                0px;
    margin-top:                  4px;
	margin-bottom:               1em;
}

div.textblock strong {
    margin:                      0;
    padding:                     0;
	font-weight:                 normal;
}

div.textblock strong.textblock_subline{
    clear:                       both;
    display:                     block;
	font-family:                 utahregular, sans-serif;
	font-weight: 				 normal;
	font-size: 				     1.10rem;
	color: 						 #838382;
	line-height:                 1.75em;
	padding-top:				 .2em;
}

div.textblock.text-center strong.textblock_subline
{
	margin-bottom: 0rem;
}


div.textblock ul
{
    margin:                     0;
    padding:                    0;
    display:                    inline;
}

div.section div.textblock ul li
{
    margin:                     0 0 6px;
	/*background: 				transparent url(../img/select-arrow-open.png) 0px 7px no-repeat;*/
	position: relative;
}

div.section div.textblock ul li:before
{
	 content: "\e800";
     font-size: 1em;
	 font-family: "fontello", sans-serif;
	 color: #C70010;
}

div.section div.textblock ul.slides li {
	background: none;
	padding:inherit;
	margin:inherit;
}

div.section div.textblock ul li:first-child
{
    margin-top:                 10px;
}

div.section div.textblock ul.slides li:first-child{
	margin-top:0;
}

div.textblock img
{
	border-radius: 6px;
}


div.textblock div.image-container {
	position: relative;
	vertical-align: middle;
}

div.textblock span.image-title {
	position: absolute;
	top: 36%;
	left: 5%;
	right: 5%;
	display: block;
	color: black;
	width: 90%;
	height: auto;
	line-height: 40px;
	font-family: Montserrat, sans-serif;
	xfont-weight: bold;
	font-size: 1.225em;
	font-size: 1em;
	xfont-size: 1.5em;
	text-align: center;
	margin-top: 0%;
	background:white;
	border: 3px solid black;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}



/*************************************************************
* boilerplates
*************************************************************/


/*************************************************************
* global sections 
*************************************************************/

.vb,
.vb .container {
	margin-bottom: 3em;
}

.vb0,
.vb0 .container {
	margin-bottom: 1em;
}

.vb1 {
	margin-bottom: .75em;
}

.vb2,
.vb2 .container {
	margin-bottom: 11em;
}
.vb3 {
	margin-top: 2em;
}

.lt-ie9 .vspace1 {
	padding-left: 40px;
	padding-right: 40px;
}



.section.adown::before{
	content:' ';
	display: block;
	height: 20px;
	width: 100%;
	background: white;
	bottom: 0;
	position: absolute;
	left:0;
	right:0;
	z-index:0;
}

.section.adown::after{
	content:' ';
	display: block;
	width: 0;
	height: 0;
	bottom: 0;
	left:0;
	right:0;
	z-index:1;
	position:absolute;
	border-style: solid;
	border-width: 25px 25px 0 25px;
	border-color: #a50c07 transparent transparent transparent;
	margin-left:auto;
	margin-right:auto;	
}


div.section.wide,
div.textblock_wide {
	width: 100%;
	max-width: 100%;
}
div.section .waisted {
	padding: 0 1em;
}



/*************************************************************
* macrotemplates / textblocks
*************************************************************/

div.section .slides li {
	position: relative;
}

div#textblock_480,
div#textblock_414 {
	display:none;
}

div.textblock.servicekachel,
div.section a.tile::before,
div.section a.tile {
	background: #292f39;
	padding: 1rem;
	display: block;
	color: white;
	font-size: .85rem;
	line-height: 1.25rem;
	margin: 1rem;
	min-height: 220px;
	min-height: 345px;
}

div.section a.tile::before,
div.section a.tile {
	display: block;
	border-radius: 10px;
}


div.textblock.servicekachel {
		min-height: auto;
}

div.section a.tile:hover{
	background: #C70010;
}

div.section a.tile::before {
	content: "";
	background: #DADADA;
	min-width: 200px;
	min-height: 220px;
	min-height: 345px;
	position: absolute;
	z-index: -1;
	margin: -1rem;
	-moz-transform: rotate(7deg); 
	-webkit-transform: rotate(7deg); 
	-o-transform: rotate(7deg);
	-ms-transform: rotate(7deg);
	transform: rotate(7deg);
}

div.section a.tile h3 {
	font-size: 1rem;
	font-family: vigaregular, sans-serif;
	font-weight: normal;
	line-height: 1.15rem;
	display: block;
	margin-top: 1rem;
	margin-bottom: .5rem;	
}

div.textblock_table {
	margin-top: 1rem;
}

div.textblock_table table {
	width:100%;
}

div.textblock_table tr {
	width: 100%;
}

div.textblock_table td {
	xwidth: 50%;
	vertical-align: top;
}

div.textblock_table th{
	font-weight: normal;
	margin-bottom: .5em;
	display:inline-block;
}

div.textblock_table tr.even td {
    background-color: #eaeaea;
    background-color: #EAEAEA;
    color: #393939;
	line-height: 1.25em;
	padding-top:.7em;
	padding-bottom:.7em;
}

div.textblock_table tr.even td a {
	
}
div.textblock_table tr.even td a:hover {
	color: black;
}

div.textblock_table tr.odd td {
	line-height: 1.25em;
	padding-top:.7em;
	padding-bottom:.7em;
	color: #878787;
	background-color: #FAFAFA;
}

div.textblock_table tr td:first-child {
    padding-left: .5rem;
}
div.textblock_table tr td:last-child {
    padding-right: .5rem;
}

div.textblock_table tr td img{
    max-width: 55%;
	height: auto;
	float: left;
	margin:0;
	padding:0;
}



div.textblock_servicediagramm {
	margin-top: 2em;
	margin-bottom: 0px;
}

div.textblock.servicekachel h3 {
	color: #C70010;
	margin:0.5em 0 .5em 0;
	font-size: 1.15em;
}

div.textblock.servicekachel {
	color: #292929;
	background: #ededed;
	margin: 0;
}

div.serviceangebot .container {
	position: relative;
}

div.textblock.servicekachel{
	position: relative;
	top: inherit;
	left: inherit;
	width: inherit;
	z-index: inherit;
}



/*************************************************************
* buttons
*************************************************************/

a.extlink {
	font-family: vigaregular, sans-serif;
	font-size: 1rem;
	line-height: 1.65rem;
	display: block;
	width: 100%;
	border-bottom: 2px solid #C70010;
	color: black;
	outline: none;
	font-weight: none;
}

a.extlink:hover {
	color: #C70010;
}

a.extlink:first-child {
	margin-top: 2rem;
}

a.extlink::after {
	 content: "\e800";
     font-size: 1em;
	 font-family: "fontello", sans-serif;
	 color: #C70010;
	 float:right;
}

a.button {
	line-height: 2rem;
	width: 240px;
	background: #292F39;
	border-radius: 16px;
	margin-top: 2em;
	color: white;
	margin: 0 auto;
	display:table;
	margin-top: 1em
	text-decoration:none;
}

a.button:hover  {
	color: white;
	background: #C70010;
}


/************************************************************
* inline background definitons / build with cms
*************************************************************/

/************************************************************
* flexslider ipad fix todo
*************************************************************/

/************************************************************
* shift & states
*************************************************************/




.lt-ie9 div.shift-1-2 {
        margin-left: 50%;
        *margin-left: 49.9690%;
	}
	
.lt-ie9 div.shift-1-12{
         margin-left: 8.3333%;
		*margin-left: 8.3023%;
	}

div.shift-4-12 {
        margin-left: 0;
        *margin-left: 0;
	}
	
	
.desktop, .isdesktop, .istablet {display: none;}
.lt-ie9 .desktop {display: inline-block;}

.mobile{display: inline-block; width: 100%;}
.lt-ie9 .mobile {display: none;}
.ismobile {display: inline-block;}


/*************************************************************
* buttons
*************************************************************/

a.fb-share-button {
    background: #627D95;
	display: inline-block;
	margin: 1em 0;
	color: white;
	padding: .5em 2em;
	font-size: inherit;
	line-height: 2em;
}

a.fb-share-button {
    background: #627D95;
    background: #ACAFB8;
	display: block;
	margin: 1em 0;
	color: white;
	padding: 0.35em 2em 0.4em 3em;
	font-size: 1em;
	line-height: 2em;
	position: relative;
	margin: 1.75em auto 1em;
	width: 150px;
	font-family: opensans, sans-serif;
}

a.fb-share-button:hover {
	background: #627D95;
}

a.fb-share:before {
     font-size: 2em;
	 position: absolute;
	 bottom: 15%;
	 left: 10px;
	 font-family: "fontello", sans-serif;
}


/******************************************************************************
* footer 
******************************************************************************/

div.footer {
    display: block;
    width: 100%;
 	background: #A4A4A4;	
	color: white;
	padding-top: 2rem;
	padding-bottom: 0;
}

div.subfooter {
	margin-top: 2rem;
	background: black;
}

div.footer hr {
	display: none;
}

ul.footer-list {
	text-transform: uppercase;
	font-size: .9rem;
}


/*
.lt-ie9 .footer-list {float: right;}

.lt-ie9 .footer-list li{	
	float: right;
	margin-right: 10px;
}
*/

/*red*/
.footer-list a:link,
.footer-list a:visited {
	text-decoration: none;
	display: block;
	text-align: center;
	outline: 0;
	color: white;
	margin: .95em 0;
	background: #292929;
	line-height: 1.85;
	padding-top: .5em;
	padding-bottom:.5em;
	text-transform: uppercase;
}

.footer-list a:hover,
.footer-list a:active {
	text-decoration: none;
    background: #6C7D91;
}

.footer-list a.ig,
.footer-list a.fb {
	font-size: 1.5rem;
	background: none;
	margin: 1rem auto 0;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	text-align: center;
	display: block;
	margin-top: 0px;
}

.footer-list a.copyright span{
	font-size: 0rem;
	text-indent: -10000px;
	display: inline-block;
	width: 1.5rem;
	height: 1rem;
	background: transparent url(../img/copyright.png) center center no-repeat;
	background-size: 50%;
	background-position: cover;
	text-align: center;
	vertical-align: middle;
	margin-bottom: .2rem;
}

#footer .credits-list{
	margin: 4em 0 2em;
	font-family: opensans, arial, sans-serif;
	line-height: 2em;
	float: left;
	width: 100%;
	font-size: 0.923em;
	border-top: 1px solid #aaa;
}

#footer .credits-list li {
	float: left;
}
#footer .credits-list li:last-child {
	float: right;
}

#footer .credits-list,
#footer .credits-list a {
	color: #627D95;
	padding:0;
	outline: none;	
}

.lt-ie9 .footer-list a {
    background: none;
    display: inline;
    float: left;
}


#toTop {
	height: 1.5em;
	width: 1.5em;
	display: block;
	text-align: center;
	color: white;
	font-size: 1.5em;
	text-decoration:none;
	outline: none;
	margin: 1em auto;
	position: fixed;
	right: 10px;
	bottom: -20px;
	z-index: 200;
}

#toTop span {
	line-height: 1.35em;
	padding-left: .05em;
	display:inline-block;
}

/*************************************************************
* fontellos
*************************************************************/

.fontello {
	*overflow: auto;
	*zoom: 1;
	*display: inline;
}

span.fb-share:hover,
span.tw-share:hover,
span.pin-share:hover {
	background-position: 0px -1910px;
}

span.fb-share:before { content: '\f204'; }
span.tw-share:before { content: '\f202'; }
span.pin-share:before { content: '\f209'; }
span.close-alt:before {	content:"\f406"; }
span.neue-close:before {	content:"\f405"; }


a.mediumbutton,
a.superbutton {
	display: block;
	width: 200px;
	height: 60px;
	background-image: url(../img/sprite.png);
	background-position: 0px -712px;
	background-repeat: no-repeat;
	color: white;
	text-decoration: none;
	line-height: 3.529em;
	margin: 0 auto;
}

a.mediumbutton {
	background-position: 0px -2115px;
	width: 138px;
	height: 45px;
	line-height: 45px;
	text-align: center;
}

a.superbutton:hover {
	background-position: 0px -776px;
}

a.mediumbutton:hover {
	background-position: 0px -2159px;
}

a.read-more-button-inline,
a.read-more-button,
a.read-more {
	color: #a50c07;
	margin: 1.5em 0 .5em;
	display: block;
	outline: none;
}

.lt-ie9	a.read-more-button-inline {
		display: none;
	}
	
a.read-more-button-inline,
a.read-more-button {
	 text-decoration: none;
	 padding-left: 60px;
	 padding-top: 0;
	 background: transparent url(../img/read-more.png) 0 0 no-repeat;
	 line-height: 1.471em;

	 color: black;
	 margin: 0;
	 padding-bottom: 10px;
	 font-weight: bold;
	 min-height: 45px;
}

a.read-more-button {
	display: inline-block;
	width: 80%;
	line-height: 2.5em;
}

div.read-more-button {
	margin-left: 60px;
	display: block;
}

a.read-more.close {
	text-indent: -10000px;
	background:   transparent url(../img/sprite.png) 0 -848px no-repeat;
}

a.read-more-button.close {
	background: transparent url(../img/read-more-b.png) 0 0 no-repeat;
}

a.read-more-button-inline.close {
	background: transparent url(../img/read-more-inline-b.png) 0 0 no-repeat;
}

a.read-more-button-inline {
	display: inline-block;
	background: transparent url(../img/read-more-inline.png) 0 0 no-repeat;
	text-indent: -10000px;
	outline: none;
	padding-bottom: 10px;
    padding-top: 0;
	margin-bottom: 10px;
	line-height: 1.471em;
	 min-height: inherit;
}

a.download {
	display: block;
	height: 45px;
	background: red;
	padding-left: 55px;
	width: 100%;
	font-weight: bold;
	color: black;
	line-height: 1.3em;
	text-decoration: none;
}

a.download:hover {
	color: #a50c07;
}


/************************************************************
 * fontello
************************************************************/

.fontello {
	vertical-align: top;
	text-align: center;
	display: inline-block;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	line-height: inherit;
	text-decoration: inherit;
	text-transform: none;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	speak: none;
	margin-left: .2em;
	margin-right: .2em;
	width: 1em;
}

.fontello {
	*overflow: auto;
	*zoom: 1;
	*display: inline;
}

.icon-angle-double-right:before { content: '\e800'; } 
.icon-angle-double-left:before { content: '\e801'; } 
.icon-left-open-big:before { content: '\e802'; } 
.icon-right-open-big:before { content: '\e803'; } 
.icon-down-open-big:before { content: '\e804'; } 
.icon-up-open-big:before { content: '\e805'; }
.icon-right-dir:before { content: '\e806'; } 
.icon-left-dir:before { content: '\e807'; }
.icon-facebook:before { content: '\e808'; }
.icon-twitter-circled:before { content: '\e809'; }
.icon-twitter:before { content: '\e80a'; }
.icon-facebook-circled:before { content: '\e80b'; }
.icon-gplus:before { content: '\e80c'; }
.icon-gplus-circled:before { content: '\e80d'; }
.icon-pinterest:before { content: '\e80e'; }
.icon-pinterest-circled:before { content: '\e80f'; }
.icon-instagram:before { content: '\e810'; }
.icon-home:before { content: '\e811'; }
.icon-phone:before { content: '\e812'; }
.icon-cog:before { content: '\e813'; }
.icon-down-open:before { content: '\e814'; }
.icon-left-open:before { content: '\e815'; } 
.icon-right-open:before { content: '\e816'; } 
.icon-up-open:before { content: '\e817'; } 
.icon-down-open-mini:before { content: '\e818'; } 
.icon-left-open-mini:before { content: '\e819'; } 
.icon-right-open-mini:before { content: '\e81a'; }
.icon-vimeo-circled:before { content: '\e81b'; }
.icon-vimeo:before { content: '\e81c'; } 
.icon-home-1:before { content: '\e81d'; } 
.icon-home-outline:before { content: '\e81e'; } 
.icon-location:before { content: '\e81f'; } 
.icon-attention-filled:before { content: '\e820'; }
.icon-warning-empty:before { content: '\e821'; } 
.icon-basket:before { content: '\e822'; } 
.icon-th-list:before { content: '\e823'; } 
.icon-search:before { content: '\e824'; } 
.icon-youtube-squared:before { content: '\e825'; } 
.icon-youtube:before { content: '\e826'; } 
.icon-angle-double-up:before { content: '\e827'; } 
.icon-angle-double-down:before { content: '\e828'; }
.icon-menu:before { content: '\e829'; } 
.icon-wordpress:before { content: '\e82a'; } 
.icon-instagram-1:before { content: '\e82b'; } 
.icon-instagram-filled:before { content: '\e82c'; } 
.icon-share:before { content: '\e830'; }
.icon-align-justify:before { content: '\e831'; } 
.icon-forward:before { content: '\e832'; } 
.icon-link-ext:before { content: '\e833'; } 
.icon-mail:before { content: '\e834'; } 
.icon-mail-alt:before { content: '\f0e0'; } 
.icon-linkedin:before { content: '\f31a'; } 
.icon-linkedin-rect:before { content: '\f31b'; } 


.arrow:after { 
	content: '\f432';
	display: inline-block;
	font-size: 1em;
    margin-left: -15px;
	padding-bottom: 16px;
	width: 40px;
	font-family: 'fontello';
	transform: rotate(90deg);
    -moz-transform: rotate(90.0deg);  /* FF3.5+ */
    -o-transform: rotate(90.0deg);  /* Opera 10.5 */
    -webkit-transform: rotate(90.0deg);  /* Saf3.1+, Chrome */
}
	
.lt-ie9 .arrow:after {
	*overflow: auto;
	*zoom: 1;
	*display: inline;
	content: '\f429';
	display: inline-block;
	font-size: 1em;
	vertical-align: top;
    margin-left: -5px;
	width: 40px;
	font-family: 'fontello';
}

.flexslider.mainslider {
	margin-top: 4.57143rem;
}

/************************************************************
* breakpoints
*************************************************************/

.info { height: 20px; display: block;}
.info {background: red;}
.info:before{content: "30em - 480px";}
.main_content {border: 3px solid red;}
.noborder .main_content {border:none!important;z-index:1}

@media screen and (min-width: 21.875em) {

	.main_content {border-color: pink;}
	
	.flexslider.mainslider {
		margin-top: 5.57143rem;
	}

	
	.map div.textblock.redbox.opak{
		font-size: 16px;
		line-height: 22px;
	}
	


	/*
	.mobile-m-box, .mobile-m-box2, .m-box, .m-box2 {
		padding: 0.375em 1.625em;
	}
	
	
	.flexslider .slides div {
		display: block;
	}
	
	div.textblock span.image-title {
		top: 43%;
		left: 15%;
		right: 15%;	
		width: 70%;
		font-size: 1.225em;
	}
	
	
	.section.mobile-scale .textblock.m-box img{
		width: auto;
	}
	*/
	


}

@media screen and (min-width: 35.5em) {

	.main_content {border-color: yellow;}
	.tablet, .istablet, .istablet.ismobile {display:inline-block;}
    .mobile, .ismobile {display:none;}
	
	
	div.textblock.headline h2,
	div.textblock.headline h3 {
		margin:                     1em 0 0 0;
		font-size: 					3rem;
		line-height:                1.15em;
	}
	
	div.textblock.headline strong.textblock_subline{
		line-height:				1.75em;
		font-size:					1.15rem;
	}
	
	.section.bgimage {
		min-height: 280px;
	}
	
	div.shift-4-12 {
        margin-left: 33.3333%;
        *margin-left: 33.3023%;
	}
	
	.map div.textblock.redbox.opak{
		font-size: 14px;
		line-height: 20px;
	}

	/*
	
	
	h2{
		font-size: 1.875em; 
		line-height: 1.5em;
	}
	
	.flexslider .slides div {
	   margin: 0 auto 0 auto;
	   bottom: 0;
	   top: 30%;
	   width: 550px;
	}
	
	.flexslider .slides div h3 {
	   font-size: 1.5em;
	}
		
		
	.flexslider .slides img.mobile{
		display: none;
	}

	.flexslider .slides img.desktop{
		display: block;
	}
	
	div.textblock.box .image-container a:hover::before {
		line-height: 170px;
	}
		
	.m-box,
	.mobile-m-box {
		padding: 0em .75em 0em .75em;
	}
	
	.m-box.pure-u-md-1-3:nth-child(2) {
	    padding: 0.375em 0em 0.375em 0em;
	}
	
	.m-box.compact {
		padding-bottom:0;
		margin-bottom:0;
	}
	.m-box2,
	.mobile-m-box2 {
		padding: 0 1em 0.375em 1em;
	}

	.container .m-box2:last-child {
		padding: 0 1em 0.375em 1em;
	}
	
	.vspace-bottom,
	.vspace-bottom .container {
		padding-bottom: 3em;
	}
	
	div.footer.narrow .container,
	div.section.narrow .container {
		padding-left: 2em;
		padding-right: 3em;
	}
		
	.vspace0 {
		padding-top: 2.5em;
	}
	
	.vb1 {
	    margin-bottom: .75em;
    }
	
	.mobile.scale-with-grid img {
		width: auto;
	}
	
	div.textblock img {
	    width: 100%;
	    margin: 0;
	}
	
	div.textblock.full-img-height  img {
		margin:0;
		padding:0;
	}
	
	div.textblock.full-img-height  img {
		height: 100%;
	}
	
	div.textblock img.float_left {
		width: 50%;
		margin: .5em 1em .1em 0;
		float: left;
	}
	
	div.textblock img.float_right {
		width: 50%;
		margin: .5em 0 .1em 1em;
		float: right;
	}
	

	div.textblock.fpicts {
		margin:0;
	}
	
	
	div.textblock.fpicts a {
		margin: 0;
	}
	
	div.textblock.fpicts a img:last-child {
		padding-right: 10px;
	}
	
	div.textblock.fpicts a:last-child  img{
		padding-right: 0;
	}
	
	div.textblock.fpicts.m-box {
		padding-top: 0;
		padding-bottom: 10px;
		margin: 0;
		line-height :.5em;
	}
	
	div.textblock.fpicts img{
		width: 22.854%!important;
		padding-right: 5px!important;
		height: auto!important;
		margin:0!important;
	}
	
	div.textblock.f3picts img {
		width: 31.42%;
	}	
	
	div.textblock.f2picts img {
		width: 48.45%;
	}
	
	div.textblock.fpicts img:last-child{
		padding: 0;
	}
	div.textblock.fpicts img:first-child{
		padding-left: 1em;
	}
	
	div.textblock.hspace1 {
		padding-left: 8em;
		padding-right: 8em;
	}
	*/
	/*yellow footer*/
	/*
	div.subfooter {
		 padding-top: 3em;
		 padding-bottom: 3em;
	}
	
	div#footer {
	background: #2F3035;
	}
	
	div.footer .footer-list a:link,
	div.footer .footer-list a:visited {
		display: block;
		background: none;
		padding: .1em;
		text-align: left;
		text-transform: inherit;
		color: grey;
	}
	
	div.footer .footer-list li,
	div.footer .footer-list a{
		font-size: inherit;
		line-height: 1.5em;
		padding:0;
		margin:0;
	}
	
	
	div.footer .footer-list li {
		float: left;
		margin-right: 3rem;
	}
		
	div.footer .footer-list.social li {
		margin-top: .5rem;
		margin-right: 1rem;
	}
	
	div.footer .footer-list.social li a {
		font-size: inherit;
		text-align: center;
		display: inline-block;
		line-height: 1.7rem;
		background-color: #cfd1d2;
		text-align: center;
		width: 2rem;
		height: 2rem;
		border-radius: 2em;
		-moz-border-radius: 2em;
	}
	
	div.footer .footer-list.social li a:hover {
		background-color: #bababa;
	}
	
	div.footer .textblock h3 {
		margin:0;
		color: #627D95;
		font-family: opensans,sans-serif;
		font-size: 1.255em;
		margin-bottom: .5em;
	}
	
	#toTop {
		float: right;
        margin-right: 1.25rem;
	}
	
	.button-round  span,
	#toTop span {
		xline-height: 1.5em;
	}
	
	.relative {
	    position: relative;
	}
	
	.button-round {
		height: 1.5em;
		width: 1.5em;
		display: block;
		text-align: center;
		color: white;
		border-radius: 1.5em;
		border: 2px solid gregrey: ;		font-size: 1.5em;
		text-decoration: none;
		outline: none;
	}
	
	.button-round.button-yellow {
	     border: 2px solid #fbd082;
	}
	
	a.button-round.button-yellow {
	color: #fbd082;
	float: right;
	right: 0;
	top:0;
	position:absolute;
	}
	
	a.button-round.button-yellow:hover  {
	color: black;
	}
	
	*/
	
/*yellow*/	
		/*
	.sitemap-list li a{
		font-family: verdana, sans-serif;
		text-align: left;
		color:#424242;
		background: transparent;
		padding:0;
	}

	.sitemap-list li.first a{
		text-align: left;
		padding-left:0;
	}

	div.textblock.light h3 {
		font-size: 2.059em;
	}	
	
	div.textblock.light h3 {
		font-size: 2.053em;
		line-height: 1em;
		font-weight: normal;
		font-family: sanslight, sans-serif;
		margin-bottom: 0.4em;
	}

	.collapsible-header{
		background: transparent url(../img/sprite.png) 0px -1683px no-repeat;
		font-size: 1.471em; 
		padding-left: 60px;
		margin-bottom: 15px;
		height: 45px;
	}
	
	.collapsible-header.active{	
		color: black;
		background-position: 0px -1731px;
	}
	
	.collapsible-content {
		padding-left: 3.8em;
	}
	

	div.textblock img.float_left,
	.image-container.float_left
	{
		margin-right: 2em;
		margin-top: .3em;
		width: auto;
	}

	div.textblock img.float_right,
	.image-container.float_right
	{
		margin-left: 2em;
		margin-top: .3em;
		width: auto;
	}

/*yellow*/
/*
	.image-container.float_right img,
	.image-container.float_left img
	{
		width: auto;
	}

	*/
	
	/* Boilerplates */
	/*	
	div.textblock.boilerplate div {
		text-align: left;
		color: #939393;
		border: 1px solid #eceded;
		background: #f6f6f6;
		padding:.5em;
	}
	
	div.textblock.boilerplate h3 {
		margin: .5em;
		padding-bottom: .5em;
		text-align: center;
		border-bottom: 1px solid #fbb03b;
		color: #1b1464;
	}
	
	div.textblock.boilerplate a {
		color: #fbb03b;
	}
		
	div.textblock.boilerplate p a:last-child{
			border-bottom: 1px dotted #222;
			outline: none;
			font-weight: normal;
			background: none;
			color: #222;
			display: inline-block;
			width: auto;
			line-height: inherit;
			margin-top: 0;
	}

	div.textblock.boilerplate p a:hover:last-child{
				color: #AE0D07;
	}
	
	div.textblock.boilerplate p a:last-child:before {
		display: none;
	}
	/*  *boilerplates  */
	
	
	/*yellow*/
	/*
	div.textblock.events {
	    margin-bottom: 2em;
	}
	
	div.textblock.events tr td:first-child {
	    font-size: 2em;
		line-height: 2em;
		padding: 0.25em .25em .25em .5em;
		vertical-align: center;
	}
	
	div.textblock.events tr td {
	    vertical-align: top;
	}
	
	div.section div.textblock.events tr ul li:first-child {
		margin: 0;
	}

	div.textblock.events tr ul li {
		float: left;
		padding: 0;
		line-height: auto;
		margin: 0;
	}
	
	div.textblock.events tr:hover td {
	   background: #DCDDDD;
	}
	
	div.textblock.events tr ul li span{
		display: inline;
		margin: 0 1em;
	}
	
	div.textblock.events tr ul li.cta {
	    float: right;
	}
		
	div.textblock.events tr ul li.cta a{
		width: 90%;
		padding: 0;
		text-align: center;
		line-height: 2em;
		display: block;
		background: transparent;
		color: #627D95;
	}
	

	.footer-list.social li {
		margin-left: 0em;
		margin-right: 1.1em;
	}
	*/
		/* Verical tabbox */
	/*
	.vtabbox .contenttabs {
		width: 25%;
		*width: 24.9690%;
		float: right;
		display: inline;
	}

	.vtabbox .tabpanel {
		width: 75%;
		*width: 74.9690%;
	}
	
*/
	
	/* textblock service */
	/*
	div.textblock.service {
		position: relative;
		padding: 0 40px 0 0;
		margin-top: 4em;
		margin-bottom: 0em;
		float: none;
	}
	
	div.textblock.service::after {
		content: " ";
		display: block;
		bottom: 20px;
		border-bottom: 4px solid #867E73;
		clear:both;
	}
	
	div.textblock.service .textblock_subline {
		display: inline;
	}
	
	div.textblock.service .textblock_subline::after {
		content: " ";
		display: block;
		height: 0;
	}
		
	div.textblock.service .image-container {
		width: 48%;
		float: left;
	}
	
	div.textblock.service .image-container img {
		max-width: 100%;
		height: auto;
		float: left;		
	}
	
	div.textblock h6,
	div.textblock h4,
	div.textblock h3 {
		margin-top:                 0;
		margin-bottom:              0.75em;
		margin-bottom:              0.25em;
		margin:0;
		font-size:                  2.625rem;
	}
	
	div.textblock h4 {
		font-size:                  inherit;
		line-height:                1.125em;
		margin-bottom:               0.7em;
		xwidth: 60%;
	}
	
	div.textblock h5 {
		font-size:                  inherit;
		font-weight:                normal;
		line-height:                1.125em;
	}
		
	

	a.fb-share-button {
	    display: inline-block;
    }
	*/
		/* yellow */
		/*
	div.textblock.article .image-wrapper .extra-badge {
		top: 9%;
	}

	div.textblock.article .image-wrapper .extra-badge a {
		width: 110px;
		height: 30px;
		font-size: 0.75rem;
		line-height: 32px;
	}
	

	.section div.textblock.text-center strong.textblock_subline {
		margin-bottom: 0;
	}
	
	.main_content {
	margin-bottom: 200px;
	}	
	
	
*/

}

/*@media screen and (min-width: 48em) {*/
@media screen and (min-width: 56.3em) {

	.main_content {border-color: green;}
	.mobile {display: none;}
	.mobile-flex {display: none!important;}
	.ismobile {display: none;}
	.tablet, .istablet {display: none;}
	.desktop {display: block; margin: 0 auto; /*width: 100%;*/}
	.desktop-flex {display: flex!important;}
	.isdesktop {display: block;}
	div.textblock.desktop {display: inline-block;}
	
	
	.main_content {
		margin-bottom: 470px;
	}
	
	div.footer {
		bottom: 0;
		left: 0;
		position: fixed;
		z-index: 0;
	}

	.flexslider .slides img.mobile{
		display: none;
	}

	.flexslider .slides img.desktop{
		display: block;
	}

	#header {
		height: 5.57143rem;
	}

	#header.fixed {
		transform: translate3d(0px, -100.1%, 0px);
	}

	.header__brand{
		flex-basis: 8.57143rem;
		margin-top: 0px;
		position: relative;
		transform: translateY(-30%);
	}

	.logo img {
		min-width: 140px;
	}

	.header__main-nav {
		-moz-box-flex: 2;
		flex-grow: 2;
	}
	.header__social {
		-moz-box-flex:1;
		flex-grow: 1;
	}

	.section.bgimage {
		min-height: 280px;
	}

	.flexslider.carousel{
		margin-left: 4em!important;
		margin-right: 4em!important;
		margin-bottom: 2.5em!important;
	}
	
	div.footer {
		background: #292929;	
	}
	
	.footer-list li.first {
	   
	}

	.footer-list a:link,
	.footer-list a:visited {
		background: none;
		padding-top:0em;
		padding-bottom:0em;
		text-align: left;
		text-transform: none;
		color: #91949D;
		line-height: 1.2em;
		font-size: .9em;
	}
	
	.footer-list a {
		xborder: 1px solid green;
		line-height: 1.4em;
	}
	
	.subfooter .footer-list a {
		float:left;
		margin-right: 1rem;
		text-decoration: underline;
	}
	
	.footer-list a.ig,
	.footer-list a.fb {
		font-size: .9rem;
		text-decoration: none;
		margin-top: 0.95em;
	}
	
	.footer-list a.fb {
		margin-right: 0rem;
		margin-left: .5rem;
	}
	
	.footer-list a.copyright span{
		background: transparent url(../img/copyright-g.png) center center no-repeat;
		background-size: 50%;
		background-position: cover;
	}
	
	div#textblock_480,
	div#textblock_414 {
		display:block;
		min-height: 740px;
	}
	
	.map div.textblock.redbox.opak{
		font-size: 17px;
		line-height: 30px;
	}
	.header__social {
		display: block;
		margin-right: inherit;
	}



	
/*green*/	

	
	.size1 {
		width: 100%;
		display: block;
		margin-top: 1em;
	}

	.size2 {
		width: 48%;
		display: block;
		overflow: hidden;
	}
/*
	.right {
		float: right;
		padding: 0;
	}
		
	.float_right .auto {
		float: right;
	}
	*/
	
	/*green ------------------------------------------------- textblock tgreen   -------------------------*/
	
	div.textblock img.float_left,
	div.textblock img.float_right {
	    width: 33%;
	}
		
	div.textblock h3.align_left {
	    text-align: left;
    }
	
	div.textblock_servicediagramm {
	margin-bottom: 300px;
	}

	div.serviceangebot .servicekachel0{
		position: absolute;
		top: 24%;
		left: 1%;
		width: 300px;
		z-index: 1000;
	}
	div.serviceangebot .servicekachel1{
		position: absolute;
		top: 58%;
		left: 10%;
		width: 300px;
		z-index: 1000;
	}
	div.level0.serviceangebot .servicekachel1{
		top: 63%;
	}	
	div.level0.serviceangebot .servicekachel2{
		top: 68%;
	}
	
	div.serviceangebot .servicekachel2{
		position: absolute;
top: 65.5%;
left: 49%;
		width: 300px;
		z-index: 1000;
	}

	div.serviceangebot .servicekachel3{
		position: absolute;
		top: 35%;
		left: 70%;
		width: 300px;
		z-index: 1000;
	}

	div.textblock .flex-left{
		width: 28%;
		min-height: 50px;
		float: left;
		display: inline-block;
		height:238px;
		overflow:hidden;
	}
	
	div.textblock .flex-right{
	   width: 68%;
	}
	
	div.textblock .flex-right{
	   width: 35%;
	}
	
	div.textblock .flex-right2 {
    	width: 33%;
	    padding-top: 4rem;
    }
	
	div.textblock.premium h3 {
		background: black;
		color: white;
		display: inline-block;
		padding: .2em .5em .2em .5em;
		margin-left: -.5em;
	}
	
	div.textblock strong.textblock_subline
	{
	   
	}
	
	.section div.textblock.text-center div  {
		text-align:inherit;
	}
	
	

	div.textblock.premium  strong.textblock_subline {
		margin-top: .5em;
	}
	
	

	
	/************************************************************
	* Tabelle / build with cms
	*************************************************************/

	/*
	.col-btn{
		float:right;
		text-align: right;
	}
	
	.table-list-item .col1  {
        align-items: center;
    }
	*/
	
	div.textblock.servicekachel,
	div.section a.tile::before,
	div.section a.tile {
		border-radius: 10px;
	}


	
/*green */
	

}

@media screen and (min-width: 64em) {
	.info {background: blue;}
	.info:before{content: "64em";}
	.main_content {border-color: blue;}
	
	.main_content {
		margin-bottom: 560px;
	}
	
	.flexslider .slides div {
	   top: 29%;
	   width: 700px;
	}
	
	.flexslider .slides div h3{
	   font-size: 2em;
	}
	
	div.section .flexslider .slides a.tile h3 {
	   font-size: 18px;
	}
	
	
	.flex-direction-nav a {
          top: 40%;
    }

	.rsArrowIcn   {display:block;}

	.vspace0 {
		padding-top: 2.5em;
	}
	
	.vb0 {
	    margin-bottom: 4em;
    }

	.vb1 {
	    margin-bottom: .75em;
    }

	div.section.bgimage.bigsize {
		min-height: 560px;
	}
	
	div.section.bgimage.bigsize {
		min-height: 650px;
	}
	/*
	div.textblock.f4picts img{
		width: 23.8%;
	}
	
	div.textblock.f3picts img{
		width: 32.25%;
	}
	
	div.textblock.f2picts img {
		width: 49.20%;
	}
	*/
	
	div.textblock.hspace1 {
		padding-left: 12em;
		padding-right: 12em;
	}
	
	div.textblock.trenner {
		padding-right: 41%;
		padding-left: 41%;
	}
	
	div.textblock.trenner::after {
		top: 0px;
		height: 40%;
	}
	
	div.textblock.service {
		padding: 0 40px 0 0;
	}
	
	/* blue */
	

}

@media screen and (min-width: 80em) {
	.info {background: violet;}
	.info:before{content: "80em - 1280px"}
	.main_content {border-color: violet;}
	
	.rsHor .rsArrowLeft { left: 5%; top: 0; }
	.rsHor .rsArrowRight { right: 5%; top:0; }
	
	.section.bgimage {
		min-height: 380px;
	}
		

}

@media screen and (min-width: 93.75em) {
	.info {background: aqua;}
	.info:before{content: "93.75em - 1500px"}
	.main_content {border-color: aqua;}
	
	.rsHor .rsArrowLeft { left: 12%; top: 0; }
	.rsHor .rsArrowRight { right: 12%; top:0; }
	
	.flexslider .slides div {
	   top: 40%;
	}
	
	.flexslider .slides div h3{
	   font-size: 2.5em;
	}
	.section.bgimage {
		min-height: 480px;
	}

}
