.hero .home-hero-bgr-wrap {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    background-color: #052628
}

.hero .home-hero-bgr-wrap .home-hero-bgr-tiles {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-image: url(../media/raster.4e3bcc2e.svg);
    background-position: 50% 0;
    background-size: 142px 71px;
    background-repeat: repeat
}

.hero .home-hero-bgr-wrap .home-hero-bg-top-overlay {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: auto;
    height: 150px;
    background-image: linear-gradient(0deg, rgba(5, 18, 24, 0), #051218 60%)
}

.hero .home-hero-bgr-wrap .home-hero-bg-bottom-overlay {
    position: absolute;
    left: 0;
    top: auto;
    right: 0;
    bottom: 0;
    height: 250px;
    background-image: linear-gradient(180deg, rgba(5, 18, 24, 0), #051218 36%)
}

.hero .hero-img {
    position: relative;
    width: 100%;
    height: 80vh;
    display: flex;
    justify-content: center;
    object-fit: contain
}

@media screen and (max-width:767px) {
    .hero .hero-img {
        height: 60vh
    }
}

.hero .hero-img img {
    object-fit: contain;
    width: auto;
    height: 100%
}

.hero .hero-content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 750px;
    margin-right: auto;
    margin-left: auto
}

.hero .hero-content h1 {
    position: relative
}

.hero .hero-content .hero-text {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center
}

.hero .hero-content .hero-button {
    margin-top: 50px
}

.hero .hero-partners {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    flex-direction: column;
    display: flex;
    align-items: center;
    max-width: 750px;
    margin-right: auto;
    margin-left: auto;
    width: 100%
}

.hero .hero-partners .partner-wrapper {
    margin-top: 20px;
    display: flex;
    column-gap: 50px
}

@media screen and (max-width:767px) {
    .hero .hero-partners .partner-wrapper {
        column-gap: 25px
    }
}

.hero .hero-partners .partner-wrapper img {
    width: auto;
    height: 20px
}

@media screen and (max-width:767px) {
    .hero .hero-partners .partner-wrapper img {
        height: 17.5px
    }
}

.service-wrapper {
    display: flex;
    padding-top: 120px;
    padding-bottom: 380px
}

@media screen and (max-width:767px) {
    .service-wrapper {
        flex-direction: column;
        padding-bottom: 200px;
        row-gap: 80px
    }
}

.referenzen-wrapper .sticky-wrapper {
    margin-top: 50px;
    position: relative;
    height: calc(120vh + 50px);
    width: 100%
}

.referenzen-wrapper .sticky-wrapper .slide {
    height: 60vh;
    width: 100%
}

.referenzen-wrapper .sticky-wrapper .slide .image-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
    border: .5px solid rgba(255, 254, 241, .2);
    border-radius: 20px;
    overflow: hidden
}

.referenzen-wrapper .sticky-wrapper .slide .image-wrapper.second {
    opacity: 0
}

.referenzen-wrapper .sticky-wrapper .slide .image-wrapper img {
    display: block;
    object-fit: cover;
    min-width: 100%;
    max-height: 100%
}

.referenzen-wrapper .sticky-wrapper .slide .image-wrapper .image-overlay {
    position: absolute;
    left: 0;
    top: auto;
    right: 0;
    bottom: 0;
    height: 200px;
    background-image: linear-gradient(180deg, rgba(5, 18, 24, 0), #051218 110%)
}

.referenzen-wrapper .sticky-wrapper .slide .image-wrapper .slide-text {
    position: absolute;
    left: 0;
    top: auto;
    right: 0;
    bottom: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center
}

.referenzen-wrapper .sticky-wrapper .sticky-slide1 {
    z-index: 2;
    position: relative
}

.referenzen-wrapper .sticky-wrapper .sticky-slide2 {
    position: -webkit-sticky;
    position: sticky;
    top: 20%;
    margin-top: -60vh;
    z-index: 1
}

.number-wrapper {
    display: flex;
    flex-direction: column;
    row-gap: 50px
}

.image-slider {
    margin: 50px -35px 0;
    overflow: hidden;
    position: relative;
    display: flex
}

.image-slider:hover div {
    animation-play-state: paused
}

.image-slider .slider-wrapper {
    display: flex;
    position: relative;
    animation: marquee 15s linear infinite
}

.image-slider .slide {
    position: relative;
    width: 358px;
    height: 600px;
    margin: 0 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.image-slider .slide .large-slide {
    height: 100%;
    width: 100%;
    background: linear-gradient(129.1deg, hsla(0, 0%, 100%, .1) 1.2%, hsla(0, 0%, 100%, 0) 175.17%);
    border: .5px solid rgba(255, 254, 241, .2);
    border-radius: 20px;
    overflow: hidden
}

.image-slider .slide .large-slide img {
    object-fit: cover;
    width: auto;
    height: 100%
}

.image-slider .slide .small-slide {
    width: 100%;
    height: 285px;
    background: linear-gradient(129.1deg, hsla(0, 0%, 100%, .1) 1.2%, hsla(0, 0%, 100%, 0) 175.17%);
    border: .5px solid rgba(255, 254, 241, .2);
    border-radius: 20px;
    overflow: hidden
}

.image-slider .slide .small-slide img {
    object-fit: cover;
    width: auto;
    height: 100%
}

.image-slider .slide .small-slide .slide-content {
    position: relative;
    z-index: 20;
    padding: 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.image-slider .slide .small-slide .slide-content .slide-list {
    margin: 1rem 0 2rem
}

.image-slider .slider-overlay-left {
    position: absolute;
    left: 0;
    width: 200px;
    height: 100%;
    background-image: linear-gradient(270deg, rgba(5, 18, 24, 0), #051218 100%)
}

@media screen and (max-width:767px) {
    .image-slider .slider-overlay-left {
        display: none
    }
}

.image-slider .slider-overlay-right {
    position: absolute;
    right: 0;
    width: 200px;
    height: 100%;
    background-image: linear-gradient(90deg, rgba(5, 18, 24, 0), #051218 100%)
}

@media screen and (max-width:767px) {
    .image-slider .slider-overlay-right {
        display: none
    }

    .image-slider {
        margin: 50px -24px 0
    }
}

@keyframes marquee {
    0% {
        transform: translateX(0)
    }

    to {
        transform: translateX(-100%)
    }
}