:root{--ink:#18241f;--teal:#245d68;--deep-teal:#1b4b55;--mustard:#d4a417;--cream:#f2ecdd;--paper:#fbf7eb;--line:rgba(24,36,31,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Newsreader",Georgia,serif;font-size:18px;line-height:1.58;letter-spacing:.005em}a{color:inherit}.shell{width:min(1100px,calc(100% - 56px));margin:auto}.eyebrow,h1,h2,h3,.logo,.button,.tab,.price,.hours-row strong{font-family:"Courier Prime","Courier New",monospace}
.topbar{background:var(--deep-teal);color:var(--cream);font:400 .72rem/1.4 "Courier Prime",monospace;letter-spacing:.17em;text-transform:uppercase;border-bottom:1px solid var(--cream)}.topbar .shell{display:flex;justify-content:space-between;gap:20px;padding-top:9px;padding-bottom:9px}.topbar a{text-decoration:none}
header{position:sticky;top:0;z-index:20;background:rgba(242,236,221,.97);border-bottom:1px solid var(--ink);backdrop-filter:blur(9px)}nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font-size:2.2rem;letter-spacing:-.09em;font-weight:700;text-decoration:none}.navlinks{display:flex;align-items:center;gap:25px}.navlinks a{text-decoration:none;font-size:.86rem;letter-spacing:.07em;text-transform:uppercase;font-weight:600}.navlinks .active{border-bottom:1px solid var(--ink)}
.filmstrip{height:22px;background:var(--ink);background-image:repeating-linear-gradient(90deg,transparent 0 14px,var(--paper) 14px 28px);border-top:6px solid var(--ink);border-bottom:6px solid var(--ink);opacity:.9}
.hero{background:var(--teal);color:var(--cream);padding:80px 0 72px;border-bottom:1px solid var(--mustard);position:relative;overflow:hidden}.hero .shell{position:relative;z-index:2}.hero img{position:absolute;right:-90px;top:-130px;width:450px;opacity:.13;mix-blend-mode:screen;pointer-events:none}.eyebrow{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em}.hero h1{font-size:clamp(3.4rem,7vw,6rem);line-height:.9;letter-spacing:-.08em;margin:20px 0 25px}.hero p{font-size:1.3rem;line-height:1.5;max-width:720px;margin:0}
.content{padding:78px 0 100px;position:relative}.section-title{font-size:clamp(2.5rem,5vw,4.5rem);line-height:.96;letter-spacing:-.07em;margin:10px 0 28px}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;padding:12px 20px;text-decoration:none;font-weight:700;font-size:.88rem;letter-spacing:.03em;background:var(--mustard);color:var(--ink);cursor:pointer}.button:hover,.button:focus-visible{box-shadow:inset 0 -3.5em 0 var(--ink);color:var(--paper)}.button.secondary{background:transparent}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.menu-index{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:55px}.menu-index a{font:700 1rem "Courier Prime",monospace;text-align:center;text-decoration:none;border:1px solid var(--ink);padding:17px 12px;background:var(--mustard)}.menu-index a:hover,.menu-index a:focus-visible{background:var(--ink);color:var(--paper)}.menu-section{scroll-margin-top:125px;margin-bottom:72px}.menu-section-title{font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.05em;margin:0 0 20px;padding-bottom:16px;border-bottom:2px solid var(--ink)}.menu-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 55px}.item{border-bottom:1px dotted var(--line);padding:15px 0}.item-line{display:flex;justify-content:space-between;gap:18px;font-weight:700;font-size:1.06rem}.item p{font-size:.95rem;line-height:1.45;margin:5px 0 0;color:#445047}.price{white-space:nowrap}.menu-note{margin-top:0;border-top:1px solid var(--ink);padding-top:22px}
.hours-layout,.directions-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start}.hours{border-top:1px solid var(--ink)}.hours-row{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:1.1rem}.info-card{background:var(--paper);border:1px solid var(--ink);padding:30px}.info-card h2,.info-card h3{margin-top:0}.info-card p:last-child{margin-bottom:0}.address{font:700 clamp(1.6rem,3vw,2.25rem)/1.25 "Courier Prime",monospace}.fact-list{border-top:1px solid var(--ink);margin-top:30px}.fact{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.fact strong{font-family:"Courier Prime",monospace}
footer{background:var(--teal);color:var(--cream);padding:48px 0}.footer-grid{display:flex;justify-content:space-between;gap:32px;align-items:end}.footer-logo{font:700 2.6rem "Courier Prime",monospace;letter-spacing:-.1em}.footer-small{font-size:.9rem;opacity:.9;text-align:right}
@media(max-width:1100px){nav{flex-wrap:wrap;padding:12px 0}.navlinks{width:100%;display:grid;grid-template-columns:1fr;gap:0;overflow:visible;white-space:normal;border-top:1px solid var(--line);padding:0}.navlinks a{display:block;padding:10px 2px;border-bottom:1px solid var(--line)}.navlinks .active{border-bottom:2px solid var(--ink)}}
@media(max-width:850px){.shell{width:min(100% - 40px,720px)}nav{flex-wrap:wrap;padding:12px 0}.navlinks{width:100%;display:grid;grid-template-columns:1fr;gap:0;overflow:visible;white-space:normal;border-top:1px solid var(--line);padding:0}.navlinks a{display:block;padding:10px 2px;border-bottom:1px solid var(--line)}.navlinks .active{border-bottom:2px solid var(--ink)}.hours-layout,.directions-layout{grid-template-columns:1fr;gap:38px}.menu-panel{grid-template-columns:1fr}.hero img{right:-190px}.footer-grid{display:block}.footer-small{text-align:left;margin-top:24px}}
@media(max-width:560px){body{font-size:18px;line-height:1.62}header{position:static}.topbar{font-size:.8rem}.topbar .shell{display:block;text-align:center}.topbar span{display:none}nav{min-height:0}.logo{font-size:1.55rem;padding:2px 0 7px}.navlinks{gap:0}.navlinks a{font-size:.72rem;line-height:1.2;padding:6px 2px}.hero{padding:62px 0}.hero h1{font-size:3.25rem}.hero p{font-size:1.18rem}.content{padding:58px 0 75px}.menu-index{grid-template-columns:1fr;gap:6px;margin-bottom:40px}.menu-index a{font-size:.88rem;padding:10px}.menu-section{margin-bottom:58px}.hours-row{font-size:1.05rem}.fact{grid-template-columns:1fr;gap:3px}.actions{align-items:stretch;flex-direction:column}.actions .button{width:100%}.footer-small{font-size:1rem}}
