:root{--focus:#115d9b;--terra:#983e28;--olive:#303d2e}
body{background:#faf6ed;color:#2c3027}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif}
h1{font-size:clamp(3rem,6.9vw,6.5rem);line-height:1.06;letter-spacing:-.055em}
h2{font-size:clamp(2.35rem,4vw,4rem);letter-spacing:-.045em;line-height:1.12}
h2 em,h1 em{font-weight:400}
.kicker{color:var(--terra);margin-bottom:1.25rem}
.rest-header{background:#faf6ed}
.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.15rem}
.rest-brand{font-family:Georgia,serif;font-size:1.8rem;text-decoration:none;line-height:1.2}
.rest-brand span{display:block;font-family:Arial,sans-serif;font-size:.59rem;text-transform:uppercase;letter-spacing:.2em;margin-top:.4rem}
.terracotta{background:var(--terra);color:#fff}
.cream{background:#f8eedb;color:#272e25}
.ghost-light{border:1px solid #ded7c6;color:#fff}
.rest-hero{position:relative;min-height:690px;display:flex;align-items:center;color:#fff;background:#313225}
.rest-hero>img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center 64%}
.rest-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,25,18,.82) 0%,rgba(20,26,17,.57) 48%,rgba(20,25,15,.07) 100%)}
.rest-hero-content{position:relative;padding-top:5rem;padding-bottom:2rem;z-index:1}
.rest-hero .kicker{color:#f5e9d3}
.rest-lead{font-size:1.05rem;max-width:42rem;margin-top:1.4rem;line-height:1.85}
.rest-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2rem}
.rest-hero-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:5rem;border-top:1px solid #f0e6d555;padding-top:1rem;font-size:.72rem;letter-spacing:.05em}
.rest-story-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:5rem}
.story-copy{padding-top:2.4rem;color:#58604e;font-size:1.02rem}
.story-copy p+p{margin-top:1rem}
.text-link{display:inline-flex;gap:1.6rem;align-items:center;margin-top:1.2rem;font-size:.9rem;font-weight:700;color:var(--terra);padding-block:.5rem}
.menu-section{background:#eee7d9}
.rest-menu-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:5rem;align-items:center}
.menu-photo img{aspect-ratio:4/5;object-fit:cover;object-position:29% center;border-radius:180px 180px 0 0;width:100%}
.menu-photo figcaption{font-family:Georgia,serif;font-size:1.3rem;font-style:italic;text-align:center;margin-top:1rem}
.menu-disclaimer{margin-top:1rem;color:#5b6353}
.menu-tabs{display:flex;gap:1rem;border-bottom:1px solid #aaa696;margin-top:1.3rem;flex-wrap:wrap}
.menu-tabs button{background:transparent;color:#55594c;padding:.7rem .3rem;font-size:.9rem;border-bottom:3px solid transparent}
.menu-tabs [aria-selected=true]{color:#903821;border-bottom-color:#903821;font-weight:700}
.dish{display:flex;justify-content:space-between;align-items:start;gap:1.5rem;padding-block:1.25rem;border-bottom:1px solid #cfc9b9}
.dish h3{font-size:1.3rem;line-height:1.3}
.dish p{color:#606758;font-size:.87rem;margin-top:.35rem}
.dish strong{white-space:nowrap;font-size:1rem;padding-top:.25rem}
.allergen{margin-top:1.2rem;color:#5b6353}
.rest-moment{padding:5rem 0;background:var(--olive);color:#fcf4e6;text-align:center}
.rest-moment .kicker{color:#eee1bf}
.rest-moment h2{font-size:clamp(2.6rem,5vw,4.8rem)}
.rest-moment .btn{margin-top:2rem}
.reservation-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:2.3rem}
.reservation-heading>p{max-width:29rem;font-size:.9rem;color:#5b6353}
.reservation-fields>*{min-width:0}.reservation-fields{display:grid;grid-template-columns:1fr 1fr 1fr 1.35fr;align-items:end;gap:1rem}
.reservation-fields select,.reservation-fields input{background:#fffcf6;border-color:#a5a795}
.booking-note{margin-top:1rem;color:#5b6353}
.status{background:#edf1e5;color:#324126}
.demo-footer{background:#e9e2d4;color:#525943;border-top:1px solid #d2c8b6}
@media(max-width:1050px){.rest-menu-grid{gap:2.5rem}.reservation-fields{grid-template-columns:1fr 1fr}.rest-story-grid{gap:2.4rem}}
@media(max-width:900px){.rest-header .nav-book{margin-left:auto}.rest-header .menu-toggle{border-color:#b6b9a6}}
@media(max-width:700px){
.rest-hero{min-height:650px}.rest-hero>img{object-position:59% center}
.rest-shade{background:linear-gradient(90deg,#172419da,#1724196b)}
.rest-story-grid,.rest-menu-grid{grid-template-columns:1fr}
.story-copy{padding-top:0}
.menu-photo img{aspect-ratio:4/3;border-radius:120px 120px 0 0;max-height:360px}
.reservation-heading{display:block}.reservation-heading>p{margin-top:1rem}
.rest-hero-bottom{margin-top:3rem}
}
@media(max-width:550px){.rest-brand{font-size:1.4rem}.rest-brand span{font-size:.52rem}.rest-header .nav-book{display:none}
.rest-hero-content{padding-top:3rem}.rest-hero{min-height:600px}
h1{font-size:clamp(2.8rem,10vw,4rem)}
.reservation-fields{grid-template-columns:minmax(0,1fr)}.menu-tabs{gap:1.1rem}
.rest-actions .btn{min-height:50px}.rest-hero-bottom{font-size:.68rem}
}
