/* Feedy V4.563 mobile browser correction layer.
   Desktop layout, numerical data and Release L calculation surfaces are untouched. */

@media(max-width:760px){
  :root{--feedy-mobile-vh:100dvh;--feedy-mobile-header:56px;--feedy-mobile-nav:calc(64px + env(safe-area-inset-bottom))}
  html{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{width:100%;max-width:100%;overflow-x:hidden}

  /* Keep iOS Safari's changing visual viewport from creating a second page below a scene. */
  html.feedy-mobile-home-lock,html.feedy-mobile-home-lock body{height:var(--feedy-mobile-vh)!important;min-height:0!important;max-height:var(--feedy-mobile-vh)!important;overflow:hidden!important;overscroll-behavior:none}
  html.feedy-mobile-home-lock body>.app,html.feedy-mobile-home-lock body>.app>.main,html.feedy-mobile-home-lock body .content,html.feedy-mobile-home-lock body #view-landing,html.feedy-mobile-home-lock body .landing-page{height:var(--feedy-mobile-vh)!important;min-height:0!important;max-height:var(--feedy-mobile-vh)!important;overflow:hidden!important}
  body.landing-mode .landing-page{height:var(--feedy-mobile-vh)!important;min-height:0!important;max-height:var(--feedy-mobile-vh)!important}
  body.landing-mode .landing-main-i{height:calc(var(--feedy-mobile-vh) - var(--feedy-mobile-header))!important;min-height:0!important;overflow:hidden!important}
  body.landing-mode .journey-stage,body.landing-mode .journey-scene{height:100%!important;min-height:0!important;max-height:100%!important}
  body.landing-mode .journey-scene{padding:0!important}

  /* One stable, single-line mobile masthead. */
  body.landing-mode .landing-header{box-sizing:border-box!important;flex:0 0 var(--feedy-mobile-header)!important;width:100%!important;height:var(--feedy-mobile-header)!important;min-height:var(--feedy-mobile-header)!important;padding:7px 10px!important;padding-top:max(7px,env(safe-area-inset-top))!important;gap:7px!important;flex-wrap:nowrap!important;background:rgba(5,31,41,.96)!important}
  body.landing-mode .landing-brand{flex:0 1 auto!important;min-width:0!important;gap:0!important}
  body.landing-mode .landing-brand small{display:none!important}
  body.landing-mode .landing-brand-mark{width:auto!important;min-width:105px!important;height:40px!important;gap:5px!important}
  body.landing-mode .landing-logo-symbol{flex:0 0 34px!important;width:34px!important;height:40px!important}
  body.landing-mode .landing-logo-symbol img{height:40px!important}
  body.landing-mode .landing-logo-lockup{gap:4px!important}
  body.landing-mode .landing-logo-lockup strong{font-size:20px!important}
  body.landing-mode .landing-logo-lockup em{font-size:17px!important}
  body.landing-mode .landing-actions{display:flex!important;flex:0 0 auto!important;margin-left:auto!important;gap:7px!important;align-items:center!important}
  body.landing-mode .landing-actions .feedy-lang-switch{display:flex!important;height:40px!important;padding:3px!important;border-radius:12px!important;background:#f5f7f4!important}
  body.landing-mode .landing-actions .feedy-lang-switch button{height:34px!important;min-width:38px!important;padding:0 8px!important;border-radius:9px!important;font-size:12px!important;color:#49645b!important;opacity:1!important}
  body.landing-mode .landing-actions .feedy-lang-switch button.active,body.landing-mode .landing-actions .feedy-lang-switch button[aria-pressed="true"]{color:#fff!important;background:#176b52!important}
  body.landing-mode .landing-actions>.btn.primary{min-width:102px!important;min-height:40px!important;height:40px!important;padding:0 11px!important;border-radius:12px!important;font-size:12px!important;white-space:nowrap!important}

  /* Poster-first homepage with readable type and reachable controls. */
  body.landing-mode .journey-scene::after{background:linear-gradient(180deg,rgba(3,23,31,.12),rgba(3,23,31,.28) 44%,rgba(3,23,31,.88) 100%)!important}
  body.landing-mode .journey-scene-02::after{background:linear-gradient(180deg,rgba(3,23,31,.04),rgba(3,23,31,.18) 32%,rgba(3,23,31,.77) 68%,rgba(3,23,31,.94))!important}
  body.landing-mode .journey-scene-02 .journey-background{filter:brightness(1.16) saturate(1.04)}
  body.landing-mode .journey-background-video{display:none!important}
  body.landing-mode .journey-scene:not(.journey-scene-01):not(.journey-scene-08):not(.journey-scene-09):not(.journey-scene-10){align-items:flex-end!important}
  body.landing-mode .journey-copy{box-sizing:border-box!important;width:calc(100% - 64px)!important;max-width:none!important;max-height:calc(100% - 78px)!important;margin:0 40px 88px 24px!important;padding:0!important;text-align:left!important;overflow:auto!important;overscroll-behavior:contain;scrollbar-width:none}
  body.landing-mode .journey-copy::-webkit-scrollbar{display:none}
  body.landing-mode .journey-eyebrow{font-size:11px!important;letter-spacing:.19em!important}
  body.landing-mode .journey-copy h2,body.landing-mode .journey-scene-06 .journey-title-formulation,body.landing-mode .journey-scene-07 .journey-title-growth{max-width:100%!important;margin:10px 0 0!important;font-size:clamp(29px,8vw,36px)!important;line-height:1.22!important;letter-spacing:.02em!important;white-space:normal!important;text-align:left!important;text-wrap:balance}
  body.landing-mode .journey-title-growth>span{display:inline!important;white-space:normal!important}
  body.landing-mode .journey-copy>p{margin:10px 0 0!important;font-size:14px!important;line-height:1.58!important;letter-spacing:.025em!important;text-align:left!important}
  body.landing-mode .journey-actions{justify-content:flex-start!important;gap:9px!important;margin-top:20px!important}
  body.landing-mode .journey-button{min-height:44px!important;padding:9px 15px!important;border-radius:7px!important;font-size:13px!important}
  body.landing-mode .journey-ingredient-shortcuts{max-width:none!important;margin-top:20px!important;padding-top:13px!important}
  body.landing-mode .journey-ingredient-shortcuts>span{margin-bottom:9px!important;font-size:12px!important}
  body.landing-mode #ingredientHomeChips{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;max-height:none!important;overflow:visible!important}
  body.landing-mode #ingredientHomeChips button{min-width:0!important;min-height:40px!important;padding:7px 4px!important;font-size:12px!important;white-space:nowrap!important}
  body.landing-mode .journey-scene-03 .journey-background,body.landing-mode .journey-scene-03 .journey-background-video{object-position:49% center!important}
  body.landing-mode .journey-scene-05 .journey-background,body.landing-mode .journey-scene-05 .journey-background-video{object-position:46% center!important}
  body.landing-mode .journey-scene-07 .journey-background,body.landing-mode .journey-scene-07 .journey-background-video{object-position:50% center!important}

  body.landing-mode .journey-scene-01{align-items:center!important}
  body.landing-mode .journey-scene-01 .landing-cinematic-copy{box-sizing:border-box!important;width:calc(100% - 40px)!important;max-height:calc(100% - 54px)!important;margin:-15px 20px 0!important;padding:0!important;overflow:visible!important}
  body.landing-mode .journey-scene-01 .landing-cinematic-wordmark{width:min(342px,88vw)!important;gap:8px!important}
  body.landing-mode .journey-scene-01 .landing-cinematic-wordmark .brand-cn{font-size:clamp(40px,11.5vw,54px)!important}
  body.landing-mode .journey-scene-01 .landing-cinematic-tagline{margin-top:13px!important;font-size:15px!important;line-height:1.55!important;letter-spacing:.055em!important;text-align:center!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search{width:100%!important;margin-top:22px!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search>label{font-size:11px!important;line-height:1.45!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search-row{min-height:52px!important;padding:5px!important;border-radius:14px!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search-row input{min-width:0!important;min-height:42px!important;padding-left:10px!important;font-size:16px!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search-row .btn.primary{min-width:96px!important;min-height:42px!important;padding:0 12px!important;font-size:13px!important;border-radius:10px!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search .ingredient-home-matches{max-height:min(220px,30vh)!important}
  body.landing-mode .journey-scene-01 .landing-cta{display:none!important}

  /* Source cards: readable 2 + 2 + 1 layout instead of five narrow columns. */
  body.landing-mode .journey-scene-08{align-items:center!important}
  body.landing-mode .journey-copy-sources{width:calc(100% - 40px)!important;max-height:calc(100% - 42px)!important;margin:-8px 20px 0!important;padding:0!important;text-align:center!important;overflow:auto!important}
  body.landing-mode .journey-copy-sources h2{margin:8px auto 0!important;font-size:30px!important;text-align:center!important}
  body.landing-mode .journey-copy-sources>p{margin-top:5px!important;font-size:13px!important;text-align:center!important}
  body.landing-mode .journey-sources{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:16px!important}
  body.landing-mode .journey-sources>.journey-source-logo{min-height:79px!important;padding:10px 7px 8px!important}
  body.landing-mode .journey-sources>.journey-source-logo:last-child{grid-column:1/-1;width:calc(50% - 4px);justify-self:center}
  body.landing-mode .journey-sources strong{font-size:22px!important}
  body.landing-mode .journey-sources small{font-size:10px!important}
  body.landing-mode .journey-source-note{margin-top:9px!important;font-size:9.5px!important;line-height:1.45!important}

  /* Books become a touch-friendly snap carousel; captions no longer shrink below legibility. */
  body.landing-mode .journey-scene-09{align-items:center!important}
  body.landing-mode .journey-copy-books{width:100%!important;max-height:calc(100% - 38px)!important;margin:-4px 0 0!important;padding:0!important;text-align:left!important;overflow:hidden!important}
  body.landing-mode .journey-copy-books>.journey-eyebrow,body.landing-mode .journey-copy-books>h2,body.landing-mode .journey-copy-books>p,body.landing-mode .journey-copy-books>.journey-book-note{display:block!important;margin-left:20px!important;margin-right:20px!important}
  body.landing-mode .journey-copy-books h2{margin-top:7px!important;font-size:29px!important;line-height:1.22!important;text-align:left!important}
  body.landing-mode .journey-copy-books>p{margin-top:7px!important;font-size:12px!important;line-height:1.5!important;text-align:left!important}
  body.landing-mode .journey-book-stage{display:flex!important;justify-content:flex-start!important;align-items:flex-start!important;gap:14px!important;width:100%!important;margin-top:16px!important;padding:2px 20px 10px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;scroll-padding-left:20px!important;-webkit-overflow-scrolling:touch;perspective:none!important}
  body.landing-mode .journey-book,body.landing-mode .journey-book:nth-child(n),body.landing-mode .journey-book-featured{flex:0 0 122px!important;grid-column:auto!important;width:122px!important;animation:none!important;transform:none!important;filter:drop-shadow(0 13px 14px rgba(0,8,15,.34))!important;scroll-snap-align:start!important}
  body.landing-mode .journey-book figcaption{min-height:48px!important;padding-top:7px!important;text-align:left!important}
  body.landing-mode .journey-book figcaption strong{font-size:11px!important;line-height:1.35!important}
  body.landing-mode .journey-book figcaption small{display:block!important;font-size:9.5px!important;line-height:1.3!important}
  body.landing-mode .journey-book-note{margin-top:4px!important;font-size:9px!important}

  body.landing-mode .journey-scene-10{align-items:center!important}
  body.landing-mode .journey-scene-10 .journey-copy{width:calc(100% - 42px)!important;margin:-10px 21px 0!important;text-align:center!important}
  body.landing-mode .journey-scene-10 .journey-copy h2{text-align:center!important;font-size:clamp(32px,9.2vw,41px)!important}
  body.landing-mode .journey-closing-title>span{display:block!important}
  body.landing-mode .journey-scene-10 .journey-copy>p{text-align:center!important}
  body.landing-mode .journey-scene-10 .journey-actions{justify-content:center!important}

  body.landing-mode .journey-pagination{top:50%!important;right:5px!important;bottom:auto!important;display:flex!important;flex-direction:column!important;gap:0!important;transform:translateY(-50%)!important}
  body.landing-mode .journey-pagination button{width:28px!important;height:28px!important;padding:0!important;justify-content:center!important}
  body.landing-mode .journey-pagination button span{display:none!important}
  body.landing-mode .journey-pagination button::after{width:3px!important;height:3px!important}
  body.landing-mode .journey-pagination button[aria-current="step"]::after{width:4px!important;height:17px!important}
  body.landing-mode .journey-stepper{left:22px!important;right:auto!important;bottom:calc(11px + env(safe-area-inset-bottom))!important;gap:14px!important;font-size:12px!important}
  body.landing-mode .journey-stepper button{min-height:40px!important;padding:7px 2px!important;font-size:11px!important}

  /* Five primary destinations fit; secondary destinations live in the More sheet. */
  body:not(.landing-mode).feedy-mobile-nav-ready .sidebar{height:var(--feedy-mobile-nav)!important;padding:6px 5px max(6px,env(safe-area-inset-bottom))!important;background:rgba(10,55,44,.98)!important;box-shadow:0 -8px 24px rgba(14,45,36,.13)}
  body:not(.landing-mode).feedy-mobile-nav-ready .sidebar .nav{height:58px!important;align-items:stretch!important;justify-content:stretch!important;overflow:visible!important}
  body:not(.landing-mode).feedy-mobile-nav-ready .sidebar .nav button{min-height:52px!important;padding:5px 2px!important;gap:2px!important;border-radius:10px!important;font-size:11px!important}
  body:not(.landing-mode).feedy-mobile-nav-ready .sidebar .nav .ico{font-size:17px!important;line-height:1.2!important}
  body:not(.landing-mode).feedy-mobile-nav-ready .sidebar .nav .label{display:block!important;font-size:10px!important;line-height:1.2!important;white-space:nowrap!important;text-overflow:clip!important}
  body:not(.landing-mode).feedy-mobile-nav-ready .sidebar .nav button[data-view="workbench"],body:not(.landing-mode).feedy-mobile-nav-ready .sidebar .nav button[data-view="design"],body:not(.landing-mode).feedy-mobile-nav-ready .sidebar .nav button[data-view="growth"]{display:none!important}
  body:not(.landing-mode) .content{padding:14px 12px calc(var(--feedy-mobile-nav) + 14px)!important}
  body:not(.landing-mode) .topbar{height:52px!important;min-height:52px!important;padding:0 10px!important}
  body:not(.landing-mode) .topbar-right .about-link{display:none!important}
  body:not(.landing-mode) .topbar-right [data-go="landing"]{min-height:40px!important;height:40px!important;padding:0 10px!important;font-size:0!important}
  body:not(.landing-mode) .topbar-right .feedy-lang-switch{height:40px!important}
  body:not(.landing-mode) .topbar-right .feedy-lang-switch button{min-height:34px!important;font-size:12px!important}
  .feedy-mobile-more[aria-expanded="true"]{background:rgba(255,255,255,.14)!important;color:#fff!important}

  .feedy-mobile-menu{position:fixed;inset:0;z-index:3600;display:flex;align-items:flex-end;justify-content:center;padding:16px 12px max(12px,env(safe-area-inset-bottom));background:rgba(4,24,20,.52);backdrop-filter:blur(4px)}
  .feedy-mobile-menu[hidden]{display:none!important}
  .feedy-mobile-menu-card{width:min(480px,100%);max-height:calc(var(--feedy-mobile-vh) - 48px);overflow:auto;padding:10px 12px 14px;border:1px solid #dbe7e1;border-radius:20px;background:#fff;box-shadow:0 24px 70px rgba(2,25,18,.3)}
  .feedy-mobile-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 3px 11px}
  .feedy-mobile-menu-head b{color:#183f33;font-size:16px}
  .feedy-mobile-menu-close{display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:12px;background:#edf4f0;color:#315f50;font-size:25px}
  .feedy-mobile-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .feedy-mobile-menu-grid button{display:flex;align-items:center;gap:10px;min-height:54px;padding:10px 12px;border:1px solid #dce8e2;border-radius:13px;background:#f8fbf9;color:#214c3e;font:750 13px/1.3 system-ui,-apple-system,sans-serif;text-align:left}
  .feedy-mobile-menu-grid button span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#e6f1eb;color:#17644d;font-size:15px}

  /* Workbench controls, forms, tables and dialogs. */
  body:not(.landing-mode) input:not([type="checkbox"]):not([type="radio"]),body:not(.landing-mode) select,body:not(.landing-mode) textarea{min-height:44px;font-size:16px!important}
  body:not(.landing-mode) .btn,body:not(.landing-mode) button{touch-action:manipulation}
  body:not(.landing-mode) .btn:not(.xs),body:not(.landing-mode) .sheet-btn,body:not(.landing-mode) .f540-btn{min-height:42px}
  body:not(.landing-mode) .page-head{gap:11px!important;margin-bottom:15px!important}
  body:not(.landing-mode) .page-head h2{font-size:23px!important;line-height:1.25!important}
  body:not(.landing-mode) .page-head p{font-size:13px!important;line-height:1.6!important}
  body:not(.landing-mode) .sheet-shell,body:not(.landing-mode) .panel,body:not(.landing-mode) .card{max-width:100%;overflow:hidden}
  body:not(.landing-mode) .sheet-table-wrap,body:not(.landing-mode) .table-wrap,body:not(.landing-mode) .f540-table-wrap,body:not(.landing-mode) .ingredient-table-wrap{position:relative;max-width:100%;overflow-x:auto!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  body:not(.landing-mode) .sheet-table,body:not(.landing-mode) .f540-table{font-size:12px!important}
  body:not(.landing-mode) .sheet-table th,body:not(.landing-mode) .sheet-table td,body:not(.landing-mode) .f540-table th,body:not(.landing-mode) .f540-table td{padding:9px 8px!important;line-height:1.4!important}
  body:not(.landing-mode) .sheet-table-wrap>table th:first-child,body:not(.landing-mode) .sheet-table-wrap>table td:first-child,body:not(.landing-mode) .f540-table-wrap>table th:first-child,body:not(.landing-mode) .f540-table-wrap>table td:first-child{position:sticky;left:0;z-index:2;background:#fff;box-shadow:1px 0 #dde7e2}
  body:not(.landing-mode) .sheet-table-wrap>table thead th:first-child,body:not(.landing-mode) .f540-table-wrap>table thead th:first-child{z-index:3;background:#f6f9f7}
  body:not(.landing-mode) .ingredient-picker-modal,body:not(.landing-mode) .batch-modal,body:not(.landing-mode) .about-modal,body:not(.landing-mode) .help-modal,body:not(.landing-mode) .f540-modal-backdrop{padding:8px 8px max(8px,env(safe-area-inset-bottom))!important;align-items:flex-end!important}
  body:not(.landing-mode) .ingredient-picker-card,body:not(.landing-mode) .batch-modal-card,body:not(.landing-mode) .about-card,body:not(.landing-mode) .help-card,body:not(.landing-mode) .f540-modal{width:100%!important;max-width:100%!important;max-height:calc(var(--feedy-mobile-vh) - 16px)!important;border-radius:18px 18px 12px 12px!important}
  body:not(.landing-mode) .ingredient-picker-head,body:not(.landing-mode) .batch-modal-head,body:not(.landing-mode) .about-head,body:not(.landing-mode) .help-card-head{position:sticky;top:0;z-index:4;background:#f8fbf9}
  body:not(.landing-mode) .ingredient-picker-foot,body:not(.landing-mode) .batch-modal-foot{position:sticky;bottom:0;z-index:4;padding-bottom:max(12px,env(safe-area-inset-bottom))!important;background:#fff!important;flex-wrap:wrap!important}
}

@media(max-width:390px){
  body.landing-mode .landing-brand-mark{min-width:92px!important}
  body.landing-mode .landing-logo-symbol{flex-basis:31px!important;width:31px!important}
  body.landing-mode .landing-logo-lockup strong{font-size:18px!important}
  body.landing-mode .landing-logo-lockup em{font-size:15px!important}
  body.landing-mode .landing-actions{gap:5px!important}
  body.landing-mode .landing-actions .feedy-lang-switch button{min-width:34px!important;padding:0 6px!important}
  body.landing-mode .landing-actions>.btn.primary{min-width:91px!important;padding:0 8px!important;font-size:11px!important}
  body.landing-mode .journey-scene-01 .landing-cinematic-copy{width:calc(100% - 30px)!important;margin-left:15px!important;margin-right:15px!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search-row .btn.primary{min-width:87px!important;padding:0 9px!important}
}

@media(max-width:760px) and (max-height:650px){
  body.landing-mode .journey-copy{margin-bottom:66px!important;max-height:calc(100% - 62px)!important}
  body.landing-mode .journey-copy h2,body.landing-mode .journey-scene-06 .journey-title-formulation,body.landing-mode .journey-scene-07 .journey-title-growth{font-size:28px!important}
  body.landing-mode .journey-copy>p{font-size:13px!important}
  body.landing-mode .journey-actions{margin-top:14px!important}
  body.landing-mode .journey-ingredient-shortcuts{margin-top:13px!important}
  body.landing-mode .journey-scene-01 .landing-cinematic-copy{margin-top:-4px!important}
  body.landing-mode .journey-scene-01 .landing-cinematic-wordmark{width:min(292px,82vw)!important}
  body.landing-mode .journey-scene-01 .ingredient-home-search{margin-top:14px!important}
  body.landing-mode .journey-copy-sources{margin-top:0!important}
  body.landing-mode .journey-sources{margin-top:9px!important}
  body.landing-mode .journey-sources>.journey-source-logo{min-height:64px!important;padding:6px!important}
  body.landing-mode .journey-copy-books h2{font-size:25px!important}
  body.landing-mode .journey-book-stage{margin-top:8px!important}
  body.landing-mode .journey-book,body.landing-mode .journey-book:nth-child(n),body.landing-mode .journey-book-featured{flex-basis:94px!important;width:94px!important}
}

@media(prefers-reduced-motion:reduce){
  .feedy-runtime-loader i{animation-duration:1.5s!important}
}

/* Loader is viewport-safe on every device; progress is visible during first entry. */
.feedy-runtime-loader{height:var(--feedy-mobile-vh,100dvh);min-height:0;inset:0 0 auto!important}
.feedy-runtime-loader>div{width:min(360px,calc(100vw - 36px));padding:25px 24px 23px!important}
.feedy-runtime-loader .feedy-loader-progress{width:100%;height:4px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.14)}
.feedy-runtime-loader .feedy-loader-progress>i{display:block;width:var(--feedy-load-progress,3%);height:100%;border:0;border-radius:inherit;background:linear-gradient(90deg,#b8decd,#efc875);animation:none;transition:width .22s ease}
.feedy-runtime-loader .feedy-loader-status{font-variant-numeric:tabular-nums;color:#e9d5a8;font-size:10px}
