:root{--cream:#fffbea;--cream-warm:#f8f1dc;--green:#204c34;--green-deep:#163b29;--orange:#ef5c2a;--red:#cf2028;--gold:#ffc45b;--ink:#26352e;--line:rgba(239,92,42,.68);--gutter:clamp(20px,4.6vw,84px);--section:clamp(76px,8vw,144px);--max:1820px;--serif:Georgia,'Times New Roman',serif;--cond:'Arial Narrow','Roboto Condensed','Liberation Sans Narrow',Arial,sans-serif;--sans:Arial,Helvetica,sans-serif;--script:'Segoe Print','Bradley Hand',cursive;}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:92px;}
body{margin:0px;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.62;}
body.menu-open{overflow:hidden;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
button{font:inherit;color:inherit;}
.skip{position:absolute;left:-9999px;top:8px;z-index:999;background:var(--orange);color:rgb(255, 255, 255);padding:12px 16px;}
.skip:focus{left:12px;}
.shell{width:min(var(--max),100%);margin:auto;padding-inline:var(--gutter);}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px;}
.eyebrow{display:block;font:800 12px/1 var(--sans);text-transform:uppercase;letter-spacing:0.19em;color:var(--orange);margin-bottom:16px;}
.rule{width:62px;height:1px;background:var(--orange);margin-top:19px;}
.header{height:94px;display:grid;grid-template-columns:190px 1fr 190px;align-items:center;padding-inline:var(--gutter);position:sticky;top:0px;z-index:50;background:rgba(255, 251, 234, 0.965);border-bottom:1px solid var(--orange);transition:height 0.25s, box-shadow 0.25s;}
.header.scrolled{height:78px;box-shadow:rgba(21, 61, 42, 0.07) 0px 10px 28px;}
.brand{width:126px;justify-self:start;}
.brand img{width:100%;height:auto;}
.nav{display:flex;align-items:center;justify-content:center;gap:clamp(24px, 3.2vw, 56px);}
.nav a{position:relative;padding:14px 0px 12px;font:800 13px/1 var(--sans);text-transform:uppercase;}
.nav a::after{content:"";position:absolute;left:0px;bottom:4px;height:2px;width:100%;background:var(--orange);transform:scaleX(0);transform-origin:left center;transition:transform 0.22s;}
.nav a:hover::after,  .nav a[aria-current="page"]::after{transform:scaleX(1);}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0px 23px;border:1px solid var(--orange);background:transparent;color:var(--orange);font:800 12px/1 var(--sans);letter-spacing:0.1em;text-transform:uppercase;transition:background 0.2s, color 0.2s, transform 0.2s, border-color 0.2s;}
.button:hover{background:var(--orange);color:rgb(255, 255, 255);transform:translateY(-1px);}
.button.fill{background:var(--orange);color:rgb(255, 255, 255);}
.button.fill:hover{background:var(--green);border-color:var(--green);}
.header > .button{justify-self:end;}
.nav-toggle{display:none;border:0px;background:transparent;padding:12px 0px;font:800 12px/1 var(--sans);letter-spacing:0.11em;text-transform:uppercase;}
.nav-toggle span{display:inline-block;width:24px;height:1px;background:var(--green);margin-left:10px;vertical-align:middle;position:relative;}
.nav-toggle span::before,  .nav-toggle span::after{content:"";position:absolute;left:0px;width:24px;height:1px;background:var(--green);}
.nav-toggle span::before{top:-6px;}
.nav-toggle span::after{top:6px;}
.hero{min-height:calc(-94px + 100svh);display:grid;grid-template-columns:minmax(420px, 39%) 1fr;border-bottom:1px solid var(--orange);overflow:hidden;}
.hero-copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(72px,8vw,132px) var(--gutter);background:var(--cream);z-index:2;}
.hero-title{margin:0px;color:var(--green);font:300 clamp(72px,7.1vw,132px)/.83 var(--cond);letter-spacing:-0.055em;text-transform:uppercase;}
.hero-title .serif{font-family:var(--serif);line-height:0.9;color:var(--orange);text-transform:none;font-weight:700;font-style:italic;letter-spacing:-0.06em;}
.hero-copy > p{max-width:510px;font-size:clamp(18px, 1.22vw, 22px);margin:28px 0px 30px;}
.actions{display:flex;gap:11px;flex-wrap:wrap;}
.hero-fox{position:absolute;width:clamp(120px, 13vw, 220px);right:-1%;bottom:2%;opacity:0.9;pointer-events:none;}
.hero-media{position:relative;min-height:650px;background:var(--green);overflow:hidden;}
.hero-media img{position:absolute;inset:0px;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(0.2, 0.7, 0.2, 1);}
.hero-media:hover img{transform:scale(1.015);}
.hero-media::after{content:"";position:absolute;inset:0px;background:linear-gradient(90deg, rgba(22, 59, 41, 0.12), transparent 38%), linear-gradient(0deg, rgba(22, 59, 41, 0.16), transparent 38%);}
.offer{max-width:1700px;margin:auto;border:1px solid var(--orange);display:grid;align-items:center;position:relative;overflow:hidden;}
.offer-fox{align-self:end;object-fit:contain;object-position:center bottom;}
.offer-copy h2{margin:0px;color:var(--green);font:300 clamp(48px,4.6vw,82px)/.86 var(--cond);letter-spacing:-0.04em;text-transform:uppercase;}
.offer-copy h2 em{font-family:var(--script);font-size:0.58em;text-transform:none;color:var(--orange);font-weight:400;}
.offer-copy strong{display:block;color:var(--orange);font:700 clamp(23px,2.1vw,38px)/1.05 var(--serif);}
.offer-copy p{margin:7px 0px 0px;color:var(--green);font:400 18px/1.2 var(--script);}
.circle-link{border:1px solid var(--orange);border-radius:50%;display:grid;place-items:center;text-align:center;color:var(--orange);font:800 11px/1.15 var(--sans);letter-spacing:0.08em;text-transform:uppercase;transition:0.2s;}
.circle-link:hover{background:var(--orange);color:rgb(255, 255, 255);transform:rotate(3deg);}
.section{padding:var(--section) 0;}
.section-heading{display:grid;grid-template-columns:1fr 0.7fr;gap:clamp(30px, 6vw, 100px);align-items:end;margin-bottom:clamp(42px, 5vw, 78px);}
.section-heading h2{margin:0px;color:var(--green);font:300 clamp(60px,6vw,106px)/.84 var(--cond);letter-spacing:-0.045em;text-transform:uppercase;}
.section-heading h2 strong{font-family:var(--serif);font-size:0.67em;color:var(--orange);font-weight:700;font-style:italic;text-transform:none;letter-spacing:-0.06em;}
.section-heading p{max-width:600px;margin:0px;}
.text-link{display:inline-block;color:var(--green);font:800 12px/1 var(--sans);text-transform:uppercase;letter-spacing:0.13em;border-bottom:1px solid var(--orange);padding-bottom:6px;}
.brand-section{background:var(--green);color:var(--cream);padding:clamp(90px, 9vw, 152px) 0px calc(68px + clamp(90px, 9vw, 152px));position:relative;overflow:hidden;}
.brand-grid{display:grid;grid-template-columns:0.72fr 1.28fr;gap:clamp(50px, 7vw, 120px);align-items:center;}
.brand-copy h2{margin:0px;font:300 clamp(62px,6.4vw,110px)/.84 var(--cond);letter-spacing:-0.045em;text-transform:uppercase;}
.brand-copy h2 strong{font-variant-ligatures:;font-variant-caps:;font-variant-numeric:;font-variant-east-asian:;font-variant-alternates:;font-variant-position:;font-variant-emoji:;font-weight:;font-stretch:;font-size:;line-height:;font-family:;font-optical-sizing:;font-size-adjust:;font-kerning:;font-feature-settings:;font-variation-settings:;font-language-override:;font-style:italic;text-transform:none;color:var(--gold);}
.brand-copy p{max-width:520px;margin:24px 0px 30px;}
.brand-copy .eyebrow{color:var(--gold);}
.brand-copy .button{border-color:var(--gold);color:var(--gold);}
.brand-copy .button:hover{background:var(--gold);color:var(--green);}
.venue-image{position:relative;}
.venue-image img{width:100%;aspect-ratio:1.38 / 1;object-fit:cover;}
.venue-image::before{content:"";position:absolute;left:-18px;top:-18px;width:100px;height:100px;border-left:1px solid var(--orange);border-top:1px solid var(--orange);z-index:1;}
.booking-band{background:var(--green-deep);color:var(--cream);position:relative;overflow:hidden;}
.booking-band .shell{display:grid;grid-template-columns:1fr auto;align-items:center;gap:50px;}
.booking-band h2{margin:0px;font:300 clamp(62px,6vw,106px)/.85 var(--cond);letter-spacing:-0.045em;text-transform:uppercase;}
.booking-band h2 strong{font-variant-ligatures:;font-variant-caps:;font-variant-numeric:;font-variant-east-asian:;font-variant-alternates:;font-variant-position:;font-variant-emoji:;font-weight:;font-stretch:;font-size:;line-height:;font-family:;font-optical-sizing:;font-size-adjust:;font-kerning:;font-feature-settings:;font-variation-settings:;font-language-override:;font-style:italic;text-transform:none;color:var(--gold);}
.booking-band p{margin:20px 0px 0px;}
.booking-intro a:not(.button){color:var(--gold);border-bottom:1px solid;}
.booking-band .button{background:var(--orange);color:rgb(255, 255, 255);}
.booking-fox{position:absolute;filter:grayscale(1) brightness(3);}
footer.footer{position:relative;padding:64px 0px 38px;background:var(--cream);border-top:1px solid var(--orange);}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.15fr;gap:clamp(28px, 4vw, 68px);}
.footer-logo{width:140px;}
footer.footer h3{margin:0px 0px 14px;color:var(--orange);font:800 11px/1 var(--sans);letter-spacing:0.13em;text-transform:uppercase;}
footer.footer p{font-size:14px;margin:0px;}
footer.footer a:hover{color:var(--orange);}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:48px;padding-top:18px;border-top:1px solid var(--line);font-size:11px;}
@media (max-width: 1050px){
.brand{width:108px;}
.header > .button{display:none;}
.nav{display:none;position:fixed;background:var(--green-deep);color:var(--cream);align-items:flex-start;justify-content:flex-start;flex-direction:column;overflow:auto;}
.nav.open{display:flex;}
.nav a{font:300 clamp(42px,8vw,72px)/1 var(--cond);letter-spacing:-0.02em;}
.nav a::after{bottom:0px;}
.hero{grid-template-columns:1fr;min-height:auto;}
.hero-copy{min-height:58svh;}
.hero-media{min-height:60svh;}
.section-heading,  .brand-grid{grid-template-columns:1fr;}
.brand-grid{gap:60px;}
.booking-band .shell{grid-template-columns:1fr;}
.booking-band .button{width:max-content;}
.footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width: 680px){
:root{--gutter:20px;--section:78px;}
.header{padding-inline:18px;}
.brand{width:102px;}
.hero-copy{padding:58px 20px 74px;}
.hero-copy > p{margin-top:24px;}
.hero-fox{width:142px;bottom:1%;right:-6%;}
.actions{display:grid;grid-template-columns:1fr 1fr;}
.actions .button{padding-inline:10px;}
.hero-media{min-height:520px;}
.offer-strip{padding-inline:14px;}
.offer{text-align:center;}
.circle-link{margin:auto;}
.section-heading{gap:20px;}
.section-heading h2{font-size:58px;}
.venue-image::before{left:-8px;top:-8px;width:60px;height:60px;}
.booking-band .button{width:100%;}
.booking-fox{width:160px;opacity:0.14;}
.footer-grid{grid-template-columns:1fr;}
.footer-bottom{display:block;}
.footer-bottom span{display:block;margin-top:5px;}
}
@media (prefers-reduced-motion: reduce){
html{scroll-behavior:auto;}
.hero-media img,  .button,  .circle-link{transition:none;}
}
.nav-socials{display:flex;align-items:center;gap:11px;margin-left:clamp(-12px, -0.5vw, -4px);padding-left:clamp(14px, 1.3vw, 22px);border-left:1px solid rgba(239, 92, 42, 0.45);}
.nav-socials a{place-items:center;width:34px;height:34px;color:var(--green);display:grid !important;padding:0px !important;}
.nav-socials a::after{display:none !important;}
.nav-socials svg,  .footer-socials svg{width:19px;height:19px;fill:none;stroke:currentcolor;stroke-width:1.7;}
.nav-socials svg .fill,  .footer-socials svg .fill{fill:currentcolor;stroke:none;}
.nav-socials a:hover{color:var(--orange);}
.footer-socials{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;}
.footer-socials a{display:inline-flex;align-items:center;gap:8px;color:var(--green);font:800 12px/1 var(--sans);letter-spacing:0.06em;text-transform:uppercase;}
.footer-socials a:hover{color:var(--orange);}
.hero-title{max-width:7.4ch;}
.hero-title .serif{font-size:0.72em;}
.hero-copy{padding-bottom:clamp(90px, 9vw, 150px);}
.instagram-section{border-top:1px solid var(--line);}
.instagram-frame{margin:0px auto;}
.instagram-frame .instagram-media{margin:0px !important;width:100% !important;min-width:0px !important;}
.instagram-fallback{text-align:center;margin:24px 0px 0px;}
.instagram-fallback .text-link{font-size:13px;}
.booking-band{padding:clamp(72px, 7vw, 112px) 0px;}
.booking-band .shell.booking-band-grid{display:grid;grid-template-columns:minmax(300px, 0.7fr) minmax(420px, 1.3fr);align-items:start;gap:clamp(40px, 6vw, 100px);}
.booking-intro{padding-top:18px;}
.booking-fox{right:1.5%;bottom:-15px;width:180px;opacity:0.1;}
@media (max-width: 1260px){
.header{grid-template-columns:160px 1fr 170px;}
.nav{gap:clamp(18px, 2vw, 32px);}
.nav-socials{gap:6px;padding-left:12px;}
.nav-socials a{width:30px;height:30px;}
}
@media (max-width: 1050px){
.nav-socials{border-left:0px;padding:28px 0px 0px;border-top:1px solid rgba(255, 251, 234, 0.25);width:100%;gap:18px;}
.nav-socials a{width:44px;height:44px;color:var(--cream);}
.nav-socials svg{width:25px;height:25px;}
.booking-band .shell.booking-band-grid{grid-template-columns:1fr;}
.instagram-frame{max-width:700px;}
}
@media (max-width: 680px){
.hero-copy > p{font-size:18px;}
.hero-copy{min-height:500px;padding-top:52px;}
.hero-title{font-size:clamp(66px, 20vw, 86px);max-width:6.8ch;}
.booking-band{padding-bottom:86px;}
.footer-socials{gap:14px;}
.footer-socials a{font-size:12px;}
.instagram-frame{padding:8px;}
.instagram-fallback{margin-top:18px;}
}
body{font-size:19px;}
.nav a{font-size:14px;letter-spacing:0.105em;}
.section-heading p{font-size:18px;}
 footer.footer p{font-size:16px;}
.instagram-frame{position:relative;max-width:720px;background:var(--cream);border:1px solid var(--orange);padding:12px;overflow:hidden;}
.instagram-frame .instagram-media{position:relative;z-index:2;background:rgb(255, 255, 255) !important;}
@media (max-width: 1260px){
.nav a{font-size:13px;}
}
@media (max-width: 680px){
body{font-size:18px;}
.section-heading p{font-size:17px;}
 footer.footer p{font-size:15px;}
.instagram-frame{min-height:240px;}
}
.hero-media img{object-position:50% 34%;filter:saturate(1.025) contrast(1.01) brightness(1.015);}
.offer-strip{padding:clamp(48px,5.5vw,92px) var(--gutter);}
.offer{min-height:310px;grid-template-columns:minmax(300px, 360px) minmax(0px, 1fr) 180px;}
.offer-fox{width:min(330px, 92%);max-height:285px;margin-left:28px;}
.offer-copy{padding:48px 42px;}
.offer-copy h2{font-size:clamp(66px, 5.8vw, 112px);}
.offer-copy strong{font-size:clamp(30px, 2.75vw, 50px);max-width:1040px;margin-top:17px;}
.offer-copy p{font-size:clamp(22px, 1.65vw, 29px);margin-top:14px;}
.circle-link{width:126px;height:126px;font-size:12px;}
.venue-image{overflow:hidden;}
.venue-image img{object-position:center 48%;filter:blur(3.5px) saturate(0.95);transform:scale(1.025);}
@media (max-width: 1050px){
.hero-media img{object-position:50% 32%;}
.offer{grid-template-columns:230px minmax(0px, 1fr) 135px;min-height:255px;}
.offer-fox{width:225px;max-height:225px;margin-left:10px;}
.offer-copy{padding:34px 24px;}
.offer-copy h2{font-size:clamp(58px, 7vw, 80px);}
.offer-copy strong{font-size:clamp(27px, 3vw, 38px);}
.offer-copy p{font-size:21px;}
}
@media (max-width: 680px){
.hero-media img{object-position:50% 30%;}
.offer-strip{padding-block:44px;}
.offer{grid-template-columns:1fr;min-height:0px;padding:30px 20px 34px;}
.offer-fox{width:220px;height:185px;max-height:none;margin:0px auto 7px;}
.offer-copy{padding:6px 0px 26px;}
.offer-copy h2{font-size:60px;}
.offer-copy strong{font-size:29px;line-height:1.08;}
.offer-copy p{font-size:20px;}
.circle-link{width:112px;height:112px;}
.venue-image img{filter:blur(3px) saturate(0.95);transform:scale(1.035);}
}
.booking-widget-wrap{position:relative;z-index:2;min-width:0px;color:var(--ink);border:1px solid var(--orange);overflow:hidden;}
.booking-widget-wrap iframe{display:block;width:100% !important;max-width:100% !important;border:0px !important;}
.booking-band .booking-widget-wrap{align-self:start;box-shadow:rgba(8, 35, 23, 0.13) 0px 18px 50px;}
@media (max-width: 680px){
.booking-widget-wrap{padding:14px 10px;}
}
.menu-samples{display:grid;grid-template-columns:1.15fr 0.8fr 1fr;gap:clamp(10px, 1.3vw, 22px);margin-bottom:clamp(28px, 4vw, 52px);}
.menu-samples figure{margin:0px;overflow:hidden;min-height:clamp(220px, 25vw, 390px);background:var(--green-deep);}
.menu-samples figure:nth-child(2){transform:translateY(clamp(14px, 2vw, 28px));}
.menu-samples img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1);}
.menu-samples figure:hover img{transform:scale(1.025);}
.menu-directory{border-top:1px solid var(--orange);}
@media (max-width: 900px){
.menu-samples{grid-template-columns:1fr 1fr;}
.menu-samples figure:first-child{grid-column:1 / -1;min-height:360px;}
.menu-samples figure:not(:first-child){min-height:260px;}
.menu-samples figure:nth-child(2){transform:none;}
}
@media (max-width: 680px){
.menu-samples{grid-template-columns:1fr;gap:10px;}
.menu-samples figure:first-child,  .menu-samples figure:not(:first-child){grid-column:auto;min-height:230px;}
.menu-samples figure:nth-child(2),  .menu-samples figure:nth-child(3){display:none;}
}
.parking-guide{position:relative;border:1px solid var(--orange);padding:clamp(34px, 4.2vw, 64px);background:var(--cream-warm);overflow:hidden;}
.parking-guide::after{content:"P";position:absolute;right:-0.02em;bottom:-0.22em;color:rgba(239, 92, 42, 0.055);font:700 clamp(170px,20vw,330px)/.75 var(--serif);pointer-events:none;}
.parking-guide > h2{position:relative;z-index:1;margin:0px;color:var(--green);font:300 clamp(48px,4.8vw,82px)/.88 var(--cond);letter-spacing:-0.045em;text-transform:uppercase;}
.parking-guide > h2 strong{font-variant-ligatures:;font-variant-caps:;font-variant-numeric:;font-variant-east-asian:;font-variant-alternates:;font-variant-position:;font-variant-emoji:;font-weight:;font-stretch:;font-size:;line-height:;font-family:;font-optical-sizing:;font-size-adjust:;font-kerning:;font-feature-settings:;font-variation-settings:;font-language-override:;font-style:italic;text-transform:none;color:var(--orange);letter-spacing:-0.055em;}
.parking-intro{position:relative;z-index:1;max-width:66ch;margin:22px 0px 34px;font-size:17px;}
.parking-options{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--orange);border-bottom:1px solid var(--orange);}
.parking-options article{padding:clamp(24px, 2.6vw, 38px) clamp(20px, 2.6vw, 36px);}
.parking-options article + article{border-left:1px solid var(--orange);}
.parking-label{display:block;margin-bottom:10px;color:var(--orange);font:800 11px/1 var(--sans);letter-spacing:0.15em;text-transform:uppercase;}
.parking-options h3{margin:0px 0px 12px;color:var(--green);font:700 clamp(24px,2.1vw,34px)/1 var(--serif);letter-spacing:-0.025em;}
.parking-options p{margin:0px 0px 12px;font-size:15px;line-height:1.55;}
.parking-options p:last-child{margin-bottom:0px;}
.parking-note{position:relative;z-index:1;margin:22px 0px 18px;max-width:72ch;font-size:13px;color:rgba(38, 53, 46, 0.8);}
.parking-guide > .text-link{position:relative;z-index:1;}
@media (max-width: 760px){
.parking-options{grid-template-columns:1fr;}
.parking-options article + article{border-left:0px;border-top:1px solid var(--orange);}
.parking-guide{padding:30px 22px;}
.parking-intro{font-size:16px;}
.parking-options p{font-size:15px;}
}
.menu-directory{border-color:var(--green);}
.menu-row{display:grid;gap:28px;align-items:center;border-bottom:1px solid var(--green);padding:34px 0px;min-height:142px;}
.menu-row .num{color:var(--orange);font:500 11px/1 var(--sans);letter-spacing:0.16em;}
.menu-row h3{margin:0px;font:500 clamp(32px,3.5vw,62px)/1.05 var(--serif);letter-spacing:-0.035em;color:var(--green);}
.menu-row h3 button{border:0px;background:none;padding:0px;text-align:left;font:inherit;letter-spacing:inherit;cursor:pointer;}
.menu-row h3 button:hover{color:var(--orange);}
.menu-row p{font:400 12px/1.6 var(--sans);text-transform:uppercase;letter-spacing:0.055em;margin:0px;}
.menu-open-control{border:0px;background:none;font-size:30px;cursor:pointer;min-height:48px;}
.menu-open-control:hover{color:var(--orange);}
.cocktail-offer{padding:0px 0px 50px;}
.cocktail-offer .shell{display:flex;align-items:center;justify-content:center;gap:36px;flex-wrap:wrap;}
.cocktail-offer .eyebrow{margin:0px;}
.cocktail-offer h2{font:500 clamp(32px,4vw,54px)/1 var(--serif);margin:0px;color:var(--green);}
.cocktail-offer em{color:var(--orange);}
.cocktail-offer p{margin:0px;font-size:16px;}
.menu-modal{width:min(1100px, 100% - 40px);max-height:88svh;padding:0px;border:1px solid var(--orange);background:var(--cream);color:var(--ink);overscroll-behavior:contain;}
.menu-modal::backdrop{background:rgba(12, 35, 24, 0.78);backdrop-filter:blur(5px);}
body.modal-open{overflow:hidden;}
.modal-header{position:sticky;top:0px;z-index:3;background:var(--cream);border-bottom:1px solid var(--orange);padding:26px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.modal-header .eyebrow{margin-bottom:10px;}
.modal-header h2{font:500 clamp(30px,4vw,48px)/1.1 var(--serif);margin:0px;color:var(--green);}
.modal-actions{display:flex;gap:20px;align-items:center;}
.modal-close{width:48px;height:48px;background:transparent;border:1px solid var(--green);font-size:32px;cursor:pointer;line-height:1;}
.modal-content{padding:0px 32px 32px;}
.modal-content .shell{padding:0px;}
.service-times{display:grid;grid-template-columns:0.65fr 1.35fr;gap:60px;border-top:1px solid var(--orange);padding:35px 0px 55px;}
.opening-times h3{margin:0px;font:500 30px/1.2 var(--serif);color:var(--green);}
.opening-times p{font-size:24px;margin:12px 0px;}
.service-times table{border-collapse:collapse;width:100%;font-size:14px;text-align:left;}
.service-times th,  .service-times td{padding:14px 10px 14px 0px;border-bottom:1px solid rgba(38, 53, 46, 0.25);}
.service-times thead th{color:var(--orange);font-size:12px;text-transform:uppercase;letter-spacing:0.07em;}
.service-times tbody th{font-weight:500;}
.parking-source{margin:22px 0px 0px;}
.instagram-frame{min-height:220px;display:grid;align-items:center;}
.instagram-frame .instagram-media > a{display:block;text-align:center;padding:70px 20px;color:var(--green);}
.booking-widget-wrap:empty::after{content:"Book online or call 0191 280 1352.";display:block;padding:30px;color:var(--green);}
.booking-intro p{max-width:38ch;}
.visit-section a{overflow-wrap:anywhere;}
@media (min-width: 1051px){
.nav{gap:clamp(18px, 2.2vw, 36px);}
.header{grid-template-columns:150px 1fr 160px;}
}
@media (max-width: 1100px){
.menu-row{gap:16px;}
.service-times{gap:28px;}
}
@media (max-width: 850px){
.menu-row .num{grid-row:1 / 3;}
.menu-row{gap:12px 18px;}
.service-times{grid-template-columns:1fr;}
.booking-band .shell.booking-band-grid{grid-template-columns:1fr;}
.booking-widget-wrap{min-height:400px;}
}
@media (max-width: 580px){
.menu-row{padding:26px 0px;}
.menu-row h3{font-size:36px;}
.menu-row p{grid-area:2 / 2 / auto / 4;font-size:11px;}
.menu-row .menu-open-control{grid-area:1 / 3;}
.menu-modal{width:calc(100% - 20px);max-height:92svh;}
.modal-header{padding:18px 16px;align-items:flex-start;}
.modal-header .eyebrow{font-size:9px;}
.modal-actions .button{font-size:10px;min-height:42px;}
.modal-close{width:42px;height:42px;}
.modal-content{padding:0px 20px 24px;}
.service-times table{font-size:12px;}
.service-times th,  .service-times td{padding-right:7px;}
.cocktail-offer .shell{gap:18px;}
.cocktail-offer .eyebrow{width:100%;text-align:center;}
.hero-copy{min-height:520px;}
.hero-media{min-height:430px;}
.offer-copy h2{font-size:52px;}
footer.footer p{overflow-wrap:anywhere;}
}
.button{white-space:nowrap;}
.header > .button{padding-inline:16px;}
.modal-actions{flex-shrink:0;}
@media (max-width: 580px){
.modal-actions .button{letter-spacing:0.02em;padding-inline:8px;}
.modal-actions{gap:6px;}
.modal-header{gap:10px;}
.modal-header h2{font-size:27px;}
}
.modal-content.pdf-preview{padding:20px;background:var(--cream-warm);}
.pdf-preview figure{margin:0px auto 22px;max-width:100%;background:white;}
.pdf-preview figcaption{padding:10px 14px;font:600 11px/1.4 var(--sans);letter-spacing:0.1em;text-transform:uppercase;color:var(--green);background:var(--cream-warm);}
.pdf-preview img{width:100%;height:auto;display:block;}
.pdf-preview a{display:block;cursor:zoom-in;}
@media (max-width: 580px){
.modal-content.pdf-preview{padding:10px;}
.pdf-preview figure{margin-bottom:14px;}
.pdf-preview figcaption{padding:8px 4px;}
}
@media (max-width: 1050px){
.header{--mobile-header-height:82px;grid-template-columns:1fr auto;height:var(--mobile-header-height);}
.header.scrolled{--mobile-header-height:74px;height:var(--mobile-header-height);}
.nav-toggle{grid-column:2;justify-self:end;display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:48px;padding:12px 0px;cursor:pointer;}
.nav-toggle span{margin:0px;flex-shrink:0;}
.nav-toggle[aria-expanded="true"] span{background:transparent;}
.nav-toggle[aria-expanded="true"] span::before{top:0px;transform:rotate(45deg);}
.nav-toggle[aria-expanded="true"] span::after{top:0px;transform:rotate(-45deg);}
.nav{inset:var(--mobile-header-height) 0 0;padding:30px var(--gutter) max(28px,env(safe-area-inset-bottom));gap:8px;}
.nav > a{font:500 clamp(28px,6vw,46px)/1.1 var(--cond);letter-spacing:0.02em;padding:12px 0px;min-height:48px;}
.nav-socials{margin:20px 0px 0px;padding-top:20px;flex-shrink:0;}
.nav-socials a{min-width:44px;min-height:44px;}
}
@media (max-height: 500px) and (max-width: 1050px){
.nav{padding-top:14px;gap:0px;}
.nav > a{font-size:25px;padding-block:8px;min-height:42px;}
.nav-socials{margin-top:10px;padding-top:10px;}
}
.booking-widget-wrap{width:100%;justify-self:stretch;min-height:0px;background:var(--cream);padding:clamp(16px, 2.2vw, 32px);border-color:var(--orange);}
.booking-widget-wrap #dmn-partner-widget,  .booking-widget-wrap #dmn-widget-inner{color:var(--ink);width:100% !important;max-width:none !important;}
.booking-widget-wrap #dmn-widget-inner{background:var(--cream) !important;border:1px solid var(--green) !important;box-shadow:none !important;}
.booking-widget-wrap #dmn-partner-widget .stage{width:100% !important;background:var(--cream) !important;}
.booking-widget-wrap #dmn-partner-widget .dropdown{background:var(--cream) !important;color:var(--green) !important;border-color:rgba(32, 76, 52, 0.25) !important;}
.booking-widget-wrap #dmn-partner-widget .dropdown__icon,  .booking-widget-wrap #dmn-partner-widget .dropdown__edit-btn{color:var(--orange) !important;fill:var(--orange) !important;}
.booking-widget-wrap #dmn-partner-widget .dropdown__title{font-size:12px;line-height:1.4;}
.booking-widget-wrap #dmn-partner-widget .contents,  .booking-widget-wrap #dmn-partner-widget .vdp-datepicker__calendar{width:100% !important;background:var(--cream) !important;color:var(--ink) !important;}
.booking-widget-wrap #dmn-partner-widget .number-people-dropdown-facade{color:var(--green) !important;border-color:rgba(32, 76, 52, 0.3) !important;}
.booking-widget-wrap #dmn-partner-widget .date-selector__quick-buttons{width:100%;display:flex;gap:12px;margin:16px 0px;}
.booking-widget-wrap #dmn-partner-widget .date-selector__quick-buttons .button{flex:1 1 0%;width:auto !important;margin:0px !important;}
.booking-widget-wrap #dmn-partner-widget .button{min-height:48px;white-space:normal;font:700 12px/1.2 var(--sans);letter-spacing:0.07em;background:var(--orange) !important;color:var(--cream) !important;border:1px solid var(--orange) !important;box-shadow:none !important;}
.booking-widget-wrap #dmn-partner-widget .button--outline{background:var(--cream) !important;color:var(--green) !important;border-color:rgba(32, 76, 52, 0.35) !important;}
.booking-widget-wrap #dmn-partner-widget .button:hover{transform:none;background:var(--green) !important;color:var(--cream) !important;border-color:var(--green) !important;}
.booking-widget-wrap #dmn-partner-widget .vdp-datepicker__calendar .cell.selected,  .booking-widget-wrap #dmn-partner-widget .vdp-datepicker__calendar .cell.selected:hover{background:var(--orange) !important;color:var(--cream) !important;}
.booking-widget-wrap #dmn-partner-widget .vdp-datepicker__calendar .cell:not(.blank):not(.disabled):hover{border-color:var(--orange) !important;}
.booking-widget-wrap #dmn-partner-widget .footer{margin-top:16px;width:100% !important;background:transparent !important;}
@media (max-width: 580px){
.booking-widget-wrap{padding:14px 10px;}
.booking-widget-wrap #dmn-partner-widget .button{font-size:11px;}
}
.booking-widget-wrap #dmn-widget-inner{min-height:475px;}
.booking-widget-wrap #dmn-partner-widget .list-slot{background:var(--cream) !important;color:var(--green) !important;border-color:rgba(32, 76, 52, 0.25) !important;}
.booking-widget-wrap #dmn-partner-widget .list-slot:hover,  .booking-widget-wrap #dmn-partner-widget .list-slot--selected{background:var(--orange) !important;color:var(--cream) !important;}
.booking-widget-wrap #dmn-partner-widget .vdp-datepicker__calendar .cell{height:40px !important;line-height:40px !important;}
.booking-widget-wrap #dmn-partner-widget > .footer{display:none !important;}
.menu-row{grid-template-columns:45px minmax(220px, 1.1fr) minmax(190px, 1.3fr) 48px;}
.menu-open-control{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:12px;color:var(--green);}
.menu-open-control svg,  .download-icon{display:block;width:24px;height:24px;fill:none;stroke:currentcolor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.modal-actions .button{gap:12px;}
.download-icon{width:18px;height:18px;}
@media (max-width: 1100px){
.menu-row{grid-template-columns:30px minmax(190px, 1fr) minmax(160px, 1fr) 48px;}
}
@media (max-width: 850px){
.menu-row{grid-template-columns:28px 1fr 48px;}
.menu-row h3{grid-area:1 / 2;}
.menu-row p{grid-area:2 / 2;}
.menu-row .menu-open-control{grid-area:1 / 3 / 3;}
.menu-row .num{grid-area:1 / 1 / 3;}
}
@media (max-width: 580px){
.menu-row{grid-template-columns:22px 1fr 48px;min-height:0px;}
.menu-row p{grid-column:2 / 4;}
.menu-row .menu-open-control{grid-row:1;}
.menu-row .num{grid-row:1;}
.modal-actions .button{gap:6px;}
.download-icon{width:14px;height:14px;}
}
@media (max-width: 680px){
#menus > .shell{display:flex;flex-direction:column;}
#menus .section-heading{order:0;margin-bottom:32px;}
#menus .menu-directory{order:1;}
#menus .menu-samples{order:2;margin-top:32px;margin-bottom:0px;}
}
#menus > .shell{display:flex;flex-direction:column;}
#menus .section-heading{order:0;}
#menus .menu-directory{order:1;}
#menus .menu-samples{order:2;margin-top:clamp(32px, 4vw, 52px);margin-bottom:0px;}

/* Accessibility and production loading states. */
:root{--orange-text:#b94116}
:focus-visible{outline:3px solid var(--green);outline-offset:4px}
.brand-section :focus-visible,.booking-band :focus-visible,.nav.open :focus-visible{outline-color:var(--gold)}
.booking-widget-wrap :focus-visible{outline-color:var(--green)!important}
.eyebrow,.parking-label,footer.footer h3,.service-times thead th,.menu-row .num,.circle-link{color:var(--orange-text)}
.booking-band .eyebrow{color:var(--gold)}
.button{color:var(--orange-text)}
.button.fill,.button:hover,.circle-link:hover,.skip{background:var(--orange-text);color:var(--cream)}
.booking-widget-wrap #dmn-partner-widget .button:not(.button--outline),.booking-widget-wrap #dmn-partner-widget .cell.selected,.booking-widget-wrap #dmn-partner-widget .list-slot:hover,.booking-widget-wrap #dmn-partner-widget .list-slot--selected{background:var(--orange-text)!important;color:var(--cream)!important}
.nav-socials a{min-width:44px;min-height:44px}
.menu-row h3 button{min-height:44px}
.footer-socials a{min-height:44px}
.booking-status,.booking-fallback{font-size:14px!important;line-height:1.5;margin:0 0 18px!important;color:var(--green)}
.booking-fallback{margin:18px 0 0!important}.booking-fallback a{text-decoration:underline}
[hidden]{display:none!important}
.menu-samples figure{height:clamp(240px,30vw,450px)}
.menu-samples img{height:100%;object-fit:cover}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:1050px){noscript .nav{display:flex;position:static}.nav-socials{padding-left:0}}

@media(max-width:680px){.hero-fox{width:110px;right:8px;bottom:12px}.hero-copy{padding-bottom:120px;min-height:540px}}
.brand-section .eyebrow{color:var(--gold)}

.header{background:var(--cream)}
@media(max-width:580px){.modal-header{display:grid;grid-template-columns:1fr;gap:14px;padding:16px}.modal-header>div{min-width:0}.modal-actions{justify-content:space-between}.modal-actions .button,.modal-close{min-height:44px}.modal-close{width:44px;height:44px}}
@media(max-height:500px) and (max-width:1050px){.nav>a{min-height:44px}}
.booking-widget-wrap #dmn-partner-widget .dropdown__edit-btn{color:var(--orange-text)!important}
.booking-widget-wrap #dmn-partner-widget .list-slot{min-height:44px}

.no-js .nav-toggle{display:none}
@media(max-width:1050px){.no-js .header{position:static;height:auto;grid-template-columns:1fr;gap:16px;padding-block:16px}.no-js .nav{display:flex;position:static;background:var(--cream);color:var(--green);flex-direction:row;flex-wrap:wrap;padding:0;gap:16px}.no-js .nav>a{font-size:14px}.no-js .nav-socials{color:var(--green);margin:0;padding:0;border:0}.no-js .nav-socials a{color:var(--green)}}

img{height:auto}
.footer-tagline{margin-top:18px!important}
footer.footer a:hover,.nav-socials a:hover,.footer-socials a:hover,.menu-row h3 button:hover,.menu-open-control:hover{color:var(--orange-text)}
.nav.open .nav-socials a:hover{color:var(--gold)}
@media(max-height:500px) and (max-width:1050px){.hero-fox{width:100px;right:20px;bottom:12px}}
.brand-grid>*{min-width:0}@media(max-width:680px){.brand-copy h2{font-size:clamp(44px,13vw,58px)}}

/* A single scripted animation handles anchors; header geometry stays stable. */
html{scroll-behavior:auto!important}
.header{transition:box-shadow .25s}
@media(min-width:1051px){.header.scrolled{height:94px}}
@media(max-width:1050px){.header.scrolled{--mobile-header-height:82px;height:82px}}
