@font-face{font-family:DM Sans;src:url('/fonts/dm-sans.woff2') format('woff2');font-style:normal;font-weight:100 1000;font-display:swap}
:root{--bg:#fafaf8;--surface:#fff;--soft:#f0f0eb;--text:#202320;--muted:#61675f;--border:#dedfd7;--accent:#b63825;--accent-soft:#f7ece7;--on-accent:#fff;--shadow:0 8px 28px #20232008;--radius:10px;--header-height:82px;color-scheme:light dark}
@media(prefers-color-scheme:dark){:root{--bg:#151916;--surface:#1b211c;--soft:#242c25;--text:#edf0e9;--muted:#b0b9ae;--border:#3b443b;--accent:#ff9982;--accent-soft:#372a23;--on-accent:#1b211c;--shadow:none}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,select{cursor:pointer}button{color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{border:0}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.04em}h2{font-size:clamp(1.65rem,2.3vw,2.15rem);font-weight:650}h3{font-weight:650}.icon{width:22px;height:22px;flex:none;fill:currentColor;vertical-align:middle}.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}[hidden]{display:none!important}.skip{position:fixed;top:10px;left:12px;z-index:5;background:var(--accent);color:var(--on-accent);padding:12px 18px;transform:translateY(-150%)}.skip:focus{transform:translateY(0)}
/* Layers: header 2, mobile menu 3, skip link 5. */
.site-header{position:relative;z-index:2;border-bottom:1px solid var(--border);background:var(--bg)}.header-inner{max-width:1360px;min-height:var(--header-height);padding:0 42px;margin:auto;display:flex;align-items:center;gap:50px}.wordmark{font-size:2.1rem;font-weight:850;letter-spacing:-.095em;line-height:1;color:var(--accent);display:inline-block;padding-right:3px}.wordmark-dot{letter-spacing:-.03em}.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:45px;font-size:.9rem;font-weight:550}.desktop-nav a{padding:28px 0;position:relative;white-space:nowrap}.desktop-nav a:hover,.desktop-nav [aria-current]{color:var(--accent)}.desktop-nav [aria-current]::after{position:absolute;content:'';height:2px;background:var(--accent);bottom:-1px;left:0;right:0}.header-search{margin-left:auto;display:flex;align-items:center;gap:9px;font-size:.85rem;color:var(--muted);white-space:nowrap}.header-search:hover{color:var(--accent)}.header-search .icon{width:18px}.menu-toggle{display:none;background:transparent;padding:12px}.mobile-nav{border-top:1px solid var(--border);padding:12px 24px 20px}.mobile-nav a{display:block;padding:13px 0;font-weight:600}
.page-shell{max-width:1360px;margin:0 auto;padding:0 42px}.directory-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;align-items:center;padding:34px 0 32px}.eyebrow{font-size:.72rem;font-weight:750;letter-spacing:.12em;line-height:1.5;color:var(--accent)}h1{font-size:clamp(2.9rem,4.4vw,4.3rem);line-height:1.01;font-weight:720;letter-spacing:-.065em}.hero-copy h1{margin:13px 0 17px}.hero-copy>p:last-child{max-width:460px;color:var(--muted);font-size:1rem;line-height:1.55}.hero-photo{margin:0;position:relative;align-self:center}.hero-photo>a{display:block;overflow:hidden;border-radius:var(--radius);height:230px;background:var(--soft)}.hero-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.hero-photo:hover img{transform:scale(1.025)}.hero-photo figcaption a{display:flex;gap:8px;align-items:center;margin-top:9px;font-size:.8rem;font-weight:650}.hero-photo figcaption span{color:var(--muted);font-weight:450;margin-left:auto}.hero-photo figcaption .icon{width:16px;height:16px;margin-left:6px}.search-form{display:grid;grid-template-columns:1fr 238px 175px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:7px;box-shadow:var(--shadow);scroll-margin-top:25px}.search-input{display:flex;gap:12px;align-items:center;padding:8px 16px}.search-input>.icon{color:var(--accent)}.search-input input{width:100%;min-width:0;border:0;background:transparent;color:var(--text);outline-offset:2px;font-size:.95rem;height:38px}.search-input input::placeholder{color:var(--muted);opacity:1}.region-select{display:flex;align-items:center;border-left:1px solid var(--border);margin:7px 15px 7px 0;padding:0 14px;gap:8px}.region-select .icon{width:19px;color:var(--muted)}.region-select select{background:transparent;color:var(--text);width:100%;border:0;font-size:.9rem;min-height:38px}.region-select option,.sort-control option{background:var(--surface);color:var(--text)}.search-button,.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--accent);color:var(--on-accent);font-weight:650;font-size:.9rem;padding:14px 20px;border-radius:7px;transition:opacity .2s,transform .2s}.button:hover,.search-button:hover{opacity:.88}.button:active,.search-button:active{transform:scale(.98)}.button .icon,.search-button .icon{width:19px}.area-tabs{display:flex;align-items:center;gap:31px;border-bottom:1px solid var(--border);margin-top:14px;min-height:66px;overflow-x:auto;scrollbar-width:thin}.area-tabs>a{position:relative;padding:21px 0 22px;white-space:nowrap;display:flex;align-items:center;font-size:.92rem;font-weight:550;gap:6px}.area-tabs [aria-current]{color:var(--accent);font-weight:750}.area-tabs [aria-current]::after{content:'';position:absolute;bottom:0;left:0;right:0;background:var(--accent);height:2px}.tab-detail{font-size:.75rem;color:var(--muted)}.area-tabs a:hover{color:var(--accent)}
.directory-layout{display:grid;grid-template-columns:207px 1fr;gap:42px;padding-top:34px}.directory-sidebar{align-self:start;padding-top:5px}.sidebar-heading h2{font-size:.94rem;letter-spacing:-.01em;font-weight:700;margin-bottom:18px}.cuisine-nav{display:flex;flex-direction:column;gap:5px}.cuisine-nav a{display:flex;gap:10px;align-items:center;min-height:45px;padding:10px 12px;border-radius:7px;color:var(--muted);font-size:.88rem}.cuisine-nav a>.icon{width:19px;height:19px}.cuisine-nav a:hover{color:var(--accent);background:var(--accent-soft)}.cuisine-nav [aria-current]{color:var(--accent);font-weight:700;background:var(--accent-soft)}.nav-count{margin-left:auto;opacity:1;font-size:.75rem}.sidebar-note{border-top:1px solid var(--border);padding-top:25px;margin:30px 12px 0}.sidebar-note>.icon{width:29px;height:29px;color:var(--accent);margin-bottom:13px}.sidebar-note h3{font-size:.96rem;letter-spacing:-.02em;line-height:1.4}.sidebar-note p{font-size:.84rem;color:var(--muted);line-height:1.6;margin:9px 0 18px}.sidebar-note>a{font-size:.8rem;font-weight:650;display:flex;align-items:center;gap:10px}.sidebar-note>a .icon{width:16px}.results-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.results-header h2{font-size:1.7rem;margin-top:4px;letter-spacing:-.045em}.results-header .eyebrow{font-size:.65rem}.result-count{font-size:.8rem;color:var(--muted);margin-top:7px}.sort-control{font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:5px;white-space:nowrap}.sort-control select{border:0;background:transparent;color:var(--text);font-size:.8rem;padding:9px 1px;font-weight:550;max-width:150px}.restaurant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 22px}.restaurant-card{min-width:0}.card-image{display:block;aspect-ratio:1.5;overflow:hidden;border-radius:var(--radius);background:var(--soft)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.restaurant-card:hover .card-image img{transform:scale(1.04)}.card-image .logo-photo,.hero-photo .logo-photo,.detail-photo .logo-photo{object-fit:contain;background:#f2ece2}.card-meta{display:flex;justify-content:space-between;gap:8px;color:var(--accent);text-transform:uppercase;letter-spacing:.075em;font-size:.63rem;font-weight:750;margin-top:14px}.card-meta>span:last-child{color:var(--muted)}.restaurant-card h3{font-size:1.23rem;margin:7px 0 8px;line-height:1.2;letter-spacing:-.035em}.restaurant-card h3>a{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:7px;position:relative;padding-right:19px;min-height:24px}.restaurant-card h3>a:hover{color:var(--accent)}.restaurant-card h3 .icon{width:17px;height:17px;position:absolute;right:0;top:3px;color:var(--muted)}.branch{font-weight:450;font-size:.85rem;color:var(--muted);letter-spacing:-.02em}.neighborhood{display:flex;gap:4px;align-items:center;font-size:.8rem;color:var(--muted)}.neighborhood .icon{width:13px;height:13px}.card-description{font-size:.87rem;line-height:1.55;margin-top:9px;color:var(--muted)}.empty-state{padding:70px 15px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;border:1px dashed var(--border);border-radius:10px}.empty-state>.icon{width:38px;height:38px;color:var(--accent)}.empty-state h3{font-size:1.5rem}.empty-state p{max-width:430px;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:9px;font-size:.9rem;font-weight:650;color:var(--accent)}.text-link .icon{width:18px;height:18px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}.section-heading h2{margin-top:8px}.section-heading>.text-link{white-space:nowrap}.city-section{border-top:1px solid var(--border);margin-top:65px;padding:45px 0 60px}.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.city-card{padding:23px;background:var(--soft);border-radius:var(--radius);transition:background .2s}.city-card:hover{background:var(--accent-soft)}.city-card .eyebrow{font-size:.64rem}.city-card h3{font-size:1.65rem;margin-top:10px;letter-spacing:-.045em}.city-card p{font-size:.84rem;color:var(--muted);margin:12px 0 25px;min-height:42px}.city-card>div{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;font-weight:550}.city-card .icon{width:20px;color:var(--accent)}
.breadcrumbs{margin-top:26px;font-size:.8rem;color:var(--muted)}.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:9px}.breadcrumbs li{display:flex;align-items:center;gap:9px}.breadcrumbs .icon{width:12px;height:12px}.breadcrumbs a:hover{color:var(--accent);text-decoration:underline}.detail-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin:32px 0 28px}.detail-heading>div:first-child{max-width:810px}.detail-heading h1{font-size:clamp(2.7rem,5vw,4.5rem);margin:12px 0 15px}.detail-heading h1>span{font-size:.42em;display:inline-block;font-weight:450;color:var(--muted);letter-spacing:-.035em;margin-left:16px}.detail-heading p:last-child{font-size:1.07rem;color:var(--muted);max-width:770px}.cuisine-links{display:flex;gap:9px;padding-bottom:5px;flex-wrap:wrap}.cuisine-links>a{display:flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid var(--border);border-radius:100px;font-size:.8rem;white-space:nowrap}.cuisine-links .icon{width:17px;height:17px}.cuisine-links>a:hover{color:var(--accent);border-color:var(--accent)}.detail-photo{margin:0}.detail-photo>.photo-media{width:100%;height:430px;object-fit:cover;border-radius:var(--radius)}.detail-photo>figcaption{font-size:.73rem;color:var(--muted);margin-top:9px;text-align:right}.detail-photo>figcaption a{text-decoration:underline;text-underline-offset:3px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:90px;padding:43px 0 60px}.detail-editorial{max-width:740px}.detail-editorial section+section{margin-top:38px;padding-top:33px;border-top:1px solid var(--border)}.detail-editorial section>.eyebrow{margin-bottom:10px}.detail-editorial h2{font-size:1.8rem;letter-spacing:-.04em;line-height:1.2}.detail-editorial p{margin-top:16px;color:var(--muted);line-height:1.75}.highlights{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:12px 25px;font-size:.87rem}.highlights li{display:flex;align-items:center;gap:7px}.highlights .icon{width:16px;height:16px;color:var(--accent)}.visit-panel{align-self:start;position:sticky;top:25px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:25px}.visit-panel h2{font-size:1.35rem}.visit-address{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:.93rem}.visit-address .icon{color:var(--accent);width:20px;height:20px;margin-top:3px}.visit-panel .button{width:100%;margin-top:10px;justify-content:space-between}.button-dark{background:var(--text);color:var(--bg)}.button-outline{background:transparent;color:var(--text);border:1px solid var(--border)}.phone-link{display:flex;align-items:center;justify-content:center;gap:9px;font-size:.9rem;margin-top:20px;padding:5px}.phone-link .icon{width:18px}.visit-note{border-top:1px solid var(--border);margin-top:24px;padding-top:22px}.visit-note h3{display:flex;align-items:center;gap:8px;font-size:.94rem;letter-spacing:-.01em}.visit-note h3 .icon{width:18px;height:18px}.visit-note p{font-size:.85rem;line-height:1.65;color:var(--muted);margin-top:12px}.visit-note .text-link{font-size:.8rem;line-height:1.5;margin-top:10px}.hours{margin:18px 0 0}.hours>div{margin-top:11px;font-size:.83rem;display:flex;justify-content:space-between;gap:12px}.hours dt{color:var(--muted)}.hours dd{margin:0;font-size:.8rem;font-weight:550;white-space:nowrap}.dish-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:22px}.dish-list>div{padding-left:16px;border-left:2px solid var(--border)}.dish-list h3{font-size:1rem;letter-spacing:-.02em;line-height:1.4}.dish-list p{font-size:.9rem;margin-top:7px}.small-note{font-size:.77rem!important;line-height:1.6!important;color:var(--muted)}.detail-editorial .lunch-feature{background:var(--accent-soft);padding:28px;border-radius:var(--radius);border:0}.lunch-feature .button{margin-top:20px}.source-section h2{font-size:1.1rem}.source-section p{font-size:.85rem}.source-section details{margin-top:17px;font-size:.85rem}.source-section summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;min-height:40px}.source-section summary>.icon{width:18px;height:18px}.source-section details[open] summary>.icon{transform:rotate(180deg)}.source-section ul{padding-left:19px;line-height:2}.source-section a{color:var(--accent)}.source-section a>.icon{width:13px;height:13px}.related-section{border-top:1px solid var(--border);padding:40px 0 60px}.related-grid{gap:30px}.related-grid .card-image{aspect-ratio:1.8}.disclosure{font-size:.82rem;border-left:2px solid var(--accent);padding-left:10px;margin-top:12px;color:var(--muted)}
.text-hero{padding:60px 0 50px}.text-hero h1{margin:16px 0 25px}.text-hero>p:last-child{max-width:560px;color:var(--muted);font-size:1.12rem;line-height:1.6}.city-directory{padding-bottom:70px}.city-feature{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding:35px 0;border-top:1px solid var(--border)}.city-feature-image{aspect-ratio:1.75;overflow:hidden;border-radius:var(--radius)}.city-feature-image img{width:100%;height:100%;object-fit:cover}.city-feature h2{margin:12px 0 17px;font-size:2.3rem}.city-feature h2 .icon{width:26px;height:26px;color:var(--accent)}.city-feature p:not(.eyebrow){color:var(--muted);max-width:520px}.city-neighborhoods{font-size:.8rem;margin-top:15px}.city-feature .button{margin-top:25px}.about-page .text-hero{max-width:770px}.about-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:90px;padding:5px 0 75px}.about-intro{font-size:1.3rem;line-height:1.6;max-width:390px}.about-intro .button{margin-top:26px}.about-copy section{padding:28px 0;border-top:1px solid var(--border)}.about-copy h2{font-size:1.65rem;line-height:1.2}.about-copy p{margin-top:15px;color:var(--muted);line-height:1.75}.not-found{min-height:60vh;padding-top:80px;padding-bottom:80px}.not-found h1{margin:15px 0 25px}.not-found p{margin-bottom:25px}
.site-footer{border-top:1px solid var(--border);margin-top:20px;background:var(--soft)}.footer-top{max-width:1360px;padding:45px 42px;margin:auto;display:flex;justify-content:space-between;gap:60px}.footer-top>div:first-child>p{margin-top:15px;font-size:.9rem;color:var(--muted)}.footer-links{display:flex;gap:60px}.footer-links h2{font-size:.8rem;font-weight:700;letter-spacing:0;margin-bottom:14px}.footer-links a{display:block;font-size:.83rem;color:var(--muted);margin-top:8px}.footer-links a:hover{color:var(--accent)}.footer-bottom{max-width:1276px;margin:auto;padding:19px 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;font-size:.73rem;color:var(--muted)}
@media(min-width:1500px){.directory-hero{gap:100px}.hero-photo>a{height:250px}}
@media(max-width:1100px){.header-inner,.page-shell{padding-left:28px;padding-right:28px}.header-inner{gap:20px}.desktop-nav{margin-left:18px;gap:22px}.header-search span{display:none}.directory-hero{gap:35px;grid-template-columns:1.15fr 1fr}.hero-photo>a{height:220px}.directory-layout{grid-template-columns:175px 1fr;gap:28px}.restaurant-grid{gap:32px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-heading h2{font-size:.9rem}.city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-card p{min-height:auto}.detail-layout{gap:40px;grid-template-columns:minmax(0,1fr) 300px}.detail-photo>.photo-media{height:380px}.cuisine-links{max-width:200px}.city-feature{gap:40px}.footer-top{padding-left:28px;padding-right:28px}.footer-bottom{margin:0 28px}.footer-links{gap:35px}}
@media(max-width:767px){:root{--header-height:72px}.header-inner,.page-shell{padding-left:21px;padding-right:21px}.wordmark{font-size:1.95rem}.desktop-nav,.header-search{display:none}.menu-toggle{display:block;margin-left:auto;margin-right:-9px}.directory-hero{grid-template-columns:1.1fr 1fr;gap:25px;padding:28px 0}.hero-copy h1{font-size:2.65rem}.hero-copy>.eyebrow{font-size:.6rem;letter-spacing:.1em}.hero-copy>p:last-child{font-size:.86rem}.hero-photo>a{height:190px}.hero-photo figcaption a{font-size:.66rem}.hero-photo figcaption span{display:none}.search-form{grid-template-columns:1fr 165px;padding:5px;gap:3px}.search-input{grid-column:1/-1;padding:3px 12px;border-bottom:1px solid var(--border)}.search-input input{font-size:.9rem}.region-select{border-left:0;margin:2px 0;padding-left:10px}.search-button{padding:12px;font-size:.85rem}.area-tabs{gap:25px;min-height:55px;margin-top:8px}.area-tabs>a{font-size:.85rem;padding:19px 0}.tab-detail{display:none}.directory-layout{display:block;padding-top:22px}.directory-sidebar{padding:0}.sidebar-heading,.sidebar-note{display:none}.cuisine-nav{flex-direction:row;overflow:auto;padding-bottom:10px;gap:7px;margin-bottom:19px}.cuisine-nav>a{white-space:nowrap;min-height:40px;padding:9px 12px;border:1px solid var(--border);font-size:.8rem;gap:7px}.cuisine-nav>[aria-current]{border-color:var(--accent-soft)}.cuisine-nav .nav-count{display:none}.cuisine-nav a>.icon{width:17px;height:17px}.results-header{margin-bottom:20px}.results-header h2{font-size:1.5rem}.sort-control{font-size:.74rem}.sort-control select{font-size:.75rem;max-width:108px}.restaurant-grid{column-gap:19px;row-gap:30px}.restaurant-card h3{font-size:1.12rem}.card-meta{font-size:.56rem;letter-spacing:.06em}.card-description{font-size:.8rem}.neighborhood{font-size:.75rem}.city-section{margin-top:42px;padding-top:30px;padding-bottom:40px}.city-card{padding:20px}.city-card h3{font-size:1.45rem}.section-heading{align-items:flex-start}.section-heading h2{font-size:1.6rem}.section-heading>.text-link{font-size:.8rem;white-space:normal;margin-top:9px}.section-heading>.text-link .icon{width:16px}.detail-heading{display:block;margin:26px 0}.detail-heading h1{font-size:3rem;line-height:1.08}.detail-heading p:last-child{font-size:1rem}.detail-heading h1>span{font-size:.45em;margin-left:10px}.cuisine-links{max-width:none;margin-top:20px;padding:0}.detail-photo>.photo-media{height:300px}.detail-photo figcaption{font-size:.66rem}.detail-layout{display:flex;flex-direction:column;gap:35px;padding-top:28px}.visit-panel{order:-1;position:static;width:100%;padding:22px;display:grid;grid-template-columns:1fr 1fr;column-gap:16px;align-items:start}.visit-panel h2,.visit-address,.visit-note{grid-column:1/-1}.visit-address{margin:15px 0 4px}.visit-panel>.phone-link{margin-top:18px}.visit-panel>.button{padding:12px;font-size:.81rem;min-height:48px}.visit-note{margin-top:18px;padding-top:18px}.visit-note .hours{display:flex;justify-content:space-between;gap:12px}.hours>div{display:block;margin:0}.hours dd{margin-top:3px}.detail-editorial h2{font-size:1.6rem}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid article:last-child{display:none}.related-section{padding:30px 0 40px}.text-hero{padding:42px 0 32px}.text-hero h1{font-size:3.2rem}.text-hero>p:last-child{font-size:1.02rem}.city-feature{grid-template-columns:1fr;gap:23px;padding:25px 0}.city-feature h2{font-size:1.9rem}.city-feature .button{margin-top:20px}.city-directory{padding-bottom:35px}.about-layout{grid-template-columns:1fr;gap:32px;padding-bottom:35px}.about-intro{max-width:100%;font-size:1.15rem}.about-copy h2{font-size:1.5rem}.footer-top{display:block;padding:34px 21px}.footer-links{margin-top:30px;gap:35px;flex-wrap:wrap}.footer-links>div:last-child{flex-basis:100%}.footer-bottom{margin:0 21px;font-size:.68rem;gap:15px}.breadcrumbs{font-size:.7rem;gap:7px;margin-top:19px}}
@media(max-width:480px){.directory-hero{grid-template-columns:1fr;gap:22px;padding:28px 0 21px}.hero-copy h1{font-size:3rem;margin-top:10px;margin-bottom:13px}.hero-copy>p:last-child{max-width:330px;font-size:.92rem}.hero-photo{display:none}.restaurant-grid{grid-template-columns:1fr;gap:28px}.card-image{aspect-ratio:1.65}.restaurant-card h3{font-size:1.32rem}.card-meta{font-size:.64rem;margin-top:12px}.card-description{font-size:.9rem}.neighborhood{font-size:.82rem}.branch{font-size:.88rem}.results-header h2{font-size:1.6rem}.result-count{font-size:.8rem}.city-grid{gap:12px}.city-card{padding:17px}.city-card h3{font-size:1.3rem}.city-card p{font-size:.77rem;min-height:62px}.city-card>div{font-size:.72rem}.city-card .eyebrow{font-size:.59rem}.city-section .section-heading{display:block}.city-section .section-heading>.text-link{margin-top:15px}.detail-photo>.photo-media{height:250px}.detail-heading h1{font-size:2.7rem}.detail-heading h1>span{display:block;margin:9px 0 0}.detail-page .breadcrumbs li:last-child{max-width:220px}.visit-panel{padding:20px 17px;column-gap:10px}.visit-panel>.button{font-size:.79rem;padding:12px 10px;gap:4px}.visit-panel>.button .icon{width:16px}.visit-note .hours{flex-wrap:wrap;row-gap:14px}.detail-editorial h2{font-size:1.65rem}.dish-list{grid-template-columns:1fr;gap:20px}.detail-editorial .lunch-feature{padding:23px}.related-grid{grid-template-columns:1fr}.related-grid article:last-child{display:block}.related-section .section-heading{display:block}.related-section .section-heading>a{margin-top:15px}.text-hero h1{font-size:2.8rem}.footer-links{gap:30px}.footer-links h2{font-size:.8rem}.footer-links a{font-size:.82rem}.footer-bottom>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-photo:hover img,.restaurant-card:hover .card-image img{transform:none}}
@media(max-width:480px){.restaurant-card{display:flex;flex-direction:column}.restaurant-card .card-meta{order:1;margin-top:0}.restaurant-card h3{order:2}.restaurant-card .neighborhood{order:3}.restaurant-card .card-image{order:4;margin-top:12px}.restaurant-card .card-description{order:5}.restaurant-card .disclosure{order:6}}
/* Let navigation wrap when the reader enlarges text. */
.header-inner{flex-wrap:wrap;row-gap:0}.header-search{padding-top:15px;padding-bottom:15px}

/* Location-led artwork is used only when no verified restaurant photo is available. */
.listing-artwork{height:100%;min-height:150px;width:100%;padding:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;background:var(--soft);color:var(--text);border:1px solid var(--border);border-radius:var(--radius)}
.listing-artwork>.icon{width:34px;height:34px;color:var(--accent);margin-bottom:12px}
.listing-artwork>span{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.listing-artwork>strong{font-size:1.55rem;line-height:1.15;letter-spacing:-.04em;font-weight:600}
.more-results{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:34px;padding-top:24px;border-top:1px solid var(--border)}
.more-results>p{font-size:.85rem;color:var(--muted)}
.city-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1100px){.city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.more-results{align-items:flex-start;flex-direction:column}.more-results>.button{width:100%}.listing-artwork{min-height:155px;padding:22px}.listing-artwork>strong{font-size:1.6rem}}

/* Actual restaurant photos take precedence over clearly labeled regional fallbacks. */
.photo-media{display:block;position:relative;width:100%;height:100%;overflow:hidden;border-radius:inherit}
.photo-media>img{display:block;width:100%;height:100%;object-fit:cover}
.image-label{position:absolute;bottom:10px;left:10px;max-width:calc(100% - 20px);padding:5px 8px;border-radius:4px;background:#fffdf5ed;color:#40362e;font-size:.62rem;font-weight:500;line-height:1.3;letter-spacing:.01em;pointer-events:none}
.detail-photo .image-label{bottom:16px;left:16px;font-size:.72rem}

.directory-stories{padding:42px 0;border-top:1px solid var(--border);margin-top:35px}
.directory-story-list{display:grid;gap:28px}.directory-story{display:grid;grid-template-columns:minmax(220px,330px) minmax(0,1fr);gap:30px;align-items:center;max-width:980px}
.directory-story-photo{display:block;aspect-ratio:1.5;overflow:hidden;border-radius:var(--radius)}.directory-story-photo img{width:100%;height:100%;object-fit:cover}
.directory-story h3{font-size:1.8rem;line-height:1.15;letter-spacing:-.04em;margin:12px 0}.directory-story h3 a:hover{color:var(--accent)}.directory-story p:not(.eyebrow){color:var(--muted);line-height:1.65;font-size:.92rem;margin-bottom:16px}
@media(max-width:700px){.directory-story{grid-template-columns:1fr;gap:20px}.directory-story-photo{max-width:480px}.directory-story h3{font-size:1.65rem}}
