#wpadminbar {
    z-index: 9999999999 !important;
}

/*!* Standardbreite für kleinere Bildschirme *!*/
.responsive-box {
    width: 100%; /* !* Füllt den verfügbaren Platz aus *! */
    max-width: 1920px; /* !* Maximalbreite *! */
    margin: 0 auto; /* !* Zentriert das Element *! */
}

/* !* Für Bildschirme ab 768px Breite *! */
/* @media (min-width: 768px) {
    .responsive-box {
        width: 75%; /* !* Passt die Breite an *! */
        /*max-width: 600px;
    }
} */


/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */

@media (min-width: 350px) {
    .responsive-box {
        width: 100%;
        max-width: 767px;
        font-size: clamp(35px, 2.5vw, 45px) !important;
    }
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .responsive-box {
        width: 75%;
        max-width: 948px;
        font-size: clamp(50px, 2.5vw, 60px) !important;
    }
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .responsive-box {
        width: 75%;
        /* Noch schmaler auf größeren Bildschirmen */
        max-width: 1224px;
        font-size: clamp(50px, 2.5vw, 60px) !important;
    }
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .responsive-box {
        width: 100%;
        /* Noch schmaler auf größeren Bildschirmen */
        max-width: 1480px;
    }
}

.team {
    position: relative;
    overflow: hidden;
    padding-bottom: 100px;
    background-color: #1b1b1c;
    color: #f9f9f4
}

@media (max-width: 894px) {
    .team {
        padding-bottom: 130px
    }
}

@media (max-width: 767px) {
    .team {
        padding-bottom: 145px
    }
}

.team__container {
    position: relative;
    z-index: 20;
    border-top: 2px solid rgba(249, 249, 244, .2);
    padding-top: 80px
}

@media (max-width: 894px) {
    .team__container {
        padding-top: 40px
    }
}

@media (max-width: 767px) {
    .team__container {
        padding-top: 30px
    }
}

.team__label {
    margin-bottom: 15px
}

@media (max-width: 1439px) {
    .team__label {
        margin-bottom: 10px
    }
}

@media (max-width: 894px) {
    .team__label {
        margin-bottom: 10px
    }
}

@media (max-width: 767px) {
    .team__label {
        margin-bottom: 10px
    }
}

.team__list {
    counter-reset: team
}

.team__item {
    position: relative
}

@media (min-width: 1055px) {
    .team__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }
}

.team__item:nth-child(3n-2) {
    margin-bottom: 320px
}

@media (max-width: 1439px) {
    .team__item:nth-child(3n-2) {
        margin-bottom: 250px
    }
}

@media (max-width: 1054px) {
    .team__item:nth-child(3n-2) {
        margin-bottom: 180px
    }
}

@media (max-width: 894px) {
    .team__item:nth-child(3n-2) {
        margin-bottom: 95px
    }
}

@media (max-width: 767px) {
    .team__item:nth-child(3n-2) {
        margin-bottom: 85px
    }
}

.team__item:nth-child(3n-1) {
    margin-bottom: 330px
}

@media (max-width: 1439px) {
    .team__item:nth-child(3n-1) {
        margin-bottom: 250px
    }
}

@media (max-width: 1054px) {
    .team__item:nth-child(3n-1) {
        margin-bottom: 180px
    }
}

@media (max-width: 894px) {
    .team__item:nth-child(3n-1) {
        margin-bottom: 100px
    }
}

@media (max-width: 767px) {
    .team__item:nth-child(3n-1) {
        margin-bottom: 70px
    }
}

.team__item:nth-child(3n) {
    margin-bottom: 280px
}

@media (max-width: 1439px) {
    .team__item:nth-child(3n) {
        margin-bottom: 230px
    }
}

@media (max-width: 1054px) {
    .team__item:nth-child(3n) {
        margin-bottom: 180px
    }
}

@media (max-width: 894px) {
    .team__item:nth-child(3n) {
        margin-bottom: 95px
    }
}

@media (max-width: 767px) {
    .team__item:nth-child(3n) {
        margin-bottom: 85px
    }
}

.team__item:last-child {
    margin-bottom: 0
}

.team__item:nth-child(2n) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.team__item::before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 800px;
    line-height: 1;
    letter-spacing: -.5px;
    font-weight: 300;
    opacity: .1
}

@media (max-width: 1619px) {
    .team__item::before {
        font-size: 47.61905vw
    }
}

@media (max-width: 1054px) {
    .team__item::before {
        -webkit-transform: none;
        transform: none;
        font-size: 52.08333vw
    }
}

@media (max-width: 767px) {
    .team__item::before {
        top: 0;
        font-size: 48vw
    }
}

.team__item:nth-child(2n-1)::before {
    right: -12.16216%
}

@media (min-width: 768px) and (max-width: 1054px) {
    .team__item:nth-child(2n-1)::before {
        top: -28px
    }
}

@media (max-width: 1054px) {
    .team__item:nth-child(2n-1)::before {
        right: -9.63542vw
    }
}

@media (max-width: 767px) {
    .team__item:nth-child(2n-1)::before {
        right: -11.2vw
    }
}

.team__item:nth-child(2n)::before {
    left: -10.81081%
}

@media (min-width: 768px) and (max-width: 1054px) {
    .team__item:nth-child(2n)::before {
        top: -57px
    }
}

@media (max-width: 1054px) {
    .team__item:nth-child(2n)::before {
        left: -7.55208vw
    }
}

@media (max-width: 767px) {
    .team__item:nth-child(2n)::before {
        left: -7.46667vw
    }
}

.team__photo {
    overflow: hidden;
    width: 45%;
    position: relative
}

.team__photo::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 66.96697%
}

@media (max-width: 1439px) {
    .team__photo {
        width: 51%
    }
}

@media (max-width: 1054px) {
    .team__photo {
        margin-bottom: 45px;
        width: 65.95745%
    }
}

@media (max-width: 767px) {
    .team__photo {
        margin-bottom: 40px;
        width: 83.18043%
    }
}

.team__photo-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.team__photo-wrapper img {
    max-width: none;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (max-width: 1054px) {
    .team__item:nth-child(2n-1) .team__photo {
        margin-right: auto
    }

    .team__item:nth-child(2n) .team__photo {
        margin-left: auto
    }
}

.team__info {
    width: 35.81081%
}

@media (max-width: 1619px) {
    .team__info {
        width: 42%
    }
}

@media (max-width: 1054px) {
    .team__info {
        width: 65.95745%
    }
}

@media (max-width: 767px) {
    .team__info {
        width: 100%
    }
}

.team__item:nth-child(2n-1) .team__info {
    margin-right: 8.58108%
}

@media (max-width: 1619px) {
    .team__item:nth-child(2n-1) .team__info {
        margin-right: 4.5%
    }
}

@media (max-width: 1439px) {
    .team__item:nth-child(2n-1) .team__info {
        margin-right: 0
    }
}

@media (max-width: 1054px) {
    .team__item:nth-child(2n-1) .team__info {
        margin-right: auto;
        margin-left: 8.51064%
    }
}

@media (max-width: 767px) {
    .team__item:nth-child(2n-1) .team__info {
        margin-left: 0
    }
}

.team__item:nth-child(2n) .team__info {
    margin-left: 9.18919%
}

@media (max-width: 1619px) {
    .team__item:nth-child(2n) .team__info {
        margin-left: 4.5%
    }
}

@media (max-width: 1439px) {
    .team__item:nth-child(2n) .team__info {
        margin-left: 0
    }
}

@media (max-width: 1054px) {
    .team__item:nth-child(2n) .team__info {
        margin-left: auto;
        margin-right: 8.51064%
    }
}

@media (max-width: 767px) {
    .team__item:nth-child(2n) .team__info {
        margin-right: 0
    }
}

.team__title {
    margin-bottom: 16px;
    text-indent: 14.15094%
}

@media (max-width: 1054px) {
    .team__title {
        margin-bottom: 22px;
        text-indent: 10.75269%
    }
}

@media (max-width: 767px) {
    .team__title {
        margin-bottom: 28px;
        text-indent: 10.70336%
    }
}

.team__lead {
    margin-bottom: 35px;
    -webkit-transition-delay: .3s;
    -o-transition-delay: .3s;
    transition-delay: .3s
}

@media (min-width: 1300px) and (max-width: 1439px) {
    .team__lead {
        font-size: 25px
    }
}

@media (min-width: 1055px) and (max-width: 1299px) {
    .team__lead {
        font-size: 20px
    }
}

.team__text {
    -webkit-transition-delay: .6s;
    -o-transition-delay: .6s;
    transition-delay: .6s
}

@media (min-width: 1055px) and (max-width: 1299px) {
    .team__text {
        font-size: 16px
    }
}

.team__bg {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%
}

@media (max-width: 767px) {
    .team__bg-lg {
        display: none
    }
}

@media (min-width: 768px) {
    .team__bg-sm {
        display: none
    }
}

.column_long {
    display: flex;
    gap: 0px;
    /* Abstand zwischen den beiden Absätzen */
    max-width: 100%;
    flex-direction: column;
}

.column_long p {
    all: unset;
    display: block;
    font-size: 20px;
    line-height: 1.4;
    color: inherit;
}


.column_long .title {
    font-weight: 500;
    margin-bottom: 4px;
}


.column_long .text {
    font-weight: 350;
    margin-bottom: 24px;
}

.column-image {
    width: 50%;
    position: relative;
}

.co-pilot-image {
    position: absolute;
    left: 0;
    max-width: 80%;
    height: auto;
}

.about-story-column {
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: flex-start;
    width: 100%;
}

.about-story-column img {
    width: 100%;
    max-width: 800px;
    height: auto;
    object-fit: cover;
}

@media (min-width: 895px) and (max-width: 1400px) {
    .about-story-column {
        flex-direction: column;
        gap: 24px;
    }

    .about-story-column img {
        max-width: 100%;
        width: 100%;
    }
}


.custom_usecases {
    max-width: 80%;
    height: auto;
    margin-left: -10vw;
}



.timeline {
    width: 100%;
    height: 20px;
    list-style: none;
    text-align: justify;
    margin: 80px auto;
    background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(45%, rgba(255, 255, 255, 0)), color-stop(51%, rgb(27, 27, 28)), color-stop(57%, rgba(255, 255, 255, 0)), color-stop(100%, rgba(255, 255, 255, 0)));
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 45%, rgb(27, 27, 28) 51%, rgba(255, 255, 255, 0) 57%, rgba(255, 255, 255, 0) 100%);
}

.timeline:after {
    display: inline-block;
    content: "";
    width: 100%;
}

.timeline li {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: #F39D79;
    text-align: center;
    line-height: 1.2;
    position: relative;
    border-radius: 50%;
}

.timeline li:before {
    display: inline-block;
    content: attr(data-year);
    font-size: 26px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.timeline li:nth-child(odd):before {
    top: -40px;
}

.timeline li:nth-child(even):before {
    bottom: -40px;
}

.timeline li:after {
    display: inline-block;
    content: attr(data-text);
    min-width: 200px;
    font-size: 16px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.timeline li span {
    display: none;
}

.timeline li:nth-child(odd):after {
    bottom: 0;
    margin-bottom: -10px;
    transform: translate(-50%, 100%);
}

.timeline li:nth-child(odd) span::after {
    display: none;
}

.timeline li:nth-child(even):after {
    top: 0;
    margin-top: -10px;
    transform: translate(-50%, -100%);
}

.timeline li:nth-child(even) span::after {
    display: none;
}



.accordion {
    display: flex;
    width: 100%;
    overflow: hidden;
}

.accordion-links {
    flex: 1;
    display: flex;
    min-width: 50%;
    padding-right: 100px;
    flex-direction: column;
}

.accordion-links button {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 10px;
    font-weight: 100;
    min-width: 100%;
    text-align: left;
    border-bottom: 1px solid #ccc;
    background-image: url("https://cdn.prod.website-files.com/5f18858d324bad3e005c0273/5f9bbcb0d2d0438caf1cad3c_arrow-right.svg");
    background-repeat: no-repeat;
    background-position: 98%;
    cursor: pointer;
    font-size: 20px;
}

.accordion-links button:hover {
    background-color: #f3f3f3;
}



.accordion-content {
    flex: 3;
    padding: 20px;
    justify-content: center;
}

.content {
    display: none;
}

.content.active {
    display: block;
    font-size: 20px;
    /*// font abstände ämndern*/
}

/* Responsive Design: Akkordeon auf mobilen Geräten */
@media (max-width: 768px) {
    .accordion {
        flex-direction: column;
    }

    .accordion-links {
        min-width: 100%;
        padding-right: 0;
        padding-bottom: 20px;
    }

    .accordion-links button {
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 10px;
        font-size: 16px;
    }

    .accordion-content {
        flex: 1;
        padding: 20px;
    }

    .content {
        font-size: 16px;
    }
}

.fade-in {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 1s ease-out, transform 1s ease-out;
    
    /* Startet etwas nach unten verschoben */
}

.fade-in.show {
    opacity: 1;
    transform: translateY(0);
    /* Rückkehr zur normalen Position */
}

.box {
    height: 200px;
    background-color: #007bff;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}



.image1 {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
}

.image2 {
    position: absolute;
    top: 120px;
    right: 120px;
    z-index: 1;
}

.container_accordion {
    display: flex;
    width: 100%;
    height: 100%;
}

.accordion_with_img {
    width: 30%;
    display: flex;
    flex-direction: column;
}

.accordion-item_with_img {
    padding: 15px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.accordion-item_with_img:hover {
    background-color: #f0f0f0;
}

/* .accordion_image-container {
    width: 70%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
} */


img {
    max-width: 100%;
    height: auto;
}

.image_references {
    width: auto;
    height: 180px;
    /* Einheitliche Höhe */
    max-width: 250px;
    /* Optional: maximale Breite */
    object-fit: contain;
    filter: grayscale(100%);
    transition: filter 0.5s ease;
    display: block;
    margin: 0 auto;
}

.image_references2 {
    width: auto;
    height: 180px;
    /* Einheitliche Höhe */
    max-width: 250px;
    /* Optional: maximale Breite */
    object-fit: contain;
    display: block;
    margin: 0 auto;
}

.image_references-nogrey {
    width: 300px;
    /* Setze die Breite der Bilder gleich */
    height: 200px;
    /* Setze die Höhe der Bilder gleich */
    object-fit: cover;
    /* Bild wird zugeschnitten, um das Seitenverhältnis zu erhalten */
}

.image_references:hover {
    filter: grayscale(0%);
    /* Maus-Over entfernt Graustufen */
}

.services__images {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    margin-top: 70px;
    /* Abstand vom Textblock */
}

.image-container2 {
    /*  display: flex;
    flex-direction: column;
    align-items: center;
    width: 220px; */
    flex: 1 1 200px;
    /* Flex-Grow, Flex-Shrink, Basisbreite */
    max-width: 260px;
    /* Maximale Breite pro Bildcontainer */
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #fff;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    font-weight: 300;
    color: #1b1b1c;
    line-height: 1.5;
}

.image-button {
    display: block;
    cursor: pointer;
    width: 200px;
    position: relative;
    margin: 0 auto;
    text-align: center;
}

.image-button img {
    width: 175px;
    height: 175px;
    object-fit: cover;
    display: block;
    margin: 0 auto;
    margin-left: 40px;
}

.image-button h1 {
    position: relative;
    font-size: 20px;
    font-weight: bold;
    margin-top: 10px;
    /* Damit es nicht zu nah am Bild ist */
    text-align: center;
    width: 250px;
}

.toggle-input {
    display: none;
}

.toggle-text {
    display: none;
    margin-top: 10px;
    margin-left: 55px;
    background: white;
    padding: 0px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    text-align: center;
    border-top: 2px solid #c4bfbf;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    font-weight: 300;
    color: #1b1b1c;
    line-height: 1.5;
    font-size: 20px
}


.toggle-input:checked+.image-button+.toggle-text {
    display: block;
}

/* Deaktiviert die blaue Umrandung komplett */
.image-button:focus,
.image-button:active,
.toggle-input:focus+.image-button {
    outline: none;
    box-shadow: none;
}

.image-button h1 {
    position: relative;
    font-size: 24px;
    /* Oder eine andere gewünschte Größe */
    font-weight: bold;
    margin-top: 10px;
    /* Damit es nicht zu nah am Bild ist */
    text-align: center;
}

/* ===== Carousel ===== */

.carousel {
    position: relative;
    width: 100vw;
    height: clamp(250px, 60vh, 480px);
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    overflow: hidden;
}


.carousel-track {
    position: relative;
    height: 100%;
}

.slide {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50%;
    height: 100%;
    transform: translate(-50%, -50%) scale(0.8);
    opacity: 0;
    filter: blur(8px);
    transition: all 0.5s ease;
}

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

/* Active */
.slide.active {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
    filter: blur(0);
    z-index: 3;
}

/* Preview */
.slide.prev {
    transform: translate(-135%, -50%) scale(0.65);
    opacity: 0.5;
    z-index: 2;
}

.slide.next {
    transform: translate(35%, -50%) scale(0.65);
    opacity: 0.5;
    z-index: 2;
}

.nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.4);
    color: #fff;
    border: none;
    font-size: 26px;
    padding: 12px 18px;
    cursor: pointer;
    z-index: 5;
}

.nav.left {
    left: 10px;
}

.nav.right {
    right: 10px;
}

/* Carousel end */




.custom-bullets {
    list-style-type: disc;
}

.custom-bullets-usecases {
    list-style-position: inside;
    list-style-type: disc;
    padding-left: 15;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    font-weight: 300;
    color: #1b1b1c;
    line-height: 1.5;
}

.custom-bullets-usecases li {
    text-indent: -28px;
    /* Negativer Einzug für die erste Zeile */
    padding-left: 30px;
    /* Einzug für die zweite Zeile */
}

.custom-accordion {
    display: flex;
    width: 100%;
    overflow: hidden;
    flex: 1;
    min-width: 50%;
    padding-right: 100px;
    flex-direction: column;
}

.custom-accordion-item {
    border-bottom: 1px solid #ccc;
}

.custom-accordion-header {
    margin: 0;
}

.custom-accordion-button {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 10px;
    padding-right: 40px;
    font-weight: 100;
    min-width: 100%;
    text-align: left;
    border-bottom: 1px solid #ccc;
    background-repeat: no-repeat;
    background-position: 98%;
    cursor: pointer;
    font-size: 20px;
    position: relative;

}

.custom-accordion-button .arrow {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url("https://cdn.prod.website-files.com/5f18858d324bad3e005c0273/5f9bbcb0d2d0438caf1cad3c_arrow-right.svg");
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.2s;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.image-button.open .arrow,
.custom-accordion-button.open .arrow {
    transform: translateY(-50%) rotate(90deg);
}

.custom-accordion-button:hover {
    background-color: #e9e9e9;
}


.custom-accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 24px;
    /* background-color: #fff; */
    background-color: transparent;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    font-weight: 300;
    color: #1b1b1c;
    line-height: 1.5;
}

.custom-accordion-content.open {
    max-height: 800px;
    /* groß genug für deinen Inhalt */
    padding: 24px;
}

.custom-accordion-content.no-transition {
    transition: none !important;
}

/* Responsive Design: Custom Akkordeon auf mobilen Geräten */
@media (max-width: 880px) {
    .custom-accordion {
        padding-right: 0;
    }

    .custom-accordion-button {
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 10px;
        padding-right: 40px;
        font-size: 16px;
    }

    .custom-accordion-content {
        padding: 0 16px;
    }

    .custom-accordion-content.open {
        max-height: 800px;
        padding: 16px;
    }

    .custom-accordion-content p {
        font-size: 16px;
    }
}

.custom_usecases {
    max-width: 60%;
    /* Verkleinert das Bild auf 80% der Containerbreite */
    height: auto;
    /* Beibehaltung des Seitenverhältnisses */
    display: block;
    /* Zentriert das Bild */
    margin: 0 auto;
}

.custom_work-with-us {
    padding: 30px 0;
    background-color: #ffffff;
    /* oder dein Hintergrundbild/-farbe */
    text-align: center;
}

.custom_work-with-us__container {
    margin: 0 auto;
    padding: 0 20px;
    /* Innenabstand links/rechts */
}

.custom_work-with-us__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    font-weight: 300;
    color: #1b1b1c;
    line-height: 1.5;
}

.custom_work-with-us__content h2 {
    margin: 0;
    font-size: 24px;
    color: #1b1b1c;
    text-align: center;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    font-weight: 300;
    color: #1b1b1c;
    line-height: 1.5;
}

.custom_image-container {
    display: flex;
    gap: 50px;
    flex-wrap: wrap;
    justify-content: center;
}

.custom_image-container2 {
    display: flex;
    gap: 50px;
    flex-wrap: wrap;
    justify-content: center;
    width: clamp(100px, 30vw, 300px);
}

.custom_image:first-child {
    height: 240px;
    width: 300px;
}

.custom_image {
    height: 80px;
    width: auto;
    object-fit: contain;

}

.custom_image:hover {
    filter: grayscale(0%);
    -webkit-filter: grayscale(0%);
}

.custom_detail-info {
    position: relative;
    z-index: 20;
    overflow: hidden;
    margin-top: -80px;
    border-radius: 20px 20px 0 0;
    padding-top: 110px;
    background-color: #ffffff;
    color: #000000;
}

.custom__image_container {
    position: relative;
    width: 600px;
    /* anpassen */
    height: 400px;
    /* anpassen */
}

.custom_image_container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease;
    pointer-events: none;
}

.custom_image_container img.visible {
    opacity: 1;
    pointer-events: auto;
}

.custom_accordion_with_img {
    margin-bottom: 20px;
}

.custom_accordion_item {
    cursor: pointer;
    margin-bottom: 10px;
}


.accordion_image-container {
    position: relative;
    width: 100%;
    max-width: 850px;
    aspect-ratio: 16 / 9;
    margin-top: 20px;
}

.image-stack {
    position: relative;
    width: 100%;
    height: 100%;
}

.image-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 80%;
    height: 80%;
    opacity: 0;
    transition:
        transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
    pointer-events: none;
}

#img_consulting.visible {
    opacity: 1;
    transform: translate(180px, 260px) scale(0.95);
    z-index: 2;
}

#img_dev.visible {
    opacity: 1;
    transform: translate(180px, 38px) scale(1.05);
    z-index: 3;
}

#img_ai.visible {
    opacity: 1;
    transform: translate(180px, -200px) scale(1.15);
    z-index: 4;
}

.services__photo-wrapper img.overlay-image {
    position: absolute;
    left: 50%;
    bottom: 0px;
    transform: translateX(-50%);
    width: 100% !important;
    height: auto !important;
    opacity: 0.6 !important;
    pointer-events: none;
    z-index: 2;
}
.services__photo-wrapper2 img.overlay-image {
    position: absolute;
    left: 50%;
    bottom: 0px;
    transform: translateX(-50%);
    width: 100% !important;
    height: auto !important;
    opacity: 0.6 !important;
    pointer-events: none;
    z-index: 2;
}



.image-button .arrow {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url("https://cdn.prod.website-files.com/5f18858d324bad3e005c0273/5f9bbcb0d2d0438caf1cad3c_arrow-right.svg");
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.2s;
    position: absolute;
    right: -18px;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
    margin-left: 0;
    vertical-align: middle;
}

/* .image-button.open .arrow {
    transform: translateY(-50%) rotate(90deg);
} */
.toggle-input:checked+.image-button .arrow {
    transform: translateY(-50%) rotate(90deg);
}



.custom_work-with-us {
    position: relative;
    overflow: hidden;
    min-height: 340px;
    /* Passe die Höhe nach Wunsch an */
    display: flex;
    align-items: center;
    justify-content: center;
}

.custom_work-with-us__bg {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
}

.custom_work-with-us__bg img {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 300%;
    /* Bild wird 3x so hoch wie der Banner, damit nur das untere Drittel sichtbar ist */
    object-fit: cover;
    object-position: 0% 80%;
    display: block;
    max-width: none;
    z-index: 0;
    /* Optional: dunkles Overlay für bessere Lesbarkeit */
    /* filter: brightness(0.7); */
}

/* Optional: Overlay für bessere Lesbarkeit */
.custom_work-with-us__bg::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0.1) 100%);
    z-index: 1;
    pointer-events: none;
}

.custom_work-with-us__container,
.custom_work-with-us__content {
    position: relative;
    z-index: 2;
}




sup a {
    font-size: 24px;
    font-weight: 250;
    text-decoration: none;
    color: #4a7ebb;
    font-size: 0.75em;
}



.marque-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.pdf-download {
    margin-top: 20px;
    margin-left: 30px;
}



/* Header mit Hamburger-Menue */
@media (max-width: 992px) {
    .header {
        color: #F39D79;
        position: fixed !important;
        top: 0;
        left: 0;
        z-index: 9999 !important;
        width: 100% !important;
        overflow: visible !important;
        padding: 0 32px;
        background: rgba(236, 235, 235, 0.3);
        backdrop-filter: blur(1px);
        -webkit-backdrop-filter: blur(6px);
        transition: background-color 0.3s ease-out;
        display: flex !important;
        justify-content: space-between;
        align-items: center;
        box-sizing: border-box;
    }

    .header__right {
        position: relative !important;
        display: flex !important;
        align-items: center;
        overflow: visible !important;
    }

    .menu-toggle {
        display: block !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        z-index: 9999;
        font-size: 44px;
        background: none;
        border: none;
        cursor: pointer;
    }

    .header__menu {
        display: none !important;
        flex-direction: column !important;
        background: rgba(236, 235, 235, 0.25) !important;
        backdrop-filter: blur(8px) !important;
        -webkit-backdrop-filter: blur(8px) !important;
        position: fixed !important;
        top: 70px !important;
        right: 0 !important;
        left: auto !important;
        width: auto !important;
        min-width: 40px !important;
        box-shadow: -4px 4px 12px rgba(0, 0, 0, 0.15) !important;
        padding: 0.5rem 0 !important;

        margin: 0 !important;
    }

    .header__menu.is-open {
        display: flex !important;
    }

    .header__menu ul,
    .header__menu .menu {
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
    }

    .header__menu li {
        list-style: none !important;
        width: 100% !important;
        display: block !important;
    }

    .header__menu a {
        display: block !important;
        padding: 12px 20px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        pointer-events: all !important;
        color: #F39D79 !important;
        text-decoration: none !important;
        font-size: 16px !important;
        white-space: nowrap !important;
        text-align: right !important;
    }

    .header__menu a:hover {
        background: rgba(0, 0, 0, 0.05) !important;
    }
}

/* Desktop */
@media (min-width: 993px) {
    .menu-toggle {
        display: none !important;
    }

    .header__menu {
        display: flex !important;
        position: static !important;
        flex-direction: row !important;
        background: transparent !important;
        padding: 0 !important;
        box-shadow: none !important;
        width: auto !important;
    }
}

/* Kleine Handys */
@media (max-width: 480px) {
    .header__menu {
        width: 100vw !important;
        right: 0 !important;
        left: 0 !important;
        top: 65px !important;
    }

    .header__menu a {
        font-size: 18px !important;
        padding: 14px 24px !important;
    }

    .menu-toggle {
        font-size: 38px !important;
    }
}

/* Mittlere Handys */
@media (min-width: 481px) and (max-width: 767px) {
    .header__menu {
        width: 140px !important;
        top: 70px !important;
    }
}

/* Tablets */
@media (min-width: 768px) and (max-width: 992px) {
    .header__menu {
        width: 140px !important;
        top: 70px !important;
    }
}

/*RESPONSIVE DESIGN*/
@media screen and (max-width: 767px) {
    .contact-hero {
        position: relative;
        min-height: 100vh;
        /* statt height, damit Inhalt nicht überläuft */
        height: auto;
        /* keine feste Höhe */
        padding-top: 100px;
        padding-bottom: 64px;
        background-color: #1b1b1c;
        color: #f9f9f4;
        overflow: hidden;
        /* verhindert überlaufenden Inhalt */
        z-index: auto !important;
    }

    .contact-hero__title {
        font-size: 48px;
        line-height: 1.2;
    }

    .contact-details {
        flex-direction: column;
        align-items: center;
        /* Zentriert Spalten */
    }

    .contact-details__contacts,
    .contact-details__links,
    .contact-details__column {
        width: 100%;
        margin-right: 0;
        text-align: center;
        /* Zentriert Text in Spalten */
    }

    .contact-details__column {
        margin-bottom: 24px;
        /* oder weniger */
    }

    .contact-details__column:nth-child(0) {
        margin-bottom: 24px;
    }

    .contact-details__column:nth-child(1) {
        margin-bottom: 48px;
        /* erhöht den Abstand zwischen FIND US und FOLLOW US */
    }

    .contact-details__contact-links {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 12px;
        /* vertikaler Abstand zwischen Mail und Tel */
        margin-top: 12px;
        /* kleiner Abstand zur Überschrift */
        margin-bottom: 25px;
    }


    .contact-details__contact-links a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        margin-bottom: 8px;
        /* reduziert vertikalen Abstand zwischen E-Mail und Tel */
        text-align: center;
    }

    .contact-details__contact-links a:last-child {
        margin-bottom: 0 !important;
        /* verhindert extra Abstand unter dem Tel-Link */
    }

    .contact-details__column .contact-details__text {
        font-size: 16px;
    }

    .contact-details__title {
        font-size: 20px;
        margin-bottom: 12px;
    }

    .contact-details__contact-links,
    .contact-details__text {
        font-size: 16px;
    }

    .contact-details__contacts,
    .contact-details__column {
        margin-bottom: 0;
        /* weniger Abstand zwischen den Blöcken */
    }

    .contact-details__contacts {
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }

    .contact-details__links {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    .contact-details__column:first-child {
        margin-top: 8px;
        /* gezielter Abstand zwischen Rufnummer und FIND US */
    }

    .contact-details__column {
        margin-bottom: 24px;
        /* wie bisher für Abstand zwischen Spalten */
    }

    .contact-details__column:last-child {
        margin-bottom: 0;
    }

    .contact-details__link-wrapper {
        justify-content: center;
        /* Zentriert Linkwrapper-Inhalte */
        width: 100%;
    }

    .contact-hero__container {
        justify-content: flex-start;
        align-items: center;
        /* Zentriert Inhalt horizontal */
        padding: 0 20px;
        z-index: 2 !important;
    }

    .contact-hero__header {
        margin-bottom: 30px;
        padding-bottom: 10px;
        width: 100%;
    }

    .contact-hero__label,
    .contact-hero__title {
        text-align: center;
    }

    .contact-hero__label {
        font-size: 14px;
        margin-bottom: 20px;
    }

    .contact-details__links {
        display: flex;
        flex-direction: column;
    }



    .contact-details__column:last-child {
        margin-bottom: 0;
    }

    .contact-details__contact-links a span {
        display: inline-block;
        text-align: center;
        width: 100%;
    }
}

@media screen and (max-width: 900px) {
    .contact-hero__title {
        font-size: 2.8rem;
        /* z. B. vorher 3.5rem */
        line-height: 1.2;
    }
}

/*references Seite responsive design*/
@media screen and (max-width: 767px) {
    .h4 {
        font-size: 20px;
        /* z. B. etwas kleiner */
        text-align: justify;
        /* Blocksatz */
    }

    .custom_work-with-us__content p {
        font-size: 20px;
        /* kleiner als default 26px */
        text-align: centered
            /* optional: Blocksätze */
    }


}

@media screen and (max-width: 1000px) {
    .h4 {
        font-size: 24px;
        /* z. B. etwas kleiner */
        text-align: justify;
        /* Blocksatz */
    }
}

.logo-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 40px;
}

.logo-grid-project {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    padding: 40px;
}

.logo-item {
    background-color: rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    border-radius: 12px;
    transition: background-color 0.3s ease;
}

.logo-item:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

@media (max-width: 1350px) {
    .logo-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .logo-grid-project {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1024px) {
    .logo-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .logo-grid-project {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .logo-grid {
        grid-template-columns: 1fr;
    }

    .logo-grid-project {
        grid-template-columns: 1fr;
    }

    .image_references {
        width: auto;
        height: 180px;
        /* Einheitliche Höhe */
        max-width: 250px;
        /* Optional: maximale Breite */
        object-fit: contain;

        display: block;
        margin: 0 auto;
    }

}

@media (max-width: 768px) {

    .custom_work-with-us {
        padding: 30px 0;
        background-color: #ffffff;
        text-align: justify;
    }

    .work-with-us__container {
        padding: 0 20px;
        text-align: justify;
    }

    .work-with-us__content {
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }

    .work-with-us__content h2 {
        font-size: 24px;
        margin-bottom: 10px;
    }

    .work-with-us__marque {
        width: 100%;
        max-width: 300px;
    }

    .work-with-us__marque img {
        width: 100%
    }
}

.work-with-us__container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 2rem;

    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    padding: 0 2rem;
    box-sizing: border-box;
}

/* Bild nimmt weniger Platz auf Desktop */
.work-with-us__marque {
    flex: 0 0 40%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 6rem;
}

/* Text nimmt mehr Platz */
.work-with-us__content {
    flex: 1 1 60%;
}

.work-with-us__content p,
.txt-lead p {
    text-align: justify;
}

/* Responsive: Untereinander auf kleinen Bildschirmen */
@media (max-width: 900px) {
    .work-with-us__container {
        flex-direction: column;
        gap: 1.5rem;
    }

    .work-with-us__marque {
        width: 100%;
        margin-top: 1.5rem;
        padding: 0 10px;
        box-sizing: border-box;
        margin-bottom: 2.5rem;
        text-align: center;
        /* sorgt für horizontale Zentrierung bei Inline-Elementen */
    }

    .work-with-us__marque img {
        width: 100%;
        height: auto;
        max-width: 500px;
        /* Größer auf Mobile/Tablet */
        display: inline-block;
    }
}

@media (min-width: 901px) and (max-width: 1919px) {

    .work-with-us__content p,
    .custom_work-with-us__content p {
        text-align: justify;
    }

    .work-with-us__container {
        gap: 3rem;
    }

    .work-with-us__marque {

        padding-right: 30px;
        box-sizing: border-box;
        max-width: 90%;
    }

    .work-with-us__marque img {
        width: 100%;
        max-width: 400px;
        box-shadow: 0 4px 24px rgba(0, 0, 0, 0.07);
        display: block;
        margin-right: 2rem;
    }
}

/* ===== Responsive Design für Services Items ===== */



/* Desktop: Bild links, Text rechts */
@media (min-width: 769px) {
    .services__item {
        display: flex;
        align-items: stretch;
        flex-direction: row;
        gap: 2rem;
    }

    .services__photo {
        flex: 0 0 45%;
        display: flex;
        align-items: center;
        object-fit: contain;
    }
    .services__photo2 {
        flex: 0 0 45%;
        display: flex;
        align-items: center;
    }


    .services__photo-wrapper img {
        object-fit: contain;
    }

    .services__info {
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .services__info h3 {
        text-align: left;
    }

    .services__info .txt p,
    .services__info .services__text p {
        text-align: left;
    }
}

/* Tablet und Mobile: Übereinander, Text zentriert, Bild unten */
@media (max-width: 768px) {
    .services__item {
        display: flex;
        flex-direction: column !important;
        gap: 2rem;
        padding: 1.5rem 0;
    }

    /* Auch gerade Items (die mit row-reverse) auf column zurücksetzen */
    .services__item:nth-child(2n) {
        flex-direction: column !important;
    }

    .services__info {
        width: 100%;
        text-align: center;
        order: 1;
    }

    .services__photo {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        order: 2 !important;
        margin-top: 15px;
        object-fit: contain;
    }

    .services__photo-wrapper {
        width: 100%;
        max-width: 500px;
        height: auto;
    }


    .services__photo-wrapper img {
        width: 100% !important;
        /* ← !important gewinnt! */
        height: 100% !important;
        object-fit: contain !important;
        transform: none !important;
        /* ← Deaktiviert Parallax */
    }


    .services__photo img {
        width: 80%;
        height: auto;
        display: block;
        align-items: center;
        object-fit: contain;
    }

    .services__photo2 {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        order: 2 !important;
        margin-top: 15px;
    }

    .services__photo-wrapper2 {
        width: 100%;
        max-width: 270px;
        height: auto;
    }

    .services__photo2 img {
        width: 100%;
        height: auto;
        display: block;
        align-items: center;
    }


    .services__info h3 {
        text-align: center;
    }

    .services__info .txt,
    .services__info .services__text {
        text-align: center;
    }

    .services__info .txt p,
    .services__info .services__text p {
        text-align: center;
    }

    /* Akkordeon-Listen zentrieren */
    .services__info .custom-accordion {
        margin: 1.5rem auto;
        max-width: 100%;
    }

    .services__info .custom-bullets-usecases {
        text-align: center;
        margin: 1rem auto;
    }
}


@media (max-width: 1559px) and (min-width: 1045px) {
    .services__photo-wrapper img {
        object-fit: contain !important;
        /* ← Ändere das! */
        width: 90% !important;
        /* ← !important gewinnt! */
        height: 90% !important;
        object-fit: contain !important;
        transform: none !important;
    }
}

@media (max-width: 1044px) and (min-width: 768px) {
    .services__photo-wrapper img {
        object-fit: contain !important;
        /* ← Ändere das! */
        width: 80% !important;
        /* ← !important gewinnt! */
        height: 80% !important;
        object-fit: contain !important;
        transform: none !important;
    }
}

@media (max-width: 400px) {
    .services__photo-wrapper img {
        object-fit: contain !important;
        /* ← Ändere das! */
        width: 700% !important;
        /* ← !important gewinnt! */
        height: 700% !important;
        object-fit: contain !important;
        transform: none !important;
    }
}

/* ===== Responsive Design für Hero / Titelseite ===== */

/* Mobile/Tablet: Hero-Bereich responsive anpassen */
@media (max-width: 767px) {
    .inner-hero {
        height: 60vh;
        height: calc(var(--vh, 1vh) * 60);
    }

    .contact-hero__bg img,
    .contact-hero__bg2 img,
    .contact-hero__bg video,
    .js-parallax-hero-wrapper img,
    .js-parallax-hero-wrapper video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        z-index: 1 !important;
    }

    .hero-header__label {
        font-size: clamp(14px, 4vw, 20px);
    }

    .hero-header__title {
        font-size: clamp(28px, 8vw, 48px);
    }

    .inner-hero__header {
        margin-bottom: 30px;
        padding: 0 15px;
    }

    .hero-scroll-btn {
        margin-bottom: 20px;
    }

    .hero-scroll-btn svg {
        width: 24px;
        height: auto;
    }
}

/* Tablet-Ansicht: Etwas größer */
@media (min-width: 768px) and (max-width: 1024px) {
    .inner-hero {
        height: 70vh;
        height: calc(var(--vh, 1vh) * 70);
    }

    .contact-hero__bg img,
    .contact-hero__bg2 img,
    .contact-hero__bg video,
    .js-parallax-hero-wrapper img,
    .js-parallax-hero-wrapper video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
}

/* ===== CONTACT HERO TITLE – RESPONSIVE FIX ===== */

/*
    LOGIK:
    > 1054px  → EINE ZEILE, Schrift skaliert fluid mit Viewport
    ≤ 1054px  → ZWEI ZEILEN, linksbündig, "touch" mittig unter "Get in"
    ≤ 767px   → ZWEI ZEILEN, linksbündig, "touch" mittig unter "Get in", kleiner
    ≤ 400px   → noch kleiner
*/

/* ── Desktop / große Laptops (> 1054px): EINE ZEILE ── */
.contact-hero__title {
    white-space: nowrap;
    font-size: clamp(80px, 8.5vw, 160px);
}

.contact-title-touch {
    margin-left: 4.2em;
}

/* ── Mittelgroße Laptops (≤ 1440px) ── */
@media (max-width: 1440px) {

    /* .contact-hero__title  {
        margin-left: 3.5em;
    } */
    .contact-title-touch {
        margin-left: 3.8em;
    }
}

/* ── 15 Zoll (≤ 1280px) ── */
@media (max-width: 1280px) {
    .contact-hero__title .contact-title-touch {
        margin-left: 3.4em;
    }
}

/* ── Tablet (≤ 1054px): ZWEI ZEILEN, links, touch mittig unter "Get in" ── */
@media (max-width: 1054px) {
    .contact-hero__title {
        white-space: normal;
        font-size: clamp(48px, 8vw, 90px);
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        /* Block linksbündig */
        gap: 0;
        line-height: 1.15;
        margin-top: -60px;
    }

    .contact-title-line1 {
        display: flex;
        gap: 0.2em;
    }

    .contact-title-touch {
        display: block;
        margin-left: 0 !important;
        padding-left: 0.1em;
    }
}

/* ── Handy (≤ 767px): kleiner, gleiche Ausrichtung ── */
@media (max-width: 767px) {
    .contact-hero__title {
        font-size: 48px;
        align-items: center;
        margin-top: 10px;
    }

    .contact-title-touch {
        display: block;
        margin-left: 0 !important;
        padding-left: 0.1em;
    }

}

/* ── Sehr kleines Handy (≤ 400px) ── */
@media (max-width: 400px) {
    .contact-hero__title .contact-title-touch {
        font-size: 42px;
        margin-top: 200px !important;
    }

    /* .contact-title-touch {
        display: block;
        margin-left: 0 !important;
        /* "Get in" hat ca. 3 Zeichen + Leerzeichen ≈ 2.2em breit
           touch mittig darunter: padding = halbe Breite von "Get in" ≈ 1em */
    /*  padding-left: 0.1em;
    }  */

}




/* LIFESTREAM ANALYTICS */

/* ── Logo ── */
.lsa-inner-wrapper {
    position: relative;
    width: 100%;
}


.lsa-logo-wrapper {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 40px;
}

.lsa-logo {
    width: 350px;
    height: auto;
}

.lsa-logo-wrapper2 {
    display: flex;
    justify-content: flex-end;
    margin-bottom: -120px;
}

.lsa-logo_light {
    width: 450px;
    max-width: 100%;
    height: auto;
}

.lsa-column {
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.lsa-column2 {
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin-top: 80px;
}

/* ── Headline ── */
.lsa-headline {
    margin-bottom: 30px;
}

.lsa-headline .h2 {
    font-size: clamp(22px, 3vw, 50px);
}

.lsa-headline2 .h2 {
    font-size: clamp(26px, 3vw, 50px);
    margin-left: 60px;
}

.lsa-subtext2 {
    font-size: 28px;
    line-height: 1.35714;
    font-weight: 300;
    margin-left: 62px;
    width: 100%;

}

/* ── Subtext ── */
.lsa-subtext {
    max-width: 700px;
    font-weight: 450;
    font-size: 20px;
    margin-bottom: 60px;
}

/* ── Zwei Spalten ── */
.lsa-two-columns {
    display: flex;
    gap: 60px;
}

.lsa-col {
    flex: 1;
    margin-top: 10px;
}

.lsa-col2 {
    flex: 1;
    margin-top: 100px;
    width: 50%;
    margin-left: 50%;
}

.lsa-col3 {
    flex: 1;
    margin-top: 100px;
    width: 50%;
    margin-left: 50%;
}



.lsa-column {
    display: flex;
    flex-direction: column;
    padding-top: 120px;
}

.lsa-row {
    display: flex;
    gap: 350px;
    margin-bottom: 80px;
    width: 60%;
}

.lsa-custom_usecases {
    max-width: 60%;
    /* Verkleinert das Bild auf 80% der Containerbreite */
    height: auto;
    /* Beibehaltung des Seitenverhältnisses */
    display: block;
    /* Zentriert das Bild */
    margin: 0 auto;
    max-width: 400px;
    height: auto;
    margin-top: -100px;
    margin-right: 300px;
}

.lsa_column {
    width: 50%;
    display: flex;
    justify-content: center;

}

.lsa-custom_usecases_img {
    max-width: 80%;
    height: auto;
    display: block;
}

.lsa-coPilotIMG {
    position: absolute;
    left: 0;
    top: 45%;
    transform: translateY(-50%);
    width: 750px;
    z-index: 100;
    pointer-events: none;
}

.lsa-headline3 {
    margin-bottom: 20px;
}

.custom_usecases_lsa {
    max-width: 80%;
    /* Verkleinert das Bild auf 80% der Containerbreite */
    height: auto;
    /* Beibehaltung des Seitenverhältnisses */
    display: block;
    /* Zentriert das Bild */
    margin: 0 auto;

}



.use-cases-row {
    display: flex;
    flex-direction: row;  /* Nebeneinander auf Desktop */
    gap: 60px;  /* Abstand zwischen Text und Bild */
    align-items: flex-start;  /* Oben ausrichten */
}

/* Text-Spalte */
.lsa-col5 {
    flex: 1;  /* Nimmt verfügbaren Platz */
    margin-top: 100px;  /* Entferne alte Margins */
}

/* Bild-Spalte */
.lsa-col4 {
    flex: 1;  /* Nimmt verfügbaren Platz */
    margin-top: 0;  /* Entferne alte Margins */
    margin-left: 0;  /* Entferne alte Margins */
    justify-content: center;
}

.lsa-col4 img {
    width: 80%;  /* Bild passt sich an */
    height: auto;
    margin-top: -80px;  /* Entferne alte Margins */
}

/* Auf kleineren Bildschirmen: Untereinander */
@media (max-width: 1449px) {
    .use-cases-row {
        flex-direction: column;  /* Bild unter Text */
        gap: 40px;  /* Weniger Abstand */
    }

    .lsa-col5 {
        order: 1;  /* Text oben (optional, da DOM-Reihenfolge passt) */
        width: 60%
    }

    .lsa-col4 {
        order: 2;
        margin-top: 100px;  /* Bild unten */
    }

    .lsa-col4 img {
        width: 450px;  /* Wie in deinem ursprünglichen Code */
    }
}

@media (max-width: 940px) and (min-width: 880px) {
    .use-cases-row {
        flex-direction: column;  /* Bild unter Text */
        gap: 40px;  /* Weniger Abstand */
    }

    .lsa-col5 {
        order: 1;  /* Text oben (optional, da DOM-Reihenfolge passt) */
        width: clamp(300px, 80%, 800px);
    }

    .lsa-col4 {
        order: 2;
        margin-top: 100px;  /* Bild unten */
    }

    .lsa-col4 img {
        width: 450px;  /* Wie in deinem ursprünglichen Code */
    }
}


@media  (max-width: 879px) and (min-width:768px){
    .use-cases-row {
        flex-direction: column;  /* Bild unter Text */
        gap: 10px;  /* Weniger Abstand */
        width: 100%;
    }

    .lsa-col5 {
        order: 1;  /* Text oben (optional, da DOM-Reihenfolge passt) */
        width: clamp(600px, 80%, 900px) !important;
    }

    .lsa-col4 {
        order: 2;
        margin-top: 100px;  /* Bild unten */
    }

    .lsa-col4 img {
        width: 450px;  
    }
}

@media  (max-width: 767px){
    .use-cases-row {
        flex-direction: column;  /* Bild unter Text */
        gap: 10px;  /* Weniger Abstand */
        width: 100%;
    }

    .lsa-col5 {
        order: 1;  /* Text oben (optional, da DOM-Reihenfolge passt) */
        width: clamp(250px, 70%, 500px) !important;
    }

    .lsa-col4 {
        order: 2;
        margin-top: 100px;  /* Bild unten */
    }

    .lsa-col4 img {
        width: 450px;  
    }
}

@media (max-width: 400px) {
    .use-cases-row {
        flex-direction: column;  /* Bild unter Text */
        gap: 10px;  /* Weniger Abstand */
        width: 100%;
    }

    .lsa-col5 {
        order: 1;  /* Text oben (optional, da DOM-Reihenfolge passt) */
        width: clamp(400px, 80%, 500px) !important;
    }

    .lsa-col4 {
        order: 2;
        margin-top: 100px;  /* Bild unten */
    }

    .lsa-col4 img {
        width: 100% !important;  /* Wie in deinem ursprünglichen Code */
        max-width: 250px;
    }
}

/* ════════════════════════════════
   DESKTOP  (1054px bis 1450px)
════════════════════════════════ */
@media (max-width: 1450px) and (min-width: 1055px) {
    .lsa-coPilotIMG {
        width: 550px;
    }
}




/* ════════════════════════════════
   TABLET  (≤ 1054px)
════════════════════════════════ */
@media (max-width: 1054px) {
    .lsa-logo {
        width: 260px;
    }

    .lsa-logo_light {
        width: 260px;
    }

    .lsa-subtext {
        font-size: 18px;
        margin-bottom: 40px;
    }

    .lsa-two-columns {
        gap: 40px;
    }

    .lsa_column {
        flex: 1;
        height: 250px;

    }

    .lsa-custom_usecases_img {
        max-width: 80%;
        height: 650px;
        margin-top: 200px;
    }

    .lsa-coPilotIMG {
        width: 400px;
    }
}


/* ════════════════════════════════
   TABLET KLEIN  (≤ 894px)
════════════════════════════════ */
@media (max-width: 894px) {

    /* Logo aus absolutem Fluss, oben zentriert */
    .lsa-logo-wrapper {
        position: relative;
        top: auto;
        right: auto;
        width: 100%;
        display: flex;
        justify-content: center;
        margin-bottom: 30px;
    }


    .lsa-logo {
        width: 220px;
    }

    .lsa-logo_light {
        width: 220px;
    }

    /* Kein padding-top mehr nötig da Logo nicht mehr überlagert */
    work-with-us__container {
        max-width: none;
        /* Entfernt Container-Begrenzung */
        width: 100%;
        padding-left: 20px;
        /* Etwas Rand links für Balance */
        padding-right: 20px;
    }

    .lsa-inner-wrapper {
        max-width: 100%;
    }

    .work-with-us__content {
        padding-top: 0;
        padding-left: 0;
        /* Optional: mehr Innenraum */
    }

    .lsa-two-columns {
        display: flex;
        flex-direction: column;
        /* Untereinander */
        gap: 30px;
    }

    .lsa-col {
        width: 100%;
        /* Volle Breite nutzen */
        padding: 0;
    }

    .lsa-column {
        display: flex;
        flex-direction: column;
        padding-top: 20px;
        width: 100%;
    }

    .lsa-custom_usecases_img {
        max-width: 350px;

    }




}


/* ════════════════════════════════
   MOBILE  (≤ 767px)
════════════════════════════════ */
@media (max-width: 767px) {



    /* Logo mittig */
    lsa-logo-wrapper {
        position: absolute;
        top: 0;
        right: 0;
        width: 350px;
        z-index: 10;
    }

    .lsa-logo-wrapper2 {
        margin-bottom: -80px;
    }

    .lsa-logo {
        width: 100%;
        height: auto;
    }

    .lsa-logo_light {
        width: 150px;
    }

    /* Headline kleiner */
    .lsa-headline {
        margin-top: 20px;
        margin-bottom: 40px;
    }

    .lsa-headline h3 {
        /* Entfernt alle Zeilenumbrüche */
        white-space: normal;
        line-height: 1.3;

    }

    /* Speziell das <br> "deaktivieren" */
    .lsa-headline br {
        display: none;
    }

    /* Subtext volle Breite */
    .lsa-subtext {
        max-width: 100%;
        font-size: 18px;
        margin-bottom: 40px;
        margin-top: 20px;
    }

    /* Spalten untereinander */
    .lsa-two-columns {
        flex-direction: column;
        gap: 32px;
        margin-top: 20px;
    }

    .lsa-col br:nth-of-type(2) {
        display: none;
    }

    .lsa-headline2 .h2 {
        font-size: clamp(26px, 3vw, 50px);
        margin-left: 4px;
    }

    .lsa-subtext2 {
        font-size: 22px;
        line-height: 1.35714;
        font-weight: 300;
        margin-left: 4px;
        width: 350px;
    }

    .lsa-row {
        display: flex;
        gap: 120px;
        margin-bottom: 80px;
        width: 60%;
    }

    .lsa-custom_usecases_img {
        max-width: 450px;
        margin-top: 110px;
        margin-left: 150px;
    }

    .lsa-col2 {
        width: 100%;
        margin-left: 0;
    }

    .lsa-coPilotIMG {
        margin-top: 320px;
    }

    .lsa-headline3 {
        margin-top: 150px;
        justify-content: center;
    }

    .carousel {
        height: clamp(200px, 50vh, 350px);
        /* Mobile */
    }



}

/* ════════════════════════════════
   MOBILE  (≤ 400px)
════════════════════════════════ */
@media (max-width: 767px) {

    .lsa-logo-wrapper2 {
        margin-bottom: -80px;
    }

    .lsa-headline2 .h2 {
        font-size: clamp(26px, 3vw, 50px);
        margin-left: 4px;
    }

    .lsa-subtext2 {
        font-size: 22px;
        line-height: 1.35714;
        font-weight: 300;
        margin-left: 4px;
        width: 300px;
    }

    .lsa-row {
        display: flex;
        gap: 30px;
        margin-bottom: 80px;
        width: 60%;
    }

    .lsa-custom_usecases {
        max-width: 30%;
        /* Verkleinert das Bild auf 80% der Containerbreite */
        height: auto;
        /* Beibehaltung des Seitenverhältnisses */
        display: block;
        /* Zentriert das Bild */
        margin: 0 auto;
        max-width: 300px;
        height: auto;
        margin: -100px 0 0 -10px;
    }

    .lsa-custom_usecases2 {
        max-width: 100%;
        /* Verkleinert das Bild auf 80% der Containerbreite */
        height: auto;
        /* Beibehaltung des Seitenverhältnisses */
        display: block;
        /* Zentriert das Bild */

        margin: 100px 0 0 -10px;
        width: 50%;
        display: flex;
        justify-content: center;
    }

    .column_long .title {
        font-weight: 500;
        margin-bottom: 4px;
        width: 100%;
    }


    .column_long .text {
        font-weight: 350;
        margin-bottom: 24px;
        width: 100%;
    }

    .lsa_column {
        flex: 1;
        width: 100%;
        order: 2;

    }

    .lsa-com {
        order: 1;
    }


    .lsa-custom_usecases_img {
        /* max-width: 150px; */
        margin-top: 60px;
        margin-left: -30px;
        height: 250px;
    }

    .lsa-coPilotIMG {
        width: 250px;
    }

    .custom_usecases_lsa {
        max-width: 100%;
        /* Verkleinert das Bild auf 80% der Containerbreite */

        /* Beibehaltung des Seitenverhältnisses */
        display: block;
        /* Zentriert das Bild */
        margin-left: 110px;



    }

}

/* ═══════════════════════════════════════════════
   PROJECT SECTION - RESPONSIVE LAYOUT
═══════════════════════════════════════════════ */

.project-section {
    padding: 80px 32px;
    background-color: #ffffff;
    color: #1b1b1c;
}

@media (max-width: 767px) {
    .project-section {
        padding: 60px 24px;
    }
}

/* Main Container */
.project-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    max-width: 1400px;
    margin: 0 auto;
    position: relative;
}

@media (max-width: 1054px) {
    .project-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

@media (max-width: 767px) {
    .project-container {
        gap: 30px;
    }
}

/* ─────────────────────────────────────
   LOGO-WRAPPER
───────────────────────────────────────*/

.project-logo-wrapper {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    position: absolute;
    right: 0;
    top: 0;
    width: 350px;
}

.project-logo {
    width: 100%;
    height: auto;
    max-width: 350px;
}

/* Tablet: Logo oben mittig */
@media (max-width: 1054px) {
    .project-logo-wrapper {
        position: relative;
        justify-content: center;
        width: 100%;
        margin-bottom: 40px;
        right: auto;
        top: auto;
    }

    .project-logo {
        max-width: 300px;
    }
}

/* Mobile: Logo mittig, etwas kleiner */
@media (max-width: 767px) {
    .project-logo-wrapper {
        margin-bottom: 30px;
    }

    .project-logo {
        max-width: 250px;
    }
}

/* Sehr kleines Mobile */
@media (max-width: 600px) {
    .project-logo {
        max-width: 200px;
    }
}

/* ─────────────────────────────────────
   LINKE SPALTE - TEXT-BLÖCKE
───────────────────────────────────────*/

.project-left-column {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

@media (max-width: 767px) {
    .project-left-column {
        gap: 30px;
        order: 2;
    }
}

.project-text-block {
    opacity: 0;
    animation: fadeInUp 0.6s ease-out forwards;
}

.project-text-block:nth-child(1) {
    animation-delay: 0.1s;
}

.project-text-block:nth-child(2) {
    animation-delay: 0.2s;
}

.project-text-block:nth-child(3) {
    animation-delay: 0.3s;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ─────────────────────────────────────
   SUBTITLES (h3)
───────────────────────────────────────*/

.project-subtitle {
    font-size: 20px;
    font-weight: 450;
    margin-bottom: 12px;
    color: #1b1b1c;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
}

@media (max-width: 767px) {
    .project-subtitle {
        font-size: 18px;
    }
}

/* ─────────────────────────────────────
   TEXT-STYLING
───────────────────────────────────────*/

.project-text {
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6;
    color: #1b1b1c;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    text-align: justify;
}

@media (max-width: 894px) {
    .project-text {
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    .project-text {
        font-size: 16px;
        text-align: left;
    }
}

/* ─────────────────────────────────────
   RECHTE SPALTE - PROJECT DETAILS
───────────────────────────────────────*/

.project-right-column {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

@media (max-width: 1054px) {
    .project-right-column {
        order: 3;
    }
}

@media (max-width: 767px) {
    .project-right-column {
        gap: 30px;
        order: 3;
    }
}

.project-details {
    opacity: 0;
    animation: fadeInUp 0.6s ease-out 0.4s forwards;
}

/* ─────────────────────────────────────
   PROJECT INFO STYLING
───────────────────────────────────────*/

.project-info {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.7;
    color: #1b1b1c;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
}

.project-info p {
    margin: 0 0 8px 0;
    padding: 0;
}

.project-info p strong {
    font-weight: 450;
}

@media (max-width: 767px) {
    .project-info {
        font-size: 16px;
        line-height: 1.6;
    }
}

/* ═══════════════════════════════════════════════
   PROJECT SECTION - RESPONSIVE LAYOUT
═══════════════════════════════════════════════ */

.project-section {
    padding: 80px 32px;
    background-color: #ffffff;
    color: #1b1b1c;
}

@media (max-width: 767px) {
    .project-section {
        padding: 60px 24px;
    }
}

/* Main Container */
.project-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    max-width: 1400px;
    margin: 0 auto;
    position: relative;
}

/* TABLET BEREICH (1054px - 1200px): Logo über Project Coordinator */
@media (max-width: 1200px) and (min-width: 1055px) {
    .project-container {
        display: flex;
        flex-direction: column;
        gap: 40px;
        position: relative;
    }
}

@media (max-width: 1054px) {
    .project-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }
}

@media (max-width: 767px) {
    .project-container {
        gap: 30px;
    }
}

/* ─────────────────────────────────────
   LOGO-WRAPPER
───────────────────────────────────────*/

.project-logo-wrapper {
    display: none;
    justify-content: flex-end;
    align-items: flex-start;
    position: absolute;
    right: 0;
    top: 0;
    width: 350px;
}

/* Desktop (> 1200px): Oben rechts, absolut positioniert */
@media (min-width: 1201px) {
    .project-logo-wrapper {
        display: flex;
        position: absolute;
        right: 0;
        top: 0;
        width: 350px;
    }
}

.project-logo {
    width: 100%;
    height: auto;
    max-width: 350px;
}

/* Tablet Bereich (1054px - 1200px): Über Project Coordinator */
@media (max-width: 1200px) and (min-width: 1055px) {
    .project-logo-wrapper {
        display: flex;
        justify-content: center;
        position: relative;
        width: 100%;
        margin-bottom: 50px;
        order: 1;
    }

    .project-logo {
        max-width: 300px;
    }
}

/* Tablet: Logo oben mittig */
@media (max-width: 1054px) {
    .project-logo-wrapper {
        display: flex;
        position: relative;
        justify-content: center;
        width: 100%;
        margin-bottom: 40px;
        right: auto;
        top: auto;
    }

    .project-logo {
        max-width: 300px;
    }
}

/* Mobile: Logo mittig, etwas kleiner */
@media (max-width: 767px) {
    .project-logo-wrapper {
        margin-bottom: 30px;
    }

    .project-logo {
        max-width: 250px;
    }
}

/* Sehr kleines Mobile */
@media (max-width: 600px) {
    .project-logo {
        max-width: 200px;
    }
}

/* ─────────────────────────────────────
   LINKE SPALTE - TEXT-BLÖCKE
───────────────────────────────────────*/

.project-left-column {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

/* Tablet Bereich (1054px - 1200px): Position anpassen */
@media (max-width: 1200px) and (min-width: 1055px) {
    .project-left-column {
        order: 2;
        gap: 30px;
    }
}

@media (max-width: 767px) {
    .project-left-column {
        gap: 30px;
        order: 2;
    }
}

.project-text-block {
    opacity: 0;
    animation: fadeInUp 0.6s ease-out forwards;
}

.project-text-block:nth-child(1) {
    animation-delay: 0.1s;
}

.project-text-block:nth-child(2) {
    animation-delay: 0.2s;
}

.project-text-block:nth-child(3) {
    animation-delay: 0.3s;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ─────────────────────────────────────
   SUBTITLES (h3)
───────────────────────────────────────*/

.project-subtitle {
    font-size: 20px;
    font-weight: 450;
    margin-bottom: 12px;
    color: #1b1b1c;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
}

@media (max-width: 767px) {
    .project-subtitle {
        font-size: 18px;
    }
}

/* ─────────────────────────────────────
   TEXT-STYLING
───────────────────────────────────────*/

.project-text {
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6;
    color: #1b1b1c;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    text-align: justify;
}

@media (max-width: 894px) {
    .project-text {
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    .project-text {
        font-size: 16px;
        text-align: left;
    }
}

/* ─────────────────────────────────────
   RECHTE SPALTE - PROJECT DETAILS
───────────────────────────────────────*/

.project-right-column {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

/* Tablet Bereich (1054px - 1200px): Nach Text-Blöcken */
@media (max-width: 1200px) and (min-width: 1055px) {
    .project-right-column {
        order: 3;
        gap: 30px;
    }
}

@media (max-width: 1054px) {
    .project-right-column {
        order: 3;
    }
}

@media (max-width: 767px) {
    .project-right-column {
        gap: 30px;
        order: 3;
    }
}

.project-details {
    opacity: 0;
    animation: fadeInUp 0.6s ease-out 0.4s forwards;
}

/* ─────────────────────────────────────
   PROJECT INFO STYLING
───────────────────────────────────────*/

.project-info {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.7;
    color: #1b1b1c;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
}

.project-info p {
    margin: 0 0 8px 0;
    padding: 0;
}

.project-info p strong {
    font-weight: 450;
}

@media (max-width: 767px) {
    .project-info {
        font-size: 16px;
        line-height: 1.6;
    }
}

/* ─────────────────────────────────────
   PROJECT PARTNERS LIST
───────────────────────────────────────*/

.project-partners-list {
    list-style: disc;
    padding-left: 20px;
    margin: 0;
}

.project-partners-list li {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.8;
    color: #1b1b1c;
    font-family: "Riforma", helvetica, tahoma, arial, sans-serif;
    margin-bottom: 12px;
}

@media (max-width: 767px) {
    .project-partners-list li {
        font-size: 16px;
        line-height: 1.6;
    }
}

/* ─────────────────────────────────────
   FADE-IN ANIMATION
───────────────────────────────────────*/
/* 
.fade-in {
    opacity: 0;
    animation: fadeInUp 0.6s ease-out forwards;
}

.fade-in.show {
    opacity: 1;
    transform: translateY(0);
} */

/* ─────────────────────────────────────
   HERO HEADER TITLE - RESPONSIVE
───────────────────────────────────────*/

/* Desktop (> 750px): Standard-Abstand */
.hero-header__title {
    transform: translateY(20px);
}

.hero-header__label {
    transform: translateY(20px);
}

/* Tablet/Mobile (≤ 750px): Mehr Abstand */
@media (max-width: 750px) {
    .hero-header__title {
        transform: translateY(80px);
    }

    .hero-header__label {
        transform: translateY(80px);
    }
}

/* ═════════════════════════════════════════════
   NEUE MEDIA QUERIES FÜR ≤ 400px
═════════════════════════════════════════════ */

/* 1. PROJECT-SECTION PADDING */
@media (max-width: 400px) {
    .project-section {
        padding: 40px 16px;
        /* Von 60px 24px reduziert */
    }
}

/* 2. PROJECT-CONTAINER GAP */
@media (max-width: 400px) {
    .project-container {
        gap: 20px;
        /* Von 30px reduziert */
    }
}

/* 3. PROJECT-LOGO-WRAPPER */
@media (max-width: 400px) {
    .project-logo-wrapper {
        margin-bottom: 20px;
        /* Von 30px reduziert */
    }

    .project-logo {
        max-width: 160px;
        /* Von 250px auf 160px verkleinert */
    }
}

/* 4. PROJECT-LEFT-COLUMN GAP */
@media (max-width: 400px) {
    .project-left-column {
        gap: 20px;
        /* Von 30px reduziert */
    }
}

/* 5. PROJECT-SUBTITLE (Überschriften) */
@media (max-width: 400px) {
    .project-subtitle {
        font-size: 16px;
        /* Von 18px auf 16px */
        font-weight: 700;
        margin: 14px 0 8px 0;
        /* Von 18px 0 10px 0 reduziert */
    }
}

/* 6. PROJECT-TEXT (Paragrafen) */
@media (max-width: 400px) {
    .project-text {
        font-size: 14px;
        /* Von 16px auf 14px */
        line-height: 1.4;
        /* Von 1.5 reduziert */
        margin-bottom: 12px;
        /* Von 14px reduziert */
    }
}

/* 7. PROJECT-RIGHT-COLUMN GAP */
@media (max-width: 400px) {
    .project-right-column {
        gap: 20px;
        /* Von 30px reduziert */
    }
}

/* 8. PROJECT-INFO (Projekt-Details Text) */
@media (max-width: 400px) {
    .project-info {
        font-size: 14px;
        /* Von 16px auf 14px */
        line-height: 1.5;
        /* Von 1.6 reduziert */
    }

    .project-info p {
        margin: 0 0 6px 0;
        /* Von 0 0 8px 0 reduziert */
    }
}

/* 9. PROJECT-PARTNERS-LIST */
@media (max-width: 400px) {
    .project-partners-list {
        padding-left: 18px !important;
        /* Von 20px auf 18px reduziert */
    }

    .project-partners-list li {
        font-size: 14px;
        /* Von 16px auf 14px */
        line-height: 1.4;
        /* Von 1.6 reduziert */
        margin-bottom: 8px;
        /* Von 12px reduziert */
    }
}



/* Responsive Timeline für Bildschirme kleiner als 1054px */
@media (max-width: 1053px) {
    .timeline {
        display: block;
        width: 100%;
        height: auto;
        position: relative;
        margin: 80px auto;
        padding: 0;
        background: none;
        list-style: none;
        text-align: left;
    }

    .timeline::before {
        content: '';
        position: absolute;
        left: 50%;
        top: 0;
        bottom: 0;
        width: 2px;
        background: rgb(27, 27, 28);
        transform: translateX(-50%);
        z-index: 1;
    }

    .timeline:after {
        display: none;
    }

    .timeline li {
        position: relative;
        margin-bottom: 50px;
        width: 100%;
        height: auto;
        background: none;
        padding: 0;
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        gap: 0;
        align-items: flex-start;
    }

    /* Orange Punkt auf der Linie */
    .timeline li::before {
        content: '';
        position: absolute;
        left: 50%;
        top: 0;
        width: 20px;
        height: 20px;
        background: #F39D79;
        border-radius: 50%;
        transform: translateX(-50%);
        z-index: 3;
    }

    /* ===== UNGERADE ITEMS: Text LINKS, Jahr RECHTS ===== */
    .timeline li:nth-child(odd) {
        grid-template-columns: 1fr 20px 1fr;
    }

    /* Jahr rechts */
    .timeline li:nth-child(odd)::before {
        content: attr(data-year);
        position: relative;
        grid-column: 3;
        text-align: left;
        padding-left: 30px;
        font-size: 18px;
        font-weight: bold;
        line-height: 1.4;
        box-sizing: border-box;
        background: none;
        width: auto;
        height: auto;
        transform: translateX(-50%) translateY(65px);
        border-radius: 0;
        white-space: nowrap;
        display: block;
    }

    /* Text links */
    .timeline li:nth-child(odd)::after {
        content: attr(data-text);
        grid-column: 1;
        text-align: right;
        padding-right: 30px;
        font-size: 14px;
        line-height: 1.5;
        box-sizing: border-box;
        position: relative;
        left: auto;
        transform: none;
        display: block;
        min-width: auto;
    }

    /* ===== GERADE ITEMS: Text RECHTS, Jahr LINKS ===== */
    .timeline li:nth-child(even) {
        grid-template-columns: 1fr 20px 1fr;
    }

    /* Jahr links */
    .timeline li:nth-child(even)::before {
        content: attr(data-year);
        position: relative;
        grid-column: 1;
        text-align: right;
        padding-right: 30px;
        font-size: 18px;
        font-weight: bold;
        line-height: 1.4;
        box-sizing: border-box;
        background: none;
        width: auto;
        height: auto;
        transform: translateX(-50%) translateY(-10px);
        border-radius: 0;
        white-space: nowrap;
        display: block;
    }

    /* Text rechts */
    .timeline li:nth-child(even)::after {
        content: attr(data-text);
        grid-column: 3;
        text-align: left;
        padding-left: 30px;
        font-size: 14px;
        line-height: 1.5;
        box-sizing: border-box;
        position: relative;
        left: auto;
        transform: none;
        display: block;
        min-width: auto;
    }
}

.lsa-landing {
    position: absolute;
    opacity: 0.5;
    left: 0;
    top: 65%;
    transform: translateY(-50%);
    width: 600px;
    z-index: 100;
    pointer-events: none
}

.lsa-text-wrap {
    max-width: 680px;
    width: 100%;
    text-align: left;
}


@media (max-width: 1450px) and (min-width: 1055px) {
    .lsa-landing {
        width: 550px;
        margin-top: -80px;
    }
}

/* ════════════════════════════════
   TABLET  (≤ 1054px)
════════════════════════════════ */
@media (max-width: 1054px) {
    .lsa-landing {
        width: 400px;
        margin-top: -70px;
    }

    .lsa-col3 {
        margin-top: 30px;
    }
}

/* ════════════════════════════════
   MOBILE  (≤ 850px)
════════════════════════════════ */
@media (max-width: 850px) {

    .lsa-landing {
        margin-top: -130px;
    }

    .lsa-text-wrap {
        max-width: 100%;
        width: 100%;
    }
}

/* ════════════════════════════════
   MOBILE  (≤ 767px)
════════════════════════════════ */
@media (max-width: 767px) {

    .lsa-landing {
        margin-top: -170px;
        max-width: 300px;
        ;
    }
}

/* ════════════════════════════════
   MOBILE  (≤ 400px)
════════════════════════════════ */
@media (max-width: 560px) and (min-width: 401px) {

    .lsa-landing {
        width: 300px;
        margin-top: 150px;
    }

    .lsa-col3 {
        margin-left: 30px;
    }

    .lsa-text-wrap {
        max-width: 100% !important;
        width: 100% !important;
    }
}

/* ════════════════════════════════
   MOBILE  (≤ 400px)
════════════════════════════════ */
@media (max-width: 400px) {

    .lsa-landing {
        width: 100px;
        margin-top: 370px;
    }

    .lsa-col3 {
        margin-left: 30px;
    }

    .lsa-text-wrap {
        max-width: 100% !important;
        width: 100% !important;
    }

}


.txt-lead-usecases {
    font-size: 20px;
    line-height: 1.5;
    font-weight: 300;
    margin-top: 40px;
    width: 100%;
}

.h2-landing {
    
    font-size: 100px;
    line-height: 1.125;
    letter-spacing: -.5px;
    font-weight: 300
}


.newsroomLandingPage {
    display: block;              /* wichtig für <a> */
    width: 100%;
    aspect-ratio: 1920 / 560;
    overflow: hidden;
}

.newsroomLandingPage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;              /* verhindert kleine Lücken */
}

.letter-header {
    display: flex;
    justify-content: space-between;
    align-items: center; /* statt baseline */
    width: 100%;
    margin-bottom: 30px;
}

.letter-header p {
    margin: 0; /* wichtig! verhindert Runterdrücken */
}

.letter-date {
    font-size: 1.25rem;
    font-weight: 400;
    opacity: 0.7;
    white-space: nowrap;

}

