
.nh-page main a:not([class]){color:#c4122f}.nh-page main a:not([class]):hover{color:#8f0d22}
@media (max-width:1240px) and (min-width:961px){.nh-plates{gap:16px!important}.nh-badge{font-size:16px!important;padding:0 10px!important;min-height:40px!important}.nh-pdesc{font-size:14px!important}.nh-pbtn{font-size:14px!important;padding:0 14px!important;min-height:44px!important}}
@media (max-width:960px){.nh-plates{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px!important;padding-bottom:8px}.nh-plates>div{flex:0 0 260px;scroll-snap-align:center}}
@media (max-width:820px){.nh-stitle{font-size:40px!important}.nh-hero{flex-direction:column!important}.nh-hero-p{font-size:18px!important}.nh-hero a{white-space:nowrap}.nh-th{font-size:44px!important}.nh-tp{font-size:18px!important}.nh-nav{display:none!important}.nh-plates{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px!important;padding-bottom:8px}.nh-plates>div{flex:0 0 72%;scroll-snap-align:center}.nh-mama{height:170px!important;margin-top:-20px!important;margin-bottom:-36px!important}.nh-fam{font-size:40px!important}.nh-story{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}.nh-next{grid-template-columns:minmax(0,1fr)!important}.nh-marquee{--nh-fw:170px!important}}

/* ---- motion: CSS handles hover/press on controls, GSAP handles everything that moves on scroll ---- */
:root{--nh-ease:cubic-bezier(.22,1,.36,1)}
.nh-red,.nh-light,.nh-dark,.nh-tel,button,.nh-nav a,header img{transition:transform .3s var(--nh-ease),box-shadow .3s var(--nh-ease),background-color .25s var(--nh-ease),color .25s var(--nh-ease),border-color .25s var(--nh-ease),background-size .35s var(--nh-ease),filter .3s var(--nh-ease)}
.nh-red:active,.nh-light:active,.nh-dark:active,button:active{transform:scale(.96)!important;transition-duration:.1s}
a:focus-visible,button:focus-visible{outline:3px solid #fed63c;outline-offset:3px}
.nh-nav a{background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;padding-bottom:4px}
.nh-marquee{--nh-fw:230px}
@keyframes nh-marq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:no-preference){.nh-track{animation:nh-marq 48s linear infinite}.nh-marquee:hover .nh-track,.nh-marquee:focus-within .nh-track{animation-play-state:paused}}
@media (prefers-reduced-motion:reduce){.nh-marquee{overflow-x:auto!important}.nh-track figure[aria-hidden]{display:none}}
.nh-flink{transition:color .25s var(--nh-ease)}
@media (hover:hover){.nh-flink:hover{color:#ff3152!important}}
@media (max-width:900px){.nh-foot{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:40px 28px!important}.nh-foot>div:first-child{grid-column:1/-1}}
@media (max-width:520px){.nh-foot{grid-template-columns:minmax(0,1fr)!important}}
@media (max-width:600px){.nh-thead{flex-direction:column!important;align-items:flex-end!important;gap:0!important}.nh-thead>div{align-self:stretch}.nh-th{font-size:42px!important;white-space:nowrap}.nh-mama{height:150px!important;margin-top:-8px!important;margin-bottom:-34px!important}.nh-vh{font-size:48px!important}.nh-vgrid{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}}
@media (max-width:600px){.nh-status{display:none!important}}
.nh-story>.nh-sphoto{order:2}
@media (max-width:820px){.nh-story>.nh-sphoto{order:0}}
.nh-sphoto>span{transition:background-color .9s ease,color .9s ease}
.nh-dot::before,.nh-dot::after{content:"";position:absolute;left:50%;top:50%;width:var(--w);height:10px;border-radius:999px}
.nh-dot::before{background:rgba(43,37,32,0.22);transform:translate(-50%,-50%)}
.nh-dot::after{background:#2b2520;transform-origin:left center;transform:translate(-50%,-50%) scaleX(0)}
.nh-dot[data-on="1"]::after{transform:translate(-50%,-50%) scaleX(1)}
@media (prefers-reduced-motion:no-preference){.nh-dot[data-on="1"]::after{animation:nh-fill2 7.5s linear both}.nh-story[data-paused="1"] .nh-dot[data-on="1"]::after{animation:none}}
@keyframes nh-fill2{from{transform:translate(-50%,-50%) scaleX(0)}to{transform:translate(-50%,-50%) scaleX(1)}}
.nh-toggle{transition:background-color .25s ease,color .25s ease,transform .25s ease}
@media (hover:hover){.nh-toggle:hover{background-color:rgba(43,37,32,0.14)!important;color:#2b2520!important}.nh-hero .nh-toggle:hover,#visit .nh-toggle:hover{background-color:rgba(20,14,10,0.7)!important;color:#fff!important}}
.nh-plates>div{cursor:pointer}
.nh-nav a:hover,.nh-nav a:focus-visible{color:#ff3152!important}
.nh-plates>div>img{width:calc(100% - 24px)!important;max-width:240px}
@keyframes nh-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (hover:hover){
.nh-red:hover{background-color:#c8102e!important;transform:translateY(-2px);box-shadow:0 14px 26px -12px rgba(224,32,63,.8)}
.nh-light:hover,.nh-dark:hover{transform:translateY(-2px)}
.nh-light:hover{background-color:#fbf1df!important;color:#2b2520!important;border-color:#fbf1df!important}
.nh-dark:hover{background-color:#2b2520!important;color:#fff7ea!important}
.nh-tel:hover{color:#fed63c!important}
.nh-nav a:hover{background-size:100% 2px}
header a:hover img{transform:rotate(-5deg) scale(1.05)}
button[aria-label$="story"]:hover{transform:scale(1.08)}
.nh-dot:hover{filter:brightness(.7)}
button[aria-label^="Pause"]:hover{transform:scale(1.08);background:rgba(20,14,10,.8)!important}
}
/* ---- real-site additions ---- */
.nh-page{background:#fbf1df;color:#2b2520}
.nh-page .nh-shell{background:#fbf1df;color:#2b2520;font-family:'Instrument Sans',system-ui,sans-serif}
.nh-burger{display:none;margin-left:12px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(20,14,10,.42);color:#fff;align-items:center;justify-content:center;cursor:pointer;flex:none}
.nh-bars{display:grid;gap:4px;width:18px}.nh-bars span{display:block;height:2px;border-radius:2px;background:currentColor}
@media (max-width:820px){.nh-burger{display:inline-flex}.nh-top>a.nh-red{min-height:40px!important;padding:0 16px!important;font-size:15px}}
.nh-top{z-index:30!important}
.nh-tel{padding-left:0!important}@media (min-width:640px){.nh-tel{padding-left:10px!important}}
.nm-mm{z-index:60}
/* reveal on scroll: starts visible without JS, hidden only once home.js is running */
@media (prefers-reduced-motion:no-preference){
.nh-js .nh-rv{opacity:0;translate:0 18px;transition:opacity .9s cubic-bezier(.22,1,.36,1),translate .9s cubic-bezier(.22,1,.36,1)}
.nh-js .nh-rv.is-in,.nh-done .nh-rv{opacity:1;translate:0 0}
.nh-js .nh-rise{overflow:clip;padding-bottom:.14em;margin-bottom:-.14em}
.nh-js .nh-rise>span{display:inline-block;translate:0 108%;transition:translate 1.1s cubic-bezier(.16,1,.3,1)}
.nh-js .nh-rise.is-in>span,.nh-done .nh-rise>span{translate:0 0}
.nh-line{display:block;overflow:clip;padding-bottom:.1em;margin-bottom:-.1em}
.nh-line>span{display:inline-block;animation:nh-up 1.15s cubic-bezier(.16,1,.3,1) both}
.nh-line+.nh-line>span{animation-delay:.12s}
.nh-hero-p,.nh-hero-p+div{animation:nh-fade 1s .4s cubic-bezier(.22,1,.36,1) both}
.nh-hero-p+div{animation-delay:.52s}
@keyframes nh-up{from{translate:0 108%}to{translate:0 0}}
@keyframes nh-fade{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
.nh-plates>div>img{transition:transform .6s cubic-bezier(.22,1,.36,1),box-shadow .6s cubic-bezier(.22,1,.36,1)}
.nh-next figure,.nh-past figure{transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease}
.nh-stitle,.nh-stext,.nh-skit{transition:opacity .5s ease}
}
@media (hover:hover){
.nh-plates>div:hover>img{transform:translateY(-6px) rotate(8deg)}
.nh-next figure:hover,.nh-past figure:hover{transform:rotate(0deg) translateY(-4px)!important;box-shadow:0 22px 30px -10px rgba(43,37,32,.32)!important}
}
.nh-fadeout{opacity:0!important}
.nh-sphoto img{transition:opacity 2s cubic-bezier(.45,0,.55,1)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nh-page .nm-bar{z-index:40}

/* conversion additions (Nov 12): rating under the hero buttons, menus link under the plates, catering line in Visit us */
.nh-rating{display:inline-flex;align-items:center;gap:8px;margin-top:20px;min-height:32px;font-size:16px;font-weight:600;color:rgba(255,255,255,.92)!important;text-decoration:none}
.nh-rating span{color:rgba(255,255,255,.7);font-weight:400}
@media (hover:hover){.nh-rating:hover{color:#fed63c!important}}
@media (prefers-reduced-motion:no-preference){.nh-rating{animation:nh-fade 1s .64s cubic-bezier(.22,1,.36,1) both}}
.nh-more{margin:44px 0 0;text-align:center}
.nh-more a{display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border-radius:999px;background:#fbf1df;color:#2b2520!important;font-weight:600;font-size:17px;text-decoration:none;transition:transform .25s cubic-bezier(.22,1,.36,1),background-color .25s ease}
@media (hover:hover){.nh-more a:hover{background:#fed63c;transform:translateY(-2px)}}
.nh-cater{margin:22px 0 0;font-size:17px;color:#e3d6c0}
.nh-cater a{color:#fed63c!important;font-weight:600}
