/* Shared viewport rules. Keep the header and cart switch at Bootstrap's lg (992px). */
.storefront-header-row {
    align-items: center;
}

.storefront-header-row > * {
    min-width: 0;
}

.storefront-icon-button {
    position: relative;
    border: 0;
    background: transparent;
    color: #333;
    padding: 0;
    font: inherit;
    cursor: pointer;
}

.storefront-profile-menu .dropdown-item {
    font-size: 14px;
    font-weight: 600;
}

.storefront-profile-menu .btn-sm {
    padding: 4px 10px;
    font-size: 12px;
}

.storefront-category-nav .navbar-nav {
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

/* Bootstrap's click state must also work on touchscreens without hover. */
.storefront-category-nav .dropdown-menu.show {
    display: block;
    opacity: 1;
    pointer-events: auto;
    transform: none;
}

.storefront-category-nav .dropdown-menu {
    max-width: calc(100vw - 24px);
}

.storefront-category-nav .dropdown-item,
.storefront-category-nav .dropdown-header {
    white-space: normal;
    max-width: 100%;
}

#offcanvasMenu {
    max-width: 100%;
}

#offcanvasMenu .dropdown-menu {
    position: static !important;
    transform: none !important;
    max-width: 100%;
    min-width: 0;
    float: none;
}

#offcanvasMenu .dropdown-item,
#offcanvasMenu .dropdown-header {
    white-space: normal;
    overflow-wrap: anywhere;
}

.storefront-cart {
    width: 340px;
    max-width: calc(100vw - 24px);
    max-height: calc(100vh - 24px);
    max-height: calc(100dvh - 24px);
    overflow: hidden;
}

.storefront-cart.show {
    display: flex;
    flex-direction: column;
}

.storefront-cart .cart-body {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    max-height: min(400px, 60vh);
}

.storefront-cart .cart-header,
.storefront-cart .cart-footer {
    flex-shrink: 0;
    background: #fff;
}

@media (min-width: 1400px) {
    .storefront-category-nav .navbar-nav > .nav-item:nth-last-child(-n+3) > .dropdown-menu {
        left: auto !important;
        right: 0;
        transform: none !important;
    }
}

@media (min-width: 992px) and (max-width: 1399.98px) {
    .storefront-category-nav .navbar-nav > .nav-item {
        flex: 0 0 20%;
    }

    .storefront-category-nav .navbar-nav > .nav-item:nth-child(5n) > .dropdown-menu {
        left: auto;
        right: 0;
    }

    .storefront-header-row .allkaria-header-menu li {
        margin-right: 12px;
    }
}

@media (max-width: 991.98px) {
    #mobileStickyHeader .allkaria-header-menu {
        margin: 0;
    }

    #mobileStickyHeader .navbar-toggler,
    #mobileStickyHeader .storefront-icon-button,
    #mobileProfileToggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 40px;
        min-height: 40px;
    }

    #openCartMenuMobil .cart-item-count {
        top: 0;
        right: 0;
    }

    .storefront-cart {
        position: fixed;
        inset: 0 0 0 auto;
        width: min(420px, 90vw);
        max-width: 100%;
        height: 100vh;
        height: 100dvh;
        max-height: 100vh;
        max-height: 100dvh;
        border-radius: 8px 0 0 8px;
        transform: none;
    }

    .storefront-cart .cart-body {
        flex: 1;
        max-height: none;
    }

    .storefront-cart .cart-footer {
        padding-bottom: max(10px, env(safe-area-inset-bottom));
    }

    .storefront-mobile-balances {
        flex-wrap: wrap;
    }
}

@media (max-width: 575.98px) {
    .alk-ust {
        flex-wrap: wrap;
        font-size: 12px;
    }

    .alk-ust-nav-kategori {
        flex-wrap: wrap;
    }
}
