*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;line-height:1.6}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
h1,h2,h3{margin:0;line-height:1.1}
p{margin:0 0 1em}
:focus-visible{outline:3px solid #f1c868;outline-offset:3px;border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.concept-ribbon{background:#16201f;color:#cfd9d7;font-family:'Inter',system-ui,sans-serif;font-size:.8rem;text-align:center;padding:.5rem 1rem;line-height:1.4}
.concept-ribbon a{color:#f1c868}
.cr-tag{display:inline-block;background:#f1c868;color:#16201f;font-weight:700;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;padding:.15rem .5rem;border-radius:99px;margin-right:.35rem}

:root{--cream:#f5ecdc;--brown:#3d2a1e;--terra:#b4532e;--olive:#4b5434;--muted:#75655a}
body{font-family:'Inter',system-ui,sans-serif;background:var(--cream);color:var(--brown);font-size:17px}
.c-wrap{width:min(1160px,100% - 48px);margin-inline:auto}
.c-header{background:var(--cream);border-bottom:1px solid rgba(61,42,30,.12)}
.c-header-inner{display:flex;align-items:center;gap:2rem;height:80px}
.c-logo{font-family:'Fraunces',Georgia,serif;font-size:1.7rem;text-decoration:none;letter-spacing:-.02em}
.c-logo em{color:var(--terra);font-weight:300}
.c-nav{display:flex;gap:1.8rem;margin-left:auto}
.c-nav a{text-decoration:none;font-weight:500;color:var(--muted)}
.c-btn{display:inline-flex;justify-content:center;background:var(--terra);color:#fff;text-decoration:none;font-weight:600;padding:.9em 1.6em;border-radius:6px;border:2px solid var(--terra)}
.c-btn-sm{padding:.55em 1.1em;font-size:.9rem;background:var(--brown);border-color:var(--brown)}
.c-btn-ghost{background:transparent;border-color:#fff}
.c-btn-light{background:var(--cream);color:var(--brown);border-color:var(--cream)}
.c-hero{position:relative;min-height:620px;display:flex;color:#fff}
.c-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.c-hero-overlay{position:relative;width:100%;display:flex;align-items:flex-end;padding:5rem 0;background:linear-gradient(90deg,rgba(35,22,14,.82) 0%,rgba(35,22,14,.35) 60%,rgba(35,22,14,.1) 100%)}
.c-kicker{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#f0c9a0;margin-bottom:1rem}
.c-hero h1{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(2.6rem,1.5rem + 4vw,4.8rem);max-width:12em;letter-spacing:-.03em;margin-bottom:2rem}
.c-hero h1 em{font-weight:300;color:#f6d7b3}
.c-ctas{display:flex;gap:.8rem;flex-wrap:wrap}
.c-intro{padding:6rem 0}
.c-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.c-intro h2,.c-menu h2,.c-visit h2,.c-catering h2{font-family:'Fraunces',Georgia,serif;font-weight:400;font-size:clamp(2rem,1.4rem + 2vw,3rem);letter-spacing:-.02em}
.c-intro h2 em,.c-catering h2 em{color:var(--terra);font-weight:300}
.c-intro p{font-size:1.12rem;color:var(--muted);margin:0}
.c-menu{background:#fbf6ec;padding:6rem 0;border-block:1px solid rgba(61,42,30,.1)}
.c-menu .c-kicker{color:var(--terra)}
.c-menu-head{margin-bottom:3rem}
.c-menu-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:3rem}
.c-menu-col h3{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:400;font-size:1.6rem;color:var(--terra);margin-bottom:1.2rem;padding-bottom:.6rem;border-bottom:1px solid rgba(61,42,30,.18)}
.c-menu-col dl{margin:0}
.c-menu-col dl div{display:flex;justify-content:space-between;gap:1rem;font-weight:600;margin-top:1rem}
.c-menu-col dt{margin:0}.c-menu-col dd{margin:0;color:var(--terra)}
.c-menu-col dl p{font-size:.92rem;color:var(--muted);margin:.15rem 0 0}
.c-menu-photo img{border-radius:10px;aspect-ratio:4/3;object-fit:cover;width:100%}
.c-note{font-size:.92rem;color:var(--muted);margin-top:1rem;font-style:italic}
.c-visit{padding:6rem 0}
.c-visit .c-kicker{color:var(--terra)}
.c-visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.c-addr{font-family:'Fraunces',Georgia,serif;font-size:1.5rem;margin-top:1rem}
.c-visit-grid p:last-child{color:var(--muted)}
.c-hours{width:100%;border-collapse:collapse;font-size:1.05rem}
.c-hours th,.c-hours td{padding:1rem 0;border-bottom:1px dashed rgba(61,42,30,.25);text-align:left;font-weight:400}
.c-hours td{text-align:right;font-weight:600}
.c-catering{background:var(--olive);color:#eef0e4;padding:5rem 0;text-align:center}
.c-catering h2 em{color:#f6d7b3}
.c-cat-inner p{margin:1rem auto 2rem;max-width:30em;font-size:1.08rem}
.c-footer{background:var(--brown);color:#d9c9b8;padding:2rem 0;font-size:.85rem}
@media (max-width:900px){.c-nav{display:none}.c-header-inner{justify-content:space-between}.c-intro-grid,.c-visit-grid{grid-template-columns:1fr;gap:2rem}.c-menu-grid{grid-template-columns:1fr 1fr}.c-menu-photo{grid-column:1/-1}}
@media (max-width:640px){body{font-size:16px}.c-wrap{width:min(1160px,100% - 36px)}.c-hero{min-height:560px}.c-hero-overlay{padding:3rem 0;background:linear-gradient(0deg,rgba(35,22,14,.88) 0%,rgba(35,22,14,.45) 70%,rgba(35,22,14,.2) 100%)}.c-menu-grid{grid-template-columns:1fr;gap:2.2rem}.c-intro,.c-menu,.c-visit{padding:4rem 0}.c-ctas .c-btn{flex:1}}
