@charset "UTF-8";

:root{
  --color-yellow: #fee581;
  --color-red: #ce151d;
  --content-block-margin: clamp(40px,10vh,100px);
  --content-h1-font-size: clamp(1rem, 10vw, 2rem);
  --content-h2-font-size: clamp(.9rem, 7vw, 1.6rem);
  --content-p-font-size: clamp(.9rem, 2vw, 1.2rem);
  --content-navigation-font-size: clamp(.8rem, 1.4vw, 1.2rem);
  --content-navigation-small-font-size: clamp(.7rem, 1.4vw, 1.1rem);
  --cassiopeia-font-family-headings: 'Arial';
}
*,
*::before,
*::after {
  box-sizing: border-box;
}

#usercentrics-button.usercentrics-button.uc-button-bl .uc-privacy-button-wrapper {
    right: 20px !important;
    bottom: 20px !important;
	left: auto !important;
}
.usercentrics-button .uc-privacy-button-wrapper {
	height: 50px !important;
	width: 50px !important;
}
a{
  text-decoration: none !important;
}
/* i{
  font-family: "Font Awesome 5 Free" !important;
} */
@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}
body {
  margin: 0;
  font-family: 'Arial' !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);
}
body h1 , body .h1{
  font-size: var(--content-h1-font-size) !important;
}
body h2 , body .h2{
  font-size: var(--content-h2-font-size) !important;
}
/* BASICS END */

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

/* Header / Logo + Menü */

  header.container-header{
    background-color: var(--color-yellow) !important;
    background-image:none !important;
    position: fixed;
    width:100%;
    top:0;
  }
  header.container-header .header{
    display: grid;
    grid-template-columns: 350px 1fr;
  }
  header.container-header .container-nav {
    flex-wrap: none;
    justify-content: flex-end;
    align-items:center;
    padding-bottom: 0;
  }
  header.container-header .navbar-brand {
    display: flex;
    align-items: center;
  }
  header.container-header .container-nav .dj-megamenu-clean li a.dj-up_a{
    color:var(--cassiopeia-color-primary);
    font-size: var(--content-navigation-font-size);
    height:35px;
    padding: 0 15px;
  }
  header.container-header .container-nav .dj-megamenu-clean li a.dj-up_a > span{
    height:35px;
  }
  header.container-header .container-nav .dj-megamenu-clean li a::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 3px;
    top: 100%;
    left: 0;
    background: var(--color-red);
    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 a.active {
    color: var(--color-red);
  }
  header.container-header .container-nav .dj-megamenu-clean li a:hover::after , header.container-header .container-nav .dj-megamenu-clean li a.active::after {
    transform: scaleX(1);
    transform-origin: left;
  }

  header > .container-topbar{
  	transition:all ease .6s;
  	overflow: hidden;
  	font-size: var(--content-navigation-small-font-size);
    margin-top:10px;
  }
  header > .container-topbar a{
  	color:var(--cassiopeia-color-primary);
  	transition: all ease .6s;
    padding: 0 15px;
  }
  header > .container-topbar a:hover{
  	color:var(--color-red);
  }
  header > .container-topbar i{
  	/* font-weight: 400; */
  }
  a.dj-mobile-open-btn span.fa.fa-bars {
    /* content: "\10f0c9"; */
    /* font-weight: 300; */
  }
  @media (min-width: 1200px){
    .h1, h1 {
      font-size: 2.5rem;
    }
  }
  @media screen and (max-width: 991.98px){
    .container-header {
    position: fixed !important;
    }
  }
  @media screen and (max-width: 768px) {
    header > .container-topbar{
    	display: none;
    }
  }
  @media screen and (min-width: 768px) {
  	header > .container-topbar{
  		height:50px;
  		transition:all ease .6s;
  		overflow: hidden;
  	}
  	header.scrolled .quick-contact-bar{
  		height:0px;
  	}
  }
/* Header / Logo + Menü END */


/* Content  */

  .site-grid{
    display: block !important;
    grid-template-rows: none;
    grid-template-columns: none !important;
    /* grid-template-areas:none; */
  }
  .site-grid > div:not(.container-component):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);
  }
  figure.flex-format-img{
    height:100%;
  }
  figure.flex-format-img img{
    height:100%;
    object-fit: cover;
    object-position: center;
    width: 100%;
  }
  .leistungen-cards .row > div{
    margin-bottom: var(--gutter-x);
  }
  .leistungen-cards .card{
    box-shadow: 0 5px 15px rgba(0,0,0,.08);
    height:100%;
    transition: all ease .4s;
  }
  .leistungen-cards .card:hover{
    box-shadow: 0 8px 20px rgba(0,0,0,.1);
    transform: scale(1.015);
  }
  .leistungen-cards .card-header.card-header-bg{
    min-height:250px;
    background-position: center;
    background-size: cover;
    color:#fff;
    font-size: var(--content-h2-font-size);
    font-weight:bold;
    text-shadow:  0 0 2px  #000;
    /* display: flex;
    align-items: flex-end; */
  }
  .leistungen-cards .card-body{
    display: grid;
    align-content: space-between;
  }
  .leistungen-cards .card-body a.btn.btn-sm.btn-outline-dark:hover {
    background-color: var(--cassiopeia-color-primary);
    border-color: var(--cassiopeia-color-primary);
    color: #fff;
  }
  .anchor{
    position: relative;
    top:-120px;
  }
  body .sige_masonry {
    grid-auto-rows: 0 !important;
    grid-row-gap: 3px !important;
    grid-column-gap: 5px !important;
    grid-template-columns: repeat(auto-fill, minmax(220px,1fr)) !important;
  }

  @media screen and (min-width: 768px) {
    figure.flex-format-img {
      height: 100%;
      padding:0;
      margin:0;
      max-height:725px;
    }
  }
/* Content  END*/

/* Footer */

  .contact-footer{
    padding: 50px 0 0 0;
    /* background-color: var(--color-yellow); */
    background-image:url("/images/kundenordner/Spnebunker.jpeg");
    color:var(--cassiopeia-color-primary) !important;
  }
  .contact-footer table{
    color:var(--cassiopeia-color-primary) !important;
  }
  .contact-footer::before{
    content: "";
    height:100%;
    width:100%;
    top:0;
    left:0;
    display: block;
    position: absolute;
    background-color: #fee581ba;
    z-index: 2;
  }
  .contact-footer .hgd-bottom-box{
    margin-bottom: 30px;
    z-index: 3;
  }
  .contact-footer .hgd-bottom-box h3{
    font-size:var(--content-h2-font-size);
    font-weight: normal;
    margin-bottom: 15px;
  }
  .contact-footer .hgd-bottom-box p, .contact-footer .hgd-bottom-box a{
    font-size:16px;
  }
  .contact-footer .hgd-bottom-box a{
    color:inherit;
    text-decoration: none;
    font-weight: bold;
  }
  .contact-footer .hgd-bottom-box a:hover{
    color:var(--color-red);
  }
  .contact-footer .hgd-bottom-box i{
  }
  .contact-footer .hgd-bottom-box p{
    margin:0 !important;
  }
  .contact-footer .hgd-bottom-box ul.menu{
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .contact-footer .hgd-bottom-box table tr , .contact-footer .hgd-bottom-box table tr td{
    border:none !important;
  }
  .container-bottom-a > *, .container-bottom-b > *, .container-top-a > *, .container-top-b > * {
    margin: 0;
  }
  .table > :not(caption) > * > * {
    padding: 0;
  }
/* Footer END*/

/* Copyright */

  .footer{
    margin-top:0 !important;
    background-image:none;
  }
  .footer .grid-child {
    padding: 20px 0;
  }

/* Copyright END*/

/* Existing Dunkelgut layout on the standard Cassiopeia structure. */
:root { --dg-shell: 100%; --dg-header-height: 106px; }
@media (min-width:576px) { :root { --dg-shell:540px; } }
@media (min-width:768px) { :root { --dg-shell:720px; } }
@media (min-width:992px) { :root { --dg-shell:960px; } }
@media (min-width:1200px) { :root { --dg-shell:1140px; } }
@media (min-width:1400px) { :root { --dg-shell:1320px; } }
body.site { padding-block-start:var(--dg-header-height); }
header.container-header {
  display:grid; grid-template-columns:min(350px, calc(100% - 44px)) minmax(44px,1fr);
  grid-template-rows:auto auto; column-gap:0; row-gap:0;
  padding-block:0; padding-inline:calc((100% - var(--dg-shell))/2 + .5em);
  z-index:1030;
}
header.container-header > .grid-child:not(.container-nav):not(.container-below-top) {
  grid-column:1; grid-row:1 / span 2; padding:.5em; min-width:0;
}
header.container-header .navbar-brand { display:flex; align-items:center; width:100%; margin:0; padding:5px 0; }
header.container-header .brand-logo { display:block; width:100%; }
header.container-header .brand-logo img { display:block; width:100%; height:auto; max-width:100%; }
header.container-header > .container-nav {
  grid-column:2; grid-row:1; display:flex; flex-wrap:wrap;
  justify-content:flex-end; align-items:center; min-width:0; padding:.5em .5em 0;
}
header.container-header > .container-topbar {
  grid-column:2; grid-row:2; width:auto; justify-self:end; max-width:100%;
  padding:0 .5em; margin:10px 0 0; height:50px; overflow:hidden;
  font-size:var(--content-navigation-small-font-size); transition:height .6s ease;
}
header.container-header.scrolled > .container-topbar { height:0; }
header.container-header > .container-topbar .row { margin-inline:0; }
header.container-header > .container-topbar a { padding-inline:15px; }
.site-grid > .container-banner { margin:0; }
.site-grid > .container-component { display:flex; flex-direction:column; max-width:none; width:100%; }
.site-grid > .container-component > main { width:100%; max-width:var(--dg-shell); margin-inline:auto; padding-inline:.5em; }
.site-grid > .container-bottom-a, .site-grid > .container-bottom-b { display:block; max-width:none; }
.site-grid > .container-bottom-a > .card, .site-grid > .container-bottom-b > .card { display:block; width:100%; border:0; border-radius:0; box-shadow:none; background:transparent; }
.site-grid > .container-bottom-a > .card > .card-body, .site-grid > .container-bottom-b > .card > .card-body { padding:0; }
.container-bottom-b .mod-wrapper { width:100%; }
.container-bottom-b .mod-wrapper iframe { display:block; max-width:100%; }
@media (max-width:979px) {
  header.container-header > .container-nav { align-items:flex-start; }
  header.container-header .dj-mobile-open-btn {
    display:inline-flex; align-items:center; justify-content:center;
    min-width:44px; min-height:44px; padding:0; line-height:1; box-sizing:border-box;
  }
  header.container-header .dj-mobile-open-btn > span { line-height:1; }
}
@media (max-width:768px) {
  header.container-header { grid-template-rows:auto; }
  header.container-header > .container-topbar { display:none; }
  header.container-header > .grid-child:not(.container-nav):not(.container-below-top) { grid-row:1; }
}

/* Keep long legal source URLs within the mobile article column. */
main .com-content-article a { overflow-wrap:anywhere; }
