:root{--ink:#191a17;--red:#c62432;--cream:#f5f1e8;--muted:#c2beb5;--line:#3b3b35;--background:#10110f;--surface:#191a17;--display:Impact,'Arial Narrow','Franklin Gothic Condensed',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--background);color:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.65}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #2582cc;outline-offset:6px}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:400;line-height:1.04;letter-spacing:-.015em}h2{font-size:clamp(44px,4.4vw,65px);margin-bottom:25px}p{margin-bottom:22px}.section-width{width:min(1180px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:13px;font-weight:800;letter-spacing:2px;line-height:1.5;margin-bottom:24px}.red-text{color:#ee4551}.header{background:var(--background);border-top:5px solid var(--red)}.header-inner{max-width:1340px;margin:auto;padding:13px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{width:155px;display:block;flex-shrink:0}.brand img{border-radius:2px}.header nav{display:flex;gap:36px;align-items:center}.header nav a{font-size:16px;font-weight:700;padding:10px 0;position:relative}.header nav a:after{content:'';position:absolute;bottom:4px;height:2px;background:var(--red);left:0;width:0;transition:width .2s}.header nav a:hover:after{width:100%}.header-call{font-weight:700;font-size:16px;display:flex;gap:12px;align-items:center;border-left:1px solid var(--line);padding:12px 0 12px 30px}.header-call svg{width:19px;color:#ee4551}.hero{position:relative;isolation:isolate;background:var(--ink);color:var(--cream);min-height:665px;overflow:hidden}.hero-carousel{position:absolute;inset:0 0 0 auto;height:100%;width:72%;overflow:hidden;z-index:-3}.hero-photo{position:absolute;inset:0;height:100%;width:100%;max-width:none;object-fit:cover;object-position:53% center;transform:translateX(-100%);transition:transform 1.1s cubic-bezier(.65,0,.35,1);will-change:transform}.hero-photo.is-active{transform:translateX(0)}.hero-photo.is-exiting{transform:translateX(100%)}.hero-photo.is-resetting{transition:none}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#171816 0%,rgba(23,24,22,.97) 24%,rgba(23,24,22,.73) 43%,rgba(23,24,22,.08) 78%),linear-gradient(0deg,rgba(23,24,22,.45),transparent 40%)}.hero-inner{max-width:1340px;margin:auto;padding:66px 48px 38px}.hero .eyebrow{display:flex;align-items:center;gap:13px;color:#e2dcd1}.little-line{width:30px;height:2px;background:#eb3949}.hero h1{font-size:clamp(60px,6.6vw,98px);margin-bottom:25px;max-width:720px;line-height:1.01}.hero h1 span{color:#ee4551}.hero-description{font-size:19px;color:#e0ded8;line-height:1.7;margin-bottom:30px}.hero-actions{display:flex;gap:14px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;padding:16px 23px;min-height:58px;font-size:16px;font-weight:700;line-height:1.5;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-red{background:var(--red);color:white}.button-red:hover{background:#ab1926}.button-outline{border-color:#868780;color:white;background:#191a172b}.button-outline:hover{background:#ffffff15}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#35362f}.button svg{width:20px;height:20px}.hero-address{display:flex;align-items:center;gap:10px;font-size:14px;color:#dedbd4;margin-top:32px;width:fit-content;min-height:32px}.hero-address svg{width:17px;height:19px}.hero-stamp{position:absolute;right:45px;bottom:43px;background:var(--background);color:var(--cream);padding:23px 26px;text-align:center;transform:rotate(-6deg);outline:1px solid #c62432;outline-offset:-8px;box-shadow:0 4px 20px #0003}.hero-stamp span{display:block;font-size:9px;letter-spacing:1.7px;font-weight:800}.hero-stamp strong{display:block;font-family:var(--display);font-size:29px;line-height:1.1;margin:10px 0;font-weight:400;color:#ee4551}.quick-info{display:flex;align-items:center;justify-content:center;gap:36px;padding:24px;background:var(--red);color:white;font-size:12px;letter-spacing:1px}.quick-info>div,.quick-info>a{display:flex;align-items:center;gap:13px}.quick-info svg{width:21px;height:21px}.quick-info strong{font-weight:800}.info-divider{height:23px;width:1px;background:#ffffff50}.about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px;padding-block:98px}.pub-photo{position:relative;margin:0 0 15px}.pub-photo img{width:100%;aspect-ratio:1.1;object-fit:cover;filter:saturate(.75);border:9px solid #30312b;box-shadow:0 2px 3px #0001}.photo-note{position:absolute;bottom:-17px;left:24px;background:var(--red);color:white;transform:rotate(-4deg);padding:10px 23px;font-family:Georgia,serif;font-style:italic;font-size:24px;box-shadow:0 3px 5px #0002}.about-copy p:not(.eyebrow){color:var(--muted);font-size:17px;max-width:455px}.text-link{display:inline-flex;gap:23px;align-items:center;border-bottom:2px solid var(--red);padding:7px 0;font-weight:700;font-size:16px}.text-link:hover{color:#ee4551}.text-link svg{width:21px}.menu-section{background:var(--red);color:var(--cream);position:relative;overflow:hidden}.menu-section:before{content:'BAAA';position:absolute;bottom:-90px;left:-15px;font:310px/1 var(--display);color:#ffffff06;pointer-events:none;letter-spacing:-8px}.menu-inner{padding-block:66px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;position:relative}.menu-copy h2{font-size:clamp(50px,5vw,72px);margin-bottom:23px}.menu-copy h2 span{color:#fff}.menu-copy>p:last-child{max-width:425px;font-size:18px;margin:0;color:#fff0e4}.menu-card{color:var(--cream);background:var(--background);padding:30px 34px;box-shadow:9px 9px 0 #921521}.menu-card-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line);font-size:12px;font-weight:800;letter-spacing:2px}.menu-card-top svg{color:#ee4551;height:27px}.menu-card h3{font-family:Georgia,serif;font-size:32px;margin:21px 0 12px;line-height:1.2}.menu-card p{font-size:17px;color:var(--muted);line-height:1.6;margin-bottom:23px}.menu-card .button{width:100%;background:var(--red)}.menu-card .button:hover{background:#ab1926}.menu-footnote{display:block;text-align:center;font-size:12px;color:var(--muted);margin-top:14px}.whats-on{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:64px;align-items:center}.whats-on .eyebrow{margin-bottom:17px}.whats-on h2{font-size:45px;margin-bottom:0}.whats-on-copy p{font-size:17px;color:var(--muted);margin-bottom:10px}.visit{background:var(--ink);color:var(--cream)}.visit-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:76px}.visit .eyebrow{color:#e96670}.visit h2 span{color:#bcb9b0}.visit address{font-style:normal;font-size:18px;color:#ddd9d0;line-height:1.7;margin-bottom:27px}.visit-phone{display:flex;align-items:center;gap:12px;font-size:20px;margin-top:24px;width:fit-content;min-height:44px}.visit-phone svg{width:20px;color:#e96670}.hours{border:1px solid #515149;padding:29px 31px;align-self:center}.hours-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.hours h3{font-family:Georgia,serif;font-size:28px;line-height:1.3;margin:0}.hours-heading svg{color:#e96670}.hours-intro{font-size:15px;color:#c2bfb7;margin:12px 0 26px}.hours table{border-collapse:collapse;width:100%;font-size:15px}.hours tr{border-bottom:1px solid #494a43}.hours th{font-weight:400;text-align:left}.hours td{text-align:right;white-space:nowrap}.hours th,.hours td{padding:17px 0}.hours tr.is-today th{color:#ff939a}.hours-note{font-size:14px;color:#c2bfb7;line-height:1.7;margin:24px 0 10px}.hours-call{font-size:15px;font-weight:700;display:inline-flex;align-items:center;gap:18px;min-height:44px}.hours-call:hover,.visit-phone:hover{color:#ff939a}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:27px}.footer-inner .brand{width:130px}.footer-inner p{font-family:var(--display);font-size:23px;margin:0;color:#ee4551}.footer-inner>a:last-child{display:flex;gap:10px;align-items:center;font-size:14px}.footer-inner svg{width:18px}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px;color:var(--muted);padding-block:19px}.svg-symbols{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:10;top:8px;left:8px;padding:12px 20px;background:white;color:black;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
@media(min-width:1600px){.hero-inner{padding-block:90px 55px}.hero{min-height:740px}}
@media(max-width:1100px){.header-inner{gap:20px;padding-inline:32px}.header nav{gap:24px}.header-call{padding-left:20px}.section-width{width:calc(100% - 64px)}.hero-inner{padding-inline:32px}.hero-stamp{right:25px;bottom:35px;transform:rotate(-5deg) scale(.88);transform-origin:bottom right}.about,.menu-inner,.whats-on,.visit-inner{gap:45px}.quick-info{gap:20px;letter-spacing:.4px;font-size:11px}.hours{padding:25px}.hours table{font-size:14px}.hero-carousel{width:82%}}
@media(max-width:760px){body{font-size:17px}.header-inner{padding:12px 22px 0;display:grid;grid-template-columns:1fr auto;gap:5px 15px}.brand{width:133px}.header-call{border:0;padding:12px 0;font-size:15px;gap:8px}.header nav{grid-row:2;grid-column:1/-1;justify-content:space-between;border-top:1px solid var(--line);gap:10px;margin-top:7px}.header nav a{font-size:14px;padding:13px 0}.section-width{width:calc(100% - 44px)}.hero{min-height:720px}.hero-inner{padding:40px 22px 210px}.hero h1{font-size:clamp(49px,10vw,74px);max-width:600px;margin-bottom:22px}.hero .eyebrow{font-size:11px;letter-spacing:1.7px;margin-bottom:24px}.hero-description{font-size:17px}.hero-carousel{width:100%;height:62%;top:auto;bottom:0}.hero-photo{object-position:center 58%}.hero-shade{background:linear-gradient(180deg,#171816 0%,#171816 25%,rgba(23,24,22,.91) 45%,rgba(23,24,22,.28) 75%,rgba(23,24,22,.12))}.hero-actions{gap:10px}.button{font-size:15px;padding:15px 18px;gap:15px}.hero-address{font-size:12px;margin-top:22px;gap:8px}.hero-stamp{bottom:20px;right:22px;transform:rotate(-5deg) scale(.72)}.quick-info{padding:19px 22px;justify-content:center;font-size:12px}.quick-info>div:nth-of-type(2),.quick-info>a,.info-divider{display:none}.about{grid-template-columns:1fr;padding-block:54px;gap:45px}.pub-photo{max-width:560px}.pub-photo img{aspect-ratio:1.4;border-width:6px}.about-copy{max-width:560px}.about h2{font-size:clamp(43px,9vw,60px)}.about-copy p:not(.eyebrow){max-width:none}.eyebrow{font-size:11px;letter-spacing:1.5px;margin-bottom:20px}.menu-inner{grid-template-columns:1fr;gap:32px;padding-block:46px 52px}.menu-copy h2{font-size:56px}.menu-copy>p:last-child{font-size:17px;max-width:none}.menu-card{padding:25px;box-shadow:6px 6px 0 #921521}.whats-on{grid-template-columns:1fr;gap:22px;padding-block:45px}.whats-on h2{font-size:40px}.visit-inner{grid-template-columns:1fr;gap:35px;padding-block:50px}.visit h2{font-size:55px}.hours{padding:24px 20px}.hours table{font-size:14px}.footer-inner{flex-wrap:wrap;justify-content:space-between;padding-block:24px;gap:20px}.footer-inner p{font-size:19px;max-width:150px;text-align:right}.footer-inner>a:last-child{width:100%;justify-content:center;border-top:1px solid var(--line);padding-top:18px;min-height:44px}.footer-bottom{flex-direction:column;text-align:center;gap:6px}.photo-note{font-size:21px}.hero-actions .button{flex:1;justify-content:center}.hours-heading h3{font-size:26px}}
@media(max-width:370px){.header-inner{padding-inline:16px}.header-call{font-size:14px}.brand{width:115px}.header nav a{font-size:13px}.section-width{width:calc(100% - 32px)}.hero-inner{padding-inline:16px}.hero-actions{flex-direction:column}.hero{min-height:820px}.hero h1{font-size:46px}.hero-address{font-size:11px}.hours{padding-inline:15px}.hours table{font-size:12px}.menu-card{padding:22px}.footer-inner p{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.button:hover{transform:none}}
/* Keep opening hours comfortably readable on narrow phones. */
@media(max-width:480px){.hours table{font-size:16px}.hours tr{display:grid;grid-template-columns:1fr;padding-block:13px}.hours th{font-weight:700;padding:0 0 3px}.hours td{text-align:left;padding:0}.hero-actions{flex-direction:column}.hero-actions .button{justify-content:space-between;width:100%;font-size:16px}.brand img{clip-path:inset(0 0 3% 0)}}

/* Materials drawn from the bar's charcoal render and frosted street windows. */
:root{
  --slate-base:#242729;
  --slate-overlay-color:15 15 10;
  --slate-overlay-opacity:.91;
  --font-alegreya-sans:'Alegreya Sans',sans-serif;
}
body{
  background:var(--background);
  font-family:var(--font-alegreya-sans);
  font-weight:400;
}
.header,
footer{
  background:var(--background);
  background-image:none;
}
.header{
  position:relative;
  z-index:1;
  box-shadow:0 9px 18px rgb(0 0 0 / .13);
}
footer{
  position:relative;
  z-index:1;
  box-shadow:0 -9px 18px rgb(0 0 0 / .13);
}
.hero:before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background-color:var(--slate-base);
  background-image:
    linear-gradient(rgb(var(--slate-overlay-color) / var(--slate-overlay-opacity)),rgb(var(--slate-overlay-color) / var(--slate-overlay-opacity))),
    url('images/slate.png');
  background-repeat:no-repeat,repeat;
  background-size:100% 100%,720px 720px;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 24%,transparent 72%);
  mask-image:linear-gradient(90deg,#000 0%,#000 24%,transparent 72%);
}
.about{
  position:relative;
  isolation:isolate;
}
.about:before{
  content:'';
  position:absolute;
  inset-block:0;
  left:calc((100vw - 100%) / -2);
  right:calc((100vw - 100%) / -2);
  z-index:-1;
  background-color:var(--slate-base);
  background-image:
    linear-gradient(rgb(var(--slate-overlay-color) / var(--slate-overlay-opacity)),rgb(var(--slate-overlay-color) / var(--slate-overlay-opacity))),
    url('images/slate.png');
  background-repeat:no-repeat,repeat;
  background-size:100% 100%,720px 720px;
}
.slate-stack{
  background-color:var(--slate-base);
  background-image:
    linear-gradient(rgb(var(--slate-overlay-color) / var(--slate-overlay-opacity)),rgb(var(--slate-overlay-color) / var(--slate-overlay-opacity))),
    url('images/slate.png');
  background-repeat:no-repeat,repeat;
  background-size:100% 100%,720px 720px;
}
.whats-on,
.visit{
  background:transparent;
}
.visit{
  border-top:1px solid rgb(255 255 255 / .12);
}
.button-outline{
  color:#fff;
  border-color:rgba(255,255,255,.42);
  background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(190,197,201,.08));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 8px 24px rgba(0,0,0,.2);
  -webkit-backdrop-filter:blur(14px) saturate(.8);
  backdrop-filter:blur(14px) saturate(.8);
}
.button-outline:hover{
  background:linear-gradient(135deg,rgba(255,255,255,.28),rgba(190,197,201,.13));
  border-color:rgba(255,255,255,.62);
}
.menu-card h3,
.hours h3{
  font-family:var(--font-alegreya-sans);
  font-weight:400;
}
@media(max-width:760px){
  .hero:before{
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 38%,transparent 78%);
    mask-image:linear-gradient(180deg,#000 0%,#000 38%,transparent 78%);
  }
}
.quick-info{flex-wrap:wrap}
html,body{overflow-x:clip}
.pub-photo img{border-color:var(--red)}
.hours{
  width:88%;
  min-height:385px;
  justify-self:start;
  padding:32px;
  background:rgb(20 22 22 / .6);
  box-shadow:0 12px 32px rgb(0 0 0 / .2);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
.hours-heading{
  padding-bottom:16px;
  border-bottom:1px solid #494a43;
}
.visit-address,
.visit-email,
.visit-phone{
  display:flex;
  align-items:center;
  gap:12px;
  width:fit-content;
  margin-top:14px;
  color:#ddd9d0;
}
.visit-address{
  font-size:18px;
  line-height:1.7;
}
.visit-address svg,
.visit-phone svg{
  color:#e96670;
}
.visit-email img{
  display:block;
  width:20px;
  height:20px;
  object-fit:contain;
}
.visit-email,
.visit-phone{
  transition:color .2s;
  color:#ddd9d0;
}
.visit-email:hover,
.visit-phone:hover{
  color:#e96670;
}
.visit-email:active,
.visit-phone:active{
  color:#e96670;
}
.hours-intro{margin:14px 0 22px}
.hours th,.hours td{padding-block:16px}
.hours-note{margin:22px 0 12px}
.hours-call{min-height:40px}
.hours tr.is-today td{color:#ff939a}
@media(max-width:1100px) and (min-width:761px){.hours{padding:28px}}
@media(max-width:760px){.hours{width:88%;min-height:385px;padding:26px 22px}}
@media(max-width:370px){.hours{padding-inline:17px}}
@media(max-width:760px){.hero-address{display:none}}
@media(max-width:760px){#visit-title{display:none}}

.menu-toggle,
.menu-close,
.mobile-menu-backdrop{
  display:none;
}
@media(max-width:760px){
  .header{
    position:sticky;
    top:0;
    z-index:100;
    box-shadow:0 7px 24px rgb(0 0 0 / .28);
    transition:transform .28s ease;
  }
  .header.is-hidden{
    transform:translateY(calc(-100% - 2px));
  }
  .header.menu-open{
    transform:none;
  }
  .header-inner{
    position:relative;
    z-index:103;
    display:flex;
    grid-template-columns:none;
    justify-content:space-between;
    gap:20px;
    padding:10px 20px;
  }
  .header .brand{
    width:126px;
  }
  .header-call{
    display:none;
  }
  .menu-toggle{
    display:flex;
    width:48px;
    height:48px;
    flex:0 0 48px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    padding:0;
    color:#fff;
    background:rgb(198 36 50);
    border:0px solid rgb(255 255 255 / .25);
    border-radius:6px;
    cursor:pointer;
  }
  .menu-line{
    display:block;
    width:22px;
    height:2px;
    background:currentColor;
    transform-origin:center;
    transition:transform .22s ease,opacity .18s ease;
  }
  .header nav{
    position:fixed;
    z-index:102;
    inset:0 0 0 auto;
    width:min(84vw,340px);
    height:100dvh;
    margin:0;
    padding:104px 28px 36px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    background:#10110f;
    border:0;
    box-shadow:-18px 0 50px rgb(0 0 0 / .4);
    visibility:hidden;
    transform:translateX(100%);
    transition:transform .28s ease,visibility .28s;
  }
  .menu-close{
    position:absolute;
    top:20px;
    left:20px;
    display:flex;
    width:48px;
    height:48px;
    align-items:center;
    justify-content:center;
    padding:0;
    color:#fff;
    background:var(--red);
    border:0;
    border-radius:6px;
    cursor:pointer;
  }
  .menu-close:before,
  .menu-close:after{
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:22px;
    height:2px;
    background:currentColor;
  }
  .menu-close:before{transform:translate(-50%,-50%) rotate(45deg)}
  .menu-close:after{transform:translate(-50%,-50%) rotate(-45deg)}
  .header.menu-open nav{
    visibility:visible;
    transform:translateX(0);
  }
  .header nav a{
    min-height:64px;
    padding:19px 2px;
    font-size:20px;
    border-top:1px solid rgb(255 255 255 / .14);
  }
  .header nav a:last-child{
    border-bottom:1px solid rgb(255 255 255 / .14);
  }
  .header nav a:after{
    display:none;
  }
  .mobile-menu-backdrop{
    position:fixed;
    z-index:101;
    inset:0;
    display:block;
    width:100%;
    height:100dvh;
    padding:0;
    background:rgb(0 0 0 / .64);
    border:0;
    opacity:0;
    visibility:hidden;
    touch-action:none;
    transition:opacity .28s ease,visibility .28s;
  }
  .header.menu-open .mobile-menu-backdrop{
    opacity:1;
    visibility:visible;
  }
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
  .header,
  .header nav,
  .mobile-menu-backdrop,
  .menu-line{
    transition:none;
  }
}
.menu-card{transition:transform .2s}.menu-card .button:hover{transform:none}.menu-card:has(.button:hover){transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.menu-card:has(.button:hover){transform:none}}
.menu-card:has(.button:hover){box-shadow:9px 11px 0 #921521}
.menu-card{transition:transform .2s,box-shadow .2s}.menu-card:has(.button:hover){transform:translate(-2px,-2px);box-shadow:11px 11px 0 #921521}
.menu-card-top h3{margin:0}
.menu-card{padding-block:32px}.menu-card-top{padding-bottom:18px}.menu-card p{margin:20px 0 24px}.menu-footnote{margin-top:16px}
.hours h3,
.menu-card-top h3{
  white-space:nowrap;
}
@media(max-width:760px){
  .hours h3{font-size:clamp(22px,7vw,28px)}
  .menu-card-top h3{font-size:clamp(25px,8vw,32px)}
}
@media(max-width:480px){
  .hours th{padding:0 0 3px}
  .hours td{padding:0}
}

.footer-actions{
  display:flex;
  align-items:center;
  gap:12px;
}
.footer-icon-link{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
}
.footer-icon-link svg{
  width:24px;
  height:24px;
}
.footer-png-icon{
  display:block;
  width:24px;
  height:24px;
  object-fit:contain;
}
@media(max-width:760px){
  .footer-actions{
    width:100%;
    justify-content:center;
    padding-top:9px;
    border-top:1px solid var(--line);
  }
}
@media(max-width:760px){.footer-inner{padding-bottom:9px}}

/* Food banner */
.food-banner{
  position:relative;
  isolation:isolate;
  padding-block:clamp(64px,7vw,96px);
  overflow:hidden;
  background:var(--red);
  color:#fff;
}
.food-banner:before{content:none}
.food-banner-inner{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);
  gap:clamp(44px,6vw,88px);
  align-items:stretch;
}
.food-banner-media{
  position:relative;
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr;
  grid-template-rows:minmax(0,1fr) minmax(0,1fr);
  grid-auto-flow:dense;
  gap:8px;
  height:440px;
  min-width:0;
  min-height:0;
  align-self:center;
  contain:layout paint;
  overflow:hidden;
  padding:8px;
  background:#10110f;
  box-shadow:12px 12px 0 rgb(115 13 26 / .48);
}
.food-tile{
  position:relative;
  z-index:2;
  min-width:0;
  margin:0;
  overflow:hidden;
  background:#191a17;
}
.food-one{grid-row:span 2}
.food-four{grid-column:span 2}
.food-tile img{
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  filter:saturate(.9) contrast(1.04);
}
.food-one img,
.food-two img,
.food-three img,
.food-four img{object-position:center}
.food-banner-copy{
  width:100%;
  max-width:370px;
  align-self:center;
  justify-self:end;
}
.food-banner-copy .eyebrow{
  margin-bottom:21px;
  color:#fff;
  font-size:12px;
  letter-spacing:.18em;
}
.food-banner-copy h2{
  margin-bottom:24px;
  color:#fff;
  font-size:clamp(48px,4.7vw,70px);
  line-height:.94;
}
.food-banner-copy h2 span{color:#171816}
.food-banner-copy>p:not(.eyebrow){
  margin-bottom:30px;
  color:#fff;
  font-size:17px;
  line-height:1.6;
}
.food-banner-cta{
  display:flex;
  width:100%;
  min-height:68px;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:17px 21px 17px 24px;
  background:#10110f;
  color:#fff;
  font-size:17px;
  font-weight:800;
  line-height:1.2;
  box-shadow:0 13px 28px rgb(87 7 17 / .28);
  transition:background .2s,transform .2s;
}
.food-banner-cta:hover{
  background:#242622;
  transform:translateY(-2px);
}
.food-banner-cta svg{width:22px;height:22px}
@media(max-width:900px){
  .food-banner-inner{
    grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);
    gap:34px;
  }
  .food-banner-media{height:390px;min-height:0}
}
@media(max-width:760px){
  .food-banner{padding-block:48px 54px}
  .food-banner-inner{
    display:flex;
    flex-direction:column;
    gap:35px;
  }
  .food-banner-media{
    width:100%;
    height:auto;
    aspect-ratio:1.15;
    grid-template-columns:1fr 1fr;
    grid-template-rows:1fr 1fr;
    gap:6px;
    padding:6px;
  }
  .food-one{grid-row:auto}
  .food-four{grid-column:auto}
  .food-banner-copy{
    max-width:none;
    justify-self:stretch;
  }
  .food-banner-copy h2{
    max-width:520px;
    margin-bottom:20px;
    font-size:clamp(47px,14vw,66px);
  }
  .food-banner-copy>p:not(.eyebrow){
    max-width:520px;
    margin-bottom:25px;
    font-size:16px;
  }
  .food-banner-cta{
    min-height:64px;
    font-size:16px;
  }
}
@media(max-width:370px){
  .food-banner-copy h2{font-size:44px}
}
@media(prefers-reduced-motion:reduce){
  .food-banner-cta:hover{transform:none}
}

.about{
  --about-copy-gap:32px;
  grid-template-columns:minmax(280px,1fr) minmax(0,1fr);
  gap:clamp(24px,3vw,48px);
  align-items:center;
}
.about-photo{
  margin:0;
  min-height:0;
  aspect-ratio:3019/2153;
  align-self:center;
}
.about-photo img{
  width:100%;
  height:100%;
  aspect-ratio:auto;
}
.about-photo-seating{aspect-ratio:6000/3376}
.about-photo-seating img{object-position:52% center}
.about-photo-beer{
  grid-column:4;
  grid-row:1;
  aspect-ratio:6000/3376;
}
.about-photo-beer img{object-position:50% center}
.about-copy{
  display:flex;
  min-width:0;
  min-height:100%;
  flex-direction:column;
  justify-content:center;
}
.about-copy-lead{
  grid-column:2;
  grid-row:1;
}
.about-copy-details{
  grid-column:3;
  grid-row:1;
}
.about-copy-flow{
  display:flex;
  grid-column:2;
  grid-row:1;
  min-height:0;
  align-self:stretch;
  justify-content:flex-start;
}
.about .about-copy-flow h2{
  width:100%;
  margin-bottom:calc(var(--about-copy-gap) / 2);
  white-space:normal;
}
.about-title-break{display:none}
.about-columns{
  column-count:2;
  column-gap:calc(var(--about-copy-gap) / 2);
  column-fill:balance;
}
.about-columns p{
  max-width:none!important;
  margin-bottom:0;
}
.about h2{
  margin-bottom:0;
  font-size:clamp(24px,2.6vw,44px);
}
.about-copy-details .text-link{align-self:flex-start}
.about-photo-beer .photo-note{
  right:24px;
  left:auto;
  transform:rotate(4deg);
}
@media(max-width:1100px) and (min-width:761px){
  .about{--about-copy-gap:20px;gap:20px}
  .about h2{font-size:clamp(18px,2.6vw,32px)}
  .about-copy p:not(.eyebrow){font-size:15px}
}
@media(max-width:760px){
  .about{
    grid-template-columns:1fr;
    gap:16px;
  }
  .about-photo,
  .about-photo-beer,
  .about-copy-lead,
  .about-copy-details{
    grid-column:auto;
    grid-row:auto;
  }
  .about-photo{
    min-height:0;
    aspect-ratio:1.4;
    margin-bottom:24px;
  }
  .about-photo img{
    height:auto;
    aspect-ratio:1.4;
  }
  .about-copy-lead{margin-bottom:0}
  .about-copy-lead h2{margin-bottom:16px}
  .about-copy-lead p{margin-bottom:0}
  .about-copy-flow{
    grid-column:auto;
    grid-row:auto;
    min-height:auto;
    align-self:auto;
    justify-content:flex-start;
  }
  .about .about-copy-flow h2{width:auto;margin-bottom:16px;white-space:normal}
  .about-title-break{display:initial}
  .about-columns{column-count:1}
  .about h2{font-size:clamp(43px,9vw,60px)}
}

@media(min-width:761px){
  .hero-description{
    width:620px;
    max-width:100%;
  }
}
@media(max-width:760px){
  .hero-description{display:block}
  .hero-description-more{display:none}
}

@media(min-width:1600px){
  .about{
    width:min(1650px,calc(100% - 64px));
    grid-template-columns:minmax(520px,1fr) minmax(0,1fr);
  }
}

/* Weekly events banner */
.whats-on{
  grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);
  gap:clamp(48px,6vw,88px);
  padding-block:clamp(78px,8vw,116px);
  align-items:center;
}
.whats-on-content{
  max-width:465px;
}
.whats-on .eyebrow{
  margin-bottom:18px;
}
.whats-on h2{
  margin-bottom:22px;
  font-size:clamp(52px,5.2vw,74px);
}
.whats-on-lead{
  max-width:430px;
  margin-bottom:27px;
  color:var(--muted);
  font-size:17px;
  line-height:1.65;
}
.weekly-lineup{
  margin:0 0 28px;
  border-top:1px solid #515149;
}
.weekly-lineup>div{
  display:grid;
  grid-template-columns:112px 1fr;
  align-items:center;
  gap:18px;
  padding:10px 0;
  border-bottom:1px solid #515149;
}
.weekly-lineup dt{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  line-height:1.4;
  letter-spacing:1.5px;
  text-transform:uppercase;
}
.weekly-lineup-time{
  display:block;
  margin-top:2px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.35px;
  line-height:1.35;
  text-transform:none;
  white-space:nowrap;
}
.weekly-lineup dd{
  margin:0;
  color:var(--cream);
  font-family:Georgia,serif;
  font-size:20px;
  font-weight:700;
  line-height:1.35;
}
.weekly-lineup>div.is-today dt,
.weekly-lineup>div.is-today dd{
  color:#ee4551;
}
.hours tr.is-today th,
.hours tr.is-today td{
  color:#ee4551;
}
.whats-on-photo{
  width:min(45vw,860px);
  max-width:none;
  aspect-ratio:5/3;
  justify-self:start;
  margin:0;
  transform:rotate(1deg);
  box-shadow:15px 18px 0 #0b0c0a;
}
.whats-on-photo img{
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:center;
  filter:saturate(.9) contrast(1.04);
  border-color:var(--red);
}
.whats-on-photo .photo-note{
  right:25px;
  bottom:-20px;
  left:auto;
  transform:rotate(4deg);
}
@media(max-width:900px) and (min-width:761px){
  .whats-on{
    grid-template-columns:minmax(265px,.82fr) minmax(0,1.18fr);
    gap:34px;
  }
  .whats-on h2{font-size:52px}
  .weekly-lineup>div{grid-template-columns:96px 1fr}
  .weekly-lineup dd{font-size:18px}
}
@media(max-width:760px){
  .whats-on{
    grid-template-columns:1fr;
    gap:0;
    padding-block:58px 76px;
  }
  .whats-on-content{display:contents}
  .whats-on .eyebrow{order:1}
  .whats-on h2{
    order:2;
    margin-bottom:29px;
    font-size:clamp(48px,13vw,62px);
  }
  .whats-on-lead{
    order:4;
    margin-bottom:24px;
    font-size:16px;
  }
  .weekly-lineup{order:5}
  .whats-on .text-link{
    order:6;
    justify-self:start;
  }
  .weekly-lineup>div{
    grid-template-columns:94px 1fr;
    gap:14px;
    padding-block:12px;
  }
  .weekly-lineup dd{font-size:18px}
  .whats-on-photo{
    order:3;
    width:calc(100% + 12px);
    aspect-ratio:1.35;
    margin-bottom:50px;
    box-shadow:9px 11px 0 #0b0c0a;
  }
  .whats-on-photo .photo-note{
    right:16px;
    bottom:-17px;
    padding:8px 18px;
    font-size:20px;
  }
}
@media(max-width:370px){
  .weekly-lineup>div{grid-template-columns:82px 1fr}
  .weekly-lineup dt{font-size:10px;letter-spacing:1.1px}
  .weekly-lineup dd{font-size:17px}
}

/* Mobile quick-info ticker */
.quick-info-track{
  display:flex;
  justify-content:center;
  width:100%;
}
.quick-info-set{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:36px;
}
.quick-info-set-copy{display:none}
.quick-info-item{
  display:flex;
  align-items:center;
  gap:13px;
  white-space:nowrap;
}
@media(max-width:1100px) and (min-width:761px){
  .quick-info-set{gap:20px}
}
@keyframes quick-info-scroll-right{
  from{transform:translateX(-50%)}
  to{transform:translateX(0)}
}
@media(max-width:760px){
  .quick-info{
    display:block;
    padding:18px 0;
    overflow:hidden;
  }
  .quick-info-track{
    justify-content:flex-start;
    width:max-content;
    gap:0;
    animation:quick-info-scroll-right 52s linear infinite;
    will-change:transform;
  }
  .quick-info-set,
  .quick-info-set-copy{
    display:flex;
    flex:none;
    justify-content:flex-start;
    gap:34px;
    padding-right:34px;
  }
  .quick-info-item{display:flex!important;flex:none}
  .quick-info-set .info-divider{display:block;flex:none}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
  .quick-info-track{
    animation:none;
    transform:none;
  }
  .quick-info-set-copy{display:none}
}
.visit-email{
  display:flex;
  align-items:center;
  gap:12px;
  width:fit-content;
  min-height:44px;
  margin-top:14px;
  font-size:20px;
}
.visit-email img{
  width:20px;
  height:20px;
  object-fit:contain;
}
.visit-email:hover{color:#ff939a}
@media(max-width:760px){
  .whats-on-lead{display:none}
}
/* Give the pub story room to breathe above the existing mobile layout. */
@media(min-width:761px){
  .about{
    width:min(1600px,calc(100% - 96px));
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-rows:auto auto;
    gap:32px clamp(32px,4vw,64px);
    align-items:start;
    padding-block:clamp(64px,7vw,104px);
  }
  .about-copy-flow{display:contents}
  .about .about-copy-flow h2{
    grid-column:1/-1;
    grid-row:1;
    margin:0 0 8px;
    max-width:100%;
    font-size:clamp(44px,5.8vw,80px);
    line-height:1.04;
    text-wrap:balance;
  }
  .about-title-break:first-of-type{display:initial}
  .about-photo-seating{
    grid-column:1;
    grid-row:2;
    align-self:start;
    width:100%;
    max-width:none;
  }
  .about-columns{
    grid-column:2;
    grid-row:2;
    column-count:1;
    max-width:none;
  }
  .about-copy .about-columns p{
    font-size:17px;
    line-height:1.75;
  }
}
@media(min-width:761px) and (max-width:1000px){
  .about{
    width:calc(100% - 64px);
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:auto auto auto;
    gap:32px;
  }
  .about-columns{
    grid-column:1/-1;
    grid-row:3;
    max-width:none;
    column-count:2;
    column-gap:32px;
  }
  .about-copy .about-columns p{font-size:16px;line-height:1.7}
}
.about-read-more{display:none}
@media(max-width:760px){
  .about-more{display:none}
  .about.is-expanded .about-more{display:inline}
  .about-read-more{
    display:inline-flex;
    align-items:center;
    width:fit-content;
    min-height:44px;
    margin-top:4px;
    padding:0;
    border:0;
    border-bottom:2px solid var(--red);
    background:transparent;
    color:var(--cream);
    font:700 16px/1.5 Arial,Helvetica,sans-serif;
    cursor:pointer;
  }
}

/* Keep the page chrome quiet while retaining a visible scroll affordance. */
html{
  scrollbar-width:thin;
  scrollbar-color:#4b4d47 transparent;
}
::-webkit-scrollbar{
  width:8px;
}
::-webkit-scrollbar-track{
  background:transparent;
}
::-webkit-scrollbar-button{
  display:none;
}
::-webkit-scrollbar-thumb{
  background:rgb(194 190 181 / .38);
  border:2px solid transparent;
  border-radius:999px;
  background-clip:padding-box;
}
::-webkit-scrollbar-thumb:hover{
  background-color:rgb(194 190 181 / .65);
}

.hours table{
  font-size:17px;
}

.visit-copy > .button-red{
  margin-top:44px;
}

.visit-copy h2{
  margin-bottom:26px;
}
.visit-copy .visit-email{
  margin-top:0;
}
.visit-copy .visit-phone,
.visit-copy .visit-address{
  margin-top:9px;
}

.footer-credit{
  text-decoration-line:underline;
  text-decoration-color:transparent;
  text-underline-offset:3px;
  transition:text-decoration-color .2s;
}
.footer-credit:hover,
.footer-credit:focus-visible{
  text-decoration-color:currentColor;
}

/* A tighter header without changing the logo or navigation scale. */
.header-inner{
  padding-block:10px;
}
@media(max-width:760px){
  .header-inner{
    padding-block:9px;
  }
}
@media(min-width:761px){
  .header-inner{
    padding-block:9px;
  }
}

.whats-on h2{
  font-size:clamp(46.8px,4.68vw,66.6px);
}
.whats-on{
  padding-block:clamp(64px,7vw,96px);
}
@media(max-width:760px){
  .whats-on{
    padding-block:48px 54px;
  }
  .whats-on h2{
    font-size:clamp(43.2px,11.7vw,55.8px);
  }
}

@media(max-width:760px){
  .hours{
    width:100%;
    justify-self:stretch;
  }
  .visit-copy > .button-red{
    margin-top:27px;
  }
}


/* Keep the desktop header and hero together within the opening viewport. */
@media(min-width:761px){
  .header{
    height:109px;
  }
  .header-inner{
    height:104px;
  }
  .hero{
    --hero-stamp-bottom:43px;
    height:calc(100vh - 109px);
    height:calc(100svh - 109px);
    min-height:0;
  }
  .hero-inner{
    display:flex;
    flex-direction:column;
    height:100%;
    padding-block:clamp(24px,4.8svh,48px) var(--hero-stamp-bottom);
  }
  .hero .eyebrow{
    margin-bottom:clamp(12px,2svh,18px);
  }
  .hero h1{
    max-width:720px;
    margin-bottom:18px;
    font-size:clamp(52px,min(6.6vw,12svh),98px);
    line-height:.98;
  }
  .hero-description{
    margin-bottom:22px;
    font-size:18px;
    line-height:1.55;
  }
  .hero-address{
    margin-top:auto;
  }
}

@media(min-width:761px) and (max-width:1100px){
  .hero{
    --hero-stamp-bottom:35px;
  }
}

@media(min-width:761px) and (max-height:680px){
  .hero-inner{
    padding-block:20px var(--hero-stamp-bottom);
  }
  .hero .eyebrow{
    margin-bottom:10px;
  }
  .hero h1{
    margin-bottom:12px;
    font-size:clamp(46px,min(5vw,9svh),64px);
  }
  .hero-description{
    margin-bottom:14px;
    font-size:16px;
    line-height:1.4;
  }
  .hero .button{
    min-height:50px;
    padding-block:8px;
  }
  .hero-address{
    margin-top:auto;
  }
}

@media(min-width:761px) and (max-height:600px){
  .hero-description-more{
    display:none;
  }
}
