.primary-navigation .primary-menu-container>ul>.menu-item>a .title-att::before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    position: relative;
    width: 2px;
    height: 2px;
    background-color: currentColor;
    border-radius: 50%;
    margin: 10px 0;
    padding: 1px
}

.primary-navigation .primary-menu-container>ul>.menu-item>a {
    position: relative;
    display: inline-block;
    text-align: left;
    width: 100%;
    padding: 0 11px;
    font-size: var(--font-size-base);
    line-height: 1.25;
    color: var(--color-text);
    font-family: var(--font-family-heading);
    font-weight: 400
}

.header-container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%
}

.primary-navigation {
    margin-left: auto;
    padding-left: 50px;
    width: 100%;
    margin-right: auto
}

.primary-navigation-menu-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 42px
}

.reserve-button-container .button.secondary {
    padding: 1px 18px 2px
}

.site-header {
    position: fixed;
    width: 100vw;
    max-width: 100%;
    z-index: 999;
    padding: 47px 0
}

.primary-navigation .language-menu-container a {
    font-size: var(--font-size-base);
    text-align: left;
    font-family: var(--font-family)
}

.primary-navigation .language-menu-container .sub-menu .menu-item>a {
    padding: 15px 0 0;
    font-size: var(--font-size-base);
    font-family: var(--font-family)
}

.navbar-menu__button-line {
    display: inline-block;
    background-color: var(--color-text);
    width: 16px;
    height: 1px
}

.primary-navigation-open .navbar-menu__button-line {
    background-color: var(--color-dark)
}

.navbar-menu__button-open {
    grid-column-gap: 4px;
    grid-row-gap: 4px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 4px 1px;
    display: flex;
    margin: 0 auto
}

.site-header .site-logo {
    margin: 0;
    max-width: 148px;
}

.site-header .site-logo .custom-logo {
    width: 100%;
}

@media (min-width: 768px) {
    .menu-button-container {
        display: none
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a {
        writing-mode: vertical-rl;
        text-orientation: mixed;
        letter-spacing: 2px;
    }

    .language-menu-container li {
        list-style: none
    }

    .primary-navigation .primary-menu-container .menu-item {
        width: 40px;
        text-align: left
    }

    .primary-navigation .language-menu-container .sub-menu {
        opacity: 0;
        pointer-events: none;
        transition: all .5s;
        padding: 0 2px;
    }

    .primary-navigation .language-menu-container .sub-menu .menu-item>a:not(:hover) {
        opacity: .5
    }

    .primary-navigation .language-menu-container .sub-menu .current-lang {
        display: none
    }

    .primary-navigation .language-menu-container .pll-parent-menu-item:hover .sub-menu {
        opacity: 1;
        pointer-events: all
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a .title-att {
        opacity: 0;
        pointer-events: none;
        transition: all .5s;
        display: inline-flex;
        align-items: center;
        width: 100%;
        justify-content: center;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1;
        color: var(--color-text)
    }

    html[lang="zh-CN"] .primary-navigation .primary-menu-container>ul>.menu-item>a .title-att,
    html[lang="zh-HK"] .primary-navigation .primary-menu-container>ul>.menu-item>a .title-att {
        letter-spacing: 6px;
        height: max-content
    }

    .primary-navigation .primary-menu-container>ul>.menu-item:hover>a .title-att {
        opacity: 1;
        pointer-events: all;
        top: 100%
    }

    .reserve-button-container .footer-social {
        display: none
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a::before {
        opacity: 0;
        pointer-events: none
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a:before {
        content: '';
        position: absolute;
        width: 1px;
        height: 100%;
        top: 0;
        display: block;
        background: currentColor;
        right: 5px;
        transition: all .5s
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a::before {
        opacity: 0;
        pointer-events: none
    }

    .primary-navigation .primary-menu-container>ul>.menu-item.current-menu-item>a::before {
        opacity: .4
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a::after {
        opacity: 0
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a .title-att {
        writing-mode: vertical-rl;
        text-orientation: mixed
    }

    .page-template-chef-page .primary-navigation:not(.overlap-visit) .primary-menu-container>ul>.menu-item>a .title-att {
        color: var(--color-dark)
    }

    .page-template-chef-page .reserve-button-container .button.secondary {
        background-color: rgba(27, 27, 27, .1)
    }

    .page-template-chef-page .reserve-button-container .button.secondary:hover {
        background-color: rgba(27, 27, 27, .3)
    }

    .pll-parent-menu-item>a:after {
        content: '/ JP';
        padding-left: 6px
    }

    .primary-navigation .language-menu-container .submenu {
        opacity: 0;
        pointer-events: none
    }

    .menu-wrapper {
        display: flex;
        align-items: flex-start;
        padding-left: 0
    }
}

@media (min-width: 768px) and (max-width:1024px) {
    .menu-wrapper {
        padding-left: 0
    }

    .primary-navigation {
        padding-left: 20px
    }

    .primary-navigation-menu-container {
        gap: 20px
    }

    .site-logo .custom-logo {
        max-height: 130px
    }
}

@media (max-width: 767px) {
    .no-scroll {
        overflow: hidden
    }

    .primary-navigation {
        top: 0;
        left: 0;
        width: 100%;
        height: var(--app-height);
        z-index: 99;
        background-color: #DEDEDE;
        background-image: url(../images/background-menu.png);
        position: fixed;
        padding-left: 0;
        padding-top: 240px;
        opacity: 0;
        pointer-events: none
    }

    .menu-button-container #primary-mobile-menu {
        width: 39px;
        flex-direction: column
    }

    .admin-bar .primary-navigation {
        padding-top: calc(240px + var(--global--admin-bar--height))
    }

    .primary-navigation-open .primary-navigation {
        opacity: 1;
        pointer-events: all
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a {
        color: var(--color-dark);
        vertical-align: middle;
    }

    .primary-navigation .button.secondary {
        color: var(--color-dark);
        background: rgba(27, 27, 27, .1);
        padding: 1px 15px 2.5px
    }

    .primary-navigation>.primary-menu-container {
        width: 100%;
        order: 1
    }

    .language-menu-container {
        width: 100%;
        order: 2
    }

    .reserve-button-container {
        width: 100%;
        order: 3;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 34px 30px
    }

    .site-logo {
        position: relative;
        z-index: 100
    }

    .menu-button-container {
        position: relative;
        z-index: 100
    }

    .language-menu-container {
        position: relative
    }

    .primary-navigation>div>.menu-wrapper li {
        text-align: center
    }

    .menu-button-container #primary-mobile-menu .dropdown-icon {
        font-size: 15px;
        line-height: 22px;
        margin-top: 6px
    }

    .primary-navigation-open .menu-button-container #primary-mobile-menu .dropdown-icon {
        color: var(--color-dark)
    }

    .primary-navigation-open .site-logo .custom-logo {
        filter: brightness(0%)
    }

    .primary-navigation-open .primary-navigation .primary-menu-container>ul>.menu-item>a .title-att {
        color: var(--color-dark);
        display: inline-block;
        vertical-align: top;
    }

    .primary-navigation-open .primary-navigation .primary-menu-container>ul>.menu-item>a .title-att::before {
        margin: 0 10px;
        background: var(--color-dark)
    }

    .primary-navigation .language-menu-container .sub-menu {
        text-align: left;
        padding: 0 17.5px;
    }

    .primary-navigation .language-menu-container .sub-menu li {
        width: auto;
        display: inline-block;
        padding: 0 12.5px
    }

    .primary-navigation .language-menu-container .sub-menu li a {
        color: var(--color-dark)
    }

    .primary-navigation .language-menu-container .sub-menu li a:after {
        content: '/ JP';
        padding-left: 6px
    }

    .primary-navigation .language-menu-container .pll-parent-menu-item>a {
        display: none
    }

    .primary-navigation .language-menu-container .sub-menu .current-lang>a {
        position: relative
    }

    .primary-navigation .language-menu-container .sub-menu .current-lang>a::before {
        content: '';
        position: absolute;
        bottom: 4px;
        left: 0;
        width: 100%;
        height: 1px;
        background: var(--color-dark);
        z-index: 1
    }

    .page-template-chef-page .navbar-menu__button-line {
        background-color: var(--color-dark)
    }

    .page-template-chef-page .menu-button-container #primary-mobile-menu .dropdown-icon {
        color: var(--color-dark)
    }

    .reserve-button-container .footer-social {
        display: flex;
        align-items: center;
        gap: 30px
    }

    .reserve-button-container .footer-social img {
        filter: brightness(0%);
        max-width: 20px;
        height: auto
    }

    .site-logo .custom-logo {
        max-width: 162px
    }

    .primary-navigation-menu-container {
        overflow: auto;
        max-height: calc(var(--app-height) - 300px);
        justify-content: flex-start;
    }

    .primary-navigation-menu-container .primary-menu-container {
        width: 100%;
        padding: 0 30px;
    }

    @media (max-height: 731px) {
        .primary-navigation {
            padding-top: 160px;
        }

        .admin-bar .primary-navigation {
            padding-top: calc(160px + var(--global--admin-bar--height));
        }

        .primary-navigation-menu-container {
            max-height: calc(var(--app-height) - 160px);
            gap: 0;
        }
    }

    .site-header {
        padding: 30px 0;
        position: absolute
    }

    .header-container {
        align-items: flex-start
    }

    .primary-navigation-open .menu-button-container #primary-mobile-menu {
        font-size: 15px;
        line-height: 22px;
        font-weight: 400;
        color: var(--color-dark);
        flex-direction: column;
        height: 100px;
        outline: none
    }

    .primary-menu-container li {
        list-style: none;
        margin-bottom: 29px
    }

    .menu-wrapper {
        padding: 0;
        display: flex;
        flex-direction: column-reverse
    }

    .primary-navigation .primary-menu-container>ul>.menu-item>a {
        font-size: 20px;
        line-height: 28px;
        font-weight: 500;
        padding: 0;
    }

    .primary-navigation .language-menu-container .sub-menu .menu-item>a {
        padding: 8px 0 0
    }

    .menu-button-container #primary-mobile-menu .dropdown-icon {
        flex-direction: column;
        justify-content: center
    }
}