:root{--bg:#060608;--bg2:#0c0d11;--ink:#eef0f2;--dim:#7c828c;--line:rgba(238,240,242,.12);--line-strong:rgba(238,240,242,.28);--neon:#19f0c8;--neon-dim:rgba(25,240,200,.5);--hot:#ff2f6d;--disp:"Space Grotesk","Noto Sans JP",system-ui,sans-serif;--mono:"Space Mono",ui-monospace,monospace;--sans:"Inter","Noto Sans JP",system-ui,sans-serif;--jp:"Noto Sans JP",system-ui,sans-serif;--maxw:1320px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--neon);color:#000}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,4vw,44px)}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--neon)}.eyebrow.mut{color:var(--dim)}body:before{content:"";position:fixed;inset:-20%;z-index:0;pointer-events:none;opacity:.05;background:repeating-linear-gradient(45deg,var(--ink) 0 1px,transparent 1px 7px);animation:drift 26s linear infinite}@keyframes drift{to{transform:translate(7px,7px)}}main,header,footer{position:relative;z-index:1}header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(20px,4vw,44px);transition:background .4s,padding .4s,border-color .4s;border-bottom:1px solid transparent}header.scrolled{background:#060608c7;backdrop-filter:blur(16px);padding:13px clamp(20px,4vw,44px);border-bottom:1px solid var(--line)}header .logo img{height:24px;width:auto;opacity:.96}nav{display:flex;gap:34px;align-items:center}nav a{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);transition:color .25s;position:relative}nav a:after{content:"";position:absolute;left:0;bottom:-5px;height:2px;width:0;background:var(--neon);transition:width .3s}nav a:hover{color:var(--ink)}nav a:hover:after{width:100%}.nav-toggle{display:none;background:none;border:0;color:var(--ink);cursor:pointer}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:120px 0 70px;overflow:hidden}#grid{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;width:100%}.hero-copy{max-width:600px}.hero-copy .eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:30px}.hero-copy .eyebrow:before{content:"";width:34px;height:1px;background:var(--neon)}.hero h1{font-family:var(--disp);font-weight:700;font-size:clamp(64px,13vw,190px);line-height:.84;letter-spacing:-.04em;text-transform:lowercase;margin-bottom:20px}.hero h1.wordmark{margin-bottom:26px;line-height:0}.hero h1.wordmark img{width:100%;max-width:600px;height:auto;display:block;margin:0 auto 0 0;will-change:filter,transform;animation:logoGlitch 7s infinite both}@keyframes logoGlitch{0%,3%{filter:none;transform:none;opacity:1}4%{filter:drop-shadow(2px 0 var(--neon)) drop-shadow(-2px 0 var(--hot));transform:translate(-1px);opacity:.92}6%{filter:drop-shadow(-2px 0 var(--neon)) drop-shadow(2px 0 var(--hot));transform:translate(1px)}7%{filter:none;transform:none;opacity:1}87%,88%{filter:none;transform:none;opacity:1}89%{filter:drop-shadow(-3px 0 var(--neon)) drop-shadow(3px 0 var(--hot));transform:translate(1px);opacity:.9}90%{filter:drop-shadow(3px 0 var(--hot)) drop-shadow(-3px 0 var(--neon));transform:translate(-1px)}91%{filter:none;transform:translate(0)}93%{filter:drop-shadow(2px 0 var(--neon)) drop-shadow(-2px 0 var(--hot))}94%,to{filter:none;transform:none;opacity:1}}.hero h1 .glitch{position:relative;display:inline-block}.hero h1 .glitch:before,.hero h1 .glitch:after{content:attr(data-text);position:absolute;left:0;top:0;overflow:hidden;opacity:.85}.hero h1 .glitch:before{color:var(--neon);animation:gl1 4s infinite steps(2)}.hero h1 .glitch:after{color:var(--hot);animation:gl2 4.6s infinite steps(2)}@keyframes gl1{0%,92%,to{clip-path:inset(0 0 100% 0);transform:none}93%{clip-path:inset(0 0 62% 0);transform:translate(-3px,-1px)}96%{clip-path:inset(40% 0 30% 0);transform:translate(3px,1px)}}@keyframes gl2{0%,90%,to{clip-path:inset(100% 0 0 0);transform:none}91%{clip-path:inset(66% 0 8% 0);transform:translate(3px,1px)}97%{clip-path:inset(20% 0 55% 0);transform:translate(-3px)}}.hero .tag{font-family:var(--mono);font-size:clamp(13px,1.5vw,17px);letter-spacing:.06em;color:var(--ink);margin-bottom:14px}.hero .tag b{color:var(--neon);font-weight:700}.hero .jp{font-family:var(--jp);font-weight:500;font-size:15px;letter-spacing:.24em;color:var(--dim);margin-bottom:30px}.hero p.lede{color:var(--dim);font-size:15px;max-width:440px;margin-bottom:38px}.cta{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#000;background:var(--neon);padding:14px 24px;transition:gap .25s,box-shadow .3s;font-weight:700}.cta:hover{gap:20px;box-shadow:0 0 0 1px var(--neon),0 0 30px var(--neon-dim)}.hero-art{position:relative;justify-self:center;will-change:transform}.hero-art img{max-height:74vh;width:auto;margin:0 auto;filter:drop-shadow(0 30px 70px rgba(0,0,0,.7))}.hero-art:after{content:"";position:absolute;inset:-6% -10%;z-index:-1;background:radial-gradient(closest-side,rgba(25,240,200,.14),transparent 72%)}.scroll-hint{position:absolute;bottom:26px;left:50%;transform:translate(-50%);z-index:3;font-family:var(--mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--dim);display:flex;flex-direction:column;align-items:center;gap:9px}.scroll-hint span{width:1px;height:40px;background:linear-gradient(var(--neon),transparent);animation:pulse 2.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg2);overflow:hidden;padding:18px 0;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:inline-flex;gap:26px;animation:march 24s linear infinite}.marquee span{font-family:var(--disp);font-weight:700;font-size:clamp(18px,2.4vw,30px);letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}.marquee span.o{color:transparent;-webkit-text-stroke:1px var(--neon)}.marquee span.dot{color:var(--neon)}@keyframes march{to{transform:translate(-50%)}}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:clamp(90px,12vw,150px) 0 48px}.sec-head h2{font-family:var(--disp);font-weight:700;font-size:clamp(40px,6vw,84px);line-height:.9;letter-spacing:-.03em;text-transform:lowercase}.sec-head .rt{font-family:var(--mono);font-size:12px;color:var(--dim);text-align:right;letter-spacing:.1em;white-space:nowrap}.sec-head .rt b{color:var(--neon)}.works{border-top:1px solid var(--line)}.index-table{border-top:1px solid var(--line);margin-bottom:14px}.index-row{display:grid;grid-template-columns:64px 1.4fr 1fr 1fr 90px;gap:18px;align-items:center;padding:20px 6px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:13px;color:var(--dim);transition:background .3s,color .3s;cursor:default}.index-row:hover{background:#19f0c80d;color:var(--ink)}.index-row .no{color:var(--neon);font-weight:700}.index-row .ti{font-family:var(--disp);font-weight:600;font-size:17px;color:var(--ink);text-transform:lowercase;letter-spacing:0}.index-row .ti em{font-style:normal;color:var(--dim);font-family:var(--jp);font-size:12px;margin-left:8px;letter-spacing:.1em}.index-row .go{justify-self:end;color:var(--dim);transition:color .3s,transform .3s}.index-row:hover .go{color:var(--neon);transform:translate(4px)}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,2vw,26px);padding:20px 0 40px}.tile{position:relative;background:var(--bg2);border:1px solid var(--line);overflow:hidden;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;padding:40px;transition:border-color .4s}.tile:hover{border-color:var(--line-strong)}.tile img{max-height:100%;width:auto;object-fit:contain;position:relative;z-index:2;transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .4s}.tile:before{content:"";position:absolute;inset:0;z-index:3;opacity:0;pointer-events:none;transition:opacity .4s;background:repeating-linear-gradient(0deg,rgba(25,240,200,.5) 0 1px,transparent 1px 9px),repeating-linear-gradient(90deg,rgba(25,240,200,.5) 0 1px,transparent 1px 9px);mix-blend-mode:screen}.tile:hover:before{opacity:.4;animation:gridpan 3s linear infinite}@keyframes gridpan{to{background-position:9px 9px,9px 9px}}.tile:hover img{transform:scale(1.05)}.tile .num{position:absolute;top:16px;left:18px;z-index:4;font-family:var(--mono);font-size:12px;color:var(--neon);letter-spacing:.1em}.tile .cap{position:absolute;bottom:0;left:0;right:0;z-index:4;padding:16px 18px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;background:linear-gradient(transparent,#060608d9);transform:translateY(102%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}.tile:hover .cap{transform:none}.tile .cap h3{font-family:var(--disp);font-weight:600;font-size:19px;text-transform:lowercase}.tile .cap .m{font-family:var(--mono);font-size:11px;color:var(--dim);letter-spacing:.06em}.shop{background:var(--bg2);border-top:1px solid var(--line)}.shop-inner{padding-bottom:clamp(90px,12vw,140px)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:44px}.card{background:var(--bg);position:relative;overflow:hidden;display:flex;flex-direction:column;transition:background .4s}.card:hover{background:#0a0b0d}.card-img{position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:34px;overflow:hidden}.card-img:before{content:"";position:absolute;inset:0;background:var(--tint,transparent)}.card-img:after{content:"";position:absolute;inset:0;z-index:3;opacity:0;pointer-events:none;transition:opacity .35s;mix-blend-mode:screen;background:repeating-linear-gradient(0deg,rgba(25,240,200,.35) 0 1px,transparent 1px 4px)}.card:hover .card-img:after{opacity:.6;animation:scan 1.1s linear infinite}@keyframes scan{to{background-position:0 4px}}.card-img img{max-height:100%;width:auto;object-fit:contain;position:relative;z-index:2;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.card:hover .card-img img{transform:scale(1.06)}.card-body{padding:20px 22px 24px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:5px;flex:1}.card-body .kind{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}.card-body h4{font-family:var(--disp);font-weight:600;font-size:22px;text-transform:lowercase;line-height:1.05}.card-body .jp{font-family:var(--jp);font-size:12px;color:var(--dim);letter-spacing:.08em}.card-foot{margin-top:auto;padding-top:16px;display:flex;align-items:center;justify-content:space-between}.price{font-family:var(--mono);font-size:18px;font-weight:700}.acquire{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);display:inline-flex;align-items:center;gap:8px;transition:color .25s,gap .25s}.card:hover .acquire{color:var(--neon);gap:14px}.card.all{align-items:center;justify-content:center;text-align:center;padding:40px 20px;gap:14px}.card.all .price{font-family:var(--disp);font-weight:700;font-size:26px;text-transform:lowercase}.card-link{display:block;color:inherit}.card-ph-mark{font-family:var(--disp);font-weight:700;font-size:clamp(40px,6vw,64px);color:var(--dim);opacity:.5;text-transform:lowercase;position:relative;z-index:2}.card-ph .card-img{aspect-ratio:1}.add{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--neon);background:transparent;border:1px solid var(--line-strong);cursor:pointer;padding:8px 14px;line-height:1;transition:background .25s,color .25s,border-color .25s}.add:hover,.add.added{background:var(--neon);color:#000;border-color:var(--neon)}.soldout{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line);padding:8px 14px;line-height:1}.cart-bar{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:80;display:flex;align-items:center;gap:18px;padding:12px 14px 12px 20px;background:#0c0d11eb;border:1px solid var(--line-strong);box-shadow:0 0 0 1px #19f0c824,0 18px 50px #0000008c;backdrop-filter:blur(8px);max-width:calc(100vw - 32px)}.cart-bar[hidden]{display:none}.cart-summary{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--ink);white-space:nowrap}.cart-summary b{color:var(--neon)}.cart-clear{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);background:transparent;border:0;cursor:pointer;padding:6px 4px;transition:color .25s}.cart-clear:hover{color:var(--hot)}.cart-checkout{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#000;background:var(--neon);border:0;cursor:pointer;padding:11px 18px;white-space:nowrap;transition:box-shadow .25s,gap .25s}.cart-checkout:hover{box-shadow:0 0 0 1px var(--neon),0 0 26px var(--neon-dim)}.cart-checkout:disabled{opacity:.6;cursor:progress}.about{padding:clamp(90px,12vw,140px) 0;border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.about h2{font-family:var(--disp);font-weight:700;font-size:clamp(34px,4.6vw,62px);line-height:1.02;letter-spacing:-.02em;margin:18px 0 26px;text-transform:lowercase}.about h2 b{color:var(--neon)}.about p{color:var(--dim);font-size:15px;margin-bottom:20px;max-width:520px}.about .jp-body{font-family:var(--jp);font-size:14px;line-height:2}.ig-card{position:relative;border:1px solid var(--line);padding:38px;background:var(--bg2);display:flex;flex-direction:column;gap:22px;overflow:hidden}.ig-card:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background:radial-gradient(circle at 15% 15%,rgba(25,240,200,.16),transparent 55%),radial-gradient(circle at 85% 90%,rgba(255,47,109,.12),transparent 55%)}.ig-card>*{position:relative;z-index:1}.ig-card .handle{font-family:var(--disp);font-weight:700;font-size:clamp(26px,3vw,40px)}.ig-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.ig-thumbs img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:var(--bg);border:1px solid var(--line);padding:8px;transition:border-color .3s}.ig-thumbs img:hover{border-color:var(--neon)}.ig-follow{align-self:flex-start;border:1px solid var(--neon);color:var(--neon);font-family:var(--mono);padding:12px 24px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;transition:background .3s,color .3s}.ig-follow:hover{background:var(--neon);color:#000}footer{border-top:1px solid var(--line);padding:64px 0 40px}.foot-top{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;flex-wrap:wrap}footer .logo img{height:26px;opacity:.9;margin-bottom:14px}footer .tag{color:var(--dim);font-size:13px;max-width:300px}.foot-links{display:flex;gap:56px;flex-wrap:wrap}.foot-col h5{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-bottom:14px}.foot-col a{display:block;font-size:13px;margin-bottom:9px;transition:color .25s}.foot-col a:hover{color:var(--neon)}.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-top:50px;padding-top:24px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--dim);text-transform:uppercase}.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1)}.js .reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none;transition:none}.hero h1 .glitch:before,.hero h1 .glitch:after{display:none}.hero h1.wordmark img{filter:none!important;transform:none!important;opacity:1!important}body:before{display:none}}@media(max-width:960px){nav{position:fixed;inset:0 0 0 auto;width:min(80vw,340px);background:var(--bg2);flex-direction:column;justify-content:center;gap:28px;padding:48px;transform:translate(100%);transition:transform .45s cubic-bezier(.2,.8,.2,1);border-left:1px solid var(--line)}nav.open{transform:none}nav a{font-size:16px}.nav-toggle{display:block;z-index:60}.hero-grid{grid-template-columns:1fr;text-align:center}.hero-copy{margin:0 auto}.hero-copy .eyebrow{justify-content:center}.hero h1.wordmark img{margin:0 auto;max-width:420px}.hero-art{order:-1;margin-bottom:18px}.hero-art img{max-height:48vh}.cta{margin:0 auto}.work-grid{grid-template-columns:1fr}.tile{aspect-ratio:auto;display:block;padding:20px 20px 0}.tile img{width:100%;height:auto;max-height:74vh;object-fit:contain;margin:0 auto}.tile:hover img{transform:none}.tile .num{top:14px;left:16px}.tile .cap{position:static;transform:none;background:none;padding:14px 2px 2px}.index-row{grid-template-columns:44px 1fr 70px;font-size:12px}.index-row .tech,.index-row .motif{display:none}.cards{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr;gap:44px}}@media(max-width:520px){.hero h1{font-size:clamp(56px,22vw,90px)}.cards{grid-template-columns:1fr}}:where([data-astro-image]){object-fit:var(--fit);object-position:var(--pos);height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}
