@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/newsreader.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/plex-mono.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/plex-mono-500.woff2) format("woff2")}:root{--bg:#f3f1ea;--card:#e9e6dc;--ink:#151513;--muted:#73706a;--line:rgba(21,21,19,.14);--brass:#9c7a45;--serif:Newsreader,Georgia,serif;--mono:"IBM Plex Mono",ui-monospace,monospace;--pad:clamp(16px,4.2vw,64px);--ease:cubic-bezier(.22,.8,.2,1);--ow:clamp(190px,23vw,330px)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 var(--serif);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3{margin:0;font-weight:400;letter-spacing:-.02em;line-height:1}p{margin:0}sup{font:400 10px var(--mono);vertical-align:super;margin-left:2px;color:var(--muted)}:focus-visible{outline:1.5px solid var(--ink);outline-offset:4px}.skip{position:absolute;left:-999px;top:8px;z-index:99;background:var(--ink);color:#fff;padding:10px 14px}.skip:focus{left:8px}.demo-bar{display:flex;justify-content:space-between;gap:16px;padding:7px var(--pad);background:var(--ink);color:#d6d3ca;font:400 11px var(--mono)}.demo-bar a{text-decoration:none;border-bottom:1px solid currentColor}.demo-bar .demo-cta{font-weight:500;color:#fff}.m-label{font:400 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.m-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border:1px solid var(--ink);border-radius:999px;font:400 15px var(--serif);text-decoration:none;white-space:nowrap;transition:background .25s,color .25s}.m-btn-ink{background:var(--ink);color:var(--bg)}.m-btn-ink:hover{background:#3a3a36}.m-btn-line{background:transparent}.m-btn-line:hover{background:var(--ink);color:var(--bg)}.m-link{font-size:15px;text-decoration:none;border-bottom:1px solid currentColor}.m-nav{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:18px var(--pad);background:var(--bg);border-bottom:1px solid var(--line)}.m-logo{font:500 30px/1 var(--serif);letter-spacing:-.04em;text-decoration:none}.m-nav nav{display:flex;gap:36px}.m-nav nav a{font-size:15px;text-decoration:none;color:var(--muted);padding-bottom:4px;border-bottom:1px solid transparent;transition:color .2s}.m-nav nav a:hover,.m-nav nav a[aria-current]{color:var(--ink)}.m-nav nav a[aria-current]{border-bottom-color:var(--ink)}.m-cart-btn{justify-self:end;border:1px solid var(--line);border-radius:999px;background:transparent;padding:8px 8px 8px 18px;font-size:15px;display:inline-flex;align-items:center;gap:10px}.m-cart-btn b{display:grid;place-items:center;min-width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--bg);font:500 12px var(--mono);transition:transform .3s var(--ease)}.m-cart-btn.bump b{transform:scale(1.35)}.shelf-wrap{display:flex;flex-direction:column;min-height:calc(100svh - 108px)}.shelf-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:20px;padding:clamp(26px,3.6vw,48px) var(--pad) 0}.shelf-head h1{font-size:clamp(34px,3.2vw,50px)}.m-cats{display:flex;gap:6px}.m-cats button{border:1px solid transparent;border-radius:999px;background:transparent;padding:6px 14px;font-size:15px;color:var(--muted);white-space:nowrap}.m-cats button:hover{color:var(--ink)}.m-cats button[aria-pressed=true]{border-color:var(--ink);color:var(--ink)}.vol{justify-self:end;text-align:right;font:400 12px/1.5 var(--mono);color:var(--ink)}.vol span{color:var(--muted)}.shelf{position:relative;flex:1;min-height:calc(var(--ow) * 1.18);overflow:hidden;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}.shelf:active{cursor:grabbing}.shelf:focus-visible{outline-offset:-6px}.big-n{position:absolute;left:50%;top:58%;transform:translate(-50%,-56%);font:300 clamp(200px,30vw,460px)/1 var(--serif);letter-spacing:-.06em;color:#1515130b;pointer-events:none}.track{position:absolute;left:0;top:calc(62% - var(--ow) * .56);display:flex;transition:transform .8s var(--ease);will-change:transform}.track.instant{transition:none}.obj{flex:none;width:var(--ow);aspect-ratio:1;transform:scale(.72);transform-origin:50% 83%;opacity:.42;transition:transform .8s var(--ease),opacity .6s}.obj svg{width:100%;height:100%;display:block;pointer-events:none}.obj.on{transform:scale(1.1) translateY(-10px);opacity:1}.obj.picked{animation:pick .6s var(--ease)}@keyframes pick{40%{transform:scale(1.18) translateY(-34px)}}.plank{position:absolute;left:var(--pad);right:var(--pad);top:calc(62% - var(--ow) * .56 + var(--ow) * .83);height:7px;background:linear-gradient(#2a2a27,#151513);border-radius:2px;box-shadow:0 18px 30px -12px #00000047}.plank i{position:absolute;top:-5px;width:16px;height:17px;border-radius:3px;background:linear-gradient(120deg,#7a5c2c,#d8b97e 45%,#9a7642)}.plank i:first-child{left:-6px}.plank i:last-child{right:-6px}.scrub{padding:0 var(--pad)}.scrub-rail{position:relative;width:min(420px,70%);height:22px;margin:0 auto;cursor:pointer;touch-action:none}.scrub-rail:before{content:"";position:absolute;left:0;right:0;top:10px;height:1px;background:var(--line)}.scrub-rail span{position:absolute;top:4px;width:30px;height:13px;margin-left:-15px;border-radius:99px;background:var(--ink);transition:left .6s var(--ease)}.detail{display:grid;grid-template-columns:1fr minmax(0,560px) 1fr;align-items:center;gap:20px;padding:22px var(--pad) 30px}.count{display:flex;align-items:center;gap:14px;font:400 13px var(--mono)}.count i{width:44px;height:1px;background:var(--ink)}.count span:last-child{color:var(--muted)}.d-main{text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}.d-tag{font:400 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}.d-main h2{font-size:clamp(30px,2.8vw,42px)}.d-sub{color:var(--muted);font-size:16px}.dots{display:flex;align-items:center;gap:8px;margin:6px 0 4px}.dots button{width:18px;height:18px;border-radius:50%;border:1px solid rgba(0,0,0,.2);padding:0}.dots button[aria-checked=true]{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--ink)}.dots span{font:400 12px var(--mono);color:var(--muted);margin-left:4px}.d-acts{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 18px;margin-top:6px}.m-fav{border:0;background:none;padding:6px 2px;font-size:15px}.m-fav[aria-pressed=true]{color:#a3352a}.arrows{justify-self:end;display:flex;gap:8px}.arrows button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:transparent;font-size:16px;transition:border-color .2s,background .2s}.arrows button:hover{border-color:var(--ink);background:#fff}.shelf-foot{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;margin:0 var(--pad);padding:16px 0;border-top:1px solid var(--line);font-size:14px}.shelf-foot span:nth-child(2){color:var(--muted)}.shelf-foot span:last-child{justify-self:end}section{scroll-margin-top:70px}.m-studio{padding:clamp(70px,9vw,130px) var(--pad);border-top:1px solid var(--line)}.studio-head{max-width:620px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.studio-head h2{font-size:clamp(46px,6vw,92px);letter-spacing:-.035em}.studio-head p:last-child{color:var(--muted)}.studio-stage{position:relative;margin:clamp(30px,4vw,50px) auto 0;max-width:1100px;height:clamp(380px,46vw,560px);display:grid;place-items:center;touch-action:pan-y;cursor:grab;background:radial-gradient(ellipse 50% 9% at 50% 88%,rgba(0,0,0,.14),transparent 70%)}.studio-stage:active{cursor:grabbing}.book-scene{perspective:1400px;width:min(56%,300px);aspect-ratio:var(--ar,.7);transition:aspect-ratio .4s var(--ease)}.book{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(8deg) rotateY(var(--ry,-34deg));transition:transform .5s var(--ease)}.book.drag{transition:none}.book>div{position:absolute;inset:0;backface-visibility:hidden}.b-front{background:var(--c,#2a2a2a);border-radius:2px 8px 8px 2px;transform:translateZ(18px);display:grid;place-items:center;box-shadow:inset 6px 0 10px #00000040,inset -1px 0 #ffffff14;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.04) 0 1px,transparent 1px 3px)}.b-back{background:var(--c,#2a2a2a);transform:rotateY(180deg) translateZ(18px);border-radius:8px 2px 2px 8px;filter:brightness(.85)}.b-spine{width:36px!important;left:-18px!important;background:var(--c,#2a2a2a);filter:brightness(.75);transform:rotateY(-90deg)}.b-pages{left:calc(100% - 18px)!important;width:36px!important;top:3px!important;bottom:3px!important;transform:rotateY(90deg);background:repeating-linear-gradient(90deg,#f6f3ea 0 2px,#e2ddd0 2px 3px)}.b-mark{position:absolute;bottom:12%;font:500 18px var(--serif);letter-spacing:-.03em;color:#ffffff29}.b-foil{font:500 30px var(--mono);letter-spacing:.3em;margin-right:-.3em;color:var(--foil,#d6b16a);text-shadow:0 1px 0 rgba(0,0,0,.35),0 -1px 0 rgba(255,255,255,.18)}.b-foil.blind{color:transparent;text-shadow:1px 1px 0 rgba(255,255,255,.12),-1px -1px 1px rgba(0,0,0,.4)}.page-prev{position:absolute;right:4%;bottom:10%;width:110px;height:150px;background:#fbf9f3;box-shadow:0 10px 30px -10px #0000004d;transform:rotate(4deg);transition:background .3s}.page-prev span{position:absolute;top:-22px;left:0;font:400 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.stage-hint{position:absolute;left:4%;bottom:10%;font:400 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.studio-ctrl{display:grid;grid-template-columns:1.3fr 1.2fr 1.3fr 1fr 1.5fr;gap:24px;max-width:1240px;margin:20px auto 0;padding:26px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}fieldset{border:0;margin:0;padding:0;min-width:0}legend{font:400 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;padding:0;display:flex;gap:8px}legend span{color:var(--muted);text-transform:none;letter-spacing:0}.sw{display:flex;flex-wrap:wrap;gap:8px}.sw button{width:32px;height:32px;border-radius:50%;border:1px solid rgba(0,0,0,.15);padding:0}.sw button[aria-checked=true]{box-shadow:0 0 0 3px var(--bg),0 0 0 4px var(--ink)}.opts{display:flex;flex-wrap:wrap;gap:4px}.opts button{border:1px solid var(--line);border-radius:999px;background:transparent;padding:6px 13px;font-size:15px;display:flex;flex-direction:column;align-items:center;line-height:1.2}.opts button small{font:400 10px var(--mono);color:var(--muted)}.opts button[aria-checked=true]{border-color:var(--ink);background:var(--ink);color:var(--bg)}.opts button[aria-checked=true] small{color:#c9c6bd}.foil-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.foil-row input{width:92px;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:6px 2px;font:500 20px var(--mono);letter-spacing:.3em;text-transform:uppercase}.foil-row input:focus{outline:none;border-color:var(--brass)}.studio-sum{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px 26px;max-width:1240px;margin:0 auto;padding-top:20px}.studio-sum span{color:var(--muted);font-size:15px;margin-right:auto}.studio-sum strong{font:400 34px var(--serif)}.m-about{padding:clamp(70px,9vw,130px) var(--pad);border-top:1px solid var(--line)}.m-about h2{font-size:clamp(40px,5vw,76px);letter-spacing:-.035em;text-align:center;margin-bottom:clamp(36px,5vw,60px)}.mat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px)}.mat article{display:flex;flex-direction:column;gap:8px}.tex{aspect-ratio:4/5;margin-bottom:8px;transition:transform .8s var(--ease)}.mat article:hover .tex{transform:translateY(-6px)}.t-paper{background:#f9f6ec;background-image:radial-gradient(rgba(0,0,0,.06) 1px,transparent 1px);background-size:6px 6px;box-shadow:inset 0 0 0 1px var(--line)}.t-cloth{background:#3a3d3a;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px)}.t-brass{background:linear-gradient(120deg,#7a5c2c,#c9a160 35%,#ead19a 48%,#b08d57 60%,#6e5225)}.mat h3{font-size:28px}.mat p:not(.m-label){color:var(--muted);font-size:16px}.m-props{list-style:none;margin:clamp(50px,7vw,90px) 0 0;padding:24px 0 0;border-top:1px solid var(--ink);display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.m-props li{font-size:15px;color:var(--muted)}.m-props b{display:block;font:400 clamp(34px,3.6vw,56px)/1.05 var(--serif);color:var(--ink)}.m-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 30px;padding:30px var(--pad);border-top:1px solid var(--line);font-size:15px;color:var(--muted)}.m-foot .m-logo{color:var(--ink)}.m-note{width:100%;font:400 11px var(--mono)}.scrim{position:fixed;inset:0;background:#12121266;z-index:40}.cart{border-radius:0;position:fixed;top:0;right:0;bottom:0;width:min(460px,100vw);background:var(--bg);z-index:41;transform:translate(105%);transition:transform .45s var(--ease);display:flex;flex-direction:column}.cart.open{transform:none}.cart-top{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}.cart-top h2{font-size:32px}.x{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;font-size:15px}.cart-body{flex:1;overflow:auto;padding:20px 24px 28px;display:flex;flex-direction:column;gap:16px}.ship-bar{font-size:14px}.ship-bar .track{height:3px;background:var(--line);margin-top:8px}.ship-bar .track span{display:block;height:100%;background:var(--ink);transition:width .4s var(--ease)}.ci{display:grid;grid-template-columns:72px 1fr auto;gap:14px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}.ci .thumb{width:72px;height:72px;background:var(--card)}.ci .thumb svg{width:100%;height:100%}.ci b{display:block;font-weight:500}.ci small{display:block;color:var(--muted);font-size:13px}.ci .rm{border:0;background:none;padding:0;font-size:13px;text-decoration:underline;color:var(--muted)}.qty{display:flex;align-items:center;border:1px solid var(--line)}.qty button{width:30px;height:30px;border:0;background:transparent}.qty span{min-width:22px;text-align:center;font:500 13px var(--mono)}.coupon{display:flex;gap:6px}.coupon input{flex:1;border:1px solid var(--line);background:transparent;padding:11px 12px;font:500 14px var(--mono);text-transform:uppercase}.coupon button{border:1px solid var(--ink);background:transparent;padding:0 16px}.tot{display:flex;flex-direction:column;gap:6px;font-size:14px}.tot div{display:flex;justify-content:space-between}.tot .grand{font-size:18px;padding-top:10px;border-top:1px solid var(--ink)}.tot .grand b{font:600 22px var(--mono)}.msg{font-size:13px;min-height:1px}.msg.ok{color:#2d7a46}.msg.bad{color:#b3261e}.cart label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500}.cart input{border:1px solid var(--line);background:#fff;padding:12px 13px;font-size:15px}.cart input:focus{outline:none;border-color:var(--ink)}.cart [aria-invalid=true]{border-color:#b3261e}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pay{display:flex;flex-direction:column;gap:6px}.pay label{flex-direction:row;align-items:center;gap:10px;border:1px solid var(--line);padding:14px;font-size:15px;cursor:pointer}.pay label:has(input:checked){border-color:var(--ink);background:#fff}.pay input{accent-color:var(--ink)}.pay small{margin-left:auto;color:var(--muted);font:500 12px var(--mono)}.steps{display:flex;gap:8px;font:500 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.steps span.on{color:var(--ink)}.cart .m-btn{width:100%}.done{text-align:center;padding:30px 0}.done h3{font-size:40px;margin:10px 0}.done p{color:var(--muted)}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,calc(100% + 40px));visibility:hidden;background:var(--ink);color:var(--bg);padding:12px 20px;font-size:14px;z-index:60;transition:transform .4s var(--ease)}.toast.on{transform:translate(-50%);visibility:visible}@media(max-width:980px){.m-nav{grid-template-columns:1fr auto}.m-nav nav{display:none}.shelf-head{grid-template-columns:1fr auto}.m-cats{grid-row:2;grid-column:1/-1;overflow-x:auto}.studio-ctrl{grid-template-columns:1fr 1fr}.mat{grid-template-columns:1fr}.tex{aspect-ratio:3/2}.m-props{grid-template-columns:1fr 1fr}}@media(max-width:640px){:root{--ow:clamp(150px,52vw,230px)}.demo-bar span{display:none}.detail{grid-template-columns:1fr auto;grid-template-areas:"count arrows" "main main"}.count{grid-area:count}.arrows{grid-area:arrows}.d-main{grid-area:main}.shelf-foot{grid-template-columns:1fr}.shelf-foot span:nth-child(2),.shelf-foot span:last-child{display:none}.studio-ctrl{grid-template-columns:1fr}.page-prev{width:72px;height:98px}.row2{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.shelf-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px var(--pad) 0;font:400 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.shelf-tools button{min-height:36px;padding:6px 12px;border:1px solid var(--line);border-radius:99px;background:transparent;font:400 10px var(--mono);color:var(--ink);letter-spacing:0;text-transform:none}.shelf-tools button:disabled{opacity:.6;cursor:default}.shelf{min-height:calc(var(--ow) * 1.35);background:radial-gradient(ellipse at 50% 80%,color-mix(in srgb,var(--shelf-tint,#9c7a45) 9%,transparent),transparent 64%);perspective:1100px}.shelf .track{top:calc(48% - var(--ow) * .5);z-index:2}.shelf .obj,.shelf .obj.on{position:relative;transform-origin:50% 55%;transform:translateY(var(--arc-y,0px)) rotate(var(--arc-turn,0deg)) scale(var(--arc-scale,1));opacity:.65}.shelf .obj.on{opacity:1}.product-art{width:100%;height:100%;transform:perspective(800px) rotateX(var(--look-y,0deg)) rotateY(var(--look-x,0deg)) translateY(var(--scroll-lift,0px));transition:transform .5s var(--ease)}.shelf .product-art svg>ellipse{opacity:0}.shelf .obj.on svg{animation:mono-float 6s ease-in-out infinite;animation-play-state:paused}.shelf.motion-running .obj.on svg{animation-play-state:running}.shelf .obj:after{content:"";position:absolute;bottom:6%;left:24%;width:52%;height:3%;border-radius:50%;background:radial-gradient(ellipse,rgba(30,25,15,.13),transparent 70%);transform:rotate(calc(var(--arc-turn,0deg) * -1));pointer-events:none}.shelf .plank{top:78%;left:-15%;right:-15%;height:50%;border-radius:50%;border:1px solid var(--line);background:transparent;box-shadow:none;pointer-events:none}.shelf .plank i{display:none}.shelf .big-n{top:48%;font-size:clamp(220px,32vw,480px);color:#1515130e}.shelf .obj.picked{animation:none}.shelf .obj.picked .product-art{transform:translateY(-35px) rotateY(-15deg) scale(1.04)}@keyframes mono-float{0%,to{transform:translateY(-7px) rotate(-2deg)}50%{transform:translateY(5px) rotate(1deg)}}.ship-bar .track{position:relative;top:auto;left:auto;display:block;will-change:auto}@media(max-width:640px){.shelf-tools{font-size:9px;padding-top:12px}.shelf{min-height:300px}.shelf .obj,.shelf .obj.on{transform:translateY(var(--arc-y,0px)) rotate(var(--arc-turn,0deg)) scale(var(--arc-scale,1))}.shelf .plank{top:77%}}@media(prefers-reduced-motion:reduce){.product-art{transform:none!important}.shelf .obj.on svg{animation:none}.shelf .obj,.shelf .obj.on{transform:scale(var(--arc-scale,1))}}
