:root{--accent: #c2410c;--card-min: 440px;--bg: #f4ead5;--ink: #1c1917;--card: #fbf3e3}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:Newsreader,Georgia,serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes cardIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.mono{font-family:Space Mono,monospace}.serif-display{font-family:"DM Serif Display",Georgia,serif;font-weight:400}.app{min-height:100vh}.masthead{border-bottom:1.5px solid var(--ink);padding:10px clamp(20px,5vw,64px);display:flex;justify-content:space-between;align-items:center;font-family:Space Mono,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase}.masthead .issue{color:var(--accent)}.masthead .est{opacity:.6}.hero{max-width:1180px;margin:0 auto;padding:clamp(36px,6vw,72px) clamp(20px,5vw,64px) clamp(28px,4vw,44px)}.hero .kicker{font-family:Space Mono,monospace;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:22px}.hero h1{font-family:"DM Serif Display",Georgia,serif;font-weight:400;line-height:.96;letter-spacing:-.015em;margin:0;font-size:clamp(46px,8.4vw,116px)}.hero h1 em{font-style:italic;color:var(--accent)}.hero-meta{display:flex;gap:clamp(24px,5vw,72px);flex-wrap:wrap;margin-top:clamp(28px,4vw,44px);align-items:flex-start}.hero-meta .lede{max-width:640px;font-size:clamp(18px,2.1vw,22px);line-height:1.5;margin:0;color:#3a352f}.hero-meta .stats{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.08em;line-height:2;text-transform:uppercase;color:#57534e;border-left:1.5px solid var(--accent);padding-left:18px}.filterbar{position:sticky;top:0;z-index:30;background:var(--bg);border-top:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);box-shadow:0 6px 18px #1c19170f}.filterbar-inner{max-width:1180px;margin:0 auto;padding:16px clamp(20px,5vw,64px);display:flex;flex-direction:column;gap:11px}.filter-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.filter-label{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#a8a29e;width:60px;flex-shrink:0}.chip-set{display:flex;gap:8px;flex-wrap:wrap}.chip{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.02em;padding:7px 13px;border-radius:999px;cursor:pointer;transition:all .22s ease;white-space:nowrap;background:transparent;color:#57534e;border:1.5px solid rgba(28,25,23,.22);font-weight:400}.chip:hover{border-color:var(--ink);transform:translateY(-1px)}.chip.active{background:var(--accent);color:var(--bg);border:1.5px solid var(--accent);font-weight:700;box-shadow:0 4px 12px #7c2d1247}.filter-footer{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-top:11px;margin-top:1px;border-top:1px dashed rgba(28,25,23,.2)}.open-toggle{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.02em;padding:7px 14px;border-radius:999px;cursor:pointer;transition:all .22s ease;display:inline-flex;align-items:center;gap:8px;background:transparent;color:#57534e;border:1.5px solid rgba(28,25,23,.22);font-weight:400}.open-toggle:hover{transform:translateY(-1px)}.open-toggle.active{background:#3f6212;color:var(--bg);border:1.5px solid #3f6212;font-weight:700;box-shadow:0 4px 12px #3f621247}.open-dot{width:8px;height:8px;border-radius:999px;display:inline-block}.count{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#57534e}.clear-all{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;background:none;border:none;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:0}.grid-wrap{max-width:1180px;margin:0 auto;padding:clamp(28px,4vw,44px) clamp(20px,5vw,64px) 20px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-min),1fr));gap:26px}.card{background:var(--card);border:1.5px solid var(--ink);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;animation:cardIn .5s ease both;transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-4px);box-shadow:10px 12px 0 var(--ink)}.card-image{position:relative;aspect-ratio:5 / 3;overflow:hidden;border-bottom:1.5px solid var(--ink)}.card-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block}.card-image .shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#1c191799,#1c191726 42%,#1c191700 68%)}.card-image .img-label{position:absolute;left:16px;bottom:14px;font-family:Space Mono,monospace;font-size:11px;letter-spacing:.06em;color:#f4ead5eb;text-shadow:0 1px 3px rgba(0,0,0,.5)}.card-image .rank{position:absolute;right:14px;bottom:2px;font-family:"DM Serif Display",serif;font-size:78px;line-height:1;color:#f4ead58c;text-shadow:0 2px 10px rgba(0,0,0,.35)}.style-pill{position:absolute;top:14px;left:14px;font-family:Space Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;background:var(--bg);color:var(--ink);padding:5px 9px;border-radius:999px;border:1.5px solid var(--ink)}.score-badge{position:absolute;top:12px;right:12px;width:52px;height:52px;border-radius:999px;background:var(--bg);border:1.5px solid var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.score-badge .num{font-family:"DM Serif Display",serif;font-size:20px;color:var(--accent)}.score-badge .label{font-family:Space Mono,monospace;font-size:7px;letter-spacing:.14em;color:#57534e;margin-top:2px}.card-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:12px;flex:1}.card-body h2{font-family:"DM Serif Display",serif;font-weight:400;font-size:30px;line-height:1.02;letter-spacing:-.01em;margin:0 0 6px}.card-body .hood{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#57534e}.card-body .hood .price{color:var(--accent)}.card-body .take{font-style:italic;font-size:16.5px;line-height:1.46;margin:0;color:#3a352f}.must-order{border-top:1px solid rgba(28,25,23,.16);padding-top:12px}.must-order .eyebrow{font-family:Space Mono,monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#a8a29e;margin-bottom:3px}.must-order .dish{font-size:17px;font-weight:600}.vibe-tags{display:flex;gap:7px;flex-wrap:wrap}.vibe-tag{font-family:Space Mono,monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;background:#3f62121a;color:#3f6212;padding:4px 9px;border-radius:999px}.card-footer{margin-top:auto;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px dashed rgba(28,25,23,.2)}.card-footer .hours{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.04em;color:#57534e}.card-footer .status{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:6px}.empty{text-align:center;padding:80px 20px}.empty .headline{font-family:"DM Serif Display",serif;font-size:36px;margin-bottom:10px}.empty p{font-family:Space Mono,monospace;font-size:13px;letter-spacing:.06em;color:#57534e}.colophon{border-top:1.5px solid var(--ink);margin-top:40px;padding:26px clamp(20px,5vw,64px)}.colophon-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:Space Mono,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#57534e}.colophon-inner .caveat{opacity:.7;text-transform:none;letter-spacing:.02em}.colophon-inner .made{color:var(--accent)}
