
/*--LOCAL GOOGLE FONTS ---------------------------------------*/

/* montserrat-regular - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/montserrat-v25-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/montserrat-v25-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* poppins-regular - latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/poppins-v20-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/poppins-v20-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* raleway-regular - latin */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/raleway-v28-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/raleway-v28-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/*--PRE LOADER---------------------------------------*/

	.preloader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	background: none repeat scroll 0 0 #ffffff;
	}

	.spinner {
	border: 1px solid transparent;
	border-radius: 3px;
	position: relative;
	}

	.spinner:before {
	content: '';
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 45px;
	height: 45px;
	margin-top: -10px;
	margin-left: -10px;
	border-radius: 50%;
	border: 1px solid #575757;
	border-top-color: #ffffff;
	animation: spinner .9s linear infinite;
	}

	@-webkit-@keyframes spinner {
	to {transform: rotate(360deg);}
	}

	@keyframes spinner {
	to {transform: rotate(360deg);}
	}


/*--TYPOGRAPHY---------------------------------------*/

	h1,h2,h3,h4,h5,h6 {
	font-weight: 600;
	line-height: inherit;
	}

	h1,h2,h3,h4 {
	letter-spacing: -0.5px;
	}

	h5 {
	font-weight: 500;
	}

	h1 {
	color: #252525;/* farbe 1. überschrift*/
	font-size: 3em;
	}

	h2 {
	color: #272727;/* farbe 2. überschrift*/
	font-size: 2em;
	padding-bottom: 10px;
	}

	h3 {
	font-size: 1.8em;
	line-height: 1.4em;
	margin-bottom: 0;
	}

	h4 {
	color: #454545;/* farbe */
	font-size: 1.2em;
	padding-bottom: 2px;
	}

	h6 {
	letter-spacing: 0;
	font-weight: normal;
	}

	p {
	color: #222222;/* normale text farbe */
	font-size: 15px;
	font-weight: 400;
	line-height: 22px;
	}
	
	b {
	font-weight: 600;
	}
	
	/*  Farbschema: ecf4f3 (grau), 76dbd1 (lightteal), 57a99a (greenteal), 555151 (darkgrey) */
	
/*--GENERAL------------------------------------------*/

	body {
	background: #57a99a;   /* farbe */
	font-family: 'Raleway', sans-serif;
	overflow-x: hidden;
	}
	
	html {
	-webkit-font-smoothing: antialiased;
	}

	.equal {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	}
		
	.equal > [class*='col-'] {
	display: flex;
	flex-direction: column;
	}
	
	a {
	color: #4e988a;   /* link farbe 57a99a */
	-webkit-transition: 0.2s;
	transition: 0.2s;
	text-decoration: none !important;
	}

	a:hover, a:focus {	/*a:active,*/
	color: #555151;   /* mouse-over link farbe */
	outline: none;
	}

	::-webkit-scrollbar{
	width: 12px;
	height: 8px;
	}

	::-webkit-scrollbar-thumb {
	cursor: pointer;
	background: #333333;
	}

	.section-title {
	padding-bottom: 20px;
	}

/* 	.section-title h2 {
	margin-top: 0;
	} */
	
	.section-btn {
	background: #555151; /* button farbe */
	opacity: 0.7;
	border: 0;
	border-radius: 4px;
	color: #ffffff;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 2px;
	padding: 6px 15px;
	transition: transform 0.1s ease-in;
	/* transform: translateX(0); */
	}

	.section-btn:hover {
	background: #76dbd1; /* button mouse over farbe */
	color: #555151;
	text-decoration: none;
	}

	.text-align-right {
	text-align: right;
	}

	.text-align-left {
	text-align: left;
	}

	.text-align-center {
	text-align: center;
	}

	#update {
	box-shadow: 0 2px 8px rgba(0,0,0,.1);
	position: relative;
	padding-top: 5px!important;
	padding-bottom: 10px!important;
	background: #fff25c!important;
	text-align: center;
	}
	#update h2 {
	padding-bottom: 0!important;
	line-height: 1em!important;
	}

	#vorsorge, #leistungen, #team, #anfahrt, #impressum, #datenschutz, #disclaimer {
	box-shadow: 0 2px 8px rgba(0,0,0,.1);
	position: relative;
	padding-top: 60px;
	padding-bottom: 80px;
	}
	
	#news {
	box-shadow: 0 2px 8px rgba(0,0,0,.1);
	position: relative;
	padding-top: 30px;
	padding-bottom: 30px;
	background: #76dbd1;
	text-align: center;
	}
	
	#impressum, #datenschutz, #disclaimer {
	padding-top: 25px!important;
	padding-bottom: 40px!important;
	}
	
	#leistungen, #team {
	background: #57a99a;
	}
	
	#vorsorge, #anfahrt {
	background: #76dbd1;
	}

	#vorsorge {
	padding-bottom: 200px!important;
	}

	#anfahrt {
	padding-bottom: 25px!important;
	}

	.map {
	background: #76dbd1;
	padding: 0px!important;
	box-shadow: 0!important;
	}


/*--HEADER-------------------------------------------*/

	header {
	background: #ecf4f3;/* header background farbe */
	display: flex;
	height: 45px;
	margin: 0px;
	}

	header p,
	header span {
	font-size: 14px;
	color: #555151;
	line-height: 22px;
	padding: 10px 0px;
	}

	header span {
	font-weight: 400;
	display: inline-block;
	}
	
	header span i {
	color: #57a99a;/* header icon farbe */
	margin-right: 5px;
	padding-left: 25px;
	}


/*--MENU---------------------------------------------*/

	.navbar-default {
	background: #ffffff; /* menu background farbe */
	box-shadow: 0 2px 8px rgba(0,0,0,.075);
	border: none;
	padding: 5px 0px;
	margin-bottom: 0;
	height: auto;
	}

	.navbar-header a {
	color: #111!important; /* menu link farbe */
	font-size: 28px;
	font-weight: 600;
	line-height: 44px;
	}

	.navbar-default .navbar-nav li a {
	color: #57a99a; /* menu link farbe */
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 1px;
	-webkit-transition: all ease-in-out 0.4s;
	transition: all ease-in-out 0.4s;
	}

	.navbar-default .navbar-nav > li a:hover {
	color: #111 !important; /* menu font farbe */
	}
	
	.navbar-default .navbar-nav > li > a:hover,
	.navbar-default .navbar-nav > li > a:focus {
	color: #111;
	background-color: transparent;
	}

	.navbar-default .navbar-nav > .active > a,
	.navbar-default .navbar-nav > .active > a:hover,
	.navbar-default .navbar-nav > .active > a:focus {
	color: #111;
	background-color: transparent;
	}

	.navbar-default .navbar-toggle {
	border: none;
	padding-top: 10px;
	}

	.navbar-default .navbar-toggle .icon-bar {
	background: #111;
	border-color: text-align-right;
	}

	.navbar-default .navbar-toggle:hover,
	.navbar-default .navbar-toggle:focus { 
	background-color: transparent;
	}

/*--Slider-------------------------------------------*/

	#home h1 {
	color: #ffffff; /* slider font farbe */
	padding-bottom: 10px;
	margin-top: 0;
	text-shadow: 2px 2px #555151;
	}

	#home h3 {
	color: #ffffff; /* slider font farbe */
	font-size: 14px;
	font-weight: normal;
	line-height: inherit;
	letter-spacing: 3px;
	text-transform: uppercase;
	margin: 0;
	}
	
	.slider .container {
	width: 100%;
	}
	
	.slider p {
	color: #ecf4f3;
	background-color: rgba(40,40,40,0.4);
	border-radius: 15px;
	padding: 15px;
	width: 70%;
	margin-left: 15%;
	text-align: center;
	}

	.slider .caption {
	display: flex;
	padding-top: 120px;
	flex-direction: column;
	text-align: center;
	background-color: rgba(20,20,20,0.2);
	height: 100%;
	color: #fff;
	cursor: e-resize;
	}

	.slider .item {
	background-position: inherit;
	background-repeat: no-repeat;
	background-attachment: local;
	background-size: cover;
	height: 700px;
	}

	.slider .item-first {
	background-image: url(../images/slider1.jpg);
	}

	.slider .item-second {
	background-image: url(../images/slider2.jpg);
	}

	.slider .item-third {
	background-image: url(../images/slider3.jpg);
	}
	
	.slider .owl-dots {
	position: absolute;
	bottom: 80px;
	width: 100%;
	justify-content: center;
	}

	.owl-theme .owl-dots .owl-dot span {
	width: 10px;
	height: 10px;
	margin: 4px 8px;
	border: 2px solid #d9d9d9;
	background: transparent;
	display: block;
	-webkit-backface-visibility: visible;
	transition: opacity 200ms ease;
	border-radius: 30px;
	}

	.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
	background-color: #ffffff;
	border-color: transparent;
	}


/*--VORSORGE-----------------------------------------*/

	#vorsorge img {
	display: inline-block;
	border: 2px solid #d9d9d9;
	border-radius: 12px;
	margin-top: 10px;
	}
	

/*--LEISTUNGEN---------------------------------------*/
	
	.service {
	border-radius: 10px 10px 0 0;
	background: #ffffff;
	border-radius: 12px;
	padding-bottom: 10px;
	margin-bottom: 25px;
	height:100%
	}

	.service h3 {
	color: #57a99a;
	background: #ecf4f3;
	padding: 10px 20px;
	border-radius: 12px;
	margin: 0;
	text-transform: uppercase;
	}
	
	.service h4 {
	background: #ecf4f3;
	padding: 8px 20px 20px 20px;
	border-radius: 12px;
	margin-top: -16px;
	text-transform: uppercase;
	}
	
	.service ul {
	padding-top: 5px;
	margin-left: 0;
	}
	
	.service ul li {
	list-style: square;
	padding: 8px 8px 0px 0px;
	}
	

/*--TEAM---------------------------------------------*/

	.team-thumb {
	background-color: #f9f9f9;
	border-radius: 8px;
	position: relative;
	overflow: hidden;
	margin-bottom: 60px;
	}

	.team-info {
	padding: 8px 20px;
	}

	.team-info p {
	color: #555151;
	}
	
/*--IMPRESSUM und DATENSCHUTZ---------------------------------------------*/

	#impressum h2, #datenschutz h2, #disclaimer h2 {
	color: #ecf4f3;
	text-transform: uppercase;
	}
	
	#impressum h3, #datenschutz h3, #disclaimer h3 {
	color: #222222;
	font-size: 1.5em;
	}
	
	#impressum p a, #datenschutz p a, #disclaimer p a {
	color: #76dbd1;
	font-weight: 400;
	}
	.white {
	color: #fefefe;
	}


/*--FOOTER-------------------------------------------*/
	
	footer {
	background: #76dbd1;
	padding-top: 60px;
	padding-bottom: 40px;
	}

	footer p {
	color: #555151;
	}

	footer h4 {
	padding-bottom: 10px;
	}
	
	.contact {
	padding-top: 20px;
	}
	.contact-info {
	padding-top: 5px;
	}
	
	.contact-info span {
	font-weight: 500;
	}

	.contact-info .fa {
	background: #393939;
	border-radius: 100%;
	color: #ffffff;
	font-size: 13px;
	width: 24px;
	height: 24px;
	line-height: 24px;
	text-align: center;
	margin-right: 8px;
	}

	.opening-hours p {
	line-height: 14px;
	}

	.opening-hours span {
	font-weight: 500;
	display: inline-block;
	padding-left: 30px;
	}

/*--Line und Up Button ----------------------------------*/

	footer .border-top {
	border-top: 1px solid #ecf4f3;
	margin-top: 25px;
	}
	
	.angle-up-btn a {
	background: #ffffff;
	color: #393939;
	border: 1px solid #fefefe;
	border-radius: 3px;
	margin-top: -19px;
	font-size: 20px;
	line-height: 36px;
	display: inline-block;
	text-align: center;
	width: 38px;
	height: 38px;
	transition: transform 0.1s ease-in;
	}

	.angle-up-btn a:hover {
	background: #57a99a;
	color: #ffffff;
	}
	
/*--Links -----------------------------------------------*/

	footer .linkline {
	margin-top: 40px;
	}
	.footer-link a {
	border: 1px solid #ecf4f3;
	border-radius: 5px;
	margin-left: 5px;
	}
	
	.footer-link a:hover {
	color: #555151!important;
	background: #ecf4f3;
	}
	
	.copyright-text p,
	.footer-link a {
	color: #858585;
	font-size: 12px;
	font-weight: 500;
	display: inline-block;
	padding: 0 10px;
	margin-top: 8px;
	}



/*--RESPONSIVE STYLES-------------------------------------*/


/*--large (lg)--------------------------------------------*/
	@media only screen and (max-width: 1200px) {
		
	header {
	height: inherit;
	}
	header span.date-icon {
	border: 0;
	padding-right: 0;
	padding-left: 0;
	}
	header span.email-icon {
	padding-top: 0;
	}
	.navbar-default .navbar-nav li a {
	padding-right: 15px;
	padding-left: 15px;
	}
	}
	
/*--medium (md)-------------------------------------------*/
	@media only screen and (max-width: 992px) {
	.slider .item {
	background-position: center;
	}
	h1 {
	font-size: 2.4em;
	}
	h3 {
	font-size: 1.5em;
	}
	header {
	padding-bottom: 3px;
	padding-top: 5px;
	}
	header .text-align-right {
	padding-left: 80px;
	text-align: left;
	}
	header span {
	padding-top: 0;
	padding-left: 0;
	padding-bottom: 0;
	}
	
	}

/*--small (sm)-------------------------------------------*/
	@media only screen and (max-width: 767px) {
		
	h1 {
	font-size: 1.8em;
	}
	h2 {
	font-size: 1.6em;
	}
	header p, header span {
	text-align: center;
	padding: 2px;
	margin: 0px;
	}
	.navbar-default .navbar-collapse, .navbar-default .navbar-form {
	border-color: transparent;
	}
	.navbar-default {
	padding-left: 30px!important;
	}
	.navbar-header a {
	font-size: 22px;
	padding-right: 20px;
	}
	.navbar-default .navbar-nav li a {
	display: inline-block;
	padding-top: 8px;
	padding-bottom: 8px;
	}
	.slider .caption {
	padding-top: 80px;
	}
	.section-btn {
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 1px;
	padding: 4px 8px;
	}
	footer {
	padding: 20px;
	}
	footer .opening-hours {
	padding-bottom: 30px;
	}
	.copyright-text {
	margin-top: 10px;
	text-align: center;
	}
	.footer-link {
/* 	margin-bottom: 15px; */
	text-align: center;
	}
	.contact-info .fa {
	font-size: 12px;
	width: 28px;
	height: 28px;
	margin-right: 5px;
	margin-bottom: 0px;
	}
	#anfahrt {
	padding-top: 50px!important;
	}
	}
	
/*--extra small (xs)--------------------------------------*/
	@media only screen and (max-width: 639px) {
		
	h1 {
	font-size: 1.4em;
	line-height: 1.6em;
	}
	h2 {
	font-size: 1.5em;
	}
	h4 {
	font-size: 1.0em;
	}
	header p, header span {
	font-size: 12px;
	font-weight: 600;
	line-height: auto;
	}
	.navbar-header a {
	font-size: 18px;
	padding-right: 20px;
	height: auto;
	}
	.slider p {
	width: 90%;
	margin-left: 5%;
	}
	.slider .caption {
	padding-top: 40px;
	}
	#anfahrt {
	padding-top: 50px!important;
	}
/* 	#impressum p, #datenschutz p, #disclaimer p {
	text-align: justify;
	} */
	}

