:root{--cream:#f4efe5;--paper:#fffaf2;--forest:#183b32;--chalk:#171a18;--herb:#7c9b5b;--coral:#d7684d;--ink:#1b2823;--line:#d8cfc0;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 Inter,system-ui,-apple-system,sans-serif}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}.skip{position:absolute;top:-50px;left:12px;background:var(--coral);color:#fff;padding:9px 12px;z-index:30}.skip:focus{top:12px}.notice{height:34px;background:var(--forest);color:#f4efe5;padding:0 4vw;display:flex;justify-content:space-between;align-items:center;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.notice a{color:#fff}.header{height:82px;position:sticky;top:0;z-index:20;background:#f4efe5ee;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4vw;backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:10px;color:var(--forest);font:1rem/1 Georgia,serif}.brand img{width:48px;height:48px;border-radius:50%}.brand b{font-size:1.2rem}.nav{display:flex;gap:27px;margin-left:auto;margin-right:28px;font-size:.84rem}.nav a:hover,.underlined:hover{color:var(--coral)}.controls{display:flex;align-items:center;gap:16px}.languages{display:flex;gap:5px;align-items:center;font-size:.76rem}.lang{border:0;background:none;color:#6d776c;cursor:pointer;padding:4px}.lang.active{color:var(--coral);font-weight:700}.head-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:10px 19px;font-weight:700;font-size:.82rem}.head-cta,.button.coral{background:var(--coral);color:#fff}.button.outline{border:1px solid var(--forest)}.button.text{color:var(--coral);padding-left:2px;padding-right:2px}.button.dark{background:var(--forest);color:#fff}.menu-toggle{display:none;border:0;background:none;padding:6px}.menu-toggle span{display:block;width:23px;height:2px;background:var(--forest);margin:5px}.hero{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1.04fr;min-height:570px}.hero-copy{padding:70px 8% 58px 5%;display:flex;flex-direction:column;justify-content:center}.eyebrow{margin:0 0 14px;color:var(--coral);font-size:.68rem;letter-spacing:.18em;font-weight:800}.hero h1,h2{font:400 clamp(2.8rem,5vw,5rem)/1.04 Georgia,serif;letter-spacing:-.045em;margin:0;color:var(--chalk)}.hero h1{max-width:10ch}.hero h1 em{color:var(--coral);font-style:italic}.lead{max-width:42ch;color:#53605a;font-size:1.1rem;margin:22px 0 28px}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.hero-meta{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:13px;margin-top:37px;color:#6b746c;font-size:.73rem}.hero-media{position:relative;min-height:570px;background:var(--chalk)}.hero-media img{height:100%;object-position:center}.image-note{position:absolute;bottom:19px;left:19px;background:var(--cream);padding:7px 11px;color:var(--forest);font:800 .7rem Georgia,serif;letter-spacing:.08em}.section{max-width:var(--max);margin:auto;padding:92px 5%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:34px}.section-head>p{max-width:38ch;color:#53605a}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.menu-card{background:var(--paper);border:1px solid #e0d6c9;padding-bottom:17px}.menu-card img{aspect-ratio:4/3}.menu-card h3{font:1.27rem Georgia,serif;margin:15px 18px 1px;color:var(--chalk)}.menu-card p{color:#6b746c;margin:0 18px;font-size:.88rem}.menu-card strong{display:block;color:var(--coral);margin:8px 18px 0;font-size:.88rem}.menu-card.featured{border-top:4px solid var(--herb)}.menu-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid var(--line);margin-top:30px;padding-top:17px}.menu-rows div{display:flex;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding:6px 0}.menu-rows span{font-weight:700;color:var(--forest)}.menu-rows b{margin-left:auto;color:var(--coral);white-space:nowrap}.menu-rows small{color:#718078;font-size:.76rem}.chalkboard{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:center;background:var(--chalk);color:#fff;padding:18px;margin-top:34px}.chalkboard img{height:190px;object-position:center 35%}.chalkboard p:not(.eyebrow){margin:0;color:#f4efe5;max-width:34ch}.chalkboard .eyebrow{color:#c9e1a5}.menu-foot{color:#718078;font-size:.8rem;margin-top:24px}.story{background:var(--forest);color:#fff;display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:center;padding:90px max(5%,calc((100% - var(--max))/2 + 5%))}.story-image img{aspect-ratio:16/10}.story-copy{max-width:440px}.story h2{color:#fff}.story .eyebrow{color:#c9e1a5}.story-copy>p:not(.eyebrow){color:#f2f4ee}.underlined{display:inline-block;margin-top:12px;border-bottom:1px solid currentColor;padding-bottom:2px}.visit{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.visit h2{max-width:7ch}.visit address{font-style:normal;margin:22px 0;color:#53605a}.visit>img{aspect-ratio:4/3}.hours{border-top:1px solid var(--line);margin-top:43px;padding-top:15px;max-width:370px}.hours h3{font:1.45rem Georgia,serif;margin:0 0 10px}.hours div{display:flex;justify-content:space-between;padding:5px 0;font-size:.9rem}.hours b{font-weight:600}.reservation{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;border-top:1px solid var(--line)}.reservation h2{max-width:7ch}.reservation p{color:#53605a;max-width:37ch}.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}form label{display:block;font-size:.82rem;font-weight:700;margin-bottom:14px}form label span{display:block;margin-bottom:5px}input,textarea{width:100%;padding:10px;border:1px solid #c8c0b3;background:var(--paper);font:inherit;font-size:1rem;color:var(--ink)}input:focus,textarea:focus,.lang:focus,.menu-toggle:focus,.button:focus,a:focus{outline:2px solid var(--coral);outline-offset:2px}form button{border:0;cursor:pointer}#status{min-height:24px;color:var(--coral);font-size:.9rem}footer{background:var(--chalk);color:#fff;padding:40px max(5%,calc((100% - var(--max))/2 + 5%));display:grid;grid-template-columns:1fr auto;gap:18px}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand img{width:40px;height:40px;border-radius:50%}.footer-brand strong{font:1.3rem Georgia,serif}.footer-links{display:flex;gap:23px;align-items:center}.footer-links a:hover{color:#c9e1a5}footer small{grid-column:1/-1;border-top:1px solid #37423d;padding-top:15px;color:#c3cbc2;font-size:.78rem}@media(max-width:820px){.header{height:70px;padding:0 20px}.brand img{width:39px;height:39px}.brand{font-size:.9rem}.head-cta{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:70px;margin:0;padding:12px 20px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;gap:0}.nav.open{display:flex}.nav a{padding:9px 0}.hero{display:flex;flex-direction:column-reverse;min-height:0}.hero-media{height:58vw;min-height:270px;max-height:380px}.hero-copy{padding:38px 20px 32px}.hero h1{font-size:clamp(2.75rem,13vw,4.4rem)}.lead{font-size:1rem;margin:17px 0 22px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.actions .coral{grid-column:1/-1}.actions .button{font-size:.78rem;padding:9px 8px}.hero-meta{margin-top:26px;font-size:.67rem;gap:10px}.section{padding:62px 20px}.section-head{display:block;margin-bottom:26px}.section-head>p{margin-top:15px}.menu-grid{grid-template-columns:1fr;gap:14px}.menu-card{display:grid;grid-template-columns:39% 1fr;padding-bottom:0}.menu-card img{height:100%;aspect-ratio:auto}.menu-card h3{margin:14px 14px 2px;font-size:1.2rem}.menu-card p{margin:0 14px}.menu-card strong{margin:7px 14px}.menu-rows{grid-template-columns:1fr;gap:0;margin-top:23px}.chalkboard{grid-template-columns:1fr;gap:14px;padding:14px}.chalkboard img{height:190px}.menu-rows div{padding:7px 0}.story{display:flex;flex-direction:column;padding:62px 20px;gap:28px}.story-image img{aspect-ratio:4/3}.story-copy{max-width:none}.visit{display:flex;flex-direction:column-reverse;gap:28px}.visit>img{aspect-ratio:4/3}.reservation{display:flex;flex-direction:column;gap:20px}.grid{grid-template-columns:1fr}footer{display:block;padding:34px 20px}.footer-links{margin-top:17px;flex-wrap:wrap}}
