@charset "UTF-8";:root{--white:#FFFFFF;--ink:#111111;--brand:#555555;--mute:#888888;--line:#EAEAEA;--ink-2:#1A1A1A;--line-d:#2A2A2A;--f-jp:"Zen Kaku Gothic New","Noto Sans JP","Noto Sans CJK JP","Hiragino Sans",sans-serif;--f-en:"Geist","Geist Sans","Zen Kaku Gothic New",system-ui,sans-serif;--f-mono:"Geist Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--gut:clamp(20px,4.4vw,64px);--max:1440px;--ease:cubic-bezier(.22,1,.36,1);--ease-io:cubic-bezier(.65,0,.35,1);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--f-jp);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased;font-feature-settings:"palt" 1;overflow-x:clip}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}ul,ol{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--brand);outline-offset:4px}::selection{background:var(--ink);color:var(--white)}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}.label{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);line-height:1.4}.label b{font-weight:500;color:var(--ink)}.dark .label b{color:var(--white)}.h2{font-size:clamp(32px,4.1vw,58px);font-weight:700;line-height:1.3;letter-spacing:-.01em;text-wrap:balance;word-break:auto-phrase}.ops-h,.mnt-h,.ct-h,.lead{word-break:auto-phrase}.lead{font-size:clamp(15px,1.1vw,16px);line-height:2.05;color:var(--brand);max-width:34em}.dark{background:var(--ink);color:var(--white)}.dark .lead{color:#a3a3a3}.sec-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:28px;align-items:end}.sec-head .sh-l{grid-column:1/span 7;display:flex;flex-direction:column;gap:22px}.sec-head .sh-r{grid-column:9/span 4}.idx{display:flex;align-items:center;gap:14px}.idx:after{content:"";width:40px;height:1px;background:currentColor;opacity:.4}.btn{position:relative;display:inline-flex;align-items:center;gap:18px;height:56px;padding:0 28px;font-size:14px;font-weight:700;letter-spacing:.02em;overflow:hidden;isolation:isolate;transition:color .5s var(--ease)}.btn .ar{display:inline-flex;width:18px;overflow:hidden}.btn .ar svg{flex:none;transition:transform .5s var(--ease)}.btn:hover .ar svg{transform:translate(0)}.btn .ar span{display:flex;gap:6px;transform:translate(-24px);transition:transform .5s var(--ease)}.btn:hover .ar span{transform:translate(0)}.btn-fill{background:var(--ink);color:var(--white)}.btn-fill:before{content:"";position:absolute;inset:0;background:var(--brand);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1}.btn-fill:hover:before{transform:scaleY(1)}.btn-line{box-shadow:inset 0 0 0 1px var(--ink)}.btn-line:before{content:"";position:absolute;inset:0;background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1}.btn-line:hover{color:var(--white)}.btn-line:hover:before{transform:scaleY(1)}.btn-white{background:var(--white);color:var(--ink)}.btn-white:before{content:"";position:absolute;inset:0;background:var(--line);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1}.btn-white:hover:before{transform:scaleY(1)}.tlink{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:700;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:4px;transition:background-size .5s var(--ease)}.tlink:hover{background-size:0 1px;background-position:100% 100%}.loader{position:fixed;inset:0;z-index:100;background:var(--ink);color:var(--white);display:grid;place-items:center;clip-path:inset(0 0 0 0);transition:clip-path 1s var(--ease-io)}.loader.done{clip-path:inset(0 0 100% 0)}.loader-logo{position:relative;width:88px;display:flex;flex-direction:column;align-items:center;gap:22px;color:#8c8c8c;fill:currentColor}.loader-logo .la,.loader-logo .lb{width:88px;height:88px;display:block}.loader-logo .lb{position:absolute;left:0;top:0}.loader-logo .la{transform:translate(var(--gap, 26px),calc(var(--gap, 26px) * -1));transition:transform .15s linear}.loader-logo .lb{transform:translate(calc(var(--gap, 26px) * -1),var(--gap, 26px));transition:transform .15s linear}.loader-logo .lw{width:84px;height:16px;opacity:var(--wo, 0)}.loader-bar{position:absolute;left:var(--gut);right:var(--gut);bottom:64px;height:1px;background:var(--line-d)}.loader-bar i{position:absolute;inset:0;background:var(--white);transform-origin:left;transform:scaleX(var(--p, 0))}.loader-num{position:absolute;left:var(--gut);bottom:80px;font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;color:var(--mute)}.loader-cap{position:absolute;right:var(--gut);bottom:80px;font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;color:#5e5e5e}.loader-cap b{font-weight:400;color:var(--white)}.no-anim .loader{display:none}.hd{position:fixed;top:0;left:0;right:0;z-index:50;padding-top:env(safe-area-inset-top,0px);transition:transform .6s var(--ease),background .4s,color .4s,border-color .4s;background:#ffffffdb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.hd.is-hidden{transform:translateY(-100%)}.hd.is-dark{background:#111111d1;color:var(--white);border-bottom-color:var(--line-d)}.hd-in{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{color:var(--brand);display:flex;align-items:center;gap:12px;line-height:1;fill:currentColor;transition:color .4s}.logo svg{display:block;fill:currentColor}.logo .lm{width:30px;height:30px}.logo .lw{width:86px;height:16.1px}.logo-lg .lm{width:44px;height:44px}.logo-lg .lw{width:104px;height:19.5px}.hd.is-dark .logo{color:#a3a3a3}.nav{display:flex;align-items:center;gap:40px}.nav a.nl{display:flex;flex-direction:column;align-items:flex-start;line-height:1.3;position:relative}.nav a.nl .en{font-family:var(--f-en);font-size:14px;font-weight:500;letter-spacing:.02em}.nav a.nl .ja{font-size:12px;color:#666;margin-top:1px;transition:color .4s}.hd.is-dark .nav a.nl .ja{color:#a8a8a8}.nav a.nl:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}.nav a.nl:hover:after{transform:scaleX(1);transform-origin:left}.hd .btn{height:46px;padding:0 22px;font-size:14px}.hd.is-dark .btn-fill{background:var(--white);color:var(--ink)}.hd.is-dark .btn-fill:before{background:var(--line)}.menu-btn{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-btn i{display:block;width:22px;height:1.5px;background:currentColor;transition:transform .4s var(--ease)}.menu-open .menu-btn i:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-open .menu-btn i:last-child{transform:translateY(-3.75px) rotate(-45deg)}.mnav{position:fixed;inset:0;z-index:45;background:var(--ink);color:var(--white);padding:120px var(--gut) 40px;display:flex;flex-direction:column;justify-content:space-between;clip-path:inset(0 0 100% 0);transition:clip-path .7s var(--ease-io);visibility:hidden}.menu-open .mnav{clip-path:inset(0 0 0 0);visibility:visible}.mnav ul{display:flex;flex-direction:column;border-top:1px solid var(--line-d)}.mnav li a{display:flex;justify-content:space-between;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line-d);font-size:26px;font-weight:700}.mnav li a span{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;color:var(--mute);font-weight:400}.hero{position:relative;padding-top:76px;overflow:hidden;display:flex;flex-direction:column;min-height:calc(100vh - 94px);min-height:calc(100svh - 94px)}.hero-grid{position:absolute;inset:76px 0 0;pointer-events:none;--c:40px;--M:calc(var(--c) * 3);background-image:linear-gradient(to right,#F2F2F2 1px,transparent 1px),linear-gradient(to bottom,#F2F2F2 1px,transparent 1px),linear-gradient(to right,#E6E6E6 1px,transparent 1px),linear-gradient(to bottom,#E6E6E6 1px,transparent 1px);background-size:var(--c) var(--c),var(--c) var(--c),var(--M) var(--M),var(--M) var(--M);background-position:var(--gx, 0) var(--gy, 0),var(--gx, 0) var(--gy, 0),var(--Mx, 0) var(--My, 0),var(--Mx, 0) var(--My, 0);-webkit-mask-image:linear-gradient(to bottom,#000 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 70%,transparent 100%)}.hero-in{position:relative;flex:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--cell, 24px);padding-block:clamp(40px,7vh,96px);align-items:center}.reg{position:absolute;width:15px;height:15px;pointer-events:none}.reg:before,.reg:after{content:"";position:absolute;background:var(--mute)}.reg:before{left:7px;top:0;width:1px;height:15px}.reg:after{top:7px;left:0;height:1px;width:15px}.reg.tl{left:calc(var(--gut) - 7px);top:18px}.reg.tr{right:calc(var(--gut) - 7px);top:18px}.reg.bl{left:calc(var(--gut) - 7px);bottom:18px}.reg.br{right:calc(var(--gut) - 7px);bottom:18px}.hero-copy{grid-column:1/span 6;display:flex;flex-direction:column;gap:clamp(28px,4vh,44px);position:relative;z-index:1}.hero-meta{display:flex;gap:28px;flex-wrap:wrap}.hero-meta .since-m{display:none}.h1{font-size:clamp(44px,5.8vw,90px);font-weight:700;line-height:1.26;letter-spacing:-.02em}.h1 .ln{display:flex;align-items:center;overflow:hidden;padding-block:.06em .1em;border-top:1px solid #D6D6D6}.h1 .ln:last-child{box-shadow:0 1px #d6d6d6}.h1.snap .ln{padding-block:0}.h1 .ln>button{display:inline-flex;align-items:baseline;gap:.22em;text-align:left;font-weight:inherit;letter-spacing:inherit;line-height:inherit;transition:color .6s var(--ease)}.h1 .pre{color:var(--mute);font-weight:500;font-size:.62em;transition:color .6s var(--ease)}.h1 .vb{position:relative;color:#a0a0a0;transition:color .6s var(--ease)}.h1 .vb:after{content:"";position:absolute;left:0;right:.9em;bottom:.02em;height:.06em;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .9s var(--ease)}.h1 .ln.on .vb{color:var(--ink)}.h1 .ln.on .pre{color:var(--brand)}.h1 .ln.on .vb:after{transform:scaleX(1)}.h1 .no{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--mute);font-weight:400;align-self:flex-start;margin-top:.9em;min-width:2.4em}.hero-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 40px;align-items:end}.hero-body .lead{max-width:30em}.hero-cta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:480px}.hero-cta .btn{justify-content:space-between;padding:0 24px}.hero-foot{position:relative;padding-bottom:18px;background:transparent}.tb{display:grid;grid-template-columns:auto auto auto minmax(0,1fr) auto auto;border:1px solid #D9D9D9;background:var(--white)}.tb-c{display:flex;align-items:center;gap:12px;height:48px;padding:0 18px;border-left:1px solid #D9D9D9;white-space:nowrap;min-width:0;overflow:hidden}.tb-c:first-child{border-left:0}.tb-c b{font-family:var(--f-mono);font-weight:500;font-size:11px;letter-spacing:.1em;color:var(--ink);text-transform:uppercase;overflow:hidden;text-overflow:ellipsis}.scroll-ind{display:flex;align-items:center;gap:14px}.scroll-ind i{width:1px;height:28px;background:var(--line);position:relative;overflow:hidden}.scroll-ind i:after{content:"";position:absolute;inset:0;background:var(--ink);animation:sdrop 2s var(--ease-io) infinite}@keyframes sdrop{0%{transform:translateY(-100%)}60%,to{transform:translateY(100%)}}.hero-vis{grid-column:8/span 5;position:relative;display:flex;flex-direction:column;gap:18px}.dv-wrap{position:relative;display:flex;flex-direction:column;flex:1}.dv-dim{position:absolute;left:0;right:0;top:-26px;height:9px;border-inline:1px solid var(--mute);display:flex;align-items:center;justify-content:center}.dv-dim:before{content:"";position:absolute;left:0;right:0;top:4px;height:1px;background:#cfcfcf}.dv-dim span{position:relative;background:var(--white);padding:0 10px;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);line-height:1}.cm{position:absolute;width:12px;height:12px;border-color:var(--ink);border-style:solid;border-width:0;pointer-events:none}.cm.tl{left:-9px;top:-9px;border-left-width:1px;border-top-width:1px}.cm.tr{right:-9px;top:-9px;border-right-width:1px;border-top-width:1px}.cm.bl{left:-9px;bottom:-9px;border-left-width:1px;border-bottom-width:1px}.cm.br{right:-9px;bottom:-9px;border-right-width:1px;border-bottom-width:1px}.device{position:relative;border:1px solid var(--ink);background:var(--white);aspect-ratio:4/3;display:flex;flex-direction:column}.dv-bar{height:34px;border-bottom:1px solid var(--ink);display:flex;align-items:center;gap:6px;padding:0 12px;flex:none}.dv-bar i{width:8px;height:8px;border:1px solid var(--ink);border-radius:50%}.dv-url{margin-left:10px;font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;color:var(--mute);flex:1;border:1px solid var(--line);height:20px;display:flex;align-items:center;padding:0 10px}.dv-body{position:relative;flex:1;padding:14px;display:grid;grid-template-rows:10px 1fr auto 18px;gap:10px;overflow:hidden}.blk{background:var(--line);transform-origin:left center}.b-nav{display:flex;gap:6px;background:none}.b-nav i{background:var(--ink);width:26%;height:100%}.b-nav i+i{background:var(--line);width:8%;margin-left:auto}.b-nav i+i+i,.b-nav i+i+i+i{margin-left:0}.b-hero{position:relative;background:#f4f4f4;display:flex;align-items:flex-end;padding:14px;overflow:hidden}.b-hero .ttl{display:flex;flex-direction:column;gap:6px;width:46%}.b-hero .ttl i{height:9px;background:var(--brand)}.b-hero .ttl i:nth-child(2){width:70%;background:var(--mute)}.dv-chart{position:absolute;inset:14px 14px 14px 52%;width:calc(48% - 14px);height:calc(100% - 28px);overflow:visible}.dv-chart polyline{fill:none;stroke:var(--ink);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:1;vector-effect:non-scaling-stroke}.dv-chart .area{fill:var(--line);opacity:0}.b-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.b-card{height:clamp(54px,6vw,86px);background:var(--line);position:relative;display:flex;align-items:flex-end;padding:8px;gap:4px}.device:not([data-mode="2"]) .b-card em{visibility:hidden}.b-card em{display:block;width:10px;background:var(--brand);height:30%;transform-origin:bottom;transform:scaleY(0)}.b-foot{background:var(--ink);opacity:.9}.dv-chip{position:absolute;right:14px;top:14px;font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;background:var(--ink);color:var(--white);padding:6px 10px;opacity:0;transform:translateY(-6px);transition:opacity .4s,transform .4s var(--ease)}.dv-cursor{position:absolute;left:0;top:0;width:18px;height:18px;opacity:0;pointer-events:none}.dv-cursor svg{display:block}.dv-status{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;align-items:center}.dv-mode{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;color:var(--ink);min-width:12ch}.dv-desc{font-size:13px;color:var(--brand)}.dv-seg{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dv-seg i{height:2px;background:var(--line);position:relative;overflow:hidden}.dv-seg i:after{content:"";position:absolute;inset:0;background:var(--ink);transform:scaleX(0);transform-origin:left}.dv-seg i.done:after{transform:scaleX(1)}.dv-seg i.on:after{animation:seg var(--dur, 3.6s) linear forwards}@keyframes seg{to{transform:scaleX(1)}}.device.run[data-mode="0"] .blk,.device.run[data-mode="0"] .b-nav i{animation:build .9s var(--ease) both;animation-delay:calc(var(--i, 0) * .11s)}@keyframes build{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}.device[data-mode="0"] .dv-chip.c0,.device[data-mode="1"] .dv-chip.c1,.device[data-mode="2"] .dv-chip.c2{opacity:1;transform:none;transition-delay:.3s}.device.run[data-mode="1"] .is-broken{animation:broken 3.4s var(--ease) both}@keyframes broken{0%{transform:none;outline:1px dashed transparent;background:var(--line)}12%,52%{transform:translate(12px,16px) rotate(-5deg);outline:1px dashed var(--ink);outline-offset:3px;background:#dadada}66%,to{transform:none;outline:1px dashed transparent;background:var(--line)}}.device.run[data-mode="1"] .dv-cursor{animation:fixcur 3.4s var(--ease) both}@keyframes fixcur{0%{opacity:0;transform:translate(110%,420%)}20%{opacity:1;transform:translate(260%,420%)}52%{opacity:1;transform:var(--cur-to)}60%{opacity:1;transform:var(--cur-to) scale(.8)}80%{opacity:1;transform:var(--cur-to)}to{opacity:0;transform:var(--cur-to)}}.device.run[data-mode="2"] .dv-chart polyline{animation:draw 2.2s var(--ease) .2s forwards}.device.run[data-mode="2"] .dv-chart .area{animation:fadeA 1.2s ease 1.4s forwards}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fadeA{to{opacity:1}}.device.run[data-mode="2"] .b-card em{animation:bars 1s var(--ease) both;animation-delay:calc(.6s + var(--j, 0) * 90ms)}@keyframes bars{to{transform:scaleY(1)}}.device[data-mode="2"] .b-hero .ttl{opacity:.35;transition:opacity .6s}.js-anim .hero .h1 .ln>button{transform:translateY(110%)}.js-anim .hero [data-hero]{opacity:0;transform:translateY(20px)}.js-anim .hero .device{clip-path:inset(0 0 100% 0)}.hero-go .hero .h1 .ln>button{transform:none;transition:transform 1.2s var(--ease),color .6s var(--ease)}.hero-go .hero .h1 .ln:nth-child(2)>button{transition-delay:.08s,0s}.hero-go .hero .h1 .ln:nth-child(3)>button{transition-delay:.16s,0s}.hero-go .hero [data-hero]{opacity:1;transform:none;transition:opacity 1s var(--ease) .5s,transform 1.2s var(--ease) .5s}.hero-go .hero .device{clip-path:inset(0 0 0 0);transition:clip-path 1.1s var(--ease-io) .2s}.plat{border-block:1px solid var(--line);overflow:hidden}.plat-in{display:flex;align-items:center;gap:40px;height:92px}.plat-cap{flex:none;display:flex;flex-direction:column;line-height:1.5}.plat-cap .ja{font-size:12px;font-weight:700}.plat-track{flex:1;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.plat-row{display:flex;width:max-content;animation:tick 40s linear infinite}.plat-row span{font-family:var(--f-en);font-size:19px;font-weight:500;color:var(--brand);padding-inline:32px;white-space:nowrap;display:flex;align-items:center;gap:32px}.plat-row span:after{content:"";width:5px;height:5px;background:var(--line);display:block}.plat-row .jp{font-family:var(--f-jp);font-weight:700;font-size:17px}@keyframes tick{to{transform:translate(-50%)}}.plat:hover .plat-row{animation-play-state:paused}.js-anim [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1.2s var(--ease);transition-delay:var(--d, 0s)}.js-anim [data-reveal].is-in{opacity:1;transform:none}.js-anim [data-mask]{clip-path:inset(0 0 100% 0);transition:clip-path 1.3s var(--ease-io);transition-delay:var(--d, 0s)}.js-anim [data-mask].is-in{clip-path:inset(0 0 0 0)}.js-anim .h2 .ln{display:block;overflow:hidden}.js-anim .h2 .ln>span{display:inline-block;transform:translateY(105%);transition:transform 1.1s var(--ease);transition-delay:calc(var(--d, 0s) + var(--k, 0) * .08s)}.js-anim .h2.is-in .ln>span{transform:none}.svc{position:relative;overflow:hidden;padding-block:clamp(96px,11vw,168px)}.svc-mark{position:absolute;right:-7%;top:clamp(-140px,-8vw,-60px);width:clamp(300px,34vw,500px);height:auto;fill:#f2f2f2;pointer-events:none}.svc>.wrap{position:relative}.svc-grid{margin-top:clamp(56px,6vw,88px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink)}.svc-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 32px;padding:clamp(28px,3vw,44px) clamp(20px,2.6vw,40px) clamp(32px,3.2vw,48px);border-bottom:1px solid var(--line);isolation:isolate;min-width:0}.svc-card:nth-child(odd){border-right:1px solid var(--line)}.svc-card:before{content:"";position:absolute;inset:0;background:#f6f6f6;transform:scaleY(0);transform-origin:top;transition:transform .7s var(--ease);z-index:-1}.svc-card:hover:before{transform:scaleY(1)}.svc-top{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.svc-txt{display:flex;flex-direction:column;gap:14px;min-width:0}.svc-txt h3{font-size:clamp(22px,2vw,28px);font-weight:700;line-height:1.4}.svc-txt p{font-size:14px;line-height:1.95;color:var(--brand)}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.tags li{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;color:var(--brand);border:1px solid #D6D6D6;padding:3px 8px;line-height:1.5}.svc-ill{align-self:center;justify-self:end;width:100%;max-width:260px}.svc-ill svg{width:100%;height:auto;overflow:visible}.svc-ill .s{fill:none;stroke:var(--ink);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.svc-ill .m{fill:none;stroke:var(--mute);stroke-width:1.25}.svc-ill .f{fill:var(--line);stroke:none}.svc-ill .k{fill:var(--ink);stroke:none}.js-anim .svc-ill .s,.js-anim .svc-ill .m{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s var(--ease-io);transition-delay:calc(.2s + var(--q, 0) * .12s)}.js-anim .svc-card.is-in .svc-ill .s,.js-anim .svc-card.is-in .svc-ill .m{stroke-dashoffset:0}.svc-ill .mv{transition:transform .8s var(--ease)}.svc-card:hover .svc-ill .mv{transform:translate(var(--mx, 0),var(--my, 0))}.circ{width:48px;height:48px;border-radius:50%;box-shadow:inset 0 0 0 1px #cfcfcf;display:grid;place-items:center;position:relative;overflow:hidden;transition:box-shadow .5s,color .5s var(--ease);isolation:isolate}.circ:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--ink);transform:scale(0);transition:transform .5s var(--ease);z-index:-1}a:hover .circ,.svc-card:hover .circ{color:var(--white);box-shadow:inset 0 0 0 1px var(--ink)}a:hover .circ:before,.svc-card:hover .circ:before{transform:scale(1)}.svc-link{position:absolute;inset:0;z-index:2}.ops{position:relative;height:420vh;background:#131313}.ops-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;align-items:center}.bp-dark{background-color:#131313}.bp-field{position:absolute;inset:0;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 14%,#000 62%,transparent 90%);mask-image:linear-gradient(to bottom,transparent 0,#000 14%,#000 62%,transparent 90%);--c:40px;--M:calc(var(--c) * 3);background-image:linear-gradient(to right,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(to right,rgba(255,255,255,.085) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.085) 1px,transparent 1px);background-size:var(--c) var(--c),var(--c) var(--c),var(--M) var(--M),var(--M) var(--M);background-position:var(--gx, 0) var(--gy, 0),var(--gx, 0) var(--gy, 0),var(--Mx, 0) var(--My, 0),var(--Mx, 0) var(--My, 0)}.ops-in{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--cell, 24px);align-items:center;width:100%;padding-top:76px}.ops-l{grid-column:1/span 6;display:flex;flex-direction:column;gap:clamp(22px,2.4vw,34px)}.ops-h{font-size:clamp(36px,4.1vw,64px);font-weight:700;line-height:1.18;letter-spacing:-.03em;white-space:nowrap}.ops-h .q{color:#8c8c8c}.ops-panel{border-top:1px solid var(--line-d);padding-top:22px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 24px;min-height:170px}.ops-panel .pn{font-family:var(--f-mono);font-size:clamp(40px,4vw,60px);line-height:1;font-weight:400;color:var(--white);grid-row:span 2;font-variant-numeric:tabular-nums;min-width:2ch}.ops-panel .pt{font-size:clamp(20px,1.7vw,24px);font-weight:700;line-height:1.4}.ops-panel .pd{font-size:clamp(16px,1.25vw,18px);line-height:1.85;color:#c4c4c4;max-width:26em}.ops-panel .swap{transition:opacity .35s,transform .5s var(--ease)}.ops-panel.changing .swap{opacity:0;transform:translateY(8px)}.ops-r{grid-column:7/span 6;position:relative;display:flex;flex-direction:column;gap:clamp(18px,3vh,32px)}.oc{border:1px solid #2E2E2E;background:#151515;display:flex;flex-direction:column;box-shadow:0 40px 80px -40px #000c}.oc-h{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;border-bottom:1px solid #262626}.oc-id{display:flex;align-items:baseline;gap:14px;min-width:0}.oc-id b{font-family:var(--f-mono);font-weight:500;font-size:14px;color:var(--white);letter-spacing:.04em}.oc-ch{font-size:12px;color:#a3a3a3;white-space:nowrap}.oc-pill{font-size:12px;font-weight:700;background:var(--white);color:var(--ink);padding:4px 12px;white-space:nowrap}.oc-pill.flip{animation:flip .5s var(--ease)}@keyframes flip{0%{transform:none;opacity:1}40%{transform:translateY(-6px);opacity:0}60%{transform:translateY(6px);opacity:0}to{transform:none;opacity:1}}.oc-seg{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;padding:0 18px;margin-top:-1px}.oc-seg i{height:2px;background:#2a2a2a;transition:background .5s}.oc-seg i.on{background:var(--white)}.oc-body{position:relative;height:clamp(236px,33vh,300px);overflow:hidden}.oc-f{display:flex;justify-content:space-between;gap:16px;padding:12px 18px;border-top:1px solid #262626}.oc-f .label:first-child{color:#cfcfcf}.ov{position:absolute;inset:0;padding:22px 24px;display:flex;flex-direction:column;gap:14px;opacity:0;visibility:hidden;transform:translateY(28px);transition:opacity .35s ease,transform .7s var(--ease),visibility 0s .7s}.ov.past{transform:translateY(-28px)}.ov.on{opacity:1;visibility:visible;transform:none;transition:opacity .5s ease .15s,transform .8s var(--ease) .1s,visibility 0s}.ov .sg{opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .7s var(--ease)}.ov.on .sg{opacity:1;transform:none;transition-delay:calc(.2s + var(--s, 0) * .07s)}.ov .mono,.oc .mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.vh{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px dashed #2E2E2E}.oc .label{color:#7a7a7a}.v-item{flex-direction:row;gap:24px;align-items:stretch}.vi-img{flex:none;width:clamp(120px,32%,190px);background:#1d1d1d;border:1px solid #2A2A2A;position:relative;display:grid;place-items:center}.vi-img svg{width:62%;height:auto;fill:none;stroke:#dadada;stroke-width:1.4;stroke-linejoin:round}.vi-img svg path{stroke-dasharray:1;stroke-dashoffset:1}.vi-img svg path:first-child{stroke-dasharray:420;stroke-dashoffset:420}.vi-img svg .sm{stroke-dasharray:60;stroke-dashoffset:60}.v-item.on .vi-img svg path{stroke-dashoffset:0;transition:stroke-dashoffset 1.6s var(--ease-io) .25s}.vi-img .label{position:absolute;left:10px;bottom:8px;font-size:9px}.kv{margin:0;flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.kv>div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:7px 0;border-bottom:1px solid #222;font-size:13px}.kv dt{font-size:11px;color:#7a7a7a}.kv dd{margin:0;color:#dadada;display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-width:0}.kv dd b{font-weight:700;color:var(--white)}.sw i{width:14px;height:14px;display:block;box-shadow:inset 0 0 0 1px #444}.sw .w{background:#f2f2f2}.sw .g{background:#777}.sw .b{background:#0b0b0b}.sw i.on{outline:1px solid var(--white);outline-offset:2px}.sz i{font-style:normal;font-family:var(--f-mono);font-size:10px;min-width:24px;height:20px;display:grid;place-items:center;border:1px solid #3A3A3A;color:#9a9a9a}.sz i.on{background:var(--white);color:var(--ink);border-color:var(--white)}.pub i{font-style:normal;font-size:11px;display:inline-flex;align-items:center;gap:5px;border:1px solid #3A3A3A;padding:1px 7px;color:#9a9a9a;transition:color .4s,border-color .4s}.pub i:before{content:"";width:6px;height:6px;border-radius:50%;background:#3a3a3a;transition:background .4s}.v-item.on .pub i{color:var(--white);border-color:#777;transition-delay:calc(.9s + var(--c) * .25s)}.v-item.on .pub i:before{background:var(--white);transition-delay:calc(.9s + var(--c) * .25s)}.feed{display:flex;flex-direction:column}.feed li{display:grid;grid-template-columns:52px minmax(0,1fr) 64px 72px 44px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #222;font-size:13px;color:#8c8c8c}.feed .r{text-align:right}.feed em{font-style:normal;font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;text-align:center}.feed li.hot{color:var(--white);background:#1f1f1f;margin-inline:-10px;padding-inline:10px;opacity:0;transform:translateY(-100%);transition:opacity .5s ease,transform .8s var(--ease)}.feed li.hot em{background:var(--white);color:var(--ink);padding:2px 0}.v-order.on .feed li.hot{opacity:1;transform:none;transition-delay:.65s}.v-proc .auto{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;border:1px solid #555;color:#cfcfcf;padding:2px 8px}.checks{display:flex;flex-direction:column;gap:2px}.checks li{display:flex;align-items:center;gap:14px;padding:9px 0;font-size:14px;color:#7a7a7a;border-bottom:1px solid #222;transition:color .4s}.cb{width:16px;height:16px;border:1px solid #555;position:relative;flex:none;transition:background .3s,border-color .3s}.cb:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid var(--ink);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .35s var(--ease)}.v-proc.on .checks li{color:var(--white);transition-delay:calc(.4s + var(--c) * .38s)}.v-proc.on .cb{background:var(--white);border-color:var(--white);transition-delay:calc(.4s + var(--c) * .38s)}.v-proc.on .cb:after{transform:rotate(45deg) scale(1);transition-delay:calc(.45s + var(--c) * .38s)}.chg{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px}.chg span{color:#7a7a7a;text-decoration:line-through}.chg .ar2{text-decoration:none}.chg b{background:#2a2a2a;color:var(--white);padding:1px 8px;font-weight:700}.v-stock{flex-direction:row;gap:28px;align-items:center}.stk{flex:none;width:44%;display:flex;flex-direction:column;gap:10px}.stk .big{display:flex;align-items:baseline;gap:8px;line-height:1}.stk .big>span.mono{font-size:clamp(56px,6vw,88px);color:var(--white);font-weight:400;letter-spacing:-.04em}.stk .big small{font-size:14px;color:#a3a3a3}.stk .big em{font-style:normal;font-size:13px;line-height:1.5;letter-spacing:0;color:var(--ink);background:var(--white);padding:2px 8px;margin-left:6px;opacity:0;transform:translateY(6px);transition:opacity .4s,transform .5s var(--ease)}.v-stock.on .stk .big em{opacity:1;transform:none;transition-delay:1.2s}.meter{height:4px;background:#2a2a2a;position:relative}.meter i{position:absolute;left:0;top:0;bottom:0;width:60%;background:var(--white);transition:width 1s var(--ease-io)}.v-stock.on .meter i{width:55%;transition-delay:.6s}.sync{flex:1;display:flex;flex-direction:column;min-width:0}.sync li{display:grid;grid-template-columns:72px minmax(0,1fr) 30px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #222;font-size:13px;color:#cfcfcf}.sync .ln{height:1px;background:#2a2a2a;position:relative;overflow:hidden}.sync .ln i{position:absolute;inset:0;background:var(--white);transform:scaleX(0);transform-origin:left}.v-stock.on .sync .ln i{animation:syncl 1s var(--ease-io) forwards;animation-delay:calc(1.1s + var(--c) * .18s)}@keyframes syncl{0%{transform:scaleX(0);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}51%{transform-origin:right}to{transform:scaleX(1);transform-origin:right}}.sync .mono{text-align:right;color:#5e5e5e;transition:color .4s}.v-stock.on .sync .mono{color:var(--white);transition-delay:calc(1.5s + var(--c) * .18s)}.v-label{align-items:center;justify-content:flex-start;padding-top:18px;gap:0}.slot{width:min(86%,400px);height:6px;background:#0b0b0b;border:1px solid #333;flex:none;position:relative;z-index:1}.paper{width:min(80%,372px);background:#f4f4f4;color:var(--ink);padding:14px 16px 12px;display:flex;flex-direction:column;gap:8px;clip-path:inset(0 0 100% 0);transform:translateY(-8px)}.v-label.on .paper{clip-path:inset(0 0 0 0);transform:none;transition:clip-path 1.5s steps(24,end) .35s,transform 1.5s linear .35s}.pp-h{display:flex;justify-content:space-between;align-items:center;font-size:13px;border-bottom:2px solid var(--ink);padding-bottom:6px}.pp-h .mono{font-size:10px;letter-spacing:.1em}.bc{height:40px;display:flex;align-items:stretch;gap:0}.bc i{display:block;background:var(--ink)}.bc span{display:block}.trk{font-size:12px;letter-spacing:.2em;text-align:center}.pp-kv{margin:0;display:flex;flex-direction:column;gap:2px;border-top:1px solid #CFCFCF;padding-top:6px}.pp-kv div{display:grid;grid-template-columns:60px minmax(0,1fr);gap:8px;font-size:11px;line-height:1.6}.pp-kv dt{color:var(--brand)}.pp-kv dd{margin:0}.rail2{position:relative;padding:34px 0 6px;margin-top:6px}.rail2 .track{position:absolute;left:8%;right:8%;top:58px;height:1px;background:#333}.rail2 .track i{position:absolute;inset:0;background:var(--white);transform:scaleX(0);transform-origin:left}.v-ship.on .rail2 .track i{transform:scaleX(1);transition:transform 2.2s var(--ease-io) .4s}.rail2 ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative}.rail2 li{display:flex;flex-direction:column;align-items:center;gap:14px;font-size:13px;color:#6a6a6a;transition:color .4s;padding-top:17px}.rail2 li i{width:13px;height:13px;border:1px solid #555;background:#151515;transition:background .3s,border-color .3s}.v-ship.on .rail2 li{color:var(--white);transition-delay:calc(.45s + var(--c) * .72s)}.v-ship.on .rail2 li i{background:var(--white);border-color:var(--white);transition-delay:calc(.45s + var(--c) * .72s)}.rail2 .box{position:absolute;left:8%;top:6px;width:30px;height:30px;margin-left:-15px;display:grid;place-items:center;background:var(--white);color:var(--ink);transform:translate(0)}.rail2 .box svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}.v-ship.on .rail2 .box{animation:boxgo 2.2s var(--ease-io) .4s forwards}@keyframes boxgo{to{left:92%}}.v-ship .done{margin-top:auto;display:flex;align-items:center;gap:14px;font-size:14px;color:var(--white);border-top:1px dashed #2E2E2E;padding-top:12px}.v-ship .done .mono{font-size:10px;letter-spacing:.14em;background:var(--white);color:var(--ink);padding:3px 8px}.v-mail{justify-content:center}.mail{border:1px solid #2E2E2E;background:#1b1b1b;display:flex;flex-direction:column}.m-h{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid #2A2A2A}.v-mail .sent{font-size:11px;font-weight:700;color:var(--ink);background:var(--white);padding:2px 8px;opacity:0;transition:opacity .4s}.v-mail.on .sent{opacity:1;transition-delay:1.7s}.m-s{padding:12px 14px 4px;font-size:15px;font-weight:700;color:var(--white)}.m-b{padding:6px 14px 12px;display:flex;flex-direction:column;gap:7px}.m-b i{display:block;height:6px;background:#333;width:0}.v-mail.on .m-b i{width:var(--w);transition:width .7s var(--ease);transition-delay:calc(.45s + var(--c) * .22s)}.m-b .mono{font-size:11px;color:#cfcfcf;margin-top:4px}.m-f{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;border-top:1px solid #2A2A2A}.tpl{font-size:11px;color:#a3a3a3}.bars{display:flex;flex-direction:column;gap:4px}.bars li{display:grid;grid-template-columns:72px minmax(0,1fr) 72px;gap:14px;align-items:center;padding:9px 0;font-size:13px;color:#a3a3a3}.bars li.hot{color:var(--white)}.bars .mono{text-align:right}.bars .bar{height:14px;background:#1e1e1e;position:relative;display:flex}.bars .bar i{display:block;height:100%;background:#5e5e5e;width:0}.bars li.hot .bar i{background:#9a9a9a}.bars .bar b{display:block;height:100%;background:var(--white);width:0}.v-report.on .bar i{width:var(--w);transition:width 1.1s var(--ease-io);transition-delay:calc(.3s + var(--c) * .12s)}.v-report.on .bar b{width:var(--w);transition:width .6s var(--ease);transition-delay:1.5s}.v-report .add{margin-top:auto;display:flex;align-items:center;gap:14px;font-size:13px;color:#cfcfcf;border-top:1px dashed #2E2E2E;padding-top:12px}.v-report .add .mono{color:var(--ink);background:var(--white);padding:2px 8px;font-size:12px}.reg-d:before,.reg-d:after{background:#fff6}.oc{position:relative}.oc>.cm{border-color:#ffffff8c}.oc{background:#fff;border:0;color:var(--ink);box-shadow:0 40px 80px -30px #000000d9,0 0 0 1px #ffffff0f}.oc .oc-h{border-bottom-color:#eaeaea}.oc .oc-id b{color:var(--ink)}.oc .oc-ch{color:#666}.oc .oc-pill{background:var(--ink);color:var(--white)}.oc .oc-seg i{background:#e6e6e6}.oc .oc-seg i.on{background:var(--ink)}.oc .oc-f{border-top-color:#eaeaea}.oc .oc-f .label:first-child{color:#333}.oc .label{color:#777}.oc .vh{border-bottom-color:#e2e2e2}.oc .vi-img{background:#f5f5f5;border-color:#e8e8e8}.oc .vi-img svg{stroke:var(--ink)}.oc .kv>div{border-bottom-color:#eee}.oc .kv dt{color:#888}.oc .kv dd{color:#333}.oc .kv dd b{color:var(--ink)}.oc .sw i{box-shadow:inset 0 0 0 1px #cfcfcf}.oc .sw i.on{outline-color:var(--ink)}.oc .sz i{border-color:#ddd;color:#999}.oc .sz i.on{background:var(--ink);color:var(--white);border-color:var(--ink)}.oc .pub i{border-color:#e0e0e0;color:#aaa}.oc .pub i:before{background:#ddd}.oc .v-item.on .pub i{color:var(--ink);border-color:var(--ink)}.oc .v-item.on .pub i:before{background:var(--ink)}.oc .feed li{border-bottom-color:#eee;color:#888}.oc .feed li.hot{color:var(--ink);background:#f2f2f2}.oc .feed li.hot em{background:var(--ink);color:var(--white)}.oc .checks li{color:#aaa;border-bottom-color:#eee}.oc .cb{border-color:#ccc}.oc .cb:after{border-color:var(--white)}.oc .v-proc.on .checks li{color:var(--ink)}.oc .v-proc.on .cb{background:var(--ink);border-color:var(--ink)}.oc .chg span{color:#999}.oc .chg b{background:var(--ink);color:var(--white)}.oc .stk .big>span.mono{color:var(--ink)}.oc .stk .big small{color:#666}.oc .stk .big em{background:var(--ink);color:var(--white)}.oc .meter{background:#eaeaea}.oc .meter i{background:var(--ink)}.oc .sync li{border-bottom-color:#eee;color:#333}.oc .sync .ln{background:#eaeaea}.oc .sync .ln i{background:var(--ink)}.oc .sync .mono{color:#c4c4c4}.oc .v-stock.on .sync .mono{color:var(--ink)}.oc .slot{background:#2a2a2a;border-color:#1a1a1a}.oc .paper{background:var(--white);box-shadow:0 0 0 1px #dadada,0 10px 24px -12px #00000040}.oc .rail2 .track{background:#e0e0e0}.oc .rail2 .track i{background:var(--ink)}.oc .rail2 li{color:#aaa}.oc .rail2 li i{border-color:#ccc;background:var(--white)}.oc .v-ship.on .rail2 li{color:var(--ink)}.oc .v-ship.on .rail2 li i{background:var(--ink);border-color:var(--ink)}.oc .rail2 .box{background:var(--ink);color:var(--white)}.oc .v-ship .done{color:var(--ink);border-top-color:#e2e2e2}.oc .v-ship .done .mono{background:var(--ink);color:var(--white)}.oc .mail{background:#fafafa;border-color:#e6e6e6}.oc .m-h,.oc .m-f{border-color:#eaeaea}.oc .sent{background:var(--ink);color:var(--white)}.oc .m-s{color:var(--ink)}.oc .m-b i{background:#e2e2e2}.oc .m-b .mono{color:#555}.oc .tpl,.oc .bars li{color:#777}.oc .bars li.hot{color:var(--ink)}.oc .bars .bar{background:#f0f0f0}.oc .bars .bar i{background:#c4c4c4}.oc .bars li.hot .bar i{background:#777}.oc .bars .bar b{background:var(--ink)}.oc .v-report .add{color:#333;border-top-color:#e2e2e2}.oc .v-report .add .mono{background:var(--ink);color:var(--white)}.fm{margin:0;display:flex;flex-direction:column}.fm>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid #EEE;font-size:13px}.fm dt{font-size:11px;color:#888}.fm dd{margin:0;min-width:0;display:flex;gap:6px;align-items:center}.fm .tv{display:inline-block;color:var(--ink);white-space:nowrap;overflow:hidden;clip-path:inset(0 100% 0 0);border-right:1px solid transparent}.v-form.on .fm .tv{clip-path:inset(0 0 0 0);transition:clip-path .9s steps(16,end);transition-delay:calc(.35s + var(--c) * .45s)}.fm .opts i{font-style:normal;font-size:11px;border:1px solid #DDD;color:#999;padding:1px 8px;transition:background .3s,color .3s,border-color .3s}.v-form.on .fm .opts i.pick{background:var(--ink);color:var(--white);border-color:var(--ink);transition-delay:.9s}.fm-send{margin-top:auto;display:flex;align-items:center;gap:14px;min-height:30px}.fm-btn{font-size:12px;font-weight:700;background:var(--ink);color:var(--white);padding:6px 16px;flex:none;transition:opacity .3s}.fm-ok{font-size:12px;color:#333;opacity:0;transform:translate(-6px);transition:opacity .4s,transform .5s var(--ease)}.v-form.on .fm-btn{opacity:.35;transition-delay:2.3s}.v-form.on .fm-ok{opacity:1;transform:none;transition-delay:2.4s}.gantt{display:flex;flex-direction:column;gap:2px}.gantt li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:7px 0;font-size:13px;color:#333;border-bottom:1px solid #F0F0F0}.gantt .tr{position:relative;height:12px;background:repeating-linear-gradient(90deg,#f2f2f2 0 calc(10% - 1px),#fff calc(10% - 1px) 10%)}.gantt .tr i{position:absolute;top:0;bottom:0;left:var(--s);width:0;background:var(--ink)}.v-prop.on .gantt .tr i{width:var(--w);transition:width .8s var(--ease-io);transition-delay:calc(.3s + var(--c) * .3s)}.prop-f{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px;padding-top:10px;border-top:1px dashed #E2E2E2}.prop-f span{font-size:11px;border:1px solid #DDD;padding:2px 8px;color:#333}.smap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}.smap .root{font-family:var(--f-mono);font-size:12px;letter-spacing:.12em;border:1.5px solid var(--ink);padding:6px 22px;position:relative;opacity:0;transition:opacity .4s}.smap .root:after{content:"";position:absolute;left:50%;top:100%;width:1px;height:20px;background:var(--ink);transform:scaleY(0);transform-origin:top;transition:transform .4s var(--ease)}.smap .kids{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;position:relative;margin-top:20px;padding-top:20px}.smap .kids:before{content:"";position:absolute;top:0;left:12.5%;right:12.5%;height:1px;background:var(--ink);transform:scaleX(0);transition:transform .6s var(--ease-io)}.smap .kids>div{position:relative;border:1px solid #CFCFCF;padding:10px 4px 8px;text-align:center;font-size:12.5px;font-weight:700;display:flex;flex-direction:column;gap:2px;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .5s var(--ease)}.smap .kids>div:before{content:"";position:absolute;left:50%;top:-21px;width:1px;height:20px;background:var(--ink)}.smap .kids small{font-family:var(--f-mono);font-size:9.5px;font-weight:400;color:#888;letter-spacing:.04em}.v-map.on .smap .root{opacity:1;transition-delay:.25s}.v-map.on .smap .root:after{transform:scaleY(1);transition-delay:.55s}.v-map.on .smap .kids:before{transform:scaleX(1);transition-delay:.8s}.v-map.on .smap .kids>div{opacity:1;transform:none;transition-delay:calc(1.1s + var(--c) * .15s)}.v-design{justify-content:center}.dz{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:center;flex:1;min-height:0}.dz-page{border:1px solid var(--ink);padding:10px;display:flex;flex-direction:column;gap:7px;height:100%;max-height:220px;min-height:0}.dz-page .b{display:block;background:#e6e6e6;transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}.dz-page .dz-nav{height:6px;width:40%;background:var(--ink)}.dz-page .dz-hero{flex:1;background:#f2f2f2;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;padding:10px}.dz-page .dz-hero em{display:block;height:7px;width:55%;background:#555}.dz-page .dz-hero em+em{width:35%;background:#999}.dz-page .dz-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dz-page .dz-row .b{height:28px}.dz-page .dz-foot{height:9px;background:var(--ink)}.v-design.on .dz-page .b{transform:none;transition-delay:calc(.25s + var(--c) * .14s)}.dz-spec{display:flex;flex-direction:column;gap:6px}.dz-spec b{font-size:28px;line-height:1.2;color:var(--ink);font-weight:700;margin-bottom:6px}.sw2{display:flex;gap:6px}.sw2 i{width:22px;height:22px;box-shadow:inset 0 0 0 1px #ddd}.v-build{justify-content:center}.log{background:var(--ink);color:#cfcfcf;font-family:var(--f-mono);font-size:12px;line-height:1.5;padding:14px 16px;display:flex;flex-direction:column;gap:7px;flex:1;min-height:0;justify-content:center}.log span{display:flex;justify-content:space-between;gap:12px;opacity:0;transform:translate(-6px);transition:opacity .3s,transform .4s var(--ease)}.log span:before{content:"✓";color:var(--white);margin-right:10px}.log span b{font-weight:400;color:#7a7a7a;margin-left:auto}.log .lcur:before{content:">"}.log .lcur{color:var(--white);justify-content:flex-start}.v-build.on .log span{opacity:1;transform:none;transition-delay:calc(.3s + var(--c) * .32s)}.v-build.on .log .lcur{animation:blink 1s steps(1) 2.4s infinite}@keyframes blink{50%{opacity:0}}.url{display:flex;align-items:center;gap:8px;border:1px solid #E2E2E2;background:#fafafa;padding:8px 10px;font-family:var(--f-mono);font-size:12px;color:#333}.url svg{width:12px;height:12px;fill:none;stroke:#333;stroke-width:1.2}.url .live{margin-left:auto;font-family:var(--f-jp);font-size:11px;font-weight:700;background:var(--ink);color:var(--white);padding:2px 10px;opacity:0;transition:opacity .4s}.v-launch.on .url .live{opacity:1;transition-delay:1.7s}.bars.nonum li{grid-template-columns:64px minmax(0,1fr)}.oc .v-proc .auto{border-color:#ccc;color:#555}.steps-wrap{position:relative}.steps{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}.steps:before{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:var(--line-d)}.steps-fill{position:absolute;left:0;top:5px;width:100%;height:1px;background:var(--white);transform-origin:left;transform:scaleX(var(--p, 0))}.step{position:relative;display:flex;flex-direction:column;gap:10px;color:#5e5e5e;transition:color .5s var(--ease);cursor:pointer;padding-right:6px}.step .dot{width:11px;height:11px;background:var(--ink);box-shadow:inset 0 0 0 1px #5e5e5e;transition:background .4s,box-shadow .4s;position:relative;z-index:1}.step .sn{font-family:var(--f-mono);font-size:10px;letter-spacing:.1em}.step .st{font-size:clamp(10.5px,.86vw,12.5px);font-weight:700;line-height:1.4;margin-top:-4px;white-space:nowrap;letter-spacing:-.01em}.step .sen,.step .sd{display:none}.step:hover,.step.passed{color:#a3a3a3}.step.passed .dot{background:#8c8c8c;box-shadow:none}.step.on{color:var(--white)}.step.on .dot{background:var(--white);box-shadow:0 0 0 5px #ffffff1f}.ops-foot{position:absolute;left:0;right:0;bottom:28px}.ops-foot .wrap{display:flex;justify-content:space-between}.ops-prog{font-variant-numeric:tabular-nums}.flow{padding-block:clamp(96px,10vw,150px) clamp(110px,11vw,170px);border-top:1px solid var(--line-d)}.flow-map{position:relative;margin-top:clamp(56px,6vw,88px);display:flex;flex-direction:column;gap:clamp(72px,8vw,120px)}.flow-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.flow-svg path{fill:none;stroke:#4a4a4a;stroke-width:1}.js-anim .flow-svg path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s var(--ease-io);transition-delay:var(--d, 0s)}.flow-map.is-in .flow-svg path{stroke-dashoffset:0}.flow-svg circle{fill:var(--white)}.js-anim .flow-svg circle{opacity:0;transition:opacity .6s 1.6s}.flow-map.is-in .flow-svg circle{opacity:1}.chips{display:grid;gap:12px;position:relative;z-index:1}.chips.c5{grid-template-columns:repeat(5,minmax(0,1fr))}.chips.c3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:980px;margin-inline:auto;width:100%}.chip{height:56px;border:1px solid #444;background:var(--ink);display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;font-weight:500;color:#dadada;text-align:center;padding:0 10px;line-height:1.3}.chip small{font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;color:var(--mute)}.hub{position:relative;z-index:1;background:var(--white);color:var(--ink);display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:clamp(26px,3vw,40px) clamp(20px,3.4vw,48px)}.hub-c{display:flex;align-items:center;justify-content:center;gap:clamp(12px,1.4vw,20px)}.hub-t{font-family:var(--f-en);font-weight:600;font-size:clamp(26px,3.2vw,46px);letter-spacing:-.02em;line-height:1}.flow .h2 .q{color:#8c8c8c}.hub p{font-size:14px;color:var(--brand);line-height:1.8}.hub-mk{width:clamp(30px,3vw,44px);height:clamp(30px,3vw,44px);fill:var(--brand);flex:none}.hub .label{color:var(--brand)}.works{position:relative}.works-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:clamp(28px,4vh,48px);padding-top:76px}.works-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.works-head .h2{font-size:clamp(30px,3.6vw,52px)}.works-track{display:flex;gap:clamp(20px,2.4vw,36px);padding-inline:var(--gut);will-change:transform;width:max-content}.wk{width:clamp(300px,44vw,660px);flex:none;display:flex;flex-direction:column;gap:18px}.wk-vis{position:relative;aspect-ratio:16/10;background:#f4f4f4;overflow:hidden;border:1px solid var(--line)}.wk-vis .mock{position:absolute;inset:8% 8% 0;background:var(--white);border:1px solid var(--ink);border-bottom:0;display:flex;flex-direction:column;transition:transform 1s var(--ease)}.wk-vis .shot{position:absolute;inset:8% 8% 0;background:var(--white);border:1px solid var(--ink);border-bottom:0;overflow:hidden;transition:transform 1s var(--ease)}.wk-vis .shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}.wk:hover .mock,.wk:hover .shot{transform:translateY(-10px)}.mock .mb{height:22px;border-bottom:1px solid var(--ink);display:flex;align-items:center;gap:4px;padding:0 8px;flex:none}.mock .mb i{width:6px;height:6px;border:1px solid var(--ink);border-radius:50%}.mock .mc{flex:1;padding:12px;display:grid;gap:8px;overflow:hidden}.m1 .mc{grid-template-rows:6px 1fr 26px}.m1 .hr{background:var(--brand);display:flex;align-items:flex-end;padding:12px}.m1 .hr i{display:block;width:40%;height:10px;background:var(--white)}.m2 .mc{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:6px 1fr 1fr}.m2 .mc>i:first-child{grid-column:1/-1}.m2 .p{background:var(--line);display:flex;flex-direction:column;justify-content:flex-end;padding:6px;gap:3px}.m2 .p b{display:block;height:4px;background:var(--mute);width:70%}.m2 .p b+b{width:40%;background:var(--ink)}.m3 .mc{grid-template-columns:120px minmax(0,1fr);gap:10px}.m3 .side{background:var(--ink)}.m3 .tbl{display:flex;flex-direction:column;gap:0;font-family:var(--f-mono);font-size:9.5px;color:var(--brand)}.m3 .tbl div{display:grid;grid-template-columns:52px minmax(0,1fr) 60px;gap:8px;padding:6px 0;border-bottom:1px solid var(--line);align-items:center;white-space:nowrap}.m3 .tbl div:first-child{color:var(--mute)}.m3 .tbl em{font-style:normal;border:1px solid var(--ink);color:var(--ink);text-align:center;padding:1px 0}.m3 .tbl em.o{background:var(--ink);color:var(--white)}.m4 .mc{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.m4 .old,.m4 .new{display:grid;gap:6px;grid-template-rows:6px 1fr 16px 16px;position:relative;padding-top:18px}.m4 .old>i{background:none;border:1px dashed var(--mute)}.m4 .old>i:nth-child(2){transform:rotate(-2deg) translate(4px,4px)}.m4 .new>i{background:var(--line)}.m4 .new>i:nth-child(1){background:var(--ink)}.m4 .tag{position:absolute;left:0;top:0;font-family:var(--f-mono);font-size:9px;letter-spacing:.1em;color:var(--mute)}.mock i{display:block;background:var(--line)}.wk-no{position:absolute;left:16px;bottom:14px;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;color:var(--brand);background:#f4f4f4;padding:3px 6px}.wk-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.wk-meta h3{font-size:clamp(18px,1.6vw,22px);font-weight:700;line-height:1.5}.wk-meta p{font-size:13px;color:var(--mute);margin-top:4px}.wk-meta p .mi{display:inline-block;white-space:nowrap}.wk-meta h3{word-break:auto-phrase;text-wrap:balance}.works-foot{display:flex;justify-content:space-between;align-items:center;gap:24px}.wbar{flex:1;max-width:420px;height:1px;background:var(--line);position:relative}.wbar i{position:absolute;inset:0;background:var(--ink);transform-origin:left;transform:scaleX(var(--p, 0))}.wk-end{width:clamp(260px,26vw,380px);flex:none;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:20px;border-left:1px solid var(--line);padding-left:clamp(20px,2.4vw,36px)}.wk-end p{font-size:14px;color:var(--brand);line-height:1.9}.mnt{background:#efefef;padding-block:clamp(96px,11vw,168px)}.mnt-h{font-size:clamp(36px,4.8vw,72px);font-weight:700;line-height:1.22;letter-spacing:-.03em}.mnt-h .g{color:var(--brand)}.cases{margin-top:clamp(56px,6vw,88px);border-top:1px solid var(--ink)}.case{display:grid;grid-template-columns:80px minmax(0,1fr) 56px minmax(0,1fr);align-items:center;gap:16px 24px;padding:clamp(26px,2.8vw,36px) 0;border-bottom:1px solid #D2D2D2}.case .cn{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;color:var(--mute)}.case .cp{font-size:clamp(20px,2vw,28px);font-weight:700;position:relative;justify-self:start;transition:color .8s var(--ease)}.case .cp>span{background:linear-gradient(currentColor,currentColor) 0 56%/0 1.5px no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .9s var(--ease-io) .1s}.case.solved .cp>span{background-size:100% 1.5px}.case .ca{width:56px;height:1px;background:#bdbdbd;position:relative}.case .ca:after{content:"";position:absolute;right:0;top:-3.5px;border:4px solid transparent;border-left:6px solid #BDBDBD;border-right:0}.case .cs{font-size:clamp(16px,1.5vw,21px);font-weight:700;color:var(--ink);display:flex;align-items:center;gap:12px}.case .cs:before{content:"";width:8px;height:8px;background:var(--ink);flex:none}.js-anim .case .cs{opacity:0;transform:translate(-12px);transition:opacity .8s var(--ease) .5s,transform 1s var(--ease) .5s}.case.solved .cp{color:#9a9a9a}.js-anim .case.solved .cs{opacity:1;transform:none}.mnt-end{margin-top:clamp(64px,7vw,104px);display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}.mnt-end p{font-size:clamp(22px,2.4vw,34px);font-weight:700;line-height:1.5}.about{padding-block:clamp(96px,11vw,168px)}.about-in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:48px;align-items:start}.about-ph{grid-column:1/span 5;position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--line)}.about-ph img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;object-position:50% 68%;will-change:transform}.about-ph .cap{position:absolute;left:14px;bottom:12px;font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;color:var(--white);mix-blend-mode:difference}.about-tx{grid-column:7/span 6;display:flex;flex-direction:column;gap:28px;padding-top:8px}.info{border-top:1px solid var(--ink);margin-top:8px}.info div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.8}.info dt{font-weight:700}.info dd{margin:0;color:var(--brand)}.info .info-sub{display:block;margin-top:2px;font-size:12px;color:var(--mute)}.note-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px 24px;border:1px solid var(--line);transition:border-color .4s}.note-card:hover{border-color:var(--ink)}.note-card b{display:block;font-size:15px}.note-card span.s{font-size:13px;color:var(--mute)}.ct{position:relative;overflow:hidden;padding-block:clamp(110px,12vw,180px) 0}.ct-mark{position:absolute;right:-6%;top:-10%;width:min(62vw,820px);height:auto;fill:#171717;pointer-events:none;transform:rotate(var(--rot, 0deg));transition:transform .2s linear}.ct-in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:48px;align-items:end;padding-bottom:clamp(96px,10vw,150px);border-bottom:1px solid var(--line-d)}.ct-l{grid-column:1/span 8;display:flex;flex-direction:column;gap:28px}.ct-h{font-size:clamp(36px,5vw,76px);font-weight:900;line-height:1.2;letter-spacing:-.03em}.ct-h .g{color:#8c8c8c}.ct-r{grid-column:10/span 3;justify-self:end}.mag{width:clamp(150px,14vw,210px);aspect-ratio:1;border-radius:50%;background:var(--white);color:var(--ink);display:grid;place-items:center;text-align:center;font-weight:700;font-size:15px;line-height:1.5;position:relative;overflow:hidden;isolation:isolate;transition:transform .6s var(--ease)}.mag:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--line);transform:scale(0);transition:transform .6s var(--ease);z-index:-1}.mag:hover:before{transform:scale(1)}.mag .mi{display:flex;flex-direction:column;align-items:center;gap:8px;transition:transform .6s var(--ease)}.ft{padding-block:48px 40px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:32px;align-items:start}.ft-l{grid-column:1/span 5;display:flex;flex-direction:column;gap:14px}.ft-l .logo{color:#a3a3a3}@media(max-width:900px){.ct-mark{width:120vw;right:-40%;top:auto;bottom:10%}}.ft-l p{font-size:13px;color:var(--mute)}.ft-nav{grid-column:7/span 6;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 24px;font-size:13px}.ft-nav a{color:#cfcfcf;transition:color .3s}.ft-nav a:hover{color:var(--white)}.ft-b{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;padding-top:24px;border-top:1px solid var(--line-d)}.cur{position:fixed;left:0;top:0;z-index:90;pointer-events:none;display:none}.has-cursor .cur{display:block}.cur-dot{position:fixed;left:0;top:0;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--white);mix-blend-mode:difference;z-index:91;pointer-events:none}.cur:not(.live) .cur-ring,.cur:not(.live) .cur-dot{opacity:0}.cur-ring{position:fixed;left:0;top:0;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;border:1px solid var(--white);mix-blend-mode:difference;z-index:90;pointer-events:none;display:grid;place-items:center;transition:width .45s var(--ease),height .45s var(--ease),margin .45s var(--ease),background .45s,opacity .3s}.cur-ring span{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;color:var(--ink);opacity:0;transition:opacity .3s}.cur.hover .cur-ring{width:64px;height:64px;margin:-32px 0 0 -32px}.cur.view .cur-ring{width:92px;height:92px;margin:-46px 0 0 -46px;background:var(--white)}.cur.view .cur-ring span{opacity:1}.cur.view .cur-dot{opacity:0}@media(max-width:1100px){.nav a.nl{display:none}.menu-btn{display:inline-flex}.nav{gap:16px}.hero-copy{grid-column:1/span 7}.hero-vis{grid-column:8/span 5}}@media(max-width:900px){.hero-foot{display:none}.hd-in{height:64px}.nav .btn{display:none}.menu-btn{display:inline-flex}.hero{padding-top:64px}.hero{min-height:0}.hero-in{min-height:0;row-gap:24px;padding-block:28px 56px}.hero-copy{display:contents}.hero-in>*,.hero-copy>*{grid-column:1/-1;min-width:0}.hero-in>.reg,.ops-in>.reg{grid-column:auto}.hero-meta{order:1}.h1{order:2;font-size:clamp(36px,13vw,54px);line-height:1.28}.h1 .no{display:none}.hero-vis{order:3;gap:14px;margin-top:18px}.hero-vis.fit .dv-wrap{flex:1}.hero-vis.fit .device{aspect-ratio:auto;flex:1;min-height:0}.hero-body{order:4;margin-top:8px}.hero-cta{order:5;max-width:none;gap:10px}.hero-cta .btn{height:54px;padding:0 clamp(12px,3.6vw,18px);font-size:clamp(12px,3.4vw,14px);gap:8px;white-space:nowrap;letter-spacing:0}.hero-meta .label:nth-child(2){display:none}.hero-meta .since-m{display:block}.device{aspect-ratio:16/10}.dv-bar{height:26px;padding:0 10px;gap:5px}.dv-bar i{width:7px;height:7px}.dv-url{height:16px;font-size:9px;margin-left:6px}.dv-body{padding:10px;gap:7px;grid-template-rows:7px 1fr auto 12px}.b-card{height:34px;padding:5px;gap:3px}.b-card em{width:7px}.b-hero{padding:10px}.b-hero .ttl i{height:7px}.dv-chip{font-size:9px;padding:4px 8px;right:10px;top:10px}.dv-status{gap:8px 14px}.dv-desc{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-body{grid-template-columns:minmax(0,1fr)}.hero-grid{top:64px}.reg{display:none}.sec-head .sh-l,.sec-head .sh-r{grid-column:1/-1}.svc-grid{grid-template-columns:minmax(0,1fr)}.svc-card:nth-child(odd){border-right:0}.svc-card{grid-template-columns:minmax(0,1fr)}.svc-mark{width:72vw;right:-24vw;top:-6vw}.svc-ill{justify-self:stretch;max-width:none;order:-1;background:#f6f6f6;border:1px solid var(--line);padding:clamp(24px,8vw,40px) 20px;display:grid;place-items:center}.svc-ill svg{width:100%;max-width:260px}.svc-top{order:-2}.ops{height:auto}.ops-sticky{position:static;height:auto;display:block;padding-block:96px 72px}.ops-sticky{padding-block:56px 64px}.ops-in{padding-top:0;row-gap:20px}.ops-l,.ops-r{display:contents}.ops-in>*,.ops-l>*,.ops-r>*{grid-column:1/-1;min-width:0}.ops-l>.label{order:1}.ops-h{order:2;font-size:clamp(30px,8.6vw,38px)}.oc{order:3}.steps-wrap{order:4;margin-top:-8px}.ops-panel{order:5;display:grid;min-height:0;margin-top:8px;padding-top:18px;gap:6px 18px}.ops-panel .pn{font-size:36px}.ops-panel .pt{font-size:18px}.ops-panel .pd{display:block;font-size:15px;line-height:1.85}.ops-l>.lead{order:6;margin-top:8px}.oc-h{padding:12px 14px}.oc-seg{padding:0 14px}.oc-f{padding:10px 14px}.oc-body{height:248px}.oc-f{display:none}.fm>div{grid-template-columns:56px minmax(0,1fr);padding:6px 0;font-size:12px}.fm-ok{font-size:11px}.gantt li{grid-template-columns:56px minmax(0,1fr);padding:5px 0;font-size:12px}.smap .kids{gap:6px}.smap .kids>div{font-size:11px;padding:8px 2px 6px}.dz{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px}.dz-spec b{font-size:20px}.log{font-size:10.5px;padding:10px 12px;gap:5px}.step .st{font-size:clamp(10px,2.8vw,12px);letter-spacing:-.02em}.step,.step.passed{padding:7px 6px 8px}.step,.step.passed{padding:7px 8px 8px}.ov{padding:14px;gap:10px}.vi-img svg{width:70%}.kv>div{padding:5px 0}.feed li{padding:8px 0}.checks li{padding:7px 0}.stk .big>span.mono{font-size:52px}.sync li{padding:6px 0}.paper{padding:10px 12px;gap:6px}.bc{height:32px}.rail2{padding-top:30px}.bars li{padding:6px 0}.v-item{gap:14px}.vi-img{width:34%}.kv>div{grid-template-columns:48px minmax(0,1fr);gap:8px;font-size:12px;padding:6px 0}.feed li{grid-template-columns:44px minmax(0,1fr) 52px 40px;gap:8px;font-size:12px}.feed li .r{display:none}.v-stock{flex-direction:column;align-items:stretch;gap:12px}.stk{width:100%}.sync li{padding:8px 0}.checks li{font-size:13px}.chg{font-size:11px}.oc-f .label:last-child{display:none}.oc-id .label,.plat-cap{display:none}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.steps:before{display:none}.step,.step.passed{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 8px 10px;border:1px solid #333;background:#151515;color:#a3a3a3;cursor:pointer;transition:background .35s,color .35s,border-color .35s}.step .dot,.step .sd,.step .sen{display:none}.step .sn{font-size:10px;letter-spacing:.08em;color:#6a6a6a;transition:color .35s}.step .st{font-size:12px;margin-top:0;line-height:1.35;white-space:nowrap}.step.passed{color:#cfcfcf;border-color:#3a3a3a}.step.on{background:var(--white);border-color:var(--white);color:var(--ink)}.step.on .sn{color:var(--brand)}.steps-fill,.ops-foot{display:none}.chips.c5{grid-template-columns:repeat(2,minmax(0,1fr))}.chips.c5 .chip:last-child{grid-column:1/-1}.chips.c3,.hub{grid-template-columns:minmax(0,1fr)}.flow-map{gap:64px}.works{height:auto!important}.works-sticky{position:static;height:auto;padding-block:96px 80px}.works-track{width:auto;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gut);-webkit-overflow-scrolling:touch;transform:none!important;padding-bottom:8px;scrollbar-width:none}.works-track::-webkit-scrollbar{display:none}.wk{width:82vw;scroll-snap-align:start}.wk-end{width:70vw;scroll-snap-align:end}.works-head{flex-direction:column;align-items:flex-start}.wbar{display:none}.cases{border-top:0;display:flex;flex-direction:column;gap:12px}.case{grid-template-columns:minmax(0,1fr);gap:0;padding:22px 20px 20px;background:var(--white);border:0}.case .cn{color:var(--brand);margin-bottom:10px}.case .cp{font-size:21px;line-height:1.5}.case .ca{display:none}.case .cs{font-size:18px;line-height:1.6;align-items:flex-start;margin-top:14px;padding-top:14px;border-top:1px dashed #CFCFCF}.case .cs:before{margin-top:.62em}.about-ph,.about-tx{grid-column:1/-1}.about-ph{aspect-ratio:4/4.4}.ct-l,.ct-r{grid-column:1/-1}.ct{padding-block:80px 0}.ct-in{row-gap:4px;padding-bottom:44px}.ct-l{gap:22px}.ct-r{justify-self:end}.mag{width:112px;font-size:12.5px;line-height:1.45}.mag .mi{gap:6px}.mag svg{width:18px;height:12px}.ft{padding-block:32px 24px;row-gap:24px}.ft-l,.ft-nav{grid-column:1/-1}.ft-l{gap:10px}.ft-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.ft-b{padding-top:18px}.mnt-end .btn{width:100%;justify-content:space-between}}@media(max-width:900px)and (max-height:620px){.hero-in{row-gap:16px;padding-block:18px 48px}.h1{font-size:40px;line-height:1.2}.hero-vis{margin-top:14px}.reg{display:none}.ops-sticky{padding-block:40px 56px}.ops-l>.label{display:none}.ops-h{font-size:30px}.oc-body{height:212px}.ov{padding:10px 12px;gap:6px}.vi-img{width:30%}.kv>div{padding:3px 0}.v-stock,.stk{gap:6px}.stk .big>span.mono{font-size:40px}.sync li{padding:3px 0}.feed li{padding:6px 0}.checks li{padding:5px 0}.bars li{padding:4px 0}.paper{gap:4px}.bc{height:26px}.fm>div{padding:4px 0}.gantt li{padding:3px 0}.smap .kids{margin-top:14px;padding-top:14px}.smap .kids>div:before{top:-15px;height:14px}.smap .root:after{height:14px}.log{gap:3px}}@media(max-width:520px){.dv-chart{inset:10px 10px 10px 50%}.m3 .mc{grid-template-columns:48px minmax(0,1fr)}.info div{grid-template-columns:88px minmax(0,1fr)}.ft-b{flex-direction:row}}@media(min-width:901px)and (max-height:980px){.h1{font-size:clamp(42px,5.2vw,76px);line-height:1.2}.hero-copy{gap:26px}.hero-in{padding-block:34px 30px}.hero-body .lead{line-height:1.9}}@media(min-width:901px)and (max-height:780px){.h1{font-size:clamp(40px,4.4vw,58px)}.hero-copy{gap:14px}.hero-in{padding-block:18px 14px}.hero-body .lead{font-size:14px;line-height:1.8}.btn{height:50px}.tb-c{height:40px}.hero-foot{padding-bottom:12px}.hero-vis{gap:12px}}@media(min-width:901px)and (max-height:760px){.ops-h{font-size:clamp(34px,4.2vw,58px)}.ops-l{gap:18px}.ops-panel{min-height:0;padding-top:16px}.oc-body{height:220px}.fm>div{padding:4px 0}.v-form .vh{display:none}.gantt li{padding:4px 0}.log{gap:4px;padding:10px 14px}.smap .kids{margin-top:14px;padding-top:14px}.smap .kids>div:before{top:-15px;height:14px}.smap .root:after{height:14px}.ov{padding:16px 20px;gap:10px}.ops-panel .pd{font-size:15px;line-height:1.75}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.plat-row{animation:none}}.admin-bar .hd{top:32px}@media(max-width:782px){.admin-bar .hd{top:46px}}.sub{padding-block:clamp(132px,14vw,200px) clamp(80px,9vw,140px)}.sub-in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:56px}.sub-head{grid-column:1/span 5;display:flex;flex-direction:column;gap:28px;align-self:start}.sub-head .h2{font-size:clamp(30px,3.4vw,48px)}.cform{grid-column:6/-1}.ct-sub{padding-block:0}.cform .wpcf7-form{display:grid;gap:0;border-top:1px solid var(--ink)}.cf-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;padding:28px 0;border-bottom:1px solid var(--line);align-items:start}.cf-label{font-size:14px;font-weight:700;line-height:1.7;padding-top:12px}.cf-label em{display:inline-block;margin-left:10px;font-style:normal;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;color:var(--mute);font-weight:400;vertical-align:1px}.cf-label em.req{color:var(--ink)}.cform input[type=text],.cform input[type=email],.cform input[type=tel],.cform textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:0;padding:14px 16px;line-height:1.7;transition:border-color .3s var(--ease)}.cform textarea{min-height:200px;resize:vertical}.cform input::placeholder,.cform textarea::placeholder{color:#b5b5b5}.cform input:focus,.cform textarea:focus{outline:0;border-color:var(--ink)}.cform .wpcf7-radio{display:flex;flex-wrap:wrap;gap:10px}.cform .wpcf7-list-item{margin:0}.cform .wpcf7-radio label{display:block;cursor:pointer}.cform .wpcf7-radio input{position:absolute;opacity:0;pointer-events:none}.cform .wpcf7-radio .wpcf7-list-item-label{display:block;padding:11px 18px;font-size:14px;border:1px solid var(--line);transition:background .3s,color .3s,border-color .3s}.cform .wpcf7-radio label:hover .wpcf7-list-item-label{border-color:var(--ink)}.cform .wpcf7-radio input:checked+.wpcf7-list-item-label{background:var(--ink);color:var(--white);border-color:var(--ink)}.cform .wpcf7-radio input:focus-visible+.wpcf7-list-item-label{outline:2px solid var(--ink);outline-offset:2px}.cf-consent{padding:28px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--brand)}.cf-consent .wpcf7-list-item{margin:0}.cf-consent label{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.cf-consent input{margin-top:6px;accent-color:var(--ink)}.cf-consent a{text-decoration:underline;text-underline-offset:3px}.cf-submit{padding-top:36px;display:flex;align-items:center;gap:20px}.cform input[type=submit]{height:56px;padding:0 40px;font:inherit;font-size:14px;font-weight:700;letter-spacing:.02em;color:var(--white);background:var(--ink);border:0;border-radius:0;cursor:pointer;transition:background .4s var(--ease)}.cform input[type=submit]:hover{background:var(--brand)}.cform .wpcf7-spinner{margin:0}.cform .wpcf7-not-valid-tip{display:block;margin-top:8px;font-size:12px;color:var(--ink);font-family:var(--f-mono);letter-spacing:.04em}.cform .wpcf7-not-valid{border-color:var(--ink)!important;background:#f6f6f6!important}.cform .wpcf7 form .wpcf7-response-output{margin:28px 0 0;padding:20px 24px;border:1px solid var(--ink);font-size:15px;line-height:1.9;font-weight:700;color:var(--ink)}.cform .wpcf7 form.sent .wpcf7-response-output{background:#f6f6f6;border-width:2px}.cform .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);height:1px;width:1px}@media(max-width:900px){.sub-in{display:block}.sub-head{margin-bottom:48px}.cf-row{grid-template-columns:1fr;gap:12px;padding:22px 0}.cf-label{padding-top:0}.cf-submit{flex-direction:column;align-items:stretch}.cform input[type=submit]{width:100%}}.sub-head--wide{grid-column:auto;max-width:880px}.sub-works .sub-head,.sub-work .sub-head{margin-bottom:48px}.wfilter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:56px}.wfilter a{padding:10px 18px;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;border:1px solid var(--line);transition:background .3s,color .3s,border-color .3s}.wfilter a:hover{border-color:var(--ink)}.wfilter a[aria-current=page]{background:var(--ink);color:var(--white);border-color:var(--ink)}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,5vw,72px) clamp(20px,2.4vw,36px)}.works-grid .wk{width:auto}.works-empty{padding:80px 0;color:var(--mute);text-align:center}.nav-links{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:72px;font-family:var(--f-mono);font-size:12px;letter-spacing:.1em}.nav-links .page-numbers{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);transition:border-color .3s,background .3s,color .3s}.nav-links a.page-numbers:hover{border-color:var(--ink)}.nav-links .current{background:var(--ink);color:var(--white);border-color:var(--ink)}.nav-links .dots{border:0}.screen-reader-text{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px}.wback{display:inline-block;margin-bottom:32px;transition:color .3s}.wback:hover{color:var(--ink)}.work-vis{max-width:1040px}.work-vis .wk-vis{display:block;cursor:default}.work-vis .shot img{width:100%;height:100%;object-fit:cover;object-position:top}.work-body{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;row-gap:40px;margin-top:clamp(48px,6vw,88px)}.work-info{grid-column:1/span 4;align-self:start}.work-info a{text-decoration:underline;text-underline-offset:3px}.prose{grid-column:6/-1;font-size:16px;line-height:2.1;color:var(--brand);max-width:42em}.prose>*+*{margin-top:1.6em}.prose h2{font-size:clamp(22px,2vw,28px);line-height:1.5;color:var(--ink);margin-top:2.4em}.prose h3{font-size:18px;color:var(--ink);margin-top:2em}.prose img{max-width:100%;height:auto}.prose ul,.prose ol{padding-left:1.4em}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li+li{margin-top:.4em}.prose a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.wpager{display:flex;justify-content:space-between;gap:24px;margin-top:clamp(64px,8vw,112px);padding-top:32px;border-top:1px solid var(--line)}.wpager a{display:flex;flex-direction:column;gap:8px;max-width:46%}.wpager .next{text-align:right;margin-left:auto}.wpager b{font-size:16px;line-height:1.6;transition:color .3s}.wpager a:hover b{color:var(--brand)}.sub-cta{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;padding-block:clamp(72px,9vw,128px) clamp(56px,7vw,96px);border-bottom:1px solid var(--line-d)}.sub-cta-h{margin-top:20px;font-size:clamp(24px,3vw,40px);font-weight:700;line-height:1.5;max-width:16em}.sub-cta .btn-line{color:var(--white);box-shadow:inset 0 0 0 1px var(--white)}.sub-cta .btn-line:before{background:var(--white)}.sub-cta .btn-line:hover{color:var(--ink)}@media(max-width:900px){.works-grid{grid-template-columns:1fr}.work-body{display:block}.work-info{margin-bottom:40px}.sub-cta{flex-direction:column;align-items:flex-start}.wpager{flex-direction:column}.wpager a{max-width:none}.wpager .next{text-align:left;margin-left:0}}.sub-page .sub-head{margin-bottom:48px}.prose--page{grid-column:auto;max-width:46em}.prose--page h2{margin-top:2.8em;padding-top:1.4em;border-top:1px solid var(--line);font-size:clamp(20px,1.8vw,24px)}.prose--page h2:first-child{margin-top:0;padding-top:0;border-top:0}.prose--page dl{display:grid;grid-template-columns:8em minmax(0,1fr);gap:12px 20px;margin:1.6em 0 0}.prose--page dt{font-weight:700;color:var(--ink)}.prose--page dd{margin:0}.prose--page .note{padding:16px 20px;border:1px solid var(--ink);color:var(--ink);font-size:14px;line-height:1.9}@media(max-width:900px){.prose--page dl{grid-template-columns:1fr;gap:4px}.prose--page dd{margin-bottom:12px}}.cf-captcha .wpcf7-turnstile:not(:empty){margin-top:20px}.works-note{display:flex;gap:20px;align-items:baseline;margin-top:clamp(48px,6vw,80px);padding-top:28px;border-top:1px solid var(--line);font-size:13px;line-height:2;color:var(--brand);max-width:46em}.works-note .label{flex:none;color:var(--ink)}@media(max-width:900px){.works-note{flex-direction:column;gap:6px}}
