.po{min-height:100vh;display:flex;flex-direction:column;background:var(--paper)}.po-top{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px var(--gutter);background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:saturate(120%) blur(10px);border-bottom:1px solid var(--line)}.po-top__logo img{height:26px;display:block}.po-top__step{font-size:var(--t-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);font-weight:500}.po-top__close{display:inline-flex;align-items:center;gap:8px;font-size:var(--t-sm);color:var(--ink-soft)}.po-top__close:hover{color:var(--ember)}.po-rail{display:flex;gap:6px;padding:0 var(--gutter);margin-top:14px}.po-rail__seg{flex:1;height:3px;background:var(--line-strong);overflow:hidden}.po-rail__seg i{display:block;height:100%;width:0;background:var(--ember);transition:width .6s var(--ease-polished)}.po-rail__seg.is-done i,.po-rail__seg.is-active i{width:100%}.po-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:clamp(28px,5vw,64px) var(--gutter) 140px;overflow-x:hidden}.po-stage{width:100%;max-width:1040px;will-change:transform,opacity}.po-step{display:none}.po-step.is-active{display:block}.po-step.is-entering>*{animation:po-enter .66s cubic-bezier(.16,1,.3,1) both}.po-step.is-entering>*:nth-child(1){animation-delay:0s}.po-step.is-entering>*:nth-child(2){animation-delay:.08s}.po-step.is-entering>*:nth-child(3){animation-delay:.16s}.po-step.is-entering>*:nth-child(4){animation-delay:.24s}.po-step.is-entering>*:nth-child(5){animation-delay:.32s}@keyframes po-enter{0%{opacity:0;transform:translate(calc(28px * var(--po-dir, 1)),12px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.po-step.is-entering>*{animation:none}}.po-head{max-width:40ch;margin-bottom:clamp(26px,4vw,48px)}.po-head .pe-eyebrow{display:block;margin-bottom:16px}.po-head h2{font-family:var(--font-display);text-transform:uppercase;line-height:.9;font-size:clamp(2.6rem,1.6rem + 5vw,5rem);letter-spacing:.01em}.po-head p{margin-top:16px;color:var(--ink-soft);font-size:var(--t-lead);max-width:46ch}.po-cards{display:grid;gap:clamp(14px,2vw,22px)}.po-cards--2{grid-template-columns:1fr 1fr}.po-cards--qty{grid-template-columns:repeat(4,1fr)}.po-card{position:relative;text-align:left;background:var(--paper-card);border:1.5px solid var(--line-strong);border-radius:0;padding:clamp(22px,3vw,34px);cursor:pointer;transition:border-color .3s var(--ease-polished),transform .3s var(--ease-out),background .3s;display:flex;flex-direction:column;gap:10px}.po-card:hover{border-color:var(--ink);transform:translateY(-3px)}.po-card.is-sel{border-color:var(--ember);background:#fff}.po-card.is-sel:after{content:"\2713";position:absolute;top:14px;right:14px;width:26px;height:26px;display:grid;place-items:center;background:var(--ember);color:#fff;font-size:15px;font-weight:700}.po-card__k{font-size:var(--t-xs);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint)}.po-card__t{font-family:var(--font-display);text-transform:uppercase;line-height:.92;font-size:clamp(2rem,1.4rem + 2.4vw,3.2rem)}.po-card__d{color:var(--ink-soft);font-size:var(--t-sm)}.po-card__macro{margin-top:auto;padding-top:14px;font-size:var(--t-sm);font-weight:500;color:var(--ink);border-top:1px solid var(--line)}.po-card__macro b{color:var(--ember)}.po-card--qty{align-items:center;text-align:center;gap:4px;padding:clamp(18px,2.5vw,28px) 12px}.po-card--qty .po-card__t{font-size:clamp(2.4rem,1.6rem + 3vw,4rem)}.po-card--qty small{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-faint)}.po-card--qty .po-card__price{font-size:var(--t-sm);color:var(--ink-soft);margin-top:6px}.po-card--qty.is-sel:after{top:10px;right:10px}.po-pick-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.po-pick-count{font-size:var(--t-sm);color:var(--ink-soft)}.po-pick-count b{color:var(--ember);font-weight:600}.po-meals{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.6vw,18px)}.po-meal{position:relative;border:1.5px solid var(--line-strong);background:var(--paper-card);cursor:pointer;transition:border-color .25s,transform .25s var(--ease-out)}.po-meal:hover{border-color:var(--ink);transform:translateY(-2px)}.po-meal.is-sel{border-color:var(--ember)}.po-meal__img{aspect-ratio:5/4;overflow:hidden}.po-meal__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-polished)}.po-meal:hover .po-meal__img img{transform:scale(1.06)}.po-meal__b{padding:12px 14px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px}.po-meal__b span{font-size:var(--t-sm);font-weight:500;line-height:1.2}.po-meal__add{flex:0 0 auto;width:26px;height:26px;border:1.5px solid var(--line-strong);display:grid;place-items:center;font-size:16px;color:var(--ink);transition:all .2s}.po-meal.is-sel .po-meal__add{background:var(--ember);border-color:var(--ember);color:#fff}.po-meal__qty{position:absolute;top:10px;left:10px;background:var(--ember);color:#fff;font-size:var(--t-xs);font-weight:700;padding:3px 8px;opacity:0;transform:scale(.6);transition:all .25s var(--ease-polished)}.po-meal.is-sel .po-meal__qty{opacity:1;transform:none}.po-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;max-width:720px}.po-form .po-full{grid-column:1 / -1}.po-zones{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:26px}.po-recap{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}.po-recap__list{border-top:1.5px solid var(--ink)}.po-recap__row{display:flex;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.po-recap__row dt{color:var(--ink-soft);font-size:var(--t-sm)}.po-recap__row dd{margin:0;font-weight:500;text-align:right;max-width:60%}.po-recap__meals{font-size:var(--t-sm);color:var(--ink-soft);line-height:1.7}.po-total{background:var(--ink);color:var(--paper);padding:clamp(24px,3vw,34px);position:sticky;top:96px}.po-total h3{font-size:var(--t-xs);letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb,var(--paper) 60%,transparent);margin-bottom:18px}.po-total__line{display:flex;justify-content:space-between;padding:8px 0;font-size:var(--t-sm);color:color-mix(in srgb,var(--paper) 82%,transparent)}.po-total__grand{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.18)}.po-total__grand b{font-family:var(--font-display);font-size:2.6rem;line-height:1}.po-total .pe-btn{width:100%;justify-content:center;margin-top:22px}.po-total__note{font-size:var(--t-xs);color:color-mix(in srgb,var(--paper) 55%,transparent);margin-top:14px;text-align:center}.po-nav{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--gutter);background:color-mix(in srgb,var(--paper-card) 92%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--line)}.po-nav__total{font-size:var(--t-sm);color:var(--ink-soft)}.po-nav__total b{color:var(--ink);font-weight:600;font-size:var(--t-base)}.po-nav__btns{display:flex;gap:10px}.po-nav .pe-btn[disabled]{opacity:.38;pointer-events:none}.po-done{max-width:640px;margin:6vh auto;text-align:center}.po-done__mark{width:78px;height:78px;margin:0 auto 22px;border-radius:50%;background:var(--ember);color:#fff;display:grid;place-items:center;font-size:40px;animation:po-pop .6s var(--ease-bounce, cubic-bezier(.68,-.55,.265,1.55)) both}@keyframes po-pop{0%{transform:scale(0)}to{transform:scale(1)}}.po-done h2{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2.4rem,1.6rem + 4vw,4rem);line-height:.9;margin-bottom:16px}.po-done p{color:var(--ink-soft);font-size:var(--t-lead)}.po-done .pe-btn{margin-top:26px}.po-cards--3{grid-template-columns:repeat(3,1fr)}.po-card--reco{position:relative;border-color:var(--teal)}.po-note{margin-top:22px;font-size:var(--t-sm);color:var(--ink-faint);max-width:62ch}.po-packs{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(10px,1.2vw,16px);align-items:stretch}.po-pack{position:relative;text-align:left;background:var(--paper-card);border:1.5px solid var(--line-strong);padding:clamp(16px,1.6vw,22px);display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:border-color .3s var(--ease-polished),transform .3s var(--ease-out),background .3s}.po-pack:hover{border-color:var(--ink);transform:translateY(-3px)}.po-pack.is-sel{border-color:var(--ember);background:#fff}.po-pack.is-sel:after{content:"\2713";position:absolute;top:10px;right:10px;width:22px;height:22px;display:grid;place-items:center;background:var(--ember);color:#fff;font-size:13px;font-weight:700}.po-pack__l{font-size:var(--t-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint)}.po-pack__n{font-family:var(--font-display);font-size:clamp(2.6rem,1.8rem + 2.4vw,4rem);line-height:.82;display:flex;flex-direction:column;gap:4px}.po-pack__n small{font-family:var(--font-text);font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);line-height:1.3}.po-pack__d{font-size:var(--t-xs);line-height:1.5;color:var(--ink-soft);margin-top:auto}.po-pack--hero{border-color:var(--ink)}.po-pack--hero.is-sel{border-color:var(--ember)}.po-pack__badge{position:absolute;top:-1.5px;left:-1.5px;background:var(--ember);color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;padding:4px 8px}.po-card--reco .po-pack__badge{background:var(--teal)}.po-pack__tag{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--teal)}.po-step2{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.po-mini{width:26px;height:26px;border:1.5px solid var(--line-strong);background:transparent;display:grid;place-items:center;font-size:15px;line-height:1;color:var(--ink);transition:all .2s}.po-mini:hover{border-color:var(--ember);color:var(--ember)}.po-q{min-width:14px;text-align:center;font-weight:600;font-size:var(--t-sm)}.po-meal.is-sel .po-q{color:var(--ember)}.po-chip{border:1.5px solid var(--line-strong);background:transparent;color:var(--ink);padding:9px 16px;font-size:var(--t-sm);font-weight:500;transition:all .25s}.po-chip:hover{border-color:var(--ink)}.po-chip.is-sel{background:var(--ink);border-color:var(--ink);color:var(--paper)}.po-prot{margin-top:26px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.po-prot__l{font-size:var(--t-sm);font-weight:500}.po-prot__c,.po-rot__c{display:flex;gap:10px;flex-wrap:wrap}.po-auth{margin-top:26px;padding:clamp(18px,2vw,24px);background:var(--paper-2);border-left:3px solid var(--teal);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.po-auth b{display:block;font-size:var(--t-h4);font-weight:500;margin-bottom:6px}.po-auth p{font-size:var(--t-sm);color:var(--ink-soft);max-width:62ch}.po-auth .pe-btn{flex:0 0 auto}.po-rotation{margin-top:34px;border-top:1.5px solid var(--ink);padding-top:26px}.po-rot__head h3{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(1.8rem,1.4rem+1.6vw,2.6rem);line-height:.9;margin-top:8px}.po-rot__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,3vw,40px);margin-top:22px}.po-rot__w{background:var(--paper-2);padding:clamp(18px,2vw,26px)}.po-rot__w b{display:block;font-size:var(--t-h4);margin-bottom:8px}.po-rot__w p{font-size:var(--t-sm);color:var(--ink-soft);margin-bottom:14px}.po-rot__meals{font-size:var(--t-sm);color:var(--ink);font-weight:500;line-height:1.6;display:block}.po-rot__hint{font-size:var(--t-xs);color:var(--ink-faint);margin-top:12px}@media(max-width:1080px){.po-packs{grid-template-columns:repeat(3,1fr)}}@media(max-width:860px){.po-packs{grid-template-columns:1fr 1fr}.po-cards--3,.po-rot__grid,.po-cards--2,.po-form,.po-recap{grid-template-columns:1fr}.po-cards--qty,.po-meals{grid-template-columns:1fr 1fr}.po-zones{grid-template-columns:1fr}.po-total{position:static}.po-main{padding-bottom:120px}}@media(max-width:460px){.po-meals{grid-template-columns:1fr 1fr}.po-nav__total{display:none}.po-nav__btns{width:100%}.po-nav__btns .pe-btn{flex:1;justify-content:center}}
