:root{--ivory:#FAF6EF;--cream:#F5EDE0;--sand:#EDE4D3;--espresso:#3B2314;--clay:#944627;--burgundy:#944627;--brass:#B87828;--line:#D9C9B3;--white:#fffdf8;--mocha:#705947;--forest-dark:#29180F;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Lato",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--espresso);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit}button{font:inherit}.skip{position:fixed;left:16px;top:-60px;z-index:100;background:var(--white);padding:10px 16px}.skip:focus{top:10px}
.global-header{background:var(--ivory);border-top:6px solid #e7e9e2;position:relative;z-index:20}.masthead{height:112px;max-width:1280px;margin:auto;padding:0 54px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line)}.header-note,.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--clay)}.header-note{color:var(--espresso)}.brand{text-decoration:none;text-align:center;line-height:1.1}.brand-mark{display:block;font:500 24px var(--serif)}.brand strong{display:block;font-size:13px;letter-spacing:.12em}.brand small{display:block;font-size:8px;letter-spacing:.16em;margin-top:5px}.utility{justify-self:end;display:flex;gap:26px}.utility a,.nav-row a{text-decoration:none;font-size:14px}.utility a{border-bottom:1px solid var(--clay)}.nav-shell{position:sticky;top:0;z-index:19;background:rgba(251,247,239,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.nav-row{height:70px;max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.nav-row nav{display:flex;gap:30px}.nav-row a:hover{color:var(--clay)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;border:1px solid var(--clay);background:var(--clay);color:var(--white);padding:12px 24px;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.08em;cursor:pointer}.button.light{background:var(--white);border-color:var(--white);color:var(--espresso)}.button.outline{background:transparent;color:var(--clay)}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:10px 14px;color:var(--espresso)}
main{overflow:hidden}.inner{width:min(1200px,88%);margin:auto}.hero{padding:74px 0 70px;background:var(--cream);text-align:center;border-bottom:1px solid var(--line)}.hero h1{font:400 clamp(48px,6vw,74px)/1.02 var(--serif);margin:15px auto 18px;max-width:900px}.hero p{max-width:720px;margin:0 auto 27px;font-size:17px;color:#6b4a39}.hero-actions{display:flex;gap:12px;justify-content:center}
.assurances{border-bottom:1px solid var(--line)}.assurance-grid{display:grid;grid-template-columns:repeat(3,1fr)}.assurance{padding:24px 30px;text-align:center;border-right:1px solid var(--line)}.assurance:last-child{border:0}.assurance strong{display:block;font:500 22px/1.2 var(--serif)}.assurance span{font-size:12px;color:#765844}
.story{background:var(--ivory);padding:74px 0}.story-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.story-image{height:490px;min-height:490px;background:var(--sand);overflow:hidden}.image-placeholder{width:100%;height:100%;min-height:inherit;display:grid;place-items:center;position:relative;background:linear-gradient(135deg,rgba(255,253,248,.32),rgba(200,156,75,.08));color:#765844;text-align:center}.image-placeholder:before{content:"";position:absolute;inset:16px;border:1px solid rgba(107,38,50,.22)}.image-placeholder span{position:relative;max-width:240px;padding:20px;font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.6;text-transform:uppercase}.story-copy h2,.section-head h2,.event-copy h2,.form-copy h2,.faq h2,.closing h2{font:400 clamp(39px,4.5vw,55px)/1.08 var(--serif);margin:10px 0 12px}.story-copy p,.section-head p,.event-copy p,.form-copy p,.faq p,.closing p{margin:0;color:#6b4a39}.story-copy p+p{margin-top:18px}.story-quote{border-left:2px solid var(--brass);margin:27px 0 0;padding:4px 0 4px 22px;font:400 italic 24px/1.35 var(--serif);color:var(--burgundy)}
.menu{padding:72px 0 82px;background:var(--cream);border-block:1px solid var(--line)}.section-head{max-width:720px;margin-bottom:34px}.section-head.center{text-align:center;margin:0 auto 40px}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.menu-card{min-width:0;background:var(--ivory);border:1px solid var(--line);display:flex;flex-direction:column}.menu-image{aspect-ratio:5/4;overflow:hidden;background:var(--sand);border-bottom:1px solid var(--line)}.menu-copy{padding:24px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.menu-copy h3{font:400 31px/1.06 var(--serif);margin:7px 0 10px}.menu-copy p{font-size:14px;line-height:1.55;margin:0;color:#6b4a39}.menu-copy .eyebrow{font-size:10px}
.mobile-kitchen{padding:68px 0;background:var(--espresso);color:var(--white)}.kitchen-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(290px,.72fr);gap:54px;align-items:center}.kitchen-visual{height:560px;min-height:560px;overflow:hidden;background:#67432d;border:1px solid rgba(231,189,117,.45)}.kitchen-visual .image-placeholder{background:linear-gradient(135deg,rgba(200,156,75,.2),rgba(47,26,16,.72));color:#efd6ad}.kitchen-visual .image-placeholder:before{border-color:rgba(231,189,117,.4)}.mobile-kitchen .eyebrow{color:#e7bd75}.kitchen-copy h2{color:var(--white);font:400 clamp(39px,4.5vw,55px)/1.08 var(--serif);margin:10px 0 16px}.kitchen-copy p{color:#ecdcc9;margin:0}.kitchen-points{list-style:none;margin:42px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(231,189,117,.45)}.kitchen-points li{padding:17px 20px 17px 0;border-bottom:1px solid rgba(231,189,117,.28);font:400 19px/1.25 var(--serif)}.kitchen-points li:not(:nth-child(3n+1)){padding-left:20px;border-left:1px solid rgba(231,189,117,.28)}.kitchen-points small{display:block;margin-top:4px;color:#d8bea0;font:700 10px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.events{padding:74px 0;background:var(--ivory)}.events-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}.event-list{display:grid;grid-template-columns:repeat(2,1fr);margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.event-list li{padding:18px 16px 18px 0;border-bottom:1px solid var(--line);font:400 21px/1.2 var(--serif)}.event-list li:nth-child(even){padding-left:20px;border-left:1px solid var(--line)}.dietary-note{margin-top:25px!important;padding:18px 20px;background:var(--cream);border-left:2px solid var(--brass);font-size:13px}.search-context{margin-top:23px!important;color:#876b59!important;font-size:13px;line-height:1.7}.mobile-kitchen .search-context{color:#c9aa8d!important}.menu-followup{margin:24px 0 0;padding:20px 22px;border:1px solid var(--line);background:var(--ivory);color:#6b4a39;font-size:14px}.menu-followup strong{display:block;color:var(--espresso);font:500 22px/1.2 var(--serif);margin-bottom:5px}
.steps{padding:72px 0;background:var(--cream);border-block:1px solid var(--line)}.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;counter-reset:step}.step{counter-increment:step;border-top:1px solid var(--brass);padding-top:23px}.step:before{content:"0" counter(step);display:block;color:var(--clay);font:500 17px var(--serif);margin-bottom:19px}.step h3{font:400 29px/1.08 var(--serif);margin:0 0 10px}.step p{font-size:14px;color:#6b4a39;margin:0}
.enquiry{padding:74px 0;background:var(--ivory)}.enquiry-grid{display:grid;grid-template-columns:minmax(270px,.68fr) minmax(0,1.32fr);gap:60px;align-items:start}.contact-list{margin-top:26px;font-style:normal}.contact-item{margin-top:18px}.contact-item:first-child{margin-top:0}.contact-label{display:block;margin-bottom:3px;color:#765844;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.form-copy .contact{display:inline-block;color:var(--clay);font:500 20px/1.3 var(--serif);text-decoration:none;border-bottom:1px solid var(--brass);max-width:100%}.form-note{margin-top:24px!important;padding:18px 20px;border:1px solid var(--line);background:var(--cream);font-size:13px}.form-shell{border:1px solid var(--line);background:var(--white)}.form-label{margin:0;padding:16px 20px;background:var(--espresso);color:var(--white);font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.enquiry-form{padding:30px}.form-section{margin:0 0 30px;padding:0;border:0}.form-section:last-of-type{margin-bottom:20px}.form-section legend{width:100%;margin:0 0 17px;padding:0 0 10px;border-bottom:1px solid var(--line);color:var(--espresso);font:500 24px/1.15 var(--serif)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{min-width:0}.field.full{grid-column:1/-1}.field label,.group-label{display:block;margin:0 0 7px;color:#765844;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.required{color:var(--clay)}.field input,.field select,.field textarea{display:block;width:100%;min-height:49px;border:1px solid var(--line);border-radius:0;background:#fbf8f2;color:var(--espresso);padding:12px 13px;font:400 15px/1.4 var(--sans)}.field textarea{min-height:125px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--brass);outline-offset:1px;border-color:var(--brass)}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.choice{display:flex;align-items:flex-start;gap:9px;padding:10px 12px;border:1px solid var(--line);background:#fbf8f2;color:#5f4738;font-size:13px;line-height:1.4}.choice input{width:16px;height:16px;margin:2px 0 0;accent-color:var(--clay)}.form-help{margin:7px 0 0;color:#876b59;font-size:12px}.privacy-note{margin:0 0 19px;color:#765844;font-size:12px;line-height:1.6}.privacy-note a{color:var(--clay)}.form-submit{width:100%}.form-status{display:none;margin:18px 0 0;padding:14px 16px;border-left:2px solid var(--brass);background:var(--cream);color:#5f4738;font-size:13px}.form-status.visible{display:block}
.faq{padding:72px 0;background:var(--cream);border-top:1px solid var(--line)}.faq-shell{max-width:900px}.faq h2{margin-bottom:28px}.faq details{border-top:1px solid var(--line)}.faq details:last-of-type{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;padding:20px 42px 20px 0;position:relative;font:500 22px/1.25 var(--serif)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:5px;top:15px;color:var(--clay);font:400 27px var(--sans)}.faq details[open] summary:after{content:"−"}.faq details p{font-size:14px;padding:0 40px 21px 0}.faq-actions{display:flex;gap:18px;align-items:center;margin-top:31px}.text-link{border:0;border-bottom:1px solid var(--brass);background:transparent;color:var(--espresso);padding:0 0 3px;font-size:13px;text-decoration:none}.text-link:hover{color:var(--burgundy)}
.closing{padding:48px 0;background:var(--ivory)}.closing-band{display:grid;grid-template-columns:1fr auto;gap:55px;align-items:center;background:var(--cream);border:1px solid var(--line);padding:34px 39px}.closing h2{font-size:39px;margin:6px 0 8px}.closing p{max-width:760px}.newsletter{background:var(--espresso);color:var(--white);padding:45px 0}.newsletter .inner{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:center}.newsletter h2{font:400 36px/1.05 var(--serif);margin:6px 0}.newsletter p{margin:0;color:#f2ddc3}.newsletter .eyebrow{color:#e7bd75}footer{padding:38px 0;background:#2f1a10;color:#f5e9d9;text-align:center;font-size:12px;letter-spacing:.08em}.mobile-actions{display:none}
@media(max-width:1050px){.masthead{padding-inline:30px}.nav-row{padding-inline:30px}.nav-row nav{gap:18px}.menu-grid{grid-template-columns:repeat(2,1fr)}.step-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.global-header{border-top-width:4px}.masthead{height:85px;padding:0 20px;grid-template-columns:1fr auto}.header-note,.utility{display:none}.brand{text-align:left}.menu-toggle{display:block;justify-self:end}.nav-row{height:auto;padding:0;display:block}.nav-row nav{display:none;flex-direction:column;gap:0;padding:8px 22px 20px}.nav-row nav.open{display:flex}.nav-row nav a{padding:11px 0;border-bottom:1px solid var(--line)}.nav-row>.button{display:none}.hero{padding:48px 0}.hero h1{font-size:47px}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.assurance-grid{grid-template-columns:1fr}.assurance{border-right:0;border-bottom:1px solid var(--line);padding:16px}.story{padding:0}.story-grid{width:100%;grid-template-columns:1fr;gap:0}.story-image{height:330px;min-height:330px}.story-copy{padding:45px 6%}.menu,.steps,.faq,.events,.mobile-kitchen,.enquiry{padding:51px 0 58px}.menu-grid,.step-grid,.kitchen-grid,.events-grid,.enquiry-grid{grid-template-columns:1fr}.menu-grid{gap:20px}.menu-card{display:grid;grid-template-columns:40% 1fr}.menu-image{height:100%;aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--line)}.kitchen-grid{gap:32px}.kitchen-visual{height:390px;min-height:390px}.kitchen-points{grid-template-columns:1fr;margin-top:32px}.kitchen-points li:not(:nth-child(3n+1)){padding-left:0;border-left:0}.events-grid,.enquiry-grid{gap:36px}.event-list{grid-template-columns:1fr}.event-list li:nth-child(even){padding-left:0;border-left:0}.field-grid,.choice-grid{grid-template-columns:1fr}.enquiry-form{padding:22px 18px}.faq-actions,.closing-band,.newsletter .inner{grid-template-columns:1fr;display:grid;gap:23px}.closing{padding:32px 0}.closing-band{padding:27px 23px}.closing-band .button,.newsletter .button{width:100%}.newsletter{text-align:center}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--ivory);border-top:1px solid var(--line);padding:8px 12px}.mobile-actions .button{min-height:43px;padding:9px 12px}body{padding-bottom:59px}}
@media(max-width:520px){.menu-card{display:flex}.menu-image{height:auto;aspect-ratio:5/4;border-right:0;border-bottom:1px solid var(--line)}}
/* Approved shared website framing */
.global-header{position:sticky;top:0;z-index:30;background:var(--ivory);border-top:0;border-bottom:1px solid var(--line)}
.masthead{position:relative;display:flex;align-items:center;justify-content:space-between;max-width:1440px;height:auto;min-height:94px;margin:auto;padding:16px 4.5%;border-bottom:1px solid var(--line)}
.header-note{width:28%;font-size:11px;letter-spacing:.16em;color:var(--mocha)}
.brand{display:flex;align-items:center;justify-content:center;line-height:1}
.brand img{display:block;width:auto;max-width:240px;height:70px;object-fit:contain;background:transparent}
.utility{width:28%;justify-content:flex-end;gap:24px}.utility a{font-size:14px;border-bottom:1px solid var(--brass)}
.nav-row{display:flex;justify-content:center;gap:34px;align-items:center;max-width:1440px;height:auto;margin:auto;padding:10px 4%}.nav-row nav{display:flex;gap:27px;align-items:center}.nav-row nav a{font-size:14px;white-space:nowrap}.nav-row nav a:hover,.nav-row nav a[aria-current="page"]{color:var(--burgundy);text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--brass)}.nav-row>.button{min-height:40px;padding:9px 22px}
.button{background:var(--burgundy);border-color:var(--burgundy);color:var(--ivory);min-height:48px;border-radius:0;font-size:14px;letter-spacing:.06em}.button:hover{background:var(--espresso);border-color:var(--espresso)}.button.outline{color:var(--espresso);background:transparent;border-color:var(--espresso)}.button.outline:hover{background:var(--espresso);color:var(--ivory)}
.newsletter{background:var(--sand);color:var(--espresso);border-top:1px solid var(--line)}.newsletter p{color:var(--mocha)}.newsletter .eyebrow{color:var(--burgundy)}.newsletter .button.light{background:var(--burgundy);border-color:var(--burgundy);color:var(--ivory)}
footer{position:relative;padding:70px max(5%,calc((100vw - 1180px)/2)) 20px;background:var(--forest-dark);color:var(--ivory);text-align:left;font-size:14px;letter-spacing:0}footer:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--brass)}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}.footer-brand img{display:block;width:auto;max-width:220px;height:80px;object-fit:contain;background:transparent}.footer-brand p{margin:16px 0 0;color:#DCCBBA;font-size:14px}.footer-grid h3{margin:0 0 16px;color:#D5B48C;font:500 14px/1.3 var(--sans)}.footer-link{display:block;margin:9px 0;color:var(--ivory);font-size:14px;text-decoration:none}.footer-link:hover{color:#D5B48C;text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid rgba(255,255,255,.2);margin-top:50px;padding-top:20px;color:#DCCBBA;font-size:11px}.footer-bottom>div{display:flex;gap:20px}.footer-bottom a{color:#DCCBBA;text-decoration:none}.footer-bottom a:hover{color:var(--ivory)}
a:focus-visible,button:focus-visible{outline:3px solid var(--brass);outline-offset:4px}.form-copy .contact{overflow-wrap:anywhere}
#backToTop{position:fixed;right:22px;bottom:24px;z-index:38;width:48px;height:48px;border:1px solid var(--brass);background:var(--ivory);color:var(--espresso);font:400 24px/1 var(--serif);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;cursor:pointer}#backToTop.visible{opacity:1;visibility:visible;transform:none}#backToTop:focus-visible{outline:3px solid var(--brass);outline-offset:4px}
@media(max-width:1050px){.header-note{display:none}.masthead{justify-content:center;min-height:87px}.utility{position:absolute;right:4%;width:auto}.nav-row{gap:20px}.nav-row nav{gap:16px}.nav-row nav a{font-size:12px}.nav-row>.button{font-size:11px;padding:9px 15px}}
@media(max-width:850px){.masthead{justify-content:flex-start;min-height:80px;padding:12px 25px;border-bottom:0}.brand{justify-content:flex-start}.brand img{max-width:170px;height:60px}.utility{display:none}.menu-toggle{display:flex;gap:10px;align-items:center;margin-left:auto;border:0;background:transparent;font-size:13px;padding:10px}.global-header .nav-row{position:absolute;top:100%;right:0;left:0;display:none;background:var(--ivory);padding:25px;box-shadow:0 12px 20px rgba(59,35,20,.1)}.global-header .nav-row.open{display:block}.global-header .nav-row nav{display:flex!important;flex-direction:column;align-items:stretch;gap:0;padding:0}.global-header .nav-row nav a{padding:12px 0;border-bottom:1px solid var(--line);font-size:17px}.global-header .nav-row>.button{display:flex;margin-top:20px;width:100%;font-size:14px}.footer-grid{grid-template-columns:repeat(3,1fr);gap:30px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-wrap:wrap}#backToTop{bottom:82px}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}footer{padding:45px 25px 25px}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{margin-top:30px;gap:15px}.footer-bottom>div{gap:12px;flex-wrap:wrap}}
