:root{--green:#173b32;--cream:#f6f2e9;--ink:#203c32;--gold:#d8c39c;--muted:#637168;--line:#d8dccf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b87b32;outline-offset:6px}.skip{position:absolute;top:-100px;padding:10px;background:white;z-index:20}.skip:focus{top:0}.topline{text-align:center;background:var(--green);color:var(--cream);font-size:12px;letter-spacing:.2em;padding:9px 15px}header{display:flex;align-items:center;justify-content:space-between;padding:22px 5%;gap:25px;background:var(--cream)}.brand{display:flex;flex-direction:column;text-align:center;line-height:1.2;flex-shrink:0}.brand span{font-family:Georgia,serif;font-size:29px;letter-spacing:-1px}.brand small{font-size:10px;letter-spacing:.23em;margin-top:8px}nav{display:flex;gap:30px;font-size:14px}nav a:hover,.text-link:hover{opacity:.7}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:var(--cream);padding:14px 24px;border:1px solid var(--green);font-size:14px;min-height:48px;transition:background .2s}.button:hover{background:#2c5447}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--cream);min-height:655px}.hero-copy{padding:67px 9% 36px 10%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;letter-spacing:.19em;font-weight:600;margin:0 0 25px}.hero .eyebrow{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(42px,4.6vw,74px);letter-spacing:-2.7px;line-height:1.07;margin-bottom:27px}em{font-weight:400}h1 em{color:var(--gold)}.intro{font-size:17px;max-width:375px;line-height:1.8;color:#e1e6da}.actions{display:flex;align-items:flex-start;flex-direction:column;gap:20px;margin-top:18px}.light{background:var(--cream);border-color:var(--cream);color:var(--green)}.light:hover{background:var(--gold);color:var(--green)}.text-link{font-size:14px;border-bottom:1px solid currentColor;padding-bottom:4px;width:fit-content}.hero-bottom{border-top:1px solid #496156;margin-top:50px;padding-top:23px;display:flex;gap:50px;font-size:12px;color:#bccbbe;line-height:1.65}.hero-bottom b{font-weight:400;color:var(--cream);font-size:14px}.hero-image{position:relative;min-height:100%;overflow:hidden}.hero-image img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.image-label{position:absolute;bottom:30px;right:30px;background:var(--cream);padding:18px 27px;text-align:center;font-size:11px;letter-spacing:.15em;color:var(--green);transform:rotate(-5deg);box-shadow:0 3px 18px #0002}.image-label i{font-family:Georgia,serif;font-size:23px;letter-spacing:0}.ribbon{display:flex;align-items:center;justify-content:center;gap:52px;border-bottom:1px solid var(--line);padding:23px 20px;font-size:13px;letter-spacing:.05em}.ribbon i{font-style:normal;color:#978253}.section{padding:95px 8%;max-width:1500px;margin:auto}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:flex-end}.section-heading>p{max-width:350px;color:var(--muted);font-size:16px;margin-bottom:13px}h2{font-size:clamp(35px,3.8vw,58px);line-height:1.12;letter-spacing:-1.6px;margin-bottom:15px}.menu-toolbar{display:flex;gap:8px;margin:40px 0 0;border-bottom:1px solid var(--line)}.filter{background:transparent;border:0;border-bottom:2px solid transparent;padding:14px 25px;cursor:pointer;color:var(--muted);font-size:15px}.filter.active{border-color:var(--green);color:var(--green);font-weight:bold}.filter:hover{background:#e9eadf}.dishes{display:grid;grid-template-columns:1fr 1fr;column-gap:60px}.dish{padding:27px 0 24px;border-bottom:1px solid var(--line)}.dish h3{font-size:25px;line-height:1.2;margin-bottom:9px}.dish p{margin:0;color:var(--muted);font-size:15px}.menu-note{font-size:13px;color:var(--muted);max-width:740px;margin:25px 0 0}.story{display:grid;grid-template-columns:1fr 1fr;background:#e7e9dc;padding:80px 8%;gap:10%}.story-title>p:not(.eyebrow){max-width:370px;color:var(--muted);margin:25px 0}.story-details article{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid #c9cfbc}.story-details article:first-child{padding-top:0}.story-details article:last-child{border:0;padding-bottom:0}.number{font-family:Georgia,serif;font-size:16px;padding-top:4px;color:#7a8064}.story-details h3{font-size:25px;line-height:1.2;margin-bottom:13px}.story-details p{color:#556256;font-size:15px;margin:0}.story-details a{display:inline-block;font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-top:14px}.visit-heading{display:flex;align-items:center;justify-content:space-between;gap:25px}.visit-grid{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:60px;border-top:1px solid var(--line);margin-top:42px;padding-top:38px}.visit-grid h3{font-size:24px;margin-bottom:20px}.visit-grid p{color:var(--muted);font-size:15px}.hours{display:grid;grid-template-columns:1fr auto;gap:10px 20px;font-size:14px}.hours b{font-weight:500}.visit-grid .small{font-size:12px;margin-top:18px}.closing{background:var(--green);color:var(--cream);text-align:center;padding:60px 20px}.closing p{font-family:Georgia,serif;font-size:clamp(36px,6vw,85px);line-height:1.2;letter-spacing:-2px;margin-bottom:17px}.closing span{color:var(--gold);font-size:11px;letter-spacing:.22em}footer{padding:25px 5%;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px}footer a:hover{text-decoration:underline}@media(min-width:1600px){.hero-copy{padding-left:max(10%,calc((100vw - 1300px)/2))}}@media(max-width:950px){nav{gap:15px}nav a{font-size:12px}.header-cta{display:none}.hero{min-height:610px}.hero-copy{padding:45px 9%}.hero-bottom{gap:25px}h1{letter-spacing:-1.7px}.ribbon{gap:25px}.section{padding:70px 6%}.story{padding:65px 6%;gap:7%}.visit-grid{gap:25px}.hours{grid-template-columns:1fr;gap:4px}.hours b{margin-bottom:8px}}@media(max-width:650px){html{scroll-padding-top:20px}.topline{font-size:10px}header{padding:20px 6%;flex-wrap:wrap;justify-content:center;gap:18px}.brand span{font-size:28px}.brand small{font-size:9px}nav{width:100%;justify-content:center;gap:24px}nav a{font-size:12px}.hero{display:flex;flex-direction:column}.hero-copy{padding:42px 7% 30px}h1{font-size:49px;line-height:1.05;letter-spacing:-2px}.intro{font-size:16px;max-width:100%}.eyebrow{font-size:11px;margin-bottom:22px}.actions{margin-top:10px}.hero-bottom{margin-top:32px;justify-content:space-between}.hero-image{height:360px;min-height:360px}.image-label{bottom:24px;right:20px;padding:12px 20px}.ribbon{font-size:11px;gap:12px;flex-wrap:wrap;padding:17px 20px}.ribbon span:last-child,.ribbon i:last-of-type{display:none}.section{padding:58px 7%}.section-heading{display:block}.section-heading>p{margin-top:23px}.menu-toolbar{gap:0;margin-top:25px;justify-content:space-between}.filter{padding:13px 15px;font-size:14px}.dishes{grid-template-columns:1fr}.dish{padding:23px 0}.dish h3{font-size:24px}.story{grid-template-columns:1fr;padding:55px 7%;gap:35px}.story-title>p:not(.eyebrow){max-width:none}.visit-heading{align-items:flex-start;flex-direction:column}.visit-heading .button{margin-top:15px}.visit-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.visit-grid>div{border-bottom:1px solid var(--line);padding-bottom:28px}.visit-grid>div:last-child{border:none;padding-bottom:0}.visit-grid h3{margin-bottom:12px}.hours{grid-template-columns:1fr auto;gap:12px}.hours b{margin:0}footer{padding:24px 7%;justify-content:flex-start;column-gap:25px}footer>span{width:100%}.closing{padding:45px 20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.reservation-email{margin-top:18px;overflow-wrap:anywhere}.reservation-email a{font-size:14px}

/* Restaurant photography */
.hero{grid-template-columns:0.85fr 1.15fr}.hero-image img{object-position:50% 50%}
.food-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:38px}
.food-gallery figure,.story figure,.visit figure{margin:0;min-width:0}
.food-gallery a,.story figure a,.visit figure a{display:block}
.food-gallery img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.food-gallery figure:last-child img{object-position:50% 62%}
figcaption{font-size:14px;line-height:1.4;padding-top:10px;color:var(--muted)}
.story figure{margin-bottom:32px}.story figure img{display:block;width:100%;height:auto;object-fit:cover}
.story-title figure img{aspect-ratio:4/5;object-position:50% 65%}
.story-details figure img{aspect-ratio:4/3}
.visit figure{margin-bottom:25px}.visit figure img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 38%;display:block}
@media(max-width:950px){.hero{grid-template-columns:1fr 1fr}.food-gallery{gap:18px}}
@media(max-width:650px){.hero-image{height:auto;min-height:0}.hero-image img{position:static;display:block;aspect-ratio:16/9;height:auto;width:100%;object-fit:cover}.image-label{display:none}.food-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.story-title figure img{aspect-ratio:4/5}.story-details figure img{aspect-ratio:16/9}}

.about-section,.event-section{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.about-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 65%}.about-section p,.event-section p,.venue-section p{color:var(--muted)}.menu-section{padding-top:55px}.menu-periods{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.menu-periods article{padding:35px;border:1px solid var(--line)}.menu-periods article:nth-child(2){background:var(--green);color:var(--cream)}.menu-periods article:nth-child(2) .button{background:var(--cream);color:var(--green)}.time-label{font-size:14px;letter-spacing:.12em}.menu-periods h3{font-size:36px;margin:14px 0}.kitchen-heading{margin-top:55px}.kitchen-heading h3{font-size:30px;margin-bottom:12px}.venue-section img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:25px 0}.venue-section h3{font-size:30px}.event-photo img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;object-position:50% 65%}.reservation-section{background:#e7e9dc;max-width:none}.reservation-section>p{max-width:720px}.reserve-options{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:30px}.reserve-options article{padding:28px;background:var(--cream);min-width:0}.reserve-options h3{font-size:27px}.email-address{overflow-wrap:anywhere;text-decoration:underline}.phone-number{font-size:24px;text-decoration:underline}.reserve-options p{margin:15px 0 0;color:var(--muted)}.visit-grid>div>img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 35%}.mobile-reserve{display:none}nav{gap:20px}
@media(max-width:650px){.about-section,.event-section,.menu-periods,.reserve-options{grid-template-columns:1fr;gap:28px}.menu-periods article{padding:25px}.event-photo img{aspect-ratio:4/3}.mobile-reserve{display:block;position:fixed;bottom:0;left:0;right:0;text-align:center;background:var(--green);color:var(--cream);padding:13px 20px calc(13px + env(safe-area-inset-bottom));z-index:10;border-top:1px solid var(--gold)}body{padding-bottom:75px}nav{flex-wrap:wrap;gap:10px 20px}.venue-section{display:grid}.email-address{font-size:16px}}

.evening-menu{margin-top:50px}.evening-menu h3{font-size:32px}.menu-category{border-bottom:1px solid var(--line)}.menu-category summary,.original-menu>summary{cursor:pointer;padding:20px 0;font-size:21px;font-family:Georgia,serif}.menu-category dl{margin:0 0 20px}.menu-row{display:grid;grid-template-columns:1fr auto;gap:20px;padding:10px 0}.menu-row dd{margin:0;white-space:nowrap}.evening-menu>.button{margin-top:22px}.original-menu{margin-top:25px}.original-menu figure{margin:20px auto 35px;max-width:820px}.original-menu img{width:100%;height:auto;display:block}.original-menu figcaption{margin-bottom:12px}.menu-category summary:focus-visible,.original-menu summary:focus-visible{outline:3px solid #b87b32;outline-offset:3px}

@media(min-width:1000px){.reserve-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
