/*!
 * Baly Site System — /food page (main consumer food-service landing).
 * Depends on bsy-chrome.css (which depends on bsy-tokens.css).
 *
 * Mirrors baly-design-system/project/taxi pages/FoodMosaic.jsx. Sections are
 * children of .bsy-page__stack (max-width + vertical gap handled by chrome).
 * Reference breakpoints: 390 / 820 / 1440. Single mobile breakpoint at 768px
 * collapses desktop grids into horizontal-scroll rails, matching the spec.
 *
 * All colors trace to a --bsy-* token except the localized rose BalyPro band
 * and the fixed accent yellow (#FFE15E) / offer-tag swatches, which are
 * intentional brand-secondary decorative colors carried over from the design.
 */

/* Shared accents reused across sections */
.bsy-page--food .bsy-food__accent { color: var(--bsy-brand); }

/* Small star eyebrow (featured) + section head CTA pill */
.bsy-page--food .bsy-food__eyebrow {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 4px 10px; border-radius: var(--bsy-radius-pill);
	background: var(--bsy-brand-lighter); color: var(--bsy-brand);
	font-size: 10.5px; font-weight: 900; letter-spacing: 0.04em;
	width: fit-content;
}
.bsy-page--food .bsy-food__head-cta {
	flex: none; align-self: flex-start;
	display: inline-flex; align-items: center; gap: 6px;
	padding: 9px 15px; border-radius: var(--bsy-radius-pill);
	background: var(--bsy-grey-100); color: var(--bsy-grey-800);
	font-size: 12.5px; font-weight: 800; text-decoration: none;
	white-space: nowrap;
}
.bsy-page--food .bsy-food__head-cta:hover { background: var(--bsy-grey-200); }

/* Generic card chrome shared by the white section blocks */
.bsy-page--food .bsy-food-cats,
.bsy-page--food .bsy-food-feat,
.bsy-page--food .bsy-food-cuisine,
.bsy-page--food .bsy-food-how {
	background: var(--bsy-white);
	border: 1px solid var(--bsy-grey-100);
	border-radius: var(--bsy-radius-2xl);
	box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 8px 24px -12px rgba(0,0,0,.10), 0 32px 60px -24px rgba(0,30,80,.18);
	direction: rtl;
}

/* ============================================================
   1. HERO
   ============================================================ */
.bsy-page--food .bsy-food-hero {
	position: relative; overflow: hidden;
	border-radius: var(--bsy-radius-3xl);
	background: linear-gradient(160deg, #0043FF 0%, #1B4CFF 55%, #355FFF 100%);
	color: #fff; direction: rtl;
	padding: 44px 48px 42px;
	display: flex; flex-direction: column; gap: 22px;
	box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 28px 60px -24px rgba(0,30,80,.45);
}
.bsy-page--food .bsy-food-hero__bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.bsy-page--food .bsy-food-hero__bg-svg { position: absolute; inset: 0; width: 100%; height: 100%; }

.bsy-page--food .bsy-food-hero__chips { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.bsy-page--food .bsy-food-hero__chip {
	position: absolute; border-radius: var(--bsy-radius-pill); overflow: hidden; background: #fff;
	box-shadow: 0 18px 32px -10px rgba(0,30,80,.45), 0 0 0 4px rgba(255,255,255,.22);
}
.bsy-page--food .bsy-food-hero__chip img { width: 100%; height: 100%; object-fit: cover; }
.bsy-page--food .bsy-food-hero__chip--a { top: 24px; inset-inline-end: 48px;  width: 130px; height: 130px; transform: rotate(-8deg); }
.bsy-page--food .bsy-food-hero__chip--b { top: 32px; inset-inline-end: 200px; width: 96px;  height: 96px;  transform: rotate(10deg); }

.bsy-page--food .bsy-food-hero__copy { position: relative; z-index: 2; max-width: 720px; }
/* Hero eyebrow uses the shared dark pill primitive */
.bsy-page--food .bsy-food-hero__copy .bsy-pill--dark { background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.22); color: #fff; }
.bsy-page--food .bsy-food-hero__copy .bsy-pill--dark .bsy-pill__dot { background: #FFE15E; box-shadow: 0 0 0 4px rgba(255,225,94,.20); }
.bsy-page--food .bsy-food-hero__title {
	margin: 18px 0 14px;
	color: #fff;
	font-weight: 900; font-size: 60px; line-height: 0.95; letter-spacing: -0.035em;
}
.bsy-page--food .bsy-food-hero__accent { color: #FFE15E; }
.bsy-page--food .bsy-food-hero__lede {
	margin: 0; max-width: 560px;
	font-size: 16px; line-height: 1.65; font-weight: 500; color: rgba(255,255,255,.88);
}

/* Search field — primary action */
.bsy-page--food .bsy-food-hero__search {
	position: relative; z-index: 2;
	display: flex; align-items: center; gap: 10px; direction: rtl;
}
.bsy-page--food .bsy-food-hero__search-field {
	flex: 1; display: flex; align-items: center; height: 68px;
	background: #fff; border-radius: var(--bsy-radius-pill);
	box-shadow: 0 1px 4px rgba(0,0,0,.06), 0 18px 40px -16px rgba(0,30,80,.32);
	padding-inline: 24px; cursor: text;
}
.bsy-page--food .bsy-food-hero__search-ic { display: inline-flex; flex: none; }
.bsy-page--food .bsy-food-hero__search-field input {
	flex: 1; min-width: 0; margin-inline-start: 12px;
	background: transparent; border: none; outline: none;
	font-family: var(--bsy-font); font-size: 16px; font-weight: 600;
	color: var(--bsy-grey-900); text-align: right;
}
.bsy-page--food .bsy-food-hero__search-btn {
	flex: none; height: 68px; padding-inline: 32px;
	display: inline-flex; align-items: center; gap: 8px;
	border-radius: var(--bsy-radius-pill); border: none;
	background: var(--bsy-black); color: #fff; text-decoration: none;
	font-size: 15px; font-weight: 900;
	box-shadow: 0 14px 30px -14px rgba(0,0,0,.55);
}
.bsy-page--food .bsy-food-hero__search-btn:hover { background: #000; }

/* Trust row */
.bsy-page--food .bsy-food-hero__trust {
	position: relative; z-index: 2;
	padding-top: 18px; border-top: 1px solid rgba(255,255,255,.18);
	display: flex; align-items: center; gap: 24px; flex-wrap: wrap;
}
.bsy-page--food .bsy-food-hero__trust-group { display: flex; align-items: center; gap: 12px; }
.bsy-page--food .bsy-food-hero__trust-txt { font-size: 12.5px; font-weight: 600; color: rgba(255,255,255,.85); line-height: 1.4; }
.bsy-page--food .bsy-food-hero__trust-txt span { color: #fff; font-weight: 900; font-size: 14px; }
.bsy-page--food .bsy-food-hero__trust-div { width: 1px; height: 22px; background: rgba(255,255,255,.18); }
.bsy-page--food .bsy-food-hero__stat { display: flex; align-items: center; gap: 8px; }
.bsy-page--food .bsy-food-hero__stat-v {
	display: inline-flex; align-items: center; gap: 4px;
	font-weight: 900; font-size: 18px; letter-spacing: -0.01em; color: #fff;
}
.bsy-page--food .bsy-food-hero__stat-l { font-size: 11.5px; font-weight: 600; color: rgba(255,255,255,.7); }

/* ============================================================
   2. CATEGORIES
   ============================================================ */
.bsy-page--food .bsy-food-cats { padding: 28px 28px 22px; }
.bsy-page--food .bsy-food-cats__head {
	display: flex; align-items: flex-end; justify-content: space-between;
	gap: 14px; flex-wrap: wrap; margin-bottom: 18px;
}
.bsy-page--food .bsy-food-cats__head-copy { display: flex; flex-direction: column; gap: 8px; }
.bsy-page--food .bsy-food-cats__title { margin: 0; font-weight: 900; font-size: 30px; letter-spacing: -0.02em; line-height: 1.1; color: var(--bsy-black); }
.bsy-page--food .bsy-food-cats__grid {
	display: grid; grid-template-columns: repeat(11, 1fr);
	gap: 20px 6px; justify-items: center;
}
.bsy-page--food .bsy-food-cat {
	display: flex; flex-direction: column; align-items: center; gap: 8px;
	text-decoration: none; color: inherit; width: 100%; max-width: 108px;
}
.bsy-page--food .bsy-food-cat__ic {
	position: relative; width: 78px; height: 78px; border-radius: var(--bsy-radius-pill);
	background: #fff; overflow: hidden;
	box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 8px 18px -10px rgba(0,30,80,.18);
	border: 1px solid var(--bsy-grey-100);
	transition: transform var(--bsy-duration-base) var(--bsy-ease-out), box-shadow var(--bsy-duration-base) var(--bsy-ease-out);
}
.bsy-page--food .bsy-food-cat:hover .bsy-food-cat__ic { transform: translateY(-3px); box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 14px 26px -10px rgba(0,30,80,.28); }
.bsy-page--food .bsy-food-cat__ic img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bsy-page--food .bsy-food-cat__t {
	font-size: 12.5px; font-weight: 700; color: var(--bsy-black);
	text-align: center; line-height: 1.2; min-height: 30px; width: 100%;
	text-wrap: balance; word-break: keep-all;
}

/* ============================================================
   3. FEATURED RESTAURANTS
   ============================================================ */
.bsy-page--food .bsy-food-feat { padding: 24px 0; overflow: hidden; }
.bsy-page--food .bsy-food-feat__head {
	padding: 0 24px; margin-bottom: 16px;
	display: flex; align-items: flex-end; justify-content: space-between;
	gap: 12px; flex-wrap: wrap;
}
.bsy-page--food .bsy-food-feat__title { margin: 8px 0 6px; font-weight: 900; font-size: 28px; line-height: 1.1; letter-spacing: -0.02em; color: var(--bsy-black); }
.bsy-page--food .bsy-food-feat__sub { margin: 0; font-size: 13px; font-weight: 500; color: var(--bsy-grey-700); line-height: 1.55; max-width: 540px; }
.bsy-page--food .bsy-food-feat__row {
	padding: 0 24px;
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;
}
.bsy-page--food .bsy-food-feat__row .bsy-food-showall { display: none; }

.bsy-page--food .bsy-food-vcard {
	background: #fff; border-radius: var(--bsy-radius-lg);
	border: 1px solid var(--bsy-grey-100); overflow: hidden; direction: rtl;
	box-shadow: 0 1px 0 rgba(0,30,80,.03); text-decoration: none; color: inherit; display: block;
	transition: transform var(--bsy-duration-base) var(--bsy-ease-out), box-shadow var(--bsy-duration-base) var(--bsy-ease-out);
}
.bsy-page--food .bsy-food-vcard:hover { transform: translateY(-3px); box-shadow: 0 18px 36px -18px rgba(0,30,80,.30); }
.bsy-page--food .bsy-food-vcard__photo { position: relative; width: 100%; height: 152px; overflow: hidden; }
.bsy-page--food .bsy-food-vcard__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bsy-page--food .bsy-food-vcard__off {
	position: absolute; top: 10px; inset-inline-start: 10px;
	padding: 4px 9px; border-radius: var(--bsy-radius-pill);
	background: #FFE15E; color: var(--bsy-black);
	font-size: 11px; font-weight: 900; box-shadow: 0 6px 14px -6px rgba(0,0,0,.20);
}
.bsy-page--food .bsy-food-vcard__eta {
	position: absolute; bottom: 10px; inset-inline-end: 10px;
	display: inline-flex; align-items: center; gap: 4px;
	padding: 4px 9px; border-radius: var(--bsy-radius-pill);
	background: rgba(255,255,255,.95); color: var(--bsy-black);
	font-size: 11px; font-weight: 800; box-shadow: 0 4px 12px -4px rgba(0,0,0,.20);
}
.bsy-page--food .bsy-food-vcard__body { padding: 12px 14px 14px; }
.bsy-page--food .bsy-food-vcard__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.bsy-page--food .bsy-food-vcard__name { font-size: 15px; font-weight: 900; color: var(--bsy-black); letter-spacing: -0.01em; }
.bsy-page--food .bsy-food-vcard__rating { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 800; color: var(--bsy-black); }
.bsy-page--food .bsy-food-vcard__cat { font-size: 12px; font-weight: 500; color: var(--bsy-grey-600); margin-top: 3px; }
.bsy-page--food .bsy-food-vcard__price {
	margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--bsy-grey-200);
	display: flex; align-items: center; justify-content: space-between;
	font-size: 11.5px; font-weight: 700; color: var(--bsy-grey-700);
}
.bsy-page--food .bsy-food-vcard__price-v { color: var(--bsy-black); font-weight: 900; }
.bsy-page--food .bsy-food-vcard__price-u { font-weight: 600; color: var(--bsy-grey-600); margin-inline-start: 3px; }

/* "Show all" trailing card (shown only inside scrolling rails) */
.bsy-page--food .bsy-food-showall {
	border-radius: var(--bsy-radius-lg);
	background: var(--bsy-brand-lighter); border: 1.5px dashed rgba(0,67,255,.28);
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	gap: 10px; padding: 18px; text-decoration: none; color: var(--bsy-brand);
	direction: rtl; text-align: center;
}
.bsy-page--food .bsy-food-showall__ic {
	width: 56px; height: 56px; border-radius: var(--bsy-radius-pill);
	background: var(--bsy-brand); color: #fff;
	display: grid; place-items: center; box-shadow: 0 12px 28px -12px rgba(0,67,255,.55);
}
.bsy-page--food .bsy-food-showall__t { font-size: 14.5px; font-weight: 900; color: var(--bsy-black); letter-spacing: -0.01em; text-wrap: balance; }
.bsy-page--food .bsy-food-showall__s { font-size: 11.5px; font-weight: 600; color: var(--bsy-grey-700); line-height: 1.5; }

/* ============================================================
   4. OFFERS
   ============================================================ */
.bsy-page--food .bsy-food-offers {
	background: var(--bsy-grey-100); border-radius: var(--bsy-radius-2xl);
	padding: 24px 24px 22px; direction: rtl;
}
.bsy-page--food .bsy-food-offers .bsy-shead { margin-bottom: 16px; }
.bsy-page--food .bsy-food-offers__row,
.bsy-page--food .bsy-food-feat__row.is-scroll {
	display: flex; gap: 14px; overflow-x: auto; overflow-y: hidden;
	scroll-snap-type: x mandatory; scrollbar-width: none;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
}
.bsy-page--food .bsy-food-offers__row::-webkit-scrollbar { display: none; }
.bsy-page--food .bsy-food-offer {
	flex: 0 0 calc((100% - 14px * 3) / 4); min-width: 220px;
	scroll-snap-align: start;
	background: #fff; border-radius: var(--bsy-radius-lg);
	border: 1px solid var(--bsy-grey-100); overflow: hidden;
	text-decoration: none; color: inherit;
}
.bsy-page--food .bsy-food-offer__photo { position: relative; width: 100%; height: 120px; overflow: hidden; }
.bsy-page--food .bsy-food-offer__photo img { width: 100%; height: 100%; object-fit: cover; }
.bsy-page--food .bsy-food-offer__tag {
	position: absolute; top: 10px; inset-inline-start: 10px;
	padding: 4px 10px; border-radius: var(--bsy-radius-pill);
	color: var(--bsy-black); font-size: 11px; font-weight: 900;
	box-shadow: 0 6px 14px -6px rgba(0,0,0,.20);
}
.bsy-page--food .bsy-food-offer__tag--gold   { background: #FFE15E; }
.bsy-page--food .bsy-food-offer__tag--coral  { background: #FF6A3D; color: #fff; }
.bsy-page--food .bsy-food-offer__tag--green  { background: #4ADE80; }
.bsy-page--food .bsy-food-offer__tag--violet { background: #A78BFA; color: #fff; }
.bsy-page--food .bsy-food-offer__body { padding: 12px 14px 14px; }
.bsy-page--food .bsy-food-offer__t { font-size: 13.5px; font-weight: 900; color: var(--bsy-black); line-height: 1.35; }
.bsy-page--food .bsy-food-offer__vendor { font-size: 11.5px; font-weight: 600; color: var(--bsy-grey-700); margin-top: 4px; }
.bsy-page--food .bsy-food-offer__ends {
	margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--bsy-grey-200);
	display: flex; align-items: center; gap: 6px;
	font-size: 11px; font-weight: 700; color: var(--bsy-error);
}
.bsy-page--food .bsy-food-showall--offers { flex: 0 0 200px; scroll-snap-align: start; min-height: 100%; }

/* ============================================================
   5. BALYPRO BAND (localized rose — does not re-bind page tokens)
   ============================================================ */
.bsy-page--food .bsy-food-pro-band {
	position: relative; overflow: hidden;
	border-radius: var(--bsy-radius-2xl);
	background: linear-gradient(135deg, #E11D48 0%, #BE123C 50%, #9F1239 100%);
	color: #fff; direction: rtl;
	padding: 34px 36px;
	display: grid; grid-template-columns: 1fr 1.1fr; gap: 28px; align-items: center;
	box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 28px 60px -24px rgba(80,10,30,.45);
}
.bsy-page--food .bsy-food-pro-band__bg {
	position: absolute; inset-inline-start: -100px; top: -100px;
	width: 320px; height: 320px; border-radius: var(--bsy-radius-pill);
	background: radial-gradient(circle, rgba(255,225,94,.30), transparent 65%);
	filter: blur(40px); pointer-events: none;
}
.bsy-page--food .bsy-food-pro-band__copy { position: relative; z-index: 2; }
.bsy-page--food .bsy-food-pro-band__pill {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 6px 12px 6px 14px; border-radius: var(--bsy-radius-pill);
	background: rgba(255,255,255,.16); border: 1px solid rgba(255,255,255,.26);
}
.bsy-page--food .bsy-food-pro-band__pill img { height: 14px; width: auto; }
.bsy-page--food .bsy-food-pro-band__pill span { font-size: 11px; font-weight: 800; color: #fff; letter-spacing: 0.04em; }
.bsy-page--food .bsy-food-pro-band__title { margin: 12px 0 10px; color: #fff; font-weight: 900; font-size: 34px; letter-spacing: -0.03em; line-height: 1.05; }
.bsy-page--food .bsy-food-pro-band__accent { color: #FFE15E; }
.bsy-page--food .bsy-food-pro-band__sub { margin: 0; font-size: 14px; line-height: 1.65; font-weight: 500; color: rgba(255,255,255,.85); max-width: 460px; }
.bsy-page--food .bsy-food-pro-band__ctas { margin-top: 20px; display: flex; gap: 10px; flex-wrap: wrap; }
.bsy-page--food .bsy-food-pro-band__btn {
	height: 46px; display: inline-flex; align-items: center; gap: 8px;
	border-radius: var(--bsy-radius-pill); text-decoration: none; font-weight: 900;
}
.bsy-page--food .bsy-food-pro-band__btn--primary { padding-inline: 22px; background: #fff; color: #E11D48; font-size: 13.5px; box-shadow: 0 10px 24px -8px rgba(0,0,0,.30); }
.bsy-page--food .bsy-food-pro-band__btn--ghost { padding-inline: 18px; background: rgba(255,255,255,.10); color: #fff; border: 1px solid rgba(255,255,255,.30); font-size: 13px; font-weight: 700; }
.bsy-page--food .bsy-food-pro-band__perks {
	position: relative; z-index: 2;
	background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.18);
	border-radius: var(--bsy-radius-lg); overflow: hidden; direction: rtl;
}
.bsy-page--food .bsy-food-pro-band__perk {
	padding: 14px 18px; display: flex; align-items: center; gap: 14px;
	border-bottom: 1px solid rgba(255,255,255,.14);
}
.bsy-page--food .bsy-food-pro-band__perk:last-child { border-bottom: none; }
.bsy-page--food .bsy-food-pro-band__perk-ic {
	width: 26px; height: 26px; border-radius: var(--bsy-radius-pill); flex: none;
	background: #FFE15E; color: #9F1239; display: grid; place-items: center;
}
.bsy-page--food .bsy-food-pro-band__perk-txt { flex: 1; }
.bsy-page--food .bsy-food-pro-band__perk-t { font-size: 14px; font-weight: 900; color: #fff; letter-spacing: -0.01em; }
.bsy-page--food .bsy-food-pro-band__perk-s { font-size: 11.5px; font-weight: 500; color: rgba(255,255,255,.75); margin-top: 2px; }

/* ============================================================
   6. BROWSE CUISINE
   ============================================================ */
.bsy-page--food .bsy-food-cuisine { padding: 24px; }
.bsy-page--food .bsy-food-cuisine__grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
.bsy-page--food .bsy-food-cuisine__tile {
	position: relative; overflow: hidden; border-radius: var(--bsy-radius-md);
	aspect-ratio: 1 / 1; text-decoration: none; color: inherit;
	background: #000; border: 1px solid var(--bsy-grey-100);
}
.bsy-page--food .bsy-food-cuisine__tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.78; transition: transform var(--bsy-duration-slow) var(--bsy-ease-out); }
.bsy-page--food .bsy-food-cuisine__tile:hover img { transform: scale(1.06); }
.bsy-page--food .bsy-food-cuisine__shade { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(0,0,0,.78) 100%); }
.bsy-page--food .bsy-food-cuisine__label { position: absolute; inset-inline-start: 0; bottom: 0; padding: 12px; color: #fff; direction: rtl; }
.bsy-page--food .bsy-food-cuisine__name { display: block; font-size: 16px; font-weight: 900; letter-spacing: -0.01em; }
.bsy-page--food .bsy-food-cuisine__count { display: block; font-size: 11.5px; font-weight: 600; color: rgba(255,255,255,.78); margin-top: 2px; }

/* ============================================================
   7. HOW IT WORKS
   ============================================================ */
.bsy-page--food .bsy-food-how { padding: 24px; }
.bsy-page--food .bsy-food-how__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.bsy-page--food .bsy-food-how__step {
	background: var(--bsy-grey-100); border: 1px solid transparent;
	border-radius: var(--bsy-radius-lg); padding: 20px; direction: rtl;
	display: flex; flex-direction: column; gap: 10px;
}
.bsy-page--food .bsy-food-how__step--first { background: var(--bsy-brand-lighter); border-color: rgba(0,67,255,.18); }
.bsy-page--food .bsy-food-how__step-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.bsy-page--food .bsy-food-how__step-n { font-weight: 900; font-size: 56px; letter-spacing: -0.04em; line-height: 0.9; color: var(--bsy-grey-300); }
.bsy-page--food .bsy-food-how__step--first .bsy-food-how__step-n { color: var(--bsy-brand); }
.bsy-page--food .bsy-food-how__step-ic {
	width: 44px; height: 44px; border-radius: var(--bsy-radius-sm); flex: none;
	background: #fff; color: var(--bsy-grey-700);
	display: grid; place-items: center; border: 1px solid var(--bsy-grey-200);
}
.bsy-page--food .bsy-food-how__step--first .bsy-food-how__step-ic { background: var(--bsy-brand); color: #fff; border-color: transparent; }
.bsy-page--food .bsy-food-how__step-t { font-size: 17px; font-weight: 900; color: var(--bsy-black); letter-spacing: -0.01em; margin-top: 4px; }
.bsy-page--food .bsy-food-how__step-s { font-size: 13px; font-weight: 500; color: var(--bsy-grey-700); line-height: 1.6; }

/* ============================================================
   8. PARTNER CTA
   ============================================================ */
.bsy-page--food .bsy-food-partner {
	position: relative; overflow: hidden;
	background: var(--bsy-brand-lighter); border-radius: var(--bsy-radius-2xl);
	padding: 36px 44px; direction: rtl; text-align: right;
	border: 1px solid rgba(0,67,255,.18);
	box-shadow: 0 1px 0 rgba(0,0,0,.04), 0 8px 24px -12px rgba(0,30,80,.10), 0 32px 60px -24px rgba(0,30,80,.16);
}
.bsy-page--food .bsy-food-partner__glow {
	position: absolute; inset-inline-end: -100px; bottom: -120px;
	width: 320px; height: 320px; border-radius: var(--bsy-radius-pill);
	background: radial-gradient(circle, rgba(0,67,255,.20), transparent 65%);
	filter: blur(30px); pointer-events: none;
}
.bsy-page--food .bsy-food-partner__mark { position: absolute; top: -10px; inset-inline-end: -16px; width: 240px; height: 200px; opacity: 0.14; pointer-events: none; }
.bsy-page--food .bsy-food-partner__mark-svg { width: 100%; height: 100%; }
.bsy-page--food .bsy-food-partner__copy { position: relative; z-index: 2; max-width: 720px; }
.bsy-page--food .bsy-food-partner__title { margin: 12px 0 10px; font-weight: 900; font-size: 32px; letter-spacing: -0.02em; line-height: 1.15; color: var(--bsy-black); }
.bsy-page--food .bsy-food-partner__sub { margin: 0; font-size: 14.5px; line-height: 1.7; font-weight: 500; color: var(--bsy-grey-700); max-width: 600px; }
.bsy-page--food .bsy-food-partner__ctas { margin-top: 22px; display: flex; gap: 10px; flex-wrap: wrap; }
.bsy-page--food .bsy-food-partner__btn {
	height: 48px; display: inline-flex; align-items: center; gap: 8px;
	border-radius: var(--bsy-radius-pill); text-decoration: none; font-weight: 900;
}
.bsy-page--food .bsy-food-partner__btn--primary { padding-inline: 24px; background: var(--bsy-brand); color: #fff; font-size: 14px; box-shadow: 0 10px 24px -10px rgba(0,67,255,.55); }
.bsy-page--food .bsy-food-partner__btn--primary:hover { background: var(--bsy-brand-hover); }
.bsy-page--food .bsy-food-partner__btn--ghost { padding-inline: 20px; background: #fff; color: var(--bsy-grey-800); border: 1px solid var(--bsy-grey-200); font-size: 13.5px; font-weight: 700; }

/* ============================================================
   RESPONSIVE — tablet (≤ 1024px): tighten the dense grids.
   ============================================================ */
@media (max-width: 1024px) {
	.bsy-page--food .bsy-food-hero__title { font-size: 46px; }
	.bsy-page--food .bsy-food-cats__grid { grid-template-columns: repeat(7, 1fr); }
	.bsy-page--food .bsy-food-feat__row { grid-template-columns: repeat(2, 1fr); }
	.bsy-page--food .bsy-food-pro-band { grid-template-columns: 1fr; }
}

/* ============================================================
   RESPONSIVE — mobile (≤ 768px): match the 390px spec.
   Dense grids become horizontal-scroll rails; the trailing
   ShowAllCard becomes visible inside each rail.
   ============================================================ */
@media (max-width: 768px) {
	.bsy-page--food .bsy-food-hero { border-radius: var(--bsy-radius-2xl); padding: 22px 18px; gap: 16px; }
	.bsy-page--food .bsy-food-hero__chips { display: none; }
	.bsy-page--food .bsy-food-hero__title { font-size: 34px; margin: 14px 0 10px; }
	.bsy-page--food .bsy-food-hero__lede { font-size: 13px; }
	.bsy-page--food .bsy-food-hero__search { flex-direction: column; gap: 0; }
	.bsy-page--food .bsy-food-hero__search-field {
		width: 100%; height: auto; padding: 12px 16px; gap: 18px;
		flex-direction: row-reverse; border: 1px solid #ECECEC;
		box-shadow: 0 4px 16px rgba(16,24,40,.05);
	}
	.bsy-page--food .bsy-food-hero__search-ic {
		width: 48px; height: 48px; border-radius: var(--bsy-radius-pill);
		background: var(--bsy-grey-50); color: var(--bsy-grey-600);
		align-items: center; justify-content: center; flex: 0 0 auto;
	}
	.bsy-page--food .bsy-food-hero__search-field input { margin-inline-start: 0; padding: 6px 4px; font-size: 16px; }
	.bsy-page--food .bsy-food-hero__search-btn { display: none; }
	.bsy-page--food .bsy-food-hero__trust { gap: 14px; padding-top: 14px; }
	.bsy-page--food .bsy-food-hero__trust-div { display: none; }
	.bsy-page--food .bsy-food-hero__stat-v { font-size: 16px; }

	.bsy-page--food .bsy-food-cats { padding: 18px 14px 14px; }
	.bsy-page--food .bsy-food-cats__title { font-size: 22px; }
	.bsy-page--food .bsy-food-cats__head .bsy-food__head-cta { display: none; }
	.bsy-page--food .bsy-food-cats__grid {
		display: flex; grid-template-columns: none; gap: 10px;
		overflow-x: auto; overflow-y: hidden; padding-bottom: 6px;
		scroll-snap-type: x mandatory; scrollbar-width: none;
		-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%);
		mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%);
	}
	.bsy-page--food .bsy-food-cats__grid::-webkit-scrollbar { display: none; }
	.bsy-page--food .bsy-food-cat { flex: 0 0 auto; width: 60px; max-width: 60px; scroll-snap-align: start; gap: 6px; }
	.bsy-page--food .bsy-food-cat__ic { width: 54px; height: 54px; }
	.bsy-page--food .bsy-food-cat__t { font-size: 9.5px; min-height: 22px; }

	.bsy-page--food .bsy-food-feat { padding: 16px 0; }
	.bsy-page--food .bsy-food-feat__head { padding: 0 16px; }
	.bsy-page--food .bsy-food-feat__title { font-size: 22px; }
	.bsy-page--food .bsy-food-feat__head .bsy-food__head-cta { display: none; }
	.bsy-page--food .bsy-food-feat__row {
		display: flex; grid-template-columns: none; gap: 12px; padding: 0 16px 6px;
		overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none;
		-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
		mask-image: linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
	}
	.bsy-page--food .bsy-food-feat__row::-webkit-scrollbar { display: none; }
	.bsy-page--food .bsy-food-vcard { flex: 0 0 240px; scroll-snap-align: start; }
	.bsy-page--food .bsy-food-vcard__photo { height: 160px; }
	.bsy-page--food .bsy-food-feat__row .bsy-food-showall { display: flex; flex: 0 0 200px; scroll-snap-align: start; }

	.bsy-page--food .bsy-food-offers { padding: 16px 14px; }
	.bsy-page--food .bsy-food-offer { flex: 0 0 240px; }

	.bsy-page--food .bsy-food-pro-band { padding: 22px 18px; gap: 18px; }
	.bsy-page--food .bsy-food-pro-band__title { font-size: 24px; }
	.bsy-page--food .bsy-food-pro-band__sub { font-size: 13px; }
	.bsy-page--food .bsy-food-pro-band__perk { padding: 12px 14px; }

	.bsy-page--food .bsy-food-cuisine { padding: 16px; }
	.bsy-page--food .bsy-food-cuisine__grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }

	.bsy-page--food .bsy-food-how { padding: 16px; }
	.bsy-page--food .bsy-food-how__grid { grid-template-columns: 1fr; gap: 10px; }
	.bsy-page--food .bsy-food-how__step { padding: 16px; }
	.bsy-page--food .bsy-food-how__step-n { font-size: 44px; }
	.bsy-page--food .bsy-food-how__step-t { font-size: 16px; }

	.bsy-page--food .bsy-food-partner { padding: 24px 18px; }
	.bsy-page--food .bsy-food-partner__title { font-size: 24px; }
	.bsy-page--food .bsy-food-partner__sub { font-size: 13px; }
	.bsy-page--food .bsy-food-partner__mark { width: 180px; height: 150px; }
}
