@charset "utf-8";
/* CSS Document */

/* libre-franklin-100 - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 100;
  src: url('../fonts/libre-franklin-v4-latin-100.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin Thin'), local('LibreFranklin-Thin'),
       url('../fonts/libre-franklin-v4-latin-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-100.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-100.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-100.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-100.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}

/* libre-franklin-200 - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 200;
  src: url('../fonts/libre-franklin-v4-latin-200.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin ExtraLight'), local('LibreFranklin-ExtraLight'),
       url('../fonts/libre-franklin-v4-latin-200.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-200.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-200.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-200.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-200.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}

/* libre-franklin-200italic - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: italic;
  font-weight: 200;
  src: url('../fonts/libre-franklin-v4-latin-200italic.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin ExtraLight Italic'), local('LibreFranklin-ExtraLightItalic'),
       url('../fonts/libre-franklin-v4-latin-200italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-200italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-200italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-200italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-200italic.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}

/* libre-franklin-300 - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/libre-franklin-v4-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin Light'), local('LibreFranklin-Light'),
       url('../fonts/libre-franklin-v4-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-300.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}

/* libre-franklin-regular - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/libre-franklin-v4-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin'), local('LibreFranklin-Regular'),
       url('../fonts/libre-franklin-v4-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-regular.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}

/* libre-franklin-500 - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/libre-franklin-v4-latin-500.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin Medium'), local('LibreFranklin-Medium'),
       url('../fonts/libre-franklin-v4-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-500.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}

/* libre-franklin-600 - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/libre-franklin-v4-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin SemiBold'), local('LibreFranklin-SemiBold'),
       url('../fonts/libre-franklin-v4-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-600.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}

/* libre-franklin-700 - latin */
@font-face {
  font-family: 'Libre Franklin';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/libre-franklin-v4-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Libre Franklin Bold'), local('LibreFranklin-Bold'),
       url('../fonts/libre-franklin-v4-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/libre-franklin-v4-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/libre-franklin-v4-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/libre-franklin-v4-latin-700.svg#LibreFranklin') format('svg'); /* Legacy iOS */
}


/************************************************
*** BASICS
************************************************/

html			{ box-shadow: none !important; }
body			{ font-family: "Libre Franklin", sans-serif; font-weight: 200; font-size: 16px; line-height: 1.8; color: #6a6a6a; background: #009c71; overflow-x: hidden; }

a				{ color: #009c71; text-decoration: none; -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
a:active		{ color: #009c71; }
a:focus			{ color: #009c71; }
a:hover			{ color: #000000; text-decoration: none; }

p 				{ margin-bottom: 0; padding: 0; }
b 				{ font-weight: 400; }

.wrapper		{ margin: 0 auto; padding: 0; width: 100%; height: auto; }
.wrapper-img	{ background-size: cover; -moz-background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-position: center; }


/************************************************
*** CONSENT TOOL
************************************************/

.section-consent-tool{position:fixed;z-index:9999;width:100%;height:auto;background-color:#f8f8f8;color:#6a6a6a;font-size:14px;bottom:0;left:0;padding-top:25px;padding-bottom:40px}
.section-consent-tool>div{max-width:1600px}
.section-consent-tool>div>.row>div{padding-top:15px}
.section-consent-tool a{color:#6a6a6a;text-decoration:underline}
.section-consent-tool a:hover{color:#009c71;text-decoration:none}
.section-consent-tool .custom-control-label{font-size:14px}
.section-consent-tool small{font-size:12px}
.section-consent-tool .text-muted{color:rgba(0,0,0,0.3) !important}
.section-consent-tool .custom-control-input:disabled ~ .custom-control-label,
.section-consent-tool .custom-control-input[disabled] ~ .custom-control-label{color:rgba(0,0,0,0.3) !important}
.section-consent-tool .custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:#009c71}
.section-consent-tool form>.row>div{padding-top:15px}
.section-consent-tool form .row-settings{height:0;overflow:hidden;transition:all 500ms ease}
.section-consent-tool form .row-settings.row-settings-show{height:auto !important;overflow:auto !important}
@media (max-width: 767px){
	.section-consent-tool .post-content{height:90px;overflow-y:scroll}
}


/************************************************
*** TOPBAR
************************************************/

.wrapper-topbar img 	{ height: 50px; width: auto; }

@media (max-width: 991px)
{
	.wrapper-topbar img { margin-top: 15px; margin-bottom: 15px; }
}


/************************************************
*** NAVIGATION
************************************************/

.navigation-portrait									{ background-color: transparent; }
.navigation-portrait .nav-menus-wrapper					{ background-color: #009c71; }
.navigation-portrait .nav-menu li						{ background-color: transparent; margin: 0; border-top: 1px solid rgba(255,255,255,0.1); }
.navigation-portrait .nav-menu > li:last-child 			{ border-bottom: 1px solid rgba(255,255,255,0.1); }
.navigation-portrait .nav-menu li a						{ background-color: transparent; color: #ffffff; font-size: 16px; line-height: 1.0; font-weight: 400;
														  font-family: "Libre Franklin", sans-serif; }

.navigation-portrait .nav-menu > li > a 								{ padding: 20px 13px; }
.navigation-portrait .nav-menu > li > ul > li > a						{ padding: 20px 13px 20px 21px; }
.navigation-portrait .nav-menu > li > ul > li > ul > li > a				{ padding: 20px 13px 20px 29px; }
.navigation-portrait .nav-menu > li > ul > li > ul > li > ul > li > a	{ padding: 20px 13px 20px 37px; }

.navigation-portrait .nav-menu li ul li a				{ display: block; font-weight: 400; text-transform: none; }
.navigation-portrait .nav-menu li ul li 				{ background-color: rgba(0,0,0,0.1); }
.navigation-portrait .nav-menu > li > .nav-dropdown		{ border-top: 0; }

.navigation-portrait .submenu-indicator					{ margin-top: 5px; }
.navigation-portrait .submenu-indicator-chevron			{ border-color: #ffffff !important; }
.navigation-portrait .nav-menus-wrapper-close-button	{ color: #ffffff; }

.navigation-portrait .nav-toggle::before 				{ background-color: transparent; box-shadow: none; }
.navigation-portrait .nav-toggle 						{ display: block; width: 100%; height: auto; margin: 0; padding: 0; top: 12px; text-align: center; color: #6a6a6a; text-transform: uppercase; }


.navigation-landscape									{ background-color: transparent; height: auto; }
.navigation-landscape .nav-menu 						{ float: left; }
.navigation-landscape .nav-menu li						{ background-color: transparent; margin: 0; }
.navigation-landscape .nav-menu li a					{ background-color: transparent; color: #000000; font-size: 16px; line-height: 1.0; font-weight: 400; font-family: "Libre Franklin", sans-serif; }
.navigation-landscape .nav-menu li.active a 			{ color: #009c71; }
.navigation-landscape .nav-menu > li > a 				{ line-height: 1.0; text-align: center; padding: 40px 15px 39px 15px; display: table-cell; vertical-align: middle;
														  width: auto; height: auto; }
.navigation-landscape .nav-menu > li 					{ border-left: 1px solid rgba(255,255,255,0.1); }
.navigation-landscape .nav-menu > li:last-child			{ border-right: 1px solid rgba(255,255,255,0.1); }

.navigation-landscape .nav-menu li ul 					{ width: 250px; }
.navigation-landscape .nav-menu li ul li 				{ border-bottom: 1px solid rgba(255,255,255,0.1); }
.navigation-landscape .nav-menu li ul li:last-child		{ border-bottom: 0; }
.navigation-landscape .nav-menu li ul li a				{ display: block; width: 100%; height: auto; word-wrap: normal; line-height: 1.2; padding: 15px; color: #009c71; }
.navigation-landscape .nav-menu .nav-dropdown			{ white-space: normal; }

.navigation-landscape .nav-menu > li:hover > a			{ background-color: #f8f8f8; color: #000000; }
.navigation-landscape .nav-menu li ul 					{ background-color: #f8f8f8; }
.navigation-landscape .nav-menu li ul li a:hover		{ background-color: #009c71; color: #ffffff; }
.navigation-landscape .nav-menu li ul li.focus > a 		{ background-color: #009c71; }

.navigation-landscape .nav-menu > li > .nav-dropdown	{ border-top: 0; }
.navigation-landscape .nav-menu li a .submenu-indicator 									{ display: none !important; }
.navigation-landscape .nav-menu li a .submenu-indicator .submenu-indicator-chevron 			{ border-color: transparent #6a6a6a #6a6a6a transparent; }
.navigation-landscape .nav-menu li a:hover .submenu-indicator .submenu-indicator-chevron 	{ border-color: transparent #ffffff #ffffff transparent; }
.navigation-landscape .nav-menu li ul li a .submenu-indicator								{ top: 12px; }
.navigation-landscape .nav-menu > li > a > .submenu-indicator 	{ position: absolute; bottom: 12px; float: none; display: block; width: 125px; height: auto; margin: 0; padding: 0; text-align: center; }
.navigation-landscape .nav-menu > li > a > .submenu-indicator > .submenu-indicator-chevron 	{ padding: 0; margin: 0 auto; }

.navigation-landscape .nav-menus-wrapper .nav-btn		{ display: block; width: auto; height: 100%; float: right; margin: 0; padding: 0; padding-top: 30px; }


/************************************************
*** TEASER
************************************************/

.wrapper-teaser { height: 250px;  background-size: cover; -moz-background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-position: center; }


/************************************************
*** HERO
************************************************/

@media (max-width: 991px)
{
	.wrapper-hero 		{ background-size: cover; -moz-background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-position: center;
					  	  padding-top: 100px; padding-bottom: 120px; background-image: url('../images/teaser.jpg'); }
	.wrapper-hero h1 	{ font-family: "Libre Franklin", sans-serif; font-weight: 300; font-size: 40px; line-height: 1.3; margin: 0; padding: 0; }
	.wrapper-hero p 	{ max-width: 500px; }
}

@media (min-width: 992px)
{
	.wrapper-hero 		{ background-size: cover; -moz-background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-position: center;
					  	  padding-top: 180px; padding-bottom: 200px; background-image: url('../images/teaser.jpg'); }
	.wrapper-hero h1 	{ font-family: "Libre Franklin", sans-serif; font-weight: 300; font-size: 48px; line-height: 1.3; margin: 0; padding: 0; }
	.wrapper-hero p 	{ max-width: 500px; }
}


/************************************************
*** 404
************************************************/

@media (max-width: 991px)
{
	.wrapper-404 		{ padding-top: 50px; padding-bottom: 60px; }
	.wrapper-404 h1 	{ font-family: "Libre Franklin", sans-serif; font-weight: 200; font-size: 40px; line-height: 1.3; margin: 0; padding: 0; }
	.wrapper-404 p 		{ max-width: 500px; margin: 0 auto; }
}

@media (min-width: 992px)
{
	.wrapper-404 		{ padding-top: 90px; padding-bottom: 100px; }
	.wrapper-404 h1 	{ font-family: "Libre Franklin", sans-serif; font-weight: 200; font-size: 48px; line-height: 1.3; margin: 0; padding: 0; }
	.wrapper-404 p 		{ max-width: 500px; margin: 0 auto; }
}


/************************************************
*** LEISTUNGEN
************************************************/

.wrapper-leistungen .hero-icon		{ display: block; width: 28px; height: 28px; float: left; margin: 0; padding: 0; margin-right: 12px; }
.wrapper-leistungen .hero-icon img 	{ width: 100%; height: 100%; }


/************************************************
*** MSV
************************************************/

.wrapper-msv 		{ font-style: italic; }
.wrapper-msv img	{ width: 80px; height: auto; opacity: 0.4; }


/************************************************
*** KONTAKT
************************************************/

.wrapper-kontakt 				{ height: 350px; }

#google-map	{ width: 100%; height: 100%; margin: 0; padding: 0; }
#google-map .google-map-alert{background-color:#F8F8F8;width:100%;height:350px;display:flex;align-items:center;text-align:center}
#google-map .google-map-alert .google-map-alert-content{max-width:767px;margin:0 auto}
#google-map .google-map-alert .google-map-alert-content .btn>i{margin-left:0;margin-right:10px}
#google-map .google-map-alert .google-map-alert-content .google-map-alert-text{color:#878787;padding-top:20px;font-size:14px}
#google-map .google-map-alert .google-map-alert-content .google-map-alert-text a{color:#878787}


/************************************************
*** FOOTER
************************************************/

.wrapper-footer 				{ color: rgba(255,255,255,0.6); }
.wrapper-footer a				{ color: rgba(255,255,255,0.6); }
.wrapper-footer a:hover			{ color: rgba(255,255,255,1.0); }


/************************************************
*** IMAGES
************************************************/

.img-3zu2						{ width: 100%; /* whatever width you want */ position: relative; overflow: hidden; margin: 0; padding: 0; }
.img-3zu2:after 				{ padding-top: 66%; /* 3:2 ratio */ display: block; content: ''; }
.img-3zu2 .img-3zu2-content		{ position: absolute; top: 0; bottom: 0; right: 0; left: 0; /* fill parent */ overflow: hidden; background-size: cover; -moz-background-size: cover;
								  -webkit-background-size: cover; -o-background-size: cover; background-position: center; }

.img-1zu1						{ width: 100%; /* whatever width you want */ position: relative; overflow: hidden; margin: 0; padding: 0; }
.img-1zu1:after 				{ padding-top: 99.99%; /* 1:1 ratio */ display: block; content: ''; }
.img-1zu1 .img-1zu1-content		{ position: absolute; top: 0; bottom: 0; right: 0; left: 0; /* fill parent */ overflow: hidden; background-size: cover; -moz-background-size: cover;
								  -webkit-background-size: cover; -o-background-size: cover; background-position: center; }

.img-2zu1						{ width: 100%; /* whatever width you want */ position: relative; overflow: hidden; margin: 0; padding: 0; }
.img-2zu1:after 				{ padding-top: 50%; /* 2:1 ratio */ display: block; content: ''; }
.img-2zu1 .img-2zu1-content		{ position: absolute; top: 0; bottom: 0; right: 0; left: 0; /* fill parent */ overflow: hidden; background-size: cover; -moz-background-size: cover;
								  -webkit-background-size: cover; -o-background-size: cover; background-position: center; }


/************************************************
*** TO TOP
************************************************/

#back-top				{ position: fixed; bottom: 30px; left: 50%; margin-left: -20px; }
#back-top a				{ width: 40px; height: 40px; display: table-cell; vertical-align: middle; text-align: center; background: #d8e3d6; color: #9db999;
						  -webkit-border-radius: 20px; -moz-border-radius: 20px; border-radius: 20px; font-size: 18px; line-height: 20px; }
#back-top a:hover		{ background: #9db999; color: #ffffff; }

@media (max-width: 991px)
{
	#back-top			{ display: none; }
}


/************************************************
*** HEADLINES
************************************************/

h1	{ font-family: "Libre Franklin", sans-serif; font-weight: 200; font-size: 35px; line-height: 1.3; margin: 0; padding: 0; }
h2	{ font-family: "Libre Franklin", sans-serif; font-weight: 200; font-size: 30px; line-height: 1.3; margin: 0; padding: 0; }
h3	{ font-family: "Libre Franklin", sans-serif; font-weight: 200; font-size: 24px; line-height: 1.3; margin: 0; padding: 0; }
h4	{ font-family: "Libre Franklin", sans-serif; font-weight: 200; font-size: 20px; line-height: 1.3; margin: 0; padding: 0; }


/************************************************
*** BUTTONS
************************************************/

.btn				{ text-decoration: none !important; -webkit-transition: 0.3s; -moz-transition: 0.3s; -ms-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s;
					  font-family: "Libre Franklin", sans-serif; font-weight: 300; font-size: 16px; }
.btn:focus 			{ box-shadow: none; }
.btn:active			{ box-shadow: none; }

.btn-primary		{ color: #ffffff; background: #009c71; border-color: #009c71; }
.btn-primary:hover	{ color: #ffffff; background: #007655; border-color: #007655; }

.btn-outline-primary 		{ border-color: #009c71; color: #009c71; }
.btn-outline-primary:hover	{ border-color: #007655; color: #007655; background-color: transparent; }


/************************************************
*** FARBEN / TEXT
************************************************/

.text-white			{ color: #ffffff; }
.text-primary		{ color: #009c71 !important; }

.bg-white			{ background: #ffffff; }
.bg-primary			{ background: #009c71; }
.bg-light 			{ background: #f8f8f8; }


/************************************************
*** MARGINS / PADDINGS
************************************************/

.m-top-5	{ margin-top: 5px !important; }
.m-bot-5	{ margin-bottom: 5px !important; }

.m-top-10	{ margin-top: 10px !important; }
.m-bot-10	{ margin-bottom: 10px !important; }

.m-top-15	{ margin-top: 15px !important; }
.m-bot-15	{ margin-bottom: 15px !important; }

.m-top-30	{ margin-top: 30px !important; }
.m-bot-30	{ margin-bottom: 30px !important; }

.m-top-45	{ margin-top: 45px !important; }
.m-bot-45	{ margin-bottom: 45px !important; }


.p-top-5	{ padding-top: 5px !important; }
.p-bot-5	{ padding-bottom: 5px !important; }

.p-top-10	{ padding-top: 10px !important; }
.p-bot-10	{ padding-bottom: 10px !important; }

.p-top-15	{ padding-top: 15px !important; }
.p-bot-15	{ padding-bottom: 15px !important; }

.p-top-20	{ padding-top: 20px !important; }
.p-bot-20	{ padding-bottom: 20px !important; }

.p-top-30	{ padding-top: 30px !important; }
.p-bot-30	{ padding-bottom: 30px !important; }

.p-top-40	{ padding-top: 40px !important; }
.p-bot-40	{ padding-bottom: 40px !important; }

.p-top-45	{ padding-top: 45px !important; }
.p-bot-45	{ padding-bottom: 45px !important; }

.p-top-100	{ padding-top: 100px !important; }
.p-bot-100	{ padding-bottom: 100px !important; }

.p-top-150	{ padding-top: 150px !important; }
.p-bot-150	{ padding-bottom: 150px !important; }

.p-15		{ padding-top: 15px; padding-bottom: 15px; padding-right: 15px; padding-left: 15px; }
.p-20		{ padding-top: 20px; padding-bottom: 20px; padding-right: 20px; padding-left: 20px; }