:root{--paper:#faf8f3;--white:#fff;--ink:#3c3430;--wine:#572d35;--brass:#80623d;--line:#dfd8cd;--muted:#766f66;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,textarea,select{outline-offset:5px}button:focus-visible,a:focus-visible{outline:2px solid var(--brass)}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1,h2{letter-spacing:-2.4px;line-height:1.07}h1 em,h2 em{font-weight:400;font-style:italic;color:var(--wine)}h2{font-size:clamp(40px,4.6vw,67px)}.eyebrow{font-size:10px;line-height:1.6;letter-spacing:2.2px;font-weight:500;color:var(--brass);margin-bottom:24px}.concept-bar{background:#eee9e0;color:#6e6258;display:flex;justify-content:center;gap:10px;font-size:10px;padding:9px 5%;letter-spacing:.3px}.concept-bar>a{margin-left:30px;border-bottom:1px solid #b5aa9b}header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:24px 5%;gap:25px;position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line);transition:padding .25s}body.scrolled header{padding-top:16px;padding-bottom:16px}.brand{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.brand-name{font-family:var(--serif);font-size:36px;letter-spacing:-1.8px;line-height:1;color:var(--wine)}.brand-name i{font-weight:400;font-size:29px;font-style:normal;vertical-align:2px}.brand small{font-size:9px;letter-spacing:3px;margin-top:10px;color:var(--muted)}nav{display:flex;gap:30px;align-items:center}nav a,.header-right>a:not(.button){font-size:13px;white-space:nowrap}.header-right{display:flex;justify-content:flex-end;gap:30px;align-items:center}.mobile-link{display:none}nav a:hover,.find-link:hover{color:var(--wine)}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;padding:16px 24px;font-size:11px;letter-spacing:.8px;line-height:1.3;border:1px solid var(--wine);background:var(--wine);color:#fff;transition:background .2s,transform .2s}.button span{font-size:17px;line-height:1}.button:hover{background:#71434a;transform:translateY(-2px)}.button-small{padding:13px 19px;gap:20px}.button-cream{background:var(--paper);border-color:var(--paper);color:var(--wine)}.button-cream:hover{background:#e8dfd3}.button-outline{background:transparent;color:var(--wine)}.button-outline:hover{color:#fff}.menu-toggle{display:none}.hero{padding-top:54px}.hero-content{text-align:center;padding:0 6%}.hero-content .eyebrow{margin-bottom:18px}h1{font-size:clamp(49px,5.7vw,82px);line-height:1.03;letter-spacing:-3.3px}.hero-content p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:22px}.quiet-link{display:inline-flex;gap:16px;align-items:center;text-transform:uppercase;font-size:10px;letter-spacing:1.7px;margin-top:25px;padding-bottom:5px;border-bottom:1px solid var(--line)}.quiet-link span{font-size:18px;color:var(--brass)}.photo-composition{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;align-items:stretch;gap:24px;margin:40px auto 0;max-width:1320px;padding:0 4%}.venue-frame{position:relative;overflow:hidden;grid-column:1;grid-row:1 / 3;min-width:0;min-height:0;align-self:center}.venue-frame>img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:contain;object-position:center}.side-photo{position:relative;min-width:0;display:flex;flex-direction:column}.side-photo img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;object-position:center}.side-photo span{font-size:9px;letter-spacing:1.5px;color:var(--muted);margin-top:10px}.side-left{grid-column:2;grid-row:1}.side-right{grid-column:2;grid-row:2}.expand-photo{position:absolute;top:13px;right:13px;border:0;background:#faf8f3ef;color:var(--wine);width:34px;height:34px;font-size:22px}.photo-controls{position:absolute;bottom:14px;right:14px;display:flex;align-items:center;gap:12px;background:var(--paper);padding:3px 7px}.photo-controls button{width:30px;height:30px;border:0;background:transparent;color:var(--wine);font-size:20px}.photo-controls button:hover{background:#eae3d8}.photo-controls span{font-size:10px;letter-spacing:1.2px;min-width:46px;text-align:center}.hero-caption{display:flex;justify-content:space-between;max-width:1320px;margin:18px auto 0;padding:0 4%;font-size:9px;letter-spacing:1.6px;color:var(--muted)}.section-pad{padding:95px max(6%,calc((100vw - 1240px)/2))}.story{text-align:center;max-width:1050px;margin:auto;padding-top:80px;padding-bottom:85px}.section-number{font-family:var(--serif);font-style:italic;font-size:44px;line-height:1;color:var(--brass);margin-bottom:27px}.story .eyebrow{margin-bottom:20px}.story h2{font-size:clamp(38px,4.2vw,59px)}.story-text{display:grid;grid-template-columns:1fr 1fr;gap:35px;max-width:750px;margin:30px auto 28px;text-align:left}.story-text p{font-size:14px;line-height:1.95;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid var(--brass);padding-bottom:9px;font-size:10px;letter-spacing:.5px}.text-link span{font-size:17px;color:var(--brass)}.menu-section{background:#eee9e0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.menu-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:center}.menu-intro>p{font-size:14px;line-height:1.9;color:var(--muted);max-width:310px;margin-top:25px}.menu-tabs{display:flex;flex-direction:column;margin:30px 0 28px}.menu-tabs button{display:flex;align-items:center;text-align:left;padding:17px 0;border:0;border-bottom:1px solid #d4cbbe;background:transparent;font-family:var(--serif);font-size:23px;color:#86786e;transition:color .2s,padding .2s}.menu-tabs button:first-child{border-top:1px solid #d4cbbe}.menu-tabs button span{font-family:var(--sans);font-size:10px;letter-spacing:1px;color:var(--brass);margin-right:20px}.menu-tabs button i{font-style:normal;margin-left:auto;font-size:18px;opacity:0;transition:opacity .2s}.menu-tabs button.active{color:var(--wine);padding-left:8px}.menu-tabs button.active i,.menu-tabs button:hover i{opacity:1}.menu-tabs button:hover{color:var(--wine)}.food-grid{min-width:0}.food-card[hidden]{display:none}.food-img{overflow:hidden;background:#ded8ce}.food-img img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;object-position:center}.food-copy{position:relative;background:var(--paper);padding:23px 26px}.food-copy .eyebrow{display:block;margin-bottom:10px;font-size:9px;letter-spacing:1.8px}.food-copy h3{font-size:27px;color:var(--wine)}.food-copy p{font-size:13px;line-height:1.7;margin-top:9px;color:var(--muted)}.menu-note{font-size:10px;line-height:1.7;color:var(--muted);max-width:440px;margin:18px auto 0;padding:0 23px}.gathering{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;background:var(--wine);color:var(--paper)}.gathering-photo{position:relative;min-width:0}.gathering-photo img{height:auto;width:100%;aspect-ratio:3 / 2;object-fit:contain}.gathering-photo>span{position:absolute;bottom:20px;left:25px;color:#fff;font-size:9px;letter-spacing:2px;background:#302820a0;padding:9px 12px}.gathering-copy{padding:80px 14% 80px 12%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.gathering-copy .eyebrow{color:#d2bb9a}.gathering-copy h2{font-size:clamp(37px,3.7vw,56px);line-height:1.12}.gathering-copy h2 em{color:#e4c9ac}.gathering-copy p{font-size:14px;line-height:1.9;color:#ddcfd0;margin-top:25px;max-width:360px}.gathering-copy p+p{margin-top:17px}.gathering-copy .button{margin-top:30px}.visit{background:var(--paper)}.visit-heading{text-align:center;margin-bottom:48px}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:15%;max-width:850px;margin:0 auto 45px}.visit-details h3{font-size:23px;color:var(--wine);margin-bottom:18px}.address p{font-size:14px;line-height:1.95;color:var(--muted);margin-bottom:20px}.opening-hours dl{margin:0}.opening-hours dl>div{display:flex;justify-content:space-between;gap:18px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.opening-hours dd{margin:0;color:var(--ink)}.opening-hours small{font-size:10px;color:var(--muted);display:block;margin-top:13px}.visit-map{position:relative;min-height:320px;max-width:1100px;margin:auto;background:#e9e7e0}.visit-map iframe{width:100%;height:320px;border:0;display:block;filter:saturate(.7)}.map-label{position:absolute;bottom:15px;left:15px;right:15px;background:#faf8f3f0;display:flex;justify-content:space-between;padding:15px 20px;gap:15px;font-size:11px}.map-label span{font-size:10px;color:var(--wine)}.enquiry{background:#eee9e0;padding-top:70px;padding-bottom:80px}.enquiry-heading{text-align:center}.enquiry-heading h2{font-size:clamp(39px,4.7vw,65px)}.enquiry-heading>p{font-size:14px;line-height:1.85;color:var(--muted);margin-top:24px}.phone-number{display:block;width:fit-content;margin:23px auto 10px;color:var(--wine);font-family:var(--serif);font-size:25px;letter-spacing:.2px}.phone-number span{font-family:var(--sans);font-size:17px;margin-left:12px;color:var(--brass)}.email{display:inline-block;font-size:11px;letter-spacing:.4px;color:var(--muted)}.booking-form{max-width:720px;margin:40px auto 0;background:var(--paper);border:1px solid #d1c5b6;padding:35px 40px}.form-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:23px;border-bottom:1px solid var(--line);margin-bottom:25px}.form-top h3{font-size:23px;color:var(--wine);max-width:370px}.form-top>span{font-size:9px;letter-spacing:1.6px;color:var(--brass);max-width:60px;line-height:1.8}.booking-form label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--ink);margin-bottom:22px;min-width:0}.booking-form input,.booking-form select,.booking-form textarea{border:0;border-bottom:1px solid #c9bdae;background:transparent;width:100%;min-width:0;padding:11px 0;font-size:14px;font-weight:400;color:var(--ink);border-radius:0;outline-offset:3px}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--wine)}.booking-form textarea{resize:vertical;min-height:65px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.booking-form>.button{width:100%}.form-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:15px;text-align:center}footer{background:#e7e0d5;border-top:1px solid #d7ccbe;padding:45px 5% 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-bottom:30px;border-bottom:1px solid #d1c5b6}.footer-nav{display:flex;gap:24px;font-size:11px}.social-links{display:flex;gap:19px;font-size:10px;color:var(--muted)}.back-top{border:1px solid #b5a78f;display:grid;place-items:center;width:35px;height:35px;color:var(--wine);font-size:22px}.footer-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:25px;font-size:10px;color:var(--muted);padding-top:21px;line-height:1.7}.footer-bottom details{max-width:380px}.footer-bottom summary{cursor:pointer}.footer-bottom details p{font-size:10px;margin-top:14px;line-height:1.8}.footer-bottom a{text-decoration:underline}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);width:min(580px,calc(100% - 28px));padding:40px;max-height:90vh;overflow:auto}dialog::backdrop{background:#231b1c9c;backdrop-filter:blur(5px)}dialog[open]{animation:dialog-in .3s ease-out}dialog h2{font-size:48px}.dialog-close,#closePhoto{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:27px;color:var(--ink)}#enquirySummary{white-space:pre-wrap;font-size:14px;line-height:1.8;margin-top:26px;padding:20px;border:1px solid var(--line);user-select:text}.dialog-note{font-size:11px;line-height:1.8;color:var(--muted);margin:20px 0}.dialog-actions{display:flex;gap:12px;flex-wrap:wrap}#copyStatus{font-size:11px;line-height:1.7;margin-top:14px;color:var(--wine)}#photoDialog{width:min(1150px,calc(100% - 24px));padding:45px 18px 15px;background:#251f1e;color:white}#photoDialog img{max-height:77vh;width:auto;max-width:100%;height:auto;object-fit:contain;margin:auto}#photoDialog p{text-align:center;font-size:10px;letter-spacing:1.5px;margin-top:14px}#closePhoto{color:white;top:7px;right:15px}.js-ready .reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}.js-ready .reveal.visible{opacity:1;transform:none}.filter-enter{animation:filter-in .55s ease both}@keyframes filter-in{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dialog-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero{padding-top:65px}.photo-composition{margin-top:50px}}@media(max-width:1100px){header{padding:23px 4%;gap:18px}nav{gap:18px}.header-right{gap:18px}.brand-name{font-size:33px}.photo-composition{gap:18px}.section-pad{padding:75px 6%}.menu-layout{gap:7%}.gathering-copy{padding:60px 10%}.gathering-photo{min-height:0}.footer-nav{gap:15px}.social-links{flex-direction:column;gap:10px}.food-copy{padding:20px}}@media(max-width:780px){html{scroll-padding-top:90px}.concept-bar{font-size:9px;gap:7px}.concept-bar>a{margin-left:auto;white-space:nowrap}.concept-bar span{display:none}header{display:flex;justify-content:space-between;padding:20px 6%;gap:12px}body.scrolled header{padding:15px 6%}header>.brand{align-items:flex-start}.brand-name{font-size:31px}.brand-name i{font-size:24px}.brand small{font-size:9px;letter-spacing:2.5px;margin-top:8px}.header-right{margin-left:auto}.header-right .find-link{display:none}.button-small{font-size:10px;padding:11px 14px;gap:16px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:transparent;border:0;width:27px;height:32px;padding:3px;margin-left:6px}.menu-toggle span{display:block;width:21px;height:1px;background:var(--wine);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:26px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:23px}nav.open{display:flex}nav a{font-size:15px}nav .mobile-link{display:block}.hero{padding-top:38px}h1{font-size:clamp(44px,8.8vw,67px);letter-spacing:-2px}.hero-content .eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:17px}.hero-content p{font-size:13px;line-height:1.9;margin-top:18px}.quiet-link{font-size:9px;letter-spacing:1.2px;margin-top:20px}.photo-composition{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:20px 14px;padding:0 6%;margin-top:32px;overflow:visible}.venue-frame{grid-column:1 / 3;grid-row:1}.venue-frame>img{height:auto;aspect-ratio:3 / 2;object-fit:contain}.side-photo img{aspect-ratio:3 / 2}.side-photo span{display:block;font-size:9px;letter-spacing:.6px;margin-top:8px}.side-left{grid-column:1;grid-row:2}.side-right{grid-column:2;grid-row:2}.expand-photo{width:29px;height:29px;top:10px;right:10px;font-size:19px}.photo-controls{bottom:10px;right:10px;gap:5px;padding:2px 4px}.photo-controls button{width:25px;height:25px;font-size:17px}.photo-controls span{font-size:9px;min-width:40px}.hero-caption{padding:0 6%;font-size:9px;letter-spacing:.7px;gap:15px;line-height:1.6;margin-top:15px}.hero-caption>span:last-child{text-align:right}.section-pad{padding:55px 7%}.story{padding-top:50px;padding-bottom:52px}.section-number{font-size:34px;margin-bottom:20px}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:20px}.story h2{font-size:37px;letter-spacing:-1.6px}.story-text{grid-template-columns:1fr;gap:14px;text-align:center;margin:25px auto;max-width:490px}.story-text p{font-size:13px;line-height:1.9}.text-link{font-size:10px;gap:25px}.menu-layout{grid-template-columns:1fr;gap:30px}.menu-intro h2{font-size:45px;letter-spacing:-1.8px}.menu-intro>p{font-size:13px;max-width:100%;margin-top:20px}.menu-tabs{margin:25px 0}.menu-tabs button{font-size:22px;padding:15px 0}.menu-intro .text-link{margin-top:0}.food-img img{aspect-ratio:3 / 2}.food-copy{margin:0;padding:20px}.food-copy h3{font-size:24px}.food-copy p{font-size:11px}.food-copy .eyebrow{font-size:9px}.menu-note{font-size:9px;line-height:1.8;padding:0 15px}.gathering{grid-template-columns:1fr}.gathering-photo{min-height:0;aspect-ratio:auto}.gathering-photo img{object-position:center}.gathering-copy{padding:45px 7% 50px}.gathering-copy h2{font-size:43px;letter-spacing:-1.7px}.gathering-copy p{font-size:13px;max-width:100%;margin-top:20px}.gathering-copy p+p{margin-top:14px}.gathering-copy .button{margin-top:25px}.visit-heading{margin-bottom:33px}.visit h2{font-size:45px}.visit-details{grid-template-columns:1fr;gap:35px;margin-bottom:35px}.visit-details h3{font-size:22px;margin-bottom:15px}.address p{font-size:13px}.opening-hours dl>div{font-size:11px;padding:10px 0}.opening-hours small{font-size:9px}.visit-map,.visit-map iframe{min-height:280px;height:280px}.map-label{font-size:10px;left:10px;right:10px;bottom:10px;padding:13px;gap:15px}.map-label span{font-size:9px}.enquiry-heading h2{font-size:43px;letter-spacing:-1.7px}.enquiry-heading>p{font-size:11px}.phone-number{font-size:24px}.email{font-size:10px}.booking-form{padding:25px 23px;margin-top:30px}.form-top{gap:20px;padding-bottom:19px;margin-bottom:23px}.form-top h3{font-size:23px}.form-top>span{font-size:9px;min-width:43px}.booking-form label{font-size:10px}.booking-form input,.booking-form select,.booking-form textarea{font-size:14px}.form-row{gap:20px}.form-note{font-size:9px}.button{font-size:10px;padding:15px 20px}footer{padding:35px 7% 24px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top .brand{align-items:flex-start}.footer-top .brand-name{font-size:34px}.footer-nav{flex-basis:100%;order:4;gap:24px;flex-wrap:wrap;font-size:10px}.social-links{margin-left:auto;font-size:10px}.back-top{width:30px;height:30px;font-size:20px}.footer-bottom{flex-direction:column;gap:20px;font-size:9px}.footer-bottom details p{font-size:10px}dialog{padding:35px 22px 25px}dialog h2{font-size:40px;letter-spacing:-1.3px}#enquirySummary{font-size:13px;padding:15px}.dialog-note{font-size:10px}.dialog-actions{flex-direction:column}.dialog-actions .button{width:100%}#copyStatus{font-size:10px}}@media(max-width:380px){.button-small{padding:10px;font-size:9px;gap:12px}.brand-name{font-size:27px}.brand-name i{font-size:23px}.hero-content p br{display:none}.hero-content h1{font-size:42px}.photo-composition{gap:16px 10px}.form-row{grid-template-columns:1fr;gap:0}.footer-nav{gap:18px}.social-links{gap:10px}.back-top{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-ready .reveal{opacity:1;transform:none}}
