.heading-documents {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 20vh;
    color: rgba(0, 0, 0, 0.7);
    text-align: center;
    padding: 2rem;
    .documents-heading {
        font-size: 2.75rem;
        font-weight: 900;
        margin: 0;
        padding: 0;
        text-transform: uppercase;
        letter-spacing: 0.75rem;
    }
}

.card-container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 90vw;
    max-width: 1200px;
    margin: 0 auto;
}

.doc-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: white;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    border-radius: 50vw;
    width: 80%;
    max-width: 70vw;
    height: 25vh;
    margin: 1.5rem;
    transition: box-shadow 0.3s ease-in-out, transform 0.3s ease-in-out;
    .card-hor-align {
        position: relative;
        display: flex;
        justify-content: start;
        align-items: center;
        height: 100%;
        width: 100%;
        gap: 0.75rem;
        .img-container {
            height: 90%;
            aspect-ratio: 1;
            margin: 1rem;
            img{
                width: 100%;
                height: 100%;
                border-radius: 50vw;
                object-fit: cover;
            }
        }
        .text-content {
            display: flex;
            flex-direction: column;
            justify-content: space-evenly;
            .doc-heading {
                font-size: 1.75rem;
                font-weight: 600;
                color: rgba(0, 0, 0, 0.7);
                text-transform: uppercase;
                padding: 0;
                margin: 0;
            }
            .doc-intro {
                max-width: 80%;
                line-height: 1.5;
                font-size: 1rem;
                color: rgba(0, 0, 0, 0.7);
            }
        }
        .doc-add-fav {
            position: absolute;
            display: flex;
            justify-content: center;
            align-items: center;
            line-height: 1.5rem;
            right: 1rem;
            width: 2rem;
            height: 2rem;
            color: black;
            border-radius: 50%;
            border: 0.25rem solid rgba(0, 0, 0, 0.7);
            display: flex;
            justify-content: center;
            align-items: center;
            cursor: pointer;
            font-size: 1.5rem;
            font-weight: 600;
            color: rgba(0, 0, 0, 0.7);
            transform: rotate(0deg);
            transition: transform 0.3s ease-in-out;

            &:hover {
                cursor: pointer;
                color: rgba(0, 165, 0, 0.7);
                border-color: rgba(0, 165, 0, 0.7);
                transform: rotate(45deg);
                transition: transform 0.3s ease-in-out;
            }
        }
    }
}

.doc-card:hover {
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.7);
    transform: scale(1.03);
    transition: box-shadow 0.3s ease-in-out, transform 0.3s ease-in-out;
}

@media (max-width: 768px) {

    .heading-documents {
        height: auto;
        padding: 0;
        margin: 0;
        .documents-heading {
            font-size: 2rem;
            letter-spacing: 0.5rem;
        }
    }
    .card-container {
        flex-direction: column;
        align-items: center;
        width: 95vw;
        padding: 1rem;
    }
    
    .doc-card {
        width: 100%;
        max-width: 100%;
        height: 100px;
        min-height: 100px;
        margin: 1rem 0;
        
        .card-hor-align {
            flex-direction: row;
            padding: 1rem;
            gap: 1rem;
            
            .img-container {
                height: 90px;
                width: 90px;
                min-width: 80px;
                margin: 0;
                margin-left: 10px;
                img {
                    border-radius: 50%;
                }
            }
            
            .text-content {
                padding-top: 0.75rem;
                flex: 1;
                justify-content: center;
                .doc-heading {
                    font-size: 1rem; /* Reduziert von 5rem */
                    line-height: 1;
                    margin-bottom: 0.5rem;
                    overflow: hidden;
                    white-space: wrap;
                    text-overflow: ellipsis;
                }
                
                .doc-intro {
                    font-size: 0.75rem;
                    max-width: 90%;
                    padding: 0;
                    margin: 0;
                    max-height: 40px;
                    overflow: hidden;
                    text-overflow: ellipsis;   
                }
            }
            
            .doc-add-fav {
                position: relative;
                right: 10px;
                width: 40px;
                height: 40px;
                font-size: 1.25rem;
                border-width: 0.25rem;
                align-self: center;
            }
        }
    }
}