@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700;800&display=swap');
:root{--ink:#24211e;--cream:#fffaf0;--paper:#fffdf7;--chili:#a84f2a;--gold:#dfa73e;--teal:#39352d;--soft:#f7eedc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font:16px/1.65 'DM Sans',Arial,sans-serif;color:var(--ink)}a{color:var(--chili)}img{max-width:100%;display:block}header{background:#fffdf5;position:sticky;z-index:20;top:0;box-shadow:0 4px 18px #25251c19}.shell{max-width:1230px;margin:auto;padding:0 26px}.topline{background:var(--teal);color:white;font-size:12px;text-align:center;letter-spacing:.08em;padding:7px}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:20px}.brand{font:800 28px/1 'Playfair Display',Georgia,serif;text-decoration:none;letter-spacing:-.03em;color:var(--chili)}.brand small{display:block;font:600 10px 'DM Sans',sans-serif;letter-spacing:.25em;text-transform:uppercase;color:var(--teal);margin-top:9px}nav{display:flex;gap:22px;align-items:center}nav a{font-weight:700;font-size:13px;text-decoration:none;color:#353630;text-transform:uppercase;letter-spacing:.07em}nav a:hover,nav a.active{color:var(--chili)}.nav-toggle{display:none;background:none;border:0;font-size:26px}.pill,.button{display:inline-block;background:var(--chili);color:white;text-decoration:none;padding:12px 22px;border-radius:100px;font-weight:700;font-size:13px;letter-spacing:.04em}.button.alt{background:var(--teal)}.hero{min-height:670px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(22,28,23,.86),rgba(22,28,23,.49) 50%,rgba(22,28,23,.06)),url('photos/food-3unnamed.webp') center/cover; color:#fff}.hero-copy{max-width:690px;padding:65px 0}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--gold)}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.14;margin:0 0 18px}h1{font-size:clamp(50px,6vw,96px);letter-spacing:-.045em}h2{font-size:clamp(32px,4vw,53px)}h3{font-size:27px}p{margin:0 0 20px}.hero p{font-size:19px;max-width:530px}.buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.section{padding:85px 0}.section.light{background:#fff}.section.soft{background:var(--soft)}.center{text-align:center}.intro{max-width:630px;margin:0 auto 34px}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split img{width:100%;height:440px;object-fit:cover;border-radius:14px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #3e322412}.photo-card img{height:250px;width:100%;object-fit:cover}.photo-card .inside{padding:20px 24px}.photo-card h3{font-size:22px}.ribbon{background:var(--teal);color:white;padding:28px 0}.ribbon .shell{display:flex;gap:25px;flex-wrap:wrap;justify-content:space-between;align-items:center}.ribbon strong{font-size:21px}.page-hero{background:var(--teal);color:#fff;text-align:center;padding:75px 20px}.page-hero p{max-width:670px;margin:auto}.menu-nav{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:28px 0 45px}.menu-nav a{padding:9px 20px;background:var(--soft);border-radius:40px;text-decoration:none;font-weight:700}.menu-category{margin:60px 0}.menu-category>h2{color:var(--chili);border-bottom:2px solid var(--gold);padding-bottom:15px}.menu-columns{display:grid;grid-template-columns:1fr 1fr;column-gap:45px}.menu-group{break-inside:avoid;margin:20px 0 35px}.menu-group h3{font-size:21px;color:var(--teal);padding:8px 0 12px;border-bottom:1px solid #dbd0bd}.dish{border-bottom:1px solid #eadfce;padding:10px 0}.dish b{font-size:15px}.dish small{display:block;font-size:13px;color:#676961}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid a{display:block;overflow:hidden;border-radius:9px}.gallery-grid img{width:100%;height:270px;object-fit:cover;transition:transform .25s}.gallery-grid a:hover img{transform:scale(1.04)}.details{background:var(--paper);border:1px solid #e6d8c1;border-radius:15px;padding:32px}.mapframe{width:100%;border:0;border-radius:14px;min-height:460px}.footer{background:#242e29;color:#ecece4;padding:55px 0 22px}.footer a{color:#fff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:40px}.footer-bottom{border-top:1px solid #ffffff2d;padding-top:22px;margin-top:40px;font-size:12px;color:#b9c9be}.notice{font-size:13px;color:#666}.notice a{color:inherit}@media(max-width:850px){.split,.menu-columns,.footer-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.nav-toggle{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 14px 25px #2222;flex-direction:column;align-items:flex-start}nav.open{display:flex}.hero{min-height:550px}}@media(max-width:580px){.shell{padding:0 18px}.card-grid,.gallery-grid{grid-template-columns:1fr}.hero{min-height:500px}.hero p{font-size:16px}.section{padding:55px 0}.split img{height:300px}.header-inner{min-height:70px}.brand{font-size:24px}}
/* V1.1: menu-inspired black and warm-gold identity */
.brand{display:flex;align-items:center;max-width:260px;flex-shrink:0;min-width:170px}.brand img{display:block;width:100%;height:auto;max-height:82px;object-fit:contain}.header-inner{min-height:100px}.topline{background:#24211e}.ribbon,.page-hero{background:#302b25}.eyebrow{color:#bf841c}.gallery-grid .original-photo img,.photo-grid .original-photo img{width:100%;height:100%;object-fit:cover}@media(max-width:980px){.brand{max-width:185px}.header-inner{min-height:88px}}

/* V1.3: full-width logo showcase after Find Us section */
.logo-showcase{background:#fff;padding:46px 0 62px;text-align:center}.logo-showcase .shell{display:flex;justify-content:center}.logo-showcase img{width:min(100%,680px);height:auto;display:block;object-fit:contain}@media(max-width:580px){.logo-showcase{padding:34px 0 46px}.logo-showcase img{width:min(100%,500px)}}

/* V1.6: real customer testimonials + Google listing QR */
.guest-section{background:#f9f5ed}.guest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-top:32px}.guest-review{background:#fff;border:1px solid #e9ddc5;border-radius:14px;padding:25px 22px;display:flex;flex-direction:column;gap:14px;box-shadow:0 9px 23px #4b3a1910}.guest-quote{flex:1;line-height:1.62;font-size:15px}.guest-name{font-weight:750;color:#24211e}.guest-source{font-size:12px;color:#736b60}.review-cta{max-width:840px;margin:40px auto 0;display:flex;align-items:center;justify-content:center;gap:35px;border-top:1px solid #ded2ba;padding:28px 22px 0}.review-cta h3{margin:0 0 8px}.review-cta p{margin:0 0 20px;max-width:500px}.review-cta img{width:160px;height:160px;border-radius:10px;background:white;padding:7px}@media(max-width:1020px){.guest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.guest-grid{grid-template-columns:1fr}.review-cta{flex-direction:column;text-align:center;gap:20px}}

/* V1.7: eight testimonials (two rows of four on desktop) and warm gold review stars */
.guest-grid{row-gap:20px}
.guest-stars{color:#d69c00;letter-spacing:3px;font-size:23px;line-height:1.1;font-weight:800;white-space:nowrap;margin-bottom:2px}
.guest-review{gap:12px}
@media(max-width:580px){.guest-stars{font-size:22px}}

/* Dedicated breakfast and lunch menu landing */
.menu-chooser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:970px;margin:auto}
.menu-chooser>a{display:block;padding:38px 33px;border:1px solid rgba(0,0,0,.1);border-radius:16px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 8px 25px rgba(0,0,0,.045);transition:transform .2s,box-shadow .2s}
.menu-chooser>a:hover,.menu-chooser>a:focus-visible{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.menu-chooser h2{margin:12px 0;font-size:clamp(2rem,4vw,3rem)}
.menu-chooser strong{display:inline-block;margin-top:14px;color:#9b6500}
.menu-nav .active-menu{background:#ffcc00;color:#171717}
@media(max-width:650px){.menu-chooser{grid-template-columns:1fr}}
