:root{--paper:#fcf3e6;--paper2:#fffaf1;--ink:#29231c;--muted:#716354;--rust:#b94d27;--rust-deep:#8e391c;--olive:#545e2c;--honey:#e3aa34;--line:#e7d8c0;--round:18px;--shadow:0 20px 50px rgba(76,50,24,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Trebuchet MS','Segoe UI',Arial,sans-serif;font-size:15px;line-height:1.5}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08}h1,h2{font-family:Georgia,'Times New Roman',serif}h1 em,h2 em{color:var(--rust);font-weight:normal}p{line-height:1.66}.shell{max-width:1250px;margin:0 auto;padding-left:28px;padding-right:28px}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,249,238,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;line-height:.91;flex-shrink:0}.brand-pot{background:var(--olive);color:#fff6e6;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:29px}.brand strong{display:block;font-family:Georgia,serif;font-size:22px;letter-spacing:-.8px}.brand em{font-style:italic;color:var(--rust)}.brand small{font-family:Arial,sans-serif;display:block;letter-spacing:1.7px;font-weight:bold;font-size:7.2px;margin-top:7px}.nav-links{display:flex;align-items:center;gap:27px}.nav-links a{font-size:13px;font-weight:700;text-decoration:none}.nav-links a:hover{color:var(--rust)}.nav-cta{background:var(--olive);color:white;text-decoration:none;font-weight:800;font-size:12px;border-radius:40px;padding:13px 19px;white-space:nowrap}.nav-cta:hover{background:#37401d}.hero{padding-top:54px;background:linear-gradient(140deg,#fff7e8 5%,#fbf0d8 100%)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:center}.hero-copy{padding:40px 0 65px}.eyebrow,.overline{font-size:11px;letter-spacing:2.2px;font-weight:900;color:var(--olive);text-transform:uppercase}.spark{font-size:15px;color:var(--rust);margin-right:6px}.hero h1{font-size:clamp(66px,6.6vw,110px);letter-spacing:-4.2px;margin:20px 0 23px}.hero-copy>p{font-size:18px;max-width:520px;color:#5d5144}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.button{border-radius:99px;min-height:47px;padding:13px 20px;border:1.5px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap;font-weight:800;font-size:13px;text-decoration:none;transition:transform .15s,background .15s}.button:hover{transform:translateY(-2px)}.button-main{background:var(--rust);color:white}.button-main:hover{background:var(--rust-deep)}.button-outline{border-color:#bba98d;color:var(--ink);background:transparent}.button-outline:hover{background:#fff}.button-light{background:#fff7e5;color:var(--ink)}.hero-trust{display:flex;flex-wrap:wrap;gap:13px;margin-top:31px;font-size:10px;font-weight:bold;color:#77634e}.hero-photo{position:relative;min-height:590px;border-radius:46% 46% 12px 12px;background-image:url('assets/hero.webp');background-size:cover;background-position:center;box-shadow:0 18px 50px rgba(53,33,12,.14);border:10px solid rgba(255,249,235,.5)}.photo-sticker{position:absolute;right:-21px;top:27px;width:151px;height:151px;border-radius:50%;background:var(--olive);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(12deg);box-shadow:0 7px 20px rgba(40,40,20,.22);font-size:15px;font-style:italic}.photo-sticker strong{font-family:Georgia,serif;font-weight:normal;font-size:26px;line-height:1.05;margin:4px}.hero-img-caption{position:absolute;bottom:13px;left:16px;background:rgba(37,34,27,.74);color:#fff;font-size:10px;letter-spacing:2px;font-weight:800;padding:9px 12px;border-radius:8px}.hero-strip{display:flex;align-items:center;justify-content:space-around;gap:15px;padding-top:20px;padding-bottom:22px;border-top:1px solid #e5d3b8;color:#605442;font-size:13px}.hero-strip strong{font-family:Georgia,serif;font-size:19px}.hero-strip i{color:var(--rust)}.section{padding-top:90px;padding-bottom:90px;scroll-margin-top:90px}.section-cream{background:var(--paper2)}.section-heading h2,.section-top h2{font-size:clamp(42px,4.1vw,68px);letter-spacing:-2.2px;margin:16px 0 17px}.section-heading p,.section-top p{font-size:16px;max-width:540px;color:var(--muted)}.kitchen-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.hand-note{font-family:Georgia,serif;color:var(--rust);font-style:italic;font-size:23px;margin-top:44px;transform:rotate(-3deg)}.hand-note span{font-size:30px}.pantry-card{background:#fffdf8;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:var(--shadow)}.pantry-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:23px}.pantry-head h3{font-family:Georgia,serif;font-size:29px;margin-top:4px}.pantry-count{background:#eef0de;color:var(--olive);border-radius:40px;padding:7px 12px;font-size:11px;font-weight:800;white-space:nowrap}.input-label{font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.ingredient-form{display:flex;gap:9px}.ingredient-form input{min-width:0;flex:1;padding:14px 15px;border:1.5px solid #e0cdb5;border-radius:12px;background:white;font-size:14px}.ingredient-form input:focus,select:focus,textarea:focus{outline:2px solid var(--honey);outline-offset:1px}.ingredient-form .button{border-radius:12px}.field-help{font-size:11px;color:var(--muted);margin-top:8px}.suggestions{display:flex;gap:7px;flex-wrap:wrap;margin:17px 0 24px}.suggestions button{background:#f7ead3;border:1px solid #f0dec3;padding:8px 11px;border-radius:20px;font-weight:700;font-size:12px;color:#554839}.suggestions button:hover{background:#ead8b8}.owned-label{border-top:1px dashed var(--line);padding-top:18px}.text-button{padding:0;border:0;background:none;color:var(--rust);font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.pantry-tags{min-height:64px;display:flex;align-content:flex-start;flex-wrap:wrap;gap:7px;padding-top:3px}.pantry-chip{background:#e8ecd6;border:1px solid #ccd4a5;color:#404a20;padding:8px 10px;font-size:12px;border-radius:50px;font-weight:800}.pantry-chip .cross{margin-left:7px;color:var(--rust-deep);font-size:14px}.empty-pantry{font-size:13px;color:#998878;padding-top:8px}.fine-print{font-size:11px!important;color:#8f8172!important;line-height:1.5!important;margin-top:18px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.splash-pill{background:var(--olive);color:white;border-radius:50px;padding:11px 18px;transform:rotate(3deg);font-weight:800;white-space:nowrap}.recipe-tools{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:22px}.filters{display:flex;flex-wrap:wrap;gap:7px}.filter{border:1px solid var(--line);background:#fff;color:#635544;border-radius:60px;padding:9px 15px;font-size:12px;font-weight:800}.filter.selected{background:var(--olive);color:white;border-color:var(--olive)}.recipe-status{font-size:12px;color:var(--muted)}.recipe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.recipe-card{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.recipe-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.recipe-cover{height:166px;position:relative;overflow:hidden;background:#c3a780}.recipe-cover img{width:100%;height:100%;object-fit:cover}.match-pill{position:absolute;bottom:11px;left:12px;background:#f9f4e8;border-radius:40px;color:#455329;padding:6px 10px;font-size:10px;font-weight:900}.recipe-content{padding:17px;display:flex;flex-direction:column;gap:10px;flex:1}.recipe-tag{font-size:9px;letter-spacing:1.6px;color:var(--rust);font-weight:900}.recipe-content h3{font-family:Georgia,serif;font-size:21px;line-height:1.09}.recipe-content p{font-size:12px;color:var(--muted);line-height:1.42;flex:1}.recipe-meta{display:flex;gap:10px;flex-wrap:wrap;color:#685747;font-size:11px}.recipe-card .card-btn{background:var(--paper);border:1px solid #eddec9;width:100%;padding:10px;border-radius:10px;font-size:12px;font-weight:900;color:var(--rust-deep)}.recipe-card .card-btn:hover{background:#f7e1c7}.planner-side{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.planner-side strong{font-family:Georgia,serif;font-size:23px}.days-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px}.day-card{background:white;border:1px solid #e8d6c0;border-radius:16px;padding:12px;display:flex;flex-direction:column;min-width:0;gap:10px;box-shadow:0 5px 18px rgba(82,54,29,.035)}.day-head{padding:10px 8px;border-radius:10px;background:#d6a12d;color:#fff;display:flex;justify-content:space-between;align-items:center}.day-card:nth-child(3n+1) .day-head{background:#b9512c}.day-card:nth-child(3n+2) .day-head{background:#59602f}.day-head span{font-size:10px;font-weight:900;letter-spacing:.3px}.day-head small{opacity:.8}.day-image{aspect-ratio:1.25;object-fit:cover;border-radius:10px;width:100%;background:#ede1cf}.day-image.empty{background:repeating-linear-gradient(135deg,#f1eee3,#f1eee3 12px,#eae3d4 12px,#eae3d4 20px)}.day-card select{width:100%;background:#fff9ef;border:1px solid var(--line);border-radius:8px;padding:9px 5px;font-size:11px;font-weight:bold;color:var(--ink);text-overflow:ellipsis}.day-card label{font-size:10px;color:var(--muted);font-weight:900}.day-card textarea{resize:vertical;min-height:62px;width:100%;border-radius:8px;border:1px solid var(--line);padding:8px;font-size:11px;color:#544536}.day-steps{width:100%;padding:8px 5px;font-size:11px;border:1px solid #cdd4b6;border-radius:8px;background:#eef1e5;color:var(--olive);font-weight:900}.day-steps:disabled{opacity:.5}.planner-foot{margin-top:24px;border:1px dashed #c7b793;border-radius:16px;padding:20px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#faf4e8}.planner-foot strong{font-family:Georgia,serif;font-size:23px}.planner-foot p{font-size:12px;color:var(--muted);margin-top:3px}.groceries-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:75px;align-items:start}.grocery-facts{display:flex;gap:30px;margin-top:35px}.grocery-facts div{display:flex;flex-direction:column;line-height:1.1}.grocery-facts strong{color:var(--rust);font-family:Georgia,serif;font-size:45px}.grocery-facts span{color:var(--muted);font-size:12px;margin-top:6px}.grocery-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:30px}.shopping-card{border:1px solid var(--line);border-radius:22px;background:white;overflow:hidden;box-shadow:var(--shadow)}.shopping-head{background:var(--olive);color:white;padding:23px 28px;display:flex;justify-content:space-between;align-items:center;gap:12px}.shopping-head .overline{color:#e1dfc1}.shopping-head strong{font-family:Georgia,serif;font-size:20px;font-style:italic;font-weight:normal}.shopping-group{padding:18px 26px 10px}.shopping-group h3{font-family:Georgia,serif;font-size:21px;padding:0 0 10px;margin-bottom:8px;border-bottom:1px dashed var(--line);color:var(--rust-deep)}.shopping-item{display:flex;align-items:center;gap:9px;padding:7px 0;border-bottom:1px solid #f4ede2;font-size:13px}.shopping-item input{accent-color:var(--olive);width:17px;height:17px}.shopping-item.done span{text-decoration:line-through;color:#a19b90}.shopping-footer{margin:18px 26px 26px;padding:15px;border-radius:12px;background:#f8f0df;font-size:12px;color:#665846}.shopping-empty{padding:45px;color:var(--muted);text-align:center}.closing{background:var(--olive);color:#fff5e3;padding:75px 0;text-align:center;background-image:radial-gradient(circle at 12% 80%,#6c794444,transparent 30%),radial-gradient(circle at 88% 12%,#75804f55,transparent 32%)}.closing .eyebrow{color:#e3d2a9}.closing h2{font-size:clamp(45px,5.4vw,80px);margin:16px auto;letter-spacing:-2px}.closing h2 em{color:#f1b361}.closing p{font-size:17px;margin:0 auto 20px}.footer{background:#261d15;color:#f1e4d2;padding:37px 0}.footer-grid{display:flex;justify-content:space-between;gap:40px;align-items:center}.footer strong{font-family:Georgia,serif;font-size:24px}.footer p,.footer small{font-size:11px;color:#baab97;display:block}.foot-note{font-size:10px;line-height:1.8;text-align:center;max-width:360px;color:#bda992}.footer span{font-family:Georgia,serif;font-size:17px;display:block;text-align:right}.modal-backdrop{position:fixed;z-index:60;inset:0;background:rgba(25,19,12,.76);display:flex;align-items:center;justify-content:center;padding:22px}.modal-backdrop[hidden]{display:none}.modal{background:#fffaf2;border-radius:20px;box-shadow:0 18px 80px #0007;max-height:92vh;overflow:auto;position:relative;width:min(860px,100%)}.modal-close{position:sticky;top:14px;float:right;z-index:4;margin:14px 15px 0 0;width:41px;height:41px;border-radius:50%;background:var(--rust);color:white;border:0;font-size:29px;line-height:1}.modal-image{height:245px;width:100%;object-fit:cover}.modal-body{padding:25px 35px 36px}.modal-body h2{font-size:43px;letter-spacing:-1.7px;margin:10px 0}.modal-body>p{color:var(--muted);font-size:15px}.modal-meta{display:flex;gap:16px;margin:18px 0;flex-wrap:wrap}.modal-meta span{background:#f5ead6;padding:7px 12px;border-radius:30px;font-size:12px;font-weight:800}.modal-cols{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;margin-top:28px}.modal-cols h3{font-family:Georgia,serif;font-size:24px;margin-bottom:12px}.modal-ingredient{display:flex;gap:7px;font-size:13px;padding:9px 0;border-bottom:1px dashed #e7d9c4}.modal-ingredient.present{color:#5a6d35}.step-list{list-style:none;margin:0;padding:0;counter-reset:cook}.step-list li{display:flex;gap:11px;align-items:flex-start;font-size:13px;line-height:1.55;margin:0 0 13px}.step-number{display:inline-grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:var(--rust);color:white;font-weight:900;font-size:12px}.modal-tip{background:#ecf0dd;border-left:4px solid var(--olive);padding:13px 15px;border-radius:0 10px 10px 0;margin-top:22px;font-size:13px}.modal-plan{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.modal-plan select{padding:12px 14px;background:white;border:1px solid var(--line);border-radius:9px;min-width:155px}.toast{pointer-events:none;position:fixed;bottom:22px;left:50%;z-index:100;transform:translate(-50%,70px);background:#273617;color:white;border-radius:40px;padding:11px 20px;font-weight:800;font-size:13px;box-shadow:0 12px 40px #3334;opacity:0;transition:opacity .2s,transform .2s;max-width:min(90vw,550px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1130px){.nav-links{gap:12px}.hero-grid{gap:35px}.hero-photo{min-height:500px}.days-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.shell{padding-left:20px;padding-right:20px}.nav-wrap{min-height:72px}.nav-links{display:none}.hero{padding-top:18px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:34px 0 18px}.hero h1{font-size:clamp(53px,9vw,85px)}.hero-photo{min-height:410px;max-width:720px}.hero-strip{justify-content:center;flex-wrap:wrap;margin-top:23px}.section{padding-top:65px;padding-bottom:65px}.kitchen-grid,.groceries-grid{grid-template-columns:1fr;gap:32px}.hand-note{margin-top:20px}.section-top{align-items:start}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-tools{align-items:flex-start;flex-direction:column}.days-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{flex-wrap:wrap}.foot-note{text-align:left}}@media(max-width:550px){.shell{padding-left:16px;padding-right:16px}.nav-wrap{min-height:67px}.brand-pot{width:35px;height:35px;font-size:24px}.brand strong{font-size:18px}.brand small{font-size:6px}.nav-cta{font-size:11px;padding:10px 12px}.hero-copy{padding-top:21px}.eyebrow{font-size:9px}.hero h1{font-size:clamp(50px,14vw,69px);letter-spacing:-2.6px;margin:15px 0}.hero-copy>p{font-size:15px}.hero-actions{gap:8px}.hero-actions .button{flex:1;white-space:normal;padding:12px}.hero-photo{min-height:280px;border-width:5px;border-radius:42% 42% 10px 10px}.photo-sticker{width:100px;height:100px;right:0;top:-13px}.photo-sticker strong{font-size:18px}.photo-sticker>span{font-size:11px}.hero-trust{gap:8px}.hero-strip{font-size:11px;padding-top:16px}.hero-strip strong{width:100%;text-align:center}.section-heading h2,.section-top h2{font-size:43px;letter-spacing:-1.5px}.pantry-card{padding:20px}.ingredient-form input{padding:11px 9px}.ingredient-form .button{padding:10px 15px}.section-top{display:block}.splash-pill{display:inline-block;margin-top:14px}.recipe-grid{grid-template-columns:1fr;gap:16px}.recipe-cover{height:200px}.recipe-content{padding:18px;gap:8px}.recipe-content h3{font-size:24px}.recipe-content p{font-size:13px}.recipe-meta{font-size:10px;gap:5px}.filters{gap:6px}.filter{padding:8px 10px;font-size:11px}.days-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.day-card{padding:10px}.planner-side{align-items:flex-start;margin-top:10px}.planner-foot{flex-direction:column;align-items:stretch;padding:18px}.groceries-grid{gap:25px}.shopping-head{padding:20px 16px}.shopping-group{padding:18px 16px 6px}.shopping-footer{margin:16px}.footer-grid{display:block}.foot-note{margin:22px 0}.footer span{text-align:left}.modal-backdrop{padding:8px}.modal{max-height:96vh;border-radius:13px}.modal-image{height:170px}.modal-body{padding:18px}.modal-body h2{font-size:33px}.modal-cols{grid-template-columns:1fr;gap:22px}.modal-plan{align-items:stretch;flex-direction:column}.modal-plan select,.modal-plan button{width:100%}}
@media print{body{background:white;font-family:Arial,sans-serif}.site-header,.hero,.kitchen-grid,.section-cream#recipes,.section#planner,.closing,.footer,.grocery-actions,.modal-backdrop,.toast,.groceries-grid>.section-heading{display:none!important}.section#groceries{padding:0;display:block}.groceries-grid{display:block}.shopping-card{box-shadow:none;border:none}.shopping-head{background:#fff;color:#111;border-bottom:2px solid #333}.shopping-head .overline{color:#111}.shopping-group{break-inside:avoid}.shopping-item{font-size:13pt}.shopping-footer{background:#fff}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
