/* Niu Mama Kitchens: styles for site.js features and audit fixes */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[id]{scroll-margin-top:100px}
img{-webkit-user-drag:none;-webkit-touch-callout:none;user-select:none}

/* header phone + nav */
.nm-hd__tel{display:none;font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-size:.78rem;letter-spacing:.08em;color:rgb(43 37 32);text-decoration:none;white-space:nowrap}
.nm-hd__tel:hover{color:rgb(212 10 47)}
@media(min-width:1280px){.nm-hd__tel{display:inline-flex;align-items:center;min-height:44px}}
header nav[aria-label=Main] a{font-size:.8rem!important;letter-spacing:.1em!important}
[data-open-status]{cursor:help}

/* mobile menu */
.nm-mm{position:fixed;left:0;right:0;top:var(--nm-hd,81px);bottom:0;z-index:45;background:#fff;overflow:auto;padding:1rem 1.25rem 7rem;border-top:1px solid rgba(43,37,32,.13)}
.nm-mm[hidden]{display:none}
html.nm-mm-open{overflow:hidden}
.nm-mm a{display:block;padding:1rem 0;border-bottom:1px solid rgba(43,37,32,.13);font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-size:1.05rem;letter-spacing:.1em;text-transform:uppercase;color:rgb(43 37 32);text-decoration:none}
.nm-mm a.sub{padding:.8rem 0 .8rem 1rem;font-size:.9rem;letter-spacing:.06em;text-transform:none}
.nm-mm a[aria-current=page]{color:rgb(212 10 47)}
.nm-mm__btns{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.5rem}
.nm-mm__btns a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:.5rem;border:2px solid rgb(43 37 32);font-size:.8rem;text-align:center;letter-spacing:.08em}
.nm-mm__btns a.nm-mm__order{background:rgb(255 49 82);border-color:rgb(255 49 82);color:#fff}
.nm-mm__status{margin-top:1.25rem}

/* order picker */
.nm-op{position:fixed;inset:0;z-index:200;display:none}.nm-op.is-open{display:block}
.nm-op__bg{position:absolute;inset:0;background:rgba(43,37,32,.45)}
.nm-op__panel{position:absolute;right:16px;top:76px;width:360px;max-width:calc(100vw - 32px);background:#fff;border:1px solid rgba(43,37,32,.12);box-shadow:0 18px 40px rgba(0,0,0,.18);padding:18px}
@media(max-width:767px){.nm-op__panel{left:0;right:0;top:auto;bottom:0;width:auto;max-width:none;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}}
.nm-op__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.nm-op__h{font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:600;color:rgb(43 37 32);margin:0}
.nm-op__x{background:none;border:0;font-size:26px;line-height:1;width:44px;height:44px;cursor:pointer;color:rgb(43 37 32)}
.nm-op__a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:10px 12px;margin-top:8px;border:1px solid rgba(43,37,32,.12);text-decoration:none;color:rgb(43 37 32)}
.nm-op__a:hover,.nm-op__a:focus{border-color:rgb(255 49 82);outline:none}
.nm-op__n{display:block;font-weight:600;font-size:16px}.nm-op__s{display:block;font-size:14px;color:rgb(107 97 87)}
.nm-op__go{flex:none;background:rgb(255 49 82);color:#fff;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:8px 12px}
.nm-op__f{margin:12px 0 0;font-size:14px;color:rgb(107 97 87)}

/* mobile bottom bar: four buttons */
.nm-bar a{font-size:.66rem!important}

/* forms */
.nm-ct__msg{margin-top:12px;font-size:.95rem;min-height:1em}
.nm-ct__msg.is-ok{color:#1f7a3a}.nm-ct__msg.is-bad{color:#b3261e}.nm-ct__msg a{color:inherit;text-decoration:underline}
.nm-ct__err{margin-top:6px;font-size:.85rem;color:#b3261e}
[aria-invalid=true]{border-color:#b3261e!important}

/* Menus page tabs + category chips that wrap instead of running off screen */
.nm-m__panel[hidden]{display:none}
.nm-m__cats{flex-wrap:wrap!important;overflow:visible!important;white-space:normal!important}
.nm-m__cats a{min-height:40px;display:inline-flex;align-items:center}
.nm-m__tabs{flex-wrap:wrap!important;overflow:visible!important}
.nm-m__tabs button{min-height:44px}

/* tap targets */
.nm-cr__link,.nm-gal__nav button{min-height:44px;display:inline-flex;align-items:center}
.nm-gal__nav button{min-width:44px;justify-content:center}

/* restaurant pages: H1 subline + jump links */
.nm-h1sub{display:block;margin-top:.5rem;font-size:clamp(.95rem,1.6vw,1.15rem);letter-spacing:.08em;line-height:1.35;color:rgb(107 97 87);font-weight:500}
.nm-jump{background:#fff;border-bottom:1px solid rgba(43,37,32,.13)}
.nm-jump .shell{display:flex;gap:.25rem;overflow-x:auto}
.nm-jump a{display:inline-flex;align-items:center;min-height:48px;padding:0 1rem;font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:rgb(43 37 32);text-decoration:none;border-bottom:2px solid transparent}
.nm-jump a:hover,.nm-jump a:focus{border-bottom-color:rgb(255 49 82);color:rgb(212 10 47)}
#menu,#about,#photos{scroll-margin-top:150px}
.nm-ban{color:#fff;text-decoration:none;display:inline-block;padding:.35rem 0}.nm-ban:hover{text-decoration:underline}
.nm-r__gal>div{position:relative}
.nm-gal__cap{position:absolute;left:0;right:0;bottom:0;margin:0;padding:.5rem .75rem;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;font-size:.85rem;line-height:1.3}

/* Lao Ma wide card: photo fills the card height set by the text, no empty gap; crop shows the hands */
article[class*="sm:col-span-2"]>div:first-child{position:relative}
@media(min-width:640px){article[class*="sm:col-span-2"]>div:first-child{min-height:300px}article[class*="sm:col-span-2"]>div:first-child>img{position:absolute;inset:0}}
article img[src*="grandpa-folding"]{object-position:center 70%!important}
a.nm-tap{display:inline-flex;align-items:center;min-height:44px;padding:0 .25rem}

/* homepage: hero address, featured dishes, story, map photo */
.nm-hero__addr{margin-top:.75rem;font-size:.95rem;color:rgba(255,255,255,.85)}.nm-hero__addr a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.nm-fd{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:1024px){.nm-fd{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}}
.nm-fd__card{display:flex;flex-direction:column;border:1px solid rgba(43,37,32,.13);background:#fff}
.nm-fd__img{display:block;aspect-ratio:1/1;overflow:hidden;line-height:0}.nm-fd__img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.nm-fd__card:hover .nm-fd__img img{transform:scale(1.03)}
.nm-fd__body{display:flex;flex-direction:column;flex:1;padding:1rem}
.nm-fd__k{font-size:.85rem;color:rgb(107 97 87)}
.nm-fd__t{margin-top:.2rem;font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:1.05rem;line-height:1.25;color:rgb(43 37 32)}
.nm-fd__d{margin-top:.35rem;font-size:.92rem;line-height:1.45;color:rgb(107 97 87);flex:1}
.nm-fd__row{margin-top:.9rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.nm-fd__price{font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:1.15rem;color:rgb(43 37 32)}
.nm-fd__btn{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;background:rgb(255 49 82);color:#fff;font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.nm-fd__btn:hover{background:rgb(224 32 63)}
.nm-story{display:grid;gap:2rem;align-items:center}@media(min-width:768px){.nm-story{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:3.5rem}}
.nm-story__img{line-height:0;aspect-ratio:4/5;overflow:hidden}.nm-story__img img{width:100%;height:100%;object-fit:cover;object-position:center 60%}
.nm-map{position:relative;display:block;line-height:0;overflow:hidden;aspect-ratio:4/3}.nm-map img{width:100%;height:100%;object-fit:cover}
.nm-map__btn{position:absolute;left:1rem;bottom:1rem;line-height:1;background:#fff;color:rgb(43 37 32);padding:.85rem 1rem;font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}
.nm-visit__hours{margin-top:1rem;font-size:1rem;color:rgb(43 37 32)}

/* type: body text at least 16px, nav easier to read */
main p.text-sm,main li.text-sm,main .text-sm p,footer p.text-sm,footer li,footer address{font-size:1rem!important;line-height:1.6}
main p.text-xs,main li.text-xs{font-size:.875rem!important}
footer .text-sm a,footer ul a{font-size:1rem}
article[class*="sm:col-span-2"] .mt-auto{margin-top:1.5rem!important}

/* readability: bolder white text on the bright brand red */
[class~="bg-brand"],.nm-fd__btn,.nm-op__go,.nm-mm__btns a.nm-mm__order,.nm-sw__btn--red,.nm-ev__btn--red,.nm-m__order,.nm-pe__tags span.is-up,.nm-ev__tags span.is-up,.nm-sw__tags span.is-up,[class~="bg-brand"] a,[class~="bg-brand"] p{font-weight:600!important}

/* ===================== Redesign (Nov 2026 brief) ===================== */
:root{--nm-red:#ff3152;--nm-red-hi:#e0203f;--nm-red-text:#d40a2f;--nm-gold:#fed63c;--nm-ink:#2b2520;--nm-muted:#6b6157;--nm-line:rgba(43,37,32,.13);--nm-cream:#faf6ef;--nm-display:var(--font-display),"Helvetica Neue",Arial,sans-serif}
/* announcement bar: one compact line */
.nm-ann{background:var(--nm-red);color:#fff;text-align:center;padding:.4rem 1rem}
.nm-ann p{margin:0;font-family:var(--nm-display);font-size:.72rem!important;font-weight:600!important;letter-spacing:.1em;text-transform:uppercase;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nm-ann a{color:#fff;text-decoration:none;padding:0}.nm-ann a:hover{text-decoration:underline}
/* header: compact, logo contained */
.nm-hd{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--nm-line)}
.nm-hd__in{max-width:1240px;margin:0 auto;padding:0 1.25rem;height:64px;display:flex;align-items:center;gap:1.25rem}
@media(min-width:1024px){.nm-hd__in{height:76px;padding:0 2rem}}
.nm-hd__logo{flex:none;display:flex;align-items:center;height:100%;padding:6px 0}
.nm-hd__logo img{height:48px;width:auto}@media(min-width:1024px){.nm-hd__logo img{height:58px}}
.nm-hd__nav{display:none;margin-right:auto}@media(min-width:1024px){.nm-hd__nav{display:block}}
.nm-hd__nav>ul{display:flex;align-items:center;gap:.15rem;margin:0;padding:0;list-style:none}
.nm-hd__nav>ul>li>a{display:inline-flex;align-items:center;min-height:44px;padding:0 .7rem;font-family:var(--nm-display);font-size:.8rem!important;font-weight:500;letter-spacing:.06em!important;text-transform:uppercase;color:var(--nm-ink);text-decoration:none}
.nm-hd__nav>ul>li>a:hover,.nm-hd__nav>ul>li>a[aria-current=page]{color:var(--nm-red-text)}
.nm-hd__order{margin-left:auto;display:none!important}@media(min-width:640px){.nm-hd__order{display:inline-flex!important}}
@media(min-width:1024px){.nm-hd__order{margin-left:0}}
.nm-hd__tel{display:none}@media(min-width:1280px){.nm-hd__tel{display:inline-flex;align-items:center;min-height:44px;font-family:var(--nm-display);font-size:.82rem;letter-spacing:.04em;color:var(--nm-ink);text-decoration:none;white-space:nowrap}}
.nm-hd__burger{margin-left:auto;display:grid;place-content:center;width:44px;height:44px;border:0;background:none;cursor:pointer}
@media(min-width:640px){.nm-hd__burger{margin-left:0}}@media(min-width:1024px){.nm-hd__burger{display:none}}
.nm-hd__bars{display:flex;flex-direction:column;gap:5px}.nm-hd__bars span{display:block;width:24px;height:2px;background:var(--nm-ink)}
/* buttons: one filled style for ordering, one outlined style for browsing */
.nm-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:0 1.4rem;border:2px solid transparent;font-family:var(--nm-display);font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;text-align:center;line-height:1.2;transition:background .15s,border-color .15s,color .15s;cursor:pointer}
.nm-btn--primary{background:var(--nm-red);border-color:var(--nm-red);color:#fff}.nm-btn--primary:hover{background:var(--nm-red-hi);border-color:var(--nm-red-hi)}
.nm-btn--secondary{background:#fff;border-color:rgba(43,37,32,.4);color:var(--nm-ink)}.nm-btn--secondary:hover{border-color:var(--nm-red-text);color:var(--nm-red-text)}
.nm-btn--ghost{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}.nm-btn--ghost:hover{border-color:var(--nm-gold);color:var(--nm-gold)}
.nm-hd__order{min-height:42px;padding:0 1.1rem}
.nm-btns{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}.nm-btns--center{justify-content:center;margin-top:2.25rem}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--nm-gold);outline-offset:2px}
/* hero */
.nm-hero{position:relative;display:flex;align-items:flex-end;min-height:560px;overflow:hidden;background:#2b2520}
@media(min-width:768px){.nm-hero{min-height:clamp(520px,70vh,700px)}}
.nm-hero__bg,.nm-hero__bg picture,.nm-hero__bg img{position:absolute;inset:0;width:100%;height:100%}.nm-hero__bg img{object-fit:cover;object-position:center 42%}
.nm-hero__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(22,19,15,.92),rgba(22,19,15,.55) 55%,rgba(22,19,15,.35)),linear-gradient(to right,rgba(22,19,15,.75),transparent 70%)}
.nm-hero__in{position:relative;padding-top:4rem;padding-bottom:3rem}@media(min-width:768px){.nm-hero__in{padding-bottom:4.5rem}}
.nm-hero__eyebrow{font-family:var(--nm-display);font-size:.8rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--nm-gold)}
.nm-hero__h1{margin-top:.75rem;font-family:var(--nm-display);font-weight:700;font-size:clamp(2.6rem,6.4vw,4.8rem);line-height:1.02;letter-spacing:-.01em;color:#fff;max-width:14ch}
.nm-hero__sub{margin-top:1.1rem;max-width:42ch;font-size:1.15rem;line-height:1.55;color:rgba(255,255,255,.92)}
.nm-info{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;margin:1.75rem 0 0;padding:0;list-style:none;font-size:.95rem;color:rgba(255,255,255,.88)}
.nm-info a{color:#fff;text-decoration:underline;text-underline-offset:3px}
/* sections */
.nm-sec{padding:4rem 0}@media(min-width:1024px){.nm-sec{padding:5.5rem 0}}
.nm-sec--alt{background:var(--nm-cream)}.nm-sec--tight{padding-bottom:1rem}@media(min-width:1024px){.nm-sec--tight{padding-bottom:1.5rem}}
.shell{max-width:1200px!important}
.nm-head{max-width:46rem;margin-bottom:2rem}
.nm-h2{font-family:var(--nm-display);font-weight:600;font-size:clamp(1.75rem,3.2vw,2.5rem);line-height:1.15;letter-spacing:-.01em;color:var(--nm-ink);text-transform:none!important}
.nm-lede{margin-top:.75rem;font-size:1.1rem;line-height:1.6;color:var(--nm-muted)}
/* kitchen cards: equal weight, 3 + 2 centered */
.nm-kgrid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem}
.nm-kc{position:relative;display:flex;flex-direction:column;flex:0 0 100%;background:#fff;border:1px solid var(--nm-line);transition:box-shadow .2s,transform .2s}
@media(min-width:640px){.nm-kc{flex-basis:calc((100% - 1.5rem)/2)}}@media(min-width:1024px){.nm-kc{flex-basis:calc((100% - 3rem)/3)}}
.nm-kc:hover{box-shadow:0 14px 34px rgba(43,37,32,.12);transform:translateY(-2px)}
.nm-kc__img{aspect-ratio:4/3;overflow:hidden;background:#efe7da;line-height:0}.nm-kc__img img{width:100%;height:100%;object-fit:cover}
.nm-kc__body{display:flex;flex-direction:column;flex:1;padding:1.25rem 1.25rem 1.5rem}
.nm-kc__label{font-family:var(--nm-display);font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--nm-red-text)}
.nm-kc__t{margin-top:.35rem;font-family:var(--nm-display);font-weight:600;font-size:1.4rem;line-height:1.2}
.nm-kc__link{color:var(--nm-ink);text-decoration:none}.nm-kc__link::after{content:"";position:absolute;inset:0;z-index:1}
.nm-kc:focus-within{outline:3px solid var(--nm-gold);outline-offset:2px}.nm-kc__link:focus-visible{outline:none}
.nm-kc__d{margin-top:.5rem;font-size:1rem;line-height:1.55;color:var(--nm-muted);flex:1}
.nm-kc__btns{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}.nm-kc__btns .nm-btn{flex:1 1 auto;min-height:46px;padding:0 1rem;font-size:.74rem}
.nm-kc__note{position:relative;z-index:2;margin-top:.85rem;font-size:.88rem;line-height:1.5;color:var(--nm-muted)}
.nm-kc__note--hd{max-width:46rem;margin-top:1rem;padding:.75rem 1rem;border-left:3px solid var(--nm-gold);background:var(--nm-cream)}
/* popular dishes (smaller than kitchen cards) */
.nm-pgrid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:768px){.nm-pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1100px){.nm-pgrid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:1100px){.nm-pgrid--page{grid-template-columns:repeat(4,minmax(0,1fr))}}
.nm-pd{display:flex;flex-direction:column;background:#fff;border:1px solid var(--nm-line)}
.nm-pd__img{aspect-ratio:1/1;overflow:hidden;background:#efe7da;line-height:0}.nm-pd__img img{width:100%;height:100%;object-fit:cover}
.nm-pd__body{display:flex;flex-direction:column;flex:1;padding:.85rem .9rem 1rem}
.nm-pd__k{font-size:.82rem;color:var(--nm-muted)}
.nm-pd__t{margin-top:.15rem;font-family:var(--nm-display);font-weight:600;font-size:1rem;line-height:1.25;color:var(--nm-ink);text-transform:none}
.nm-pd__d{margin-top:.3rem;font-size:.9rem;line-height:1.45;color:var(--nm-muted);flex:1}
.nm-pd__row{margin-top:.8rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.nm-pd__price{font-family:var(--nm-display);font-weight:600;font-size:1.05rem;color:var(--nm-ink)}
.nm-pd__btn{display:inline-flex;align-items:center;min-height:44px;padding:0 .9rem;background:var(--nm-red);color:#fff;font-family:var(--nm-display);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}.nm-pd__btn:hover{background:var(--nm-red-hi)}
/* hall + people */
.nm-split{display:grid;gap:2rem;align-items:center}@media(min-width:768px){.nm-split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:3.5rem}}
.nm-split__img{aspect-ratio:4/5;overflow:hidden;background:#efe7da;line-height:0}.nm-split__img img{width:100%;height:100%;object-fit:cover}
.nm-ticks{margin:1.25rem 0 0;padding:0;list-style:none;display:grid;gap:.6rem}
.nm-ticks li{position:relative;padding-left:1.6rem;font-size:1.02rem;color:var(--nm-ink)}.nm-ticks li::before{content:"";position:absolute;left:0;top:.45em;width:.7rem;height:.7rem;border-radius:50%;background:var(--nm-gold)}
.nm-people{display:grid;gap:1.25rem}@media(min-width:900px){.nm-people{grid-template-columns:repeat(3,minmax(0,1fr))}}
.nm-pp{display:flex;flex-direction:column;background:#fff;border:1px solid var(--nm-line)}
.nm-pp__img{aspect-ratio:4/3;overflow:hidden;background:#efe7da;line-height:0}.nm-pp__img img{width:100%;height:100%;object-fit:cover;object-position:center 35%}
.nm-pp__body{padding:1.1rem 1.2rem 1.4rem}.nm-pp__body p:not(.nm-kc__label){margin-top:.4rem;font-size:1rem;line-height:1.55;color:var(--nm-muted)}
.nm-pp__t{margin-top:.3rem;font-family:var(--nm-display);font-weight:600;font-size:1.2rem;line-height:1.25;color:var(--nm-ink);text-transform:none}
.nm-link{display:inline-flex;align-items:center;min-height:44px;margin-top:.25rem;color:var(--nm-red-text);font-weight:600;text-decoration:underline;text-underline-offset:3px}
/* reviews + visit */
.nm-award{display:flex;align-items:center;gap:.6rem;margin-top:1rem;font-size:.85rem;color:var(--nm-muted);text-align:left}.nm-award img{width:48px;height:48px}
.nm-visit{display:grid;gap:2rem;align-items:center}@media(min-width:768px){.nm-visit{grid-template-columns:1fr 1fr;gap:3.5rem}}
.nm-visit__l{margin-top:1rem;font-size:1.05rem;line-height:1.6;color:var(--nm-ink)}.nm-visit__l a{color:var(--nm-red-text)}
.nm-visit__st{margin-top:1rem}
/* restaurant pages */
.nm-r__hero{height:auto!important;min-height:0!important;aspect-ratio:16/9;max-height:520px;background:#efe7da!important}
@media(min-width:768px){.nm-r__hero{aspect-ratio:21/9}}
.nm-jump .shell{justify-content:flex-start}
.nm-busan{display:grid;gap:1.25rem;margin:1.75rem 0;padding:1.25rem;background:var(--nm-cream);border:1px solid var(--nm-line)}
@media(min-width:640px){.nm-busan{grid-template-columns:200px 1fr;align-items:center}}
.nm-busan img{width:100%;aspect-ratio:3/4;object-fit:cover}.nm-busan p{margin-top:.5rem;font-size:1rem;line-height:1.6;color:var(--nm-muted)}
.nm-more{margin-top:1.5rem;border-top:1px solid var(--nm-line)}
.nm-more summary{display:inline-flex;align-items:center;gap:.5rem;min-height:48px;cursor:pointer;font-family:var(--nm-display);font-size:.82rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--nm-red-text);list-style:none}
.nm-more summary::-webkit-details-marker{display:none}.nm-more summary::after{content:"+";font-size:1.2rem}.nm-more[open] summary::after{content:"\2212"}
/* menus: sticky category bar with the kitchen's order link, search */
.nm-m__bar{position:sticky;top:var(--nm-hd-h,64px);z-index:20;display:flex;align-items:center;gap:.75rem;margin:1rem 0 0;padding:.5rem 0;background:#fff;border-bottom:1px solid var(--nm-line)}
.nm-m__bar .nm-m__cats{flex:1;min-width:0;display:flex;flex-wrap:nowrap!important;overflow-x:auto!important;white-space:nowrap!important;gap:.4rem;margin:0!important;padding:0!important;scrollbar-width:thin;-webkit-mask-image:linear-gradient(to right,#000 88%,transparent);mask-image:linear-gradient(to right,#000 88%,transparent)}
.nm-m__bar .nm-m__cats a{flex:none}
.nm-m__barname{flex:1;font-family:var(--nm-display);font-weight:600}
.nm-m__barorder{flex:none;display:inline-flex;align-items:center;min-height:40px;padding:0 1rem;background:var(--nm-red);color:#fff!important;font-family:var(--nm-display);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.nm-m__barorder:hover{background:var(--nm-red-hi)}
.nm-m__sec{scroll-margin-top:calc(var(--nm-hd-h,64px) + 72px)}
.nm-m__search{margin:1rem 0 .5rem}.nm-m__search input{width:100%;max-width:420px;min-height:46px;padding:.5rem .9rem;border:1px solid rgba(43,37,32,.35);font-size:16px;border-radius:0;background:#fff}
.nm-m__none{margin-top:.75rem;color:var(--nm-muted)}
.nm-m__where{margin-top:.6rem;font-size:.95rem;color:var(--nm-muted)}
.nm-m__pop{margin:1.25rem 0 .5rem}.nm-m__poph{font-family:var(--nm-display);font-weight:600;font-size:1.15rem;margin-bottom:.75rem;color:var(--nm-ink)}
.nm-m__price,.nm-m__row .nm-m__price{margin-left:auto;text-align:right;white-space:nowrap}
.nm-m__tabs--thumbs{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:.75rem;padding-bottom:.5rem;scroll-snap-type:x mandatory}
@media(min-width:1024px){.nm-m__tabs--thumbs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible!important}}
.nm-m__tabs--thumbs button{flex:0 0 150px;scroll-snap-align:start;display:flex!important;flex-direction:column;align-items:stretch!important;gap:0;padding:0!important;text-align:left;background:#fff!important;border:2px solid var(--nm-line)!important;color:var(--nm-ink)!important;text-transform:none!important;letter-spacing:0!important;min-height:0!important}
.nm-m__tabs--thumbs button img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.nm-m__tabn{padding:.55rem .65rem 0;font-family:var(--nm-display);font-weight:600;font-size:.9rem;line-height:1.25}
.nm-m__tabl{padding:.15rem .65rem .65rem;font-size:.78rem;color:var(--nm-muted);line-height:1.3}
.nm-m__tabs--thumbs button[aria-selected=true]{border-color:var(--nm-red)!important;box-shadow:inset 0 -4px 0 var(--nm-red)}
/* fewer all-caps headings */
main .h1,main .h2,main .h3,.nm-m__name,.nm-pe__title,.nm-sw__t,.nm-ev h1,.nm-ev h2,.nm-ev h3,.nm-seo__h2,.nm-seo__h3,.nm-m__cat,.nm-cf__title{text-transform:none!important;letter-spacing:-.005em!important}
main .h1{font-weight:700}
.nm-st{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--nm-display);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.nm-st__dot{width:8px;height:8px;border-radius:50%;background:var(--nm-gold);box-shadow:0 0 0 4px rgba(254,214,60,.3)}
.nm-st__dot--last,.nm-st__dot--closing{background:#ff8a3d;box-shadow:0 0 0 4px rgba(255,138,61,.3)}.nm-st__dot--closed{background:#9b9189;box-shadow:none}
.nm-st__l{font-weight:600;color:var(--nm-red-text)}.nm-st__l--photo{color:var(--nm-gold)}.nm-st__l--off{color:var(--nm-ink)}.nm-st__l--photo.nm-st__l--off{color:#fff}
.nm-st__s{color:var(--nm-muted)}.nm-st__s--photo{color:rgba(255,255,255,.8)}
.nm-kc__btns{display:grid;grid-template-columns:1fr 1fr}.nm-kc__btns .nm-btn{white-space:normal;letter-spacing:.06em;padding:0 .6rem;min-width:0}
.nm-kc__note{margin-top:.6rem}
@media(max-width:639px){.nm-kc__img{aspect-ratio:16/10}}
.nm-r__hero{aspect-ratio:auto!important;width:100%;height:clamp(220px,36vw,520px)!important}
.nm-m__tabs--thumbs button span{white-space:normal}
.nm-m--single .nm-m__head .nm-m__order{display:none}

.nm-hero__h1 span{display:block;white-space:nowrap}
/* ===== Hawker Nights (refined): subtle, elevated layer on the existing design ===== */
:root{--nm-ease:cubic-bezier(.23,1,.32,1);--nm-choc:#2a1b14;--nm-rice:#fbf6ee;--nm-r:14px}
::selection{background:#fed63c;color:#2a1b14}
/* buttons: softly rounded, press feedback */
.nm-btn,.nm-pd__btn,.nm-fd__btn,.nm-sw__btn,a.inline-flex.border-2{border-radius:10px!important}
.nm-btn{transition:background .15s ease,border-color .15s ease,color .15s ease,transform .16s var(--nm-ease)}
.nm-btn:active,.nm-sw__btn:active,.nm-pd__btn:active{transform:scale(.97)}
.nm-btn--dark{background:var(--nm-choc);border-color:var(--nm-choc);color:#fff}.nm-btn--dark:hover{background:#000;border-color:#000}
/* hero: same structure as live, quieter headline */
.nm-hero__h1{letter-spacing:-.02em!important}
.nm-hero__h1 .nm-hero__y{color:var(--nm-gold)}
/* quick kitchen bar right under the hero */
.nm-quick{background:#fff;border-bottom:1px solid var(--nm-line)}
.nm-quick__in{display:flex;align-items:stretch}
.nm-quick a{flex:1 1 0;display:flex;align-items:center;gap:.7rem;min-height:72px;padding:.8rem 1rem;color:var(--nm-ink);text-decoration:none;border-right:1px solid var(--nm-line);transition:background .15s ease}
.nm-quick a:first-child{border-left:1px solid var(--nm-line)}
.nm-quick__n{flex:none;font-family:var(--nm-display);font-size:.72rem;font-weight:600;letter-spacing:.08em;color:var(--nm-red-text)}
.nm-quick b{display:block;font-family:var(--nm-display);font-weight:600;font-size:.92rem;line-height:1.25}
.nm-quick small{display:block;margin-top:.1rem;font-size:.8rem;line-height:1.3;color:var(--nm-muted)}
.nm-quick .nm-quick__all{flex:0 0 auto;justify-content:center;font-family:var(--nm-display);font-weight:600;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--nm-red-text)}
@media(hover:hover) and (pointer:fine){.nm-quick a:hover{background:var(--nm-rice)}}
@media(max-width:1199px){.nm-quick__in{overflow-x:auto;scrollbar-width:none;padding:0}.nm-quick__in::-webkit-scrollbar{display:none}.nm-quick a{flex:0 0 auto;min-width:200px}.nm-quick a:first-child{border-left:0}}
/* section rhythm */
.nm-sec--rice{background:var(--nm-rice)}
.nm-head--row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;max-width:none}
.nm-head--row .nm-btn{flex:none}
/* kitchen cards: soft corners, gentle lift, stall number in the label */
.nm-kc{border-radius:var(--nm-r);overflow:hidden;transition:transform .2s var(--nm-ease),box-shadow .2s var(--nm-ease)}
.nm-kc__img img{transition:transform .35s var(--nm-ease)}
.nm-stall{color:var(--nm-muted);margin-right:.55rem;padding-right:.55rem;border-right:1px solid var(--nm-line)}
@media(hover:hover) and (pointer:fine){.nm-kc:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(42,27,20,.10)}.nm-kc:hover .nm-kc__img img{transform:scale(1.03)}}
/* popular dishes */
.nm-tray{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.25rem}
.nm-tc{display:flex;flex-direction:column;transition:transform .2s var(--nm-ease)}
.nm-tc__img{aspect-ratio:1;overflow:hidden;border-radius:var(--nm-r);background:#efe7da;line-height:0}.nm-tc__img img{width:100%;height:100%;object-fit:cover;transition:transform .35s var(--nm-ease)}
.nm-tc__k{margin:.85rem 0 0;font-family:var(--nm-display);font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--nm-red-text)}
.nm-tc__row{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem;margin-top:.3rem;flex:1}
.nm-tc__t{font-family:var(--nm-display);font-weight:600;font-size:1rem;line-height:1.3;color:var(--nm-ink);text-transform:none}
.nm-tc__p{flex:none;font-family:var(--nm-display);font-weight:600;font-size:.95rem;color:var(--nm-ink);font-variant-numeric:tabular-nums}
.nm-tc__a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:.92rem;color:var(--nm-red-text);text-decoration:underline;text-underline-offset:3px}
@media(hover:hover) and (pointer:fine){.nm-tc:hover .nm-tc__img img{transform:scale(1.03)}}
/* after-dark interlude: quiet night-market note */
.nm-night{position:relative;overflow:hidden;background:var(--nm-choc);color:#fff;padding:4.5rem 0}
@media(min-width:1024px){.nm-night{padding:5.5rem 0}}
.nm-lights{position:absolute;left:0;top:0;width:100%;height:46px;opacity:.55}
.nm-night__in{display:grid;gap:2.5rem;align-items:center}@media(min-width:900px){.nm-night__in{grid-template-columns:1.2fr .8fr;gap:4rem}}
.nm-night__h{font-family:var(--nm-display);font-weight:600;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.1;letter-spacing:-.02em;color:#fff;margin:0}
.nm-night__h span{color:var(--nm-gold)}
.nm-night__p{margin-top:1rem;max-width:34rem;font-size:1.08rem;line-height:1.65;color:#e6d8c5}
.nm-night__ph{border-radius:var(--nm-r);overflow:hidden;line-height:0;box-shadow:0 24px 48px rgba(0,0,0,.35)}
.nm-night__ph img{width:100%;height:auto;aspect-ratio:1200/633;object-fit:cover}
/* event: calm cream, real flyer */
.nm-sec--event{background:var(--nm-rice)}
.nm-sec--event .nm-sw__poster img{border-radius:var(--nm-r);box-shadow:0 18px 36px rgba(42,27,20,.16)}
/* hall: one row, side by side */
.nm-hall{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.nm-hall img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--nm-r);display:block}
/* people: three equal cards */
.nm-pp{border-radius:var(--nm-r);overflow:hidden}
.nm-pp__img{aspect-ratio:4/5}
/* footer: night chocolate */
.nm-ft{background:var(--nm-choc)!important;border-top:0!important;color:#e9dccb}
.nm-ft .text-muted,.nm-ft a.text-muted,.nm-ft address{color:#e2d3bf!important}
.nm-ft a.text-ink,.nm-ft .text-ink,.nm-ft address a,.nm-ft address a.text-ink{color:#fff!important}
.nm-ft h2.text-brand,.nm-ft a.text-brand,.nm-ft address a.text-brand{color:var(--nm-gold)!important}
.nm-ft .border-line,.nm-ft .border-t{border-color:rgba(255,255,255,.14)!important}
.nm-ft a:hover{color:var(--nm-gold)!important}
.nm-ft__hours{color:#e2d3bf!important}
.nm-ft img[src*="niu-mama-320"]{background:#fff;border-radius:12px;padding:6px;height:4rem!important}
/* phones */
@media(max-width:899px){
 .nm-tray,.nm-hall{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -1.25rem;padding:0 1.25rem .75rem;gap:.9rem;scrollbar-width:none}
 .nm-tray::-webkit-scrollbar,.nm-hall::-webkit-scrollbar{display:none}
 .nm-tc{flex:0 0 66%;scroll-snap-align:start}.nm-hall img{flex:0 0 66%;width:66%;scroll-snap-align:start}
}
@media(prefers-reduced-motion:reduce){
 .nm-kc,.nm-tc,.nm-kc__img img,.nm-tc__img img,.nm-btn{transition:none!important}
 .nm-kc:hover,.nm-tc:hover,.nm-kc:hover .nm-kc__img img,.nm-tc:hover .nm-tc__img img,.nm-btn:active{transform:none!important}
}
.nm-quick small{display:none}.nm-quick a{min-height:60px;justify-content:center;white-space:nowrap}.nm-quick b{font-size:.9rem}
@media(max-width:1199px){.nm-quick a{min-width:0;padding:.8rem 1.1rem}}
/* ---- elevated playful: soft display serif + hand-drawn swashes ---- */
@font-face{font-family:"Fraunces Soft";font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fraunces-soft-display.woff2) format("woff2")}
:root{--nm-serif:"Fraunces Soft",Georgia,"Times New Roman",serif}
.nm-hero__h1,.nm-h2,.nm-night__h,.nm-kc__t,.nm-pp__t{font-family:var(--nm-serif)!important;font-weight:600!important;letter-spacing:-.015em!important}
.nm-hero__h1{font-size:clamp(3rem,7vw,5.6rem)!important;line-height:1!important}
.nm-h2{font-size:clamp(2rem,3.8vw,3rem)!important;line-height:1.08!important}
.nm-kc__t{font-size:1.55rem!important}.nm-pp__t{font-size:1.35rem!important}
.nm-night__h{font-size:clamp(2.4rem,5vw,4rem)!important;line-height:1.05!important}
.nm-swash{position:relative;white-space:nowrap;padding-bottom:.08em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 24' preserveAspectRatio='none'%3E%3Cpath d='M4 16 C 60 6, 120 4, 180 9 S 270 15, 296 7' fill='none' stroke='%23fed63c' stroke-width='7' stroke-linecap='round'/%3E%3C/svg%3E") left 100%/100% .32em no-repeat}
.nm-swash--red{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 24' preserveAspectRatio='none'%3E%3Cpath d='M4 16 C 60 6, 120 4, 180 9 S 270 15, 296 7' fill='none' stroke='%23ff3152' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E")}
.nm-lights{opacity:.9}
.nm-hero__h1 .nm-hero__y .nm-swash{display:inline;padding-bottom:.1em}
.nm-sw__t{font-family:var(--nm-serif)!important;font-weight:600!important;letter-spacing:-.01em}
/* calm hand-off from the dark interlude into the event */
.nm-night+.nm-sec{padding-top:4.5rem}
.nm-lede{text-wrap:pretty}.nm-h2,.nm-hero__h1,.nm-night__h{text-wrap:balance}.nm-kc__d,.nm-night__p,.nm-hero__sub{text-wrap:pretty}
#reviews.nm-sec{background:#fff!important}
/* reviews: compact so they don't compete with food discovery */
#reviews.nm-sec{padding:3.25rem 0!important}
#reviews .mt-8:last-child{display:none}
#reviews blockquote,#reviews .border-dashed{padding:1.25rem!important}
.nm-rq{display:-webkit-box;-webkit-line-clamp:12;-webkit-box-orient:vertical;overflow:hidden}
.nm-rq.is-open{display:block;-webkit-line-clamp:unset}
.nm-rq__more{align-self:flex-start;margin-top:.35rem;padding:0;min-height:36px;border:0;background:none;color:var(--nm-red-text);font:inherit;font-size:.85rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
/* reviews: one row, scroll right for more */
#reviews .nm-rvhead{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;max-width:none}
.nm-rvrow{display:flex!important;gap:1rem!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:.9rem;scrollbar-width:thin;scrollbar-color:#cdbfad transparent;overscroll-behavior-x:contain}
.nm-rvrow::-webkit-scrollbar{height:6px}.nm-rvrow::-webkit-scrollbar-thumb{background:#cdbfad;border-radius:6px}
.nm-rvrow>*{flex:0 0 calc((100% - 2rem)/3);scroll-snap-align:start}
@media(max-width:899px){.nm-rvrow>*{flex-basis:calc((100% - 1rem)/2)}}
@media(max-width:639px){.nm-rvrow>*{flex-basis:85%}}
.nm-rvrow:focus-visible{outline:3px solid var(--nm-gold);outline-offset:4px}
.nm-rvnav{display:flex;gap:.5rem;flex:none}
.nm-rvnav__b{width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(42,27,20,.25);background:#fff;color:var(--nm-ink);font-size:1.05rem;cursor:pointer;transition:border-color .15s ease,color .15s ease,transform .16s var(--nm-ease)}
.nm-rvnav__b:active{transform:scale(.95)}.nm-rvnav__b:disabled{opacity:.35;cursor:default}
@media(hover:hover) and (pointer:fine){.nm-rvnav__b:not(:disabled):hover{border-color:var(--nm-red-text);color:var(--nm-red-text)}}
@media(prefers-reduced-motion:reduce){.nm-rvrow{scroll-behavior:auto}}
.nm-rq{flex:0 0 auto!important}
#reviews .nm-rvrow footer{margin-top:auto!important;padding-top:1.1rem}
@media(min-width:900px){.nm-rvrow>*{flex-basis:calc((100% - 3rem)/3.25)}}
[hidden]{display:none!important}
/* ===== Nov 5: tighter spacing, no empty gaps ===== */
.nm-sec{padding:2rem 0!important}
@media(min-width:1024px){.nm-sec{padding:3.25rem 0!important}}
main section.py-14{padding-top:2rem!important;padding-bottom:2rem!important}
@media(min-width:640px){main section.sm\:py-20{padding-top:2.75rem!important;padding-bottom:2.75rem!important}}
@media(min-width:1024px){main section.lg\:py-24{padding-top:3.5rem!important;padding-bottom:3.5rem!important}}
.nm-head{margin-bottom:1.5rem!important}
main .mb-9,main .mb-10{margin-bottom:1.5rem!important}
.nm-night+.nm-sec{padding-top:inherit}
/* kitchens: 5 across desktop, 2 tablet, swipe on phone */
.nm-kgrid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem!important}
.nm-kgrid .nm-kc{flex:none!important;min-width:0}
.nm-kgrid .nm-kc__body{padding:.9rem .95rem 1.05rem}
.nm-kgrid .nm-kc__t{font-size:1.25rem!important}
.nm-kgrid .nm-kc__d{font-size:.92rem}
.nm-kgrid .nm-kc__label{font-size:.62rem;line-height:1.5}
.nm-kgrid .nm-kc__btns{flex-direction:column;gap:.45rem;margin-top:1rem}
.nm-kgrid .nm-kc__btns .nm-btn{width:100%;min-height:42px;font-size:.68rem}
.nm-kgrid .nm-kc__note{font-size:.78rem}
@media(max-width:1099px){.nm-kgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.nm-kgrid .nm-kc__btns{flex-direction:row}.nm-kgrid .nm-kc__btns .nm-btn{width:auto;flex:1 1 0}}
@media(max-width:639px){.nm-kgrid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -1.25rem;padding:0 1.25rem .5rem;scrollbar-width:none}.nm-kgrid::-webkit-scrollbar{display:none}.nm-kgrid .nm-kc{flex:0 0 80%!important;scroll-snap-align:start}}
/* event: compact horizontal banner */
.nm-sw__grid{display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;gap:1.75rem!important;align-items:center!important}
.nm-sw__poster{max-width:220px}.nm-sw__poster img{width:100%;height:auto}
.nm-sw{padding:1.25rem!important}
@media(max-width:639px){.nm-sw__grid{grid-template-columns:110px minmax(0,1fr)!important;gap:1rem!important;align-items:start!important}.nm-sw__btns{flex-direction:column;align-items:stretch}}
/* visit + hall photos as one section */
.nm-hall--visit{margin-top:2rem}
/* menus: categories flow into two even columns */
.nm-m__body{display:block!important;column-count:2;column-gap:4rem}
.nm-m__body>.nm-m__sec{break-inside:avoid;margin:0 0 2.25rem}
@media(max-width:767px){.nm-m__body{column-count:1}}
/* popular: sized to the number of items, shorter photos */
.nm-pgrid--page{grid-template-columns:repeat(var(--n,4),minmax(0,1fr))!important}
.nm-pgrid--page .nm-pd__img{aspect-ratio:auto;height:180px}
@media(max-width:767px){.nm-pgrid--page{grid-template-columns:repeat(2,minmax(0,1fr))!important}.nm-pgrid--page .nm-pd__img{height:140px}}
/* restaurant photo grid: 4 photos, one row / 2x2 */
.nm-r__gal{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1rem}
@media(max-width:767px){.nm-r__gal{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
/* catering: sidebar stays in view next to the long form */
@media(min-width:1024px){main aside.space-y-8{position:sticky;top:96px;align-self:start}}
/* mobile menu: hamburger becomes an X when open */
.nm-hd__bars span{transition:transform .2s var(--nm-ease),opacity .15s ease}
.nm-hd__burger[aria-expanded="true"] .nm-hd__bars span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nm-hd__burger[aria-expanded="true"] .nm-hd__bars span:nth-child(2){opacity:0}
.nm-hd__burger[aria-expanded="true"] .nm-hd__bars span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nm-kgrid .nm-kc__btns{display:grid!important;grid-template-columns:1fr!important}
@media(max-width:1099px){.nm-kgrid .nm-kc__btns{grid-template-columns:1fr 1fr!important}}
@media(max-width:639px){.nm-kgrid .nm-kc__btns{grid-template-columns:1fr 1fr!important}}
/* ===== mobile: less scrolling ===== */
@media(max-width:639px){
 /* kitchens: one swipe row, ~2.3 cards visible */
 .nm-kgrid .nm-kc{flex:0 0 44%!important}
 .nm-kgrid .nm-kc__img{aspect-ratio:1/1}
 .nm-kgrid .nm-kc__body{padding:.65rem .65rem .8rem}
 .nm-kgrid .nm-kc__label{font-size:.55rem;letter-spacing:.08em}
 .nm-kgrid .nm-stall{display:none}
 .nm-kgrid .nm-kc__t{font-size:1.02rem!important;margin-top:.2rem}
 .nm-kgrid .nm-kc__d{font-size:.8rem;line-height:1.4;margin-top:.3rem}
 .nm-kgrid .nm-kc__note{display:none}
 .nm-kgrid .nm-kc__btns{grid-template-columns:1fr!important;gap:.35rem;margin-top:.7rem}
 .nm-kgrid .nm-kc__btns .nm-btn{min-height:38px;font-size:.6rem;padding:0 .4rem;letter-spacing:.06em}
 /* home event: bigger flyer, shorter card */
 .nm-sw--home .nm-sw__grid{grid-template-columns:44% minmax(0,1fr)!important;gap:.9rem!important;align-items:center!important}
 .nm-sw--home .nm-sw__poster{max-width:none}
 .nm-sw--home .nm-sw__p,.nm-sw--home .nm-sw__tags span:not(.is-up){display:none}
 .nm-sw--home .nm-sw__t{font-size:1.2rem!important;margin-top:.35rem}
 .nm-sw--home .nm-sw__d{font-size:.68rem;line-height:1.5;margin-top:.3rem}
 .nm-sw--home .nm-sw__btns{margin-top:.75rem;gap:.4rem}
 .nm-sw--home .nm-sw__btn{min-height:40px;font-size:.62rem;padding:0 .5rem;letter-spacing:.06em}
 .nm-sw--home.nm-sw{padding:.75rem!important}
 #event .mt-8{margin-top:1rem!important}
}
@media(max-width:639px){.nm-kgrid{flex-wrap:nowrap!important;justify-content:flex-start!important}}
@media(max-width:639px){
 .nm-sw--home .nm-sw__grid{grid-template-columns:50% minmax(0,1fr)!important}
 .nm-sw--home .nm-sw__body{padding:0!important}
 .nm-sw--home .nm-sw__btn{letter-spacing:.04em;font-size:.6rem;min-height:38px}
 #event .mt-8 a{min-height:40px!important;padding:.55rem 1rem!important;font-size:.68rem!important}
}
/* ===== consistency pass: one shape, plain labels ===== */
/* one shape: every card, photo box, tag and outlined box gets the same soft corners */
.nm-sw,#reviews blockquote,#reviews .border-dashed,.nm-pe__card,.nm-pd,.nm-map,.nm-map img,.nm-r__gal img,.nm-r__gal>div,.nm-m__tabs a,.nm-m__tabs button,.nm-m__tab,main .border.border-line,main details.border{border-radius:var(--nm-r)!important;overflow:hidden}
#reviews .border-dashed{border-style:solid!important}
.nm-map__btn{border-radius:10px}
.nm-sw__tags span,.nm-pe__tags span,.nm-ev__tags span{border-radius:999px!important;text-transform:none!important;letter-spacing:.01em!important;font-size:.72rem!important;padding:.2rem .65rem!important}
/* plain, readable labels instead of tiny spaced-out capitals */
.nm-kc__label,.nm-tc__k,.nm-pp__body .nm-kc__label{text-transform:none!important;letter-spacing:0!important;font-size:.85rem!important;font-weight:500!important;color:var(--nm-muted)!important;font-family:inherit!important}
.nm-sw__d,.nm-pe__date{text-transform:none!important;letter-spacing:0!important;font-size:.95rem!important;font-weight:600;font-family:inherit!important}
.nm-st{text-transform:none!important;letter-spacing:0!important;font-size:.9rem!important;font-family:inherit!important}
.nm-st b,.nm-st strong{font-weight:600}
/* kitchen cards: whole card opens the kitchen, one Order button */
.nm-kc__btns{grid-template-columns:1fr!important}
.nm-kgrid .nm-kc__label{font-size:.8rem!important}
@media(max-width:1099px){.nm-kgrid .nm-kc__btns{grid-template-columns:1fr!important}}
@media(max-width:639px){.nm-kgrid .nm-kc__btns{grid-template-columns:1fr!important}.nm-kgrid .nm-kc__label{font-size:.72rem!important}.nm-sw__d{font-size:.8rem!important}}
.nm-hall img[src*="neon-sign"]{object-position:30% 50%}
/* ===== menu item photos (from Toast) ===== */
.nm-m__li--img{display:grid!important;grid-template-columns:64px 1fr;column-gap:14px;align-items:center}
.nm-m__li--img>.nm-m__img{grid-row:1/span 2;width:64px;height:64px;object-fit:cover;border-radius:10px;background:var(--nm-rice,#fbf6ee);display:block}
.nm-m__li--img>.nm-m__row,.nm-m__li--img>.nm-m__desc{grid-column:2}
.nm-m__li--img>.nm-m__desc{margin-top:2px}
@media(max-width:639px){.nm-m__li--img{grid-template-columns:56px 1fr;column-gap:12px}.nm-m__li--img>.nm-m__img{width:56px;height:56px}}
/* ===== food guides + FAQ hub ===== */
.nm-g__hero{background:var(--nm-rice);padding-block:2.25rem 2.5rem!important}
.nm-g__hgrid{display:grid;grid-template-columns:1fr;gap:1.75rem;align-items:center}
@media(min-width:900px){.nm-g__hgrid{grid-template-columns:1.25fr .75fr;gap:3rem}}
.nm-g__crumb{font-size:.85rem;color:var(--nm-muted);margin-bottom:1rem}.nm-g__crumb a{color:var(--nm-muted)}
.nm-g__eyebrow{font-size:.9rem;font-weight:600;color:var(--nm-red-text);margin-bottom:.5rem}
.nm-g__h1{font-family:var(--nm-serif);font-weight:650;font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.04;letter-spacing:-.015em;color:var(--nm-ink)}
.nm-g__lede{margin-top:1rem;font-size:1.12rem;line-height:1.6;color:var(--nm-muted);max-width:60ch;text-wrap:pretty}
.nm-g__meta{margin-top:1.25rem;font-size:.85rem;color:var(--nm-muted)}
.nm-g__himg img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:var(--nm-r);display:block}
@media(max-width:899px){.nm-g__himg img{aspect-ratio:4/3}}
.nm-g__main{padding-block:2.5rem 3rem!important}
.nm-g__wrap{display:grid;grid-template-columns:1fr;gap:2.5rem}
@media(min-width:1000px){.nm-g__wrap{grid-template-columns:minmax(0,1fr) 300px;gap:4rem}.nm-g__side{position:sticky;top:110px;align-self:start}}
.nm-g__art{max-width:760px}
.nm-g__sec+.nm-g__sec{margin-top:2.5rem}
.nm-g__h{font-family:var(--nm-serif);font-weight:650;font-size:clamp(1.5rem,2.4vw,1.9rem);line-height:1.15;color:var(--nm-ink);margin-bottom:.9rem}
.nm-g__art p{line-height:1.7;margin-top:.75rem;color:var(--nm-ink)}
.nm-g__art .nm-link,.nm-g__card .nm-link{display:inline;min-height:0;margin:0}
.nm-g__ul{list-style:disc;padding-left:1.25rem;line-height:1.7}.nm-g__ul li+li{margin-top:.45rem}
.nm-g__menu{border-top:1px solid rgba(42,27,20,.14)}
.nm-g__menu li{padding:.7rem 0;border-bottom:1px solid rgba(42,27,20,.1)}
.nm-g__mr{display:flex;align-items:baseline;gap:.6rem}
.nm-g__mi{font-weight:600}.nm-g__md{flex:1;border-bottom:1px dotted rgba(42,27,20,.3);transform:translateY(-.25em)}.nm-g__mp{font-variant-numeric:tabular-nums;white-space:nowrap}
.nm-g__mx{margin-top:.15rem!important;font-size:.92rem;color:var(--nm-muted)!important;line-height:1.5!important}
.nm-g__note{font-size:.85rem;color:var(--nm-muted)!important}
.nm-g__faq details{border-bottom:1px solid rgba(42,27,20,.12)}
.nm-g__faq details:first-child{border-top:1px solid rgba(42,27,20,.12)}
.nm-g__faq summary{cursor:pointer;list-style:none;padding:1rem 2rem 1rem 0;font-weight:600;position:relative;line-height:1.4}
.nm-g__faq summary::-webkit-details-marker{display:none}
.nm-g__faq summary::after{content:"+";position:absolute;right:.25rem;top:.85rem;font-size:1.25rem;color:var(--nm-red-text);transition:transform .2s var(--nm-ease)}
.nm-g__faq details[open] summary::after{transform:rotate(45deg)}
.nm-g__faq details p{margin:0 0 1rem!important;color:var(--nm-muted)!important}
.nm-g__more{margin-top:.75rem}
.nm-g__card{background:var(--nm-rice);border-radius:var(--nm-r);padding:1.5rem}
.nm-g__card p{font-size:.95rem;line-height:1.6;margin-bottom:.9rem}
.nm-g__ct{font-family:var(--nm-serif);font-weight:650;font-size:1.25rem}
.nm-g__award{font-size:.85rem!important;color:var(--nm-muted);border-left:3px solid #fed63c;padding-left:.75rem}
.nm-g__rel{margin-top:1.75rem}.nm-g__rel .nm-g__h{font-size:1.2rem}
.nm-g__rel ul{display:grid;gap:.25rem}.nm-g__rel a{color:var(--nm-ink);font-weight:500;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding:.35rem 0}
.nm-ft__guides{display:flex;flex-wrap:wrap;gap:.35rem 1rem;padding-block:1rem 1.25rem;font-size:.82rem;color:#e2d3bf}
.nm-ft__guides span{font-weight:600;color:#fed63c}.nm-ft__guides a{color:#e2d3bf;text-decoration:none}.nm-ft__guides a:hover{color:#fff;text-decoration:underline}
.nm-ft__guides{row-gap:0!important;padding-top:0!important;margin-top:-1.5rem}
.nm-ft__guides a,.nm-ft__guides span{min-height:0!important;display:inline-block;padding:.4rem 0;line-height:1.3}
@media(max-width:639px){.nm-ft__guides{margin-top:-1rem}}
footer.nm-ft .shell.nm-ft__guides{gap:0 1.25rem!important;padding-bottom:1.5rem!important}
/* ===== dietary labels ===== */
.nm-diet__set{display:inline-flex;gap:4px;margin-left:8px;vertical-align:2px;flex:0 0 auto}
.nm-diet{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.03em;line-height:1;padding:3px 5px 2px;border-radius:5px;text-decoration:none;border:1px solid currentColor;cursor:help}
.nm-diet--vegan{color:#1f7a4a}.nm-diet--vegetarian{color:#4f6e14}.nm-diet--pescatarian{color:#1c5f8a}.nm-diet--gf{color:#8a5a00}
.nm-diet__key{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.85rem;color:var(--nm-muted);margin:0 0 1.25rem;padding:.75rem 1rem;background:var(--nm-rice);border-radius:10px;column-span:all}
.nm-diet__key .nm-diet{cursor:default}
.nm-diet__note{flex-basis:100%;font-size:.78rem;line-height:1.45}
/* ===== all-kitchens menu search ===== */
.nm-qs{margin:0 0 1.75rem;padding:1.25rem;background:var(--nm-rice);border-radius:var(--nm-r);scroll-margin-top:110px}
.nm-qs__label{display:block;font-family:var(--nm-serif);font-weight:650;font-size:1.3rem;color:var(--nm-ink);margin-bottom:.7rem}
.nm-qs__box{display:flex;align-items:center;gap:.6rem;background:#fff;border:1.5px solid rgba(42,27,20,.22);border-radius:12px;padding:0 .9rem;color:var(--nm-muted);transition:border-color .15s}
.nm-qs__box:focus-within{border-color:#ff3152}
.nm-qs__box input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:1.05rem;padding:.85rem 0;color:var(--nm-ink)}
.nm-qs__box input::-webkit-search-cancel-button{display:none}
.nm-qs__clear{border:0;background:none;font:inherit;font-size:.85rem;font-weight:600;color:var(--nm-red-text);cursor:pointer;padding:.4rem}
.nm-qs__chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}
.nm-qs__chip{font:inherit;font-size:.9rem;font-weight:600;border:1.5px solid rgba(42,27,20,.2);background:#fff;color:var(--nm-ink);border-radius:999px;padding:.45rem .95rem;min-height:40px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.nm-qs__chip[aria-pressed="true"]{background:var(--nm-choc);border-color:var(--nm-choc);color:#fff}
.nm-qs__chip:focus-visible,.nm-qs__clear:focus-visible{outline:2px solid #ff3152;outline-offset:2px}
.nm-qs__status{margin:.8rem 0 0;font-size:.9rem;color:var(--nm-muted)}
.nm-qs__status:empty{display:none}
.nm-qs__results{margin-top:1rem;display:grid;gap:1.25rem}
.nm-qs__group{background:#fff;border-radius:12px;padding:1rem 1.1rem}
.nm-qs__gh{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(42,27,20,.14);padding-bottom:.6rem;margin-bottom:.25rem}
.nm-qs__gh h3{font-family:var(--nm-serif);font-weight:650;font-size:1.2rem;margin:0}
.nm-qs__order{font-size:.85rem;font-weight:700;color:#fff;background:#ff3152;border-radius:10px;padding:.5rem .9rem;text-decoration:none;white-space:nowrap}
.nm-qs__list li{padding:.75rem 0;border-bottom:1px solid rgba(42,27,20,.08)}
.nm-qs__list li:last-child{border-bottom:0}
.nm-hd__search{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;color:var(--nm-ink);flex:0 0 auto}
.nm-hd__search:hover{background:var(--nm-rice)}
@media(max-width:1023px){.nm-hd__search{margin-left:auto}}
.nm-qs__box input,.nm-qs__box input:focus,.nm-qs__box input:focus-visible{border:0!important;outline:none!important;box-shadow:none!important;border-radius:0!important;background:transparent!important;min-height:0!important;height:auto!important}
@media(max-width:1023px){.nm-hd__burger{margin-left:2px!important}.nm-hd__search{margin-left:auto!important}}
/* ===== slime bar cards ===== */
.nm-ev__priceline{margin-top:.75rem;font-weight:600;color:var(--ink,#2a1b14)}
.nm-ev__products--slime{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;align-items:stretch}
.nm-ev__prod--slime{padding:0!important;overflow:hidden;border-radius:var(--nm-r,14px)}
.nm-ev__pimg{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.nm-ev__pbody{display:flex;flex-direction:column;flex:1;padding:1.1rem 1.2rem 1.25rem}
.nm-ev__lvl{align-self:flex-start;margin:0 0 .5rem!important;font-size:.75rem!important;font-weight:700;letter-spacing:.04em;padding:.2rem .6rem;border-radius:999px;flex:0 0 auto!important;line-height:1.4!important}
.nm-ev__lvl--beginner{background:#e2f4e8;color:#1f6b40!important}
.nm-ev__lvl--advanced{background:#ffe1e6;color:#b0122d!important}
.nm-ev__prod--slime h3{text-transform:none!important;letter-spacing:0!important;font-size:1.15rem!important}
.nm-ev__walk{margin-top:.2rem!important;font-size:.85rem!important;flex:0 0 auto!important}
.nm-ev__prod--slime p{flex:0 0 auto!important}
.nm-ev__inc{margin:.75rem 0 0;padding-left:1.1rem;list-style:disc;font-size:.88rem;line-height:1.55;color:var(--muted,#6b6157)}
.nm-ev__level{margin-top:.75rem!important;font-size:.85rem!important}
.nm-ev__prod--slime .nm-ev__btn{margin-top:auto!important}
.nm-ev__prod--slime .nm-ev__level{margin-bottom:1.1rem!important}
.nm-ev__slimeinfo{display:grid;gap:2rem;margin-top:2.25rem}
@media(min-width:900px){.nm-ev__slimeinfo{grid-template-columns:1fr 1fr;gap:3rem}}
.nm-ev__slimeinfo h3{font-weight:700;font-size:1.15rem;color:var(--ink,#2a1b14)}
.nm-ev__slimeinfo .nm-ev__steps{margin-top:1rem}
.nm-ev__dl{margin-top:1rem;display:grid;grid-template-columns:max-content 1fr;gap:.55rem 1rem;font-size:.95rem;line-height:1.5}
.nm-ev__dl dt{font-weight:700;color:var(--ink,#2a1b14)}
.nm-ev__dl dd{margin:0;color:var(--muted,#6b6157)}
@media(max-width:480px){.nm-ev__dl{grid-template-columns:1fr;gap:.1rem}.nm-ev__dl dd{margin-bottom:.5rem}}
@media(max-width:639px){
.nm-ev__products--slime{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:.75rem;margin-right:calc(-1 * max(16px,env(safe-area-inset-right,0px)));padding-right:16px;padding-bottom:.5rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.nm-ev__products--slime::-webkit-scrollbar{display:none}
.nm-ev__products--slime>.nm-ev__prod{flex:0 0 80%;scroll-snap-align:start}
.nm-ev__pimg{aspect-ratio:1/1}
.nm-ev__products--slime:after{content:"";flex:0 0 1px}
}
.nm-ev__slimeflyer{margin:2rem auto 0;max-width:480px}.nm-ev__slimeflyer a{display:block;line-height:0;border:1px solid rgba(43,37,32,.12)}.nm-ev__slimeflyer img{width:100%;height:auto}
.nm-ev__perk{margin:1rem 0 .4rem;font-weight:600;font-size:1rem;color:rgb(43 37 32)}
.nm-ev__prod--slime .nm-ev__btn{white-space:nowrap}
@media(max-width:400px){.nm-ban{font-size:10px!important;letter-spacing:.08em!important}}

/* ---------- Phase 1 audit fixes (Nov 11, 2026) ---------- */

/* 1. Button contrast: white text on #ff3152 is 3.6:1 (fails WCAG AA).
   Filled red controls use the brand's deeper red #e0203f (4.7:1); hover goes to #d40a2f (5.4:1).
   #ff3152 stays for decoration (swashes, borders, focus accents). */
.nm-btn--primary{background:var(--nm-red-hi);border-color:var(--nm-red-hi)}
.nm-btn--primary:hover{background:var(--nm-red-text);border-color:var(--nm-red-text)}
.nm-ann{background:var(--nm-red-hi)}
.nm-pd__btn,.nm-m__barorder,.nm-qs__order,.nm-mm__order{background:var(--nm-red-hi)}
.nm-pd__btn:hover,.nm-m__barorder:hover,.nm-qs__order:hover,.nm-mm__order:hover{background:var(--nm-red-text)}
.bg-brand,.is-up,.nm-sw__btn--red,.nm-cf__btn,.nm-m__order,.nm-ev__btn--red{background-color:#e0203f!important;border-color:#e0203f}
.hover\:bg-brandHi:hover,.nm-sw__btn--red:hover,.nm-cf__btn:hover,.nm-m__order:hover,.nm-ev__btn--red:hover{background-color:#d40a2f!important;border-color:#d40a2f}
.nm-mm__btns a.nm-mm__order,.nm-fd__btn,.nm-op__go{background:#e0203f!important;border-color:#e0203f!important}
.nm-hd__order{min-height:44px}

/* 2. Hero layout shift: the Open now badge is filled in by JavaScript after the page shows.
   Give it its own line with its height reserved, so nothing below it moves when it appears. */
.nm-info li:has(> [data-open-status]){flex-basis:100%}
[data-open-status]{display:inline-flex;min-height:1.4rem;align-items:center}

/* 4. Tap targets: 44px minimum for controls people tap on phones. */
.nm-qs__chip,.nm-m__cats a,.nm-m__barorder,.nm-qs__order,.nm-pd__btn{min-height:44px}
.nm-qs__order{display:inline-flex;align-items:center}
.nm-rq__more{min-height:44px}
.nm-sw__btn{min-height:44px!important}
.nm-kc__btns .nm-btn{min-height:44px!important;font-size:.72rem!important;line-height:1.15}
@media(max-width:767px){.nm-kc__btns .nm-btn{font-size:.68rem!important;letter-spacing:.04em}}
.nm-ban{display:inline-block;padding:.3rem 0}
.nm-ft__legal a{display:inline-flex;align-items:center;min-height:24px}
.nm-fd__btn:hover,.nm-op__a:hover .nm-op__go{background:#d40a2f!important}

/* ---------- Phase 2 audit changes (Nov 11, 2026) ---------- */

/* 1. One type system. Headings: Fraunces. Everything else: Instrument Sans. Montserrat is gone.
   --font-display (used by nav, buttons and labels) now points at the body sans. */
:root{--font-display:"Instrument Sans"}
h1,h2,h3,.h1,.h2,.h3,.nm-h2,.nm-hero__h1,.nm-kc__t,.nm-pp__t,.nm-seo__h3,.nm-m__head h2{font-family:var(--nm-serif)!important;font-weight:600!important;letter-spacing:-.015em!important;text-transform:none!important}
.h1,main h1{line-height:1.08}
.nm-h1sub{font-family:var(--font-sans),system-ui,sans-serif;font-size:clamp(1.05rem,1.6vw,1.25rem)!important;font-weight:500;color:var(--nm-ink)}

/* 2. No tracked uppercase. Labels, nav and buttons read in sentence case at a readable size.
   The Squishy Wonderland event page keeps its own poster-style design. */
*:not(.nm-ev,.nm-ev *){text-transform:none!important}
:is(a,button,label,legend,summary,th,dt,small,span,p,.nm-st):not(.nm-ev *,h1 *,h2 *,h3 *){letter-spacing:normal!important}
.nm-hd__nav>ul>li>a{font-size:.98rem!important;font-weight:500}
.nm-dd__menu a span{font-size:.98rem!important}
.nm-dd__all{font-size:.9rem!important}
.nm-ban{font-size:.86rem!important;font-weight:600}
.nm-btn,.nm-cf__btn,.nm-sw__btn,.nm-mm__order,.nm-mm__call,[class~="border-2"][class~="font-display"]{font-size:.98rem!important;font-weight:600!important}
.nm-pd__btn,.nm-m__barorder,.nm-m__order,.nm-qs__order,.nm-map__btn{font-size:.92rem!important;font-weight:600!important}
.nm-kgrid .nm-kc__btns .nm-btn{font-size:.9rem!important}
footer h2,footer [class~="font-display"]{font-size:.95rem!important}
footer h2{font-family:var(--nm-serif)!important;color:var(--nm-gold)}
label[class~="font-display"],legend{font-size:.92rem!important;font-weight:600}
.nm-bar a{font-size:.78rem!important;font-weight:600}
.nm-st{font-size:.9rem}
.nm-kc__label{font-size:.85rem!important}

/* 3. Button hierarchy: the hero and page-level actions stay filled red.
   Repeated per-card Order buttons become outlined, so one red action leads each screen. */
.nm-kgrid .nm-kc__btns .nm-btn--primary{background:#fff!important;border-color:var(--nm-red-text)!important;color:var(--nm-red-text)!important}
.nm-kgrid .nm-kc__btns .nm-btn--primary:hover{background:var(--nm-red-text)!important;color:#fff!important}

/* 4. About: the stories read at full size and full contrast; the photo stays beside them. */
.nm-seo--about{font-size:1.1rem!important;color:var(--nm-ink)!important;line-height:1.7}
@media(min-width:1024px){.nm-seo--about+div{position:sticky;top:110px}}

/* 5. Tablet: five kitchens as 3 + 2 instead of 2 + 2 + 1. */
@media(min-width:640px) and (max-width:1099px){
 .nm-kgrid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
 .nm-kgrid>.nm-kc{grid-column:span 2}
 .nm-kgrid>.nm-kc:nth-last-child(-n+2){grid-column:span 3}
}

/* Small section labels (Address, Hours, Faster options…) stay in the body sans, readable and quiet. */
h2[class~="font-display"],h3[class~="font-display"]{font-family:var(--font-sans),system-ui,sans-serif!important;font-size:.95rem!important;font-weight:700!important;letter-spacing:normal!important;color:var(--nm-ink)!important}
footer h2[class~="font-display"],footer h2{font-family:var(--nm-serif)!important;font-size:1rem!important;color:var(--nm-gold)!important}
.nm-seo--about p,.nm-seo--about li{color:var(--nm-ink)!important}
.nm-seo--about h3{font-size:1.35rem!important;margin-top:1.75rem}

/* No coloured side borders on callouts: a soft tinted box instead. */
[class~="border-l-2"],.nm-kc__note--hd{border-left:0!important;border-radius:10px}
/* the phone quick-action bar was removed (phase4.py); no bottom padding needed */
.nm-bar{display:none!important}
/* ---- order picker in the new look (Nov 12): cream sheet, kitchen plate circles, pill buttons ---- */
.nm-op__bg{background:rgba(20,14,10,.55)!important}
.nm-op__panel{background:#fbf1df!important;border:0!important;border-radius:24px!important;box-shadow:0 30px 60px -20px rgba(20,14,10,.5)!important;padding:22px 20px 20px!important;width:420px!important;font-family:'Instrument Sans',system-ui,sans-serif}
@media (max-width:640px){.nm-op__panel{border-radius:24px 24px 0 0!important;width:auto!important;padding:22px 16px calc(20px + env(safe-area-inset-bottom))!important}}
.nm-op__h{font-family:'Fraunces Soft',Georgia,serif!important;font-size:26px!important;font-weight:700!important;letter-spacing:-.01em;color:#2b2520!important}
.nm-op__x{border-radius:50%!important;color:#2b2520!important}
@media (hover:hover){.nm-op__x:hover{background:rgba(43,37,32,.08)!important}}
.nm-op__a{display:flex!important;align-items:center;gap:14px!important;min-height:76px!important;padding:10px 12px!important;margin-top:10px!important;border:1px solid rgba(43,37,32,.1)!important;border-radius:18px!important;background:#fff7ea!important;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s ease,border-color .2s ease}
.nm-op__a:hover,.nm-op__a:focus-visible{border-color:var(--k,#2b2520)!important;transform:translateY(-2px);box-shadow:0 14px 22px -14px rgba(43,37,32,.35)}
.nm-op__a:focus-visible{outline:3px solid #fed63c!important;outline-offset:2px}
.nm-op__img{flex:none;width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--k,#e0203f)}
.nm-op__t{flex:1;min-width:0}
.nm-op__n{font-family:'Fraunces Soft',Georgia,serif;font-size:19px!important;font-weight:700!important;color:#2b2520}
.nm-op__s{font-size:14px!important;color:#5f554c!important;line-height:1.35}
.nm-op__go{border-radius:999px!important;padding:0 16px!important;min-height:38px;display:inline-flex!important;align-items:center;text-transform:none!important;letter-spacing:0!important;font-size:15px!important}
.nm-op__f{font-size:15px!important;color:#4f453d!important;line-height:1.5}
@media (prefers-reduced-motion:no-preference){.nm-op.is-open .nm-op__panel{animation:nm-op-in .35s cubic-bezier(.22,1,.36,1) both}}
@keyframes nm-op-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* ---- phone menu in the new look ---- */
.nm-mm{background:#fbf1df!important;border-top:0!important;padding:1.25rem 20px 3rem!important}
.nm-mm a{font-family:'Fraunces Soft',Georgia,serif!important;font-size:22px!important;font-weight:600;letter-spacing:-.01em!important;text-transform:none!important;color:#2b2520!important;border-color:rgba(43,37,32,.1)!important}
.nm-mm a.sub{font-family:'Instrument Sans',system-ui,sans-serif!important;font-size:17px!important;font-weight:500;letter-spacing:0!important}
.nm-mm a[aria-current=page]{color:#c4122f!important}
.nm-mm__btns a{border-radius:999px!important;font-family:'Instrument Sans',system-ui,sans-serif!important;font-size:16px!important;font-weight:600!important;letter-spacing:0!important;border-width:1.5px!important}
.nm-mm__btns a.nm-mm__order{background:#e0203f!important;border-color:#e0203f!important;color:#fff!important}
