@font-face {
  font-family:Alfa;
  src:url('/fonts/alfa-slab-one-400.woff2') format('woff2');
  font-weight:400;
  font-display:swap;
}
@font-face {
  font-family:Familjen;
  src:url('/fonts/familjen-grotesk-400-600.woff2') format('woff2');
  font-weight:400 600;
  font-display:swap;
}
@font-face {
  font-family:Space;
  src:url('/fonts/space-mono-400.woff2') format('woff2');
  font-weight:400;
  font-display:swap;
}
:root {
  --paper:#f4edda;
  --ink:#352c23;
  --red:#ad3026;
  --mustard:#e6ba52;
  --muted:#756655;
  --line:#c5bba4;
  --mono:Space,monospace;
  --gutter:clamp(22px,5vw,90px);
  color-scheme:light;
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:24px;
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Familjen,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
button,input {
  font:inherit;
}
button,a {
  color:inherit;
  touch-action:manipulation;
}
button {
  cursor:pointer;
}
a {
  text-decoration:none;
}
a:hover {
  color:var(--red);
}
button:focus-visible,a:focus-visible {
  outline:3px solid var(--red);
  outline-offset:5px;
}
::selection {
  background:var(--red);
  color:var(--paper);
}
.top-stripe {
  height:8px;
  background:var(--red);
}
.site-header {
  height:88px;
  margin:0 var(--gutter);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-bottom:1px solid var(--line);
}
.small-brand {
  font:11px var(--mono);
  letter-spacing:.5px;
  display:flex;
  align-items:center;
  gap:14px;
}
.small-brand>span {
  font-size:31px;
  color:var(--red);
}
nav {
  display:flex;
  align-items:center;
  gap:30px;
}
nav a {
  font-size:13px;
}
#motion-toggle {
  border:0;
  background:none;
  font:9px var(--mono);
  padding:8px 0;
  color:var(--muted);
}
.header-aside {
  font:9px var(--mono);
  color:var(--muted);
}
.hero {
  padding:35px var(--gutter) 60px;
}
.wordmark-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:25px;
}
.wordmark-row h1 {
  font:400 clamp(78px,13.5vw,215px)/1.05 Alfa,Georgia,serif;
  letter-spacing:-.055em;
  color:var(--red);
  margin:0;
  white-space:nowrap;
}
.wordmark-row h1>span {
  font:27px Familjen,sans-serif;
  vertical-align:top;
  display:inline-block;
  margin-top:25px;
  margin-left:15px;
}
.roundel {
  flex-shrink:0;
  width:104px;
  height:104px;
  border:2px solid var(--red);
  border-radius:50%;
  outline:1px solid var(--red);
  outline-offset:-7px;
  transform:rotate(12deg);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:var(--red);
}
.roundel>span {
  font:30px Alfa,serif;
}
.roundel>small {
  font:7px var(--mono);
  margin-top:5px;
}
.sign-baseline {
  display:flex;
  justify-content:space-between;
  border-bottom:2px solid var(--red);
  padding:19px 0 18px;
  margin-bottom:45px;
  color:var(--red);
  font:8px var(--mono);
  letter-spacing:.7px;
}
.hero-content {
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:40px;
  align-items:start;
}
.hero-copy {
  padding-top:20px;
}
.eyebrow {
  font:8px/1.7 var(--mono);
  letter-spacing:1px;
  color:var(--muted);
  margin:0 0 24px;
}
.hero-copy h2 {
  font:400 clamp(33px,3.9vw,62px)/1.15 Alfa,Georgia,serif;
  letter-spacing:-1.8px;
  margin:0 0 22px;
}
.hero-copy h2 em {
  font-style:normal;
  color:var(--red);
}
.intro {
  font-size:16px;
  line-height:1.6;
  color:#695b4c;
  margin:0 0 27px;
}
.menu-button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:55px;
  padding:16px 21px;
  background:var(--red);
  color:#fff2d5;
  box-shadow:4px 4px 0 #d7c8a9;
  border:1px solid #8d2b23;
  font:10px var(--mono);
  letter-spacing:1px;
}
.menu-button>span {
  font:23px Familjen;
  line-height:1;
}
.menu-button:hover {
  background:#80281f;
  color:#fff2d5;
}
.counter-slip {
  display:flex;
  gap:14px;
  border-top:1px solid var(--line);
  margin-top:36px;
  padding-top:20px;
  max-width:340px;
}
.slip-star {
  font-size:27px;
  color:var(--red);
}
.counter-slip p {
  font-size:11px;
  line-height:1.6;
  margin:0;
  color:var(--muted);
}
.counter-slip strong {
  font-weight:500;
  color:var(--ink);
}
.counter {
  min-width:0;
}
.counter-top {
  font:7px var(--mono);
  letter-spacing:.8px;
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:0 5px 8px;
  color:var(--muted);
}
.stand-art {
  position:relative;
}
.stand {
  display:block;
  width:100%;
  overflow:visible;
  filter:drop-shadow(0 11px 8px #66533620);
}
.svg-sign {
  font:23px Alfa,Georgia,serif;
  letter-spacing:-.3px;
  fill:#ae3026;
}
.svg-micro {
  font:5px Space,monospace;
}
.svg-open {
  font:19px Alfa,Georgia,serif;
  fill:#f4e5c5;
}
.svg-counter-label {
  font:11px Space,monospace;
  letter-spacing:2px;
  fill:#f3dfb9;
}
.steam {
  animation:steam-rise 4s ease-in-out infinite;
  pointer-events:none;
}
.ticker {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:40px;
  background:var(--red);
  color:var(--paper);
  padding:17px var(--gutter);
  font:10px var(--mono);
  letter-spacing:1px;
  overflow:hidden;
}
.ticker span {
  white-space:nowrap;
}
.ticker i {
  font:25px Familjen;
  font-style:normal;
  color:var(--mustard);
}
.menu-section {
  padding:85px var(--gutter) 75px;
}
.menu-title-row {
  display:flex;
  align-items:end;
  justify-content:space-between;
  margin-bottom:33px;
  gap:30px;
}
.menu-title-row .eyebrow {
  margin-bottom:14px;
}
.menu-title-row h2 {
  font:400 clamp(30px,3.8vw,55px)/1.1 Alfa,serif;
  letter-spacing:-1px;
  margin:0;
  color:var(--red);
}
.menu-title-row>p {
  font-size:13px;
  line-height:1.6;
  color:var(--muted);
  margin:0;
}
.menu-board {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:65px;
  border:2px solid var(--ink);
  outline:1px solid var(--ink);
  outline-offset:-7px;
  padding:35px 38px 15px;
}
.menu-category {
  display:flex;
  align-items:center;
  gap:15px;
  border-bottom:2px solid var(--ink);
  padding-bottom:17px;
  margin-bottom:24px;
}
.menu-category>span {
  font:9px var(--mono);
  border:1px solid var(--ink);
  padding:5px 7px;
}
.menu-category h3 {
  font:400 27px Alfa,serif;
  margin:0;
}
.menu-item {
  position:relative;
  margin-bottom:30px;
}
.menu-item>div {
  display:flex;
  align-items:baseline;
  gap:10px;
}
.menu-item h4 {
  font-weight:600;
  font-size:21px;
  margin:0;
  white-space:nowrap;
}
.leader {
  flex:1;
  min-width:10px;
  border-bottom:2px dotted #b0a48d;
}
.menu-item strong {
  font:9px var(--mono);
  white-space:nowrap;
  color:var(--red);
}
.menu-item p {
  font-size:13px;
  margin:7px 0 0;
  color:var(--muted);
}
.chef-pick {
  display:inline-block;
  color:var(--red);
  font:7px var(--mono);
  border:1px solid var(--red);
  padding:3px 7px;
  margin-top:10px;
  transform:rotate(-3deg);
}
.menu-fineprint {
  font:7px var(--mono);
  display:flex;
  justify-content:space-between;
  gap:20px;
  color:var(--muted);
  margin-top:17px;
  letter-spacing:.2px;
}
.house-rules {
  background:#e7dec8;
  padding:70px var(--gutter);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:100px;
  align-items:center;
  border-block:1px solid #cbbc9d;
}
.rules-copy h2 {
  font:400 clamp(27px,3vw,43px)/1.2 Alfa,serif;
  letter-spacing:-1px;
  margin:0 0 23px;
}
.rules-copy>p:not(.eyebrow) {
  max-width:380px;
  font-size:16px;
  color:var(--muted);
  line-height:1.65;
}
.text-link {
  display:inline-flex;
  gap:24px;
  align-items:center;
  color:var(--red);
  font-size:12px;
  margin-top:16px;
}
.text-link span {
  font-size:19px;
}
.inspection-notice {
  background:#fbf4e2;
  position:relative;
  padding:28px 32px 21px;
  transform:rotate(2deg);
  box-shadow:4px 7px 0 #8d7d5c25;
}
.tape {
  position:absolute;
  top:-12px;
  left:calc(50% - 44px);
  width:88px;
  height:26px;
  background:#c5ab7090;
  transform:rotate(-5deg);
  border-inline:2px dashed #c5ab70;
}
.notice-top {
  display:flex;
  justify-content:space-between;
  font:6px var(--mono);
  gap:12px;
  color:var(--muted);
  padding-bottom:14px;
  border-bottom:1px solid var(--line);
}
.inspection-notice h3 {
  font:400 33px Alfa,serif;
  margin:18px 0;
}
.inspection-notice ol {
  padding-left:23px;
  margin:0 0 18px;
}
.inspection-notice li {
  font-size:14px;
  line-height:1.4;
  padding-left:7px;
  margin:0 0 13px;
  max-width:270px;
}
.inspection-notice small {
  display:block;
  font-size:11px;
  color:var(--muted);
  margin-top:3px;
}
.inspection-stamp {
  position:absolute;
  right:20px;
  bottom:48px;
  transform:rotate(-16deg);
  color:#ad3026bc;
  border:3px double #ad3026aa;
  padding:8px;
  font:11px/1.3 var(--mono);
  text-align:center;
  background:#fbf4e2d9;
}
.notice-bottom {
  font:7px var(--mono);
  color:var(--red);
  padding-top:13px;
  border-top:1px solid var(--line);
}
.closing {
  padding:55px var(--gutter);
  display:flex;
  align-items:center;
  gap:25px;
}
.closing-star {
  font-size:65px;
  color:var(--red);
}
.closing p {
  font-size:24px;
  line-height:1.3;
  letter-spacing:-.5px;
}
.closing strong {
  font-weight:400;
  color:var(--red);
}
.closing>a {
  margin-left:auto;
  font-size:32px;
  border:1px solid var(--red);
  color:var(--red);
  padding:7px 20px;
}
.closing>a:hover {
  background:var(--red);
  color:var(--paper);
}
footer {
  padding:33px var(--gutter) 45px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  gap:25px;
  align-items:center;
}
.footer-brand {
  font:24px Alfa,serif;
  letter-spacing:-1px;
  color:var(--red);
}
footer p {
  font-size:10px;
  color:var(--muted);
  line-height:1.6;
  margin:12px 0 0;
}
footer nav {
  font:10px var(--mono);
  gap:25px;
}
footer nav a {
  font-size:10px;
}
.bottom-stripe {
  height:18px;
  background:repeating-linear-gradient(90deg,var(--red) 0 35px,var(--paper) 35px 70px);
}
.skip-link {
  position:absolute;
  top:-100px;
  left:20px;
  padding:14px;
  background:var(--red);
  color:var(--paper);
  z-index:10;
}
.skip-link:focus {
  top:15px;
}
.motion-paused * {
  animation-play-state:paused!important;
}
@keyframes steam-rise {
  0%,100% {
    transform:translateY(3px);
    opacity:.15;
  }
  50% {
    transform:translateY(-7px);
    opacity:.35;
  }
}
@media(min-width:1600px) {
  main,.site-header,footer {
    max-width:1600px;
    margin-inline:auto;
  }
  .site-header {
    padding-inline:var(--gutter);
  }
}
@media(max-width:1100px) {
  .header-aside {
    display:none;
  }
  .roundel {
    width:83px;
    height:83px;
  }
  .roundel>span {
    font-size:24px;
  }
  .roundel>small {
    font-size:6px;
  }
  .wordmark-row h1 {
    font-size:13vw;
  }
  .hero-content {
    gap:25px;
    grid-template-columns:.8fr 1.2fr;
  }
  .hero-copy h2 {
    font-size:36px;
    letter-spacing:-1px;
  }
  .intro {
    font-size:14px;
  }
  .hero-copy {
    padding-top:5px;
  }
  .counter-slip {
    margin-top:25px;
    padding-top:16px;
  }
  .counter-slip p {
    font-size:10px;
  }
  .menu-board {
    gap:35px;
    padding:28px 25px 12px;
  }
  .menu-item h4 {
    font-size:18px;
  }
  .menu-item strong {
    font-size:8px;
  }
  .house-rules {
    gap:50px;
  }
  .inspection-notice {
    padding-inline:24px;
  }
  .inspection-stamp {
    font-size:9px;
    right:12px;
    bottom:52px;
  }
  .ticker {
    gap:25px;
    font-size:8px;
  }
  .menu-fineprint {
    font-size:6px;
  }
}
@media(max-width:760px) {
  .site-header {
    height:73px;
    gap:15px;
  }
  .small-brand {
    font-size:8px;
    gap:8px;
  }
  .small-brand>span {
    font-size:24px;
  }
  .site-header nav {
    gap:14px;
  }
  .site-header nav a {
    font-size:11px;
  }
  #motion-toggle {
    font-size:7px;
  }
  .hero {
    padding-top:25px;
    padding-bottom:40px;
  }
  .wordmark-row {
    gap:0;
  }
  .wordmark-row h1 {
    font-size:15.2vw;
  }
  .wordmark-row h1>span {
    font-size:16px;
    margin:10px 0 0 8px;
  }
  .roundel {
    display:none;
  }
  .sign-baseline {
    font-size:6px;
    letter-spacing:.3px;
    padding:16px 0;
    margin-bottom:30px;
    gap:30px;
  }
  .sign-baseline>span:first-child {
    max-width:200px;
  }
  .sign-baseline>span:last-child {
    text-align:right;
    max-width:110px;
  }
  .hero-content {
    grid-template-columns:1fr;
    gap:40px;
  }
  .hero-copy h2 {
    font-size:42px;
    letter-spacing:-1.4px;
  }
  .intro {
    font-size:15px;
  }
  .hero-copy .eyebrow {
    font-size:7px;
    margin-bottom:18px;
  }
  .counter-slip {
    max-width:none;
    margin-top:28px;
  }
  .counter-slip p {
    font-size:11px;
  }
  .counter-top {
    font-size:6px;
  }
  .ticker {
    gap:22px;
    justify-content:flex-start;
    padding-block:14px;
    font-size:7px;
  }
  .ticker span:nth-of-type(3),.ticker i:last-child {
    display:none;
  }
  .menu-section {
    padding-top:55px;
    padding-bottom:45px;
  }
  .menu-title-row {
    display:block;
    margin-bottom:25px;
  }
  .menu-title-row h2 {
    font-size:34px;
  }
  .menu-title-row>p {
    margin-top:17px;
    font-size:12px;
  }
  .menu-title-row .eyebrow {
    font-size:7px;
  }
  .menu-board {
    grid-template-columns:1fr;
    gap:13px;
    padding:28px 23px 10px;
  }
  .menu-category h3 {
    font-size:24px;
  }
  .menu-item h4 {
    font-size:20px;
  }
  .menu-item strong {
    font-size:8px;
  }
  .menu-fineprint {
    font-size:6px;
    line-height:1.7;
  }
  .menu-fineprint span:last-child {
    display:none;
  }
  .house-rules {
    grid-template-columns:1fr;
    gap:35px;
    padding-block:45px;
  }
  .rules-copy h2 {
    font-size:30px;
  }
  .rules-copy>p:not(.eyebrow) {
    font-size:14px;
  }
  .inspection-notice {
    transform:rotate(1deg);
    padding:24px 23px;
  }
  .inspection-notice li {
    font-size:13px;
    max-width:240px;
  }
  .inspection-notice h3 {
    font-size:30px;
  }
  .inspection-stamp {
    position:relative;
    right:auto;
    bottom:auto;
    width:max-content;
    margin:18px 0 20px auto;
    font-size:8px;
    padding:5px;
  }
  .notice-top {
    font-size:5px;
  }
  .closing {
    padding-block:28px;
    gap:15px;
  }
  .closing-star {
    font-size:45px;
  }
  .closing p {
    font-size:20px;
  }
  .closing>a {
    padding:5px 13px;
    font-size:25px;
  }
  footer {
    align-items:start;
    flex-direction:column;
    padding-block:25px;
    gap:15px;
  }
  footer nav {
    gap:25px;
  }
}
@media(max-width:370px) {
  .site-header nav {
    gap:10px;
  }
  .site-header nav a {
    font-size:10px;
  }
  .small-brand {
    font-size:7px;
  }
  .hero-copy h2 {
    font-size:35px;
  }
  .menu-item h4 {
    font-size:18px;
  }
  .menu-item strong {
    font-size:7px;
  }
  .inspection-notice li {
    font-size:12px;
  }
  .closing p {
    font-size:18px;
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*::before,*::after {
    animation:none!important;
    transition:none!important;
  }
}

/* Vector UI marks do not use platform emoji fonts. */
.ui-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
