@font-face {
  font-display: swap;
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/pt-sans-v17-latin-regular.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/pt-sans-v17-latin-italic.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/pt-sans-v17-latin-700.woff2') format('woff2');
}

@font-face {
  font-display: swap;
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/pt-sans-v17-latin-700italic.woff2') format('woff2');
}

/* Main */

body, p {
	font-family: 'PT Sans', sans-serif !important;
}

p:last-child {
	margin-bottom: 30px !important;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'PT Sans', sans-serif !important;
	font-style: italic;
	margin-bottom: 30px !important;
	font-weight: 700;
}

.sppb-addon-header.h1, .sppb-addon-header.h2, .sppb-addon-header.h3, .sppb-addon-header.h4 {
	margin-bottom: 0 !important;
}

.bg-blue {
	background: #94C3DB;
}

.bg-green {
	background: #B5CB8B;
}

.bg-green a {
	color: #333;
}

.bg-green a:hover {
	text-decoration: underline;
}

.sp-page-builder .page-content .sppb-section {
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

.sp-page-builder .page-content .sppb-section .sppb-section {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

@media (max-width: 991.99px) {
	.sp-page-builder .page-content .sppb-section {
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	}
}

h1, .h1 {
	color: #B5CB8B;
}

h2, .h2 {
	color: #94C3DB;
}

.bg-green h1, .bg-green .h1, .bg-blue h1, .bg-blue .h1 {
	color: #333;
}

.bg-green h2, .bg-green .h2, .bg-blue h2, .bg-blue .h2 {
	color: #333;
}

/* Navigation */

.sp-megamenu-parent > li > a {
	padding: 0 25px;
}

body .sp-megamenu-parent > li > a {
	font-family: 'PT Sans', sans-serif !important;
	color: #6F7E54;
}

.sp-megamenu-parent > li:after {
	bottom: 0 !important;
	border-radius: 0px !important;
	background-color: transparent;
}

body .sp-megamenu-parent > li:hover > a {
	background: #94C3DB;
	color: #333;
}

.sp-menu-item.active {
  background: #B5CB8B;
}

body .sp-megamenu-parent > li.active > a {
	color: #333 !important;
}

.sp-megamenu-parent > li.active > a {
	font-weight: 400;
}

.impressum #sp-menu .sp-menu-item, .datenschutz #sp-menu .sp-menu-item {
	display: none;
}

.impressum #sp-menu .sp-menu-item:first-child , .datenschutz #sp-menu .sp-menu-item:first-child {
	display: block;
}

.impressum .offcanvas-menu .menu > li, .datenschutz .offcanvas-menu .menu > li {
	display: none !important;
}

.impressum .offcanvas-menu .menu > li:first-child , .datenschutz .offcanvas-menu .menu > li:first-child {
	display: block !important;
}

.impressum h2, .datenschutz h2 {
	font-size: 32px;
}

.impressum h3, .datenschutz h3 {
	font-size: 28px;
}

.impressum h4, .datenschutz h4 {
	font-size: 24px;
}

/* Button */

@media (max-width: 991px) {
	.pricelist-price-content {
		min-width: 25%;
		text-align: right;
	}
}

/* Button */

body .sppb-btn, body .btn {
  text-transform: none;
}

/* Tätigkeitsschwerpunkte */

.sppb-addon-overlay-image {
	margin-bottom: 30px !important;
}

@media(max-width: 767px) {
	.sppb-addon-overlay-image {
		margin-bottom: 0px !important;
	}
	
	.teaser .sppb-addon-overlay-image {
		margin-bottom: 30px !important;
	}
}

.overlay-image-title h4 {
	margin-bottom: 0 !important;
	font-weight: 400;
}

.overlay-image-title .sppb-addon-title a {
	margin-bottom: 0 !important;
	font-weight: 400;
	font-size: 22px;
	font-style: italic;
	color: #fff;
}

/* Kontaktformular */

.sppb-addon.sppb-addon-form-builder label {
	font-weight: 400;
	font-size: 17px;
	letter-spacing: 0;
	text-transform: none;
}

.form-builder-checkbox-item label::before, 
.form-builder-radio-item label::before, 
.sppb-addon-form-builder .sppb-form-check-label::before {
	border-color: #333;
}

.form-builder-checkbox-item input:checked + label::before, 
.form-builder-radio-item input:checked + label::before, 
.sppb-addon-form-builder .sppb-form-check-input:checked + label::before {
	background: #333;
}

/* Karte */

.map, #map {
	height: 550px;
}

.leaflet-popup-content-wrapper, .leaflet-popup-tip {
    background: #333 !important;
    -webkit-box-shadow: 0 3px 14px rgba(0,0,0,0.4) !important;
    -moz-box-shadow: 0 3px 14px rgba(0,0,0,0.4) !important;
    box-shadow: 0 3px 14px rgba(0,0,0,0.4) !important;
}

.leaflet-popup-content-wrapper {
	-webkit-border-radius: 3px !important;
	-moz-border-radius: 3px !important;
	border-radius: 3px !important;
}

.leaflet-popup-content {
	color: #fff !important;
	font-family: 'Lato',sans-serif !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	text-align: center !important;
}

/* Über mich */

.ueber-mich h1, .ueber-mich h2, .ueber-mich h3 {
	margin-bottom: 20px !important;
}

/* Footer */

#sp-footer {
  background: #333;
  color: #fff;
}

#sp-footer a {
  color: #fff;
}

#sp-footer a:hover, #sp-footer a:active, #sp-footer a:focus {
  color: #fff;
  text-decoration: underline;
}
