@charset "UTF-8";

@font-face {
    font-family: 'OpenSans';
    src: url('../components/fonts/OpenSans-VariableFont.ttf');
}
@font-face {
    font-family: 'Montserrat';
    src: url('../components/fonts/Montserrat-VariableFont_wght.ttf');
}
:root{
  --color-basic: #72001a;
  --color-secondary: #72001a;
  --primary-color: #72001a;
  --primary-color-light: #72001a;
  --color-font-basic: #505155;
  --color-font-basic-light: #1a1b1fc4;
  --color-light-bg: #72001a77;
  --color-light-green-bg: #72001a;
  --cassiopeia-color-primary: #72001a;
  --cassiopeia-color-hover: #72001a;
  --color-font-basic: #505155;
  --color-font-footer: #fff;
  --body-color: #444;
  --content-block-margin: clamp(30px,15vh,40px);
  --content-h1-font-size: clamp(1.3rem, 30vw, 2.3rem);
  --content-h2-font-size: clamp(1.2rem, 6vw, 1.6rem);
  --content-h3-font-size: clamp(1rem, 6vw, 1.4rem);
  --content-p-font-size: clamp(.9rem, 1.8vw, 1.1rem);
  --content-button-font-size: clamp(.8rem, 1.8vw, .9rem);
  --body-font-family: 'OpenSans', sans-serif;
  --bs-body-font-family: 'OpenSans', sans-serif !important;
  --cassiopeia-font-family-headings:'OpenSans', sans-serif;
  --body-font-weight: 400;
  --box-shadow:rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
  --horizontal-site-padding: 0 30px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

.btn-outline-primary {
  --bs-btn-color: #000f75 !important;
  --bs-btn-border-color: #000f75 !important;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #000f75 !important;
  --bs-btn-hover-border-color: #000f75 !important;
  --bs-btn-focus-shadow-rgb: 13,110,253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #000f75 !important;
  --bs-btn-active-border-color: #000f75 !important;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000f75 !important;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #000f75 !important;
  --bs-gradient: none;
}
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #000f75 !important;
  --bs-btn-border-color: #000f75 !important;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #000f75 !important;
  --bs-btn-hover-border-color: #0a58ca;
  --bs-btn-focus-shadow-rgb: 49,132,253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0a58ca;
  --bs-btn-active-border-color: #0a53be;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #000f75 !important;
  --bs-btn-disabled-border-color: #000f75 !important;
}



html body {
  margin: 0;
  font-family: var(--body-font-family) !important;
  font-size: var(--content-p-font-size);
  font-weight: var(--body-font-weight);
  line-height: var(--body-line-height);
  color: var(--body-color);
  text-align: var(--body-text-align);
  background-color: var(--body-bg);
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
html body .dj-offcanvas-pusher-in{
  overflow-x: hidden;
}
main h1{
  font-size: var(--content-h1-font-size);
}
h1{
  color:var(--color-basic);
  position: relative;
  padding: 0;
  margin: 0;
  font-weight: 300;
  /* font-size: 40px; */
  -webkit-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
  margin-bottom: 25px;
}
main h1 {
    text-align: center;
    font-size:30px;
    font-weight:300;
    color:var(--color-basic);
    letter-spacing:1px;
    text-transform: uppercase;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 0;
    grid-gap: 20px;
    align-items: center;
    margin-bottom: 20px;
}

main h1:after{
    content: " ";
    display: block;
    border-bottom: 1px solid var(--color-secondary);
    height: 1px;
    background-color:var(--color-secondary);
}
main h3.highlight-header{
  text-align: center;
  font-size:30px;
  font-weight:300;
  color:var(--color-basic);
  letter-spacing:1px;
  text-transform: uppercase;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: auto 0;
  grid-gap: 20px;
  align-items: center;
  margin-bottom: 20px;
}
main h3.highlight-header:after,main h3.highlight-header:before {
    content: " ";
    display: block;
    border-bottom: 1px solid var(--color-secondary);
    height: 1px;
    background-color:var(--color-secondary);
}

.no-uppercase h1{
  text-transform: none !important;
}
main a{
  text-decoration: none;
  color:inherit;
}
main h2{
  font-size: var(--content-h2-font-size);
  color:var(--color-basic);
  margin-bottom: 30px;
}
main h3{
  font-size: var(--content-h3-font-size);
}
main p{
  font-size: var(--content-p-font-size);
}
/* BASICS END */

.grid-child {
  max-width: none;
  width: 100%;
}

/* Header / Logo + Menü */

.anchor{
  position: relative;
  top:-40px;
}

.container-header .navbar-brand{
  width: 100%;
  /* padding: 30px 0; */
}
  .container-header .navbar-brand a img{
    width: 300px;
  }
  header.container-header{
    background-color: #fff0 !important;
    background-image:none !important;
  }
  header.container-header .header{
    /* display: grid;
    grid-template-columns: 300px 1fr; */
  }

  header.container-header .container-nav ul.dj-megamenu{
    display: flex;
    flex-wrap: none;
    justify-content: space-between;
    align-items:center;
    padding: 0;
  }
  .container-header .topbar{
    font-size: clamp(8px, 30vw, 13px);
    letter-spacing: 3px;
    color: #fff;
    text-align: center;
    background-color: var(--color-basic);
    padding:5px 0;
  }
  .container-header .topbar i{
    margin-right:5px;
  }
  .container-header .topbar a{
    text-decoration: none;
    color: #fff;
  }
  .container-header .topbar span.first-black{
    color: #000;
  }
  @media screen and (max-width:768px){
    .container-header .topbar{
      font-size: 12px;
      text-align: left;
    }
  }
  @media screen and (max-width:500px){
    /* .container-header .topbar{
      font-size: 7px;
    } */
  }
  @media screen and (max-width:400px){
    /* .container-header .topbar{
      font-size: 6px;
    } */
  }
  @media screen and (max-width:768px){
    header.container-header .container-nav{
      justify-content: end;
    }
  }
  header.container-header .fa-bars::before{
    font-weight: 200;
  }
  header.container-header .container-nav .dj-megamenu-clean > li > a.dj-up_a{
    color:var(--color-font-basic-light);
    text-transform:uppercase;
    transition: all ease .4s;
    font-weight: 400;
    height:auto;
    padding: 10px 18px;
  }
  header.container-header .container-nav .dj-megamenu-clean > li > a.dj-up_a > span{
    height:auto;
  }
  header.container-header .container-nav .dj-megamenu-clean > li > a::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    top: 100%;
    left: 0;
    background: var(--color-basic);
    transition: transform 0.5s;
    transform: scaleX(0);
    transform-origin: right;
  }
  header.container-header .container-nav .dj-megamenu-clean > li >  a:hover , header.container-header .container-nav .dj-megamenu-clean > li.active > a , header.container-header .container-nav .dj-megamenu-clean > li ul li a:hover , header.container-header .container-nav .dj-megamenu-clean > li ul li.active > a{
    color: var(--color-basic);
  }
  header.container-header .container-nav .dj-megamenu-clean > li > a:hover::after , header.container-header .container-nav .dj-megamenu-clean > li.active > a::after {
    transform: scaleX(1);
    transform-origin: left;
  }
  header.container-header .quick-contact-bar{
    display: flex;
    flex-wrap: none;
    justify-content: center;
    align-items: center;
    padding-bottom: 0;
  }
  @media screen and (max-width:980px){
    header.container-header .quick-contact-bar{
      display: none;
    }
  }
  header.container-header .quick-contact-bar > .container-topbar{
    height:auto;
  }
  body a.btn-lz, body button.btn-lz{
    width: auto;
    height: 32px;
    padding: 10px 25px;
    border: 1px solid var(--color-basic);
    font-weight: 400;
    font-size: var(--content-button-font-size)!important;
    background: transparent;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    display: inline-block;
    text-decoration: none;


    background: var(--color-basic);
    color: #fff;
    line-height: 42px;
    padding: 0;
    border: none;
  }
  body a.btn-lz span , body button.btn-lz span{
      position: relative;
      display: block;
      width: 100%;
      height: 100%;
      padding:0 15px;
      display: flex;
      justify-content: center;
      align-items: center;
  }
  body a.btn-lz:before,
  body a.btn-lz:after ,
  body button.btn-lz:before,
  body button.btn-lz:after {
    position: absolute;
    content: "";
    height: 0%;
    width: 1px;
    background:var(--color-basic);
  }
  body a.btn-lz:before ,
  body button.btn-lz:before {
    right: 0;
    top: 0;
    transition: all .7s ease;
  }
  body a.btn-lz:after,
  body button.btn-lz:after {
    left: 0;
    bottom: 0;
    transition: all .7s ease;
  }
  body a.btn-lz:hover,
  body button.btn-lz:hover{
    color: var(--color-basic);
    background: #fff;
  }
  body a.btn-lz:hover:before,
  body button.btn-lz:hover:before {
    transition: all .7s ease;
    height: 100%;
  }
  body button.btn-lz:hover:after,
  body a.btn-lz:hover:after {
    transition: all .7s ease;
    height: 100%;
  }
  body a.btn-lz span:before,
  body a.btn-lz span:after,
  body button.btn-lz span:before,
  body button.btn-lz span:after {
    position: absolute;
    content: "";
    background: var(--color-basic);
  }
  body a.btn-lz span:before,
  body button.btn-lz span:before {
    left: 0;
    top: 0;
    width: 0%;
    height: 1px;
    transition: all .7s ease;
  }
  body a.btn-lz span:after,
  body button.btn-lz span:after {
    right: 0;
    bottom: 0;
    width: 0%;
    height: 1px;
    transition: all .7s ease;
  }
  body a.btn-lz span:hover:before,
  body button.btn-lz span:hover:before {
    width: 100%;
  }
  body a.btn-lz span:hover:after,
  body button.btn-lz span:hover:after {
    width: 100%;
  }

/* Header / Logo + Menü END */


/* Content  */

  .site-grid{
    display: block !important;
    grid-template-rows: none;
    grid-template-columns: none !important;
    /* grid-template-areas:none; */
  }
  .grid-child {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: none;
    width: 100%;
  }

  .site-grid > div:first-of-type , .site-grid > div:last-of-type{
    padding: 0;
  }
  .site-grid > div{
    padding: var(--content-block-margin) 0;
  }
  .site-grid p{
    font-size: var(--content-p-font-size);
  }
  /* .site-padding{
    width:1920px;
    max-width: 100%;
    margin:0 auto;
  } */
  .navi-padding{
    padding:25px 50px;
  }
  @media screen and (max-width:768px){
    /* .site-padding{
      padding: 0 15px;
    } */
    .navi-padding{
      padding:15px;
    }
  }
  .afterbanner-block{
    /* width:100%;
    box-shadow: 0px 4px 14px 0px rgba(0,0,0,0.25) !important;
    height:32px; */
  }
  @media screen and (max-width:1000px){
    header.container-header .container-nav{
      display: flex;
      flex-wrap: none;
      justify-content: space-between;
      align-items:center;
      padding: 0;
    }

  }
  .site-padding > div > div.n2-section-smartslider{
    /* box-shadow: var(--box-shadow); */
  }
  .blog-item {
    overflow: visible;
  }

  h4.start-subhead{
    color: #808080c7;
    font-weight: lighter;
    margin-bottom: 15px;
  }
  figure.flex-format-img{
    height:100%;
  }
  figure.flex-format-img img{
    height:100%;
    object-fit: cover;
    object-position: center;
  }
  /* .content-round-slider{
    border-radius: 20px;
    overflow: hidden;
    box-shadow: -10px -10px 15px rgba(255,255,255,0.5),
            10px 10px 15px rgba(70,70,70,0.12);
  } */
  @media screen and (min-width:1000px){
    .container-header .navbar-brand {
      text-align: center;
    }
  }
  @media screen and (min-width:768px){
    div.content-img-container{
      display: flex;
      justify-content: flex-end;
    }
  }
  img.content-img{
    height: 400px !important;
    width: 400px;
    object-fit: cover;
    border-radius: 20px !important;
    box-shadow: -10px -10px 15px rgba(255,255,255,0.5),
            10px 10px 15px rgba(70,70,70,0.12);
  }
  .startseiten3-text{
    text-align: center;
    margin-top: 20px;
  }
  .startseiten3-text p{
    word-spacing: 15px;
    font-size: 1.3em;
  }
  .bg-gray-light{
    background-color:var(--color-light-bg);
    /* box-shadow: var(--box-shadow); */
    padding:40px 0;
  }
  .bg-blue-light{
    background-color:var(--color-light-blue-bg);
    /* background-image: url('/images/kundenordner/bg-neu.jpg'); */
    background-position: center;
    background-size: cover;
    /* box-shadow: var(--box-shadow); */
    color: #333;
  }
  .overflow-cut{
    padding:40px 0;
    overflow: clip;
  }
  .bg-blue-light.background-icon-right .container > .background-icon-padding{
    padding-right:225px;
    position: relative;
  }
  .bg-blue-light.background-icon-right .container > .background-icon-padding::after{
    content: '\f559' !important;
    font-family: "Font Awesome 6 Pro";
    font-weight:200;
    color:#0496d888;
    position: absolute;
    right: 0;
    top: -114px;
    font-size: 263px;
    transform: rotate(15deg);
  }
  .pl-1{
    padding-left: 10px;
  }
  @media screen and (max-width:768px){
    .bg-blue-light.background-icon-right .container > .background-icon-padding{
      padding-right:50px;
    }
    .bg-blue-light.background-icon-right .container > .background-icon-padding::after{
      content: '\f05a' !important;
      font-family: "Font Awesome 6 Pro";
      font-weight:300;
      color:#0496d888;
      position: absolute;
      right: 0;
      top: -40px;
      font-size: 400px;
      transform: rotate(15deg);
    }
  }
  ul.check-list {
      list-style: none;
      padding: 0;
      display: block;
  }
  ul.check-list li {
    /* color: RGBA(0,0,0,0.5);
    line-height: 1.5;
    font-size:1.2em; */
      padding-left: 2em;
      display: block;
      margin-top: 15px;
  }
  ul.check-list li::before {
      display: inline-block !important;
      content: '\f058' !important;
      font-family: "Font Awesome 6 Pro";
      color:var(--color-basic) !important;
      position: absolute;
      font-weight: 200;
      font-size: 1.3em;
      margin-right: 1em;
      transform: translate(-1.3em, -4px);
  }
  /* #start-content{
    transform:scale(0.1);
    opacity: 0;
  }
  #start-content.scrolled{
    transform:scale(1);
    opacity: 1;
  }
  #start-content-subpage{
    transform:scale(0.1);
    opacity: 0;
  }
  #start-content-subpage.scrolled{
    transform:scale(1);
    opacity: 1;
  }
  #footer-left{
    transform: translateX(-150px);
  }
  #footer-left.scrolled{
    transform: translateX(0px);
  }
  #footer-right{
    transform: translateX(150px);
  }
  #footer-right.scrolled{
    transform: translateX(0px);
  } */

  .start-content h1.blue{
    /* color:var(--color-basic);font-weight: 400; */
  }
  main .blog-items {
    margin: 0 0 var(--content-block-margin) 0;
    grid-template-columns: 100%;
  }
  main .blog-items:last-of-type {
    margin: 0;
  }
  main .blog-items > .blog-item{
    margin: 0 0 var(--content-block-margin) 0;
  }
  main .blog-items > .blog-item:last-of-type {
    margin: 0;
  }
  .color-featureboxen-small{
    width:100%;
    background-color: var(--color-basic);
    padding:25px 0 15px 0;
  }
  .featurebox a{
    color:#fff;
    text-decoration: none;
  }
  .featurebox a:hover{
    color:#fff;
  }
  .featurebox span.fa-stack.fa-2x{
    background-color: #fff2;
    border-radius: 100%;
    margin-bottom: 10px;
    width:2em;
    height:2em;
    transition: all ease .6s;
  }
  .featurebox a:hover span.fa-stack.fa-2x{
    background-color: #fff;
  }
  .featurebox a:hover span.fa-stack.fa-2x i{
    color: var(--color-basic);
  }
  .featurebox h5{
    font-size: 1em;
  }
  .featurebox h5 i{
    margin-left:15px;
    transition: all ease .6s;
  }
  .featurebox a:hover h5 i{
    transform: translateX(5px);
  }
  .content-hightlight-text{
    font-weight: bold;
    font-size: 110%;
  }
  .background-img{
    min-height: 600px;
    background-size: cover;
    background-position: 50% 30%;
    padding:40px 15px;
    display: grid;
    justify-content: center;
    align-items: start;
    position: relative;
    box-shadow: var(--box-shadow);
  }
  .background-img::after{
    content:" ";
    display: block;
    background-color: #3334;
    height:100%;
    width:100%;
    position: absolute;
    z-index: 2;
  }
  .background-img .container {
    display: grid;
    justify-content: center;
    align-items: center;
  }
  .background-img .d-flex-center{
    color:#fff;
    font-size: 4em;

    text-align: center;
    z-index: 5;
  }
  .background-img .d-flex-center p{
    font-size: var(--content-h2-font-size);
  }
  .start-content-row{
    /* background-color: var(--color-light-bg); */
    /* box-shadow: var(--box-shadow); */
  }
  .start-content-row > .text-col{
    padding:10px;
    display: grid;
    justify-content: center;
    align-items: center;
  }
  .start-content-row figure{
    margin:0;
    overflow: hidden;
    border-radius: 20px;
  }
  .start-content-row figure > img{
    box-shadow: var(--box-shadow);
    min-height:auto;
    height:100%;
    width:100%;
    object-fit: cover;
    transition: all ease .6s;
  }
  .start-content-row:hover figure > img{
    transform:scale(1.3);
  }
  @media screen and (min-width:768px){
    .main-content > div.img-col{
      display: grid;
      justify-content: flex-end;
    }
    #start-content-subpage .text-left{
      text-align: left !important;
    }
  }
  #start-content-subpage img.content-right-img{
    box-shadow: var(--box-shadow);
    min-height:auto;
    height:100%;
    width:100%;
    object-fit: cover;
  }
  .service-card .card{
    border:none;
    position: relative;
    box-shadow: var(--box-shadow);
  }
  .service-card .card .card-header{
    background-color: #fff0;
    padding:0;
    border:none;
    height:250px;
    overflow: clip;
  }
  .service-card .card .card-header img{
    height:250px;
    width:100%;
    object-fit:cover;
    transition: all ease .4s;
  }
  .service-card .card .card-body{
    position: absolute;
    width:100%;
    height:auto;
    background-color: #0005;
  }
  .service-card .card .card-body p{
    color:#fff;
    margin:0;
    letter-spacing: 1px;
  }
  .service-card .card .card-body p i{
    transition: all ease .4s;
    transform: translate(15px , 2px);
  }
  .service-card a:hover .card-header img{
    transform:scale(1.1);
  }
  .service-card a:hover .card .card-body p i{
    transform: translate(25px , 2px);
  }
  .services-container .row {
    justify-content: center;
  }
  .services-container .row > div{
    margin-bottom: 30px;
  }
  main .table > :not(caption) > * > * {
    padding: .5rem .5rem;
    /* background-color: #fff0; */
    border-bottom-width: 1px;
    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);
  }

  .team-section{
    margin-top: var(--content-block-margin);
  }
  .team-section .team-item {
    box-shadow: var(--box-shadow);
    background-color: #fff;
    height: 100%;
  }
  .team-section .team-item .item-infos{
    padding:10px 15px;
    text-align: center;
  }
  .team-section .team-item .item-infos hr{
    width: 33%;
    margin: 0 auto;
    border-top:1px solid;
    border-color: var(--color-basic);
    margin-bottom: 1rem;
    opacity: 1;
  }
  .team-section .team-item a{
    text-decoration: none;
    font-size: .9em;
  }
  .team-section .team-item a i{
    font-size: 1.1em;
    color: var(--color-basic);
    font-weight: normal;
    margin-right: 5px;
  }
  /* #team-header{
    transform:scale(0.1);
    opacity: 0;
  }
  #team-header.scrolled{
    transform:scale(1);
    opacity: 1;
  }
  #team-item1{
    transform: translateX(-150px);
    opacity: 0;
  }
  #team-item1.scrolled{
    transform: translateX(0px);
    opacity: 1;
  }
  #team-item2{
    transform: translateY(150px);
    opacity: 0;
  }
  #team-item2.scrolled{
    transform: translateY(0px);
    opacity: 1;
  }
  #team-item3{
    transform: translateX(150px);
    opacity: 0;
  }
  #team-item3.scrolled{
    transform: translateX(0px);
    opacity: 1;
  }
  #jobs-teaser{
    transform: translateY(150px);
    opacity: 0;
  }
  #jobs-teaser.scrolled{
    transform: translateY(0px);
    opacity: 1;
  } */
  .leistungen-sections{
    margin-top: var(--content-block-margin);
    padding: 70px 0 0px 0;
  }
  .leistungen-sections.start .leistungen-section{
    padding: 70px 0 70px 0;
    background-color:var(--color-light-bg);
    position: relative;
    z-index: 0;
  }
  .leistungen-sections.start .leistungen-section::before{
    display: block;
    content: "";
    width:100%;
    height: 100%;
    background-color:  #f2f2f2d6;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .leistungen-sections.leistungen .content-round-slider{
    box-shadow: none;
    border-radius: 0px;
  }
  .leistungen-sections .content-round-slider > img{
    width:100%;
    height:300px;
    object-fit: cover;
  }
  .leistungen-sections .content-round-slider > .color-background-text{
    padding: 5px;
    color:var(--color-basic);
    background-color: #fff;
    font-size: 1.2em;
  }
  .jobs-teaser-sections.start .jobs-teaser-section{
    padding: 70px 0 70px 0;
    background-color:var(--color-light-bg);
    box-shadow: var(--box-shadow);
    position: relative;
    z-index: 0;
  }
  .jobs-teaser-sections.start .jobs-teaser-section::before{
    display: block;
    content: "";
    width:100%;
    height: 100%;
    background-color:  #ffffffd6;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .schwerpunkte-row .schwerpunkte-card{
    display: flex;
    margin-bottom: 30px;
    height: 100%;
    align-items: start;
  }
  .schwerpunkte-card img{
    width: 170px;
    height: auto;
    object-fit: contain;
  }
  .schwerpunkte-card .card-content{
    display: grid;
    padding:20px 15px 5px 20px;
    height: 100%;
  }
  .schwerpunkte-card .card-content h4{
    color: var(--color-basic);
  }
  .leistungen-sections .leistung{
    margin-top: var(--content-block-margin);
  }
  .leistungen-sections .leistung .row .text{
    padding:20px 20px 20px 5%;
    min-height:400px;
    display: flex;
    align-items: center;
  }
  .leistungen-sections .row .leistung .img-bg, .leistungen-sections .leistung .row .img-bg{
    height:100%;
    min-height: 400px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .leistungen-sections.start  h3.highlight-header{
    /* color:#fff !important; */
  }
  .leistungen-sections.start .row .leistung{
    margin-top: 30px;
    background-color: #fff;
    overflow: hidden;
  }
  .leistungen-sections.start .row .leistung .text{
    padding:5px;
    text-align: center;
    z-index: 5;
    position: relative;
    background-color: #fff;
  }
  .leistungen-sections.start .row .leistung .text h3{
    font-size: 1em;
    font-weight: normal;
    margin: .5em 0;
  }
  .leistungen-sections.start .row a{
    text-decoration: none;
  }
  .leistungen-sections.start .row a:hover{
    color:inherit;
  }
  .leistungen-sections.start .row .leistung .text h3 i{
    font-weight: normal;
    font-size: 1em;
    margin-left: 10px;
    transition: all ease .5s;
  }
  .leistungen-sections.start .row a:hover .leistung .text h3 i{
    transform: translateX(10px);
  }
  .leistungen-sections.start .row .leistung .img-bg{
    min-height: 300px;
    transition: all ease .5s;
  }
  .leistungen-sections.start .row a:hover .leistung .img-bg{
    transform: scale(1.05);
  }
  .jobs-section{
    padding: 70px 0 70px 0;
    background-color:var(--color-light-bg);

    position: relative;
    z-index: 0;
    margin-top: var(--content-block-margin);
  }

  .featureboxen-galerie a{
    color:var(--color-basic);
  }
  .featureboxen-galerie a:hover{
    color:var(--color-basic);
  }
@media screen and (max-width:1000px){
   .row.reverse-md{
     flex-direction: column-reverse;
   }
  header.container-header .container-nav{
    box-shadow: none !important;
  }
  header.container-header .container-nav .dj-mobile-open-btn ,header.container-header .container-nav .dj-mobile-open-btn:hover{
    background-color: #fff0;
  }
  header.container-header .container-nav .dj-mobile-open-icon::before{
    font-family: 'Font Awesome 6 Pro';
    font-weight: lighter;
    font-size: 2em;
  }
  header.container-header .header {
    display: grid;
    grid-template-columns: 400px 1fr;
  }
  header.container-header .header{
    padding:0 20px;
  }
  .container-header .navbar-brand a img{
    /* width:60%; */
    /* max-width: calc(100% - 50px); */
  }
  #footer-right .visforms{
    margin-top: 50px;
  }
}
@media screen and (max-width:500px){
  header.container-header .header {
    display: grid;
    grid-template-columns: 350px 1fr;
  }
}
@media screen and (max-width:400px){
  header.container-header .header {
    display: grid;
    grid-template-columns: 300px 1fr;
  }
}
.com-contact .com-contact__container > h3{
  display: none;
}
.com-contact .com-contact__container .com-contact__thumbnail img{
  max-width: 100%;
  width:300px;
  margin:30px 0;
}
.com-contact .com-contact__info{
}
.com-contact .com-contact__info dl.com-contact__address {
  display: grid;
  grid-template-columns: auto 1fr;
}
.com-contact .com-contact__info  dl.com-contact__address dt {
  grid-column-end: 2;
  grid-column-start: 1;
}
.com-contact .com-contact__info  dl.com-contact__address dd {
  grid-column-end: 3;
  grid-column-start: 2;
  margin-bottom: 0;
  padding: 0 0 0 1em;
}
@media screen and (max-width:768px){
  .com-contact .com-contact__info .com-contact__address dt{
    width: max-content;
    margin-right: 10px;
    display: inline-block;
  }
}
.alert-info {
  --bs-alert-color: var(--body-color) !important;
  --bs-alert-bg: var(--color-light-bg) !important;
  --bs-alert-border-color: var(--color-basic) !important;
  line-height: 1.2;
}
.alert-info p{
  color:#fff;
}
.accordion-button:not(.collapsed) {
  color: var(--color-basic) !important;
  background-color: var(--color-light-bg) !important;
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--color-basic) !important;
}
.accordion-button:focus {
  z-index: 3;
  border-color: var(--bs-accordion-btn-focus-border-color);
  outline: 0;
  box-shadow: var(--color-light-bg) 0px 0px 0px 0px !important;
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-icon) !important;
  transform: var(--bs-accordion-btn-icon-transform);
}
/* Content  END*/

/* Footer */

  .contact-footer{
    padding: 90px 0 65px 0;
    background-color:var(--color-light-green-bg);
    background-image: url('../images/AdobeStock_279054205.jpg');
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: cover;
    background-attachment: fixed;
    backface-visibility: visible;
    position: relative;
    z-index: 0;
    text-align: left;
  }
  .contact-footer .container::after{
    content: "";
    display: block;
    height:1px;
    background-color: #3330;
    width:100%;
    margin: 20px auto 0 auto;
  }
  .contact-footer::before{
    display: block;
    content: "";
    width:100%;
    height: 100%;
    background-color:  var(--color-light-bg);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .contact-footer .hgd-bottom-box{
    margin-bottom: 30px;
  }
  .contact-footer .footer-logo img{
    width:250px;
    max-width:100%;
    /* background-color: #fff; */
    padding:5px;
    margin-bottom: 15px;
  }
  .contact-footer  h3{
    font-size:var(--content-h2-font-size);
    font-weight: normal;
    margin-bottom: 15px;
  }
  .contact-footer  p, .contact-footer  a{
    font-size:15px !important;
    color:var(--color-font-footer) !important;
    font-weight: normal;
  }
  .contact-footer  a{
    color:var(--color-font-footer)  !important;
    text-decoration: none;
  }
  .contact-footer  i{
    font-size: 1em;
  }
  .contact-footer .footer-background {
    background-color: rgba(0,0,0,0.2);
    margin:-15px;
    padding:30px 15px;
  }
  .footer-kontaktdaten p{
    margin-bottom: 10px;
    font-size:1.1em !important;
  }
  .footer-kontaktdaten i{
    margin-right: 10px;
  }
  .contact-footer  i ,.contact-footer  span{
    color: var(--color-font-footer);
  }
  .contact-footer table p{
    margin:0 !important;
  }
  .contact-footer  ul.menu{
    list-style: none;
    padding: 0;
    margin: 0;
    font-size:1.1em;
  }
  .contact-footer  table tr , .contact-footer  table tr td{
    border:none !important;
  }
  .contact-footer .table > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) {
    width: 10px;
  }
  .container-bottom-a > *, .container-top-a > *, .container-top-b > * {
    margin: 0;
  }
  .table > :not(caption) > * > * {
    padding: 0;
  }
  .table {
    color: var(--body-color);
  }
  .contact-footer .visforms h1{
    color:#fff;
    font-size: 1.3em;
    margin-bottom: 25px;
    font-weight: bold;
  }
  .contact-footer h3{
    margin: 0 0 15px 0;
    font-size: 1.3em;
    font-weight: bold;
  }
  /* .contact-footer h3::after,.contact-footer .visforms h1::after{
    content: "";
    display: block;
    height:1px;
    background-color: #fff;
    width:80px;
    margin-top: 5px;
  } */
  .contact-footer .visforms .form-group.row.justify-content-center{
    justify-content: flex-start !important;
  }
  .contact-footer .visforms .form-group.row.justify-content-center > input{
    border-radius: 0;
    margin-left:calc(var(--bs-gutter-x) * .5) !important;
  }
  .contact-footer .visforms input.form-control , .contact-footer .visforms textarea.form-control{
    border-radius: 0;
    margin-bottom: 10px;
  }
  .com-contact .fields-container{
    list-style: none;
    padding:0;
  }
/* Footer END*/

/* Copyright */

  .footer{
    margin-top:0 !important;
    background-image:none;
    background-color:var(--color-light-green-bg);
    color:var(--color-font-footer);
    font-size: 14px;
  }
  .footer .mod-footer {
    color:#fff;
  }
  .footer .grid-child {
    padding: 10px 0 20px 0;
  }

/* Copyright END*/


/* ----------------------------------------------------------------------------------- */
/* ------------------------- Usercentrics + Back2Top Button -------------------------- */
/* ----------------------------------------------------------------------------------- */
:root {
--btns-width: 50px;
--btns-height: 50px;
--btns-position: absolute;
--btns-bg-color: var(--primary-color);
--btns-bg-color-active: var(--primary-color-light);
--btns-color: #fff;
--btns-border: 1px solid var(--color-font-footer);
--btns-border-radius: 5px;
--btn-backtop-size: 23px; /* font-size for arrow icon */
--btn-uc-size: 1.2; /* scaling of the fingerprint icon */
--btns-box-shadow: none;
--btns-xl-mr: 15px;
--btn-backtop-xl-mb: 200px;
--btn-uc-xl-mb: calc(var(--btn-backtop-xl-mb) + 65px);
--btns-sm-mb: 15px;
}
#back-top{
display: grid;
place-content: center;
position: var(--btns-position);
bottom: var(--btn-backtop-xl-mb);
right: var(--btns-xl-mr);
width: var(--btns-width);
height: var(--btns-height);
padding: 0px;
background: var(--btns-bg-color);
border: var(--btns-border);
border-radius: var(--btns-border-radius);
box-shadow: var(--btns-box-shadow);
}
#back-top:hover{
background: var(--btns-bg-color-active);
}
#back-top span.icon-arrow-up{
font-size: 25px;
color: var(--btns-color);
}
@media screen and (max-width: 992px) {
#back-top {
bottom: var(--btns-sm-mb);
right: 37%;
place-self: center; /* parent element must be 'display:grid' or 'display:flex' (cassiopeia's
body is 'flex') */
}
.footer .grid-child {
padding: 1.5rem 0.5em 5rem;
}
}
