.page-hero--short{min-height:clamp(320px,42svh,460px)}.page-reserve .fab{display:none}.checkout{padding-top:clamp(2.5rem,5vw,4rem)}.checkout__demo{margin-bottom:2rem}.steps{counter-reset:none;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:0 0 2.4rem;padding:0;list-style:none;display:grid}.steps li{border-top:3px solid var(--line-dark);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-ink);align-items:center;gap:.6rem;padding:.9rem 0;font-size:.78rem;font-weight:700;transition:border-color .3s,color .3s;display:flex}.steps li span{letter-spacing:0;border:1px solid;place-items:center;width:1.7rem;height:1.7rem;font-size:.75rem;transition:background-color .3s,color .3s;display:inline-grid}.steps li[aria-current=step]{border-top-color:var(--ember);color:var(--ink)}.steps li[aria-current=step] span{background:var(--ember);border-color:var(--ember);color:var(--slate)}.steps li.is-done{border-top-color:var(--ink);color:var(--ink)}.steps li.is-done span{background:var(--ink);color:var(--cream);border-color:var(--ink)}@media (width<=640px){.steps li{gap:0;font-size:0}.steps li span{font-size:.75rem}}.checkout__grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:clamp(1.5rem,4vw,3.5rem);display:grid}@media (width<=980px){.checkout__grid{grid-template-columns:1fr}}.step{border:1px solid var(--line-dark);border-radius:var(--radius);background:#fff;padding:clamp(1.4rem,3.5vw,2.6rem)}.step__title{font-family:var(--font-display);outline:none;margin-bottom:1.4rem;font-size:clamp(1.6rem,3vw,2.2rem)}.step__opt{color:var(--muted-ink);font-size:.55em;font-family:var(--font-body)}.step .muted{color:var(--muted-ink)}.step__actions{flex-wrap:wrap;justify-content:space-between;gap:.7rem;margin-top:2rem;display:flex}.step__actions:has(>:only-child){justify-content:flex-end}.step__actions--wrap{justify-content:flex-start}.grid-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.grid-3{grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-top:1.4rem;display:grid}@media (width<=640px){.grid-2,.grid-3{grid-template-columns:1fr}}.field__err{color:#b4441c;min-height:1em;font-size:.82rem;font-style:normal}.field__hint{color:var(--muted-ink);font-size:.78rem;font-style:normal}.field input[aria-invalid=true]{border-color:#b4441c}.pkgs{border:0;margin:0;padding:0}.pkgs__grid{grid-template-columns:1fr 1fr;gap:.8rem;display:grid}@media (width<=640px){.pkgs__grid{grid-template-columns:1fr}}.pkg{cursor:pointer;display:block;position:relative}.pkg input{opacity:0;position:absolute;inset:0}.pkg__card{border:1px solid var(--line-dark);border-radius:var(--radius);height:100%;transition:border-color .2s ease, box-shadow .2s ease, transform var(--t-fast) var(--ease-out);gap:.3rem;padding:1.1rem 1.2rem;display:grid}.pkg__card b{font-family:var(--font-display);font-size:1.25rem;font-weight:400}.pkg__card small{color:var(--muted-ink);font-size:.88rem}.pkg__card em{letter-spacing:.1em;text-transform:uppercase;color:var(--ember-ink);font-size:.75rem;font-style:normal;font-weight:700}.pkg input:checked+.pkg__card{border-color:var(--ember);box-shadow:inset 0 0 0 1px var(--ember), 0 10px 24px -14px #0006}.pkg input:focus-visible+.pkg__card{outline:2px solid var(--ember);outline-offset:2px}.pkg:active .pkg__card{transform:scale(.99)}.stepper{border:1px solid var(--line-dark);border-radius:999px;align-items:center;min-height:3rem;display:inline-flex}.stepper button{width:2.9rem;height:2.9rem;transition:transform var(--t-fast) var(--ease-out);font-size:1.2rem}.stepper button:active{transform:scale(.9)}.stepper output{text-align:center;min-width:2.2rem;font-weight:700}.stepper--sm{min-height:2.5rem}.stepper--sm button{width:2.4rem;height:2.4rem}.addons{grid-template-columns:1fr 1fr;gap:0 1.5rem;margin:1rem 0 1.6rem;display:grid}@media (width<=640px){.addons{grid-template-columns:1fr}}.addon{border-bottom:1px solid var(--line-dark);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 0;display:flex}.addon b{font-size:.95rem;font-weight:700;display:block}.addon small{color:var(--muted-ink);font-size:.8rem}.cakes{border:1px solid var(--line-dark);border-radius:var(--radius);gap:1rem;margin:0;padding:1rem 1.2rem 1.2rem;display:grid}.cakes legend{padding:0 .4rem;font-weight:700}.cakes__opts{flex-wrap:wrap;gap:.5rem;display:flex}.chip{position:relative}.chip input{opacity:0;cursor:pointer;position:absolute;inset:0}.chip span{border:1px solid var(--line-dark);border-radius:999px;align-items:center;min-height:2.6rem;padding:.4rem 1rem;font-size:.88rem;transition:background-color .2s,color .2s;display:inline-flex}.chip input:checked+span{background:var(--ink);color:var(--cream);border-color:var(--ink)}.chip input:focus-visible+span{outline:2px solid var(--ember);outline-offset:2px}.check{align-items:flex-start;gap:.7rem;margin-top:1.4rem;font-size:.95rem;display:flex}.check input{width:1.2rem;height:1.2rem;accent-color:var(--ink);margin-top:.2rem}.check a{text-decoration:underline}.methods{grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1.6rem 0;display:grid}@media (width<=640px){.methods{grid-template-columns:1fr}}.methods label{position:relative}.methods input{opacity:0;cursor:pointer;position:absolute;inset:0}.methods span{border:1px solid var(--line-dark);border-radius:var(--radius);gap:.15rem;padding:.9rem 1rem;transition:border-color .2s,box-shadow .2s;display:grid}.methods small{color:var(--muted-ink);font-size:.8rem}.methods input:checked+span{border-color:var(--ember);box-shadow:inset 0 0 0 1px var(--ember)}.methods input:focus-visible+span{outline:2px solid var(--ember);outline-offset:2px}.pay{gap:1rem;display:grid}.pay--mpesa{grid-template-columns:minmax(0,1fr) 230px;align-items:start;gap:2rem}@media (width<=760px){.pay--mpesa{grid-template-columns:1fr}.phone{margin-inline:auto}}.pay__copy{justify-items:start;gap:1rem;display:grid}.pay__status{min-height:1.4em;margin:0;font-weight:700}.pay__retry{flex-wrap:wrap;gap:.5rem;display:flex}.pay__sim summary{cursor:pointer;color:var(--muted-ink);font-size:.85rem}.pay__sim>div{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.pay [disabled]{opacity:.5;pointer-events:none}.phone{aspect-ratio:9/18;color:#e8e8e8;background:#0e0e10;border-radius:34px;grid-template-rows:auto 1fr;width:230px;padding:12px;display:grid;box-shadow:0 30px 60px -20px #0009,inset 0 0 0 2px #2b2b30}.phone__bar{color:#bbb;justify-content:space-between;padding:4px 10px 8px;font-size:.62rem;display:flex}.phone__screen{text-align:center;background:linear-gradient(#1b2a1d,#0f1710);border-radius:22px;align-content:center;gap:.7rem;padding:1.1rem .9rem;font-size:.82rem;display:none}.pay--mpesa[data-state=idle] .phone__screen--idle,.pay--mpesa[data-state=sending] .phone__screen--sending,.pay--mpesa[data-state=awaiting] .phone__screen--awaiting,.pay--mpesa[data-state=processing] .phone__screen--processing,.pay--mpesa[data-state=paid] .phone__screen--paid,.pay--mpesa[data-state=failed] .phone__screen--failed{animation:screen-in .26s var(--ease-out);display:grid}@keyframes screen-in{0%{opacity:0;transform:scale(.97)}}.phone__screen p{margin:0}.stk__title{letter-spacing:.2em;color:#59c35a;font-weight:700}.stk__pin{color:#9fd69f;border-bottom:1px solid #59c35a;padding-bottom:.3rem;font-size:.75rem}.stk__btns{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.stk__btns button{color:#e8e8e8;background:#263826;border-radius:10px;min-height:2.5rem;font-size:.78rem;font-weight:700}.stk__btns button:last-child{color:#0e1a0e;background:#59c35a}.stk__btns button:active{transform:scale(.96)}.stk__count{color:#9a9a9a;font-size:.7rem}.spinner{border:3px solid #2f4a30;border-top-color:#59c35a;border-radius:50%;width:28px;height:28px;margin:0 auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.pin{justify-content:center;gap:.5rem;display:flex}.pin i{opacity:.2;background:#59c35a;border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite pin}.pin i:nth-child(2){animation-delay:.15s}.pin i:nth-child(3){animation-delay:.3s}.pin i:nth-child(4){animation-delay:.45s}@keyframes pin{50%{opacity:1;transform:scale(1.2)}}.phone__screen--paid{color:#111;text-align:left;background:#f3f3f3;align-content:start}.sms__from{color:#555;font-size:.7rem;font-weight:700}.sms{background:#e4e4e9;border-radius:14px 14px 14px 4px;padding:.7rem .8rem;font-size:.74rem;line-height:1.45}.phone__screen--failed{background:linear-gradient(#3a1d1a,#1b0f0e)}.bank{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=640px){.bank{grid-template-columns:1fr}}.bank>div{border:1px solid var(--line-dark);border-radius:var(--radius);padding:1rem 1.2rem}.bank h3{font-family:var(--font-display);margin-bottom:.6rem;font-size:1.15rem}.bank dl,.receipt{gap:.45rem;margin:0;display:grid}.bank dl div,.receipt div{justify-content:space-between;gap:1rem;font-size:.9rem;display:flex}.bank dt,.receipt dt{color:var(--muted-ink)}.bank dd,.receipt dd{text-align:right;margin:0;font-weight:700}.step--done{text-align:left}.done__tick svg{fill:none;width:64px;height:64px;stroke:var(--ember-ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;margin-bottom:1rem}.done__tick circle{stroke-dasharray:152;stroke-dashoffset:152px;animation:draw .7s var(--ease-out) forwards}.done__tick path{stroke-dasharray:40;stroke-dashoffset:40px;animation:draw .5s .45s var(--ease-out) forwards}@keyframes draw{to{stroke-dashoffset:0}}.receipt{border-block:1px solid var(--line-dark);margin-block:1.4rem;padding-block:1.2rem}.summary{top:calc(var(--header-h) + 1rem);background:var(--slate);color:var(--cream);border-radius:var(--radius);padding:1.6rem;position:sticky}.summary__eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--ember);margin-bottom:.4rem;font-size:.7rem;font-weight:700}.summary__pkg{font-family:var(--font-display);margin-bottom:1rem;font-size:1.6rem}.summary__meta,.summary__totals{gap:.45rem;margin:0;display:grid}.summary__meta div,.summary__totals div{justify-content:space-between;gap:1rem;font-size:.92rem;display:flex}.summary dt{color:var(--muted-light)}.summary dd{text-align:right;margin:0;font-weight:700}.summary__lines{border-block:1px solid var(--line);gap:.4rem;margin:1rem 0;padding:1rem 0;font-size:.9rem;display:grid}.summary__lines li{justify-content:space-between;gap:1rem;display:flex}.summary__totals .is-now{border-radius:var(--radius);background:#f2892b24;margin:.2rem -.7rem;padding:.6rem .7rem}.summary__totals .is-now dt,.summary__totals .is-now dd{color:var(--ember);font-size:1.05rem}.summary__note{color:var(--muted-light);margin:1rem 0 0;font-size:.8rem}@media (width<=980px){.summary{order:-1;position:static}}.carddlg{width:min(440px,92vw);color:var(--ink);background:#fff;border:0;border-radius:12px;padding:1.6rem;box-shadow:0 30px 80px #00000080}.carddlg::backdrop{background:#0a0a0cb3}.carddlg h3{font-family:var(--font-display);margin-bottom:1rem;font-size:1.4rem}.carddlg .field{margin-bottom:.8rem}.carddlg input[readonly]{background:#f5f5f7}.carddlg__brand{letter-spacing:.06em;color:#3b4cca;font-weight:700}.carddlg__brand small{color:var(--muted-ink);font-weight:400}.carddlg__note{color:var(--muted-ink);font-size:.8rem}@media print{.header,.mobile-menu,.sidetab,.why,.page-hero,.checkout__demo,.steps,.summary,.footer,.cart,.fab,.toast,.grain,.loader,.step--done .step__actions,.step--done .link,.carddlg{display:none!important}body,.checkout,.step--done{color:#000!important;background:#fff!important}.checkout{padding:0!important}.checkout__grid{display:block}.step--done{border:0;padding:0}.receipt dt{color:#333}}@media (prefers-reduced-motion:reduce){.spinner,.pin i,.done__tick circle,.done__tick path{stroke-dashoffset:0;animation:none}}
