/* Readable shared typography: local system fonts, no remote font requests. */
:root{--font-readable:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic UI","Yu Gothic","Meiryo",sans-serif}
html:lang(zh-CN){--font-readable:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
html{ -webkit-text-size-adjust:100%;text-size-adjust:100% }
body,body :is(h1,h2,h3,h4,h5,h6,p,a,span,strong,em,small,button,input,select,textarea,label,li,dt,dd,figcaption,summary,legend){font-family:var(--font-readable)!important}
body{font-size:16px;line-height:1.75}
p,li,dd{line-height:1.8}
h1,h2,h3,h4,h5,h6{font-weight:600!important;line-height:1.3!important;letter-spacing:.015em!important;text-wrap:balance}
:lang(ja) :is(h1,h2,h3,h4,h5,h6){letter-spacing:.03em!important;word-break:normal;overflow-wrap:anywhere}
button,input,select,textarea{font:inherit}
body :is(.eyebrow,.kicker,.meta,.citation-domain,figcaption,small){font-size:max(12px,.8rem)!important;line-height:1.65!important;letter-spacing:.06em!important}
body :is(p,.lead,.note,.menu-note){letter-spacing:.015em!important}
body :is(button,.button,.btn,nav a){font-weight:500;letter-spacing:.025em!important}
body em{font-style:normal}
@media(max-width:600px){body{font-size:16px}body :is(.lead,.hero-copy p){line-height:1.8!important}h1{overflow-wrap:anywhere}}

.reservation-entry{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:7px}.local-reservation-cta{grid-column:1 / -1;margin-bottom:24px}.local-reservation-cta .button{background:#b51f32;color:#fff}

/* Editorial serif headings, with readable sans-serif body and controls. */
:root{--font-editorial:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Hiragino Mincho ProN","YuMincho","Yu Mincho",serif}
html:lang(zh-CN){--font-editorial:"Iowan Old Style",Georgia,"Songti SC","STSong","SimSun",serif}
body :is(h1,h2,h3,h4,h5,h6),body :is(h1,h2,h3,h4,h5,h6) :is(span,strong,em,a){font-family:var(--font-editorial)!important;font-weight:400!important;letter-spacing:.025em!important;line-height:1.35!important}
body:lang(ja) :is(h1,h2,h3,h4,h5,h6),html:lang(ja) body :is(h1,h2,h3,h4,h5,h6){letter-spacing:.055em!important;line-height:1.5!important}
body .hero h1{letter-spacing:.015em!important;line-height:1.12!important}
body .pickup-copy strong{font-family:var(--font-editorial)!important;font-weight:400!important;letter-spacing:.025em!important;line-height:1.55!important}

.tablecheck-entry{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 18px;border:1px solid #b51f32;color:#b51f32!important}.tablecheck-hero{background:#b51f32!important;color:#fff!important;border:1px solid #b51f32!important;padding:14px 24px!important;text-decoration:none!important}.hero .tablecheck-hero{margin-top:12px}.tablecheck-entry:focus-visible,.tablecheck-hero:focus-visible{outline:3px solid #b51f32;outline-offset:3px}
