:root{--ink: #0B0B0F;--ink-1: #0E0E13;--ink-2: #14141A;--ink-3: #191920;--panel: rgba(255, 255, 255, .035);--panel-2: rgba(255, 255, 255, .06);--line: rgba(255, 255, 255, .1);--line-soft: rgba(255, 255, 255, .055);--text: rgba(244, 243, 250, .92);--text-dim: rgba(236, 234, 247, .56);--text-faint: rgba(236, 234, 247, .32);--teal: oklch(.8 .085 195);--rose: oklch(.78 .085 8);--amber: oklch(.84 .085 72);--violet: oklch(.76 .085 300);--accent: var(--teal);--ease: cubic-bezier(.16, 1, .3, 1);--ease-soft: cubic-bezier(.22, .61, .36, 1);--slow: 1.1s;--med: .68s;--fast: .14s;--snappy: .23s;--smooth: .42s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-inout: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.36, .5, 1);--ease-gravity: cubic-bezier(.45, 0, .7, 1);--maxw: 1320px;--pad: clamp(20px, 5vw, 72px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--text);font-family:Hanken Grotesk,system-ui,sans-serif;font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}body.locked{overflow:hidden}::selection{background:#b4dce638}h1,h2,h3{font-weight:300;margin:0}.serif{font-family:Cormorant Garamond,Georgia,serif;font-weight:300;letter-spacing:.01em}.kanji{font-family:"Noto Serif JP",Cormorant Garamond,serif;font-weight:200}.label{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--text-faint);font-weight:400}button{font-family:inherit;cursor:pointer}a{color:inherit;text-decoration:none}:focus{outline:none}:focus-visible{outline:1px solid rgba(200,220,230,.5);outline-offset:3px;border-radius:2px}.grain{position:fixed;top:-200%;right:-200%;bottom:-200%;left:-200%;z-index:9999;pointer-events:none;opacity:.5;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 6s steps(6) infinite}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-4%)}60%{transform:translate(-2%,2%)}80%{transform:translate(4%,1%)}to{transform:translate(0)}}.header{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:22px var(--pad);transition:background var(--med) var(--ease),backdrop-filter var(--med),border-color var(--med),padding var(--med);border-bottom:1px solid transparent}.header.scrolled{background:#0a0a0e8c;backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1);border-bottom-color:var(--line-soft);padding-top:16px;padding-bottom:16px}.brand{display:flex;align-items:baseline;gap:12px;cursor:pointer}.brand .kanji{font-size:22px;color:var(--text);opacity:.9}.brand .name{font-family:Cormorant Garamond,serif;font-size:20px;letter-spacing:.12em;color:var(--text)}.brand .name b{font-weight:500}.cart-btn{position:relative;display:flex;align-items:center;gap:10px;background:transparent;border:1px solid var(--line);color:var(--text);padding:10px 18px;border-radius:100px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;transition:border-color var(--med) var(--ease),background var(--med)}.cart-btn:hover{border-color:#ffffff47;background:var(--panel)}.cart-badge{min-width:19px;height:19px;border-radius:100px;background:var(--accent);color:#0b0b0f;font-size:11px;font-weight:600;letter-spacing:0;display:grid;place-items:center;padding:0 5px;transform:scale(0);transition:transform .42s var(--ease)}.cart-badge.show{transform:scale(1)}.hero{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:0 var(--pad)}.hero-field{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;z-index:0;filter:blur(60px) saturate(1.15)}.hero-blob{position:absolute;border-radius:50%;opacity:.55;mix-blend-mode:screen;will-change:transform}.hero-blob.b1{width:60vw;height:60vw;left:-8vw;top:-6vw;background:radial-gradient(circle at 40% 40%,var(--teal),transparent 62%);animation:drift1 26s var(--ease-soft) infinite alternate}.hero-blob.b2{width:54vw;height:54vw;right:-10vw;top:4vw;background:radial-gradient(circle at 50% 50%,var(--violet),transparent 60%);animation:drift2 32s var(--ease-soft) infinite alternate}.hero-blob.b3{width:48vw;height:48vw;left:18vw;bottom:-18vw;background:radial-gradient(circle at 50% 50%,var(--rose),transparent 60%);animation:drift3 30s var(--ease-soft) infinite alternate}.hero-blob.b4{width:40vw;height:40vw;right:8vw;bottom:-10vw;background:radial-gradient(circle at 50% 50%,var(--amber),transparent 64%);opacity:.4;animation:drift1 36s var(--ease-soft) infinite alternate-reverse}@keyframes drift1{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(6vw,4vw,0) scale(1.12)}}@keyframes drift2{0%{transform:translateZ(0) scale(1.05)}to{transform:translate3d(-5vw,5vw,0) scale(.95)}}@keyframes drift3{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(4vw,-5vw,0) scale(1.15)}}.hero-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(120% 90% at 50% 40%,transparent 30%,rgba(11,11,15,.55) 78%,rgba(11,11,15,.92) 100%),linear-gradient(to bottom,rgba(11,11,15,.3),transparent 22%,transparent 72%,rgba(11,11,15,.7))}.hero-inner{position:relative;z-index:2;width:100%;max-width:920px;margin:0 auto}.hero-rise{opacity:1;animation:heroRise 1.3s var(--ease) both}.hero-rise.r0{animation-delay:.1s}.hero-rise.r1{animation-delay:.28s}.hero-rise.r2{animation-delay:.46s}.hero-rise.r3{animation-delay:.64s}@keyframes heroRise{0%{transform:translateY(26px);filter:blur(7px)}to{transform:none;filter:blur(0)}}.hero .kanji-mark{opacity:.85}.hero .kanji-mark{font-size:clamp(40px,7vw,78px);color:var(--text);opacity:.85;display:block;margin-bottom:26px;letter-spacing:.1em}.hero h1{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(44px,7.4vw,94px);line-height:1.08;letter-spacing:.005em;margin-bottom:34px}.hero .tagline{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:300;font-size:clamp(20px,3.2vw,34px);color:var(--text-dim);margin-bottom:48px}.hero .scroll-cue{position:absolute;left:50%;bottom:34px;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-faint)}@media (max-height: 760px){.hero .scroll-cue{display:none}}.scroll-cue .line{width:1px;height:46px;background:linear-gradient(var(--text-faint),transparent);animation:cue 2.6s var(--ease) infinite;transform-origin:top}@keyframes cue{0%,to{transform:scaleY(.4);opacity:.4}50%{transform:scaleY(1);opacity:.9}}.cta{display:inline-flex;align-items:center;gap:14px;padding:16px 34px;border-radius:100px;font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-weight:400;border:1px solid var(--line);background:var(--panel);color:var(--text);transition:all var(--med) var(--ease);position:relative;overflow:hidden}.cta .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px var(--accent);transition:all var(--med) var(--ease)}.cta:hover{border-color:#ffffff4d;background:var(--panel-2);letter-spacing:.3em}.cta:hover .dot{transform:scale(1.6)}.cta-solid{background:var(--text);color:var(--ink);border-color:transparent}.cta-solid:hover{background:#fff}.cta-solid .dot{background:var(--ink);box-shadow:none}.section{position:relative;padding:clamp(96px,16vh,200px) var(--pad)}.wrap{max-width:var(--maxw);margin:0 auto}.reveal{opacity:0;transform:translateY(34px);transition:opacity var(--slow) var(--ease),transform var(--slow) var(--ease)}.reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:90ms}.reveal.d2{transition-delay:.18s}.reveal.d3{transition-delay:.28s}.reveal.d4{transition-delay:.38s}.statement{text-align:center}.statement .eyebrow{margin-bottom:40px}.statement p{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(26px,4vw,46px);line-height:1.42;letter-spacing:.005em;max-width:16ch;margin:0 auto;text-wrap:balance;color:var(--text)}.statement p em{font-style:italic;color:var(--text-dim)}.statement .kanji-faint{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(200px,40vw,560px);color:#ffffff05;z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none}.gallery{padding-top:clamp(60px,10vh,120px)}.gallery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:14px}.gallery-head h2{font-family:Cormorant Garamond,serif;font-size:clamp(36px,6vw,76px);line-height:1}.gallery-head .sub{color:var(--text-dim);max-width:40ch;font-size:15px}.filterbar{position:sticky;top:70px;z-index:90;display:flex;align-items:center;gap:10px 22px;flex-wrap:wrap;padding:16px 0;margin:26px 0 40px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:#0b0b0f99;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.filter-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-group>.label{margin-right:4px}.chip{background:transparent;border:1px solid var(--line-soft);color:var(--text-dim);padding:7px 15px;border-radius:100px;font-size:12px;letter-spacing:.08em;transition:all var(--med) var(--ease);white-space:nowrap}.chip:hover{color:var(--text);border-color:var(--line)}.chip.active{color:var(--ink);background:var(--text);border-color:transparent}.filter-spacer{flex:1}.sort-select{background:transparent;color:var(--text-dim);border:1px solid var(--line-soft);border-radius:100px;padding:8px 16px;font-size:12px;font-family:inherit;letter-spacing:.06em;transition:border-color var(--med)}.sort-select:hover{border-color:var(--line)}.sort-select option{background:var(--ink-2);color:var(--text)}.masonry{columns:3;column-gap:18px}@media (max-width: 1040px){.masonry{columns:2}}@media (max-width: 600px){.masonry{columns:1}.filterbar{top:62px}}.tile{position:relative;display:block;width:100%;text-align:left;padding:0;break-inside:avoid;margin-bottom:18px;border-radius:4px;overflow:hidden;cursor:pointer;border:1px solid var(--line-soft);transform:translateY(28px);opacity:0;transition:transform var(--slow) var(--ease),opacity var(--slow) var(--ease),box-shadow var(--med) var(--ease),border-color var(--med)}.tile.in{transform:none;opacity:1}.tile-art{width:100%;display:block;transition:transform 1.4s var(--ease)}.tile:hover{border-color:var(--line);box-shadow:0 30px 80px -30px #000c,0 0 60px -20px var(--glow, rgba(120,180,200,.4));z-index:2}.tile:hover .tile-art{transform:scale(1.06)}.tile-glow{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;background:radial-gradient(120% 80% at 50% 120%,var(--glow, rgba(120,180,200,.5)),transparent 60%);mix-blend-mode:screen;transition:opacity var(--slow) var(--ease)}.tile:hover .tile-glow{opacity:.6}.tile-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;background:linear-gradient(to top,rgba(8,8,11,.85) 0%,rgba(8,8,11,.2) 40%,transparent 70%);opacity:0;transition:opacity var(--med) var(--ease)}.tile:hover .tile-overlay{opacity:1}.tile-overlay .t-title{font-family:Cormorant Garamond,serif;font-size:25px;line-height:1.05;transform:translateY(8px);transition:transform var(--med) var(--ease)}.tile:hover .tile-overlay .t-title{transform:none}.tile-overlay .t-meta{display:flex;align-items:center;justify-content:space-between;margin-top:8px;transform:translateY(10px);transition:transform var(--med) var(--ease) 40ms}.tile:hover .tile-overlay .t-meta{transform:none}.tile-overlay .t-coll{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim)}.tile-overlay .t-price{font-size:15px;color:var(--text)}.tile-format{position:absolute;top:16px;right:16px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);border:1px solid var(--line);padding:4px 9px;border-radius:100px;background:#08080b66;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity var(--med) var(--ease)}.tile:hover .tile-format{opacity:1}.empty-grid{text-align:center;padding:100px 0;color:var(--text-faint);font-family:Cormorant Garamond,serif;font-size:26px;font-style:italic}.about{position:relative}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,110px);align-items:center}@media (max-width: 880px){.about-grid{grid-template-columns:1fr}}.about .eyebrow{margin-bottom:34px}.about h2{font-family:Cormorant Garamond,serif;font-size:clamp(34px,5vw,60px);line-height:1.08;margin-bottom:30px;text-wrap:balance}.about p{color:var(--text-dim);font-size:clamp(15px,1.5vw,18px);line-height:1.85;margin-bottom:22px;max-width:52ch}.about p strong{color:var(--text);font-weight:400}.about-visual{position:relative;aspect-ratio:4/5;border-radius:4px;overflow:hidden;border:1px solid var(--line-soft)}.about-visual .field{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;filter:blur(40px)}.about-thesis{display:grid;gap:0;margin-top:12px}.thesis-item{padding:24px 0;border-top:1px solid var(--line-soft);display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:baseline}.thesis-item:last-child{border-bottom:1px solid var(--line-soft)}.thesis-item .n{font-family:Cormorant Garamond,serif;font-size:16px;color:var(--text-faint)}.thesis-item h3{font-family:Cormorant Garamond,serif;font-size:23px;margin-bottom:8px;color:var(--text)}.thesis-item p{font-size:14px;margin:0;line-height:1.7}.footer{padding:clamp(80px,14vh,160px) var(--pad) 48px;border-top:1px solid var(--line-soft);position:relative;overflow:hidden}.footer .footer-field{position:absolute;right:0;left:0;top:auto;height:60%;bottom:-30%;filter:blur(70px);opacity:.5;pointer-events:none}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;position:relative;z-index:1}@media (max-width: 760px){.footer-grid{grid-template-columns:1fr;gap:48px}}.footer .kanji-mark{font-size:30px;opacity:.85}.footer .f-name{font-family:Cormorant Garamond,serif;font-size:clamp(36px,6vw,64px);line-height:1;margin:14px 0 18px}.footer .f-tag{font-family:Cormorant Garamond,serif;font-style:italic;color:var(--text-dim);font-size:20px}.newsletter{margin-top:12px}.newsletter .label{display:block;margin-bottom:16px}.news-field{display:flex;border-bottom:1px solid var(--line);padding-bottom:10px;max-width:360px;transition:border-color var(--med)}.news-field:focus-within{border-color:#fff6}.news-field input{flex:1;background:transparent;border:0;outline:none;color:var(--text);font-family:Cormorant Garamond,serif;font-size:19px;padding:4px 0}.news-field input::placeholder{color:var(--text-faint)}.news-field button{background:transparent;border:0;color:var(--text-dim);font-size:20px;transition:color var(--med),transform var(--med)}.news-field button:hover{color:var(--text);transform:translate(4px)}.news-ok{color:var(--teal);font-size:13px;margin-top:12px;opacity:0;transition:opacity var(--med)}.news-ok.show{opacity:1}.footer-links{display:flex;gap:40px;flex-wrap:wrap;margin-top:36px}.footer-links a{font-size:13px;letter-spacing:.12em;color:var(--text-dim);transition:color var(--med)}.footer-links a:hover{color:var(--text)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:clamp(56px,9vh,100px);padding-top:28px;border-top:1px solid var(--line-soft);position:relative;z-index:1}.footer-bottom span{font-size:12px;color:var(--text-faint);letter-spacing:.06em}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#060609b3;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);opacity:0;transition:opacity var(--med) var(--ease),backdrop-filter var(--med)}.backdrop.in{opacity:1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:320;width:min(440px,100vw);background:linear-gradient(180deg,var(--ink-2),var(--ink-1));border-left:1px solid var(--line);display:flex;flex-direction:column;transform:translate(100%);transition:transform var(--slow) var(--ease);box-shadow:-40px 0 100px -30px #000c}.drawer.in{transform:none}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:26px 28px;border-bottom:1px solid var(--line-soft)}.drawer-head h3{font-family:Cormorant Garamond,serif;font-size:27px;white-space:nowrap}.icon-btn{background:transparent;border:1px solid var(--line-soft);color:var(--text-dim);width:38px;height:38px;border-radius:100px;display:grid;place-items:center;font-size:16px;transition:all var(--med) var(--ease)}.icon-btn:hover{color:var(--text);border-color:var(--line);transform:rotate(90deg)}.drawer-body{flex:1;overflow-y:auto;padding:12px 28px}.drawer-empty{text-align:center;padding:80px 20px;color:var(--text-faint)}.drawer-empty .kanji{font-size:54px;display:block;margin-bottom:20px;opacity:.4}.drawer-empty p{font-family:Cormorant Garamond,serif;font-style:italic;font-size:21px}.cart-item{display:grid;grid-template-columns:76px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid var(--line-soft)}.cart-thumb{width:76px;height:76px;border-radius:3px;overflow:hidden;border:1px solid var(--line-soft)}.cart-item .ci-title{font-family:Cormorant Garamond,serif;font-size:20px;line-height:1.1}.cart-item .ci-tags{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 10px}.tag{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);border:1px solid var(--line-soft);padding:3px 8px;border-radius:100px}.tag.license{color:var(--ink);background:var(--accent);border-color:transparent}.cart-item .ci-foot{display:flex;align-items:center;justify-content:space-between}.qty{display:flex;align-items:center;gap:4px;border:1px solid var(--line-soft);border-radius:100px;padding:2px}.qty button{background:transparent;border:0;color:var(--text-dim);width:26px;height:26px;border-radius:100px;font-size:15px;transition:all var(--med)}.qty button:hover{color:var(--text);background:var(--panel)}.qty span{min-width:22px;text-align:center;font-size:13px}.ci-price{font-size:16px}.ci-remove{background:transparent;border:0;color:var(--text-faint);font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-top:8px;transition:color var(--med)}.ci-remove:hover{color:var(--rose)}.drawer-foot{padding:24px 28px 30px;border-top:1px solid var(--line);background:#ffffff03}.subtotal-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.subtotal-row .s-label{color:var(--text-dim);font-size:13px;letter-spacing:.04em}.subtotal-row .s-val{font-family:Cormorant Garamond,serif;font-size:30px}.drawer-note{font-size:12px;color:var(--text-faint);margin-bottom:18px}.drawer-actions{display:grid;gap:10px}.btn-full{width:100%;justify-content:center}.btn-ghost{background:transparent;border:1px solid var(--line-soft);color:var(--text-dim);padding:14px;border-radius:100px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;transition:all var(--med) var(--ease)}.btn-ghost:hover{color:var(--text);border-color:var(--line)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:340;display:flex;opacity:0;transition:opacity var(--med) var(--ease)}.lightbox.in{opacity:1}.lb-stage{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(20px,5vw,60px);min-width:0}.lb-preview-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:100%;flex:1;min-height:0}.lb-art{display:flex;flex-direction:column;align-items:center;transform:scale(.94);opacity:0;filter:blur(14px);transition:transform var(--slow) var(--ease),opacity var(--med),filter var(--med);max-width:100%;max-height:100%}.lightbox.in .lb-art{transform:none;opacity:1;filter:blur(0)}.full-art{border-radius:6px;overflow:hidden;box-shadow:0 50px 140px -40px #000000e6,0 0 120px -40px var(--glow, rgba(120,180,200,.5));max-width:100%}.frame-desktop{padding:0}.device{transition:all var(--slow) var(--ease)}.device.desktop{width:min(72vh * 1.6,100%)}.device.desktop .screen{aspect-ratio:16/10;border-radius:8px;border:2px solid rgba(255,255,255,.14);overflow:hidden;box-shadow:0 0 0 1px #00000080}.device.desktop .stand{width:16%;height:14px;margin:0 auto;background:linear-gradient(#ffffff1a,#ffffff08);border-radius:0 0 6px 6px}.device.desktop .base{width:30%;height:6px;margin:6px auto 0;background:#ffffff14;border-radius:100px}.device.phone{height:min(74vh,560px);aspect-ratio:9/19.5;padding:10px;background:#1a1a20;border-radius:38px;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 2px #0006}.device.phone .screen{width:100%;height:100%;border-radius:28px;overflow:hidden;position:relative}.device.phone .notch{position:absolute;top:10px;left:50%;transform:translate(-50%);width:34%;height:22px;background:#0a0a0c;border-radius:100px;z-index:3}.device.tablet{height:min(74vh,620px);aspect-ratio:3/4;padding:14px;background:#1a1a20;border-radius:22px;border:1px solid rgba(255,255,255,.14)}.device.tablet .screen{width:100%;height:100%;border-radius:10px;overflow:hidden}.device .screen .art-fill{width:100%;height:100%}.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:100px;background:#14141a80;border:1px solid var(--line);color:var(--text);display:grid;place-items:center;font-size:18px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--med) var(--ease);z-index:5}.lb-nav:hover{background:#1e1e26cc;border-color:#ffffff4d}.lb-nav.prev{left:clamp(8px,2vw,26px)}.lb-nav.next{right:clamp(8px,2vw,26px)}.lb-tools{display:flex;align-items:center;gap:8px;margin-top:26px}.lb-tools .seg{display:flex;gap:4px;background:var(--panel);border:1px solid var(--line-soft);border-radius:100px;padding:4px}.lb-tools .seg button{background:transparent;border:0;color:var(--text-dim);padding:8px 16px;border-radius:100px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;transition:all var(--med) var(--ease)}.lb-tools .seg button.active{background:var(--text);color:var(--ink)}.lb-counter{font-size:12px;color:var(--text-faint);letter-spacing:.16em;margin-left:10px}.lb-panel{width:min(420px,42vw);background:linear-gradient(180deg,var(--ink-2),var(--ink-1));border-left:1px solid var(--line);padding:clamp(28px,4vw,46px);overflow-y:auto;display:flex;flex-direction:column}@media (max-width: 860px){.lightbox{flex-direction:column}.lb-panel{width:100%;border-left:0;border-top:1px solid var(--line)}.lb-stage{flex:none;height:48vh}}.lb-panel .p-coll{margin-bottom:18px}.lb-panel h2{font-family:Cormorant Garamond,serif;font-size:clamp(34px,4vw,52px);line-height:1;margin-bottom:18px}.lb-panel .p-desc{color:var(--text-dim);font-size:15px;line-height:1.8;margin-bottom:32px;font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}.opt-block{margin-bottom:26px}.opt-block>.label{display:block;margin-bottom:12px}.opt-row{display:flex;gap:8px;flex-wrap:wrap}.opt{background:transparent;border:1px solid var(--line-soft);color:var(--text-dim);padding:9px 15px;border-radius:8px;font-size:12px;letter-spacing:.04em;transition:all var(--med) var(--ease);display:flex;flex-direction:column;gap:2px;align-items:flex-start;min-width:64px}.opt:hover{border-color:var(--line);color:var(--text)}.opt.active{border-color:#fff6;background:var(--panel-2);color:var(--text)}.opt .o-sub{font-size:10px;color:var(--text-faint);letter-spacing:.08em}.opt.active .o-sub{color:var(--text-dim)}.price-line{display:flex;align-items:baseline;justify-content:space-between;margin:28px 0 18px;padding-top:24px;border-top:1px solid var(--line-soft)}.price-line .pl-label{color:var(--text-dim);font-size:13px;letter-spacing:.1em;text-transform:uppercase}.price-line .pl-val{font-family:Cormorant Garamond,serif;font-size:44px;line-height:1}.lb-buy{display:grid;gap:10px;margin-top:auto}.delivery-note{display:flex;align-items:center;gap:8px;color:var(--text-faint);font-size:12px;margin-top:18px}.delivery-note .dot-mini{width:5px;height:5px;border-radius:50%;background:var(--teal);box-shadow:0 0 8px var(--teal)}.view-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:360;background:var(--ink);overflow-y:auto;opacity:0;transition:opacity var(--med) var(--ease)}.view-screen.in{opacity:1}.view-screen .vs-field{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;filter:blur(80px);opacity:.4;pointer-events:none}.vs-inner{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:clamp(28px,6vh,70px) var(--pad) 80px}.vs-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:clamp(40px,7vh,80px)}.back-link{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;color:var(--text-dim);font-size:12px;letter-spacing:.16em;text-transform:uppercase;transition:color var(--med),gap var(--med)}.back-link:hover{color:var(--text);gap:14px}.checkout-grid{display:grid;grid-template-columns:1fr .85fr;gap:clamp(36px,6vw,80px);align-items:start}@media (max-width: 840px){.checkout-grid{grid-template-columns:1fr}}.co-h{font-family:Cormorant Garamond,serif;font-size:clamp(40px,7vw,76px);line-height:1;margin-bottom:8px}.co-sub{color:var(--text-dim);margin-bottom:44px}.field{margin-bottom:20px}.field label{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);margin-bottom:9px}.input{width:100%;background:var(--panel);border:1px solid var(--line-soft);color:var(--text);padding:15px 16px;border-radius:9px;font-family:inherit;font-size:15px;font-weight:300;transition:border-color var(--med) var(--ease),background var(--med);outline:none}.input::placeholder{color:var(--text-faint)}.input:focus{border-color:#ffffff52;background:var(--panel-2)}.input.err{border-color:var(--rose)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.err-msg{color:var(--rose);font-size:12px;margin-top:7px;opacity:.9}.section-label{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--text-faint);margin:40px 0 20px;padding-bottom:14px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between}.pay-tabs{display:flex;gap:8px;margin-bottom:22px}.pay-tab{flex:1;background:var(--panel);border:1px solid var(--line-soft);color:var(--text-dim);padding:14px;border-radius:10px;font-size:12px;letter-spacing:.1em;transition:all var(--med) var(--ease);display:flex;align-items:center;justify-content:center;gap:8px}.pay-tab.active{border-color:#ffffff57;background:var(--panel-2);color:var(--text)}.card-visual{position:relative}.card-chip{position:absolute;right:16px;top:50%;transform:translateY(-50%);display:flex;gap:4px}.card-chip i{display:block;width:26px;height:17px;border-radius:3px}.card-chip .v1{background:#eb7878b3}.card-chip .v2{background:#ebb45ab3;margin-left:-10px}.wallet-btn{width:100%;padding:17px;border-radius:12px;background:var(--text);color:var(--ink);border:0;font-size:14px;letter-spacing:.04em;font-weight:500;display:flex;align-items:center;justify-content:center;gap:10px;transition:background var(--med)}.wallet-btn:hover{background:#fff}.wallet-note{text-align:center;color:var(--text-faint);font-size:12px;margin-top:16px}.summary{position:sticky;top:40px;background:var(--panel);border:1px solid var(--line-soft);border-radius:14px;padding:28px}.summary h3{font-family:Cormorant Garamond,serif;font-size:24px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line-soft)}.sum-item{display:grid;grid-template-columns:56px 1fr auto;gap:14px;padding:14px 0;border-bottom:1px solid var(--line-soft);align-items:center}.sum-thumb{width:56px;height:56px;border-radius:4px;overflow:hidden;border:1px solid var(--line-soft)}.sum-item .si-title{font-family:Cormorant Garamond,serif;font-size:17px;line-height:1.1}.sum-item .si-meta{font-size:11px;color:var(--text-faint);letter-spacing:.06em;margin-top:3px}.sum-item .si-price{font-size:15px}.sum-tot{padding-top:18px}.sum-row{display:flex;justify-content:space-between;margin-bottom:10px;font-size:14px;color:var(--text-dim)}.sum-row.grand{margin-top:14px;padding-top:16px;border-top:1px solid var(--line);color:var(--text);align-items:baseline}.sum-row.grand .g-val{font-family:Cormorant Garamond,serif;font-size:34px}.complete-btn{margin-top:26px;width:100%}.complete-btn[disabled]{opacity:.5;cursor:default}.spinner{width:15px;height:15px;border:2px solid rgba(11,11,15,.3);border-top-color:var(--ink);border-radius:50%;animation:spin .7s linear infinite}.cta .spinner{border-color:#0b0b0f4d;border-top-color:var(--ink)}@keyframes spin{to{transform:rotate(360deg)}}.success-wrap{max-width:760px;margin:0 auto;text-align:center;padding-top:clamp(40px,10vh,110px)}.success-mark{width:90px;height:90px;margin:0 auto 36px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;position:relative}.success-mark:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:50%;background:conic-gradient(from 0deg,var(--teal),var(--violet),var(--rose),var(--amber),var(--teal));-webkit-mask:radial-gradient(closest-side,transparent 96%,#000 97%);mask:radial-gradient(closest-side,transparent 96%,#000 97%);opacity:.7;animation:spin 14s linear infinite}.success-mark .kanji{font-size:40px;opacity:.9}.success-wrap h1{font-family:Cormorant Garamond,serif;font-size:clamp(38px,7vw,72px);line-height:1.02;margin-bottom:18px}.success-wrap .s-lead{color:var(--text-dim);font-size:17px;max-width:46ch;margin:0 auto 14px;line-height:1.7}.order-meta{display:inline-flex;gap:28px;flex-wrap:wrap;justify-content:center;margin:26px 0 50px;padding:18px 28px;border:1px solid var(--line-soft);border-radius:100px}.order-meta .om{text-align:left}.order-meta .om .label{display:block;margin-bottom:4px}.order-meta .om .v{font-family:Cormorant Garamond,serif;font-size:19px;white-space:nowrap}.download-panel{text-align:left;background:var(--panel);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden;margin-bottom:30px}.dl-head{padding:22px 26px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between}.dl-head h3{font-family:Cormorant Garamond,serif;font-size:23px;white-space:nowrap}.dl-item{padding:20px 26px;border-bottom:1px solid var(--line-soft);display:grid;grid-template-columns:60px 1fr auto;gap:18px;align-items:center}.dl-item:last-child{border-bottom:0}.dl-thumb{width:60px;height:60px;border-radius:5px;overflow:hidden;border:1px solid var(--line-soft)}.dl-info .d-title{font-family:Cormorant Garamond,serif;font-size:20px;line-height:1}.dl-info .d-sub{font-size:12px;color:var(--text-faint);letter-spacing:.06em;margin-top:5px}.dl-res{display:flex;gap:8px;flex-wrap:wrap}.dl-btn{display:inline-flex;align-items:center;gap:8px;background:var(--panel-2);border:1px solid var(--line-soft);color:var(--text);padding:9px 14px;border-radius:8px;font-size:12px;letter-spacing:.06em;transition:all var(--med) var(--ease)}.dl-btn:hover{border-color:#ffffff57;background:#ffffff14}.dl-btn.done{color:var(--teal);border-color:#78c8c84d}.license-note{padding:18px 26px;color:var(--text-faint);font-size:12px;line-height:1.6;background:#ffffff03}.receipt-note{color:var(--text-dim);font-size:14px;margin-bottom:30px;display:flex;align-items:center;gap:9px;justify-content:center;flex-wrap:wrap;white-space:nowrap}.phenom{position:relative;overflow:hidden;background-color:#0a0c0f}.phenom:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");background-size:180px 180px}.phenom-sheen,.phenom.living:after{z-index:2}.phenom-sheen{position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;background:conic-gradient(from 0deg at 50% 50%,transparent,rgba(255,255,255,.06),transparent 30%,rgba(255,255,255,.04),transparent 60%);mix-blend-mode:screen;animation:sheen 22s linear infinite;pointer-events:none}.phenom.living:after{content:"";position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;background:radial-gradient(circle at 40% 40%,rgba(255,255,255,.05),transparent 50%);mix-blend-mode:screen;animation:livedrift 18s var(--ease-soft) infinite alternate;pointer-events:none}@keyframes sheen{to{transform:rotate(360deg)}}@keyframes livedrift{0%{transform:translate(-4%,3%) scale(1.05)}to{transform:translate(5%,-4%) scale(1.2)}}.eyebrow{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}.eyebrow:before{content:"";width:28px;height:1px;background:var(--text-faint)}.flex{display:flex}.muted{color:var(--text-dim)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.12s!important;scroll-behavior:auto!important}.hero-blob,.grain,.success-mark:after{animation:none!important}.reveal,.tile{opacity:1!important;transform:none!important}}.header-right{display:flex;align-items:center;gap:10px}.hdr-size{display:flex;gap:2px;background:var(--panel);border:1px solid var(--line-soft);border-radius:100px;padding:3px}.hdr-size button{background:transparent;border:0;color:var(--text-dim);width:30px;height:30px;border-radius:100px;font-family:Cormorant Garamond,serif;line-height:1;display:grid;place-items:center;transition:all var(--med) var(--ease)}.hdr-size button:hover{color:var(--text)}.hdr-size button.active{background:var(--text);color:var(--ink)}.hdr-theme{width:38px;height:38px;border-radius:100px;border:1px solid var(--line);background:transparent;color:var(--text);display:grid;place-items:center;transition:all var(--med) var(--ease)}.hdr-theme:hover{background:var(--panel);border-color:#ffffff47;transform:rotate(12deg)}.hdr-theme svg{opacity:.9}@media (max-width: 600px){.header-right{gap:7px}.hdr-size button{width:26px;height:26px}.hdr-theme{width:34px;height:34px}.cart-btn{padding:9px 13px}}@media (max-width: 400px){.hdr-size{display:none}}:root{--fzm: 1}body.fz-1{--fzm: 1.15}body.fz-2{--fzm: 1.32}body.fz-1,body.fz-2{font-size:calc(16px * var(--fzm))}body.fz-1 .statement p,body.fz-2 .statement p{font-size:calc(clamp(26px,4vw,46px) * var(--fzm))}body.fz-1 .about p,body.fz-2 .about p{font-size:calc(clamp(15px,1.5vw,18px) * var(--fzm))}body.fz-1 .about h2,body.fz-2 .about h2{font-size:calc(clamp(34px,5vw,60px) * var(--fzm))}body.fz-1 .thesis-item p,body.fz-2 .thesis-item p{font-size:calc(14px * var(--fzm))}body.fz-1 .thesis-item h3,body.fz-2 .thesis-item h3{font-size:calc(23px * var(--fzm))}body.fz-1 .gallery-head .sub,body.fz-2 .gallery-head .sub{font-size:calc(15px * var(--fzm))}body.fz-1 .co-sub,body.fz-2 .co-sub{font-size:calc(16px * var(--fzm))}body.fz-1 .s-lead,body.fz-2 .s-lead{font-size:calc(17px * var(--fzm))}body.fz-1 .lb-panel .p-desc,body.fz-2 .lb-panel .p-desc{font-size:calc(18px * var(--fzm))}body.fz-1 .input,body.fz-2 .input{font-size:calc(15px * var(--fzm))}body.fz-1 .field label,body.fz-2 .field label,body.fz-1 .label,body.fz-2 .label{font-size:calc(11px * var(--fzm))}body.fz-1 .chip,body.fz-2 .chip,body.fz-1 .opt,body.fz-2 .opt,body.fz-1 .cta,body.fz-2 .cta,body.fz-1 .sort-select,body.fz-2 .sort-select,body.fz-1 .dl-btn,body.fz-2 .dl-btn,body.fz-1 .drawer-note,body.fz-2 .drawer-note,body.fz-1 .delivery-note,body.fz-2 .delivery-note,body.fz-1 .license-note,body.fz-2 .license-note,body.fz-1 .dl-info .d-sub,body.fz-2 .dl-info .d-sub,body.fz-1 .footer-bottom span,body.fz-2 .footer-bottom span,body.fz-1 .pay-tab,body.fz-2 .pay-tab{font-size:calc(12px * var(--fzm))}body.fz-1 .tag,body.fz-2 .tag,body.fz-1 .opt .o-sub,body.fz-2 .opt .o-sub{font-size:calc(10px * var(--fzm))}body.fz-1 .footer-links a,body.fz-2 .footer-links a,body.fz-1 .back-link,body.fz-2 .back-link{font-size:calc(13px * var(--fzm))}body.fz-1 .sum-row,body.fz-2 .sum-row,body.fz-1 .receipt-note,body.fz-2 .receipt-note{font-size:calc(14px * var(--fzm))}body.fz-1 .cart-item .ci-title,body.fz-2 .cart-item .ci-title{font-size:calc(20px * var(--fzm))}body.fz-1 .ci-price,body.fz-2 .ci-price{font-size:calc(16px * var(--fzm))}body.fz-1 .sum-item .si-title,body.fz-2 .sum-item .si-title{font-size:calc(17px * var(--fzm))}body.fz-1 .sum-item .si-meta,body.fz-2 .sum-item .si-meta{font-size:calc(11px * var(--fzm))}body.light{--ink: #EBE8E0;--ink-1: #F0EDE6;--ink-2: #F5F2EB;--ink-3: #FAF8F2;--panel: rgba(28, 24, 38, .04);--panel-2: rgba(28, 24, 38, .07);--line: rgba(28, 24, 38, .15);--line-soft: rgba(28, 24, 38, .09);--text: rgba(26, 23, 32, .92);--text-dim: rgba(30, 26, 38, .62);--text-faint: rgba(30, 26, 38, .42);--teal: oklch(.62 .1 195);--rose: oklch(.6 .1 8);--amber: oklch(.66 .1 72);--violet: oklch(.58 .1 300)}body.light{color:var(--text)}body.light ::selection{background:#7896a040}body.light .header.scrolled,body.light .filterbar{background:#f0ede6b8}body.light .backdrop{background:#24202c6b}body.light .lb-nav{background:#f5f2eb99;color:var(--text)}body.light .lb-nav:hover{background:#faf7f0e6;border-color:#1c18264d}body.light .hero-vignette{background:radial-gradient(120% 90% at 50% 40%,transparent 32%,rgba(235,232,224,.5) 80%,rgba(235,232,224,.94) 100%),linear-gradient(to bottom,rgba(235,232,224,.25),transparent 24%,transparent 70%,rgba(235,232,224,.72))}body.light .hero-blob{mix-blend-mode:multiply;opacity:.52}body.light .hero-blob.b1{background:radial-gradient(circle at 40% 40%,rgba(64,150,158,.7),transparent 62%)}body.light .hero-blob.b2{background:radial-gradient(circle at 50% 50%,rgba(120,92,178,.62),transparent 60%)}body.light .hero-blob.b3{background:radial-gradient(circle at 50% 50%,rgba(202,104,138,.6),transparent 60%)}body.light .hero-blob.b4{background:radial-gradient(circle at 50% 50%,rgba(208,158,86,.55),transparent 64%)}body.light .footer .footer-field{opacity:.2;mix-blend-mode:multiply}body.light .view-screen .vs-field{opacity:.16;mix-blend-mode:multiply}body.light .grain{opacity:.3;mix-blend-mode:multiply}body.light .statement .kanji-faint{color:#1c182609}body.light .opt.active{border-color:#1c182666}body.light .pay-tab.active{border-color:#1c18265c}body.light .input:focus{border-color:#1c182657}body.light .cta:hover{border-color:#1c182652}body.light .cart-btn:hover{border-color:#1c182647}body.light .news-field:focus-within{border-color:#1c182666}body.light .dl-btn:hover{border-color:#1c182657}body.light .hdr-theme:hover{border-color:#1c182647}body.studio{cursor:auto;--cw: clamp(280px, 40vw, 520px);--bgap: clamp(14px, 1.6vw, 26px);--barm: clamp(20px, 2.4vw, 34px);overflow-x:clip}@media (hover: hover) and (pointer: fine){body.studio,body.studio a,body.studio button{cursor:none}}.studio-cursor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;pointer-events:none}.cursor-dot{position:fixed;top:0;left:0;width:6px;height:6px;border-radius:50%;background:#f4f3fa;transform:translate(-50%,-50%);transition:opacity .35s var(--ease);will-change:transform}.cursor-dot.hide{opacity:0}.cursor-ring{position:fixed;top:0;left:0;width:40px;height:40px;border-radius:50%;border:1px solid rgba(244,243,250,.5);display:grid;place-items:center;transition:width .45s var(--ease),height .45s var(--ease),background .45s var(--ease),border-color .45s var(--ease);will-change:transform}.cursor-ring.link{width:58px;height:58px;background:#f4f3fa12;border-color:#f4f3fa4d}.cursor-ring.view{width:88px;height:88px;background:#f4f3faf2;border-color:transparent}.cursor-label{font-family:Hanken Grotesk,sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#14141a;opacity:0;transform:scale(.7);transition:opacity .3s,transform .35s}.cursor-ring.view .cursor-label{opacity:1;transform:none}.studio-cursor.on-light .cursor-dot{background:#1b1822}.studio-cursor.on-light .cursor-ring{border-color:#1c182680}.studio-cursor.on-light .cursor-ring.link{background:#1c18260f;border-color:#1c18264d}.studio-cursor.on-light .cursor-ring.view{background:#1c1826f2;border-color:transparent}.studio-cursor.on-light .cursor-label{color:#f4f0e7}.gx-top{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;justify-content:space-between;align-items:flex-start;padding:clamp(20px,3.2vh,32px) var(--pad)}.gx-logo{display:flex;align-items:baseline;gap:4px}.gx-logo .mark{font-family:Cormorant Garamond,serif;font-weight:500;font-size:clamp(22px,3vw,34px);letter-spacing:.04em;line-height:1}.gx-logo .reg{font-size:11px;color:var(--text-faint);vertical-align:super}.gx-logo .kj{font-family:"Noto Serif JP",serif;font-weight:300;font-size:clamp(16px,2vw,22px);color:var(--text-dim);margin-right:8px}.gx-topnav{display:flex;gap:clamp(26px,4vw,56px);align-items:flex-start}.gx-topnav .col{display:flex;gap:14px}.gx-topnav a,.gx-topnav span{font-size:12px;letter-spacing:.06em;color:var(--text-dim);transition:color var(--med) var(--ease)}.gx-topnav a.active{color:var(--text);text-decoration:underline;text-underline-offset:4px}.gx-topnav a:hover{color:var(--text)}.gx-time{color:var(--text-faint);font-variant-numeric:tabular-nums}@media (max-width: 860px){.gx-time,.gx-topnav .contact{display:none}}.gx-left{position:fixed;left:var(--pad);top:50%;transform:translateY(-50%);z-index:30;width:clamp(150px,16vw,220px);height:56vh;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent,#000 16%,#000 84%,transparent);mask-image:linear-gradient(180deg,transparent,#000 16%,#000 84%,transparent)}.gx-left-inner{display:flex;flex-direction:column;align-items:flex-start;transition:transform .7s var(--ease)}.gx-name{background:none;border:0;text-align:left;padding:5px 0;font-family:Cormorant Garamond,serif;font-size:clamp(15px,1.5vw,18px);line-height:1.32;color:var(--text-faint);transition:color var(--med) var(--ease),opacity var(--med);white-space:nowrap}.gx-name:hover{color:var(--text-dim)}.gx-name.active{color:var(--text)}@media (max-width: 720px){.gx-left{display:none}}.gx-right{position:fixed;right:var(--pad);top:clamp(86px,13vh,128px);z-index:30;width:clamp(200px,20vw,280px)}.gx-right p{font-size:12.5px;line-height:1.62;color:var(--text-dim);margin:0 0 16px}.gx-right .r-label{display:block;margin-bottom:6px}.gx-right a{color:var(--text);text-decoration:underline;text-underline-offset:3px;transition:opacity var(--med)}.gx-right a:hover{opacity:.6}@media (max-width: 820px){.gx-right{display:none}}.gx-center{width:var(--cw);margin:0 auto;padding:calc(50vh - var(--cw) * 9 / 32) 0}.gx-card{position:relative;width:100%;aspect-ratio:16 / 9;margin:0 auto clamp(46px,8vh,96px);border-radius:3px;overflow:hidden;border:1px solid var(--line-soft);background:none;padding:0;display:block;opacity:.32;filter:saturate(.7);transition:opacity .7s var(--ease),filter .7s var(--ease),transform .7s var(--ease);scroll-snap-align:center}.gx-card:last-child{margin-bottom:0}.gx-card .art-fill{width:100%;height:100%}.gx-card.active{opacity:1;filter:saturate(1);box-shadow:0 40px 110px -40px #000000d9,0 0 90px -30px var(--glow, rgba(140,200,210,.45))}.gx-card .gx-card-title{position:absolute;left:16px;bottom:14px;font-family:Cormorant Garamond,serif;font-size:22px;color:var(--text);opacity:0;transform:translateY(8px);transition:opacity var(--med),transform var(--med);text-shadow:0 2px 20px rgba(0,0,0,.6)}.gx-card.active .gx-card-title{opacity:1;transform:none}html.snap-v{scroll-snap-type:y proximity}.gx-hud{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;pointer-events:none;opacity:1;transition:opacity var(--med) var(--ease)}.gx-hud.off{opacity:0}.gx-bracket{position:fixed;top:50%;width:var(--barm);height:calc(var(--cw) * 9 / 16 + var(--bgap) * 2);transform:translateY(-50%);pointer-events:none}.gx-bracket.l{right:calc(50% + var(--cw) / 2 + var(--bgap));border-left:1px solid var(--text-faint);border-top:1px solid var(--text-faint);border-bottom:1px solid var(--text-faint)}.gx-bracket.r{left:calc(50% + var(--cw) / 2 + var(--bgap));border-right:1px solid var(--text-faint);border-top:1px solid var(--text-faint);border-bottom:1px solid var(--text-faint)}.gx-meta{position:fixed;top:50%;transform:translateY(-50%);font-size:12px;letter-spacing:.04em;color:var(--text-dim);max-width:18ch}.gx-meta.l{right:calc(50% + var(--cw)/2 + var(--bgap) + var(--barm) + 30px);text-align:right}.gx-meta.r{left:calc(50% + var(--cw)/2 + var(--bgap) + var(--barm) + 30px);text-align:left}.gx-number{position:fixed;top:50%;right:var(--pad);transform:translateY(-50%);font-family:Cormorant Garamond,serif;font-size:clamp(20px,2.6vw,30px);color:var(--text-dim)}@media (max-width: 760px){.gx-meta,.gx-bracket{display:none}}.gx-center.grid{width:min(880px,66vw);display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:clamp(110px,16vh,150px) 0 90px}@media (max-width: 820px){.gx-center.grid{width:min(640px,82vw);grid-template-columns:repeat(2,1fr)}}.gx-center.grid .gx-card{margin:0;aspect-ratio:16/9;opacity:.86;filter:saturate(.9);scroll-snap-align:none}.gx-center.grid .gx-card:hover{opacity:1;filter:saturate(1)}.gx-center.grid .gx-card .gx-card-title{opacity:0}.gx-center.grid .gx-card:hover .gx-card-title{opacity:1;transform:none}.gx-center.horizontal{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;margin:0;padding:0 calc(50vw - var(--cw)/2);display:flex;align-items:center;gap:clamp(40px,6vw,90px);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity}.gx-center.horizontal .gx-card{flex:0 0 var(--cw);margin:0;scroll-snap-align:center}.gx-bottom{position:fixed;bottom:clamp(16px,3vh,28px);left:0;right:0;z-index:60;display:flex;justify-content:space-between;padding:0 var(--pad)}.gx-modes{display:flex;gap:8px}.gx-modes button{background:none;border:0;font-size:12px;letter-spacing:.04em;color:var(--text-faint);transition:color var(--med) var(--ease)}.gx-modes button:hover{color:var(--text-dim)}.gx-modes button.active{color:var(--text);text-decoration:underline;text-underline-offset:4px}.gx-copy{font-size:12px;color:var(--text-faint)}.project-view{position:fixed;top:0;right:0;bottom:0;left:0;z-index:360;background:var(--ink);opacity:0;transition:opacity var(--med) var(--ease);overflow:hidden}.project-view.in{opacity:1}.project-view .pv-field{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;filter:blur(90px);opacity:.4}.pv-inner{position:relative;z-index:1;height:100%;display:grid;grid-template-columns:1.25fr 1fr}@media (max-width: 880px){.pv-inner{grid-template-columns:1fr;grid-template-rows:1fr auto}}.pv-stage{position:relative;display:flex;align-items:center;justify-content:center;padding:clamp(30px,6vw,80px);min-height:0}.pv-art{width:min(100%,calc(74vh * 16 / 9));aspect-ratio:16/9;border-radius:6px;overflow:hidden;box-shadow:0 60px 150px -40px #000000e6,0 0 130px -40px var(--glow, rgba(140,200,210,.5));transform:scale(.94);opacity:0;filter:blur(16px);transition:transform var(--slow) var(--ease),opacity var(--med),filter var(--med)}.project-view.in .pv-art{transform:none;opacity:1;filter:blur(0)}.pv-panel{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,5vw,70px);border-left:1px solid var(--line-soft)}@media (max-width: 880px){.pv-panel{border-left:0;border-top:1px solid var(--line-soft);justify-content:flex-start;padding-top:30px}}.pv-panel .pv-cat{margin-bottom:22px}.pv-panel h2{font-family:Cormorant Garamond,serif;font-size:clamp(40px,6vw,84px);line-height:.96;margin-bottom:26px}.pv-panel h2 .w-kj{font-family:"Noto Serif JP",serif;font-weight:200;font-size:.3em;color:var(--text-faint);margin-left:.3em}.pv-panel .pv-desc{font-family:Cormorant Garamond,serif;font-style:italic;font-size:clamp(18px,2vw,24px);line-height:1.5;color:var(--text-dim);max-width:30ch;margin-bottom:36px}.pv-facts{display:flex;gap:40px;flex-wrap:wrap;padding-top:26px;border-top:1px solid var(--line-soft)}.pv-facts .f .label{display:block;margin-bottom:7px}.pv-facts .f .v{font-family:Cormorant Garamond,serif;font-size:20px}.pv-close{position:fixed;top:clamp(20px,3vh,32px);right:var(--pad);z-index:5;display:flex;align-items:center;gap:10px;background:transparent;border:1px solid var(--line);color:var(--text);padding:10px 18px;border-radius:100px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;transition:all var(--med) var(--ease)}.pv-close:hover{border-color:#ffffff52;background:var(--panel)}.pv-nav{position:fixed;bottom:clamp(24px,5vh,44px);z-index:5;display:flex;align-items:center;gap:14px}.pv-nav.prev{left:var(--pad)}.pv-nav.next{right:var(--pad)}.pv-nav button{background:transparent;border:0;color:var(--text-dim);font-size:12px;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:10px;transition:color var(--med) var(--ease)}.pv-nav button:hover{color:var(--text)}.pv-nav .nav-title{font-family:Cormorant Garamond,serif;font-size:18px;text-transform:none;letter-spacing:0}@media (max-width: 880px){.pv-nav .nav-title{display:none}}.gx-logo{display:flex;align-items:center}.gx-logo-img{height:clamp(22px,2.3vw,30px);width:auto;display:block}.gx-logo-img.is-light,body.light .gx-logo-img.is-dark{display:none}body.light .gx-logo-img.is-light{display:block}.gx-a11y{position:fixed;left:var(--pad);bottom:clamp(52px,7.5vh,74px);z-index:60;display:flex;align-items:center;gap:9px}.gx-seg{display:flex;gap:2px;background:var(--panel);border:1px solid var(--line-soft);border-radius:100px;padding:3px}.gx-seg button{background:none;border:0;color:var(--text-faint);width:28px;height:27px;border-radius:100px;display:grid;place-items:center;line-height:1;transition:all var(--med) var(--ease);font-family:Cormorant Garamond,serif}.gx-seg button:hover{color:var(--text-dim)}.gx-seg button.active{background:var(--text);color:var(--ink)}.gx-theme{width:34px;height:34px;border-radius:100px;border:1px solid var(--line);background:transparent;color:var(--text);display:grid;place-items:center;transition:all var(--med) var(--ease)}.gx-theme:hover{background:var(--panel);transform:rotate(12deg)}@media (max-width: 720px){.gx-a11y{bottom:clamp(46px,7vh,60px)}}body.light .project-view .pv-field{opacity:.16;mix-blend-mode:multiply}body.fz-1 .gx-name,body.fz-2 .gx-name{font-size:calc(clamp(15px,1.5vw,18px) * var(--fzm))}body.fz-1 .gx-right p,body.fz-2 .gx-right p{font-size:calc(12.5px * var(--fzm))}body.fz-1 .gx-meta,body.fz-2 .gx-meta,body.fz-1 .gx-topnav a,body.fz-2 .gx-topnav a,body.fz-1 .gx-topnav span,body.fz-2 .gx-topnav span,body.fz-1 .gx-modes button,body.fz-2 .gx-modes button,body.fz-1 .gx-copy,body.fz-2 .gx-copy{font-size:calc(12px * var(--fzm))}body.fz-1 .gx-card-title,body.fz-2 .gx-card-title{font-size:calc(22px * var(--fzm))}body.fz-1 .pv-desc,body.fz-2 .pv-desc{font-size:calc(clamp(18px,2vw,24px) * var(--fzm))}body.fz-1 .pv-facts .v,body.fz-2 .pv-facts .v{font-size:calc(20px * var(--fzm))}.about-page{position:relative;min-height:100vh;padding:clamp(104px,15vh,150px) var(--pad) clamp(90px,14vh,130px);overflow-x:clip}.about-field{position:fixed;top:-10%;right:-10%;bottom:-10%;left:-10%;z-index:0;filter:blur(80px) saturate(1.1);pointer-events:none}.about-field .hero-blob{opacity:.32}.about-wrap{position:relative;z-index:1;max-width:1100px;margin:0 auto}.about-hero{max-width:760px;margin-bottom:clamp(50px,9vh,100px)}.about-hero .eyebrow{margin-bottom:26px}.about-hero h1{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(46px,8vw,104px);line-height:1;margin-bottom:28px}.about-lead{font-family:Cormorant Garamond,serif;font-style:italic;font-size:clamp(20px,2.6vw,32px);line-height:1.45;color:var(--text-dim);max-width:22ch}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,90px);align-items:start;margin-bottom:clamp(50px,9vh,100px)}@media (max-width: 820px){.about-grid{grid-template-columns:1fr;gap:40px}}.about-body{font-size:clamp(16px,1.7vw,19px);line-height:1.8;color:var(--text-dim);max-width:40ch}.about-body em{font-style:italic;color:var(--text)}.about-mark{color:var(--text);text-decoration:underline;text-underline-offset:3px}.about-quote{margin:32px 0 0;padding-left:22px;border-left:1px solid var(--line);font-family:Cormorant Garamond,serif;font-style:italic;font-size:clamp(18px,2vw,24px);color:var(--text-dim)}.about-col{display:flex;flex-direction:column;gap:16px}.concept-card{background:var(--panel);border:1px solid var(--line-soft);border-radius:10px;padding:clamp(22px,3vw,30px)}.concept-card h3{font-family:Cormorant Garamond,serif;font-size:clamp(24px,3vw,32px);margin-bottom:14px}.concept-card p{font-size:15px;line-height:1.7;color:var(--text-dim)}.concept-mono{font-family:ui-monospace,SF Mono,Menlo,monospace;display:flex;flex-direction:column;gap:12px}.concept-mono .cc-comment{font-size:12px;letter-spacing:.04em;color:var(--text-faint)}.concept-mono .cc-line{font-size:clamp(15px,1.8vw,19px);color:var(--text)}.concept-mono .t-key{color:#77cfcf}.concept-mono .t-op{color:#e7a1ad}.concept-mono .t-fn{color:#edc28d}.about-thesis-row{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,50px);padding:clamp(40px,6vh,60px) 0;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);margin-bottom:clamp(50px,9vh,90px)}@media (max-width: 760px){.about-thesis-row{grid-template-columns:1fr;gap:30px}}.about-thesis-item .at-n{font-family:Cormorant Garamond,serif;font-size:15px;color:var(--text-faint)}.about-thesis-item h4{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(21px,2.4vw,26px);margin:10px 0}.about-thesis-item p{font-size:14px;line-height:1.7;color:var(--text-dim);max-width:32ch}.about-foot{display:grid;grid-template-columns:.8fr 1fr;gap:clamp(36px,6vw,80px);align-items:center}@media (max-width: 760px){.about-foot{grid-template-columns:1fr}}.about-visual{aspect-ratio:16/9;border-radius:4px;overflow:hidden;border:1px solid var(--line-soft)}.about-cta-lead{font-family:Cormorant Garamond,serif;font-size:clamp(24px,3.4vw,40px);line-height:1.2;margin:18px 0 28px;text-wrap:balance}.about-contact-btn{display:inline-flex;align-items:center;gap:14px;background:var(--text);color:var(--ink);border:0;padding:15px 30px;border-radius:100px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;transition:all var(--med) var(--ease)}.about-contact-btn .dot{width:6px;height:6px;border-radius:50%;background:var(--ink)}.about-contact-btn:hover{letter-spacing:.28em}.contact-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:370;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity var(--med) var(--ease);padding:20px}.contact-overlay.in{opacity:1;pointer-events:auto}.contact-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#060609bd;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}body.light .contact-backdrop{background:#24202c80}.contact-stage{position:relative;z-index:1;width:min(430px,94vw);height:560px}@media (max-height: 640px){.contact-stage{height:92vh}}.letter{position:absolute;top:0;left:0;right:0;transform-origin:center top;will-change:transform,opacity}.contact-overlay .letter{transform:translateY(24px) scale(.97);opacity:0;transition:transform var(--slow) var(--ease),opacity var(--med)}.contact-overlay.in .letter{transform:none;opacity:1}.letter-face{position:relative;background:linear-gradient(180deg,#f4f0e7,#ece7da);color:#1c1a22;border-radius:4px;padding:26px 28px 24px;box-shadow:0 50px 110px -40px #000c;overflow:hidden}.letter-head{display:flex;align-items:center;justify-content:space-between}.letter-head .label{color:#1c182280}.letter-close{background:none;border:0;color:#1c182273;font-size:14px;transition:color var(--med)}.letter-close:hover{color:#1c1a22}.letter-rule{height:1px;background:#1c182224;margin:16px 0 20px}.lf-field{margin-bottom:16px}.lf-input{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(28,24,34,.2);color:#1c1a22;font-family:Cormorant Garamond,serif;font-size:19px;padding:7px 2px;outline:none;transition:border-color var(--med);resize:none}.lf-input::placeholder{color:#1c182261}.lf-input:focus{border-color:#1c182299}.lf-input.err{border-color:#b4543f}.lf-area{line-height:1.5}.lf-err{color:#a8462f;font-size:13px;margin:-4px 0 14px;font-family:Hanken Grotesk,sans-serif}.lf-send{margin-top:6px;display:inline-flex;align-items:center;gap:11px;background:#1c1a22;color:#f4f0e7;border:0;padding:13px 26px;border-radius:100px;font-family:Hanken Grotesk,sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;transition:all var(--med) var(--ease)}.lf-send .dot{width:6px;height:6px;border-radius:50%;background:#f4f0e7}.lf-send:hover{letter-spacing:.26em}.lf-send[disabled]{opacity:.6}.lf-send.ghost{background:transparent;color:var(--text);border:1px solid var(--line);margin-top:4px}.letter-fold-line{position:absolute;left:0;right:0;height:1px;background:#1c182200;opacity:0}.letter-fold-line{top:33.3%}.letter-fold-line.two{top:66.6%}.letter.stage-sending{animation:letterDrop 1.7s var(--ease) forwards}.letter.stage-sending .letter-fold-line{animation:foldLine 1.7s var(--ease) forwards}@keyframes letterDrop{0%{transform:translateY(0) scaleY(1);opacity:1}26%{transform:translateY(0) scaleY(1);opacity:1}48%{transform:translateY(6px) scaleY(.34) rotate(-.5deg);opacity:1}60%{transform:translateY(40px) scaleY(.3) rotate(.5deg);opacity:1}to{transform:translateY(360px) scaleY(.05) rotate(0);opacity:0}}@keyframes foldLine{0%,30%{opacity:0}45%{opacity:1;background:#1c182238}to{opacity:0}}.letter.stage-sent{display:none}.mailbox{position:absolute;left:50%;bottom:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.mailbox-slot{width:78px;height:9px;border-radius:6px;background:#050507;box-shadow:inset 0 2px 4px #000c,0 1px #ffffff0f;position:relative;z-index:2;margin-bottom:-4px}.mailbox-body{width:124px;height:92px;border-radius:10px 10px 5px 5px;background:linear-gradient(180deg,var(--ink-3),var(--ink-2));border:1px solid var(--line);display:grid;place-items:center;box-shadow:0 30px 60px -28px #000c}.mailbox-kj{font-family:"Noto Serif JP",serif;font-weight:200;font-size:32px;color:var(--text-faint)}.mailbox.stage-sending,.mailbox.stage-sent{animation:mailReceive 1.7s var(--ease)}@keyframes mailReceive{0%,72%{transform:translate(-50%) translateY(0)}84%{transform:translate(-50%) translateY(5px) scale(1.03)}to{transform:translate(-50%) translateY(0)}}.mailbox.stage-sending .mailbox-slot,.mailbox.stage-sent .mailbox-slot{animation:slotGlow 1.7s var(--ease)}@keyframes slotGlow{0%,70%{box-shadow:inset 0 2px 4px #000c}84%{box-shadow:inset 0 2px 4px #000c,0 0 22px -2px var(--teal)}to{box-shadow:inset 0 2px 4px #000c}}.contact-sent{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px;opacity:0;animation:sentIn var(--slow) var(--ease) .2s both}@keyframes sentIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.sent-mark{width:78px;height:78px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;margin-bottom:22px;position:relative}.sent-mark:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:50%;background:conic-gradient(from 0deg,var(--teal),var(--violet),var(--rose),var(--amber),var(--teal));-webkit-mask:radial-gradient(closest-side,transparent 96%,#000 97%);mask:radial-gradient(closest-side,transparent 96%,#000 97%);opacity:.7;animation:spin 14s linear infinite}.sent-mark .kanji{font-size:34px;color:var(--text)}.contact-sent h3{font-family:Cormorant Garamond,serif;font-size:clamp(28px,4vw,40px);margin-bottom:12px}.contact-sent p{font-size:14px;line-height:1.7;color:var(--text-dim);max-width:36ch;margin-bottom:26px}.contact-sent p strong{color:var(--text);font-weight:400}body.fz-1 .about-body,body.fz-2 .about-body{font-size:calc(clamp(16px,1.7vw,19px) * var(--fzm))}body.fz-1 .concept-card p,body.fz-2 .concept-card p,body.fz-1 .about-thesis-item p,body.fz-2 .about-thesis-item p{font-size:calc(14px * var(--fzm))}@media (prefers-reduced-motion: reduce){.cursor-dot,.cursor-ring,.gx-card,.gx-left-inner{transition:none!important}.letter.stage-sending,.mailbox.stage-sending,.mailbox.stage-sent,.letter.stage-sending .letter-fold-line{animation:none!important}.letter.stage-sending{opacity:0}}.cursor-ring{transition:width var(--snappy) var(--ease-out),height var(--snappy) var(--ease-out),background var(--snappy) var(--ease-out),border-color var(--snappy) var(--ease-out)}.cursor-dot{transition:opacity var(--fast) var(--ease-out)}.cursor-label{transition:opacity var(--fast) var(--ease-out),transform var(--snappy) var(--ease-spring)}.cursor-ring.view{width:86px;height:86px}.gx-topnav a{text-decoration:none!important;position:relative;transition:color var(--fast) var(--ease-out)}.gx-topnav a:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform var(--snappy) var(--ease-out)}.gx-topnav a:hover:after,.gx-topnav a.active:after{transform:scaleX(1)}.gx-topnav a.active{color:var(--text)}.gx-modes button{position:relative;transition:color var(--fast) var(--ease-out)}.gx-modes button.active{text-decoration:none}.gx-modes button:after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform var(--snappy) var(--ease-out)}.gx-modes button:hover:after{transform:scaleX(1)}.gx-modes button.active:after{transform:scaleX(1)}.gx-name{transition:color var(--fast) var(--ease-out),opacity var(--fast) var(--ease-out),transform var(--snappy) var(--ease-out)}.gx-name:hover{transform:translate(6px)}.gx-name.active{transform:translate(0)}.gx-right a{transition:opacity var(--fast) var(--ease-out)}.gx-card{transition:opacity .7s var(--ease),filter .7s var(--ease),transform var(--snappy) var(--ease-out),box-shadow var(--smooth) var(--ease-out)}.gx-card:active{transform:scale(.985)}.gx-center.grid .gx-card{transition:opacity var(--snappy) var(--ease-out),filter var(--snappy) var(--ease-out),transform var(--snappy) var(--ease-out),box-shadow var(--smooth) var(--ease-out)}.gx-center.grid .gx-card:hover{transform:translateY(-5px) scale(1.015)}.gx-center.grid .gx-card:active{transform:translateY(-2px) scale(.99)}.gx-card .gx-card-title{transition:opacity var(--snappy) var(--ease-out),transform var(--snappy) var(--ease-spring)}.about-contact-btn,.lf-send,.pv-close,.gx-theme{transition:background var(--snappy) var(--ease-out),border-color var(--snappy) var(--ease-out),color var(--snappy) var(--ease-out),letter-spacing var(--snappy) var(--ease-out),transform var(--fast) var(--ease-out)}.about-contact-btn:active,.lf-send:active:not([disabled]){transform:scale(.96)}.pv-close:active{transform:scale(.94)}.gx-theme{transition:background var(--snappy) var(--ease-out),transform var(--snappy) var(--ease-spring)}.gx-theme:active{transform:rotate(12deg) scale(.9)}.about-contact-btn .dot,.lf-send .dot{transition:transform var(--snappy) var(--ease-spring)}.about-contact-btn:hover .dot,.lf-send:hover .dot{transform:scale(1.5)}.gx-seg button{transition:color var(--fast) var(--ease-out),background var(--snappy) var(--ease-out),transform var(--fast) var(--ease-out)}.gx-seg button:active{transform:scale(.88)}.gx-logo{transition:transform var(--fast) var(--ease-out)}.gx-logo:active{transform:scale(.96)}.pv-nav button{transition:color var(--fast) var(--ease-out),transform var(--snappy) var(--ease-out)}.pv-nav.prev button:hover{transform:translate(-5px)}.pv-nav.next button:hover{transform:translate(5px)}.gx-topnav .contact{text-decoration:none}.contact-overlay{transition:opacity var(--snappy) var(--ease-out)}.contact-overlay .letter{transform:translateY(20px) scale(.96);opacity:0;filter:blur(6px);transition:transform var(--smooth) var(--ease-spring),opacity var(--snappy) var(--ease-out),filter var(--snappy) var(--ease-out)}.contact-overlay.in .letter{transform:none;opacity:1;filter:blur(0)}.contact-overlay .mailbox{transform:translate(-50%) translateY(14px);opacity:0;transition:transform var(--smooth) var(--ease-spring) 60ms,opacity var(--snappy) var(--ease-out) 60ms}.contact-overlay.in .mailbox{transform:translate(-50%);opacity:1}.lf-field{position:relative}.lf-input{transition:border-color var(--fast) var(--ease-out)}.lf-field:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#1c1a22;transform:scaleX(0);transform-origin:center;transition:transform var(--snappy) var(--ease-out)}.lf-field:focus-within:after{transform:scaleX(1)}.letter-close{transition:color var(--fast) var(--ease-out),transform var(--fast) var(--ease-out)}.letter-close:hover{transform:rotate(90deg)}.letter.stage-sending{animation:letterDrop2 1.65s var(--ease-gravity) forwards}@keyframes letterDrop2{0%{transform:translateY(0) scaleY(1) rotate(0);opacity:1}18%{transform:translateY(-8px) scaleY(1) rotate(0);opacity:1}40%{transform:translateY(2px) scaleY(.42) rotate(-1.5deg);opacity:1}52%{transform:translateY(34px) scaleY(.3) rotate(1deg);opacity:1}to{transform:translateY(364px) scaleY(.04) rotate(-.5deg);opacity:0}}.mailbox.stage-sending,.mailbox.stage-sent{animation:mailReceive2 1.65s var(--ease-out)}@keyframes mailReceive2{0%,74%{transform:translate(-50%) translateY(0)}82%{transform:translate(-50%) translateY(6px) scale(1.035,.965)}90%{transform:translate(-50%) translateY(-1px) scale(.99,1.01)}to{transform:translate(-50%) translateY(0) scale(1)}}.mailbox-body{transition:box-shadow var(--smooth) var(--ease-out)}.contact-sent{animation:sentIn2 var(--smooth) var(--ease-out) .12s both}@keyframes sentIn2{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.sent-mark{animation:markPop var(--smooth) var(--ease-spring) .16s both}@keyframes markPop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.project-view{transition:opacity var(--snappy) var(--ease-out)}.project-view .pv-art{transition:transform var(--smooth) var(--ease-spring),opacity var(--snappy) var(--ease-out),filter var(--snappy) var(--ease-out)}@media (prefers-reduced-motion: reduce){.gx-name:hover,.gx-center.grid .gx-card:hover,.pv-nav button:hover{transform:none!important}.cursor-ring{transform:none}.letter.stage-sending{animation:none!important;opacity:0!important}.mailbox.stage-sending,.mailbox.stage-sent{animation:none!important}.contact-overlay .letter,.contact-overlay .mailbox{filter:none!important}}.backdrop{z-index:410}.drawer{z-index:420}.view-screen{z-index:440}.pv-panel{justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain}.pv-panel-scroll{width:100%;margin-block:auto}.pv-panel::-webkit-scrollbar{width:7px}.pv-panel::-webkit-scrollbar-thumb{background:var(--line);border-radius:10px}@media (max-width: 880px){.pv-panel-scroll{margin-block:0}}.pv-acquire{margin-top:clamp(26px,4vh,38px);padding-top:clamp(24px,3.5vh,34px);border-top:1px solid var(--line-soft)}.pv-acquire-label{display:block;margin-bottom:22px}.pv-acquire .opt-block{margin-bottom:20px}.pv-acquire .price-line{margin:22px 0 16px}.pv-acquire .lb-buy{display:grid;gap:10px}.gx-cart{background:none;border:0;position:relative;display:inline-flex;align-items:center;gap:5px;font-size:12px;letter-spacing:.06em;color:var(--text-dim);transition:color var(--fast) var(--ease-out);font-family:inherit}.gx-cart:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform var(--snappy) var(--ease-out)}.gx-cart:hover{color:var(--text)}.gx-cart:hover:after{transform:scaleX(1)}.gx-cart-badge{min-width:17px;height:17px;padding:0 5px;border-radius:100px;background:var(--accent);color:#0b0b0f;font-size:10px;font-weight:600;letter-spacing:0;display:inline-grid;place-items:center;transform:scale(0);transition:transform var(--snappy) var(--ease-spring)}.gx-cart-badge.show{transform:scale(1)}body.light .gx-cart-badge{color:#f4f0e7}.vs-logo{display:inline-flex;align-items:center;background:none;border:0;padding:0}.vs-logo .gx-logo-img{height:clamp(20px,2.2vw,28px);width:auto;transition:opacity var(--snappy) var(--ease-out)}.vs-logo:hover .gx-logo-img{opacity:.7}.view-screen .back-link{white-space:nowrap}@media (hover: hover) and (pointer: fine){body.studio .drawer,body.studio .drawer *,body.studio .view-screen,body.studio .view-screen *{cursor:none}}.gx-ambient{position:fixed;top:-25%;right:-25%;bottom:-25%;left:-25%;z-index:0;pointer-events:none;background:radial-gradient(42% 46% at 50% 46%,var(--glow, rgba(140, 200, 210, .5)),transparent 70%);filter:blur(90px) saturate(1.2);opacity:.55;mix-blend-mode:screen;transition:background 1.2s var(--ease-soft),opacity 1.2s var(--ease-soft);animation:ambientDrift 34s var(--ease-soft) infinite alternate;will-change:transform}@keyframes ambientDrift{0%{transform:translate3d(-3%,-2%,0) scale(1)}to{transform:translate3d(4%,3%,0) scale(1.14)}}body.light .gx-ambient{mix-blend-mode:multiply;opacity:.3;filter:blur(100px) saturate(1.1)}.gx-ambient.dim{opacity:.3}body.light .gx-ambient.dim{opacity:.18}.gx-center.vertical .gx-card,.gx-center.horizontal .gx-card{--d: 1;opacity:calc(1 - var(--d) * .66);transform:scale(calc(1 - var(--d) * .14));filter:saturate(calc(1 - var(--d) * .4)) blur(calc(var(--d) * var(--d) * 3.4px));transition:box-shadow var(--smooth) var(--ease-out);will-change:transform,opacity,filter}.gx-center.vertical .gx-card.active,.gx-center.horizontal .gx-card.active{box-shadow:0 40px 120px -40px #000000e6,0 0 110px -28px var(--glow, rgba(140, 200, 210, .5))}.gx-number{animation:hudRise var(--smooth) var(--ease-spring) both}@keyframes hudRise{0%{opacity:0;transform:translateY(-50%) translateY(11px);filter:blur(5px)}to{opacity:1;transform:translateY(-50%) translateY(0);filter:blur(0)}}.gx-meta.l{animation:metaInL var(--smooth) var(--ease-out) both}.gx-meta.r{animation:metaInR var(--smooth) var(--ease-out) both}@keyframes metaInL{0%{opacity:0;transform:translateY(-50%) translate(-8px)}to{opacity:1;transform:translateY(-50%) translate(0)}}@keyframes metaInR{0%{opacity:0;transform:translateY(-50%) translate(8px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.gx-left{animation:settleFade 1s var(--ease) .12s both}.gx-right{animation:settleUp 1s var(--ease) .26s both}.gx-bracket{animation:bracketIn .9s var(--ease) .36s both}.gx-center{animation:stageIn .9s var(--ease-out) both}@keyframes settleFade{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}@keyframes settleUp{0%{opacity:0;transform:translateY(18px);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes bracketIn{0%{opacity:0;transform:translateY(-50%) scale(1.12)}to{opacity:1;transform:translateY(-50%) scale(1)}}@keyframes stageIn{0%{opacity:0;filter:blur(8px)}to{opacity:1;filter:blur(0)}}@media (prefers-reduced-motion: reduce){.gx-ambient{animation:none!important}.gx-center.vertical .gx-card,.gx-center.horizontal .gx-card{transform:none!important;filter:none!important;opacity:calc(1 - var(--d) * .45)!important}.gx-number,.gx-meta.l,.gx-meta.r,.gx-left,.gx-right,.gx-bracket,.gx-center{animation:none!important}}
