html:has(body.public-body > main.qr-menu.theme-editorial-grid),
body.public-body:has(> main.qr-menu.theme-editorial-grid) {
    background: #eeeeeb !important;
}

body.public-body:has(> main.qr-welcome-page.theme-editorial-grid) {
    background: #090a08 !important;
}

body.public-body:has(> main.qr-welcome-page.theme-editorial-grid) > .app-copyright,
body.public-body:has(> main.qr-menu.theme-editorial-grid) > .app-copyright {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid {
    background: #11120f !important;
    color: #fff !important;
    font-family: var(--menu-font, var(--qr-public-font, Sora, sans-serif)) !important;
    min-height: 100svh !important;
    overflow: hidden !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-fit-shell {
    display: block !important;
    height: 100svh !important;
    max-width: none !important;
    min-height: 100svh !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    width: 100% !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-bg-media {
    background:
        linear-gradient(180deg, rgba(5,5,4,.10), rgba(5,5,4,.28) 44%, rgba(5,5,4,.52)),
        var(--cover-image),
        linear-gradient(145deg, #26251d, #0f100d) !important;
    background-position: center !important;
    background-size: cover !important;
    inset: 0 !important;
    position: absolute !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-bg-media img,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-bg-media video {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-bg-media::after {
    background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.22) 52%, rgba(0,0,0,.58)) !important;
    content: "" !important;
    inset: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-motion-grid,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-announcement-block,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-picked-rail,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-survey-button {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-topbar {
    align-items: center !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.12) !important;
    color: #161616 !important;
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) 58px !important;
    height: 64px !important;
    left: 0 !important;
    padding: 0 !important;
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    width: 100% !important;
    z-index: 30 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip {
    align-items: center !important;
    align-self: stretch !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #111 !important;
    display: flex !important;
    gap: 8px !important;
    grid-column: 2 !important;
    height: 64px !important;
    justify-content: center !important;
    min-width: 0 !important;
    padding: 0 4px !important;
    text-align: center !important;
    text-decoration: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
    border-radius: 0 !important;
    box-shadow: none !important;
    height: auto !important;
    max-height: 34px !important;
    max-width: min(210px, 52vw) !important;
    object-fit: contain !important;
    width: auto !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip strong {
    color: #111 !important;
    display: block !important;
    font-size: clamp(15px, 4vw, 21px) !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    line-height: 1 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-transform: uppercase !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img + strong {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip > span {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-icon {
    align-items: center !important;
    appearance: none !important;
    background: transparent !important;
    border: 0 !important;
    color: #151515 !important;
    display: inline-flex !important;
    height: 64px !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
    width: 58px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon {
    flex-direction: column !important;
    gap: 5px !important;
    grid-column: 1 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span {
    background: currentColor !important;
    border-radius: 999px !important;
    display: block !important;
    height: 2px !important;
    width: 22px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-search-icon {
    grid-column: 3 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-search-icon svg {
    fill: none !important;
    height: 24px !important;
    stroke: currentColor !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    stroke-width: 2.2 !important;
    width: 24px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick {
    align-items: center !important;
    display: flex !important;
    gap: 8px !important;
    justify-content: flex-end !important;
    position: fixed !important;
    right: 14px !important;
    top: 78px !important;
    z-index: 20 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button {
    appearance: none !important;
    background: rgba(255,255,255,.92) !important;
    border: 1px solid rgba(0,0,0,.12) !important;
    border-radius: 999px !important;
    color: #151515 !important;
    cursor: pointer !important;
    font: inherit !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    min-height: 32px !important;
    padding: 10px 12px !important;
    text-decoration: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-hero-copy {
    align-items: flex-end !important;
    bottom: 0 !important;
    display: flex !important;
    justify-content: center !important;
    left: 0 !important;
    padding: 0 23px 96px !important;
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    z-index: 10 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-hero-copy .welcome-greeting,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-hero-copy h1 {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-action-row {
    display: block !important;
    margin: 0 auto !important;
    max-width: 380px !important;
    width: 100% !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual {
    align-items: center !important;
    background: rgba(8,8,7,.12) !important;
    border: 1px solid rgba(255,255,255,.88) !important;
    border-radius: 2px !important;
    bottom: 56px !important;
    box-shadow: none !important;
    color: #fff !important;
    display: flex !important;
    height: 44px !important;
    justify-content: center !important;
    left: 23px !important;
    letter-spacing: 0 !important;
    min-height: 44px !important;
    overflow: hidden !important;
    padding: 0 18px !important;
    position: fixed !important;
    right: 23px !important;
    text-decoration: none !important;
    text-transform: none !important;
    width: auto !important;
    z-index: 40 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual::before,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual::after,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-illustration,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual i {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual .welcome-action-text {
    align-items: center !important;
    display: flex !important;
    justify-content: center !important;
    min-width: 0 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual b {
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    bottom: 48px !important;
    box-shadow: none !important;
    display: flex !important;
    gap: 8px !important;
    justify-content: center !important;
    left: 0 !important;
    padding: 0 !important;
    position: fixed !important;
    right: 0 !important;
    top: auto !important;
    z-index: 20 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a {
    background: rgba(255,255,255,.16) !important;
    border: 1px solid rgba(255,255,255,.38) !important;
    border-radius: 999px !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    min-height: 30px !important;
    padding: 9px 12px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a.active {
    background: #fff !important;
    color: #111 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid {
    background: #fff !important;
    color: #171717 !important;
    font-family: var(--menu-font, var(--qr-public-font, Sora, sans-serif)) !important;
    margin: 0 auto !important;
    max-width: 560px !important;
    min-height: 100vh !important;
    overflow-x: hidden !important;
    padding: 0 0 44px !important;
    position: relative !important;
    width: 100% !important;
}

@media (min-width: 720px) {
    body.public-body > main.qr-menu.theme-editorial-grid {
        box-shadow: 0 24px 80px rgba(0,0,0,.18) !important;
    }
}

/* Theme 3 v32 final override: compact translucent legacy dock */
html body.public-body > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel nav .theme3-drawer-static-media {
    background: #111 !important;
    display: block !important;
    object-fit: cover !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
    padding-bottom: calc(88px + env(safe-area-inset-bottom)) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
    align-items: center !important;
    background: rgba(17,17,17,.68) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 16px !important;
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.12) !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 5px !important;
    height: 54px !important;
    justify-content: center !important;
    left: 50% !important;
    max-width: calc(100vw - 30px) !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 6px !important;
    position: fixed !important;
    right: auto !important;
    top: auto !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    z-index: 138 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    gap: 5px !important;
    height: 42px !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
    align-items: center !important;
    background: rgba(255,255,255,.09) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 13px !important;
    box-shadow: none !important;
    color: #fff !important;
    display: inline-grid !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    justify-content: center !important;
    min-height: 42px !important;
    min-width: 42px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    transform: none !important;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease !important;
    width: 42px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::after {
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge.is-active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button.is-active {
    background: rgba(255,255,255,.88) !important;
    border-color: rgba(255,255,255,.92) !important;
    color: #111 !important;
    transform: translateY(-2px) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button strong {
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-share-icon {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: currentColor !important;
    fill: currentColor !important;
    height: 21px !important;
    max-height: 21px !important;
    max-width: 21px !important;
    stroke: currentColor !important;
    width: 21px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart em {
    align-items: center !important;
    background: #ff4b4b !important;
    border: 1px solid rgba(255,255,255,.9) !important;
    border-radius: 999px !important;
    box-shadow: 0 5px 12px rgba(0,0,0,.28) !important;
    color: #fff !important;
    display: inline-flex !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    height: 16px !important;
    justify-content: center !important;
    min-width: 16px !important;
    padding: 0 3px !important;
    position: absolute !important;
    right: -5px !important;
    top: -5px !important;
}

@media (min-width: 992px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
        padding-bottom: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        bottom: 22px !important;
        flex-direction: row !important;
        left: 50% !important;
        right: auto !important;
        top: auto !important;
        transform: translateX(-50%) !important;
        width: auto !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        flex-direction: row !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible {
        background: rgba(255,255,255,.86) !important;
        border-color: rgba(255,255,255,.9) !important;
        color: #111 !important;
        outline: 0 !important;
        transform: translateY(-2px) !important;
    }
}

/* Theme 3 v32 compact translucent legacy dock and static drawer previews */
html body.public-body > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel nav .theme3-drawer-static-media {
    background: #111 !important;
    display: block !important;
    object-fit: cover !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
    padding-bottom: calc(88px + env(safe-area-inset-bottom)) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
    align-items: center !important;
    background: rgba(17, 17, 17, .68) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 16px !important;
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.12) !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 5px !important;
    height: 54px !important;
    justify-content: center !important;
    left: 50% !important;
    max-width: calc(100vw - 30px) !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 6px !important;
    position: fixed !important;
    right: auto !important;
    top: auto !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    z-index: 138 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    gap: 5px !important;
    height: 42px !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
    align-items: center !important;
    background: rgba(255,255,255,.09) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 13px !important;
    box-shadow: none !important;
    color: #fff !important;
    display: inline-grid !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    justify-content: center !important;
    min-height: 42px !important;
    min-width: 42px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    transform: none !important;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease !important;
    width: 42px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::after {
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge.is-active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button.is-active {
    background: rgba(255,255,255,.88) !important;
    border-color: rgba(255,255,255,.92) !important;
    color: #111 !important;
    transform: translateY(-2px) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button strong {
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-share-icon {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: currentColor !important;
    fill: currentColor !important;
    height: 21px !important;
    max-height: 21px !important;
    max-width: 21px !important;
    stroke: currentColor !important;
    width: 21px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart em {
    align-items: center !important;
    background: #ff4b4b !important;
    border: 1px solid rgba(255,255,255,.9) !important;
    border-radius: 999px !important;
    box-shadow: 0 5px 12px rgba(0,0,0,.28) !important;
    color: #fff !important;
    display: inline-flex !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    height: 16px !important;
    justify-content: center !important;
    min-width: 16px !important;
    padding: 0 3px !important;
    position: absolute !important;
    right: -5px !important;
    top: -5px !important;
}

@media (min-width: 992px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
        padding-bottom: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        bottom: 22px !important;
        flex-direction: row !important;
        left: 50% !important;
        right: auto !important;
        top: auto !important;
        transform: translateX(-50%) !important;
        width: auto !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        flex-direction: row !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible {
        background: rgba(255,255,255,.86) !important;
        border-color: rgba(255,255,255,.9) !important;
        color: #111 !important;
        outline: 0 !important;
        transform: translateY(-2px) !important;
    }
}

/* Theme 3 v31 white header and floating glass actions */
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero[style],
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.is-category-open .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.is-search-open .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .pro-back-bar {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
    border-radius: 0 !important;
    box-shadow: 0 8px 22px rgba(19, 18, 16, .06) !important;
    filter: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header::after {
    background: transparent !important;
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header {
    color: #111 !important;
    isolation: isolate !important;
    position: relative !important;
    z-index: 2 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-header-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-header-brand {
    color: #111 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
    padding-bottom: calc(104px + env(safe-area-inset-bottom)) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
    align-items: center !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,244,236,.91)) !important;
    border: 1px solid rgba(20, 20, 18, .12) !important;
    border-radius: 999px !important;
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
    box-shadow:
        0 18px 44px rgba(19, 18, 16, .18),
        inset 0 1px 0 rgba(255,255,255,.95) !important;
    display: flex !important;
    gap: 8px !important;
    height: 68px !important;
    justify-content: center !important;
    left: 50% !important;
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 8px 10px !important;
    position: fixed !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    z-index: 138 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
    background: linear-gradient(90deg, transparent, var(--primary, #c9a347), transparent) !important;
    border-radius: 999px !important;
    bottom: -5px !important;
    box-shadow: 0 6px 18px color-mix(in srgb, var(--primary, #c9a347) 35%, transparent) !important;
    content: "" !important;
    display: block !important;
    height: 3px !important;
    left: 28px !important;
    opacity: .85 !important;
    position: absolute !important;
    right: 28px !important;
    top: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
    align-items: center !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex: 0 0 auto !important;
    gap: 8px !important;
    height: 52px !important;
    min-width: 0 !important;
    width: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
    align-items: center !important;
    appearance: none !important;
    background:
        radial-gradient(circle at 32% 18%, rgba(255,255,255,.95), transparent 34%),
        linear-gradient(145deg, #fff 0%, #f2eee6 100%) !important;
    border: 1px solid rgba(20, 20, 18, .13) !important;
    border-radius: 999px !important;
    box-shadow:
        0 10px 24px rgba(19, 18, 16, .13),
        inset 0 -1px 0 rgba(0,0,0,.05) !important;
    color: #121212 !important;
    display: inline-grid !important;
    flex: 0 0 52px !important;
    height: 52px !important;
    justify-content: center !important;
    min-height: 52px !important;
    min-width: 52px !important;
    overflow: visible !important;
    padding: 0 !important;
    position: relative !important;
    transition: background .24s ease, border-color .24s ease, box-shadow .24s ease, color .24s ease, transform .24s ease !important;
    width: 52px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::after {
    background: var(--primary, #c9a347) !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 6px 12px rgba(19, 18, 16, .18) !important;
    content: "" !important;
    display: block !important;
    height: 9px !important;
    left: 50% !important;
    opacity: .88 !important;
    position: absolute !important;
    top: -4px !important;
    transform: translateX(-50%) !important;
    width: 9px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge.is-active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button.is-active {
    background: #111 !important;
    border-color: #111 !important;
    box-shadow: 0 16px 30px rgba(19, 18, 16, .26) !important;
    color: #fff !important;
    transform: translateY(-5px) scale(1.03) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button strong {
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-share-icon {
    color: currentColor !important;
    fill: currentColor !important;
    height: 24px !important;
    max-height: 24px !important;
    max-width: 24px !important;
    position: relative !important;
    stroke: currentColor !important;
    width: 24px !important;
    z-index: 1 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    padding: 0 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart em {
    align-items: center !important;
    background: #111 !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 18px rgba(19, 18, 16, .25) !important;
    color: #fff !important;
    display: inline-flex !important;
    font-size: 9px !important;
    font-weight: 950 !important;
    height: 18px !important;
    justify-content: center !important;
    min-width: 18px !important;
    padding: 0 4px !important;
    position: absolute !important;
    right: -4px !important;
    top: -6px !important;
    z-index: 3 !important;
}

@media (min-width: 992px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
        padding-bottom: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        background: rgba(255,255,255,.94) !important;
        border-color: rgba(20,20,18,.10) !important;
        border-radius: 999px !important;
        bottom: auto !important;
        box-shadow: 0 22px 60px rgba(19,18,16,.14), inset 0 1px 0 rgba(255,255,255,.95) !important;
        flex-direction: column !important;
        gap: 10px !important;
        height: auto !important;
        left: auto !important;
        padding: 10px !important;
        right: max(18px, calc(50% - 392px)) !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 74px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
        background: linear-gradient(180deg, transparent, var(--primary, #c9a347), transparent) !important;
        bottom: 24px !important;
        height: auto !important;
        left: -5px !important;
        right: auto !important;
        top: 24px !important;
        width: 3px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        background: transparent !important;
        box-shadow: none !important;
        flex-direction: column !important;
        gap: 10px !important;
        height: auto !important;
        padding: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
        flex-basis: 54px !important;
        height: 54px !important;
        min-height: 54px !important;
        min-width: 54px !important;
        width: 54px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::before {
        align-items: center !important;
        background: #111 !important;
        border-radius: 999px !important;
        box-shadow: 0 12px 26px rgba(19,18,16,.18) !important;
        color: #fff !important;
        content: attr(aria-label) !important;
        display: inline-flex !important;
        font-size: 12px !important;
        font-weight: 850 !important;
        height: 34px !important;
        justify-content: center !important;
        line-height: 1 !important;
        opacity: 0 !important;
        padding: 0 14px !important;
        pointer-events: none !important;
        position: absolute !important;
        right: calc(100% + 12px) !important;
        top: 50% !important;
        transform: translate(8px, -50%) !important;
        transition: opacity .2s ease, transform .2s ease !important;
        white-space: nowrap !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible {
        background: #111 !important;
        border-color: #111 !important;
        color: #fff !important;
        outline: 0 !important;
        transform: translateX(-4px) !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible::before {
        opacity: 1 !important;
        transform: translate(0, -50%) !important;
    }
}

/* Theme 3 v32 EOF override: compact translucent legacy dock */
html body.public-body > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel nav .theme3-drawer-static-media {
    background: #111 !important;
    display: block !important;
    object-fit: cover !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
    padding-bottom: calc(88px + env(safe-area-inset-bottom)) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
    align-items: center !important;
    background: rgba(17,17,17,.68) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 16px !important;
    bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.12) !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 5px !important;
    height: 54px !important;
    justify-content: center !important;
    left: 50% !important;
    max-width: calc(100vw - 30px) !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 6px !important;
    position: fixed !important;
    right: auto !important;
    top: auto !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    z-index: 138 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    gap: 5px !important;
    height: 42px !important;
    min-width: 0 !important;
    padding: 0 !important;
    width: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
    align-items: center !important;
    background: rgba(255,255,255,.09) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 13px !important;
    box-shadow: none !important;
    color: #fff !important;
    display: inline-grid !important;
    flex: 0 0 42px !important;
    height: 42px !important;
    justify-content: center !important;
    min-height: 42px !important;
    min-width: 42px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    transform: none !important;
    transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease !important;
    width: 42px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::after {
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge.is-active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button.is-active {
    background: rgba(255,255,255,.88) !important;
    border-color: rgba(255,255,255,.92) !important;
    color: #111 !important;
    transform: translateY(-2px) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button strong {
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-share-icon {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: currentColor !important;
    fill: currentColor !important;
    height: 21px !important;
    max-height: 21px !important;
    max-width: 21px !important;
    stroke: currentColor !important;
    width: 21px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart em {
    align-items: center !important;
    background: #ff4b4b !important;
    border: 1px solid rgba(255,255,255,.9) !important;
    border-radius: 999px !important;
    box-shadow: 0 5px 12px rgba(0,0,0,.28) !important;
    color: #fff !important;
    display: inline-flex !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    height: 16px !important;
    justify-content: center !important;
    min-width: 16px !important;
    padding: 0 3px !important;
    position: absolute !important;
    right: -5px !important;
    top: -5px !important;
}

@media (min-width: 992px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
        padding-bottom: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        bottom: 22px !important;
        flex-direction: row !important;
        left: 50% !important;
        right: auto !important;
        top: auto !important;
        transform: translateX(-50%) !important;
        width: auto !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        flex-direction: row !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible {
        background: rgba(255,255,255,.86) !important;
        border-color: rgba(255,255,255,.9) !important;
        color: #111 !important;
        outline: 0 !important;
        transform: translateY(-2px) !important;
    }
}

@media (min-width: 992px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        padding: 0 !important;
        width: 64px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
        background: linear-gradient(180deg, transparent, var(--primary, #c9a347) 22%, var(--primary, #c9a347) 78%, transparent) !important;
        bottom: 26px !important;
        box-shadow: none !important;
        height: auto !important;
        left: 50% !important;
        opacity: .46 !important;
        right: auto !important;
        top: 26px !important;
        transform: translateX(-50%) !important;
        width: 2px !important;
        z-index: -1 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        border: 0 !important;
        box-shadow: none !important;
        filter: none !important;
        outline: 0 !important;
        padding: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions .mobile-actions-middle::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions .mobile-actions-middle::after {
        background: transparent !important;
        content: none !important;
        display: none !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
        background: linear-gradient(145deg, #fff 0%, #f7f4ee 100%) !important;
        border: 1px solid rgba(20,20,18,.12) !important;
        box-shadow: 0 14px 34px rgba(19,18,16,.14), inset 0 1px 0 rgba(255,255,255,.95) !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon {
        background: transparent !important;
        background-color: transparent !important;
        background-image: none !important;
        border: 0 !important;
        box-shadow: none !important;
        filter: none !important;
        padding: 0 !important;
    }
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-main-flow {
    background: #fff !important;
    display: block !important;
    margin: 0 !important;
    max-width: none !important;
    min-height: 100vh !important;
    padding: 0 !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-hero {
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #e8e3da !important;
    border-radius: 0 !important;
    box-shadow: 0 5px 18px rgba(0,0,0,.05) !important;
    height: 64px !important;
    left: 0 !important;
    margin: 0 !important;
    max-height: 64px !important;
    min-height: 64px !important;
    overflow: visible !important;
    padding: 0 !important;
    position: sticky !important;
    right: 0 !important;
    top: 0 !important;
    width: 100% !important;
    z-index: 80 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-app-header {
    align-items: center !important;
    background: #fff !important;
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) 58px !important;
    height: 64px !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-icon,
body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand {
    appearance: none !important;
    background: transparent !important;
    border: 0 !important;
    color: #151515 !important;
    cursor: pointer !important;
    font: inherit !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-icon {
    align-items: center !important;
    display: inline-flex !important;
    height: 64px !important;
    justify-content: center !important;
    width: 58px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu {
    flex-direction: column !important;
    gap: 5px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu span {
    background: currentColor !important;
    border-radius: 999px !important;
    display: block !important;
    height: 2px !important;
    width: 22px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-search svg {
    fill: none !important;
    height: 24px !important;
    stroke: currentColor !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    stroke-width: 2.2 !important;
    width: 24px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand {
    align-items: center !important;
    display: flex !important;
    gap: 8px !important;
    height: 64px !important;
    justify-content: center !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-align: center !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand img {
    height: auto !important;
    max-height: 34px !important;
    max-width: min(210px, 52vw) !important;
    object-fit: contain !important;
    width: auto !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand strong {
    color: #111 !important;
    display: block !important;
    font-size: clamp(15px, 4vw, 21px) !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    line-height: 1 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-transform: uppercase !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand img + strong {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-hero-content,
body.public-body > main.qr-menu.theme-editorial-grid .locale-switcher {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-toolbar {
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #ece7df !important;
    border-radius: 0 !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.04) !important;
    display: none !important;
    gap: 10px !important;
    left: 0 !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    position: sticky !important;
    right: 0 !important;
    top: 64px !important;
    width: 100% !important;
    z-index: 70 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open .menu-toolbar,
body.public-body > main.qr-menu.theme-editorial-grid.is-search-open .menu-toolbar {
    display: block !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-search {
    display: none !important;
    margin: 0 !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-search-open .menu-search {
    display: block !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-search input {
    background: #f4f2ee !important;
    border: 1px solid #e3ddd4 !important;
    border-radius: 0 !important;
    color: #171717 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    min-height: 44px !important;
    padding: 0 14px !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    display: none !important;
    gap: 8px !important;
    margin: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 !important;
    scrollbar-width: none !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs {
    display: flex !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs::-webkit-scrollbar {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a,
body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a.with-image {
    align-items: center !important;
    background: #f5f2ec !important;
    border: 1px solid #e4ded2 !important;
    border-radius: 0 !important;
    color: #161616 !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    gap: 8px !important;
    height: 42px !important;
    min-height: 42px !important;
    min-width: max-content !important;
    padding: 0 13px 0 7px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a img,
body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a video {
    border-radius: 0 !important;
    height: 30px !important;
    object-fit: cover !important;
    width: 30px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a span {
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase {
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 14px 12px 24px !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase:not([hidden]) {
    display: block !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase[hidden] {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase h2 {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase > div {
    display: grid !important;
    gap: 12px !important;
    grid-auto-flow: dense !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin: 0 !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a {
    aspect-ratio: 1 / 1.02 !important;
    background: #1c1c1a !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: #fff !important;
    display: block !important;
    min-height: 138px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    text-decoration: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a:nth-child(3n) {
    aspect-ratio: 2.08 / 1 !important;
    grid-column: span 2 !important;
    min-height: 154px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a img,
body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a video {
    filter: saturate(1.04) contrast(1.03) !important;
    height: 100% !important;
    inset: 0 !important;
    object-fit: cover !important;
    position: absolute !important;
    transform: scale(1.01) !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a::before {
    background: var(--theme3-category-image, transparent) center / cover no-repeat !important;
    content: "" !important;
    inset: 0 !important;
    position: absolute !important;
    z-index: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a[style*="--theme3-category-image"] img {
    opacity: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a::after {
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.16) 42%, rgba(0,0,0,.62)) !important;
    content: "" !important;
    inset: 0 !important;
    position: absolute !important;
    z-index: 1 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase strong {
    bottom: 13px !important;
    color: #fff !important;
    font-size: clamp(16px, 4.9vw, 24px) !important;
    font-weight: 950 !important;
    left: 13px !important;
    letter-spacing: 0 !important;
    line-height: 1.02 !important;
    margin: 0 !important;
    max-width: calc(100% - 26px) !important;
    position: absolute !important;
    right: 13px !important;
    text-shadow: 0 5px 16px rgba(0,0,0,.48) !important;
    text-transform: uppercase !important;
    z-index: 2 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-content {
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 12px 36px !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-category {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    scroll-margin-top: 124px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-category h2 {
    color: #171717 !important;
    font-size: clamp(24px, 7vw, 34px) !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    margin: 18px 0 14px !important;
    padding: 0 2px !important;
    text-transform: uppercase !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-hero-media {
    border-radius: 8px !important;
    height: 174px !important;
    margin: 0 0 12px !important;
    overflow: hidden !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-hero-media img,
body.public-body > main.qr-menu.theme-editorial-grid .category-hero-media video {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-grid-public {
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: 1fr !important;
    margin: 0 !important;
    padding: 0 0 18px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
    background: #fff !important;
    border: 1px solid #ece7df !important;
    border-radius: 8px !important;
    box-shadow: 0 10px 26px rgba(0,0,0,.06) !important;
    color: #171717 !important;
    display: grid !important;
    gap: 11px !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    margin: 0 !important;
    overflow: hidden !important;
    padding: 10px !important;
    position: relative !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-content,
body.public-body > main.qr-menu.theme-editorial-grid .product-grid-public {
    box-sizing: border-box !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
    align-self: start !important;
    aspect-ratio: 1 !important;
    border-radius: 7px !important;
    grid-column: 1 !important;
    height: 82px !important;
    margin: 0 !important;
    min-height: 82px !important;
    overflow: hidden !important;
    width: 82px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .visual-price-badge,
body.public-body > main.qr-menu.theme-editorial-grid .visual-detail-hit {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    grid-column: 2 !important;
    min-width: 0 !important;
    padding: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row {
    align-items: flex-start !important;
    display: grid !important;
    gap: 8px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    margin: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3 {
    color: #171717 !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1.16 !important;
    margin: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack {
    align-items: flex-end !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    min-width: max-content !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack strong {
    color: #171717 !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-calorie-chip,
body.public-body > main.qr-menu.theme-editorial-grid .ingredients-line,
body.public-body > main.qr-menu.theme-editorial-grid .product-meta-row,
body.public-body > main.qr-menu.theme-editorial-grid .pill-row,
body.public-body > main.qr-menu.theme-editorial-grid .goes-with {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-description-short,
body.public-body > main.qr-menu.theme-editorial-grid .product-description-trigger {
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    background: transparent !important;
    border: 0 !important;
    color: #666 !important;
    display: -webkit-box !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    padding: 0 !important;
    text-align: left !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-action-row {
    align-items: center !important;
    display: flex !important;
    gap: 7px !important;
    justify-content: flex-end !important;
    margin: auto 0 0 !important;
    min-height: 32px !important;
    padding: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-detail-button,
body.public-body > main.qr-menu.theme-editorial-grid .menu-cart-add {
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    height: 30px !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    min-height: 30px !important;
    padding: 0 11px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-detail-button {
    background: #f5f2ec !important;
    border: 1px solid #e4ded4 !important;
    color: #171717 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-cart-add {
    background: #171717 !important;
    border: 1px solid #171717 !important;
    color: #fff !important;
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-comments {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions,
body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-middle,
body.public-body > main.qr-menu.theme-editorial-grid .menu-footer[data-mobile-footer-panel],
body.public-body > main.qr-menu.theme-editorial-grid .service-fab,
body.public-body > main.qr-menu.theme-editorial-grid .cart-fab,
body.public-body:has(> main.qr-menu.theme-editorial-grid) .service-fab,
body.public-body:has(> main.qr-menu.theme-editorial-grid) .cart-fab {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-entering .menu-content,
body.public-body > main.qr-menu.theme-editorial-grid.is-home-entering .category-showcase {
    animation: editorialGridFade .28s ease both !important;
}

@keyframes editorialGridFade {
    from {
        opacity: .35;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 380px) {
    body.public-body > main.qr-menu.theme-editorial-grid .category-showcase {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .category-showcase > div {
        gap: 10px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a {
        min-height: 126px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a:nth-child(3n) {
        min-height: 142px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
        grid-template-columns: 74px minmax(0, 1fr) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
        height: 74px !important;
        min-height: 74px !important;
        width: 74px !important;
    }
}

body.public-body.theme3-category-drawer-open {
    overflow: hidden !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills {
    bottom: auto !important;
    gap: 7px !important;
    justify-content: flex-start !important;
    left: 14px !important;
    max-width: calc(100vw - 150px) !important;
    overflow-x: auto !important;
    right: auto !important;
    scrollbar-width: none !important;
    top: 78px !important;
    z-index: 38 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills::-webkit-scrollbar {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a {
    backdrop-filter: blur(14px) !important;
    background: rgba(12,12,10,.58) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
    flex: 0 0 auto !important;
    min-height: 32px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a.active {
    background: #fff !important;
    border-color: #fff !important;
    color: #141414 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick {
    gap: 7px !important;
    right: 14px !important;
    top: 78px !important;
    z-index: 39 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action {
    align-items: center !important;
    backdrop-filter: blur(14px) !important;
    background: rgba(255,255,255,.94) !important;
    border: 1px solid rgba(255,255,255,.78) !important;
    border-radius: 999px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.18) !important;
    color: #141414 !important;
    display: inline-flex !important;
    gap: 7px !important;
    min-height: 36px !important;
    padding: 0 12px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action svg {
    fill: none !important;
    height: 15px !important;
    stroke: currentColor !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    stroke-width: 2.2 !important;
    width: 15px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action b {
    color: inherit !important;
    display: inline-block !important;
    font-size: 12px !important;
    line-height: 1 !important;
    max-width: 128px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual {
    background: rgba(9,9,8,.34) !important;
    border-color: rgba(255,255,255,.94) !important;
    bottom: 34px !important;
    box-shadow: 0 18px 42px rgba(0,0,0,.22) !important;
    height: 48px !important;
    min-height: 48px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual b {
    font-size: 15px !important;
    font-weight: 800 !important;
}

.wifi-password-popover.theme3-wifi-popover {
    background: #151513 !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 42px rgba(0,0,0,.28) !important;
    color: #fff !important;
    display: block !important;
    max-width: calc(100vw - 24px) !important;
    padding: 12px 14px !important;
    pointer-events: none !important;
    position: fixed !important;
    z-index: 240 !important;
}

.wifi-password-popover.theme3-wifi-popover span {
    color: rgba(255,255,255,.64) !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

.wifi-password-popover.theme3-wifi-popover strong {
    color: #fff !important;
    display: block !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    margin-top: 5px !important;
    overflow-wrap: anywhere !important;
}

@keyframes noirWifiReveal {
    from {
        opacity: 0;
        transform: translateY(10px) scale(.96);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer[hidden] {
    display: none !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer {
    inset: 0 !important;
    pointer-events: none !important;
    position: fixed !important;
    z-index: 180 !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open {
    pointer-events: auto !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-scrim {
    appearance: none !important;
    background: rgba(10,10,9,.52) !important;
    border: 0 !important;
    cursor: pointer !important;
    inset: 0 !important;
    opacity: 0 !important;
    padding: 0 !important;
    position: absolute !important;
    transition: opacity .24s ease !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-scrim {
    opacity: 1 !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel {
    background: #fbfaf7 !important;
    box-shadow: 18px 0 48px rgba(0,0,0,.22) !important;
    color: #171717 !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100dvh !important;
    left: 0 !important;
    max-width: 368px !important;
    overflow: hidden !important;
    position: absolute !important;
    top: 0 !important;
    transform: translateX(-104%) !important;
    transition: transform .26s cubic-bezier(.2,.72,.2,1) !important;
    width: min(88vw, 368px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel {
    transform: translateX(0) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header {
    align-items: center !important;
    border-bottom: 1px solid #ebe5dc !important;
    display: flex !important;
    flex: 0 0 auto !important;
    height: 66px !important;
    justify-content: space-between !important;
    padding: 0 16px 0 18px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header strong {
    color: #171717 !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header button {
    align-items: center !important;
    appearance: none !important;
    background: #171717 !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #fff !important;
    cursor: pointer !important;
    display: inline-flex !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    height: 34px !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 0 2px !important;
    width: 34px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav {
    display: grid !important;
    gap: 8px !important;
    overflow-y: auto !important;
    padding: 14px 12px 24px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a {
    align-items: center !important;
    background: #fff !important;
    border: 1px solid #ece5db !important;
    border-radius: 10px !important;
    color: #171717 !important;
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    min-height: 76px !important;
    overflow: hidden !important;
    padding: 8px !important;
    text-decoration: none !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a.is-active,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:focus-visible {
    background: #171717 !important;
    border-color: #171717 !important;
    color: #fff !important;
    outline: 0 !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav img,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav video {
    border-radius: 8px !important;
    height: 58px !important;
    object-fit: cover !important;
    width: 58px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav span {
    display: block !important;
    min-width: 0 !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav b {
    display: block !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1.15 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav small {
    color: #8c8376 !important;
    display: block !important;
    font-size: 11px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    margin-top: 4px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a.is-active small {
    color: rgba(255,255,255,.68) !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-toolbar {
    border-bottom: 1px solid #ece7df !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.045) !important;
    padding: 9px 10px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs {
    gap: 7px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a,
body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a.with-image {
    background: #f6f2eb !important;
    border-color: #e8dfd2 !important;
    border-radius: 999px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 14px 0 7px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a.is-active {
    background: #171717 !important;
    border-color: #171717 !important;
    color: #fff !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a img,
body.public-body > main.qr-menu.theme-editorial-grid .category-tabs a video {
    border-radius: 999px !important;
    height: 32px !important;
    width: 32px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-content {
    padding: 0 16px 38px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar {
    align-items: center !important;
    background: #fff !important;
    border-bottom: 1px solid #ede7df !important;
    display: grid !important;
    gap: 10px !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    margin: 0 -16px 16px !important;
    padding: 12px 16px !important;
    position: relative !important;
    top: auto !important;
    z-index: 62 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar[hidden] {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar .button {
    background: #f4f0e8 !important;
    border: 1px solid #e6ddd0 !important;
    border-radius: 999px !important;
    color: #171717 !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar strong {
    color: #171717 !important;
    font-size: 19px !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-align: left !important;
    text-overflow: ellipsis !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-category {
    scroll-margin-top: 172px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-category h2,
body.public-body > main.qr-menu.theme-editorial-grid .category-hero-media {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-grid-public {
    background: #fff !important;
    border-top: 1px solid #eee8df !important;
    display: block !important;
    padding: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
    align-items: start !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #eee8df !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    gap: 13px !important;
    grid-template-columns: 96px minmax(0, 1fr) !important;
    min-height: 126px !important;
    padding: 14px 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
    border-radius: 9px !important;
    height: 96px !important;
    min-height: 96px !important;
    width: 96px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
    gap: 7px !important;
    min-height: 96px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row {
    display: block !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3 {
    font-size: 16px !important;
    line-height: 1.16 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack {
    align-items: flex-start !important;
    margin-top: 6px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack strong {
    color: #111 !important;
    font-size: 15px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-description-short,
body.public-body > main.qr-menu.theme-editorial-grid .product-description-trigger {
    -webkit-line-clamp: 3 !important;
    color: #6f675d !important;
    font-size: 12.5px !important;
    line-height: 1.34 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-action-row {
    justify-content: flex-start !important;
    margin: 2px 0 0 !important;
    min-height: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-detail-button {
    background: #171717 !important;
    border-color: #171717 !important;
    border-radius: 999px !important;
    color: #fff !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 14px !important;
}

@media (max-width: 380px) {
    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills {
        max-width: calc(100vw - 138px) !important;
    }

    body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action b {
        max-width: 92px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-content {
        padding-left: 13px !important;
        padding-right: 13px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar {
        margin-left: -13px !important;
        margin-right: -13px !important;
        padding-left: 13px !important;
        padding-right: 13px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
        grid-template-columns: 86px minmax(0, 1fr) !important;
        min-height: 116px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
        height: 86px !important;
        min-height: 86px !important;
        width: 86px !important;
    }
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .menu-toolbar,
body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-search-open .menu-toolbar {
    display: block !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase strong {
    font-size: clamp(13px, 3.7vw, 18px) !important;
    line-height: 1.08 !important;
    max-width: calc(100% - 24px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav b {
    font-size: 13px !important;
    line-height: 1.12 !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav small {
    font-size: 10px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .menu-toolbar {
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #edf0f4 !important;
    box-shadow: none !important;
    display: block !important;
    padding: 0 !important;
    position: relative !important;
    top: auto !important;
    z-index: 62 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .menu-search {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs {
    align-items: center !important;
    background: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    gap: 24px !important;
    height: 44px !important;
    margin: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 15px !important;
    scrollbar-width: none !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs::-webkit-scrollbar {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs a,
body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs a.with-image {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #7b8190 !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    gap: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    min-width: max-content !important;
    padding: 0 !important;
    text-decoration: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs a img,
body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs a video {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs a span {
    color: inherit !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    max-width: none !important;
    text-transform: none !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs a.is-active {
    background: transparent !important;
    border: 0 !important;
    color: #111827 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-content {
    background: #f6f7f9 !important;
    padding: 0 15px 44px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar {
    background: transparent !important;
    border: 0 !important;
    display: block !important;
    height: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    pointer-events: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar[hidden] {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-category {
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    scroll-margin-top: 108px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail {
    background: #fff !important;
    display: flex !important;
    gap: 14px !important;
    margin: 0 -15px 15px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 13px 15px 27px !important;
    scroll-padding-left: 15px !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail::-webkit-scrollbar {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card {
    background: #111827 !important;
    border-radius: 8px !important;
    color: #fff !important;
    display: block !important;
    flex: 0 0 clamp(126px, 31vw, 150px) !important;
    height: clamp(232px, 54vw, 268px) !important;
    overflow: hidden !important;
    position: relative !important;
    scroll-snap-align: start !important;
    text-decoration: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform .45s ease !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card:hover img,
body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card:focus-visible img {
    transform: scale(1.035) !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card::after {
    background: linear-gradient(180deg, rgba(0,0,0,0) 38%, rgba(0,0,0,.72) 100%) !important;
    content: "" !important;
    inset: 0 !important;
    position: absolute !important;
    z-index: 1 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card span {
    bottom: 13px !important;
    display: grid !important;
    gap: 5px !important;
    left: 11px !important;
    position: absolute !important;
    right: 10px !important;
    z-index: 2 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card b {
    color: #fff !important;
    display: -webkit-box !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1.08 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card small {
    color: rgba(255,255,255,.9) !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card.has-placeholder img {
    filter: grayscale(.25) brightness(.55) contrast(.9) !important;
    opacity: .36 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-grid-public {
    background: #f6f7f9 !important;
    border: 0 !important;
    display: grid !important;
    gap: 14px !important;
    grid-template-columns: 1fr !important;
    margin: 0 !important;
    padding: 0 0 28px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
    background: #fff !important;
    border: 1px solid #e6e8ec !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 22px rgba(15,23,42,.07) !important;
    color: #111827 !important;
    cursor: pointer !important;
    display: block !important;
    min-height: 158px !important;
    padding: 0 !important;
    position: relative !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    min-height: 0 !important;
    padding: 17px 15px 14px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row {
    display: contents !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3 {
    color: #111827 !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    line-height: 1.32 !important;
    margin: 0 !important;
    order: 1 !important;
    padding-right: 24px !important;
    position: relative !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3::after {
    border-bottom: 2px solid #2f3744 !important;
    border-right: 2px solid #2f3744 !important;
    content: "" !important;
    height: 7px !important;
    opacity: .75 !important;
    position: absolute !important;
    right: 4px !important;
    top: 5px !important;
    transform: rotate(45deg) !important;
    width: 7px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-description-short,
body.public-body > main.qr-menu.theme-editorial-grid .product-description-trigger {
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 4 !important;
    background: transparent !important;
    border: 0 !important;
    color: #6b7280 !important;
    display: -webkit-box !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1.34 !important;
    margin: 0 !important;
    order: 2 !important;
    overflow: hidden !important;
    padding: 0 !important;
    text-align: left !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-description-trigger span {
    display: inline !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack {
    align-items: flex-start !important;
    align-self: flex-start !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 6px 8px !important;
    justify-content: flex-start !important;
    margin: 4px 0 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    order: 3 !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack del {
    color: #9ca3af !important;
    font-size: 12px !important;
    margin-right: 8px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack strong {
    color: #111827 !important;
    font-size: 18px !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-calorie-line {
    align-items: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    justify-content: flex-start !important;
    max-width: 100% !important;
    min-height: 0 !important;
    min-width: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .ingredients-line,
body.public-body > main.qr-menu.theme-editorial-grid .product-meta-row,
body.public-body > main.qr-menu.theme-editorial-grid .pill-row,
body.public-body > main.qr-menu.theme-editorial-grid .goes-with,
body.public-body > main.qr-menu.theme-editorial-grid .product-calorie-chip,
body.public-body > main.qr-menu.theme-editorial-grid .product-action-row,
body.public-body > main.qr-menu.theme-editorial-grid .product-detail-button,
body.public-body > main.qr-menu.theme-editorial-grid .menu-cart-add {
    display: none !important;
}

@media (min-width: 520px) {
    body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card {
        flex-basis: 154px !important;
        height: 272px !important;
    }
}

@media (max-width: 380px) {
    body.public-body > main.qr-menu.theme-editorial-grid.is-category-open:not(.is-search-open) .category-tabs {
        gap: 19px !important;
        padding-left: 13px !important;
        padding-right: 13px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-content {
        padding-left: 13px !important;
        padding-right: 13px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail {
        margin-left: -13px !important;
        margin-right: -13px !important;
        padding-left: 13px !important;
        padding-right: 13px !important;
        scroll-padding-left: 13px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail-card {
        flex-basis: 122px !important;
        height: 226px !important;
    }
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
    align-items: stretch !important;
    display: grid !important;
    gap: 13px !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    min-height: 134px !important;
    overflow: hidden !important;
    padding: 12px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
    align-self: stretch !important;
    background: #111827 !important;
    border-radius: 8px !important;
    display: block !important;
    height: 110px !important;
    min-height: 110px !important;
    overflow: hidden !important;
    position: relative !important;
    width: 92px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media img {
    display: block !important;
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media img.product-placeholder,
body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media img[class*="placeholder"] {
    filter: grayscale(.22) brightness(.62) contrast(.9) !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .visual-price-badge,
body.public-body > main.qr-menu.theme-editorial-grid .menu-product .visual-detail-hit {
    display: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .sold-out-badge {
    border-radius: 999px !important;
    bottom: 7px !important;
    font-size: 9px !important;
    left: 7px !important;
    max-width: calc(100% - 14px) !important;
    padding: 4px 6px !important;
    position: absolute !important;
    right: 7px !important;
    text-align: center !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
    align-self: stretch !important;
    gap: 8px !important;
    justify-content: flex-start !important;
    min-height: 110px !important;
    padding: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3 {
    font-size: 16.5px !important;
    line-height: 1.24 !important;
    padding-right: 20px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3::after {
    height: 6px !important;
    right: 3px !important;
    top: 5px !important;
    width: 6px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-description-short,
body.public-body > main.qr-menu.theme-editorial-grid .product-description-trigger {
    -webkit-line-clamp: 3 !important;
    font-size: 12.6px !important;
    line-height: 1.32 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack {
    margin-top: auto !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .price-stack strong {
    font-size: 17px !important;
}

@media (min-width: 520px) {
    body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
        grid-template-columns: 108px minmax(0, 1fr) !important;
        min-height: 148px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
        height: 124px !important;
        min-height: 124px !important;
        width: 108px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
        min-height: 124px !important;
    }
}

@media (max-width: 380px) {
    body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
        gap: 11px !important;
        grid-template-columns: 84px minmax(0, 1fr) !important;
        padding: 11px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
        height: 104px !important;
        min-height: 104px !important;
        width: 84px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
        min-height: 104px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3 {
        font-size: 15.5px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .product-description-short,
    body.public-body > main.qr-menu.theme-editorial-grid .product-description-trigger {
        font-size: 12px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .price-stack strong {
        font-size: 16px !important;
    }
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
    align-items: stretch !important;
    box-sizing: border-box !important;
    display: grid !important;
    gap: 14px !important;
    grid-template-columns: minmax(0, 1fr) 96px !important;
    min-height: 136px !important;
    min-width: 0 !important;
    padding: 13px !important;
    width: 100% !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
    grid-area: 1 / 1 / auto / 2 !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    max-width: 100% !important;
    min-height: 110px !important;
    min-width: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
    grid-area: 1 / 2 / auto / 3 !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    height: 110px !important;
    justify-self: end !important;
    min-height: 110px !important;
    width: 96px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-title-row h3 {
    max-height: 2.6em !important;
    overflow: hidden !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .product-description-short,
body.public-body > main.qr-menu.theme-editorial-grid .product-description-trigger {
    -webkit-line-clamp: 3 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick {
    gap: 8px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action {
    border: 1px solid rgba(255,255,255,.92) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.16) !important;
    height: 38px !important;
    justify-content: center !important;
    min-height: 38px !important;
    overflow: hidden !important;
    padding: 0 !important;
    transition: width .32s cubic-bezier(.18,.9,.22,1), max-width .32s cubic-bezier(.18,.9,.22,1), padding .32s cubic-bezier(.18,.9,.22,1), background-color .22s ease, color .22s ease !important;
    width: 38px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action svg,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action svg {
    fill: none !important;
    height: 18px !important;
    stroke: currentColor !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    stroke-width: 1.9 !important;
    width: 18px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action {
    max-width: 38px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action svg {
    height: 17px !important;
    stroke-width: 2 !important;
    width: 17px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action .theme3-wifi-mark {
    fill: none !important;
    height: 19px !important;
    stroke: currentColor !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    width: 19px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action .theme3-wifi-mark path {
    stroke-width: 3.35 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action .theme3-wifi-mark circle {
    fill: currentColor !important;
    stroke: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-product-rail {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action span {
    align-items: center !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    justify-content: center !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action b {
    max-width: 0 !important;
    opacity: 0 !important;
    transform: translateX(-8px) !important;
    transition: max-width .32s cubic-bezier(.18,.9,.22,1), opacity .2s ease, transform .32s cubic-bezier(.18,.9,.22,1) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action.is-revealed {
    gap: 8px !important;
    justify-content: flex-start !important;
    max-width: min(188px, calc(100vw - 126px)) !important;
    padding: 0 12px !important;
    width: min(188px, calc(100vw - 126px)) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action.is-revealed b {
    max-width: 132px !important;
    opacity: 1 !important;
    transform: translateX(0) !important;
}

.wifi-password-popover.theme3-wifi-popover {
    display: none !important;
}

/* Theme 3 welcome polish */
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-bg-media::after {
    background:
        radial-gradient(circle at 50% 0%, rgba(0,0,0,.18), transparent 18rem),
        linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.20) 44%, rgba(0,0,0,.58)) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-topbar {
    background: linear-gradient(180deg, rgba(8,8,7,.62), rgba(8,8,7,.34)) !important;
    backdrop-filter: blur(18px) saturate(1.2) !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: 0 18px 38px rgba(0,0,0,.22) !important;
    color: #fff !important;
    grid-template-columns: 62px minmax(0, 1fr) 62px !important;
    height: 78px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip {
    background: rgba(0,0,0,.30) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 12px 30px rgba(0,0,0,.22) !important;
    height: 56px !important;
    margin: 11px auto !important;
    max-width: min(360px, 58vw) !important;
    padding: 6px 18px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
    filter: drop-shadow(0 6px 12px rgba(0,0,0,.28)) !important;
    max-height: 48px !important;
    max-width: min(280px, 50vw) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-icon {
    color: #fff !important;
    height: 62px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span {
    background: rgba(255,255,255,.94) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-search-icon svg {
    stroke: rgba(255,255,255,.96) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills {
    gap: 8px !important;
    left: 14px !important;
    max-width: calc(100vw - 142px) !important;
    top: 94px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a {
    backdrop-filter: blur(18px) saturate(1.25) !important;
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 12px 30px rgba(0,0,0,.16) !important;
    color: rgba(255,255,255,.88) !important;
    font-size: 11px !important;
    min-height: 34px !important;
    min-width: 42px !important;
    padding: 0 12px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a.active {
    background: rgba(255,255,255,.86) !important;
    border-color: rgba(255,255,255,.62) !important;
    color: #111 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick {
    gap: 9px !important;
    right: 14px !important;
    top: 94px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action {
    background: rgba(255,255,255,.14) !important;
    backdrop-filter: blur(20px) saturate(1.35) !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 16px 34px rgba(0,0,0,.20) !important;
    color: #fff !important;
    height: 42px !important;
    min-height: 42px !important;
    width: 42px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action:hover,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action:hover,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action:focus-visible,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action:focus-visible {
    background: rgba(255,255,255,.24) !important;
    border-color: rgba(255,255,255,.32) !important;
    transform: translateY(-1px) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action svg,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action svg {
    height: 19px !important;
    width: 19px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action .theme3-wifi-mark {
    height: 21px !important;
    width: 21px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action.is-revealed {
    background: rgba(255,255,255,.88) !important;
    color: #111 !important;
    max-width: min(204px, calc(100vw - 122px)) !important;
    padding: 0 13px !important;
    width: min(204px, calc(100vw - 122px)) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual {
    background:
        linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08)),
        rgba(7,7,6,.34) !important;
    backdrop-filter: blur(18px) saturate(1.24) !important;
    border: 1px solid rgba(255,255,255,.24) !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 18px 44px rgba(0,0,0,.24) !important;
    color: #fff !important;
    min-width: min(320px, calc(100vw - 36px)) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual::before,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual::after,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual .welcome-action-text b::after {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual b {
    letter-spacing: 0 !important;
    text-decoration: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual i {
    background: rgba(255,255,255,.20) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    border-radius: 999px !important;
    display: inline-grid !important;
    height: 30px !important;
    place-items: center !important;
    width: 30px !important;
}

@media (max-width: 480px) {
    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-topbar {
        grid-template-columns: 56px minmax(0, 1fr) 56px !important;
        height: 74px !important;
    }

    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip {
        max-width: min(300px, 62vw) !important;
        padding: 6px 14px !important;
    }

    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
        max-height: 44px !important;
        max-width: min(230px, 54vw) !important;
    }

    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills,
    body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick {
        top: 88px !important;
    }
}

/* Theme 3 welcome Foost-style refinement */
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-bg-media::after {
    background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.16) 45%, rgba(0,0,0,.48)) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-topbar {
    background: #fff !important;
    backdrop-filter: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    color: #111 !important;
    grid-template-columns: 54px minmax(0, 1fr) 54px !important;
    height: 62px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    height: 62px !important;
    margin: 0 auto !important;
    max-width: min(340px, 72vw) !important;
    padding: 0 8px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
    filter: none !important;
    max-height: 50px !important;
    max-width: min(300px, 68vw) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-icon {
    color: #111 !important;
    height: 62px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span {
    background: #111 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon {
    overflow: visible !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span {
    border-radius: 999px !important;
    box-shadow: 0 0 0 rgba(0,0,0,0) !important;
    height: 2px !important;
    transform-origin: center !important;
    transition: transform .28s cubic-bezier(.22,1,.36,1), opacity .2s ease, width .28s cubic-bezier(.22,1,.36,1), box-shadow .28s ease !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span:nth-child(1) {
    width: 19px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span:nth-child(2) {
    width: 14px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span:nth-child(3) {
    width: 19px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:hover span,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:focus-visible span {
    box-shadow: 0 0 14px rgba(0,0,0,.18) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:hover span:nth-child(2),
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:focus-visible span:nth-child(2) {
    transform: translateX(4px) !important;
    width: 19px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(7px) rotate(45deg) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon[aria-expanded="true"] span:nth-child(2) {
    opacity: 0 !important;
    transform: translateX(10px) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-search-icon svg {
    stroke: #111 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick {
    align-items: flex-end !important;
    flex-direction: column !important;
    gap: 8px !important;
    right: 22px !important;
    top: 92px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action {
    background: rgba(255,255,255,.08) !important;
    backdrop-filter: blur(4px) !important;
    border: 1px solid rgba(255,255,255,.46) !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    height: 30px !important;
    justify-content: center !important;
    min-height: 30px !important;
    min-width: 98px !important;
    padding: 0 14px !important;
    text-decoration: none !important;
    width: 98px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action svg,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action svg {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action b {
    color: inherit !important;
    max-width: none !important;
    opacity: 1 !important;
    transform: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick a.theme3-quick-action b,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick button.theme3-quick-action b {
    color: inherit !important;
    display: inline-block !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action.is-revealed {
    background: rgba(255,255,255,.12) !important;
    color: #fff !important;
    max-width: 132px !important;
    padding: 0 14px !important;
    width: 132px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills {
    bottom: 92px !important;
    gap: 6px !important;
    justify-content: center !important;
    left: 50% !important;
    max-width: min(240px, calc(100vw - 48px)) !important;
    right: auto !important;
    top: auto !important;
    transform: translateX(-50%) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a {
    background: transparent !important;
    backdrop-filter: none !important;
    border: 0 !important;
    box-shadow: none !important;
    color: rgba(255,255,255,.92) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    min-height: auto !important;
    min-width: 0 !important;
    padding: 0 2px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills a.active {
    background: transparent !important;
    border: 0 !important;
    color: #fff !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills::after {
    content: "⌄" !important;
    color: rgba(255,255,255,.80) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual {
    background: rgba(255,255,255,.08) !important;
    backdrop-filter: blur(3px) !important;
    border: 1px solid rgba(255,255,255,.84) !important;
    border-radius: 5px !important;
    box-shadow: none !important;
    color: #fff !important;
    height: 34px !important;
    min-height: 34px !important;
    min-width: min(345px, calc(100vw - 46px)) !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual .welcome-menu-illustration,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual i,
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual small {
    display: none !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-menu-visual b {
    color: #fff !important;
    font-family: "Montserrat", "Sora", var(--menu-font, sans-serif) !important;
    font-size: 13.5px !important;
    font-weight: 900 !important;
    letter-spacing: .08em !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
}

@media (max-width: 480px) {
    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
        max-height: 46px !important;
        max-width: min(270px, 68vw) !important;
    }

    body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick {
        right: 22px !important;
        top: 94px !important;
    }
}

/* Theme 3 logo and drawer refinement */
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
    max-height: 55px !important;
    max-width: min(324px, 72vw) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-scrim {
    background: rgba(0,0,0,.46) !important;
    backdrop-filter: blur(4px) !important;
    transition: opacity .34s ease, backdrop-filter .34s ease !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel {
    background: #fff !important;
    border-right: 1px solid rgba(0,0,0,.08) !important;
    box-shadow: 18px 0 54px rgba(0,0,0,.26) !important;
    color: #111 !important;
    max-width: 390px !important;
    transform: translateX(-108%) scaleX(.985) !important;
    transform-origin: left center !important;
    transition: transform .42s cubic-bezier(.16,1,.3,1), box-shadow .42s ease !important;
    width: min(86vw, 390px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel {
    transform: translateX(0) scaleX(1) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel::before {
    background: linear-gradient(90deg, rgba(0,0,0,.08), transparent) !important;
    content: "" !important;
    inset: 0 0 auto 0 !important;
    height: 1px !important;
    position: absolute !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header {
    background: #fff !important;
    border-bottom: 1px solid rgba(0,0,0,.08) !important;
    height: 70px !important;
    padding: 0 18px 0 22px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header strong {
    color: #111 !important;
    font-family: "Montserrat", "Sora", var(--menu-font, sans-serif) !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    letter-spacing: .10em !important;
    text-transform: uppercase !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header button {
    background: #111 !important;
    border: 1px solid #111 !important;
    border-radius: 5px !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.12) !important;
    color: #fff !important;
    font-size: 24px !important;
    height: 38px !important;
    padding: 0 0 3px !important;
    transition: background-color .2s ease, color .2s ease, transform .24s cubic-bezier(.16,1,.3,1) !important;
    width: 38px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header button:hover,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel header button:focus-visible {
    background: #fff !important;
    color: #111 !important;
    transform: rotate(90deg) scale(1.02) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav {
    background:
        linear-gradient(180deg, rgba(0,0,0,.035), transparent 140px),
        #fff !important;
    gap: 0 !important;
    padding: 10px 0 28px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(0,0,0,.08) !important;
    border-radius: 0 !important;
    color: #111 !important;
    gap: 14px !important;
    grid-template-columns: 64px minmax(0, 1fr) 22px !important;
    min-height: 84px !important;
    opacity: 0 !important;
    padding: 10px 18px 10px 22px !important;
    transform: translateX(-18px) !important;
    transition: background-color .22s ease, color .22s ease, transform .34s cubic-bezier(.16,1,.3,1), opacity .24s ease !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a {
    animation: theme3DrawerItemIn .46s cubic-bezier(.16,1,.3,1) both !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a:nth-child(1) { animation-delay: .06s !important; }
body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a:nth-child(2) { animation-delay: .10s !important; }
body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a:nth-child(3) { animation-delay: .14s !important; }
body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a:nth-child(4) { animation-delay: .18s !important; }
body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a:nth-child(5) { animation-delay: .22s !important; }
body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a:nth-child(n+6) { animation-delay: .26s !important; }

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a::after {
    color: rgba(0,0,0,.42) !important;
    content: "›" !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    justify-self: end !important;
    line-height: 1 !important;
    transition: transform .24s ease, color .22s ease !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:hover,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:focus-visible,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a.is-active {
    background: #111 !important;
    border-color: #111 !important;
    color: #fff !important;
    outline: 0 !important;
    transform: translateX(0) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:hover::after,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:focus-visible::after,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a.is-active::after {
    color: rgba(255,255,255,.74) !important;
    transform: translateX(3px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav img,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav video {
    border-radius: 5px !important;
    height: 64px !important;
    width: 64px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav b {
    font-family: "Montserrat", "Sora", var(--menu-font, sans-serif) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav small {
    color: rgba(0,0,0,.52) !important;
    font-size: 10px !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:hover small,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:focus-visible small,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a.is-active small {
    color: rgba(255,255,255,.64) !important;
}

@keyframes theme3DrawerItemIn {
    from {
        opacity: 0;
        transform: translateX(-18px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@media (max-width: 480px) {
    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
        max-height: 50px !important;
        max-width: min(292px, 72vw) !important;
    }

    body.public-body > main.theme-editorial-grid .theme3-drawer-panel {
        width: min(88vw, 374px) !important;
    }
}

@media (min-width: 520px) {
    body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
        grid-template-columns: minmax(0, 1fr) 112px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
        height: 124px !important;
        min-height: 124px !important;
        width: 112px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
        min-height: 124px !important;
    }
}

@media (max-width: 380px) {
    body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
        gap: 11px !important;
        grid-template-columns: minmax(0, 1fr) 84px !important;
        padding: 11px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
        height: 104px !important;
        min-height: 104px !important;
        width: 84px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
        min-height: 104px !important;
    }
}

/* Theme 3 final header, drawer and dock polish */
body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-topbar {
    grid-template-columns: 58px minmax(0, 1fr) 58px !important;
    height: 72px !important;
    padding: 0 12px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip {
    height: 72px !important;
}

body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
    max-height: 64px !important;
    max-width: min(382px, 78vw) !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-hero {
    background: rgba(255,255,255,.88) !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    border-bottom: 1px solid rgba(17,17,17,.08) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.08) !important;
    height: 72px !important;
    max-height: 72px !important;
    min-height: 72px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-app-header {
    background: transparent !important;
    grid-template-columns: 58px minmax(0, 1fr) 58px !important;
    height: 72px !important;
    padding: 0 12px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-icon {
    border-radius: 8px !important;
    height: 48px !important;
    transition: background-color .22s ease, transform .22s ease !important;
    width: 48px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-icon:hover,
body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-icon:focus-visible {
    background: rgba(17,17,17,.07) !important;
    outline: 0 !important;
    transform: translateY(-1px) !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu span,
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon span {
    transition: transform .28s cubic-bezier(.16,1,.3,1), width .28s ease, opacity .2s ease !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu:hover span:nth-child(1),
body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu:focus-visible span:nth-child(1),
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:hover span:nth-child(1),
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:focus-visible span:nth-child(1) {
    transform: translateY(7px) rotate(45deg) !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu:hover span:nth-child(2),
body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu:focus-visible span:nth-child(2),
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:hover span:nth-child(2),
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:focus-visible span:nth-child(2) {
    opacity: 0 !important;
    width: 8px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu:hover span:nth-child(3),
body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-menu:focus-visible span:nth-child(3),
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:hover span:nth-child(3),
body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-menu-icon:focus-visible span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg) !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand {
    height: 72px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand img {
    max-height: 55px !important;
    max-width: min(330px, 68vw) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-scrim {
    background: rgba(0,0,0,.32) !important;
    backdrop-filter: blur(7px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel {
    background: rgba(255,255,255,.74) !important;
    backdrop-filter: blur(24px) saturate(1.18) !important;
    border-right: 1px solid rgba(255,255,255,.52) !important;
    box-shadow: 26px 0 64px rgba(0,0,0,.24) !important;
    width: min(88vw, 404px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel header {
    background: rgba(255,255,255,.52) !important;
    border-bottom: 1px solid rgba(17,17,17,.08) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav {
    background: transparent !important;
    gap: 0 !important;
    padding: 12px 12px 28px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a {
    background: rgba(255,255,255,.42) !important;
    border: 1px solid rgba(255,255,255,.58) !important;
    border-radius: 8px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.07) !important;
    grid-template-columns: 58px minmax(0, 1fr) 18px !important;
    margin: 0 0 9px !important;
    min-height: 76px !important;
    padding: 9px 12px !important;
    transform: translateY(-16px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-category-drawer.is-open .theme3-drawer-panel nav a {
    animation: theme3DrawerDropIn .48s cubic-bezier(.16,1,.3,1) both !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:hover,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a:focus-visible,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a.is-active {
    background: rgba(17,17,17,.92) !important;
    color: #fff !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav img,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav video {
    border-radius: 6px !important;
    height: 58px !important;
    object-fit: cover !important;
    width: 58px !important;
}

@keyframes theme3DrawerDropIn {
    from {
        opacity: 0;
        transform: translateY(-16px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
    grid-template-columns: minmax(0, 1fr) 92px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-info {
    grid-column: 1 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
    background: rgba(255,255,255,.72) !important;
    border: 1px solid rgba(17,17,17,.06) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.52) !important;
    grid-column: 2 !important;
    height: 106px !important;
    min-height: 106px !important;
    padding: 5px !important;
    width: 92px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media img {
    background: transparent !important;
    border-radius: 5px !important;
    object-fit: contain !important;
}

@media (max-width: 991px) {
    body.public-body > main.qr-menu.theme-editorial-grid.has-mobile-actions {
        padding-bottom: calc(92px + env(safe-area-inset-bottom)) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions {
        align-items: center !important;
        background: rgba(255,255,255,.78) !important;
        backdrop-filter: blur(18px) saturate(1.18) !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 12px !important;
        bottom: calc(10px + env(safe-area-inset-bottom)) !important;
        box-shadow: 0 18px 44px rgba(0,0,0,.18) !important;
        display: grid !important;
        grid-template-columns: 58px minmax(0, 1fr) 58px !important;
        height: 64px !important;
        left: 12px !important;
        overflow: hidden !important;
        padding: 5px !important;
        position: fixed !important;
        right: 12px !important;
        width: auto !important;
        z-index: 118 !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions:not(.has-cart-edge) {
        grid-template-columns: minmax(0, 1fr) 58px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions:not(.has-service-edge) {
        grid-template-columns: 58px minmax(0, 1fr) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions:not(.has-cart-edge):not(.has-service-edge) {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-middle {
        background: transparent !important;
        box-shadow: none !important;
        display: flex !important;
        gap: 8px !important;
        height: 54px !important;
        justify-content: center !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-edge,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-action-button {
        background: rgba(17,17,17,.92) !important;
        border: 1px solid rgba(255,255,255,.2) !important;
        border-radius: 9px !important;
        color: #fff !important;
        height: 54px !important;
        min-height: 54px !important;
        transition: transform .22s ease, background-color .22s ease, box-shadow .22s ease !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-action-button {
        flex: 0 0 54px !important;
        width: 54px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-edge:active,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-action-button:active,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-action-button.is-active {
        background: #000 !important;
        box-shadow: 0 10px 22px rgba(0,0,0,.22) !important;
        filter: none !important;
        transform: translateY(-2px) scale(.98) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-icon,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-feedback-icon,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-share-icon {
        height: 30px !important;
        max-height: 30px !important;
        max-width: 30px !important;
        width: 30px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-icon svg,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-feedback-icon svg,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-share-icon svg,
    body.public-body > main.qr-menu.theme-editorial-grid #mobile-actions-feedback-icon,
    body.public-body > main.qr-menu.theme-editorial-grid #mobile-actions-share-icon {
        height: 28px !important;
        max-height: 28px !important;
        max-width: 28px !important;
        width: 28px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-cart em {
        background: #fff !important;
        border: 1px solid rgba(17,17,17,.2) !important;
        color: #111 !important;
        right: 6px !important;
        top: 5px !important;
    }
}

@media (max-width: 480px) {
    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-topbar {
        height: 70px !important;
        padding: 0 10px !important;
    }

    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip,
    body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand {
        height: 70px !important;
    }

    body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-brand-chip img {
        max-height: 60px !important;
        max-width: min(350px, 80vw) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .theme3-header-brand img {
        max-height: 52px !important;
        max-width: min(312px, 68vw) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-hero,
    body.public-body > main.qr-menu.theme-editorial-grid .theme3-app-header {
        height: 70px !important;
        max-height: 70px !important;
        min-height: 70px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product {
        grid-template-columns: minmax(0, 1fr) 88px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-product .product-media {
        height: 104px !important;
        min-height: 104px !important;
        width: 88px !important;
    }
}

/* Theme 3 drawer readability, category descriptions and floating actions */
body.public-body > main.theme-editorial-grid .theme3-drawer-panel {
    background: rgba(255,255,255,.82) !important;
    max-width: 342px !important;
    width: min(78vw, 342px) !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav {
    padding: 10px 10px 24px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav a {
    align-items: center !important;
    background: rgba(255,255,255,.66) !important;
    border: 1px solid rgba(17,17,17,.07) !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.06) !important;
    color: #131313 !important;
    grid-template-columns: 52px minmax(0, 1fr) 16px !important;
    margin: 0 0 8px !important;
    min-height: 66px !important;
    overflow: hidden !important;
    padding: 7px 10px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav img,
body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav video {
    background: rgba(17,17,17,.05) !important;
    height: 52px !important;
    width: 52px !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav span {
    align-self: center !important;
    display: block !important;
    min-width: 0 !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav b {
    color: inherit !important;
    display: block !important;
    font-size: 12.5px !important;
    line-height: 1.15 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.public-body > main.theme-editorial-grid .theme3-drawer-panel nav small {
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    color: rgba(17,17,17,.58) !important;
    display: -webkit-box !important;
    font-size: 10.5px !important;
    line-height: 1.25 !important;
    margin-top: 4px !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-transform: none !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a strong {
    bottom: 28px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .category-showcase a > small {
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    bottom: 10px !important;
    color: rgba(255,255,255,.78) !important;
    display: -webkit-box !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    left: 12px !important;
    line-height: 1.18 !important;
    max-width: calc(100% - 24px) !important;
    overflow: hidden !important;
    position: absolute !important;
    text-shadow: 0 1px 8px rgba(0,0,0,.45) !important;
    z-index: 2 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar {
    align-items: center !important;
    background: rgba(255,255,255,.92) !important;
    backdrop-filter: blur(16px) !important;
    border-bottom: 1px solid rgba(17,17,17,.08) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.06) !important;
    display: grid !important;
    gap: 10px !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    min-height: 44px !important;
    padding: 7px 14px !important;
    position: sticky !important;
    top: 70px !important;
    z-index: 76 !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar .button {
    background: rgba(17,17,17,.06) !important;
    border: 1px solid rgba(17,17,17,.08) !important;
    border-radius: 999px !important;
    color: #111 !important;
    font-size: 12px !important;
    min-height: 30px !important;
    padding: 0 12px !important;
}

body.public-body > main.qr-menu.theme-editorial-grid .pro-back-bar strong {
    color: #111 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

@media (max-width: 991px) {
    body.public-body > main.qr-menu.theme-editorial-grid.has-mobile-actions {
        padding-bottom: calc(86px + env(safe-area-inset-bottom)) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions {
        background: rgba(255,255,255,.78) !important;
        border-color: rgba(255,255,255,.72) !important;
        border-radius: 999px !important;
        bottom: calc(12px + env(safe-area-inset-bottom)) !important;
        box-shadow: 0 18px 46px rgba(0,0,0,.18) !important;
        display: inline-flex !important;
        gap: 7px !important;
        height: 52px !important;
        left: 50% !important;
        max-width: calc(100vw - 24px) !important;
        overflow: visible !important;
        padding: 6px !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        width: auto !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-middle {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        gap: 7px !important;
        height: 40px !important;
        width: auto !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-edge,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-action-button {
        background: rgba(255,255,255,.94) !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 999px !important;
        box-shadow: 0 8px 20px rgba(0,0,0,.10) !important;
        color: var(--primary, #111) !important;
        flex: 0 0 40px !important;
        height: 40px !important;
        min-height: 40px !important;
        min-width: 40px !important;
        width: 40px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-edge:active,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-action-button:active,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-action-button.is-active {
        background: var(--primary, #111) !important;
        color: #fff !important;
        transform: translateY(-2px) scale(.98) !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-icon,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-feedback-icon,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-share-icon,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-icon svg,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-feedback-icon svg,
    body.public-body > main.qr-menu.theme-editorial-grid .mobile-actions-share-icon svg,
    body.public-body > main.qr-menu.theme-editorial-grid #mobile-actions-feedback-icon,
    body.public-body > main.qr-menu.theme-editorial-grid #mobile-actions-share-icon {
        height: 23px !important;
        max-height: 23px !important;
        max-width: 23px !important;
        width: 23px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .mobile-dock-cart em {
        background: var(--primary, #111) !important;
        border: 2px solid #fff !important;
        color: #fff !important;
        font-size: 9px !important;
        height: 18px !important;
        min-width: 18px !important;
        right: -4px !important;
        top: -5px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-footer.has-mobile-footer-actions[data-mobile-footer-panel] {
        background: rgba(255,255,255,.84) !important;
        backdrop-filter: blur(22px) saturate(1.16) !important;
        border: 1px solid rgba(255,255,255,.72) !important;
        border-radius: 18px !important;
        bottom: calc(76px + env(safe-area-inset-bottom)) !important;
        box-shadow: 0 20px 56px rgba(0,0,0,.20) !important;
        left: 14px !important;
        right: 14px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-footer.has-mobile-footer-actions[data-mobile-footer-panel] .footer-contact-card {
        background: rgba(255,255,255,.9) !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 999px !important;
        box-shadow: 0 10px 24px rgba(0,0,0,.08) !important;
        min-height: 46px !important;
        padding: 7px 12px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .menu-footer.has-mobile-footer-actions[data-mobile-footer-panel] .footer-icon {
        background: var(--primary, #111) !important;
        border-radius: 999px !important;
        color: #fff !important;
        height: 32px !important;
        width: 32px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .service-dialog,
    body.public-body > main.qr-menu.theme-editorial-grid .service-table-dialog {
        background: rgba(255,255,255,.86) !important;
        backdrop-filter: blur(24px) saturate(1.14) !important;
        border: 1px solid rgba(255,255,255,.72) !important;
        border-radius: 20px !important;
        box-shadow: 0 24px 70px rgba(0,0,0,.24) !important;
        color: #111 !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .service-option-button {
        background: rgba(255,255,255,.92) !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 999px !important;
        color: #111 !important;
        min-height: 52px !important;
        padding: 8px 13px !important;
    }

    body.public-body > main.qr-menu.theme-editorial-grid .service-option-icon {
        background: var(--primary, #111) !important;
        border-radius: 999px !important;
        color: #fff !important;
    }
}

/* Theme 3 hard final: readable drawer and compact dock */
html body.public-body > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel {
    background: rgba(255,255,255,.96) !important;
}

html body.public-body.theme3-category-drawer-open > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel nav a {
    animation: theme3DrawerDropIn .36s cubic-bezier(.16,1,.3,1) both !important;
    display: grid !important;
    opacity: 1 !important;
    transform: none !important;
}

html body.public-body > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel nav a {
    grid-template-columns: 50px minmax(0, 1fr) 16px !important;
    max-width: none !important;
    width: 100% !important;
}

html body.public-body > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel nav img,
html body.public-body > main.theme-editorial-grid.theme-editorial-grid .theme3-drawer-panel nav video {
    height: 50px !important;
    max-height: 50px !important;
    max-width: 50px !important;
    min-height: 50px !important;
    object-fit: cover !important;
    width: 50px !important;
}

@media (max-width: 991px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        bottom: calc(12px + env(safe-area-inset-bottom)) !important;
        display: flex !important;
        flex: 0 0 auto !important;
        grid-template-columns: none !important;
        height: 52px !important;
        left: 50% !important;
        max-width: max-content !important;
        min-width: 0 !important;
        right: auto !important;
        transform: translateX(-50%) !important;
        width: max-content !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        display: flex !important;
        flex: 0 0 auto !important;
        min-width: 0 !important;
        width: auto !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
        border-radius: 999px !important;
        flex: 0 0 40px !important;
        width: 40px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-service {
        border-radius: 999px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-footer.has-mobile-footer-actions[data-mobile-footer-panel] {
        background: rgba(255,255,255,.88) !important;
        backdrop-filter: blur(22px) saturate(1.16) !important;
        border: 1px solid rgba(255,255,255,.72) !important;
        border-radius: 18px !important;
        bottom: calc(76px + env(safe-area-inset-bottom)) !important;
        box-shadow: 0 20px 56px rgba(0,0,0,.20) !important;
        color: #111 !important;
        display: block !important;
        left: 16px !important;
        max-height: min(54svh, 360px) !important;
        opacity: 0 !important;
        overflow: auto !important;
        padding: 12px !important;
        pointer-events: none !important;
        position: fixed !important;
        right: 16px !important;
        transform: translateY(12px) scale(.98) !important;
        transition: opacity .22s ease, transform .24s cubic-bezier(.16,1,.3,1) !important;
        z-index: 130 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-footer.has-mobile-footer-actions[data-mobile-footer-panel].is-open {
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateY(0) scale(1) !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-footer.has-mobile-footer-actions[data-mobile-footer-panel] .menu-footer-links {
        display: grid !important;
        gap: 9px !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-footer.has-mobile-footer-actions[data-mobile-footer-panel] .footer-contact-card {
        background: rgba(255,255,255,.94) !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 999px !important;
        box-shadow: 0 10px 24px rgba(0,0,0,.08) !important;
        color: #111 !important;
        display: grid !important;
        grid-template-columns: 34px minmax(0, 1fr) !important;
        min-height: 48px !important;
        padding: 7px 13px 7px 7px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .service-modal {
        inset: 0 !important;
        pointer-events: none !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .service-dialog {
        background: transparent !important;
        border: 0 !important;
        bottom: calc(76px + env(safe-area-inset-bottom)) !important;
        box-shadow: none !important;
        left: auto !important;
        padding: 0 !important;
        position: fixed !important;
        right: 16px !important;
        width: auto !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .service-option-grid {
        align-items: flex-end !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 9px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .service-option-button {
        background: rgba(255,255,255,.94) !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 999px !important;
        box-shadow: 0 12px 28px rgba(0,0,0,.14) !important;
        color: #111 !important;
        flex-direction: row !important;
        gap: 9px !important;
        min-height: 46px !important;
        padding: 5px 12px 5px 7px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .service-option-button strong {
        color: #111 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .service-option-button .service-option-icon {
        background: var(--primary, #111) !important;
        color: #fff !important;
    }

    html body.public-body:has(> main.qr-menu.theme-editorial-grid) .service-modal {
        inset: 0 !important;
        pointer-events: none !important;
    }

    html body.public-body:has(> main.qr-menu.theme-editorial-grid) .service-dialog {
        background: transparent !important;
        border: 0 !important;
        bottom: calc(76px + env(safe-area-inset-bottom)) !important;
        box-shadow: none !important;
        left: auto !important;
        max-width: calc(100vw - 32px) !important;
        padding: 0 !important;
        position: fixed !important;
        right: 16px !important;
        width: auto !important;
    }

    html body.public-body:has(> main.qr-menu.theme-editorial-grid) .service-option-grid {
        align-items: flex-end !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 9px !important;
    }

    html body.public-body:has(> main.qr-menu.theme-editorial-grid) .service-option-button {
        background: rgba(255,255,255,.94) !important;
        border: 1px solid rgba(17,17,17,.08) !important;
        border-radius: 999px !important;
        box-shadow: 0 12px 28px rgba(0,0,0,.14) !important;
        color: #111 !important;
        flex-direction: row !important;
        gap: 9px !important;
        min-height: 46px !important;
        padding: 5px 12px 5px 7px !important;
    }

    html body.public-body:has(> main.qr-menu.theme-editorial-grid) .service-option-button strong {
        color: #111 !important;
    }

    html body.public-body:has(> main.qr-menu.theme-editorial-grid) .service-option-button .service-option-icon {
        background: var(--primary, #111) !important;
        color: #fff !important;
    }
}

/* Theme 3 v29 final requested polish */
html body.public-body > main.qr-welcome-page.theme-editorial-grid .welcome-locale-pills::after {
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action.is-revealed {
    max-width: min(260px, calc(100vw - 120px)) !important;
    min-width: 132px !important;
    width: auto !important;
}

html body.public-body > main.qr-welcome-page.theme-editorial-grid .theme3-welcome-quick .theme3-wifi-action.is-revealed b {
    max-width: min(210px, calc(100vw - 170px)) !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.is-category-open .menu-hero {
    background: #fff !important;
    backdrop-filter: none !important;
    border-bottom: 1px solid rgba(17,17,17,.08) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.06) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header {
    background: #fff !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .pro-back-bar {
    background: #fff !important;
    backdrop-filter: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid video[data-category-video]:not([src]) {
    background:
        radial-gradient(circle at center, rgba(255,255,255,.18), rgba(0,0,0,.08)),
        var(--theme3-category-image, rgba(17,17,17,.08)) center / cover no-repeat !important;
}

@media (max-width: 991px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
        padding-bottom: calc(98px + env(safe-area-inset-bottom)) !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        align-items: center !important;
        background:
            linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.72)) !important;
        backdrop-filter: blur(22px) saturate(1.2) !important;
        border: 1px solid rgba(255,255,255,.82) !important;
        border-radius: 22px !important;
        box-shadow: 0 24px 58px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.9) !important;
        gap: 8px !important;
        height: 64px !important;
        padding: 8px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
        background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--primary, #111) 30%, transparent), transparent) !important;
        content: "" !important;
        height: 1px !important;
        left: 18px !important;
        position: absolute !important;
        right: 18px !important;
        top: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        gap: 8px !important;
        height: 48px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
        background:
            radial-gradient(circle at 30% 18%, rgba(255,255,255,.34), transparent 34%),
            linear-gradient(145deg, color-mix(in srgb, var(--primary, #111) 92%, #ffffff 8%), color-mix(in srgb, var(--primary, #111) 68%, #000 32%)) !important;
        border: 1px solid color-mix(in srgb, var(--primary, #111) 30%, #fff 70%) !important;
        border-radius: 16px !important;
        box-shadow: 0 14px 30px color-mix(in srgb, var(--primary, #111) 28%, transparent), inset 0 1px 0 rgba(255,255,255,.22) !important;
        color: #fff !important;
        flex: 0 0 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        min-width: 48px !important;
        width: 48px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-service {
        border-radius: 16px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:active,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:active,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button.is-active,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge.is-active {
        background:
            radial-gradient(circle at 30% 18%, rgba(255,255,255,.26), transparent 34%),
            linear-gradient(145deg, #fff, rgba(255,255,255,.82)) !important;
        color: var(--primary, #111) !important;
        transform: translateY(-4px) scale(1.03) !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon svg,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon svg,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon svg,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-feedback-icon,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-share-icon {
        height: 25px !important;
        max-height: 25px !important;
        max-width: 25px !important;
        width: 25px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart em {
        background: #fff !important;
        border: 2px solid var(--primary, #111) !important;
        box-shadow: 0 8px 18px rgba(0,0,0,.22) !important;
        color: var(--primary, #111) !important;
        right: -7px !important;
        top: -7px !important;
    }
}

/* Theme 3 v30 action bar redesign and clean white header */
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero[style],
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.is-category-open .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .pro-back-bar {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
    backdrop-filter: none !important;
    filter: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
    padding-bottom: calc(112px + env(safe-area-inset-bottom)) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
    align-items: center !important;
    background: #111 !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 20px !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
    box-shadow: 0 24px 60px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.14) !important;
    display: flex !important;
    gap: 6px !important;
    height: 66px !important;
    justify-content: center !important;
    left: 50% !important;
    max-width: calc(100vw - 26px) !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 8px !important;
    position: fixed !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    z-index: 138 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.42), transparent) !important;
    content: "" !important;
    height: 1px !important;
    left: 18px !important;
    position: absolute !important;
    right: 18px !important;
    top: 0 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex: 0 0 auto !important;
    gap: 6px !important;
    height: 50px !important;
    min-width: 0 !important;
    width: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
    align-items: center !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    color: #fff !important;
    display: inline-grid !important;
    flex: 0 0 50px !important;
    height: 50px !important;
    justify-content: center !important;
    min-height: 50px !important;
    min-width: 50px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: relative !important;
    transition: background-color .22s ease, color .22s ease, transform .22s ease, border-color .22s ease !important;
    width: 50px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-service {
    border-radius: 16px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::after {
    background: radial-gradient(circle, rgba(255,255,255,.24), transparent 58%) !important;
    content: "" !important;
    height: 44px !important;
    left: -18px !important;
    opacity: .8 !important;
    position: absolute !important;
    top: -18px !important;
    width: 44px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge.is-active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button.is-active {
    background: #fff !important;
    border-color: #fff !important;
    color: #111 !important;
    transform: translateY(-4px) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-share-icon {
    height: 25px !important;
    max-height: 25px !important;
    max-width: 25px !important;
    position: relative !important;
    width: 25px !important;
    z-index: 1 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart em {
    align-items: center !important;
    background: #f5c84c !important;
    border: 2px solid #111 !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.28) !important;
    color: #111 !important;
    display: inline-flex !important;
    font-size: 9px !important;
    font-weight: 950 !important;
    height: 18px !important;
    justify-content: center !important;
    min-width: 18px !important;
    padding: 0 4px !important;
    position: absolute !important;
    right: -6px !important;
    top: -6px !important;
    z-index: 3 !important;
}

@media (min-width: 992px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
        padding-bottom: 56px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        border-radius: 22px !important;
        bottom: auto !important;
        flex-direction: column !important;
        gap: 8px !important;
        height: auto !important;
        left: auto !important;
        padding: 9px !important;
        right: calc(50% - 342px) !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 68px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        flex-direction: column !important;
        gap: 8px !important;
        height: auto !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
        flex-basis: 50px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible {
        background: #fff !important;
        border-color: #fff !important;
        color: #111 !important;
        outline: 0 !important;
        transform: translateX(-4px) !important;
    }
}

/* Theme 3 v31 final override: pure white header and premium action remote */
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero[style],
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.is-category-open .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.is-search-open .menu-hero,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .pro-back-bar {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
    border-radius: 0 !important;
    box-shadow: 0 8px 22px rgba(19,18,16,.06) !important;
    filter: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .menu-hero::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header::before,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header::after {
    background: transparent !important;
    content: none !important;
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-app-header,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-header-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .theme3-header-brand {
    color: #111 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
    padding-bottom: calc(104px + env(safe-area-inset-bottom)) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
    align-items: center !important;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,244,236,.91)) !important;
    border: 1px solid rgba(20,20,18,.12) !important;
    border-radius: 999px !important;
    bottom: calc(16px + env(safe-area-inset-bottom)) !important;
    box-shadow: 0 18px 44px rgba(19,18,16,.18), inset 0 1px 0 rgba(255,255,255,.95) !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    height: 68px !important;
    justify-content: center !important;
    left: 50% !important;
    max-width: calc(100vw - 28px) !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 8px 10px !important;
    position: fixed !important;
    right: auto !important;
    top: auto !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    z-index: 138 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
    background: linear-gradient(90deg, transparent, var(--primary, #c9a347), transparent) !important;
    border-radius: 999px !important;
    bottom: -5px !important;
    box-shadow: 0 6px 18px rgba(201,163,71,.22) !important;
    content: "" !important;
    display: block !important;
    height: 3px !important;
    left: 28px !important;
    opacity: .85 !important;
    position: absolute !important;
    right: 28px !important;
    top: auto !important;
    width: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
    align-items: center !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    gap: 8px !important;
    height: 52px !important;
    min-width: 0 !important;
    width: auto !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
    align-items: center !important;
    background: radial-gradient(circle at 32% 18%, rgba(255,255,255,.95), transparent 34%), linear-gradient(145deg, #fff 0%, #f2eee6 100%) !important;
    border: 1px solid rgba(20,20,18,.13) !important;
    border-radius: 999px !important;
    box-shadow: 0 10px 24px rgba(19,18,16,.13), inset 0 -1px 0 rgba(0,0,0,.05) !important;
    color: #121212 !important;
    display: inline-grid !important;
    flex: 0 0 52px !important;
    height: 52px !important;
    justify-content: center !important;
    min-height: 52px !important;
    min-width: 52px !important;
    overflow: visible !important;
    padding: 0 !important;
    position: relative !important;
    transition: background .24s ease, border-color .24s ease, box-shadow .24s ease, color .24s ease, transform .24s ease !important;
    width: 52px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::after,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::after {
    background: var(--primary, #c9a347) !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 6px 12px rgba(19,18,16,.18) !important;
    content: "" !important;
    display: block !important;
    height: 9px !important;
    left: 50% !important;
    opacity: .88 !important;
    position: absolute !important;
    top: -4px !important;
    transform: translateX(-50%) !important;
    width: 9px !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge.is-active,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button.is-active {
    background: #111 !important;
    border-color: #111 !important;
    box-shadow: 0 16px 30px rgba(19,18,16,.26) !important;
    color: #fff !important;
    transform: translateY(-5px) scale(1.03) !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button strong {
    display: none !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-feedback-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-share-icon svg,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-feedback-icon,
html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid #mobile-actions-share-icon {
    color: currentColor !important;
    fill: currentColor !important;
    height: 24px !important;
    max-height: 24px !important;
    max-width: 24px !important;
    position: relative !important;
    stroke: currentColor !important;
    width: 24px !important;
    z-index: 1 !important;
}

html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-cart em {
    align-items: center !important;
    background: #111 !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 18px rgba(19,18,16,.25) !important;
    color: #fff !important;
    display: inline-flex !important;
    font-size: 9px !important;
    font-weight: 950 !important;
    height: 18px !important;
    justify-content: center !important;
    min-width: 18px !important;
    padding: 0 4px !important;
    position: absolute !important;
    right: -4px !important;
    top: -6px !important;
    z-index: 3 !important;
}

@media (min-width: 992px) {
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions {
        padding-bottom: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid.has-mobile-actions .mobile-actions {
        background: rgba(255,255,255,.94) !important;
        border-color: rgba(20,20,18,.10) !important;
        bottom: auto !important;
        box-shadow: 0 22px 60px rgba(19,18,16,.14), inset 0 1px 0 rgba(255,255,255,.95) !important;
        flex-direction: column !important;
        gap: 10px !important;
        height: auto !important;
        left: auto !important;
        padding: 10px !important;
        right: max(18px, calc(50% - 392px)) !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 74px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions::before {
        background: linear-gradient(180deg, transparent, var(--primary, #c9a347), transparent) !important;
        bottom: 24px !important;
        height: auto !important;
        left: -5px !important;
        right: auto !important;
        top: 24px !important;
        width: 3px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-actions-middle {
        background: transparent !important;
        box-shadow: none !important;
        flex-direction: column !important;
        gap: 10px !important;
        height: auto !important;
        padding: 0 !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button {
        flex-basis: 54px !important;
        height: 54px !important;
        min-height: 54px !important;
        min-width: 54px !important;
        width: 54px !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button::before {
        align-items: center !important;
        background: #111 !important;
        border-radius: 999px !important;
        box-shadow: 0 12px 26px rgba(19,18,16,.18) !important;
        color: #fff !important;
        content: attr(aria-label) !important;
        display: inline-flex !important;
        font-size: 12px !important;
        font-weight: 850 !important;
        height: 34px !important;
        justify-content: center !important;
        line-height: 1 !important;
        opacity: 0 !important;
        padding: 0 14px !important;
        pointer-events: none !important;
        position: absolute !important;
        right: calc(100% + 12px) !important;
        top: 50% !important;
        transform: translate(8px, -50%) !important;
        transition: opacity .2s ease, transform .2s ease !important;
        white-space: nowrap !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible {
        background: #111 !important;
        border-color: #111 !important;
        color: #fff !important;
        outline: 0 !important;
        transform: translateX(-4px) !important;
    }

    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:hover::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:hover::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-dock-edge:focus-visible::before,
    html body.public-body > main.qr-menu.theme-editorial-grid.theme-editorial-grid .mobile-action-button:focus-visible::before {
        opacity: 1 !important;
        transform: translate(0, -50%) !important;
    }
}
