.o{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;gap:clamp(32px,5vw,88px);display:grid}.o-loading{min-height:60vh;color:var(--ink-3);place-items:center;display:grid}.o-muted{color:var(--ink-3);font-size:var(--fs-sm)}.o-empty{color:var(--ink-3);font-size:var(--fs-sm);padding:8px 0}.o-hint{color:var(--ink-3);letter-spacing:.06em;font-size:13px;line-height:1.7}.o-error{color:var(--danger);letter-spacing:.06em;margin-top:6px;font-size:13px}.o-banner{color:var(--danger);font-size:var(--fs-sm);background:#a8473f1a;border-radius:4px;margin-top:20px;padding:14px 18px}.o-banner--soft{background:var(--season-soft);color:var(--ink-2);margin:0 0 20px}.o-field-label{font-size:var(--fs-sm);letter-spacing:.14em;color:var(--ink);margin-bottom:10px;display:block}.o-req{color:var(--season-ink);margin-left:2px}.o-textbtn{font-size:var(--fs-sm);letter-spacing:.14em;white-space:nowrap;border-bottom:1px solid;padding:8px 0}.o-chip{background:var(--season-soft);color:var(--season-ink);letter-spacing:.12em;border-radius:999px;margin-top:8px;padding:2px 10px;font-size:12px;display:inline-block}.o-sec{border-top:1px solid var(--rule);scroll-margin-top:calc(var(--header-h) + 16px);transition:opacity .5s var(--ease-out);padding:clamp(28px,3.4vw,48px) 0 clamp(40px,4.4vw,64px)}.o-sec-head{grid-template-columns:auto 1fr auto;align-items:baseline;gap:18px;margin-bottom:clamp(24px,3vw,40px);display:grid}.o-sec-no{color:var(--season-ink);font-size:20px}.o-sec-title{font-family:var(--serif);font-weight:300;font-size:var(--fs-xl);letter-spacing:.12em;line-height:1.4}.o-sec-check{width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--rule-strong);transition:background-color .5s var(--ease-out), box-shadow .5s;border-radius:50%;align-self:center;place-items:center;display:grid}.o-sec-check svg{fill:none;width:18px;height:18px;stroke:var(--on-ink);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:16;stroke-dashoffset:16px;transition:stroke-dashoffset .6s var(--ease-out) .15s}.o-sec.is-done .o-sec-check{background:var(--moss);box-shadow:none}.o-sec.is-done .o-sec-check svg{stroke-dashoffset:0}.o-picker{outline:none;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.o-pick{text-align:center;box-shadow:inset 0 0 0 1px var(--rule);transition:box-shadow .4s, background-color .4s, transform .4s var(--ease-out);border-radius:4px;justify-items:center;gap:4px;padding:18px 10px 16px;display:grid;position:relative}.o-pick img{object-fit:cover;width:72px;height:72px;transition:transform .6s var(--ease-out);border-radius:50%;margin-bottom:8px}.o-pick:hover{box-shadow:inset 0 0 0 1px var(--rule-strong);background:var(--cream)}.o-pick:hover img{transform:scale(1.06)}.o-pick.is-on{box-shadow:inset 0 0 0 1.5px var(--ink);background:var(--cream)}.o-pick-name{font-family:var(--serif);letter-spacing:.1em;font-size:15px;font-weight:500;line-height:1.5}.o-pick-price{font-family:var(--latin);color:var(--ink-3);font-feature-settings:"lnum" 1;font-size:16px}.o-pick.is-off{cursor:not-allowed;opacity:.55}.o-pick.is-off:hover{box-shadow:inset 0 0 0 1px var(--rule);background:0 0}.o-pick.is-off:hover img{transform:none}.o-season-note{margin:24px 0 0}.o-season-note .o-textbtn{padding:0}.o-pick-tag{background:var(--season-soft);color:var(--season-ink);letter-spacing:.06em;border-radius:999px;padding:0 8px;font-size:11px;position:absolute;top:8px;right:8px}.o-chosen{border-bottom:1px solid var(--rule);grid-template-columns:96px 1fr auto;align-items:center;gap:22px;padding-bottom:28px;display:grid}.o-chosen-img{aspect-ratio:.8;background:var(--paper-deep);border-radius:999px 999px 0 0;width:96px;overflow:hidden}.o-chosen-img img{object-fit:cover;width:100%;height:100%}.o-chosen-name{font-family:var(--serif);font-weight:300;font-size:var(--fs-xl);letter-spacing:.14em;line-height:1.35}.o-chosen-en{color:var(--season-ink);font-size:19px;line-height:1.2}.o-options{outline:none;gap:22px;margin-top:28px;display:grid}.o-optgroup{border:0;margin:0;padding:0}.o-chips{flex-wrap:wrap;gap:8px;display:flex}.o-chipradio{height:42px;font-size:var(--fs-sm);letter-spacing:.1em;box-shadow:inset 0 0 0 1px var(--rule-strong);cursor:pointer;border-radius:999px;align-items:center;padding:0 18px;transition:background-color .35s,color .35s;display:inline-flex;position:relative}.o-chipradio input{opacity:0;pointer-events:none;position:absolute}.o-chipradio:has(input:focus-visible){outline:2px solid var(--moss);outline-offset:2px}.o-chipradio.is-on{background:var(--ink);color:var(--on-ink);box-shadow:none}.o-sizes{outline:none;margin-top:32px}.o-extras{grid-template-columns:minmax(0,1fr);display:grid}.o-stepper,.o-candle{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto;align-items:center;gap:20px;padding:18px 0;display:grid}.o-stepper:first-child{padding-top:0}.o-candles{border-bottom:1px solid var(--rule);outline:none;padding:18px 0}.o-candles>legend{float:left;width:100%;margin-bottom:2px;padding:0}.o-candles>legend+*{clear:both}.o-candles .o-chips{margin-top:12px}.o-stepper .o-field-label,.o-candle .o-field-label{margin-bottom:2px}.o-stepper-ctrl{box-shadow:inset 0 0 0 1px var(--rule-strong);border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex}.o-stepper-ctrl button{border-radius:50%;width:40px;height:40px;font-size:18px;line-height:1;transition:background-color .3s}.o-stepper-ctrl button:hover:not(:disabled){background:var(--paper-deep)}.o-stepper-ctrl button:disabled{color:var(--rule-strong);cursor:not-allowed}.o-stepper-ctrl input{text-align:center;width:40px;font-family:var(--latin);font-feature-settings:"lnum" 1;-moz-appearance:textfield;appearance:textfield;background:0 0;border:0;font-size:22px}.o-stepper-ctrl input::-webkit-inner-spin-button,.o-stepper-ctrl input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.o-unit{color:var(--ink-3);margin-right:6px;font-size:12px}.o-candle-ctrl{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.o-candle-ctrl input{width:132px;height:48px;box-shadow:inset 0 0 0 1px var(--rule-strong);background:var(--cream);text-align:center;font-family:var(--latin);letter-spacing:.2em;font-feature-settings:"lnum" 1;border:0;border-radius:999px;padding:0 18px;font-size:22px}.o-candle-ctrl input::placeholder{font-family:var(--sans);letter-spacing:.14em;color:var(--ink-3);font-size:14px}.o-trap{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-10000px}.o-delivery-note{margin:-8px 0 20px}.o-delivery-note a{color:inherit;text-underline-offset:3px;text-decoration:underline}.o-writing{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr);gap:12px;padding:18px 0;display:grid}.o-writing .o-field-label{margin-bottom:2px}.o-writing-row{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.o-writing-row input{width:100%;min-width:0;max-width:420px;height:48px;box-shadow:inset 0 0 0 1px var(--rule-strong);background:var(--cream);font-family:var(--serif);letter-spacing:.08em;border:0;border-radius:999px;flex:240px;padding:0 20px;font-size:17px}.o-writing-row input::placeholder{font-family:var(--sans);letter-spacing:.14em;color:var(--ink-3);font-size:14px}.o-hours{color:var(--season-ink);margin:-4px 0 12px}.o-candle-q{box-shadow:inset 0 0 0 1px var(--rule-strong);color:var(--ink);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:4px 12px;font-size:13px}.o-candle-q:disabled{opacity:.4;cursor:default}.o-candle-cost{color:var(--season-ink);letter-spacing:.08em;font-size:12px}.o-pickup{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,56px);display:grid}.o-pickup>div{outline:none}.o-cal{user-select:none}.o-cal-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.o-cal-title{font-family:var(--serif);font-size:var(--fs-lg);letter-spacing:.12em}.o-cal-title .num{font-size:1.25em}.o-cal-nav{width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--rule-strong);border-radius:50%;transition:background-color .3s}.o-cal-nav:hover:not(:disabled){background:var(--ink);color:var(--on-ink)}.o-cal-nav:disabled{opacity:.3;cursor:not-allowed}.o-cal-week,.o-cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.o-cal-week span{text-align:center;letter-spacing:.1em;color:var(--ink-3);padding:6px 0;font-size:12px}.o-day{aspect-ratio:1;transition:background-color .3s, color .3s, transform .3s var(--ease-out);border-radius:50%;place-items:center;font-size:19px;display:grid;position:relative}.o-day .num{line-height:1}.o-day:not(.is-off):not(.is-empty):hover{background:var(--paper-deep)}.o-day.is-off{color:#2e35274d;cursor:not-allowed}.o-day.is-off.is-season .num{text-decoration:line-through 1px}.o-day.is-today:after{content:"";background:var(--season);border-radius:50%;width:4px;height:4px;position:absolute;bottom:14%}.o-day.is-short:before{content:"";background:var(--season-ink);border-radius:1px;width:12px;height:1.5px;position:absolute;bottom:16%}.o-day.is-sel.is-short:before{background:var(--on-ink)}.o-day.is-sel{background:var(--ink);color:var(--on-ink);transform:scale(1.04)}.o-day.is-sel:after{background:var(--on-ink)}.o-cal-hint{min-height:3.4em;color:var(--ink-3);letter-spacing:.06em;margin-top:14px;font-size:13px;line-height:1.7}.o-slots{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.o-slot{height:52px;box-shadow:inset 0 0 0 1px var(--rule);border-radius:4px;place-items:center;gap:0;font-size:17px;transition:box-shadow .3s,background-color .3s,color .3s;display:grid}.o-slot small{font-family:var(--sans);letter-spacing:.1em;color:var(--season-ink);margin-top:-4px;font-size:10px;line-height:1}.o-slot:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--ink)}.o-slot.is-on{background:var(--ink);color:var(--on-ink);box-shadow:none}.o-slot.is-on small{color:var(--on-ink-2)}.o-slot:disabled{color:#2e35274d;cursor:not-allowed}.o-slot:disabled small{color:inherit}.o-where{margin-top:16px}.o-fields{grid-template-columns:1fr 1fr;gap:22px 20px;display:grid}.o-field.is-wide{grid-column:1/-1}.o-field input,.o-field textarea{background:var(--cream);width:100%;box-shadow:inset 0 0 0 1px var(--rule);letter-spacing:.04em;border:0;border-radius:4px;padding:14px 16px;font-size:16px;transition:box-shadow .3s}.o-field textarea{resize:vertical;min-height:96px;line-height:1.7}.o-field input:hover,.o-field textarea:hover{box-shadow:inset 0 0 0 1px var(--rule-strong)}.o-field input:focus,.o-field textarea:focus{box-shadow:inset 0 0 0 1.5px var(--ink);outline:none}.o-field input[aria-invalid=true],.o-field textarea[aria-invalid=true]{box-shadow:inset 0 0 0 1.5px var(--danger)}.o-field .o-hint{margin-top:6px}.o-pay{border:0;outline:none;margin:32px 0 0;padding:0}.o-pay-grid{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:12px;display:grid}.o-paycard{box-shadow:inset 0 0 0 1px var(--rule-strong);cursor:pointer;border-radius:4px;gap:6px;padding:20px 52px 20px 20px;transition:box-shadow .35s,background-color .35s;display:grid;position:relative}.o-paycard input{opacity:0;pointer-events:none;position:absolute}.o-paycard:has(input:focus-visible){outline:2px solid var(--moss);outline-offset:2px}.o-paycard:hover{background:var(--cream)}.o-paycard.is-on{box-shadow:inset 0 0 0 1.5px var(--ink);background:var(--cream)}.o-paycard-title{font-family:var(--serif);font-weight:500;font-size:var(--fs-lg);letter-spacing:.12em}.o-paycard-note{color:var(--ink-3);font-size:13px;line-height:1.7}.o-paycard-mark{width:20px;height:20px;box-shadow:inset 0 0 0 1px var(--rule-strong);transition:box-shadow .35s var(--ease-out);border-radius:50%;position:absolute;top:22px;right:20px}.o-paycard.is-on .o-paycard-mark{box-shadow:inset 0 0 0 6px var(--ink)}.o-agree{font-size:var(--fs-sm);color:var(--ink-2);cursor:pointer;outline:none;align-items:flex-start;gap:12px;margin-top:28px;line-height:1.8;display:flex}.o-agree input{width:20px;height:20px;accent-color:var(--ink);flex:none;margin-top:3px}.o-agree a{text-underline-offset:3px;text-decoration:underline}.o-submit{width:100%;min-height:60px;margin-top:28px;font-size:15px}.o-submit-price{font-family:var(--latin);letter-spacing:.02em;font-size:19px}.o-summary{top:calc(var(--header-h) + 24px);position:sticky}.o-summary-inner{background:var(--cream);box-shadow:inset 0 0 0 1px var(--rule);border-radius:4px;gap:20px;padding:32px 28px;display:grid}.o-sum-cake{grid-template-columns:64px 1fr;align-items:center;gap:16px;display:grid}.o-sum-cake img{object-fit:cover;border-radius:999px 999px 0 0;width:64px;height:80px}.o-sum-name{font-family:var(--serif);font-weight:500;font-size:var(--fs-lg);letter-spacing:.12em}.o-sum-rows{border-top:1px solid var(--rule);display:grid}.o-row{border-bottom:1px solid var(--rule);grid-template-columns:3.5em 1fr;gap:12px;padding:10px 0;font-size:13px;line-height:1.7;display:grid}.o-row dt{color:var(--ink-3);letter-spacing:.12em}.o-sum-lines{color:var(--ink-2);gap:6px;font-size:13px;display:grid}.o-sum-lines li{justify-content:space-between;gap:12px;display:flex}.o-sum-lines .num{font-size:16px}.o-sum-total{border-top:1px solid var(--rule-strong);font-size:var(--fs-sm);letter-spacing:.14em;justify-content:space-between;align-items:baseline;padding-top:14px;display:flex}.o-sum-total .price{font-size:32px}.o-sum-submit{width:100%}.o-sum-note{color:var(--ink-3);text-align:center;letter-spacing:.08em;font-size:12px}.o-sum-note a{text-underline-offset:3px;text-decoration:underline}.o-bar{display:none}@media (width<=1080px){.o{grid-template-columns:minmax(0,1fr)}.o-summary{position:static}}@media (width<=760px){.o-pickup,.o-fields{grid-template-columns:minmax(0,1fr)}.o-pay-grid{grid-auto-flow:row}.o-chosen{grid-template-columns:76px 1fr}.o-chosen-img{width:76px}.o-chosen .o-textbtn{grid-column:2;justify-self:start}.o-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1080px){.o-sum-submit{display:none}.o-bar{width:min(560px,100% - 24px);left:50%;bottom:max(12px, env(safe-area-inset-bottom));z-index:40;background:var(--ink);color:var(--on-ink);border-radius:999px;justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 8px 22px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 16px 40px -16px #2e352799}.o-bar-total{line-height:1.2;display:grid}.o-bar-total small{letter-spacing:.2em;color:var(--on-ink-2);font-size:11px}.o-bar-total .price{font-size:22px}.o-bar-btn{--btn-bg:var(--on-ink);--btn-fg:var(--ink);min-height:48px}.o-bar{transition:transform .45s var(--ease-out), opacity .3s}.o-bar.is-away{opacity:0;pointer-events:none;transform:translate(-50%,140%)}.o{padding-bottom:72px}}.o-paycard.is-off{cursor:not-allowed;opacity:.55;background:0 0}.o-paycard.is-off:hover{background:0 0}.o-paynote{color:var(--season-ink);margin-top:10px}.o-human{margin-top:20px}
