/* Original customer-specific styles retained; decorative CMP icon paths are hidden by the original design. */
@font-face {
  font-family: "Montserrat";
  src: url("/media/templates/site/cassiopeia/fonts/Montserrat-VariableFont_wght.ttf") format("truetype");
}
body .body-wrapper{
  font-family: "Montserrat";
}
body .sp-megamenu-parent > li:not(:last-child) {
  margin-right: 0px;
}
header#sp-header{
  height:auto;
}
body .sp-megamenu-parent > li{

}
body .sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span{
  line-height: unset;
  padding: 10px 15px;
}
body .sp-megamenu-parent > li.active > a, .sp-megamenu-parent > li:active > span , .sp-megamenu-parent > li:hover > span , body .sp-megamenu-parent > li:hover > a{
  background-color: #3d3d3d;
  color:#fff;
}
body .fa.fa-mobile-phone::before, .fa.fa-mobile::before {
    content: "\f1ac";
}

body .sp-megamenu-parent {
  margin: 0px;
}

body .startbild .startbild-image{
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 15px;
}
body .startbild .startbild-image img{
  width:100%;
}
.startbildtext-content{
  padding:10px 15px;
  text-align: center;
  font-size: 1.1em;
  letter-spacing: 2px;
}

.tabelle {
    clear: both;
    padding-right: 50px;
}
.fi-check {
    color: #EE7202;
}
td.kfw{
    color: #004B93;
}
.fi-crown {
    color: #62f82d;
}
.tfeld {
    float: left;
    padding-right: 10%;
    text-align: center;
    max-width: 50px;
    padding-left: 5%;
}
.produkt-table.sppb-addon-table-main td {
padding: 5px 10px;
}
.produkt-table-header {
padding: 5px 10px;
background-color: #004B93;
color: #FFF;
width:100%;
font-weight:bold;
}
td.enev{
color: #EE7202;
}
.lmz-img-row .sppb-col-md-6 , .lmz-img-row .sppb-col-md-4 {
  margin-bottom:30px;
}
.lmz-img-row .sppb-column > div.sppb-column-addons {
  display: grid;
  grid-template-rows: auto 1fr;
}
body .lmz-img-row:not(.team-row) .sppb-column > div.sppb-column-addons div.sppb-addon-wrapper:first-of-type .sppb-addon-single-image.referenzen-img .sppb-addon-single-image-container img{

}

.lmz-img-row:not(.team-row) .sppb-column > div.sppb-column-addons div.sppb-addon-wrapper:last-of-type {
  height: 100%;
}

.lmz-img-row:not(.team-row) .sppb-column > div.sppb-column-addons div.sppb-addon-wrapper:last-of-type > div{
  height: 100%;
}
.lmz-img-row.team-row .sppb-column > div.sppb-column-addons div.sppb-addon-wrapper:last-of-type p{
  margin:0;
}
body .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  padding: 0px;
}
body .sp-megamenu-parent .sp-dropdown li.sp-menu-item {
  padding:5px 15px;
}
body .sp-megamenu-parent .sp-dropdown li.sp-menu-item:first-of-type{
  padding:20px 15px 5px 15px;
}
body .sp-megamenu-parent .sp-dropdown li.sp-menu-item:last-of-type{
  padding:5px 15px 20px 15px;
}
body .referenzen-img .sppb-addon-single-image-container , body .sppb-section.lmz-img-row .sppb-addon-single-image-container{
  width:100% !important;
}

body .referenzen-img .sppb-addon-single-image-container img, body .sppb-section.lmz-img-row .sppb-addon-single-image-container img{
  width:100% !important;
}
body .sppb-section.lmz-img-row .sppb-column-addons{
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
}
body .sppb-section.lmz-img-row.no-caption-right .sppb-column-addons:last-of-type, body .sppb-section.lmz-img-row.team-row .sppb-column-addons{
  box-shadow: none !important;
}
body .sppb-section.lmz-img-row.no-caption-right .sppb-column-addons:last-of-type img{
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
}

.site input[type="text"], .site input[type="email"], .site input[type="url"], .site input[type="date"], .site input[type="password"], .site input[type="search"], .site input[type="tel"], .site input[type="number"], .site select {
border: solid 1px var(--input-border-color);
}
.site textarea {
border: solid 1px var(--input-border-color) !important;
}
#sp-logo-wrap {
  background-color: #3d3d3d;
  padding:5px 0px;
}
#top-phone {
  float: right;
  height: 73px;
  font-size: 22px;
  color: #fff;
  background: url("images/kundenordner/TEL_Symbol.png") no-repeat left center;
  padding-left: 82px;
  margin-top: 35px;
  line-height: 37px;
}
body .sppb-btn {
  text-transform: inherit;
}
body #sp-footer {
  border-top: none;
  border-bottom: none;
}
.font-green {
  color: #669900;
}
.dark-bg > .sppb-row-container > .sppb-row > .sppb-col-md-12 >  .sppb-column > .sppb-column-addons{
  background-color: #3d3d3d;
  padding:20px;
}

.leistungs-number {
padding: 5px;
background-color: #ebffc1;
height: 70px;
width: 70px;
text-align: center;
border-radius: 5px;
}
.leistungs-number-text {
color: #222;
font-size: 12px;
}
.leistungs-number-wrapper {
display: grid;
justify-content: center;
height: 100%;
}
.leistungs-number-number {
color: #669900;
text-align: center;
font-size: 22px;
font-weight: bold;
}


/* @media screen and (min-width:991px){
  #column-wrap-id-1675630834005 .sppb-col-md-10 > .sppb-column > .sppb-column-addons .sppb-addon-wrapper:first-of-type{
    margin: 45px 0px 30px 0px !important;
  }
} */
@media screen and (max-width:768px){
  .logo img.logo-image{
    max-width: 100%;
    height: auto;
  }
    #offcanvas-toggler {
    display: block;
    height: 60px;
    line-height: 60px;
    font-size: 20px;
  }
}
@media (min-width:1380px) {
 .container,
 .container-lg,
 .container-md,
 .container-sm,
 .container-xl,
 .container-xxl {
  max-width:1320px
 }
}
#uc-btn-open-main-corner-modal{
left: initial !important;
bottom: 3.75% !important;
right: 15px;
position: absolute;
background: var(--primary-color) !important;
border-radius: 5px;
height: 50px;
width: 50px;
border: 1px solid #0a0a0a;
}
#uc-btn-open-main-corner-modal circle,
#uc-btn-open-main-corner-modal #speechbubble{
display: none !important;
}
#uc-btn-open-main-corner-modal #fingerprint {
scale: 2.25;
translate: -60% -55%;
fill: #0a0a0a !important;
}
#uc-btn-close-main-corner-modal polygon {
fill: #0a0a0a !important;
scale: 2;
translate: -45% -45%;
}
#usercentrics-button #uc-corner-modal .uc-corner-modal-content{
bottom: 2vh !important;
right: 80px !important;
left: initial !important;
}
#usercentrics-button #background use,
#uc-btn-open-main-corner-modal use{
display: none !important;
}
a#back-top{
bottom: 2.5%;
padding: 0px;
width: 50px;
height: 50px;
border-radius: 5px;
display: grid;
place-content: center;
right: 15px;
background: var(--primary-color);
color: #0a0a0a;
border-color: #0a0a0a;
}
#back-top span.icon-arrow-up{
font-size: 25px;
}
@media screen and (min-width: 992px){
#usercentrics-button{
position: absolute;
bottom: 200px;
right: 0%;
}
a#back-top{
bottom: 135px;
}
}
@media screen and (max-width: 992px) {
.footer .grid-child {
padding: 1.5rem 0.5em 3.5rem;
}
div#usercentrics-button {
place-self: center;
translate: -60px 0px;
}
#uc-btn-open-main-corner-modal {
right: initial !important;
bottom: 15px !important;
}
#usercentrics-button #uc-corner-modal .uc-corner-modal-content {
bottom: 8vh !important;
right: initial !important;
}
.corner-modal-wrapper {
width: 75vw !important;
translate: -14vw 0vh;
max-width: initial !important;
}
a#back-top {
bottom: 15px;
right: initial;
place-self: center;
translate: 40px 0px;
}
}
@media screen and (max-width: 768px) {
.corner-modal-wrapper {
height: 65vh !important;
translate: -32vw -8vh;
}
#usercentrics-button .uc-corner-modal,
#usercentrics-button #uc-corner-modal .uc-corner-modal-content{
max-width: initial !important;
width: 80vw !important;
bottom: 0vh !important;
}
}
@media screen and (max-width: 576px) {
.corner-modal-wrapper {
height: 80vh !important;
translate: -25vw -12vh;
}
}
/* Cassiopeia frame. Standard template index and core menu layouts remain unchanged. */
:root{--body-font-family:Montserrat,sans-serif;--cassiopeia-font-family-body:Montserrat,sans-serif;--cassiopeia-font-family-headings:Montserrat,sans-serif;--body-font-size:16px;--body-line-height:1.6;--body-color:#252525;--link-color:#669900;--link-hover-color:#669900;--cassiopeia-color-primary:#ebffc1;--primary-color:#ebffc1;--input-border-color:#ccc;--cassiopeia-color-link:#669900;--cassiopeia-color-hover:#669900}
body.site{display:flex;flex-direction:column;margin:0;font-family:Montserrat,sans-serif;font-size:16px;line-height:1.6;background:#fff;color:#252525;min-width:0}
.container-header,.site-grid{display:contents}
.container-topbar{order:0;background:#3d3d3d;width:100%}
.bartsch-top{max-width:1320px;padding:5px 12px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:140px}
.bartsch-logo img{width:auto;height:130px;max-width:100%;object-fit:contain}
.bartsch-top a{text-decoration:none}
.bartsch-phone{font-size:22px;color:#fff!important;line-height:37px;background:url('/images/kundenordner/TEL_Symbol.png') no-repeat left center;padding-left:82px}
.container-banner{order:1;margin:0;width:100%}
.container-nav{order:2;width:100%;max-width:none;padding:0;background:#ebffc1;position:sticky;top:0;z-index:1030;min-height:44px;box-shadow:none}
.container-nav .navbar{max-width:1320px;width:100%;margin:auto;padding:0 12px;min-height:44px}
.container-header .mod-menu{display:flex;flex-wrap:wrap;gap:0;margin:0;padding:0;list-style:none;color:#252525;line-height:24px;font-size:14px;font-weight:400;text-transform:uppercase}
.container-header .mod-menu>li{padding:0;margin:0}
.container-header .mod-menu>li>a,.container-header .mod-menu>li>span{display:block;padding:10px 15px;text-decoration:none;color:#252525;border:0}
.container-header .mod-menu>li.current>a,.container-header .mod-menu>li.active>a,.container-header .mod-menu>li>a:hover{background:#3d3d3d;color:#fff}
.container-header .mod-menu a:focus-visible,.container-nav .navbar-toggler:focus-visible{outline:3px solid #669900;outline-offset:-3px}
.container-component{order:3;width:100%;max-width:none;display:block;padding:0;margin:0;min-width:0}
.container-component>main{width:100%;min-width:0}
.container-bottom-a{order:4;width:100%;max-width:none;margin:0;padding:0;display:block}
.container-bottom-a .card{border:0;border-radius:0;background:transparent}
.container-bottom-a .card-body{padding:0}
.container-footer{order:5;background:#ebffc1;color:#252525;margin:0;font-size:14px}
.container-footer>.grid-child{max-width:1320px;padding:20px 12px;margin:auto;justify-content:flex-start}
.container-footer a{color:#a2a2a2;text-decoration:none}
h1,h2,h3,h4,h5,h6{font-family:Montserrat,sans-serif;line-height:1.2;font-weight:600;color:inherit;margin:0 0 20px}
h1{font-size:36px}h2{font-size:32px}h3{font-size:28px}h4{font-size:24px}p{margin:0 0 20px}
.sppb-row-container{max-width:1320px;width:100%;margin:auto;padding-left:12px;padding-right:12px}
.sppb-row{margin-left:-12px;margin-right:-12px}
.sppb-row>[class*=sppb-col-]{padding-left:12px;padding-right:12px;min-width:0}
.sppb-addon-title{line-height:1.2}
.site a{transition:color .15s,background-color .15s}
.site img{max-width:100%}
/* Match the original section containers at the existing breakpoints. */
@media (max-width:1379.98px) and (min-width:1200px){.bartsch-top,.container-nav .navbar,.sppb-row-container,.container-footer>.grid-child{max-width:1140px}}
@media (max-width:1199.98px) and (min-width:992px){.bartsch-top,.container-nav .navbar,.sppb-row-container,.container-footer>.grid-child{max-width:960px}}
@media (max-width:991.98px) and (min-width:768px){.bartsch-top,.container-nav .navbar,.sppb-row-container,.container-footer>.grid-child{max-width:720px}}
@media (max-width:767.98px) and (min-width:576px){.bartsch-top,.container-nav .navbar,.sppb-row-container,.container-footer>.grid-child{max-width:540px}}
@media(max-width:991.98px){.container-nav .navbar-toggler{margin:8px 0;border:1px solid #252525;color:#252525}.container-header .mod-menu{flex-direction:column}.container-nav .navbar-collapse{width:100%}.bartsch-top{gap:12px}.bartsch-phone{font-size:16px;line-height:1.6;background-size:44px;padding-left:54px}.bartsch-logo img{height:auto;max-height:130px}.container-nav{min-height:60px}}
@media(max-width:767.98px){.bartsch-top{min-height:0;padding:5px 12px}.bartsch-logo{max-width:100%}.bartsch-logo img{width:100%;height:auto}.bartsch-phone{display:none} /* Phone block was desktop-only in the original header; contact links remain in the footer. */
.sppb-row-container{padding-left:15px;padding-right:15px}.sppb-row{margin-left:-15px;margin-right:-15px}.sppb-row>[class*=sppb-col-]{padding-left:15px;padding-right:15px}.tabelle{padding-right:0;max-width:100%;overflow-x:auto}.container-footer>.grid-child{padding:20px 15px 70px}h1{font-size:30px}h2{font-size:28px}h3{font-size:24px}h4{font-size:22px}}

/* Measured source styles: 15px container gutters, headings weight 500, original uppercase h2. */
.bartsch-top,.container-nav .navbar,.sppb-row-container,.container-footer>.grid-child{padding-left:15px;padding-right:15px}.sppb-row{margin-left:-15px;margin-right:-15px}.sppb-row>[class*=sppb-col-]{padding-left:15px;padding-right:15px}h1,h2,h3,h4,h5,h6{font-weight:500}h2{text-transform:uppercase}

/* Match Finion's Bootstrap heading scale and measured mobile text rhythm. */
h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}h1{font-size:calc(1.375rem + 1.5vw);letter-spacing:-1px}h2{font-size:calc(1.325rem + .9vw)}h3{font-size:calc(1.3rem + .6vw)}h4{font-size:calc(1.275rem + .3vw)}p{margin-bottom:1rem}
@media(min-width:1200px){h1{font-size:40px}h2{font-size:32px}h3{font-size:28px}h4{font-size:24px}}
@media(max-width:768px){body.site{line-height:1.35}.container-nav .navbar-toggler{border:0;padding:0;font-size:20px;line-height:60px;margin:0;border-radius:0}.container-nav .navbar{min-height:60px}}

/* Override later-loaded core MetisMenu spacing with measured original navigation. */
.site .container-header .container-nav{padding:0;min-height:44px}
.site .container-header .mod-menu>li.metismenu-item{padding:0;font-size:14px;line-height:23.4px;font-weight:400}
.site .container-header .mod-menu>li.metismenu-item>a{font-size:14px;line-height:23.4px;padding:10px 15px}
.site a{text-decoration:none}.site .sppb-btn{font-size:16px;font-weight:600;letter-spacing:1px;line-height:24px;padding:10px 20px;border:0;border-radius:0;text-decoration:none}
.site .sppb-btn-default{background:#fff;color:#000}
@media(max-width:991.98px){.site .container-header .container-nav{min-height:60px}.site .container-header .mod-menu>li.metismenu-item{width:100%}}

.site .container-header .container-nav .navbar{margin-top:0;margin-bottom:0}
.site a#back-top{position:fixed;right:30px;bottom:20px;left:auto;translate:none;transform:none;margin:0;width:35px;height:35px;border:0;border-radius:0;background:rgba(51,51,51,.65);color:#fff;padding:0;z-index:1000}
.site #back-top span.icon-arrow-up{font-size:25px}

.site .container-component>main{margin-top:0;margin-bottom:0}

#kontakt{scroll-margin-top:44px}@media(max-width:991.98px){#kontakt{scroll-margin-top:60px}}

/* Long legal headings/URLs remain readable on narrow screens. */
.site #sp-page-builder{overflow-wrap:anywhere;hyphens:manual}
@media(max-width:575.98px){.site #kontakt .uc-embedding-container{height:650px!important;max-height:none!important}.site #kontakt iframe{height:650px}}
