:root{--paper:#f4ecda;--paper2:#ebe0c7;--ink:#1d1a17;--red:#b3261b;--red-d:#8f1d14;--brass:#a67c2e;--muted:#5d5448;
--display:'Rozha One',serif;--body:'Karla',sans-serif;--mono:'DM Mono',monospace}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.05rem;line-height:1.55}
h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:.01em}
a{color:var(--red)}
.eyebrow{font-family:var(--mono);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:.6rem}

/* nav: centered coin above links */
.site-nav{background:var(--paper);border-bottom:3px double var(--ink);z-index:1030}
.brand{display:flex;align-items:center;gap:.7rem;color:var(--ink)}
.brand-coin{mix-blend-mode:multiply;height:48px;width:auto}
.brand-name{font-family:var(--display);font-size:1.5rem;text-transform:uppercase;letter-spacing:.06em;line-height:1}
.brand-name small{font-family:var(--mono);font-size:.62rem;letter-spacing:.25em;display:block;margin-top:.2rem;color:var(--red)}
.nav-row{gap:.25rem 1.6rem}
.nav-link{font-family:var(--mono);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink)!important}
.nav-link:hover{color:var(--red)!important}
.nav-call{color:var(--red)!important;font-weight:500}
@media(min-width:992px){.site-nav .navbar{padding-bottom:.25rem}.navbar-collapse{margin-top:-.25rem}}
.navbar-toggler{border-color:var(--ink)}

/* hero */
.hero{padding:4rem 0 4.5rem;overflow:hidden;background:radial-gradient(circle at 85% 20%,var(--paper2) 0,transparent 55%)}
.hero-title{font-size:clamp(4.2rem,11vw,8.5rem);line-height:.88;text-transform:uppercase;margin:0 0 1.3rem}
.hero-title span{display:block;font-size:.34em;letter-spacing:.42em;color:var(--red);margin-top:.5rem}
.hero-lede{font-size:1.25rem;max-width:34ch}
.hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.7rem 0 1rem}
.hero-hours{font-family:var(--mono);font-size:.85rem;color:var(--muted)}
.btn-ho,.btn-ho-outline{font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:.85rem;border-radius:0;padding:.85rem 1.4rem;border:2px solid var(--red)}
.btn-ho{background:var(--red);color:#fff}.btn-ho:hover{background:var(--red-d);border-color:var(--red-d);color:#fff}
.btn-ho-outline{background:transparent;color:var(--red)}.btn-ho-outline:hover{background:var(--red);color:#fff}
.hero-art{position:relative;max-width:440px;margin:0 auto;padding:0 0 3.5rem}
.hero-coin{width:78%;display:block;margin:0 0 0 auto;mix-blend-mode:multiply}
.hero-photo{position:absolute;left:0;bottom:0;width:72%;margin:0;border:6px solid var(--paper);box-shadow:10px 10px 0 var(--red);background:var(--paper)}
.hero-photo img{display:block;width:100%;height:auto}

.strip{background:var(--ink);color:var(--paper)}
.strip-list{list-style:none;margin:0;padding:1rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.8rem 2rem;font-size:.95rem}
.strip-list b{color:#e9b84a;font-family:var(--mono);font-weight:500;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;display:block}

/* menus */
.menu-section{padding:5rem 0}
.menu-section.alt{background:var(--paper2)}
.section-head{text-align:center;margin-bottom:2.2rem}
.section-head h2{font-size:clamp(2.4rem,5vw,3.6rem);text-transform:uppercase;margin:0}
.section-head h2::after{content:"";display:block;width:64px;height:64px;margin:.9rem auto 0;border-radius:50%;border:5px solid var(--red);background:radial-gradient(circle,var(--paper) 0 9px,transparent 10px);box-shadow:inset 0 0 0 6px var(--paper),inset 0 0 0 7px var(--red)}
.section-sub{color:var(--muted);max-width:60ch;margin:1rem auto 0}
.hot,abbr[title].hot{text-decoration:none!important;border:0;cursor:default}
.hot{color:var(--red);font-weight:700;text-decoration:none;margin-left:.15em}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2.5rem}
.chips a{font-family:var(--mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;color:var(--ink);border:1.5px solid var(--ink);padding:.35rem .8rem;border-radius:999px}
.chips a:hover{background:var(--red);border-color:var(--red);color:#fff}
.cat-grid{column-count:2;column-gap:3.5rem}
.cat{break-inside:avoid;margin-bottom:2.6rem}
.cat-title{font-size:1.7rem;color:var(--red);border-bottom:2px solid var(--ink);padding-bottom:.35rem;margin-bottom:.8rem}
.cat-note{font-size:.92rem;color:var(--muted);font-style:italic;margin-bottom:.8rem}
.mi-list{list-style:none;margin:0;padding:0}
.mi{display:flex;gap:.8rem;padding:.45rem 0}
.mi-num{flex:0 0 2.6rem;font-family:var(--mono);font-size:.78rem;color:var(--brass);text-align:right;padding-top:.28rem}
.mi-body{flex:1;min-width:0}
.mi-head{display:flex;align-items:baseline;gap:.5rem}
.mi-name{font-weight:700}
.mi-dots{flex:1;border-bottom:2px dotted rgba(29,26,23,.3);transform:translateY(-.25em);min-width:1rem}
.mi-price{font-family:var(--mono);font-weight:500;white-space:nowrap;color:var(--red-d)}
.mi-sep{color:var(--muted)}
.mi-desc{margin:.1rem 0 0;font-size:.92rem;color:var(--muted);line-height:1.4}
.lunch-wrap{max-width:760px;margin:0 auto}
.lunch-wrap .cat-title{display:none}

.quote-band{background:var(--red);color:#fff;padding:3.2rem 0}
.quote-band .container{display:flex;align-items:center;gap:2.2rem;max-width:960px}
.quote-band p{font-family:var(--display);font-size:clamp(1.4rem,3vw,2.1rem);line-height:1.25;margin:0}
.quote-band em{color:#f6d68a}
.door-circle{width:170px;height:170px;border-radius:50%;object-fit:cover;object-position:50% 55%;border:5px solid var(--paper);flex:0 0 auto}

.gallery{padding:5rem 0;background:var(--paper)}
.polaroid{background:#fff;padding:.8rem .8rem 1rem;box-shadow:8px 8px 0 var(--ink);margin:0}
.polaroid img{width:100%;height:auto;display:block}
.polaroid figcaption{font-family:var(--mono);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;text-align:center;margin-top:.7rem}
.tilt-l{transform:rotate(-2deg)}.tilt-r{transform:rotate(2deg)}

.visit{padding:5rem 0;background:var(--ink);color:var(--paper)}
.visit h2{font-size:clamp(2.2rem,4.5vw,3.2rem);text-transform:uppercase}
.visit .eyebrow{color:#e9b84a}
.visit a{color:#f6d68a}
.visit-addr{font-size:1.3rem;margin:1rem 0 1.4rem;font-style:normal}
.visit-list{display:grid;grid-template-columns:5rem 1fr;gap:.6rem 1rem;margin-bottom:1.8rem}
.visit-list dt{font-family:var(--mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#e9b84a;padding-top:.2rem}
.visit-list dd{margin:0}
.map-frame{height:100%;min-height:340px;border:6px solid var(--paper)}
.map-frame iframe{width:100%;height:100%;min-height:340px;border:0;display:block}

.site-footer{background:var(--paper2);text-align:center;padding:2.5rem 0}
.foot-coin{mix-blend-mode:multiply}
.foot-name{font-family:var(--display);font-size:1.5rem;text-transform:uppercase;margin:.4rem 0}
.site-footer p{margin-bottom:.3rem}
.foot-power{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;margin-top:.9rem!important}

@media(max-width:991px){
 .hero-art{max-width:320px}
 .cat-grid{column-count:1}
 .nav-row{padding:.8rem 0}
 .hero{padding:2.5rem 0 3.5rem}
 .quote-band .container{flex-direction:column;text-align:center}
}
@media(max-width:575px){
 .mi{gap:.5rem}.mi-num{flex-basis:2.1rem}
 .menu-section,.gallery,.visit{padding:3.5rem 0}
 .brand-name{font-size:1.25rem}
}
