.mobile-bottom-nav {
    display: none;
}

@media (max-width: 767px) {
    body {
        padding-bottom: calc(72px + env(safe-area-inset-bottom));
    }

    .site-header .navbar-toggler {
        display: none !important;
    }

    .mobile-bottom-nav {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 10040;
        display: block;
        padding-bottom: env(safe-area-inset-bottom);
        border-top: 1px solid rgba(203, 168, 126, .65);
        background: rgba(37, 37, 37, .98);
        box-shadow: 0 -8px 28px rgba(0, 0, 0, .18);
        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);
    }

    .mobile-bottom-nav__inner {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        width: 100%;
        max-width: 620px;
        height: 71px;
        margin: 0 auto;
    }

    .mobile-bottom-nav__item {
        position: relative;
        display: flex;
        min-width: 0;
        height: 71px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        padding: 7px 2px 6px;
        color: rgba(255, 255, 255, .68);
        line-height: 1;
        text-align: center;
        -webkit-tap-highlight-color: transparent;
        transition: color .2s ease, background .2s ease;
    }

    .mobile-bottom-nav__item::before {
        position: absolute;
        top: 0;
        left: 50%;
        width: 24px;
        height: 3px;
        border-radius: 0 0 4px 4px;
        background: var(--primary);
        content: "";
        opacity: 0;
        transform: translateX(-50%);
    }

    .mobile-bottom-nav__icon {
        display: inline-flex;
        width: 28px;
        height: 28px;
        flex: 0 0 28px;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }

    .mobile-bottom-nav__icon i {
        display: inline-flex;
        width: 24px;
        height: 24px;
        align-items: center;
        justify-content: center;
        margin: 0;
        font-size: 19px;
        line-height: 1;
        transform: none;
    }

    .mobile-bottom-nav__label {
        display: block;
        max-width: 100%;
        overflow: hidden;
        font-size: 11px;
        font-weight: 500;
        line-height: 1.1;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .mobile-bottom-nav__item:hover,
    .mobile-bottom-nav__item:focus-visible,
    .mobile-bottom-nav__item.active {
        background: rgba(255, 255, 255, .04);
        color: var(--primary);
    }

    .mobile-bottom-nav__item.active::before {
        opacity: 1;
    }

    .scroltop {
        bottom: calc(84px + env(safe-area-inset-bottom)) !important;
    }
}
