/* A small food market, with paper tickets and hand-painted stall awnings. */
.food-hub,.food-market{color:#294d3b;--food-line:#d2c9ad;--food-cream:#fbf6e6;--food-red:#91473d}
.food-market .food-page-heading h1,.food-hub .food-page-heading h1{font-family:var(--serif,Georgia,serif);font-weight:400;letter-spacing:-2px}
.food-hub .food-page-heading{padding-bottom:24px}.food-hub .food-page-heading .btn{margin-top:9px}
.food-order-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:24px 0;margin:8px 0 50px;border-block:1px solid var(--food-line);gap:25px}.food-order-steps li{display:flex;align-items:center;gap:17px}.food-order-steps li>span{font:400 32px/1 var(--serif,Georgia,serif);color:var(--food-red)}.food-order-steps strong{font-size:13px;font-weight:600;display:block}.food-order-steps small{display:block;font-size:11px;color:#74745f;margin-top:7px}
.food-market-heading,.food-stall-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin:35px 0 24px}.food-market-heading h2,.food-stall-heading h2{font:400 36px/1.15 var(--serif,Georgia,serif);letter-spacing:-1px;margin:12px 0 0}.food-market-heading .eyebrow,.food-stall-heading .eyebrow{font-size:10px;color:var(--food-red);letter-spacing:1.8px}.food-stall-heading h2 em{font-weight:400;color:var(--food-red)}.food-stall-heading button{border:0;background:none;cursor:pointer;padding:10px 0;font:500 12px var(--sans,Arial,sans-serif);white-space:nowrap}.food-stall-heading button[aria-pressed=true]{border-bottom:1px solid #71835d}
.food-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.food-hub-card{border:1px solid var(--food-line);background:var(--food-cream);overflow:hidden}.food-hub-card-art{height:230px;overflow:hidden;position:relative;background:#e7e4ce}.food-hub-card-art img{height:100%;width:100%;object-fit:cover}.food-hub-card-art>span{position:absolute;bottom:16px;left:17px;background:#fff9e8;padding:8px 11px;font-size:9px;letter-spacing:1.1px;border:1px solid #d0c4a6}.food-hub-card-copy{padding:26px}.food-hub-card-copy>.eyebrow{font-size:9px;color:#8b5847;letter-spacing:1px}.food-hub-card-copy h3{font:400 32px/1.15 var(--serif,Georgia,serif);margin:13px 0 9px;letter-spacing:-.7px}.food-hub-card-copy>p:not(.eyebrow){font-size:13px;line-height:1.7;color:#6d735d}.food-hub-card-copy .food-hub-stall-names{font-size:11px;color:#7c563e;margin-top:18px}.food-hub-card-copy>div{border-top:1px solid var(--food-line);display:flex;justify-content:space-between;gap:15px;align-items:center;padding-top:19px;margin-top:20px}.food-hub-card-copy>div>span{font-size:10px;line-height:1.7;color:#72745f}.food-hub-card-copy .btn{font-size:11px;white-space:nowrap}
.food-market-empty{grid-column:1/-1;border:1px dashed #c7bda0;padding:55px 30px;background:#f3efdd;text-align:center}.food-market-empty>span{font-size:48px;color:var(--food-red);display:block;line-height:1}.food-market-empty h2,.food-market-empty h3{font:400 31px/1.2 var(--serif,Georgia,serif);letter-spacing:-.5px;margin:22px 0 13px}.food-market-empty p{font-size:13px;line-height:1.8;max-width:520px;margin:0 auto 22px;color:#6d745c}.food-hub-help{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 0;margin-top:38px;border-block:1px solid var(--food-line)}.food-hub-help h3{font:400 28px/1.2 var(--serif,Georgia,serif);margin:0 0 10px}.food-hub-help p{font-size:12px;line-height:1.7;color:#6d745c;margin:0}.food-hub-help .btn{white-space:nowrap}
.food-market .food-order-note{border:1px solid #d5caaa;border-radius:0;background:#eee7cc;padding:20px 22px}.food-order-note>a{margin-left:auto;white-space:nowrap;color:#81473e;text-decoration:underline;text-underline-offset:4px;font-size:11px}.food-requirement{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--food-line);font-size:12px;line-height:1.7;color:#6e715b}.food-requirement>a,.food-requirement>button{white-space:nowrap;font-size:11px;background:none;border:0;cursor:pointer;color:#7a4236;padding:8px 0}.food-status-box{grid-column:1/-1;padding:22px;background:#f4ead5;border:1px solid #d5c4a0;font-size:13px;line-height:1.8;margin:18px 0}.food-status-box p{margin:8px 0 16px}.food-status-box .btn{font-size:12px}
.food-stall-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:32px}.food-stall-choice{border:1px solid #c6bb9c;background:#f8f2df;position:relative;padding:26px 19px 21px;text-align:left;color:#35523a;cursor:pointer;min-width:0;transition:background .2s,border-color .2s,transform .2s}.food-stall-choice:before{content:'';position:absolute;left:0;right:0;top:0;height:7px;background:repeating-linear-gradient(90deg,#934c40 0 24px,#edddb6 24px 48px)}.food-stall-choice:nth-child(2n):before{background:repeating-linear-gradient(90deg,#50704a 0 24px,#edddb6 24px 48px)}.food-stall-choice:hover{transform:translateY(-2px);background:#f0e7ce}.food-stall-choice.is-selected{border:2px solid #31583b;background:#ece6ca;padding:25px 18px 20px;box-shadow:3px 4px 0 #cfc5a66b}.food-stall-number{font-size:10px;letter-spacing:1px;color:#8f674d;display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.food-stall-number b{font-weight:400;font-size:22px;color:#984d40}.food-stall-choice>strong{font:400 24px/1.2 var(--serif,Georgia,serif);display:block;margin-bottom:10px}.food-stall-choice>span:not(.food-stall-number){font-size:11px;color:#6d735b;line-height:1.6;display:block}.food-stall-choice>small{font-size:10px;display:block;margin-top:14px;padding-top:12px;border-top:1px solid #d9cdb0;line-height:1.6;color:#6e7659}
.food-market-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:30px;align-items:start}.food-market .food-filter-row{margin-top:0}.food-market .food-filter-row .filter-chip{font-size:11px}.food-refresh-menu{margin-left:auto;border:0;background:none;color:#7c6751;cursor:pointer;padding:9px 0;font:400 11px var(--sans,Arial,sans-serif);min-height:40px}.food-refresh-menu:disabled{opacity:.6}.food-market .food-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}.food-market .food-card{border-radius:0;background:var(--food-cream);border-color:#d8cfb2}.food-market .food-card-info{padding:21px}.food-market .food-card h3{font-family:var(--serif,Georgia,serif);font-size:27px}.food-market .food-card .eyebrow{font-size:9px;line-height:1.8;letter-spacing:.7px;color:#93614c}.food-market .food-card-art{aspect-ratio:1.6}.food-market .food-card-bottom{gap:10px;flex-wrap:wrap}.food-market .food-card-bottom small{font-size:10px;line-height:1.7}.food-market .food-description{font-size:12px}.food-market .food-allergens{font-size:10px;line-height:1.7;margin-bottom:14px}.food-market .food-add-btn{font-size:11px!important;min-height:44px;padding:10px 13px!important}.food-dish-placeholder{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(circle at center,#f8f0d8 0 29%,#d5c69e 29.3% 30%,#eadfc0 30.4% 34%,#acaa82 34.3% 34.7%,#e9e2cc 35%);color:#8e5340;min-height:130px}.food-dish-placeholder>span{font-size:54px;font-family:Georgia,serif;line-height:1;margin-top:8px}.food-dish-placeholder>small{font-size:6px;letter-spacing:1px;margin-top:12px}.food-ingredients{font-size:10px;color:#6f735d;line-height:1.7;margin:0 0 18px}.food-ingredients summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:5px 0}.food-ingredients p{margin:8px 0}.food-market .qty-stepper button,.food-checkout .qty-stepper button{height:40px;width:36px}.food-market .qty-stepper span,.food-checkout .qty-stepper span{min-width:25px}
.food-basket{position:sticky;top:95px;border:1px solid #c9bd99;background:#f1ead1;padding:24px;box-shadow:4px 5px 0 #e0d4b277;overflow:hidden}.food-basket:before,.food-basket:after{content:'';position:absolute;left:-10px;width:20px;height:20px;background:#f7f4e8;border:1px solid #c9bd99;border-radius:50%;top:119px}.food-basket:after{left:auto;right:-10px}.food-basket header{position:relative;padding-bottom:22px;border-bottom:1px dashed #b9ad89}.food-basket header .eyebrow{font-size:8px;letter-spacing:1.5px;color:#8b634b;margin:0 0 13px}.food-basket h2{font:400 31px/1.12 var(--serif,Georgia,serif);letter-spacing:-.6px;max-width:205px;margin:0}.food-basket h2 em{font-weight:400;color:#904f43}.food-basket-stamp{position:absolute;right:0;bottom:29px;border:1px solid #ad8061;border-radius:50%;padding:10px 7px;font-size:14px;color:#8b4f3d;transform:rotate(12deg)}.food-basket-stall{font-size:12px;color:#775d41;margin:20px 0 0}.food-basket ul{list-style:none;padding:0;margin:0 0 15px}.food-basket li{display:flex;justify-content:space-between;gap:13px;border-bottom:1px solid #d6cbaa;padding:17px 0}.food-basket li strong{font-size:12px;line-height:1.6;display:block}.food-basket li small{display:block;font-size:10px;line-height:1.5;color:#7a765e;margin:4px 0 9px}.food-basket li>span{font-size:12px;white-space:nowrap;padding-top:3px}.food-basket li .qty-stepper{width:105px}.food-basket-total{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0}.food-basket-total>span{font-size:11px;color:#716e56}.food-basket-total>strong{font:400 29px/1.2 var(--serif,Georgia,serif)}.food-basket>.btn{width:100%;justify-content:center;font-size:12px;min-height:45px}.food-clear-basket{display:block;margin:10px auto 0;padding:10px 7px;border:0;background:none;font-size:10px;color:#865747;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.food-basket footer{border-top:1px dashed #c1b48d;margin-top:23px;padding-top:16px;font-size:10px;line-height:1.8;color:#7e775d}.food-basket footer p{margin:0 0 14px}.food-basket footer a{color:#4d6242;text-decoration:underline;text-underline-offset:4px}.food-basket-empty{text-align:center;padding:30px 3px 12px}.food-basket-empty>span{font-size:42px;color:#9b684d}.food-basket-empty p{font-family:var(--serif,Georgia,serif);font-size:22px;line-height:1.2;margin:16px 0 12px}.food-basket-empty small{font-size:11px;line-height:1.8;color:#78745d;display:block}.food-market .food-mobile-basket{display:none}
.food-checkout .cart-modal-items{margin-top:12px}.food-checkout .cart-modal-item{align-items:flex-start}.food-checkout .cart-modal-item>strong{padding-top:2px}.food-checkout .cart-modal-item .qty-stepper{width:110px}.food-checkout .cart-modal-item>div>strong{font:400 22px/1.3 var(--serif,Georgia,serif)}.food-pickup-location{padding:17px 0 20px}.food-pickup-location>span{display:block;font-size:9px;letter-spacing:1.3px;color:#8c654e;margin-bottom:10px}.food-pickup-location>strong{font-size:14px;display:block}.food-pickup-location p{font-size:12px;color:#73745d;margin:8px 0 0}.food-checkout .cart-payment{border-radius:0;background:#e9e5cb}.food-reservation-terms{font-size:11px;line-height:1.8;color:#736c53;margin:20px 0;padding:16px;border:1px dashed #c9b997;background:#faf3df}.food-checkout-requirement{font-size:12px;color:#87533f;line-height:1.7}.food-pending-note{font-size:11px;background:#f7e8c6;color:#775834;line-height:1.75;padding:15px;border:1px solid #dbc395;margin:17px 0}.food-pending-note p{margin:8px 0}.food-pending-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}.food-checkout-error{font-size:12px;line-height:1.7;margin:15px 0}.food-checkout-error:empty{display:none}.food-switch-stall p{font-size:14px;line-height:1.8;color:#6f715d}.food-market button:focus-visible,.food-market a:focus-visible,.food-hub button:focus-visible,.food-hub a:focus-visible,.food-checkout button:focus-visible{outline:3px solid #9b5946;outline-offset:3px}
@media(max-width:1050px){.food-market-layout{grid-template-columns:minmax(0,1fr) 285px;gap:22px}.food-basket{padding:21px}.food-market .food-grid{gap:17px}.food-market .food-card-info{padding:18px}.food-market .food-card h3{font-size:25px}.food-market .food-card-bottom{flex-direction:column;align-items:stretch}.food-market .food-card-bottom .qty-stepper{justify-content:space-between}.food-hub-card-copy>div{flex-direction:column;align-items:flex-start}}
@media(max-width:850px){.food-market-layout{grid-template-columns:minmax(0,1fr)}.food-basket{position:relative;top:auto;max-width:600px;width:100%;margin:15px auto 0;box-sizing:border-box}.food-market .food-mobile-basket{display:flex}.food-basket h2{max-width:none}.food-basket-stamp{right:3px}.food-market .food-card-bottom{flex-direction:row;align-items:center}.food-hub-grid{gap:20px}.food-hub-card-copy{padding:21px}.food-hub-card-copy h3{font-size:29px}.food-stall-choice>strong{font-size:22px}}
@media(max-width:600px){.food-order-steps{grid-template-columns:1fr;gap:20px;margin-bottom:33px;padding:24px 0}.food-order-steps li>span{width:34px;font-size:29px}.food-order-steps li>div{display:flex;align-items:center;justify-content:space-between;flex:1;gap:15px}.food-order-steps strong{font-size:12px}.food-order-steps small{font-size:10px;margin:0;text-align:right}.food-hub-grid{grid-template-columns:1fr}.food-hub-card-art{height:210px}.food-hub-card-copy>div{flex-direction:row;align-items:center}.food-hub-card-copy>div>.btn{padding:11px 13px}.food-hub .food-page-heading h1,.food-market .food-page-heading h1{font-size:42px;letter-spacing:-1.3px}.food-market-heading,.food-stall-heading{align-items:flex-start;flex-direction:column;gap:10px}.food-market-heading h2,.food-stall-heading h2{font-size:31px}.food-stall-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:25px}.food-stall-choice{padding:23px 14px 17px}.food-stall-choice.is-selected{padding:22px 13px 16px}.food-stall-choice>strong{font-size:22px}.food-stall-choice>span:not(.food-stall-number){font-size:10px}.food-stall-choice>small{font-size:9px}.food-stall-number{margin-bottom:9px}.food-market .food-order-note{padding:17px 16px;font-size:11px;gap:11px;flex-wrap:wrap}.food-market .food-order-note>span:nth-child(2){flex:1}.food-order-note>a{margin-left:33px}.food-requirement{align-items:flex-start;flex-direction:column;gap:4px}.food-requirement>a,.food-requirement>button{white-space:normal;text-align:left}.food-market .food-grid{grid-template-columns:1fr;gap:20px}.food-market .food-card{display:grid;grid-template-columns:115px minmax(0,1fr)}.food-market .food-card-art{aspect-ratio:auto;min-height:180px}.food-market .food-card-art img{object-fit:cover}.food-market .food-card-art .badge{left:7px;right:auto;font-size:8px!important}.food-market .food-card-info{padding:17px 16px}.food-market .food-card h3{font-size:25px}.food-market .food-card .eyebrow{font-size:8px;letter-spacing:.5px}.food-market .food-description{font-size:11px}.food-market .food-card-bottom{flex-direction:column;align-items:stretch;gap:12px}.food-market .food-card-bottom .qty-stepper{width:100%;box-sizing:border-box;justify-content:space-between}.food-market .food-card-bottom small{font-size:9px}.food-dish-placeholder{background:#e8dfc2;min-height:100%;border-right:1px solid #d4c8a7}.food-dish-placeholder>span{font-size:52px}.food-dish-placeholder>small{font-size:6px;max-width:75px;text-align:center;line-height:1.8}.food-market .food-add-btn{width:100%;font-size:10px!important}.food-refresh-menu{font-size:10px}.food-market .food-filter-row{gap:7px}.food-market .food-filter-row .filter-chip{font-size:10px;padding:9px 11px}.food-hub-help{align-items:flex-start;flex-direction:column}.food-hub-help h3{font-size:26px}.food-basket{padding:23px}.food-basket li .qty-stepper{width:110px}.food-market-empty{padding:35px 20px}.food-market-empty h2,.food-market-empty h3{font-size:28px}.food-market-empty p{font-size:12px}.food-checkout .cart-modal-item>div>strong{font-size:21px}.food-checkout .cart-modal-item>strong{font-size:13px}.food-market .event-subnav .event-profile-link{display:block;margin-left:0}.food-market .event-subnav{gap:19px}.food-market .event-subnav a{font-size:11px}.food-mobile-basket>div:first-child>div>strong{max-width:140px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:370px){.food-market .food-card{grid-template-columns:90px minmax(0,1fr)}.food-market .food-card-info{padding:16px 12px}.food-stall-choice>strong{font-size:20px}.food-hub-card-copy>div{flex-direction:column;align-items:flex-start}.food-mobile-basket .cart-count{display:none}.food-mobile-basket>div:first-child>div>strong{max-width:110px}.food-order-steps li>div{display:block}.food-order-steps small{margin-top:6px;text-align:left}}
@media(prefers-reduced-motion:reduce){.food-stall-choice{transition:none}.food-stall-choice:hover{transform:none}}
