
@charset "utf-8";

/*---------------------------------
	FORMULARE
-----------------------------------*/
.notice.pos_fixed {
	left: 50%;
	margin-left: -400px;
	position: fixed;
	top: 150px;
	width: 500px;
	z-index: 9999;
}
textarea {
	resize: vertical;
}
/*.bg_color.bright .tab-content p, .bg_color.bright .tab-content-blank p { color: #FFF; }*/
.bg_color.dark .tab-content p, .bg_color.dark .tab-content-blank p,
.bg_color.dark .tab-content h1, .bg_color.dark .tab-content-blank h1,
.bg_color.dark .tab-content h2, .bg_color.dark .tab-content-blank h2,
.bg_color.dark .tab-content h3, .bg_color.dark .tab-content-blank h3,
.bg_color.dark .tab-content h4, .bg_color.dark .tab-content-blank h4 { color: #FFF; }

/*---------------------------------
	TELEFON-LINKS
-----------------------------------*/
p.phone {
	font-size: 20px;
	font-weight: bold;
	line-height: 25px;
}
	p.phone a, p.phone a:hover {
		color: #E2001A;
	}
	p.phone.dark a, p.phone.dark a:hover {
		color: #FFF;
	}
p.phone a:hover {
	text-decoration: none;
	cursor: default;
}

/*---------------------------------
	STOPPER
-----------------------------------*/
.stopper {
	background: url(../images/stopper_bg.png) 10px center no-repeat #E2001A;
	padding: 10px 10px 0 75px;
	margin-bottom: 8px;
}
	.stopper p.head,
	.stopper p {
		color: #FFFFFF;
		float: left;
		line-height: 20px;
	}
		.stopper p.head {
			padding-top: 0;
			padding-right: 5px;
			text-transform: uppercase;
			font-size: 18px;
			font-weight: 400;
		}
		.stopper p {
			padding-top: 2px;
		}
		.stopper p a {
			color: #C3001A;
		}
			.stopper p a:hover {
				color: #FFF;
				text-decoration: none;
			}

/*---------------------------------
	GOOGLE MAPS
-----------------------------------*/
.map-canvas {
	width: 100%;
	height: 300px;
	margin-bottom: 8px;
}

/*---------------------------------
	PFEIL DOWN SCROLL
-----------------------------------*/
.one_down {
	position: relative;
	top: 100%;
	left: 50%;
	margin: -100px 0 0 -30px;
	text-align: center;
	width: 60px;
	height: 60px;
	z-index: 999;
}
	.arr {
		cursor: pointer;
		transition: opacity 1.0s ease-out 0s;
		opacity: 0.5;
	}
	.arr-active {
		opacity: 1;
	}

/*---------------------------------
	TOGGLE CONTAINER
-----------------------------------*/
.toggle_head {
	background: #E2001A;
	color: #FFF;
	position: relative;
	font-size: 14px;
	line-height: 30px;
	padding: 0 0 0 25px;
	margin-bottom: 8px;
}
.toggle_head:before {
	content: "\f0ab";
	font-family: FontAwesome;
	position: absolute;
	top: 1px;
	left: 5px;
}
.toggle_head.trigger_active:before {
	content: "\f0aa";
}
	.toggle_head:hover {
		background: #C3001A;
		cursor: pointer;
	}
.toggle_container {
	background: #fff;
	/*padding: 8px;*/
	margin-bottom: 8px;
}

/*---------------------------------
	SCHREIBMASCHINE
-----------------------------------*/
.type-wrap {
	margin: 10px 0 20px 0;
	padding: 15px;
	background: #ffffff;
}
	.type-wrap .input-field,
	.type-wrap .submit-field {
		border: #314E98 solid 1px;
		padding: 5px 10px;
		height: 46px;
		overflow: hidden;
	}
	.type-wrap .submit-field {
		border-left: none;
		float: right;
		background: #999;
		color: #fff;
		font-size: 20px;
		line-height: 30px;
		padding: 5px 20px;
	}
		.type-wrap span {
			font-size: 20px;
			line-height: 30px;
		}
#typed-cursor{
	opacity: 1;
	font-weight: 100;
	font-size: 24px;
	-webkit-animation: blink 0.7s infinite;
	-moz-animation: blink 0.7s infinite;
	-ms-animation: blink 0.7s infinite;
	-o-animation: blink 0.7s infinite;
	animation: blink 0.7s infinite;
}
	@-keyframes blink{
		0% { opacity:1; }
		50% { opacity:0; }
		100% { opacity:1; }
	}
	@-webkit-keyframes blink{
		0% { opacity:1; }
		50% { opacity:0; }
		100% { opacity:1; }
	}
	@-moz-keyframes blink{
		0% { opacity:1; }
		50% { opacity:0; }
		100% { opacity:1; }
	}
	@-ms-keyframes blink{
		0% { opacity:1; }
		50% { opacity:0; }
		100% { opacity:1; }
	}
	@-o-keyframes blink{
		0% { opacity:1; }
		50% { opacity:0; }
		100% { opacity:1; }
	}

/*---------------------------------
	ACCORDEON
-----------------------------------*/
.trigger {
}
	a.trigger_active {
		color: #333333 !important;
	}
.toggle_container {
}
	.toggle_container p {
	}

/*---------------------------------
	ALERT-BOXEN
-----------------------------------*/
.alert {
	position: relative;
	padding: 16px 5px 6px 50px;
	margin-bottom: 6px;
	background: lightyellow;
}
.alert:before {
	content: "\f0f3"; /*fa-bell*/
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	font-size: 30px;
	color: #deae00;
	text-decoration: inherit;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	width: 50px;
	height: 40px;
	line-height: 40px;
	margin-top: -20px;
}
	.alert.red {
		/*background: pink;*/
		background: #fbdfe2;
	}
		.alert.red:before {
			content: "\f071"; /*fa-exclamation-triangle*/
			/*color: red;*/
			color: #e2001a;
		}
	.alert.green {
		/*background: lightgreen;*/
		background: #e7f4e5;
	}
		.alert.green:before {
			content: "\f05a"; /*fa-info-circle*/
			/*color: green;*/
			color: #40a32b;
		}

/*---------------------------------
	REFERENZEN
-----------------------------------*/
.tab-content-blank.zitat {
	background: url(../images/quotes.png) 5px 5px no-repeat #e7f4e5;
	background-image: url(../images/quotes.svg),none;
	background-size: 40px auto;
	padding-left: 50px;
}
.referenzen .zitat {
	background: url(../images/quotes.png) 0 0 no-repeat #FFF;
	background-image: url(../images/quotes.svg),none;
	background-size: 30px auto;
	padding-left: 50px;
}
	.referenzen .zitat .zitatgeber {
		color: #E2001A;
		padding-bottom: 0;
	}
	.referenzen .zitat .toggle_container {
		padding: 0;
	}

/*---------------------------------
	SPÖRER
-----------------------------------*/
section.hellgruen,
div.hellgruen {
	background: #e7f4e5;
}
section.hellblau,
div.hellblau {
	background: #ddf1f9;
	border: #009bdd solid 10px;
}
	div.hellgruen,
	div.hellblau {
		padding: 20px 10px 16px;
		margin-bottom: 6px;
	}

/*---------------------------------
	SONDER-KLASSEN
-----------------------------------*/
.normalizer {
	overflow: hidden;
}
.box {
	background: #FFF;
	padding: 10px 15px 2px;
	margin-bottom: 8px;
}
	.box ul {
		overflow: hidden;
	}

.iframe {
	margin-bottom: 4px;
}
	.iframe iframe,
	.ext_iframe {
		margin: 0;
		padding: 0;
	}

.ext_iframe {
	width: 100%;
	border: none;
	margin-bottom: 30px;
}

.tab-content-blank.dark {		background-color: #E2001A }
.tab-content-blank.bright {		background-color: #e7f4e5 }
.tab-content-blank.bg_color {	background-color: #999 }
/*.tab-content-blank.zitat {	background-color: #e7f4e5 }*/

ol.spezial_colored {
	list-style: none;
	padding-left: 0;
}
	ol.spezial_colored li {
		counter-increment: myIndex;
		padding-left: 0;
		margin-left: 30px;
		margin-bottom: 0;
	}
	ol.spezial_colored li:before {
		content: counter(myIndex, decimal) ".";
		display: block;
		margin-left: -30px;
		padding-left: 3px;
		position: absolute;
		width: 20px;
		font-weight: bold;
		color: #E2001A;
	}

ol.spezial_in_box {
	list-style: none;
	padding: 0;
}
	ol.spezial_in_box li {
		counter-increment: myIndex;
		padding-left: 0;
		margin-left: 30px;
	}
	ol.spezial_in_box li:before {
		background: none repeat scroll 0 0 #E2001A;
		content: counter(myIndex, decimal) ".";
		display: block;
		margin-left: -30px;
		padding-left: 3px;
		position: absolute;
		text-align: center;
		width: 20px;
		font-weight: bold;
		color: #FFF;
	}

table.berechnung {
	width: 100%;
}
	table.berechnung td {
		vertical-align: top;
	}
		table.berechnung td.number {
			width: 40px;
			font-weight: bold;
			color: #E2001A;
		}
		table.berechnung td.desc {
			width: 400px;
		}
		table.berechnung td.amounts {
		}

p.number {
	background: none repeat scroll 0 0 #E2001A;
	border-radius: 15px;
	box-shadow: 0 0 0 2px #E2001A, 0 0 0 3px #fff inset;
	color: #fff;
	float: left;
	font-weight: bold;
	margin-right: 10px;
	padding: 6px 0;
	text-align: center;
	width: 30px;
	line-height: 17px;
}

/*---------------------------------
	LISTE MIT GRÜNEM + DAVOR
-----------------------------------*/
ul.plus-list {
	margin-bottom: 8px;
	overflow: hidden;
}
	ul.plus-list li {
		background: #fff;
		padding: 4px 5px 4px 30px;
	}
	ul.plus-list li:before {
		content: "\f055";
		font-family: FontAwesome;
		color: #96bd0d;
		font-size: 16px;
		margin-left: -20px;
		margin-top: 0;
		position: absolute;
	}

/*---------------------------------
	PFEIL-LINK
-----------------------------------*/
.arrow_box {
	position: relative;
	border-bottom: 4px solid #C3001A;
	margin: 0 20px 16px 0;
	padding: 0 10px 0 0;
	font-size: 22px;
	line-height: 50px;
	text-transform: uppercase;
	-webkit-border-radius: 5px 0 0 5px;
	border-radius: 5px 0 0 5px;
	background: #E2001A; /* Old browsers */
	background: -moz-linear-gradient(top, #C3001A 0%, #E2001A 50%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#C3001A), color-stop(50%,#E2001A)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #C3001A 0%,#E2001A 50%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #C3001A 0%,#E2001A 50%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, #C3001A 0%,#E2001A 50%); /* IE10+ */
	background: linear-gradient(to bottom, #C3001A 0%,#E2001A 50%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#C3001A', endColorstr='#E2001A',GradientType=0 ); /* IE6-9 */
}
	.arrow_box:before {
		border-color: #ebebeb transparent;
		border-style: solid;
		border-width: 27px 0 27px 20px;
		content: " ";
		height: 0;
		left: 100%;
		margin-left: -20px;
		position: absolute;
		top: 0;
		width: 0;
	}
	.arrow_box a {
		display: block;
		width: 100%;
		height: 100%;
		color: #fff;
		text-shadow: 1px 1px 3px #000;
		padding-left: 30px;
	}
		.arrow_box a:before {
			content: "\f105";
			font-family: FontAwesome;
			font-size: 35px;
			margin-left: -20px;
			position: absolute;
			font-weight: normal;
		}




/* Retina-specific stuff here */
@media (min-resolution: 192dpi), (-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (-o-min-device-pixel-ratio: 2/1), (min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
}




/* Smartphones ----------- */
@media only screen 
	and (max-width : 599px) {
	table.berechnung td.number,
	table.berechnung td.desc,
	table.berechnung td.amounts {
		width: auto;
	}
	/*ul.tabs li a{
		padding: 9px 5px;
	}*/
	.notice.pos_fixed {
		left: 0;
		margin: auto 10px;
		width: calc(100% - 20px);
	}
}
/* Ganz Kleine Smartphones ----------- */
@media only screen 
	and (max-width : 359px) {
}

/* Tablets (Hochformat) sowie kleinere Displays und Größere Smartphones ----------- */
@media only screen 
	and (min-width : 600px) 
	and (max-width : 960px) {
	.notice.pos_fixed {
		left: 0;
		margin: auto 10px;
		width: calc(100% - 20px);
	}
}

/* Breite Desktops und Laptops ----------- */
@media only screen 
	and (min-width : 1240px) {
}



