/* Keep search and language controls visible at desktop, tablet and phone widths. */
#menu-area .lp-header-row {
    align-items: center;
    flex-wrap: nowrap;
}
#menu-area .lp-header-nav {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}
#menu-area .main-menu {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    margin: 0;
    padding: 0;
}
#menu-area .main-menu li {
    flex: 0 0 auto;
    white-space: nowrap;
}
#menu-area .lp-header-tools {
    flex: 0 0 auto;
    width: auto;
    white-space: nowrap;
}
#menu-area #Search-Area {
    z-index: 10;
}

/* Keep the full menu on laptops while giving the longer German labels enough room. */
@media (min-width: 1280px) and (max-width: 1599px) {
    #menu-area {
        width: 100%;
        padding-left: 24px;
        padding-right: 24px;
    }
}

@media (max-width: 1279px) {
    #menu-area {
        position: relative;
        width: 100%;
        height: auto !important;
        min-height: 72px;
        padding: 12px;
    }
    #menu-area .lp-header-row {
        --bs-gutter-x: 0;
        margin: 0;
        min-height: 48px;
        padding-right: 52px;
    }
    #menu-area .lp-header-nav {
        display: none !important;
    }
    #menu-area .tp-logo {
        flex: 1 1 auto;
        min-width: 0;
        padding: 0;
        margin-left: 0;
    }
    #menu-area .logo-image {
        display: block;
        height: clamp(30px, 5vw, 58px) !important;
        width: auto;
        max-width: 100%;
        object-fit: contain;
        object-position: left center;
    }
    #menu-area .lp-header-tools {
        padding: 0 0 0 8px;
        line-height: 44px !important;
    }
    #menu-area .lp-header-tools > span,
    #menu-area .lp-header-tools > span > span {
        display: inline-flex;
        align-items: center;
        float: none !important;
    }
    #menu-area .lp-header-tools a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 28px;
        min-height: 44px;
        line-height: 1;
    }
    #menu-area .canvas-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 50%;
        right: 8px;
        transform: translateY(-50%);
        width: 44px;
        height: 44px;
        padding: 0;
        z-index: 11;
    }
    #menu-area #Search-Area {
        top: calc(100% + 12px) !important;
    }
}
