:root{--bg-1:#efeae2;--bg-2:#e4ddd2;--paper:#fbf9f5;--paper-2:#f4f0e8;--ink:#1c1813;--ink-2:#6d645a;--ink-3:#a89f92;--line:#e2dacd;--brass:#b08a4e;--brass-lo:#8f6d38;--good:#4f7d52;--alert:#c0432f;--tote-stripe:#8ea795;--tote-edge:#c9bba1;--shadow-soft:0 24px 60px -28px #281e126b;--shadow-lift:0 40px 90px -36px #281e128c;--font-serif:"Fraunces",Georgia,serif;--font-ui:"Inter",system-ui,-apple-system,sans-serif;--ease:cubic-bezier(.22,.61,.36,1);--ease-out:cubic-bezier(.16,1,.3,1);--spring:cubic-bezier(.34,1.56,.64,1);--tray-w:min(400px, 92vw)}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(120% 90% at 78% 8%, #f6f2ea 0%, transparent 55%), linear-gradient(168deg, var(--bg-1), var(--bg-2));min-height:100dvh;color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;overflow-x:hidden}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ambient{z-index:0;pointer-events:none;will-change:transform;background:radial-gradient(38% 40% at 24% 30%,#fff4e0bf,#0000 66%),radial-gradient(44% 46% at 80% 72%,#cee0ec80,#0000 68%),radial-gradient(36% 40% at 62% 14%,#e9cda857,#0000 70%);animation:26s ease-in-out infinite alternate drift;position:fixed;inset:-25%}@keyframes drift{0%{transform:translate(-2.5%,-1.5%)scale(1.04)}50%{transform:translate(2%,2.5%)scale(1.1)}to{transform:translate(3%,-2%)scale(1.05)}}.grain{z-index:1;pointer-events:none;opacity:.5;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");position:fixed;inset:0}html.js .masthead,html.js .shop__head,html.js .card,html.js .station{opacity:0}.page{z-index:2;max-width:800px;margin-inline:auto;padding:clamp(1.5rem,3vw,2.8rem) clamp(1.1rem,3.4vw,2.8rem) clamp(2.5rem,5vw,4rem);position:relative}.masthead{flex-wrap:wrap;align-items:baseline;gap:.85rem;padding-bottom:clamp(1.4rem,3vw,2.4rem);display:flex}.wordmark{font-family:var(--font-serif);font-weight:600;font-size:clamp(1.5rem,1.1rem1.1vw,2rem);letter-spacing:.17em;line-height:.9}.eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--ink-3);font-size:.6rem;font-weight:600}.shop__head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.4rem;margin-bottom:clamp(1.4rem,3vw,2.4rem);padding-bottom:clamp(1rem,2vw,1.5rem);display:flex}.shop__title{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.9rem,1.2rem2.4vw,3rem);letter-spacing:-.02em;line-height:1}.shop__note{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:.68rem;font-weight:600}.counter{flex-direction:column;gap:clamp(1.1rem,2.4vw,1.9rem);display:flex}.rack{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.9rem,1.8vw,1.5rem);list-style:none;display:grid}.card{background:linear-gradient(180deg, #fdfbf7, var(--paper) 46%);border:1px solid var(--line);box-shadow:inset 0 1px 0 #ffffffd9, var(--shadow-soft);transition:transform .5s var(--ease-out), box-shadow .5s var(--ease-out), border-color .5s var(--ease-out);will-change:transform;border-radius:22px;flex-direction:column;padding:clamp(.7rem,1.1vw,.95rem);display:flex}.card:hover{box-shadow:inset 0 1px 0 #ffffffe6, 0 0 0 1px #b08a4e33, var(--shadow-lift);border-color:#b08a4e6b;transform:translateY(-5px)}.card__well{aspect-ratio:4/3;background:linear-gradient(168deg,#e6dfd1,#f1ebe0);border-radius:16px;position:relative;box-shadow:inset 0 2px 6px #4e3e2629,inset 0 0 0 1px #7866481a}.card__chip{z-index:2;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line);background:#fffdf9eb;border-radius:999px;padding:.42em .8em;font-size:.55rem;font-weight:700;position:absolute;top:.6rem;left:.6rem;box-shadow:0 2px 6px -2px #3c2c1433}.tile{background:radial-gradient(135% 150% at 26% 4%, color-mix(in srgb, var(--tint,#c9714f) 30%, #fffdf9), transparent 78%), linear-gradient(160deg, color-mix(in srgb, var(--tint,#c9714f) 12%, var(--paper-2)), #ebe3d4);border-radius:16px;place-items:center;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffffb3}.card__tile{border-radius:inherit;will-change:transform, opacity;position:absolute;inset:0}.card__shoe{width:86%;height:auto;filter:var(--hue,) drop-shadow(0 16px 18px #281a0a3d);transition:transform .6s var(--ease-out);will-change:transform;display:block}.card:hover .card__tile .card__shoe{transform:translateY(-4px)rotate(-1.5deg)scale(1.04)}.card.is-flying .card__tile{opacity:0}.card.is-flying .card__well{transition:box-shadow .3s var(--ease);box-shadow:inset 0 5px 12px #4e3e263d,inset 0 0 0 1px #78664824}.card__body{flex-direction:column;padding:.9rem .35rem .2rem;display:flex}.card__head{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.card__name{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.05rem,.85rem.5vw,1.4rem);letter-spacing:-.01em;line-height:1.05}.card__price{font-variant-numeric:tabular-nums;font-weight:600;font-size:clamp(1rem,.85rem.35vw,1.2rem);white-space:nowrap}.card__sub{color:var(--ink-2);margin-top:.28rem;font-size:.76rem}.card__meta{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.6rem;margin:.7rem 0 .95rem;padding-top:.7rem;display:flex}.card__rating{color:var(--ink-2);align-items:center;gap:.3rem;font-size:.75rem;display:inline-flex}.card__rating svg{width:13px;height:13px;fill:var(--brass)}.card__rating b{color:var(--ink);font-weight:600}.card__rating i{color:var(--ink-3);font-style:normal}.card__ways{align-items:center;gap:.28rem;display:inline-flex}.card__ways i{background:var(--c);border-radius:50%;width:13px;height:13px;display:block;box-shadow:0 0 0 1px #00000014,inset 0 1px 1px #fff6}.card__ways em{color:var(--ink-3);margin-left:.1rem;font-size:.66rem;font-style:normal;font-weight:600}.add{cursor:pointer;background:var(--ink);width:100%;color:var(--paper);font-family:var(--font-ui);letter-spacing:.015em;transition:transform .3s var(--spring), background .3s var(--ease);border:none;border-radius:13px;padding:.82em 1em;font-size:.82rem;font-weight:600;position:relative}.add__face{transition:opacity .2s var(--ease);justify-content:center;align-items:center;gap:.5em;display:inline-flex}.add__ico{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linejoin:round;width:16px;height:16px}.add:hover:not(:disabled){background:#000;transform:translateY(-2px)}.add:disabled{cursor:default}.add__tick{fill:none;width:17px;height:17px;stroke:var(--paper);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;opacity:0;margin:auto;position:absolute;inset:0;transform:scale(.5)}.add.is-added{background:var(--brass)}.add.is-added .add__face{opacity:0}.add.is-added .add__tick{opacity:1;transition:opacity .25s var(--ease), transform .35s var(--spring);transform:scale(1)}.add:focus-visible,.tray__close:focus-visible,.checkout:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.station{flex-direction:column;align-items:center;gap:.7rem;display:flex}.station__plinth{border:1px solid var(--line);width:min(100%,430px);box-shadow:inset 0 1px 0 #ffffffd9, var(--shadow-soft);background:radial-gradient(80% 88% at 50% 4%,#fffdf7f2,#f9f5ed66 54%,#0000 78%),linear-gradient(#fffdf89e,#eae3d66b);border-radius:24px;place-items:center;padding:clamp(1rem,2vw,1.5rem) 1rem clamp(.9rem,1.8vw,1.3rem);display:grid;position:relative}.station__plinth:after{content:"";background:linear-gradient(90deg,#0000,#96826052,#0000);height:1px;position:absolute;bottom:clamp(.6rem,1.2vw,.9rem);left:18%;right:18%}.station__foot{text-align:center;justify-content:center;align-items:baseline;gap:.6rem;display:flex}.station__name{letter-spacing:.26em;text-transform:uppercase;color:var(--ink-3);font-size:.6rem;font-weight:700}.station__count{font-family:var(--font-serif);font-variant-numeric:tabular-nums;color:var(--ink);font-size:1rem;font-weight:500}.bag{--bag-w:clamp(210px, 30vw, 310px);width:var(--bag-w);aspect-ratio:1;margin-inline:calc(var(--bag-w) * -.185);margin-block:calc(var(--bag-w) * -.045);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;padding:0;display:block;position:relative}.bag:focus-visible{outline:2px solid var(--brass);outline-offset:6px;border-radius:18px}.bag__shadow{filter:blur(2px);background:radial-gradient(closest-side,#1c140a6b,#0000 72%);border-radius:50%;width:56%;height:7%;position:absolute;bottom:3%;left:50%;translate:-50%}.bag__vessel{position:absolute;inset:0}.bag__lift{transform-origin:50% 100%;animation:bagfloat 5.5s var(--ease) infinite;position:absolute;inset:0}@keyframes bagfloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.bag__svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.bag__svg--back{z-index:1}.bag__svg--front{z-index:3;filter:drop-shadow(0 9px 12px #1810064d)}.bag__items{z-index:2;pointer-events:none;position:absolute;inset:0}.bag__item{transform-origin:50%;will-change:transform, opacity;position:absolute;top:0;left:0}.flier,.bag__item{filter:drop-shadow(0 20px 24px #1e140857)}.bag__badge{z-index:5;font-variant-numeric:tabular-nums;color:#fff;background:var(--alert);min-width:30px;height:30px;transition:opacity .35s var(--ease);border-radius:999px;place-items:center;padding:0 8px;font-size:.86rem;font-weight:700;display:grid;position:absolute;top:17%;right:8%;box-shadow:0 0 0 3px #f4f0e8,0 8px 18px -6px #781e10d9}.bag__badge[data-empty=true]{opacity:0;pointer-events:none;transform:scale(.6)}.bag__badge.pop{animation:badgepop .6s var(--spring)}@keyframes badgepop{0%{transform:scale(1)}35%{transform:scale(1.32)}to{transform:scale(1)}}.bag__ring{z-index:4;border:2px solid var(--brass);opacity:0;pointer-events:none;border-radius:50%;width:52%;height:14%;position:absolute;top:39%;left:50%;translate:-50% -50%}.bag__ring.go{animation:ring .55s var(--ease-out) forwards}@keyframes ring{0%{opacity:.8;transform:translate(-50%,-50%)scale(.35)}to{opacity:0;transform:translate(-50%,-50%)scale(1.35)}}.tray{z-index:15;width:var(--tray-w);background:var(--paper);border-left:1px solid var(--line);height:100dvh;transition:transform .55s var(--ease-out), visibility .55s;visibility:hidden;flex-direction:column;display:flex;position:fixed;top:0;right:0;transform:translate(101%);box-shadow:-30px 0 70px -34px #1e14088c}body.tray-open .tray{visibility:visible;transform:none}.tray__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem 1.25rem 1rem;display:flex}.tray__title{flex-direction:column;gap:.18rem;min-width:0;display:flex}.tray__head h2{font-family:var(--font-serif);font-size:1.3rem;font-weight:500;line-height:1}.tray__count{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:.62rem;font-weight:600}.tray__close{cursor:pointer;background:var(--paper-2);border:1px solid var(--line);width:34px;height:34px;transition:background .3s var(--ease), transform .3s var(--ease);border-radius:50%;flex:none;place-items:center;display:grid}.tray__close:hover{background:#ece5d8;transform:rotate(90deg)}.tray__close svg{fill:none;width:15px;height:15px;stroke:var(--ink);stroke-width:2px;stroke-linecap:round}.ship{border-bottom:1px solid var(--line);padding:.85rem 1.25rem .8rem}body:not(.has-items) .ship{display:none}.ship__msg{color:var(--ink-2);margin-bottom:.5rem;font-size:.74rem}.ship__msg b{color:var(--ink);font-variant-numeric:tabular-nums}.meter{background:var(--line);border-radius:999px;height:5px;overflow:hidden}.meter__fill{border-radius:inherit;background:linear-gradient(90deg, var(--brass-lo), var(--brass));width:0;height:100%;transition:width .55s var(--ease-out), background .4s var(--ease);display:block}.ship.is-free .meter__fill{background:linear-gradient(90deg,#4f7d52,#69a06d)}.ship.is-free .ship__msg{color:var(--good);font-weight:600}.tray__list{flex:1;min-height:0;padding:.3rem 1.25rem .8rem;list-style:none;overflow-y:auto}.tray__empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.35rem;padding:1.5rem;display:flex}.tray__empty strong{font-family:var(--font-serif);font-size:1rem;font-weight:500}.tray__empty span{color:var(--ink-3);font-size:.78rem}body.has-items .tray__empty,body:not(.has-items) .tray__list{display:none}.trow{border-bottom:1px solid var(--line);animation:rowin .45s var(--ease-out) both;align-items:center;gap:.85rem;padding:.75rem 0;display:flex}@keyframes rowin{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.trow.removing{animation:rowout .35s var(--ease) forwards}@keyframes rowout{to{opacity:0;height:0;margin:0;padding:0;transform:translate(24px)}}.trow__thumb{border:1px solid var(--line);border-radius:10px;flex:none;width:66px;height:50px}.trow__thumb .card__shoe{width:88%;filter:var(--hue,) drop-shadow(0 4px 5px #281a0a3d)}.trow__meta{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.trow__meta strong{font-family:var(--font-serif);font-size:.95rem;font-weight:500}.trow__meta span{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.trow__price{font-variant-numeric:tabular-nums;font-size:.88rem;font-weight:600}.trow__rm{cursor:pointer;border:1px solid var(--line);width:26px;height:26px;color:var(--ink-3);transition:background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease);background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.trow__rm svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;width:11px;height:11px}.trow__rm:hover,.trow__rm:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--paper)}.tray__foot{border-top:1px solid var(--line);padding:.9rem 1.25rem 1.15rem}.tray__lines{flex-direction:column;gap:.3rem;margin-bottom:.55rem;display:flex}.tray__line{color:var(--ink-2);justify-content:space-between;align-items:baseline;font-size:.78rem;display:flex}.tray__line dd{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}.tray__line dd.is-free{color:var(--good)}.tray__sum{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;margin-bottom:.8rem;padding-top:.6rem;font-size:.9rem;display:flex}.tray__sum span:last-child{font-family:var(--font-serif);font-variant-numeric:tabular-nums;font-size:1.35rem}.checkout{cursor:pointer;width:100%;font-family:var(--font-ui);letter-spacing:.03em;color:var(--paper);background:var(--ink);transition:transform .3s var(--spring), background .3s var(--ease), opacity .3s var(--ease);border:none;border-radius:13px;padding:.95em;font-size:.92rem;font-weight:600}.checkout:hover:not(:disabled){background:#000;transform:translateY(-2px)}.checkout:disabled{opacity:.4;cursor:not-allowed}.checkout.done{background:var(--brass)}.flightdeck{z-index:30;pointer-events:none;position:fixed;inset:0}.flier{transform-origin:50%;will-change:transform;position:fixed;top:0;left:0}.scrim{z-index:13;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .4s var(--ease), visibility .4s;background:#1a12086b;border:none;position:fixed;inset:0}body.tray-open .scrim{opacity:1;visibility:visible}@media (width<=860px){.bag{--bag-w:clamp(180px, 32vw, 250px)}}@media (width<=560px){.card{border-radius:18px;padding:.5rem}.card__body{padding:.7rem .3rem .1rem}.card__meta{display:none}.card__head{flex-direction:column;align-items:flex-start;gap:.1rem}.card__name{font-size:1rem}.card__sub{display:none}.card__price{font-size:1rem}.add{margin-top:.7rem;padding:.7em .6em;font-size:.76rem}.add__ico{display:none}.card__chip{padding:.36em .6em;font-size:.5rem;top:.45rem;left:.45rem}.bag{--bag-w:clamp(150px, 42vw, 230px)}.station__plinth{border-radius:20px;padding:.8rem .8rem .7rem}}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important}.card{transition:box-shadow .3s}.card:hover,.card:hover .card__tile .card__shoe{transform:none}.bag__lift,.ambient{animation:none}html.js .masthead,html.js .shop__head,html.js .card,html.js .station{opacity:1;transform:none}}
