HTML {
    height: 101%;
}
BODY {
    background-color: #CCBF97;
    background-image: url("main-back.jpg");
    background-repeat: repeat-x;
    font: 12px / 1.4 Arial, Helvetica, sans-serif;
    color: #000;
}
.hinweis {
    margin-bottom: 20px;
    padding-right: 20px;
    padding-left: 20px;
    background-color: #FFF;
    border: 10px solid #BD3131;
}
A {
    font: 12px Arial, Helvetica, sans-serif;
    text-decoration: none;
    color: #857238;
}
A:hover {
    text-decoration: underline;
}
.clear {
    height: 0;
    clear: both;
    margin: 0;
    padding: 0;
    font-size: 1px;
}
FORM {
    margin: 0;
    padding: 0;
}
.error {
    color: #F00 !important;
}
.error INPUT,
.error SELECT,
.error TEXTAREA {
    border: 1px solid #F00 !important;
}
FIGURE {
    margin: 0;
    padding: 0;
}
/* ============ grundaufbau =============== */
#wrapper {
    margin: 0 auto;
    padding: 0;
}
#header {
    width: 970px;
    height: 520px;
    margin: 0 auto;
}
#main {
    width: 740px;
}
#mainHead {
    width: 970px;
    height: 137px;
    position: relative;
    margin: 0;
    padding: 0;
}
#container {
    width: 960px;
    margin: 10px auto 0;
    padding: 15px 0 20px;
    border-top: 1px dotted #3D3628;
}
.headerlogo {
    height: 130px;
    top: 26px;
    position: relative;
}
#footer1 {
    margin-top: 0;
    padding: 0;
    background-color: #5A513D;
    border-top: 1px solid #3D3628;
}
#footerBox1 {
    /*width: 970px;*/
    margin: 0 auto;
    padding: 0 0 15px;
    /*background-image: url("footerbox-back4.png");*/
    background-repeat: no-repeat;
}
#footer2 {
    margin-top: 0;
    padding: 0;
    background-color: #3D3628;
}
#footerBox2 {
    width: 960px;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    padding: 15px 0 25px;
}
#footerBox2Left {
    float: left;
    color: #9C8D6C;
}
#footerBox2Right {
    float: right;
}
#footerBox2Right A {
    text-decoration: none;
    color: #9C8D6C;
}
#footerBox2Right A:hover {
    text-decoration: underline;
    color: #9C8D6C;
}
.cookiebar {
    background-color: rgba(57, 53, 43, 0.9);
    padding-top: 15px;
    padding-bottom: 15px;
    border-top: 5px solid white;
}
.cookiebar__text {
    font-size: 14px;
    margin-bottom: 10px;
}
.cookiebar__link {
    font-size: 14px;
}
/* ::: Suche, Newsletter ::: */
#topsearch {
    width: 260px;
    left: 703px;
    top: 50px;
    position: absolute;
    /*z-index: 100;*/
}
#topsearch .searchInput {
    width: 185px;
    height: 30px;
    background-color: #E2E2E2;
}
.searchInput,
INPUT#ctrl_keywords_19,
INPUT#ctrl_email_3 {
    width: 175px;
    padding: 5px;
    background-color: #E9E8E6;
    border-left: 0px solid #000;
    border-bottom: 1px solid #59503C;
    border-right: 1px solid #59503C;
    border-top: 0px solid #000000;
}
INPUT.butSuchen {
    float: right;
    padding: 6px 5px;
    text-align: center;
    background-color: #574F3C;
    border: 0px solid #000;
    font-size: 12px;
    color: #FFF;
    text-transform: uppercase;
    background-image: none;
    cursor: pointer;
}
INPUT.butSuchenhov,
.formbody #ctrl_submit_19:hover {
    background-color: #BAA36D;
    background-image: none;
}
.mod_search #ctrl_keywords_19 {
    margin-bottom: 10px;
}
.mod_search .formbody {
    margin-bottom: 20px;
}
.mod_search H3 {
    margin-bottom: 2px;
}
.mod_search H3 A {
    font-size: 14px;
    font-weight: bold;
}
H3 .relevance {
    font-size: 12px;
}
.mod_search P.context {
    padding-bottom: 5px;
}
.mod_search P.url {
    color: #858585;
}
.browserhide {
    display: none;
}
/* ============ service navi formatierungen ============= */
#servicenav {
    height: 18px;
    float: right;
    padding: 8px 0 0;
    font-size: 10pt;
}
#servicenav UL {
    margin: 0;
    padding: 0;
    line-height: 1.5;
    list-style: none;
}
#servicenav LI {
    float: left;
    margin: 0;
    padding: 0 15px 0 10px;
    background-image: url("arrow-service-navi.gif");
    background-repeat: no-repeat;
    line-height: 1.5;
    background-position: 0px 4px;
}
#servicenav A {
    display: block;
    margin: 0;
    padding: 0;
    font: 12px arial, helvetica, sans-serif;
    font-weight: normal;
    text-decoration: none;
    color: #FFF;
}
#servicenav A:hover {
    text-decoration: underline;
}
#servicenav STRONG.active {
    top: -2px;
    position: relative;
}
.spaceLast {
    padding-right: 5px !important;
}
/* ============ main navi formatierungen ============= */
#headernav {
    height: 37px;
    top: 23px;
    position: relative;
    overflow: hidden;
    margin: 0 5px;
    padding: 0;
    background-image: url("mainnavi-back.jpg");
}
#headernav UL {
    margin: 0;
    padding: 0;
    list-style: none;
}
#headernav LI {
    float: left;
    margin: 0;
    padding: 0;
    background-image: url("mainnavi-line.gif");
    background-repeat: no-repeat;
}
#headernav A,
#headernav STRONG.active {
    display: block;
    margin: 0;
    padding: 10px 13px;
    font: 14px arial, helvetica, sans-serif;
    font-weight: normal;
    text-decoration: none;
    color: #FFF;
}
#headernav A:hover {
    background-image: url("mainnavi-hover.jpg");
    text-decoration: none;
    color: #FFF;
}
#headernav STRONG.active {
    background-image: url("mainnavi-hover.jpg");
    text-decoration: none;
    color: #FFF;
}
#mobilenavibutton {
    display: none;
}
/* ============ Pics Rubriken ================================== */
#mainPic {
    width: 955px;
    height: 310px;
    top: 22px;
    position: relative;
    padding: 15px 0 0 15px;
    background-image: url("mainpic-back.png");
}
.mainPicStartText {
    width: 440px;
    left: 20px;
    top: 100px;
    position: absolute;
    padding: 5px 30px 5px 10px;
    background-image: url("teaserboxen-back.png");
    border: 1px solid #808080;
}
.startseite .mainPicStartText,
.service .mainPicStartText,
.haustueren .mainPicStartText {
    width: 400px;
    left: 35px;
    top: 114px;
}
.mainPicStartText {
    color: #FFF;
}
.mainPicStartText H1 {
    margin: 0;
    padding: 0 20px 11px 0;
    font-size: 20px;
    font-weight: normal;
}
.mainPicStartText P {
    margin: 0;
    padding: 0 20px 10px 0;
    font-size: 12px;
    line-height: 16px;
}
/* start rubriken-teaser */
.teaserwrapper {
    float: left;
}
.flexbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
.noborder .teaserboxen {
    border: 0px solid;
}
.teaserboxen.last {
    background-color: transparent;
    border: 1px solid transparent;
}
#startteaser .sc,
.teaserboxen {
    width: 205px;
    float: left;
    margin: 0 0 20px;
    padding: 9px 9px 6px;
    background-color: #FFF;
    border: 1px solid #8B8577;
}
#startteaser .sc H2,
.teaserboxen H2 {
    margin: 0 0 10px;
    padding: 8px 0 9px 10px;
    font-size: 14px;
    font-weight: normal;
    color: #FFF;
    text-transform: uppercase;
}
.rubrikTeaserStartPic {
    margin-bottom: 7px;
    padding: 0;
    border: 0;
}
.teaserKontakt H3,
#startteaser .sc H2,
.teaserboxen H2 {
    background: -moz-linear-gradient(top, #59513E 0%, #474030 100%);
    background: -webkit-linear-gradient(top, #59513E 0%, #474030 100%);
    background: -o-linear-gradient(top, #59513E 0%, #474030 100%);
    background: -ms-linear-gradient(top, #59513E 0%, #474030 100%);
    background: linear-gradient(to bottom, #59513E 0%, #474030 100%);
    -pie-background: linear-gradient(top,#59513E 0%,#474030 100%);
}
/* content formatierung */
.mainContent {
    padding: 20px;
    background-color: #FFF;
    border: 1px solid #8B8577;
}
#main .inside {
    margin-right: 20px;
}
.mainContent H1 {
    margin: 0 0 15px;
    padding: 60px 20px 5px 0;
    border-bottom: 1px dotted #352F22;
    font-size: 20px;
    font-weight: normal;
    color: #352F22;
}
.mainContent.first .first H1 {
    padding-top: 0;
}
.mainContent H2 {
    margin: 0;
    padding: 10px 20px 15px 0;
    font-size: 16px;
    font-weight: normal;
    color: #857238;
}
.mainContent P {
    margin: 0;
    padding: 0 20px 10px 0;
    font-size: 12px;
    color: #352F22;
}
#main UL {
    margin: 0 20px 5px 2px;
    padding: 0;
    list-style: none;
}
#main LI {
    padding: 0 0 10px 18px;
    background-image: url("arrow_list.gif");
    background-repeat: no-repeat;
    font-size: 12px;
    line-height: 14px;
    background-position: 0px 1px;
}
.stellenangebote #main LI {
    padding-bottom: 5px;
    padding-left: 5px;
    background-image: none;
}
.stellenangebote #main LI:before {
    padding-right: 5px;
    content: "-";
}
#main LI A {
    font: 12px Arial, Helvetica, sans-serif;
    text-decoration: none;
    color: #857238;
}
#main LI A:hover {
    text-decoration: underline;
}
.ce_text .image_container {
    padding-bottom: 20px;
}
#main .sc2-first {
    margin-right: 20px;
}
#main .col_0 {
    padding-right: 10px;
    padding-bottom: 5px;
    font-weight: bold;
}
.techdaten {
    margin-bottom: 15px;
}
.techdaten TD {
    padding-bottom: 15px;
}
.prospekt {
    margin-right: 17px;
    margin-bottom: 20px;
    padding: 10px;
    background-color: #5A513D;
    border: 1px solid #343434;
}
.prospekt.sc3-last {
    margin-right: 0;
}
.prospekt P A {
    padding-top: 4px;
    padding-left: 23px;
    background-image: url("iconPDF.gif");
    background-repeat: no-repeat;
    color: #DFD6BF;
}
.prospekt H4 {
    width: 190px;
    font-size: 14px;
    color: #DFD6BF;
}
#right .prospekt H4 {
    padding-left: 6px;
}
#right .prospekt .image_container {
    padding-left: 6px;
}
.prospekt IMG {
    border: 1px solid #8B8577;
}
.teaserKontakt,
#right .teaserKontakt {
    width: 205px;
    margin: 0 0 20px;
    padding: 9px 9px 6px;
    background-color: #FFF;
    border: 1px solid #8B8577;
}
.teaserKontakt H3,
#right .teaserKontakt H4 {
    margin: 0 0 10px;
    padding: 8px 0 9px 10px;
    font-size: 14px;
    font-weight: normal;
    color: #FFF;
    text-transform: uppercase;
}
.teaserKontakt P {
    margin: 0;
    padding: 0;
    color: #352F22;
}
.teaserKontakt A,
#right .teaserKontakt A {
    text-decoration: none;
    color: #857238;
}
.teaserKontakt A:hover,
#right .teaserKontakt A:hover {
    text-decoration: underline;
}
.teaserKontakt UL {
    margin-left: 15px;
    list-style-type: disc;
}
.picCallcenter {
    float: right;
    margin: 0 0 0 10px;
}
.telNummmerKontaktBox IMG {
    margin-bottom: -3px;
}
.telNummmerKontaktBox {
    margin-bottom: 15px;
    border-top: 1px dotted #352F22;
    border-bottom: 1px dotted #352F22;
}
.kontaktformularbutton {
    padding: 10px 0 0;
    border-top: 1px dotted #000;
}
/*Lightbox*/
.euf_overlay__content {
    padding: 10px;
}
.euf_overlay__close {
    font-size: 30px;
    padding: 0;
    margin: -5px 5px 0 0;
}
#lightcase-overlay {
    background-color: rgba(0, 0, 0, 0.99);
}
/* news */
#right .mod_newslist H2 {
    display: none;
}
.teaserNews {
    width: 205px;
    margin: 0 0 20px;
    padding: 9px;
    background-color: #FFF;
    border: 1px solid #8B8577;
}
.teaserNews H3,
#right .mod_newslist H3,
#right .teaserKontakt H4 {
    margin: 0 0 10px;
    padding: 8px 0 9px 10px;
    background-image: url("startteaser-head-back.jpg");
    font-size: 14px;
    font-weight: normal;
    color: #FFF;
    text-transform: uppercase;
    background-repeat: repeat-x;
    background-color: #474030;
}
#right .mod_newslist .block {
    margin: 0 0 15px;
    padding: 0 0 5px;
    border-bottom: 1px dotted #352F22;
}
.teaserNewsEintrag P,
#right .mod_newslist P {
    margin: 0;
    padding: 0;
    color: #352F22;
}
.teaserNewsEintrag A,
#right .mod_newslist A {
    text-decoration: none;
    color: #857238;
}
.teaserNewsEintrag A:hover,
#right .mod_newslist A:hover {
    text-decoration: underline;
}
.teaserNewsEintrag IMG,
#right .mod_newslist IMG {
    float: left;
    border: 0px;
}
.newsDate,
#right .mod_newslist .info {
    font-weight: bold;
    color: #857238;
}
.mainContent .mod_newsarchive H2 {
    padding: 0;
    font-weight: bold;
}
.mainContent .mod_newsarchive P.info {
    padding: 0;
    font-weight: normal;
}
.mainContent .mod_newsarchive .block {
    padding-bottom: 25px;
}
/* ============ footer formatierungen ============= */
.footerflexbox {
    width: 970px;
    /*margin: 5%;*/
    /*background-color: #A2ADBC;*/
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: normal;
    justify-content: left;
    margin: 0 auto;
}
.mainBottomList.footerflexelement {
    width: 210px;
    padding-right: 5px;
    background-image: url("footerbox-back4.png");
}
.mainBottomList {
    padding: 25px 0 5px 26px;
    color: #FFF;
}
.mainBottomList UL {
    margin: 0;
    padding: 0;
    line-height: 14px;
    list-style: none;
}
.mainBottomList UL LI {
    margin: 0;
    padding: 0 0 3px;
    font-size: 12px;
    color: #FFF;
}
.mainBottomList UL LI.active {
    padding-top: 3px;
}
.mainBottomList UL LI.active:before {
    content: "● ";
    font-size: 16px;
    margin-right: -4px;
}
.mainBottomList UL LI A {
    font-size: 12px;
    text-decoration: none;
    color: #FFF;
}
.mainBottomList UL LI A:hover {
    text-decoration: underline;
}
.bigArrow {
    font-size: 14px;
}
#footer .mod_customnav A:before,
#footer .mod_customnav SPAN.active:before {
    font-size: 14px;
    content: "› ";
}
.footerPicPos {
    float: left;
    margin: 0 10px 0 0;
    border: 0;
}
#footer2,
#footer2 A {
    color: #9C8D6C;
}
.footer2box1 {
    float: left;
}
.footer2box2 {
    text-align: right;
}
/* ### Kontaktformular ### */
ce_form INPUT, #ctrl_5.textarea {
    border: 1px solid #D2D2D2;
}
/* ### Kontaktformular ### */
#ctrl_8.submit,
#tl_subscribe .submit,
.routinglink .submit {
    margin: 15px 0;
    padding-top: 4px;
    padding-bottom: 10px;
    background-color: #574F3C;
    font-size: 12px;
    color: #FFF;
    text-transform: uppercase;
    background-image: none;
    cursor: pointer;
}
#ctrl_8.submit:hover,
#tl_subscribe .submit:hover,
.routinglink .submit:hover {
    background-color: #C1AF7D;
}
.ce_form SPAN.mandatory {
    padding-left: 3px;
    color: #F00;
}
.ce_form {
    margin-top: 20px;
}
.widget-text INPUT {
    height: 39px;
}
.widget-radio {
    margin-bottom: 25px;
}
.widget-checkbox {
    margin-top: 30px;
    margin-bottom: 30px;
}
.widget-checkbox SPAN {
    margin-right: 20px;
    display: inline-block;
}
.widget-radio SPAN {
    margin-right: 20px;
}
.widget-radio LEGEND {
    margin-bottom: 5px;
}
.datenschutz {
    margin-top: 29px;
    margin-bottom: 30px;
}
.mod_rocksolid_slider {
    padding-right: 15px;
}
/* ### Galerie ### */
#main .ce_gallery LI {
    padding: 0 20px 20px 0;
    background-image: none;
}
#main .ce_gallery LI.col_last {
    padding-right: 0;
}
.background-white {
    margin-right: 25px;
    margin-bottom: 25px;
    padding-right: 10px;
    padding-left: 10px;
    background-color: #FFF;
}
.caption {
    font-weight: normal;
}
/*### Katalog ###*/
.main100 #main {
    width: 100%;
}
.mod_catalogUniversalView.block {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
.ctlg-flexbox {
    width: 30%;
    background-color: #FFFFFF;
    padding: 0px 10px 15px;
    border: 1px solid black;
    margin-bottom: 30px;
}
.ctlg-flexbox H2 {
    padding-left: 6px;
    background-color: #3E3626;
    color: #FFFFFF;
    padding-bottom: 3px;
    padding-top: 3px;
    padding-right: 3px;
}
.ctl-flexboxen P {
    font-size: 15px;
}
.artikelkurzbeschreibung {
    padding-top: 8px;
    padding-bottom: 10px;
}
.ctlg-flexbox .more A {
    padding: 5px 10px;
    background-color: #5C513A;
    color: #FFFFFF;
    /*+border-radius: 4px;*/
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -khtml-border-radius: 4px;
    border-radius: 4px;
    font-size: 14px;
}
/*### MMenue ###*/
.mm-navbar__title {
    font-size: 20px;
}
.mm-panels LI.active {
    font-size: 17px;
    padding-top: 10px;
    padding-bottom: 10px;
}
.mm-listitem {
    padding-left: 20px;
}
.mm-listitem__text {
    font-size: 15px;
}
@media (max-width: 767px) {
    /* responsive767.css */
    #wrapper {
        width: auto;
    }
    #container,
    #main,
    #header,
    #footerBox1,
    #footerBox2,
    #mainPic {
        width: auto;
    }
    #mobilenavibutton {
        height: 45px;
        display: block;
        margin-top: 28px;
        margin-left: 10px;
        padding-top: 10px;
        padding-left: 55px;
        background-image: url("../../files/css/mobile-navi-button.svg");
        background-repeat: no-repeat;
        font-size: 1.2rem;
        font-weight: 400;
        /*+placement: 0px -19px;*/
        position: relative;
        left: 0px;
        top: -19px;
    }
    #mainPic {
        height: auto;
        overflow: visible;
        margin-right: 20px;
        background-image: none;
    }
    #container {
        border-top: 0px solid black;
    }
    #headernav,
    #servicenav,
    #topsearch,
    .footernavi {
        display: none;
    }
    #header {
        height: auto;
    }
    #header {
        margin-bottom: 20px;
    }
    .headerlogo {
        padding-left: 10px;
    }
    .headerpic {
        margin-bottom: 15px;
        padding-right: 20px;
        background-color: #FFF;
        border: 1px solid #8B8577;
    }
    .headerpic IMG {
        margin-bottom: 0;
        border: 10px solid #FFF;
    }
    .mainPicStartText,
    .startseite .mainPicStartText {
        width: auto;
        height: auto;
        top: 0;
        left: 0;
        position: relative;
        padding: 10px;
        background-color: #FFF;
        background-image: none;
        border: 1px solid #8B8577;
    }
    .mainPicStartText H1,
    .mainPicStartText P {
        color: #352F22;
    }
    .mainPicStartText H1 {
        margin-bottom: 10px;
        padding-bottom: 0;
        border-bottom: 1px dotted #352F22;
    }
    .teaserwrapper {
        width: 80%;
        float: none;
        margin: 0 auto 20px;
        background-color: #5A513D;
    }
    .teaserboxen {
        float: none;
        margin: 5px auto;
    }
    .teaserwrapper.last {
        display: none;
    }
    .haustueren .teaserboxen {
        width: 100%;
        margin-top: 0;
        margin-bottom: 0;
        padding-right: 0;
        padding-bottom: 40px;
        padding-left: 0;
    }
    .teaserKontakt {
        margin: 0 auto 10px;
    }
    .mainContent {
        margin-bottom: 10px;
        margin-left: 15px;
        padding-left: 10px;
    }
    #footerBox1 {
        background-image: none;
    }
    .mainBottomList.sc4 {
        width: auto;
    }
    .mainBottomList {
        padding-left: 10px;
    }
    #footer .sc {
        float: none;
    }
    #footer2 .sc2-last,
    #footer2 .sc2-first {
        float: none;
        padding-left: 10px;
    }
    .onecolumn.downloads #main .inside {
        padding-right: 20px;
        padding-left: 15px;
    }
    .footerflexbox {
        width: 100%;
    }
    .mainBottomList.footerflexelement {
        width: 100%;
        background-image: none;
    }
    #footerBox2 .footer2box1 {
        padding-left: 9px;
    }
    #right .teaserKontakt {
        margin: 0 auto;
    }
}
