/* Accessibility improvements: contrast, keyboard focus, reflow, and controls. */
html{font-size:100%;scroll-padding-block:1.5rem}
body{line-height:1.6;overflow-wrap:break-word}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%}
.hero>*,.foods>*,.weekend>*,.story>*,.visit>*,.catering-feature-inner>*,.menu-grid>*,.faq-grid>*{min-width:0}
h1,h2,h3,p,a,summary{overflow-wrap:anywhere}
.skip-link{position:absolute;top:12px;left:12px;transform:translateY(-180%);z-index:1000;padding:12px 18px;background:var(--cream);color:var(--ink);font-weight:bold;border:2px solid var(--ink)}
.skip-link:focus{transform:none}
:where(a,button,input,textarea,select,summary,[tabindex]):focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #351d18}
a:focus-visible,button:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #351d18}
main:focus{outline:none}
.navlinks{flex-wrap:wrap}
.navlinks a{min-height:44px;display:inline-flex;align-items:center;padding:8px 4px;font-size:.9375rem}
.button,.navlinks .button,.navlinks .catering-nav,.mobileorder .button{min-height:44px;font-size:.875rem;line-height:1.5;white-space:normal}
.textlink{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.875rem;white-space:normal}
.eyebrow,.food .number,.event-types,.announcement,.locationline,.hero-catering-note,.closed,.catering-feature .catering-note{font-size:.8125rem;line-height:1.7}
.hero p,.food p,.weekend p,.story p,.visit p,.catering p,.catering-feature p,.faqs p,.menu-grid p,.inquiry p{font-size:1rem;line-height:1.8}
.footer p,.footerlinks,.breadcrumbs{font-size:.875rem}
.footerlinks{flex-wrap:wrap;gap:12px 22px}
.footerlinks a{display:inline-flex;align-items:center;gap:8px;min-height:44px}
.hours div{font-size:.9375rem;flex-wrap:wrap;gap:10px}
.faqs summary{min-height:44px;padding:8px 0;font-size:1rem}
.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px}
.inquiry input,.inquiry textarea{font-size:1rem;min-height:48px;border:2px solid #82685b;border-radius:2px;background:#fffcf5;color:#351d18;max-width:100%}
.inquiry input[aria-invalid="true"],.inquiry textarea[aria-invalid="true"]{border:3px solid #681411}
.inquiry label{font-size:1rem;line-height:1.6}
.inquiry small,.form-help,.form-error,.form-status{font-size:.9375rem;line-height:1.7}
.form-error{color:#681411;font-weight:bold;margin:6px 0 14px}
.form-status{margin-top:18px}
.error-summary{border:3px solid #681411;padding:18px;background:#fffcf5;color:#351d18;margin:20px 0}
.error-summary h3{font:700 1.125rem Arial,sans-serif;margin:0 0 10px}
.error-summary ul{padding-left:24px;margin:0}
.error-summary a{display:inline-flex;min-height:44px;align-items:center;text-underline-offset:4px}
.accessibility-help{margin-top:24px;border-top:1px solid var(--line);padding-top:20px;font-size:.9375rem;line-height:1.8}
.accessibility-help p{font-size:.9375rem}
[hidden]{display:none!important}
@media(max-width:1000px){.nav{flex-wrap:wrap}.navlinks{gap:12px 18px}.navlinks .button{padding:12px 16px}}
@media(max-width:800px){
 .nav{flex-direction:column;align-items:flex-start;gap:16px;padding:16px 6%}
 .navlinks{width:100%;gap:8px 16px}
 .navlinks a:not(.button){display:inline-flex}
 .navlinks .button,.navlinks .catering-nav{padding:12px 14px;flex:1 1 135px;font-size:.875rem}
 .hero h1{font-size:clamp(2.25rem,9vw,4.25rem);letter-spacing:-1.5px;line-height:1.12}
 .herofigure img{height:auto;max-height:500px;aspect-ratio:4/5;object-fit:cover}
 .seal{right:8px;bottom:20px}
 .pagehero h1{font-size:clamp(2.25rem,9vw,4rem)}
 .catering-feature h2,.weekend h2{font-size:clamp(2rem,8vw,3rem)}
 .mobileorder{position:static;display:flex;flex-wrap:wrap;gap:12px;padding:20px 6%;box-shadow:none}
 .mobileorder .button{flex:1 1 140px;min-height:48px;font-size:.875rem;padding:12px}
 .footer{padding-bottom:38px}
 .inquiry{padding:22px 18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){.button,.inquiry input,.inquiry textarea{border:2px solid ButtonText}:focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}.burrito-icon{forced-color-adjust:auto}}

.footer{flex-wrap:wrap}.footer .accessibility-help{flex-basis:100%;color:var(--cream);border-top-color:#ffbc94}.footer .accessibility-help p{font-size:.9375rem;letter-spacing:normal}

/* Make primary navigation visibly interactive and center mobile choices. */
.navlinks{justify-content:center}
.navlinks a:not(.button){justify-content:center;text-align:center;padding:10px 16px;border:2px solid var(--burgundy);border-radius:6px;color:var(--burgundy);background:#fffcf5;font-weight:700;line-height:1.4;cursor:pointer;min-height:48px}
.navlinks a:not(.button):hover,.navlinks a:not(.button):active{background:var(--burgundy);color:var(--cream)}
@media(max-width:800px){
 .nav{align-items:center}
 .navlinks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 10px;align-items:stretch;justify-content:center}
 .navlinks a:not(.button){grid-column:span 2;padding:10px 6px;font-size:.875rem;min-height:48px}
 .navlinks .button,.navlinks .catering-nav{grid-column:span 3;justify-content:center;text-align:center;padding:12px 10px;min-height:52px}
}

.navlinks a:not(.button){font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:1rem;letter-spacing:.2px}
@media(max-width:800px){.navlinks a:not(.button){font-size:1rem}}

.burrito-icon{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.burrito-icon img{display:block;width:28px;height:28px;max-width:none}

.visit .truck-photo{grid-column:1 / -1;margin:0 0 24px;max-width:680px;width:100%;justify-self:center}.truck-photo img{display:block;width:100%;height:auto;border-radius:8px}.truck-photo figcaption{text-align:center;margin-top:12px;font-size:1rem;color:var(--ink)}



.closure-banner{background:#a51e20;color:#fffaf0;text-align:center;padding:22px 6%;border-bottom:4px solid #f36c30}.closure-banner strong{display:block;font-size:clamp(1.25rem,2.5vw,1.7rem);line-height:1.4}.closure-banner p{max-width:800px;margin:8px auto 0;font-size:1rem;line-height:1.6}
