{##########################################}
{#### lichtline GmbH ######################}
{#### it@lichtline.com ####################}
{##########################################}

:root {
        
}

{##########################################}
{#### CSS Code ############################}
{##########################################}

    .navigation-menu-wrapper {
        position: relative;
        display: flex;
    }

    .mobile-menu {
        display: none;
    }

    .navigation-menu {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: right;
        height: 100%;
        width: 100%;
        z-index: 2;
    }

    button.navigation-menu-close,
    button.navigation-menu-close:hover,
    button.navigation-menu-close:focus {
        padding: 30px 20px;
    }

    .navigation-menu-submenu-wrapper {
        display: none;
        position: absolute;
        flex-direction: column;
        background-color: white;
        width: 100%;
        left: 0;
    }

    .navigation-menu-submenu-submenu-wrapper {
        display: flex;
        flex-direction: column;
    }

    .navigation-menu-item-wrapper {
        height: 100%;
        position: relative;
        list-style: none;
    }

    .navigation-menu-item-chevron.rotated i,
    .navigation-menu-item-chevron.rotated svg {
        transform: rotate(180deg);
        transition: transform 0.3s ease;
   }

    .mobile-menu:focus ~ ul.navigation-menu,
    ul.navigation-menu:focus,
    ul.navigation-menu:focus-within,
    ul.navigation-menu:active {
        display: flex !important;
    }

    .no-scroll {
        overflow: hidden;
    }

    .menu__link,
    .navigation-menu-anker-wrapper {
        display: flex;
        height: 100%;
        align-items: center;
        font-weight: 400;
        position: relative;
        z-index: 1000;
        background-color: white;
    }

    svg.lucide-search {
        stroke-width: 3;
        width: 25px;
        height: 25px;
        vertical-align: middle;
        padding: 3px;
    }

    .menu-language-switcher {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        padding: 0 5px;
        border: 1px solid black;
        border-radius: 19px;
    }

    .navigation-language-chevron {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    svg.lucide-chevron-down {
        stroke-width: 2;
        width: 20px;
        height: 20px;
        vertical-align: middle;
        
    }

    #search-dropdown {
        display:none; 
        position: absolute; 
        top: 100%; right: 0; 
        background: white; 
        padding: 8px; 
        width: 300px;
        outline: none;
        border-radius: 0px 0px 10px 10px;
    }

    #search-dropdown:focus-visible,
    #search-dropdown input:focus-visible,
    #search-dropdown button:focus-visible,
    #search-dropdown:hover,
    #search-dropdown input:hover,
    #search-dropdown button:hover{
        outline: none;
    }

    #search-dropdown.menu-search-form {
        position : relative;
    }

    #search-dropdown.menu-search-form.menu-search-input {
        padding-right: 2.5em;
        width: 350px;
        box-sizing: border-box;
    }

    #search-dropdown button {
        position: absolute;
        right: 1em; 
        top: 50%;
        transform: translateY(-50%);
        border: none;
        background: transparent;
        cursor: pointer;
        height: 2em;
        width: 2em;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #search-dropdown svg.lucide-search {
        stroke-width: 2;
        color: #797979;
    }

    #search-dropdown form input[type=text] {
        margin-bottom: 0;
    }

    svg.lucide.lucide-x {
        width: 25px;
        height: 25px;
    }

    .menu__link.menu_contact_link a {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .menu_contact_link-mobile,
    .menu_contact_link-mobile:hover,
    .menu_contact_link-mobile:active,
    .menu_contact_link-mobile:focus {
        color: white;
        font-weight: 500;
        font-size: 1.3rem;
        line-height: 2;
        text-align: center;
    }

    button.navigation-menu-submenu-submenu-button {
        margin-top: 10px;
        padding: 0;
        color: black !important;
        border: none;
        border-radius: 0;
        width: fit-content;
        background-color: transparent !important;
        transition: transform 200ms ease; 
    }

    .button-module-text {
        border-bottom: 1px solid black;
    }

    .navigation-menu-submenu-submenu-button:hover {
        transform: scale(1.05);
    }

    .navigation-menu-submenu-submenu-button a:link, 
    .navigation-menu-submenu-submenu-button a:visited, 
    .navigation-menu-submenu-submenu-button a:hover, 
    .navigation-menu-submenu-submenu-button a:active {
        text-decoration: none;
        color: black!important;
    }



    .menu__link:hover,
    .menu__link:active,
    .menu__link:focus,
    .navigation-menu-anker-wrapper:hover,
    .navigation-menu-anker-wrapper:active,
    .navigation-menu-anker-wrapper:focus {
        display: flex;
        height: 100%;
        align-items: center;
    }

    .menu__link.active_node,
    .menu__link.active_branch {
        font-weight: 500;
    }

    .navigation-menu-item-chevron {
        display: none;
    }

    .navigation-menu-item-wrapper.is-open .navigation-menu-submenu-wrapper{
        display: flex;
    }

    .navigation-menu-social-wrapper {
        display: none;
        width: 100%;
    }

    .navigation-menu-lower-content {
        height: 100%;
    }