:root{
    --white: #ffffff;
    --dark: #000000;
    --red: #F3190D;
    --font: #151D2A;
    --grey: #EBEBEB;
}

body,html,*{font-size:19px;line-height:1.6;font-family:'Inter';font-weight:300;}
html{scroll-behavior: smooth;overflow-x:hidden;}

a{color:var(--button);text-decoration:none;font-size:100%;font-weight:700;transition:all .3s ease;}
a:hover{text-decoration:none;color:var(--red);transition:all .3s ease;}
a:focus{text-decoration:none;}
a:not([href]):not([tabindex]){color:var(--main)}
p a{letter-spacing:0.2px;}

.fancybox-lock .fancybox-overlay{background:rgba(0,0,0,0.8);}

.post-password-form{position: fixed; background: url('media/backgroundimage.webp'); background-repeat: no-repeat; background-size: cover; background-position: center; 
    z-index: 999; top: 0; bottom: 0; left: 0; right: 0;}
.startseite-login{width: 40%; background-color: white; margin: auto; padding: 30px; border-radius: 30px; position: relative; top: 25%;}
.startseite-login .login-bild{display: block; width: 200px; height: auto; margin: 0 auto 30px auto;}
.startseite-login label{color: white; width: 100%;}
.startseite-login input[name="post_password"]{width: 80%; border: 2px solid #ededed; margin: 0 auto; border-radius: 10px; padding: 20px;}
.startseite-login input[name="Submit"]{width: fit-content; display: block; margin: 50px auto 0 auto; background-color: black; color: white; border-radius: 10px; padding: 10px 35px;}
.login-footer{display:none;width:100vw; position: fixed; bottom: 0; z-index: 1000; height: 40px; background-color: black;}
.login-footer .container{height: 100%; align-content: center;}
.login-footer span{float:left;width:50%;text-align:left;color:white;font-size:75%;}
.login-footer .impressum{float: right; width: fit-content; padding-left: 20px;font-size:75%;color:white}


ul{padding:0;margin:0;}
ul li{list-style:none;position:relative;padding-left:20px;margin:25px 0 25px 30px;}
ul li::before{content: ''; position: absolute; left: -30px; background: url('media/arrow-right.svg'); background-repeat: no-repeat; width: 30px; height: 35px; display: block; filter: invert(100%);}

img{max-width:100%;height:auto;}
img.alignright{float:right;margin-left:50px;margin-bottom:50px;}

h1{font-size:325%;font-weight:800;display:block;width:max-content;position:relative;color:var(--dark);margin:0;line-height:1.4;}
h2{font-size:200%;font-weight:800;display:block;color:var(--dark);margin:0;line-height:1.4;}
h3{font-size:150%;font-weight:800;display:block;color:var(--dark);margin:0;line-height:1.4;}

.headline{font-size:330%;font-weight:500;display:block;color:var(--dark);margin:0 0 15px;line-height:1.2;width:100%;}
.headline em{font-size: 100%; font-weight: inherit; font-style: normal; text-decoration: underline; line-height: 1.2;}
.headline.breit{width: 100%; z-index: 1; margin-bottom: 50px;position: relative;}
.headline.klein{font-size: 160%; line-height: 1.5; margin-bottom: 30px;}
.headline.extrabreit{width: 140%; margin-bottom: 50px;}
.subline{font-size:130%;font-weight:300;display:block;color:var(--sec);position:relative;margin-bottom:15px;margin-top:-15px; z-index: 1;}
.subline.toppadding{font-size:100%;font-weight:300;display:list-item;color:var(--sec);position:relative;margin-bottom:15px;margin-top: 50px; margin-left: 20px;}
.subline.top{font-size:100%;font-weight:300;display:list-item;color:var(--sec);position:relative;margin-bottom:15px; margin-left: 20px;}
.inhalt.schmal{width: 80%;}
.bild{position: relative;}
.bild.breit{height: 100%; object-fit: cover; border-radius: 20px;}
.bild.breit.klein{height: 55%; position: absolute; bottom: 0; width: calc(100% - 30px);}
.text.schmal{width: 50%; margin-top: 190px; z-index: 1;}
.flx_textblock.mitbildlinks{position: relative;}
.flx_textblock.mitbildrechts{position: relative;}
.flx_textblockhintergrund{position: relative;padding-bottom:200px!important;}
.flx_textblockhintergrund::after{position: absolute;content: '';background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);bottom: 0; right: 0;height: 100%;width: 100%;}

.btn.akademie{font-size: 120%; color:var(--white);display:inline-block;background:var(--button);border-radius:10px; padding: 8px 35px; margin-top: 35px; font-weight: 300;}
.btn.akademie::after{content: '';background: url('media/arrow-right.svg'); background-repeat: no-repeat; width: 30px; height: 35px; display: inline-block; margin: auto 0 auto 10px; filter: invert(100%); vertical-align: middle;}
.btn.akademie:hover{color: white; text-decoration: underline;}

.headline.left{text-align:left;}
.headline.center{text-align:center;}
.headline.right{text-align:right;}
.subline.left{text-align:left;}
.subline.center{text-align:center;}
.subline.right{text-align:right;}


.btn{position:relative;padding:5px 20px;font-size:100%;font-weight:500;background:var(--button);color:var(--white);transition:all .3s ease;line-height:1.5;text-align:center;border-radius:20px;}
.btn:hover{background:var(--dark);transition:all .3s ease;color:var(--white);}
.btn.disabled, .btn:disabled{opacity:1;}
.buttonfullwidth .btn{display:block;width:100%;}

.btn.arrow{background:transparent;color:var(--dark);padding:20px 0;position:relative;}
.btn.arrow:hover:before{right:-20px;transition:all .3s ease;}

strong{font-weight:500;font-size:100%;}

.container{max-width:1400px;}
.container.wide{max-width:1800px;}

.owl-carousel .owl-nav{position:absolute;top:50%;transform:translateY(-50%);width:100%;}
.owl-carousel .owl-nav .owl-prev{position:absolute;top:0;left:-50px;display:block;width:20px;height:35px;background-size:cover;background-position:center;background-repeat:no-repeat;}
.owl-carousel .owl-nav .owl-next{position:absolute;top:0;left:unset;right:-50px;display:block;width:20px;height:35px;background-size:cover;background-position:center;background-repeat:no-repeat;transform:rotate(180deg);}

input, textarea, select{background:#f2f2f2;padding:5px 15px;color: var(--font);font-size:100%;margin-bottom:0px;border:none;box-shadow:none;line-height:1;width:100%;}
input[type="checkbox"]{margin:0;width:15px;}
input[type="submit"]{margin:15px 0;}

.wpcf7-list-item-label{color:var(--font);}
.wpcf7-list-item{margin:0;}
.wpcf7-form label{padding:0!important;}

button.formkit-submit span{font-weight:500;color:#fff;font-size:125%;line-height:1;}

.masonrygrid .grid-item{width:310px;}

#sprungmarke{margin-top:-150px;padding-top:150px!important;}

.buttonrow{width: 140%;}

.aos-init[data-aos][data-aos].aos-animate {
    transform: unset;
}
/*------------------------------------Header-------------------------------------------------*/

#page-header{position:absolute;top:0;right:0;left:0;padding:35px 0;z-index:999; background-color: white;}
#page-header .logo img{width:45%;}
#page-header.bottom{padding:15px 0;position:fixed;top:0;left:0;right:0;background: white;-webkit-animation: fadein 1s; /* Safari, Chrome and Opera > 12.1 */-moz-animation: fadein 1s; /* Firefox < 16 */-ms-animation: fadein 1s; /* Internet Explorer */-o-animation: fadein 1s; /* Opera < 12.1 */animation: fadein 1s;-webkit-box-shadow: 0px 10px 50px -25px rgba(0,0,0,0.5);-moz-box-shadow: 0px 10px 50px -25px rgba(0,0,0,0.5);box-shadow: 0px 10px 50px -25px rgba(0,0,0,0.5);z-index:999;}
#page-header.bottom .logo img{width:35%; margin-bottom: -15px; margin-top: -15px;}
#page-header.bottom #toppermenu{padding-bottom: 0; align-items: center;}

@keyframes fadein {
    from { top: -100px; }
    to   { top: 0; }
}
@-moz-keyframes fadein {
    from { top: -100px; }
    to   { top: 0; }
}
@-webkit-keyframes fadein {
    from { top: -100px; }
    to   { top: 0; }
}
@-ms-keyframes fadein {
    from { top: -100px; }
    to   { top: 0; }
}

#page-header #toppermenu{display:flex;align-items:end; padding-bottom: 20px;}
#page-header #toppermenu .menu{text-align:center;}
#page-header #toppermenu .menu li{display:inline-block;margin:0;padding:0;}
#page-header #toppermenu .menu li:before{display:none;}
#page-header #toppermenu .menu-topmenu-container{margin: 0 0 0 auto}
#page-header #toppermenu .menu li a{font-size: 20px; font-weight:300;display:block;padding: 0 25px;color:black;}
#page-header #toppermenu .menu li > a:hover{transition: all 0s ease; text-decoration: underline;}
#page-header #toppermenu .menu > li:last-child{padding-left:30px;}
#page-header #toppermenu .menu > li:last-child a{font-size: 22px; color:var(--white);display:inline-block;background:var(--button);border-radius:10px; padding: 8px 35px;}
#page-header #toppermenu .menu > li:last-child a::after{content: '';background: url('media/arrow-right.svg'); background-repeat: no-repeat; width: 30px; height: 35px; display: inline-block; margin: auto 0 auto 10px; filter: invert(100%); vertical-align: middle;}
#page-header #toppermenu .menu > li:last-child:after{display:none;}
#page-header #toppermenu .menu li.menu-item-has-children .sub-menu{display:none;position:absolute;top:39px;left:0;width:300px;background:var(--grey);-webkit-box-shadow: 0px 10px 50px -25px rgba(0,0,0,0.5);-moz-box-shadow: 0px 10px 50px -25px rgba(0,0,0,0.5);box-shadow: 0px 10px 50px -25px rgba(0,0,0,0.5);z-index:1000;text-align:left;padding:10px 0 30px 0px;}
#page-header #toppermenu .menu li.menu-item-has-children:hover > .sub-menu{display:block;}
#page-header #toppermenu .menu li.menu-item-has-children .sub-menu li{padding:0px 15px;width:100%;text-align:left;}
#page-header #toppermenu .menu li.menu-item-has-children .sub-menu li a:hover{background: var(--white);}
#page-header #toppermenu .menu li.menu-item-has-children .sub-menu li a{padding: 15px 20px;color: var(--dark);border-bottom: 1px solid #d3cdcd;}
/* #page-header #toppermenu .menu li.menu-item-has-children .sub-menu li.current-menu-item > a{color:var(--red);} */
#page-header #toppermenu .menu li.menu-item-has-children .sub-menu li.current-menu-item:after{display:none;}
#page-header #toppermenu .menu li.menu-item-has-children .sub-menu li.menu-item-has-children .sub-menu{left:100%;top:-10px;background:var(--sec);}
#page-header #toppermenu .menu li.menu-item-has-children .sub-menu li.menu-item-has-children .sub-menu li a{color:var(--white);}

/*------------------------------------Footer-------------------------------------------------*/

#page-footer{background:black;padding:50px 0 15px;position: relative;z-index:5;}
#page-footer img{max-width:65%;}
#page-footer .headline{font-size:125%;margin-bottom:15px;color: var(--grey);}
#page-footer li:before{display:none;}

#page-footer a{position:relative;color:var(--white);display:block;margin-bottom:0;font-weight: 300;}
#page-footer a:hover{transition:all .3s ease;color:var(--main);}
#page-footer .adresse{position:relative;color:var(--white);display:block;margin-bottom:10px;}
#page-footer .telefonnummer{margin-top: 40px;}
#page-footer .mail-adresse{margin-top: 40px;}
#page-footer .social{margin-top: 40px;text-align: right;}
#page-footer .social a{padding: 5px 0;}

#page-footer .copyright{display:block;width:100%;margin-top:50px; margin-bottom: 25px; border-top: 1px solid #696969;padding-top: 15px;}
#page-footer .copyright span{float:left;width:50%;text-align:left;color:var(--white);font-size:75%;}
#page-footer .copyright .impressum{float: right; width: fit-content; padding-left: 20px;font-size:75%;}
#page-footer .copyright .menu-footermenu-container{float:left;width:50%;text-align:right;}
#page-footer .copyright .menu-footermenu-container ul{line-height:1;}
#page-footer .copyright .menu-footermenu-container ul li{display:inline-block;padding:0 5px;color:var(--dark);font-size:75%;position:relative;margin:0;}
#page-footer .copyright .menu-footermenu-container ul li:after{content:'|';position:absolute;top:5px;right:-5px;}
#page-footer .copyright .menu-footermenu-container ul li:last-child:after{display:none;}
#page-footer .copyright .menu-footermenu-container ul li a{padding:0;margin:0;font-weight: 300;}

/*------------------------------ACF-Flexible-Content-----------------------------------------*/
div[class^="flx_"], div[class*="flx_"]{padding:100px 0;}

.inhaltsbloecke{overflow:hidden;margin-top:175px;}

.flx_headerblock{position:relative;padding-top:0!important;}
.flx_headerblock img{width:100%;height:auto;}
.flx_headerblock .content{position:absolute;bottom:50%;z-index:10;width:40%;}
.flx_headerblock .content p{max-width:90%;font-size:125%;margin:35px 0;color:var(--white);}
.flx_headerblock .content a{font-size:100%;}
.flx_headerblock .content .headline{font-size:450%;font-weight:500;color:var(--white);line-height:1;}
.flx_headerblock .content .subline{font-size:150%;font-weight:400;color:var(--white);}
.flx_headerblock .kacheln{margin-top:-125px;}
.flx_headerblock .kacheln .item{padding:35px;background: rgba(235, 235, 235, 0.7);box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);backdrop-filter: blur(2.9px);border-radius:15px;}
.flx_headerblock .kacheln .item .icon{max-height:50px;width:auto;}
.flx_headerblock .kacheln .item .headline{color:var(--font);font-weight:500;margin:15px 0;font-size:175%;}
.flx_headerblock .kacheln .item .content{position:unset;width:100%;}
.flx_headerblock .kacheln .item .content p{font-size:100%;max-width:100%;margin:0;color:var(--dark);}
.flx_headerblock .kacheln .item .btn{margin:25px auto 0;}

.flx_headerblock.mitbild .bildwrapper{position:relative;}
.flx_headerblock.mitbild .bildwrapper:before{content:'';position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg, rgba(0,0,0,0.9) 0, rgba(0,0,0,0) 60%);}

.flx_headerblock.mitvideo .videowrapper{position:relative;}
.flx_headerblock.mitvideo .videowrapper:before{content:'';position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg, rgba(0,0,0,0.9) 0, rgba(0,0,0,0) 60%);}

.flx_headerblock.mitfarbe{height:250px;}
.flx_headerblock.mitfarbe .content{top:unset;bottom:30%;width:100%;}
.flx_headerblock.mitfarbe .content .headline{color:var(--white);}

.flx_headerblock.mitvideo video{margin-bottom:-10px;}

.flx_textblock .text ul{margin:25px 0;}
.flx_textblock.akademie .container{padding: 100px; border-radius: 30px;}
.flx_textblock.akademie .inhalt{width: 90%;}
.flx_textblock.akademie .akademieimg{scale: 1.4;}
.flx_textblock.akademie .button{margin: 10px 0;}
.flx_textblock.akademie .button.kontaktbutton{cursor: pointer;}

.flx_bildblock .imagewrapper{margin-bottom:30px;}

.flx_iconblock .left p{width:100%;margin:15px 0;}
.flx_iconblock .left img{margin-top:25px;}
.flx_iconblock .item{padding:15px 25px;}
.flx_iconblock .item img{width:17.5%;margin:0 0 25px;display:block;}
.flx_iconblock .item .inhalt{text-align:left;}
.flx_iconblock .item .inhalt .headline{font-size:125%;margin-bottom:15px;}
.flx_iconblock .mobile{display:none;}

.flx_kachelblock{position:relative;}
.flx_kachelblock .icon{position:absolute;bottom:15%;left:-35px;opacity:0.15;width:20%;}
.flx_kachelblock.textrechts .icon{left:unset;right:-35px;}
.flx_kachelblock .icon img{width:100%;}
.flx_kachelblock .kachel{margin:15px 0;padding:0 20px;}
.flx_kachelblock .contentwrapper{height:50%;display:block;}
.flx_kachelblock .contentwrapper .content{position:sticky;top:125px;}
.flx_kachelblock .item{padding:35px;height:105%;border: solid 2px var(--grey); border-radius: 20px;}
.flx_kachelblock .item img{width:25%;margin:0 0 25px 0;display:block;}
.flx_kachelblock .item .inhalt{text-align:left;}
.flx_kachelblock .item .inhalt .headline{font-size:125%;margin-bottom:15px;font-weight:500;}

.flx_kachelblock .left p{width:100%;margin:15px 0;}
.flx_kachelblock .left ul{margin:35px 0;}
.flx_kachelblock .right .kachel:nth-child(2n - 1) .item{margin:-50px 0 0 0!important;}
.flx_kachelblock .right .kachel:nth-child(2n + 1) .item{margin:-50px 0 50px 0!important;}
.flx_kachelblock .right .kachel:nth-child(2n) .item{margin:-200px 0 0 0!important;}
.flx_kachelblock .right .kachel{margin-bottom:30px;}

.flx_kundenstimmen{background: #f7f7f7; position: relative;}
.flx_kundenstimmen .container.kundencontainer{margin-bottom: 420px;}
.flx_kundenstimmen .headline{color: black;}
.flx_kundenstimmen .inhalt{width: 90%;}
.flx_kundenstimmen .kundenstimmencol{width: 54vw; position: absolute; right: 0; padding: 0;}
.flx_kundenstimmen .item {cursor: pointer;}
.flx_kundenstimmen .item div[class^="preview"] p{display: -webkit-box; -webkit-line-clamp: 4; line-clamp: 4; -webkit-box-orient: vertical;}
.flx_kundenstimmen .item div[class^="fullItem"], div[class*="fullItem"]{display: none; position: fixed; padding: 55px; background-color: #ededed; width: 1000px; z-index: 9999; color: black;
    top: 50%; /* Centers vertically */
    left: 50%; /* Centers horizontally */
    transform: translate(-50%, -50%);}

.flx_kundenstimmen .kundenheadline{display: block; font-weight: 500;}
.flx_kundenstimmen .fullStimme .text{align-content: center;}
.flx_kundenstimmen .fullStimme .nameheadline{display: block; margin-bottom: 30px;}
.flx_kundenstimmen .fullStimme .bild{align-content: center;}

.flx_kundenstimmen .item{background: white;padding: 50px 60px 50px 70px;margin-top:250px; border-radius: 20px; position: relative;}
.flx_kundenstimmen .item .kundenheadline{font-size:115%;text-align: left;display:block;margin-bottom:25px;width: fit-content;position: absolute;left: 220px;top: 100px; right: 60px; font-weight: 500;}
.flx_kundenstimmen .item .kundenheadline .nameheadline{font-weight: 300; display: block;}
.flx_kundenstimmen .item p{display:block;line-height:1.4;font-size:110%;font-weight:300;width:90%;text-align: left; max-height: 250px; overflow: hidden;}
.flx_kundenstimmen .item .name{text-align: left;display:block;font-size:125%;margin:25px 0; font-weight: 500;}
.flx_kundenstimmen .item .name .personbild{display:inline-block;width:120px;height:120px;margin-bottom: 15px;border-radius:50%;}
.flx_kundenstimmen .item .zitat{position: absolute; width: 150px; height: 150px; top: -50px; right: 70px;}

.owl-carousel .owl-nav{bottom: 40px; top: auto;}
.owl-carousel .owl-nav .owl-prev{left: -170px;}
.owl-carousel .owl-nav .owl-next{left: -100px; transform: none;}
.nav-btn.prev-slide{background: url('media/arrow-left.svg'); height: 40px; width: 40px; background-repeat: no-repeat;background-position: center;}
.nav-btn.next-slide{background: url('media/arrow-right.svg'); height: 40px; width: 40px; background-repeat: no-repeat;background-position: center;}

.flx_kontaktformular .text{padding-right: 100px;}
.flx_kontaktformular .inhalt{width: 90%;}
.flx_kontaktformular .kontaktcol{margin-top: 15px;}
.wpcf7-form-control{width: 100%; border: none; padding: 10px 30px; border-radius: 10px; color: var(--sec);}
.wpcf7-form-control.wpcf7-textarea{height: 200px; padding: 15px 30px;}
.flx_kontaktformular .wpcf7-form-control.wpcf7-submit{background-color: black; color: white; padding: 0; border-radius: 0; margin-left: -20px; padding: 3px;}
.flx_kontaktformular .wpcf7-form-control.wpcf7-submit:hover{text-decoration: underline;}
.flx_kontaktformular .wpcf7-spinner{position: absolute; left: 250px;}
.kontaktright p{text-align: left; margin: 0; width: 220px;}
.kontaktright p{font-size: 120%; position: relative; color:var(--white);background:var(--button);border-radius:10px; padding: 0 35px; margin: 0; font-weight: 300;}
.kontaktright p::after{content: ''; position: absolute; top: 15px; right: 40px; background: url('media/arrow-right.svg'); background-repeat: no-repeat; width: 30px; height: 35px; display: block; filter: invert(100%);}
/* .kontaktright p:hover{color: white; text-decoration: underline;} */
.flx_kontaktformular .kontaktleft p{color: var(--third);}

.btn.kontaktright{font-size: 120%; position: relative; color:var(--white);background:var(--button);border-radius:10px; padding: 0 35px; margin: 0 15px; font-weight: 300;}
.btn.kontaktright::after{content: ''; position: absolute; top: 9px; right: 40px; background: url('media/arrow-right.svg'); background-repeat: no-repeat; width: 30px; height: 35px; display: block; filter: invert(100%);}
.btn.kontaktright:hover{color: white; text-decoration: underline;}



.flx_kontaktformular .breit input {background:var(--white);width:100%;border-radius: 5px;}
.flx_kontaktformular .breit .wpcf7-form-control.wpcf7-textarea{background: var(--white)!important;}
.flx_kontaktformular .breit select {border-radius: 5px;}
.flx_kontaktformular .breit .headline {margin-bottom: 35px;}
.flx_kontaktformular .breit input[type="checkbox"]{width:15px; height: 15px; display: inline-block;margin-right: 10px;}
.flx_kontaktformular .breit input[type="submit"]{position:relative;padding:5px 20px;font-size:100%;font-weight:500;background:var(--button);color:var(--white);transition:all .3s ease;line-height:1.5;text-align:center;border-radius:20px;width: 250px;}
.flx_kontaktformular .breit input[type="submit"]:hover{background:var(--dark);transition:all .3s ease;color:var(--white);}
.flx_kontaktformular .breit .links{ flex:1}
.flx_kontaktformular .breit .links p:nth-of-type(4){ margin-bottom:5px;}
.flx_kontaktformular .breit .links .wpcf7-form-control-wrap{ display: flex;}
.flx_kontaktformular .breit .schmal{ width: 50%;}
.flx_kontaktformular .breit .rechts{padding-left: 40px; flex:1}
.flx_kontaktformular .breit .rechts span{display: flex;justify-content: right;}
.flx_kontaktformular .breit a{color: var(--font); font-size: 110%;position: relative;font-weight: 400;}
.flx_kontaktformular .breit span.head{font-weight: 400;}

.flx_faqblock .accordion{margin:250px 0 50px 0;}    
.flx_faqblock.breit .accordion{margin: 50px 0 50px 0;}
.flx_faqblock.breit .inhalt{width: 90%;}
.flx_faqblock .accordion-item{padding:0;margin:5px 0;border-top: none; border-left: none; border-right: none; background:none;}
.flx_faqblock .accordion-item .accordion-header{border-radius:10px;margin:0 5px;font-size:125%;}
.flx_faqblock button{width:100%;margin:0;border-radius:0; margin-left: 40px; font-size:120%; font-weight: 500; background:none!important;text-align:left;color:black!important;position:relative;outline:none!important;box-shadow: none!important;transition:all .3s ease;}
.flx_faqblock button:hover{opacity:0.8;;transition:all .3s ease;}
.flx_faqblock button::before{content:''; position: absolute; display: block; background: url('media/open.svg'); background-repeat: no-repeat; width: 30px; height: 30px; left: -20px; top: 33px;}
.flx_faqblock button:after{display: none;}
.flx_faqblock button.collapsed{border:none;}
.flx_faqblock button.collapsed::before{content:''; display: block; background: url('media/collapsed.svg'); background-repeat: no-repeat; width: 30px; height: 30px; padding-right: 50px;}
.flx_faqblock button.collapsed:after{display: none}
.flx_faqblock .accordion-body{padding:15px 80px 15px 15px; margin-left: 55px;}

.flx_leistungen .headerbox{margin-bottom:25px;}
.flx_leistungen .item{padding:30px 15px;}
.flx_leistungen .item .headline{font-size:175%;margin:15px 0;}
.flx_leistungen .item .preiswrapper{margin:15px 0;text-align:right;}
.flx_leistungen .item .preiswrapper .preis{font-size:250%;font-weight:500;display:inline-block;margin:0 10px;}
.flx_leistungen .item .preiswrapper .preis-zusatz{font-size:150%;font-weight:500;display:inline-block;}
.flx_leistungen .button{margin-top:25px;text-align:center;}

.flx_ubermich .subline.top{margin-top: 0;}
.flx_ubermich .bild{padding-left: 120px;}
.flx_ubermich .kontaktinfos{font-weight: 400; margin-top: 40px;}
.flx_ubermich .telefon{display: block; font-weight: 300; margin-top: 30px; position: relative; margin-left: 30px;}
.flx_ubermich .telefon::before{content: ''; display: block; position: absolute; left: -28px; top: 5px; height: 30px; width: 30px; background: url('media/telefon.svg'); background-repeat: no-repeat;}
.flx_ubermich .mail{display: block; font-weight: 300; position: relative; margin-top: 10px; margin-left: 30px;}
.flx_ubermich .mail::before{content: ''; display: block; position: absolute; left: -28px; top: 6px; height: 30px; width: 30px; background: url('media/mail.svg'); background-repeat: no-repeat;}

.flx_bildslider .headline{margin-bottom: 50px;}
.flx_bildslider .owl-carousel .owl-nav{position: unset;}
.flx_bildslider .owl-carousel .owl-nav .owl-prev{left: 0!important;}
.flx_bildslider .owl-carousel .owl-nav .owl-next{left: 70px;}

.flx_bildslider .item img{width:100%;height:350px;object-fit:cover;}
.flx_bildslider .item .beschreibung{padding: 5px 15px;background: #fff;display: block;width: max-content;position: absolute;bottom: 10px;left: 0;}

.flx_headerblock.mitvideo video {width: 100%;height: 75vh;object-fit: cover;object-position: center;}

.backgroundshadow{opacity: 0.8; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; display: none; background-color: black; z-index: 999;}
.akademiekontakt{display: none; position: fixed; width: 500px; background-color: #ededed; padding: 50px 50px 20px 50px; z-index: 9999;top: 50%;left: 50%;transform: translate(-50%, -50%);}
.closebtn{display: block; position: absolute; top: 5px; right: 5px; height: 50px; width: 50px; background-color: #ededed;cursor: pointer;}
.akademiekontakt .wpcf7-form-control.wpcf7-submit{position: relative; font-size: 120%; color:var(--white);background:var(--button);border-radius:10px; padding: 10px 35px; font-weight: 300; width: 50%; margin: 10px 0; left: 50%; transform: translate(-50%);}
.akademiekontakt .wpcf7-form-control.wpcf7-submit:hover{text-decoration: underline;}
.akademiekontakt .wpcf7-spinner{position: absolute; left: 0; margin-top: 40px;}
.kontaktueberschrift{padding-bottom: 20px; color: #757575;}
/*----------------------------------Abweichungen---------------------------------------------*/

#kontakt{padding-top:150px;}

.impressum .flx_textblock .text ul{margin:0;}

.ueber-mich .flx_headerblock .content{top:35%;}

.ueber-uns .flx_headerblock .content{bottom:15%;}

#team.flx_textblock p{color:#ffffff;}
#team.flx_textblock .btn{background:#fff;color:#000;margin-top:25px}


/*-------------------------------------------------------------------------------------------*/
@media (max-width:1780px){
    /* .flx_kundenstimmen .container.kundencontainer{margin-bottom: 550px;} */
}

@media (max-width:1480px){

    /* .inhaltsbloecke{margin-top:0px;} */

    .headline, h2{font-size:175%;}
    /* .container{padding:0 35px;} */

    #page-header #toppermenu .menu li a{padding:5px 20px;}
    #page-header #toppermenu .menu > li:last-child{padding-left:15px;}
    #page-header #toppermenu {justify-content: right;}
    #page-header .logo img {width: 35%;}

    .flx_headerblock .content .headline {font-size: 365%; margin-top: 50px;}
    .flx_headerblock.mitvideo video {height: 55vh;}
    .flx_headerblock .kacheln .item {min-height: 250px;}

    .flx_kachelblock .icon {left: 45px;}
    .flx_kachelblock.textrechts .icon {right: 45px;}
    .flx_headerblock .kacheln {margin-top: -95px;}

    .flx_headerblock .content{bottom:60%;width:60%;}

    .flx_kundenstimmen .container.kundencontainer{margin-bottom: 500px;}
    /* .flx_kundenstimmen .kundenstimmencol{width: 80vw;}
    .flx_kundenstimmen .item{margin-top: 200px;} */
    /* .flx_kundenstimmen .item{margin-top: 150px;} */
    /* .flx_kundenstimmen .slider{width:90%;margin:50px auto 0;display:block;} */

    


    .flx_timeline1 #timeline{left:0;}
    .flx_timeline1 #timeline .timline-container{left:15px;}

    .ueber-uns .flx_headerblock .content{bottom:25%;}

}
/*-------------------------------------------------------------------------------------------*/
@media (max-width:1199px){

    .inhaltsbloecke{margin-top:100px;}
    /* .container{padding:0 75px;} */

    .owl-carousel .owl-nav{bottom:-5px;}
    .owl-carousel .owl-nav .owl-prev{left:15px;}
    .owl-carousel .owl-nav .owl-next{left:unset;right:40px;}

    .headline, h2{font-size:150%;}
 
    #page-header #toppermenu .menu li a{padding:5px 10px;font-size:90%;}
    #page-header #toppermenu .menu > li:last-child{padding-left:10px;}
    #page-header.bottom .logo img{width:55%;}
    #page-header #toppermenu .menu > li:last-child a{font-size: 19px; padding: 6px 25px;}
    .btn.akademie{font-size: 19px; padding: 6px 25px;}

    /* .flx_headerblock .content{width:40%;} */
    .flx_headerblock .content .headline{font-size:300%;}
    .flx_headerblock .content p{font-size:100%;}

    .flx_headerblock .kacheln .item .headline {font-size: 155%;}
    .flx_headerblock .kacheln .item {min-height: 450px;}
    .flx_headerblock .kacheln .item .headline {min-height: 60px;}
    .flx_headerblock .kacheln .item .content{min-height: 200px;}

    .flx_headerblock.mitbild .kacheln .item {min-height: 270px;}
    .flx_headerblock.mitbild .kacheln .item .content {min-height: 0px;}
    .flx_headerblock.mitbild .content .headline{margin-top: 30px;}

    .flx_kundenstimmen .kundenstimmencol{width: 90vw;}
    .flx_kundenstimmen .item div[class^="fullItem"], div[class*="fullItem"]{width: 80%;max-height:90%;overflow:scroll;}
    /* .flx_kundenstimmen .container.kundencontainer{margin-bottom: 600px;} */


    .flx_iconblock .leer{display:none;}

    /* .flx_kachelblock .leer{display:none;} */
    .flx_kachelblock .right .item{padding:15px;}
    .flx_kachelblock .item .inhalt .headline{font-size:100%;}

    #kurssingle .infobox .formular .fbox{width:100%;}

}
/*-------------------------------------------------------------------------------------------*/
@media (max-width:991px) {

    .startseite-login{width:95%;}
    .startseite-login input[name="Submit"], .startseite-login input[name="post_password"]{width:100%;}


    .headline, h2{font-size:225%;}
    .headline.breit{width: 100%;}
    .headline.extrabreit{width: 90%;}
    .container{padding:0 40px;}
    
    #page-header .logo img{width:15%;}
    #page-header #toppermenu .menu li a {color: var(--font);}
    .flx_headerblock .content .headline {font-size: 170%;margin-top: 80px;}

    #page-header #toppermenu .menu li a {font-size: 100%;font-weight: 400;}

    .text.schmal{margin-top: 100px; width: 80%;}

    .flx_headerblock.mitvideo video {height: 45vh;}

    #page-header #toppermenu .burgerbutton{display:block;width:40px;height:30px;position:absolute;top:25px;right:55px;cursor:pointer;}
    #page-header #toppermenu .burgerbutton span{display:block;width:100%;height:3px;margin:8px 0;background:var(--sec);border-radius:20px;transition:all .3s ease;}
    #page-header #toppermenu .burgerbutton.active span:nth-child(1){transform:rotate(45deg);transition:all .3s ease;margin-top:22px;}
    #page-header #toppermenu .burgerbutton.active span:nth-child(2){opacity:0;transition:all .3s ease;}
    #page-header #toppermenu .burgerbutton.active span:nth-child(3){transform:rotate(-45deg);transition:all .3s ease;margin-top:-22px;}
    #page-header #toppermenu .menu{position:absolute;display:none;top:0;right:0;bottom:0;transition:all .3s ease;background:var(--white);height:100vh;padding-top:150px;}
    #page-header #toppermenu .menu.active{display:block;transition:all .3s ease;width: 50%;right: 0;}
    #page-header #toppermenu .menu li{display:block;padding:15px 0;width:90%;margin:0 auto;}
    #page-header #toppermenu .menu li.menu-item-has-children.active:after{transform: rotate(91deg);transition:all .3s ease;}
    #page-header #toppermenu .menu li.menu-item-has-children .sub-menu{left:50%;transform:translateX(-50%);top:50px;padding:10px 0;}
    #page-header #toppermenu .menu li.menu-item-has-children:hover .sub-menu{display:none;}
    #page-header #toppermenu .menu li.menu-item-has-children.active .sub-menu{display:block;}
    #page-header #toppermenu .menu li.menu-item-has-children .sub-menu li a{text-align:center;}


    .flx_headerblock .content .subline {font-size: 130%;}

    #page-header #toppermenu .menu li.current-menu-item::after, #page-header .middle .menu li.current_page_parent::after{bottom:10px;}
    
    #page-header{padding: 0 0;}
    #page-header.bottom{padding: 20px 0;}
    #page-header.bottom .logo img{width:10%;}
    #page-header.bottom #toppermenu .burgerbutton{top: 15px;}

    .buttonrow{width: 100%;}

    .flx_headerblock .content{top:12.5%; width: 70%;bottom:unset;}
    .flx_headerblock .kacheln {margin-top:25px;}
    .flx_headerblock .content p{font-size:220%;margin:15px 0;}
    .flx_headerblock .content .headline{font-size:170%;}
    .flx_headerblock .kacheln .item {min-height: unset;margin-bottom:15px;box-shadow:none;}
    .flx_headerblock .kacheln .item .headline {font-size: 155%; min-height: unset;}
    .flx_headerblock .kacheln .item .content, .flx_headerblock .kacheln .item .content p {min-height: unset;}

    .subline.top{padding-top: 30px;}  

    .flx_leistungen .item .preiswrapper .preis {font-size: 190%;}
    .flx_leistungen .row{justify-content:center;}

    .flx_iconblock .item{padding:15px 0;}
    .flx_iconblock .left img{display:none;}
    .flx_iconblock .left.mobile img{display:block;}
    .home .flx_iconblock .left .headline{margin-bottom:-75px;}
    .flx_iconblock .mobile{display:block;}

     
    .flx_kachelblock.textlinks, .flx_kachelblock.textrechts{padding-top:0px!important;padding-bottom:0px!important; margin-bottom: 100px;}
    .flx_kachelblock .right{margin-top:50px;}
    .flx_kachelblock .left{margin-top:50px;}
    .flx_kachelblock .right .item{margin-bottom:30px;}
    .flx_kachelblock .headerbox{margin-bottom: 15px;}
    .flx_kachelblock .headline{padding-top: 50px;}
    .flx_kachelblock .icon {display: none;}
    .flx_kachelblock.textrechts .right{order:2;}
    .flx_kachelblock.textrechts .left{order:1;margin:0;}
    .flx_kachelblock .right .kachel:nth-child(2n+1) .item{margin: 50px 0 50px 0 !important}
    .flx_kachelblock .right .kachel:nth-child(2n) .item{margin: 0 0 0 0 !important;}

    .flx_kundenstimmen .item{padding: 30px;}

    .flx_textblock .text{order:1;width:100%!important;}
    .flx_textblock .bild{order:2;}
    .flx_textblock .button{order:3;}
    .flx_textblock.textzwei .zwei{column-count: 1;}
    .flx_textblock.mitbildlinks .bild{order:1; margin-bottom: 50px;}
    .flx_textblock.mitbildrechts .bild{order:1;}
    .flx_textblock.mitbildrechts .text{ order:2; margin-top: 50px;}

    .flx_faqblock .accordion{margin-top: 50px;}

    .flx_kontaktformular input, .flx_kontaktformular textarea{width:100%;}
    .flx_kontaktformular #kontakt {margin-top: -60px;}
    .flx_kontaktformular .kontaktcol{margin-top: 0;}

    .flx_kundenstimmen .slider{margin-top: 150px;}
    .flx_kundenstimmen .item{margin-top: 200px;}
    .flx_kundenstimmen .container.kundencontainer{margin-bottom: 600px;}

    .flx_ubermich .bild{padding-left: 60px;}

    .flx_textblock.akademie .akademieimg{padding-top: 100px; scale: 1;}

    #page-footer a.logo{padding-left:0;}
    #page-footer .col-md-6{margin:25px 0;}
    #page-footer .copyright span{width:100%;text-align:center;}
    #page-footer .copyright .menu-footermenu-container{width:100%;text-align:center;}
    #page-footer .social {text-align: left;}
    #page-footer .mail-adresse {padding-left: 35px;}
    #page-footer .telefonnummer {padding-left: 35px;}

    #page-footer .social a{display:inline-block;}
    #page-footer .social img{max-width:100%;margin-right:10px;}
    #page-footer .copyright .impressum{float: none;}

}
/*-------------------------------------------------------------------------------------------*/
@media (max-width:767px) {

    div[class^="flx_"], div[class*="flx_"]{padding:50px 0;}

    .masonrygrid .grid-item{width:100%;}

    .flx_headerblock.mitbild{position:relative;}
    .flx_headerblock.mitbild:before{content:'';background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0) 70%);}
    .flx_headerblock .content{width:auto;bottom:10%;left:35px;right:35px;top:10%;}

    .flx_headerblock .kacheln {margin-top: -65px;}

    .flx_headerblock.mitbild img {height: 300px;object-fit: cover;}
    .flx_headerblock.mitbild .content .headline {font-size: 150%;}
    .flx_headerblock .content .subline {font-size: 90%;}

    .flx_headerblock .kacheln .item{min-height: 0;margin-bottom: 50px;}
    .flx_headerblock .kacheln .item .headline {min-height: 0;}
    .flx_headerblock .kacheln .item .content {min-height: 0;}
    .flx_headerblock .kacheln .item .content p {min-height: 0;}

    .flx_kachelblock .item{height: 100%;}
    .flx_kachelblock .left {margin-top: 20px;}
    /* .flx_kachelblock .right .item {height: 90%;} */

    .flx_headerblock .kacheln {margin-top: -25px;}
    .flx_kachelblock .icon {display: none;}
    .flx_kachelblock.textrechts .icon {display: none;}
    .flx_kachelblock .right .kachel:first-child{margin-top:0!important;}

    .flx_kachelblock .right .item{margin-bottom:0;}
    .flx_kachelblock .right .kachel:nth-child(2n-1) .item{margin:0 !important;}
    .flx_kachelblock .right .kachel {margin: 15px 0;}

    .flx_leistungen .item .preiswrapper {text-align: left;}
    .flx_textblock.mitbildrechts .text .inhalt { min-height: 200px;}
    .flx_textblock.mitbildlinks .text .inhalt { min-height: 200px;}

    .btn.akademie{margin-top: 0;}

    .flx_ubermich .bild{padding-left: 0px; padding-top: 30px;}

    .flx_leistungen .button {text-align: left;}

    .flx_kontaktformular .breit .links {flex:none}
    .flx_kontaktformular .breit .rechts {flex:none; padding-left: 10px;}

    .flx_kundenstimmen .slider{margin-top: 250px;}
    .flx_kundenstimmen .kundenstimmencol{right: auto; left: auto;width:93vw;}
    .flx_kundenstimmen .item .zitat{width: 100px; height: 100px; right: 50px; top: -50px;}
    .flx_kundenstimmen .item .kundenheadline .nameheadline{font-size:75%;line-height:1.2;width:100%;}

    .flx_bildblock.grid .imagewrapper img{width:100%;}

    .flx_faqblock button{font-size: 100%;margin-left: 30px}

    .ueber-uns .flx_headerblock .content{top:unset;}
    
    #page-footer .col-md-3{margin: 10px 0;}
}
/*-------------------------------------------------------------------------------------------*/
@media (max-width:600px) {

    /* .inhaltsbloecke {margin-top: 0px;} */

    .headline, h2{font-size:175%;}
    .subline{font-size:110%;margin-bottom:5px;}
    .container{padding:0 35px;}

    .text.schmal{margin-top:0;}

    .flx_headerblock img {height: 250px;object-fit:cover;}

    #kontakt{padding-top:50px;}

    #page-header .logo img{width:20%;}
    #page-header.bottom .logo img {width: 20%;}
    #page-header #toppermenu .menu.active {width: 70%;}
    #page-header #toppermenu .burgerbutton{top: 25px; right: 30px;}

    div[class^="flx_"], div[class*="flx_"]{padding:50px 0;}

    .flx_kachelblock .right{margin-top:25px;}
    .flx_kachelblock .right .kachel:nth-child(2n-1) .item{margin-top:0;}

    .flx_headerblock.mitfarbe{height:125px;}
    .flx_headerblock.mitfarbe .content{width:80%;}

    .flx_headerblock .content{top:12%;}
    .flx_headerblock .content .headline{font-size:175%;}
    .flx_headerblock .content p{font-size:90%;margin:15px 0;}

    .flx_iconblock .item img{width:30%;}
    .flx_iconblock .item .inhalt .headline{font-size:100%;}

    .flx_faqblock.breit .accordion{margin:0;}
    
    .flx_kundenstimmen .item{margin-top: 250px;}
    .flx_kundenstimmen .item .kundenheadline{left: 145px; top: 40px;width:65%;font-size:110%;}
    .flx_kundenstimmen .item .name .personbild{width:100px;height:100px;}

    .flx_textblock.akademie .container{padding: 40px;}
    
    .flx_faqblock .accordion-body{padding: 15px 15px 15px 0px}
    .flx_faqblock.breit .inhalt{width: 100%;}

    .flx_kachelblock.textlinks, .flx_kachelblock.textrechts{padding:25px 0!important;}

}
/*-------------------------------------------------------------------------------------------*/
@media (max-width:500px) {

    /* .inhaltsbloecke {margin-top: 0;} */
    .flx_headerblock .content {width: 80%;}
    .headline, h2 {font-size: 155%;}

    .flx_headerblock .content .headline {margin-top: 30px;}

    .flx_headerblock .kacheln {margin-top: -40px;}

    .flx_kundenstimmen .item p {font-size: 100%;}

    #page-header #toppermenu .menu.active {width: 100%;}

    .flx_kontaktformular .breit .schmal {width: 100%;}

    .flx_kundenstimmen .container.kundencontainer{margin-bottom: 500px;}
    .flx_kundenstimmen .item{padding:15px;}
    .flx_kundenstimmen .item .name{font-size:100%;}
    .flx_kundenstimmen .item .name .personbild{display:block;margin:15px;}
    .flx_kundenstimmen .item .headline{left: 180px;}
    .flx_kundenstimmen .item .zitat{scale: 0.7; right: 20px; top: -65px;}
    .flx_kundenstimmen .item div[class^="fullItem"], div[class*="fullItem"]{width: 90%;}
}
/*-------------------------------------------------------------------------------------------*/
@media (max-width:400px) {

    /* .inhaltsbloecke{margin-top:0px;} */
    .container {padding: 0 20px;}

    .headline, h2{font-size:180%;}
    .subline {font-size: 110%;}
    #page-header .logo img {width: 30%;}

    .flx_leistungen .item .headline {font-size: 165%;}

    .flx_headerblock .content .headline{font-size:150%;}
    .flx_headerblock .content p{font-size:80%;}
    .flx_headerblock .content {width: 80%;}

    .flx_kontaktformular .wpcf7-form-control.wpcf7-quiz {width: 40%;margin-top: 10px;}
    .flx_kontaktformular .breit {padding: 20px;}
    .flx_kontaktformular #kontakt {margin-top: -100px;}

    .flx_timeline1 #timeline .timline-container .time{width:200px;}
    .flx_timeline1 #timeline .timline-container .item{width:330px;}


}

