@import url("https://fonts.googleapis.com/css2?family=Fira+Sans:wght@100;300;400;700&display=swap");
.template-root {background:  var(--cassiopeia-color-primary); color: var(--white);}
a.template-root:hover {background:  var(--cassiopeia-color-hover) !important; color: var(--white) !important;}

body {color: var(--template-bg-dark-80); hyphens: auto;}
.row {width:100%;}
.h1, h1 {font-size: 2rem; font-weight: 300 !important; margin-bottom: 1rem;}
.h2, h2 {font-size: 2rem; font-weight: 300 !important; margin-bottom: 1rem;}
.h4, h4 {font-weight: 300 !important; margin-bottom: 1rem;}
.h3, h3 {font-weight: 300 !important;}
a {text-decoration: none !important;}

a.brand-logo span {color: var(--template-bg-dark-90) !important;}

.row.no-g {
  --gutter-x: 0em !important;
}

.p-6 {padding: 6rem;}
.px-6 {padding: 0 6rem;}
.py-6 {padding: 6rem 0;}
.p-7 {padding: 8rem;}
.px-7 {padding: 0 8rem;}
.py-7 {padding: 8rem 0;}
.p-8 {padding: 10rem;}
.px-8 {padding: 0 10rem;}
.py-8 {padding: 10rem 0;}

body .container-banner{
  display: block !important;
  background-color: #fff0 !important;
  margin:0 !important;
}

/* landing page  */
.overflow-hidden{
  overflow: hidden !important;
}
.on-hover-gray > div:before{
  content:"";
  height:100%;
  width:100%;
  position: absolute;
  background-color: #0008;
  opacity: 0;
  left: 0;
  top: 0;
}
.on-hover-gray:hover > div:before{
  opacity: 1;
}
.on-hover-gray > div p{
  transition: all ease .4s;
}
.on-hover-gray > div:hover p{
  transform:scale(1.2);
}
.min-height > div{
  min-height: 250px !important;
}
/* landing page  End*/

/* lmz optimierung */
 main{
   overflow-x: hidden;
 }

.brand-logo img{
  min-width: 250px;
  max-width: 100%;
}
.navbar {
  padding: 5px 0;
}
.metismenu.mod-menu .metismenu-item > a:focus, .metismenu.mod-menu .metismenu-item > button:focus {
    outline: 0px dotted #ced4da !important;
    outline-offset: 0px !important;;
}
.mod-menu a{
  color:inherit !important;
}
.metismenu.mod-menu .metismenu-item > a, .metismenu.mod-menu .metismenu-item > button, .metismenu.mod-menu .metismenu-item > span {
display: inline-block;
overflow: visible;
}
.metismenu.mod-menu .metismenu-item{
  display: inline-block;
 padding:5px 15px;
}
.metismenu.mod-menu .mm-toggler{
  height: min-content;
}
.metismenu.mod-menu .mm-toggler::after{
  border:none;
  display: inline-block !important;
  content: '\f0d7' !important;
  font-family: "Font Awesome 5 Pro";
  color: var(--cassiopeia-color-primary) !important;
  position: relative;
  /* font-size: 23px; */
  height: 25px;
  width: auto;
  margin:0 5px 0 10px;
  /* padding: 5px; */
  vertical-align: top;
}
.container-header .metismenu > li > button::before{
  content:none !important;
}
.container-header nav {
  margin-top:0 !important;
}
@media (min-width: 768px) {
  .container-header .mod-menu {
    display: block !important;
  }
}
@media screen and (min-width: 1300px)  and (max-width: 1450px) {
  .metismenu.mod-menu .metismenu-item {
    font-size: 1rem;
    padding: .5em;
  }
}
@media screen and (min-width: 768px) {
  #menuToggler{
    display: none;
  }
  .menu-container .mod-languages{

  }
  .container-header .mod-menu {
    display: flex !important;
  }
  .menu-container .mod-languages .lang-inline{
    display: flex;
    justify-content: center;
    height: 100%;
    align-items: center;
  }
  div.mod-languages ul.lang-inline li {
   display:inline-block;
   height: max-content;
  }
  .container-header .metismenu > li.active > a:after,
  .container-header .metismenu > li.active > button:before,
  .container-header .metismenu > li > a:hover:after,
  .container-header .metismenu > li > button:hover:before {
     background:var(--cassiopeia-color-primary);
     opacity: 1;
  }
  ul.mod-menu li{
    position: relative;
  }
  ul.mod-menu > li > a::after, ul.mod-menu > li > a::after {
    content: '';
    position: absolute;
    background: var(--cassiopeia-color-primary);
    top: -4px;
    left: 4px;
    -webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
    width:0px;
    height:2px;
  }
  ul.mod-menu > li > a::before, ul.mod-menu > li > a::before {
    content: '';
    position: absolute;
    background: var(--cassiopeia-color-primary);
    top: -4px;
    left: 4px;
    -webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
    width:2px;
    height:0px;
  }
  ul.mod-menu > li.active > a::after, ul.mod-menu > li > a:hover::after {
    width:15px;
  }
  ul.mod-menu > li.active > a::before, ul.mod-menu > li > a:hover::before {
    height:15px;
  }

}
@media screen and (max-width: 768px) {
  .collapse:not(.show) {
    display: block !important;
  }
  #menu-container:not(.show) {
    right:-100%;
  }
  #menu-container{
    position: fixed;
    height:100vh;
    max-width: 95vw;
    background-color: #fff;
    box-shadow: 0 0 10px #3333;
    top:0;
    right:0%;
    transition: all ease .4s;
    padding:10px;
    display: block;
    padding-top: 100px;
    z-index: 99999;
  }
  .navbar{
    position: unset;
  }
  #menuToggler.hamburger{
    position: fixed;
    top:10px;
    right:10px;
    z-index:999999;
  }
  .metismenu.mod-menu .metismenu-item > ul {
    position: relative;
    box-shadow:none;
  }
  .metismenu.mod-menu .mm-collapse {
    position: relative;
    box-shadow:none;
  }
  .metismenu.mod-menu .metismenu-item {
    display: block;
  }
  .metismenu.mod-menu .mm-collapse:not(.mm-show) {
    display: block;
    height: 0;
    overflow: hidden;
  }
  .level-1.current.active , .level-2.current.active{
    border-left: 3px solid var(--cassiopeia-color-primary);
  }

  .brand-logo img {
    min-width: 250px;
    max-width: 70%;
  }

  button.mm-toggler{
    /* padding:10px !important; */
  }


}

.container-nav{
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}


.ansprechpatner-container{
  margin-bottom: 100px;
}


.ansprechpatner-container > .row > div > div{
  min-height:250px;
}
.ansprechpatner-container .contact-card{
  box-shadow: 0 0 10px #aaa5;
  border: 1px solid #dfe3e7;
  border-radius: 30px;
  padding: 15px;
}
.com-contact__thumbnail.thumbnail img{
  max-width: 200px;
}
.com-contact.contact{
  padding:15px;
}
main div.com-contact.contact{
  display: block;
  max-width: 1320px;
  margin: 10px auto 100px auto;
}
main div.com-contact.contact .com-contact__container{
  grid-template-rows: repeat(4,2);
  margin:80px 0;
}
main div.com-contact.contact h3{
  color:#fff;
  font-size:2em;
  font-weight: bold !important;
}
main div.com-contact.contact .com-contact__container h3{
  color:inherit;
}
main div.com-contact.contact .com-contact__form {
 background-color: var(--cassiopeia-color-primary);
 padding: 90px 200px 50px 200px;
 /* margin: -90px -200px -50px -200px; */
 /* border-radius: 15px; */
 color: #fff;
 border:1px solid#3333 !important;
 box-shadow: 3px 5px 10px #3333 !important;
}
main div.com-contact.contact .com-contact__form #contact-form{
  position: relative;
}
@media screen and (min-width: 1024px) {
  /* main div.com-contact.contact .com-contact__form #contact-form fieldset::before{
    content:"";
    display: block;
    position: absolute;
    height:80%;
    width:80%;
    top:10%;
    left:20%;
    border-radius: 15px;
    background-image:url('https://hgd-server6.de/afb-han.de/images/kundenordner/AdobeStock_343024211.jpeg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    border:1px solid#3333;
    box-shadow: 3px 5px 10px #3333;
    z-index: 9996;
  } */
}
@media screen and (max-width: 1024px) {
  .mod-footer {
    padding-bottom: 80px;
  }
  .com-contact__thumbnail.thumbnail img {
    margin: 20px 0;
  }
}
main div.com-contact.contact .com-contact__form #contact-form .control-group{
  position: relative;
  z-index: 9998;
}
main div.com-contact.contact .com-contact__form #contact-form .control-group input , main div.com-contact.contact .com-contact__form #contact-form .control-group textarea , main div.com-contact.contact .com-contact__form #contact-form .control-group button{
  border:1px solid#3333 !important;
  box-shadow: 3px 5px 10px #3333 !important;
}
main div.com-contact.contact .com-contact__form #contact-form .control-group button{
  border:1px solid#3333 !important;
  box-shadow: 3px 5px 10px #3333 !important;
  background-color: var(--cassiopeia-color-hover) !important;
}
@media (min-width: 992px) {
  .com-contact__container .com-contact__thumbnail {
    text-align: left;
  }
}

.mod-languages li.lang-active{
  display: none !important;
}
div.mod-languages img {
  max-width: none !important;
}
div.mod-languages a{
  padding:0 !important;
}
.menu-container{
  display: flex;
}

ul.check-list {
    list-style: none;
    padding: 0;
    display: block;
}
ul.check-list li {
    font-size: 1em;
    padding-left: 2em;
    display: block;
    margin-top: 10px;
}
ul.check-list li::before {
    display: inline-block !important;
    content: '\f00c' !important;
    font-family: "Font Awesome 5 Pro";
    color: var(--cassiopeia-color-primary) !important;
    position: absolute;
    font-size: 1.4em;
    margin-right: 1em;
    transform: translateX(-1.3em);
}

.awesomplete input{
  width:100% !important;
}
.mod-finder__search.input-group{
  justify-content: flex-end;
}
/* lmz optimierung END*/
.container-component {margin-top: 3rem;}
.template-root {background:  var(--cassiopeia-color-primary) !important;}

main > div {margin: 50px 0 100px 0;}
.header {display: grid; grid-template-columns: 20% 70%; justify-content: space-around;}
.container-header {z-index: 99999;}
.container-header .container-nav {display: grid; align-items: flex-end;}

.container-header {background-color: var(--white); background-image: linear-gradient(135deg,var(--white),var(--white)); box-shadow: rgba(0, 0, 0, 0.03) 0px 5px 5px inset;}

.com-content-article.item-page ul.fields-container {display: none;}

.hgd-video {z-index: 1;}
.CB_overlay {position: relative; z-index: 2;}
.container-header .navbar-brand img {width: 15rem; min-width: 15rem; padding: .3em; transition: all ease 1s;}
.container-header.header-resize .navbar-brand img {width: 12rem; min-width: 12rem; padding: .1em;}
.container-header .container-nav {justify-content: end;}
.container-header .mod-menu, .container-header .mod-menu, .container-header .navbar-toggler, .container-header .mod-menu>li>a, .container-header .mod-menu>li>span {color: var(--template-bg-dark-90);}
.CB_Container .fal, .CB_Container .far {padding: 0 .4rem;;}
.CB_Container a.btn {padding: .7rem 1.5rem; letter-spacing: .05rem;}
.CB_itembg {min-height: 100%;}
.container-header .navbar-toggler {margin-bottom: .8rem;}
.navbar-toggler:focus {box-shadow: 0 0 2px var(--dark);}


.row.g-6 > div{
  margin-bottom: 15px;
  align-self: stretch;
}
.check-cards-row ,.projekte-container{
  overflow: hidden;
}
.check-cards-row .card{
  height:100%;
}
.check-cards-row .card h4{
  margin: 0;
}
.check-cards-row i{
  color:var(--cassiopeia-color-primary);
  margin-right: 5px;
}

.projekte-container > .row > div{
  margin-bottom: 40px;

}

.projekt-beschreibung{
  font-size: .8em;
  color:rgb(135, 135, 135);
}
.projekt-beschreibung .row{
  margin-bottom: 5px;
}

.check-cards-row.pdfs i{
  color:red;
}
.check-cards-row.pdfs h4{
  margin:0 !important;
}

#mod-custom133 p{
  margin:0;
  padding:0;
}
#mod-hgd-contentbuilder112 {margin: 5rem 0;}
#mod-hgd-contentbuilder112 .hgd-button-group a.btn .fal {font-size: 1.5rem;}
#mod-hgd-contentbuilder112 .hgd-button-group a:hover.btn {background: var(--cassiopeia-color-hover) !important; color: var(--white) !important; border-color: var(--white);}
#mod-hgd-contentbuilder112 .container-fluid {padding: 0px;}
#mod-hgd-contentbuilder112 .img-scale {height: 36rem; transition: all ease .5s;}
#mod-hgd-contentbuilder113 {margin-top: 4rem;}
#mod-hgd-contentbuilder113 .separator_top {margin-top: -1px;}
#mod-hgd-contentbuilder113 .CB_Container a.btn:hover {background: var(--cassiopeia-color-hover) !important;}
#mod-hgd-contentbuilder114 .fal {font-size: 4rem;}
#mod-hgd-contentbuilder114 .card {transition: all ease .7s;}
#mod-hgd-contentbuilder114 a .card:hover {background: var(--cassiopeia-color-hover) !important;}
#mod-hgd-contentbuilder114 a .card:hover .fal {animation: effect .7s;}
#mod-hgd-contentbuilder115 .separator_bottom svg { transform:rotate(180deg);}
#mod-hgd-contentbuilder115 .separator_bottom {bottom: -1px;}
#mod-hgd-contentbuilder116 div.card-text {font-size: 1.15rem; font-weight: 300; line-height: 1.6rem;}
#mod-hgd-contentbuilder116 .fal {font-size: 1rem;}
#mod-hgd-contentbuilder116 .card-body {padding: 0;}
#mod-hgd-contentbuilder116 div.card-text {font-size: 1.15rem; font-weight: 300; line-height: 1.6rem;}
#mod-hgd-contentbuilder116 div.card img {max-width: 20rem;}
#mod-hgd-contentbuilder116 ul.cb_menu {padding-left: 0;list-style: none;}
#mod-hgd-contentbuilder116 ul.cb_menu a {font-size: 1.15rem; font-weight: 300; line-height: 1.6rem; text-decoration: none;color: currentColor;transition: all ease .4s;}
#mod-hgd-contentbuilder116 ul.cb_menu a:hover {color: var(--cassiopeia-color-hover);}
#mod-hgd-contentbuilder116 a {color: #000; transition: all ease .4s;}
#mod-hgd-contentbuilder116 a:hover {color: var(--cassiopeia-color-hover);}
#mod-hgd-contentbuilder116 .table > :not(caption) > * > * {padding: 0; border-bottom: 0;}
#mod-hgd-contentbuilder116 h3 {border-bottom: 1px solid var(--white);}
#mod-hgd-contentbuilder118 .table th {font-size: 1.3rem; font-weight: 300; letter-spacing: .1rem;}
#mod-hgd-contentbuilder118 .table th, #mod-hgd-contentbuilder118 .table tr td {color: var(--white);}
#mod-hgd-contentbuilder118 .table tbody th, #mod-hgd-contentbuilder118 .table tbody tr td {border-color: rgba(255,255,255,.4);}
#mod-hgd-contentbuilder118 .table tr {transition: all ease .4s;}
#mod-hgd-contentbuilder118 .table tr:hover {background: rgba(0,0,0,.3);}
#mod-hgd-contentbuilder118 .table .fal {font-size: 1.3rem; color: var(--white);}
#mod-hgd-contentbuilder118 a {transition: all ease .4s;}
#mod-hgd-contentbuilder118 a:hover {background: var(--cassiopeia-color-hover);}
#mod-hgd-contentbuilder119 {transition: all ease 1s !important;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg {border: 2px solid var(--cassiopeia-color-primary); transition: all ease .5s;}
#mod-hgd-contentbuilder119 .iconboxen .fal {font-size: 3.5rem; color: var(--cassiopeia-color-primary); transition: all ease .7s !important;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg h3 {letter-spacing: 0; transition: all ease .7s !important;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg p { transition: all ease .7s !important;}
#mod-hgd-contentbuilder119 .card {transition: all ease .7s;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg:hover {border-color: var(--cassiopeia-color-hover); background: var(--cassiopeia-color-primary) !important; color: var(--white) !important;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg::before {transform: scaleX(0); transform-origin: bottom right;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg:hover::before {transform: scaleX(1); transform-origin: bottom left;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg::before {content: " "; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; inset: 0 0 0 0; background: var(--cassiopeia-color-hover); z-index: -1; transition: transform .3s ease;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg:hover .fal {color: var(--white) !important; transform: scale(1.3);}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg:hover h3 {color: var(--white) !important; letter-spacing: .3 !important;}
#mod-hgd-contentbuilder119 .iconboxen .CB_itembg:hover p {color: var(--white) !important;}
zoomrotate
#mod-hgd-contentbuilder125 .CB_itembg a:hover {transform: scaleX(1.2);}
#mod-hgd-contentbuilder126 .fab {font-size: 3rem; color: var(--white) !important; opacity: .6; transition: all ease .4s;}
#mod-hgd-contentbuilder126 .fab:hover {animation: wiggle 1.5s linear; opacity: 1;}
.separator_bottom.sep-mod-hgd-contentbuilder126 {margin-bottom: -1px;}
#mod-hgd-contentbuilder126 .hgd-video {height: 500px; border: 1px solid #fff; box-shadow: 0 0px 80px rgba(0,0,0,.2);  border-bottom-right-radius: 20rem;}
#mod-hgd-contentbuilder126 .hgd-button-group {flex-direction: initial;}
#mod-hgd-contentbuilder127 {margin: 9rem;}
#mod-hgd-contentbuilder127 a {transition: all ease .4s;}
#mod-hgd-contentbuilder127 a:hover {background: var(--white); color: var(--cassiopeia-color-primary) !important;}
#mod-hgd-contentbuilder128 {margin: 5rem 0;}
#mod-hgd-contentbuilder128 .card-img-overlay {padding: 0;}
#mod-hgd-contentbuilder128 .card-title {background: #7800ff77; color: var(--white); padding: 1rem;}
#mod-hgd-contentbuilder128 h4 {font-size: 1.5rem; font-weight: 400; letter-spacing: .2rem; padding: .1rem 0 .1rem 0; margin: 0; transition: all ease .4s;}
#mod-hgd-contentbuilder128 .card:hover .card-title {background: #7800ffaa;}
#mod-hgd-contentbuilder128 .card:hover h4 {font-weight: 500; letter-spacing: .4rem;}
#mod-hgd-contentbuilder128 h5 {font-size: 1rem; font-weight: 400; padding: 0; margin: 0;}
#mod-hgd-contentbuilder128 .CB_Container .card {overflow: hidden; transition: all ease .4s;}
#mod-hgd-contentbuilder128 .card-img-top {transform: scale(1.5) rotate(10deg); transition: all ease .4s;}
#mod-hgd-contentbuilder128 .card:hover .card-img-top {transform: scale(1) rotate(0deg);}

.row.hgd-cards {--gutter-y: 0; --gutter-x: 0em;}

.footer .grid-child { padding: 1.5rem 0;}
.footer .grid-child .mod-footer{
  width:100%;
}
.footer {background-color: var(--cassiopeia-color-primary); background-image: linear-gradient(135deg,var(--cassiopeia-color-primary),var(--cassiopeia-color-primary)); margin-top: 0;}
.footer2 a {text-decoration: none; font-size: .8rem; font-weight: 300;}

.com-contact__form.contact-form {}
.form-control {width: 100%; color: var(--cassiopeia-color-hover);
    border: 1px solid var(--cassiopeia-color-hover);
        border-top-color: var(--cassiopeia-color-hover);
        border-right-color: var(--cassiopeia-color-hover);
        border-bottom-color: var(--cassiopeia-color-hover);
        border-left-color: var(--cassiopeia-color-hover);
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

nav.cb_navtabs .nav.nav-tabs .nav-link:hover, nav.cb_navtabs .nav.nav-tabs .nav-link.active {background-color: var(--cassiopeia-color-hover) !important; color: var(--white);}
.tab-content h6 {padding: 0;}
.tab-content .table > :not(caption) > * > * {padding: 0rem 0rem;}

div.cb_navtabsv .nav-link {border: none; white-space: nowrap;}
div.nav.cb_navtabsv .nav-link:hover, div.nav.cb_navtabsv .nav-link.active {background-color: var(--cassiopeia-color-hover) !important; color: var(--white);}

.accordion-button {
    font-family: "Font Awesome 5 Pro";
}
.accordion-button::after {
    content: "\f078" !important;
    background-image: none !important;
}
.accordion-item h3.accordion-header button {border-bottom: 1px solid var(--cassiopeia-color-hover) !important; }
.accordion-button:not(.collapsed) {
    color: var(--white) !important;
    background-color: var(--cassiopeia-color-hover) !important;
    box-shadow: inset 0 0 0 rgba(0,0,0,0);
}

.card-actions-3d a.btn {background: var(--cassiopeia-color-primary); border-radius: 4px; box-shadow: 0 2px 0px 0 rgba(0, 0, 0, 0.25); color: var(--white); display: inline-block; padding: .6rem 3rem .8rem; position: relative; text-decoration: none; transition: all 0.1s 0s ease-out;}

.card-actions-3d a.btn:hover {background: var(--cassiopeia-color-hover); box-shadow: 0px 8px 2px 0 rgba(0, 0, 0, 0.075); transform: translateY(-2px); transition: all 0.25s 0s ease-out;}

.card-actions-3d a.btn:active,
.card-actions-3d a.btn:active {background: var(--cassiopeia-color-hover); box-shadow: 0 1px 0px 0 rgba(255, 255, 255, 0.25); transform: translate3d(0, 1px, 0); transition: all 0.025s 0s ease-out;}

div.cards-3d {max-width: 100%;}

div.card-3d {background: var(--white); display: inline-block; perspective: 1000; position: relative; text-align: left; transition: all 0.4s 0s ease-in; z-index: 1;}

div.card-3d .card__image-holder {background: rgba(0, 0, 0, 0.1); height: 0; padding-bottom: 75%;}
div.card-3d .card__image-holder img {filter: brightness(.7); transition: all ease .6s;}
div.card-3d:hover .card__image-holder img, div.card-3d.show .card__image-holder img {filter: brightness(1);}

div.card-3d div.card-title-3d {background: var(--white); padding: .6rem 1.5rem 1rem; position: relative; z-index: 0;}

div.card-3d div.card-title-3d div.toggle-info-3d {border-radius: 3rem; height: 3rem; padding: 0; position: absolute; right: 1rem; top: 1rem;}

div.card-3d div.card-title-3d div.toggle-info-3d span {background: var(--white); display: block; position: absolute;  transition: all 0.3s 0s ease-out; width: 12px;}

div.card-3d div.card-title-3d div.toggle-info-3d span.right .fal {padding: 0rem;}
div.card-3d div.card-title-3d div.toggle-info-3d span.right {transform: rotate(0deg);}
div.card-3d.show div.card-title-3d div.toggle-info-3d span.right {transform: rotate(0.5turn);}

div.card-3d .card-title-3d h4 {font-size: 1.7rem; font-weight: 400; letter-spacing: 0.05em; margin: 0; padding: 0; transition: all ease .6s;}

div.card-3d .card-title-3d h4 small {display: block; font-size: 1.2rem; font-weight: 400; letter-spacing: 0.025em; filter: grayscale(70%);}

  div.card-3d div.card-description-3d {padding: 0 1.2rem 1rem; position: relative; font-size: 1.1rem;}
  div.card-3d div.card-description-3d h5 {font-size: 1.1rem;}
   div.card-3d div.card-description-3d td {padding:0 .5rem;}

  div.card-actions-3d {box-shadow: 0 2px 0px 0 rgba(0, 0, 0, 0.075); padding: 1rem 1.2rem 1.5rem; text-align: center;}

div.cards-3d div.card-3d div.card-flap {background: darken(var(--white), 15); position: absolute; width: 100%; transform-origin: top; transform: rotateX(-90deg);}

div.cards-3d div.card-3d div.flap1 {transition: all 0.2s 0.3s ease-out; z-index: -1;}
div.cards-3d div.card-3d div.flap2 {transition: all 0.2s 0s ease-out; z-index: -2;}

div.cards-3d.showing div.card-3d {cursor: pointer; opacity: 0.5; transform: scale(0.8);}

div.cards-3d div.card-3d:hover {cursor: pointer;}
div.cards-3d div.card-3d:hover h4 {color: var(--cassiopeia-color-primary); font-weight: 500; letter-spacing: .2rem; }
div.cards-3d.showing div.card-3d:hover {opacity: 0.9;transform: scale(0.9);}

div.card-3d.show {opacity: 1 !important; transform: scale(1) !important;}

div.card-3d div.card-title div.toggle-info-3d {background: var(--white) !important;}
div.card-3d div.card-title div.toggle-info-3d span {top: 1rem;}
div.card-3d div.card-title div.toggle-info-3d span.left {right: 1rem;}
div.card-3d div.card-title div.toggle-info-3d span.right {left: 1rem;}

div.cards-3d.showing div.card-3d.show div.card-flap {background: var(--white); transform: rotateX(0deg);}
div.cards-3d.showing div.card-3d.show div.flap1 {transition: all 0.2s 0s ease-out;}
div.cards-3d.showing div.card-3d.show div.flap2 {transition: all 0.2s 0.2s ease-out;}

.separator_top {
    display: grid;
    width: 100%;
    position: absolute;
    z-index: 0;
}
.separator_top_out {
    display: grid;
    align-items: end;
    width: 100%;
    z-index: 0;
}

.separator_top svg, .separator_top img {
	transform:rotate(180deg);
}

.separator_bottom {
    display: grid;
    width: 100%;
    align-items: end;
    position: absolute;
    bottom: 0;
}
.separator_bottom_out {
    display: grid;
    align-items: flex-start;
    width: 100%;
    z-index: 0;
}

.separator_bottom svg, .separator_bottom img, .separator_bottom_out svg, .separator_bottom_out img {
	transform:rotate(0deg);
}

.kontaktformular {margin-bottom: 5rem;}
.com-contact__container {display: block;}
.com-contact__container .com-contact__info {grid-row: inherit;}

.footer-border-top{
  border-top: 1px solid gray;
}
.footer-logo img{
  max-width: 100%;
  width: 200px;
}

@media screen and (max-width: 1440px) {
  .p-6 {padding: 2rem;}
  .px-6 {padding: 0 2rem;}
  .py-6 {padding: 2rem 0;}
  .p-7 {padding: 3rem;}
  .px-7 {padding: 0 3rem;}
  .py-7 {padding: 3rem 0;}
  .p-8 {padding: 4rem;}
  .px-8 {padding: 0 4rem;}
  .py-8 {padding: 4rem 0;}
}

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

}

@media screen and (max-width: 768px) {
    #mod-hgd-contentbuilder127 {margin: 0rem;}
    .p-6 {padding: 2rem;}
    .px-6 {padding: 0 2rem;}
    .py-6 {padding: 2rem 0;}
    .p-7 {padding: 2rem;}
    .px-7 {padding: 0 2rem;}
    .py-7 {padding: 2rem 0;}
    .p-8 {padding: 2rem;}
    .px-8 {padding: 0 2rem;}
    .py-8 {padding: 2rem 0;}
    .header {display: grid; grid-template-columns: 100%; justify-content: space-around;}
    .container-header .container-nav {justify-content: start;}
    .p-5 {padding: 1rem!important;}
}

@media screen and (max-width: 428px) {
  #mod-hgd-contentbuilder112 .img-scale {height: 16rem;}
  #mod-hgd-contentbuilder126 .g-5, #mod-hgd-contentbuilder126 .gx-5 {--gutter-x: 0rem;}
  #mod-hgd-contentbuilder126 .hgd-video {height: 300px; border-bottom-right-radius: 0rem;}
  .CB_Container a.btn {padding: .7rem .5rem;}
  .container-header .navbar-brand {width: 100%; text-align: center;}

  #header.header-responsive-nav .container-nav {display: flex; position: fixed; background: var(--cassiopeia-color-primary); top: -10rem; transition: all ease .5s;}
    #header.header-responsive-nav.aktiv ul li ul.mm-collapse {background: var(--cassiopeia-color-primary);}
    #header.header-responsive-nav.aktiv .container-nav {top: 0rem;}
    #header.header-responsive-nav.aktiv .container-header .container-nav {padding-bottom: 0em;}
    #header.header-responsive-nav.aktiv .container-header .container-nav .container-search, .container-header .container-nav nav {
    margin-top: 0em;}
    .container-header .navbar-toggler {border: 0px solid #fff; margin-bottom: 0;}
    #header.header-responsive-nav .icon-menu {color: #fff;}
    #header.header-responsive-nav.aktiv .metismenu.mod-menu .metismenu-item a, #header.header-responsive-nav.aktiv .metismenu.mod-menu .metismenu-item {color: #fff;}
}

.hgd-hover-box, .hgd-hover-box .CB_itembg {transition: all ease .7s;}
.hgd-hover-box.active {box-shadow: 0 0 100rem 30rem var(--cassiopeia-color-primary);}
.hgd-hover-box.active .CB_itembg {border: 1px solid #ffffff88; -webkit-transform: scale(1.2); transform: scale(1.2);}
.hgd-hover-box.active .CB_itembg {box-shadow: rgb(0, 0, 12) 0px 48px 48px -32px, rgba(0, 0, 0, 0.6) 0px 96px 96px -64px;}

@keyframes effect {
    0% {
        transform: scale(1, 1);
    }
    25% {
        transform: scale(1.5, 0.5);
    }

    50% {
        transform: scale(0.5, 1.5);
    }

    75% {
        transform: scale(1.5, 0.5);
    }

    100% {
        transform: scale(1, 1);
    }
}

@keyframes wiggle {
  0%, 7% {
    transform: rotateZ(0);
  }
  15% {
    transform: rotateZ(-15deg);
  }
  20% {
    transform: rotateZ(10deg);
  }
  25% {
    transform: rotateZ(-10deg);
  }
  30% {
    transform: rotateZ(6deg);
  }
  35% {
    transform: rotateZ(-4deg);
  }
  40%, 100% {
    transform: rotateZ(0);
  }
}

.rotate-center {
	-webkit-animation: rotate-center 0.6s ease-in-out both;
	        animation: rotate-center 0.6s ease-in-out both;
}

@-webkit-keyframes rotate-center {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotate-center {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

/* BMG: standard Cassiopeia adaptation, original dimensions and customer colours. */
:root {--cassiopeia-color-primary:#1a4803;--cassiopeia-color-hover:#c4c5c7;--cassiopeia-font-family-body:"Fira Sans",sans-serif;--cassiopeia-font-family-headings:"Fira Sans",sans-serif;--body-font-family:"Fira Sans",sans-serif;--template-bg-dark-80:#20334c;--white:#fff;}
body {font-family:"Fira Sans",sans-serif;font-size:16px;line-height:1.5;color:#20334c;background:#fff;}
h1,h2,h3,h4,h5 {font-family:"Fira Sans",sans-serif;} h1,h2 {font-weight:300;}
.header.container-header {display:flex;justify-content:space-between;align-items:flex-end;background:#fff;background-image:none;box-shadow:none;padding:0 max(24px,calc((100vw - 1304px)/2));min-height:114.55px;z-index:100;}
.header.container-header>.grid-child {width:auto;max-width:none;padding:0;margin:0;}
.header.container-header .navbar-brand {margin:0;padding:0;}
.header.container-header .navbar-brand img {width:min(400px,calc((100vw - 120px)/3));min-width:0;padding:0;height:auto;display:block;}
.header.container-header>.container-nav {display:block;padding:0 16px 8px 0;}
.bmg-nav {color:#20334c;font:400 16px/24px "Fira Sans",sans-serif;}
.bmg-menu,.bmg-menu ul {list-style:none;margin:0;padding:0;}
.bmg-menu {display:flex;gap:16px;align-items:center;}
.bmg-item {position:relative;display:flex;align-items:center;gap:8px;min-width:0;}
.bmg-item>a {color:inherit;display:block;position:relative;white-space:nowrap;text-decoration:none;padding:5px 0;}
.bmg-menu>.bmg-item.current>a::before,.bmg-menu>.bmg-item.active>a::before {content:"";position:absolute;width:15px;height:15px;top:-7px;left:-4px;border-top:2px solid #1a4803;border-left:2px solid #1a4803;}
.bmg-item>a:focus-visible,.bmg-subtoggle:focus-visible,.bmg-toggle:focus-visible {outline:2px solid #1a4803;outline-offset:4px;}
.bmg-subtoggle {border:0;padding:2px;background:none;color:#1a4803;line-height:1;cursor:pointer;}
.bmg-subtoggle::before {content:"";display:block;width:7px;height:7px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg);margin:-3px 2px 0;}
.bmg-subtoggle[aria-expanded=true]::before {transform:rotate(225deg);margin-top:3px;}
.bmg-submenu {display:none;position:absolute;top:100%;left:-8px;min-width:192px;padding:0 8px!important;background:#fff;box-shadow:0 4px 8px #0002;z-index:105;}
.bmg-item.open>.bmg-submenu {display:block;}
.bmg-submenu .bmg-item {display:block;}
.bmg-submenu a {padding:8px 0;}
.bmg-toggle {display:none;border:0;background:transparent;cursor:pointer;}
.bmg-menu-shade {display:none;}
.site-grid {row-gap:0;}
.container-banner {padding:0!important;margin:0!important;width:100%;max-width:none;}
.container-component {width:calc(100% - 32px);max-width:1320px;margin:48px auto 0;}
.container-component main {margin:16px 0 0;overflow:visible;}
main>div {margin:50px 0 100px;}
.container-footer {margin-top:0;background:#1a4803;background-image:none;}
.container-footer>.grid-child {width:calc(100% - 32px);max-width:1304px;margin:0 auto;padding:24px 0;}
#mod-hgd-contentbuilder116 {color:#000;background:#fff;width:100%;}
#mod-hgd-contentbuilder116 .card {border:0;box-shadow:none;background:transparent;}
#mod-hgd-contentbuilder116>.CB_overlay>.CB_Container>.container {max-width:1320px;margin:0 auto;padding:0 8px;}
#mod-hgd-contentbuilder116 .row {display:flex;flex-wrap:wrap;width:100%;margin:0;}
#mod-hgd-contentbuilder116 .row>.col-md-auto {flex:0 0 auto;}
#mod-hgd-contentbuilder116 .row>.col-md-3 {width:25%;}
#mod-hgd-contentbuilder116 .row.justify-content-between {justify-content:space-between;}
#mod-hgd-contentbuilder116 .table td {border:0;padding:8px;}
#mod-hgd-contentbuilder116 .table {color:inherit;}
#mod-custom133 {width:calc(100% - 32px);max-width:1304px;margin:40px auto 48px;}
#mod-custom133 iframe {max-width:100%;}
.bmg-footer-block {width:100%;}
.check-cards-row i {font-family:inherit;font-style:normal;}
.check-cards-row .fa-check::before {content:"✓";font-weight:700;}
@media (min-width:768px) and (max-width:1100px) {.bmg-menu{gap:12px}.bmg-nav{font-size:14px}.header.container-header{padding:0 24px}.header.container-header>.container-nav{padding-right:0}}
@media (max-width:767.98px) {
 .header.container-header{display:block;min-height:75px;height:75px;padding:0 8px;}
 .header.container-header .navbar-brand img{width:250px;max-width:70vw;min-width:0;padding:0;margin-top:4px;}
 .header.container-header>.container-nav{padding:0;}
 .bmg-toggle{display:flex;position:fixed;z-index:1002;right:18px;top:20px;width:48px;height:36px;align-items:center;justify-content:center;padding:3px;}
 .bmg-toggle span,.bmg-toggle span::before,.bmg-toggle span::after{display:block;width:40px;height:4px;background:#000;border-radius:2px;position:relative;transition:transform .15s;}
 .bmg-toggle span::before,.bmg-toggle span::after{content:"";position:absolute;left:0;top:-10px;}
 .bmg-toggle span::after{top:10px;}
 .bmg-toggle[aria-expanded=true] span{background:transparent;}
 .bmg-toggle[aria-expanded=true] span::before{top:0;transform:rotate(45deg);background:#555;}
 .bmg-toggle[aria-expanded=true] span::after{top:0;transform:rotate(-45deg);background:#555;}
 .bmg-panel{position:fixed;right:0;top:0;width:256px;max-width:95vw;height:100dvh;padding:100px 10px 20px;overflow-y:auto;background:#fff;box-shadow:0 0 10px #3333;z-index:1001;}
 .bmg-panel:not([data-open]){visibility:hidden;transform:translateX(105%);pointer-events:none;}
 .bmg-menu{display:block;font-size:20px;line-height:28px;}
 .bmg-item{display:flex;flex-wrap:wrap;gap:0;}
 .bmg-item>a{padding:5px 15px;white-space:normal;}
 .bmg-menu>.bmg-item.current,.bmg-menu>.bmg-item.active{border-left:3px solid #1a4803;}
 .bmg-menu>.bmg-item.active>a::before,.bmg-menu>.bmg-item.current>a::before{content:none;}
 .bmg-submenu{position:static;box-shadow:none;min-width:0;width:100%;padding-left:12px!important;font-size:17px;}
 .bmg-subtoggle{padding:10px;}
 .bmg-menu-shade[data-open]{display:block;position:fixed;inset:0;z-index:1000;background:transparent;}
 .container-component{width:calc(100% - 32px);margin-top:48px;}
 #mod-hgd-contentbuilder116>.CB_overlay>.CB_Container>.container {padding:0 16px;}
 #mod-hgd-contentbuilder116 .row>.col-md-auto,#mod-hgd-contentbuilder116 .row>.col-md-3{width:100%;}
 #mod-custom133 {margin-top:24px;}
}
@media (prefers-reduced-motion:reduce) {*{scroll-behavior:auto!important}.bmg-toggle span,.bmg-toggle span::before,.bmg-toggle span::after{transition:none}}

/* Standard footer position contains the original three separate visual bands. */
.container-footer {display:block;background:#fff;background-image:none;color:#20334c;}
.container-footer>.grid-child {display:block;max-width:none;width:100%;margin:0;padding:0;}
.bmg-copyright{background:#1a4803;color:#fff;width:100%;}
.bmg-copyright-inner{width:calc(100% - 32px);max-width:1304px;margin:0 auto;padding:24px 0;}
.bmg-copyright a{color:#fff;}
.bmg-copyright .footer2{font-size:13px;}

ul.check-list li::before {content:"✓"!important;font-family:inherit!important;font-weight:700;}

.header.container-header>.grid-child:first-child{align-self:flex-start;}
.header.container-header>.container-nav{padding-right:24px;}
@media(max-width:767.98px){.header.container-header>.container-nav{padding-right:0}.bmg-toggle{right:21px;top:19px;}}

#mod-hgd-contentbuilder116 .row.g-3{margin:-16px -8px 0;width:calc(100% + 16px);}
#mod-hgd-contentbuilder116 h3,#mod-hgd-contentbuilder116 h5,#mod-hgd-contentbuilder116 .card,#mod-hgd-contentbuilder116 .card-text{color:#000;}
#mod-custom133{width:100%;max-width:none;margin:40px 0 48px;}
#mod-custom133 .container{max-width:1320px;margin:0 auto;padding:0 8px;}
@media(max-width:767.98px){#mod-custom133{margin-top:24px}#mod-custom133 .container{padding:0 16px}}

/* Original logo has no resize animation; natural logo-height keeps tablet band proportional. */
.header.container-header{min-height:0;}
.header.container-header>.grid-child:first-child{padding-bottom:10.7px;}
.header.container-header .navbar-brand img{transition:none;}
/* Keep copyright/backlink text above the retained fixed consent/accessibility controls. */
.bmg-copyright-inner{padding-bottom:104px;}
@media(max-width:767.98px){.header.container-header{min-height:75px;}.header.container-header>.grid-child:first-child{padding-bottom:0;}}

/* Native system contact form: remove legacy200px side padding on small screens. */
@media(max-width:1024px){
 main div.com-contact.contact .com-contact__form{padding:40px 24px;width:100%;min-width:0;box-sizing:border-box;}
 main div.com-contact.contact .com-contact__form fieldset{min-width:0;max-width:100%;}
 main div.com-contact.contact .com-contact__form .controls{min-width:0;max-width:100%;}
 main div.com-contact.contact .com-contact__form input:not([type=checkbox]):not([type=radio]),main div.com-contact.contact .com-contact__form textarea{max-width:100%;}
 main div.com-contact.contact .com-contact__form altcha-widget{display:block;width:100%;max-width:100%;min-width:0;}
}
@media(max-width:767.98px){main div.com-contact.contact .com-contact__form{padding:32px 16px;}}
