:root{--ink:#243c36;--deep:#203a34;--cream:#f5f3ee;--sand:#eae6dd;--text:#46504a;--line:#d8d9cf;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{background:none;border:0}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #b98c43;outline-offset:5px}::selection{background:#d7ccb6;color:var(--ink)}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:10px 20px}.skip-link:focus{top:10px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 4.3%;background:rgba(250,249,246,.98);position:sticky;top:0;z-index:30;border-bottom:1px solid #e4e4dc}.brand{width:184px;flex-shrink:0}.brand img{mix-blend-mode:multiply}.desktop-nav{display:flex;align-items:center;gap:30px;font-size:13px;letter-spacing:.01em}.desktop-nav a{position:relative}.desktop-nav a:after{content:'';height:1px;background:var(--ink);position:absolute;left:0;right:100%;bottom:-5px;transition:right .2s}.desktop-nav a:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:20px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 23px;font-size:13px;font-weight:500;line-height:1.5;transition:background .2s,transform .2s;border:1px solid transparent;white-space:nowrap}.button span{font-size:20px;line-height:1}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--deep);color:white}.button-dark:hover{background:#34564b}.button-cream{background:var(--cream);color:var(--ink)}.button-cream:hover{background:#e7e3d9}.button-outline{color:white;border-color:#ffffff85;background:#0000000a}.button-outline:hover{background:#ffffff20}.button-border{border-color:var(--line)}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.mobile-nav{background:var(--cream);padding:20px 7%;position:fixed;top:80px;left:0;right:0;z-index:25;box-shadow:0 15px 20px #0001}.mobile-nav a{display:block;border-bottom:1px solid var(--line);padding:14px 0}.hero{height:min(760px,calc(100svh - 100px));min-height:590px;position:relative;color:white;overflow:hidden}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center 50%;position:absolute}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,25,22,.75),rgba(10,25,22,.22) 65%,rgba(10,25,22,.03)),linear-gradient(0deg,#10221f77,transparent 35%)}.hero-content{position:relative;z-index:1;padding:110px 7% 90px}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:500;line-height:1.6}.green{color:#5b6a5e}.small-line{display:inline-block;width:28px;height:1px;background:currentColor;vertical-align:middle;margin-right:10px}.hero h1{font-family:var(--serif);font-size:clamp(64px,6.8vw,104px);font-weight:400;line-height:1.05;letter-spacing:-.045em;margin:28px 0 27px}em{font-weight:400}.hero-copy{font-size:16px;color:#f7f6f1;line-height:1.8}.hero-buttons{display:flex;gap:14px;margin-top:32px}.hero-bottom{position:absolute;bottom:0;left:7%;right:7%;border-top:1px solid #ffffff4d;display:flex;align-items:center;justify-content:space-between;padding:22px 0;font-size:9px;letter-spacing:.18em}.hero-bottom a{letter-spacing:.03em;font-size:12px}.hero-bottom a span{margin-left:25px;font-size:20px}.section-pad{padding:108px 7%}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding-bottom:72px}.intro h2{margin-top:26px}h2{font-family:var(--serif);font-size:clamp(40px,4.2vw,62px);font-weight:400;line-height:1.12;letter-spacing:-.04em}.intro-text{padding-top:2px;max-width:480px}.wave{display:block;font-size:45px;letter-spacing:-8px;line-height:1;color:#7e8b79;margin:0 0 27px}.intro-text p{margin-bottom:22px;color:var(--text);font-size:15px;line-height:1.85}.text-link{display:inline-flex;align-items:center;gap:35px;border-bottom:1px solid #9da99b;padding:0 0 7px;font-size:13px;line-height:1.6}.text-link span{font-size:20px}.text-link:hover{color:#78835d}.restaurant-images{padding:0 7% 100px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.restaurant-images img{height:390px;object-fit:cover}.restaurant-images .narrow{padding-top:0}.restaurant-images .narrow img{height:390px}.restaurant-images figcaption{font-family:var(--serif);font-style:italic;color:#6b7264;font-size:15px;padding-top:16px}.menu-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-top:88px;padding-bottom:110px}.menu-photo{position:relative;align-self:stretch;min-height:540px}.menu-photo img{height:100%;position:absolute;object-fit:cover;object-position:54%}.photo-note{position:absolute;bottom:30px;right:-25px;background:var(--sand);padding:25px 30px;font-family:var(--serif);font-size:26px;line-height:1.2}.menu-content h2{font-size:48px;margin:22px 0}.menu-content>p:not(.eyebrow){color:var(--text);max-width:450px}.menu-links{margin:27px 0}.menu-links>a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:19px 0}.menu-links>a:last-child{border-bottom:1px solid var(--line)}.menu-links strong{font-family:var(--serif);font-weight:400;font-size:24px;display:block}.menu-links small{display:block;font-size:8px;letter-spacing:.14em;margin-top:4px;color:#6d746a}.round-arrow{display:grid;place-items:center;border:1px solid #bfc7ba;border-radius:50%;width:36px;height:36px;font-size:20px;transition:background .2s}.menu-links a:hover .round-arrow{background:#e1e6d9}.events-section{background:var(--deep);color:var(--cream)}.events-top{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:55px}.events-top .eyebrow{color:#c5ceb9;margin-bottom:22px}.events-top>p{max-width:380px;color:#d6ddd2;line-height:1.85;padding-bottom:5px}.events-main{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%}.event-photo img{height:600px;object-fit:cover}.event-tabs{display:flex;border-bottom:1px solid #667769;gap:22px}.event-tabs button{padding:12px 0 15px;font-size:13px;color:#c2cbbd;position:relative}.event-tabs button[aria-selected=true]{color:white}.event-tabs button[aria-selected=true]:after{content:'';height:2px;position:absolute;bottom:-1px;left:0;right:0;background:var(--cream)}.event-number{color:#b8c5ae;font-size:9px;letter-spacing:.15em;margin:35px 0 18px}.event-details h3{font-family:var(--serif);font-weight:400;font-size:38px;line-height:1.2;letter-spacing:-.03em;margin-bottom:20px}.event-details #event-copy{font-size:14px;line-height:1.85;color:#d5ddd1;min-height:78px}.event-list{list-style:none;margin:25px 0;padding:0;color:#d5ddd1;font-size:13px}.event-list li{border-bottom:1px solid #486052;padding:9px 0}.event-list li:before{content:'↗';padding-right:14px;color:#c7d4b9}.event-ctas{display:flex;align-items:flex-start;flex-direction:column;gap:18px;margin-top:25px}.light-link{font-size:12px;border-bottom:1px solid #89967e;padding-bottom:5px}.light-link span{margin-left:24px}.event-foot{border-top:1px solid #647363;margin-top:52px;padding-top:25px;display:flex;justify-content:space-between;gap:25px;font-size:13px}.event-foot>span{color:#c8d1c1}.event-foot a span{margin-left:28px}.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:40px}.section-title h2{margin-top:20px;font-size:48px}.section-title>p{color:var(--text);font-size:13px}.gallery-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px}.gallery-item{padding:0;text-align:left}.gallery-item img{height:320px;object-fit:cover;transition:filter .3s}.gallery-item:hover img{filter:brightness(.85)}.gallery-item>span{display:flex;justify-content:space-between;align-items:center;font-family:var(--serif);font-size:19px;padding:15px 0;border-bottom:1px solid var(--line)}.gallery-item>span>span{font-family:var(--sans);font-size:21px}.gift-section{padding:65px 7%;background:var(--sand);display:flex;align-items:center;justify-content:space-between;gap:40px}.gift-mark{width:150px;height:175px;border:1px solid #9ca58f;border-radius:90px 90px 0 0;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:77px;position:relative;flex-shrink:0}.gift-mark span{position:absolute;bottom:0;font-size:65px}.gift-section h2{font-size:38px;margin:15px 0}.gift-section p:not(.eyebrow){font-size:13px;color:var(--text)}.contact-section{display:grid;grid-template-columns:1fr 1.1fr;gap:12%}.contact-heading h2{margin:25px 0 32px}.contact-data{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;row-gap:34px;padding-top:7px}.contact-data>div:nth-child(2){grid-column:1/-1;grid-row:2}.contact-data h3{font-family:var(--serif);font-weight:400;font-size:22px;margin-bottom:13px}.contact-data p{font-size:13px;color:var(--text);line-height:1.9}.contact-data .text-link{font-size:11px;margin-top:12px}.contact-data dl{margin:0;font-size:13px;max-width:380px}.contact-data dl>div{display:flex;justify-content:space-between;gap:20px}.contact-data dd{margin:0}.small-copy{margin-top:7px!important;font-size:11px!important}.contact-data a:hover{text-decoration:underline}footer{background:var(--deep);color:#e8ecdf;padding:45px 7% 22px}.footer-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #5c6f5e;padding-bottom:30px}.footer-brand{font-family:var(--serif);font-size:32px;letter-spacing:.08em;line-height:1.3}.footer-brand span{font-family:var(--sans);display:block;text-align:right;font-size:7px;letter-spacing:.14em}.footer-top p{font-family:var(--serif);font-style:italic;font-size:21px}.back-top{border:1px solid #839078;border-radius:50%;width:40px;height:40px;display:grid;place-items:center}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:22px;font-size:9px;color:#c5cfbf}.footer-bottom nav{display:flex;gap:24px}.footer-bottom>span:last-child{letter-spacing:.1em}dialog{border:0;padding:48px;background:var(--cream);color:var(--ink);max-width:min(540px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow:auto}dialog::backdrop{background:#10221fbb;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:18px;top:10px;font-size:30px;width:40px;height:40px;line-height:1}.reserve-dialog h2{font-size:39px;margin:24px 0}.reserve-dialog>p:not(.eyebrow){font-size:14px;margin-bottom:24px;line-height:1.8}.reserve-dialog .button{display:flex;width:100%;margin-bottom:12px}.reserve-dialog .dialog-note{font-size:11px!important;margin:15px 0 25px!important;color:#626e5e}.dialog-event{border-top:1px solid var(--line);padding-top:20px;font-size:12px;display:flex;flex-direction:column;gap:6px}.dialog-event a{text-decoration:underline}.gallery-dialog{max-width:min(1100px,calc(100% - 32px));width:1100px;padding:40px 20px 20px;background:#172d26;color:white}.gallery-dialog>img{max-height:70svh;object-fit:contain}.gallery-dialog>p{text-align:center;padding-top:15px;font-size:13px}.gallery-controls{display:flex;justify-content:center;align-items:center;gap:35px;margin-top:12px}.gallery-controls button{border:1px solid #607162;width:40px;height:36px}.gallery-controls span{font-size:11px}
@media(min-width:1600px){.section-pad{padding-left:max(7%,calc((100% - 1380px)/2));padding-right:max(7%,calc((100% - 1380px)/2))}}
@media(max-width:1100px){.desktop-nav{gap:18px;font-size:11px}.header{padding:0 4%}.brand{width:158px}.header .button{padding:13px 18px;font-size:11px;gap:18px}.section-pad{padding:80px 6%}.hero-content{padding:100px 6%}.hero h1{font-size:80px}.intro{gap:7%}.intro h2{font-size:45px}.restaurant-images{padding:0 6% 80px}.restaurant-images img{height:320px}.restaurant-images .narrow img{height:320px}.menu-section{gap:7%}.menu-content h2{font-size:39px}.menu-photo{min-height:520px}.events-main{gap:6%;grid-template-columns:.85fr 1.15fr}.event-tabs{gap:16px}.event-tabs button{font-size:11px}.event-photo img{height:620px}.events-top>p{max-width:340px}.event-details h3{font-size:33px}.gallery-item img{height:250px}.gift-mark{width:115px;height:150px}.gift-section{gap:30px;padding:55px 6%}.gift-section h2{font-size:31px}.gift-section>.button{padding:14px 18px;font-size:12px;gap:20px}.contact-section{gap:7%}.contact-data{gap:25px}.contact-data h3{font-size:20px}}
@media(max-width:800px){.header{height:80px;padding:0 5%}.brand{width:150px}.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;width:30px;padding:4px}.menu-toggle span{height:1px;background:var(--ink);width:22px;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header-actions{gap:15px}.header .button{padding:10px 14px}.hero{min-height:620px;height:calc(90svh - 80px);max-height:760px}.hero-image{object-position:58%}.hero-content{padding:100px 7% 100px}.hero h1{font-size:68px}.hero-copy{font-size:14px}.hero-bottom>span:first-child{display:none}.section-pad{padding:70px 7%}.intro{grid-template-columns:1fr;gap:35px}.intro h2{font-size:48px}.intro-text{max-width:none}.wave{display:none}.restaurant-images{gap:20px;padding:0 7% 70px}.restaurant-images img{height:260px}.restaurant-images .narrow{padding-top:0}.restaurant-images .narrow img{height:260px}.restaurant-images figcaption{font-size:13px}.menu-section{grid-template-columns:1fr;gap:50px}.menu-photo{min-height:390px}.menu-content h2{font-size:44px}.menu-content>p:not(.eyebrow){max-width:none}.photo-note{right:-16px;bottom:25px}.events-top{display:block;margin-bottom:35px}.events-top h2{font-size:48px}.events-top>p{margin-top:28px;max-width:none;font-size:14px}.events-main{grid-template-columns:1fr;gap:30px}.event-photo img{height:420px;object-position:center 55%}.event-tabs{gap:26px}.event-tabs button{font-size:13px}.event-details h3{font-size:38px}.event-details #event-copy{min-height:0}.event-foot{flex-direction:column;gap:10px;margin-top:35px}.section-title{display:block}.section-title h2{font-size:43px}.section-title>p{margin-top:22px}.gallery-grid{gap:15px;grid-template-columns:1.2fr 1fr}.gallery-item:last-child{display:none}.gallery-item img{height:280px}.gallery-item>span{font-size:17px}.gift-section{flex-wrap:wrap;justify-content:flex-start;gap:30px;padding:50px 7%}.gift-mark{width:100px;height:130px;font-size:60px}.gift-section>div:nth-child(2){flex:1}.gift-section>.button{margin-left:130px}.contact-section{grid-template-columns:1fr;gap:45px}.contact-heading h2{font-size:49px}.contact-data{grid-template-columns:1fr 1fr}.footer-top p{font-size:17px}.footer-bottom>span:last-child{display:none}}
@media(max-width:480px){.header{height:76px}.brand{width:130px}.header-actions{gap:12px}.header .button{font-size:10px;padding:10px 12px;gap:9px}.header .button span{font-size:16px}.mobile-nav{top:76px}.hero{min-height:630px;height:calc(100svh - 76px);max-height:740px}.hero-image{object-position:61%}.hero-shade{background:linear-gradient(90deg,#132820c7,#12281f38),linear-gradient(0deg,#0e211d88,transparent 70%)}.hero-content{padding:106px 6% 100px}.hero h1{font-size:54px;line-height:1.08;margin:23px 0}.eyebrow{font-size:9px;letter-spacing:.18em}.hero-copy{font-size:13px}.hero-buttons{gap:10px;margin-top:28px}.hero-buttons .button{padding:13px 15px;font-size:11px;gap:18px}.hero-bottom{left:6%;right:6%;padding:20px 0;font-size:8px;letter-spacing:.08em}.hero-bottom a{font-size:10px}.hero-bottom a span{margin-left:8px}.section-pad{padding:60px 6%}.intro h2{font-size:40px}.intro-text p{font-size:14px}.restaurant-images{grid-template-columns:1fr;padding:0 6% 60px;gap:25px}.restaurant-images img{height:260px}.restaurant-images .narrow{padding:0}.restaurant-images .narrow img{height:260px}.menu-photo{min-height:340px}.photo-note{font-size:24px;padding:20px;right:-8px}.menu-content h2{font-size:37px}.menu-content>p:not(.eyebrow){font-size:14px}.menu-links strong{font-size:23px}.events-top h2{font-size:43px}.event-photo img{height:360px}.event-tabs{gap:20px;justify-content:space-between}.event-tabs button{font-size:11px}.event-details h3{font-size:33px}.event-list{font-size:12px}.event-ctas .button{font-size:11px;gap:15px;width:100%}.section-title h2{font-size:37px}.gallery-grid{grid-template-columns:1fr;gap:25px}.gallery-item:last-child{display:block}.gallery-item img{height:250px}.gift-section{padding:45px 6%;gap:23px}.gift-mark{display:none}.gift-section h2{font-size:34px}.gift-section>.button{margin-left:0}.gift-section>div:nth-child(2){flex-basis:100%}.contact-heading h2{font-size:44px}.contact-data{grid-template-columns:1fr;row-gap:28px}.contact-data>div:nth-child(2){grid-column:auto}.contact-data h3{font-size:24px}.contact-data p{font-size:14px}.contact-data dl{font-size:13px}.footer-top{flex-wrap:wrap;gap:25px;position:relative}.footer-top p{flex-basis:100%;font-size:18px}.back-top{position:absolute;top:3px;right:0}.footer-bottom{font-size:9px}.footer-bottom nav{gap:13px}footer{padding:35px 6% 20px}.footer-brand{font-size:29px}dialog{padding:38px 24px}.reserve-dialog h2{font-size:34px}.reserve-dialog .button{font-size:12px}.gallery-dialog{padding:40px 10px 15px}.gallery-dialog>img{max-height:65svh}}
.topic-directory{display:flex;flex-wrap:wrap;justify-content:center;gap:20px 32px;padding:30px 7%;border-top:1px solid var(--line)}.topic-directory .text-link{font-size:11px;gap:10px}.breadcrumbs{padding:28px 7% 0;display:flex;gap:15px;font-size:10px;color:#687365}.breadcrumbs a{text-decoration:underline}.topic-hero{padding:55px 7% 70px;display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:center}.topic-hero h1{font-family:var(--serif);font-size:54px;font-weight:400;letter-spacing:-.04em;line-height:1.12;margin:24px 0}.topic-hero>div>p:last-child{font-size:15px;line-height:1.9;max-width:580px;color:var(--text)}.topic-hero>img{height:430px;object-fit:cover}.topic-body{max-width:940px;margin:0 auto;padding:0 7% 50px}.topic-copy{margin-bottom:55px}.topic-copy h2,.topic-faq h2{font-size:36px;line-height:1.2;margin-bottom:23px}.topic-copy .eyebrow{margin-bottom:16px}.topic-copy>p{margin-bottom:20px;line-height:1.9}.topic-copy p .text-link{display:inline;padding:0;border-bottom:1px solid #a3ad9b;font-size:inherit}.topic-copy p .text-link span{font-size:13px}.topic-actions{display:flex;gap:25px;flex-wrap:wrap;align-items:center;margin:30px 0 55px}.topic-faq{margin:55px 0}.topic-faq>.eyebrow{margin-bottom:20px}.topic-faq details{border-bottom:1px solid var(--line);padding:19px 0}.topic-faq summary{cursor:pointer;list-style:none;font-size:16px;padding-right:26px;position:relative}.topic-faq summary::-webkit-details-marker{display:none}.topic-faq summary:after{content:'+';position:absolute;right:0;top:0}.topic-faq details[open] summary:after{content:'−'}.topic-faq details p{padding-top:14px;font-size:14px;line-height:1.9;color:var(--text)}.topic-end{background:var(--sand);padding:55px 7%;display:flex;align-items:center;justify-content:space-between;gap:45px}.topic-end h2{font-size:42px}.topic-end p{font-size:13px;margin-bottom:20px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px;margin:25px 0}th{text-align:left;font-weight:500;color:#586650;background:#eaece2}th,td{padding:14px 12px;border-bottom:1px solid var(--line)}td:not(:first-child),th:not(:first-child){white-space:nowrap}
@media(max-width:800px){.topic-hero{grid-template-columns:1fr;padding-top:35px;gap:30px}.topic-hero h1{font-size:46px}.topic-hero>img{height:330px}.topic-body{padding-left:7%;padding-right:7%}.topic-end{align-items:flex-start;flex-direction:column;gap:25px}.topic-directory{justify-content:flex-start;gap:16px 25px}}
@media(max-width:480px){.topic-hero{padding:30px 6% 45px}.topic-hero h1{font-size:38px}.topic-hero>img{height:270px}.topic-hero>div>p:last-child{font-size:14px}.topic-body{padding:0 6% 30px}.topic-copy h2,.topic-faq h2{font-size:31px}.topic-copy p{font-size:14px}.topic-end h2{font-size:36px}.topic-actions .button{font-size:12px;white-space:normal}.breadcrumbs{padding-left:6%;gap:10px}.topic-faq summary{font-size:15px}table{font-size:11px}th,td{padding:12px 8px}.topic-directory{padding:25px 6%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
