#footer {
    .container {
        width: 100%;

        @media (max-width: 1440px) {
            flex-wrap: wrap !important;
        }

        .footer-group {
            width: 80%;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;

            @media (max-width: 1440px) {
                flex: 1 1 100%;
            }

            .footer-sitemap {
                height: auto;
                clear: both;
                width: 100%;
                margin: 0 auto;
                display: block;
                float: left;
                margin-bottom: 40px;

                ul {
                    padding: 0;
                    margin: 0;
                    display: block;
                }

                ul.level_2 li {
                    display: none;
                }
            }
        }

        .footer-1 .textcontent a:hover,
        .footer-2 a:hover {
            background-color: #2F8AE6 !important;
            /* box-shadow: 0 4px 12px rgba(62, 156, 255, 0.4); */
            transform: translateY(-1px);
        }

        .footer-1 {
            display: flex;
            align-items: flex-start;
            margin-bottom: 20px;
            flex-wrap: nowrap;
            /* margin-top: 20px; */

            @media(max-width: 1440px) {
                flex: 1 1 100%;
            }
            .component {
                @media(max-width: 1200px){
                    flex-wrap: wrap !important;
                }
            }
                
            


            .textwrapper_bottom_footer {
                display: flex;
                flex-direction: column;
                width: 45%;
                height: auto;
                padding: 0;
                align-items: center;
                align-self: flex-start;
                min-width: 0;
                gap: 10px;

                .collection_list.contact_bot_footer{
                    outline: none !important;
                    box-shadow: none;

                    .collection_container{
                        transform: none;
                        transition: none;
                    }
                    .collection_container:focus-visible{
                        outline: none !important;
                        box-shadow: none;
                    }
                }

                @media(max-width: 1200px) {
                    flex: 1 1 100%;
                    padding: var(--p-200);
                    margin-bottom: 20px;
                    flex-direction: row;

                    .textwrapper_top_footer{
                        flex: 1 1 100%;
                    }
                }

                @media(max-width: 768px) {
                    flex-wrap: wrap;

                    .textwrapper_top_footer{
                        flex: 1 1 100%;
                    }
                }

                .textwrapper_top_footer {
                    display: flex;
                    cursor: default;
                    width: 100%;
                    justify-content: space-between;
                    .textcontent {
                        flex: 1 1 auto;
                        min-width: 0;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        line-height: 1.6;
                        
                    }

                    .imgcontent img{
                        margin-right: unset;
                    }
                }

                .contact_bot_footer{
                    width: 400px;
                    width: 100%;
                    padding: 0px;

                    .collection_content {
                        justify-content: unset ;
                        flex-direction: unset ;
                    }
                    .collection_container  {
                        height: auto;
                        background: unset;
                        display: grid;
                        grid-template-columns: 1fr 1fr;
                        padding: 10px 15px 0 0;

                        .contact_title_footer{
                            grid-column: 1;
                            grid-row: 1;
                            font-weight: var(--fw-bold);
                            cursor: default;
                        }
                        .contact_adress_footer{
                            grid-column: 1;
                            grid-row: 2;  
                            width: 105px; 
                            text-align: left;
                            cursor: default;
                        }
                        .contact_right_footer{
                            flex-direction: column-reverse;
                            grid-column: 2;
                            grid-row: 2 / 3;
                            display: flex;

                            
                            
                            .collection_content.contact_telefon_footer a {
                                text-decoration: none !important;
                                color: #4b4b4b !important;
                                position: relative;
                            }
                            .collection_content.contact_telefon_footer a::after {
                                content: "";
                                position: absolute;
                                left: -25px;
                                top: 50%;
                                transform: translateY(-50%);
                                width: 20px;
                                height: 20px;
                                background-image: url(/userdata/06_Bausteine/phone_orig_w.svg);
                                background-repeat: no-repeat;
                                background-size: 15px 15px;
                            }

                            .collection_content.contact_email_footer a {
                                text-decoration: none !important;
                                color: #4b4b4b !important;
                                position: relative;

                            }
                            .collection_content.contact_email_footer a::after {
                                content: "";
                                position: absolute;
                                left: -25px;
                                top: 50%;
                                transform: translateY(-50%);
                                width: 20px;
                                height: 20px;
                                background-image: url(/userdata/06_Bausteine/mail_orig_w.svg);
                                background-repeat: no-repeat;
                                background-size: 17px 18px;
                            }
                        }
                        @media (max-width: 992px){
                            .contact_right_footer{
                                grid-column: 1;
                                grid-row: 3 / 3;
                                padding-left: 30px;
                            }  
                        }
                        @media (max-width: 768px){
                            .contact_right_footer{
                                flex-direction: column-reverse;
                                grid-column: 2;
                                grid-row: 2 / 3;
                                display: flex;
                            }  
                        }

                        @media (max-width: 420px) {
                            .contact_right_footer{
                                grid-column: 1;
                                grid-row: 3 / 3;
                                padding-left: 30px;
                            }
                        }
                    }
                }
            }

            .footer_verlinkungen_wrapper {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
                gap: 8px;
                width: 55%;
                grid-auto-flow: dense;
                position: relative;
                padding-left: 30px;

                @media (max-width: 1200px) {
                    padding-left: unset;
                    width: 100%;
                    gap: 10px;
                }
                @media(max-width: 992px) {
                    flex: 1 1 100%;
                }

            }
            .footer_verlinkungen_wrapper::before {
                content: "";
                position: absolute;
                left: -5px; 
                top: 0;
                width: 1px;
                height: 100%;
                background: #707070;

                @media (max-width: 1200px) {
                    display: none;
                }
            }

            .col-verlinkungen {
                min-width: 210px;
                width: 100%;
                float: unset;
                padding: 0;
                box-sizing: border-box;
            }

            /* Layout to match visual example (2-column top, full width rows, final 3 small items) */
            .col-verlinkungen:nth-child(3),
            .col-verlinkungen:nth-child(6),
            .col-verlinkungen:nth-child(9),
            .col-verlinkungen:nth-child(12) {
                grid-column: 1 / -1;
            }

            .collection_container {
                width: 100%;
                height: 32px;
                padding: 0 12px;
                background: #ffffff;
                border-radius: 10px;
                box-sizing: border-box;
                display: flex;
                align-items: center;
                justify-content: flex-start;
                gap: 8px;
                overflow: hidden;
                max-width: 100%;
            }

            .col-verlinkungen_one {
                display: flex;
                align-items: center;
                justify-content: center;
            }

            .verlinkungen_logo {
                display: flex;
                align-items: center;
                justify-content: center;
                flex-shrink: 0;
                width: 18px;
                height: 18px;

                img {
                    display: block;
                    max-width: 18px;
                    max-height: 18px;
                    width: auto;
                    height: auto;
                    object-fit: contain;
                }
            }

            .col-verlinkungen_two {
                min-width: 0;
            }

            .verlinkungen_title {
                font-size: 12px;
                /* keep font unchanged */
                line-height: 1;
                font-weight: var(--fw-regular);
                color: #4b4b4b;
                white-space: nowrap;
                overflow: hidden;
                text-overflow: ellipsis;
            }

            .col-verlinkungen_three {
                display: none;
            }

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

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

                .collection_container {
                    padding: 16px 20px;
                    gap: 14px;
                }

                .verlinkungen_title {
                    font-size: 16px;
                }

                .verlinkungen_logo img {
                    max-width: 48px;
                    max-height: 48px;
                }
            }

            /* .textcontent {
                width: 100% !important;  
            } */

            .imgcontent img {
                width: 86px !important;
                height: 86px !important;
                margin-right: 40px;
                object-fit: cover !important;
            }
            /* @media(max-width: 550px) {
                margin-right: unset !important;
            } */
        }

        .footer-2 {
            width: 60%;
        }
    }

    .footer-3 {
        width: 34%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;

        /* margin-top: 5px; */
        @media(max-width: 1440px) {
            align-items: unset !important;
            margin: unset;
        }
        @media(max-width: 1200px) {
            width: 100% !important;
        }
    }
}

#footer .footer-3 .contactformular .form-check span {
    white-space: normal !important;
    text-indent: 0 !important;
    margin-left: 10px !important;
}
 
#footer .footer-3 .contactformular .form-check span::before {
    content: "";
} 

@media (max-width: 768px) {
    #footer {
        .container {
            flex-wrap: wrap !important;
            justify-content: unset !important;

            .footer-group {
                width: 100%;
            }

            .footer-3 {
                width: 100% !important;
            }
        }

        .footer-3 {
            margin-left: unset;
            width: 100% !important;
        }

        .footer-sitemap li.level_1 {
            padding-right: unset !important;
            text-align: center !important;
        }
    }
}

@media (max-width: 435px) {
    #footer {
        .container {
            padding: var(--p-300) !important;

            .footer-1 {
                display: flex !important;
                align-items: center !important;
                margin-bottom: 20px;
                flex-wrap: wrap !important;
                margin-top: 20px;
                justify-content: center;

                .imgcontent img {
                    margin-right: unset !important;
                }
            }
        }
    }
}