/* The Kitchen story homepage. Shared article and authentication styles stay in site.css. */
@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('fonts/bricolage-latin.woff2') format('woff2');
}

.kitchen-site {
  --paper: #fffefa;
  --kitchen-ink: #153b2b;
  --kitchen-muted: #43594c;
  --kitchen-line: #d0dccf;
  --kitchen-lime: #c9ef7b;
  background: var(--paper);
  color: var(--kitchen-ink);
}
.kitchen-site [hidden] { display: none !important; }
.kitchen-site h1, .kitchen-site h2, .kitchen-site h3 { color: var(--kitchen-ink); }
.kitchen-site h1, .kitchen-site h2 { font-family: 'Bricolage Grotesque', var(--head); }
.kitchen-site .site-head { background: rgb(255 254 250 / 97%); border-bottom: 1px solid #e1e8dc; }
.kitchen-site .site-head .wrap { max-width: 1360px; height: 82px; }
.kitchen-site .brand { color: var(--kitchen-ink); }
.kitchen-site .btn { box-shadow: none; }
.kitchen-site .btn .i { width: 18px; height: 18px; }
.kitchen-site .announce { font-size: 14px; }
.kitchen-site .eyebrow { color: #28563b; font-size: 13px; letter-spacing: .1em; line-height: 1.5; }

.kitchen-hero {
  position: relative;
  isolation: isolate;
  width: min(1360px, calc(100% - 40px));
  min-height: 650px;
  margin: 0 auto;
  padding: 0;
  border-radius: 32px;
  overflow: hidden;
  background: #153f2e;
  color: #fff;
}
.kitchen-hero-photo {
  position: absolute;
  inset: 0 0 0 52%;
  z-index: -1;
  width: 48%;
  height: 100%;
  object-fit: cover;
  object-position: 61% center;
}
.kitchen-hero::after { display: none; }
.kitchen-hero-copy { position: relative; width: 52%; padding: 70px 34px 76px 42px; }
.kitchen-hero .eyebrow { color: var(--kitchen-lime); }
.kitchen-hero .dot { background: var(--kitchen-lime) !important; }
.kitchen-hero h1 { color: #fff; margin: 24px 0; font-size: clamp(64px, 7vw, 90px); line-height: 1.02; letter-spacing: -.05em; }
.kitchen-hero h1 em { font-style: normal; color: var(--kitchen-lime); }
.kitchen-hero-copy > p { max-width: 395px; color: #edf4ed; font-size: 19px; line-height: 1.7; }
.kitchen-hero .btn-primary { color: #143c29; background: var(--kitchen-lime); }
.kitchen-hero .btn-primary:hover { background: #dbffa1; }
.kitchen-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 28px; }
.kitchen-watch { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; font-size: 16px; font-weight: 600; text-decoration: none; color: #fff; }
.kitchen-watch .i { width: 20px; height: 20px; }
.kitchen-hero-copy .kitchen-availability { margin-top: 18px; font-size: 14px; color: #e2eddf; }
.kitchen-hero-notes { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 28px; width: min(1160px, calc(100% - 48px)); margin: 24px auto 0; padding: 24px; background: #edf3e5; border: 1px solid var(--kitchen-line); border-radius: 24px; }
.hero-note { color: var(--kitchen-ink); }
.saved-note { display: flex; align-items: center; gap: 14px; padding: 8px; }
.saved-note .i { font-size: 24px; color: #557d3a; }
.saved-note strong { display: block; font-size: 16px; font-weight: 600; }
.saved-note small { display: block; margin-top: 4px; font-size: 14px; color: var(--kitchen-muted); }
.pantry-note { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 20px; background: #fff; border: 1px solid var(--kitchen-line); border-radius: 18px; }
.pantry-note header { grid-column: 1 / -1; }
.pantry-note .pantry-row { flex-direction: column; align-items: start; justify-content: start; gap: 6px; padding: 10px; border-radius: 10px; background: #f2f6eb; }
.pantry-note .pantry-row.missing { margin-top: 0; background: #ffe3bd; }
.pantry-note header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 13px; border-bottom: 1px solid var(--kitchen-line); font-size: 16px; }
.pantry-note header .i { color: #557d3a; width: 20px; height: 20px; }
.pantry-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 0; font-size: 15px; }
.pantry-row .owned { color: #326331; font-size: 14px; white-space: nowrap; }
.pantry-row.missing { padding: 11px; margin-top: 3px; border-radius: 10px; background: #ffe3bd; }
.pantry-row.missing span:last-child { font-size: 14px; color: #70420b; }
.kitchen-sources { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 16px; max-width: 1250px; margin: 26px auto 0; padding: 18px 24px; border-bottom: 1px solid var(--kitchen-line); font-size: 14px; color: var(--kitchen-muted); }
.kitchen-sources span:first-child { font-size: 13px; margin-right: 8px; }
.kitchen-sources strong { padding: 7px 14px; border-radius: 999px; background: #edf4e7; font-weight: 600; color: #234c32; }

.kitchen-section { max-width: 1160px; margin: 0 auto; padding: 56px 24px; }
.kitchen-section h2 { font-size: clamp(32px, 4.5vw, 48px); line-height: 1.08; }
.kitchen-section .eyebrow { margin-bottom: 14px; }
.journey-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.journey-controls { display: none; align-items: center; gap: 14px; }
.is-interactive .journey-controls { display: flex; }
.journey-controls small { color: var(--kitchen-muted); font-size: 14px; }
.journey-controls button { background: #174631; color: #fff; border: 1px solid #174631; border-radius: 24px; padding: 13px 20px; font: 600 14px var(--text); cursor: pointer; white-space: nowrap; min-height: 46px; }
.journey-stage { display: grid; grid-template-columns: .85fr 1.15fr; gap: 36px; padding: 36px; background: #e3f5b5; border: 1px solid #ccdfa7; border-radius: 30px; }
.journey-buttons { display: none; }
.is-interactive .journey-buttons { display: flex; flex-direction: column; justify-content: center; gap: 7px; }
.journey-buttons button { display: flex; align-items: center; gap: 17px; padding: 19px 17px; border: 0; background: transparent; color: #234c32; border-radius: 14px; font: 600 17px var(--text); text-align: left; cursor: pointer; }
.journey-buttons button[aria-pressed=true] { background: #174631; color: #fff; box-shadow: 0 5px 14px rgb(25 61 42 / 12%); }
.journey-buttons .step-no { font-size: 13px; color: inherit; }
.journey-buttons .i { margin-left: auto; font-size: 17px; opacity: 0; }
.journey-buttons button[aria-pressed=true] .i { opacity: 1; }
.journey-scenes { min-width: 0; }
.scene { padding: 28px; background: #fff; border: 1px solid #cdddbb; border-radius: 21px; min-height: 350px; box-shadow: 0 10px 28px rgb(32 71 26 / 8%); }
.scene + .scene { margin-top: 16px; }
.is-interactive .scene + .scene { margin-top: 0; }
.scene-title { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-bottom: 15px; margin-bottom: 18px; border-bottom: 1px solid var(--kitchen-line); font-size: 16px; }
.scene-title .i { width: 18px; height: 18px; color: #557d3a; }
.journey-recipe { display: flex; align-items: center; gap: 16px; padding: 12px; background: #f3f7ed; border-radius: 14px; }
.journey-recipe img { width: 104px; height: 100px; object-fit: cover; border-radius: 10px; }
.journey-recipe strong { display: block; font-size: 19px; line-height: 1.4; }
.journey-recipe small { display: block; margin-top: 7px; font-size: 14px; color: var(--kitchen-muted); }
.scene-result { display: flex; align-items: start; gap: 8px; margin-top: 20px; font-size: 15px; line-height: 1.65; color: var(--kitchen-muted); }
.scene-result .i { flex-shrink: 0; margin-top: 3px; color: #557d3a; font-size: 17px; }
.ingredient-check { margin: 12px 0 0; padding: 0; list-style: none; }
.ingredient-check li { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; font-size: 15px; border-bottom: 1px solid var(--kitchen-line); }
.ingredient-check li:last-child { border: 0; }
.ingredient-check span:last-child { font-size: 14px; color: #326331; }
.ingredient-check .ingredient-missing span:last-child { color: #70420b; }
.week-preview { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 14px; }
.week-day { padding: 14px 6px; text-align: center; border-radius: 10px; background: #f3f7ed; color: var(--kitchen-muted); font-size: 13px; }
.week-day strong { display: block; margin-top: 9px; font-size: 14px; line-height: 1.4; }
.week-day.is-planned { background: var(--forest); color: #fff; }
.shopping-item { display: flex; align-items: center; gap: 12px; padding: 17px; margin-top: 20px; border-radius: 12px; background: #ffe3bd; font-size: 16px; }
.shopping-item strong { flex: 1; font-weight: 500; }
.shopping-item small { font-size: 14px; color: #70420b; }
.shopping-check { width: 17px; height: 17px; border: 1px solid #8a755f; border-radius: 4px; flex-shrink: 0; }
.journey:not(.is-interactive) .journey-stage { grid-template-columns: 1fr; }
.journey:not(.is-interactive) .journey-scenes { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.journey:not(.is-interactive) .scene { margin: 0; }
.is-interactive .scene:not([hidden]) .journey-recipe { animation: recipe-arrives .45s ease both; }
.is-interactive .scene:not([hidden]) .is-planned { animation: recipe-planned .6s ease both; }
.is-interactive .scene:not([hidden]) .shopping-item { animation: ingredient-listed .45s ease both; }
@keyframes recipe-arrives { from { opacity: .5; transform: translateX(-12px); } to { opacity: 1; transform: translateX(0); } }
@keyframes recipe-planned { from { transform: translate(-20px, -8px) scale(.94); } to { transform: translate(0, 0) scale(1); } }
@keyframes ingredient-listed { from { opacity: .3; transform: translateX(-24px); } to { opacity: 1; transform: translateX(0); } }

.kitchen-features { padding-top: 30px; }
.kitchen-features > h2 { max-width: 650px; margin-bottom: 32px; }
.kitchen-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.kitchen-feature { min-width: 0; }
.kitchen-screen { height: 290px; overflow: hidden; padding: 24px 25px 0; border-radius: 24px; background: #ffdab6; border: 1px solid #eac39c; }
.kitchen-screen img { width: 100%; border-radius: 17px 17px 0 0; box-shadow: 0 5px 18px rgb(30 48 35 / 10%); }
.kitchen-feature:nth-child(2) .kitchen-screen { background: #d4e7ff; border-color: #b3cee9; }
.kitchen-feature:nth-child(3) .kitchen-screen { background: #f7e78c; border-color: #dfcd73; }
.kitchen-feature h3 { margin: 22px 0 12px; font-size: 23px; }
.kitchen-feature p { font-size: 16px; line-height: 1.75; color: var(--kitchen-muted); }
.kitchen-feature a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 10px; font-size: 15px; font-weight: 600; text-decoration: none; }
.kitchen-feature a:hover { text-decoration: underline; }
.section-intro { margin-top: 20px; max-width: 600px; font-size: 18px; line-height: 1.7; color: var(--kitchen-muted); }
.recipe-discovery { padding-top: 64px; }
.recipe-discovery > h2 { margin-bottom: 0; }
.recipe-discovery .kitchen-feature-grid { margin-top: 32px; }
.recipe-discovery .kitchen-screen { height: 235px; padding: 0; border: 0; background: #f1f5e8; }
.recipe-discovery .kitchen-screen img { height: 100%; object-fit: cover; border-radius: 24px; box-shadow: none; }
.recipe-discovery .kitchen-feature h3 { margin-top: 18px; }
.recipe-discovery-footer { display: flex; align-items: start; justify-content: space-between; flex-wrap: wrap; gap: 18px 30px; margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--kitchen-line); font-size: 15px; line-height: 1.7; }
.recipe-discovery-footer p { max-width: 520px; color: var(--kitchen-muted); }
.recipe-discovery-footer a { font-weight: 600; }
.waste-section { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
.waste-copy > p, .pantry-support p { font-size: 17px; line-height: 1.8; color: var(--kitchen-muted); margin-top: 22px; }
.waste-copy > a, .pantry-support a { display: inline-block; font-size: 15px; font-weight: 600; margin-top: 24px; }
.outcome-list { display: grid; gap: 17px; list-style: none; padding: 0; margin: 24px 0 0; }
.outcome-list li { display: flex; align-items: start; gap: 10px; font-size: 16px; line-height: 1.6; }
.outcome-list .i { font-size: 21px; color: #346b37; margin-top: 2px; }
.waste-example { padding: 28px; background: #fff0da; border: 1px solid #edcfa6; border-radius: 28px; }
.waste-example-title { display: flex; align-items: center; gap: 9px; font-size: 16px; margin-bottom: 18px; }
.waste-example-title > .i { width: 22px; height: 22px; }
.waste-example-title small { margin-left: auto; font-size: 13px; color: #715330; }
.use-first-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; margin-top: 8px; background: #fffefa; border-radius: 12px; font-size: 16px; }
.use-first-row strong { font-size: 14px; background: #ffe2ac; color: #69420d; padding: 4px 9px; border-radius: 6px; }
.use-first-row > span:last-child { font-size: 14px; color: #43594c; }
.waste-arrow { text-align: center; font-size: 28px; margin: 9px 0; color: #805314; }
.waste-meal { display: flex; align-items: center; gap: 16px; padding: 15px; background: #fffefa; border-radius: 17px; }
.waste-meal img { width: 105px; height: 110px; object-fit: cover; border-radius: 12px; }
.waste-meal small { display: block; font-size: 13px; color: #43594c; line-height: 1.5; }
.waste-meal strong { display: block; margin-top: 7px; font-size: 19px; line-height: 1.4; }
.waste-meal span { display: block; margin-top: 7px; font-size: 14px; color: #43594c; line-height: 1.5; }
.pantry-support { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; margin-bottom: 50px; }
.pantry-support h2 { font-size: 34px; }
.pantry-support-proof { display: flex; align-items: start; gap: 18px; padding: 30px; background: #eff5eb; border: 1px solid #cfdec4; border-radius: 20px; }
.pantry-support-proof > .i { width: 30px; height: 30px; }
.pantry-support-proof code { display: block; color: #43594c; font-size: 15px; letter-spacing: .05em; }
.pantry-support-proof strong { display: block; font-size: 18px; line-height: 1.5; margin-top: 12px; }
.pantry-support-proof span { display: block; font-size: 14px; line-height: 1.7; color: #43594c; margin-top: 12px; }
.kitchen-site .trust-strip { padding: 48px 0; }
.trust-strip .wrap { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 22px 55px; }
.kitchen-site .trust-strip h2 { font-size: 35px; margin-top: 12px; }
.trust-strip ul { display: grid; gap: 14px; list-style: none; padding: 0; margin: 0; }
.trust-strip li { display: flex; align-items: center; gap: 12px; font-size: 16px; color: #f3f8ed; }
.trust-strip .i { font-size: 21px; color: var(--kitchen-lime); }
.trust-strip a { color: #eef6e8; font-size: 15px; font-weight: 500; }
.kitchen-proof { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; padding-top: 40px; padding-bottom: 70px; }
.kitchen-proof p { margin-top: 19px; max-width: 420px; color: var(--kitchen-muted); font-size: 17px; line-height: 1.8; }
.kitchen-proof .proof-control { display: flex; align-items: center; gap: 8px; font-size: 14px; }
.kitchen-proof .proof-control .i { font-size: 16px; }
.kitchen-receipt { padding: 28px; background: #fffefa; border: 1px solid var(--kitchen-line); border-radius: 22px; box-shadow: 0 12px 30px rgb(23 62 38 / 8%); transform: rotate(2deg); }
.kitchen-receipt header { display: flex; align-items: center; gap: 9px; padding-bottom: 17px; margin-bottom: 20px; border-bottom: 1px dashed var(--kitchen-line); font-size: 16px; }
.kitchen-receipt code { font-size: 16px; color: var(--kitchen-muted); letter-spacing: .07em; }
.receipt-resolved { display: flex; align-items: center; gap: 12px; padding: 16px 0 22px; font-size: 17px; font-weight: 600; }
.receipt-resolved .i { color: #557d3a; flex-shrink: 0; }
.receipt-confirm { display: flex; justify-content: space-between; gap: 14px; border-top: 1px solid var(--kitchen-line); padding-top: 16px; font-size: 14px; }
.receipt-confirm span:first-child { color: var(--kitchen-muted); }

.kitchen-site .principles { background: #153f2e; color: #fff; padding: 72px 0; }
.kitchen-site .principles .sec-head { margin-bottom: 30px; }
.kitchen-site .principles .sec-head > p { display: none; }
.kitchen-site .principles h2 { color: #fff; max-width: 700px; }
.kitchen-site .principles .eyebrow, .kitchen-site .pillar .i { color: var(--kitchen-lime); }
.kitchen-site .pillar { background: #234d38; border: 1px solid #4a7257; padding: 27px; }
.kitchen-site .pillar h3 { color: #fff; font-size: 21px; }
.kitchen-site .pillars { gap: 28px; }
.kitchen-site .pillar p { color: #e3eee6; font-size: 16px; line-height: 1.75; }
.kitchen-site #faq { background: var(--paper); padding: 64px 0; }
.kitchen-site #faq .sec-head { margin-bottom: 28px; }
.kitchen-site .faq { max-width: 820px; }
.kitchen-site .faq summary { font-size: 17px; }
.kitchen-site #join { max-width: 1312px; margin: 0 auto 28px; padding: 0 24px; }
.kitchen-site .closing { background: var(--forest); color: #fff; border-radius: 30px; padding: 48px; gap: 48px; }
.kitchen-site .closing h2 { color: #fff; font-size: clamp(32px, 4vw, 46px); line-height: 1.08; }
.kitchen-site .closing .lede { font-size: 17px; color: #e8f1e5; margin-top: 16px; }
.kitchen-site .signup { margin: 0; }
.kitchen-site .signup input[type=email] { min-height: 45px; }
.kitchen-site .signup button[type=submit] { background: var(--kitchen-lime); color: #21432f; }
.kitchen-site .signup button[disabled] { cursor: wait; opacity: .75; }
.kitchen-site .signup .chip { min-height: 44px; font-size: 14px; padding: 8px 12px; }
.kitchen-site .signup-note { font-size: 14px; color: #e8f1e5; }
.kitchen-site .signup-done { color: #fff; background: rgb(255 255 255 / 12%); }
.kitchen-site .signup-error { font-size: 14px; }
.kitchen-site .site-foot { background: var(--paper); border-top: 1px solid var(--kitchen-line); padding-top: 44px; }
.kitchen-site .foot-legal { font-size: 14px; color: #43594c; }
.kitchen-hero :focus-visible, .kitchen-site .closing :focus-visible { outline-color: #ffe48b; }
.legacy-anchor { display: block; height: 0; scroll-margin-top: 90px; }

@media (max-width: 1050px) {
  .kitchen-hero { min-height: 585px; }
  .kitchen-hero-copy { padding-left: 24px; padding-top: 62px; }
  .kitchen-hero h1 { font-size: clamp(62px, 7.3vw, 80px); }
  .kitchen-hero-copy > p { max-width: 340px; font-size: 18px; }
  .kitchen-actions { gap: 17px; }
  .journey-stage { gap: 22px; padding: 26px; }
  .journey-buttons button { font-size: 16px; gap: 11px; }
  .kitchen-proof { gap: 46px; }
  .kitchen-site .closing { padding: 36px; gap: 28px; }
}
@media (max-width: 900px) {
  .kitchen-hero-notes { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 760px) {
  .kitchen-hero { min-height: 560px; }
  .kitchen-hero h1 { font-size: 60px; }
  .kitchen-hero-copy { width: 52%; padding: 45px 20px 60px 22px; }
  .kitchen-hero-copy > p { max-width: 300px; font-size: 17px; }
  .kitchen-actions .btn { padding: 0 19px; font-size: 15px; }
  .kitchen-watch { font-size: 15px; }
  .kitchen-sources { gap: 18px; }
  .journey-heading { align-items: start; flex-direction: column; }
  .journey-controls { width: 100%; justify-content: space-between; }
  .journey-stage { gap: 14px; padding: 20px; }
  .scene { padding: 18px; }
  .journey-buttons button { padding: 15px 9px; }
  .journey-recipe img { width: 60px; height: 62px; }
  .journey-recipe strong { font-size: 17px; }
  .kitchen-feature-grid { gap: 16px; }
  .kitchen-screen { height: 230px; padding: 18px 14px 0; }
  .kitchen-feature h3 { font-size: 21px; }
  .kitchen-feature p { font-size: 16px; }
  .kitchen-proof { gap: 30px; }
  .waste-section { gap: 25px; }
  .waste-example { padding: 20px; }
  .waste-meal { align-items: start; gap: 12px; padding: 12px; }
  .waste-meal img { width: 65px; height: 90px; }
  .pantry-support { gap: 25px; }
  .pantry-support-proof { padding: 23px; }
}
@media (max-width: 620px) {
  .kitchen-site .site-head .wrap { height: 72px; padding: 0 18px; gap: 12px; }
  .kitchen-site .brand { gap: 8px; font-size: 17px; }
  .kitchen-site .brand img { width: 30px; height: 30px; }
  .kitchen-site .site-head .btn { font-size: 13px; padding: 0 14px; min-height: 44px; }
  .kitchen-site .announce { font-size: 12px; padding: 9px 12px; }
  .kitchen-hero { display: flex; flex-direction: column; width: calc(100% - 24px); min-height: 0; border-radius: 24px; }
  .kitchen-hero::after { display: none; }
  .kitchen-hero-copy { width: 100%; padding: 30px 22px 12px; order: 0; }
  .kitchen-hero h1 { font-size: clamp(50px, 13vw, 72px); margin: 17px 0; }
  .kitchen-hero-copy > p { max-width: 340px; font-size: 17px; }
  .kitchen-actions { gap: 17px; margin-top: 22px; }
  .kitchen-actions .btn { min-height: 48px; font-size: 14px; padding: 0 17px; }
  .kitchen-watch { font-size: 14px; }
  .kitchen-hero-copy .kitchen-availability { font-size: 14px; margin-top: 15px; }
  .kitchen-hero-photo { position: relative; inset: auto; z-index: 0; order: 1; width: 100%; height: 360px; margin-top: 20px; border-radius: 0; object-position: 60% center; }
  .kitchen-hero-notes { width: calc(100% - 24px); margin-top: 16px; padding: 18px; border-radius: 22px; }
  .saved-note { padding: 2px; }
  .pantry-note { display: block; padding: 17px; }
  .pantry-note .pantry-row { flex-direction: row; align-items: center; justify-content: space-between; background: transparent; padding: 11px 0; }
  .pantry-note .pantry-row.missing { padding: 11px; background: #ffe3bd; margin-top: 3px; }
  .pantry-note header { font-size: 15px; }
  .pantry-row { font-size: 14px; }
  .kitchen-sources { gap: 9px; padding: 20px 16px; margin: 8px 14px 0; font-size: 13px; }
  .kitchen-sources strong { padding: 7px 11px; }
  .kitchen-sources span:first-child { width: 100%; text-align: center; font-size: 13px; margin: 0 0 7px; }
  .kitchen-section { padding: 36px 23px; }
  .kitchen-section h2 { font-size: 34px; }
  .journey-heading { margin-bottom: 20px; gap: 18px; }
  .journey-controls small { font-size: 13px; }
  .journey-stage { display: flex; flex-direction: column; padding: 16px; border-radius: 23px; }
  .is-interactive .journey-buttons { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 3px; }
  .journey-buttons button { flex-direction: column; padding: 12px 4px; gap: 6px; font-size: 14px; text-align: center; }
  .journey-buttons .step-long, .journey-buttons .i { display: none; }
  .journey-buttons .step-no { font-size: 12px; }
  .scene { padding: 18px; min-height: 365px; border-radius: 17px; }
  .scene-title { font-size: 16px; }
  .journey-recipe { gap: 12px; padding: 10px; }
  .journey-recipe img { width: 64px; height: 76px; }
  .journey-recipe strong { font-size: 16px; }
  .journey-recipe small { font-size: 14px; }
  .ingredient-check li { font-size: 14px; }
  .journey:not(.is-interactive) .journey-scenes { grid-template-columns: 1fr; }
  .kitchen-feature-grid { grid-template-columns: 1fr; gap: 30px; }
  .kitchen-screen { height: 290px; padding: 24px 36px 0; }
  .kitchen-feature h3 { font-size: 22px; margin-top: 16px; }
  .kitchen-feature p { font-size: 16px; }
  .kitchen-proof { grid-template-columns: 1fr; gap: 28px; padding-top: 20px; padding-bottom: 50px; }
  .kitchen-receipt { padding: 22px; margin: 0 4px; }
  .receipt-resolved { font-size: 15px; }
  .kitchen-site .principles { padding: 44px 0; }
  .kitchen-site .pillars { grid-template-columns: 1fr; gap: 17px; }
  .kitchen-site .pillar h3 { font-size: 21px; }
  .kitchen-site .pillar p { font-size: 16px; }
  .kitchen-site #faq { padding: 44px 0; }
  .kitchen-site .faq summary { font-size: 16px; }
  .kitchen-site #join { padding: 0 12px; }
  .kitchen-site .closing { grid-template-columns: 1fr; padding: 30px 23px; border-radius: 24px; }
  .kitchen-site .closing h2 { font-size: 34px; }
  .kitchen-site .signup-row { flex-direction: column; border-radius: 22px; padding: 8px; gap: 6px; }
  .kitchen-site .signup input[type=email] { width: 100%; font-size: 16px; }
  .kitchen-site .signup .chips { gap: 6px; }
  .kitchen-site .signup .chips > span { font-size: 14px; }
  .kitchen-site .site-foot { padding-top: 32px; }
  .recipe-discovery { padding-top: 39px; }
  .recipe-discovery .kitchen-screen { height: 220px; }
  .recipe-discovery-footer { margin-top: 25px; }
  .section-intro { font-size: 16px; margin-top: 18px; }
  .waste-section, .pantry-support { grid-template-columns: 1fr; gap: 26px; }
  .waste-example { padding: 22px; }
  .waste-example-title { font-size: 15px; }
  .waste-meal img { width: 80px; height: 100px; }
  .waste-copy > p, .pantry-support p { font-size: 16px; }
  .pantry-support { margin-bottom: 25px; }
  .pantry-support h2 { font-size: 30px; }
  .pantry-support-proof { padding: 24px; }
  .trust-strip .wrap { grid-template-columns: 1fr; gap: 25px; }
  .kitchen-site .trust-strip h2 { font-size: 30px; }
}
@media (max-width: 360px) {
  .kitchen-site .brand { font-size: 16px; gap: 6px; }
  .kitchen-site .site-head .wrap { padding: 0 14px; gap: 8px; }
  .kitchen-site .site-head .btn { padding: 0 11px; font-size: 12px; }
  .kitchen-hero h1 { font-size: 48px; }
  .kitchen-actions { gap: 9px; }
  .kitchen-actions .btn { padding: 0 14px; font-size: 14px; }
  .kitchen-hero-copy { padding-left: 18px; padding-right: 18px; }
  .kitchen-hero .eyebrow { font-size: 12px; }
  .kitchen-section { padding-left: 18px; padding-right: 18px; }
  .journey-stage { padding: 12px; }
  .scene { padding: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .kitchen-site *, .kitchen-site *::before, .kitchen-site *::after { animation: none !important; transition: none !important; }
}
