/*! Contents generated by MODX - this file will be overwritten. */
:root {
  --main-bg-color: #ffffff;
  --font-color: #2B2B2B;
  --naviumbruch: 1000px;
  --font1:'Montserrat', sans-serif;
  --font2:'Montserrat', sans-serif;
  --page-color1:#d02a2e;
  --page-color2:#ffffff;
  --page-color3:#2b2b2b;
  --page-color4:#ffffff;
  --maxwidth:1500px;
}







/*!in SCSS wieder integrieren, css var in media queries funktionieren*/

@media (max-width: 1000px) {
  button.menu-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .navbar {
    z-index: 1001;
    position: relative; }
    .navbar::before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      background: white;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1001; }
  .logo {
    position: relative;
    z-index: 1002; }
  nav {
    display: none;
    position: absolute;
    width: 100%;
    top: 79px;
    border-top: 1px solid #e5ede7;
    -webkit-transform: translateY(-220%);
        -ms-transform: translateY(-220%);
            transform: translateY(-220%);
    background-color: white;
    z-index: 1000;
    -webkit-transition: -webkit-transform ease .3s;
    transition: -webkit-transform ease .3s;
    -o-transition: transform ease .3s;
    transition: transform ease .3s;
    transition: transform ease .3s, -webkit-transform ease .3s; }
    nav ul {
      display: block;
      background: white;
      z-index: 1000;
      width: 100%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      height: -webkit-fit-content;
      height: fit-content;
      border-bottom: 4px solid #073a57; }
    nav li {
      height: auto;
      width: 100%;
      padding: 0; }
      nav li.active::before {
        content: "";
        display: block;
        background-color: #073a57;
        width: 4px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0; }
      nav li.active:not(.parent)::after {
        content: "";
        display: block;
        background-color: #073a57;
        width: 4px;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0; }
    nav a, nav span {
      width: 100%;
      padding: 12px 20px;
      text-align: center;
      border-bottom: 1px solid #a4bfcf; }
  .menu-active nav {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0); }
  nav {
    display: block; } 
    .mactive span {
        border-bottom-style: dotted; }
      .mactive ul {
        visibility: visible;
        opacity: 1;
        height: auto;
        display: block;
        border-top: 0;
        padding-bottom: 0;
        padding: 20px;
        background: rgba(0, 0, 0, 0.05);
        padding-top: 0;
        padding-bottom: 0; }
      li.parent::after {
        right: none;
        border-right: 2px solid var(--page-color1);
        border-bottom: 2px solid var(--page-color1);
        width: 11px;
        height: 11px;
        right: 33px;
        top: 33px; }
      li.parent:hover::after {
        border-right: 2px solid #000;
        border-bottom: 2px solid #000; }
      nav > ul > li > ul {
        visibility: hidden;
        opacity: 0;
        position: relative;
        background: 0;
        padding-top: 0;
        height: 0;
        display: none; }
      nav > ul > li.mactive > ul {
        visibility: visible;
        opacity: 1;
        height: auto;
        display: block; }
      li.parent > ul a, li.parent > ul span {
        border-top: 0; }
      nav > ul > li > ul a, nav > ul > li > ul span {
        line-height: 1.3em; }
        @media (min-width: 1150px) { 
    nav > ul > li:hover > ul{
        display: block;
        opacity: 1;
        visibility: visible;
    }
  }

   
}

    
@media (min-width: 1000px) {
    nav > ul > li:hover > ul{
        display: block;
        opacity: 1;
        visibility: visible;
    }
}.diamant__element, .diamant__element__mask{
    background-color:var(--main-bg-color)
}

.trapez-overlay{
    /*!background: rgba(22, 22, 22, 0.9);*/
    top: 80%;
}

.trapez-overlay_inner{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
}

.navbar::before{
    background: background: var(--main-bg-color);
}

.slider-referenzen .swiper-button-next{
    border-top: 1px solid var(--page-color1);
    border-right: 1px solid var(--page-color1);
    transform: rotate(45deg);
}

.slider-referenzen .swiper-button-prev{
    border-top: 1px solid var(--page-color1);
    border-left: 1px solid var(--page-color1);
    transform: rotate(-45deg);
}


@media (max-width: 1000px){
    nav ul {
       background: var(--main-bg-color);
    }
    li.parent:hover::after{
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
    }
}

@media (max-width: 600px){
    .diamant__element__ol .diamant__element__mask, .diamant__element__or .diamant__element__mask, .diamant__element__ul .diamant__element__mask, .diamant__element__ur .diamant__element__mask {
        background: linear-gradient(135deg,#2b2b2b 15%,transparent);
    }
}

@media (min-width: 1000px){
    .social-icons{
        margin-right:20px;
    }
    
    /*!
    nav>ul>li>ul{
        background:var(--page-color3)
    }*/
    
    li.parent::after{
        border-right: 1px solid var(--page-color1);
        border-bottom: 1px solid var(--page-color1);
    }
}



/*!Korrektur Grösse Trapez Mobile Header*/
@media (max-width: 600px){
    .trapez-overlay {
      top: 60% !important;
    }
}


.gallerie-slider .swiper-button-next {
    transform: scale(0.5) rotate(180deg) translate(60px, 80px);
    transform-origin: right center;
}

.gallerie-slider .swiper-button-prev{
    transform: scale(0.5) rotate(0deg) translate(0px, -82px);
    transform-origin: left center;
}

.gallerie-slider a.openimg {
    padding: 4px 6px 2px;
    font-size: 1.1em;
}

/*!
.swiper-slide{
    border: 1px solid #2b2b2b;
}*/


.google-bewertung-container {
    z-index: 5;
}