:root{--green:#642738;--cream:#faf7f5;--ink:#34262c;--orange:#ad7841}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #64273822;background:var(--cream);position:relative;z-index:4}.brand{font-family:Georgia,serif;font-weight:bold;font-size:36px;letter-spacing:-1.8px}.brand span{font:10px 'DM Sans',sans-serif;letter-spacing:3px;display:block;text-align:center;margin-top:5px}header nav{display:flex;gap:32px;font-size:14px}header nav a:hover,.text-link:hover{color:#8e3b52}.nav-cta{border:1px solid #875968;border-radius:40px;padding:14px 22px;font-size:14px}.nav-cta span{margin-left:20px}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:660px}.hero-copy{padding:70px 8% 30px 10%}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:600;margin-bottom:27px}h1,h2,h3,p{margin:0}h1{font-family:'Manrope',sans-serif;font-size:clamp(60px,6.6vw,98px);font-weight:500;letter-spacing:-6px;line-height:1.06}em{font-family:Georgia,serif;font-weight:normal}h1 em{letter-spacing:-5px}.hero-copy>p{font-size:17px;line-height:1.8;margin:28px 0 29px;color:#76666b}.actions{display:flex;align-items:center;gap:25px}.button{display:inline-flex;align-items:center;gap:32px;padding:19px 25px;border-radius:40px;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.primary{background:var(--green);color:white}.text-link{font-size:14px;padding-bottom:5px;border-bottom:1px solid #ae9299}.hero-bottom{display:flex;gap:14px;align-items:center;margin-top:52px;font-size:13px;line-height:1.7}.hero-bottom small{font-size:12px;color:#76666b}.location-icon{font-size:30px}.hero-photo{position:relative;overflow:hidden;min-height:620px}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:53% center}.photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,#30101db5,transparent 65%)}.round-stamp{position:absolute;right:36px;top:36px;display:flex;flex-direction:column;justify-content:center;text-align:center;width:135px;height:135px;border-radius:50%;background:#f0d8b1;font-size:10px;letter-spacing:1px;transform:rotate(12deg);line-height:1.25}.round-stamp b{font:italic 24px Georgia;letter-spacing:0}.photo-caption{position:absolute;bottom:38px;left:40px;right:40px;color:white}.photo-caption>span{font-size:11px;letter-spacing:2px}.photo-caption h2{font:36px/1.15 Georgia;margin-top:14px}.photo-caption>a{position:absolute;right:0;bottom:0;border:1px solid #fff8;border-radius:50%;width:54px;height:54px;display:grid;place-items:center;font-size:25px}.ribbon{display:flex;gap:35px;align-items:center;justify-content:center;background:var(--green);color:#f9eee0;padding:25px 20px;font-size:14px}.ribbon i{font-size:25px;color:#dfbb80}.section{padding:90px 5%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:20px}.section h2,.story h2{font:500 clamp(32px,3.6vw,52px)/1.18 'Manrope',sans-serif;letter-spacing:-2px}.section .eyebrow{margin-bottom:18px}.filters{display:flex;gap:10px;margin:33px 0}.filters button{background:transparent;border:1px solid #d2bcc2;color:var(--green);border-radius:30px;padding:11px 22px;font-size:14px}.filters button.active{background:var(--green);color:white;border-color:var(--green)}.food-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.food-grid article{animation:appear .35s ease}.food-grid article[hidden]{display:none}.food-grid img{width:100%;height:270px;object-fit:cover;border-radius:3px}.food-grid article>div{padding:20px 0}.food-grid small{font-size:11px;letter-spacing:1.7px;color:#76666b}.food-grid h3{font:26px Georgia;margin:9px 0}.food-grid p{color:#76666b;font-size:15px;line-height:1.6}.menu-note{font-size:14px;color:#76666b;margin-top:12px}.story{display:grid;grid-template-columns:1fr 1fr;background:#eee3e6}.story>img{width:100%;height:100%;min-height:550px;object-fit:cover}.story-copy{padding:65px 11%}.story-copy>p{line-height:1.8;font-size:16px;color:#76666b;margin-top:22px}.amenities{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.amenities span{font-size:12px;border:1px solid #d2bcc2;padding:8px 11px;border-radius:20px}.occasions{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}.occasions>.eyebrow{grid-column:1/-1}.occasion-grid{grid-column:2;grid-row:2}.occasion-grid details{border-top:1px solid #d2bcc2;padding:22px 0}.occasion-grid details:last-child{border-bottom:1px solid #d2bcc2}.occasion-grid summary{list-style:none;cursor:pointer;display:flex;gap:18px;font-size:20px;align-items:center}.occasion-grid summary::-webkit-details-marker{display:none}.occasion-grid summary span{font-size:12px;color:#876975}.occasion-grid summary b{margin-left:auto;font-weight:400}.occasion-grid details[open] summary b{transform:rotate(45deg)}.occasion-grid p{font-size:16px;line-height:1.7;color:#76666b;margin:19px 0 15px 32px}.occasion-grid a{font-size:14px;margin-left:32px;border-bottom:1px solid #ae9299}.visit{background:var(--green);color:var(--cream);padding:75px 6%;display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.visit h2{font:48px/1.2 'Manrope',sans-serif;letter-spacing:-2px}.visit p{line-height:1.8;margin:23px 0;color:#e4cdd3}.light{background:#f0d8b1;color:var(--green)}.contact-card{border:1px solid #ffffff38;padding:34px;align-self:center}.contact-card>span{font-size:11px;letter-spacing:2px}.contact-card>a{display:block}.contact-card .phone{font:36px Georgia;margin:27px 0 14px}.contact-card hr{border:0;border-top:1px solid #ffffff38;margin-top:28px}.contact-card p{font-size:14px}.contact-card .text-link{display:inline-block}footer{display:flex;align-items:center;justify-content:space-between;padding:35px 5%;gap:20px}footer p,footer>a:last-child{font-size:12px;color:#76666b}footer .brand{font-size:28px}footer .brand span{font-size:8px}:focus-visible{outline:3px solid var(--orange);outline-offset:5px}@keyframes appear{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:none}}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1050px){header nav{gap:17px}.hero-copy{padding-top:50px}h1{font-size:70px}.actions{align-items:start;flex-direction:column;gap:20px}.hero-bottom{margin-top:30px}.hero{min-height:640px}.ribbon{gap:20px;font-size:12px}.food-grid img{height:210px}.story-copy{padding:40px 8%}.visit{gap:35px}.visit h2{font-size:40px}}@media(max-width:760px){header{height:86px;padding:0 6%}.brand{font-size:30px}.nav-cta{display:none}.mobile-menu{display:block;border:0;background:none;font-size:26px;color:var(--green)}header nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--cream);padding:24px;box-shadow:0 8px 10px #0001}header nav.open{display:flex;flex-direction:column}.hero{display:flex;flex-direction:column}.hero-copy{padding:42px 6% 32px}.eyebrow{font-size:10px;letter-spacing:2px}h1{font-size:68px;letter-spacing:-4px}.hero-copy>p{font-size:16px;margin:23px 0}.actions{flex-direction:row;align-items:center;gap:20px}.button{padding:16px 19px;gap:18px;font-size:13px}.text-link{font-size:13px}.hero-bottom{margin-top:30px}.hero-photo{min-height:440px}.round-stamp{width:110px;height:110px;right:22px;top:22px;font-size:8px}.round-stamp b{font-size:20px}.photo-caption{left:25px;bottom:25px;right:25px}.ribbon{display:grid;grid-template-columns:1fr 1fr;text-align:center;font-size:12px;gap:16px}.ribbon i{display:none}.section{padding:55px 6%}.section-top{align-items:start;flex-direction:column}.section h2,.story h2{font-size:35px}.filters{flex-wrap:wrap;margin:25px 0}.filters button{font-size:12px;padding:10px 15px}.food-grid{grid-template-columns:1fr;gap:18px}.food-grid img{height:290px}.food-grid article>div{padding:16px 0}.menu-note{line-height:1.7}.story{grid-template-columns:1fr}.story>img{min-height:0;height:330px}.story-copy{padding:40px 6%}.occasions{display:block}.occasion-grid{margin-top:32px}.occasion-grid summary{font-size:18px}.visit{padding:50px 6%;grid-template-columns:1fr;gap:35px}.visit h2{font-size:39px}.contact-card{padding:25px}.contact-card .phone{font-size:31px}footer{flex-wrap:wrap;padding:30px 6%}footer p{order:3;width:100%;line-height:1.5}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.original-logo{display:block;position:relative;width:180px;height:100px;overflow:hidden;flex-shrink:0}.original-logo img{position:absolute;width:180px;height:180px;max-width:none;left:0;top:-35px;mix-blend-mode:multiply}footer .original-logo{width:150px;height:88px}footer .original-logo img{width:150px;height:150px;top:-27px}@media(max-width:760px){header .original-logo{width:150px;height:82px}header .original-logo img{width:150px;height:150px;top:-29px}}

.gallery{border-top:1px solid #64273822}.gallery-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:22px;margin-top:35px}.gallery-item{background:none;border:0;padding:0;text-align:left;color:var(--ink)}.gallery-item img{width:100%;height:340px;object-fit:cover;border-radius:3px;transition:filter .2s}.gallery-item:hover img{filter:brightness(.9)}.gallery-item span{display:flex;justify-content:space-between;gap:16px;padding:17px 0;font-size:16px}.gallery-item b{font-weight:400}#photo-viewer{border:0;background:#371624;color:white;padding:24px;max-width:94vw;max-height:94vh;border-radius:5px}#photo-viewer::backdrop{background:#210d16ea}#photo-viewer img{display:block;max-width:85vw;max-height:75vh;object-fit:contain;margin:auto}#photo-viewer p{margin-top:16px;font-size:16px;padding-right:35px}.photo-close{position:absolute;right:8px;top:8px;background:var(--cream);color:var(--green);border:0;border-radius:50%;width:42px;height:42px;font-size:28px}body:has(#photo-viewer[open]){overflow:hidden}@media(max-width:760px){.gallery-grid{grid-template-columns:1fr;gap:24px}.gallery-item img{height:300px}#photo-viewer{padding:14px}#photo-viewer img{max-width:84vw}.gallery-item span{font-size:16px}}

.hero-photo>video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:53% center}.video-toggle{position:absolute;z-index:2;left:24px;top:24px;border:1px solid #ffffff80;background:#371624cc;color:white;border-radius:30px;padding:10px 15px;font-size:13px}.photo-shade{pointer-events:none}
.restaurant-menu{background:#faf7f5}.menu-intro{max-width:365px;line-height:1.8;color:#76666b}.menu-intro .text-link{display:inline-block;margin-top:14px}.menu-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:65px;margin-top:45px}.menu-categories{display:flex;flex-direction:column;gap:0;position:sticky;top:25px;align-self:start;border-top:1px solid #64273835}.menu-categories button{display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;border-bottom:1px solid #64273822;background:none;padding:18px 15px;color:var(--green);text-align:left;font-size:16px}.menu-categories button span{opacity:0}.menu-categories button.selected{background:var(--green);color:#fff}.menu-categories button.selected span{opacity:1}.menu-categories button:hover:not(.selected){background:#f0e2e6}.menu-category-heading{display:flex;gap:22px;align-items:center;margin-bottom:25px}.menu-number{font:italic 48px Georgia;color:#a77b46}.menu-category-heading h3{font:36px Georgia;letter-spacing:-1px}.menu-category-heading p{font-size:14px;color:#76666b;margin-top:8px}.menu-category-photo{width:100%;height:230px;object-fit:cover;object-position:center 60%;margin-bottom:20px;border-radius:3px}.menu-dish{display:flex;justify-content:space-between;gap:25px;padding:22px 0;border-bottom:1px solid #64273826}.menu-dish h4{font:500 20px/1.4 'DM Sans',sans-serif;margin:0}.menu-dish p{font-size:14px;line-height:1.65;color:#76666b;margin-top:7px;max-width:570px}.menu-dish strong{font:500 20px 'Manrope',sans-serif;white-space:nowrap;padding-top:3px;color:var(--green)}.menu-footer-note{display:flex;justify-content:space-between;gap:50px;border-top:1px solid #64273835;margin-top:45px;padding-top:25px;color:#76666b;font-size:14px;line-height:1.7}.menu-footer-note p{max-width:650px}.menu-footer-note span{flex-shrink:0;font-size:12px}.menu-category-note{padding-top:20px;font-size:14px;line-height:1.7}.menu-panel[hidden]{display:none}@media(max-width:1050px){.menu-layout{gap:32px;grid-template-columns:205px minmax(0,1fr)}}@media(max-width:760px){.menu-layout{display:block;margin-top:28px}.menu-categories{position:static;box-shadow:none;display:flex;flex-direction:row;overflow-x:auto;gap:8px;padding:0 0 15px;margin-bottom:22px;border:0;background:transparent;scrollbar-width:thin}.menu-categories button{white-space:nowrap;border:1px solid #d2bcc2;border-radius:24px;font-size:14px;padding:12px 17px;flex-shrink:0}.menu-categories button span{display:none}.menu-category-heading h3{font-size:30px}.menu-number{font-size:36px}.menu-category-photo{height:205px}.menu-dish{gap:12px;padding:19px 0}.menu-dish h4{font-size:18px}.menu-dish strong{font-size:17px}.menu-footer-note{flex-direction:column;gap:14px}.menu-footer-note span{font-size:12px}.menu-intro{font-size:16px;max-width:none}}

.menu-nav-highlight{font-weight:700;text-decoration:underline;text-underline-offset:7px;text-decoration-color:#b48b53}

/* Audit: accessible navigation, mobile menu categories, clear portions. */
.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-180%);z-index:100;background:#fff;color:#34262c;padding:14px 20px}.skip-link:focus{transform:none}
.mobile-call,.menu-picker{display:none}.price-option{display:block;white-space:normal}.menu-dish strong{flex-shrink:0;text-align:right}.contact-extra{line-height:1.9}.contact-extra a{text-decoration:underline}.menu-footer-note .actions{margin-top:20px;flex-wrap:wrap}.menu-picker label{display:block;margin-bottom:8px}.menu-picker select{width:100%;padding:14px;font:inherit;border:1px solid #875968;border-radius:8px;background:#fff;color:#34262c}.hero-copy>p{color:#68565e}
@media(max-width:760px){.mobile-call,.menu-picker{display:block}.menu-categories{display:none!important}.menu-dish{gap:12px}.menu-dish strong{max-width:46%;font-size:16px}.hero-copy .actions{flex-wrap:wrap}.menu-picker{margin-bottom:20px}.menu-footer-note .actions{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Visit calendar */
.visit-calendar{background:#f2eae6}.visit-calendar .section-top>p{max-width:340px;line-height:1.7;color:#68565e}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:stretch}.calendar-card{background:#fffdfb;border:1px solid #64273825;border-radius:20px;padding:30px}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px}.calendar-toolbar h3{font-size:24px;text-transform:capitalize}.calendar-toolbar>div{display:flex;gap:6px}.calendar-toolbar button{background:transparent;border:1px solid #64273835;border-radius:30px;min-width:44px;min-height:44px;color:#642738;padding:8px 12px}.calendar-toolbar button:hover{background:#f2eae6}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-week{font-size:14px;text-align:center;color:#68565e;margin-bottom:12px}.calendar-day{border:1px solid transparent;border-radius:12px;min-height:56px;background:#f7f1ee;color:#34262c;font-size:17px}.calendar-day:hover{border-color:#642738}.calendar-day.is-today{border-color:#642738;text-decoration:underline;text-underline-offset:5px}.calendar-day[aria-pressed=true]{background:#642738;color:#fff;box-shadow:0 4px 12px #64273825}.calendar-day.is-closed{background:#f0d7dc;color:#642738;font-weight:700}.calendar-day.is-short{background:#f6e6c9;color:#684315}.calendar-day.is-closed[aria-pressed=true],.calendar-day.is-short[aria-pressed=true]{outline:3px solid #642738;outline-offset:1px}.calendar-legend{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:24px;font-size:13px;color:#68565e}.legend-closed{color:#642738}.legend-short{color:#79511f}.calendar-detail{border-radius:20px;background:#fffdfb;padding:36px;display:flex;flex-direction:column;align-items:flex-start}.calendar-detail h3{font-size:25px;line-height:1.35;text-transform:capitalize}.calendar-hours{font-family:Georgia,serif;font-size:48px;color:#642738;margin:22px 0 16px}.calendar-detail>p:not(.calendar-hours){color:#68565e;line-height:1.7}.calendar-contact{margin-top:auto;padding-top:36px}.calendar-contact p{margin-bottom:14px;line-height:1.6}.calendar-detail .eyebrow{line-height:1.7}
@media(max-width:900px){.calendar-layout{grid-template-columns:1fr}.calendar-detail{padding:28px}.calendar-contact{padding-top:24px}}@media(max-width:500px){.calendar-card{padding:18px 12px}.calendar-toolbar{flex-wrap:wrap}.calendar-toolbar h3{font-size:22px}.calendar-days,.calendar-week{gap:4px}.calendar-day{min-height:44px;border-radius:8px;font-size:16px}.calendar-detail{padding:24px}.calendar-hours{font-size:40px}.calendar-legend{font-size:12px}}

.visit-calendar .section-top{margin-bottom:32px}.calendar-detail h3{text-transform:none}

.calendar-day.is-partial{background:#f6e6c9;color:#684315;font-weight:700;border-bottom:3px solid #ad7841}.calendar-day.is-partial[aria-pressed=true]{outline:3px solid #642738;outline-offset:1px}.legend-partial{color:#79511f}

/* Local search pages: same burgundy identity, clear reading and contact actions. */
.hero-copy h1{font-size:clamp(35px,3.8vw,59px);line-height:1.15;letter-spacing:-2px}.hero-copy h1 em{letter-spacing:-1.4px}.hero-copy .actions{flex-wrap:wrap;gap:20px}.mobile-actions{display:none}.subpage-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center;padding:55px 5%}.subpage-intro h1{font-size:clamp(36px,4.5vw,66px);line-height:1.15;letter-spacing:-2px}.subpage-intro h1 em{letter-spacing:-1px}.subpage-intro p{font-size:18px;line-height:1.8;margin:24px 0}.subpage-intro .breadcrumbs{font-size:14px;margin:0 0 28px}.breadcrumbs a{text-decoration:underline}.subpage-intro>img{width:100%;height:380px;object-fit:cover;border-radius:4px}.subpage-intro .actions{flex-wrap:wrap}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:50px}.service-grid article{border-top:1px solid #bba3ab;padding-top:28px}.service-grid h2,.service-contact h2{font-size:32px;letter-spacing:-1px}.service-grid p,.service-grid li,.service-contact p{font-size:17px;line-height:1.85;margin-top:18px}.service-grid ul,.service-grid ol{padding-left:23px}.service-contact{background:#eee2e5}.service-contact a{text-decoration:underline;text-underline-offset:4px}.full-menu .menu-panel{display:block;margin-bottom:65px;scroll-margin-top:30px}.full-menu .menu-categories a{display:block;padding:14px 16px;border-bottom:1px solid #d2bcc2;font-size:15px}.full-menu .menu-categories{display:flex;flex-direction:column}.pdf-link{padding:0 5%}.subpage footer{margin-top:0}a:focus-visible,button:focus-visible{outline:3px solid #ad7841;outline-offset:5px}
@media(max-width:1100px){header nav{gap:18px}.subpage-intro{gap:28px}.subpage-intro>img{height:320px}}
@media(max-width:760px){body{padding-bottom:70px}.hero-copy h1{font-size:37px;letter-spacing:-1px}.subpage-intro{grid-template-columns:1fr;padding:32px 6%;gap:24px}.subpage-intro h1{font-size:38px}.subpage-intro>img{height:250px}.service-grid{grid-template-columns:1fr;gap:35px;padding-top:35px}.mobile-actions{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);gap:0;bottom:0;left:0;right:0;background:#642738;color:white;z-index:20;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 12px #34262c20}.mobile-actions a{text-align:center;font-size:14px;font-weight:600;padding:19px 5px;border-right:1px solid #ffffff35}.full-menu .menu-categories{display:flex!important;flex-direction:row;flex-wrap:wrap;gap:8px;overflow:visible}.full-menu .menu-categories a{border:1px solid #d2bcc2;border-radius:25px;padding:10px 14px;font-size:14px}.full-menu .menu-panel{margin-bottom:40px}.subpage .section{padding-left:6%;padding-right:6%}}

@media(max-width:760px){.mobile-actions{top:auto;height:auto;min-height:0;padding:0 0 env(safe-area-inset-bottom);transform:none}.full-menu .menu-categories{position:static;box-shadow:none}}

.language-bar{position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:10px 5%;background:#eee3e6;border-bottom:1px solid #d2bcc2}.language-bar>span{font-size:14px;color:#642738;font-weight:600}.language-picker{position:relative}.language-picker summary{list-style:none;cursor:pointer;background:#642738;color:white;padding:13px 20px;border-radius:8px;font-size:16px;font-weight:700;min-height:48px;box-shadow:0 3px 8px #34262c20}.language-picker summary::-webkit-details-marker{display:none}.language-picker summary:focus-visible{outline:3px solid #ad7841;outline-offset:3px}.language-options{position:absolute;right:0;top:calc(100% + 8px);width:100%;min-width:210px;padding:8px;background:white;border:1px solid #d2bcc2;border-radius:10px;box-shadow:0 8px 28px #34262c30}.language-options a{display:block;padding:14px 16px;color:#642738;border-radius:5px;font-weight:600}.language-options a:hover,.language-options a[aria-current=page]{background:#eee3e6}.language-picker[open] summary{background:#4c1d2a}@media(max-width:760px){.language-bar{padding:8px 5%;justify-content:center}.language-bar>span{display:none}.language-picker{width:100%;max-width:420px}.language-picker summary{text-align:center}.language-options{width:100%}}
