@font-face{font-family:Inter;src:url(fonts/inter.woff2) format("woff2-variations"),url(fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--paper:#fff;--plaster:#edf1f0;--ink:#1a2a30;--soft:#51656d;--facade:#3e6374;--deep:#27434f;--leaf:#23743f;--radish:#b8215f;--squash:#f2b233;--line:#cfd9da;--gut:clamp(16px,4vw,56px)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 Inter,Roboto,system-ui,sans-serif;font-feature-settings:"cv11","ss03";-webkit-font-smoothing:antialiased}
img,iframe{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--radish)}
:focus-visible{outline:3px solid var(--radish);outline-offset:2px}
h1,h2,h3{margin:0;font-weight:750;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}
h1{font-size:clamp(44px,8.6vw,132px);font-weight:800;letter-spacing:-.05em;line-height:.96}
h2{font-size:clamp(30px,4.4vw,58px)}
p{margin:0 0 1em;max-width:62ch}
figure{margin:0}
figcaption,small{font-size:13px;color:var(--soft)}
ul,ol{margin:0;padding:0;list-style:none}
.wrap{padding-inline:var(--gut);max-width:1480px;margin-inline:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.skip{position:absolute;left:-999px;background:var(--ink);color:#fff;padding:10px 14px;z-index:30}
.skip:focus{left:8px;top:8px}
.doodle{pointer-events:none}
.btn{display:inline-block;background:var(--leaf);color:#fff;padding:13px 20px;font-weight:650;text-decoration:none;border-radius:3px;line-height:1.2}
.btn:hover{background:var(--ink);color:#fff}
.btn-light{background:#fff;color:var(--deep)}
.btn-light:hover{background:var(--squash);color:var(--ink)}
.btn-ghost{background:none;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}

.notice{background:var(--squash);padding:9px var(--gut);font-size:15px;font-weight:550;text-align:center}
.notice p{margin:auto;max-width:none}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px var(--gut);background:#fff}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink)}
.brand-radish{width:34px;height:auto}
.logo{display:block;height:27px;width:auto}
#nav{display:flex;align-items:center;gap:clamp(14px,1.7vw,28px);font-weight:550;font-size:16px}
#nav a{text-decoration:none;white-space:nowrap}
#nav a[aria-current]{color:var(--leaf);box-shadow:0 2px 0 var(--leaf)}
.navcall{background:var(--facade);color:#fff;padding:8px 12px;border-radius:3px}
.navcall:hover{background:var(--ink);color:#fff}
.burger{display:none;background:none;border:0;padding:10px;width:46px;height:46px;cursor:pointer}
.burger i{display:block;height:2.5px;background:var(--ink);margin:6px 0;transition:transform .2s}
.burger[aria-expanded=true] i:first-of-type{transform:translateY(4px) rotate(45deg)}
.burger[aria-expanded=true] i:last-of-type{transform:translateY(-4.5px) rotate(-45deg)}

/* hero: the wagon rolls along the top edge of the building */
.hero{padding-top:clamp(20px,3.4vw,48px)}
.hero h1{padding-inline:var(--gut);font-size:clamp(50px,10.8vw,178px)}
.hero-sub{padding:clamp(16px,2vw,28px) var(--gut) 0}
.hero-sub p{font-size:clamp(18px,1.7vw,23px);line-height:1.4;max-width:34em;margin:0}
.hero-stage{position:relative;margin-top:clamp(84px,11vw,170px)}
.hero-photo{width:100%;aspect-ratio:21/10;object-fit:cover;object-position:50% 62%}
.wagon-track{position:absolute;left:0;right:0;bottom:100%;height:0;overflow:visible}
.wagon{position:absolute;right:6vw;bottom:-3px;width:clamp(150px,20vw,300px);animation:roll 2.1s cubic-bezier(.2,.75,.25,1) .25s both}
@keyframes roll{from{transform:translateX(-90vw) rotate(-1.4deg)}70%{transform:translateX(2vw) rotate(.5deg)}to{transform:none}}
.tonight{display:flex;flex-wrap:wrap;gap:12px 44px;align-items:center;justify-content:space-between;background:var(--facade);color:#fff;padding:18px var(--gut);font-weight:550}
.tonight p{margin:0}
.tonight a:not(.btn):hover{color:var(--squash)}
.status::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--squash);margin-right:9px}
.status.open::before{background:#7fe08f}

.now{display:grid;grid-template-columns:5fr 7fr;gap:clamp(28px,6vw,96px);padding-block:clamp(56px,9vw,130px)}
.now-head h2{margin-bottom:.45em}
.dishes li{display:grid;grid-template-columns:1fr auto;column-gap:22px;padding:15px 0;border-top:1px solid var(--line)}
.dishes li:last-child{border-bottom:1px solid var(--line)}
.dishes h3{font-size:clamp(20px,2vw,25px);letter-spacing:-.02em;line-height:1.2;font-weight:680}
.dishes p{grid-column:1;margin:4px 0 0;color:var(--soft);font-size:16px;line-height:1.45}
.price{grid-column:2;grid-row:1;font-weight:650;font-variant-numeric:tabular-nums;font-size:19px}

.plates{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(6px,1vw,14px);padding-inline:clamp(6px,1vw,14px)}
.plates figure{position:relative;overflow:hidden}
.plates img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.plates figcaption{position:absolute;left:0;bottom:0;background:#fff;color:var(--ink);padding:5px 10px;font-weight:500}
.p-a{grid-column:span 7;aspect-ratio:7/5}.p-b{grid-column:span 5}
.p-c{grid-column:span 5}.p-d{grid-column:span 7;aspect-ratio:7/5}
.p-d img{object-position:50% 45%}

.gusto{position:relative;overflow:hidden;background:var(--facade);color:#fff;margin-top:clamp(56px,9vw,120px);padding:clamp(70px,12vw,170px) var(--gut)}
.gusto blockquote{margin:0 auto;max-width:21em;font-size:clamp(28px,4.4vw,62px);font-weight:700;letter-spacing:-.035em;line-height:1.1;position:relative;z-index:1}
.gusto .doodle{position:absolute;filter:brightness(0) invert(1);opacity:.17;height:auto}
.g-1{width:30vw;left:-5vw;bottom:-7vw}.g-2{width:17vw;right:5vw;top:-3vw;transform:rotate(30deg)}.g-3{width:15vw;right:-3vw;bottom:-3vw}

.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,6vw,96px);align-items:center;padding-block:clamp(48px,7vw,100px)}
.split>img{width:100%;aspect-ratio:5/4;object-fit:cover}
.split-flip .split-text{order:2}
.split-flip>img{aspect-ratio:1/1;object-position:50% 70%}
.split-text h2{margin-bottom:.5em}

.patio{position:relative}
.patio>img{width:100%;aspect-ratio:21/9;min-height:440px;object-fit:cover}
.patio-card{position:absolute;left:var(--gut);bottom:var(--gut);background:#fff;padding:clamp(20px,3vw,38px);max-width:430px}
.patio-card h2{font-size:clamp(28px,3vw,42px);margin-bottom:.4em}
.patio-card small{display:block;margin-top:12px}

.said{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,6vw,96px);align-items:end;padding-block:clamp(56px,8vw,110px)}
.said blockquote{margin:0 0 10px;font-size:clamp(34px,5.2vw,76px);font-weight:750;letter-spacing:-.04em;line-height:1.02;color:var(--leaf)}
.said li{padding:11px 0;border-top:1px solid var(--line)}

.foot{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px clamp(24px,4vw,60px);background:var(--deep);color:#fff;padding:clamp(44px,6vw,76px) var(--gut);font-size:16px}
.foot h2{font-size:17px;letter-spacing:-.01em;margin-bottom:10px;color:var(--squash)}
.foot a:hover{color:var(--squash)}
.foot li{margin-bottom:3px}.foot li a{text-decoration:none}
.logo-lg{height:44px;margin-bottom:10px}
.foot-b{grid-column:1/-1;border-top:1px solid #ffffff40;padding-top:20px;display:flex;flex-wrap:wrap;gap:6px 40px;font-size:15px}
.foot-b p{margin:0}
.mobilebar{display:none}

/* inner pages */
.phead{padding-block:clamp(36px,6vw,84px) clamp(24px,4vw,52px)}
.phead h1{margin-bottom:.22em;max-width:11em}
.lead{font-size:clamp(20px,2.1vw,27px);line-height:1.34;letter-spacing:-.015em;max-width:30em}
.epi{color:var(--soft)}
.phead-img{display:grid;grid-template-columns:7fr 4fr;gap:clamp(24px,5vw,80px);align-items:end}
.phead-img>img{width:100%;aspect-ratio:1;object-fit:cover;object-position:50% 72%}
.bleed img{width:100%;max-height:78vh;object-fit:cover}
.bleed figcaption{padding:6px var(--gut)}

.secnav{position:sticky;top:62px;z-index:10;display:flex;gap:6px 24px;overflow-x:auto;background:var(--plaster);padding:12px var(--gut);font-weight:600;white-space:nowrap}
.secnav a{text-decoration:none}
.msec{display:grid;grid-template-columns:7fr 4fr;gap:clamp(28px,6vw,90px);padding-block:clamp(36px,5vw,68px);align-items:start}
.msec>img{width:100%;aspect-ratio:4/5;object-fit:cover;position:sticky;top:130px}
.msec h2{margin-bottom:.5em}
.msec+.msec{border-top:3px solid var(--ink)}
.specials{grid-template-columns:7fr 4fr;background:var(--plaster);margin-inline:calc(var(--gut)*-1);padding-inline:var(--gut)}
.specials h2{margin-bottom:.15em}
.note{color:var(--radish);font-weight:600}
.takeout{padding-block:40px 8px}.takeout h2{margin-bottom:.3em}
.fine{padding-block:18px 64px;font-size:15px;color:var(--soft)}
.fine p{max-width:76ch}

.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-bottom:18px;position:sticky;top:62px;background:#fff;padding-top:10px;z-index:9}
.chip{font:inherit;font-size:15px;font-weight:600;background:var(--plaster);color:var(--ink);border:0;padding:8px 13px;border-radius:99px;cursor:pointer}
.chip[aria-pressed=true]{background:var(--facade);color:#fff}
.toggle{margin-left:auto;font-size:15px;font-weight:600;display:flex;gap:8px;align-items:center;cursor:pointer}
.toggle input{accent-color:var(--leaf);width:18px;height:18px}
.wsec{padding-block:26px}
.wsec h2{margin-bottom:.35em;color:var(--facade)}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
thead th{font-size:14px;color:var(--soft);font-weight:550;text-align:right;padding:0 0 5px}
tbody tr{border-top:1px solid var(--line)}
tbody th{font-weight:400;text-align:left;padding:10px 12px 10px 0;line-height:1.35}
tbody th span{color:var(--soft)}
tbody th b{font-weight:640}
td{text-align:right;width:3.6em;padding:10px 0;font-weight:550;vertical-align:top}
tr[hidden]{display:none}
.secret{font-size:clamp(22px,3vw,36px);font-weight:720;letter-spacing:-.03em;color:var(--radish);padding-block:24px 70px;max-width:none}

.prose{display:grid;grid-template-columns:3fr 8fr;gap:clamp(20px,5vw,80px);padding-block:clamp(44px,7vw,96px)}
.side-doodle{width:min(180px,70%);height:auto}
.pull{background:var(--plaster);padding:clamp(52px,8vw,110px) var(--gut)}
.pull blockquote{margin:auto;max-width:24em;font-size:clamp(26px,3.8vw,50px);font-weight:700;letter-spacing:-.03em;line-height:1.13;color:var(--deep)}
.time{display:grid;grid-template-columns:7fr 5fr;gap:clamp(28px,5vw,80px);padding-block:clamp(52px,7vw,100px)}
.time h2{grid-column:1/-1}
.time li{display:grid;grid-template-columns:90px 1fr;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.time b{font-size:22px;font-weight:750;letter-spacing:-.02em;color:var(--leaf)}
.time p{margin:0}
.time img{width:100%;aspect-ratio:4/3;object-fit:cover}

.phead-doodle{position:relative}
.phead-wagon{width:clamp(170px,25vw,360px);height:auto;margin-top:24px}
.walls{padding-bottom:30px}
.walls section{padding-block:26px;border-top:3px solid var(--ink)}
.walls h2{font-size:20px;letter-spacing:-.01em;color:var(--leaf);margin-bottom:12px}
.wall{max-width:none;margin:0;font-size:clamp(26px,4.3vw,62px);font-weight:760;letter-spacing:-.04em;line-height:1.1}
.wall span:nth-child(3n+2){color:var(--facade)}
.wall span:nth-child(5n+4){color:var(--leaf)}
.wall span::after{content:",";color:var(--ink)}
.wall span:last-child::after{content:"."}
.album{padding-block:12px clamp(56px,7vw,96px)}
.album h2{margin-bottom:.5em}
.album div{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.album img{width:100%;aspect-ratio:1;object-fit:cover}

.bios{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);padding-block:clamp(44px,6vw,84px)}
.bios h2{margin-bottom:.1em}
.role{color:var(--leaf);font-weight:600}
.bio-teri{grid-column:1/-1;display:grid;grid-template-columns:minmax(150px,240px) 1fr;gap:clamp(20px,4vw,48px);border-top:3px solid var(--ink);padding-top:30px}
.bio-teri img{width:100%}
.crew{display:grid;grid-template-columns:5fr 6fr;gap:clamp(24px,5vw,72px);align-items:center;padding-bottom:clamp(56px,7vw,96px)}
.crew>img{width:100%;max-width:520px}
.crew h2{margin-bottom:.4em}

.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);padding-block:clamp(44px,6vw,80px)}
.two h2{margin-bottom:.45em}
dl{margin:0 0 18px}
.two dl>dt{font-size:14px;color:var(--soft);margin-top:10px}
.two dd{margin:0;font-size:21px;font-weight:650;letter-spacing:-.015em}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding-bottom:clamp(56px,7vw,96px)}
.trio img{width:100%;aspect-ratio:4/5;object-fit:cover}

.gift{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,6vw,90px);align-items:center;padding-block:clamp(40px,6vw,84px)}
.gift>img{width:100%;aspect-ratio:1;object-fit:cover}
.gift h1{margin-bottom:.22em}
.steps{counter-reset:s;margin:22px 0 26px}
.steps li{counter-increment:s;display:grid;grid-template-columns:38px 1fr;padding:10px 0;border-top:1px solid var(--line)}
.steps li::before{content:counter(s);font-weight:750;color:var(--leaf)}

.visit{display:grid;grid-template-columns:5fr 7fr;gap:clamp(28px,5vw,80px);padding-bottom:clamp(44px,6vw,70px)}
.visit h2{font-size:21px;letter-spacing:-.01em;color:var(--leaf);margin:0 0 6px}
.visit p{font-size:19px;margin-bottom:24px}
.btns{display:flex;flex-wrap:wrap;gap:8px}
.visit iframe{width:100%;height:100%;min-height:380px;border:0;background:var(--plaster)}
.rules{padding-bottom:clamp(50px,6vw,84px)}
.rules h2{margin-bottom:.5em}
.rules dl{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(28px,5vw,72px)}
.rules dl>div{border-top:1px solid var(--line);padding:14px 0}
.rules dt{font-weight:700;font-size:20px;letter-spacing:-.015em}
.rules dd{margin:3px 0 0;color:#3a4d54}
.status:empty{display:none}

@media (max-width:1120px){
  .burger{display:block}
  #nav{position:absolute;left:0;right:0;top:100%;background:#fff;display:none;flex-direction:column;align-items:flex-start;gap:0;padding:8px var(--gut) 22px;font-size:26px;font-weight:700;letter-spacing:-.03em;box-shadow:0 12px 20px #0002}
  #nav.open{display:flex}
  #nav a{padding:6px 0}
  #nav a[aria-current]{box-shadow:none}
  .navcall{margin-top:10px;padding:10px 14px!important;font-size:19px}
}
@media (max-width:820px){
  body{font-size:16.5px;padding-bottom:54px}
  .hero-photo{aspect-ratio:4/3}
  .hero-stage{margin-top:88px}
  .tonight{flex-direction:column;align-items:flex-start}
  .now,.split,.said,.prose,.time,.bios,.two,.gift,.visit,.crew,.phead-img,.msec{grid-template-columns:1fr}
  .split-flip .split-text{order:0}
  .prose-side{display:none}
  .msec>img{position:static;aspect-ratio:16/10}
  .specials{grid-template-columns:1fr}
  .plates{grid-template-columns:repeat(2,1fr)}
  .p-a{grid-column:span 2;aspect-ratio:4/3}.p-b{grid-column:span 1;aspect-ratio:1}.p-c{grid-column:span 1;aspect-ratio:1}.p-d{grid-column:span 2;aspect-ratio:4/3}
  .patio>img{aspect-ratio:4/3;min-height:0}
  .patio-card{position:static;max-width:none}
  .foot{grid-template-columns:1fr 1fr}
  .foot-a{grid-column:1/-1}
  .album div{grid-template-columns:repeat(3,1fr)}
  .trio{grid-template-columns:1fr 1fr}.trio img:first-child{grid-column:1/-1;aspect-ratio:4/3}
  .rules dl{grid-template-columns:1fr}
  .bio-teri{grid-template-columns:110px 1fr}
  .toggle{margin-left:0}
  .filters{position:static}
  .visit iframe{height:340px}
  .mobilebar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:25;background:var(--deep)}
  .mobilebar a{color:#fff;text-align:center;font-weight:650;padding:15px 0;text-decoration:none;border-left:1px solid #ffffff30}
  .mobilebar a:first-child{border:0}
  td{width:2.7em;font-size:15px}
}
@media (prefers-reduced-motion:reduce){.wagon{animation:none}html{scroll-behavior:auto}}
@media print{.top,.notice,.mobilebar,.foot,.secnav{display:none}}
.bleed-top img{object-position:50% 12%;max-height:none;aspect-ratio:16/9}
@media (max-width:820px){.bleed-top img{aspect-ratio:4/3}}
