.menu-page{background:#f7f8f2}
.menu-hero{position:relative;overflow:hidden;padding:92px 0 86px;background:#edf7e8}
.menu-hero:before{content:"";position:absolute;width:520px;height:520px;right:-150px;top:-230px;border:90px solid rgba(8,168,78,.08);border-radius:50%}
.menu-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:80px;align-items:center}
.menu-hero-copy h1{font:500 clamp(44px,6vw,82px)/1.03 var(--display);letter-spacing:-.055em;margin:24px 0;color:var(--ink)}
.menu-hero-copy h1 em{color:var(--green);font-style:normal}
.menu-lead{max-width:680px;margin:0;color:#53556d;font-size:18px;line-height:1.75}
.menu-jump{display:inline-flex;align-items:center;gap:24px;margin-top:34px;padding-bottom:8px;border-bottom:1px solid var(--ink);font-size:13px;font-weight:800}
.food-promise{position:relative;padding:44px 38px 40px;background:var(--ink);color:white;box-shadow:18px 18px 0 var(--cyan)}
.promise-mark{position:absolute;display:grid;place-items:center;right:28px;top:-27px;width:58px;height:58px;border-radius:50%;background:var(--cyan);color:var(--ink);font-size:28px;font-weight:800}
.food-promise>p{margin:0 0 18px;color:var(--cyan);font-size:10px;font-weight:800;letter-spacing:.18em}
.food-promise h2{margin:0;font:500 22px/1.45 var(--display)}
.food-promise ul{margin:28px 0 0;padding:0;list-style:none}
.food-promise li{position:relative;padding:14px 0 14px 27px;border-top:1px solid rgba(255,255,255,.15);color:#d6d6e5;font-size:13px;line-height:1.55}
.food-promise li:before{content:"";position:absolute;left:0;top:22px;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(8,168,78,.18)}
.nutrition-strip{background:var(--green);color:#fff}
.nutrition-strip-inner{display:grid;grid-template-columns:1.6fr repeat(3,1fr);align-items:center;min-height:116px}
.nutrition-strip-inner>p{max-width:260px;font:500 15px/1.45 var(--display)}
.nutrition-strip-inner>div{padding:12px 28px;border-left:1px solid rgba(255,255,255,.3)}
.nutrition-strip strong{display:block;font:500 19px var(--display)}
.nutrition-strip span{display:block;margin-top:5px;font-size:11px;color:rgba(255,255,255,.78)}
.weekly-menu{padding-top:110px;padding-bottom:130px}
.weekly-head{display:flex;align-items:end;justify-content:space-between;gap:50px}
.weekly-head h2{margin:22px 0 0;font:500 clamp(34px,4.5vw,62px)/1.08 var(--display);letter-spacing:-.05em}
.weekly-head h2 em{color:var(--green);font-style:normal}
.week-tabs{display:flex;gap:8px}
.week-tabs button{min-width:176px;padding:18px 20px;border:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}
.week-tabs button span{display:block;font:600 10px var(--display);color:var(--green)}
.week-tabs button b{display:block;margin-top:8px;font-size:12px}
.week-tabs button[aria-selected=true]{background:var(--ink);color:#fff;transform:translateY(-4px)}
.week-tabs button[aria-selected=true] span{color:var(--cyan)}
.macro-key{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:18px;margin:44px 0 18px}
.macro-key span{font-size:10px;font-weight:800}
.macro-key span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%}
.key-kcal:before{background:var(--ink)}
.key-protein:before{background:var(--green)}
.key-fat:before{background:var(--cyan)}
.key-carbs:before{background:#6c72d9}
.menu-days{display:grid;gap:16px}
.day-card{display:grid;grid-template-columns:220px minmax(0,1fr);background:#fff;border:1px solid rgba(33,31,99,.13);box-shadow:0 10px 32px rgba(33,31,99,.04)}
.day-heading{display:flex;min-width:0;flex-direction:column;justify-content:space-between;padding:28px 24px;background:#f1f1f8;border-right:1px solid var(--line)}
.day-index{font:600 10px var(--display);letter-spacing:.12em;color:var(--green)}
.day-heading h3{max-width:100%;margin:22px 0 8px;font:500 clamp(16px,1.15vw,19px)/1.3 var(--display);letter-spacing:-.025em;overflow-wrap:anywhere}
.day-total-label{font-size:9px;font-weight:800;letter-spacing:.12em;color:var(--muted)}
.day-total-kcal{display:block;margin-top:6px;font:600 18px var(--display)}
.meals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.meal{min-width:0;padding:26px 22px;border-right:1px solid var(--line)}
.meal:last-child{border:0}
.meal-name{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:var(--green);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.meal-name:before{content:"";width:20px;height:2px;background:currentColor}
.dishes{min-height:92px;margin:0;color:#363650;font-size:12px;line-height:1.65}
.macros{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.macro{text-align:center}
.macro strong{display:block;font-size:11px}
.macro small{display:block;margin-top:2px;color:var(--muted);font-size:8px;text-transform:uppercase}
.macro-kcal strong{color:var(--ink)}
.macro-protein strong{color:var(--green)}
.macro-fat strong{color:#c68700}
.macro-carbs strong{color:#555bbd}
.nutrition-note{max-width:820px;margin:28px 0 0;padding-left:20px;border-left:3px solid var(--cyan);color:var(--muted);font-size:12px;line-height:1.7}
.day-card.is-entering{animation:menuRise .42s ease both}
@keyframes menuRise{from{opacity:0;transform:translateY(10px)}
to{opacity:1;transform:none}
}
@media(max-width:1100px){.menu-hero-grid{gap:44px}
.meals{grid-template-columns:1fr 1fr}
.meal:nth-child(2){border-right:0}
.meal:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:900px){.menu-hero{padding:65px 0}
.menu-hero-grid{grid-template-columns:1fr}
.food-promise{max-width:600px}
.nutrition-strip-inner{grid-template-columns:1fr 1fr;padding:20px 0}
.nutrition-strip-inner>p{grid-column:1/-1;max-width:none}
.nutrition-strip-inner>div{padding:14px 12px;border-left:0}
.nutrition-strip-inner>div+div{border-left:1px solid rgba(255,255,255,.3)}
.weekly-head{align-items:flex-start;flex-direction:column}
.week-tabs{width:100%}
.week-tabs button{flex:1;min-width:0}
.day-card{grid-template-columns:180px minmax(0,1fr)}
}
@media(max-width:650px){.menu-hero-copy h1{font-size:40px}
.menu-lead{font-size:15px}
.food-promise{box-shadow:9px 9px 0 var(--cyan);padding:38px 25px}
.weekly-menu{padding-top:75px;padding-bottom:85px}
.day-card{grid-template-columns:1fr}
.day-heading{display:grid;grid-template-columns:1fr auto;align-items:end;border-right:0;border-bottom:1px solid var(--line)}
.day-heading h3{margin:8px 0 0}
.day-total{text-align:right}
.meals{grid-template-columns:1fr}
.meal,.meal:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
.meal:last-child{border-bottom:0}
.dishes{min-height:0}
.macro-key{justify-content:flex-start}
.week-tabs button{padding:15px 12px}
.week-tabs button b{font-size:10px}
.nutrition-strip-inner{grid-template-columns:1fr}
.nutrition-strip-inner>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.3)}
.nutrition-strip-inner>p{margin-bottom:4px}
}
