/*
Theme Name: OSG Strom
Theme URI: http://vorne-sein.at
Author: Clemens Trummer, Helmut Deutschmann
Author URI: http://vorne-sein.at
Description: Theme für OSG Strom
Version: 1.0
Tags: 
*/

/*
Copyright (c) 2016-2020 The Inter Project Authors.
"Inter" is trademark of Rasmus Andersson.
https://github.com/rsms/inter

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
http://scripts.sil.org/OFL

-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION AND CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
*/

/* inter-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter Regular';
  font-style: normal;
  font-weight: 400;
  src: url('./fonts/inter-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('./fonts/inter-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/inter-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('./fonts/inter-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('./fonts/inter-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('./fonts/inter-v12-latin-regular.svg#Inter') format('svg'); /* Legacy iOS */
}
/* inter-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Inter Bold';
  font-style: normal;
  font-weight: 700;
  src: url('./fonts/inter-v12-latin-700.eot'); /* IE9 Compat Modes */
  src: url('./fonts/inter-v12-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/inter-v12-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('./fonts/inter-v12-latin-700.woff') format('woff'), /* Modern Browsers */
       url('./fonts/inter-v12-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('./fonts/inter-v12-latin-700.svg#Inter') format('svg'); /* Legacy iOS */
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    font-size: 100%;
    font: inherit;
    padding: 0;
    border: 0;
    margin: 0;
    vertical-align: baseline;
}
body {
    line-height: 1;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
.clear {
    clear: both;
}
.cf:before, .cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.sticky {
}
.bypostauthor {
}
.wp-caption {
}
.wp-caption-text {
}
.gallery-caption {
}
.alignright {
    float: right;
}
.alignleft {
    float: left;
}
.aligncenter {
}
body {
    background: #fff;
    font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    font-size: 22px;
    color: #282a2c;
}
a {
    color: #d41124;
    text-decoration: none;
}
a[href^="tel"] {
    color: inherit;
}
h1, h2, h3, h4, h5 {
    font-family: 'Inter Bold',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    color: #d41124;
    font-size: 36px;
    line-height: 115%;
}
strong {
    font-family: "Inter Bold",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}
.outer, .t-outer {
    width: 90%;
    margin: 0 auto;
    max-width: 1600px;
    position: relative;
}
::selection {
  background: #d41124;
  color: #fff;
}
::-moz-selection {
  background: #d41124;
  color: #fff;
}
/*-------------------------Slide UP---------------------------*/
#content .outer > div, #footer .teaser {
    transform: translateY(120px);
    -webkit-transform: translateY(120px);
}
#eintrag1, .home .headline{
	transform: translateY(0) !important;
	-webkit-transform: translateY(0) !important;
	animation: none;
}
.visible {
    transform: translateY(0) !important;
    -webkit-transform: translateY(0) !important;
    animation: none;
}
@keyframes come-in {
	from {
		transform: translateY(120px);
	}
	to {
		transform: translateY(0);
	}
}
@-webkit-keyframes come-in {
	from {
		transform: translateY(120px);
	}
	to {
		-webkit-transform: translateY(0);
	}
}
.move {
    animation: come-in 0.8s ease forwards;
}
/*--------------------Preloader--------------------*/
.spinner-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    z-index: 10000;
}
.spinner {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -20px;
    margin-top: -20px;
    background-color: #d41124;
    border-radius: 100%;
    -webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
    animation: sk-scaleout 1.0s infinite ease-in-out;
}
@-webkit-keyframes sk-scaleout {
0% {
-webkit-transform: scale(0)
}
100% {
-webkit-transform: scale(1.0);
opacity: 0;
}
}
@keyframes sk-scaleout {
0% {
-webkit-transform: scale(0);
transform: scale(0);
}
100% {
-webkit-transform: scale(1.0);
transform: scale(1.0);
opacity: 0;
}
}
@keyframes zoom {
0% {
-webkit-transform: scale(1);
transform: scale(1);
}
100% {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}
}
/*----------------Header-----------------*/
header > .menu {
    height: 75px;
    position: fixed;
    width: 100%;
    z-index: 10;
	transition: all .2s;
	top: 0;
	background: #fff;
}
header .logo {
    background: #fff;
	height: 75px;
}
header.bg > .menu{
	-webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
}
header nav {
    text-align: right;
    position: relative;
    width: 90%;
    max-width: 1800px;
    margin: 0 auto;
}
header nav > a {
    line-height: 80px;
    color: #999;
    position: absolute;
    top: 0;
}
header nav > a.home {
    left: 0;
}
header nav > a.login {
    right: 0;
}
header nav ul {
    margin: 0;
    padding: 0 5%;
	box-sizing: border-box;
}
header nav ul > li {
    display: inline-block;
    padding: 0;
	padding-left: 40px;
    line-height: 75px;
}
header nav ul > li > a {
    font-size: 22px;
    color: #d41124;
    font-family: 'Inter Bold', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}
header nav ul > li > a:hover, header nav ul > li.current-menu-item > a{
	color: #282a2c;
}
header nav ul > li.float-left{
	float: left;
	padding-left: 0;
}
header nav ul > li.float-left.current-menu-item > a, header nav ul > li.float-left > a:hover{
	color: #d41124;
}
header nav ul > li.menu-button a{
	background: #d41124;
    color: #fff;
    padding: 15px 30px;
    border-radius: 25px;
    font-size: 22px;
    letter-spacing: 1px;
    font-family: 'Inter Bold', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    transition: all .2s;
    text-decoration: none;
    line-height: 100%;
    display: inline-block;
}
header nav ul > li.menu-button a:hover{
	background: #282a2c;
}
header > .cf {
    font-family: 'Inter Regular',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	position: fixed;
    top: 0;
    width: 100%;
    left: 50%;
    max-width: 1800px;
    z-index: 11;
    transform: translateX(-50%);
}
header > .cf > div {
    float: left;
    width: 25%;
    position: relative;
    height: 100%;
	display: none;
}
header > .cf > div:nth-child(2) {
    width: auto;
    text-align: center;
	display: block;
	position: absolute;
    left: 5%;
    top: 0;
	display: none;
}
header > .cf > div h1 {
    font-size: 0;
    line-height: 100%;
}
header > .cf > div h1 > a {
    position: relative;
    display: inline-block;
    font-size: 0;
    line-height: 100%;
    outline: none;
	text-align: left;
}
header > .cf > div h1 > a > span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 100%;
    font-size: 12px;
	color: #fff;
}
header > .cf > div:nth-child(3) {
    text-align: right;
}
header > .cf > div > div {
    position: relative;
    line-height: 175%;
}
header > .cf > div > div > a {
    color: #000;
}
.button {
    display: none;
}
.mobile-menu {
    display: none;
}
.mobile-kontakt {
    display: none;
}

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

@media screen and (max-width:1600px) {
	header nav ul{
		padding: 0;
	}
	header > .menu{
		height: 70px;
	}
	header nav ul > li{
		line-height: 68px;
	}
}
@media screen and (orientation:portrait){

}
@media screen and (max-width:1400px) {
	header .logo{
		height: 65px;
	}
	header > .menu{
		height: 65px;
	}
	header nav ul > li{
		line-height: 65px;
		padding-left: 30px;
	}
	header nav ul{
		padding: 0;
	}
	header nav ul > li.menu-button a {
        padding: 8px 25px;
        font-size: 20px;
        letter-spacing: 2px;
    }
}

@media screen and (max-width:1200px) {
	header nav ul > li{
		padding-left: 20px;
	}
}

@media screen and (max-width:767px) {
	header nav {
		display: none;
	}
	header .logo{
		width: auto;
		background: transparent;
		height: 55px;
		display: none;
	}
	header .menu {
		height: 56px;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 3;
		background: #fff;
	}
	.mobile-kontakt {
		width: 45%;
		display: block;
		line-height: 56px;
		text-align: right;
		right: 5%;
		position: absolute;
	}
	.mobile-kontakt a {
		background: #d41124;
		color: #fff;
		padding: 8px 20px !important;
		border-radius: 25px;
		font-size: 18px !important;
		letter-spacing: 1px;
		font-family: 'Inter Bold', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
		transition: all .2s;
		text-decoration: none;
		line-height: 100%;
		display: inline-block;
	}
	.mobile-kontakt a:hover{
		background: #282a2c;
	}
	.button {
		display: block;
		position: absolute;
		left: 5%;
		text-align: right;
	}
	.button > span {
		display: inline-block;
		position: relative;
		line-height: 56px;
		margin-right: 5px;
		float: right;
	}
	.button > span > a {
		color: #282a2c;
		margin-left: 10px;
	}
	.x {
		display: inline-block;
		overflow: hidden;
		margin: 0;
		padding: 0;
		width: 35px;
		height: 56px;
		left: 0;
		font-size: 0;
		text-indent: -9999px;
		margin-top: 0;
		appearance: none;
		box-shadow: none;
		border-radius: none;
		border: none;
		cursor: pointer;
		background: transparent;
		z-index: 5;
		line-height: 50px;
	}
	.x span {
		display: block;
		position: relative;
		top: 0;
		left: 0;
		right: 0;
		height: 4px;
		background: #282a2c;
	}
	.x span::before, .x span::after {
		position: absolute;
		display: block;
		left: 0;
		width: 100%;
		height: 4px;
		background-color: #282a2c;
		content: "";
	}
	.x span::before {
		top: -10px;
	}
	.x span::after {
		bottom: -10px;
	}
	.lines span {
		transition: background 0.3s 0s;
	}
	.lines span::before,  .lines span::after {
		transition-duration: 0.3s, 0.3s;
	}
	.lines span::before {
		transition-property: top, transform;
	}
	.lines span::after {
		transition-property: bottom, transform;
	}
	.lines.is-active span {
		background: none;
	}
	.lines.is-active span::before {
		top: 0;
		transform: rotate(45deg);
	}
	.lines.is-active span::after {
		bottom: 0;
		transform: rotate(-45deg);
	}
	.lines.is-active span::before,  .lines.is-active span::after {
		background-color: #d41124;
	}
	header > .cf {
		height: 56px;
		padding-top: 0;
		left: 5%;
		transform: translateX(0);
		width: auto;
	}
	header > .cf > div:nth-child(2) {
		display: block;
		position: fixed;
		top: 0;
		z-index: 4;
		height: 85px;
		left: 0;
	}
	header > .cf > div > div{
		transform: none;
		top: 0;
	}
	header > .cf > div {
		display: none;
	}
	.mobile-menu {
		display: block;
		position: fixed;
		height: calc(100% - 55px);
		top: 55px;
		width: 100%;
		left: 0;
		z-index: 3;
		transition: opacity 0.8s;
		background: #fff;
		visibility: hidden;
		opacity: 0
	}
	.mobile-menu .menu {
		padding: 0;
		margin: 15px 0;
	}
	.mobile-menu > nav {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.mobile-menu .menu > li {
		text-align: center;
		list-style-type: none;
		letter-spacing: 0px;
	}
	.mobile-menu .menu > li > a {
		padding-top: 10px;
		padding-bottom: 10px;
		width: 100%;
		font-size: 30px;
		color: #282a2c;
		line-height: 75px;
		white-space: nowrap;
		font-family: 'Inter Bold',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	}
	.mobile-menu .menu > li > a:hover, .mobile-menu .menu > li.current-menu-item:not(.menu-item-home) > a {
		color: #d41124;
	}
	header.is-active + .mobile-menu {
		visibility: visible;
		opacity: 1;
	}
}
/*----------------Content------------------*/
#content {
    position: relative;
	padding-top: 75px;
}
.teaser {
	width: auto;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    max-width: 1800px;
    max-height: 900px;
    font-size: 0;
    text-align: center;
}
.teaser img{
	width: 100%;
	height: 100%;
	-webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.teaser.zoom img {
    -webkit-animation: zoom 12s forwards linear;
    animation: zoom 12s forwards linear;
}
.teaser .flex-control-nav{
	left: 0;
	width: 100%;
	text-align: center;
	display: none;
}
.eintrage-container{
	padding: 1px 0;
}
.eintrage .headline > span > h2 {
    width: 75%;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
    display: block;
    line-height: 125%;
	direction: ltr;
}
#content .outer, #fussbereich .outer{
	max-width: 1800px;
	width: 100%;
}
.home #content .outer.eintrage{
	padding-top: 95px;
}
body:not(.home) #content #footer1{
	padding-top: 100px;
}
#content .outer > div {
    margin-bottom: 100px;
    position: relative;
    display: table;
    width: 100%;
	box-sizing: border-box;
	table-layout:fixed;
}

#content .outer > div > .bild {
    width: 58.3333333%;
    max-width: 1050px;
    position: relative;
    top: 0;
    left: 0%;
    font-size: 0;
    display: table-cell;
    vertical-align: top;
    direction: ltr;
}
#content .outer > div > .bild ul.slides > li img {
    width: 100%;
}
#content .outer > div > .bild ul.slides > li iframe {
    width: 100%;
}
#content .outer > div > .bild ul.slides > li {
    position: relative;
}
#content .outer > div > .bild ul.slides span {
    position: absolute;
    bottom: 0px;
    text-align: left;
    left: 0;
    font-size: 18px;
    line-height: 175%;
    color: #fff;
    padding: 30px;
}
#content .outer > div > .text {
    width: auto;
    max-width: 750px;
    position: relative;
    left: inherit;
    top: 0;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    direction: ltr;
}
#content .outer > div > .text > div {
    padding: 0 100px;
}
#content .outer > div > .text > div > h3 {
    color: #d41124;
}
#content .outer > div > .text > div > h4{
    margin-bottom: 30px;
}
#content .outer > div > .text > div hr{
	width: 25%;
    margin-left: 0;
    height: 4px;
    border: none;
	background: #d41124;
    margin: 25px 0 40px;
}
#content .outer > div > .text > div > span{
    line-height: 150%;
}
#content .outer > div > .text > div > span p {
    margin-top: 30px;
}
#content .outer > div:nth-child(2n) {
    direction: rtl;
}
.home #content .outer > div:nth-child(2n-1) {
    direction: rtl;
}
.home #content .outer > div:nth-child(2n){
	direction: ltr;
}
#content .text a {
	text-decoration: underline;
}
#content .text a:hover {
	color: #d41124;
    text-decoration: underline;
}
#content a.content-button{
    background: #d41124;
    color: #fff;
    padding: 15px 30px;
    border-radius: 25px;
    font-size: 22px;
	letter-spacing: 1px;
    font-family: 'Inter Bold',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	transition: all .2s;
	text-decoration: none;
	line-height: 100%;
	display: inline-block;
}
#content a.content-button + a.content-button{
	margin-left: 75px;
}
#content a.content-button + br + a.content-button{
	margin-top: 20px;
}
#content a.content-button:hover{
	background: #282a2c;
	color: #fff;
}
#content #fussbereich a.content-button:hover{
	background: #fff;
	color: #d41124;
	text-decoration: none;
}
#content .text ul {
    margin: 0;
    padding-left: 0;
	list-style-position: inside;
}
#content .outer > .referenzen-liste {
    text-align: center;
    padding-bottom: 0;
    margin-bottom: -50px;
}
#content .referenzen-liste > div {
    width: 25%;
    float: left;
    padding: 25px;
    padding-top: 0;
    box-sizing: border-box;
    margin-bottom: 25px;
}
#content .referenzen-liste > div > div {
    background: #f0f0f0;
    height: 240px;
}
#content .referenzen-liste > div > span {
    display: block;
    margin-top: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
#content .referenzen-liste > div > div > img {
    mix-blend-mode: multiply;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}
#content .outer > div.active{
	background-color: #f0f0f0;
}
#content .text a.link-details {
    margin-top: 25px;
    display: block;
	padding: 0 !important;
}
#content .text a.link-details:hover{
	text-decoration: underline;
}
#content .outer > div > .text > div > span.details {
    max-height: 0;
    overflow: hidden;
    display: block;
    transition: max-height 1s;
}
#content .flexslider-trenner{
	position: relative;
    width: 100%;
    background-position: 50% 50%;
    background-size: cover;
}
#content .flexslider-trenner > div{
	width: 70%;
	max-width: 1200px;
	padding: 150px 0;
	margin: 0 auto;
	text-align: center;
}
#content .flexslider-trenner > div ul li > *{
	font-size: 30px;
	color: #fff;
	line-height: 150%;
}
#content .flexslider-trenner > div ul li > span{
	display: block;
	margin-top: 70px;
}

#content .flexslider-trenner .flex-control-nav{
	width: 100%;
	text-align: center;
	left: 0;
}
#content .grid .outer{
	width: 90%;
	max-width: 1800px;
}
.grid {
    padding: 100px 0;
	background: #000;
}
.grid > .headline{
	text-align: center;
	margin-top: -20px;
}
.grid > .headline h2{
	color: #fff;
}
#content .grid > div > .cf{
	margin-top: 25px;
	margin-bottom: -50px;
	padding: 0 5%;
}
#content .grid > div > .cf > div{
	width: 50%;
	float: left;
}
#content .grid > div > .cf > div:nth-child(2n-1) {
    clear: left;
}
#content .grid > div > .cf > div > div{
	box-sizing: border-box;
	line-height: 150%;
	padding: 50px 0;
	color: #fff;
	border-bottom: 1px solid #507364;
	margin: 0 85px;
	direction: ltr;
}
#content .grid > div > .cf > div:nth-last-child(2) > div, #content .grid > div > .cf > div:last-child > div{
	border-bottom: none;
}
#content .grid > div > .cf > div > div h3{
	font-family: "Inter Bold",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 20px;
	margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 2.5px;
	color: #005537;
}
#content .grid-4 .outer > div{
	direction: ltr;
    margin: 0 -1.5%;
    margin-bottom: -20px;
    display: block;
    width: 103%;
}
.grid-4 {
    padding: 100px 0;
	background: #000;
	background-size: cover;
	background-position: center center;
}
.grid-4 > .headline{
	text-align: center;
	margin-top: -20px;
	margin-bottom: 60px;
}
.grid-4 > .headline h2{
	color: #fff;
	font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}
.grid-4 > .outer > div > div{
	background: #fff;
    margin: 1.5%;
    float: left;
    width: 22%;
}
.grid-4 > .outer > div > div:nth-child(4n+1){
	clear: both;
}
.grid-4 > .outer > div > div img{
	width: 100%;
	display: block;
}
.grid-4 > .outer > div > div > div{
	padding: 7.5%;
	padding-top: 5%;
}
.grid-4 > .outer > div > div > div > h3{
	padding-bottom: 5%;
	font-size: 150%;
}
.grid-4 > .outer > div > div > div > span{
	line-height: 135%;
	font-size: 90.9%;
}
#content .link-button-container{
	position: relative;
	display: inline-block;
	margin-top: 40px;
}
#content #fussbereich .link-button-container{
	margin-top: 0;
}
#content #fussbereich .outer > div > .text > div > h4{
	color: #fff;
}
#content #fussbereich a.content-button + a.content-button {
	margin-left: 0;
	margin-top: 35px;
}
#content a.link-button{
	background: rgb(0,94,36);
	background: linear-gradient(0deg, rgba(0,94,36,1) 0%, rgba(0,160,60,1) 100%);
    padding: 5px 75px;
    text-decoration: none;
    letter-spacing: 1px;
    display: inline-block;
    position: relative;
    border-radius: 5px;
    text-align: center;
    line-height: normal;
	color: #fff;
	text-decoration: none;
}
#content .link-button-container:hover a.link-button, #content .link-button-container:hover a.link-button > i{
	color: #000;
	text-decoration: none;
}
#content a.link-button > i{
	position: absolute;
    top: 50%;
    transform: translate(0,-50%);
    border: 3px solid;
    height: 35px;
    width: 35px;
    text-align: center;
    line-height: 35px;
    border-radius: 50%;
	color: #fff;
	left: 20px;
}
#content a.link-infobox{
	position: absolute;
    top: 50%;
    transform: translate(0,-50%);
    border: 3px solid #000;
    height: 35px;
    width: 35px;
    text-align: center;
    line-height: 35px;
    border-radius: 50%;
	color: #fff;
	right: 20px;
	background: #000;
}
#content a.link-infobox:hover{
	color: #000;
	background: #fff;
	border: 3px solid #fff;
}
#content .link-button-popup{
	position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    background: rgba(255,255,255,0.97);
    padding: 50px;
    max-width: 450px;
    border: 2px solid #666;
    border-radius: 5px;
	z-index: 12;
	display: none;
}
#content .link-button-popup span p{
	line-height: 135%;
}
#content .link-button-popup span p, #content .link-button-popup span + a{
	margin-top: 25px;
	display: inline-block;
}
#content .link-button-popup span + a{
	color: #000;
    font-family: 'Inter Bold';
    text-decoration: underline;
}
#content .link-button-popup span + a:hover{
	color: #005537;
}
#content .link-button-popup-bg{
	background: rgba(0,0,0,0.75);
	z-index: 11;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	display: none;
}
.has-popup #content .link-button-popup, .has-popup #content .link-button-popup-bg{
	display: block;
}
.exit {
	position: absolute;
	right: 29px;
	top: 29px;
	width: 30px;
	height: 30px;
	padding: 6px;
	background: #005537;
	border-radius: 50%;
}
.exit:before, .exit:after {
	position: absolute;
	left: 20px;
	content: ' ';
	height: 30px;
	width: 2px;
	background-color: #fff;
}
.exit:before {
	transform: rotate(45deg);
}
.exit:after {
	transform: rotate(-45deg);
}
#fussbereich{
	background: #282a2c;
    padding: 0 0 1px;
	color: #fff;
}
#content #fussbereich .outer > div:nth-child(2n-1){
	direction: ltr;
}
#content #fussbereich .outer > div:nth-child(2n){
	direction: rtl;
}
#content #kontakt a{
	color: #fff;
}
#content #kontakt a:hover{
	color: #d41124;
}
#content #kontakt strong a{
	font-family: "Inter Bold",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	position: relative;
	text-decoration: none;
}
#content #kontakt strong a:hover{
	color: #d41124;
	text-decoration: none;
}
#content #kontakt strong a::after{
	content: ' ';
	height: 2px;
	display: inline-block;
	width: 100%;
	position: absolute;
	bottom: -2px;
	left: 0;
	background: #fff;
}
#content #kontakt strong a:hover::after{
	background: #d41124;
}
#content #kontakt strong.big{
	font-size: 175%;
}
.auftrag, .fragen{
    max-width: 1000px;
    width: 90%;
    display: block;
    margin: auto;
    padding: 1px 5% 4%;
    box-sizing: border-box;
    line-height: 150%;
    background: #f0f0f0;
    margin-top: 5%;
}
.auftrag .button{
	display: block;
	background: #d41124;
    border: none;
    line-height: 40px;
    color: #fff;
	font-family: 'Inter Bold', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 16px;
}
.page-anfrage #content > .outer > div{
	transform: none !important;
}
.inhalt{
	max-width: 1000px;
    width: 90%;
    display: block;
    margin: auto;
    padding: 0;
    box-sizing: border-box;
    line-height: 150%;
    margin-top: 5%;
    font-size: 90%;
}
.inhalt em{
	font-style: italic;
    font-size: 90%;
}
body:not(.page-anfrage) .inhalt p{
	margin-top: 20px;
	display: block;
}

.fragen h4{margin-bottom: 50px;margin-top: 50px;}
.faqs > span{font-size: 44px;text-transform: uppercase;letter-spacing: 2px;color: #282a2c;padding: 35px 0;border-bottom: 5px solid #d41124;margin-bottom: 25px;display: block;}
.faqs > div {margin-bottom: 25px;line-height: 150%;}
.faqs > div > div{width: 100%;box-sizing: border-box;}
.faqs > div > .frage{background: #f9f9f9;display: block;position: relative;cursor: pointer;padding: 35px;padding-right: 80px;}
.faqs > div > .frage > span{position: absolute;top: 50%;right: 0;transform: translateY(-50%);display: block;width: 15%;height: 100%;}
.faqs > div > .frage > span::before{content: '+'; display: block;float: right;font-size: 30px;position: absolute;right: 40px;top: 50%;color: #282a2c;transform: translateY(-75%);}
.faqs > div.expand > .frage > span::before{content: '-';font-size: 40px;}
.faqs > div > .antwort{background: #282a2c;max-height: 0;transition: max-height .5s;overflow: hidden;color: #fff;}
.faqs > div > .antwort > div{padding: 15px 35px 35px;}
.faqs > div > .antwort a{color: #fff;text-decoration: underline;}
.faqs > div > .antwort > div > *{line-height: 150%;margin-top: 20px;}
.faqs > div > .antwort a:hover{color: #d41124;}

/*Impressum/Datenschutz*/
.impagb#content > .outer{
	max-width: 1600px;
	width: 90%;
}
.impagb#content > .outer > div > .text{
	line-height: 150%;
}
.impagb#content > .outer > div > .text > div{
	padding-left: 0;
	padding-right: 0;
	padding-top: 100px;
}

@media screen and (max-width:1600px) {
	#content{
		padding-top: 70px;
	}
	.outer{
		width: 81%;
	}
	.teaser > div > div{
		left: 5%;
	}
	.home #content .outer.eintrage {
		padding-top: 80px;
	}
	body:not(.home) #content #footer1{
		padding-top: 80px;
	}
	#content .outer > div {
		margin-bottom: 80px;
	}
	#content .outer > div > .text > div > h4 {
		margin-bottom: 25px;
	}
	#content .outer > div > .text > div > span p{
		margin-top: 25px;
	}
	#content .text ul{
		margin-top: 25px;
	}
	#content .flexslider-trenner > div{
		padding: 125px 0;
	}
	#content .flexslider-trenner > div ul li > span{
		margin-top: 60px;
	}
	#content .grid > div > .cf > div > div{
		padding: 35px 0;
		margin: 0 50px;
	}
	.grid, .grid-4{
		padding: 80px 0;
	}
}

@media screen and (max-width:1400px) {
	#content{
		padding-top: 65px;
	}
	.teaser{
		width: 100%;
	}
	.flexslider-teasertext {
		width: 50%;
	}
	#content .outer > div{
		padding: 0;
	}
	#content .outer > div > .text > div {
		padding: 0 50px;
	}
	#content .outer > div > .bild ul.slides span {
		font-size: 16px;
	}
	#content .flexslider-trenner > div{
		padding: 100px 0;
	}
	#content .flexslider-trenner > div ul li > span{
		margin-top: 40px;
	}
	#content .outer > div > .text > div > h4 {
		margin-bottom: 20px;
	}
	#content .outer > div > .text > div hr{
		margin: 25px auto 30px;
		margin-left: 0;
	}
	.grid .outer{
        width: 90%;
    }
	.grid-4 > .headline{
		margin-bottom: 50px;
	}
	.impagb#content .outer > div > .text {
		width: 90%;
		margin: 0 auto;
	}
	#content a.content-button{
		padding: 8px 25px;
		font-size: 20px;
		letter-spacing: 2px;
	}
}

@media screen and (max-width:1200px) {
	.teaser.stretch > img {
		width: 133.33%;
	}
	.flexslider-teasertext {
		width: 60%;
	}
	.home #content .outer.eintrage{
		padding-top: 50px;
	}
	body:not(.home) #content #footer1{
		padding-top: 50px;
	}
	#content .outer > div {
		margin-bottom: 50px;
	}
	#content .outer > div > .text > div > span p {
		margin-top: 20px;
	}
	#content .text ul {
		margin: 0;
		margin-top: 20px;
	}
	#content .outer > div > .bild ul.slides span {
		font-size: 14px;
	}
	#content .outer > div > .text > div > h4 {
		margin-bottom: 10px;
	}
	#content .outer > div > .text > div hr{
		margin: 15px auto 20px;
		margin-left: 0;
	}
	.home #content #row2 .outer > div > .text > div > h4{
		margin-bottom: 25px;
	}
	.home #content #row2 .text > div > span a.button-content{
		margin-top: 40px;
	}
	#content .flexslider-trenner > div{
		padding: 80px 0;
	}
	#content .flexslider-trenner > div ul li > span{
		margin-top: 35px;
	}
	#shop{
		padding: 50px 0 0;
	}	
	#shop > span, #fussbereich > span {
		padding-bottom: 50px;
	}
	#content a.content-button{
		padding: 8px 20px;
		font-size: 16px;
	}
	}

	@media screen and (max-width:1200px) and (orientation:portrait) {
	#content .outer > div > .text > div > span p {
		margin-top: 20px;
	}
	#content .text ul {
		margin: 0;
		margin-top: 20px;
	}
    #content .grid > div > .cf > div:nth-child(2n-1) > div{
        margin-left: 0;
    }
	#content .grid > div > .cf > div:nth-child(2n) > div{
        margin-right: 0;
    }
}

@media screen and (max-width:767px) {
	#content{
		padding-top: 56px;
	}
	#content a.content-button + a.content-button {
		margin-left: 0;
		margin-top: 25px;
	}
	.home #content .outer.eintrage{
		padding-top: 10%;
	}
	body:not(.home) #content #footer1{
		padding-top: 0px;
	}
	#content .outer.eintrage{
		width: 100%;
	}
	.grid-4{
		padding-bottom: 10px;
		background-size: auto;
	}
	#content .grid .outer, #content .grid-4 .outer{
		width: 82%;
	}
	.grid-4 > .headline{
		margin-top: -30px;
	}
	#content .grid-4 .outer > div{
		width: 100%;
		margin: 0;
	}
	.grid-4 > .outer > div > div{
		width: 100%;
		margin: 0 0 9%;
	}
	.flexslider .slides img, #content .outer > div > .bild ul.slides > li > img {
		max-width: 100%;
		margin-left: 0;
		height: auto;
		width: 100%;
	}
	.teaser {
		margin-bottom: 0;
		margin-top: 0;
	}
	.teaser > img {
		object-fit: cover;
		object-position: center;
	}
	.teaser img{
		width: 134%;
		margin-left: -17%;
	}
	.teaser > div > div{
		width: 100%;
	}
	.eintrage .headline {
		display: block;
		width: 100%;
		margin-bottom: 10% !important;
	}
	.eintrage .headline > span > h2 {
		width: 82%;
		text-align: center;
		line-height: 100%;
	}
	.eintrage .headline > span > h2 strong {
		display: block;
	}
	.eintrage .headline > span > h2 br {
		display: none;
	}
	.flexslider-teasertext {
		width: 90%;
		font-size: 16px;
	}
	.flexslider-teasertext .flex-control-nav {
		display: block;
	}
	.flexslider-teasertext .flex-direction-nav {
		display: none;
	}
	#content .outer > div {
		padding-bottom: 0;
		margin-bottom: 0;
		display: block;
	}
	#content .outer > div:nth-child(1), #content .teaser + div .outer > .headline, #content .teaser + div .outer > .headline + div {
		transform: none !important;
	}
	#content .outer > div > .bild {
		width: 100%;
		position: relative;
		margin-bottom: 0;
		overflow: hidden;
		display: block;
	}
	#content .outer > div > .bild ul.slides span {
		padding: 9%;
	}
	#content .outer > div > .text {
		width: 82%;
		position: relative;
		display: block;
		padding: 9%;
	}
	#content .outer > div > .text > div {
		padding-left: 0;
		padding-right: 0;
	}
	#content .outer > div:nth-child(2n-1) > .text > div {
		padding-left: 0;
		padding-right: 0;
	}
	#content .outer > div > .text > div > h4 {
		margin-bottom: 25px;
	}
	#content .outer > div > .text > div > h4 > p > br {
		display: none;
	}
	#content .outer > div > .text > div > span, .t-text span {
		line-height: 150%;
	}
	#content .text a {
		display: inline-block;
	}
	#content a.content-button {
		padding: 12px 25px;
		font-size: 18px;
		letter-spacing: 0;
		text-align: center;
	}
	.outer-wrapper {
		width: 100%;
	}
	.outer {
		width: 100%;
	}
	.grid{
		padding: 15% 0;
	}
	#content .grid > div > .cf{
		margin-top: 10px;
	}
	#content > .outer, #fussbereich .outer{
		width: 100%;
	}
	#content #fussbereich .outer.eintrage{
		padding-top: 0;
	}
	#content .flexslider-trenner > div{
		width: 80%;
	}
	#content .flexslider-trenner img{
		width: 165%;
	}
	#fussbereich{
		padding: 0;
	}
	#content .outer > div{
		padding: 0;
	}
	#content .grid > div{
		width: 82%;
	}
	#content .grid > div > .cf {
		padding: 0;
	}
	#content .grid > div > .cf > div{
		width: 100%;
		float: none;
	}
	#content .grid > div > .cf > div:nth-child(2n-1) > div, #content .grid > div > .cf > div:nth-child(2n) > div{
		margin-left: 0;
		margin-right: 0;
	}
	#content .grid > div > .cf > div:nth-child(2n-1) > div{
		border-bottom: 1px solid #c8c8c8;
	}
	#fussbereich > span{
		padding-bottom: 60px;
	}
	#content #fussbereich .outer > div:nth-child(2n-1) > .text > div, #content #fussbereich .outer > div:nth-child(2n) > .text > div{
		padding-left: 0;
		padding-right: 0;
	}
	.grid > .headline {
		text-align: left;
		padding: 0 9%;
	}
	.impagb#content .outer > div > .text > div{
		padding-top: 0;
	}
	.impagb#content .outer > div > .text {
		width: 82%;
		left: 0;
		position: relative;
	}
	.impagb#content .text a {
		word-wrap: break-word;
	}
	#content .link-button-popup{
		left: 5%;
		width: 90%;
		box-sizing: border-box;
		transform: translate(0%,-50%);
	}
.inhalt{
    margin-top: 10%;
}
}
@media screen and (orientation:portrait){
	.teaser{
		width: 100%;
	}
	.outer{
		width: 90%;
	}
}

/*----------------Footer------------------*/
section#galerie{
	background: #c81e27;
	background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
	padding-bottom: 200px;
}
section#galerie h4{
	text-align: center;
	line-height: 200px;
	color: #fff;
}
section#galerie .flexslider-galerie{
	position: relative;
	margin-bottom: 0;
}
#content section#galerie .outer > div{
	padding-bottom: 0;
	margin-bottom: 0;
	direction: ltr;
}
section#galerie .flexslider-galerie ul.slides > li{
	font-size: 0;
}
section#galerie .flexslider-galerie ul.slides > li > a{
	margin-bottom: 20px;
	display: block;
	overflow: hidden;
	position: relative;
}
section#galerie .flexslider-galerie ul.slides > li > a::after {
    display: block;
    content: "";
    padding-bottom: 66.6%;
}
section#galerie .flexslider-galerie ul.slides > li > a + a{
	margin-bottom: 0;
}
section#galerie img{
	width: 100%;
    position: absolute;
    object-fit: cover;
    object-position: center center;
    height: 100%;
}
section#galerie .outer > span{
	width: 90%;
    max-width: 700px;
    display: block;
    margin: 0 auto;
    padding: 100px 0;
    text-align: center;
    line-height: 150%;
	color: #fff;
}
#footer{
	position: relative;
}
#footer > .map{
	width: 100%;
	font-size: 0;
}
#footer iframe{
	height: 640px;
	width: 100%;
}
#footer > .logozeile {
    padding: 50px 0;
    background: #fff;
}
#footer > .logozeile > .outer {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 1200px;
}
#footer > .logozeile > .outer > div {
    flex: 1;
    text-align: center;
	margin-bottom: 0;
}
#footer > .logozeile > .outer > div img {
    width: auto;
    max-width: 85%;
    max-height: 135px;
}
#footer > div a{
	text-decoration: none;
	color: #fff;
}
#footer h4{
	color: #fff;
	margin-bottom: 45px;
}
#footer .bottomline{
	background: #000;
	line-height: 175%;
    text-align: center;
    padding: 15px 0;
}
#footer .bottomline a{
	color: #fff;
	text-decoration: none;
	padding: 0 10px;
}
#footer .bottomline a:hover{
	text-decoration: underline;
}
.ruckrufservice{
	display: block;
}
.ruckrufservice > div{
	max-height: 0;
	overflow: hidden;
	transition: max-height 1s;
	margin-top: 30px;
}
.ruckrufservice > div > div{
	display: block;
	border: 4px solid #d41124;
	padding: 30px 25px 40px;
	box-sizing: border-box;
	position: relative;
}
.ruckrufservice > div > div strong{
	font-size: 150%;
	color: #d41124;
	margin-bottom: 20px;
	display: block;
}
.ruckrufservice input[type="text"]{
	width: 100%;
	height: 40px;
	line-height: 40px;
	color: #000;
	text-align: center;
	font-size: 85%;
	font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	box-sizing: border-box;
	margin-top: 25px;
	display: block;
	margin-bottom: 5px;
}
.ruckrufservice input[type="checkbox"]{
	width: 25px;
	height: 25px;
	top: 5px;
	position: relative;
}
.ruckrufservice input[type="submit"]{
    padding: 11px 40px;
    background: #d41124;
    color: #fff;
    text-decoration: none !important;
    font-family: 'Inter Bold', Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    letter-spacing: 2px;
    text-transform: uppercase;
    display: inline-block;
    margin-top: 35px;
	border: none;
    font-size: 75%;
    line-height: 100%;
	border-radius: 0;
	-webkit-appearance: none;
}
.ruckrufservice input[type="submit"]:hover:enabled{
	color: #fff;
	cursor: pointer;
}
.ruckrufservice .datenschutztext{
	font-size: 85%;
	display: block;
}
.ruckrufservice .datenschutztext .wpcf7-list-item{
	margin: 0;
	margin-left: -3px;
}
.ruckrufservice .wpcf7-spinner{
	position: absolute;
	bottom: 15px;
}
.ruckrufservice .schliessen{
    cursor: pointer;
    display: block;
    height: 25px;
    width: 25px;
    position: absolute;
    right: 25px;
    top: 12.5px;
}
.ruckrufservice .schliessen > span{
	display: block;
    position: absolute;
    top: 12.5px;
    right: 0;
    width: 25px;
    height: 2px;
}
.ruckrufservice .schliessen > span::after, .ruckrufservice .schliessen > span::before{
	position: absolute;
    display: block;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #d41124;
    content: "";
}
.ruckrufservice .schliessen:hover > span::after, .ruckrufservice .schliessen:hover > span::before{
	background-color: #fff;
}
.ruckrufservice .schliessen > span::before{
	top: 0;
    transform: rotate(45deg);
}
.ruckrufservice .schliessen > span::after{
    bottom: 0;
    transform: rotate(-45deg);
}
.ruckrufservice .wpcf7 form .wpcf7-response-output{
	margin-bottom: 0;
}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #fff;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #fff;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #fff;
}
:-moz-placeholder { /* Firefox 18- */
  color: #fff;
}

@media screen and (max-width:1600px){
	#footer iframe{
		height: 480px;
	}
	section#galerie .flexslider-galerie{
		width: 90%;
	}
	section#galerie h4{
		line-height: 160px;
	}
	section#galerie{
		padding-bottom: 160px;
	}
}
@media screen and (max-width:1400px) {
	#footer iframe{
		height: 440px;
	}
}
@media screen and (max-width:1200px) {
	#footer iframe{
		height: 400px;
	}
	section#galerie{
		padding-bottom: 150px;
	}
	section#galerie h4{
		line-height: 150px;
	}
}
@media screen and (max-width:767px) {
	section#galerie .flexslider-galerie{
		width: 90%;
	}
	#footer h4{
		margin-bottom: 25px;
	}
	section#galerie h4{
		line-height: 150px;
	}
	section#galerie{
		padding-bottom: 50px;
	}
}

/*----------------Responsive-------------------*/
@media screen and (max-width:1600px) {
	body, #footer #kontakt > div {
		font-size: 18px;
	}
	.menu > li > a{
		font-size: 22px;
	}
	h1, h2, h3, h4, h5, .referenzen > div > span, .eintrage .headline > span > h2 {
		font-size: 34px;
	}
	.headline h2 br{
		display: block;
	}
	header nav > a {
		font-size: 20px;
	}
	.eintrage .headline > span{
		font-size: 32px;
	}
	#footer{
		font-size: 20px;
	}
}

@media screen and (max-width:1400px) {
	h1, h2, h3, h4, hr, .referenzen > div > span, .eintrage .headline > span > h2 {
		font-size: 32px;
	}
	.menu > li > a{
		font-size: 20px;
	}
	#content .flexslider-trenner > div ul li > *{
		font-size: 24px;
	}
	.logo-zeile, #content .grid > div > .cf > div > div h3{
		font-size: 18px;
	}
}

@media screen and (max-width:1200px) {
	body, #footer #kontakt > div {
		font-size: 17px;
	}
	h1, h2, h3, h4, h5, .eintrage .headline > span > h2 {
		font-size: 28px;
	}
	.menu > li > a, header nav > a {
		font-size: 15px;
	}
	.teaser > div > div {
		font-size: 65px;
	}
	.flexslider-teasertext {
		font-size: 18px;
	}
	.eintrage .headline, #content .grid > div > .cf > div > div h3{
		font-size: 16px;
	}
	#footer > .map{
		width: 100%;
	}
	#footer > .logozeile {
		padding: 25px 0;
	}
	#footer > .teaser > div{
		font-size: 16px;
		line-height: 150%;
	}
	#footer .bottomline a{
		font-size: 16px;
	}
}

@media screen and (max-width:1000px) {
	h1, h2, h3, h4, h5, .eintrage .headline > span > h2 {
		font-size: 26px;
	}
}

@media screen and (max-width:1200px) and (orientation:portrait) {
	body, #footer #kontakt > div {
		font-size: 16px;
	}
	h1, h2, h3, h4, h5, .referenzen > div > span, .eintrage .headline > span > h2 {
		font-size: 24px;
	}
	.logo-zeile {
		font-size: 18px;
	}
}

@media screen and (max-width:767px) {
	body, #footer #kontakt > div, #footer .bottomline a {
		font-size: 18px;
	}
	#content .flexslider-trenner > div ul li > *{
		font-size: 18px;
	}
	.teaser > div > div{
		font-size: 50px;
	}
	.menu a {
		font-size: 22px;
		padding: 0;
	}
	h1, h2, h3, h4, h5, .eintrage .headline > span > h2 strong, .leistungen > span, .news > span, .produkte > span, .eintrage .headline > span, #footer > .outer > div.flexslider-vorteile, #shop > span {
		font-size: 26px;
	}
	#footer > .teaser > div{
		font-size: 22px;
	}
	#footer > .logozeile > .outer > div img{
		max-height: 85px;
	}
	#footer iframe{
		height: 350px;
	}
}
@media screen and (max-width:420px) {
	#footer > .teaser > div{
		font-size: 18px;
	}
	#footer .bottomline a{
		font-size: 16px;
	}
}

/*Rechner*/
.page-ersparnis-rechner #rechner{
	width: 90%;
	max-width: 800px;
	margin: 0 auto;
	margin-top: 100px;
	position: relative;
}
.page-ersparnis-rechner #block{
	position: absolute;
    z-index: 3;
    background: rgba(255,255,255,0.9);
    width: 100%;
    height: 100%;
	display: none;
}
.page-ersparnis-rechner #block img{
	top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    position: absolute;
    z-index: 10001;
}
.page-ersparnis-rechner #block.aktiv{
	background: rgba(0,0,0,0);
	display: block;
}
.page-ersparnis-rechner #block.aktiv img{
	display: none;
}
.page-ersparnis-rechner #blockersparnis{
	position: absolute;
    z-index: 10000;
    background: rgba(255,255,255,0.9);
    width: 100%;
    height: 100%;
	display: none;
}
.page-ersparnis-rechner #blockersparnis img{
	top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    position: absolute;
    z-index: 10001;
}
.page-ersparnis-rechner #rechner h2{
	margin-bottom: 20px;
	text-align: center;
	color: #d41124;
}
.page-ersparnis-rechner #rechner h2 + span{
	text-align: center;
	font-size: 85%;
	display: block;
	width: 100%;
	margin-bottom: 50px;
}
.page-ersparnis-rechner #rechner h2 + span + .row{
	border-top: 1px solid #ccc;
}
.page-ersparnis-rechner #rechner .row {
	display: block;
	padding: 25px 10px;
	border-bottom: 1px solid #ccc;
}
.page-ersparnis-rechner #rechner .row:hover, .page-ersparnis-rechner .row.aktiv{
    background: #f0f0f0;
}
.page-ersparnis-rechner #rechner .row > span{
	position: relative;
	float: left;
}
.page-ersparnis-rechner #rechner .row > span:nth-child(1){
	width: 60%;
	padding-top: 10px;
}
.page-ersparnis-rechner #rechner .row > span:nth-child(2){
	width: 20%;
}
.page-ersparnis-rechner #rechner .row > span:nth-child(3){
	width: 20%;
	margin-top: 12px;
	padding-left: 25px;
	box-sizing: border-box;
}
.page-id-1768 #rechner .row > span:nth-child(1){
	width: 55%;
	padding-top: 10px;
}
.page-id-1768 #rechner .row > span:nth-child(2){
	width: 30%;
}
.page-id-1768 #rechner .row > span:nth-child(3){
	width: 15%;
	margin-top: 12px;
	padding-left: 25px;
	box-sizing: border-box;
}
.page-id-1768 .hinweise{
	line-height: 125%;
    font-size: 70%;
    color: #999;
    display: block;
    margin-bottom: 50px;
}
.blob {
	background: rgba(255, 82, 82, 1);
	box-shadow: 0 0 0 0 rgba(255, 82, 82, 1);
	animation: pulse-red 1.5s infinite;
	height: 10px;
    width: 10px;
    transform: scale(1);
	border-radius: 50%;
    display: none;
    position: absolute;
}
.infotext.grundgebuhr a{
	position: relative;
}
.infotext.grundgebuhr.pulse > a .blob{
	top: 5px;
    right: 35px;
	display: block;
}
.infotext.grundgebuhr > div.pulse > .blob{
    top: 15px;
	left: 50px;
	display: block;
}
.infotext.mobile{
	display: none !important;
}
.page-ersparnis-rechner #BorlabsCookieBox{
	display: none !important;
}

@keyframes pulse-red {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 82, 82, 0.7);
  }
  
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 10px rgba(255, 82, 82, 0);
  }
  
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 82, 82, 0);
  }
}
.button-cover,
.knobs,
.layer {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.button-ust {
	position: absolute;
	top: 2px;
	width: 120px;
	right: 2px;
	height: 36px;
	margin: 0 auto;
	overflow: hidden;
}
.checkbox {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	opacity: 0;
	cursor: pointer;
	z-index: 3;
}
.knobs {
	z-index: 2;
}
.layer {
	width: 100%;
	background-color: #f0f0f0;
	transition: 0.3s ease all;
	z-index: 1;
	border: 1px solid #ccc;
    box-sizing: border-box;
}
#button-1 .knobs:before {
	content: "inkl. USt.";
	position: absolute;
	top: 0px;
	left: 0px;
	width: 60px;
	color: #fff;
	font-size: 11px;
	text-align: center;
	line-height: 36px;
	background-color: #d41124;
	transition: 0.3s cubic-bezier(0.18, 0.89, 0.35, 1.15) all;
}
#button-1 .checkbox:checked + .knobs:before {
	content: "exkl. USt.";
	left: 60px;
	background-color: #d41124;
}
#button-1 .checkbox:checked ~ .layer {
	background-color: #f0f0f0;
}
#button-1 .knobs,
#button-1 .knobs:before,
#button-1 .layer {
	transition: 0.3s ease all;
}
#button-3 .knobs:before {
	content: "inkl. USt.";
	position: absolute;
	top: 0px;
	left: 0px;
	width: 60px;
	color: #fff;
	font-size: 11px;
	text-align: center;
	line-height: 36px;
	background-color: #d41124;
	transition: 0.3s cubic-bezier(0.18, 0.89, 0.35, 1.15) all;
}
#button-3 .checkbox:checked + .knobs:before {
	content: "exkl. USt.";
	left: 60px;
	background-color: #d41124;
}
#button-3 .checkbox:checked ~ .layer {
	background-color: #f0f0f0;
}
#button-3 .knobs,
#button-3 .knobs:before,
#button-3 .layer {
	transition: 0.3s ease all;
}
.stromkostenbremse{
	text-align: center;
    width: 100%;
    height: 23px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 50px;
	display: none;
}
.stromkostenbremse > div{
	padding: 0 20px;
	background: #fff;
	display: inline-block;
}
.stromkostenbremse > div > span{
	padding-right: 10px;
}
.button-stromkostenbremse {
    position: relative;
    top: 8px;
    width: 90px;
    height: 30px;
    overflow: hidden;
    display: inline-block;
}
#button-2 .knobs:before {
	content: "aus";
	position: absolute;
	top: 0px;
	left: 0px;
	width: 45px;
	color: #fff;
	font-size: 11px;
	text-align: center;
	line-height: 30px;
	background-color: #008000;
	transition: 0.3s cubic-bezier(0.18, 0.89, 0.35, 1.15) all;
}
#button-2 .checkbox:checked + .knobs:before {
	content: "ein";
	left: 45px;
	background-color: #FF0000;
}
#button-2 .checkbox:checked ~ .layer {
	background-color: #f0f0f0;
}
#button-2 .knobs,
#button-2 .knobs:before,
#button-2 .layer {
	transition: 0.3s ease all;
}
#diagramm{
	background: #f0f0f0;
	padding: 50px 0;
	border-radius: 10px;
	position: relative;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
div#linechart::after {
    content: '* Hinweise zum Preisvergleich siehe unten';
    font-size: 12px;
    bottom: 20px;
    left: 20px;
    display: inline-block;
    position: absolute;
	font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}
#diagramm > h2 {
	margin-bottom: 5px;
	display: block;
	text-align: center;
}
#diagramm > h3{
	text-align: center;
	margin-bottom: 20px;
	font-size: 20px;
}
#diagramm > h2 + span{
	font-size: 14px;
    font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    text-align: center;
    width: 100%;
    display: block;
    margin-bottom: 40px;
	line-height: 125%;
}
#diagramm div.liveGraph {
	margin-bottom: 25px;
}
#linechart{
	background: #f0f0f0;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
	padding: 0 20px 50px;
}
#linechart h3{
	text-align: center;
	font-size: 20px;
	margin-bottom: 20px;
}
#linechart > div{
	position: relative;
	height: 400px;
}
#linechart canvas{
	background: #282a2c;
}
div.liveGraph div.bars{
	left: 50%;
    position: absolute;
    transform: translateX(-50%);
	display: flex;
	background-size: 100% 20px;
	background-image: linear-gradient(0deg, transparent 0px, #ccc 2px, transparent 0px);
}
div.liveGraph div.bars div.bar span { 
	background:url("./images/diagonals_trans.png");
	background-repeat:repeat;
	color:#fff;
	font-weight:bold;
	font-size:20px;
	border:none !important;
	padding-top: 5px;
	box-sizing: border-box;
}
div.liveGraph div.bars div.bar span::after {
    content: 'ct/kWh';
    display: block;
    font-size: 14px;
    margin-top: 3px;
}
div.liveGraph div.barbar1 > span { background-color:#282a2c !important; }
div.liveGraph div.barbar2 > span { background-color:#282a2c !important; }
div.liveGraph div.barbar3 > span { background-color:#282a2c !important; }
div.liveGraph div.barbar4 > span { background-color:#d41124 !important; }
p.barlabel{    
	font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	position: relative !important;
	margin-top: 130px !important;
    font-size: 12px;
    width: 130% !important;
    margin-left: -15% !important;
	line-height: 110%;
	bottom: 0 !important;
}
div.liveGraph div.barbar4 p.barlabel{
	font-family: "Inter Bold",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	color: #d41124;
}
.page-ersparnis-rechner #rechner .row input{
	padding: 5px 10px;
	box-shadow: 0 1px 0 0 #ccc inset;
	border: 1px solid #ccc;
	border-radius: 2px;
	height: 40px;
	line-height: 150%;
	width: 100%;
	box-sizing: border-box;
	font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}
.page-ersparnis-rechner #rechner .row input:focus, .page-ersparnis-rechner #rechner .row.aktiv input{
	font-family: "Inter Bold",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	border: 2px solid;
    border-radius: 4px;
}
.page-ersparnis-rechner #rechner .row .warnung input{
	border: 2px solid red;
}
.page-ersparnis-rechner #rechner .row .warnung::after{
	content: 'Pflichtfeld';
	position: absolute;
	bottom: -20px;
    left: 0;
    font-size: 80%;
    color: red;
}
.page-ersparnis-rechner .infotext{
	font-size: 70%;
	position: relative;
}
.page-ersparnis-rechner .infotext .assistent-link{
	text-decoration: underline;
}
.page-ersparnis-rechner .infotext > div{
	position: absolute;
	top: -12px;
	left: 110px;
	background: #fff;
	box-shadow: 0 0 10px #ccc;
	padding: 3px 20px;
	display: none;
	border-radius: 5px;
	border: 1px solid #ccc;
	z-index: 2;
}
.page-ersparnis-rechner .infotext > div > span{
	border-top: 1px solid #aaa;
    display: block;
    margin: 5px 0;
    padding: 10px 0;
    line-height: 125%;
    color: #aaa;
}
.page-ersparnis-rechner .infotext.offen > div{
	display: block;
}
.page-ersparnis-rechner .infotext.offen > div::after{
	content: ' ';
    width: 0;
    height: 0px;
    border-top: 10px solid transparent;
    border-left: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #ccc;
    position: absolute;
    top: 9px;
    left: -10px;
    transform: translateX(-50%);
}
.page-ersparnis-rechner .infotext > div > a{
	display: block;
	line-height: 200%;
	white-space: nowrap;
	text-decoration: underline;
}
.page-ersparnis-rechner .infotext > div > a ins.verfuegbar{
	color: #00A300;
	text-decoration: none;
}
.page-ersparnis-rechner .infotext > div > a ins.nichtverfuegbar{
	color: #ff0000;
	text-decoration: none;
}
.page-ersparnis-rechner .infotext > div > a:hover{
	text-decoration: underline;
}
.page-ersparnis-rechner table td{
	border: 1px solid;
	line-height: 150%;
	padding: 5px;
}
.page-ersparnis-rechner table tr.abstand td {
    border: none;
    height: 20px;
}
.page-ersparnis-rechner .container-rechner{
	padding: 100px 0 300px;
	margin: 0 auto;
	width: 100%;
	max-width: 1800px;
}
.page-ersparnis-rechner #rechner .stromkostencontainer, .page-ersparnis-rechner #rechner .grundgebuhrcontainer{
	display: none;
}
.page-ersparnis-rechner #rechner .stromkostencontainer i{
	display: block;
	font-size: 80%;
	color: #999;
	padding-top: 3px;
}
.page-ersparnis-rechner #rechner .stromkostencontainer span:nth-child(1){
	padding-top: 0;
}
.page-ersparnis-rechner .box{
	padding: 20px;
    background: #f0f0f0;
    border-radius: 10px;
    line-height: 150%;
    display: block;
    font-size: 85%;
	margin-bottom: 60px;
	border-left: 10px solid  rgb(35, 150, 0);
}
.page-ersparnis-rechner .box a{
	text-decoration: underline;
}
.page-ersparnis-rechner .box strong{
	display: block;
	margin-top: 10px;
}
.page-ersparnis-rechner .tabelle{
	margin-top: 200px;
	display: none;
}
.page-ersparnis-rechner .tabelle strong{
	display: block;
}
.page-ersparnis-rechner .tabelle > div {
    min-height: 40px;
	display: table;
	width:100%;
	font-size: 85%;
}
.page-ersparnis-rechner .tabelle > div > span:nth-child(1) {
    width: 60%;
	display:table-cell;
    text-align: right;
	vertical-align:middle;
}
.page-ersparnis-rechner .tabelle > div > span:nth-child(2), .page-ersparnis-rechner .tabelle > div > span:nth-child(3) {
    width: 20%;
    display:table-cell;
    text-align: right;
	vertical-align: middle;
	font-weight: bold;
}
.page-ersparnis-rechner .tabelle > div:nth-child(1){
	border-bottom: 3px solid;
}
.page-ersparnis-rechner .tabelle > div:nth-child(1) > span{
	border-right: 2px solid;
	text-align: center;
	line-height: 115%;
	font-weight: normal;
}
.page-ersparnis-rechner .tabelle > div:nth-child(1) > span:nth-child(1){
	border-left: none;
	text-align: left;
	font-size: 125%;
}
.page-ersparnis-rechner .tabelle > div:nth-child(2) > span{
	border-right: 3px solid;
}
.page-ersparnis-rechner .tabelle > div:nth-child(3) > span{
	border-right: 3px solid;
}
.page-ersparnis-rechner .tabelle > div:nth-child(3){
	border-bottom: 3px solid;
}
.page-ersparnis-rechner .tabelle > div:nth-child(6){
	border-bottom: 3px solid;
}
.page-ersparnis-rechner .tabelle .hellgrun{
	background: #cde2b4;
}
.page-ersparnis-rechner .tabelle .grun{
	background: #92d050;
}
#pvstromanteil::after, #ersparnisprozent_tabelle::after{
	content: '%';
}
.page-ersparnis-rechner .tabelle > div > span{
	position: relative;
}
.page-ersparnis-rechner .tabelle > div > span > span{
	padding: 5px;
	display: inline-block;
}
#konstante {
	display: none;
	position: fixed;
	width: 250px;
    right: -277px;
    background: #fff;
    border: 1px solid;
    padding: 25px;
	padding-left: 50px;
	bottom: 200px;
	transition: all .5s;
	font-size: 55%;
}
#konstante.offen{
	right: -1px;
}
#konstante .switch{
	position: absolute;
    transform: rotate(90deg);
    display: block;
    left: -25px;
    top: 50%;
	font-family: "Inter Bold",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 160%;
}
#konstante input {
    display: block;
	width: 100%;
	margin-bottom: 5px;
	padding: 2px;
}
input[type=range]:focus {
	outline: none;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  -moz-appearance: textfield;
}
input[type=range]::-webkit-slider-runnable-track, input[type=range]::-moz-range-track{
	
}
.range-wrap {
  position: relative;
  margin: 100px auto 160px;
}
.range {
	width: 100%;
	background-image: linear-gradient(90deg, rgb(255, 0, 0) 0%, rgb(204, 204, 204) 50%, rgb(35, 150, 0) 100%);
	height: 20px;
	-webkit-appearance: none;
	-moz-appearance: none;
}
input[type=range]::-webkit-slider-thumb{
	-webkit-appearance: none;
	border: 2px solid #000;
	height: 50px;
	width: 20px;
	position: relative;
	bottom: 15px;
	background-color: #666;
	cursor: pointer;
}
.bubble {
	background: #282a2c;
	color: #fff;
	padding: 8px 20px;
	position: absolute;
	border-radius: 4px;
	left: 50%;
	transform: translateX(-50%);
	margin-top: -100px;
	white-space: nowrap;
}
.bubble::after{
	content: "% Anteil Rottenmanner PV-Strom in Ihrem Verbrauch";
}
.page-ersparnis-rechner .rechner-ergebnis{
	background: #d41124;
    color: #fff;
    padding: 15px 30px;
    border-radius: 25px;
    font-size: 22px;
    letter-spacing: 1px;
    font-family: 'Inter Bold',Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
    transition: all .2s;
    text-decoration: none;
    line-height: 100%;
    display: none;
	left: 50%;
    position: relative;
    transform: translateX(-50%);
	opacity: 0;
	transition: opacity .5s;
    margin-top: 40px;
	box-shadow: 0 0 0 0 #d41124;
	-webkit-animation: pulsing 1.75s infinite cubic-bezier(0.66, 0, 0, 1);
	-moz-animation: pulsing 1.75s infinite cubic-bezier(0.66, 0, 0, 1);
	-ms-animation: pulsing 1.75s infinite cubic-bezier(0.66, 0, 0, 1);
	animation: pulsing 1.75s infinite cubic-bezier(0.66, 0, 0, 1);
	animation-iteration-count: 5;
}
.page-ersparnis-rechner .rechner-ergebnis:hover, .page-ersparnis-rechner .rechner-ergebnis.stop {
  -webkit-animation: none;
  -moz-animation: none;
  -ms-animation: none;
  animation: none;
}
@-webkit-keyframes pulsing {
  to {
    box-shadow: 0 0 0 20px rgba(232, 76, 61, 0);
  }
}
@-moz-keyframes pulsing {
  to {
    box-shadow: 0 0 0 20px rgba(232, 76, 61, 0);
  }
}
@-ms-keyframes pulsing {
  to {
    box-shadow: 0 0 0 20px rgba(232, 76, 61, 0);
  }
}
@keyframes pulsing {
  to {
    box-shadow: 0 0 0 20px rgba(232, 76, 61, 0);
  }
}
.page-ersparnis-rechner .rechner-ergebnis:hover{
	background: #d41124;
}
.page-ersparnis-rechner .rechner-ergebnis.inactive{
	display: none!important;
}
.page-ersparnis-rechner #ergebnis{
	margin: 0 auto;
	margin-top: 60px;
	display: none;
	max-width: 800px;
	width: 90%;
	margin-bottom: -300px;
}
.page-ersparnis-rechner #unsichtbar{
	margin-top: 500px;
	display: none;
}
.page-ersparnis-rechner #ergebnis .row > span{
	font-size: 85%;
	text-align: center;
	display: block;
	line-height: 125%;
}
.page-ersparnis-rechner #ergebnis .row.ersparnis > span > div{
	color: #d41124;
}
.page-ersparnis-rechner #ergebnis .row.ersparnis > span > span.dummy{
	display: none;
}
.page-ersparnis-rechner #ergebnis .row.ersparnis.block > span > span{
	display: none;
}
.page-ersparnis-rechner #ergebnis .row.ersparnis.block > span > span.dummy{
	display: inline-block;
}
.page-ersparnis-rechner .ersparnis{
	display: block;
	font-size: 190%;
	font-family: "Inter Bold",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	margin-bottom: 60px;
	position: relative;
}
.page-ersparnis-rechner .abschliessen{
	text-align: center;
    display: block;
    margin-top: 70px;
	font-size: 85%;
}
.page-ersparnis-rechner .abschliessen-link{
	text-align: center;
}
.page-ersparnis-rechner .abschliessen-link a{
	display: inline-block;
	margin-top: 20px;
	font-size: 125%;
}
.page-ersparnis-rechner .ersparnis > span + span{
	font-family: "Inter Regular",Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	font-size: 50% !important;
	margin-top: 5px;
}
.page-ersparnis-rechner .info-range{
	position: relative;
	width: 100%;
}
.page-ersparnis-rechner .info-range > span{
    position: absolute;
    line-height: 125%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 0 0 10px #ccc;
    width: 220px;
    top: 10px;
    font-size: 65%;
    text-align: center;
}
.page-ersparnis-rechner .info-range > span > span{
	font-weight: bold;
	display: inline;
}
.page-ersparnis-rechner .info-range > span > span + span{
	display: block;
	font-weight: normal;
}
.page-ersparnis-rechner .info-range > span::after{
    content: ' ';
    width: 0;
    height: 0px;
    border-top: 10px solid transparent;
    border-left: 10px solid transparent;
    border-bottom: 10px solid #ccc;
    border-right: 10px solid transparent;
    position: absolute;
    top: -21px;
    left: 50%;
    transform: translateX(-50%);
}
.page-ersparnis-rechner .info-range > span:nth-child(1){
	left: -110px;
}
.page-ersparnis-rechner .info-range > span:nth-child(2){
	left: 50%;
	transform: translateX(-49.5%);
}
.page-ersparnis-rechner .info-range > span:nth-child(3){
	right: -112.5px;
}
.page-ersparnis-rechner .infotext.verbrauchoptimieren > div{
	right: -160px;
    left: auto;
    bottom: -10px;
    top: auto;
    width: 300px;
	padding: 20px;
	text-align: left;
}
.page-ersparnis-rechner .infotext.verbrauchoptimieren.offen > div::after{
	top: auto;
	bottom: 10px;
}
.page-tarifrechner #tarifrechner{
	width: 90%;
    margin: 200px auto;
}
.page-tarifrechner #tarifrechner > div{
	display: block;
	width: 100%;
}
.page-tarifrechner #tarifrechner > div > span{
	width: 50%;
	float: left;
	padding: 10px;
	box-sizing: border-box;
}
.page-tarifrechner #tarifrechner > div > span:nth-child(1){
	text-align: right;
}
.page-tarifrechner #tarifrechner > div > span input{
	padding: 10px;
    top: -10px;
    position: relative;
}
.page-tarifrechner table{
	max-width: 800px;
	margin: 0 auto;
}
.page-tarifrechner table tr td{
	white-space: nowrap;
	padding: 10px 20px;
	border: 1px solid;
}
.page-tarifrechner table tr td +td{
	text-align: right;
}
.page-tarifrechner table tr.abstand td{
	border: none;
}
.page-tarifrechner table tr td input{
	width: 100%;
    box-sizing: border-box;
    height: 40px;
    position: relative;
	min-width: 100px;
	font-weight: bold;
	font-size: 100%;
}
.page-ersparnis-rechner .abschliessen-link{
	margin-bottom: 50px;
}
p.gform_description {
    margin: 50px 0;
}
input::placeholder {
    opacity: 0.5;
    color: #000;
}
.downloads p {  
	display: block;
    background: #f0f0f0;
    margin-bottom: 15px;
    width: 100%;
    box-sizing: border-box;
}
@media screen and (max-width:767px){
	.page-ersparnis-rechner #rechner{
		margin-top: 0;
	}
	.page-ersparnis-rechner .info-range > span:nth-child(1){
		left: 0;
		text-align: left;
	}
	.page-ersparnis-rechner .info-range > span:nth-child(1)::after{
		left: 10px;
	}
	.page-ersparnis-rechner .info-range > span:nth-child(3){
		right: 0;
		text-align: right;
	}
	.page-ersparnis-rechner .info-range > span:nth-child(3)::after{
		left: auto;
		right: -10px
	}
	.page-ersparnis-rechner .info-range > span{
		width: 130px;
	}
	.page-ersparnis-rechner .info-range > span > span{
		display: inline;
	}
	.bubble::after{
		content: "%";
	}
	.page-ersparnis-rechner #rechner .row{
		position: relative;
	}
	.page-ersparnis-rechner #rechner .row > span:nth-child(1){
		position: absolute;
		width: auto;
		background: #fff;
		z-index: 1;
		padding-top: 0;
		top: 15px;
		left: 20px;
		padding: 0 5px;
	}
	.page-ersparnis-rechner #rechner .row > span:nth-child(2){
		width: 100%;
		height: 70px;
	}
	.page-ersparnis-rechner #rechner .row > span:nth-child(3){
		width: 100%;
		position: static;
		padding-left: 0;
		margin-top: 0px;
	}
	.page-ersparnis-rechner .infotext .assistent-link{
		position: absolute;
		right: 30px;
		top: 50px;
	}
	.page-ersparnis-rechner .infotext{
		font-size: 100%;
	}
	.page-ersparnis-rechner .infotext > div{
		display: block;
		position: relative;
		left: 0;
		box-sizing: border-box;
		top: 0;
		padding: 0;
		padding-left: 15px;
		max-height: 0;
		transition: max-height 1s;
		overflow: hidden;
		border: none;
	}
	.page-ersparnis-rechner .infotext.offen > div{
		max-height: 500px;
	}
	.page-ersparnis-rechner #rechner .row:hover{
		background: #fff;
	}
	.page-ersparnis-rechner #rechner .row input{
		padding-left: 15px;
		font-size: 26px;
		height: 70px;
	}
	.page-ersparnis-rechner #ergebnis .row.ersparnis > span > div{
		display: block;
	}	
	.page-ersparnis-rechner .infotext.verbrauchoptimieren .assistent-link{
		position: relative;
		top: auto;
		right: auto;
	}
	.page-ersparnis-rechner .infotext.verbrauchoptimieren > div{
		position: relative;
		right: auto;
		left: auto;
		width: 100%;
		top: auto;
		bottom: auto;
		padding: 0;
		margin-top: 20px;
	}
	.page-ersparnis-rechner .infotext.verbrauchoptimieren.offen > div{
		padding: 20px;
	}
	.page-ersparnis-rechner .info-range > span > span + span{
		display: inline;
	}
	.page-ersparnis-rechner #rechner h2, .page-ersparnis-rechner #ergebnis .row.ersparnis > span{
		font-size: 36px;
	}
	.page-ersparnis-rechner #rechner h2 + span, .page-ersparnis-rechner .infotext .assistent-link, .page-ersparnis-rechner .infotext > div > a, .page-ersparnis-rechner #ergebnis .row.ersparnis > span + span, .page-ersparnis-rechner .box, .page-ersparnis-rechner #ergebnis .row > span{
		font-size: 20px
	}
	.page-ersparnis-rechner .info-range > span{
		font-size: 14px;
	}
	.page-ersparnis-rechner #rechner .stromkostencontainer span:nth-child(1){
		top: 5px;
	}
	.button-ust{
		bottom: 15px;
		top: auto;
		right: 125px;
	}
	.liveGraph .bars .bar{
		width: 80px !important;
		margin: 0 15px !important;
	}
	.liveGraph .bars .bar > span{
		width: 100% !important;
	}
	p.barlabel{
		font-size: 8px;
	}
	.page-ersparnis-rechner #ergebnis{
		margin-top: 20px;
	}
	.stromkostenbremse{
		margin-bottom: 40px;
	}
	#linechart canvas{
		min-height: 400px;
	}
	#diagramm{
		height: 325px;
		padding-top: 20px;
		padding-bottom: 20px
	}
	#diagramm > h2 + span{
		margin-bottom: 20px;
	}
	div#diagramm::after{
		left: 15px;
		bottom: 15px;
		font-size: 8px;
	}
	.page-ersparnis-rechner #ergebnis .row.ersparnis > span > div{
		font-size: 26px;
	}
	.page-ersparnis-rechner #ergebnis .row.ersparnis > span > div{
		margin-bottom: -5px;
	}
	.page-ersparnis-rechner .ersparnis{
		margin-bottom: 50px;
	}
	.bubble{
		padding: 8px 10px;
	}
	.infotext.desktop{
		display: none !important;
	}
	.infotext.mobile{
		display: block !important;
	}
}

/*Entfernen*/
.page-ersparnis-rechner .abschliessen, .page-ersparnis-rechner #ergebnis .row > span, .range-wrap, .page-ersparnis-rechner .abschliessen{
	display: none;
}
.page-ersparnis-rechner .abschliessen-link a{
	margin-top: 0;
}

.ays-pb-modals .ays-popup-hrs-default{
	display: none;
}
.ays-pb-modals h4{
	margin-bottom: 20px;
}
.ays-pb-modals .with_frm_style input[type=text], .ays-pb-modals .with_frm_style input[type=password], .ays-pb-modals .with_frm_style input[type=email], .ays-pb-modals .with_frm_style input[type=number], .ays-pb-modals .with_frm_style input[type=url], .ays-pb-modals .with_frm_style input[type=tel], .ays-pb-modals .with_frm_style input[type=phone], .ays-pb-modals .with_frm_style input[type=search], .with_frm_style select, .ays-pb-modals .with_frm_style textarea, .frm_form_fields_style, .ays-pb-modals .with_frm_style .frm_scroll_box .frm_opt_container, .ays-pb-modals .frm_form_fields_active_style, .ays-pb-modals .frm_form_fields_error_style, .ays-pb-modals .with_frm_style .frm-card-element.StripeElement, .ays-pb-modals .with_frm_style .frm_slimselect.ss-main{
	font-size: 80% !important;
	color: #282a2c !important;
	font-family: "Inter Regular", Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}
.ays-pb-modals .frm_forms{
	margin-top: 1.5rem;
}
.ays-pb-modals p{
	line-height: 135%;
}
.ays-pb-modals .with_frm_style .frm_primary_label{
	font-size: 80% !important;
	color: #282a2c !important;
	font-family: "Inter Regular", Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
}
.frm_style_formidable-style.with_frm_style .frm_submit button{
	background: #d41124 !important;
	color: #fff !important;
	font-family: "Inter Bold", Gotham, "Helvetica Neue", Helvetica, Arial, "sans-serif";
	text-transform: uppercase;
	letter-spacing: 1px;
	border-radius: 20px !important;
	outline: none !important;
	border-color: transparent !important;
}
.frm_style_formidable-style.with_frm_style .frm_submit button:hover{
	background: #282a2c !important;
	color: #fff !important;
}
.page-voranmeldung .with_frm_style input[type=text], .page-voranmeldung .with_frm_style input[type=password], .page-voranmeldung .with_frm_style input[type=email], .page-voranmeldung .with_frm_style input[type=number], .page-voranmeldung .with_frm_style input[type=url], .page-voranmeldung .with_frm_style input[type=tel], .page-voranmeldung .with_frm_style input[type=file], .page-voranmeldung .with_frm_style input[type=search], .page-voranmeldung .with_frm_style select, .page-voranmeldung .with_frm_style .frm-card-element.StripeElement{
	padding: 10px;
}
.page-voranmeldung .with_frm_style .frm_radio label, .page-voranmeldung .with_frm_style .frm_checkbox label{
	font-size: 100%;
}
.page-voranmeldung .frm_style_formidable-style.with_frm_style .form-field input:not([type=file]):not([type=range]):not([readonly]):focus, .page-voranmeldung .frm_style_formidable-style.with_frm_style select:focus, .page-voranmeldung .frm_style_formidable-style.with_frm_style .form-field textarea:focus, .page-voranmeldung .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=text], .page-voranmeldung .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=password], .page-voranmeldung .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=email], .page-voranmeldung .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=number], .page-voranmeldung .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=url], .page-voranmeldung .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=tel], .page-voranmeldung .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=search], .page-voranmeldung .frm_form_fields_active_style, .frm_style_formidable-style.with_frm_style .frm_focus_field .frm-card-element.StripeElement{
    border-color: #999;
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);
}
.page-voranmeldung .with_frm_style .frm_radio input[type=radio], .page-voranmeldung .with_frm_style .frm_scale input[type=radio], .page-voranmeldung .with_frm_style .frm_checkbox input[type=checkbox]{
	width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
}