
.heroBanner {
    position: relative;
    min-height: 31.25rem;
    padding: 4rem 6rem;
    display: flex;
    justify-content: center;
    align-items: center;
    /*border-bottom: 2rem solid var(--ci100);*/
    z-index: 10;
}
.heroBanner.vh500 {
    min-height: 31.25rem;
}
.heroBanner.vh600 {
    min-height: 37.5rem;
}
.heroBanner.vh700 {
    min-height: 43.75rem;
}
.heroBanner.vh800 {
    min-height: 50rem;
}
.heroBanner.vh900 {
    min-height: 56.25rem;
}
.heroBanner.vh25 {
    min-height: 25vh;
}
.heroBanner.vh33 {
    min-height: 33vh;
}
.heroBanner.vh40 {
    min-height: 40vh;
}
.heroBanner.vh50 {
    min-height: 50vh;
}
.heroBanner.vh66 {
    min-height: 66vh;
}
.heroBanner.vh75 {
    min-height: 75vh;
}
.heroBanner.vh100 {
    min-height: calc(100svh - var(--main_top)) !important;
    min-height: calc(100vh - var(--main_top));
}

.heroImage {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    overflow: clip;
    overflow-clip-margin: content-box;

}

.heroBanner .overlay {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    overflow: clip;
    overflow-clip-margin: content-box;
}


.heroContent {
    position: relative;
    text-align: center;
    padding: 1rem;
    z-index: 5;
    border: 0px solid transparent;
    border-radius: var(--radius_standard);
    box-shadow: var(--boxShadowMedium);
}



.heroContent.sitewidth {
    width: var(--site_width);
}
.heroContent.width800 {
    width: 800px;
}
.heroContent.width700 {
    width: 700px;
}
.heroContent.width600 {
   width: 600px;
}
.heroContent.width500 {
    width: 500px;
}
.heroContent.width400 {
    width: 400px;
}


.heroContentHeadline,
.heroContentsubHeadline {
    display: block;
    /*text-shadow: var(--text-shadow);*/
} 
.heroContentHeadline.gradientStd,
.heroContentHeadline.gradientLight,
.heroContentHeadline.gradientAlt,
.heroContentsubHeadline.gradientStd,
.heroContentsubHeadline.gradientLight,
.heroContentsubHeadline.gradientAlt {
    display: inline-block;
    /*text-shadow: none;*/
} 


.cbp_topleft {
    justify-content: flex-start;
    align-items: flex-start;
}
.cbp_topCenter {
    justify-content: center;
    align-items: flex-start;
}
.cbp_topRight {
    justify-content: flex-end;
    align-items: flex-start;
}
.cbp_centerLeft {
    justify-content: flex-start;
    align-items: center;
}
.cbp_centerCenter {
    justify-content: center;
    align-items: center;
}
.cbp_centerRight {
    justify-content: flex-end;
    align-items: center;
}
.cbp_bottomLeft {
    justify-content: flex-start;
    align-items: flex-end;
}
.cbp_bottomCenter {
    justify-content: center;
    align-items: flex-end;
}
.cbp_bottomRight {
    justify-content:flex-end;
    align-items: flex-end;
}


.heroContent.alignCenter {
    text-align: center;
}
.heroContent.alignLeft {
    text-align: left;
    margin-right: 0;
}
.heroContent.alignRight {
    text-align: right;
    margin-left: 0;
}

.heroContent.alignCenter .contentButtons {
    justify-content: center;
}
.heroContent.alignRight  .contentButtons {
    justify-content: flex-end;
}

.heroContent.blur05 {
    backdrop-filter: blur(5px);
}
.heroContent.blur10 {
    backdrop-filter: blur(10px);
}
.heroContent.blur15 {
    backdrop-filter: blur(15px);
}
.heroContent.blur20 {
    backdrop-filter: blur(20px);
}





.contentButtons {
    margin-top: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.heroContent .icon-button a {
    position: relative;
    background: var(--ci100);
    padding: 1rem;
    color: var(--white100);
    display: flex;
    flex-direction: row;
    align-items: center;
    border: 0 solid transparent;
    transition: var(--animation_03);
    border-radius: var(--radius_half);
}
.heroContent .icon-button a:hover {
    background: var(--ci110);
    color: var(--white100);
    transition: var(--animation_03);
}
.heroContent .icon-button.buttonSolid01 a {
    background-color: var(--ci100);

}
.heroContent .icon-button.buttonSolid01 a:hover {
    background-color: var(--ci400);

}
.heroContent .icon-button.buttonSolid02 a {
    background-color: var(--ci400);

}
.heroContent .icon-button.buttonSolid02 a:hover {
    background-color: var(--ci100);

}
.heroContent .icon-button.buttonOutline01 a {
    border: 2px solid var(--ci100);
    background-color: transparent;

}
.heroContent .icon-button.buttonOutline01 a:hover {
    background-color: var(--ci100);

}
.heroContent .icon-button.buttonOutline02 a {
    border: 2px solid var(--ci400);
    background-color: transparent;

}
.heroContent .icon-button.buttonOutline02 a:hover {
    background-color: var(--ci400);
}
.heroContent .iconRight a {
    flex-direction: row-reverse;
}

.heroContent .icon-button i {
    font-size: var(--font_size06);
    padding-right: .5rem;
}
.heroContent .iconRight i {
    padding-left: .5rem;
    padding-right: 0;
} 



.boxBackground {
    padding: 2rem;
    border: 0 solid transparent;
    border-radius: var(--radius_standard);
    box-shadow: var(--boxShadowSmall)
}

.headBackground {
    padding: 1rem;
    border: 0 solid transparent;
    border-radius: var(--radius_half);
}
.bgcolor01 {
    background-color: var(--white100);
}
.bgcolor02 {
    background-color: var(--ci940);
}
.bgcolor03 {
    background-color: var(--ci400);
}
.bgcolor04 {
    background-color: var(--ci600);
}
.bgcolorci001 {
    background-color: var(--ci100);
}
.bgcolorci002 {
    background-color: var(--ci200);
}
.bgcolorci003 {
    background-color: var(--ci300);
}

.heroContentHeadline, 
.heroContentsubHeadline {
    margin: 0;
}

.heroContentHeadline.headBackground , 
.heroContentsubHeadline.headBackground  {
    display: block;
}

.heroContentText {
    padding-bottom: 1rem;
}
.heroContentText > * {
    font-size: var(--font_size05);
}
.heroContentText p {
    text-align: unset;
}

.heroContentText.txtblack > *, .txtblack {
    color: var(--black100) !important;
}
.heroContentText.txtgrey03  > *, .txtgray90 {
    color: var(--gry100) !important;
}
.heroContentText.txtgrey02  > *, .txtgray80 {
    color: var(--gry200) !important;
}
.heroContentText.txtgrey01  > *, .txtgray70 {
    color: var(--ci500) !important;
}
.heroContentText.txtwhite  > *, .txtwhite {
    color: var(--white100) !important;
}
.heroContentText.txtci001  > *, .txtci001 {
    color: var(--ci100) !important;
}
.heroContentText.txtci002  > *, .txtci002 {
    color: var(--ci110) !important;
}
.heroContentText.txtci003  > *, .txtci003 {
    color: var(--ci200) !important;
}



.parallax__container {
    width:100%;
    height:100%;
    left:0;
    top:0;
    position:absolute;
    overflow:hidden;
    clip: rect(0, auto, auto, 0);
    z-index: 1;
}
.parallax__container .parallax {
    width:100%;
    height:100%;
    top:0;
    position:fixed;
    background-position:center center;
    background-repeat:no-repeat;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    background-size: cover;
}


body.maintenance .heroBanner.vh100 {
    min-height: calc(100vh - 4rem) !important;
    border-top: 2rem solid var(--ci100);
    border-bottom: 2rem solid var(--ci100);
}



@media screen and (max-width:785px) {
    .heroBanner {
        padding: 3rem;
    }
    .heroContentText > * {
        font-size: var(--font_size04);
      }
      .heroContent .icon-button a {
        padding: 0.75rem;
    }
}

@media screen and (max-width: 697px) {
    .heroBanner.vh100 {
        min-height: calc(100svh - 5rem) !important;
        min-height: calc(100vh - 5rem);
    }
    
}

@media screen and (max-width: 597px) {
    .heroBanner {
        padding: 2rem;
    }
    .boxBackground {
        padding: 1rem;
     }
    .heroContentText > * {
        font-size: var(--font_size03);
    }

}