@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/order/fonts/dm-sans-normal-400-700.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka;font-style:normal;font-weight:600 700;font-display:swap;src:url(/order/fonts/fredoka-normal-600.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.shop{--green-900:#0a3327;--green-700:#156246;--green-100:#e0f3ea;--plum-700:#5f2354;--gold-500:#ffc857;--ink-on-gold:#0b3528;--cream:#f7f1e7;--cream-2:#fffdf8;--sand:#efe4d4;--ink:#20342c;--ink-2:#506159;--sage:#dce9d6;--err:#b02a28;--font-display:"Fredoka","Trebuchet MS",ui-sans-serif,system-ui,sans-serif;--font-body:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--cream);font-family:var(--font-body);overflow-wrap:anywhere;min-height:100vh}.shop *,.shop :before,.shop :after{box-sizing:border-box}.shop main{max-width:72rem;margin:0 auto;padding:0 1rem 3rem}.shop h1,.shop h2,.shop h3,.shop .wordmark{font-family:var(--font-display);color:var(--green-900);font-weight:650;line-height:1.1}.shop h1{letter-spacing:-.035em;margin:.4em 0;font-size:clamp(2.3rem,7vw,4.5rem)}.shop h2{margin:1.3em 0 .65em;font-size:1.8rem}.shop h3{margin:0 0 .5rem;font-size:1.4rem}.shop p{line-height:1.6}.shop a{color:var(--green-700);text-underline-offset:.2em}.shop button,.shop .button{background:var(--green-700);color:#fff;font:inherit;cursor:pointer;text-align:center;border:0;border-radius:999px;justify-content:center;align-items:center;max-width:100%;min-height:44px;padding:.85rem 1.2rem;font-weight:700;text-decoration:none;display:inline-flex}.shop button:hover,.shop .button:hover{background:var(--green-900)}.shop button:disabled{opacity:.55;cursor:not-allowed}.shop :focus-visible{outline:3px solid var(--plum-700);outline-offset:4px}.shop .quiet{background:var(--sand);color:var(--ink)}.shop .quiet:hover{background:var(--sage)}.brand-header{border-bottom:1px solid var(--sand);justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.brand-header a{align-items:center;min-height:44px;display:inline-flex}.shop .wordmark{font-size:clamp(1.2rem,4vw,1.8rem);text-decoration:none}.shop .hero{max-width:45rem;padding:2rem 0 1.5rem}.shop .eyebrow{color:var(--plum-700);margin:0;font-weight:700}.store-bar{border-bottom:1px solid var(--sand);justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 0;display:flex}.store-bar p{margin:.25rem 0 0;font-size:.85rem}.shop .cart-toggle{background:var(--gold-500);color:var(--ink-on-gold);flex-shrink:0}.shop .status-banner{background:var(--sage);border-radius:.8rem;padding:1rem}.shop .status-banner.paused,.shop .status-banner.closed{background:var(--sand)}.category-nav{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0;display:flex}.category-nav a{border:1px solid var(--green-700);border-radius:999px;min-height:44px;padding:.6rem 1rem;text-decoration:none}.menu-grid,.store-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;display:grid}.shop .menu-card{background:var(--cream-2);border:1px solid var(--sand);color:var(--ink);border-radius:1.2rem;text-decoration:none;overflow:hidden}.menu-card>div{padding:1.2rem}.menu-card img,.item-image{object-fit:cover;width:100%;height:auto;max-height:22rem}.menu-card img{height:12rem}.menu-card p{color:var(--ink-2)}.shop .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.sold-out{color:var(--plum-700);background:var(--sand);border-radius:1rem;padding:.35rem .75rem;font-weight:700}.panel{background:var(--cream-2);border:1px solid var(--sand);border-radius:1.2rem;padding:1.25rem}.shop .narrow{max-width:40rem;margin:2rem auto}.shop .narrow>a{align-items:center;min-height:44px;display:inline-flex}.shop fieldset{border:0;min-width:0;margin:0 0 1.5rem;padding:0}.shop legend{font-family:var(--font-display);margin-bottom:.75rem;font-size:1.3rem;font-weight:600}.shop label{margin:0 0 1rem;font-weight:600;display:block}.shop input:not([type=checkbox]):not([type=radio]),.shop select,.shop textarea{width:100%;max-width:100%;font:inherit;border:1px solid var(--ink-2);min-height:48px;color:var(--ink);background:#fff;border-radius:.6rem;margin-top:.4rem;padding:.7rem;font-size:1rem;font-weight:400;display:block}.shop .choice{align-items:center;gap:.75rem;min-height:44px;margin:0;padding:.5rem 0;font-weight:400;display:flex}.shop input[type=checkbox],.shop input[type=radio]{width:22px;height:22px;accent-color:var(--green-700);flex-shrink:0}.shop .muted{color:var(--ink-2);font-size:.9rem}.shop .error{color:var(--err)}.shop .price{font-size:1.6rem;font-weight:700}.cart-lines{padding:0;list-style:none}.cart-lines li{border-bottom:1px solid var(--sand);justify-content:space-between;align-items:start;gap:1rem;padding:1rem 0;display:flex}.cart-lines p{margin:.2rem 0}.shop dialog{color:var(--ink);background:var(--cream-2);border:1px solid var(--sand);border-radius:1.2rem;width:min(30rem,100% - 2rem);max-height:90dvh;padding:1.2rem;overflow:auto}.shop dialog::backdrop{background:#0a33278c}.shop dialog h2{margin:.5rem 0}.shop footer{border-top:1px solid var(--sand);text-align:center;color:var(--ink-2);padding:2rem 1rem}.shop .skip-link{z-index:100;background:#fff;padding:1rem;position:fixed;top:0;left:1rem;transform:translateY(-120%)}.shop .skip-link:focus{transform:none}.shop .totals{margin:1.5rem 0}.shop .totals div{justify-content:space-between;gap:1rem;padding:.4rem 0;display:flex}.shop .totals dt,.shop .totals dd{margin:0}.shop .totals div:last-child{border-top:1px solid var(--sand);padding-top:.8rem;font-size:1.25rem;font-weight:700}.shop .payment-buttons{gap:.75rem;margin-top:1rem;display:grid}.shop .payment-buttons>*{min-width:0;max-width:100%}.shop .status-steps{flex-wrap:wrap;gap:1rem;padding-left:1.2rem;display:flex}.shop section[id]{scroll-margin-top:1rem}@media (min-width:48rem){.brand-header{padding:1rem max(1.5rem,50vw - 35rem)}.shop main{padding-left:1.5rem;padding-right:1.5rem}.shop .hero{padding-top:3rem}}
