.landing{--font-display:var(--font-playfair), Georgia, serif;--font-body:var(--font-lora), Georgia, serif;--font-ui:var(--font-geist), system-ui, sans-serif;font-family:var(--font-body);color:var(--color-cream);font-size:16px;line-height:1.6}html:has(.landing){scroll-behavior:smooth}.landing main,.landing header,.landing footer{z-index:1;position:relative}.landing h1,.landing h2,.landing h4,.landing h5{font-family:var(--font-display);color:var(--color-cream)}.landing h3{font-family:var(--font-body);color:var(--color-cream);font-style:italic}.landing a{color:var(--color-brass-light);text-decoration:none}.landing a:hover{text-decoration:underline}.landing .container{max-width:1200px;padding:0 var(--space-6);margin:0 auto}.landing .btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-ui);letter-spacing:.01em;border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:12px 22px;font-size:14px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.landing .btn-brass{background-color:var(--color-brass);color:var(--color-bg-base)}.landing .btn-brass:hover{background-color:var(--color-brass-light)}.landing .btn-outline{color:var(--color-cream-muted);border-color:var(--color-border);background:0 0}.landing .btn-outline:hover{border-color:var(--color-brass);color:var(--color-brass-light)}.landing .btn-teal{background-color:var(--color-teal);color:var(--color-cream)}.landing .btn-teal:hover{background-color:var(--color-teal-light)}.landing .eyebrow{font-family:var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--color-brass);margin-bottom:var(--space-3);font-size:12px;font-weight:600;display:block}.landing #localise,.landing .loc-us,.landing #localise:checked~* .loc-nz{display:none}.landing #localise:checked~* .loc-us{display:inline}.landing .localise-toggle{align-items:center;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:var(--space-6);font-family:var(--font-ui);color:var(--color-cream-muted);font-size:13px;font-weight:500;display:inline-flex}.landing .localise-toggle .pill{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:999px;align-items:center;gap:2px;padding:2px;transition:border-color .15s;display:inline-flex}.landing .localise-toggle:hover .pill{border-color:var(--color-brass)}.landing .localise-toggle .pill span{font-family:var(--font-ui);letter-spacing:.08em;color:var(--color-slate);border-radius:999px;padding:3px 12px;font-size:12px;font-weight:600;transition:background-color .15s,color .15s}.landing .localise-toggle .pill .opt-nz{background:var(--color-brass);color:var(--color-bg-base)}.landing #localise:checked~* .localise-toggle .pill .opt-nz{color:var(--color-slate);background:0 0}.landing #localise:checked~* .localise-toggle .pill .opt-us{background:var(--color-brass);color:var(--color-bg-base)}.landing .localise-caption{font-family:var(--font-ui);color:var(--color-slate);margin-top:var(--space-2);max-width:46ch;font-size:12px}.landing #scale-1,.landing #scale-1-5,.landing #scale-2{display:none}.landing .toggles-row{gap:var(--space-6);margin-top:var(--space-6);flex-wrap:wrap;align-items:center;display:flex}.landing .toggles-row .localise-toggle{margin-top:0}.landing .scale-widget{align-items:center;gap:var(--space-3);font-family:var(--font-ui);color:var(--color-cream-muted);font-size:13px;font-weight:500;display:inline-flex}.landing .scale-widget .pill{background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:999px;align-items:center;gap:2px;padding:2px;transition:border-color .15s;display:inline-flex}.landing .scale-widget:hover .pill{border-color:var(--color-brass)}.landing .scale-opt{font-family:var(--font-ui);letter-spacing:.08em;color:var(--color-slate);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;transition:background-color .15s,color .15s}.landing label[for=scale-1].scale-opt{background:var(--color-brass);color:var(--color-bg-base)}.landing #scale-1-5:checked~* label[for=scale-1].scale-opt{color:var(--color-slate);background:0 0}.landing #scale-1-5:checked~* label[for=scale-1-5].scale-opt{background:var(--color-brass);color:var(--color-bg-base)}.landing #scale-2:checked~* label[for=scale-1].scale-opt{color:var(--color-slate);background:0 0}.landing #scale-2:checked~* label[for=scale-2].scale-opt{background:var(--color-brass);color:var(--color-bg-base)}.landing .pan-warning{color:var(--color-brass-light);display:none}.landing #scale-1-5:checked~* .pan-warning,.landing #scale-2:checked~* .pan-warning{display:block}.landing .scale-x1{display:inline}.landing .scale-x1-5,.landing .scale-x2,.landing #scale-1-5:checked~* .scale-x1{display:none}.landing #scale-1-5:checked~* .scale-x1-5{display:inline}.landing #scale-2:checked~* .scale-x1{display:none}.landing #scale-2:checked~* .scale-x2{display:inline}.landing .koji-why{color:var(--color-cream-muted);border-left:2px solid var(--color-brass);padding-left:var(--space-4);margin-top:var(--space-4);max-width:56ch;font-style:italic}.landing .gloss{cursor:help;-webkit-text-decoration:underline dotted var(--color-brass);text-decoration:underline dotted var(--color-brass);text-underline-offset:3px;outline:none;position:relative}.landing .gloss .gloss-card{visibility:hidden;opacity:0;background:var(--color-bg-surface);border:1px solid var(--color-border);width:300px;padding:var(--space-3) var(--space-4);font-style:normal;font-family:var(--font-body);color:var(--color-cream-muted);text-align:left;z-index:30;border-radius:6px;font-size:13px;line-height:1.55;transition:opacity .12s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000073}.landing .gloss .gloss-card:after{content:"";border:6px solid #0000;border-top-color:var(--color-border);position:absolute;top:100%;left:50%;transform:translate(-50%)}.landing .gloss:hover .gloss-card,.landing .gloss:focus .gloss-card{visibility:visible;opacity:1}.landing .gloss-term{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:4px;display:flex}.landing .gloss-word{font-family:var(--font-display);color:var(--color-cream);font-size:15px}.landing .gloss-tag{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--color-brass);border:1px solid color-mix(in srgb, var(--color-brass) 40%, transparent);white-space:nowrap;border-radius:3px;padding:1px 5px;font-size:9px}.landing .gloss-card em{color:var(--color-cream)}.landing header.site{border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg-base) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;position:sticky;top:0}.landing .nav{padding:var(--space-4) var(--space-6);justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.landing .logo{align-items:baseline;gap:var(--space-3);display:flex}.landing .logo .mark{font-family:var(--font-display);color:var(--color-cream);letter-spacing:.01em;font-size:26px;font-weight:700}.landing .logo .mark .accent{color:var(--color-brass)}.landing .logo .domain{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-slate);font-size:12px}.landing .nav-links{align-items:center;gap:var(--space-6);display:flex}.landing .nav-links a{font-family:var(--font-ui);color:var(--color-cream-muted);font-size:14px}.landing .nav-links a:hover{color:var(--color-brass-light);text-decoration:none}@media (max-width:720px){.landing .nav-links a.hide-mobile{display:none}}.landing .hero{padding:var(--space-10) 0}.landing .hero-grid{gap:var(--space-12);grid-template-columns:1.05fr .95fr;align-items:center;display:grid}@media (max-width:880px){.landing .hero-grid{grid-template-columns:1fr}}.landing .hero h1{text-wrap:balance;margin-bottom:var(--space-4);font-size:clamp(34px,4.5vw,50px);font-weight:600;line-height:1.12}.landing .hero h1 em{color:var(--color-brass-light);font-style:italic}.landing .hero .lede{color:var(--color-cream-muted);max-width:46ch;margin-bottom:var(--space-6);font-size:19px}.landing .hero-copy .persona-crosslink{text-align:left}.landing .waitlist{gap:var(--space-2);max-width:460px;display:flex}.landing .waitlist input[type=email]{font-family:var(--font-ui);color:var(--color-cream);background-color:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius);flex:1;min-width:0;padding:12px 14px;font-size:14px}.landing .waitlist input[type=email]::placeholder{color:var(--color-slate)}.landing .waitlist input[type=email]:focus{border-color:var(--color-brass);outline:none}.landing .waitlist-note{font-family:var(--font-ui);color:var(--color-slate);margin-top:var(--space-2);font-size:12px}@media (max-width:480px){.landing .waitlist{flex-direction:column}}.landing .plan-preview{border-top:1px solid var(--color-border);padding-top:var(--space-3);margin-bottom:var(--space-4)}.landing .plan-row{gap:var(--space-3);align-items:baseline;padding:5px 0;display:flex}.landing .plan-row .day{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-slate);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;width:76px;font-size:11px}.landing .plan-row .dish{color:var(--color-cream);font-size:14.5px}.landing .plan-row .dish .why{font-family:var(--font-ui);color:var(--color-slate);font-size:11.5px;display:block}.landing .widget-cta{width:100%}.landing .section{padding:var(--space-16) 0;border-top:1px solid var(--color-border)}.landing .section-grid{gap:var(--space-12);grid-template-columns:1fr 1fr;align-items:center;display:grid}.landing .section-grid.flip>.copy{order:2}.landing .section-grid.flip>.mock{order:1}@media (max-width:880px){.landing .section-grid{grid-template-columns:1fr}.landing .section-grid.flip>.copy{order:1}.landing .section-grid.flip>.mock{order:2}}.landing .section h2{margin-bottom:var(--space-4);text-wrap:balance;font-size:clamp(26px,3.4vw,36px);font-weight:600;line-height:1.2}.landing .section .copy p{color:var(--color-cream-muted);margin-bottom:var(--space-4);max-width:52ch}.landing .section .copy ul{margin-top:var(--space-4);list-style:none}.landing .section .copy li{color:var(--color-cream-muted);padding:5px 0 5px 22px;font-size:15px;position:relative}.landing .section .copy li:before{content:"";background-color:var(--color-teal);border-radius:50%;width:8px;height:8px;position:absolute;top:14px;left:4px}.landing .mock-panel{padding:var(--space-4);box-shadow:0 18px 48px #0006}.landing .mock-titlebar{padding-bottom:var(--space-3);margin-bottom:var(--space-3);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.landing .mock-titlebar .t{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-slate);font-size:12px;font-weight:600}.landing .badge{font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:600}.landing .badge-brass{color:var(--color-brass-light);background:color-mix(in srgb, var(--color-brass) 14%, transparent);border:1px solid color-mix(in srgb, var(--color-brass) 40%, transparent)}.landing .badge-teal{color:var(--color-teal-light);background:color-mix(in srgb, var(--color-teal) 18%, transparent);border:1px solid color-mix(in srgb, var(--color-teal) 50%, transparent)}.landing .badge-forest{color:#7dba94;background:color-mix(in srgb, var(--color-forest-light) 22%, transparent);border:1px solid color-mix(in srgb, var(--color-forest-light) 55%, transparent)}.landing .import-flow{gap:var(--space-3);grid-template-columns:1fr 24px 1.4fr;align-items:center;display:grid}.landing .import-src{background:var(--color-bg-input);border:1px dashed var(--color-border);border-radius:var(--radius);padding:var(--space-3);font-family:var(--font-ui);color:var(--color-slate);text-align:center;font-size:12px}.landing .import-src .kind{margin-bottom:4px;font-size:20px;display:block}.landing .import-arrow{color:var(--color-brass);text-align:center;font-size:18px;font-family:var(--font-ui)}.landing .extracted{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3)}.landing .extracted .r-title{font-family:var(--font-display);margin-bottom:6px;font-size:16px;font-weight:600}.landing .phase{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--color-teal-light);margin:var(--space-2) 0 2px;align-items:center;gap:var(--space-2);font-size:11px;font-weight:600;display:flex}.landing .phase:before{content:"";background:var(--color-teal);border-radius:50%;width:8px;height:8px}.landing .step-line{color:var(--color-cream-muted);padding-left:16px;font-size:13px}.landing .step-line .qty{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-brass-light);font-size:12px}.landing .cook-step-num{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-slate);margin-bottom:var(--space-2);font-size:12px}.landing .cook-step-text{margin-bottom:var(--space-4);font-size:17px;line-height:1.55}.landing .cook-step-text .inline-qty{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-brass-light);font-size:15px}.landing .timer-block{align-items:center;gap:var(--space-4);background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3);display:flex}.landing .timer-digits{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-brass-light);letter-spacing:.04em;font-size:34px;font-weight:500}.landing .timer-meta{font-family:var(--font-ui);color:var(--color-slate);font-size:12px}.landing .cook-foot{gap:var(--space-2);flex-wrap:wrap;display:flex}.landing .shoplist{flex-direction:column;display:flex}.landing .shoplist-group{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-slate);padding:10px 0 4px;font-size:10.5px;font-weight:600}.landing .shoplist-item{border-bottom:1px solid color-mix(in srgb, var(--color-border) 50%, transparent);cursor:pointer;align-items:center;gap:10px;padding:6px 0;display:flex}.landing .shoplist-check{display:none}.landing .shoplist-item .tick{border:1px solid var(--color-border);width:16px;height:16px;color:var(--color-bg-base);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;transition:background-color .15s,border-color .15s;display:inline-flex}.landing .shoplist-item:hover .tick{border-color:var(--color-brass)}.landing .shoplist-check:checked~.tick{background:var(--color-brass);border-color:var(--color-brass)}.landing .shoplist-check:checked~.tick:after{content:"✓"}.landing .shoplist-item .name{font-family:var(--font-body);color:var(--color-cream);min-width:0;font-size:14px}.landing .shoplist-check:checked~.name{color:var(--color-slate);text-decoration:line-through}.landing .shoplist-foot{font-family:var(--font-ui);color:var(--color-slate);padding-top:8px;font-size:11px}.landing .org-mark{font-family:var(--font-ui);color:#7dba94;border:1px solid var(--color-forest-light);vertical-align:1px;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10px}.landing .chat{gap:var(--space-3);flex-direction:column;display:flex}.landing .msg{border-radius:var(--radius);max-width:85%;font-family:var(--font-body);color:var(--color-cream-muted);border:1px solid var(--color-border);padding:8px 12px;font-size:14px;line-height:1.55}.landing .msg.user{background:var(--color-bg-elevated);align-self:flex-end}.landing .msg.koji{background:var(--color-bg-input);align-self:flex-start}.landing .obsessive-grid{gap:var(--space-4);margin-top:var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:880px){.landing .obsessive-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.landing .obsessive-grid{grid-template-columns:1fr}}.landing .ob-card{padding:var(--space-4)}.landing .ob-card h4{margin:var(--space-2) 0 var(--space-2);font-size:17px;font-weight:600}.landing .ob-card p{color:var(--color-slate);font-size:13.5px;line-height:1.55}.landing .ob-card .mono-detail{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-teal-light);margin-top:var(--space-3);font-size:11.5px;display:block}.landing .cta-band{text-align:center;padding:var(--space-16) 0;border-top:1px solid var(--color-border);background:linear-gradient(180deg, color-mix(in srgb, var(--color-bg-surface) 60%, var(--color-bg-base)) 0%, var(--color-bg-base) 100%)}.landing .cta-band h2{margin-bottom:var(--space-3);font-size:clamp(28px,4vw,40px)}.landing .cta-band p{color:var(--color-cream-muted);margin-bottom:var(--space-8)}.landing .cta-band .waitlist{margin:0 auto}.landing footer.site{border-top:1px solid var(--color-border);padding:var(--space-8) 0}.landing .footer-grid{justify-content:space-between;align-items:baseline;gap:var(--space-6);flex-wrap:wrap;display:flex}.landing footer .fine{font-family:var(--font-ui);color:var(--color-slate);font-size:12.5px}.landing footer .fine a{color:var(--color-cream-muted)}.landing .section-divider-deco{text-align:center;color:var(--color-brass);font-family:var(--font-display);letter-spacing:.6em;opacity:.6;font-size:18px}.landing .section h2 em{color:var(--color-brass-light);font-style:normal}.landing .signup-caveat{font-family:var(--font-ui);color:var(--color-slate);margin-top:var(--space-3);max-width:460px;font-size:12px}.landing .cta-band .signup-caveat{margin-left:auto;margin-right:auto}.landing .rule-list{gap:var(--space-2);flex-direction:column;display:flex}.landing .rule-item{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 12px;display:flex}.landing .rule-item .r-name{font-family:var(--font-body);color:var(--color-cream);font-size:14px}.landing .rule-flag{border-left:3px solid var(--color-brass);background:color-mix(in srgb, var(--color-bg-elevated) 95%, var(--color-brass) 5%);border-radius:0 var(--radius) var(--radius) 0;font-family:var(--font-ui);color:var(--color-cream-muted);margin-top:var(--space-3);padding:10px 12px;font-size:12.5px}.landing .seasonality-rows{gap:var(--space-3);margin-bottom:var(--space-3);flex-direction:column;display:flex}.landing .seasonality-row-head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:4px;display:flex}.landing .seasonality-row-head .ing-name{font-family:var(--font-body);color:var(--color-cream);min-width:0;font-size:13px}.landing .season-pill{font-family:var(--font-ui);white-space:nowrap;border:1px solid;border-radius:99px;flex-shrink:0;padding:1px 7px;font-size:10px;font-weight:600}.landing .ver-row{padding:var(--space-3) 0;border-bottom:1px solid color-mix(in srgb, var(--color-border) 50%, transparent)}.landing .ver-row:last-child{border-bottom:none;padding-bottom:0}.landing .ver-row.current{border-left:3px solid var(--color-brass);padding-left:var(--space-3)}.landing .ver-head{align-items:baseline;gap:var(--space-3);display:flex}.landing .ver-num{font-family:var(--font-mono), "Courier New", monospace;color:var(--color-brass-light);flex-shrink:0;font-size:13px}.landing .ver-summary{font-family:var(--font-body);color:var(--color-cream);font-size:14px}.landing .ver-meta{font-family:var(--font-ui);color:var(--color-slate);margin:3px 0 5px;font-size:11.5px}.landing .ver-note{font-family:var(--font-body);color:var(--color-cream-muted);border-left:2px solid var(--color-border);padding-left:var(--space-3);font-size:13px;font-style:italic}.landing .menu-row{justify-content:space-between;align-items:baseline;gap:var(--space-3);border-bottom:1px solid color-mix(in srgb, var(--color-border) 50%, transparent);padding:9px 0;display:flex}.landing .menu-row .course{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--color-slate);flex-shrink:0;width:74px;font-size:11px}.landing .menu-row .dish-name{font-family:var(--font-body);color:var(--color-cream);flex:1;font-size:14.5px}.landing .menu-row .pairing{font-family:var(--font-ui);color:var(--color-brass-light);text-align:right;font-size:11px}.landing .mock-titlebar{gap:var(--space-3)}.landing .mock-titlebar .t{min-width:0}.landing .mock-titlebar .badge{white-space:nowrap;flex-shrink:0}.landing .rule-item .r-name{min-width:0}.landing .rule-item .badge{white-space:nowrap;flex-shrink:0}.landing .persona-crosslink{margin-top:var(--space-4);font-family:var(--font-ui);color:var(--color-slate);text-align:center;font-size:13px}.landing .persona-crosslink a{color:var(--color-brass-light)}.landing .persona-crosslink a:hover{text-decoration:underline}.landing .sec-pricing .pricing-intro{font-family:var(--font-body);color:var(--color-cream-muted);max-width:56ch;margin:0 auto var(--space-8);text-align:center}.landing .pricing-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-width:860px;margin:0 auto;display:grid}.landing .pricing-card{padding:var(--space-5);text-align:center}.landing .pricing-name{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--color-brass-light);margin-bottom:var(--space-2);font-size:12px}.landing .pricing-price{font-family:var(--font-display);color:var(--color-cream);font-size:34px}.landing .pricing-price .per{color:var(--color-slate);font-size:15px}.landing .pricing-blurb{font-family:var(--font-body);color:var(--color-cream-muted);margin:var(--space-3) 0;font-size:14px}.landing .pricing-fine{font-family:var(--font-ui);color:var(--color-slate);max-width:64ch;margin:var(--space-4) auto 0;text-align:center;font-size:11.5px}
