@font-face
{
	font-family: "BebasNeue-Regular";
	src: url("../fonts/BebasNeue-Regular.eot"); /* IE9 Compat Modes */
	src: url("../fonts/BebasNeue-Regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
	url("../fonts/BebasNeue-Regular.otf") format("opentype"), /* Open Type Font */
	url("../fonts/BebasNeue-Regular.svg") format("svg"), /* Legacy iOS */
	url("../fonts/BebasNeue-Regular.ttf") format("truetype"), /* Safari, Android, iOS */
	url("../fonts/BebasNeue-Regular.woff") format("woff"), /* Modern Browsers */
	url("../fonts/BebasNeue-Regular.woff2") format("woff2"); /* Modern Browsers */
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face
{
	font-family: "LibreBaskerville-Regular";
	src: url("../fonts/LibreBaskerville-Regular.eot"); /* IE9 Compat Modes */
	src: url("../fonts/LibreBaskerville-Regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
	url("../fonts/LibreBaskerville-Regular.otf") format("opentype"), /* Open Type Font */
	url("../fonts/LibreBaskerville-Regular.svg") format("svg"), /* Legacy iOS */
	url("../fonts/LibreBaskerville-Regular.ttf") format("truetype"), /* Safari, Android, iOS */
	url("../fonts/LibreBaskerville-Regular.woff") format("woff"), /* Modern Browsers */
	url("../fonts/LibreBaskerville-Regular.woff2") format("woff2"); /* Modern Browsers */
	font-display: swap;
	/*font-weight: normal;
	font-style: normal;*/
}


input[type="text"]#website { 
    display: none; 
}

input#website { 
    display: none; 
}

body {
	scroll-behavior: smooth;
	color: #333;
}

h1,h2,h3,h4 {
    font-family: BebasNeue-Regular;

}

h1 {
    color: #11999E;
    margin-top: 50px;
}

h4 { margin-top: 20px; }

h5 {
	font-family: 'Open Sans', sans-serif;
    font-size: 16px;
}

p,ul,li,table,tr,td,th {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    line-height: 2;
}

a { color: #11999E; }

a:hover {

    color: #11999E;

}

input[type="radio"]{
    visibility:hidden;
}

input[type="radio"]:checked+label{

    background-color: rgba(44,62,80,0.8);
    border-color: rgba(44,62,80,0.8);

}

.btn
{
	white-space: normal;
}

.sticky-cta-bar {
	position: sticky;
	position: -webkit-sticky;
	top:  calc(100vh - 90px);
	z-index: 10;
	align-items: center;
	justify-content: center;
	background-color: white;
	padding: 5px;
	box-shadow: 0 1px 10px rgba(0,0,0,.15);
}

@media(max-width: 767px) {
	.sticky-cta-bar {
		position: fixed;
		top: 0;
		width: 100vw;
	}
}

.flex {
	display: flex;
}
.flex-column {
	flex-direction: column;
}
.justify-end {
	justify-content: end;
}
.justify-center {
	justify-content: center;
}
.padding-0 {
	padding: 0;
}
.hidden-sm {
	display: inline-block;
}
@media (max-width: 767px) {
	.hidden-sm {
		display: none;
	}
}

.white-icon-bg {
	font-size: 24px;
	width:36px;
	height: 36px;
	border-radius: 50%;
	background-color: white;
	color:#11999E;
	text-decoration: none !important;
	margin-right: 10px;
}

.header-phone-number {
	font-size: 20px;
	line-height: 22px;
}
.header-phone-description {
	font-size: 10px;
	text-transform: none;
	font-family: 'Open Sans', sans-serif;
}

.invisible { display: none; }

.make_it_green {
    position: relative;
    right: 5px;
    color: #11999E;
    font-size: 18px;
}

.custom-form-h1 {

    font-size: 4rem;
    margin-top: 0px;

}

.custom-form-h1-adresse {
    margin-top: 0px;
    font-size: 30px;
}

.custom-form-h2 {

    font-family: LibreBaskerville-Regular;
    font-size: 1.5rem;

}

.custom-form-h3 {

    font-family: LibreBaskerville-Regular;
    font-size: 1.5rem;
    color: #fff;

}

.form-failed {
    color: #495057;
    background-color: #fff;
    border-color: #ff8080;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(255, 0, 0, 0.25);
}

.custom-video {
    margin-top: 15px;
}

.custom-listgroup {
    margin-top: 25px;
}

.custom-listgroup-green > li {

    background-color: #11999E;
    color: #fff;
    border: 0;

}

.custom-lower {
    border-top: 3px solid #11999E;
    padding-bottom: 25px !important;
}

.custom-unsere-tipps {
    margin-top: 50px;
    margin-bottom: 20px;
}
.custom-unsere-tipps > img {
    width: 350px;
}

.custom-listgroup > li {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
}

.custom-listgroup > li > a {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    color: #333;
}

.custom-listgroup-referenzen {
    margin-top: 25px;
}

.custom-listgroup-referenzen > li {
	font-family: 'Open Sans', sans-serif;
    font-size: 14px;
}

.custom-kontakt a {
    color: #11999E;
}

.custom-kontakt p {
    line-height: 1.2;
}

@keyframes FadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.custom-transition {
animation: FadeIn 2s;
}

.frontpage_box {
    margin: 5px 0px;
    border-radius: 0px !important;
    border: 1px solid rgba(0,0,0,.125);


}

.frontpage_box > p {
    line-height: inherit;
    padding: 8px;
    font-size: 14px;
}

.ellips_text {
    width: 100%;
    padding: 8px;
    background-color: #11999E;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: rgba(255,255,255,1);
    font-family: BebasNeue-Regular, serif;
    font-size: 18px;
}

.ellips_text > a {
    color: rgba(255,255,255,1);
    font-family: BebasNeue-Regular, serif;
    font-size: 18px;
}

.btn-whatsapp {
    font-family: LibreBaskerville-Regular;
    font-size: 16px;
}

.btn-success-custom {
    color: #fff;
    background-color: #11999E;
    border-color: #11999E;
    font-family: LibreBaskerville-Regular;
    font-size: 14px;
}

.btn-success-custom.condensed
{
	letter-spacing: -0.04em; /* 0.56/14 */
}

.btn-success-custom-large
{
	margin-top: 16px;
	margin-bottom: 28px;
	font-size: 18px;
}
@media (max-width: 576px)
{
	.btn-success-custom-large
	{
		margin-top: 12px;
		margin-bottom: 20px;
		font-size: 16px;
	}
}

.btn-xl {
	font-size: 14px !important;
	padding: 0.8rem 1rem;
}

.btn-cta-custom
{
	padding: 15px 25px;
	background-color: #11999E;
	border-color: #11999E;
	color: #fff;
	font-size: 20px;
	font-family: LibreBaskerville-Regular;
}

.btn-success-custom:hover {
    color: #fff;
    background-color: #B42041;
    border-color: #B42041;
}

.btn-back {

    color: #11999E;
    background-color: #fff;
    border-color: #fff;
    font-family: LibreBaskerville-Regular;
    font-size: 20px;
}

.bg-primary {
    background-color: #11999E !important;
}

.benefit-top-bar {
	display: flex;
	padding: 6px;
	font-size: .6rem;
	justify-content: space-between
}
@media (max-width: 767px) {
	.benefit-top-bar {
		font-size: .5rem;
	}
}

.navbar-dark a {
    color: rgba(255,255,255,1);
    font-family: BebasNeue-Regular, serif;
    font-size: 20px;
}
.navbar-dark a:hover, .navbar-dark a:hover span {
	text-decoration: underline;
}

.pre-footer-title {
	font-size: 2.5rem;
	color: #11999E;
	margin-top: 50px;
	font-family: BebasNeue-Regular;
}
.pre-footer-benefits {
	display: flex;
}

@media (max-width: 767px) {
	.pre-footer-title {
		font-size: 1.5rem;
		text-align: center;
	}
	.pre-footer-benefits {
		flex-direction: column;
		font-size: .8rem;
	}
}

.footer > .container {
	opacity: .25;
	border-top: 3px solid #52c6cb;
    color: #52c6cb;
    font-family: BebasNeue-Regular;
    font-size: .8rem;
    padding-top: 15px !important;
    padding-bottom: 50px !important;
}

.footer > .container > a {
    color: #11999E;
    padding: 0 10px;
    white-space: nowrap;
}

.jumbotron-custom-form {

 background-image: linear-gradient(to bottom, rgba(255,255,255,0.6) 0%,rgba(255,255,255,0.6) 100%), url('../images/bg_frontpage.jpg');
 background-size: cover;
 background-repeat: no-repeat;
 background-position: center center;
 min-height: 600px;
 border-radius: 0;
 position: relative;
 padding: 2rem 2rem;
}

.jumbotron-custom-form-badge {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 999;
    max-width: 214px;
}

.jumbotron-custom-form-pfeil-teaser {
    position: absolute;
    left: 175px;
    top: 75px;
    z-index: 999;

}

.form-wrapper-dark {

    background: rgba(44,62,80,0.8);
    border-radius: 10px;
}

.form_img {
    max-width: 100%;
    height: auto;
}

.custom-icon
{
	width: 100px;
}

.clickable {
	cursor: pointer;
}

.testimonial_section .col-lg-6 {
	display: flex;
}

.testimonial_card {
	margin:2rem 0;
	display: flex;
	flex-direction: column;
}

.testimonial_card .testimonial_img_wrapper {
	text-align: center;
	margin-bottom: 1rem;
}

.testimonial_card .testimonial_img_wrapper .img-fluid {
	border-radius: 50%;
}

.testimonial_card .testimonial_card_content {
	text-align: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
}

.testimonial_card .testimonial_card_content h2 {
	text-align: center;
	font-size: 1.6rem;
}

.testimonial_card .testimonial_card_content p {
	font-size: 0.9rem;
}

.testimonial_card .testimonial_card_content .btn-cta-custom {
	font-size: 0.8rem;
	padding: 10px;
	width: 100%;
}

@media (max-width: 1200px) {
	.jumbotron-custom-form-pfeil-teaser {
		display: none;
	}
	.jumbotron.jumbotron-custom-form {
		background-position-y: bottom;
	}
}

.mini-formular {
	position: sticky;
	position: -webkit-sticky;
	top: 10px;
}
@media (max-width: 767px) {
	.mini-formular {
		position: relative;
		top: 0;
	}
}
.mini-formular .btn-success-custom {
	display: flex;
	align-items: center;
	text-align: left;
}
.mini-formular .btn-success-custom img {
	width: 30px;
}
.mini-formular .btn-success-custom span {
	padding-left: 10px;
}

#deutsche-handwerk {
	position: absolute;
	top: -100px;
	right: 20px;
	transform: rotate(25deg);
}

img.deutsche-handwerk-green {
	width: 150px;
	transform: rotate(15deg);
	position: absolute;
	right: 0;
	margin-top: -90px;
}

@media (max-width: 767px) {
	#deutsche-handwerk {
		width: 90px;
	}
	img.deutsche-handwerk-green {
		margin-top: -100px;
		width: 90px !important;
	}
}

@media (max-width: 576px) {

	.navbar-dark > div > nav
	{
		text-align: center;
	}
	.navbar-dark > div > nav > a
	{
		/* white-space: nowrap; */
	}

	.ml-custom-topnav { margin-left: 25px; margin-right: 25px; }

    p,ul,li,table,tr,td,th {
        font-family: LibreBaskerville-Regular;
        font-size: 14px;
        line-height: 1.5;
    }

    ul { padding: 10px; }

    ol { margin-top: 25px; }

    h1 {
        margin-top: 1.5rem;
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }

    .col-sm-6 {
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
	.custom-form-h1-adresse { text-align: center; }

	.pt-sm-4, .py-sm-4 {
		padding-top: 1.5rem !important;
	}

	.mt-sm-4, .my-sm-4 {
		margin-top: 1.5rem !important;
	}

	.ml-sm-3, .mx-sm-3 {
		margin-left: 1rem !important;
	}

	.custom-form-h3 {
		font-family: LibreBaskerville-Regular;
		font-size: 1rem;
		color: #fff;
	}

	label { white-space: inherit !important; }

	.jumbotron-custom-form {
		background-image: linear-gradient(to bottom, rgba(255,255,255,0.6) 0%,rgba(255,255,255,0.6) 100%), url('../images/fenster-image.jpg');
	}

	.jumbotron-custom-form-badge {

		max-width: 100px;
	}

	.custom-form-h1 {
		font-size: 2rem;
		margin-top: 0px;
	}

	.custom-form-h2 {
		font-family: LibreBaskerville-Regular;
		font-size: 0.75rem;
	}

    .custom-form-h3 {

        text-align: center;

    }

    .plz-custom { padding-bottom: 75px; }
    
    img#img_front {
    display: none;
}

}

@media (min-width: 576px) {

    .navbar-dark > div > nav { text-align: center; }
    .navbar-dark > div > nav > a { white-space: nowrap; }
    .ml-custom-topnav { margin-left: 25px; margin-right: 25px; }



}


@media (min-width: 768px) {
    .mt-custom-stoerer { margin-top: 28px; }
    .ml-custom-topnav { margin-left: 25px; margin-right: 0px; }
}


@media (min-width: 992px) {
    .mt-custom-stoerer { margin-top: 38px; }
}


@media (min-width: 1200px) {
    .mt-custom-stoerer { margin-top: 45px; }
}

#plz-warning {
    color: #ff8080;
    font-size: 0.9rem;
    padding: 10px;
    width: 200px;
    margin-left: 20px;
}

.jumbotron-custom-form .infobox
{
	padding: 1.75rem 1.25rem 1.25rem 1.25rem; /* 28/16 20/16 20/16 20/16 */
	background: #11999e;
	border-radius: 2rem; /* 32/16 */
}
.jumbotron-custom-form .infobox .list-group .list-group-item
{
	margin: 0 0 0.75rem 0; /* 0 0 12/16 0 */
	padding: 0;
	background: transparent;
	border: none;
	color: #fff;
	font-size: 1.5rem; /* 24/16 */
	line-height: 1.25; /* 30/24 */
	font-family: BebasNeue-Regular, sans-serif;
	text-align: center;
}
.jumbotron-custom-form .infobox .list-group .list-group-item .glyphicon
{
	position: relative;
	top: -1px;
	padding-right: 0.125rem; /* 2/16 */
	font-size: 1.125rem; /* 18/16 */
}

.jumbotron-custom-form
{
	padding-bottom: 6rem;
}
.progress-bar
{
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: hidden;
	height: 4rem;
	background: rgba(225, 225, 225, 0.8);

	opacity: 1;
	transition: opacity 400ms;
}
.progress-bar.invisible
{
	display: block;
	visibility: visible !important;
	opacity: 0;
}
.progress-bar:before,
.progress-bar::before
{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	border: solid 1px rgba(17, 153, 158, 0.5); /* #11999e */
}
.progress-bar .steps
{
	position: relative;
	z-index: 1;

	display: flex;
	height: 100%;
}
.progress-bar .steps .step
{
	position: relative;
	display: flex;
	flex: 20% 0 0;
	justify-content: center;
	align-items: center;

	/* border-right: solid 1px rgba(17, 153, 158, 0.5); */
}
.progress-bar .steps .step:after,
.progress-bar .steps .step::after
{
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(38%, -50%) scale(0.5, 1) rotate(45deg);
	-ms-transform: translate(38%, -50%) scale(0.5, 1) rotate(45deg);
	transform: translate(38%, -50%) scale(0.5, 1) rotate(45deg);
	width: 5rem;
	height: 5rem;
	border-top: solid 1px rgba(17, 153, 158, 0.5);
	border-right: solid 1px rgba(17, 153, 158, 0.5);

	transition: border-color 400ms;
}
.progress-bar .steps .step.done:after,
.progress-bar .steps .step.done::after
{
	border-color: #98d4d6;
}
.progress-bar .steps .step.done:last-of-type:after,
.progress-bar .steps .step.done:last-of-type::after
{
	border-color: transparent;
}
.progress-bar .steps .step span
{
	position: relative;
	left: 0.5rem; /* 8/16 */

	display: inline-block;
	padding: 0.4375rem 1rem 0.5rem 1rem; /* 7/16 16/16 8/16 16/16 */
	background-color: rgba(17, 153, 158, 0.5);
	border-radius: 50%;
	color: #fff;
	font-size: 1rem;
	font-family: LibreBaskerville-Regular, serif;

	transition: background-color 400ms, color 400ms;
}
.progress-bar .steps .step:first-child span,
.progress-bar .steps .step:last-child span
{
	left: 0.25rem; /* 4/16 */
}
.progress-bar .steps .step.done span
{
	background-color: #98d4d6; /* #7bbfc1 */
	color: #11999e;
}
.progress-bar .progress
{
	position: absolute;
	top: 0;
	left: 0;
	overflow: visible;
	width: 0;
	height: 100%;
	background: #11999e;
	border-radius: 0;

	transition: width 400ms;
}
.progress-bar .progress:after,
.progress-bar .progress::after
{
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(38%, -50%) scale(0.5, 1) rotate(45deg);
	-ms-transform: translate(38%, -50%) scale(0.5, 1) rotate(45deg);
	transform: translate(38%, -50%) scale(0.5, 1) rotate(45deg);
	width: 5rem;
	height: 5rem;
	background: #11999e;
}

.customer-reviews
{
	margin: 1rem 0 1.5rem 0;
	color: #fff;
	text-align: center;
}
.customer-reviews .customer-reviews-headline
{
	margin-bottom: 0.75rem;
	font-size: 1.25rem;
	font-family: LibreBaskerville-Regular, serif;
}
.customer-reviews .rating
{
	margin-bottom: 0.5rem;
}
.customer-reviews .rating .star
{
	color: #f8bf4e; /* #f0B33b #ffd050 */
}
.customer-reviews .rating .star-empty
{
	color: #fff;
}
.customer-reviews .user-name
{
	margin-bottom: 0.5rem;
	font-size: 1rem;
	font-family: LibreBaskerville-Regular, serif;
}
.customer-reviews .review-text
{
	font-size: 0.875rem;
	line-height: 1.5;
}

/* Logo Slider */

.logo-slider
{
	overflow: hidden;
	margin: 24px 0 40px 0;
	padding-bottom: 44px;
}
.logo-slider .slick-list
{
	overflow: visible;
	/* position: static; */
	margin-right: -7px;
	margin-left: -7px;
}
.slick-slide:focus
{
	outline: none;
}
.slick-slide .image
{
	padding: 7px;
}
.slick-slide .image img
{
	width: 100%;
}

/* Logo Slider > Pfeile */

.slick-prev,
.slick-next
{
	top: auto;
	right: auto;
	bottom: 0;
	left: auto;

	width: 30px;
	height: 30px;
}
.slick-prev
{
	right: 50%;
	-webkit-transform: translate(-15%, 0);
	-ms-transform: translate(-15%, 0);
	transform: translate(-15%, 0);
}
.slick-next
{
	left: 50%;
	-webkit-transform: translate(15%, 0);
	-ms-transform: translate(15%, 0);
	transform: translate(15%, 0);
}
.slick-prev:before,
.slick-prev::before,
.slick-next:before,
.slick-next::before
{
	color: #11999e;
	font-size: 30px;
}

/* Inhalt > Banner-Formular */

.wpcf7-form
{
	overflow: hidden;
	max-width: 800px;
	margin: 3rem 0;
	background: transparent url(../images/banner-form/form-image.png) no-repeat right bottom;
	background-size: 50% auto;
}
.wpcf7-form .wrapper
{
	position: relative;
	height: 0;
	margin-right: 50%;
	padding-bottom: 24.725274725274725274725274725275%;
	background: transparent url(../images/banner-form/form-background.png) no-repeat left top;
	background-size: 100% auto;
}
.wpcf7-form .wrapper .wrapper-inner
{
	position: absolute;
	top: 25%;
	left: 5.5%;
	width: 89%;
	height: 25%;
}
.wpcf7-form .wrapper .wpcf7-form-control-wrap
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.wpcf7-form .wrapper input
{
	position: absolute;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
}
.wpcf7-form .wrapper .text-zip
{
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-right: 14%;
	padding-left: 0.625rem; /* 10/16 */
	font-size: 1rem; /* 16/16 */
}
.wpcf7-form .wrapper .submit
{
	top: 0;
	right: 0;
	width: 12%;
	height: 100%;
	overflow: hidden;
	background: #2C3E50 url(../images/banner-form/form-submit.png) no-repeat center center;
	background-size: cover;
	text-indent: -99999px;
	cursor: pointer;
}
@media (max-width: 560px) /* (min-width: 850px) and (max-width: 1000px) */
{
	.wpcf7-form
	{
		background-size: 100% auto;
	}
	.wpcf7-form .wrapper
	{
		margin-right: 0;
		margin-bottom: 49.450549450549450549450549450549%;
		padding-bottom: 49.450549450549450549450549450549%;
	}
}

@media (max-width: 400px)
{
	.custom-form-h1
	{
		margin-left: 60px;
		font-size: 1.5rem !important; /* 24/16 */
	}
	.btn-success-custom
	{
		font-size: 11px !important;
	}
	.btn-xl {
		font-size: 14px !important;
	}
	.btn-cta-custom,
	.btn-back
	{
		font-size: 1rem !important; /* 16/16 */
	}
}

@media (hover: none) {
	.btn-success-custom.btn-success:hover {
		transform: none;
	}
	.form-wrapper .optionable:hover .btn-success-custom,
	.form-wrapper a:hover .btn-success-custom,
	.btn-success-custom:hover {
		transform: none;
	}
	.form-wrapper-light .optionable:hover {
		transform: none;
	}
}