:root{--green:#00523a;--ink:#101816;--muted:#788396;--line:#e8ece9;--gutter:clamp(16px,3vw,30px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
button,input{font:inherit}
a{color:inherit}
.skip-link{position:absolute;left:12px;top:-80px;z-index:30;padding:10px 14px;background:#fff;color:var(--green)}
.skip-link:focus{top:10px}
.page{width:min(100%,1160px);margin:0 auto;padding:0 var(--gutter) 92px}
.site-header{padding-top:clamp(18px,3vw,30px)}
.brand-line{display:flex;align-items:center;justify-content:space-between;gap:14px}
.wordmark{display:flex;align-items:center;gap:8px;min-width:0;flex:1;color:var(--green);text-decoration:none}
.wordmark img{display:block;width:56px;height:56px;flex:none;object-fit:contain}
.wordmark-text{color:var(--green);font-size:clamp(20px,4.5vw,29px);font-weight:800;letter-spacing:-.045em;line-height:1;white-space:nowrap}
.bag-link{display:grid;place-items:center;flex:none;width:45px;height:45px;color:var(--green)}
.bag-link svg,.search svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.location-link{display:inline-flex;align-items:center;gap:7px;margin:5px 0 16px;color:var(--green);font-size:clamp(15px,2.3vw,21px);line-height:1.25;text-decoration:none}
.location-link .chevron{margin-left:3px;color:#677581}
.location-picker{width:min(460px,calc(100vw - 32px));max-height:min(680px,calc(100dvh - 40px));padding:0;border:0;border-radius:22px;color:#153a32;box-shadow:0 18px 70px #102f2a40}
.location-picker::backdrop{background:#102f2a70;backdrop-filter:blur(3px)}
.location-picker-form{padding:22px;display:grid;gap:12px}
.location-picker-heading{display:flex;align-items:flex-start;justify-content:space-between}
.location-picker-heading p{margin:0 0 4px;color:#397c60;font-size:11px;font-weight:800;letter-spacing:.16em}
.location-picker-heading h2{margin:0;font:italic 700 28px Georgia,serif;color:#172d42}
.location-picker-close{border:0;border-radius:50%;width:38px;height:38px;background:#eef3f0;color:#153a32;font-size:25px;cursor:pointer}
.location-picker-form>label{font-size:13px;font-weight:700}
.location-picker-form>input{width:100%;box-sizing:border-box;border:1px solid #cbd8d1;border-radius:12px;padding:13px 14px;font:inherit;outline-color:#14745b}
.location-picker-options{display:grid;gap:5px;max-height:340px;overflow:auto}
.location-picker-options button{display:flex;justify-content:space-between;align-items:center;border:0;border-radius:10px;background:#f5f7f5;padding:12px;text-align:left;color:inherit;cursor:pointer}
.location-picker-options button:hover,.location-picker-options button[aria-selected="true"]{background:#e5f1eb}
.location-picker-options small{color:#63756c}
.location-picker-note{margin:0;color:#63756c;font-size:12px;line-height:1.4}
.location-area-note{margin:8px 0 0;color:#63756c;font-size:12px}
.search{display:flex;align-items:center;gap:12px;height:57px;border-radius:30px;background:#f0f2f3;padding:0 18px;color:#7a8592}
.search svg{flex:none;width:23px;height:23px}
.search input{flex:1;width:100%;min-width:0;border:0;outline:0;background:transparent;color:#26372e;font-size:17px}
.search input::placeholder{color:#758292;opacity:1}
.search button{border:0;background:none;color:var(--green);font-weight:700;cursor:pointer}
.top-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 18px}
.top-nav a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;border-radius:25px;background:#f0f2f2;color:var(--green);font-size:17px;text-decoration:none;white-space:nowrap}
.top-nav a.active{background:var(--green);color:#fff}
.top-nav a span{font-size:22px;line-height:1}
.feed-section{padding:4px 0 16px;border-bottom:1px solid var(--line);margin-bottom:5px;scroll-margin-top:12px}
.section-head{margin:0 0 8px}
.section-head h2{margin:0;font-size:clamp(26px,3vw,34px);font-weight:800;line-height:1.08;letter-spacing:-.045em}
.section-head h2 a{text-decoration:none}
.section-head h2 a:hover,.section-head h2 a:focus-visible{text-decoration:underline;text-decoration-color:var(--green);text-underline-offset:5px}
.section-head p{margin:3px 0 0;color:var(--muted);font-size:15px;line-height:1.25}
.listing-loading,.listing-empty{padding:18px 0;color:#64756b;font-size:14px;line-height:1.5}
.listing-empty a{color:#075d45;font-weight:700;text-underline-offset:3px}
.fresh-offers-section{padding-top:10px}
.fresh-offers-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.fresh-offers-all{flex:none;color:var(--green);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.fresh-offers-all:hover{text-decoration:underline;text-underline-offset:3px}
.fresh-offers-all:focus-visible{outline:3px solid #c99a32;outline-offset:3px}
.fresh-offer-rail{align-items:stretch}
.fresh-offer-rail .fg-offer-badge{max-width:100%;font-size:11px;padding:5px 7px;white-space:normal}
.meal-card .fg-offer-terms,.price-card .fg-offer-terms{font-size:10px;line-height:1.45;white-space:normal}
.spotlights-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:1px 0 14px;border-bottom:1px solid #c9d9cf;padding:0 2px 9px}
.spotlights-heading>div{min-width:0}
.spotlights-heading>div>span{color:#0b5b3d;font:700 10px/1.2 Arial,sans-serif;letter-spacing:.2em}
.spotlights-heading h2{margin:3px 0 0;color:#102b45;font:italic 700 clamp(27px,3.2vw,41px)/1.1 Georgia,serif}
.spotlight-store-rail{align-items:flex-start;padding-top:3px}
.spotlight-store-rail .editorial-spotlight,.spotlight-store-rail .store-card{flex:none;width:clamp(260px,29vw,350px);scroll-snap-align:start}
.editorial-spotlight{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#f7f3e9;box-shadow:0 8px 25px #1d302318}
.editorial-spotlight:nth-child(2){background:#e9f0e9}
.editorial-spotlight:nth-child(3){background:#eee7df}
.editorial-spotlight-photo{position:relative;height:230px;overflow:hidden;background:#e8e9e2}
.editorial-spotlight-photo::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#14241970)}
.editorial-spotlight-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.editorial-spotlight:hover .editorial-spotlight-photo img{transform:scale(1.035)}
.editorial-spotlight-photo>span{position:absolute;right:13px;bottom:13px;z-index:1;color:#fff;font:700 10px/1 Arial,sans-serif;letter-spacing:.15em}
.editorial-spotlight-photo>.spotlight-sponsored{top:12px;right:auto;bottom:auto;left:12px;padding:7px 9px;background:#fff;color:#134834;font-size:11px;letter-spacing:.04em}
.editorial-spotlight-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0;padding:19px 20px 21px}
.editorial-spotlight-copy>small{color:#0a654b;font:700 10px/1.2 Arial,sans-serif;letter-spacing:.12em}
.editorial-spotlight-copy h3{margin:10px 0 13px;color:#102b45;font:italic 700 clamp(25px,2.5vw,36px)/.99 Georgia,serif}
.spotlight-reveal{width:100%;margin-top:auto}
.spotlight-reveal summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;padding:8px 11px;border:1px solid #9dbda7;color:#0a4d38;font-size:12px;font-weight:700;list-style:none;cursor:pointer}
.spotlight-reveal summary::-webkit-details-marker{display:none}
.spotlight-reveal summary:hover,.spotlight-reveal summary:focus-visible{background:#e0eee3}
.spotlight-reveal[open] summary{background:#e0eee3}
.spotlight-reveal .show-less-label{display:none}
.spotlight-reveal[open] .show-me-label{display:none}
.spotlight-reveal[open] .show-less-label{display:inline}
.show-me-chevron{font-size:19px;line-height:1;transition:transform .2s ease}
.spotlight-reveal[open] .show-me-chevron{transform:rotate(180deg)}
.spotlight-reveal-content{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding-top:14px}
.spotlight-reveal-content>strong{padding-top:9px;border-top:1px solid #b7c9ba;color:#18382f;font-size:14px;line-height:1.25}
.spotlight-reveal-content p{margin:7px 0 11px;color:#53635d;font-size:13px;line-height:1.48}
.spotlight-photo-note{margin-top:auto;color:#77837d;font-size:10px;line-height:1.3}
.spotlight-reveal-content>a{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:37px;margin-top:7px;padding:8px 11px;text-decoration:none;font-size:12px;font-weight:700}
.spotlight-reveal-content>a span{font-size:17px;line-height:1}
.spotlight-primary{margin-top:13px!important;background:#0b4939;color:#fff}
.spotlight-primary:hover,.spotlight-primary:focus-visible{background:#12654d}
.spotlight-secondary{border:1px solid #9dbda7;color:#0a4d38}
.spotlight-secondary:hover,.spotlight-secondary:focus-visible{background:#e0eee3}
.spotlight-store-rail .store-card .card-photo{height:230px}
.stores-show-all{flex:none;display:inline-flex;align-items:center;gap:7px;padding:7px 0;color:var(--green);font-size:14px;font-weight:700;text-decoration:none}
.stores-show-all:hover,.stores-show-all:focus-visible{text-decoration:underline;text-underline-offset:4px}
.stores-show-all span{font-size:20px}
.static-rail,.motion-viewport{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y}
.static-rail::-webkit-scrollbar,.motion-viewport::-webkit-scrollbar{display:none}
.static-rail{display:flex;gap:13px;margin-right:calc(-1 * var(--gutter));padding:0 var(--gutter) 4px 0;scroll-snap-type:x proximity}
.static-rail>*{scroll-snap-align:start}
.store-card,.meal-card,.grocery-card{flex:none;min-width:0}
.store-card{width:clamp(235px,29vw,350px);border:1px solid #e5e9e7;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 2px 7px #163a2d0b}
.store-card a,.meal-card a,.grocery-card a,.craving-card{text-decoration:none}
.card-photo{display:block;width:100%;overflow:hidden;background:#e9f1ec}
.card-photo img{display:block;width:100%;height:100%;object-fit:cover}
.discovery-placeholder{display:grid;place-items:center;width:100%;height:100%;padding:12px;background:#edf2ee;color:#62756b;text-align:center}
.discovery-placeholder[hidden],.card-photo img[hidden]{display:none}
.discovery-store-initial{color:#376b50;font:700 48px Georgia,serif}
.discovery-photo-label{font-size:13px;line-height:1.4}
.store-copy .discovery-store-address{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px}
.store-copy .discovery-menu-status{font-size:12px;color:#547362}
.store-card .card-photo{height:184px}
.store-copy{display:flex;flex-direction:column;gap:3px;padding:11px 14px 12px}
.store-copy strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:18px;line-height:1.16}
.green-link{color:var(--green);font-size:15px}
.green-link span{padding-left:4px;font-size:22px;vertical-align:-1px}
.store-copy small{color:var(--muted);font-size:14px}
.meal-section{padding-top:4px}
.motion-viewport{margin-right:calc(-1 * var(--gutter));padding:0 var(--gutter) 4px 0}
.motion-track{display:flex;align-items:stretch;width:max-content}
.motion-group{display:flex;gap:13px;flex:none;padding-right:13px}
.motion-group[hidden]{display:none}
.meal-card{width:clamp(235px,29vw,350px);border:1px solid #e4e8e7;border-radius:11px;overflow:hidden;background:#fff}
.meal-card .card-photo{height:170px}
.meal-copy{display:flex;flex-direction:column;gap:3px;padding:8px 12px 10px}
.meal-copy strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:18px;line-height:1.17}
.meal-copy>small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:14px}
.meal-rating{display:flex;align-items:baseline;gap:9px;min-width:0;white-space:nowrap}
.meal-rating b{flex:none;color:#085337;font-size:14px}
.meal-rating b span{color:#f1a800;font-size:18px}
.meal-rating small{overflow:hidden;text-overflow:ellipsis;color:#939cad;font-size:12px}
.meal-rating.unavailable{color:#939cad;font-size:12px}
/* Missing catalog photos remain real, readable menu entries within the rail. */
#feed .menu-entry{align-self:flex-start;border-color:#cbded3;background:#f6faf7}
#feed .menu-entry .card-photo,#feed .menu-entry .price-photo,#feed .menu-entry .local-loyalty-photo{display:none}
#feed .menu-entry .meal-copy{min-height:0;gap:9px;padding:18px 16px}
#feed .menu-entry .meal-copy strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;white-space:normal;line-height:1.3}
#feed .menu-entry .meal-copy>small{white-space:normal;line-height:1.4}
#feed .menu-entry .meal-rating.unavailable{display:none}
#feed .menu-entry .meal-copy::after{content:"View menu item →";color:#07523a;font-size:12px;font-weight:700}
.menu-entry-price{display:none}
.menu-entry .menu-entry-price{display:block;color:#07523a;font-size:19px;font-weight:800}
#feed .menu-entry .local-loyalty-copy{padding:16px}
.national-chains-section{padding-top:10px}
.national-chains-rail{align-items:stretch}
.national-chain-card{flex:none;width:clamp(235px,27vw,300px);overflow:hidden;border:1px solid #e4e8e7;border-radius:11px;background:#fff}
.national-chain-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none}
.national-chain-photo{display:grid;place-items:center;height:174px;overflow:hidden;background:#f4f6f3}
.national-chain-photo img{display:block;width:100%;height:100%;object-fit:contain}
.national-chain-copy{display:flex;flex:1;flex-direction:column;gap:4px;padding:9px 12px 11px}
.national-chain-copy strong{font-size:17px;line-height:1.18}
.national-chain-copy small{color:var(--muted);font-size:13px}
.national-chain-copy>span{margin-top:auto;padding-top:6px;color:var(--green);font-size:11px;font-weight:700}
.national-chain-card:hover,.national-chain-card:focus-within{border-color:#9bc7ad;box-shadow:0 0 0 2px #d6eadb}
.under20-section{padding-top:10px}
.under20-section .section-head{margin-bottom:12px}
.price-filters{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin-right:calc(-1 * var(--gutter));padding:0 var(--gutter) 13px 0;white-space:nowrap}
.price-filters::-webkit-scrollbar{display:none}
.price-filters button{flex:none;min-height:33px;padding:6px 12px;border:1px solid #cadccf;border-radius:18px;background:#f7faf7;color:#245b42;font-size:12px;font-weight:700;cursor:pointer}
.price-filters button[aria-pressed="true"]{border-color:#07523a;background:#07523a;color:#fff}
.price-filters button:hover,.price-filters button:focus-visible{box-shadow:0 0 0 2px #a7cbb5}
.price-rail{gap:14px;align-items:stretch}
.price-card{flex:none;width:clamp(240px,27vw,300px);overflow:hidden;border:1px solid #dce6de;border-radius:13px;background:#fff;box-shadow:0 3px 14px #173c2b10}
.price-card[hidden]{display:none}
.price-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none}
.price-photo{position:relative;display:block;height:184px;overflow:hidden;background:#e8eee8}
.price-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.price-card:hover .price-photo img,.price-card:focus-within .price-photo img{transform:scale(1.035)}
.price-badge{position:absolute;left:10px;top:10px;max-width:calc(100% - 20px);padding:7px 10px;border-radius:5px;background:#0a4937;color:#fff;font-size:16px;font-weight:800}
.price-copy{display:flex;flex:1;flex-direction:column;gap:4px;padding:12px 13px 13px}
.price-kicker{color:#9d5a16;font-size:10px;font-weight:800;letter-spacing:.09em}
.price-copy strong{font-size:19px;line-height:1.12;letter-spacing:-.025em}
.price-store{color:#677b70;font-size:13px;line-height:1.3}
.price-copy .meal-rating{margin-top:3px}
.price-status{margin-top:auto;padding-top:9px;border-top:1px solid #e8eee9;color:#607d66;font-size:11px;font-weight:700}
.delivery-specials-section{padding-top:10px}
.delivery-specials-rail{align-items:stretch}
.delivery-image-note{position:absolute;bottom:8px;right:9px;padding:3px 6px;border-radius:4px;background:#10291fc9;color:#fff;font-size:9px;font-weight:700}
.delivery-terms{display:block;line-height:1.35;color:#657970;font-size:11px}
.delivery-under-two-section{padding-top:10px}
.delivery-under-two-rail{align-items:stretch}
.delivery-estimate-label{display:block;margin-top:6px;color:#07593f;font-size:12px;font-weight:700;line-height:1.4}
.delivery-estimate-note{margin:8px 0 0;color:#657970;font-size:12px;line-height:1.5}
.delivery-address-prompt{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #e0e9e3;border-radius:8px;padding:14px 16px;background:#f8fbf9}
.delivery-address-prompt p{margin:0;color:#536b5d;font-size:13px;line-height:1.5}
.delivery-address-prompt button{flex:none;border:1px solid #b8cfc0;border-radius:20px;padding:9px 13px;background:#fff;color:#07593f;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.delivery-address-prompt button:focus-visible{outline:3px solid #c98d25;outline-offset:3px}
.family-section{padding-top:10px}
.family-section .section-head{margin-bottom:12px}
.family-source-link{display:inline-block;margin-top:7px;color:#07593f;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.family-rail{gap:14px;align-items:stretch}
.family-card{width:clamp(240px,27vw,300px)}
.family-card[hidden]{display:none}
.family-card .card-photo{position:relative;height:184px}
.family-badge{position:absolute;left:10px;top:10px;max-width:calc(100% - 20px);padding:7px 9px;border-radius:5px;background:#123d32;color:#fff;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.family-card .meal-copy{min-height:104px}
.family-card .family-price-note{margin-top:auto;padding-top:6px;color:#7b8a80;font-size:11px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.meal-tools-section{padding-top:10px}
.meal-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.meal-tool-panel{min-width:0;overflow:hidden;border:1px solid #dfe7e1;border-radius:12px;background:#fff}
.menu-gallery-panel{container-type:inline-size}
.meal-tool-panel header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:55px;padding:10px 13px;border-bottom:1px solid #e5ece7}
.meal-tool-panel h2{margin:0;font-size:21px;line-height:1.1;letter-spacing:-.035em}
.meal-tool-panel header a{flex:none;color:var(--green);font-size:12px;font-weight:700;text-decoration:none}
.meal-tool-panel header a:hover,.meal-tool-panel header a:focus-visible{text-decoration:underline;text-underline-offset:3px}
.meal-builder-panel iframe{display:block;width:100%;height:365px;border:0;background:#f2f0e8}
.menu-podium-stage{height:365px;overflow:hidden;background:#fff}
.home-menu-podium{margin:0;background:radial-gradient(ellipse at 50% 45%,#f6f9f6,#fff 70%)}
.home-menu-podium .lectern-dish{width:100%;padding:5px 2px;border:0;background:none;color:#291c10;text-align:left;text-decoration:none;cursor:pointer}
.home-menu-podium .lectern-dish:hover,.home-menu-podium .lectern-dish:focus-visible{background:#c9922830}
.home-menu-podium .lectern-dish-photo{grid-row:span 2;display:block;width:58px;height:46px;overflow:hidden;border:1px solid #bb9560;border-radius:4px;background:#e9dcb9}
.home-menu-podium .lectern-dish-photo img{display:block;width:100%;height:100%;object-fit:cover}
.home-menu-podium .lectern-controls button{color:#fff}
.home-menu-podium .lectern-controls button:disabled{opacity:.4;cursor:default}
.home-menu-podium-compact{height:100%;margin:0;overflow:hidden}
.home-menu-podium-compact .lectern-scene{position:relative;top:0;left:0;width:100%;height:100%;transform:none}
.home-menu-podium-compact .lectern-desk{top:2%;left:3%;width:94%;height:72%;border-bottom-width:4px;transform:perspective(350px) rotateX(8deg)}
.home-menu-podium-compact .lectern-stem{top:61%;left:33%;width:34%;height:28%;border-width:1px;mask-image:linear-gradient(#000 0%,#000 66%,transparent)}
.home-menu-podium-compact .lectern-book{top:2%;left:6%;width:88%;height:69%;min-height:0;border-width:3px;transform:perspective(350px) rotateX(6deg)}
.home-menu-podium-compact .lectern-page{height:100%;padding:6px 5px;overflow:hidden}
.home-menu-podium-compact .lectern-overline{font-size:clamp(6px,1.5cqw,9px);letter-spacing:1px}
.home-menu-podium-compact .lectern-page h2{height:clamp(28px,7cqw,42px);min-height:0;margin:4px 0 0;overflow:hidden;font-size:clamp(10px,3cqw,17px);line-height:1.15}
.home-menu-podium-compact .lectern-ornament{height:17px;margin:2px 0;font-size:7px}
.home-menu-podium-compact .lectern-ornament span{font-size:13px}
.home-menu-podium-compact .lectern-items{position:relative;top:auto;right:auto;bottom:auto;left:auto;overflow:hidden}
.home-menu-podium-compact .lectern-dish{display:block;margin:0;padding:0;font-size:clamp(9px,2.6cqw,14px);line-height:1.15}
.home-menu-podium-compact .lectern-dish-photo{width:100%;height:clamp(50px,17cqw,96px);margin-bottom:4px}
.home-menu-podium-compact .lectern-dish>span:nth-child(2){display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.home-menu-podium-compact .lectern-dish small{display:block;font-size:clamp(8px,2cqw,12px)}
.home-menu-podium-compact .lectern-gilded-corner{width:19px;height:19px}
.home-menu-podium-compact .lectern-gilded-scene{opacity:.09}
.home-menu-podium-compact .lectern-controls{top:auto;bottom:2%;left:23%;width:54%;height:19%;gap:3px;color:#f9e7b9;font:8px Arial,sans-serif}
.home-menu-podium-compact .lectern-controls button{flex:none;width:28px;height:28px;font-size:15px}
.menu-podium-stage .lectern-desk{background:linear-gradient(120deg,#fff,#f1f6f2 52%,#e8f0ea);border:2px solid #d8e5dc;border-bottom:4px solid #c4d8ca;box-shadow:0 10px 24px #1f493018}
.menu-podium-stage .lectern-stem{background:linear-gradient(90deg,#edf5ee,#fff 30%,#f4f8f4 72%,#e4efe6);border-color:#dce9de;box-shadow:0 10px 18px #254a3213}
.menu-podium-stage .lectern-stem::after{background:linear-gradient(90deg,#e7f0e9,#fff 48%,#eaf3eb);border:0;box-shadow:none}
.menu-podium-stage .lectern-book{border-color:#e4e9db;box-shadow:0 2px 0 #f9f5df,0 4px 0 #cfb675,0 8px 15px #35523b24}
.menu-podium-stage .lectern-page{background:linear-gradient(105deg,#f1eee2,#fffdf5 18%,#fffefa 84%,#f4edda)}
.menu-podium-stage .lectern-page-1{background:linear-gradient(90deg,#eee8d9,#fffefa 12%,#fffdf4 82%,#f1ead8)}
.menu-podium-stage .lectern-controls{color:#0b6547}
.menu-podium-stage .lectern-controls button{background:#086044;border-color:#086044;color:#fff;box-shadow:0 2px 6px #0a4f3626}
.menu-podium-stage .lectern-controls button:hover:not(:disabled){background:#0b7853}
.menu-podium-stage .lectern-controls button:focus-visible{outline-color:#0b7853}
.food-truck-section{padding-top:10px}
.cuisine-section{padding-top:10px}
.cuisine-rail{gap:14px;align-items:stretch}
.cuisine-rail .meal-card{width:clamp(240px,27vw,300px)}
.cuisine-rail .card-photo{position:relative;height:184px}
.cuisine-rail .meal-copy{min-height:88px}
.coffee-rail .meal-card>a{display:flex;flex-direction:column;height:100%}
.coffee-rail .meal-copy{flex:1}
.coffee-brand-image{background:#f7f8f5}
.coffee-brand-image img{object-fit:contain}
.coffee-brand-logo img{box-sizing:border-box;padding:28px}
.coffee-brand-card .meal-copy strong{white-space:normal}
.coffee-brand-action{margin-top:auto;padding-top:8px;color:var(--green);font-size:12px;font-weight:700;line-height:1.3}
.coffee-brand-card>a:hover .coffee-brand-action,.coffee-brand-card>a:focus-visible .coffee-brand-action{text-decoration:underline;text-underline-offset:3px}
.truck-food-action{margin-top:auto;color:var(--green);font-size:13px;font-weight:700}
.cuisine-image-note{position:absolute;bottom:8px;right:8px;padding:3px 6px;border-radius:4px;background:#10291fc9;color:#fff;font-size:9px;font-weight:700}
.card-photo:has(.fg-product-illustration-note),.price-photo:has(.fg-product-illustration-note),.local-loyalty-photo:has(.fg-product-illustration-note),.lectern-dish-photo:has(.fg-product-illustration-note){position:relative}
.fg-product-illustration-note{z-index:1;font-size:11px;line-height:1.35;background:#10291fed}
.food-truck-section .section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px}
.food-truck-all{flex:none;padding-bottom:3px;color:var(--green);font-size:13px;font-weight:700;text-decoration:none}
.food-truck-all:hover,.food-truck-all:focus-visible{text-decoration:underline;text-underline-offset:3px}
.food-truck-feature{width:100%}
.food-truck-scene-card{display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;border:1px solid #e2eae4;border-radius:10px;background:#fff}
.food-truck-stage{position:relative;height:500px;overflow:hidden;background:#f4faf6}
.food-truck-stage canvas,.food-truck-poster{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.food-truck-stage canvas{opacity:0;touch-action:pan-y}
.food-truck-poster[hidden],.food-truck-stage canvas[hidden]{display:none}
.food-truck-glass{position:absolute;z-index:2;top:12px;right:12px;display:flex;flex-direction:column;width:276px;max-width:calc(100% - 24px);max-height:calc(100% - 24px);padding:10px;overflow:auto;overscroll-behavior:contain;border:1px solid rgba(255,255,255,.72);border-radius:16px;background:rgba(249,250,244,.52);box-shadow:0 7px 26px rgba(20,58,39,.13),inset 0 0 0 1px rgba(34,75,50,.08);backdrop-filter:blur(9px) saturate(1.16);-webkit-backdrop-filter:blur(9px) saturate(1.16);transition:width .3s ease}
.food-truck-glass.is-expanded{width:310px}
.food-truck-panel-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:5px 7px;border:0;background:transparent;color:#153c30;font:700 18px/1.25 Georgia,serif;text-align:left;cursor:pointer}
.food-truck-panel-toggle span:last-child{font:26px/1 Arial,sans-serif;transition:transform .3s ease}
.food-truck-glass.is-expanded .food-truck-panel-toggle span:last-child{transform:rotate(180deg)}
.food-truck-panel-content{max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .32s ease,opacity .22s ease,visibility .32s ease}
.food-truck-glass.is-expanded .food-truck-panel-content{max-height:280px;opacity:1;visibility:visible}
.food-truck-search{padding-top:10px}
.food-truck-search label{display:block;margin-bottom:7px;color:#153c30;font-size:12px;font-weight:700}
.food-truck-search-field{display:flex;align-items:center;gap:7px;min-height:43px;padding:4px 4px 4px 10px;border:1px solid #cdd9c7;border-radius:9px;background:rgba(255,255,255,.76)}
.food-truck-search-field>span{color:#0b6547;font-size:26px;line-height:1}
.food-truck-search-field input[type=search]{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#173f2d;font-size:13px}
.food-truck-search-field input::placeholder{color:#74877a}
.food-truck-search-field button,.food-truck-inside{border:0;border-radius:9px;background:#07513a;color:#fff;font-size:12px;font-weight:800;cursor:pointer}
.food-truck-search-field button{min-height:34px;padding:7px 10px}
.food-truck-search-field button:hover,.food-truck-inside:hover:not(:disabled){background:#0b7853}
.food-truck-shortcut-label{margin:12px 0 8px;color:#667b6e;font-size:11px;font-weight:700}
.food-truck-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.food-truck-shortcuts a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:68px;padding:5px 3px;border:1px solid rgba(34,85,54,.17);border-radius:11px;background:rgba(255,255,255,.34);color:#233e32;font-size:10px;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;transition:border-color .18s,transform .18s,box-shadow .18s}
.food-truck-shortcuts a:hover,.food-truck-shortcuts a:focus-visible{background:rgba(255,255,255,.72);border-color:#9b7a3d;box-shadow:0 4px 13px #213b3110;transform:translateY(-2px)}
.food-truck-shortcuts a svg{width:28px;height:28px;flex:none}
.food-truck-inside{display:block;width:100%;min-height:38px;margin-top:5px;flex:none}
.food-truck-inside:disabled{opacity:.6;cursor:default}
@media(prefers-reduced-motion:reduce){.food-truck-glass,.food-truck-panel-toggle span:last-child,.food-truck-panel-content{transition:none}}
.pregame-section{padding-top:10px}
.pregame-section .section-head{margin-bottom:12px}
.pregame-rail{gap:14px;align-items:stretch}
.pregame-card{width:clamp(240px,27vw,300px)}
.pregame-card[hidden]{display:none}
.pregame-card .card-photo{position:relative;height:184px}
.pregame-badge{position:absolute;left:10px;top:10px;max-width:calc(100% - 20px);padding:7px 9px;border-radius:5px;background:#612f21;color:#fff;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.pregame-card .meal-copy{min-height:104px}
.pregame-card .pregame-price-note{margin-top:auto;padding-top:6px;color:#7b8a80;font-size:11px}
.date-night-section{padding-top:10px}
.date-night-section .section-head{margin-bottom:12px}
.date-night-rail{gap:14px;align-items:stretch}
.date-night-card{width:clamp(240px,27vw,300px)}
.date-night-card[hidden]{display:none}
.date-night-card .card-photo{position:relative;height:184px}
.date-night-badge{position:absolute;left:10px;top:10px;max-width:calc(100% - 20px);padding:7px 9px;border-radius:5px;background:#123d32;color:#fff;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.date-night-card .meal-copy{min-height:104px}
.date-night-card .date-night-price-note{margin-top:auto;padding-top:6px;color:#7b8a80;font-size:11px}
.local-loyalty-section{padding-top:9px}
.local-loyalty-rail{align-items:stretch;gap:14px}
.local-loyalty-card{flex:none;width:clamp(230px,25vw,285px);overflow:hidden;border:1px solid #e1e8e2;border-radius:14px;background:#fff;box-shadow:0 3px 13px #173c2b10}
.local-loyalty-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none}
.local-loyalty-photo{display:block;height:240px;overflow:hidden;background:#edf2ec}
.local-loyalty-photo img{display:block;width:100%;height:100%;object-fit:cover}
.local-loyalty-copy{display:flex;flex:1;flex-direction:column;gap:9px;padding:15px}
.local-loyalty-copy>strong{font-size:19px;line-height:1.25}
.local-loyalty-copy>small{font-size:12px;color:#64756a;line-height:1.4}
.local-loyalty-action{display:flex;justify-content:space-between;gap:8px;margin-top:auto;padding-top:9px;color:#086557;font-size:12px;font-weight:700}
.local-loyalty-card>a:hover .local-loyalty-action,.local-loyalty-card>a:focus-visible .local-loyalty-action{text-decoration:underline}
.grocery-rail{gap:12px}
.grocery-card{width:clamp(245px,30vw,360px);border:1px solid #e4e9e5;border-radius:11px;overflow:hidden}
.grocery-card .card-photo{height:145px}
.grocery-copy{display:flex;flex-direction:column;gap:2px;padding:9px 12px}
.grocery-copy strong{font-size:17px}
.grocery-copy small{color:var(--green);font-size:13px}
.grocery-product-section{padding-top:8px}
.grocery-product-rail{gap:13px}
.grocery-product-card{flex:none;width:clamp(205px,24vw,275px);min-width:0;border:1px solid #e4e9e5;border-radius:11px;overflow:hidden;background:#fff}
.grocery-product-card a{display:block;height:100%;text-decoration:none}
.grocery-product-photo{display:block;height:178px;padding:12px;overflow:hidden;background:#f6f8f6}
.grocery-product-photo img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.grocery-product-copy{display:flex;flex-direction:column;gap:3px;padding:9px 12px 11px}
.grocery-product-copy strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:16px;line-height:1.2}
.grocery-product-copy small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--green);font-size:13px;font-weight:700}
.grocery-product-copy>span{color:var(--muted);font-size:12px}
.grocery-store-section{padding-top:8px}
.grocery-store-directory{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-columns:clamp(180px,20vw,240px);gap:9px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity;margin-right:calc(-1 * var(--gutter));padding:2px var(--gutter) 7px 0}
.grocery-store-directory::-webkit-scrollbar{display:none}
.grocery-store-link{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:67px;padding:10px 12px;border:1px solid #e2ebe5;border-radius:10px;background:#f8faf8;text-decoration:none;scroll-snap-align:start}
.grocery-store-link strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--green);font-size:15px}
.grocery-store-link small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:12px}
.search-ways{padding:11px 0 14px;border-bottom:1px solid var(--line)}
.search-ways ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px 11px;margin:0;padding:0;list-style:none}
.search-ways a{display:inline-flex;align-items:center;gap:6px;min-height:35px;color:#174734;font-size:14px;font-weight:700;text-decoration:none;text-underline-offset:3px}
.search-ways a:hover,.search-ways a:focus-visible{text-decoration:underline}
.search-ways a span{font-size:20px}
.discovery-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px 0 18px;border-bottom:1px solid var(--line)}
.discovery-tool{display:flex;flex-direction:column;min-width:0;padding:12px;border:1px solid #e2e9e5;border-radius:14px;background:#fafcfb;box-shadow:0 2px 10px #173c2b0a}
.discovery-tool header{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:28px;margin-bottom:8px}
.discovery-tool h2{margin:0;font-size:19px;line-height:1.1;letter-spacing:-.035em}
.discovery-tool header>a{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#e7f0eb;color:var(--green);font-size:19px;text-decoration:none}
.tool-swipe-preview{display:flex;flex:1;flex-direction:column;min-width:0}
.tool-swipe-status{display:flex;justify-content:space-between;gap:5px;margin-bottom:5px;color:#6e7e76;font-size:11px;font-weight:700}
.tool-swipe-product{display:flex;flex:1;flex-direction:column;min-width:0;overflow:visible;border:1px solid #e5e9e5;border-radius:10px;background:#fff;touch-action:pan-y;user-select:none;cursor:grab}
.tool-swipe-product:active{cursor:grabbing}
.tool-swipe-photo{display:grid;place-items:center;flex:1;min-height:155px;overflow:hidden;border-radius:9px 9px 0 0;background:#f1f4f1;color:#8b9e93;font-size:36px}
.tool-swipe-photo img{display:block;width:100%;height:155px;object-fit:contain;pointer-events:none}
.tool-swipe-copy{display:flex;flex-direction:column;gap:3px;min-width:0;padding:7px 9px 9px}
.tool-swipe-copy small,.tool-swipe-copy strong,.tool-swipe-copy span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.tool-swipe-copy small{color:var(--green);font-size:11px;font-weight:700}
.tool-swipe-copy strong{font-size:14px;line-height:1.15}
.tool-swipe-copy span{color:#5a6e63;font-size:12px}
.tool-swipe-actions{display:flex;gap:7px;margin-top:8px}
.tool-swipe-actions button{flex:1;min-width:0;min-height:34px;border:1px solid #d9e5df;border-radius:18px;background:#fff;color:var(--green);font-size:12px;font-weight:700;cursor:pointer}
.tool-swipe-actions button:last-child{border-color:var(--green);background:var(--green);color:#fff}
.tool-swipe-shop{width:100%;min-height:34px;margin-top:7px;padding:7px 10px;border:1px solid #d8b46a;border-radius:18px;background:#fff9e9;color:#694b0b;font-size:12px;font-weight:750;cursor:pointer}.tool-swipe-shop:hover,.tool-swipe-shop:focus-visible{background:#f8edcf;outline:2px solid #ad812e;outline-offset:2px}
.tool-swipe-message{display:grid;place-items:center;flex:1;min-height:210px;padding:12px;color:#597267;text-align:center;font-size:13px}
.tool-swipe-message button{border:0;background:none;color:var(--green);font-weight:700;text-decoration:underline;cursor:pointer}
.tool-match-photo{display:block;flex:1;min-height:170px;max-height:205px;overflow:hidden;border-radius:10px;background:#eedbd6}
.tool-match-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.tool-match-swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:10px 0 7px}
.tool-match-swatches a{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;color:#43584d;font-size:10px;font-weight:700;text-decoration:none}
.tool-match-swatches i{display:block;width:26px;height:26px;border:2px solid #fff;border-radius:50%;background:var(--shade);box-shadow:0 0 0 1px #b9c8bf}
.tool-match-swatches span{overflow:hidden;max-width:100%;white-space:nowrap;text-overflow:ellipsis}
.tool-match-open{display:block;margin-top:auto;padding:8px 9px;border-radius:18px;background:#e8f1eb;color:var(--green);font-size:12px;font-weight:700;text-align:center;text-decoration:none}
.tool-match-note{margin:6px 0 0;color:#81918a;font-size:10px;text-align:center}
.cravings{padding-top:10px}
.craving-card{flex:none;width:clamp(180px,23vw,265px);overflow:hidden;border:1px solid #e3e7e5;border-radius:10px}
.craving-card .card-photo{height:105px}
.craving-card strong{display:block;padding:6px 10px;font-size:16px}
.source-note{padding:5px 0 18px;color:#8a9499;font-size:11px}
.search-results{padding:14px 0 20px;margin:0 0 16px;border-bottom:1px solid var(--line);scroll-margin-top:15px}
.search-results[hidden]{display:none}
.search-result-head{display:flex;align-items:center;justify-content:space-between}
.search-result-head h2{margin:0;font-size:25px}
.search-result-head button{width:36px;height:36px;border:0;border-radius:50%;background:#eff2f0;color:#143f2d;font-size:24px;cursor:pointer}
.search-results p{margin:5px 0 13px;color:var(--muted);font-size:13px}
.search-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.search-result-grid .meal-card{width:100%}
.restaurant-search-grid .store-card{width:100%}
.local-search-section+.local-search-section,.local-search-section+.benji-search-section{margin-top:24px}
  .benji-search-section,.local-search-section{margin-top:14px}
  .benji-search-section>h3,.local-search-section>h3{margin:0 0 8px;color:#174734;font-size:18px}
  .benji-search-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .benji-product-card{min-width:0;overflow:hidden;border:1px solid #dce6de;border-radius:12px;background:#fff;box-shadow:0 2px 7px #163a2d0b}
  .benji-product-photo{height:190px;background:#edf3ef}
  .benji-product-photo img{display:block;width:100%;height:100%;object-fit:contain}
  .benji-product-photo-empty{display:grid;place-items:center;color:#82948a;font-size:34px}
  .benji-product-copy{padding:11px}
  .benji-product-copy>small,.benji-offers small{display:block;color:var(--muted);font-size:12px}
  .benji-product-copy h3{margin:3px 0 8px;font-size:16px;line-height:1.25}
  .benji-variant-label{display:grid;gap:4px;margin-bottom:8px;font-size:12px;font-weight:700}
  .benji-variant-select{min-height:36px;border:1px solid #dce6de;border-radius:7px;background:#fff;padding:5px 8px;color:#173c2b;font:inherit}
  .benji-offers{display:grid;gap:7px;margin:0;padding:0;list-style:none}
  .benji-offers li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 7px;padding-top:7px;border-top:1px solid #edf0ee;font-size:13px}
  .benji-offers li>b{font-size:15px;color:#174734}
  .benji-offers em{grid-column:1/-1;width:max-content;padding:3px 6px;border-radius:4px;background:#e7f4ec;color:#155536;font-size:10px;font-style:normal;font-weight:700}
  .benji-empty{padding:12px;border-radius:8px;background:#f4f7f5}
.bottom-nav{position:fixed;z-index:20;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-around;gap:4px;height:68px;padding:6px max(10px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom));border-top:1px solid #e4e9e6;background:#ffffffed;backdrop-filter:blur(14px)}
.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:58px;color:#778291;font-size:12px;text-decoration:none}
.bottom-nav a[aria-current]{color:var(--green)}
.bottom-nav a span{font-size:25px;line-height:1}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:700px){
  .food-truck-stage{height:auto;min-height:330px;padding-top:330px;overflow:visible}
  .food-truck-stage canvas,.food-truck-poster{height:330px}
  .food-truck-glass,.food-truck-glass.is-expanded{position:relative;top:auto;right:auto;bottom:auto;width:auto;min-width:0;max-width:none;max-height:none;margin:-22px 10px 10px;padding:10px;box-shadow:0 8px 26px #1d425326}
  .food-truck-scene-card{overflow:visible}
  .food-truck-search label{font-size:12px}
  .food-truck-shortcuts{gap:6px}
  .food-truck-shortcuts a{min-height:68px;font-size:10px}
  .food-truck-inside{margin-top:5px}
  .meal-tools-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(285px,78vw);grid-template-columns:none;gap:9px;overflow-x:auto;margin-right:calc(-1 * var(--gutter));padding-right:var(--gutter);scroll-snap-type:x proximity;scrollbar-width:none}
  .meal-tools-grid::-webkit-scrollbar{display:none}
  .meal-tool-panel{scroll-snap-align:start}
  .meal-tool-panel header{min-height:47px;padding:8px 10px}
  .meal-tool-panel h2{font-size:17px}
  .meal-tool-panel header a{font-size:10px}
  .meal-builder-panel iframe{height:310px}
  .menu-podium-stage{height:310px}
  .spotlights-heading{margin-bottom:10px}
  .spotlights-heading h2{font-size:27px}
  .spotlight-store-rail .editorial-spotlight,.spotlight-store-rail .store-card{width:min(74vw,300px)}
  .editorial-spotlight-photo{height:180px}
  .editorial-spotlight-copy{padding:15px 16px 17px}
  .editorial-spotlight-copy h3{font-size:28px}
  .spotlight-reveal-content p{font-size:12px}
  .spotlight-store-rail .store-card .card-photo{height:180px}
  .stores-show-all{font-size:12px}
  .site-header{padding-top:19px}
  .bag-link{width:36px;height:36px}
  .bag-link svg{width:27px;height:27px}
  .location-link{margin:6px 0 15px;font-size:16px}
  .search{height:53px;padding:0 14px}
  .search input{font-size:15px}
  .search button{font-size:12px}
  .top-nav{gap:8px;margin:13px 0 17px}
  .top-nav a{gap:5px;min-height:42px;font-size:12px}
  .top-nav a span{font-size:18px}
  .feed-section{padding-bottom:13px;margin-bottom:5px}
  .section-head{margin-bottom:6px}
  .section-head h2{font-size:25px}
  .section-head p{font-size:13px}
  .static-rail{gap:9px}
  .motion-group{gap:9px;padding-right:9px}
  .store-card,.meal-card{width:calc((100vw - 66px)/2)}
  .store-card .card-photo{height:124px}
  .store-copy{padding:8px 9px 9px}
  .store-copy strong,.meal-copy strong{font-size:13px}
  .green-link{font-size:12px}
  .green-link span{font-size:17px}
  .store-copy small{font-size:11px}
  .meal-card .card-photo{height:119px}
  .meal-copy{gap:2px;padding:7px 8px 8px}
  .meal-copy>small{font-size:11px}
  .meal-rating{gap:4px}
  .meal-rating b{font-size:11px}
  .meal-rating b span{font-size:13px}
  .meal-rating small{font-size:9px;letter-spacing:-.015em}
  .national-chain-card{width:calc((100vw - 66px)/2)}
  .national-chain-photo{height:119px}
  .national-chain-copy{gap:3px;padding:7px 8px 9px}
  .national-chain-copy strong{font-size:13px}
  .national-chain-copy small{font-size:10px}
  .national-chain-copy>span{font-size:9px;line-height:1.25}
  .price-filters{gap:6px;padding-bottom:10px}
  .price-filters button{min-height:30px;padding:5px 10px;font-size:11px}
  .price-card{width:min(72vw,270px)}
  .price-photo{height:155px}
  .price-copy{gap:3px;padding:9px 10px 11px}
  .price-copy strong{font-size:16px}
  .price-store,.price-status{font-size:10px}
  .delivery-special-card{width:min(72vw,270px)}
  .delivery-special-card .price-photo{height:155px}
  .delivery-terms{font-size:10px}
  .family-source-link{font-size:11px;line-height:1.3}
  .family-card{width:min(72vw,270px)}
  .family-card .card-photo{height:155px}
  .family-card .meal-copy{min-height:88px}
  .family-card .family-price-note{font-size:10px}
  .pregame-card{width:min(72vw,270px)}
  .pregame-card .card-photo{height:155px}
  .pregame-card .meal-copy{min-height:88px}
  .pregame-card .pregame-price-note{font-size:10px}
  .date-night-card{width:min(72vw,270px)}
  .date-night-card .card-photo{height:155px}
  .date-night-card .meal-copy{min-height:88px}
  .date-night-card .date-night-price-note{font-size:10px}
  .local-loyalty-card{width:min(68vw,260px)}
  .local-loyalty-photo{height:215px}
  .local-loyalty-copy>strong{font-size:17px}
  .grocery-card{width:58vw}
  .grocery-card .card-photo{height:112px}
  .grocery-copy strong{font-size:14px}
  .grocery-copy small{font-size:11px}
  .grocery-product-section{padding-top:5px}
  .grocery-product-rail{gap:9px}
  .grocery-product-card{width:calc((100vw - 66px)/2)}
  .grocery-product-photo{height:132px;padding:10px}
  .grocery-product-copy{padding:7px 8px 9px}
  .grocery-product-copy strong{font-size:13px}
  .grocery-product-copy small{font-size:11px}
  .grocery-product-copy>span{font-size:10px}
  .grocery-store-directory{grid-auto-columns:calc((100vw - 70px)/2);gap:7px}
  .grocery-store-link{min-height:58px;padding:8px 9px}
  .grocery-store-link strong{font-size:12px}
  .grocery-store-link small{font-size:10px}
  .search-ways{padding:9px 0 10px}
  .search-ways ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 5px}
  .search-ways a{min-height:34px;gap:4px;font-size:11px}
  .search-ways a span{font-size:16px}
  .discovery-tools{gap:8px;padding:11px 0 14px}
  .discovery-tool{padding:8px;border-radius:11px}
  .discovery-tool header{min-height:23px;margin-bottom:6px}
  .discovery-tool h2{font-size:13px;letter-spacing:-.035em}
  .discovery-tool header>a{width:22px;height:22px;font-size:15px}
  .tool-swipe-status{font-size:8px}
  .tool-swipe-photo,.tool-swipe-photo img{height:112px;min-height:112px}
  .tool-swipe-copy{gap:2px;padding:5px 6px 7px}
  .tool-swipe-copy small{font-size:9px}
  .tool-swipe-copy strong{font-size:11px}
  .tool-swipe-copy span{font-size:10px}
  .tool-swipe-actions{gap:4px;margin-top:6px}
  .tool-swipe-actions button{min-height:31px;font-size:10px}
  .tool-swipe-message{min-height:175px;font-size:11px}
  .tool-match-photo{min-height:135px;max-height:135px}
  .tool-match-swatches{gap:2px;margin:8px 0 6px}
  .tool-match-swatches i{width:20px;height:20px}
  .tool-match-swatches a{font-size:8px}
  .tool-match-open{padding:7px 5px;font-size:10px}
  .tool-match-note{font-size:8px}
  .craving-card{width:40vw}
  .craving-card .card-photo{height:83px}
  .craving-card strong{padding:5px 7px;font-size:12px}
  .search-result-grid,.benji-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .benji-product-photo{height:135px}
}
@media(max-width:370px){
  .top-nav a{font-size:11px}
  .top-nav a span{font-size:16px}
  .search-ways a{font-size:10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.community-storefront-rail{gap:12px}
.community-storefront-card{display:flex;flex:0 0 clamp(190px,25vw,260px);flex-direction:column;overflow:hidden;border:1px solid #e1e9e4;border-radius:13px;background:#fff;color:inherit;text-decoration:none}
.community-storefront-card:hover,.community-storefront-card:focus-visible{border-color:#a4c7af;box-shadow:0 3px 13px #174b3420}
.community-storefront-photo{display:block;height:145px;overflow:hidden;background:#edf2ec}
.community-storefront-photo img{width:100%;height:100%;object-fit:cover}
.community-storefront-copy{display:flex;flex-direction:column;gap:5px;padding:11px 12px 13px}
.community-storefront-copy strong{font-size:16px}
.community-storefront-copy small{color:#60736a;font-size:12px}
.community-storefront-results{display:grid;gap:8px;margin-top:12px}
.community-storefront-results:empty{display:none}
.community-storefront-results h3{margin:0 0 3px;font-size:16px}
.community-storefront-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:11px 13px;border:1px solid #e1e9e4;border-radius:11px;background:#fff;color:inherit;text-decoration:none}
.community-storefront-result strong,.community-storefront-result small{grid-column:1}
.community-storefront-result small{color:#60736a;font-size:12px}
.community-storefront-result b{grid-column:2;grid-row:1/3;align-self:center;color:#176440}
@media(max-width:760px){.community-storefront-card{flex-basis:70vw}.community-storefront-photo{height:135px}}
.fresh-grid-3d-banner{margin:4px 0 22px;perspective:1500px}
.fresh-grid-3d-banner--grocery{margin:0 0 12px}
.fresh-grid-banner-link{display:block;color:inherit;text-decoration:none;border-radius:16px}
.fresh-grid-banner-link:focus-visible{outline:3px solid #2d9854;outline-offset:4px}
.fresh-grid-banner-shell{position:relative;isolation:isolate;overflow:hidden;height:clamp(280px,29vw,380px);border-radius:16px;background:#0b140f center/cover no-repeat;box-shadow:0 18px 42px #0b211829;transform:rotateX(var(--banner-tilt-x,0deg)) rotateY(var(--banner-tilt-y,0deg));transform-style:preserve-3d;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.fresh-grid-banner-shell--inventor{background-image:url('/home/benji-inventor-poster.jpg')}
.fresh-grid-banner-shell--philly{background-image:url('/home/fresh-grid-3d-banner-poster.jpg')}
.fresh-grid-banner-shell--grocery{background-image:url('/home/benji-grocery-poster.jpg')}
.fresh-grid-banner-shell--philly::before{position:absolute;inset:0;z-index:1;content:"";background:linear-gradient(90deg,#07100de8 0%,#07100dbf 25%,#07100d42 38%,transparent 52%);pointer-events:none}
.fresh-grid-banner-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:0}
.fresh-grid-banner-copy{position:absolute;z-index:2;left:clamp(18px,4vw,48px);top:50%;width:min(360px,34%);transform:translateY(-50%);color:#fff}
.fresh-grid-banner-copy>p{margin:0 0 9px;color:#b6f8bd;font-size:11px;line-height:1.2;font-weight:800;letter-spacing:.15em}
.fresh-grid-banner-copy h1{margin:0 0 18px;color:#fff;font-size:clamp(28px,4.2vw,50px);line-height:.99;letter-spacing:-.045em;text-wrap:balance;text-shadow:0 2px 18px #0009}
.fresh-grid-banner-ask{display:inline-flex;align-items:center;gap:9px;color:#d6ffdc;font-size:15px;font-weight:800;text-shadow:0 2px 12px #000b}
.fresh-grid-banner-ask span{font-size:19px;line-height:1}
.fresh-grid-banner-link:hover .fresh-grid-banner-ask{text-decoration:underline;text-underline-offset:4px}
.fresh-grid-banner-glow{position:absolute;inset:-20%;z-index:1;background:radial-gradient(circle at var(--banner-glow-x,50%) var(--banner-glow-y,50%),#b4ffbd38,transparent 34%);mix-blend-mode:screen;pointer-events:none;transition:background-position .15s ease}
@media(max-width:700px){.fresh-grid-banner-link{border-radius:12px}.fresh-grid-3d-banner{margin:0 0 17px}.fresh-grid-3d-banner--grocery{margin:0 0 12px}.fresh-grid-banner-shell{height:clamp(190px,55vw,240px);border-radius:12px;background-position:center top}.fresh-grid-3d-banner:not(.fresh-grid-3d-banner--philly) .fresh-grid-banner-shell{height:auto;aspect-ratio:8/3}.fresh-grid-banner-video{object-position:center top}.fresh-grid-banner-copy{left:12px;right:auto;top:50%;width:34%;max-width:160px}.fresh-grid-banner-copy>p{font-size:7px;letter-spacing:.1em;margin-bottom:6px}.fresh-grid-banner-copy h1{max-width:100%;font-size:clamp(16px,4.8vw,21px);line-height:1.03;margin-bottom:8px}.fresh-grid-banner-ask{font-size:12px}}
@media(prefers-reduced-motion:reduce){.fresh-grid-banner-video{display:none}.fresh-grid-banner-shell{transform:none!important;transition:none}}
