@font-face{font-family:Anton;src:url('/assets/d0fa07ff63dd-anton.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Bricolage;src:url('/assets/74db1a074ec9-bricolage-latin.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root{--red:#c42c27;--red-dark:#a8231f;--cream:#f3e4c7;--paper:#fff6e6;--green:#0f6c44;--ink:#1c1412;--muted:#685044;--line:#d4bfa2;--space:clamp(22px,5vw,76px);--max:1380px;--radius:14px;--ease:cubic-bezier(.16,1,.3,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px;-webkit-text-size-adjust:100%;scrollbar-color:var(--red) var(--cream)}
body{margin:0;background:var(--cream);color:var(--ink);font:400 18px/1.55 Bricolage,Arial,sans-serif;-webkit-font-smoothing:antialiased}
::selection{background:var(--green);color:var(--paper)}
a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
button,input,select,textarea{font:inherit}
a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button,.button{user-select:none}
button:disabled{cursor:wait;opacity:.65}
img{display:block;max-width:100%;height:auto}
svg{width:22px;height:22px;flex:none}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:Anton,Arial,sans-serif;font-weight:400;text-transform:uppercase;line-height:1.02;text-wrap:balance}
h1{font-size:clamp(58px,7.5vw,108px)}
h2{font-size:clamp(40px,5vw,70px)}
h3{font-size:clamp(28px,3vw,42px)}
p{max-width:64ch}
p+p{margin-top:16px}
:focus-visible{outline:3px solid var(--green);outline-offset:5px}
.on-red :focus-visible,.on-green :focus-visible,.site-footer :focus-visible{outline-color:var(--paper)}
.container{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:max(var(--space),env(safe-area-inset-left)) max(var(--space),env(safe-area-inset-right))}
.section{padding-block:clamp(64px,8vw,112px)}
.on-red{background:var(--red);color:var(--paper)}
.on-green{background:var(--green);color:var(--paper)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;left:16px;top:-100px;background:var(--paper);color:var(--ink);padding:12px 20px;z-index:100}.skip-link:focus{top:12px}
.button{display:inline-flex;gap:14px;align-items:center;justify-content:center;min-height:50px;padding:12px 24px;border:2px solid transparent;border-radius:6px;background:var(--red);color:var(--paper);font-size:16px;font-weight:700;text-decoration:none;transition:background .18s,color .18s,transform .18s var(--ease)}
.button-light{background:var(--cream);color:var(--red-dark)}
.button-outline{border-color:currentColor;background:transparent;color:inherit}
.button-dark{background:var(--ink);color:var(--paper)}
.button:active{transform:scale(.98)}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.text-link{display:inline-flex;align-items:center;gap:12px;font-weight:700;min-height:44px}
.site-header{background:var(--cream);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:100px}
.brand{display:block;width:130px;flex:none}
.brand img{width:100%;height:auto}
.main-nav{display:flex;gap:32px;align-items:center}
.main-nav a{display:flex;align-items:center;min-height:44px;font-size:16px;font-weight:700;text-decoration:none}
.main-nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}
.main-nav .nav-contact{background:var(--red);color:var(--paper);border-radius:6px;padding:10px 22px}
.nav-toggle{display:none;background:none;color:var(--red-dark);border:1px solid var(--red);border-radius:6px;min-height:44px;padding:8px 12px;align-items:center;gap:8px;font-weight:700;font-size:16px}
.hero{overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:clamp(32px,5vw,70px);padding-top:54px;padding-bottom:58px;align-items:center}
.hero-copy{padding-block:12px 22px}
.hero h1{color:var(--cream);font-size:clamp(68px,7.9vw,112px);line-height:1.01;letter-spacing:-.015em;max-width:8ch}
.hero-copy p{font-size:19px;max-width:35ch;margin-block:28px}
.hero-image{position:relative;padding:10px 6px 28px;width:100%;max-width:470px;justify-self:center}
.hero-image>img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 50%;border-radius:180px 180px 12px 12px}

.hero-location{display:flex;align-items:center;gap:10px;min-height:44px;margin-top:24px;font-size:15px}
.hero-location::before,.status-open::before{content:'';display:inline-block;width:8px;height:8px;background:currentColor;border-radius:50%;flex:none}


.section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:36px}
.section-heading h2{color:var(--red);max-width:14ch}
.section-heading>p{max-width:38ch}
.food-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}
.food-tile{display:block;text-decoration:none}
.food-tile figure{overflow:hidden;border-radius:var(--radius)}
.food-tile img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .4s var(--ease)}
.food-tile h3{color:var(--red);margin-top:20px}
.food-tile p{font-size:17px;margin-top:9px}
.food-tile .tile-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.food-tile .tile-title svg{margin-top:20px;color:var(--red)}
.menu-note{font-size:15px;color:var(--muted);margin-top:28px;max-width:70ch}
.kitchen{background:var(--paper)}


.kitchen h2{color:var(--red);max-width:10ch}
.kitchen p{margin-top:24px;max-width:38ch}
.kitchen .text-link{margin-top:20px;color:var(--red-dark)}
.location-list{border-top:1px solid var(--line)}
.location-row{display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;gap:28px;padding-block:30px;border-bottom:1px solid var(--line)}
.location-row h3{font-size:clamp(29px,3vw,40px);margin-bottom:9px}
.location-row h3 a{text-decoration:none}
.location-row address{font-size:17px;font-style:normal;max-width:30ch}
.location-row .text-link{color:var(--red-dark);white-space:nowrap}
.status{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--red-dark)}
.status-open{color:var(--green)}
.location-row .status-detail{font-size:16px;color:var(--muted)}
.location-row .status-detail p+p{margin-top:6px}
.location-footnote{margin-top:22px;color:var(--muted);font-size:15px}
.venue-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}
.venue-grid h2{max-width:12ch}
.venue-grid p{max-width:42ch;margin-bottom:26px}
.question-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px}
.question-grid h2{color:var(--red);max-width:10ch}
.questions{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px 0;cursor:pointer;font-weight:700;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:'+';font-size:28px;font-weight:400;color:var(--red);flex:none;line-height:1}
details[open] summary::after{content:'−'}
details p{padding-bottom:24px;font-size:17px;max-width:55ch}
.social-strip{border-block:1px solid var(--line);padding-block:28px}
.social-strip .container{display:flex;align-items:center;justify-content:space-between;gap:24px}
.social-strip p{font-size:20px;font-weight:700}
.site-footer{background:var(--red);color:var(--paper);padding-block:64px 28px}
.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:48px}
.footer-brand{width:200px;max-width:100%;display:block;margin-bottom:24px}
.footer-grid h2{font-family:Bricolage,Arial,sans-serif;text-transform:none;font-size:18px;font-weight:700;margin-bottom:14px}
.footer-grid ul{list-style:none;margin:0;padding:0}
.footer-grid a{display:inline-flex;align-items:center;min-height:42px;font-size:16px}
.footer-grid p{font-size:16px;max-width:24ch}
.footer-bottom{border-top:1px solid #e48670;margin-top:48px;padding-top:24px;display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:14px;flex-wrap:wrap}
.footer-bottom nav{display:flex;gap:24px}
.mobile-actions{display:none}
.page-intro{padding-block:54px 56px}
.breadcrumbs{font-size:14px;margin-bottom:30px;display:flex;flex-wrap:wrap;gap:10px;color:var(--muted)}
.breadcrumbs a{min-height:26px}
.page-intro h1{color:var(--red);max-width:16ch}
.page-intro p{margin-top:24px;max-width:54ch;font-size:20px}
.menu-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.menu-main-image{position:sticky;top:130px}
.menu-main-image img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius)}
.menu-sections{display:grid;gap:42px}
.menu-category{scroll-margin-top:130px}
.menu-category h2{font-size:44px;color:var(--red);border-bottom:2px solid var(--red);padding-bottom:16px}
.menu-category>p{font-size:16px;margin-top:14px}
.menu-items{list-style:none;padding:0;margin:14px 0 0}
.menu-items li{padding-block:13px;border-bottom:1px solid var(--line);font-size:22px;font-weight:500}
.menu-items small{display:block;font-size:16px;font-weight:400;color:var(--muted);margin-top:4px}
.allergen-note{padding:24px;background:var(--paper);border-radius:var(--radius);font-size:16px}
.allergen-note h2{font:700 19px/1.4 Bricolage,Arial,sans-serif;text-transform:none;margin-bottom:8px;color:var(--ink)}
.menu-jump{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:24px;font-size:16px;font-weight:700}
.menu-jump a{min-height:44px;display:flex;align-items:center;color:var(--red-dark)}
.location-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}
.location-intro h1{font-size:clamp(56px,6vw,88px)}
.location-intro .status{margin-top:20px}
.location-intro .actions{margin-top:28px}
.location-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}
.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.visit-grid h2{font-size:40px;color:var(--red);margin-bottom:22px}
.visit-grid address{font-style:normal;font-size:22px;margin-bottom:16px}
.hours{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:17px}
.hours th,.hours td{border-bottom:1px solid var(--line);padding:12px 0;text-align:left;font-weight:400}
.hours td{text-align:right}
.hours-note{font-size:15px;margin-top:16px;color:var(--muted)}
.upcoming-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid var(--line);padding-top:36px}
.upcoming-panel h2{color:var(--red);font-size:40px}
.upcoming-panel p{margin-bottom:20px}
.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(36px,6vw,90px);align-items:start}
.contact-aside h2{font-size:36px;color:var(--red);margin-bottom:24px}
.contact-aside p{font-size:17px;margin-bottom:20px}
.contact-aside a{overflow-wrap:anywhere}
.contact-aside .contact-photo{margin-top:28px;border-radius:var(--radius);aspect-ratio:1.3/1;object-fit:cover;width:100%}
.contact-form{padding:32px;background:var(--paper);border-radius:var(--radius)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.field{display:flex;flex-direction:column;gap:8px}
.field-wide{grid-column:1/-1}
label{font-size:16px;font-weight:700}
label span{font-weight:400;color:var(--muted)}
input,select,textarea{width:100%;min-height:50px;border:1px solid #977b64;background:var(--paper);color:var(--ink);padding:12px;border-radius:5px;font-size:16px;caret-color:var(--red)}
textarea{resize:vertical;min-height:160px}
input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border:2px solid var(--red)}
.field-error{color:var(--red-dark);font-size:14px}
.field-error:empty{display:none}
.form-help{font-size:14px;color:var(--muted);margin-block:22px 18px}
.form-status{font-size:16px;margin-top:18px;scroll-margin:130px}
.form-status[data-state=error]{color:var(--red-dark)}
.form-status[data-state=success]{color:var(--green);font-weight:700}
.turnstile-container{min-height:65px;margin-bottom:16px}
.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.prose{max-width:760px;padding-bottom:80px}
.prose h2{font-size:32px;color:var(--red);margin-block:32px 14px}
.prose p{font-size:18px}
.prose ul{padding-left:24px}
.error-page{padding-block:100px}
.error-page p{margin-block:28px}
@media(hover:hover) and (pointer:fine){a:hover{text-decoration-thickness:2px}.main-nav a:hover{color:var(--red-dark)}.main-nav .nav-contact:hover{background:var(--red-dark);color:var(--paper)}.button:hover{background:var(--red-dark);color:var(--paper)}.button-light:hover{background:var(--paper);color:var(--red-dark)}.button-outline:hover{background:var(--cream);color:var(--red-dark)}.food-tile:hover img{transform:scale(1.035)}.food-tile:hover h3,.location-row h3 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}summary:hover{color:var(--red-dark)}}
@media(min-width:1000px){.hero-copy{animation:settle .6s var(--ease) both}@keyframes settle{from{transform:translateY(12px)}to{transform:translateY(0)}}}
@media(max-width:1000px){.main-nav{gap:22px}.hero-grid{gap:26px}.hero h1{font-size:clamp(60px,8vw,90px)}.hero-copy p{font-size:18px}.location-row{grid-template-columns:1fr 1fr}.location-row>.text-link{grid-column:2;justify-self:start}.food-grid{gap:18px}.venue-grid{gap:36px}.footer-grid{gap:30px}.menu-layout{gap:40px}.question-grid{gap:36px}.contact-layout{grid-template-columns:.7fr 1fr;gap:32px}.form-grid{grid-template-columns:1fr}.contact-form{padding:24px}}
@media(max-width:760px){body{font-size:17px}.header-inner{height:80px;flex-wrap:wrap;gap:0}.brand{width:103px}.nav-toggle{display:inline-flex}.main-nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:18px;background:var(--cream)}.header-inner:has(.main-nav:not([hidden])){height:auto;min-height:80px;padding-top:8px}.main-nav[hidden]{display:none}.main-nav a{padding:12px 8px}.main-nav .nav-contact{margin-top:8px;justify-content:center}.hero-grid{grid-template-columns:1fr;padding-block:32px 38px;gap:16px}.hero h1{font-size:clamp(64px,13.8vw,96px);max-width:9ch}.hero-copy{padding:0}.hero-copy p{max-width:36ch;margin-block:22px}.hero-image{width:100%;max-width:340px;justify-self:center;padding-top:12px}.hero-image>img{aspect-ratio:3/4;border-radius:140px 140px 10px 10px;object-position:50% 50%}.hero-location{margin-top:17px}.food-grid{grid-template-columns:1fr;gap:34px}.food-tile img{aspect-ratio:1/1}.food-tile h3{font-size:36px}.food-tile p{max-width:40ch}.section-heading{align-items:start;flex-direction:column;gap:18px;margin-bottom:28px}.section-heading h2{max-width:16ch}.kitchen h2{max-width:12ch}.kitchen p{max-width:46ch}.location-row{grid-template-columns:1fr;gap:14px;padding-block:28px}.location-row>.text-link{grid-column:auto}.location-row h3{font-size:34px}.location-row address{max-width:100%}.venue-grid h2{max-width:14ch}.question-grid h2{max-width:16ch}.social-strip .container{align-items:start;flex-direction:column;gap:8px}.site-footer{padding-bottom:calc(94px + env(safe-area-inset-bottom))}.footer-grid{grid-template-columns:1fr 1fr;gap:36px 24px}.footer-grid>div:first-child{grid-column:1/-1}.footer-brand{width:170px}.footer-grid p{max-width:100%}.footer-bottom{align-items:start;flex-direction:column}.mobile-actions{display:grid;grid-template-columns:1fr 1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--cream);color:var(--red-dark);border-top:1px solid var(--line);padding:6px max(10px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.mobile-actions a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font-size:15px;font-weight:700;text-decoration:none}.mobile-actions a+a{border-left:1px solid var(--line)}.mobile-actions svg{width:18px;height:18px}.page-intro{padding-block:30px 40px}.page-intro p{font-size:18px}.breadcrumbs{margin-bottom:24px}.menu-layout{grid-template-columns:1fr;gap:34px}.menu-main-image{position:static}.menu-main-image img{aspect-ratio:1.4/1}.menu-category h2{font-size:40px}.contact-aside .contact-photo{display:none}.contact-form{padding:24px 18px}.form-grid{gap:20px}.location-intro h1{font-size:clamp(50px,11.5vw,76px)}.footer-grid a{overflow-wrap:anywhere}.error-page{padding-block:70px}}
@media(max-width:360px){.container{padding-inline:18px}.hero h1{font-size:60px}.hero .actions{gap:8px}.hero .button{padding:12px 16px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.mobile-actions a{font-size:14px;gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.site-header,.mobile-actions,.site-footer,.nav-toggle,.turnstile-container{display:none}.section{padding-block:24px}body{font-size:12pt;background:#fff;color:#000}.menu-layout{display:block}.menu-main-image{display:none}a{color:#000}.menu-category{break-inside:avoid}}
[hidden]{display:none!important}

.page-intro+.section{padding-top:24px}
.menu-content{padding-top:48px}
@media(max-width:760px){.hero .button,.location-intro .button{padding-inline:17px}.hero .actions,.location-intro .actions{gap:10px}.footer-grid{grid-template-columns:1fr}.contact-layout .contact-form{order:-1}.menu-content{padding-top:24px}}

.contact-form fieldset{margin:0;padding:0;border:0;min-width:0}
.contact-form fieldset:disabled{opacity:.65}
.form-notice{margin-bottom:24px;font-size:16px}
.form-notice .form-status{margin-top:0}
.form-notice a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
