/* SMASH Fresh 2026 — scoped reskin. Burger pages intentionally untouched. */
:root {
  --f26-ink: #071b12;
  --f26-green: #0d3b25;
  --f26-green-bright: #3f681a;
  --f26-leaf: #91ad16;
  --f26-cream: #f3eddd;
  --f26-paper: #fffaf0;
  --f26-orange: #d94c13;
  --f26-line: rgba(7, 27, 18, .18);
  --f26-radius: 22px;
}

.fresh-page {
  color: var(--f26-ink);
  background: var(--f26-cream);
  overflow-x: clip;
}

.fresh-page .ecosystem-header.is-solid {
  position: sticky;
  top: 0;
  border-color: rgba(255,255,255,.12);
  background: rgba(5, 29, 18, .93);
  box-shadow: 0 12px 40px rgba(0,0,0,.14);
}

.fresh-page .ecosystem-nav { min-height: 78px; }
.fresh-page .fresh-nav-logo { width: 78px; min-width: 78px; height: 68px; display: grid; place-items: center; }
.fresh-page .fresh-nav-logo img { width: 74px; height: 66px; object-fit: contain; background: transparent; filter: drop-shadow(0 6px 13px rgba(0,0,0,.24)); transform: scale(1.42); }
.fresh-page .fresh-nav-logo strong { display: none; }
.fresh-page .ecosystem-links a { color: rgba(255,255,255,.72); }
.fresh-page .ecosystem-links a:hover,
.fresh-page .ecosystem-links a[aria-current="page"] { color: #fff; }
.fresh-page .ecosystem-links a[aria-current="page"]::after { background: var(--f26-leaf); }

.f26-order-nav {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  padding: 0 17px;
  border-radius: 999px;
  color: var(--f26-ink) !important;
  background: var(--f26-leaf);
}
.f26-order-nav::after { display: none; }

.f26-hero {
  position: relative;
  min-height: calc(100svh - 78px);
  display: grid;
  align-items: end;
  overflow: hidden;
  color: var(--f26-paper);
  background: var(--f26-ink);
  isolation: isolate;
}

.f26-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  background:
    radial-gradient(circle at 78% 22%, rgba(240, 90, 36, .16), transparent 26%),
    radial-gradient(circle at 72% 58%, rgba(11, 101, 64, .42), transparent 42%),
    linear-gradient(145deg, #031f17, #06462f 62%, #0b6540);
  transform: scale(1.02);
  animation: f26HeroDrift 18s ease-in-out infinite alternate;
}

.f26-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(3,24,15,.95) 0%, rgba(3,24,15,.82) 43%, rgba(3,24,15,.2) 78%),
    linear-gradient(0deg, rgba(3,24,15,.78), transparent 52%);
}

.f26-hero-grid {
  min-height: calc(100svh - 78px);
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, .54fr);
  align-items: end;
  gap: clamp(36px, 7vw, 110px);
  padding-block: clamp(92px, 12vw, 170px) 92px;
}

.f26-hero-copy { max-width: 920px; }
.f26-hero h1 {
  max-width: 900px;
  margin: 0;
  color: var(--f26-paper);
  font-family: var(--display);
  font-size: clamp(66px, 10vw, 158px);
  letter-spacing: -.055em;
  line-height: .82;
  text-wrap: balance;
}
.f26-hero .eyebrow { color: #d7e75a; }
.f26-hero-lede {
  max-width: 670px;
  margin: 28px 0 0;
  color: rgba(255,255,255,.78);
  font-size: clamp(18px, 1.65vw, 24px);
}
.f26-actions { margin-top: 34px; display: flex; flex-wrap: wrap; gap: 12px; }
.f26-btn {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 22px;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
  transition: transform .25s var(--ease), color .25s, background .25s;
}
.f26-btn:hover { transform: translateY(-3px); }
.f26-btn--primary { color: var(--f26-ink); border-color: var(--f26-leaf); background: var(--f26-leaf); }
.f26-btn--ghost { color: #fff; background: rgba(255,255,255,.07); }
.f26-btn--dark { color: var(--f26-paper); border-color: var(--f26-green); background: var(--f26-green); }
.f26-btn--orange { color: #fff; border-color: var(--f26-orange); background: var(--f26-orange); }

.f26-hero-card {
  align-self: end;
  margin-bottom: 6px;
  padding: 26px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: var(--f26-radius);
  background: rgba(3,24,15,.74);
  backdrop-filter: blur(18px);
  box-shadow: 0 28px 70px rgba(0,0,0,.25);
}
.f26-hero-card img { width: 94px; filter: drop-shadow(0 12px 30px rgba(0,0,0,.22)); }
.f26-hero-card strong { margin-top: 24px; display: block; font-family: var(--display); font-size: 34px; line-height: .96; }
.f26-hero-card p { margin: 12px 0 0; color: rgba(255,255,255,.7); }

.f26-facts {
  position: relative;
  z-index: 2;
  color: var(--f26-ink);
  background: var(--f26-leaf);
}
.f26-facts-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.f26-fact { min-height: 94px; display: flex; align-items: center; gap: 15px; padding: 20px 0; }
.f26-fact + .f26-fact { padding-left: 34px; border-left: 1px solid rgba(7,27,18,.35); }
.f26-fact b { font-family: var(--display); font-size: 28px; font-weight: 400; }
.f26-fact span { max-width: 180px; font-size: 11px; font-weight: 800; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }

.f26-section { position: relative; padding: clamp(88px, 11vw, 160px) 0; overflow: hidden; }
.f26-section--paper { background: var(--f26-paper); }
.f26-section--green { color: var(--f26-paper); background: var(--f26-green); }
.f26-section--texture {
  color: var(--f26-paper);
  background: radial-gradient(circle at 72% 24%, rgba(145,173,22,.12), transparent 30%), var(--f26-ink);
}
.f26-section--texture::before { content: ""; position: absolute; inset: 0; background: rgba(4,28,17,.82); }
.f26-section--texture > * { position: relative; }

.f26-section-head { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px, 8vw, 120px); align-items: end; }
.f26-section-head h2,
.f26-order-callout h2,
.f26-location-copy h2 {
  margin: 0;
  font-family: var(--display);
  font-size: clamp(54px, 7.4vw, 112px);
  letter-spacing: -.045em;
  line-height: .84;
  text-transform: uppercase;
  text-wrap: balance;
}
.f26-section-head > p { max-width: 600px; margin: 0 0 4px; color: rgba(7,27,18,.68); font-size: clamp(18px, 1.7vw, 24px); }
.f26-section--green .f26-section-head > p { color: rgba(255,255,255,.68); }

.f26-editorial-grid { margin-top: 64px; display: grid; grid-template-columns: 1.05fr .95fr; gap: 18px; }
.f26-story-card {
  position: relative;
  min-height: 460px;
  display: grid;
  align-items: end;
  overflow: hidden;
  border-radius: var(--f26-radius);
  background: var(--f26-green);
}
.f26-story-card--tall { min-height: 650px; grid-row: span 2; }
.f26-story-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.f26-story-card:hover img { transform: scale(1.045); }
.f26-story-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(3,24,15,.95), rgba(3,24,15,.05) 72%); }
.f26-story-copy { position: relative; z-index: 2; padding: clamp(24px, 4vw, 48px); color: #fff; }
.f26-story-copy small { color: #d5e553; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.f26-story-copy h3 { max-width: 560px; margin: 12px 0 0; font-family: var(--display); font-size: clamp(38px, 5vw, 74px); line-height: .9; text-transform: uppercase; }
.f26-story-copy p { max-width: 560px; margin: 14px 0 0; color: rgba(255,255,255,.72); }
.f26-story-price { margin-top: 22px; display: inline-flex; padding: 8px 12px; color: var(--f26-ink); background: var(--f26-leaf); font-weight: 900; }

.f26-menu-preview { margin-top: 60px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid currentColor; }
.f26-menu-preview .fresh-feature-card { padding-inline: 0 30px; }
.f26-menu-preview .fresh-feature-card:nth-child(odd) { padding-right: 36px; border-right: 1px solid currentColor; }
.f26-menu-preview .fresh-feature-card:nth-child(even) { padding-left: 36px; }
.f26-menu-preview .fresh-feature-card strong { color: #d7e75a !important; }

.f26-order-band { position: relative; padding: clamp(84px, 10vw, 140px) 0; overflow: hidden; color: var(--f26-paper); background: var(--f26-orange); }
.f26-order-band::before { content: "SMASH / FRESH"; position: absolute; right: -3vw; bottom: -4vw; color: rgba(255,255,255,.075); font-family: var(--display); font-size: clamp(100px, 19vw, 300px); line-height: .7; white-space: nowrap; }
.f26-order-callout { position: relative; display: grid; grid-template-columns: 1fr .58fr; gap: clamp(45px, 8vw, 120px); align-items: end; }
.f26-order-callout p { max-width: 580px; margin: 24px 0 0; font-size: 20px; }
.f26-order-callout .f26-btn { width: 100%; min-height: 66px; color: var(--f26-orange); border-color: var(--f26-paper); background: var(--f26-paper); }

.f26-location { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); min-height: 720px; }
.f26-location > * { min-width: 0; }
.f26-location-photo { min-height: 620px; background: linear-gradient(145deg, #031f17, #0b6540); }
.f26-location-copy { display: grid; align-content: center; padding: clamp(46px, 7vw, 110px); color: var(--f26-paper); background: var(--f26-ink); }
.f26-location-copy p { max-width: 520px; margin: 24px 0 0; color: rgba(255,255,255,.7); font-size: 19px; }

.f26-mobile-bar { display: none; }

/* Menu */
.fresh-menu-hero.f26-menu-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(100px, 12vw, 164px) 0 70px;
  background: var(--f26-ink);
  isolation: isolate;
}
.f26-menu-hero::before { content: ""; position: absolute; inset: 0; z-index: -2; background: radial-gradient(circle at 82% 25%, rgba(240,90,36,.22), transparent 24%), linear-gradient(145deg, #031f17, #06462f); opacity: 1; }
.f26-menu-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, var(--f26-ink) 0 48%, rgba(7,27,18,.28)); }
.fresh-menu-hero.f26-menu-hero h1 { max-width: 900px; font-size: clamp(64px, 9vw, 136px); }
.f26-menu-badges { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 8px; }
.f26-menu-badges span { padding: 8px 11px; border: 1px solid rgba(255,255,255,.3); border-radius: 999px; color: rgba(255,255,255,.78); font-size: 10px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.fresh-page .fresh-menu-tools { top: 78px; padding: 12px 0; background: rgba(243,237,221,.97); }
.fresh-page .fresh-category-buttons button { border-radius: 999px; }
.fresh-page .fresh-category-buttons button.is-active { border-color: var(--f26-green); background: var(--f26-green); }
.fresh-page .fresh-search input { border-radius: 999px; }
.fresh-page .fresh-menu-surface { background: var(--f26-cream); }
.fresh-page .fresh-menu-card { border-color: var(--f26-line); transition: background .2s; }
.fresh-page .fresh-menu-card:hover { background: rgba(255,255,255,.48); }
.fresh-page .fresh-menu-card strong.is-daily-price,
.fresh-page .fresh-feature-card strong.is-daily-price { max-width: 120px; white-space: normal; font-family: var(--body); font-size: 11px; font-weight: 900; letter-spacing: .08em; line-height: 1.2; text-align: right; text-transform: uppercase; }
.f26-menu-order-card { margin-top: 70px; display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: center; padding: 34px; border-radius: var(--f26-radius); color: var(--f26-paper); background: var(--f26-green); }
.f26-menu-order-card h2 { margin: 0; font-family: var(--display); font-size: clamp(36px, 5vw, 64px); line-height: .9; text-transform: uppercase; }
.f26-menu-order-card p { max-width: 620px; margin: 12px 0 0; color: rgba(255,255,255,.68); }

/* Customer ordering app */
.f26-order-page { background: var(--f26-cream); }
.f26-order-hero { padding: 86px 0 44px; color: var(--f26-paper); background: var(--f26-ink); }
.f26-order-hero h1 { max-width: 920px; margin: 0; font-family: var(--display); font-size: clamp(58px, 8vw, 118px); letter-spacing: -.045em; line-height: .84; text-transform: uppercase; }
.f26-order-hero p:not(.eyebrow) { max-width: 680px; margin: 22px 0 0; color: rgba(255,255,255,.72); font-size: 19px; }
.f26-zone-pill { margin-top: 24px; display: inline-flex; align-items: center; gap: 9px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.26); border-radius: 999px; font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.f26-zone-pill::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--f26-leaf); box-shadow: 0 0 0 5px rgba(145,173,22,.15); }
.f26-order-layout { padding: 48px 0 140px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .46fr); gap: 34px; align-items: start; }
.f26-order-menu { display: grid; gap: 50px; }
.f26-order-category h2 { margin: 0 0 18px; font-family: var(--display); font-size: 46px; line-height: .95; text-transform: uppercase; }
.f26-order-items { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.f26-order-item { min-height: 190px; display: grid; grid-template-rows: 1fr auto; gap: 18px; padding: 22px; border: 1px solid var(--f26-line); border-radius: 18px; background: rgba(255,255,255,.52); }
.f26-order-item h3 { margin: 0; font-family: var(--display); font-size: 28px; line-height: 1; text-transform: uppercase; }
.f26-order-item p { margin: 10px 0 0; color: rgba(7,27,18,.64); font-size: 14px; }
.f26-order-item footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.f26-order-item strong { color: var(--f26-orange); font-family: var(--display); font-size: 25px; }
.f26-add { min-height: 42px; padding: 0 16px; border: 0; border-radius: 999px; color: #fff; background: var(--f26-green); font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.f26-add[disabled] { color: rgba(7,27,18,.55); background: rgba(7,27,18,.09); cursor: not-allowed; }
.f26-cart { position: sticky; top: 96px; overflow: hidden; border: 1px solid var(--f26-line); border-radius: var(--f26-radius); background: var(--f26-paper); box-shadow: 0 24px 60px rgba(7,27,18,.12); }
.f26-cart-head { padding: 24px; color: var(--f26-paper); background: var(--f26-green); }
.f26-cart-head h2 { margin: 0; font-family: var(--display); font-size: 34px; text-transform: uppercase; }
.f26-cart-body { padding: 22px; }
.f26-cart-empty { margin: 0; color: rgba(7,27,18,.58); }
.f26-cart-line { display: grid; grid-template-columns: 1fr auto; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--f26-line); }
.f26-cart-line h3 { margin: 0; font-size: 14px; }
.f26-cart-line small { color: rgba(7,27,18,.6); }
.f26-qty { margin-top: 9px; display: flex; align-items: center; gap: 8px; }
.f26-qty button { width: 30px; height: 30px; border: 1px solid var(--f26-line); border-radius: 50%; color: var(--f26-ink); background: transparent; }
.f26-cart-total { padding: 18px 0; display: flex; justify-content: space-between; font-weight: 900; }
.f26-cart-total strong { color: var(--f26-orange); font-family: var(--display); font-size: 30px; }
.f26-checkout { margin-top: 12px; display: grid; gap: 14px; }
.f26-checkout h3 { margin: 14px 0 2px; font-family: var(--display); font-size: 28px; text-transform: uppercase; }
.f26-field { display: grid; gap: 6px; }
.f26-field span { font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.f26-field input,
.f26-field textarea { width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid rgba(7,27,18,.26); border-radius: 11px; color: var(--f26-ink); background: #fff; font: inherit; }
.f26-field textarea { min-height: 84px; resize: vertical; }
.f26-address-grid { display: grid; grid-template-columns: 1.4fr repeat(3, .7fr); gap: 9px; }
.f26-pickup-point { display: grid; gap: 5px; padding: 16px; border: 1px solid rgba(7,27,18,.16); border-radius: 14px; background: rgba(145,173,22,.12); }
.f26-pickup-point span { font-size: 10px; font-weight: 900; letter-spacing: .09em; }
.f26-pickup-point strong { font-family: var(--display); font-size: 24px; text-transform: uppercase; }
.f26-pickup-point p { margin: 0; color: rgba(7,27,18,.62); font-size: 12px; }
.f26-check { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; font-size: 12px; }
.f26-check input { margin-top: 3px; accent-color: var(--f26-green); }
.f26-submit { width: 100%; min-height: 56px; border: 0; border-radius: 999px; color: #fff; background: var(--f26-orange); font-size: 12px; font-weight: 900; letter-spacing: .09em; }
.f26-submit:disabled { opacity: .45; cursor: not-allowed; }
.f26-order-terms { margin: 0; color: rgba(7,27,18,.55); font-size: 11px; }
.f26-form-error { padding: 11px; border-left: 4px solid #ad190f; color: #741107; background: #ffe9e4; font-size: 12px; }
.f26-success { padding: 36px; border-radius: var(--f26-radius); color: var(--f26-paper); background: var(--f26-green); }
.f26-success h2 { margin: 0; font-family: var(--display); font-size: 48px; line-height: .9; text-transform: uppercase; }
.f26-success-code { margin-top: 24px; display: grid; gap: 5px; padding: 20px; color: var(--f26-ink); background: var(--f26-leaf); }
.f26-success-code span { font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.f26-success-code strong { font-family: var(--display); font-size: 44px; }

/* Operator board */
.f26-operator { min-height: 100vh; color: var(--f26-paper); background: #06120d; }
.f26-operator-shell { width: min(1500px, calc(100% - 36px)); margin: 0 auto; padding: 28px 0 60px; }
.f26-operator-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.f26-operator-head h1 { margin: 0; font-family: var(--display); font-size: clamp(42px, 6vw, 84px); line-height: .9; }
.f26-operator-head p { margin: 8px 0 0; color: rgba(255,255,255,.58); }
.f26-operator-status { display: flex; align-items: center; gap: 9px; padding: 10px 14px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; font-size: 11px; }
.f26-operator-status::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: #e5a824; }
.f26-operator-status.is-live::before { background: #84bd3e; }
.f26-login { max-width: 460px; margin: 90px auto; padding: 30px; border: 1px solid rgba(255,255,255,.14); border-radius: var(--f26-radius); background: rgba(255,255,255,.05); }
.f26-login h2 { margin: 0 0 22px; font-family: var(--display); font-size: 40px; }
.f26-login .f26-field input { color: #fff; border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.07); }
.f26-login .f26-field + .f26-field { margin-top: 14px; }
.f26-login button { margin-top: 18px; }
.f26-board { margin-top: 34px; display: grid; grid-template-columns: repeat(4, minmax(260px,1fr)); gap: 14px; align-items: start; overflow-x: auto; }
.f26-lane { min-height: 540px; padding: 12px; border-radius: 18px; background: rgba(255,255,255,.055); }
.f26-lane-head { padding: 10px 7px 16px; display: flex; justify-content: space-between; font-size: 11px; font-weight: 900; letter-spacing: .1em; }
.f26-ticket { margin-bottom: 10px; padding: 17px; border-radius: 14px; color: var(--f26-ink); background: var(--f26-paper); }
.f26-ticket.is-new { border-top: 5px solid var(--f26-orange); }
.f26-ticket h3 { margin: 0; font-family: var(--display); font-size: 28px; }
.f26-ticket-meta { margin-top: 4px; display: flex; justify-content: space-between; gap: 10px; color: rgba(7,27,18,.58); font-size: 11px; }
.f26-ticket-items { margin: 14px 0; padding: 12px 0; border-block: 1px solid var(--f26-line); font-size: 13px; }
.f26-ticket-items div + div { margin-top: 5px; }
.f26-ticket address { font-style: normal; font-size: 12px; }
.f26-ticket-actions { margin-top: 14px; display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.f26-ticket-actions button { min-height: 38px; border: 0; border-radius: 999px; color: #fff; background: var(--f26-green); font-size: 10px; font-weight: 900; }
.f26-ticket-actions .is-cancel { color: #8c1b12; background: #f5d8d4; }

@keyframes f26HeroDrift { from { transform: scale(1.02) translate3d(0,0,0); } to { transform: scale(1.07) translate3d(-.7%, -.4%, 0); } }

@media (max-width: 1040px) {
  .f26-hero-grid { grid-template-columns: 1fr; }
  .f26-hero-card { max-width: 390px; }
  .f26-section-head { grid-template-columns: 1fr; }
  .f26-editorial-grid { grid-template-columns: 1fr; }
  .f26-story-card--tall { grid-row: auto; min-height: 540px; }
  .f26-order-layout { grid-template-columns: 1fr; }
  .f26-cart { position: static; }
  .f26-board { grid-template-columns: repeat(4, 300px); }
}

@media (max-width: 760px) {
  body.fresh-page { padding-bottom: 78px; }
  .fresh-page .ecosystem-nav { min-height: 68px; grid-template-columns: auto 1fr; }
  .fresh-page .fresh-nav-logo { width: 66px; min-width: 66px; height: 60px; }
  .fresh-page .fresh-nav-logo img { width: 64px; height: 58px; transform: scale(1.65); }
  .fresh-page .fresh-nav-logo strong { font-size: 18px; }
  .fresh-page .nav-actions { justify-self: end; }
  .fresh-page .concept-context,
  .fresh-page .ecosystem-links,
  .fresh-page .nav-toggle { display: none; }
  .fresh-page .language-shell { min-width: 64px; }
  .fresh-page .language-shell select { height: 40px; }
  .f26-hero { min-height: 770px; }
  .f26-hero::after { background: linear-gradient(0deg, rgba(3,24,15,.97) 0 48%, rgba(3,24,15,.25) 85%); }
  .f26-hero-grid { min-height: 770px; padding-block: 200px 60px; }
  .f26-hero h1 { font-size: clamp(58px, 18vw, 92px); }
  .f26-hero-lede { font-size: 17px; }
  .f26-hero-card { display: none; }
  .f26-actions { display: grid; grid-template-columns: 1fr; }
  .f26-btn { width: 100%; }
  .f26-facts-grid { grid-template-columns: 1fr; }
  .f26-fact { min-height: 76px; }
  .f26-fact + .f26-fact { padding-left: 0; border-top: 1px solid rgba(7,27,18,.3); border-left: 0; }
  .f26-section-head h2,
  .f26-order-callout h2,
  .f26-location-copy h2 { font-size: clamp(52px, 15vw, 76px); }
  .f26-editorial-grid { margin-top: 38px; }
  .f26-story-card,
  .f26-story-card--tall { min-height: 440px; }
  .f26-menu-preview { grid-template-columns: 1fr; }
  .f26-menu-preview .fresh-feature-card:nth-child(n) { padding-inline: 0; border-right: 0; }
  .f26-menu-preview .fresh-feature-card::before { display: none; }
  .f26-order-callout { grid-template-columns: 1fr; }
  .f26-location { width: 100%; grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .f26-location-photo { min-height: 500px; }
  .f26-location-copy { padding-inline: 24px; }
  .f26-location-copy h2 { overflow-wrap: anywhere; }
  .f26-mobile-bar { position: fixed; z-index: 150; right: 10px; bottom: max(10px, env(safe-area-inset-bottom)); left: 10px; min-height: 64px; display: grid; grid-template-columns: repeat(3,1fr); padding: 7px; border: 1px solid rgba(255,255,255,.16); border-radius: 22px; color: #fff; background: rgba(5,24,16,.96); box-shadow: 0 15px 50px rgba(0,0,0,.36); backdrop-filter: blur(18px); }
  .f26-mobile-bar a { display: grid; place-items: center; border-radius: 16px; font-size: 10px; font-weight: 900; letter-spacing: .05em; }
  .f26-mobile-bar a.is-primary { color: var(--f26-ink); background: var(--f26-leaf); }
  .fresh-menu-hero.f26-menu-hero { padding-top: 86px; }
  .fresh-page .fresh-menu-tools { top: 68px; }
  .fresh-page .fresh-search { grid-template-columns: 1fr; }
  .fresh-page .menu-count { display: none; }
  .fresh-page .fresh-menu-group > header { grid-template-columns: 1fr; }
  .fresh-page .fresh-menu-grid { grid-template-columns: 1fr; }
  .fresh-page .fresh-menu-card { min-height: 0; padding: 24px 18px 24px 40px; }
  .fresh-page .fresh-menu-card:nth-child(odd) { border-right: 0; }
  .fresh-page .fresh-menu-card h3 { font-size: 28px; }
  .fresh-page .fresh-menu-card strong { font-size: 23px; }
  .f26-menu-order-card { grid-template-columns: 1fr; padding: 26px; }
  .f26-order-hero { padding-top: 64px; }
  .f26-order-layout { padding-top: 28px; }
  .f26-order-items { grid-template-columns: 1fr; }
  .f26-order-item { min-height: 0; }
  .f26-address-grid { grid-template-columns: 1fr 1fr; }
  .f26-cart-body { padding: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .f26-hero::before { animation: none; }
  .f26-story-card img,
  .f26-btn { transition: none; }
}

@media print {
  .ecosystem-header,
  .f26-mobile-bar,
  .fresh-menu-tools,
  .ecosystem-footer,
  .f26-menu-order-card { display: none !important; }
  .fresh-menu-hero.f26-menu-hero { padding: 20px 0; color: #000; background: #fff; }
  .fresh-page .fresh-menu-surface { padding: 20px 0; background: #fff; }
}

/* Public Fresh experience --------------------------------------------------
   Deliberately scoped away from the unlisted ordering and operations shells. */
.fresh-page.fresh-public {
  --fp-abyss: #031f17;
  --fp-night: #04291d;
  --fp-canopy: #06462f;
  --fp-leaf: #0b6540;
  --fp-orange: #f05a24;
  --fp-orange-hot: #ff8233;
  --fp-mist: #f2f6f1;
  --fp-line: rgba(242, 246, 241, .16);
  color: var(--fp-mist);
  background: var(--fp-abyss);
  color-scheme: dark;
}

.fresh-public .ecosystem-header.is-solid {
  border-color: rgba(240, 90, 36, .2);
  background: rgba(3, 31, 23, .9);
  box-shadow: 0 16px 50px rgba(0, 0, 0, .28);
  backdrop-filter: blur(20px) saturate(1.15);
}
.fresh-public .ecosystem-links a { color: rgba(242, 246, 241, .68); }
.fresh-public .ecosystem-links a:hover,
.fresh-public .ecosystem-links a[aria-current="page"] { color: var(--fp-mist); }
.fresh-public .ecosystem-links a[aria-current="page"]::after { background: var(--fp-orange); }
.fresh-public .fresh-nav-logo strong { color: var(--fp-mist); }
.fresh-public .concept-context b { color: var(--fp-orange-hot); }
.fresh-public .language-shell { color: var(--fp-mist); }
.fresh-public .language-shell select { border-color: rgba(242, 246, 241, .24); background: rgba(242, 246, 241, .06); }
.fresh-public :focus-visible { outline: 3px solid var(--fp-orange-hot); outline-offset: 4px; }
.fresh-public ::selection { color: var(--fp-abyss); background: var(--fp-orange-hot); }

.fresh-public .f26-btn {
  border-radius: 4px;
  transition: transform .28s cubic-bezier(.2,.8,.2,1), background .28s ease, color .28s ease, box-shadow .28s ease;
}
.fresh-public .f26-btn:hover { transform: translateY(-3px); }
.fresh-public .f26-btn--primary {
  color: var(--fp-abyss);
  border-color: var(--fp-orange);
  background: var(--fp-orange);
  box-shadow: 0 14px 40px rgba(240, 90, 36, .2);
}
.fresh-public .f26-btn--primary:hover { background: var(--fp-orange-hot); }
.fresh-public .f26-btn--ghost { color: var(--fp-mist); border-color: rgba(242,246,241,.45); background: rgba(3,31,23,.28); }
.fresh-public .f26-btn--ghost:hover { border-color: var(--fp-orange-hot); background: rgba(240,90,36,.12); }

/* Plate-film hero */
.fresh-public .f26-hero {
  min-height: calc(100svh - 78px);
  align-items: center;
  color: var(--fp-mist);
  background:
    radial-gradient(circle at 82% 18%, rgba(240,90,36,.2), transparent 24%),
    radial-gradient(circle at 68% 72%, rgba(11,101,64,.45), transparent 38%),
    linear-gradient(135deg, var(--fp-abyss), var(--fp-canopy));
}
.fresh-public .f26-hero::before {
  background:
    linear-gradient(rgba(242,246,241,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(242,246,241,.025) 1px, transparent 1px);
  background-size: 72px 72px;
  transform: none;
  animation: none;
}
.fresh-public .f26-hero::after {
  background: linear-gradient(90deg, rgba(3,31,23,.54), transparent 46%, rgba(3,31,23,.18));
}
.fresh-public .f26-hero-grid {
  position: relative;
  z-index: 2;
  min-height: calc(100svh - 78px);
  grid-template-columns: minmax(0, .92fr) minmax(330px, .72fr);
  align-items: center;
  gap: clamp(36px, 7vw, 112px);
  padding-block: clamp(56px, 8vw, 104px);
}
.fresh-public .f26-hero-copy {
  max-width: 840px;
  text-shadow: 0 18px 42px rgba(0,0,0,.42);
}
.fresh-public .f26-hero h1 {
  max-width: 820px;
  color: #fffaf0;
  font-size: clamp(70px, 9.5vw, 146px);
  text-shadow: 0 12px 34px rgba(0,0,0,.48);
}
.fresh-public .f26-hero .eyebrow { color: var(--fp-orange-hot); }
.fresh-public .f26-hero-lede { color: rgba(242,246,241,.72); }
.f26-hero-orbit { position: absolute; inset: 0; z-index: 1; overflow: hidden; pointer-events: none; }
.f26-hero-orbit span { position: absolute; top: 50%; right: -9vw; width: clamp(420px, 56vw, 880px); aspect-ratio: 1; border: 1px solid rgba(240,90,36,.16); border-radius: 50%; transform: translateY(-50%); animation: f26OrbitBreathe 12s ease-in-out infinite; }
.f26-hero-orbit span:nth-child(2) { width: clamp(300px, 42vw, 660px); animation-delay: -4s; }
.f26-hero-orbit span:nth-child(3) { width: clamp(180px, 28vw, 440px); animation-delay: -8s; }

.f26-plate-stage { position: relative; width: min(100%, 500px); justify-self: end; margin: 0; }
.f26-plate-viewport {
  position: relative;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  border: 1px solid rgba(242,246,241,.24);
  border-radius: 34px 4px 34px 4px;
  background: #05261c;
  box-shadow: 0 44px 100px rgba(0,0,0,.42), 18px 18px 0 rgba(240,90,36,.13);
  transform: perspective(1100px) rotateY(-4deg) rotateZ(1.2deg);
  transition: transform .7s cubic-bezier(.2,.8,.2,1), box-shadow .7s ease;
}
.f26-plate-stage:hover .f26-plate-viewport,
.f26-plate-stage:focus-within .f26-plate-viewport { transform: perspective(1100px) rotateY(0) rotateZ(0) translateY(-6px); box-shadow: 0 54px 120px rgba(0,0,0,.5), 10px 10px 0 rgba(240,90,36,.26); }
.f26-plate-poster,
.f26-plate-film { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.f26-plate-poster img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.f26-plate-poster { opacity: 1; transition: opacity .45s ease; }
.f26-plate-film { opacity: 0; transition: opacity .45s ease; }
.f26-plate-stage.has-film .f26-plate-film { opacity: 1; }
.f26-plate-stage.has-film .f26-plate-poster { opacity: 0; }
.f26-plate-stage.is-paused .f26-plate-film { opacity: .92; }
.f26-plate-scan { position: absolute; inset: -20% 0 auto; height: 22%; background: linear-gradient(transparent, rgba(240,90,36,.16), transparent); mix-blend-mode: screen; animation: f26PlateScan 6.5s linear infinite; pointer-events: none; }
.f26-plate-label { position: absolute; z-index: 3; padding: 7px 9px; color: var(--fp-mist); border-left: 2px solid var(--fp-orange); background: rgba(3,31,23,.74); font-size: 9px; font-weight: 900; letter-spacing: .12em; backdrop-filter: blur(8px); }
.f26-plate-label--one { top: 12%; left: 7%; }
.f26-plate-label--two { top: 48%; right: 6%; }
.f26-plate-label--three { right: 7%; bottom: 12%; }
.f26-film-toggle { position: absolute; z-index: 4; right: 18px; bottom: 18px; width: 48px; height: 48px; display: grid; place-items: center; color: var(--fp-mist); border: 1px solid rgba(242,246,241,.45); border-radius: 50%; background: rgba(3,31,23,.78); backdrop-filter: blur(10px); }
.f26-film-toggle[hidden] { display: none !important; }
.f26-film-toggle span { font-size: 14px; font-weight: 900; }
.f26-plate-stage figcaption { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 22px 2px 0; }
.f26-plate-stage figcaption span { color: var(--fp-orange-hot); font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.f26-plate-stage figcaption strong { max-width: 260px; font-family: var(--display); font-size: 22px; line-height: .95; text-align: right; text-transform: uppercase; }

.fresh-public .f26-facts { color: var(--fp-abyss); background: var(--fp-orange); }
.fresh-public .f26-fact + .f26-fact { border-color: rgba(3,31,23,.32); }

/* Public story fields remain saturated: no white or cream canvases. */
.fresh-public .f26-section--forest,
.fresh-public .f26-section--paper { color: var(--fp-mist); background: var(--fp-night); }
.fresh-public .f26-section--green { color: var(--fp-mist); background: var(--fp-canopy); }
.fresh-public .f26-section-head > p,
.fresh-public .f26-section--green .f26-section-head > p { color: rgba(242,246,241,.68); }
.fresh-public .f26-section-head .eyebrow { color: var(--fp-orange-hot); }
.fresh-public .f26-story-card { border: 1px solid var(--fp-line); border-radius: 30px 4px 30px 4px; background: var(--fp-abyss); box-shadow: 0 28px 74px rgba(0,0,0,.24); }
.fresh-public .f26-story-card img { filter: saturate(.94) contrast(1.04); }
.fresh-public .f26-story-card:hover img,
.fresh-public .f26-story-card:focus-within img { transform: scale(1.055); filter: saturate(1.06) contrast(1.04); }
.fresh-public .f26-story-copy small { color: var(--fp-orange-hot); }
.fresh-public .f26-story-price { color: var(--fp-abyss); background: var(--fp-orange); }
.fresh-public .f26-menu-preview { border-color: rgba(242,246,241,.24); }
.fresh-public .f26-menu-preview .fresh-feature-card { border-color: rgba(242,246,241,.24); }
.fresh-public .f26-menu-preview .fresh-feature-card strong { color: var(--fp-orange-hot) !important; }
.fresh-public .f26-menu-preview .fresh-feature-card p { color: rgba(242,246,241,.66); opacity: 1; }

/* Daypart sequence */
.f26-daypart-band { position: relative; overflow: hidden; padding: clamp(90px, 11vw, 156px) 0; color: var(--fp-abyss); background: var(--fp-orange); }
.f26-daypart-band::before { content: "—13 / 13—20"; position: absolute; right: -2vw; bottom: -5vw; color: rgba(3,31,23,.08); font-family: var(--display); font-size: clamp(150px, 24vw, 360px); line-height: .7; pointer-events: none; }
.f26-daypart-head { position: relative; max-width: 900px; }
.f26-daypart-head .eyebrow { color: var(--fp-abyss); }
.f26-daypart-head h2 { margin: 8px 0 0; font-family: var(--display); font-size: clamp(62px, 9vw, 138px); letter-spacing: -.045em; line-height: .82; text-transform: uppercase; }
.f26-daypart-track { position: relative; margin-top: 64px; display: grid; grid-template-columns: 1fr 1fr; border-top: 2px solid var(--fp-abyss); }
.f26-daypart-track article { display: grid; grid-template-columns: auto 1fr; gap: 26px; padding: 34px 34px 10px 0; }
.f26-daypart-track article + article { padding-left: 34px; border-left: 1px solid rgba(3,31,23,.32); }
.f26-daypart-track article > span { font-family: var(--display); font-size: clamp(30px, 4vw, 54px); line-height: .9; }
.f26-daypart-track h3 { margin: 0; font-family: var(--display); font-size: clamp(30px, 3.5vw, 50px); line-height: .9; text-transform: uppercase; }
.f26-daypart-track p { max-width: 490px; margin: 14px 0 0; color: rgba(3,31,23,.72); }

/* CSS/DOM 2.5D façade */
.fresh-public .f26-location { min-height: 760px; grid-template-columns: minmax(0, 1.18fr) minmax(390px, .82fr); color: var(--fp-mist); background: var(--fp-abyss); }
.f26-facade-wrap { min-width: 0; display: grid; place-items: center; padding: clamp(34px, 6vw, 90px); overflow: hidden; background: radial-gradient(circle at 50% 46%, rgba(240,90,36,.15), transparent 42%), linear-gradient(145deg, #052b20, #021611); perspective: 1300px; }
.f26-facade {
  position: relative;
  width: min(100%, 860px);
  aspect-ratio: 16 / 11;
  overflow: hidden;
  border: 1px solid rgba(242,246,241,.18);
  background:
    linear-gradient(rgba(242,246,241,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(242,246,241,.035) 1px, transparent 1px),
    linear-gradient(145deg, #0a5639, #043222 64%, #021c15);
  background-size: 44px 44px, 44px 44px, auto;
  box-shadow: 0 48px 100px rgba(0,0,0,.42);
  transform: rotateX(.8deg) rotateY(-1.2deg);
  transform-style: preserve-3d;
  transition: transform .7s cubic-bezier(.2,.8,.2,1), box-shadow .7s ease;
}
.f26-facade:hover,
.f26-facade:focus-within,
.f26-facade.is-open { transform: rotateX(0) rotateY(0) translateY(-5px); box-shadow: 0 60px 130px rgba(0,0,0,.52), 0 0 80px rgba(240,90,36,.08); }
.f26-facade::before { content: ""; position: absolute; inset: auto 0 0; height: 17%; background: linear-gradient(#07291f, #031812); border-top: 1px solid rgba(242,246,241,.12); }
.f26-facade::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 32%, rgba(242,246,241,.045) 46%, transparent 61%); transform: translateX(-100%); transition: transform 1s ease; pointer-events: none; }
.f26-facade:hover::after,
.f26-facade:focus-within::after { transform: translateX(100%); }
.f26-facade-canopy { position: absolute; z-index: 3; top: 24%; left: 4%; right: 4%; height: 9%; display: grid; grid-template-columns: repeat(5,1fr); border-bottom: 4px solid var(--fp-orange); box-shadow: 0 20px 30px rgba(0,0,0,.32); transform: translateZ(34px); }
.f26-facade-canopy span:nth-child(odd) { background: #06261c; }
.f26-facade-canopy span:nth-child(even) { background: #0d6543; }
.f26-facade-sign { position: absolute; z-index: 2; top: 5%; left: 50%; display: grid; justify-items: center; transform: translateX(-50%) translateZ(18px); text-align: center; }
.f26-facade-sign strong { font-family: var(--display); font-size: clamp(38px, 5.2vw, 76px); line-height: .76; letter-spacing: -.04em; }
.f26-facade-sign > span { color: var(--fp-orange-hot); font-family: var(--display); font-size: clamp(20px, 2.2vw, 34px); font-style: italic; line-height: 1; }
.f26-facade-sign small { margin-top: 5px; color: rgba(242,246,241,.58); font-size: 7px; font-weight: 900; letter-spacing: .18em; }
.f26-facade-window { position: absolute; z-index: 1; bottom: 17%; width: 27%; height: 45%; overflow: hidden; border: 5px solid #05261c; background: radial-gradient(circle at 48% 60%, rgba(240,90,36,.2), transparent 25%), linear-gradient(145deg, rgba(242,246,241,.08), rgba(2,20,15,.92)); box-shadow: inset 0 0 55px rgba(0,0,0,.46); }
.f26-facade-window::after { content: ""; position: absolute; inset: -30% 45% -30% 32%; width: 12%; background: rgba(242,246,241,.12); transform: rotate(22deg); }
.f26-facade-window span { position: absolute; right: 12px; bottom: 12px; color: rgba(242,246,241,.48); font-size: 8px; font-weight: 900; letter-spacing: .13em; writing-mode: vertical-rl; }
.f26-facade-window--left { left: 6%; }
.f26-facade-window--right { right: 6%; }
.f26-door-frame { position: absolute; z-index: 4; bottom: 17%; left: 50%; width: 27%; height: 54%; border: 6px solid #032017; border-top-color: var(--fp-orange); background: #021710; box-shadow: 0 0 38px rgba(240,90,36,.13), inset 0 0 40px rgba(240,90,36,.13); transform: translateX(-50%) translateZ(28px); perspective: 850px; }
.f26-door-welcome { position: absolute; inset: 0; display: grid; place-content: center; gap: 8px; padding: 20px; color: var(--fp-mist); background: radial-gradient(circle at 50% 40%, rgba(240,90,36,.28), transparent 44%), #031d16; text-align: center; }
.f26-door-welcome small { color: var(--fp-orange-hot); font-size: 8px; font-weight: 900; letter-spacing: .16em; }
.f26-door-welcome strong { font-family: var(--display); font-size: clamp(19px, 2.2vw, 32px); line-height: .9; }
.f26-facade-door { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; color: inherit; background: linear-gradient(135deg, rgba(242,246,241,.12), rgba(3,38,28,.92) 44%, rgba(2,22,16,.98)); box-shadow: inset 0 0 0 1px rgba(242,246,241,.14), 18px 0 28px rgba(0,0,0,.22); transform-origin: left center; transform-style: preserve-3d; transition: transform .85s cubic-bezier(.17,.84,.26,1), filter .35s ease; cursor: pointer; }
.f26-facade:hover .f26-facade-door,
.f26-facade-door:hover,
.f26-facade-door:focus-visible { transform: rotateY(-12deg); filter: brightness(1.08); }
.f26-facade.is-open .f26-facade-door { transform: rotateY(-54deg); filter: brightness(.88); }
.f26-door-glass { position: absolute; inset: 7% 9% 44%; border: 1px solid rgba(242,246,241,.2); background: linear-gradient(118deg, rgba(242,246,241,.18), rgba(242,246,241,.025) 46%, rgba(240,90,36,.08)); }
.f26-door-rail { position: absolute; left: 9%; right: 9%; bottom: 10%; height: 28%; border: 1px solid rgba(242,246,241,.12); background: repeating-linear-gradient(90deg, rgba(242,246,241,.035) 0 1px, transparent 1px 20px); }
.f26-door-handle { position: absolute; top: 45%; right: 11%; width: 5px; height: 24%; border-radius: 8px; background: var(--fp-orange-hot); box-shadow: 0 0 18px rgba(240,90,36,.5); transform: translateZ(15px); }
.f26-facade-step { position: absolute; z-index: 5; right: 28%; bottom: 10%; left: 28%; height: 7%; background: linear-gradient(#0b4a34, #02140f); clip-path: polygon(4% 0, 96% 0, 100% 100%, 0 100%); box-shadow: 0 18px 24px rgba(0,0,0,.45); }
.f26-facade-hint { position: absolute; z-index: 6; left: 6%; bottom: 7%; display: flex; align-items: center; gap: 10px; color: rgba(242,246,241,.58); font-size: 8px; letter-spacing: .14em; }
.f26-facade-hint span { width: 24px; height: 1px; background: var(--fp-orange); animation: f26HintPulse 2.2s ease-in-out infinite; }
.fresh-public .f26-location-copy { color: var(--fp-mist); background: linear-gradient(145deg, var(--fp-canopy), var(--fp-abyss)); }
.fresh-public .f26-location-copy p { color: rgba(242,246,241,.7); }

/* Dark, photo-aware public menu */
.fresh-public .fresh-menu-hero.f26-menu-hero { padding: clamp(76px, 9vw, 116px) 0; color: var(--fp-mist); background: linear-gradient(135deg, var(--fp-abyss), var(--fp-canopy)); }
.fresh-public .f26-menu-hero::before { background: radial-gradient(circle at 80% 20%, rgba(240,90,36,.2), transparent 26%), linear-gradient(rgba(242,246,241,.02) 1px, transparent 1px), linear-gradient(90deg, rgba(242,246,241,.02) 1px, transparent 1px); background-size: auto, 64px 64px, 64px 64px; }
.fresh-public .f26-menu-hero::after { background: linear-gradient(90deg, rgba(3,31,23,.78), transparent 60%); }
.f26-menu-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .36fr); gap: clamp(38px, 7vw, 100px); align-items: center; }
.fresh-public .fresh-menu-hero.f26-menu-hero h1 {
  max-width: 12ch;
  color: var(--fp-mist);
  font-family: "SMASH Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(54px, 7.2vw, 110px);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .94;
  text-wrap: balance;
}
.fresh-public .fresh-menu-hero.f26-menu-hero p:not(.eyebrow) { color: rgba(242,246,241,.7); }
.f26-menu-hero-plate { position: relative; width: min(100%, 330px); justify-self: end; margin: 0; }
.f26-menu-hero-plate img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 48%; border: 1px solid rgba(242,246,241,.22); border-radius: 26px 3px 26px 3px; box-shadow: 18px 18px 0 rgba(240,90,36,.16), 0 34px 80px rgba(0,0,0,.35); }
.f26-menu-hero-plate figcaption { position: absolute; right: 14px; bottom: 14px; left: 14px; display: flex; align-items: end; justify-content: space-between; gap: 12px; padding: 13px; background: rgba(3,31,23,.78); backdrop-filter: blur(10px); }
.f26-menu-hero-plate figcaption span { color: var(--fp-orange-hot); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.f26-menu-hero-plate figcaption strong { max-width: 160px; font-family: var(--display); font-size: 18px; line-height: .9; text-align: right; }
.fresh-public .f26-menu-badges span { border-color: rgba(242,246,241,.26); color: rgba(242,246,241,.76); background: rgba(3,31,23,.32); }

.fresh-public .fresh-menu-tools { top: 78px; color: var(--fp-mist); border-color: rgba(240,90,36,.2); background: rgba(3,31,23,.94); }
.fresh-public .fresh-search-input input { color: var(--fp-mist); border: 1px solid rgba(242,246,241,.2); background: rgba(242,246,241,.055); }
.fresh-public .fresh-search-input input::placeholder { color: rgba(242,246,241,.48); }
.fresh-public .fresh-category-buttons button { color: rgba(242,246,241,.68); border-color: rgba(242,246,241,.18); background: rgba(242,246,241,.045); border-radius: 3px; }
.fresh-public .fresh-category-buttons button:hover { color: var(--fp-mist); border-color: var(--fp-orange); }
.fresh-public .fresh-category-buttons button.is-active { color: var(--fp-abyss); border-color: var(--fp-orange); background: var(--fp-orange); }
.fresh-public .menu-count { color: var(--fp-orange-hot); }
.fresh-public .fresh-menu-surface { color: var(--fp-mist); background: linear-gradient(180deg, var(--fp-night), var(--fp-abyss)); }
.fresh-public .fresh-menu-group + .fresh-menu-group { margin-top: 108px; }
.fresh-public .fresh-menu-group > header { border-color: var(--fp-orange); }
.fresh-public .fresh-section-number { color: var(--fp-orange-hot); }
.fresh-public .availability-badge { color: var(--fp-abyss); background: var(--fp-orange); }
.fresh-public .fresh-menu-grid { gap: 14px; border: 0; }
.fresh-public .fresh-menu-card {
  min-height: 220px;
  grid-template-columns: minmax(145px, .52fr) minmax(0, 1fr) auto;
  grid-template-areas: "media copy price";
  align-items: stretch;
  gap: 24px;
  padding: 0 24px 0 0;
  overflow: hidden;
  color: var(--fp-mist);
  border: 1px solid rgba(242,246,241,.12) !important;
  border-radius: 22px 3px 22px 3px;
  background: rgba(6,70,47,.48);
  transition: transform .32s cubic-bezier(.2,.8,.2,1), border-color .32s ease, background .32s ease;
}
.fresh-public .fresh-menu-card:hover { transform: translateY(-4px); border-color: rgba(240,90,36,.55) !important; background: rgba(11,101,64,.58); }
.fresh-public .fresh-menu-card::before { z-index: 3; top: 12px; left: 12px; padding: 5px 7px; color: var(--fp-mist); background: var(--fp-orange); }
.fresh-public .fresh-menu-card-media { grid-area: media; position: relative; min-height: 218px; overflow: hidden; background: #05271d; }
.fresh-public .fresh-menu-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease; }
.fresh-public .fresh-menu-card:hover .fresh-menu-card-media img { transform: scale(1.055); filter: saturate(1.08); }
.fresh-public .fresh-menu-card-media.is-sprite { background-repeat: no-repeat; transition: filter .4s ease; }
.fresh-public .fresh-menu-card:hover .fresh-menu-card-media.is-sprite { filter: saturate(1.08) contrast(1.03); }
.fresh-public .fresh-menu-card-media.is-placeholder { display: grid; place-items: end start; padding: 18px; background: radial-gradient(circle at 72% 30%, rgba(240,90,36,.2), transparent 24%), repeating-linear-gradient(135deg, rgba(242,246,241,.035) 0 1px, transparent 1px 18px), linear-gradient(145deg, #0b6540, #03241a); }
.fresh-public .fresh-menu-card-media.is-placeholder::before { content: "SMASH"; position: absolute; top: 50%; left: 50%; color: rgba(242,246,241,.055); font-family: var(--display); font-size: clamp(54px, 7vw, 92px); transform: translate(-50%,-50%) rotate(-90deg); }
.fresh-public .fresh-menu-card-media.is-placeholder span { position: relative; color: var(--fp-orange-hot); font-size: 8px; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
.fresh-public .fresh-menu-card > div:not(.fresh-menu-card-media) { grid-area: copy; align-self: center; padding-block: 24px; }
.fresh-public .fresh-menu-card h3 {
  max-width: 22ch;
  color: var(--fp-mist);
  font-family: "SMASH Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(24px, 2.05vw, 32px);
  font-weight: 650;
  letter-spacing: -.015em;
  line-height: 1.08;
  overflow-wrap: normal;
  text-wrap: balance;
}
.fresh-public .fresh-menu-card p { color: rgba(242,246,241,.63); }
.fresh-public .fresh-menu-card > strong { grid-area: price; align-self: center; color: var(--fp-orange-hot); }
.fresh-public .fresh-menu-card strong.is-daily-price { color: var(--fp-orange-hot); }
.fresh-public .menu-note { color: rgba(242,246,241,.58); border-color: rgba(242,246,241,.15); }
.fresh-public .menu-note--addons {
  margin-top: 12px;
  padding: 14px 16px;
  color: var(--fp-mist);
  border: 1px solid rgba(240,90,36,.46);
  border-left: 5px solid var(--fp-orange);
  background: rgba(240,90,36,.12);
  font-weight: 800;
}
.fresh-public .menu-empty { color: var(--fp-mist); background: rgba(6,70,47,.4); }
.f26-menu-visit-card { margin-top: 72px; display: grid; grid-template-columns: 1fr auto; gap: 34px; align-items: end; padding: clamp(30px, 5vw, 62px); color: var(--fp-mist); border: 1px solid rgba(242,246,241,.16); border-left: 8px solid var(--fp-orange); background: radial-gradient(circle at 86% 25%, rgba(240,90,36,.18), transparent 25%), var(--fp-canopy); }
.f26-menu-visit-card h2 { margin: 6px 0 0; font-family: var(--display); font-size: clamp(48px, 7vw, 94px); line-height: .84; text-transform: uppercase; }
.f26-menu-visit-card p:not(.eyebrow) { max-width: 620px; margin: 18px 0 0; color: rgba(242,246,241,.68); }

.fresh-public .ecosystem-footer { color: var(--fp-mist); background: #01150e; }
.fresh-public .f26-mobile-bar { border-color: rgba(240,90,36,.24); background: rgba(3,31,23,.95); }
.fresh-public .f26-mobile-bar a.is-primary { color: var(--fp-abyss); background: var(--fp-orange); }

/* Vector-derived living brand layer */
.f26-background-logo {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 52%;
  width: clamp(420px, 58vw, 920px);
  height: auto;
  opacity: .075;
  filter: saturate(1.2) drop-shadow(0 0 60px rgba(145,173,22,.22));
  transform: translate(-50%,-50%) rotate(-8deg);
  pointer-events: none;
  user-select: none;
  animation: f26LogoFloat 14s ease-in-out infinite alternate;
}
.f26-background-logo--menu { z-index: 1; left: 77%; width: clamp(360px, 44vw, 700px); opacity: .06; transform: translate(-50%,-50%) rotate(7deg); }
.fresh-public .f26-hero-copy h1,
.fresh-public .f26-location-copy h2,
.fresh-public .f26-story-copy h3,
.fresh-public .f26-section-title,
.fresh-public .f26-menu-visit-card h2 {
  font-family: "SMASH Oswald", "Arial Narrow", sans-serif;
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .96;
  text-wrap: balance;
}
@keyframes f26LogoFloat {
  0% { transform: translate(-50%,-52%) rotate(-8deg) scale(.96); opacity: .055; }
  55% { opacity: .09; }
  100% { transform: translate(-50%,-47%) rotate(5deg) scale(1.045); opacity: .07; }
}

@keyframes f26OrbitBreathe { 0%,100% { opacity: .45; transform: translateY(-50%) scale(.96); } 50% { opacity: 1; transform: translateY(-50%) scale(1.03); } }
@keyframes f26PlateScan { from { transform: translateY(-20%); } to { transform: translateY(650%); } }
@keyframes f26HintPulse { 0%,100% { transform: scaleX(.5); transform-origin: left; } 50% { transform: scaleX(1); transform-origin: left; } }

@media (min-width: 1041px) and (max-width: 1280px) {
  .fresh-public .f26-location { grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr); }
  .fresh-public .f26-location-copy { padding: 54px 38px; }
  .fresh-public .f26-location-copy h2 { font-size: clamp(54px, 6vw, 76px); }
}

@media (max-width: 1040px) {
  .fresh-public .f26-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(300px, .62fr); gap: 36px; }
  .fresh-public .f26-hero h1 { font-size: clamp(64px, 10vw, 108px); }
  .fresh-public .f26-location { grid-template-columns: 1fr; }
  .f26-facade-wrap { min-height: 680px; }
  .f26-menu-hero-grid { grid-template-columns: minmax(0,1fr) 260px; }
  .fresh-public .fresh-menu-card { grid-template-columns: 140px minmax(0,1fr); grid-template-areas: "media copy" "media price"; }
  .fresh-public .fresh-menu-card > strong { align-self: start; padding-bottom: 22px; }
}

@media (max-width: 760px) {
  body.fresh-public { padding-bottom: 78px; }
  .fresh-public .ecosystem-nav { min-height: 68px; }
  .fresh-public .concept-context,
  .fresh-public .ecosystem-links,
  .fresh-public .nav-toggle { display: none; }
  .fresh-public .f26-hero { min-height: auto; }
  .fresh-public .f26-hero::after { background: linear-gradient(0deg, rgba(3,31,23,.52), transparent 55%); }
  .fresh-public .f26-hero-grid { min-height: auto; grid-template-columns: 1fr; padding-block: 76px 62px; }
  .fresh-public .f26-hero h1 { font-size: clamp(58px, 17vw, 88px); }
  .fresh-public .f26-hero-lede { font-size: 17px; }
  .fresh-public .f26-actions { display: grid; grid-template-columns: 1fr; }
  .fresh-public .f26-btn { width: 100%; }
  .f26-plate-stage { width: min(100%, 420px); justify-self: center; margin-top: 20px; }
  .f26-plate-viewport { aspect-ratio: 9 / 16; transform: none; }
  .f26-plate-stage figcaption { align-items: start; }
  .f26-plate-stage figcaption strong { font-size: 19px; }
  .fresh-public .f26-facts-grid { grid-template-columns: 1fr; }
  .fresh-public .f26-fact + .f26-fact { border-top: 1px solid rgba(3,31,23,.3); border-left: 0; }
  .fresh-public .f26-section-head h2,
  .fresh-public .f26-location-copy h2 { font-size: clamp(52px, 15vw, 76px); }
  .fresh-public .f26-editorial-grid { grid-template-columns: 1fr; }
  .fresh-public .f26-story-card,
  .fresh-public .f26-story-card--tall { min-height: 460px; }
  .fresh-public .f26-menu-preview { grid-template-columns: 1fr; }
  .fresh-public .f26-menu-preview .fresh-feature-card:nth-child(n) { padding-inline: 0; border-right: 0; }
  .f26-daypart-head h2 { font-size: clamp(58px, 16vw, 82px); }
  .f26-daypart-track { grid-template-columns: 1fr; }
  .f26-daypart-track article { grid-template-columns: 82px 1fr; padding: 28px 0; }
  .f26-daypart-track article + article { padding-left: 0; border-top: 1px solid rgba(3,31,23,.32); border-left: 0; }
  .f26-daypart-track h3 { font-size: 34px; }
  .fresh-public .f26-location { width: 100%; grid-template-columns: 1fr; min-height: 0; }
  .f26-facade-wrap { min-height: 520px; padding: 24px 16px; }
  .f26-facade { aspect-ratio: 4 / 5; transform: none; }
  .f26-facade-canopy { top: 25%; }
  .f26-facade-sign { top: 7%; }
  .f26-facade-window { bottom: 15%; width: 26%; height: 45%; }
  .f26-door-frame { bottom: 15%; width: 34%; height: 54%; }
  .f26-facade-step { right: 25%; bottom: 8%; left: 25%; }
  .f26-facade-hint { bottom: 5%; }
  .fresh-public .f26-location-copy { padding-inline: 24px; }
  .fresh-public .f26-mobile-bar { display: grid; }
  .fresh-public .smash-assist__bubble { bottom: 92px; }
  .fresh-public .smash-assist__hint { bottom: calc(92px + 56px + 12px); }
  .fresh-public .fresh-menu-hero.f26-menu-hero { padding: 76px 0 56px; }
  .f26-menu-hero-grid { grid-template-columns: 1fr; }
  .f26-menu-hero-plate { width: min(76vw, 310px); justify-self: start; margin-top: 18px; }
  .fresh-public .fresh-menu-tools { top: 68px; }
  .fresh-public .fresh-search { grid-template-columns: 1fr; }
  .fresh-public .menu-count { display: none; }
  .fresh-public .fresh-menu-group > header { grid-template-columns: 1fr; }
  .fresh-public .fresh-menu-grid { grid-template-columns: 1fr; }
  .fresh-public .fresh-menu-card {
    min-height: 168px;
    grid-template-columns: 112px minmax(0,1fr);
    grid-template-rows: 1fr auto;
    grid-template-areas: "media copy" "media price";
    gap: 0 18px;
    padding: 0 18px 0 0;
  }
  .fresh-public .fresh-menu-card-media { min-height: 166px; }
  .fresh-public .fresh-menu-card > div:not(.fresh-menu-card-media) { padding: 22px 0 10px; }
  .fresh-public .fresh-menu-card h3 { max-width: none; font-size: 22px; line-height: 1.1; }
  .fresh-public .fresh-menu-card p { margin-top: 8px; font-size: 13px; }
  .fresh-public .fresh-menu-card > strong { padding-bottom: 18px; font-size: 23px; }
  .f26-menu-visit-card { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .fresh-public *,
  .fresh-public *::before,
  .fresh-public *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .fresh-public [data-reveal] { opacity: 1; transform: none; }
  .fresh-public .f26-plate-viewport,
  .fresh-public .f26-plate-stage:hover .f26-plate-viewport,
  .fresh-public .f26-facade,
  .fresh-public .f26-facade:hover { transform: none; }
  .fresh-public .f26-facade-door,
  .fresh-public .f26-facade:hover .f26-facade-door,
  .fresh-public .f26-facade.is-open .f26-facade-door { transform: none; }
  .fresh-public .f26-facade.is-open .f26-facade-door { opacity: .24; }
  .fresh-public .f26-plate-film { display: none; }
  .fresh-public .f26-plate-poster { opacity: 1 !important; }
}

/* Truthful East Gate location photography and resident-plan entry. */
.f26-place-visual {
  position: relative;
  min-width: 0;
  min-height: 760px;
  overflow: hidden;
  isolation: isolate;
  background: var(--fp-canopy);
}
.f26-place-visual::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(180deg, rgba(3,31,23,.04) 34%, rgba(3,31,23,.82) 100%);
  pointer-events: none;
}
.f26-place-visual > img {
  width: 100%;
  height: 100%;
  min-height: 760px;
  object-fit: cover;
  object-position: 53% 48%;
  filter: saturate(.94) contrast(1.03);
  transform: scale(1.015);
  transition: transform 1.2s cubic-bezier(.16,1,.3,1), filter .8s ease;
}
.f26-place-visual:hover > img,
.f26-place-visual:focus-within > img { transform: scale(1.065) translate3d(-.7%, -.4%, 0); filter: saturate(1.06) contrast(1.04); }
.f26-visual-note {
  position: absolute;
  z-index: 4;
  left: clamp(18px, 4vw, 54px);
  bottom: calc(clamp(18px, 4vw, 54px) + 104px);
  max-width: min(76%, 390px);
  padding: 8px 11px;
  color: rgba(255,250,240,.86);
  border: 1px solid rgba(255,250,240,.22);
  border-radius: 999px;
  background: rgba(3,31,23,.66);
  box-shadow: 0 14px 38px rgba(0,0,0,.24);
  backdrop-filter: blur(10px);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.f26-place-glint {
  position: absolute;
  z-index: 2;
  inset: -30% 45% -30% -22%;
  background: linear-gradient(105deg, transparent 37%, rgba(255,255,255,.18) 48%, transparent 58%);
  transform: translateX(-70%);
  transition: transform 1.1s cubic-bezier(.16,1,.3,1);
  pointer-events: none;
}
.f26-place-visual:hover .f26-place-glint,
.f26-place-visual:focus-within .f26-place-glint { transform: translateX(190%); }
.f26-map-chip {
  position: absolute;
  z-index: 3;
  right: clamp(18px, 4vw, 54px);
  bottom: clamp(18px, 4vw, 54px);
  left: clamp(18px, 4vw, 54px);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 6px 18px;
  align-items: center;
  padding: 20px 22px;
  color: var(--fp-mist);
  border: 1px solid rgba(242,246,241,.32);
  border-left: 5px solid var(--fp-orange);
  background: rgba(3,31,23,.82);
  box-shadow: 0 22px 60px rgba(0,0,0,.28);
  backdrop-filter: blur(18px) saturate(1.1);
  transition: transform .3s ease, border-color .3s ease, background .3s ease;
}
.f26-map-chip:hover { color: var(--fp-mist); border-color: var(--fp-orange); background: rgba(3,31,23,.94); transform: translateY(-4px); }
.f26-map-chip small { color: var(--fp-orange-hot); font-size: 8px; font-weight: 900; letter-spacing: .17em; }
.f26-map-chip strong { grid-column: 1; font-size: 12px; letter-spacing: .08em; }
.f26-map-chip b { grid-row: 1 / span 2; grid-column: 2; font-size: 24px; }
.f26-location-points { margin: 26px 0 32px; padding: 0; display: grid; gap: 13px; list-style: none; }
.f26-location-points li { position: relative; padding-left: 24px; color: rgba(242,246,241,.82); font-weight: 700; }
.f26-location-points li::before { content: ""; position: absolute; left: 0; top: .64em; width: 11px; height: 2px; background: var(--fp-orange); }

@media (max-width: 1040px) {
  .f26-place-visual,
  .f26-place-visual > img { min-height: 620px; }
}
@media (max-width: 760px) {
  .f26-place-visual,
  .f26-place-visual > img { min-height: 500px; }
  .f26-map-chip { padding: 16px; }
  .f26-map-chip strong { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .f26-place-visual > img,
  .f26-place-visual:hover > img,
  .f26-place-glint { transition: none !important; transform: none !important; }
}

@media print {
  .fresh-public { color: #031f17; background: #fff; color-scheme: light; }
  .fresh-public .f26-menu-hero-plate,
  .fresh-public .f26-menu-visit-card,
  .fresh-public .f26-facade-wrap { display: none; }
}

/* Launch polish: make the Fresh menu read like a menu, with media supporting the text. */
.fresh-public {
  max-width: 100%;
}

.fresh-public img,
.fresh-public video,
.fresh-public picture {
  max-width: 100%;
}

.fresh-public .f26-hero h1,
.fresh-public .fresh-menu-hero.f26-menu-hero h1,
.fresh-public .f26-section-head h2,
.fresh-public .f26-location-copy h2,
.fresh-public .f26-menu-visit-card h2 {
  letter-spacing: 0;
}

.fresh-public .fresh-menu-card {
  min-height: 178px;
  grid-template-columns: minmax(96px, 132px) minmax(0, 1fr) minmax(82px, auto);
  gap: 20px;
  border-radius: 8px;
  background: rgba(6,70,47,.36);
}

.fresh-public .fresh-menu-card-media {
  min-height: 176px;
}

.fresh-public .fresh-menu-card h3 {
  max-width: 28ch;
  font-family: var(--body);
  font-size: clamp(22px, 1.55vw, 29px);
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.12;
  text-transform: none;
}

.fresh-public .fresh-menu-card p {
  max-width: 58ch;
  color: rgba(242,246,241,.74);
  font-size: 15px;
  line-height: 1.46;
}

.fresh-public .fresh-menu-card > strong {
  font-family: var(--body);
  font-size: clamp(22px, 1.8vw, 30px);
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}

.fresh-menu-benefits {
  margin: 14px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  list-style: none;
}

.fresh-menu-benefits li {
  padding: 5px 8px;
  color: rgba(242,246,241,.82);
  border: 1px solid rgba(242,246,241,.18);
  border-radius: 999px;
  background: rgba(3,31,23,.36);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.fresh-public .fresh-feature-card::before,
.fresh-public .fresh-menu-card::before {
  display: none;
}

.fresh-public .fresh-menu-card {
  cursor: pointer;
}

.fresh-public .fresh-menu-card:focus-visible {
  outline: 3px solid var(--fp-orange-hot);
  outline-offset: 4px;
}

.fresh-menu-card-action {
  width: fit-content;
  margin-top: 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  color: var(--fp-orange-hot);
  border: 1px solid rgba(240, 90, 36, .42);
  border-radius: 999px;
  background: rgba(240, 90, 36, .1);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.fresh-menu-card-action::after {
  content: "↗";
  transform: translateY(-1px);
}

.fresh-product-modal-open {
  overflow: hidden;
}

.fresh-product-modal {
  position: fixed;
  z-index: 300;
  inset: 0;
  display: grid;
  place-items: center;
  padding: clamp(14px, 3vw, 38px);
  background: rgba(1, 12, 8, .72);
  opacity: 0;
  backdrop-filter: blur(12px);
  transition: opacity .22s ease;
}

.fresh-product-modal[hidden] {
  display: none;
}

.fresh-product-modal.is-open {
  opacity: 1;
}

.fresh-product-modal-panel {
  position: relative;
  width: min(1060px, 100%);
  max-height: min(760px, 92svh);
  display: grid;
  grid-template-columns: minmax(280px, .86fr) minmax(0, 1fr);
  overflow: hidden;
  color: var(--fp-mist);
  border: 1px solid rgba(242, 246, 241, .18);
  border-radius: 30px 4px 30px 4px;
  background: linear-gradient(140deg, rgba(7, 46, 33, .98), rgba(3, 31, 23, .98));
  box-shadow: 0 34px 100px rgba(0, 0, 0, .55);
  transform: translateY(18px) scale(.98);
  transition: transform .26s cubic-bezier(.2,.8,.2,1);
  user-select: none;
  -webkit-user-select: none;
}

.fresh-product-modal.is-open .fresh-product-modal-panel {
  transform: none;
}

.fresh-product-modal-media {
  min-height: 520px;
  position: relative;
  overflow: hidden;
  background: radial-gradient(circle at 50% 42%, rgba(240, 90, 36, .22), transparent 32%), #042318;
  background-repeat: no-repeat;
}

.fresh-product-modal-media img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  filter: saturate(1.06) contrast(1.03);
}

.fresh-product-modal-media.is-sprite {
  background-repeat: no-repeat;
}

.fresh-product-modal-media.is-placeholder {
  display: grid;
  place-items: center;
}

.fresh-product-modal-media.is-placeholder span {
  color: var(--fp-orange-hot);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.fresh-product-modal-copy {
  min-width: 0;
  padding: clamp(28px, 5vw, 58px);
  display: grid;
  align-content: center;
  gap: 20px;
}

.fresh-product-modal-copy h2 {
  margin: 0;
  color: var(--fp-mist);
  font-family: "SMASH Oswald", "Arial Narrow", sans-serif;
  font-size: clamp(46px, 6.4vw, 92px);
  font-weight: 800;
  line-height: .92;
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.fresh-product-modal-copy p:not(.eyebrow) {
  margin: 0;
  color: rgba(242, 246, 241, .76);
  font-size: clamp(15px, 1.6vw, 18px);
  line-height: 1.52;
}

.fresh-product-modal-prices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.fresh-product-modal-prices div {
  min-height: 82px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 14px;
  border: 1px solid rgba(242, 246, 241, .14);
  background: rgba(242, 246, 241, .055);
}

.fresh-product-modal-prices span {
  color: rgba(242, 246, 241, .62);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.fresh-product-modal-prices strong {
  color: var(--fp-orange-hot);
  font-size: clamp(20px, 2.4vw, 30px);
  line-height: .95;
}

.fresh-product-modal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.fresh-product-modal-actions .f26-btn {
  min-height: 50px;
}

.fresh-product-modal-note {
  max-width: 320px;
  padding: 12px 14px;
  color: rgba(242, 246, 241, .78);
  border-left: 4px solid var(--fp-orange);
  background: rgba(240, 90, 36, .12);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
}

.fresh-product-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: var(--fp-mist);
  border: 1px solid rgba(242, 246, 241, .24);
  border-radius: 999px;
  background: rgba(3, 31, 23, .72);
  font-size: 30px;
  line-height: 1;
  cursor: pointer;
}

.fresh-product-modal-close:focus-visible {
  outline: 3px solid var(--fp-orange-hot);
  outline-offset: 3px;
}

.f26-menu-hero-plate picture {
  display: block;
}

.f26-menu-hero-plate img {
  height: clamp(280px, 54vh, 540px);
  object-fit: cover;
}

.f26-map-chip strong {
  overflow-wrap: anywhere;
}

.fresh-public .f26-location-copy h2 {
  max-width: 11ch;
  font-size: clamp(42px, 5.2vw, 76px);
  overflow-wrap: anywhere;
}

.fresh-public [data-reveal] {
  opacity: 1;
  transform: none;
}

html.reveal-enabled .fresh-public [data-reveal] {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .8s var(--ease), transform .8s var(--ease);
}

html.reveal-enabled .fresh-public [data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

html.reveal-enabled .fresh-home .f26-hero [data-reveal] {
  opacity: 1;
  transform: none;
  transition: none;
}

@media (min-width: 1180px) and (max-height: 940px) {
  .fresh-home .f26-hero,
  .fresh-home .f26-hero-grid {
    min-height: calc(100svh - 78px);
  }

  .fresh-home .f26-hero-grid {
    padding-block: 38px 34px;
    gap: clamp(28px, 5vw, 74px);
  }

  .fresh-home .f26-hero h1 {
    font-size: clamp(64px, 7.6vw, 112px);
  }

  .fresh-home .f26-hero-lede {
    max-width: 720px;
    font-size: 18px;
  }

  .fresh-home .f26-plate-stage {
    width: min(100%, 390px);
  }

  .fresh-home .f26-plate-stage figcaption {
    padding-top: 14px;
  }
}

@media (max-width: 760px) {
  .fresh-public .fresh-menu-hero.f26-menu-hero {
    padding: 28px 0 18px;
  }

  .fresh-public .fresh-menu-hero.f26-menu-hero h1 {
    font-size: clamp(40px, 11.8vw, 58px);
    line-height: .94;
  }

  .fresh-menu-page .fresh-menu-hero.f26-menu-hero p:not(.eyebrow),
  .fresh-menu-page .f26-menu-badges {
    display: none;
  }

  .fresh-public .f26-menu-badges {
    margin-top: 16px;
  }

  .fresh-menu-page .f26-menu-hero-plate {
    display: none;
  }

  .fresh-public .fresh-menu-tools {
    padding: 8px 0 6px;
  }

  .fresh-public .fresh-search {
    gap: 8px;
  }

  .fresh-public .fresh-search-input input {
    height: 44px;
  }

  .fresh-public .fresh-category-buttons {
    padding-bottom: 5px;
    scrollbar-width: thin;
    scrollbar-color: rgba(240,90,36,.75) rgba(242,246,241,.08);
  }

  .fresh-public .fresh-category-buttons::-webkit-scrollbar {
    display: block;
    height: 4px;
  }

  .fresh-public .fresh-category-buttons::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(240,90,36,.75);
  }

  .fresh-public .fresh-category-buttons::-webkit-scrollbar-track {
    background: rgba(242,246,241,.08);
  }

  .fresh-public .fresh-category-buttons button {
    min-height: 38px;
    padding-inline: 12px;
  }

  .fresh-public .fresh-menu-card {
    min-height: 150px;
    grid-template-columns: 94px minmax(0, 1fr);
    border-radius: 8px;
  }

  .fresh-public .fresh-menu-card-media {
    min-height: 150px;
  }

  .fresh-public .fresh-menu-card h3 {
    font-size: 19px;
  }

  .fresh-public .fresh-menu-card p {
    font-size: 13px;
  }

  .fresh-product-modal {
    align-items: end;
    padding: 10px;
  }

  .fresh-product-modal-panel {
    max-height: 92svh;
    grid-template-columns: 1fr;
    overflow-y: auto;
    border-radius: 24px 4px 24px 4px;
  }

  .fresh-product-modal-media,
  .fresh-product-modal-media img {
    min-height: 240px;
  }

  .fresh-product-modal-copy {
    padding: 26px 20px 22px;
    gap: 16px;
  }

  .fresh-product-modal-prices {
    grid-template-columns: 1fr;
  }

  .fresh-product-modal-actions {
    display: grid;
  }
}

/* Fresh menu item detail cards: Wolt belongs inside the product decision, not the top nav. */
.fresh-public .fresh-menu-card {
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
}

.fresh-public .fresh-menu-card::before {
  content: "";
  display: none;
}

.fresh-public .fresh-menu-card:focus-visible {
  outline: 3px solid var(--fp-orange-hot, #ff5a1f);
  outline-offset: 4px;
}

body.fresh-product-open {
  overflow: hidden;
}

.fresh-product-dialog {
  width: min(760px, calc(100% - 26px));
  max-height: min(92vh, 920px);
  overflow: hidden;
  padding: 0;
  color: var(--fp-mist, #f2f6f1);
  border: 1px solid rgba(242,246,241,.18);
  border-radius: 28px 4px 28px 4px;
  background: #031f17;
  box-shadow: 0 42px 140px rgba(0,0,0,.58);
}

.fresh-product-dialog::backdrop {
  background:
    radial-gradient(circle at 70% 20%, rgba(240,90,36,.2), transparent 30%),
    rgba(3, 18, 13, .78);
  backdrop-filter: blur(10px);
}

.fresh-product-shell {
  position: relative;
  display: grid;
  grid-template-rows: minmax(230px, 360px) auto;
}

.fresh-product-x {
  position: absolute;
  z-index: 4;
  top: 14px;
  right: 14px;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  color: var(--fp-mist, #f2f6f1);
  border: 1px solid rgba(242,246,241,.24);
  border-radius: 999px;
  background: rgba(3,31,23,.82);
  box-shadow: 0 14px 34px rgba(0,0,0,.26);
  font: 900 24px/1 var(--body);
}

.fresh-product-media {
  position: relative;
  min-height: 260px;
  overflow: hidden;
  background:
    radial-gradient(circle at 75% 20%, rgba(240,90,36,.22), transparent 28%),
    linear-gradient(145deg, #082719, #0b6540);
}

.fresh-product-media img {
  width: 100%;
  height: 100%;
  min-height: 260px;
  object-fit: cover;
  display: block;
  filter: saturate(1.02) contrast(1.03);
}

.fresh-product-media.is-sprite {
  min-height: 310px;
  background-repeat: no-repeat;
}

.fresh-product-media.is-sprite::after,
.fresh-product-media.is-placeholder::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(3,31,23,.78), rgba(3,31,23,0) 62%);
}

.fresh-product-media span {
  position: absolute;
  z-index: 2;
  left: 24px;
  bottom: 22px;
  color: var(--fp-orange-hot, #ff5a1f);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.fresh-product-content {
  padding: clamp(24px, 4vw, 36px);
  background:
    radial-gradient(circle at 90% 0%, rgba(240,90,36,.13), transparent 28%),
    #031f17;
}

.fresh-product-content > small {
  display: block;
  color: var(--fp-orange-hot, #ff5a1f);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.fresh-product-top {
  margin-top: 8px;
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: flex-start;
}

.fresh-product-top h3 {
  max-width: 16ch;
  margin: 0;
  color: #fffaf0;
  font-family: var(--body);
  font-size: clamp(31px, 4.2vw, 56px);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 1.04;
  text-transform: none;
}

.fresh-product-top strong {
  color: var(--fp-orange-hot, #ff5a1f);
  font-family: var(--body);
  font-size: clamp(26px, 4vw, 38px);
  font-weight: 900;
  white-space: nowrap;
}

.fresh-product-content p {
  max-width: 64ch;
  margin: 18px 0 0;
  color: rgba(242,246,241,.74);
  font-size: clamp(15px, 1.5vw, 18px);
  line-height: 1.55;
}

.fresh-product-prices {
  margin: 26px 0 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.fresh-product-prices div {
  min-height: 76px;
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 14px 16px;
  border: 1px solid rgba(242,246,241,.14);
  border-radius: 16px;
  background: rgba(242,246,241,.055);
}

.fresh-product-prices dt {
  color: rgba(242,246,241,.56);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.fresh-product-prices dd {
  margin: 0;
  color: var(--fp-orange-hot, #ff5a1f);
  font-size: 22px;
  font-weight: 900;
}

.fresh-product-note {
  padding-left: 14px;
  border-left: 4px solid var(--fp-orange, #f05a24);
  font-size: 13px !important;
}

.fresh-product-actions {
  margin-top: 26px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
}

.fresh-product-actions .f26-btn {
  min-height: 56px;
}

.fresh-product-actions [hidden] {
  display: none !important;
}

.fresh-product-actions .fresh-product-close {
  min-width: 132px;
}

@media (max-width: 760px) {
  .fresh-product-dialog {
    width: calc(100% - 18px);
    max-height: 94vh;
    border-radius: 22px 4px 22px 4px;
  }

  .fresh-product-shell {
    grid-template-rows: 174px auto;
  }

  .fresh-product-media,
  .fresh-product-media img {
    height: 174px;
    min-height: 174px;
  }

  .fresh-product-media.is-sprite {
    height: 174px;
    min-height: 174px;
  }

  .fresh-product-content {
    padding: 18px;
  }

  .fresh-product-top {
    display: block;
  }

  .fresh-product-top h3 {
    max-width: none;
    font-size: clamp(27px, 7.4vw, 38px);
  }

  .fresh-product-top strong {
    display: block;
    margin-top: 10px;
    font-size: 27px;
  }

  .fresh-product-content p {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.45;
  }

  .fresh-product-prices {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
    margin-top: 16px;
  }

  .fresh-product-prices div {
    min-height: 62px;
    padding: 9px 8px;
    border-radius: 12px;
  }

  .fresh-product-prices dt {
    font-size: 8px;
    letter-spacing: .05em;
  }

  .fresh-product-prices dd {
    font-size: 18px;
  }

  .fresh-product-actions {
    grid-template-columns: 1fr;
    margin-top: 16px;
  }

  .fresh-product-actions .fresh-product-close {
    min-width: 0;
  }
}

/* v10 Fresh menu detail contract: ingredient copy and grams must be visible, not buried. */
.fresh-public .fresh-menu-card {
  min-height: 226px;
  align-items: stretch;
}

.fresh-public .fresh-menu-card > div:not(.fresh-menu-card-media) {
  min-width: 0;
  max-width: 100%;
  display: grid;
  align-content: center;
}

.fresh-public .fresh-menu-card h3,
.fresh-public .fresh-menu-card-ingredients {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

.fresh-public .fresh-menu-card-ingredients {
  max-width: 66ch;
  color: rgba(255, 250, 240, .82) !important;
  font-size: clamp(14px, 1.05vw, 16px) !important;
  font-weight: 650;
  line-height: 1.5 !important;
}

.fresh-menu-card-details {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.fresh-menu-card-detail {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 9px;
  color: rgba(255, 250, 240, .88);
  border: 1px solid rgba(255, 250, 240, .18);
  border-radius: 999px;
  background: rgba(3, 31, 23, .44);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .06em;
  line-height: 1;
  text-transform: uppercase;
}

.fresh-menu-card-detail--ingredients-label {
  color: var(--fp-orange-hot, #ff5a1f);
  border-color: rgba(240, 90, 36, .48);
  background: rgba(240, 90, 36, .1);
}

.fresh-menu-card-detail--portion {
  color: #fffaf0;
  border-color: rgba(155, 184, 13, .42);
  background: rgba(155, 184, 13, .13);
}

.fresh-product-ingredients,
.fresh-product-ingredient-box {
  margin-top: 20px;
  padding: clamp(16px, 2.6vw, 22px);
  color: #fffaf0;
  border: 1px solid rgba(255, 250, 240, .16);
  border-left: 5px solid var(--fp-orange-hot, #ff5a1f);
  border-radius: 20px 4px 20px 4px;
  background:
    radial-gradient(circle at 100% 0%, rgba(240, 90, 36, .15), transparent 34%),
    rgba(242, 246, 241, .06);
}

.fresh-product-ingredients > b,
.fresh-product-ingredient-box > strong {
  display: block;
  color: var(--fp-orange-hot, #ff5a1f);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  line-height: 1.1;
  text-transform: uppercase;
}

.fresh-product-ingredients p,
.fresh-product-ingredient-box p {
  max-width: none;
  margin: 10px 0 0 !important;
  color: rgba(255, 250, 240, .86) !important;
  font-size: clamp(15px, 1.4vw, 18px) !important;
  font-weight: 650;
  line-height: 1.55 !important;
}

.fresh-product-ingredients span,
.fresh-product-ingredient-box span {
  width: fit-content;
  margin-top: 12px;
  display: inline-flex;
  padding: 7px 10px;
  color: #fffaf0;
  border: 1px solid rgba(155, 184, 13, .42);
  border-radius: 999px;
  background: rgba(155, 184, 13, .14);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.fresh-product-ingredients span[hidden] {
  display: none !important;
}

@media (max-width: 760px) {
  html,
  body.fresh-public {
    max-width: 100%;
    overflow-x: hidden;
  }

  body.fresh-public .shell {
    width: min(1240px, calc(100% - 24px));
  }

  .fresh-public .fresh-menu-card {
    min-height: 0;
    grid-template-columns: 1fr;
    grid-template-rows: 184px auto auto;
    grid-template-areas:
      "media"
      "copy"
      "price";
    gap: 0;
    padding: 0;
  }

  .fresh-public .fresh-menu-card-media {
    height: 184px;
    min-height: 184px;
  }

  .fresh-public .fresh-menu-card > div:not(.fresh-menu-card-media) {
    padding: 16px 28px 8px 16px;
  }

  .fresh-public .fresh-menu-card-ingredients {
    max-width: calc(100vw - 88px);
    font-size: 13px !important;
    line-height: 1.46 !important;
  }

  .fresh-menu-card-detail {
    min-height: 24px;
    padding: 5px 7px;
    font-size: 8.5px;
    letter-spacing: .04em;
  }

  .fresh-menu-benefits {
    margin-top: 9px;
    gap: 5px;
  }

  .fresh-menu-benefits li {
    padding: 4px 6px;
    font-size: 8.5px;
  }

  .fresh-menu-card-action {
    margin-top: 10px;
    padding: 7px 8px;
    font-size: 8.5px;
  }

  .fresh-public .fresh-menu-card > strong {
    justify-self: start;
    padding: 0 16px 16px;
  }

  .fresh-product-ingredients,
  .fresh-product-ingredient-box {
    margin-top: 14px;
    padding: 14px;
    border-radius: 16px 4px 16px 4px;
  }

  .fresh-product-ingredients p,
  .fresh-product-ingredient-box p {
    font-size: 13.5px !important;
    line-height: 1.45 !important;
  }
}
