/*
Theme Name: DSBO
Theme URI: https://www.okdesigns.de
Author: okdesigns
Author URI: https://www.okdesigns.de
Description: Template für DSBO
Version: 1.1.11
Text Domain: dsbo
*/

/* livvic-300 - latin */
@font-face {
  font-family: 'Livvic';
  font-style: normal;
  font-weight: 300;
  src: url('assets/fonts/livvic-v13-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('assets/fonts/livvic-v13-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('assets/fonts/livvic-v13-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('assets/fonts/livvic-v13-latin-300.woff') format('woff'), /* Modern Browsers */
       url('assets/fonts/livvic-v13-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('assets/fonts/livvic-v13-latin-300.svg#Livvic') format('svg'); /* Legacy iOS */
}
/* livvic-regular - latin */
@font-face {
  font-family: 'Livvic';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/livvic-v13-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('assets/fonts/livvic-v13-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('assets/fonts/livvic-v13-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('assets/fonts/livvic-v13-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('assets/fonts/livvic-v13-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('assets/fonts/livvic-v13-latin-regular.svg#Livvic') format('svg'); /* Legacy iOS */
}
/* livvic-500 - latin */
@font-face {
  font-family: 'Livvic';
  font-style: normal;
  font-weight: 500;
  src: url('assets/fonts/livvic-v13-latin-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('assets/fonts/livvic-v13-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('assets/fonts/livvic-v13-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('assets/fonts/livvic-v13-latin-500.woff') format('woff'), /* Modern Browsers */
       url('assets/fonts/livvic-v13-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('assets/fonts/livvic-v13-latin-500.svg#Livvic') format('svg'); /* Legacy iOS */
}
/* livvic-600 - latin */
@font-face {
  font-family: 'Livvic';
  font-style: normal;
  font-weight: 600;
  src: url('assets/fonts/livvic-v13-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('assets/fonts/livvic-v13-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('assets/fonts/livvic-v13-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('assets/fonts/livvic-v13-latin-600.woff') format('woff'), /* Modern Browsers */
       url('assets/fonts/livvic-v13-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('assets/fonts/livvic-v13-latin-600.svg#Livvic') format('svg'); /* Legacy iOS */
}
/* livvic-700 - latin */
@font-face {
  font-family: 'Livvic';
  font-style: normal;
  font-weight: 700;
  src: url('assets/fonts/livvic-v13-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('assets/fonts/livvic-v13-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('assets/fonts/livvic-v13-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('assets/fonts/livvic-v13-latin-700.woff') format('woff'), /* Modern Browsers */
       url('assets/fonts/livvic-v13-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('assets/fonts/livvic-v13-latin-700.svg#Livvic') format('svg'); /* Legacy iOS */
}

html { overflow-y:scroll; }
body {
	font-family:'Livvic', sans-serif;
	background:#fff;
	-webkit-font-smoothing:antialiased;
}

* {
	margin:0;
	padding:0;
	border:0;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
*:focus { outline:none; }

.outerWrap {
	width:100%;
	text-align:center;
	margin:0 auto;
	background:#fff;
}
.innerWrap {
    width:100%;
    max-width:1670px;
    padding:0 35px;
    margin:0 auto;
}

.clearfix:after {
    visibility:hidden;
    display:block;
    content:"";
    clear:both;
    height:0;
}
* html .clearfix { zoom:1; }
*:first-child+html .clearfix { zoom:1; }


/* HEADER */
header#main-header {
    width:100%;
    position:fixed;
    top:0;
    left:0;
    padding:16px 0;
    z-index:9999 !important;
    background:#fff;
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.25);
}

body.admin-bar header#main-header {
    top:32px;
}

@media (max-width:782px) {
    
    body.admin-bar header#main-header {
        top:46px;
    }
    
}

header#main-header,
header#main-header a.logo {
    -webkit-transition:all 0.1s ease-out;
    -moz-transition:all 0.1s ease-out;
    -o-transition:all 0.1s ease-out;
    transition:all 0.1s ease-out;
}

header#main-header .innerWrap {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
}
header#main-header a.logo {
    display:block;
    width:154px;
    height:58px;
    position:relative;
    z-index:2;
    background:url("assets/images/dsbo.svg") no-repeat left top;
    background-size:auto 58px;
}

header#main-header nav#main-menu > ul {
    list-style:none;
    float:left;
}
header#main-header nav#main-menu > ul > li {
    float:left;
    position:relative;
}
header#main-header nav#main-menu > ul > li > a {
    display:block;
    padding:0 20px;
    font-size:16px;
    font-weight:500;
    color:#444;
    text-decoration:none;
    line-height:58px;
    -webkit-transition:all 0.2s ease-out;
    -moz-transition:all 0.2s ease-out;
    -o-transition:all 0.2s ease-out;
    transition:all 0.2s ease-out;
}
header#main-header nav#main-menu > ul > li:hover > a,
header#main-header nav#main-menu > ul > li.current-menu-item > a,
header#main-header nav#main-menu > ul > li.current-menu-ancestor > a,
header#main-header nav#main-menu > ul > li > ul > li:hover > a,
header#main-header nav#main-menu > ul > li > ul > li.current-menu-item > a,
header#main-header nav#main-menu > ul > li > ul > li.current-menu-ancestor > a,
header#main-header nav#main-menu > ul > li > ul > li > ul > li:hover > a,
header#main-header nav#main-menu > ul > li > ul > li > ul > li.current-menu-item > a,
header#main-header nav#main-menu > ul > li > ul > li > ul > li.current-menu-ancestor > a {
    color:#e57149;
}

header#main-header nav#main-menu > ul > li.menu-item-has-children > a {
    padding-right:25px;
    position:relative;
}
header#main-header nav#main-menu > ul > li.menu-item-has-children > a:after {
    display:block;
    content:"";
    width:0;
    height:0;
    position:absolute;
    top:50%;
    right:10px;
    margin:-1px 0 0;
    border-top:4px solid #dadada;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
}

header#main-header nav#main-menu > ul > li:hover > ul,
header#main-header nav#main-menu > ul > li > ul > li:hover > ul {
    display:block;
}

header#main-header nav#main-menu > ul > li > ul {
    display:none;
    min-width:100%;
    list-style:none;
    position:absolute;
    top:100%;
    left:0;
    background:#fff;
    -webkit-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.25);
}
header#main-header nav#main-menu > ul > li > ul > li {
    position:relative;
    border-bottom:1px solid #dadada;
}
header#main-header nav#main-menu > ul > li > ul > li > a {
    display:block;
    font-size:16px;
    font-weight:400;
    color:#444;
    text-decoration:none;
    padding:10px 20px;
}

header#main-header nav#main-menu > ul > li > ul > li.menu-item-has-children > a {
    position:relative;
    padding-right:25px;
}
header#main-header nav#main-menu > ul > li > ul > li.menu-item-has-children > a:after {
    display:block;
    content:"";
    width:0;
    height:0;
    position:absolute;
    top:50%;
    right:10px;
    margin:-4px 0 0;
    border-left:4px solid #dadada;
    border-top:4px solid transparent;
    border-bottom:4px solid transparent;
}

header#main-header nav#main-menu > ul > li > ul > li > ul {
    display:none;
    min-width:100%;
    list-style:none;
    position:absolute;
    top:0;
    left:100%;
    background:#fff;
    border-left:1px solid #dadada;
    -webkit-box-shadow: 4px 5px 5px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 4px 5px 5px 0px rgba(0,0,0,0.25);
    box-shadow: 4px 5px 5px 0px rgba(0,0,0,0.25);
}
header#main-header nav#main-menu > ul > li > ul > li > ul > li {
    position:relative;
    border-bottom:1px solid #dadada;
}
header#main-header nav#main-menu > ul > li > ul > li > ul > li > a {
    display:block;
    font-size:16px;
    font-weight:400;
    color:#444;
    text-decoration:none;
    padding:10px 20px;
}

header#main-header #searchform input {
    display:block;
    width:275px;
    height:42px;
    font-size:14px;
    font-weight:400;
    color:#888;
    padding:0 10px 0 40px;
    background:url('assets/images/icon-search@2x.png') no-repeat left 14px center #f8f8f8;
    background-size:12px 12px;
    border:1px solid #dadada;
    border-radius:2px;
}

header#main-header .buttons {
    display:none;
    flex-direction:row;
}
header#main-header button.search {
    display:none;
    width:42px;
    height:42px;
    cursor:pointer;
    background:url('assets/images/icon-search@2x.png') no-repeat center center #f8f8f8;
    background-size:12px 12px;
    border:1px solid #dadada;
    border-radius:2px;
    -webkit-transition:all 0.2s ease-out;
    -moz-transition:all 0.2s ease-out;
    -o-transition:all 0.2s ease-out;
    transition:all 0.2s ease-out;
}
header#main-header button.search:hover {
    background-color:#dadada;
}
header#main-header button.mobile {
    display:none;
    width:42px;
    height:42px;
    margin:0 0 0 5px;
    background:#f8f8f8;
    border:1px solid #dadada;
    border-radius:2px;
}

header#main-header.scroll {
    padding:10px 0;
    background:#fff;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.15);
}
header#main-header.scroll a.logo {
    height:45px;
}
header#main-header.scroll nav#main-menu > ul > li > a {
    line-height:45px;
}


/* PAGE-BODY */
.page-body {
    padding:90px 0 0;
}


/* FOOTER */
body .page-body > footer {
    padding:50px 0 100px;
    background:#f8f8f8;
}
body .page-body > footer .innerWrap {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
}
body .page-body > footer .logo a {
    display:block;
    width:154px;
    height:58px;
    background:url("assets/images/dsbo.svg") no-repeat left center;
    background-size:auto 58px;
}
body .page-body > footer .information {
    display:flex;
    flex-direction:row;
    justify-content:flex-end;
}
body .page-body > footer .information nav {}
body .page-body > footer .information nav > ul {
    display:flex;
    flex-direction:row;
    list-style:none;
}
body .page-body > footer .information nav > ul > li {
    text-align:left;
    margin:0 0 0 85px;
}
body .page-body > footer .information nav > ul > li:first-child {
    margin-left:0;
}
body .page-body > footer .information nav > ul > li > a {
    font-size:18px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-decoration:none;
}
body .page-body > footer .information nav > ul > li > a:hover {
    color:#222;
}
body .page-body > footer .information nav > ul > li > ul {
    list-style:none;
    margin:12px 0 0;
}
body .page-body > footer .information nav > ul > li > ul > li {
    display:block;
    margin:0 0 6px;
}
body .page-body > footer .information nav > ul > li > ul > li > a {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1.2;
    text-decoration:none;
}
body .page-body > footer .information nav > ul > li > ul > li > a:hover {
    color:#444;
}
body .page-body > footer .information .contact {
    display:flex;
    flex-direction:row;
}
body .page-body > footer .information .contact > div {
    text-align:left;
    margin:0 0 0 85px;
}
body .page-body > footer .information .contact h4 {
    font-size:18px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    margin:0 0 12px;
}
body .page-body > footer .information .contact .textwidget {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1.4;
}
body .page-body > footer .information .contact .textwidget p {
    text-align:justify;
    margin-bottom:10px;
}
body .page-body > footer .information .contact .textwidget ul,
body .page-body > footer .information .contact .textwidget ol {
    padding-left:18px;
    margin-bottom:10px;
}
body .page-body > footer .information .contact .textwidget li {
    text-align:left;
    margin-bottom:5px;
}
body .page-body > footer .information .contact .textwidget a:not(.button):not(.no-highlight):not([ng-href]) {
    color:#444;
    text-decoration:none;
    border-bottom:1px dotted #444;
}
body .page-body > footer .information .contact .textwidget table {
    border:0;
    margin:0 0 10px;
}
body .page-body > footer .information .contact .textwidget table tr td:first-child {
    padding:0 20px 2px 0;
}


/* POST FOOTER */
section.post-footer {
    background:#dadada;
}
section.post-footer .innerWrap {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
}
section.post-footer .copyright {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1;
    padding:15px 0;
}
section.post-footer nav > ul {
    list-style:none;
}
section.post-footer nav > ul > li {
    float:left;
    padding:15px 17px;
}
section.post-footer nav > ul > li:last-child {
    padding-right:0;
}
section.post-footer nav > ul > li > a {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1;
    text-decoration:none;
}
section.post-footer nav > ul > li > a:hover {
    color:#444;
}


/* SECTIONS */
section:not(.main-slider):not(.anfahrt):not(.cta):not(.poast-footer) + section:not(.main-slider):not(.anfahrt):not(.cta):not(.poast-footer) {
    padding-top:0;
}


/* MAIN SLIDER */
.main-slider {
    height:450px;
    position:relative;
    overflow:hidden;
    background:#f8f8f8;
}
.main-slider .ms-slide:before {
    display:block;
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    z-index:1;
    background:rgba(229, 113, 73, 0.35);
}
.main-slider .ms-slide.orange:before { background:rgba(243, 146, 0, 0.35); }
.main-slider .ms-slide.gelb:before { background:rgba(254, 208, 19, 0.35); }
.main-slider .ms-slide.pink:before { background:rgba(235, 89, 157, 0.35); }
.main-slider .ms-slide.blau:before { background:rgba(33, 187, 239, 0.35); }
.main-slider .ms-slide.gruen:before { background:rgba(150, 193, 31, 0.35); }
.main-slider .ms-slide.black:before { background:rgba(0, 0, 0, 0.25); }

.main-slider .ms-slide-info {
    width:100%;
    max-width:1600px;
    padding:0 35px;
    left:0;
    right:0;
    text-align:left;
    margin:0 auto;
    z-index:2;
}
.main-slider .ms-info {
    display:inline-block;
    min-width:300px;
    max-width:700px;
    padding:25px;
    background:#fff;
    border-radius:2px;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
}
.main-slider .ms-info h1,
.main-slider .ms-info h2,
.main-slider .ms-info h3,
.main-slider .ms-info h4,
.main-slider .ms-info h5,
.main-slider .ms-info h6 {
    font-size:30px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    margin-top:0;
    margin-bottom: 15px;
}
.main-slider .ms-info p {
    font-size:18px;
    font-weight:400;
    color:#444;
    line-height:1.4;
    margin:0 0 25px;
}
.main-slider .ms-info p b,
.main-slider .ms-info p strong {
    font-weight:600;
}
.main-slider .ms-info *:not(div):last-child {
	margin-bottom:0;
}
.main-slider .ms-info .button {
    -webkit-transition:all 0.2s ease-out;
    -moz-transition:all 0.2s ease-out;
    -o-transition:all 0.2s ease-out;
    transition:all 0.2s ease-out;
}
.main-slider .ms-info a:not(.button) {
    color:#b35939;
    text-decoration:none;
    border-bottom:1px dotted #b35939;
}


/* KACHELN-SORTIMENT */
section.kacheln-sortiment {
    padding:85px 0;
}
section.kacheln-sortiment .intro {
    max-width:1024px;
    margin:0 auto 35px;
}
section.kacheln-sortiment .intro * {
    text-align:center;
}
section.kacheln-sortiment .kacheln {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:stretch;
}
section.kacheln-sortiment .kacheln .sortiment {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:stretch;
    width:calc(100% - 370px - 30px);
}
section.kacheln-sortiment .kacheln .sortiment .kachel {
    width:calc(20% - 5px);
    min-height:300px;
    text-align:left;
    padding:25px;
    position:relative;
    background:#fff;
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center top;
    border:1px solid #dadada;
    border-radius:2px;
}
section.kacheln-sortiment .kacheln .sortiment .kachel:after {
    display:block;
    content:"";
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    z-index:1;
    border-radius:2px;
}
section.kacheln-sortiment .kacheln .sortiment .kachel.blau:after {
    background: rgb(33,187,239);
    background: -moz-linear-gradient(0deg, rgba(33,187,239,0.3) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(33,187,239,0.3) 0%, rgba(255,255,255,1) 100%);
    background: linear-gradient(0deg, rgba(33,187,239,0.3) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#21bbef",endColorstr="#21bbef",GradientType=1);
}
section.kacheln-sortiment .kacheln .sortiment .kachel.orange:after {
    background: rgb(243,146,0);
    background: -moz-linear-gradient(0deg, rgba(243,146,0,0.3) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(243,146,0,0.3) 0%, rgba(255,255,255,1) 100%);
    background: linear-gradient(0deg, rgba(243,146,0,0.3) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f39200",endColorstr="#f39200",GradientType=1);
}
section.kacheln-sortiment .kacheln .sortiment .kachel.pink:after {
    background: rgb(234,81,152);
    background: -moz-linear-gradient(0deg, rgba(234,81,152,0.3) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(234,81,152,0.3) 0%, rgba(255,255,255,1) 100%);
    background: linear-gradient(0deg, rgba(234,81,152,0.3) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ea5198",endColorstr="#ea5198",GradientType=1);
}
section.kacheln-sortiment .kacheln .sortiment .kachel.gelb:after {
    background: rgb(254,204,0);
    background: -moz-linear-gradient(0deg, rgba(254,204,0,0.3) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(254,204,0,0.3) 0%, rgba(255,255,255,1) 100%);
    background: linear-gradient(0deg, rgba(254,204,0,0.3) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fecc00",endColorstr="#fecc00",GradientType=1);
}
section.kacheln-sortiment .kacheln .sortiment .kachel.gruen:after {
    background: rgb(150,193,31);
    background: -moz-linear-gradient(0deg, rgba(150,193,31,0.3) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(0deg, rgba(150,193,31,0.3) 0%, rgba(255,255,255,1) 100%);
    background: linear-gradient(0deg, rgba(150,193,31,0.3) 0%, rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#96c11f",endColorstr="#ffffff",GradientType=1);
}
section.kacheln-sortiment .kacheln .sortiment .kachel > a {
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    z-index:3;
}
section.kacheln-sortiment .kacheln .sortiment .kachel h5 {
    font-size:24px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    position:relative;
    z-index:2;
}
section.kacheln-sortiment .kacheln .werbeplatz {
    width:100%;
    max-width:370px;
    text-align:left;
    padding:25px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.kacheln-sortiment .kacheln .werbeplatz h5 {
    display:block;
    font-size:24px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    margin:0 0 10px;
}
section.kacheln-sortiment .kacheln .werbeplatz h5 a {
    color:#444;
    text-decoration:none;
}
section.kacheln-sortiment .kacheln .werbeplatz .image {
    width:100%;
    height:0;
    padding-bottom:46.15%;
    margin:0 0 25px;
    position:relative;
    background-color:#dadada;
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center top;
    border-radius:2px;
}
section.kacheln-sortiment .kacheln .werbeplatz .image a {
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
}


/* BEITRÄGE */
section.beitraege {
    padding:85px 0;
    overflow:hidden;
}
section.beitraege .intro {
    max-width:1024px;
    margin:0 auto 35px;
}
section.beitraege .intro * {
    text-align:center;
}
section.beitraege .alle-beitraege-wrapper {
    margin:0 -15px;
}
section.beitraege .alle-beitraege {
    display:flex;
    width:100%;
    flex-direction:row;
    justify-content:flex-start;
    align-items:stretch;
    flex-wrap:wrap;
}
section.beitraege .beitrag {
    width:calc(25% - 30px);
    text-align:left;
    padding:25px 25px 105px;
    margin:15px;
    position:relative;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.beitraege .beitrag > span {
    display:block;
    position:absolute;
    top:9px;
    left:9px;
    z-index:1;
    font-size:16px;
    font-weight:500;
    color:#fff;
    line-height:1;
    padding:4px 5px 5px;
    background:#444;
}
section.beitraege .beitrag.gruen > span {
    background:#96c11f;
}
section.beitraege .beitrag.blau > span {
    background:#21bbef;
}
section.beitraege .beitrag.pink > span {
    background:#eb599d;
}
section.beitraege .beitrag.orange > span {
    background:#f39200;
}
section.beitraege .beitrag.gelb > span {
    background:#fed013;
}
section.beitraege .beitrag .image {
    width:100%;
    height:0;
    padding-bottom:48.86%;
    position:relative;
    margin:0 0 20px;
    background-color:#dadada;
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center top;
}
section.beitraege .beitrag .image a {
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
}
section.beitraege .beitrag h5 {
    font-size:24px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    margin:0 0 20px;
}
section.beitraege .beitrag h5 a {
    color:#444;
    text-decoration:none;
}
section.beitraege .beitrag .text p {
    text-align:left;
}
section.beitraege .beitrag > a.button {
    position:absolute;
    bottom:25px;
    left:25px;
}


/* BEITRAG */
section.beitrag {
    padding:100px 0;
}
section.beitrag .innerWrap {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
}
section.beitrag .post-image {
    flex-grow:0;
    flex-shrink:0;
    width:100%;
    max-width:400px;
    margin:0 50px 0 0;
    padding:25px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.beitrag .post-image img {
    display:block;
    width:100%;
    height:auto;
    border-radius:2px;
}
section.beitrag.no-image .text {
    width:100%;
}
section.beitrag .text .category {
    text-align:left;
    margin:0 0 -20px;
}
section.beitrag .text .category + * {
    margin-top:40px;
}
section.beitrag .text .category span {
    display:inline-block;
    font-size:16px;
    font-weight:500;
    color:#fff;
    line-height:1;
    padding:4px 5px 5px;
    background:#444;
}
section.beitrag .text .category span.gruen {
    background:#96c11f;
}
section.beitrag .text .category span.blau {
    background:#21bbef;
}
section.beitrag .text .category span.pink {
    background:#eb599d;
}
section.beitrag .text .category span.orange {
    background:#f39200;
}
section.beitrag .text .category span.gelb {
    background:#fed013;
}


/* ANFAHRT */
section.anfahrt {
    padding:75px 0;
    background:url('assets/images/anfahrt.svg') no-repeat left 155px top 0 #f8f8f8;
    background-size:auto 120%;
}
section.anfahrt .innerWrap {
    display:flex;
    flex-direction:row;
    justify-content:flex-end;
}
section.anfahrt .innerWrap > div:first-child {
    width:100%;
    max-width:280px;
    text-align:left;
    margin:0 120px 0 0;
}
section.anfahrt .innerWrap > div:last-child {
    width:100%;
    max-width:400px;
    text-align:left;
}

section.anfahrt .innerWrap > div h4 {
    font-size:32px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 15px;
}
section.anfahrt .innerWrap > div p,
section.anfahrt .innerWrap > div table td {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1.6;
}

section.anfahrt .innerWrap > div table {
    border:0;
    margin:0 0 20px;
}
section.anfahrt .innerWrap > div table tr td:first-child {
    padding:0 90px 2px 0;
}

section.anfahrt .innerWrap > div a.button {
    margin:25px 0 0;
}


/* KACHELN */
section.kacheln {
    padding:85px 0;
    overflow:hidden;
}
section.kacheln .alle-kacheln-wrapper {
    margin:0 -15px;
}
section.kacheln .alle-kacheln {
    display:flex;
    width:100%;
    flex-direction:row;
    justify-content:flex-start;
    align-items:stretch;
    flex-wrap:wrap;
}
section.kacheln .kachel {
    width:calc(25% - 30px);
    text-align:left;
    padding:25px;
    margin:15px;
    position:relative;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.kacheln .kachel .image {
    width:100%;
    height:0;
    padding-bottom:48.86%;
    position:relative;
    margin:0 0 20px;
    background-color:#dadada;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center top;
}
section.kacheln .kachel .image a {
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
}
section.kacheln .kachel h5 {
    font-size:24px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    margin:0 0 10px;
}
section.kacheln .kachel h5 a {
    color:#444;
    text-decoration:none;
}
section.kacheln .kachel p {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1.4;
    margin:0 0 25px;
}

section.kacheln .kachel.kachel-typ-2 .image {
    padding-bottom:75.24%;
}

section.kacheln .kachel.kachel-typ-3 {
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}
section.kacheln .kachel.kachel-typ-3 ul {
    list-style:none;
}
section.kacheln .kachel.kachel-typ-3 ul li {
    margin:0 0 10px;
}
section.kacheln .kachel.kachel-typ-3 ul li:last-child {
    margin-bottom:0;
}
section.kacheln .kachel.kachel-typ-3 ul a {
    display:block;
    font-size:16px;
    font-weight:400;
    color:#444;
    line-height:1.2;
    text-decoration:none;
    padding:10px 50px 11px 15px;
    position:relative;
    background:#f8f8f8;
    border:1px solid #dadada;
    border-radius:2px;
    -webkit-transition:all 0.2s ease-out;
    -moz-transition:all 0.2s ease-out;
    -o-transition:all 0.2s ease-out;
    transition:all 0.2s ease-out;
}
section.kacheln .kachel.kachel-typ-3 ul a:after {
    display:block;
    content:"";
    width:14px;
    height:10px;
    position:absolute;
    top:50%;
    right:16px;
    margin-top:-5px;
    background:url('assets/images/arrow-right@2x.png') no-repeat center center;
    background-size:14px 10px;
}
section.kacheln .kachel.kachel-typ-3 ul a:hover {
    background:#dadada;
}

section.kacheln .kachel.kachel-typ-1,
section.kacheln .kachel.kachel-typ-2 {
    padding:25px 25px 70px;
}
section.kacheln .kachel.kachel-typ-1 > a,
section.kacheln .kachel.kachel-typ-2 > a {
    position:absolute;
    bottom:25px;
    left:25px;
}


/* KACHELN - WEITERE INHALTE */
section.kacheln-weitere-inhalte {
    padding:85px 0;
}
section.kacheln-weitere-inhalte .innerWrap {
    display:flex;
    flex-direction:row-reverse;
    justify-content:space-between;
    align-items:flex-start;
}
section.kacheln-weitere-inhalte nav.toc {
    width:250px;
    padding:25px 0 0;
    margin:0 0 30px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.kacheln-weitere-inhalte nav.toc > h4 {
    font-size:18px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    padding:0 25px;
    margin:0 0 15px;
}
section.kacheln-weitere-inhalte nav.toc ul {
    list-style:none;
    padding:0;
    margin:0;
}
section.kacheln-weitere-inhalte nav.toc li {
    text-align:left;
    position:relative;
    border-bottom:1px solid #dadada;
}
section.kacheln-weitere-inhalte nav.toc li:last-child {
    border-bottom:0;
}
section.kacheln-weitere-inhalte nav.toc a {
    display:block;
    padding:10px 25px;
    font-size:16px;
    font-weight:400;
    color:#444;
    text-decoration:none;
}
section.kacheln-weitere-inhalte nav.toc a:hover {
    color:#e57149;
}
section.kacheln-weitere-inhalte .alle-kacheln {
    width:calc(100% - 250px);
    padding:0 0 0 30px;
}
section.kacheln-weitere-inhalte .kachel {
    text-align:left;
    padding:25px;
    margin:0 0 30px;
    position:relative;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.kacheln-weitere-inhalte .kachel:last-child {
    margin-bottom:0;
}
section.kacheln-weitere-inhalte .kachel .image-wrap {
    width:100%;
    max-width:339px;
    float:left;
    padding:15px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.kacheln-weitere-inhalte .kachel .image {
    width:100%;
    position:relative;
}
section.kacheln-weitere-inhalte .kachel .image img {
    display:block;
    width:100%;
    height:auto;
}
section.kacheln-weitere-inhalte .kachel .image a {
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
}
section.kacheln-weitere-inhalte .kachel .text {
    overflow:hidden;
    padding:0 0 0 30px;
}
section.kacheln-weitere-inhalte .kachel.has-no-image {
    padding-left:0;
}

section.kacheln-weitere-inhalte.wo-toc .alle-kacheln {
    width:100%;
    padding:0;
}

section.kacheln-weitere-inhalte .keine-kacheln {
    flex-shrink:0;
    flex-grow:0;
    flex-basis:100%;
    padding:0 35px;
}


/* CTA */
section.cta {
    background:#e57149;
}
section.cta .innerWrap {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:stretch;
}
section.cta .kontakt {
    width:50%;
    text-align:left;
    padding:35px 75px 35px 0;
    border-right:2px solid #d96b45;
}
section.cta .kontakt a {
    margin-right:15px;
}
section.cta .newsletter {
    width:50%;
    text-align:left;
    padding:35px 0 35px 75px;
}

section.cta .newsletter .newsletter-columns {
    display:flex;
    flex-direction:row;
}
section.cta .newsletter .newsletter-column {
    padding-right:15px;
}
section.cta .newsletter label.form-checkbox {
    display:block;
    max-width:312px;
    margin:15px 0 0;
    cursor:pointer;
    line-height:1;
}
section.cta .newsletter label.error {
    display:block;
    font-size:14px;
    font-weight:400;
    color:#444;
    line-height:1.2;
    text-align:left;
    position:relative;
    margin:5px 0 0;
}
section.cta .newsletter .response p {
    display:block;
    font-size:14px;
    font-weight:400;
    color:#444;
    line-height:1.2;
    text-align:left;
    position:relative;
    margin:5px 0 0;
}

section.cta h4 {
    font-size:32px;
    font-weight:500;
    color:#fff;
    line-height:1.2;
    margin:0 0 8px;
}
section.cta p {
    font-size:18px;
    font-weight:400;
    color:#fff;
    line-height:1.2;
    margin:0 0 35px;
}


/* TEXT-BLOCK */
section.text-block {
    padding:85px 0;
}


/* INSTAGRAM-FEED */
section.instagram-feed {
    padding:35px 0;
}

section.instagram-feed .header {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    margin:0 0 25px;
}
section.instagram-feed .header h2 {
    font-size:32px;
    font-weight:500;
    color:#444;
    line-height:1;
}
section.instagram-feed .header .links ul {
    list-style:none;
}
section.instagram-feed .header .links li {
    display:inline-block;
    vertical-align:top;
    margin:0 50px 0 0;
}
section.instagram-feed .header .links li:last-child {
    margin-right:0;
}
section.instagram-feed .header .links a {
    font-size:16px;
    font-weight:500;
    color:#777;
    line-height:1;
    text-decoration:none;
    -webkit-transition:all 0.2s ease-out;
    -moz-transition:all 0.2s ease-out;
    -o-transition:all 0.2s ease-out;
    transition:all 0.2s ease-out;
}
section.instagram-feed .header .links a:hover {
    color:#444;
}
section.instagram-feed .header .links li.instagram a:before {
    display:inline-block;
    content:"";
    width:19px;
    height:19px;
    vertical-align:top;
    margin:1px 15px 0 0;
    background:url('assets/images/social@2x.png') no-repeat;
    background-size:19px auto;
    background-position:0 -19px;
}
section.instagram-feed .header .links li.facebook a:before {
    display:inline-block;
    content:"";
    width:19px;
    height:19px;
    vertical-align:top;
    margin:1px 15px 0 0;
    background:url('assets/images/social@2x.png') no-repeat;
    background-size:19px auto;
    background-position:0 0;
}

section.instagram-feed .zoom-instagram-widget__items {
    display:flex;
    flex-direction:row;
    padding:0 0 0 10px;
}
section.instagram-feed .zoom-instagram-widget__item {
    width:calc(12.5% - 10px);
    background:url('assets/images/placeholder-instagram.jpg') no-repeat center center #dadada;
    background-size:cover;
}
section.instagram-feed .zoom-instagram-widget__items .zoom-instagram-widget__item .zoom-instagram-link {
    width:100% !important;
    height:0 !important;
    padding-bottom:100%;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
}

section.instagram-feed .images {
    display:flex;
    flex-direction:row;
    padding:0 0 0 10px;
}
section.instagram-feed .images a {
    width:calc(12.5% - 10px);
    margin:0 10px 0 0;
}
section.instagram-feed .images a img {
    display:block;
    width:100%;
    height:auto;
}


/* SUCHERGEBNISSE */
section.suchergebnisse {
    padding:100px 0;
}
section.suchergebnisse .intro {
    max-width:1024px;
    margin:0 auto 75px;
}
section.suchergebnisse .intro * {
    text-align:center;
}
section.suchergebnisse .intro h1 span.search {
    display:block;
    color:#e57149;
}
section.suchergebnisse .ergebnis {
    padding:25px;
    margin:0 0 10px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.suchergebnisse .ergebnis h5 {
    font-size:24px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 10px;
}
section.suchergebnisse .ergebnis h5 a {
    color:#444;
    text-decoration:none;
    border:0;
}
section.suchergebnisse .ergebnis p {
    margin:0;
}
section.suchergebnisse .ergebnis p a.button {
    margin:25px 0 0;
}


/* UNTERSEITEN */
section.unterseiten {
    padding:85px 0;
}
section.unterseiten .innerWrap {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:stretch;
}
section.unterseiten article.unterseite {
    width:calc(50% - 10px);
    padding:25px;
    margin:0 0 20px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
section.unterseiten article.unterseite > .image-wrap {
    width:318px;
    float:left;
}
section.unterseiten article.unterseite > .image-wrap .image {
    width:100%;
    height:0;
    padding-bottom:48.86%;
    position:relative;
    background-color:#dadada;
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center top;
}
section.unterseiten article.unterseite > .image-wrap .image a {
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
}
section.unterseiten article.unterseite > .text {
    overflow:hidden;
    padding:0 0 0 25px;
}


/* GALERIE */
section.galerie {
    padding:85px 0;
}
section.galerie .innerWrap {
    overflow:hidden;
}
section.galerie .galerie-wrap {
    margin:0 -5px;
}
section.galerie:not(.carousel) .images {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:flex-start;
    list-style:none;
    padding:0;
    margin:0;
}
section.galerie:not(.carousel) .image-wrap {
    width:16.66%;
    padding:0 5px;
}
section.galerie:not(.carousel) .image {
    padding:10px;
    margin:0 0 10px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}

section.galerie .image a {
    display:block;
    width:100%;
    padding-bottom:85%;
    background-position:center top;
    background-repeat:no-repeat;
    background-size:cover;
    border:0 !important;
}

section.galerie.carousel .image-wrap {
    padding:0 5px;
}
section.galerie.carousel .image {
    display:block;
    padding:10px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}

section.galerie.carousel .controls {
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    padding:0 5px;
    margin:10px 0 0;
}
section.galerie.carousel .controls a {
    display:block;
    width:32px;
    height:32px;
    border:1px solid #dadada;
    background:url('assets/images/arrow-right@2x.png') no-repeat center center;
    background-size:14px 10px;
    -webkit-transition:all 0.2s ease-out;
    -moz-transition:all 0.2s ease-out;
    -o-transition:all 0.2s ease-out;
    transition:all 0.2s ease-out;
}
section.galerie.carousel .controls a.prev {
    transform:rotate(180deg);
}
section.galerie.carousel .controls a:hover {
    background-color:#f8f8f8;
}



/* BREADCRUMBS */
section.breadcrumbs {
    padding:100px 0 50px;
}


/* GALERIE */
.galerie:not(section) {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:flex-start;
}
.galerie:not(section) .image {
    display:block;
    width:calc(20% - 10px);
    padding:10px;
    margin:0 10px 10px 0;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
.galerie:not(section) .image a {
    display:block;
    width:100%;
    padding-bottom:85%;
    background-position:center top;
    background-repeat:no-repeat;
    background-size:cover;
    border:0 !important;
}

body.single .galerie:not(section) .image {
    width:calc(20% - 10px);
}


/* PAGINATION */
.pagination {
    text-align:center;
    margin-top:50px;
}
.pagination .page-numbers {
    display:inline-block;
    font-size:14px;
    font-weight:400;
    color:#777;
    line-height:20px;
    text-decoration:none;
    padding:8px 15px;
    margin-right:4px;
    background:#fff;
    border:1px solid #dadada;
    border-radius:2px;
}
.pagination .page-numbers.current,
.pagination .page-numbers:not(.dots):hover {
    color:#fff;
    background:#e57149;
    border-color:#e57149;
}
.pagination .page-numbers.dots {
    background:transparent;
    border:0;
}
.pagination .page-numbers.next {
    margin-right:0;
}


/* CATEGORY ARCHIVE */
body.category section.beitraege .intro p {
    text-align:justify;
}


/* CD */

/* - TEXT */
.text {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1.4;
}
.text p {
    text-align:justify;
    margin-bottom:25px;
}
.text ul,
.text ol {
    padding-left:18px;
    margin-bottom:25px;
}
.text li {
    text-align:left;
    margin-bottom:5px;
}

.text a:not(.button):not(.no-highlight):not([ng-href]) {
    color:#b35939;
    text-decoration:none;
    border-bottom:1px dotted #b35939;
}

.text h1 {
    font-size:32px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.text h2 {
    font-size:25px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.text h3 {
    font-size:22px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.text h4 {
    font-size:19px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.text h5 {
    font-size:18px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.text h6 {
    font-size:16px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.text p + h2, .text p + h3, .text p + h4, .text p + h5, .text p + h6,
.text ul + h2, .text ul + h3, .text ul + h4, .text ul + h5, .text ul + h6,
.text ol + h2, .text ol + h3, .text ol + h4, .text ol + h5, .text ol + h6,
.text div + h2, .text div + h3, .text div + h4, .text div + h5, .text div + h6,
.text script + h2, .text script + h3, .text script + h4, .text script + h5, .text script + h6 {
    margin-top:45px;
}

.text b,
.text strong {
	font-weight:700;
}

.text img {
	max-width:100%;
	height:auto;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	border-radius:2px;
}

.text *:not(div):last-child {
	margin-bottom:0;
}

.text .content-column {
    margin-bottom:25px;
}
.text .content-column {
    padding-right:35px;
}
.text .content-column.last_column:not(.one_third) {
    padding-right:0;
}

.text hr {
    margin-bottom:25px;
    border-top:1px dashed #dadada;
}


/* - BUTTONS */
.button {
    display:inline-block;
    font-family:'Livvic', sans-serif;
    cursor:pointer;
    text-align:center;
    text-decoration:none;
    vertical-align:top;
    white-space:normal;
    font-size:16px;
    font-weight:500;
    color:#fff;
    line-height:1.2;
    padding:13px 25px 13px;
    background:#e57149;
    -webkit-border-radius:2px;
    -moz-border-radius:2px;
    border-radius:2px;
    -webkit-appearance:none;
    -webkit-transition:all 0.2s ease-out;
    -moz-transition:all 0.2s ease-out;
    -o-transition:all 0.2s ease-out;
    transition:all 0.2s ease-out;
}
.button:hover {
    background:#c96440;
}

.button.button-grey {
    background:#444;
}
.button.button-grey:hover,
.button.button-grey.active {
    background:#222;
}

.button.button-orange {
    background:#f39200;
}
.button.button-orange:hover,
.button.button-orange.active {
    background:#c77800;
}

.button.button-gruen {
    background:#96c11f;
}
.button.button-gruen:hover,
.button.button-gruen.active {
    background:#7fa31a;
}

.button.button-blau {
    background:#21bbef;
}
.button.button-blau:hover,
.button.button-blau.active {
    background:#1ca5d4;
}

.button.button-pink {
    background:#eb599d;
}
.button.button-pink:hover,
.button.button-pink.active {
    background:#cf4c89;
}

.button.button-orange {
    background:#f39200;
}
.button.button-orange:hover,
.button.button-orange.active {
    background:#d68100;
}

.button.button-gelb {
    background:#fed013;
}
.button.button-gelb:hover,
.button.button-gelb.active {
    background:#e3ba12;
}

.button.icon-phone {
    padding-left:15px;
}
.button.icon-phone:before {
    display:inline-block;
    content:"";
    vertical-align:top;
    width:16px;
    height:16px;
    margin:2px 15px 0 0;
    background:url('assets/images/button-phone@2x.png') no-repeat center center;
    background-size:16px 16px;
}


/* - FORM */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="password"] {
    width:100%;
    max-width:312px;
    height:45px;
    line-height:45px;
    font-family:'Livvic', sans-serif;
    font-size:14px;
    font-weight:400;
    color:#444;
    padding:0 15px;
    background:#fff;
    border-radius:2px;
}
textarea {
    width:100%;
    min-width:100%;
    max-width:100%;
    height:200px;
    min-height:200px;
    max-height:400px;
    font-family:'Livvic', sans-serif;
    font-size:14px;
    font-weight:400;
    color:#444;
    padding:15px;
    background:#fff;
    border-radius:2px;
}

.form-checkbox {
    display:block;
}
.form-checkbox input[type="checkbox"] {
    display:none;
}
.form-checkbox input[type="checkbox"] + span {
    display:block;
    vertical-align:top;
    font-size:14px;
    font-weight:400;
    color:#fff;
    line-height:1.2;
    text-align:left;
    position:relative;
    padding:0 0 0 25px;
}
.form-checkbox input[type="checkbox"] + span a {
    color:#444;
    text-decoration:none;
    border-bottom:1px dotted #444;
}
.form-checkbox input[type="checkbox"] + span a:hover {
    color:#b35939;
    border-bottom:1px dotted #b35939;
}
.form-checkbox input[type="checkbox"] + span:before {
    display:block;
    content:"";
    width:14px;
    height:14px;
    position:absolute;
    top:1px;
    left:0;
    background:url(assets/images/checkbox@2x.png) no-repeat #fff;
    background-size:14px 14px;
    background-position:0 -14px;
    border-radius:2px;
}
.form-checkbox input[type="checkbox"]:checked + span:before {
    background-color:#b35939;
    background-position:0 0;
}


/* - WP */
.wp-caption {
	max-width:100%;
	padding:25px;
    border:1px solid #dadada;
    -webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
}
.wp-caption img {
    display:block;
	max-width:100%;
	height:auto;
    margin-bottom:20px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
}
.wp-caption p.wp-caption-text {
	font-size:14px;
	font-style:italic;
	color:#444;
	margin-bottom:0;
}

.wp-caption + h1, .wp-caption + h2, .wp-caption + h3, .wp-caption + h4, .wp-caption + h5, .wp-caption + h6 {
	margin-top:25px;
}
h1 + .wp-caption, h2 + .wp-caption, h3 + .wp-caption, h4 + .wp-caption, h5 + .wp-caption, h6 + .wp-caption {
	padding-top:0;
}

.alignright {
    float:right;
    margin-left:35px;
    margin-bottom:35px;
}
.alignleft {
    float:left;
    margin-right:35px;
    margin-bottom:35px;
}
.aligncenter {
    display: block;
    float:none;
    margin-left:auto;
    margin-right:auto;
}

.wp-video {
    max-width:100% !important;
    margin:0 0 25px;
    padding:15px;
    border:1px solid #dadada;
    border-radius:2px;
}
.wp-video .mejs-container {
    max-width:100% !important;
}
.wp-video,
video.wp-video-shortcode,
.mejs-container,
.mejs-overlay.load {
	width:100% !important;
	height:100% !important;
}
.mejs-container {
	padding-top:56.25%;
}
.wp-video,
video.wp-video-shortcode {
	max-width:100% !important;
}
video.wp-video-shortcode {
	position:relative;
}
.mejs-mediaelement {
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
}
.mejs-controls {
	display:none;
}
.mejs-overlay-play {
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:auto !important;
	height:auto !important;
}

/* EXT: HAMBURGER */
.hamburger {
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
    background-color:#444;
}

.hamburger-box {
    width: 20px;
    height: 24px;
    display: inline-block;
    position: relative;
    vertical-align:top;
    margin:2px 0 0;
}

.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
    width: 20px;
    height: 2px;
    background-color: #444;
    border-radius: 3px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
}
.hamburger-inner::before,
.hamburger-inner::after {
    content: "";
    display: block;
}
.hamburger-inner::before {
    top: -5px;
}
.hamburger-inner::after {
    bottom: -5px;
}

.hamburger--squeeze .hamburger-inner {
    transition-duration: 0.075s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
    transform: rotate(45deg);
    transition-delay: 0.12s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media (max-width:380px) {
    
    .hamburger-box {
        width:20px;
    }
    .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
        width:20px;
    }
    .hamburger-inner::before {
        top:-6px;
    }
    .hamburger-inner::after {
        bottom:-6px;
    }
    
}


/* EXT: MASTERSLIDER */
.ms-bullets.ms-dir-h {
	bottom:20px !important;
    z-index:3;
}
.ms-skin-default .ms-bullet {
	width:20px !important;
	height:3px !important;
	margin:2px 2px 0 !important;
	background:rgba(255,255,255,0.5) !important;
}
.ms-bullet.ms-bullet-selected {
	background:rgba(255,255,255,1) !important;
}


/* EXT: CF7 */
.wpcf7-form {
    overflow:hidden;
    padding:25px;
    border:1px solid #dadada;
}
.wpcf7-form .hint {
    font-size:14px;
    font-weight:400;
    line-height:1.2;
    text-align:left;
    margin:35px 0 0;
}
.wpcf7 .row {
    display:flex;
    width:100%;
    flex-direction:row;
    flex-wrap: wrap;
    justify-content:flex-start;
    gap: 10px;
    margin:0 0 25px;
    text-align:left;
}

.wpcf7 .row.important-row {
    padding:15px;
    margin:30px 0;
    background:#f8f8f8;
    border:1px solid #dadada;
    border-radius:2px;
}
.wpcf7 .row.important-row p {
    font-size:14px;
    font-weight:400;
    line-height:1.4;
    text-align:left;
    margin:0 0 15px;
}
.wpcf7 .row.important-row ul,
.wpcf7 .row.important-row ol {
    font-size:14px;
    font-weight:400;
    line-height:1.4;
    text-align:left;
    margin:0 0 15px;
}
.wpcf7 .row.important-row li {
    margin:0 0 5px;
}
.wpcf7 .row.important-row *:last-child {
    margin-bottom:0;
}

.wpcf7 .row .column,
.wpcf7 .sub-row .column {
    flex: 0 0 auto;
    width: 100%;
}
.wpcf7 .row.columns-2 .column,
.wpcf7 .sub-row.columns-2 .column {
    width: calc(50% - (10px / 2));
}
.wpcf7 .row.columns-3 .column,
.wpcf7 .sub-row.columns-3 .column {
    width: calc(33.33% - (10px * 2 / 3));
}

.wpcf7 .sub-row {
    display:flex;
    width:100%;
    flex-direction:row;
    justify-content:flex-start;
    margin:20px -10px 0;
    text-align:left;
}
.wpcf7 .row .hint,
.wpcf7 .sub-row .hint {
    margin:15px 0 0;
}

.wpcf7 .row > label,
.wpcf7 .row .column > label {
    display:block;
    font-weight:500;
    margin:0 0 5px;
}
.wpcf7 .row > label .tooltip,
.wpcf7 .row .column > label .tooltip {
    display:inline-block;
    vertical-align:top;
    width:14px;
    height:14px;
    margin:4px 0 0 10px;
    background:url('assets/images/tooltip@2x.png') no-repeat center center;
    background-size:14px 14px;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7 input[type="date"],
.wpcf7 textarea {
    width:100%;
    max-width:100%;
    border:1px solid #dadada;
}
.wpcf7 .wpcf7-form-control-wrap {
    display:block;
}
.wpcf7 .wpcf7-input-file {
    padding:15px;
    border:1px solid #dadada;
    border-radius:2px;
}
.wpcf7 span.wpcf7-not-valid-tip {
    display:block;
    font-size:14px;
    font-weight:400;
    line-height:1.2;
    color:#e84118;
    margin:5px 0 0;
}

.wpcf7 #mfcf7_zl_multifilecontainer .wpcf7-input-file {
    font-size: 14px;
    padding:8px 34px 7px 10px;
    position: relative;
    border:1px solid #dadada;
    border-radius: 2px;
}
.wpcf7 #mfcf7_zl_multifilecontainer a.mfcf7_zl_delete_file {
    font-size: 10px;
    margin-top: 2px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    text-decoration: none;
    border: 0;
}
.wpcf7 .zl-form-control-wrap {
    display: none;
}
.wpcf7 #mfcf7_zl_add_file {
    background:#444;
}
.wpcf7 #mfcf7_zl_add_file:hover,
.wpcf7 #mfcf7_zl_add_file.active {
    background:#222;
}

.wpcf7-acceptance {
    display:block;
    margin:10px 0 !important;
}

.wpcf7-acceptance > span,
.wpcf7-radio > span {
    display:block;
    margin:0;
}
.wpcf7-radio.horizontal > span {
    display:inline-block;
    margin:0 25px 0 0;
    vertical-align:top;
}
.wpcf7-radio.horizontal > span:last-child {
    margin-right:0;
}
.wpcf7-acceptance > span > label,
.wpcf7-radio > span > label {
    display:block;
}
.wpcf7-acceptance > span > label input[type="checkbox"],
.wpcf7-radio > span > label input[type="radio"] {
    display:none;
}
.wpcf7-acceptance > span > label input[type="checkbox"] + span,
.wpcf7-radio > span > label input[type="radio"] + span {
    display:block;
    vertical-align:top;
    font-size:14px;
    font-weight:400;
    line-height:1.4;
    text-align:left;
    position:relative;
    cursor:pointer;
    padding:0 0 0 25px;
}
.wpcf7-acceptance > span > label input[type="checkbox"] + span a,
.wpcf7-radio > span > label input[type="radio"] + span a{
    color:#444;
    text-decoration:none;
    border-bottom:1px dotted #444;
}
.wpcf7-acceptance > span > label input[type="checkbox"] + span a:hover,
.wpcf7-radio > span > label input[type="radio"] + span a:hover {
    color:#b35939;
    border-bottom:1px dotted #b35939;
}
.wpcf7-acceptance > span > label input[type="checkbox"] + span:before,
.wpcf7-radio > span > label input[type="radio"] + span:before {
    display:block;
    content:"";
    width:14px;
    height:14px;
    position:absolute;
    top:1px;
    left:0;
    background:url(assets/images/checkbox@2x.png) no-repeat #fff;
    background-size:14px 14px;
    background-position:0 -14px;
    border-radius:2px;
    border:1px solid #dadada;
}
.wpcf7-acceptance > span > label input[type="checkbox"]:checked + span:before,
.wpcf7-radio > span > label input[type="radio"]:checked + span:before {
    background-color:#b35939;
    background-position:0 0;
    border-color:#b35939;
}

.wpcf7-radio > span > label input[type="radio"] + span:before {
    border-radius:14px;
}


.wpcf7 form .wpcf7-response-output {
    padding:15px;
    margin:35px 0 0;
}
.wpcf7 form.sent .wpcf7-response-output  {
    color:#fff;
    border:0;
	background:#96c11f;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
    color:#fff;
    border:0;
	background:#e84118;
}
.wpcf7 form.spam .wpcf7-response-output {
    color:#fff;
    border:0;
    background:#b35939;
}

@media only screen and (max-width: 1024px) {

    .wpcf7 .row.columns-3 .column,
    .wpcf7 .sub-row.columns-3 .column {
        width:calc(50% - (10px / 2));
    }

}

@media only screen and (max-width: 680px) {

    .wpcf7 .row.columns-2 .column,
    .wpcf7 .sub-row.columns-2 .column,
    .wpcf7 .row.columns-3 .column,
    .wpcf7 .sub-row.columns-3 .column {
        width:100%;
    }

}


/* EXT: MC4WP */
.mc4wp-checkbox-contact-form-7 {
    display:block;
}
.mc4wp-checkbox-contact-form-7 > label input[type="checkbox"] {
    display:none;
}
.mc4wp-checkbox-contact-form-7 > label input[type="checkbox"] + span {
    display:block;
    vertical-align:top;
    font-size:14px;
    font-weight:400;
    line-height:1.4;
    text-align:left;
    position:relative;
    cursor:pointer;
    padding:0 0 0 25px;
}
.mc4wp-checkbox-contact-form-7 > label input[type="checkbox"] + span a {
    color:#444;
    text-decoration:none;
    border-bottom:1px dotted #444;
}
.mc4wp-checkbox-contact-form-7 > label input[type="checkbox"] + span a:hover {
    color:#b35939;
    border-bottom:1px dotted #b35939;
}
.mc4wp-checkbox-contact-form-7 > label input[type="checkbox"] + span:before {
    display:block;
    content:"";
    width:14px;
    height:14px;
    position:absolute;
    top:1px;
    left:0;
    background:url(assets/images/checkbox@2x.png) no-repeat #fff;
    background-size:14px 14px;
    background-position:0 -14px;
    border-radius:2px;
    border:1px solid #dadada;
}
.mc4wp-checkbox-contact-form-7 > label input[type="checkbox"]:checked + span:before {
    background-color:#b35939;
    background-position:0 0;
    border-color:#b35939;
}


/* EXT: SELECTWOO */
.select2-container {
    width:100% !important;
}
.select2-container--default .select2-selection--single {
    border:1px solid #dadada;
    border-radius:2px;
}
.select2-container .select2-selection--single {
    height:45px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    font-size:14px;
    font-weight:400;
    line-height:45px;
    padding-left:15px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height:45px;
}
.select2-results__option {
    font-size:14px;
    font-weight:400;
}
.select2-container--default .select2-results__option--highlighted[data-selected] {
    color:#fff;
    background:#e57149;
}


/* EXT: MMENU*/
#mobile-menu:not(.mm-menu) {
    display:none;
}
.mm-slideout {
    z-index:auto;
}


/* EXT: LIGHTBOX */
.lightboxOverlay {
    z-index:99998;
}
.lightbox {
    z-index:99999;
}


/* EXT: BORLABS */
._brlbs-bar .cookie-box .row > div:first-child {
    padding-right:30px;
}
#BorlabsCookieBox ._brlbs-bar ul {
    justify-content:flex-start !important;
    margin-top:15px !important;
}
#BorlabsCookieBox ._brlbs-legal {
    color:#777 !important;
}


/* EXT: POPUPS */
.pum-content {
    font-size:16px;
    font-weight:400;
    color:#777;
    line-height:1.4;
}
.pum-content p {
    text-align:justify;
    margin-bottom:25px;
}
.pum-content ul,
.pum-content ol {
    padding-left:18px;
    margin-bottom:25px;
}
.pum-content li {
    text-align:left;
    margin-bottom:5px;
}

.pum-content a:not(.button):not(.no-highlight):not([ng-href]) {
    color:#b35939;
    text-decoration:none;
    border-bottom:1px dotted #b35939;
}

.pum-content h1 {
    font-size:32px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.pum-content h2 {
    font-size:25px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.pum-content h3 {
    font-size:22px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.pum-content h4 {
    font-size:19px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.pum-content h5 {
    font-size:18px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.pum-content h6 {
    font-size:16px;
    font-weight:500;
    color:#444;
    line-height:1.2;
    text-align:left;
    margin:0 0 20px;
}
.pum-content p + h2, .pum-content p + h3, .pum-content p + h4, .pum-content p + h5, .pum-content p + h6,
.pum-content ul + h2, .pum-content ul + h3, .pum-content ul + h4, .pum-content ul + h5, .pum-content ul + h6,
.pum-content ol + h2, .pum-content ol + h3, .pum-content ol + h4, .pum-content ol + h5, .pum-content ol + h6,
.pum-content div + h2, .pum-content div + h3, .pum-content div + h4, .pum-content div + h5, .pum-content div + h6,
.pum-content script + h2, .pum-content script + h3, .pum-content script + h4, .pum-content script + h5, .pum-content script + h6 {
    margin-top:45px;
}

.pum-content b,
.pum-content strong {
	font-weight:700;
}

.pum-content img {
	max-width:100%;
	height:auto;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	border-radius:2px;
}

.pum-content *:not(div):last-child {
	margin-bottom:0;
}

.pum-content .content-column {
    margin-bottom:25px;
}
.pum-content .content-column {
    padding-right:35px;
}
.pum-content .content-column.last_column:not(.one_third) {
    padding-right:0;
}

.pum-content hr {
    margin-bottom:25px;
    border-top:1px dashed #dadada;
}


#popmake-7680 {
    padding-right: 300px;
    background: url('assets/images/popup-termine.png') no-repeat right bottom #fff;
}

@media (max-width: 780px) {
    
    #popmake-7680 {
        min-width: 90% !important;
        padding-right: 200px;
        background-size: 180px auto;
    }
    
}

@media (max-width: 650px) {
    
    #popmake-7680 {
        padding-right: 18px;
        background: #fff;
    }
    
}



/* CORONA */
.responsive-banner {
    width: 100%;
}
.responsive-banner img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0;
}
.responsive-banner img.mobile {
    display: none !important;
}

@media (max-width: 1024px) {

    .responsive-banner img.desktop {
        display: none !important;
    }
    .responsive-banner img.mobile {
        display: block !important;
    }

}