@import "tiny.css";

* {margin:0;padding:0;}
html,body {height:100%;}

*::-moz-selection {background-color:#D1121F;color:#fff;}
*::selection {background-color:#D1121F;color:#fff;}
.content_block_image img {width: 100%;}
.clearingItem {float: none; clear: both;}

/* BODY-CONTAINERS */
#header {position: relative;background: #fff; padding: 0 50px; box-sizing: border-box; height: auto;}
#header-content {background: #fff; max-width: 1400px;  height: 100px; box-sizing: border-box;}
#header .contentwidth {margin-bottom: 0;}
#content {min-height: 100px; padding: 0 20px;}
#footer {position: relative;  background: #D1121F; padding: 0 50px; box-sizing: border-box;}
#footer-content {max-width: 1400px;  height: 60px; box-sizing: border-box;}
/* END BODY-CONTAINERS */


/* HEADER */
#logo {height: 80px; margin-top: 10px; float: left;}
#socialmedia {float: right; position: relative; width: 55px; margin-top: 40px;}
.socialicon {height: 20px; width: auto; float: right; margin-left: 10px;}


/* HEADER SLIDER */
#headerSlider-Wrapper {width: 100%; height: auto; margin-bottom: 100px;}
.singleSlide {height: 800px!important; background-size: cover; background-position: 50% 0%;}

#headerSlider-Wrapper.smallheader .singleSlide {height: 400px!important;}

#headerterminbutton {bottom: unset;margin-top: -135px;}

/* TWO COL CONTENT */
.default-wrapper {width: 100%; box-sizing: border-box; margin-bottom: 50px;}
.two-col-content-wrapper {max-width: 1400px; height: auto; margin: 0 auto;}
.two-col-headline {width: 100%; text-align: center;}
.two-col-content {display: grid; grid-template-columns: 1fr 1fr; grid-gap: 100px; margin-top: 85px;}


/* TILES GRID */
.tiles-contents {display: grid; grid-template-columns: calc(50% - 12.5px) calc(50% - 12.5px); grid-gap: 25px; margin-bottom: 150px;}
.tile {text-align: center; padding: 20px; box-sizing: border-box; background: #f7f7f7; }
.tile-title {color: #D1121F; font-size: 24px;}
.tile-content {}
.tile-content p {margin-bottom: 0;}




/* BRANCH SELECT */
.branch-wrapper {margin-bottom: 200px; position: relative;}
.branch-block-headline {width: 100%; text-align: center;}
.branch-content {width: 100%; padding: 0 50px; box-sizing: border-box;}
.branch-select {max-width: 1400px; height: auto; margin: 0 auto; margin-top: 70px;}
.branchbutton {background: #D1121F; text-align: center; padding: 20px 15px; float: left; margin-right: 5px; font-size: 40px; color: #fff; transition: all 500ms;}
.branchbutton:hover {background: #2e4a97;}
.branchbutton.active {background: #2e4a97;}
.branch-slider-wrapper {border-top: solid 2px #D1121F; border-bottom: solid 2px #D1121F; width: 100%;}
.single-branch-slide {width: 100%; background-size: cover; background-position: 50% 50%;}
.branchslider .single-branch-slide  {height: 0px!important; }
.branchslider.active .single-branch-slide {display: block!important; height: 700px!important; margin: 0!important; padding: 0!important;}
.slick-slide {min-height: 0px!important;}
/*.sliderbottomborder {width: 100%; height: 2px; background: #D1121F; margin-top: -2px; z-index: 5000; position: relative;}*/
.branch-openingtimes {display: none; max-width: 400px; min-height: 200px; background: #D1121F; color: #fff; padding: 20px; box-sizing: border-box;}
.branch-openingtimes.active {display: block;}
.branch-openingcontent {max-width: 1400px; height: auto; margin: 0 auto; margin-top: -100px; position: relative; z-index: 100;}
.openingsheadline {font-family:'Lato-Medium'; font-size: 35px;}
.leftopenings {width: 50%; float: left;}
.rightopenings {width: 50%; float: left;}
.bookingbox {display: none; float: right;}
.bookingbox.active {display: block;}
.bookinglink {width: 235px; height: 60px; color: #fff;background: #D1121F;  text-align: center; line-height: 60px; text-transform: uppercase; margin-top: -60px;  transition: all 500ms;}
.bookinglink:hover {background: #2e4a97; }
.branch-wrapper.smallbotmargin {margin-bottom: 100px;}

.branch-data-wrapper {position: absolute; top: 0; width: 100%; height: auto; top: 75px;}
.branch-data-inner {position: relative; margin: 0 auto; max-width: 1400px; padding: 0 50pX;}
.branch-data {background: rgba(255, 255, 255, 0.8); width: 465pX; padding-top: 0px; display: none; min-height: 600px; box-sizing: border-box; transition: all 500ms;}
.branch-data.active {display: block;}
.branch-center {width: 100%; padding: 25px; padding-bottom: 0; box-sizing: border-box; text-align: center;}
.branch-openings-table {width: 100%; padding: 0 125px; box-sizing: border-box;}
.datablock {margin-bottom: 45px;}
.block-three {padding-bottom: 0!important;}
.branchbuttons {width: 465px;  grid-template-columns: 1fr 1fr; grid-gap: 20px; display: none; margin-top: 20pX;}
.branchbuttons.active {display: grid;}
.singlebranchbutton {background: #D1121F; color: #fff; height: 60pX; line-height: 60px; text-align: center; font-size: 22px; text-transform: uppercase; transition: all 500ms;}
.branch-data a:hover {text-decoration: none;}
.singlebranchbutton:hover {background: #2e4a97;}


/* BRANCHES NEW */
.Branch-Wrap {margin-bottom: 150px; position: relative;}
.Branch-Wrap.smallbotmargin {margin-bottom: 100px;}
.brunch-slider {width: 100%; border-top: solid 2px #D1121F; border-bottom: solid 2px #D1121F;}
.single-slide {width: 100%; background-size: cover; background-position: 50% 50%; display: block!important; height: 885px!important; margin: 0!important; padding: 0!important;}
.braches-small-wrap { position: absolute; width: 80%;left: 0;right: 0;margin-left: auto;margin-right: auto; height: auto; display: grid; grid-template-columns: 50% 50%; margin-top: 45px;}
.single-branch-wrap {margin: 0 auto; background: rgba(255, 255, 255, 0.8); width: 415pX;padding-top: 0px;min-height: 695px;box-sizing: border-box;transition: all 500ms; z-index: 5; position: relative;}
.single-branch-wrap h1 {width: 100%; text-align: center; padding-top: 40px;}
.single-branch-data {width: 100%; text-align: center;}
.single-branch-adress {margin-top: 25px;}
.single-branch-view {margin-top: 25px;}
.single-branch-view a {font-size: 22px;}
.single-branch-button {background: #D1121F; color: #fff;  line-height: 60px; text-align: center; font-size: 22px; text-transform: uppercase; transition: all 500ms;  position: absolute; bottom: -25px; left: 0;right: 0;margin-left: auto;margin-right: auto; height: auto;}
.single-branch-button.googlebutton {font-size: 20px; bottom: -50px;}
.single-branch-button.anfahrtbutton {bottom: unset; position: relative; width: 150px; margin-top: 20px;}
.single-branch-button:hover {background: #2e4a97;}
.termin-button {width: max-content; padding: 0 20px; z-index: 5;}
.braches-small-wrap .single-branch-wrap:nth-child(2) h1 {color: #2e4a97;}



/* TEAM GRID */
.teamgrid {display: grid; grid-template-columns: 33% 33% 33%; grid-gap: 100px 0; margin-bottom: 150px;}
.teamchef {margin-bottom: 100px; display: grid; grid-template-columns: 50% 50%;}

.single-team-member .teamname {color: #D1121F; position: absolute; bottom: -60px; width: 100%; text-align: center; font-weight: bold;}
.single-team-member {width: 100%; position: relative;}
.single-team-member .teamjob {color: #D1121F; font-weight: bold; margin-bottom: 25px;}
.single-team-member .teamdoings span {text-decoration: underline!important;}
.single-team-member .teamdoings p:nth-child(2) {margin-top: 0;}
.single-team-member .teamdoings {margin: 0!important; padding: 0!important;}
.single-team-member-image {position: relative; width: 300px; height: 300px; border-radius: 50%; border: solid 2px #D1121F; background-position: 50% 50%; z-index: 10; background-size: cover; margin: 0 auto;  margin-left: 50px; transition: all 300ms;}
.single-team-member-content {position: absolute; right: -20px; top: 45px;  width: calc(100% - 250px); opacity: 0; transition: all 600ms; z-index: 50;  padding: 15px; box-sizing: border-box;}
.single-team-member.active .single-team-member-image {margin-left: -30px!important;}
.single-team-member-content.active {opacity: 1;}

.teamchef .single-team-member-image {width: 350px; height: 350px; }
.teamchef .single-team-member-content {width: calc(100% - 300px); }



/* BILDTEXT */
.imagetext-content {max-width: 1400px; height: auto; margin: 0 auto; }
.imagetext-headline {width: 100%; text-align: center;}
.blockcontent {display: grid; grid-template-columns: 1fr 1fr; grid-gap: 50px; margin-top: 50px;}
.text-block-img {width: 100%; height: auto;}
.text-block-link {width: 235px; height: 60px; color: #fff;background: #D1121F;  text-align: center; line-height: 60px; text-transform: uppercase;  transition: all 500ms;}
.text-block-link:hover {background: #2e4a97; }
.contenttext {padding: 0 10px;}

/* LEISTUNGEN */
.serviceheadline {width: 100%; text-align: center; margin-bottom: 70px;}
.service-names-wrapper {max-width: 1400px; height: auto; margin: 0 auto; display: flex;justify-content: space-evenly;align-items: end;flex-direction: row;}
.service-images-wrapper {max-width: 100%; height: auto; margin-bottom: 130px; border-top: solid 2px #D1121F; border-bottom: solid 2px #D1121F;}
.nobotmargin {margin: 0!important;}
.servicename {color: #fff;background: #D1121F;  text-align: center; line-height: 60px; text-transform: uppercase; padding: 0 30px;  transition: all 500ms;}
.servicename:hover {background: #2e4a97;}
.servicename.active {background: #2e4a97;}
.serviceimage {display: none; width: 100%; height: 700px; background-size: cover; background-position: 50% 50%;}
.serviceimage.active {display: block;}

/* DESKTOP NAVIGATION */
#HeaderNaviWrapper #navigation{display: flex;justify-content: space-evenly;align-items: end; flex-direction: row;width: calc(100% - 330px); float: right; margin-top:35px; }
#HeaderNaviWrapper #navigation li{list-style-type: none;position: relative;margin-left: 0!important;}
#HeaderNaviWrapper #navigation li ul{display: none;position:absolute;left: 10px;width: fit-content;width: -moz-fit-content;min-width: 100px;}
#HeaderNaviWrapper #navigation li:hover > ul{display: block}
#HeaderNaviWrapper #navigation li ul li{padding: 10px; background: white;margin: 0;}
#HeaderNaviWrapper #navigation li ul li ul{position: absolute;left: 100%;margin: 0;top: 0;}
#HeaderNaviWrapper #navigation li a {text-decoration: none;font-size: 25px;color: #D1121F;}
#HeaderNaviWrapper #navigation li a:hover{color: #2e4a97;}
#HeaderNaviWrapper #navigation .anyActive > a {color: #2e4a97;}
/* END DESKTOP NAVIGATION */


/* FOOTER NAVIGATION */
#footernavigation{display: flex;list-style-type: none;color: #ffffff;justify-content: flex-end;grid-gap: 20px;}
#footernavigation li{margin-left: unset!important; margin-top: 15px;}
#footernavigation li a{color: #fff;text-decoration: none;}
#FooterNaviWrapper{position: relative;}
/* END FOOTER NAVIGATION */


/* FORMS */
.formRow{width: 100%; margin-bottom: 15px;}
.formRow input{width: 100%; height: 35px;box-sizing: border-box;padding: 0 5px;font-family: Arial, sans-serif;}
.formRow textarea{width: 100%; height: 200px;box-sizing: border-box;padding: 5px;font-family: Arial, sans-serif;}
.formRow #formsubmitbtn{cursor: pointer;}
/* END FORMS */

/* CONTACT */
.wrapperform {padding: 0 20px; box-sizing: border-box;}
.leftcontactform {float: left; width: 50%; padding-right: 15px; box-sizing: border-box; margin-bottom: 50px;}
.rightcontactform {float: right;  width: 50%; padding-left: 15px; box-sizing: border-box; margin-bottom: 50px;}
.wrapperform input[type="submit"] {background: #D1121F; color: #fff;  border: 0; font-family:'Lato-Medium'; font-size: 18px;}
.wrapperform textarea {font-family:'Lato-Medium';  font-size: 18px;}
.wrapperform input {font-family:'Lato-Medium';  font-size: 18px;}
.wrapperform input[type="submit"]:hover {background: #2e4a97;}


/* COOKIE BANNER */
#cookieBanner_modal {position:fixed;bottom:0;left:0;right:0;}
#cookieBanner_root {position:fixed;z-index:100;left:0;bottom:0;right:0;background:rgba(240,240,240,0.9);font-family:Arial, sans-serif;font-size: 14px;letter-spacing:unset;line-height:1.5;font-weight:normal;color:#000;}
.cookieBanner_contentwidth {position:relative;margin:20px auto 10px auto;max-width:1240px;padding:0 10px;box-sizing:border-box;}
.cookieBanner_title {font-weight:bold;font-size:20px;margin-bottom:5px;}
.cookieBanner_subtitle {margin-bottom:10px;}
.cookieBanner_options {position:relative;}
.cookieBanner_options_end {float:none;clear:both;}
.cookieBanner_optgroup {float:left;margin:0 40px 15px 0;}
.cookieBanner_optgroup_option {position:relative;margin-bottom:5px;}
.cookieBanner_optgroup_option input[type=checkbox] {width:auto;height:auto;margin:3px 0 0 0;padding:0;line-height:1;position:absolute;}
.cookieBanner_optgroup_option_label {padding:0 0 0 22px;position:relative;display:block;max-width:300px;}
.cookieBanner_optgroup_option_marked .cookieBanner_optgroup_option_label {font-weight:bold;}
.cookieBanner_optgroup_option_label label {margin-left:-22px;padding-left:22px;}
.cookieBanner_optgroup_option_label .plus, .cookieBanner_optgroup_option_label .minus {display:inline-block;width:16px;text-align:center;cursor:pointer;font-weight:normal;}
.cookieBanner_optgroup_option_description {font-size:12px;line-height:1.2;font-weight:normal;}
.cookieBanner_button {display:inline-block;border:0;border-radius:0;margin:0 10px 10px 0;padding:5px 10px;font-size:14px;outline:0;line-height:1.2;color:#333;cursor:pointer;}
.cookieBanner_button.cookieBanner_button_primary {background:#333;color:#fff;}
.cookieBanner_button.cookieBanner_button_primary:hover {background:#D1121F;color:#fff;}
.cookieBanner_button.cookieBanner_button_secondary {background:#333;color:#fff;}
.cookieBanner_button.cookieBanner_button_secondary:hover {background:#D1121F;color:#fff;}
@media screen and (max-width: 720px) {
    #cookieBanner_root {max-height:100%;overflow:auto;-webkit-overflow-scrolling:touch;}
    .cookieBanner_contentwidth {margin:10px auto 0 auto;}
    .cookieBanner_button {padding:5px 5px;margin:0 5px 10px 0;}
}
/* ENDE COOKIE BANNER */





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

    .single-team-member-content {right: 50px; width: calc(100% - 300px);}
    .teamchef .single-team-member-content {width: calc(100% - 350px); }
    .single-team-member.active .single-team-member-image {margin-left: -15px!important;}

    .single-team-member-image {
        position: relative;
        width: 250px;
        height: 250px;
    }

    .teamchef .single-team-member-image {
        width: 300px;
        height: 300px;
    }



}



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


    .singleSlide {height: 600px !important;}
    /* .branchslider.active .single-branch-slide {height: 500px!important;} */
    .serviceimage {height: 500px;}

    .servicename {font-size: 18px!important; padding: 0 20px;}
    .two-col-content {grid-gap: 100px; margin-top: 65px;}

    .default-wrapper, .branch-wrapper {margin-bottom: 50px;}

    .service-images-wrapper {margin-bottom: 110px;}

    #HeaderNaviWrapper ol li, #HeaderNaviWrapper ul li {
        padding-left: 0;
    }




}




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

    #HeaderNaviWrapper #navigation li a {
        font-size: 18px;
        color: #D1121F;
    }

}


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

    .teamgrid {grid-gap: 100px 0; margin-bottom: 150px;}
    .teamchef {grid-gap: 100px 0; margin-bottom: 100px;}
    .single-team-member-image {background-size: cover; margin-left: unset; margin: 0 auto; transition: all 300ms; z-index: 10; }
    .single-team-member-content {opacity: 0; height: 0; position: relative; top: 80px; display: none;}
    .single-team-member.active .single-team-member-image {margin: 0 auto!important; }
    .single-team-member-content.active {opacity: 1; right: 0; height: auto; width: 300px; margin: 0 auto; margin-bottom: 30px; display: block;}

    .teamchef {grid-template-columns: 33% 33% 33%;}

}



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

    .singleSlide {height: 500px !important;}
    /* .branchslider.active .single-branch-slide {height: 400px!important;} */
    .serviceimage {height: 400px;}

    .servicename {font-size: 16px!important; line-height: 45px;}
    .two-col-content {grid-gap: 50px; margin-top: 45px;}

    .default-wrapper, .branch-wrapper {margin-bottom: 50px; }
    .default-wrapper {}
    #header {padding: 0 20px;}
    .branch-content {}
    .branch-data-inner {padding: 0 20pX;}


    .service-images-wrapper {margin-bottom: 90px;}

    .braches-small-wrap {width: 90%;}
    .single-branch-wrap h1 {font-size: 40px;}
    .single-branch-wrap {width: 350pX;}


}


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

    h1 {font-size: 40px;}

    .service-names-wrapper {position: absolute; display: grid;}
    .branchbutton {padding: 15px 10px;  font-size: 35px;}

    body {font-size: 18px;}

    #headerSlider-Wrapper {margin-bottom: 80px;}

    .two-col-content {margin-top: 25px;}


    .branch-data {width: 395pX;}
    .branch-data-wrapper { top: 65px;}
    .branch-openings-table {padding: 0 115px;}
    .branchbuttons {width: 395px;}
    .singlebranchbutton {font-size: 18px;}

    .braches-small-wrap {width: 95%; margin-top: 45px;}
    .single-branch-wrap {min-height: auto; padding-bottom: 60px; margin-bottom: 50px;}

    .braches-small-wrap {grid-template-columns: 100%; gap: 50px 0;}
    .single-branch-wrap h1 {padding-top: 20px;}
    .single-branch-adress {margin-top: 15px;}
    .single-branch-view {margin-top: 15px;}

    .single-slide {height: 1600px !important;}

    .wrapperform {padding: 0 20px; box-sizing: border-box;}
    .leftcontactform {float: unset; width: 100%; padding-right: 0px; margin-bottom: 50px;}
    .rightcontactform {float: unset;  width: 100%; padding-left: 0px; margin-bottom: 50px;}


    .teamgrid {
        grid-gap: 100px 0;
        grid-template-columns: 50% 50%;
    }
    .teamchef {
        grid-template-columns: 50% 50%;
    }

}

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

    .tiles-contents {grid-template-columns: 100%;}

    h1 {font-size: 30px;}

    .serviceheadline {margin-bottom: 35px;}

    body {font-size: 18px;}
    .default-wrapper.nobotmargin {padding: 0;}
    .two-col-content {grid-template-columns: 1fr; grid-gap: 0;}


    /* .branchslider.active .single-branch-slide {height: 300px!important;} */
    .serviceimage {height: 300px;}
    .servicename {width: 100%; padding: 0;}

    .service-names-wrapper {position: relative; display: grid; justify-content: initial;}


    .bookinglink {margin-top: -10px;}

    .default-wrapper {padding: 0 10px;}
    #header {padding: 0 10px;}


    .blockcontent {margin-top: 25px; display: grid; grid-template-columns: 1fr ; grid-gap: 0px;}



    .bookinglink, .text-block-link {font-size: 18px;}

    #footernavigation {grid-gap: 5px;}

    #footer {padding: 0;}

    #headerSlider-Wrapper {margin-bottom: 50px;}

    .two-col-content {margin-top: 5px;}




    .braches-small-wrap {width: 95%; margin-top: 45px;}
    .single-branch-wrap {min-height: auto; padding-bottom: 60px; width: 80%;}

    .braches-small-wrap {grid-template-columns: 100%; gap: 50px 0;}
    .single-branch-wrap h1 {padding-top: 20px;}
    .single-branch-adress {margin-top: 15px;}
    .single-branch-view {margin-top: 15px;}


    .teamgrid {grid-gap: 100px 0; margin-bottom: 100px; grid-template-columns: 100%;}
    .teamchef {grid-gap: 100px 0; margin-bottom: 100px; grid-template-columns: 100%;}
    .single-team-member-image {background-size: cover; margin-left: unset; margin: 0 auto; z-index: 10; }
    .single-team-member-content {opacity: 0; height: 0; position: relative; }
    .single-team-member-image.active {margin: 0 auto; }
    .single-team-member-content.active {opacity: 1;  width: 100%; margin: 0 auto; margin-bottom: 30px; }
    .single-team-member-content {padding: 0px;}
    #content {padding: 0 10px;}


    /*
     .singleSlide {height: 350px !important;}
     .branchbutton {padding: 10px 10px;  font-size: 20px;}
     .branch-openingtimes {max-width: 100%;}
    .branch-content {padding: 0 15px;}
    .branch-data {width: 100%;}
    .branch-data-wrapper { top: 55px;}
    .branch-openings-table {padding: 0 115px;}
    .branchbuttons {width: 100%;}
    .singlebranchbutton {font-size: 18px;}
    .branch-data-inner {padding: 0 15pX;}
    */


}
