:root{--cream:#fff4df;--paper:#fffaf1;--tan:#f3dcb8;--sage:#6f7f45;--sage-dark:#3f512a;--tomato:#c94f3d;--tomato-dark:#a93b2c;--ink:#24170f;--muted:#796b5e;--line:#24170f21;--shadow:0 24px 70px #32201229;--shadow-sm:0 10px 30px #3c28141a;--radius:28px;--maxw:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(180deg, var(--cream), #fffdf7 38%, var(--cream));color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{font-family:Playfair Display,Georgia,serif}button{font-family:inherit}:focus-visible{outline:3px solid var(--tomato);outline-offset:2px}.grain{pointer-events:none;opacity:.35;mix-blend-mode:multiply;z-index:0;background-image:radial-gradient(#24170f14 1px,#0000 1px);background-size:18px 18px;position:fixed;inset:0}.container{max-width:var(--maxw);margin:0 auto;padding:0 22px}.eyebrow{letter-spacing:.09em;text-transform:uppercase;background:#ffffff2e;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:9px;padding:9px 14px;font-size:12px;font-weight:800;display:inline-flex}.fade-up{opacity:0;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(26px)}.fade-up.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fade-up{opacity:1;transition:none;transform:none}}.nav[data-v-bdf2a396]{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#fff4dfd1;position:sticky;top:0}.nav-inner[data-v-bdf2a396]{justify-content:space-between;align-items:center;gap:18px;padding-top:12px;padding-bottom:12px;display:flex}.brand[data-v-bdf2a396]{letter-spacing:.01em;align-items:center;gap:12px;font-family:Inter,sans-serif;font-size:16px;font-weight:900;display:flex}.brand img[data-v-bdf2a396]{border-radius:14px;box-shadow:0 10px 24px #c94f3d33}.links[data-v-bdf2a396]{align-items:center;gap:4px;display:flex}.links a[data-v-bdf2a396]{color:#4d3c2f;border-radius:999px;padding:10px 14px;font-size:14px;font-weight:700;transition:background .2s,box-shadow .2s}.links a[data-v-bdf2a396]:hover{box-shadow:var(--shadow-sm);background:#fff}.nav-cta[data-v-bdf2a396]{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:800;transition:transform .15s,background .2s;box-shadow:0 10px 24px #24170f33}.nav-cta[data-v-bdf2a396]:hover{background:#000;transform:translateY(-2px)}.nav-cta.wide[data-v-bdf2a396]{width:100%;margin-top:8px;padding:14px}.burger[data-v-bdf2a396]{cursor:pointer;background:0 0;border:0;width:44px;height:44px;display:none;position:relative}.burger span[data-v-bdf2a396],.burger span[data-v-bdf2a396]:before,.burger span[data-v-bdf2a396]:after{content:"";background:var(--ink);border-radius:4px;width:24px;height:2.5px;transition:all .25s;position:absolute;left:10px}.burger span[data-v-bdf2a396]{top:21px}.burger span[data-v-bdf2a396]:before{top:-7px}.burger span[data-v-bdf2a396]:after{top:7px}.burger span.open[data-v-bdf2a396]{background:0 0}.burger span.open[data-v-bdf2a396]:before{top:0;transform:rotate(45deg)}.burger span.open[data-v-bdf2a396]:after{top:0;transform:rotate(-45deg)}.mobile-menu[data-v-bdf2a396]{flex-direction:column;gap:4px;padding:14px 22px 22px;display:none}.mobile-menu a[data-v-bdf2a396]{color:#4d3c2f;border-bottom:1px solid var(--line);border-radius:16px;padding:14px 12px;font-weight:700}.sheet-enter-active[data-v-bdf2a396],.sheet-leave-active[data-v-bdf2a396]{transition:opacity .2s,transform .2s;overflow:hidden}.sheet-enter-from[data-v-bdf2a396],.sheet-leave-to[data-v-bdf2a396]{opacity:0;transform:translateY(-8px)}@media (width<=860px){.links[data-v-bdf2a396],.nav-inner>.nav-cta[data-v-bdf2a396]{display:none}.burger[data-v-bdf2a396]{display:block}.mobile-menu[data-v-bdf2a396]{display:flex}}.footer[data-v-42ba89b2]{color:#342316;z-index:1;background:#ead1a9;margin-top:90px;padding:48px 0 24px;position:relative}.footer-inner[data-v-42ba89b2]{flex-wrap:wrap;justify-content:space-between;gap:40px;display:flex}.brand-block[data-v-42ba89b2]{max-width:320px}.brand[data-v-42ba89b2]{align-items:center;gap:12px;font-size:18px;display:flex}.brand img[data-v-42ba89b2]{border-radius:12px}.brand-block p[data-v-42ba89b2]{color:#5b4734;margin-top:14px;line-height:1.6}.cols[data-v-42ba89b2]{flex-wrap:wrap;gap:56px;display:flex}.cols h4[data-v-42ba89b2]{text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px;font-family:Inter,sans-serif;font-size:13px}.cols a[data-v-42ba89b2]{color:#5b4734;margin-bottom:10px;font-weight:600;display:block}.cols a[data-v-42ba89b2]:hover{color:var(--tomato)}.subscribe[data-v-42ba89b2]{background:#fff6e8;border-radius:999px;max-width:260px;padding:5px;display:flex}.subscribe input[data-v-42ba89b2]{background:0 0;border:0;outline:0;flex:1;min-width:0;padding:8px 12px;font-size:14px}.subscribe button[data-v-42ba89b2]{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:9px 18px;font-weight:800}.social[data-v-42ba89b2]{gap:10px;margin-top:16px;display:flex}.social a[data-v-42ba89b2]{background:#fff6e8;border-radius:999px;place-items:center;width:40px;height:40px;margin:0;font-weight:900;display:grid}.social a[data-v-42ba89b2]:hover{background:#fff}.copyright[data-v-42ba89b2]{color:#6a5641;border-top:1px solid #3423162e;margin-top:36px;padding-top:20px;font-size:13px;font-weight:600}@media (width<=640px){.footer-inner[data-v-42ba89b2]{flex-direction:column;gap:28px}.cols[data-v-42ba89b2]{gap:32px}}.recipe[data-v-d3b46a8c]{cursor:pointer;background:#fffaf1e6;border:1px solid #24170f1a;border-radius:30px;flex-direction:column;transition:transform .28s,box-shadow .28s;display:flex;overflow:hidden;box-shadow:0 16px 50px #38241217}.recipe[data-v-d3b46a8c]:hover{transform:translateY(-8px);box-shadow:0 26px 70px #3824122e}.photo[data-v-d3b46a8c]{height:210px;position:relative;overflow:hidden}.photo img[data-v-d3b46a8c]{object-fit:cover;width:100%;height:100%;transition:transform .45s}.recipe:hover .photo img[data-v-d3b46a8c]{transform:scale(1.08)}.badge[data-v-d3b46a8c]{text-transform:capitalize;box-shadow:var(--shadow-sm);background:#fffffff0;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:800;position:absolute;top:14px;left:14px}.save[data-v-d3b46a8c]{width:42px;height:42px;color:var(--tomato);cursor:pointer;box-shadow:var(--shadow-sm);background:#fffffff2;border:0;border-radius:999px;font-size:19px;line-height:1;transition:transform .15s;position:absolute;top:14px;right:14px}.save[data-v-d3b46a8c]:hover{transform:scale(1.12)}.save.active[data-v-d3b46a8c]{background:var(--tomato);color:#fff}.recipe-body[data-v-d3b46a8c]{flex-direction:column;flex:1;padding:20px;display:flex}.recipe-body h3[data-v-d3b46a8c]{margin:0;font-size:22px}.meta[data-v-d3b46a8c]{flex-wrap:wrap;gap:8px;margin:12px 0 14px;display:flex}.meta span[data-v-d3b46a8c]{color:#604a35;background:#f2e1c3;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.recipe-body p[data-v-d3b46a8c]{color:var(--muted);flex:1;margin:0;line-height:1.55}.quick-actions[data-v-d3b46a8c]{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:18px;padding-top:16px;display:flex}.rating[data-v-d3b46a8c]{color:#d98b1f;letter-spacing:1px;font-weight:900}.rating .dim[data-v-d3b46a8c]{color:#24170f2e}.btn-row[data-v-d3b46a8c]{gap:8px;display:flex}.add[data-v-d3b46a8c],.view[data-v-d3b46a8c]{cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800;transition:background .2s}.add[data-v-d3b46a8c]{color:var(--sage-dark);border:1px solid var(--line)}.add[data-v-d3b46a8c]:hover{background:#fff}.view[data-v-d3b46a8c]{color:var(--tomato)}.view[data-v-d3b46a8c]:hover{background:#fff0ec}.modal[data-v-0b559783]{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17100a99;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card[data-v-0b559783]{background:var(--paper);border-radius:32px;width:min(880px,100%);max-height:92vh;overflow:auto;box-shadow:0 34px 100px #0006}.hero[data-v-0b559783]{position:relative}.hero img[data-v-0b559783]{object-fit:cover;width:100%;height:320px}.close[data-v-0b559783]{color:var(--ink);cursor:pointer;width:42px;height:42px;box-shadow:var(--shadow-sm);background:#fffffff2;border:0;border-radius:999px;font-weight:900;position:absolute;top:18px;right:18px}.content[data-v-0b559783]{padding:26px 28px 32px}.top[data-v-0b559783]{justify-content:space-between;align-items:center;gap:12px;display:flex}.cat[data-v-0b559783]{color:#4b3829;text-transform:uppercase;letter-spacing:.06em;background:#f2e1c3;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:800}.save[data-v-0b559783]{border:1px solid var(--line);color:var(--tomato);cursor:pointer;background:#fff;border-radius:999px;padding:9px 16px;font-weight:800}.save.active[data-v-0b559783]{background:var(--tomato);color:#fff;border-color:var(--tomato)}h2[data-v-0b559783]{margin:16px 0 8px;font-size:clamp(30px,5vw,42px)}.blurb[data-v-0b559783]{color:var(--muted);margin:0 0 16px;line-height:1.7}.meta[data-v-0b559783]{flex-wrap:wrap;gap:8px;margin-bottom:26px;display:flex}.meta span[data-v-0b559783]{border:1px solid var(--line);color:#5a4838;background:#fff;border-radius:999px;padding:8px 13px;font-size:13px;font-weight:800}.meta .rating[data-v-0b559783]{color:#d98b1f}h3[data-v-0b559783]{margin:0 0 4px;font-size:24px}.hint[data-v-0b559783]{color:var(--muted);margin:0 0 16px;font-size:14px}.shopping[data-v-0b559783]{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.item[data-v-0b559783]{border:1px solid var(--line);color:#564639;cursor:pointer;background:#fff;border-radius:16px;align-items:center;gap:12px;padding:14px;font-weight:600;transition:background .2s,opacity .2s;display:flex}.item input[data-v-0b559783]{accent-color:var(--tomato);width:18px;height:18px}.item.done[data-v-0b559783]{color:var(--sage-dark);background:#f4f6ec}.item.done span[data-v-0b559783]{opacity:.7;text-decoration:line-through}.progress[data-v-0b559783]{color:var(--sage-dark);margin-top:20px;font-size:14px;font-weight:800}.bar[data-v-0b559783]{background:#ead9bd;border-radius:999px;height:8px;margin-top:8px;overflow:hidden}.fill[data-v-0b559783]{background:linear-gradient(90deg, var(--sage), var(--sage-dark));height:100%;transition:width .3s}.modal-enter-active[data-v-0b559783],.modal-leave-active[data-v-0b559783]{transition:opacity .25s}.modal-enter-active .modal-card[data-v-0b559783],.modal-leave-active .modal-card[data-v-0b559783]{transition:transform .25s}.modal-enter-from[data-v-0b559783],.modal-leave-to[data-v-0b559783]{opacity:0}.modal-enter-from .modal-card[data-v-0b559783],.modal-leave-to .modal-card[data-v-0b559783]{transform:translateY(18px)scale(.98)}@media (width<=560px){.shopping[data-v-0b559783]{grid-template-columns:1fr}.hero img[data-v-0b559783]{height:220px}}section[data-v-c8f2e15d]{z-index:1;margin-top:78px;position:relative}.hero[data-v-c8f2e15d]{grid-template-columns:1.04fr .96fr;align-items:stretch;gap:26px;margin-top:34px;display:grid}.hero-card[data-v-c8f2e15d]{min-height:580px;box-shadow:var(--shadow);background:#ddd;border-radius:40px;position:relative;overflow:hidden}.hero-card[data-v-c8f2e15d]:before{content:"";z-index:1;background:linear-gradient(90deg,#2c3a1ae6,#2c3a1a80 48%,#2c3a1a14);position:absolute;inset:0}.hero-card img[data-v-c8f2e15d]{object-fit:cover;width:100%;height:100%}.hero-content[data-v-c8f2e15d]{z-index:2;color:#fff;position:absolute;bottom:42px;left:42px;right:42px}.hero-content .eyebrow[data-v-c8f2e15d]{color:#fff}.hero h1[data-v-c8f2e15d]{margin:20px 0 14px;font-size:clamp(44px,7vw,84px);line-height:.9}.hero-content p[data-v-c8f2e15d]{color:#ffffffeb;max-width:500px;font-size:17px;line-height:1.7}.search-panel[data-v-c8f2e15d]{background:#fffffff5;border-radius:22px;align-items:center;gap:8px;max-width:520px;margin-top:22px;padding:8px 8px 8px 16px;display:flex;box-shadow:0 22px 60px #00000038}.search-ico[data-v-c8f2e15d]{font-size:15px}.search-panel input[data-v-c8f2e15d]{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;padding:8px;font-size:15px}.search-panel button[data-v-c8f2e15d]{background:var(--tomato);color:#fff;cursor:pointer;border:0;border-radius:16px;padding:14px 22px;font-weight:900;transition:background .2s}.search-panel button[data-v-c8f2e15d]:hover{background:var(--tomato-dark)}.right-stack[data-v-c8f2e15d]{grid-template-rows:1fr 1fr;gap:24px;display:grid}.feature[data-v-c8f2e15d]{box-shadow:var(--shadow);background:#fff;border-radius:34px;min-height:278px;position:relative;overflow:hidden}.feature img[data-v-c8f2e15d]{object-fit:cover;width:100%;height:100%;transition:transform .45s}.feature:hover img[data-v-c8f2e15d]{transform:scale(1.07)}.feature .overlay[data-v-c8f2e15d]{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf1ed;border:1px solid #ffffff80;border-radius:24px;padding:18px;position:absolute;inset:auto 18px 18px}.feature h3[data-v-c8f2e15d]{margin:0 0 8px;font-size:26px}.feature p[data-v-c8f2e15d]{color:var(--muted);margin:0;line-height:1.45}.stats[data-v-c8f2e15d]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat[data-v-c8f2e15d]{border:1px solid var(--line);text-align:center;background:#ffffffe6;border-radius:18px;padding:12px 6px}.stat strong[data-v-c8f2e15d]{font-family:Playfair Display,serif;font-size:26px;display:block}.stat span[data-v-c8f2e15d]{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:800}.section-head[data-v-c8f2e15d]{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;display:flex}.section-head h2[data-v-c8f2e15d]{margin:0;font-size:clamp(32px,4vw,54px);line-height:1.02}.section-head p[data-v-c8f2e15d]{max-width:440px;color:var(--muted);margin:0;line-height:1.65}.filters[data-v-c8f2e15d]{flex-wrap:wrap;gap:10px;margin:22px 0;display:flex}.chip[data-v-c8f2e15d]{border:1px solid var(--line);cursor:pointer;color:#5f4d3e;background:#fff8eb;border-radius:999px;padding:11px 18px;font-weight:800;transition:background .2s,color .2s,transform .15s}.chip[data-v-c8f2e15d]:hover{transform:translateY(-2px)}.chip.active[data-v-c8f2e15d]{background:var(--sage-dark);color:#fff;border-color:var(--sage-dark)}.recipe-grid[data-v-c8f2e15d]{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.grid-move[data-v-c8f2e15d],.grid-enter-active[data-v-c8f2e15d],.grid-leave-active[data-v-c8f2e15d]{transition:all .4s cubic-bezier(.22,1,.36,1)}.grid-enter-from[data-v-c8f2e15d],.grid-leave-to[data-v-c8f2e15d]{opacity:0;transform:scale(.92)}.grid-leave-active[data-v-c8f2e15d]{position:absolute}.empty[data-v-c8f2e15d]{text-align:center;color:var(--muted);padding:40px 0;font-weight:700}.planner[data-v-c8f2e15d]{grid-template-columns:.92fr 1.08fr;gap:26px;display:grid}.planner-card[data-v-c8f2e15d]{border:1px solid var(--line);box-shadow:var(--shadow);background:linear-gradient(135deg,#fff9ec,#f2dab3);border-radius:36px;padding:32px}.eyebrow.light[data-v-c8f2e15d]{color:var(--sage-dark);border-color:var(--line);background:#fff}.planner-card h3[data-v-c8f2e15d]{margin:14px 0 12px;font-size:36px}.planner-card p[data-v-c8f2e15d]{color:var(--muted);margin:0 0 14px;line-height:1.7}.toast[data-v-c8f2e15d]{background:var(--sage-dark);border-radius:999px;padding:10px 16px;font-size:14px;font-weight:800;display:inline-block;color:#fff!important}.week[data-v-c8f2e15d]{align-content:start;gap:12px;display:grid}.day[data-v-c8f2e15d]{border:1px solid var(--line);background:#fff;border-radius:20px;align-items:center;gap:14px;padding:14px 18px;transition:border-color .2s,background .2s;display:flex}.day.filled[data-v-c8f2e15d]{background:#f7f3e8;border-color:#3f512a66}.day strong[data-v-c8f2e15d]{color:var(--sage-dark);width:42px}.day-recipe[data-v-c8f2e15d]{flex:1;font-weight:700}.empty-day[data-v-c8f2e15d]{color:#786b5e99;flex:1;font-weight:600}.remove[data-v-c8f2e15d]{color:var(--tomato);cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:900}.detail-band[data-v-c8f2e15d]{color:#fff;box-shadow:var(--shadow);background:#2f3b23;border-radius:40px;grid-template-columns:1.02fr .98fr;align-items:center;gap:26px;padding:32px;display:grid}.detail-band>img[data-v-c8f2e15d]{object-fit:cover;border-radius:28px;width:100%;height:460px}.cook-content .eyebrow[data-v-c8f2e15d]{color:#fff}.detail-band h2[data-v-c8f2e15d]{margin:14px 0;font-size:clamp(30px,4vw,46px);line-height:1.05}.cook-content p[data-v-c8f2e15d]{color:#ffffffc7;line-height:1.65}.servings[data-v-c8f2e15d]{background:#ffffff1a;border-radius:999px;align-items:center;gap:14px;margin:14px 0 22px;padding:8px;display:inline-flex}.servings button[data-v-c8f2e15d]{cursor:pointer;width:36px;height:36px;color:var(--ink);background:#fff;border:0;border-radius:50%;font-size:19px;font-weight:900}.servings strong[data-v-c8f2e15d]{text-align:center;min-width:86px}.steps[data-v-c8f2e15d]{gap:12px;display:grid}.step[data-v-c8f2e15d]{cursor:pointer;background:#ffffff17;border:1px solid #ffffff24;border-radius:20px;align-items:flex-start;gap:12px;padding:16px;line-height:1.45;transition:background .2s;display:flex}.step input[data-v-c8f2e15d]{accent-color:var(--tomato);flex-shrink:0;width:20px;height:20px;margin-top:1px}.step.done[data-v-c8f2e15d]{background:#6f7f4559}.step.done span[data-v-c8f2e15d]{opacity:.7;text-decoration:line-through}@media (width<=900px){.hero[data-v-c8f2e15d],.planner[data-v-c8f2e15d],.detail-band[data-v-c8f2e15d]{grid-template-columns:1fr}.recipe-grid[data-v-c8f2e15d]{grid-template-columns:repeat(2,1fr)}.hero-card[data-v-c8f2e15d]{min-height:480px}.right-stack[data-v-c8f2e15d]{grid-template-rows:auto}.detail-band>img[data-v-c8f2e15d]{height:300px}.section-head[data-v-c8f2e15d]{flex-direction:column;align-items:flex-start;gap:12px}}@media (width<=640px){.recipe-grid[data-v-c8f2e15d]{grid-template-columns:1fr}.hero-content[data-v-c8f2e15d]{bottom:28px;left:24px;right:24px}.search-panel[data-v-c8f2e15d]{flex-direction:column;align-items:stretch;padding:12px}.search-panel button[data-v-c8f2e15d]{padding:14px}.stats[data-v-c8f2e15d]{grid-template-columns:1fr 1fr 1fr}section[data-v-c8f2e15d]{margin-top:60px}}
