
.container-referenzen {
    position: relative;
    display: flex;
    padding-bottom:2rem;
    margin-bottom: 0;
    background-color: rgb(231, 231, 231);
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
    overflow-x: hidden
}

.seitenbalken {
    position: relative;
    color: rgb(0, 0, 0);
    background: linear-gradient(to bottom, #576669, #A0B2A6);
    width: 25%;
    z-index: 15;
    margin: 0;
    left: 0;
}

.beschreibung-referenz {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    left: 7%;
    width: 35%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.95);
    z-index: 40;
    padding: 4rem;
    overflow: hidden;
    pointer-events: none;
}

.beschreibung-referenz h4 {
    color: rgb(0, 0, 0);
    font-size: 1.9rem;
    white-space: wrap;
    margin-bottom: 2rem;
    line-height: 2.2rem;
}

.beschreibung-referenz p {
    color: rgb(0, 0, 0);
    font-size: .9rem;
    white-space: wrap;
    line-height: 1.2rem;
    padding: 0;
}

.swiper-container {
    display: flex;
    position: relative;
    justify-content: flex-start;
    color: rgb(0, 0, 0);
    width: 75%;
    margin-top: 4rem;
    height: 90%; /* Set default height */
    /*border:4px solid rgb(0, 0, 0);*/
    max-height: 100%;
}

.swiper-pagination {
    position: relative;
}

/* Custom styles for the swiper slider */
.swiper-slide {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    height: 100%;
}
  

.swiper-slide img {
    width: 100%;  /* Make the image fill the slide */ 
    height:100%; 
    object-fit: contain; /* Maintain aspect ratio, cover the container */
    object-position: center top; /* Center the image within the container */
}

/* Custom navigation buttons */
.swiper-button-next, .swiper-button-prev {
    cursor: pointer;
}

/* Change the color of the next button icon */
.swiper-button-next::after {
    color: var(--linkhover-footer);  /* Set your desired color */
    padding:1rem;
    margin-right:1rem;
    background-color: rgba(255, 255, 255, 0.95);
    font-size: 2.1rem;
    font-weight: 600;
    border-radius: 2px;
    transition: color 0.15s ease; /* Smooth transition for color change */
}

.swiper-button-prev::after {
    display:none;
    color: var(--link-global);  /* Set your desired color */
    padding:.5rem;
    background-color: rgba(255, 255, 255, 0.75);
    font-size: 2.1rem;
    font-weight: 600;
}


.swiper-button-next:hover::after {
    background-color: rgba(255, 255, 255, 1);
}

/* Style for pagination dots */
.swiper-pagination-bullet {
    background-color: #000;
}

.swiper-pagination-bullet-active {
    background-color: #47acff; /* Active dot color */
}

/* Optionally, style the active slide for better visibility */
.swiper-slide-active {
    opacity: 1; /* Slightly fade the active slide */
}


/* Media Queries for Responsiveness */

@media (min-width: 1025px) and (max-width: 1280px) {
    .swiper-button-next::after {
        margin-right:0rem;
    }

    .beschreibung-referenz h4 {
        font-size: 1.6rem;
        line-height: 1.8rem;
    }
}

@media (max-width: 1024px) {
    /* Hide sidebar (seitenbalken) for medium screens */
    .seitenbalken {
        display: none; /* Hide on medium screens */
    }

    /* Adjust container for medium screens */
    .container-referenzen {
        flex-direction: column; /* Stack content vertically */
        height: auto; /* Let content adjust height */
        background-color: rgb(255, 255, 255);
    }

    .beschreibung-referenz {
        position: static; /* Change from absolute positioning */
        width: 100%; /* Take full width */
        margin-top: 2rem; /* Space above description */
    }

    .swiper-container {
        width: 100%; /* Full width for swiper */
        margin-top: 0rem; /* Space between description and swiper */
    }

    .swiper-button-next::after {
        margin-right:0rem;
    }
}

@media (max-width: 768px) {
    /* Adjust for smaller screens */
    .container-referenzen {
        flex-direction: column; /* Stack content vertically */
        height: auto;
        background-color: rgb(255, 255, 255);
    }

    .beschreibung-referenz {
        padding: 3rem;
        width: 100%; /* Full width for the description */
    }

    .beschreibung-referenz h4 {
        margin-bottom: 2rem;
        font-size: 1.6rem;
    }

    .swiper-container {
        margin-top: 0rem; /* Align below description */
    }
}

@media (max-width: 480px) {
    /* For very small screens (mobile devices) */
    .container-referenzen {
        flex-direction: column;
        height: auto;
        background-color: rgb(255, 255, 255);
    }

    .swiper-container {
        height: 35vh; /* Very small swiper height */
        margin-top: 0; /* Add a small gap between description and swiper */
    }

    .swiper-button-next, .swiper-button-prev {
        display:none !important;
    }
    
}
