.clearfix:before, .clearfix:after {display: table; content: ""; line-height: 0; clear: both}

body {z-index: 1; background: rgba(243,222,191,1); color: #4E4E4E; margin: 0; padding: 0; overflow-y: scroll; overflow-x: hidden}
body, button, input, select, textarea {font-family: 'Segoe UI', 'Open Sans', sans-serif; font-size: 0.925em; font-weight: 400; font-size-adjust: 0.53; line-height: 150%}
body.outside #cmp {padding: 0}

.item-page .inside {padding: 0 15px}
.item-page .inside.row {padding: 0}

form[id*="zitform"] input {width: 250px}
form[id*="zitform"] .inline input {width: auto; padding: auto}
form[id*="zitform"] textarea {width: 300px}
form[id*="zitform"] select {width: 262px}

a#logo img {border: 0; margin: 0 15px 0 10px}

.startseite #head .inside, .startseite #main .inside, .startseite #foot .inside,
.default #head, .default #main, .default #foot {display: block; padding: 0; max-width: 1160px; margin: 0 auto; box-sizing: border-box; position: relative}

#head {z-index: 3}
#head #hd1 {z-index: 33; padding: 15px 0 0}
#head #hd2 {z-index: 34; height: 48px; max-height: 48px; background: #E2D4B1; border-top: 2px solid #F3E9CE; border-bottom: 2px solid #F3E9CE}
#head #hd2 .inside {height: 48px; max-height: 48px;}
#head #hd3 {z-index: 32; overflow: hidden}
#head #hd4 {z-index: 32}

#main {z-index: 2; background: #fff; padding: 0}
#rgt .module {margin: 20px 0 0}
#rgt .module:after {display: table; content: ""; line-height: 0; clear: both}
#rgt .module:first-child h3 {margin-top: 0}

#main a img {-webkit-transition: all 0.7s ease; transition: all 0.7s ease}
#main a:hover img, #main a:focus img {-webkit-transform:scale(1.075); transform:scale(1.075)}

#foot {z-index: 1; background: #E2D4B1; border-top: 2px solid #F3E9CE}

.startseite #ct4 {margin: 30px 0 0 !important}
.startseite #ct4 .inside {padding: 0}

body.default #main {background: linear-gradient(0deg, #F3E9CE 0%, #F3E9CE 100%) 66% top repeat-y #fff; background-size: 2px 2px}
body.default.inhalt #main {background: #fff}
body.default #main #cmp {padding-right: 25px}
body.default #main #cmp .blog .row {margin: 0}
body.default #main #rgt {padding-left: 20px}

.btn-group {display: none}

.module.topmenu {z-index: 100; height: 48px}
.module.topmenu .display-mobile {display: none; cursor: pointer}
.module.topmenu[class*="col"] {float: none}
.module.topmenu ul {list-style: none; margin: 0; padding: 0; height: auto}
.module.topmenu ul li {float: left; margin: 0 15px 0 15px; padding: 0}
.module.topmenu ul li a {color: #4E4E4E; text-transform: uppercase}
.module.topmenu ul li a small {display: none}
.module.topmenu ul li a:hover, .module.topmenu ul li a:focus,
.module.topmenu ul li[class*="active"] a, .module.topmenu ul li.open a  {color: #28BA2B}
.module.topmenu ul li .dropdown-menu {position: absolute; left: -3000px}
.module.topmenu ul li.open .dropdown-menu {left: auto; top: 51px}
.module.topmenu ul li.open .dropdown-menu li {float: none; margin: 0 0 2px 0; min-width: 220px; border-left: 10px solid #E2D4B1; background: #F4E9CF}
.module.topmenu ul li.open .dropdown-menu li a {display: block; color: #4E4E4E; padding: 6px 15px; text-transform: none}
.module.topmenu ul li.open .dropdown-menu li a:hover, .module.topmenu ul li.open .dropdown-menu li a:focus,
.module.topmenu ul li.open .dropdown-menu li.active a {color: #28BA2B}
.module.topmenu ul li.open .dropdown-menu li:first-child {border-radius: 0}
.module.topmenu ul li.open .dropdown-menu li:last-child {border-radius: 0 0 10px 10px}
/*
.module.topmenu ul li.item-154.open .dropdown-menu {right: 0}
.module.topmenu ul li.item-154.open .dropdown-menu li:first-child {border-radius: 10px 0 0 0}
.module.topmenu ul li.item-170.open .dropdown-menu {right: 0}
.module.topmenu ul li.item-170.open .dropdown-menu li:first-child {border-radius: 10px 0 0 0}
*/


.module.topsubmenu {font-size: 0.85em; position: absolute; right: 15px; top: 15px}
.module.topsubmenu p {margin: 0; padding: 0; line-height: 28px}
.module.topsubmenu a {color: #444 !important}
.module.topsubmenu a:hover, .module.topsubmenu a:focus {color: #8DBB8E !important}


.module.menu ul {list-style: none; padding: 0; border-top: 1px solid #F3E9CE}
.module.menu ul li {padding: 0; margin: 0; border-bottom: 1px solid #F3E9CE}
.module.menu ul li a {display: block; padding: 6px 0; color: #4E4E4E;}
.module.menu ul li a:befores {content: "\f101"; font-family: FontAwesome}
.module.menu ul li a:hover, .module.menu ul li a:focus,
.module.menu ul li.active a {color: #28BA2B}

.module.menu ul li.item-146 {display: none}
.module.menu ul li.item-210{display: none}

.module.banner {width: 100%; height: 100%; display: block; position: relative}
.module.banner img {width: 100% !important; margin: 0; padding: 0; line-height: 0}
.module.banner p {width: 100%; margin: 0; padding: 0; line-height: 0}

.module.schnellanfrage form {margin: 15px 0 0}
.module.schnellanfrage label[class*="zitform"] {display: none}
.module.schnellanfrage p[class*="input"] {padding-left: 0}
.module.schnellanfrage .btn {margin-top: 0; width: 100%}
.module.schnellanfrage input, .module.schnellanfrage textarea {width: 100%}

.module.topsubmenu a {color: #fff}
.module.topsubmenu a:hover,.module.topsubmenu a:focus {color: #f0f0f0}

.item-page h1 {color: #926E0C}

.item-page .row.image [class*="col"] img {margin: 0; line-height: 0}
.item-page .row.image [class*="col"] p {margin: 0; line-height: 0}

.blog [class*="lead"], .blog [class*="item"] {margin: 30px 0; padding: 10px 0 0; border-top: 2px solid #F3E9CE}

.system-unpublished {display: none}

#ds {background: #333; color: #f0f0f0; font-size: 0.85em; line-height: 150%; border-top: 2px solid #F3E9CE}
.startseite #ds .inside {max-width: 1130px; padding: 10px 15px; margin: 0 auto}
.default #ds {max-width: 1130px; margin: 0 auto; padding: 10px 15px}
#ds.hidden {display: none}
#ds .btn {padding: 0; margin: 0 0 0 30px; background: transparent !important; border: none; color: #fff !important}
#ds .btn:before {content: "["}
#ds .btn:after {content: " ]"}


#system-message-container .alert .close {float: right}
#system-message-container .alert .alert-heading {display: none}
#system-message-container .alert {color: rgba(228,62,62,1); border: 1px solid rgba(228,62,62,1); padding: 15px 15px 5px; margin: 0 0 30px}
#system-message-container .alert b {color: #222}
#system-message-container .alert small {color: #4E4E4E}
#system-message-container .alert .btn {display: none}

#backtop { display: inline-block; z-index: 99999; position: fixed; right: 2.75%; bottom: 2.75%; }
#backtop a { display: inline-block; text-align: center; background: #444; border: 5px solid #fff; border-radius: 50%; height: 40px; width: 40px; position: relative; text-decoration: none}
#backtop a span.fa {color: #fff !important; font-size: 2em; line-height: 34px}
#backtop a span.text { display: none; }

.pagination .counter {display: none}

.pagination {margin: 20px 0 10px}
.pagination ul {list-style: none; margin: 40px 0 0; padding: 0}
.pagination ul li {float: left; margin: 0 4px 0 0; padding: 0; background: #F3E9CE}
.pagination ul li span {padding: 4px 8px; display: inline-block}
.pagination ul li a {padding: 4px 8px; display: inline-block}
.pagination ul li a:hover, .pagination ul li a:focus {}
.pagination:before, .pagination:after, .pagination ul:before, .pagination ul:after {*zoom: 1; display: table; content: ""; line-height: 0; clear: both}

/*
.carousel-inner .item .caption {position: absolute; left: 0; top: 10px; right: 0; bottom: 10px; padding: 50px 0; z-index: 2}
.carousel-inner .item .caption .text {padding: 10px; display: block; margin: 0 auto; max-width: 1140px}
.carousel-inner .item .caption .text p {line-height: 145%; font-size: 30px}
.carousel-inner .item .caption .text .box {display: inline-block}
.carousel-inner .item .caption .text .box.hell {background: rgba(255,255,255,0.625); color: #000}
.carousel-inner .item .caption .text .box.hell strong {color: #000}
.carousel-inner .item .caption .text .box.dunkel {background: rgba(0,0,0,0.375); color: #fff}
.carousel-inner .item .caption .text .box.dunkel strong {color: #fff}
*/

.carousel.slide {height:1070px;}

.carousel-inner {position: relative}
.carousel-inner .item {background: #E2D4B1;}
.carousel-inner .item .caption {position: absolute; left: 0; right: 0; bottom: 0; padding: 0; height: 50px; background: #28BA2B; z-index: 2}
.carousel-inner .item .caption .box {padding: 0}
.carousel-inner .item .caption .text {padding: 10px 0; display: block; margin: 0 auto; max-width: 1140px}
.carousel-inner .item .caption .text p {line-height: 145% !important; font-size: 1.2em; color: #fff}
.carousel-inner .item .caption .text strong {color: #fff}

.carousel-inner .item {}
.carousel-inner .item {opacity: 0; webkit-transition: all 6s ease; transition: all 6s ease;}
.carousel-inner .active {opacity: 1; webkit-transition: all 3s ease; transition: all 3s ease;}
.carousel-inner .item, .carousel-inner .active.left, .carousel-inner .active.right { opacity: 0}
.carousel-inner .active, .carousel-inner .next.left, .carousel-inner .prev.right { opacity: 1}


@media (max-width: 1300px) {
    #backtop { display: block; z-index: 1; background: #000; position: static; right: auto bottom: auto; max-width: 1100px; padding: 0 30px; margin: 1px auto 0}
	#backtop a { display: block; text-align: right; background: transparent; border: none; border-radius: 0; height: 30px; width: 100%; line-height: 30px; position: relative; text-decoration: none}
	#backtop a span.fa {display: none}
	#backtop a span.text {display: inline-block; color: #F0F0F0}
}

@media (max-width: 1160px) {
	.carousel-inner .item .caption {padding: 0 15px}
}

@media (max-width: 860px) {
    #main {background: #fff !important; background-size: 100% 100% !important}
    #cmp {width: 100%; padding: 15px}
    #rgt {width: 100%; padding: 0 15px 15px !important}
    .module.topmenu {}
    .module.topmenu .display-mobile {display: block; margin: 0}
    .module.topmenu .display-mobile i {display: block; width: 100%; padding: 12px 15px; background: #E2D4B1; border-top: 2px solid #F3E9CE; border-bottom: 2px solid #F3E9CE; font-style: normal; text-transform: uppercase; margin: -17px -15px}
    .module.topmenu .display-mobile i:before {content: "\f00b"; font-family: FontAwesome; font-size: 0.9em; margin-right: 10px}
    .module.topmenu ul {display: none}
    .module.topmenu.in ul {display: inline-block; width: 100%; height: auto; margin: 16px 0 0 -15px; position: absolute}
    .module.topmenu.in ul li {float: none; margin: 1px 0 0 0; padding: 0}
    .module.topmenu.in ul li a {display: block; width: 100%; background: #E2D4B1; color: #4E4E4E; padding: 15px}
	.module.topmenu.in ul li a .fa {float: right; margin: 5px 60px 0 0}
	.module.topmenu.in ul li.open a .fa:before {content: "\f057" !important}
	.module.topmenu.in ul li.open ul {position: relative; left: auto; top: auto; right: auto; margin: 0 !important}
	.module.topmenu.in ul li.open ul li {background: #F0F0F0; color: #4E4E4E; margin: 1px 0; border-radius: 0 !important}
	.module.topmenu.in ul li.open ul li a {background: #F0F0F0; padding: 15px}
	.carousel-control.left {left:10%}
	.carousel-control.right {right:10%}
	.carousel-inner .item .caption .text p {font-weight: normal}
}

@media (max-width: 640px) {
    .module.topsubmenu .telefon {display: none}
    .module.topmenu {top: 0px; left: 0; right: 0}
    .module.topmenu .display-mobile {width: 100%}
    .module.topmenu .display-mobile i {padding: 15px 30px}
    .module.topmenu.in ul {width: 100%}
    .module.topmenu.in ul li a {padding: 15px 30px}
    .module.topmenu.in ul li.open ul li a {padding: 15px 30px 15px 20px}
    a#logo {display: block; margin-top: 50px}
    form[id*="zitform"] p[class*="input"] {padding-left: 50%}
    .carousel-inner .item .caption .text p {line-height: 145%; font-size: 18px; font-weight: 600}
    .carousel-inner .item .caption .text p {font-size: 0.95em; text-align: center; margin-top: -10px !important}
}

@media (max-width: 480px) {
    .item-page img, .blog img {float: none !important; display: block !important; margin: 10px 0 20px !important}
    .item-page img:after, .blog img:after {display: table; content: ""; line-height: 0; clear: both}
    form[id*="zitform"] p[class*="input"] {padding-left: 0}
    form[id*="zitform"] p[class*="input"] label {display: none}
}

body.error {text-align: center; padding: 60px 20px}
body.error .box {width: 500px; margin: 0 auto; border-radius: 15px; padding: 30px 20px 10px}
body.error .btn {border-radius: 6px}

iframe.video {width: 100%}