:root{--pine:#153c34;--ink:#19382f;--coral:#fb7759;--paper:#fcfaf3;--leaf:#b9d57c;--muted:#697d70;--line:#dfe8de;--shadow:0 16px 44px #123b3020}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}p{line-height:1.65}h1,h2,h3,h4{line-height:1.1;letter-spacing:-.04em;margin:0}em{font-family:Georgia,serif;font-weight:400;color:#7d9c66}.hidden{display:none!important}.print-only{display:none}.section-pad{padding:90px max(5vw,22px)}.eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:11px;letter-spacing:.14em;color:#668270;font-weight:800}.eyebrow-dot{width:9px;height:9px;border-radius:50%;background:var(--coral)}
.site-header{position:sticky;top:0;z-index:30;background:#fcfaf3f4;backdrop-filter:blur(14px);border-bottom:1px solid #e1e8df}.nav-shell{height:76px;max-width:1450px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:inline-flex;align-items:center;gap:8px;font-size:27px;font-weight:850;letter-spacing:-.065em}.brand-symbol{width:37px;height:37px;display:grid;place-items:center;background:var(--pine);color:var(--leaf);border-radius:12px;font-size:26px}.brand-dot{color:var(--coral)}.nav-links,.nav-actions{display:flex;align-items:center;gap:25px}.nav-links a,.text-button{font-size:13px;font-weight:700;color:#476355}.text-button{border:0;background:none;padding:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-align:center;border:0;border-radius:12px;font-size:14px;font-weight:800;padding:16px 23px;transition:transform .18s,box-shadow .18s}.btn:hover{transform:translateY(-2px);box-shadow:0 7px 20px #183d3424}.btn-dark{background:var(--pine);color:white}.btn-coral{background:var(--coral);color:#233d32}.btn-outline{background:white;color:var(--pine);border:1px solid #cad9cb}.btn-small{padding:11px 16px;font-size:12px}.btn-wide{width:100%}
.hero{max-width:1560px;margin:auto;min-height:670px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5%}.hero-copy{max-width:650px;padding-left:2vw}.hero h1{font-size:clamp(59px,6.2vw,99px);line-height:.97;letter-spacing:-.075em;margin:23px 0}.hero-desc{max-width:490px;font-size:16px;color:#607166;line-height:1.8}.hero-ctas{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:27px}.secondary-link{font-size:14px;font-weight:750}.hero-social{display:flex;align-items:center;gap:14px;margin-top:42px}.hero-social p{margin:0;font-size:12px;color:#7f9385;line-height:1.5}.hero-social strong{color:#415e4c}.mini-avatars{display:flex}.mini-avatars span{width:38px;height:38px;background:#ebf0d8;border:2px solid var(--paper);border-radius:50%;display:grid;place-items:center;font-size:21px;margin-right:-7px}
.hero-visual{position:relative;min-height:555px;display:flex;align-items:center;justify-content:center}.decoration-circle{position:absolute;border-radius:50%}.circle-a{width:480px;height:480px;background:#e4ead3;left:5%;top:5%}.circle-b{width:270px;height:270px;background:#f9e4d1;right:2%;bottom:2%}.hero-panel{width:420px;max-width:89%;background:white;border-radius:25px;box-shadow:0 30px 80px #173b3328;transform:rotate(-3deg);padding:29px;position:relative;z-index:2}.hero-panel-top{display:flex;justify-content:space-between;align-items:center;gap:5px;color:#8a9b8f;font-size:10px;font-weight:800;letter-spacing:.08em}.tiny-chip{background:#eaf4df;color:#50764f;border-radius:25px;font-size:9px;padding:8px}.hero-panel h2{font-size:28px;margin:20px 0}.visual-days{display:flex;gap:7px;justify-content:space-between;margin:20px 0}.visual-day{width:37px;height:37px;border-radius:10px;background:#eef3eb;display:grid;place-items:center;font-size:11px;font-weight:800}.visual-day.selected{background:var(--pine);color:white}.visual-meal{display:flex;align-items:center;gap:13px;border-top:1px solid #ecf0e9;padding:14px 0}.visual-meal>div:nth-child(2){flex:1}.visual-emoji{width:53px;height:53px;border-radius:14px;display:grid;place-items:center;font-size:28px;background:#e7efda}.tone-b{background:#ffe8d7}.tone-c{background:#f4e4dd}.visual-label{display:block;color:#869c8e;font-size:9px;letter-spacing:.14em;font-weight:800}.visual-meal strong{display:block;font-size:13px;margin:3px 0}.visual-meal small{display:block;font-size:11px;color:#8e9c91}.visual-chevron{color:#90a999}.floating-note{position:absolute;bottom:50px;right:1%;background:white;border-radius:14px;box-shadow:var(--shadow);display:flex;align-items:center;gap:10px;padding:14px;z-index:4;transform:rotate(4deg)}.floating-icon{background:#dff0d7;padding:8px;border-radius:9px}.floating-note strong,.floating-note small{display:block}.floating-note strong{font-size:13px}.floating-note small{font-size:10px;color:#8c9b8f}.floating-stamp{position:absolute;z-index:4;top:20px;right:3%;width:89px;height:89px;display:grid;place-content:center;text-align:center;line-height:1;border-radius:50%;background:#f7d776;font-size:34px;font-weight:850;transform:rotate(11deg)}.floating-stamp small{font-size:12px}
.ticker{background:var(--pine);color:#d3e5b2;display:flex;justify-content:space-around;gap:20px;flex-wrap:wrap;padding:19px;font-size:11px;font-weight:800;letter-spacing:.1em}.how{max-width:1500px;margin:auto}.section-intro{text-align:center;margin-bottom:45px}.section-intro h2,.planner-heading h2,.pricing-copy h2,.closing h2{font-size:clamp(38px,4vw,62px);margin-top:15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{background:#edf2e5;border-radius:20px;border:1px solid #dfe8d8;min-height:245px;padding:29px;position:relative}.step:nth-child(2){background:#e6efdf}.step:nth-child(3){background:#f9ece0}.step-num{color:#829a89;font-size:12px;font-weight:850}.step-illustration{position:absolute;right:25px;top:25px;font-size:37px}.step h3{font-size:23px;margin-top:90px}.step p{font-size:14px;color:#6c7d70}
.planner-section{background:#eaf0e5;scroll-margin-top:76px}.planner-heading{max-width:1380px;margin:0 auto 35px;display:flex;justify-content:space-between;align-items:end;gap:20px}.planner-heading p{font-size:14px;color:#788a7d}.recipe-pill{min-width:150px;border:1px solid #cfdfc8;background:#f4f9ef;border-radius:17px;padding:16px;text-align:center}.recipe-pill span,.recipe-pill strong,.recipe-pill small{display:block}.recipe-pill span{color:#f1af62;font-size:24px}.recipe-pill strong{font-size:25px}.recipe-pill small{font-size:12px;color:#7a907e}.planner-shell{max-width:1380px;margin:auto;display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start}.prefs-card,.workspace{background:#fff;border-radius:22px;box-shadow:var(--shadow)}.prefs-card{padding:26px}.form-heading{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e7eee5;padding-bottom:17px;margin-bottom:21px}.form-icon{font-size:25px;padding:12px;border-radius:12px;background:#e5f1dc}.form-heading h3{font-size:20px}.form-heading p{margin:5px 0 0;color:#8a9c8f;font-size:12px}.prefs-card form>label:not(.toggle-row),.form-label-row label,.form-row label,.modal label{display:block;margin:17px 0 8px;font-weight:770;font-size:12px;color:#38564a}.prefs-card select,.prefs-card input:not([type=checkbox]),.modal input{width:100%;background:#f7faf4;border:1px solid #dfe9dc;border-radius:10px;padding:12px;color:#274b39;outline:none;font-size:13px;min-height:45px}.prefs-card input:focus,.prefs-card select:focus,.modal input:focus{border-color:#85b579;box-shadow:0 0 0 3px #e0eed6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-label-row{display:flex;justify-content:space-between;align-items:end}.form-label-row small,.optional,.field-note{color:#98a99b;font-size:10px}.field-note{margin:5px 0;line-height:1.5}.allergy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.allergy-grid label{display:flex;align-items:center;gap:4px;background:#f4f8f0;border:1px solid #e9f0e6;padding:8px 5px;border-radius:8px;font-size:10px;white-space:nowrap}.allergy-grid input{accent-color:#518f5e;width:13px;height:13px;margin:0}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:21px 0;cursor:pointer}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{font-size:12px}.toggle-row small{font-size:10px;color:#95a798;margin-top:4px}.toggle-row input{position:absolute;opacity:0}.toggle-switch{width:42px;height:25px;border-radius:20px;background:#c9d5c7;position:relative;flex:none}.toggle-switch:before{content:'';position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;transition:transform .2s}.toggle-row input:checked+.toggle-switch{background:#72ad71}.toggle-row input:checked+.toggle-switch:before{transform:translateX(17px)}.small-footnote{font-size:10px;text-align:center;color:#99a99d;margin:13px 0 0}
.workspace{padding:28px;min-height:760px;overflow:hidden}.workspace-empty{min-height:700px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.empty-illustration{width:250px;height:250px;border-radius:50%;display:grid;place-items:center;background:#eff6e8;position:relative;margin-bottom:28px}.empty-plate{border:16px solid #eee3c8;background:white;width:188px;height:188px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;transform:rotate(-10deg)}.empty-plate span{font-size:49px}.empty-plate span:nth-child(2){position:absolute;bottom:5px;left:25px}.empty-plate span:nth-child(3){position:absolute;top:12px;right:8px;font-size:31px}.empty-sparkle{position:absolute;right:7px;top:-15px;font-size:67px;color:#e9b267}.workspace-empty h3{font-size:37px;margin:16px 0}.workspace-empty p{font-size:14px;color:#7f9084;max-width:410px}.empty-tags{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}.empty-tags span{font-size:11px;color:#608565;background:#eef6e9;padding:8px 11px;border-radius:20px}
.results-top,.grocery-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.results-top h3{font-size:29px;margin:12px 0}.results-top h3 span{color:#efb76b}.results-top p,.grocery-heading p{font-size:12px;color:#8b9f92;margin:6px 0 0}.results-controls{display:flex;flex-wrap:wrap;gap:7px}.outline-icon{background:white;color:#507260;border:1px solid #dce7da;border-radius:10px;padding:10px 13px;font-size:11px;font-weight:800}.outline-icon:hover{background:#eff6eb}.plan-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin:25px 0}.plan-stats>div{border-radius:12px;background:#f3f7ed;padding:15px}.plan-stats span{display:block;color:#819888;font-size:9px;font-weight:850;letter-spacing:.08em}.plan-stats strong{display:block;margin-top:8px;font-size:19px}.days-nav{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;border-bottom:1px solid #e3ebe0;padding-bottom:20px}.day-tab{border:1px solid #dfe9dd;border-radius:11px;background:#f5f8f3;padding:10px 3px;color:#6b8271}.day-tab span,.day-tab strong{display:block}.day-tab span{font-size:10px}.day-tab strong{font-size:16px;margin-top:5px}.day-tab[aria-selected=true]{background:var(--pine);color:white}.day-heading{display:flex;align-items:center;justify-content:space-between;margin:25px 0 17px}.day-heading span{font-size:10px;color:#8a9e8e;letter-spacing:.1em}.day-heading h4{font-size:26px;margin-top:7px}.day-kcal{font-size:11px!important;font-weight:750}.meals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.meal-card{display:flex;align-items:center;gap:13px;background:#fbfcf8;border:1px solid #e8eee5;padding:13px;border-radius:13px;min-width:0}.meal-emoji{background:#e9f2df;width:66px;height:78px;border-radius:12px;display:grid;place-items:center;font-size:37px;flex:none}.meal-body{min-width:0;flex:1}.meal-kind{font-size:10px;font-weight:850;color:#84a085;text-transform:uppercase;letter-spacing:.1em}.meal-title{font-size:15px;font-weight:800;margin:5px 0}.meal-meta{font-size:10px;color:#8c9f92;margin:4px 0}.meal-actions{display:flex;align-items:center;gap:9px;margin-top:8px}.meal-actions button{font-size:10px;color:#548263;border:0;background:none;font-weight:800;padding:0}.meal-actions span{color:#c7d3c8}.nutrition-notice{font-size:11px;color:#998267;background:#fff7e8;border-radius:11px;padding:13px;margin:23px 0}.grocery-heading{margin-top:28px}.grocery-heading h3{font-size:24px;margin-top:7px}.grocery-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:19px}.aisle-card{border:1px solid #e2ece0;border-radius:12px;padding:14px;break-inside:avoid}.aisle-title{display:flex;justify-content:space-between;border-bottom:1px solid #eef1eb;padding-bottom:9px;margin-bottom:10px}.aisle-title strong{font-size:13px}.aisle-title small{font-size:10px;color:#9bad9e}.grocery-item{display:flex;align-items:start;gap:7px;font-size:11px;color:#57705e;padding:5px 0}.grocery-item input{accent-color:#5a9a6e}.grocery-item:has(input:checked) span{text-decoration:line-through;color:#a4b5a8}.grocery-qty{margin-left:auto;min-width:55px;text-align:right;font-size:11px;color:#325845}.saved-row{max-width:1380px;margin:21px auto 0;padding:20px 24px;background:white;border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:15px}.saved-row p{font-size:12px;color:#91a193;margin:3px 0}.saved-plans{display:flex;flex-wrap:wrap;gap:7px}.saved-plans button{background:#f4f8f0;color:#4b7752;border:1px solid #dce8d7;border-radius:9px;padding:10px 12px;font-size:11px}.saved-plans button.active{background:var(--pine);color:white}
.pricing{max-width:1500px;margin:auto;display:grid;grid-template-columns:.85fr 1.5fr;gap:50px;align-items:center}.pricing-copy p{max-width:390px;color:#748a7a}.pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.price-card{background:white;border:1px solid #dfe9dd;padding:30px;border-radius:18px;box-shadow:var(--shadow)}.price-card.premium{background:#e9f1e0}.pricing-tag{font-size:10px;font-weight:850;color:#789a77;letter-spacing:.1em;margin-bottom:21px}.price-card h3{font-size:26px}.price-card .price{font-size:47px;font-weight:850;letter-spacing:-.055em;margin:16px 0}.price-card .price span{font-size:13px;font-weight:500;letter-spacing:0}.price-card p,.price-card li{font-size:13px;color:#718476}.price-card ul{list-style:none;padding:0;margin:24px 0}.price-card li{padding:9px 0;border-bottom:1px solid #e7eee4}.price-card small{display:block;color:#8c9b8e;font-size:10px;margin-top:10px}.closing{display:flex;justify-content:space-between;align-items:center;gap:50px;background:var(--pine);color:white;overflow:hidden}.closing .eyebrow{color:#bdcf9a}.closing h2{font-size:clamp(50px,6vw,85px);margin:20px 0}.closing em{color:#b4d18c}.closing p{color:#b6cabb;margin-bottom:25px}.closing-art{border-radius:50%;width:340px;height:340px;display:grid;place-items:center;flex-shrink:0;background:#d6e8b5;font-size:155px;position:relative}.closing-art span{position:absolute;right:-5px;top:-10px;color:#f7d477;font-size:75px}footer{background:white;padding:36px max(5vw,22px)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-top>div{display:flex;flex-wrap:wrap;gap:20px;font-size:13px;color:#567262}.footer-top button{background:none;border:0;color:inherit;padding:0}footer p{border-top:1px solid #e7ede4;padding-top:20px;color:#899c8b;font-size:11px}
.toast{position:fixed;top:90px;right:20px;z-index:110;background:var(--pine);color:white;padding:14px 17px;border-radius:11px;font-size:13px;box-shadow:var(--shadow);max-width:380px;transform:translateY(-8px);opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#933f3d}.modal-backdrop{position:fixed;inset:0;z-index:80;background:#112e256e;backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;overflow:auto;padding:15px}.modal{position:relative;background:#fffdf8;border-radius:21px;padding:35px;width:470px;max-width:100%;max-height:93vh;overflow:auto;box-shadow:0 30px 80px #112d2555}.modal-close{position:absolute;top:13px;right:15px;background:#eff3eb;border:0;border-radius:50%;width:35px;height:35px;font-size:25px}.modal-brand{font-size:22px;font-weight:850;letter-spacing:-.06em;margin-bottom:26px}.modal-brand span{color:var(--coral)}.modal h2{font-size:32px;margin:10px 0}.modal>p{font-size:13px;color:#748676}.auth-modal form .btn{margin-top:20px}.auth-toggle{text-align:center;font-size:12px;margin-top:21px}.auth-toggle button,.forgot-btn{color:#598366;font-weight:800;border:0;background:none;text-decoration:underline}.forgot-btn{display:block;margin:10px auto;font-size:12px}.tiny-legal{font-size:10px!important;color:#9caf9b!important;text-align:center}.recipe-modal{width:600px}.recipe-hero{height:150px;background:#e9f1df;border-radius:15px;display:grid;place-items:center;font-size:65px}.recipe-kicker{font-size:10px;color:#829a85;font-weight:850;letter-spacing:.1em}.recipe-chips{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.recipe-chips span{background:#f0f5e9;border-radius:9px;padding:8px;font-size:11px;color:#47745c}.recipe-modal h3{font-size:18px;margin:20px 0 12px}.recipe-ingredients{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;list-style:none;padding:0}.recipe-ingredients li{font-size:12px;border-bottom:1px solid #ebf0e7;padding:8px 0}.recipe-note{font-size:11px;background:#fff4e6;color:#997e68;padding:11px;border-radius:9px}.account-modal hr{border:0;border-top:1px solid #e6eee4;margin:22px 0}.account-buttons{display:flex;gap:9px;flex-wrap:wrap}.danger-btn{background:#fff0ed;border:1px solid #f3cfc6;color:#9d4540;border-radius:9px;padding:11px 13px;font-size:12px;font-weight:850;margin-top:12px}.upsell-modal{text-align:center}.upsell-art{border-radius:50%;background:#e4efdc;width:85px;height:85px;margin:auto;display:grid;place-items:center;font-size:54px}.upsell-price{font-size:34px;font-weight:850;margin:20px 0}.upsell-price small,.upsell-modal>small{font-size:11px;color:#8b9e8b}
@media(max-width:1100px){.planner-shell{grid-template-columns:300px 1fr}.meals-grid,.grocery-list{grid-template-columns:1fr}.pricing{grid-template-columns:1fr}.hero h1{font-size:65px}}
@media(max-width:760px){.section-pad{padding:62px 19px}.nav-shell{height:67px;padding:0 16px}.brand{font-size:23px}.nav-links{display:none}.nav-actions .text-button{display:none}.btn-small{padding:10px;font-size:12px}.hero{display:flex;flex-direction:column;gap:25px;padding:50px 18px 75px;min-height:auto}.hero-copy{padding:0}.hero h1{font-size:clamp(53px,11vw,77px)}.hero-desc{font-size:14px}.hero-visual{width:100%;min-height:465px}.hero-panel{width:385px;max-width:87%;padding:20px}.hero-panel h2{font-size:22px}.visual-meal{padding:11px 0}.visual-emoji{width:45px;height:45px;font-size:23px}.circle-a{width:335px;height:335px}.floating-note{bottom:10px;right:0}.floating-stamp{width:72px;height:72px;font-size:28px}.step{min-height:180px}.steps,.planner-shell,.pricing-grid{grid-template-columns:1fr}.step h3{margin-top:45px}.recipe-pill{display:none}.workspace{padding:19px;min-height:400px}.workspace-empty{min-height:500px}.empty-illustration{width:195px;height:195px}.empty-plate{width:150px;height:150px}.empty-plate span{font-size:36px}.workspace-empty h3{font-size:31px}.results-top{flex-direction:column}.meals-grid,.grocery-list{grid-template-columns:1fr}.day-tab{padding:8px 1px}.day-tab strong{font-size:12px}.plan-stats>div{padding:10px}.plan-stats span{font-size:8px}.plan-stats strong{font-size:15px}.saved-row,.footer-top{flex-direction:column;align-items:start}.closing{min-height:580px}.closing-art{width:160px;height:160px;font-size:78px;margin-left:-80px}.closing-art span{font-size:40px}.pricing-copy h2,.planner-heading h2{font-size:43px}}
@media print{body{background:white;color:#111;font:11pt Georgia,serif}.site-header,main,footer,.modal-backdrop,.toast{display:none!important}.print-only{display:block!important;padding:0 12px}.print-only h1{font:24pt Arial,sans-serif;margin:0 0 8px}.print-only .print-muted{font:9pt Arial,sans-serif;color:#555}.print-only h2{font:15pt Arial,sans-serif;border-bottom:1px solid #aaa;padding:13px 0 6px;margin:15px 0 8px;page-break-after:avoid}.print-only h3{font:12pt Arial,sans-serif;margin:12px 0 5px}.print-day{break-inside:avoid;border-bottom:1px solid #ccc;padding:8px 0}.print-day ul{padding-left:23px;columns:2}.print-grocery{columns:2;column-gap:35px}.print-grocery section{break-inside:avoid}.print-grocery ul{padding-left:20px}.print-only .print-footnote{font-size:8pt;color:#555}}
