:root{--cream:#f4eee4;--red:#781b17;--wine:#751813;--ink:#38201a;--green:#34453b;--line:#c8a8a0;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--red);font:400 16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid currentColor;outline-offset:6px}a:hover{text-decoration:underline;text-underline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h2{font:400 clamp(3.4rem,6.4vw,6.8rem)/.95 var(--serif);letter-spacing:-.035em}em{font-weight:400}p{max-width:44ch}img{display:block;width:100%;height:auto}section[id],div[id]{scroll-margin-top:30px}.skip{position:absolute;top:-100px;left:20px;padding:12px;background:var(--cream);z-index:10}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header{min-height:112px;padding:18px 4.2%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);gap:24px}.header nav{display:flex;align-items:center;gap:36px;font-size:14px}.nav-right{justify-content:flex-end}.seal{font:400 27px/1.14 'Noto Serif TC',serif;text-align:center}.seal:hover{text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:36px;padding:13px 26px;font-size:14px;line-height:1.5;min-height:48px;border:1px solid transparent;transition:background-color .2s,color .2s}.button:hover{text-decoration:none}.button-outline{border-color:var(--red)}.button-outline:hover{background:var(--red);color:var(--cream)}.button-solid{background:var(--red);color:var(--cream)}.button-solid:hover{background:#571511}.button span[aria-hidden]{font-size:27px;line-height:1}.opening{max-width:1800px;margin:auto;padding:34px 4.2% 0}.opening h1{font:400 clamp(3.5rem,19.4vw,22rem)/.84 var(--serif);letter-spacing:-.057em;white-space:nowrap;text-align:center}.brand-details{display:flex;justify-content:space-between;gap:20px;margin:28px 0 28px 2.2%;font-size:12px;text-transform:uppercase;letter-spacing:.2em}.hero{margin-left:2.2%}.hero>img{aspect-ratio:1.7;object-fit:cover}.introduction{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center;padding:44px 2.2% 50px}.introduction h2{font-size:clamp(4.7rem,10.4vw,10.8rem);line-height:.82;letter-spacing:-.045em}.introduction>div{justify-self:center;padding-top:15px}.introduction p{color:var(--ink);margin-bottom:28px;font-size:17px}.story{background:var(--wine);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:58px 6.4% 62px;align-items:center}.story figure{max-width:610px;width:100%;justify-self:center}.story img{aspect-ratio:.79;object-fit:cover}.story figcaption{font-size:12px;color:#e0c7be;margin-top:8px}.story-copy{padding:15px 0}.eyebrow{font-size:12px;letter-spacing:.19em;line-height:1.5;text-transform:uppercase;margin-bottom:28px}.story h2{font-size:clamp(3.5rem,5.6vw,6.3rem);line-height:1}.story-copy>p:not(.eyebrow){margin-top:28px;max-width:34ch;color:#f0ded3}.text-link{display:inline-flex;align-items:center;gap:30px;padding:8px 0;border-bottom:1px solid currentColor;font-size:14px}.text-link:hover{text-decoration:none}.text-link span{font-size:27px;line-height:1}.story .text-link{margin-top:28px}.section-space{padding:108px 6.4%}.menus{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:start}.section-intro>p:last-child{margin-top:32px;color:var(--ink)}.menu-list>a{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;border-bottom:1px solid var(--line)}.menu-list>a:first-child{border-top:1px solid var(--line)}.menu-list>a:hover{text-decoration:none}.menu-list>a:hover strong{font-style:italic}.menu-list strong{display:block;font:400 40px/1.1 var(--serif)}.menu-list small{display:block;margin-top:8px;font-size:14px;color:var(--ink)}.arrow{font:400 25px var(--sans)}.menu-note{font-size:12px;color:#74564a;margin-top:16px}.private{background:var(--green);color:var(--cream);display:grid;grid-template-columns:1.25fr 1fr;gap:12%;align-items:center}.private h2{font-size:clamp(3.4rem,5.5vw,6rem);line-height:1}.private-copy>p{margin-bottom:30px}.button-light{border-color:#cfbfa7;color:var(--cream);padding-left:20px;padding-right:20px;gap:22px}.button-light:hover{background:var(--cream);color:var(--green)}.visit{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.visit h2{margin-bottom:38px}.visit-details{display:grid;grid-template-columns:1.2fr 1fr;gap:42px 34px;padding-top:9px;color:var(--ink);font-size:14px;line-height:1.9}.visit h3{font-size:12px;text-transform:uppercase;letter-spacing:.17em;color:var(--red);margin-bottom:18px}.visit address{font-style:normal}.visit .text-link{margin-top:15px;color:var(--red)}.small{font-size:12px;margin-top:15px;color:#75564c}.contact{grid-column:1/-1}.contact>a{display:block;width:fit-content}.contact h3{margin-bottom:10px}footer{padding:30px 4.2%;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:12px}.footer-brand{font:400 31px/1.1 var(--serif)}.footer-brand span{font-size:18px;margin-left:10px}footer>p{font-size:12px}footer>a:last-child{font-size:14px} @media(min-width:1800px){.brand-details{margin-top:35px}.story,.section-space{padding-left:max(6.4%,calc((100vw - 1570px)/2));padding-right:max(6.4%,calc((100vw - 1570px)/2))}}@media(max-width:900px){.header{gap:14px;min-height:96px}.header nav{gap:20px}.header .button{padding:10px 16px}.opening{padding-top:30px}.introduction{gap:5%}.introduction p{font-size:16px}.story{gap:8%;padding:45px 5%}.section-space{padding:76px 5%}.private{gap:7%}.private .button{gap:12px}.visit{grid-template-columns:1fr;gap:55px}.visit-details{grid-template-columns:1fr 1fr}.visit-details .contact{grid-column:auto}.visit-details{font-size:16px}footer>p{display:none}}@media(max-width:600px){.header{min-height:88px;grid-template-columns:1fr auto 1fr;padding:16px 5%;gap:14px}.header nav{font-size:14px;gap:14px}.header .nav-left{flex-direction:column;align-items:flex-start;gap:1px}.header .private-link{display:none}.header .button{padding:10px 12px;min-height:44px;font-size:12px;white-space:nowrap}.seal{font-size:23px}.opening{padding:26px 5% 0}.opening h1{font-size:19vw;letter-spacing:-.055em;line-height:1}.brand-details{font-size:10px;letter-spacing:.1em;margin:13px 0 20px;gap:10px;line-height:1.5}.brand-details p:last-child{text-align:right;max-width:18ch}.hero{margin-left:0}.hero>img{aspect-ratio:1.04;object-position:58% center}.introduction{grid-template-columns:1fr;padding:36px 0 45px;gap:28px}.introduction h2{font-size:22vw;line-height:.88}.introduction>div{justify-self:start;padding:0}.introduction p{max-width:33ch;margin-bottom:23px}.story{grid-template-columns:1fr;padding:36px 7% 50px;gap:37px}.story figure{max-width:none}.story img{aspect-ratio:1.02;object-position:center 48%}.story-copy{padding:0}.eyebrow{margin-bottom:20px;font-size:12px}.story h2{font-size:14vw}.story-copy>p:not(.eyebrow){margin-top:22px}.story .text-link{margin-top:19px}.section-space{padding:60px 7%}.menus{grid-template-columns:1fr;gap:37px}.section-intro>p:last-child{margin-top:22px}.section-intro h2{font-size:17vw}.menu-list>a{padding:24px 0}.menu-list strong{font-size:35px}.menu-list small{font-size:14px}.private{grid-template-columns:1fr;gap:27px}.private h2{font-size:14vw}.private-copy>p{margin-bottom:23px}.private .button{font-size:13px;padding:12px 15px;gap:15px}.visit{gap:45px}.visit h2{font-size:18vw}.visit-details{grid-template-columns:1fr;gap:32px;font-size:16px}.visit-details h3{margin-bottom:10px}.visit .small{font-size:13px}footer{padding:25px 7%;align-items:center}.footer-brand{font-size:26px}.footer-brand span{font-size:15px;margin-left:5px}footer>a:last-child{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Page navigation and shared subpages */
.header{grid-template-columns:auto minmax(0,1fr) auto;min-height:98px;gap:34px;padding-left:6.2%}
.header .site-nav{justify-content:center;gap:clamp(14px,2vw,30px);font-size:13px;white-space:nowrap}
.header .site-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:7px}
.header-actions{display:flex;align-items:center;gap:10px}
.header-actions .button{padding:10px 14px;min-height:43px;font-size:12px;white-space:nowrap;gap:0}
.mobile-nav{display:none}
.gift{display:grid;grid-template-columns:1.15fr .85fr;gap:10%;align-items:center;background:#eae0d4;border-bottom:1px solid var(--line)}
.gift h2{font-size:clamp(3.7rem,6vw,7rem)}
.gift-copy{padding-top:23px}
.gift-copy p{color:var(--ink);font-size:17px;max-width:39ch;margin-bottom:31px}
.subpage-head{padding:68px 6.4% 52px;max-width:1800px;margin:auto}
.subpage-head .eyebrow{margin-bottom:16px}
.subpage-head h1{font:400 clamp(5rem,12.5vw,12rem)/.83 var(--serif);letter-spacing:-.055em}
.subpage-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-top:34px;color:var(--ink)}
.subpage-intro p{max-width:42ch;font-size:18px;line-height:1.6}
.subpage-intro .text-link{color:var(--red);white-space:nowrap}
.menu-feature{background:var(--wine);color:var(--cream);display:grid;grid-template-columns:.85fr 1.15fr;gap:12%;align-items:center;padding:60px 6.4%}
.menu-feature figure{max-width:470px;width:100%;justify-self:center}
.menu-feature img{aspect-ratio:1.05;object-fit:cover;object-position:center 42%}
.menu-feature figcaption,.private-hero figcaption{font-size:12px;margin-top:8px;color:#e0c7be}
.menu-feature h2{font-size:clamp(3.5rem,6vw,7rem)}
.menu-feature>div>p:last-child{margin-top:26px;color:#ead8cb;font-size:17px}
.menu-offerings{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%}
.menu-offerings .section-intro h2{font-size:clamp(3.6rem,5.8vw,6.5rem)}
.offering-list article{padding:26px 0 30px;border-top:1px solid var(--line)}
.offering-list article:last-child{border-bottom:1px solid var(--line)}
.offering-list h3{font:400 43px/1 var(--serif);margin-bottom:9px}
.offering-list p{font-size:15px;color:var(--ink);max-width:48ch}
.offering-list .text-link{margin-top:14px;color:var(--red)}
.page-cta{background:var(--wine);color:var(--cream);text-align:center;padding:68px 6.4% 78px}
.page-cta .eyebrow{margin-bottom:13px}
.page-cta h2{margin-bottom:34px}
.button-outline-light{border-color:#e2ccc1;color:var(--cream)}
.button-outline-light:hover{background:var(--cream);color:var(--red)}
.private-hero{margin:0 6.4%}
.private-hero img{aspect-ratio:1.85;object-fit:cover}
.private-hero figcaption{color:#76564e}
.private-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:center}
.private-intro>div:last-child{padding-top:30px}
.private-intro>div:last-child>p{color:var(--ink);font-size:18px;line-height:1.7;max-width:39ch}
.private-intro .text-link{margin-top:24px}
.private-enquiry{display:grid;grid-template-columns:1.15fr .85fr;gap:10%;align-items:center;background:var(--wine);color:var(--cream)}
.private-enquiry h2{font-size:clamp(3.4rem,5.7vw,6rem)}
.private-enquiry>div:last-child>p{font-size:17px;color:#f0ded3;max-width:39ch}
.enquiry-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:27px}
.phone-link{border-bottom:1px solid currentColor;font-size:14px;padding-bottom:5px}
@media(max-width:1160px){
.header{grid-template-columns:auto 1fr;min-height:88px}
.header .site-nav,.header-actions{display:none}
.mobile-nav{display:block;justify-self:end;position:relative;z-index:5}
.mobile-nav summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;font-size:14px;padding:10px}
.mobile-nav summary::-webkit-details-marker{display:none}
.mobile-nav summary span{font-size:19px;line-height:1}
.mobile-nav nav{position:absolute;right:0;top:calc(100% + 12px);width:min(82vw,340px);background:var(--cream);border:1px solid var(--line);box-shadow:0 18px 35px #35100d3b;padding:16px 22px;display:flex;flex-direction:column;align-items:stretch;gap:0}
.mobile-nav nav a{padding:10px 0;border-bottom:1px solid #d7c5bc;font-size:15px}
.mobile-nav nav a:last-child{border-bottom:0}
}
@media(max-width:760px){
.gift,.menu-offerings,.private-intro,.private-enquiry{grid-template-columns:1fr;gap:30px}
.gift h2,.private-intro h2,.private-enquiry h2{font-size:clamp(3.8rem,12vw,6rem)}
.gift-copy,.private-intro>div:last-child{padding-top:0}
.subpage-head{padding:49px 7% 37px}
.subpage-head h1{font-size:clamp(5rem,15vw,8rem)}
.subpage-intro{display:block;margin-top:26px}
.subpage-intro p{font-size:17px}
.subpage-intro .text-link{margin-top:16px}
.menu-feature{grid-template-columns:1fr;gap:37px;padding:43px 7% 56px}
.menu-feature figure{max-width:none}
.menu-feature img{aspect-ratio:1.3}
.menu-feature h2{font-size:clamp(3.5rem,13vw,6rem)}
.menu-offerings .section-intro h2{font-size:clamp(3.8rem,13vw,6rem)}
.offering-list h3{font-size:37px}
.private-hero{margin:0 7%}
.private-hero img{aspect-ratio:1.2}
.private-enquiry{padding-top:65px;padding-bottom:65px}
}
@media(max-width:600px){
.header{grid-template-columns:auto 1fr;padding:13px 7% 13px 5%;min-height:76px}
.seal{font-size:22px}
.subpage-head h1{font-size:15.7vw}
.private-head h1{font-size:14.4vw}
.gift-copy p,.private-intro>div:last-child>p{font-size:16px}
.page-cta h2{font-size:16vw}
}
@media(max-width:1160px){
.mobile-nav nav a:nth-last-child(2),.mobile-nav nav a:last-child{border:1px solid var(--red);margin-top:12px;padding:10px 12px;text-align:center}
.mobile-nav nav a:last-child{background:var(--red);color:var(--cream);margin-top:8px}
}

/* OpenTable booking section */
.visit{display:block}
.visit-booking{max-width:100%}
.visit-booking h2{margin-bottom:32px}
.opentable-widget{max-width:100%;min-width:0}
.opentable-widget iframe{max-width:100%}
.opentable-fallback{margin:18px 0 54px}
.visit-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.visit-details .contact{grid-column:auto}
@media(max-width:900px){
.visit-details{grid-template-columns:repeat(2,minmax(0,1fr))}
.visit-details .contact{grid-column:1/-1}
}
@media(max-width:600px){
.visit-booking h2{margin-bottom:26px}
.opentable-fallback{margin-bottom:45px}
.visit-details{grid-template-columns:1fr}
.visit-details .contact{grid-column:auto}
}

@media(min-width:1024px){
.opentable-widget .ot-dtp-picker.wide{width:100%;max-width:none}
.opentable-widget .ot-dtp-picker-form{display:flex;align-items:stretch}
.opentable-widget .ot-dtp-picker-selector{float:none;flex:1;min-width:0}
.opentable-widget .ot-dtp-picker-button{flex:0 0 auto}
}

/* Illustrated menu categories */
.offering-list article{display:grid;grid-template-columns:145px minmax(0,1fr);gap:24px;align-items:start}
.offering-list article>img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center}
.offering-copy{min-width:0}
@media(max-width:600px){
.offering-list article{grid-template-columns:105px minmax(0,1fr);gap:17px;padding:22px 0 25px}
.offering-list h3{font-size:34px}
.offering-list p{font-size:14px}
}

/* Full, crawlable menu pages */
.menu-detail-wrap{max-width:1550px;margin:auto;padding:40px 6.4% 100px}
.breadcrumbs{display:flex;align-items:center;gap:12px;color:#78594f;font-size:12px;letter-spacing:.02em}
.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.breadcrumbs span[aria-hidden]{opacity:.55}
.menu-detail-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.55fr);gap:8%;align-items:center;margin:32px 0 55px}
.menu-detail-hero h1{font:400 clamp(4.4rem,9vw,9.5rem)/.87 var(--serif);letter-spacing:-.055em;max-width:10ch}
.menu-detail-hero h1 em{display:block}
.menu-detail-hero .eyebrow{margin-bottom:23px}
.menu-detail-lede{margin-top:28px;max-width:42ch;color:var(--ink);font-size:18px}
.menu-detail-hero img{width:100%;aspect-ratio:1.16;object-fit:cover;object-position:center}
.menu-detail-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:32px}
.menu-detail-actions .text-link{color:var(--red)}
.menu-tabs{display:flex;align-items:center;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin;margin-bottom:60px}
.menu-tabs a{flex:none;padding:18px 26px;font-size:14px;white-space:nowrap}
.menu-tabs a:first-child{padding-left:0}
.menu-tabs a[aria-current="page"]{color:var(--red);text-decoration:underline;text-underline-offset:6px}
.menu-tabs a:not([aria-current="page"]){color:#76564e}
.menu-detail-grid{display:grid;grid-template-columns:minmax(165px,.31fr) minmax(0,1fr);gap:9%}
.section-nav{align-self:start;position:sticky;top:30px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.section-nav .eyebrow{margin-bottom:9px}
.section-nav a{font-size:13px;line-height:1.5;color:#75564c}
.section-nav a:hover{color:var(--red)}
.dish-section{scroll-margin-top:30px;margin-bottom:66px}
.dish-section>h2{font-size:clamp(3.3rem,5vw,5.6rem);line-height:1;margin-bottom:24px}
.dish-section ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.dish{display:flex;align-items:baseline;justify-content:space-between;gap:22px;padding:16px 0;border-bottom:1px solid #d9c7bd}
.dish h3{font:400 clamp(1.55rem,2.1vw,2rem)/1.1 var(--serif);color:var(--red)}
.dish p{margin-top:5px;color:#6b5045;font-size:13px;line-height:1.5;max-width:65ch}
.dish-price{flex:none;color:var(--ink);font-size:15px;white-space:nowrap}
.menu-disclaimer{margin:10px 0 0 auto;max-width:75ch;color:#6b5045;font-size:13px;line-height:1.6;border-top:1px solid var(--line);padding-top:20px}
@media(max-width:900px){
.menu-detail-wrap{padding:32px 5% 75px}
.menu-detail-hero{gap:5%}
.menu-detail-grid{grid-template-columns:160px minmax(0,1fr);gap:5%}
.menu-tabs{margin-bottom:45px}
}
@media(max-width:680px){
.menu-detail-wrap{padding:25px 7% 65px}
.menu-detail-hero{display:block;margin:24px 0 42px}
.menu-detail-hero h1{font-size:clamp(4.9rem,18vw,8rem)}
.menu-detail-lede{margin-top:17px;font-size:16px}
.menu-detail-actions{margin-top:24px}
.menu-detail-hero img{margin-top:32px;aspect-ratio:1.55}
.menu-tabs{margin:0 -8.1% 37px;padding-left:7%;padding-right:7%}
.menu-tabs a{padding:15px 17px;font-size:13px}
.menu-tabs a:first-child{padding-left:0}
.menu-detail-grid{display:block}
.section-nav{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px 14px;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:36px}
.section-nav .eyebrow{width:100%;margin:0 0 5px}
.section-nav a{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.dish-section{margin-bottom:47px}
.dish-section>h2{font-size:clamp(3.1rem,11vw,5rem);margin-bottom:17px}
.dish{padding:14px 0;gap:14px}
.dish h3{font-size:1.6rem}
.dish-price{font-size:14px}
.menu-disclaimer{margin-top:0}
}
