*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:#0a0a0f}a{color:inherit}button,input{font:inherit}.App{background:#0a0a0f;color:#e8e8f0;font-family:Space Grotesk,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;overflow-x:hidden;position:relative}.grid-overlay{background-image:linear-gradient(#00ffd508 1px,#0000 0),linear-gradient(90deg,#00ffd508 1px,#0000 0);background-size:48px 48px;top:0;right:0;bottom:0;left:0;pointer-events:none;position:fixed;z-index:0}.page{margin:0 auto;max-width:1080px;padding:calc(1.5rem + env(safe-area-inset-top)) 1.25rem calc(3rem + env(safe-area-inset-bottom));position:relative;z-index:1}.hero{margin-bottom:1.75rem;text-align:center}.logo-frame{align-items:center;display:flex;height:7.5rem;justify-content:center;margin:0 auto 1rem;max-width:16rem}.logo-frame img{max-height:7.5rem;max-width:16rem;object-fit:contain}.tagline{color:#8888a0;font-family:JetBrains Mono,monospace;font-size:.72rem;letter-spacing:.14em;margin:0 0 .6rem;text-transform:uppercase}h1{font-size:clamp(2rem,6vw,3.25rem);font-weight:600;letter-spacing:-.03em;line-height:1.05;margin:0}.shop-name{background:none;border:0;color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;padding:0}.about,.fulfillment{color:#8888a0;margin:.85rem auto 0;max-width:36rem}.fulfillment{font-family:JetBrains Mono,monospace;font-size:.8rem;letter-spacing:.04em}.prose{margin:0 auto 2rem;max-width:40rem}.prose h2{font-size:1.4rem;font-weight:600;margin:0 0 .8rem}.prose p{color:#e8e8f0;line-height:1.55;margin:0;white-space:pre-wrap}.shop-footer{display:flex;flex-direction:column;gap:1rem;margin-top:3rem}.shop-footer__contact,.shop-footer__pages{color:#8888a0;display:flex;flex-wrap:wrap;gap:.35rem 1rem;justify-content:center}.shop-footer__contact a,.shop-footer__pages button{color:#00ffd5;min-height:44px}.shop-footer__pages button{background:none;border:0;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.8rem}.hours{white-space:pre-wrap}.shop-meta{color:#8888a0;display:flex;flex-wrap:wrap;gap:.35rem 1rem;justify-content:center;margin:.9rem 0 0}.shop-meta a{color:#00ffd5;min-height:44px;text-decoration:none}.finder{margin:0 auto 1rem;max-width:36rem}.finder label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.finder input{background:#12121a;border:1px solid #00ffd533;border-radius:6px;color:#e8e8f0;min-height:44px;padding:.65rem .9rem;width:100%}.finder input:focus{border-color:#00ffd5;outline:none}.chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1.25rem}.chip,.more{background:transparent;border:1px solid #00ffd533;border-radius:999px;color:#8888a0;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.75rem;letter-spacing:.04em;min-height:44px;padding:.4rem .9rem}.chip-on,.chip:hover,.more:hover{border-color:#00ffd5;color:#00ffd5}.notice{color:#8888a0;margin:2rem auto;max-width:28rem;text-align:center}.grid{display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0;padding:0}.card{background:#12121acc;border:1px solid #00ffd522;border-radius:8px;min-width:0;overflow:hidden}.photo{align-items:center;aspect-ratio:1;background:#141414;display:flex;justify-content:center}.photo img{height:100%;object-fit:contain;width:100%}.photo-missing{color:#8888a0;font-family:JetBrains Mono,monospace;font-size:.72rem;letter-spacing:.06em}.card-body{padding:.8rem .85rem .95rem}.card-body h2{font-size:.95rem;font-weight:500;line-height:1.3;margin:0 0 .45rem;overflow-wrap:anywhere}.price{color:#00ffd5;font-family:JetBrains Mono,monospace;margin:0}.stock{color:#8888a0;font-family:JetBrains Mono,monospace;font-size:.72rem;letter-spacing:.04em;margin:.35rem 0 0}.stock-out{color:#ff3c78}.more{display:block;margin:1.25rem auto 0}footer{margin-top:3rem;text-align:center}footer a{color:#00ffd5;font-family:JetBrains Mono,monospace;font-size:.8rem;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}@media(min-width:720px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:980px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
