/**
 * Menu reels: same scroll model as #ads-reels-overlay / .ads-reels-track (header stays visible).
 */

/* Homepage uses in-track reels; keep the page-level strip on /locations/ and other pages */
main.main--home ~ .bottomads {
    display: none !important;
}

body.menu-reels-mode {
    overflow: hidden;
    background: var(--main-bg);
}

html.menu-nav-smooth,
html.menu-nav-smooth body.menu-reels-mode {
    overflow: auto;
    scroll-behavior: smooth;
}

html.menu-nav-smooth body.menu-reels-mode {
    background: var(--main-bg);
}

body.menu-reels-mode main.main--home {
    margin: 0 !important;
    padding: 0;
    /* Fixed header: content starts below header + notch safe area */
    padding-block-start: var(--ttms-header-height, 5em) !important;
    box-sizing: border-box;
    min-height: 0;
    min-height: 100svh;
    min-height: 100dvh;
    height: 100svh;
    height: 100dvh;
    overflow: hidden;
    background: var(--main-bg);
}

html.menu-nav-smooth body.menu-reels-mode main.main--home,
body.menu-nav-smooth main.main--home {
    min-height: 100dvh;
    height: auto;
    overflow: visible;
    padding-block-end: calc(5.5rem + env(safe-area-inset-bottom, 0px));
}

html.menu-nav-smooth .menu-reels-viewport,
html.menu-nav-smooth .menu-reels-track,
body.menu-nav-smooth .menu-reels-viewport,
body.menu-nav-smooth .menu-reels-track {
    height: auto;
    min-height: 0;
    overflow: visible;
    scroll-snap-type: none;
}

/* Smooth scroll: same slide heights as snap, without scroll-snap */
html.menu-nav-smooth .menu-reels-track .menu-reels-slide,
html.menu-nav-smooth .menu-reels-track .ads-reels-slide,
html.menu-nav-smooth .menu-item-card.menu-reels-slide,
body.menu-nav-smooth .menu-reels-track .menu-reels-slide,
body.menu-nav-smooth .menu-reels-track .ads-reels-slide,
body.menu-nav-smooth .menu-item-card.menu-reels-slide {
    flex-shrink: 0;
    width: 100%;
    min-height: calc(100dvh - var(--ttms-header-height, 5em));
    height: calc(100dvh - var(--ttms-header-height, 5em));
    max-height: calc(100dvh - var(--ttms-header-height, 5em));
    scroll-snap-align: none;
    scroll-snap-stop: normal;
    overflow: hidden;
}

html.menu-nav-smooth .menu-reels-slide--bottom-ads,
body.menu-nav-smooth .menu-reels-slide--bottom-ads {
    min-height: calc(100dvh - var(--ttms-header-height, 5em));
    height: calc(100dvh - var(--ttms-header-height, 5em));
}

html.menu-nav-smooth #homepage-ads-container .ads-loading,
html.menu-nav-smooth #homepage-ads-container .homepage-ads-empty,
body.menu-nav-smooth #homepage-ads-container .ads-loading,
body.menu-nav-smooth #homepage-ads-container .homepage-ads-empty {
    min-height: calc(100dvh - var(--ttms-header-height, 5em));
    height: calc(100dvh - var(--ttms-header-height, 5em));
    scroll-snap-align: none;
}

html.menu-nav-smooth .menu-anchor,
body.menu-nav-smooth .menu-anchor {
    scroll-margin-top: var(--ttms-header-height, 5em);
}

body.menu-reels-mode:has(main.main--home) .bottomads:not(.menu-reels-bottom-ads-in-track) {
    display: none;
}

main.main--offset ~ .bottomads {
    display: block !important;
    visibility: visible;
    position: relative;
    width: 100%;
    min-height: calc(100dvh - var(--ttms-header-height, 5em));
    padding-bottom: calc(5.5rem + env(safe-area-inset-bottom, 0px));
    background: var(--main-bg);
}

html:has(main.main--offset):not(:has(#menu-reels-viewport)),
html:has(main.main--offset):not(:has(#menu-reels-viewport)) body {
    overflow: auto;
    height: auto;
}

body.menu-reels-mode .bottomads.menu-reels-bottom-ads-in-track,
#menu-reels-track .menu-reels-slide--bottom-ads {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.menu-reels-mode .bottomads.menu-reels-bottom-ads-in-track {
    width: 100%;
    height: 100%;
    min-height: 100%;
    background: var(--main-bg);
}

.menu-reels-slide--bottom-ads {
    padding: 0;
    justify-content: center;
    align-items: stretch;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    flex-shrink: 0;
}

/* Track snap owns scroll: disable document sticky stack inside sponsored slide */
#menu-reels-track .menu-reels-slide--bottom-ads section.sticky,
#menu-reels-track .menu-reels-slide--bottom-ads .menu-ad.sticky {
    position: relative !important;
    top: auto !important;
    scroll-snap-align: none !important;
    scroll-margin-top: 0 !important;
}

#menu-reels-track .menu-reels-slide--bottom-ads .menu-ad-scroll-end {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

#menu-reels-track .menu-reels-slide--bottom-ads #pageadscontainer,
#menu-reels-track .menu-reels-slide--bottom-ads #pageadscontainer.frontpageads {
    width: 100%;
    height: 100%;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    pointer-events: auto !important;
    overflow: visible;
}

#menu-reels-track .menu-reels-slide--bottom-ads section.menu-ad--reels-preview {
    flex: 1;
    width: 100%;
    min-height: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: auto !important;
}

#menu-reels-track .menu-reels-slide--bottom-ads .inner.ads-list--preview,
#menu-reels-track .menu-reels-slide--bottom-ads .ad-panel--preview {
    pointer-events: auto !important;
}

/* Community Photos intro + location picker: hide bottom nav + settings popover */
body.menu-reels-intro-active #footerBtns,
body.menu-reels-contact-active #footerBtns,
body.menu-reels-intro-active #footerSettings,
body.menu-reels-contact-active #footerSettings {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden;
}

.menu-reels-viewport {
    position: relative;
    width: 100%;
    background: var(--main-bg);
}

html:not(.menu-nav-smooth) .menu-reels-viewport {
    height: 100%;
    overflow: hidden;
}

/* Same as .ads-reels-track: dedicated vertical snap container */
html:not(.menu-nav-smooth) .menu-reels-track {
    position: relative;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    scroll-snap-type: y mandatory;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: auto;
    overscroll-behavior-y: contain;
    touch-action: pan-y;
    scrollbar-width: none;
}

html.menu-nav-smooth .menu-reels-track {
    position: relative;
    overflow: visible;
    scroll-snap-type: none;
    overscroll-behavior-y: auto;
}

.menu-reels-track::-webkit-scrollbar {
    display: none;
}

/* Flatten wrappers so slides are track snap children */
#menu-reels-track #packery-container,
#menu-reels-track #homepage-ads-container,
#menu-reels-track .main-menu-bg,
#menu-reels-track .main-menu,
#menu-reels-track .menu-items-container {
    display: contents;
}

#menu-reels-track .main-body {
    display: contents;
    column-count: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* adsbase.css sets display:block on .client-ads-reels: flatten inside track */
body.menu-reels-mode #menu-reels-track #homepage-ads-container.client-ads-reels,
body.menu-reels-mode #menu-reels-track #client-ads-container.client-ads-reels {
    display: contents !important;
    width: auto;
    height: auto;
    overflow: visible;
    pointer-events: none;
}

/* Same snap slide model as .ads-reels-slide (height = track viewport) */
.menu-reels-track .menu-reels-slide,
.menu-reels-track .ads-reels-slide {
    position: relative;
    flex-shrink: 0;
    width: 100%;
    min-height: 100%;
    height: 100%;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    overflow: hidden;
    background: var(--main-bg);
}

/* Snap-slide enter: opacity + transform only, replayed each time a reel is focused */
#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide > *:not(.menu-anchor):not(.sr-only),
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide > *:not(.menu-anchor):not(.sr-only) {
    opacity: 0;
    transform: translate3d(0, 1.05rem, 0);
    transition-property: opacity, transform;
    transition-duration: 0s;
    transition-timing-function: var(--ttms-ease-out);
    transition-delay: 0s;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide > .menu-smash-pass,
#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide > .menu-item-smash-pass,
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide > .ad-portrait,
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide > video.ad-video {
    transform: translate3d(0, 0.75rem, 0) scale(0.98);
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--hero > #bg,
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide > .ad-portrait-bg {
    transform: scale(1.07);
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > *:not(.menu-anchor):not(.sr-only),
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > *:not(.menu-anchor):not(.sr-only) {
    opacity: 1;
    transform: none;
    transition-duration: 0.32s;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > *:nth-child(2),
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > *:nth-child(2) {
    transition-delay: 24ms;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > *:nth-child(3),
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > *:nth-child(3) {
    transition-delay: 48ms;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > *:nth-child(4),
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > *:nth-child(4) {
    transition-delay: 72ms;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > *:nth-child(5),
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > *:nth-child(5) {
    transition-delay: 96ms;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--hero.is-reel-in > #bg,
#menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > .ad-portrait-bg {
    transform: scale(1);
    transition-duration: 0.48s;
    transition-delay: 0s;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > .menu-smash-pass,
#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > .menu-item-smash-pass {
    transition-duration: 0.36s;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact > .contactinfo {
    opacity: 1;
    transform: none;
    transition-duration: 0s;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact .location-picker__header,
#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact .location-picker-card,
#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact .location-picker__social {
    opacity: 0;
    transform: translate3d(0, 0.75rem, 0);
    transition-property: opacity, transform;
    transition-duration: 0s;
    transition-timing-function: var(--ttms-ease-out);
    transition-delay: 0s;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact.is-reel-in .location-picker__header,
#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact.is-reel-in .location-picker-card,
#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact.is-reel-in .location-picker__social {
    opacity: 1;
    transform: none;
    transition-duration: 0.3s;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact.is-reel-in .location-picker-card {
    transition-delay: 36ms;
}

#menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact.is-reel-in .location-picker__social {
    transition-delay: 68ms;
}

/* Promo slides inside track: match overlay reel visuals */
#menu-reels-track .ads-reels-slide {
    color: var(--scheme-white);
    text-align: center;
    background: var(--scheme-black);
    padding-bottom: max(1rem, env(safe-area-inset-bottom));
}

#menu-reels-track .ads-reels-slide .ad-portrait-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: var(--ttms-z-reel-inner-bg, 0);
}

#menu-reels-track .ads-reels-slide .ad-portrait,
#menu-reels-track .ads-reels-slide video.ad-video {
    position: relative;
    z-index: var(--ttms-z-reel-inner-content, 1);
    max-height: calc(100% - 5.5rem - env(safe-area-inset-bottom));    width: auto;
    max-width: 100%;
    object-fit: contain;
}

#menu-reels-track .ads-reels-slide > span {
    position: absolute;
    top: 1.2em;
    left: 1em;
    z-index: var(--ttms-z-reel-inner-controls, 4);
}

#menu-reels-track .ads-reels-slide > .ads-reels-slide__title-row > .menu-favorite-btn {
    margin-top: 0;
    width: 2.1rem;
    height: 2.1rem;
}

#menu-reels-track .ads-reels-slide:has(.ads-reels-slide__title-row) > span {
    top: 3.35em;
}

#homepage-ads-container .ads-loading,
#homepage-ads-container .homepage-ads-empty {
    min-height: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    scroll-snap-align: start;
}

.ads-reels-slide--hidden,
.ads-reels-slide[hidden],
.menu-reels-slide[hidden],
.menu-item-card.menu-reels-slide[hidden] {
    display: none !important;
}

body.menu-search-active .menu-reels-track {
    scroll-snap-type: none;
}

#menu-reels-track .ads-reels-slide {
    cursor: pointer;
    pointer-events: auto;
}

/* Hero slide */
.hero_logo_container.menu-reels-slide {
    flex-direction: column;
    justify-content: center;
    gap: 0.75rem;
    padding-block-start: 0;
    padding-block-end: max(3.25rem, env(safe-area-inset-bottom));
    background: linear-gradient(165deg, var(--hero-bg-color-1), var(--hero-bg-color-2));
}

@media (max-height: 740px) {
    .hero_logo_container.menu-reels-slide {
        gap: 0.55rem;
        padding-block-end: max(2.75rem, env(safe-area-inset-bottom));
    }

    .hero_logo_container .hero-cta-list {
        gap: 0.4rem;
        max-width: 20rem;
    }

    .hero_logo_container .hero-intro {
        max-width: 20rem;
        padding-inline: 1rem;
    }

    .hero_logo_container .hero-intro p {
        font-size: 0.88rem;
        line-height: 1.4;
    }
}

.hero_logo_container .hero-cta-list {
    position: relative;
    z-index: var(--ttms-z-reel-inner-content, 1);
    list-style: none;
    margin: 0;
    padding: 0 1rem;
    width: 100%;
    max-width: 22rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0.55rem;
}

.hero_logo_container .hero-cta-list .subscribe {
    width: auto;
    padding: 0;
    margin: 0;
    display: contents;
}

.hero_logo_container .subscribe--install {
    width: auto;
    justify-content: center;
}

.hero_logo_container .subscribe--install.hide,
.hero_logo_container .subscribe--install .contact-cta.hide {
    display: none !important;
}

.hero_logo_container .hero-cta-list .contact-cta,
.hero_logo_container .hero-cta-list .subbtn--notify.contact-cta {
    width: auto;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.hero_logo_container .hero-intro {
    position: relative;
    z-index: var(--ttms-z-reel-inner-content, 1);
    width: 100%;
    max-width: 22rem;
    margin: 0;
    padding: 0 1.25rem;
    text-align: center;
    color: var(--hero-text-color);
}

.hero_logo_container .hero-intro p {
    margin: 0;
    color: var(--hero-text-color);
    font-size: small;
    line-height: var(--ttms-leading-relaxed, 1.5);
    text-shadow: 0 1px 8px color-mix(in srgb, var(--scheme-black) 45%, transparent);
}

.hero_logo_container .hero-intro p + p {
    margin-top: 0.15em;
}

/* Contact slide: full-viewport location picker */
.contactinfobg.menu-reels-slide {
    height: 100%;
    min-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    /* Clear fixed footer dock (Home / Cart / Search / Settings) */
    box-sizing: border-box;
    background:
        radial-gradient(ellipse 120% 80% at 50% -20%, color-mix(in srgb, var(--hero-border-color) 22%, transparent), transparent 55%),
        linear-gradient(165deg, var(--hero-bg-color-1), var(--hero-bg-color-2));
}

.contactinfobg.menu-reels-slide .contactinfo.location-picker {
    width: 100%;
    max-width: min(100%, 36rem);
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0.85rem;
    margin-inline: auto;
    padding-block: 0.25rem 0.5rem;
}

.contactinfobg.menu-reels-slide.menu-reels-slide--contact {
    padding-inline: 1.15rem;
    align-items: stretch;
    overflow-x: hidden;
    box-sizing: border-box;
}

.contactinfobg.menu-reels-slide .contactinfo.location-picker--current {
    justify-content: center;
    align-items: stretch;
    gap: 1.25rem;
    width: 100%;
    max-width: min(100%, 34rem);
    padding-inline: 0;
    padding-block: 1rem 1.25rem;
    box-sizing: border-box;
}

.contactinfobg.menu-reels-slide .location-picker__social {
    position: relative;
    z-index: 1;
    margin-block-end: 0.35rem;
    padding-block-end: 0.25rem;
}

.contactinfobg.menu-reels-slide .location-picker--choosing .location-picker__section-footer {
    flex-shrink: 0;
    width: 100%;
    max-width: min(100%, 36rem);
    margin-inline: auto;
    margin-top: 0.35rem;
    padding: 0.15rem 0.75rem 0;
    display: flex;
    justify-content: center;
}

.contactinfobg.menu-reels-slide .location-picker__section-footer .location-picker__nearby-btn {
    width: auto;
    max-width: 100%;
}

/* Intro / hero-content slide */
.hero-content.menu-reels-slide {
    height: auto;
    min-height: 100%;
    overflow: visible;
    text-align: center;
    scroll-snap-align: start;
    scroll-snap-stop: normal;
    justify-content: flex-start;
    padding-block-start: 0.75rem;
    padding-block-end: max(1.25rem, env(safe-area-inset-bottom));
}

.hero-content.menu-reels-slide.menu-reels-slide--intro {
    height: 100%;
    min-height: 100%;
    max-height: 100%;
    overflow: hidden;
    justify-content: space-between;
    gap: 0.25rem;
    padding-block: 0.4rem max(0.45rem, env(safe-area-inset-bottom));
    background: linear-gradient(165deg, var(--hero-bg-color-1), var(--hero-bg-color-2));
}

.hero-content.menu-reels-slide .client-tour-slideshow,
.hero-content.menu-reels-slide .menu-smash-pass {
    width: 100%;
    max-width: 100%;
}

.hero-content.menu-reels-slide--intro .menu-reels-intro__title {
    flex-shrink: 0;
    margin: 0;
    padding: 0.35rem 1rem 0.15rem;
    font-size: clamp(1.05rem, 4.2vw, 1.35rem);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.02em;
    color: var(--hero-text-color);
    text-align: center;
}

.hero-content.menu-reels-slide--intro .menu-smash-pass {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.hero-content.menu-reels-slide--intro .menu-smash-pass--no-photos,
.hero-content.menu-reels-slide--intro .menu-smash-pass:has(.menu-smash-pass__empty-state--community:not(.hidden)) {
    justify-content: center;
    align-items: center;
    padding-inline: 1.1rem;
}

.hero-content.menu-reels-slide--intro .menu-smash-pass__empty-state--community:not(.hidden) {
    width: min(100%, 22rem);
    max-width: 22rem;
    min-height: min(28rem, 72%);
}

.hero-content.menu-reels-slide--intro .social-share-btn-container {
    flex-shrink: 0;
    padding-block: 0.25rem 0;
}

/* Section title slide */
.menu-reels-slide--section-title {
    color: var(--main-text);
    text-align: center;
}

.menu-reels-slide--section-title .title {
    margin: 0;
}

.menu-reels-slide--section-title .title a {
    text-decoration: none;
}

/* Section header reel */
.menu-header.menu-reels-slide {
    color: var(--main-text);
    text-align: center;
    position: relative;
}

.menu-header.menu-reels-slide .headerstyle h2.center.title {
    font-size: clamp(1.35rem, 5.2vw, 2rem);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.menu-reels-slide--section-title .title,
.menu-reels-slide--section-title h1.center.title,
.menu-reels-slide--section-title h2.center.title {
    font-size: clamp(1.35rem, 5.2vw, 2rem);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.menu-reels-slide--taxonomy-term .menu-taxonomy-term-back {
    margin: 0.85rem 0 0;
    opacity: 0.9;
}

.menu-reels-slide--taxonomy-term .menu-taxonomy-term-back a {
    display: inline-flex;
    align-items: center;
    padding: 0.4rem 0.85rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--main-text) 10%, transparent);
}

.menu-header.menu-reels-slide .menu-header__link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    min-height: 0;
    position: relative;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}

.menu-header.menu-reels-slide .menu-header__link:hover,
.menu-header.menu-reels-slide .menu-header__link:focus-visible {
    color: inherit;
    text-decoration: none;
}

.menu-header.menu-reels-slide .food.item {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: var(--ttms-z-reel-inner-bg, 0);
    opacity: 0.35;
    margin: 0;
    border-radius: 0;
}

.menu-header.menu-reels-slide .headerstyle,
.menu-header.menu-reels-slide .menu-summary {
    position: relative;
    z-index: var(--ttms-z-reel-inner-content, 1);
    width: 100%;
    max-width: 36rem;
}

.menu-header.menu-reels-slide .menu-header__item-count,
.menu-reels-slide--section-title .menu-header__item-count {
    margin: 0.5rem 0 0;
    font-size: clamp(0.95rem, 3.4vw, 1.125rem);
    font-weight: 600;
    letter-spacing: 0.01em;
    text-transform: none;
    line-height: 1.3;
    color: color-mix(in srgb, var(--main-text) 84%, transparent);
}

.menu-header__item-count__value {
    font-variant-numeric: tabular-nums;
    min-width: 1.25ch;
    display: inline-block;
    font-size: 1.15em;
    font-weight: 700;
}

.menu-header__item-count__suffix {
    font-size: 0.94em;
    font-weight: 600;
}

.menu-header__item-count.is-count-loading .menu-header__item-count__value {
    color: color-mix(in srgb, var(--selected-button-color3) 78%, var(--main-text-color));
    animation: menu-section-count-pulse 0.85s ease-in-out infinite;
}

.menu-header.menu-reels-slide.is-section-loading .headerstyle::after,
.menu-reels-slide--section-title.is-section-loading::after {
    content: '';
    display: block;
    width: min(5rem, 42%);
    height: 2px;
    margin: 0.45rem auto 0;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        transparent,
        color-mix(in srgb, var(--selected-button-color3) 70%, var(--scheme-white)),
        transparent
    );
    background-size: 200% 100%;
    animation: menu-section-load-bar 1.1s ease-in-out infinite;
}

@keyframes menu-section-count-pulse {
    0%,
    100% {
        opacity: 1;
    }
    50% {
        opacity: 0.72;
    }
}

@keyframes menu-section-load-bar {
    0% {
        background-position: 100% 0;
    }
    100% {
        background-position: -100% 0;
    }
}

.menu-header.menu-reels-slide .menu-summary {
    font-size: 0.95rem;
    opacity: 0.9;
    margin-block-start: 0.5rem;
}

.menu-header.menu-reels-slide .menu-anchor {
    position: absolute;
    top: 0;
    left: 0;
}

/* Menu item reel: one viewport: image flexes, copy stays compact below */
.menu-item-card.menu-reels-slide {
    color: var(--button-text-color1);
    background: linear-gradient(165deg, var(--button-color1), var(--button-color2));
    border: 1px solid color-mix(in srgb, var(--button-text-color1) 22%, transparent);
    border-radius: 0;
    box-shadow: 0 10px 36px color-mix(in srgb, var(--scheme-black) 38%, transparent);
    width: 100%;
    max-width: none;
    height: 100%;
    max-height: 100%;
    margin: 0;
    justify-content: flex-start;
    cursor: pointer;
    overflow: hidden;
    padding: 0;
    padding-block: .6em 5em;
    box-sizing: border-box;
    content-visibility: auto;
    contain-intrinsic-size: auto 100dvh;
}

.menu-item-card.menu-reels-slide.expanded,
.menu-item-card.menu-reels-slide[aria-expanded='true'] {
    content-visibility: visible;
}

.menu-item-card.menu-reels-slide::after {
    display: none;
}

.menu-item-card.menu-reels-slide:hover,
.menu-item-card.menu-reels-slide:active {
    transform: none;
    box-shadow: 0 10px 36px color-mix(in srgb, var(--scheme-black) 38%, transparent);
}

body.menu-reels-item-modal-open {
    overflow: hidden;
}

body.menu-reels-item-modal-open .menu-reels-track,
.menu-reels-track.menu-reels-track--locked {
    overflow: hidden !important;
    pointer-events: none;
    touch-action: none;
    scroll-snap-type: none;
}

.menu-reels-item-modal {
    position: fixed;
    inset: 0;
    z-index: var(--ttms-z-reels-item-modal, 10070);
    display: none;
    flex-direction: column;
    color: var(--button-text-color1);
    width: 100%;
    height: var(--ttms-overlay-height, 100dvh);
    max-height: var(--ttms-overlay-height, 100dvh);
    box-sizing: border-box;
    padding-top: var(--ttms-safe-top, env(safe-area-inset-top, 0px));
    padding-bottom: var(--ttms-safe-bottom, env(safe-area-inset-bottom, 0px));
    overscroll-behavior: none;
}
.menu-item-expanded-data {
    height: 100%;
}
.menu-reels-item-modal.is-open,
.menu-reels-item-modal.is-closing {
    display: flex;
}

.menu-reels-item-modal {
    --reels-modal-from-x: 0px;
    --reels-modal-from-y: 0px;
    --reels-modal-from-scale: 0.94;
}

.menu-reels-item-modal.is-open .menu-reels-item-modal__backdrop {
    animation: menu-reels-modal-backdrop-in 0.42s ease both;
}

.menu-reels-item-modal.is-open .menu-reels-item-modal__panel {
    animation: menu-reels-modal-panel-in 0.52s cubic-bezier(0.32, 0.72, 0, 1) both;
    transform-origin: 50% 50%;
}

.menu-reels-item-modal.is-closing .menu-reels-item-modal__backdrop {
    animation: menu-reels-modal-backdrop-out 0.4s ease both;
}

.menu-reels-item-modal.is-closing .menu-reels-item-modal__panel {
    animation: menu-reels-modal-panel-out 0.46s cubic-bezier(0.4, 0, 0.2, 1) both;
    transform-origin: 50% 50%;
}

.menu-reels-item-modal.is-closing-into-cart .menu-reels-item-modal__backdrop {
    animation: menu-reels-modal-backdrop-out 0.28s ease both;
}

.menu-reels-item-modal.is-closing-into-cart .menu-reels-item-modal__panel {
    animation: menu-reels-modal-panel-into-cart 0.36s cubic-bezier(0.3, 0.02, 0.2, 1) both;
}

.footer-dock__action--cart.is-cart-caught {
    animation: menu-reels-cart-dock-catch 0.5s cubic-bezier(0.22, 1.4, 0.36, 1) both;
}

.menu-reels-item-modal.is-cart-added .menu-reels-item-modal__panel {
    animation: none;
}

.menu-reels-item-modal__backdrop {
    position: absolute;
    inset: 0;
    background: color-mix(in srgb, var(--scheme-black) 72%, transparent);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.menu-reels-item-modal__panel {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    width: 100%;
    flex: 1;
    min-height: 0;
    max-height: 100%;
    background: linear-gradient(165deg, var(--button-color1), var(--button-color2));
    border: 1px solid color-mix(in srgb, var(--scheme-accent) 18%, transparent);
    overflow: hidden;
}

.menu-reels-item-modal__header {
    display: flex;
    align-items: stretch;
    position: relative;
    justify-content: space-between;
    gap: 0;
    flex-shrink: 0;
    border-bottom: 1px solid color-mix(in srgb, var(--scheme-accent) 15%, transparent);
}

.menu-reels-item-modal__title-row {
    flex: 1;
    min-width: 0;
    padding: 0.85em 0.5em 0.85em 1em;
    align-items: center;
    gap: 0.45rem;
}

.menu-reels-item-modal__favorite-slot {
    display: contents;
}

.menu-reels-item-modal__actions-slot {
    display: contents;
}

.menu-reels-item-modal__title-row > .menu-favorite-btn {
    margin-top: 0;
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
}

.menu-reels-item-modal__title-row > .menu-item-actions {
    margin-top: 0;
    margin-left: 0;
    flex-shrink: 0;
}

.menu-reels-item-modal__title {
    margin: 0;
    font-size: clamp(1.05rem, 4vw, 1.35rem);
    font-weight: 700;
    line-height: 1.25;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding: 0;
    display: block;
}

.menu-reels-item-modal__title-link {
    color: inherit;
    text-decoration: none;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.menu-reels-item-modal__title-link:hover,
.menu-reels-item-modal__title-link:focus-visible {
    text-decoration: underline;
    outline: none;
}

.menu-reels-item-modal__promo {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 0.35rem 1em 0;
    flex-shrink: 0;
}

.menu-reels-item-modal__promo .menu-item-promo-badge {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    margin: 0;
    width: auto;
    font-size: 0.78rem;
}

.menu-reels-item-modal__close {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    border: none;
    background: color-mix(in srgb, var(--scheme-black) 28%, transparent);
    color: inherit;
    font-size: 1.25rem;
    cursor: pointer;
}

.menu-reels-item-modal__close:hover,
.menu-reels-item-modal__close:focus-visible {
    background: color-mix(in srgb, var(--scheme-black) 42%, transparent);
    outline: none;
}

.menu-reels-item-modal__body {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
}

.menu-reels-item-modal__data .expanded-item-details {
    width: 100%;
    height: 100%;
    max-width: 28rem;
    margin: 0 auto;
}

.menu-reels-item-modal__data .expanded-image-carousel,
.menu-reels-item-modal__data .menu-smash-pass--modal {
    margin-bottom: 0;
}

.menu-reels-item-modal__data .menu-reels-item-modal__promo {
    margin-bottom: 0.85rem;
}

.menu-reels-item-modal__data .menu-smash-pass--modal {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.menu-reels-item-modal__data .expanded-item-controls {
    position: sticky;
    bottom: 0;
    z-index: 2;
    padding-inline: 1rem;
    padding-block-end: 2em;
    margin-top: 0.5rem;
    background: linear-gradient(to top, var(--button-color2) 70%, transparent);
}

.menu-reels-item-modal__data .expanded-item-taxonomies {
    padding-inline: 1rem;
    max-width: 28rem;
    margin-inline: auto;
    width: 100%;
    box-sizing: border-box;
}

.menu-reels-item-modal .expanded-add-cart.is-cart-pop {
    background: linear-gradient(135deg, var(--scheme-accent), var(--scheme-accent));
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--scheme-accent) 35%, transparent),
        0 16px 36px color-mix(in srgb, var(--scheme-accent) 45%, transparent);
    animation: menu-reels-cart-pop 0.55s var(--ttms-ease-out, cubic-bezier(0.22, 1, 0.36, 1)) both;
}

body.menu-reels-item-modal-open.menu-reels-cart-celebrating #footerBtns {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    animation: menu-reels-cart-dock-in 0.45s cubic-bezier(0.32, 0.72, 0, 1) both;
}

body.menu-reels-cart-celebrating .footer-dock__action--cart {
    animation: menu-reels-cart-dock-catch 0.7s 0.35s cubic-bezier(0.22, 1.4, 0.36, 1) both;
}

.menu-reels-cart-burst {
    position: fixed;
    width: 0;
    height: 0;
    z-index: calc(var(--ttms-z-reels-item-modal, 10070) + 2);
    pointer-events: none;
}

.menu-reels-cart-burst__ring {
    position: absolute;
    left: 0;
    top: 0;
    width: 2.6rem;
    height: 2.6rem;
    margin: -1.3rem 0 0 -1.3rem;
    border-radius: 50%;
    border: 3px solid var(--scheme-accent);
    box-sizing: border-box;
    animation: menu-reels-cart-ring 0.7s ease-out forwards;
}

.menu-reels-cart-burst__ring--late {
    width: 3.4rem;
    height: 3.4rem;
    margin: -1.7rem 0 0 -1.7rem;
    border-color: var(--scheme-accent);
    animation-delay: 0.1s;
}

.menu-reels-cart-burst__particle {
    position: absolute;
    left: 0;
    top: 0;
    width: 0.85rem;
    height: 0.85rem;
    margin: -0.42rem 0 0 -0.42rem;
    color: var(--p-color);
    font-size: 0.85rem;
    line-height: 1;
    animation: menu-reels-cart-particle 0.95s cubic-bezier(0.16, 0.8, 0.3, 1) forwards;
}

.menu-reels-cart-burst__particle::before {
    content: var(--p-glyph, "+");
    display: block;
    text-align: center;
    font-weight: 800;
    text-shadow: 0 0 0.45rem color-mix(in srgb, currentColor 55%, transparent);
}

.menu-reels-cart-fly {
    position: fixed;
    z-index: calc(var(--ttms-z-reels-item-modal, 10070) + 3);
    width: 2.4rem;
    height: 2.4rem;
    margin: -1.2rem 0 0 -1.2rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--scheme-accent), var(--scheme-accent));
    color: var(--scheme-white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--scheme-accent) 45%, transparent);
    pointer-events: none;
    animation: menu-reels-cart-fly 0.85s cubic-bezier(0.2, 0.7, 0.2, 1) forwards;
}

@keyframes menu-reels-modal-backdrop-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes menu-reels-modal-backdrop-out {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes menu-reels-modal-panel-in {
    0% {
        transform: translate(var(--reels-modal-from-x), var(--reels-modal-from-y)) scale(var(--reels-modal-from-scale));
        opacity: 0.4;
        border-radius: 1.25rem;
    }
    100% {
        transform: translate(0, 0) scale(1);
        opacity: 1;
        border-radius: 0;
    }
}

@keyframes menu-reels-modal-panel-out {
    0% {
        transform: translate(0, 0) scale(1);
        opacity: 1;
        border-radius: 0;
    }
    100% {
        transform: translate(var(--reels-modal-from-x), var(--reels-modal-from-y)) scale(var(--reels-modal-from-scale));
        opacity: 0;
        border-radius: 1.25rem;
    }
}

@keyframes menu-reels-modal-panel-into-cart {
    0% {
        transform: translate(0, 0) scale(1);
        opacity: 1;
        border-radius: 0.85rem;
    }
    44% {
        transform: translate(0, 0) scale(0.15);
        opacity: 1;
        border-radius: 50%;
    }
    100% {
        transform: translate(var(--reels-modal-from-x), var(--reels-modal-from-y)) scale(0.05);
        opacity: 0;
        border-radius: 50%;
    }
}

@keyframes menu-reels-cart-pop {
    0% { transform: scale(1); }
    14% { transform: scale(0.92); }
    36% { transform: scale(1.16); }
    58% { transform: scale(0.97); }
    78% { transform: scale(1.06); }
    100% { transform: scale(1); }
}

@keyframes menu-reels-cart-ring {
    0% {
        transform: scale(0.3);
        opacity: 0.95;
    }
    100% {
        transform: scale(3.1);
        opacity: 0;
    }
}

@keyframes menu-reels-cart-particle {
    0% {
        transform: rotate(var(--a)) translateY(0) scale(0.25);
        opacity: 1;
    }
    100% {
        transform: rotate(var(--a)) translateY(var(--p-dist, -3.4rem)) scale(1.15);
        opacity: 0;
    }
}

@keyframes menu-reels-cart-fly {
    0% {
        transform: translate(0, 0) scale(1);
        opacity: 1;
    }
    70% {
        opacity: 1;
    }
    100% {
        transform: translate(var(--dx), var(--dy)) scale(0.35);
        opacity: 0;
    }
}

@keyframes menu-reels-cart-dock-in {
    from {
        transform: translateY(1.25rem);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes menu-reels-cart-dock-catch {
    0% { transform: scale(1); }
    40% { transform: scale(1.22); }
    100% { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .menu-reels-item-modal.is-open .menu-reels-item-modal__backdrop,
    .menu-reels-item-modal.is-open .menu-reels-item-modal__panel,
    .menu-reels-item-modal.is-closing .menu-reels-item-modal__backdrop,
    .menu-reels-item-modal.is-closing .menu-reels-item-modal__panel,
    .menu-reels-item-modal.is-closing-into-cart .menu-reels-item-modal__panel,
    .footer-dock__action--cart.is-cart-caught,
    .menu-reels-item-modal .expanded-add-cart.is-cart-pop,
    body.menu-reels-item-modal-open.menu-reels-cart-celebrating #footerBtns,
    body.menu-reels-cart-celebrating .footer-dock__action--cart {
        animation: none;
    }

    .menu-reels-cart-burst,
    .menu-reels-cart-fly {
        display: none;
    }

    .menu-header__item-count.is-count-loading .menu-header__item-count__value,
    .menu-header.menu-reels-slide.is-section-loading .headerstyle::after,
    .menu-reels-slide--section-title.is-section-loading::after {
        animation: none;
    }

    #menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide > *:not(.menu-anchor):not(.sr-only),
    #menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide > *:not(.menu-anchor):not(.sr-only),
    #menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide.is-reel-in > *:not(.menu-anchor):not(.sr-only),
    #menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > *:not(.menu-anchor):not(.sr-only),
    #menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--hero > #bg,
    #menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--hero.is-reel-in > #bg,
    #menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide > .ad-portrait-bg,
    #menu-reels-track[data-ttms-reel-reveal="1"] .ads-reels-slide.is-reel-in > .ad-portrait-bg,
    #menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact .location-picker__header,
    #menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact .location-picker-card,
    #menu-reels-track[data-ttms-reel-reveal="1"] .menu-reels-slide--contact .location-picker__social {
        opacity: 1;
        transform: none;
        transition-duration: 0s;
        transition-delay: 0s;
    }
}

.menu-item-card.menu-reels-slide > .menu-add-photo-btn {
    top: 0.65rem;
    left: 0.65rem;
    width: 2.1rem;
    height: 2.1rem;
}

.menu-item-card.menu-reels-slide > .menu-add-photo-btn:has(+ .menu-favorite-btn) {
}

.menu-item-card.menu-reels-slide > .menu-item-title-row {
    z-index: var(--ttms-z-reel-title-row, 5);
    flex-shrink: 0;
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    pointer-events: none;
}

.menu-item-card.menu-reels-slide > .menu-item-title-row > .menu-favorite-btn,
.menu-item-card.menu-reels-slide > .menu-item-title-row > .menu-item-actions,
.menu-item-card.menu-reels-slide > .menu-item-title-row > .menu-item-title {
    pointer-events: auto;
}

.menu-item-card.menu-reels-slide > .menu-item-title-row > .menu-favorite-btn {
    margin-top: 0;
}

.menu-item-card.menu-reels-slide > .menu-item-title-row .menu-item-title {
    flex: 0 1 auto;
    text-align: center;
}

.menu-item-card.menu-reels-slide .menu-item-smash-pass {
    flex: 1 1 0;
    min-height: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
    padding-top: 0.15rem;
    margin-block-end: .5em;
    container-type: size;
    container-name: item-smash-pass;
}

.menu-item-card.menu-reels-slide .menu-item-smash-pass .menu-smash-pass-card.is-local {
    touch-action: manipulation;
    cursor: pointer;
}

.menu-item-card.menu-reels-slide .menu-item-smash-pass .menu-smash-pass-card.is-local .menu-smash-pass-card__media {
    cursor: pointer;
}

.menu-item-card.menu-reels-slide .menu-item-smash-pass .menu-smash-pass__stack,
.menu-item-card.menu-reels-slide .menu-item-smash-pass .menu-smash-pass-card {
    touch-action: pan-y pinch-zoom;
}

.menu-item-card.menu-reels-slide:has(.menu-item-smash-pass) {
    padding-block: 0.5em 4.75em;
}

.menu-item-card.menu-reels-slide:has(.menu-item-smash-pass) .menu-item-row-top {
    flex: 0 0 auto;
    min-height: 0;
    max-height: none;
}

.menu-item-card.menu-reels-slide .menu-item-row-top {
    width: 100%;
    flex: 0 0 auto;
    min-height: 0;
    max-height: min(32%, 10rem);
    flex-direction: column;
    align-items: stretch;
    gap: 0.2rem;
    overflow: hidden;
}

.menu-item-card.menu-reels-slide .menu-item-image-link {
    flex: 1 1 0;
    min-height: 0;
    align-self: stretch;
    width: 100%;
    max-height: 58%;
    display: flex;
}

.menu-item-card.menu-reels-slide .menu-item-image {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: 100%;
    max-height: 100%;
    aspect-ratio: unset;
    background: color-mix(in srgb, var(--scheme-black) 28%, transparent);
    overflow: hidden;
}

.menu-item-card.menu-reels-slide .menu-item-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.menu-item-card.menu-reels-slide .menu-item-header-content {
    flex: 0 1 auto;
    min-height: 0;
    width: 100%;
    align-items: center;
    text-align: center;
    overflow: hidden;
    padding-inline: 2rem;
    padding-bottom: 0.35rem;
    gap: 0.25rem;
}

.menu-item-card.menu-reels-slide:not(.expanded) .menu-item-header-content::after {
    content: 'Tap to order';
    display: block;
    margin-top: 0.35em;
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    opacity: 0.62;
    color: var(--button-text-color1);
}

.menu-item-card.menu-reels-slide.expanded .menu-item-header-content::after,
.menu-item-card.menu-reels-slide[aria-expanded='true'] .menu-item-header-content::after {
    display: none;
}

.menu-item-card.menu-reels-slide .menu-item-title {
    margin: 0;
    width: 100%;
    text-align: center;
    padding: 0.25em 0;
    font-size: clamp(1rem, 3.8vw, 1.25rem);
    line-height: 1.2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.2rem;
    flex-shrink: 0;
}

.menu-item-card.menu-reels-slide .menu-item-title-text {
    display: block;
    width: 100%;
}

.menu-item-card.menu-reels-slide .menu-item-promo-badge {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: center;
    font-size: 0.68rem;
    flex-shrink: 0;
}

.menu-item-card.menu-reels-slide .menu-item-promo-badge .menu-item-promo-value {
    margin-left: 0;
}

.menu-item-card.menu-reels-slide .menu-item-row-middle {
    width: 100%;
    height: auto;
    flex: 0 1 auto;
    min-height: 0;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 0.5rem;
    padding-inline: 0;
    margin-block-end: .6em;
}

.menu-item-card.menu-reels-slide .menu-item-description {
    width: 100%;
    max-width: 22rem;
    text-align: center;
    font-size: 0.82rem;
    line-height: 1.35;
    flex: 0 1 auto;
    -webkit-line-clamp: 2;
}

.menu-item-card.menu-reels-slide .menu-item-description:empty {
    display: none;
    margin: 0;
    padding: 0;
    min-height: 0;
}

.menu-item-card.menu-reels-slide .menu-item-price {
    width: 100%;
    text-align: center;
    font-size: clamp(1.6rem, 3.6vw, 2.2rem);
    font-weight: 700;
    white-space: normal;
    flex-shrink: 0;
}

.menu-item-card.menu-reels-slide .menu-item-options {
    width: 100%;
    align-items: center;
    padding-inline: 0;
    flex-shrink: 0;
}

.menu-item-card.menu-reels-slide .menu-item-options .sizes,
.menu-item-card.menu-reels-slide .menu-item-options .flavours {
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.25rem;
    max-height: 2.4rem;
    overflow: hidden;
}

.menu-item-card.menu-reels-slide .menu-item-options .sizes li,
.menu-item-card.menu-reels-slide .menu-item-options .flavours li {
    font-size: 0.7rem;
    padding: 0.12em 0.45em;
}

.menu-item-card.menu-reels-slide .menu-item-options .flavours:not(:has(li)) {
    display: none;
}

.menu-item-card.menu-reels-slide:not(.menu-item-card--has-image) .menu-item-row-top {
    justify-content: center;
}

.menu-item-card.menu-reels-slide:not(.menu-item-card--has-image) .menu-item-header-content {
    flex: 1 1 auto;
    justify-content: center;
}

@media (max-height: 680px) {
    .menu-item-card.menu-reels-slide .menu-item-image-link {
        max-height: 52%;
    }

    .menu-item-card.menu-reels-slide:has(.menu-item-smash-pass) {
        padding-block: 0.4em 5em;
    }

    .menu-item-card.menu-reels-slide .menu-item-title {
    }

    .menu-item-card.menu-reels-slide .menu-item-description {
        -webkit-line-clamp: 1;
    }

    .menu-item-card.menu-reels-slide .menu-item-options .sizes,
    .menu-item-card.menu-reels-slide .menu-item-options .flavours {
        max-height: 2rem;
    }
}

#menublock .menublock-item.active .menublock-link,
#menublock .menublock-link.is-active {
    opacity: 1;
}
