@font-face{font-family:Orbitron;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/orbitron-400.woff2)format("woff2")}@font-face{font-family:Orbitron;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/orbitron-500.woff2)format("woff2")}@font-face{font-family:Orbitron;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/orbitron-700.woff2)format("woff2")}@font-face{font-family:Orbitron;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/orbitron-900.woff2)format("woff2")}@font-face{font-family:Michroma;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/michroma-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/inter-300.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/inter-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/inter-500.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/inter-600.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/inter-700.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/inter-800.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/inter-900.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jetbrains-mono-400.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jetbrains-mono-500.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/jetbrains-mono-700.woff2)format("woff2")}@font-face{font-family:Noto Serif SC;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/noto-serif-sc-400.woff2)format("woff2")}@font-face{font-family:Noto Serif SC;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/noto-serif-sc-600.woff2)format("woff2")}@font-face{font-family:Noto Serif SC;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/noto-serif-sc-700.woff2)format("woff2")}@font-face{font-family:Noto Serif SC;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/noto-serif-sc-900.woff2)format("woff2")}:root{--bg:#000;--bg-1:#0a0a0a;--bg-2:#191919;--bg-3:#242424;--text:#fff;--text-dim:#999;--text-faint:#5a5a5a;--ink:#191919;--accent:#fffa00;--accent-deep:#d9d400;--accent-soft:#fffa001a;--accent-line:#fffa006b;--line:#ffffff1a;--line-strong:#ffffff38;--shell:1700px;--shell-pad:72px;--font-wide:"Orbitron", "Michroma", "Inter", "Microsoft YaHei", "PingFang SC", sans-serif;--font-sans:"Inter", -apple-system, "Segoe UI", "Microsoft YaHei", sans-serif;--font-serif:"Noto Serif SC", "Songti SC", serif;--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;--ease:cubic-bezier(.22, 1, .36, 1);--ease-hard:cubic-bezier(.65, 0, .35, 1);--cut:polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px));--cut-sm:polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%)}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;padding:0}body{overflow-x:hidden}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:#000}body:before{content:"";z-index:9999;pointer-events:none;opacity:.5;background-image:linear-gradient(90deg,#ffffff05 1px,#0000 1px),linear-gradient(#ffffff05 1px,#0000 1px);background-size:80px 80px;position:fixed;inset:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#000}::-webkit-scrollbar-thumb{background:#2a2a2a}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.shell{width:100%;max-width:var(--shell);padding:0 var(--shell-pad);margin:0 auto}.eyebrow{font-family:var(--font-wide);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);background:var(--accent);clip-path:var(--cut-sm);align-items:center;gap:0;padding:7px 16px 7px 13px;font-size:13px;display:inline-flex}.cn-font{text-transform:none;font-weight:800;font-family:var(--font-sans)!important}.section{border-top:1px solid var(--line);padding:130px 0;position:relative}.section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:70px;padding-bottom:32px;display:flex}.section-title{font-family:var(--font-wide);letter-spacing:-.02em;text-transform:uppercase;margin:22px 0 0;font-size:76px;font-weight:700;line-height:.98}.section-title-cn{font-family:var(--font-sans);letter-spacing:.3em;color:var(--text-dim);margin-top:18px;font-size:26px;font-weight:400;display:block}.section-desc{max-width:440px;color:var(--text-dim);border-left:2px solid var(--accent);margin:0;padding-left:20px;font-size:15px;line-height:1.95}@media (width<=1200px){:root{--shell-pad:40px}.section-title{font-size:52px}.section-head{flex-direction:column;align-items:flex-start;gap:26px}}.btn{height:58px;color:var(--text);font-family:var(--font-wide);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;clip-path:var(--cut-sm);transition:color .4s var(--ease);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;gap:14px;padding:0 36px;font-size:14px;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";border:1px solid var(--line-strong);clip-path:var(--cut-sm);transition:border-color .4s var(--ease);pointer-events:none;position:absolute;inset:0}.btn:after{content:"";background:var(--accent);transition:transform .45s var(--ease);z-index:-1;position:absolute;inset:0;transform:translateY(101%)}.btn:hover{color:#000}.btn:hover:before{border-color:var(--accent)}.btn:hover:after{transform:none}.btn-solid{background:var(--accent);color:#000;font-weight:700}.btn-solid:before{border-color:var(--accent)}.btn-solid:hover{color:#000}[data-anim=title-line],[data-anim=fade],[data-anim-group]>[data-anim-item]{opacity:0}[data-anim=img]{clip-path:inset(0 0 100%)}@media (prefers-reduced-motion:reduce){[data-anim=title-line],[data-anim=fade],[data-anim-group]>[data-anim-item]{opacity:1}[data-anim=img]{clip-path:none}.contact-line,.contact-top,.contact-desc,.contact-mail,.contact-foot{opacity:1!important;transform:none!important}}.nav{z-index:100;transition:background .4s var(--ease), border-color .4s var(--ease);border-bottom:1px solid #0000;position:fixed;inset:0 0 auto}.nav.is-scrolled{-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);border-bottom-color:var(--line);background:#000000d1}.nav-inner{align-items:center;gap:44px;height:82px;display:flex}.nav-logo{flex-shrink:0;align-items:center;gap:13px;display:flex}.nav-logo-mark{background:var(--accent);width:12px;height:12px;transition:transform .5s var(--ease)}.nav-logo:hover .nav-logo-mark{transform:rotate(90deg)}.nav-logo-text{font-family:var(--font-wide);letter-spacing:.1em;font-size:17px;font-weight:900}.nav-logo-text em{color:var(--text-faint);letter-spacing:.06em;font-size:13px;font-style:normal;font-weight:400}.nav-links{gap:34px;margin-left:auto;display:flex}.nav-links a{letter-spacing:.08em;color:var(--text-dim);transition:color .3s var(--ease);align-items:center;gap:9px;padding:6px 0;font-size:14px;display:flex;position:relative}.nav-links a:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:2px;transition:transform .35s var(--ease);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-links a:hover{color:var(--text)}.nav-links a:hover:after{transform:scaleX(1)}.nav-dot{background:var(--text-faint);width:5px;height:5px;transition:background .3s var(--ease)}.nav-links a:hover .nav-dot{background:var(--accent)}.nav-right{flex-shrink:0;align-items:center;gap:22px;display:flex}.nav-mail{font-family:var(--font-mono);letter-spacing:.05em;color:var(--text-faint);transition:color .3s var(--ease);font-size:12px}.nav-mail:hover{color:var(--accent)}.nav-cta{background:var(--accent);color:#000;height:42px;font-family:var(--font-wide);letter-spacing:.12em;clip-path:var(--cut-sm);transition:background .3s var(--ease);justify-content:center;align-items:center;padding:0 24px;font-size:13px;font-weight:700;display:inline-flex;position:relative}.nav-cta:hover{background:#fff}.nav-burger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:6px;width:40px;height:40px;padding:0;display:none}.nav-burger span{background:var(--text);height:2px;transition:transform .35s var(--ease);display:block}.nav-burger.is-open span:first-child{transform:translateY(4px)rotate(45deg)}.nav-burger.is-open span:last-child{transform:translateY(-4px)rotate(-45deg)}.drawer{z-index:99;opacity:0;pointer-events:none;transition:opacity .35s var(--ease);background:#000;flex-direction:column;justify-content:center;gap:0;padding:0 40px;display:flex;position:fixed;inset:0}.drawer.is-open{opacity:1;pointer-events:auto}.drawer a{font-family:var(--font-wide);text-transform:uppercase;border-bottom:1px solid var(--line);align-items:baseline;gap:20px;padding:20px 0;font-size:38px;font-weight:900;display:flex}.drawer em{font-family:var(--font-mono);color:var(--accent);letter-spacing:.2em;font-size:13px;font-style:normal}@media (width<=1400px){.nav-mail{display:none}}@media (width<=1100px){.nav-links,.nav-cta{display:none}.nav-burger{margin-left:auto;display:flex}}.hero{background:#000;align-items:stretch;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;position:absolute;inset:0}.hero-img{filter:grayscale(.85)contrast(1.12)brightness(.68);will-change:transform, filter;background-image:url(../hero.jpg);background-position:62% 28%;background-size:cover;position:absolute;inset:0;transform:scale(1.04)}@media (prefers-reduced-motion:no-preference){.hero-img{animation:34s ease-in-out 2.5s infinite alternate heroDrift}}@keyframes heroDrift{0%{transform:scale(1.04)}to{transform:scale(1.11)translate(-1.1%,-.9%)}}.hero-veil{background:linear-gradient(#000000e6 0%,#0000004d 45%,#000000f5 100%),linear-gradient(90deg,#000000db 0%,#0000 65%);position:absolute;inset:0}.hero-grid{background-image:linear-gradient(90deg,#ffffff0b 1px,#0000 1px),linear-gradient(#ffffff0b 1px,#0000 1px);background-size:100px 100px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(75% 65% at 35% 45%,#000 15%,#0000 76%);mask-image:radial-gradient(75% 65% at 35% 45%,#000 15%,#0000 76%)}.hero-rail-left{left:var(--shell-pad);z-index:3;font-family:var(--font-mono);letter-spacing:.3em;color:var(--text-faint);writing-mode:vertical-rl;pointer-events:none;opacity:0;flex-direction:column;align-items:center;gap:16px;font-size:10px;display:flex;position:absolute;top:130px;bottom:60px}.hero-rail-num{color:var(--accent);letter-spacing:.2em;font-size:12px}.hero-rail-left i{background:linear-gradient(180deg, var(--accent), transparent 85%);flex:1;width:1px}.hero-inner{z-index:2;padding-top:132px;padding-bottom:76px;padding-left:calc(var(--shell-pad) + 54px);flex-direction:column;flex:1;justify-content:space-between;display:flex;position:relative}.hero.is-awaiting .hero-inner>*,.hero.is-awaiting .hero-rail-left,.hero.is-awaiting .hero-scroll{visibility:hidden}.hero-top{opacity:0;justify-content:space-between;align-items:center;gap:30px;display:flex}.hero-top-right{font-family:var(--font-mono);letter-spacing:.24em;color:var(--text-faint);align-items:center;gap:10px;font-size:11px;display:flex}.hero-top-right:before{content:"";background:var(--accent);width:7px;height:7px;animation:1.6s step-end infinite rec}@keyframes rec{0%,49%{opacity:1}50%,to{opacity:.15}}.hero-title{-webkit-user-select:none;user-select:none;margin:0;line-height:.82;position:relative}.hero-title span{font-family:var(--font-wide);letter-spacing:-.035em;text-transform:uppercase;white-space:nowrap;will-change:transform;font-size:clamp(140px,17.5vw,310px);font-weight:900;display:block}.hero-title-fill{color:var(--text);clip-path:inset(0 0 52%)}.hero-title-outline{color:#0000;-webkit-text-stroke:1.5px var(--line-strong);clip-path:inset(48% 0 0);margin-top:-.84em}.hero-mid{opacity:0;align-items:baseline;gap:26px;margin-top:26px;display:flex}.hero-cn{font-family:var(--font-sans);letter-spacing:.16em;padding-left:26px;font-size:64px;font-weight:900;line-height:1;position:relative}.hero-cn:before{content:"";background:var(--accent);width:6px;position:absolute;top:6px;bottom:6px;left:0}.hero-cn-role{letter-spacing:.22em;color:var(--text-dim);text-transform:uppercase;font-size:15px;font-family:var(--font-mono)}.hero-bottom{justify-content:space-between;align-items:flex-end;gap:60px;display:flex}.hero-sub{max-width:480px;color:var(--text-dim);letter-spacing:.02em;margin:0;font-size:19px;line-height:1.85}.hero-actions{flex-shrink:0;gap:14px;display:flex}.hero-actions .btn{opacity:0}.hero-scroll{right:var(--shell-pad);z-index:3;font-family:var(--font-mono);letter-spacing:.32em;color:var(--text-faint);opacity:0;align-items:center;gap:14px;font-size:10px;display:flex;position:absolute;bottom:76px}.hero-scroll i{background:var(--line-strong);width:54px;height:1px;position:relative;overflow:hidden}.hero-scroll i:after{content:"";background:var(--accent);animation:scrollLine 2.1s var(--ease) infinite;position:absolute;inset:0}@keyframes scrollLine{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}@media (width<=1200px){.hero-rail-left{display:none}.hero-inner{padding-left:var(--shell-pad)}.hero-scroll{display:none}}@media (width<=780px){.hero-inner{padding-top:120px;padding-bottom:100px}.hero-title span{font-size:26vw}.hero-cn{font-size:40px}.hero-mid{flex-direction:column;gap:10px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:28px}.hero-actions{flex-direction:column;width:100%}.hero-sub{font-size:16px}.hero-top-right{display:none}}.about-grid{grid-template-columns:400px 1fr 320px;align-items:start;gap:56px;display:grid}.about-portrait{margin:0;position:relative}.about-portrait-tag{z-index:3;font-family:var(--font-mono);letter-spacing:.18em;color:#000;background:var(--accent);clip-path:polygon(0 0,100% 0,calc(100% - 10px) 100%,0 100%);padding:7px 13px;font-size:11px;position:absolute;top:0;left:0}.about-portrait-inner{border:1px solid var(--line);background:var(--bg-1);position:relative;overflow:hidden}.about-portrait-inner img{aspect-ratio:3/4;object-fit:cover;object-position:center 22%;filter:grayscale()contrast(1.1)brightness(.82);width:100%;transition:transform .9s var(--ease), filter .6s var(--ease);display:block}.about-portrait:hover .about-portrait-inner img{filter:grayscale(0)contrast(1.05)brightness(.95);transform:scale(1.05)}.about-portrait-corners i{border:2px solid var(--accent);width:20px;height:20px;position:absolute}.about-portrait-corners i:first-child{border-bottom:none;border-left:none;top:10px;right:10px}.about-portrait-corners i:last-child{border-top:none;border-right:none;bottom:10px;left:10px}.about-portrait figcaption{border-top:1px solid var(--line);font-family:var(--font-wide);letter-spacing:.14em;justify-content:space-between;align-items:baseline;margin-top:14px;padding-top:14px;font-size:12px;display:flex}.about-portrait figcaption span{color:var(--accent)}.about-portrait figcaption em{font-style:normal;font-family:var(--font-sans);color:var(--text-faint);letter-spacing:.06em}.about-name{font-family:var(--font-sans);letter-spacing:.06em;flex-wrap:wrap;align-items:baseline;gap:20px;margin:0 0 26px;font-size:52px;font-weight:900;display:flex}.about-name em{font-family:var(--font-wide);letter-spacing:.16em;color:var(--text-dim);border:1px solid var(--line-strong);text-transform:uppercase;padding:7px 14px;font-size:12px;font-style:normal;font-weight:400}.about-intro{color:var(--text-dim);max-width:740px;margin:0 0 46px;font-size:16px;line-height:2.1}.about-contact{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.about-contact-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .3s var(--ease);flex-direction:column;gap:9px;padding:22px 24px;display:flex;position:relative}a.about-contact-item:hover{background:var(--accent-soft)}a.about-contact-item:hover:before{content:"";background:var(--accent);width:3px;position:absolute;top:0;bottom:0;left:0}.about-contact-item span{font-family:var(--font-wide);letter-spacing:.2em;color:var(--accent);text-transform:uppercase;font-size:11px}.about-contact-item strong{color:var(--text);overflow-wrap:anywhere;font-size:15px;font-weight:500}.about-stats{background:var(--bg-2);border:1px solid var(--line);flex-direction:column;padding:24px 26px 10px;display:flex;position:sticky;top:110px}.about-stats-title{font-family:var(--font-wide);letter-spacing:.24em;color:var(--text-faint);border-bottom:1px solid var(--line);margin-bottom:6px;padding-bottom:18px;font-size:12px}.stat{border-bottom:1px solid var(--line);flex-direction:column;gap:6px;padding:20px 0;display:flex}.stat:last-child{border-bottom:none}.stat strong{font-family:var(--font-wide);color:var(--text);letter-spacing:-.02em;transition:color .35s var(--ease);font-size:40px;font-weight:900;line-height:1}.stat span{color:var(--text-faint);letter-spacing:.08em;font-size:13px}.stat:hover strong{color:var(--accent)}@media (width<=1500px){.about-grid{grid-template-columns:340px 1fr;gap:46px}.about-stats{flex-flow:wrap;grid-column:1/-1;align-items:center;gap:0 40px;position:static}.about-stats-title{flex:100%;margin-bottom:10px}.stat{border-bottom:none;flex:1}}@media (width<=900px){.about-grid,.about-contact{grid-template-columns:1fr}.about-stats{flex-direction:column;gap:0}.stat{border-bottom:1px solid var(--line);width:100%}.about-name{font-size:36px}}.lb{z-index:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:lbIn .28s var(--ease);background:#000000f0;flex-direction:column;display:flex;position:fixed;inset:0}@keyframes lbIn{0%{opacity:0}to{opacity:1}}.lb-top{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:30px;padding:22px 40px;display:flex}.lb-top-left{align-items:center;gap:18px;display:flex}.lb-idx{font-family:var(--font-wide);color:#000;background:var(--accent);clip-path:polygon(0 0,100% 0,calc(100% - 11px) 100%,0 100%);padding:7px 15px;font-size:13px;font-weight:900}.lb-meta{align-items:baseline;gap:16px;display:flex}.lb-meta strong{letter-spacing:.02em;font-size:20px;font-weight:900}.lb-meta span{font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-faint);font-size:12px}.lb-top-right{align-items:center;gap:22px;display:flex}.lb-count{font-family:var(--font-mono);letter-spacing:.16em;color:var(--text-dim);font-size:13px}.lb-close{border:1px solid var(--line-strong);width:42px;height:42px;color:var(--text);cursor:pointer;clip-path:var(--cut-sm);transition:all .3s var(--ease);background:0 0;place-items:center;display:grid}.lb-close:hover{background:var(--accent);border-color:var(--accent);color:#000}.lb-stage{flex:1;align-items:center;gap:24px;min-height:0;padding:28px 40px;display:flex}.lb-figure{flex:1;justify-content:center;align-items:center;min-width:0;height:100%;margin:0;display:flex}.lb-figure img{object-fit:contain;max-width:100%;max-height:100%;box-shadow:0 40px 100px -40px #000}.lb-nav{border:1px solid var(--line-strong);width:54px;height:54px;color:var(--text);cursor:pointer;clip-path:var(--cut-sm);transition:all .3s var(--ease);background:0 0;flex-shrink:0;place-items:center;display:grid}.lb-nav:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#000}.lb-nav:disabled{opacity:.25;cursor:default}.lb-strip{border-top:1px solid var(--line);scrollbar-width:thin;flex-shrink:0;gap:8px;padding:16px 40px 22px;display:flex;overflow-x:auto}.lb-strip::-webkit-scrollbar{height:5px}.lb-strip::-webkit-scrollbar-thumb{background:#2a2a2a}.lb-thumb{border:1px solid var(--line);cursor:pointer;opacity:.42;width:92px;height:62px;transition:opacity .3s var(--ease), border-color .3s var(--ease);background:#000;flex-shrink:0;padding:0;position:relative;overflow:hidden}.lb-thumb img{object-fit:cover;width:100%;height:100%;display:block}.lb-thumb:hover{opacity:.8}.lb-thumb.is-active{opacity:1;border-color:var(--accent)}.lb-thumb.is-active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:0;right:0}@media (width<=900px){.lb-top,.lb-stage,.lb-strip{padding-left:18px;padding-right:18px}.lb-meta span{display:none}.lb-nav{width:42px;height:42px}.lb-thumb{width:66px;height:46px}}.works-grid{background:var(--line);border:1px solid var(--line);perspective:1400px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;display:grid}.work-card{cursor:pointer;backface-visibility:hidden;background:#000;outline:none;flex-direction:column;display:flex;position:relative;overflow:hidden}.work-card:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.work-media{background:var(--bg-1);position:relative;overflow:hidden}.work-media-reveal{display:block;overflow:hidden}.work-media-reveal img{aspect-ratio:4/5;object-fit:cover;filter:grayscale(.55)contrast(1.08)brightness(.82);width:100%;transition:transform 1.1s var(--ease), filter .7s var(--ease);will-change:transform;display:block}.work-card:hover .work-media-reveal img{filter:grayscale(0)contrast(1.02)brightness(.95);transform:scale(1.05)}.work-media-veil{transition:opacity .5s var(--ease);background:linear-gradient(#0006 0%,#0000 38%,#000000e0 100%);position:absolute;inset:0}.work-idx{z-index:2;font-family:var(--font-wide);letter-spacing:.12em;color:#000;background:var(--accent);clip-path:polygon(0 0,100% 0,calc(100% - 12px) 100%,0 100%);padding:8px 16px;font-size:13px;font-weight:900;position:absolute;top:0;left:0}.work-count{z-index:2;font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-dim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;padding:5px 10px;font-size:12px;position:absolute;top:14px;right:18px}.work-cta{z-index:2;font-family:var(--font-wide);letter-spacing:.12em;color:#000;background:var(--accent);clip-path:var(--cut-sm);opacity:0;transition:all .45s var(--ease);align-items:center;gap:10px;padding:10px 16px;font-size:12px;display:inline-flex;position:absolute;bottom:18px;right:20px;transform:translateY(12px)}.work-cta .cn-font{letter-spacing:.08em}.work-card:hover .work-cta{opacity:1;transform:none}.work-media:after{content:"";z-index:2;background:var(--accent);transform-origin:0;width:100%;height:3px;transition:transform .6s var(--ease);position:absolute;bottom:0;left:0;transform:scaleX(0)}.work-card:hover .work-media:after{transform:scaleX(1)}.work-body{border-top:1px solid var(--line);flex-direction:column;flex:1;gap:9px;padding:22px 24px 26px;display:flex}.work-body h3{letter-spacing:.02em;margin:0;font-size:24px;font-weight:900}.work-meta{letter-spacing:.1em;color:var(--accent);opacity:.9;margin:0;font-size:12px}.work-tags{flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:16px;display:flex}.work-tags span{letter-spacing:.06em;color:var(--text-faint);border:1px solid var(--line);transition:color .3s var(--ease), border-color .3s var(--ease);padding:5px 11px;font-size:11px}.work-card:hover .work-tags span{color:var(--text-dim);border-color:var(--line-strong)}@media (width<=1500px){.works-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1100px){.works-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.works-grid{grid-template-columns:1fr}.work-cta{display:none}}.strength-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;display:grid}.str-card{background:var(--bg-1);transition:background .45s var(--ease);padding:42px 32px 38px;position:relative;overflow:hidden}.str-card:hover{background:var(--bg-2)}.str-top{align-items:center;gap:16px;margin-bottom:36px;display:flex}.str-no{font-family:var(--font-wide);letter-spacing:.1em;color:#000;background:var(--accent);clip-path:polygon(0 0,100% 0,calc(100% - 9px) 100%,0 100%);width:38px;height:30px;transition:background .35s var(--ease);flex-shrink:0;place-items:center;font-size:14px;font-weight:900;display:grid}.str-card:hover .str-no{background:#fff}.str-line{background:var(--line);flex:1;height:1px}.str-glow{background:var(--accent);transform-origin:0;height:4px;transition:transform .55s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.str-card:hover .str-glow{transform:scaleX(1)}.str-card h3{letter-spacing:.01em;margin:0 0 16px;font-size:25px;font-weight:900}.str-card>p{color:var(--text-dim);min-height:84px;margin:0 0 28px;font-size:14px;line-height:2}.str-card ul{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin:0;padding:22px 0 0;list-style:none;display:flex}.str-card li{font-family:var(--font-mono);letter-spacing:.05em;color:var(--text-faint);transition:color .3s var(--ease);align-items:center;gap:12px;font-size:12px;display:flex}.str-card li i{background:var(--text-faint);width:6px;height:6px;transition:background .3s var(--ease);flex-shrink:0}.str-card:hover li{color:var(--text-dim)}.str-card:hover li i{background:var(--accent)}@media (width<=1500px){.strength-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.str-card>p{min-height:auto}}@media (width<=760px){.strength-grid{grid-template-columns:1fr}}.contact{border-top:1px solid var(--line);background:#000;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.contact-bg{z-index:0;position:absolute;inset:0}.contact-grid{background-image:linear-gradient(90deg,#ffffff0d 1px,#0000 1px),linear-gradient(#ffffff0d 1px,#0000 1px);background-size:100px 100px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(68% 58%,#000 0%,#0000 72%);mask-image:radial-gradient(68% 58%,#000 0%,#0000 72%)}.contact-glow{filter:blur(50px);background:radial-gradient(circle,#fffa0017,#0000 60%);width:1400px;height:800px;position:absolute;bottom:-40%;left:50%;transform:translate(-50%)}.contact-inner{z-index:2;width:100%;padding-top:110px;padding-bottom:56px;position:relative}.contact-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;padding-bottom:34px;display:flex}.contact-top-right{font-family:var(--font-mono);letter-spacing:.24em;color:var(--text-faint);font-size:11px}.contact-title{font-family:var(--font-sans);letter-spacing:.01em;flex-direction:column;margin:56px 0 0;font-size:clamp(56px,7.2vw,118px);font-weight:900;line-height:1.06;display:flex}.contact-line{opacity:0;will-change:transform, opacity;display:block}.contact-top,.contact-desc,.contact-mail,.contact-foot{opacity:0}.contact-line-accent{color:var(--accent);padding-left:0;position:relative}.contact-line-accent:after{content:"";background:var(--accent);vertical-align:-.06em;width:.34em;height:.86em;margin-left:.12em;animation:1.4s step-end infinite blink;display:inline-block}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.contact-mid{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:60px;margin-top:62px;padding-bottom:46px;display:flex}.contact-desc{max-width:520px;color:var(--text-dim);border-left:2px solid var(--accent);margin:0;padding-left:20px;font-size:16px;line-height:2.05}.contact-mail{background:var(--bg-2);border:1px solid var(--line-strong);clip-path:var(--cut-sm);transition:background .4s var(--ease), color .4s var(--ease);flex-shrink:0;align-items:center;gap:20px;padding:20px 26px;display:inline-flex}.contact-mail-label{font-family:var(--font-wide);letter-spacing:.2em;color:var(--accent);font-size:11px}.contact-mail-addr{font-family:var(--font-mono);letter-spacing:.01em;font-size:clamp(16px,1.5vw,24px)}.contact-mail svg{transition:transform .45s var(--ease);flex-shrink:0}.contact-mail:hover{background:var(--accent);color:#000}.contact-mail:hover .contact-mail-label{color:#000}.contact-mail:hover svg{transform:translate(5px,-5px)}.contact-foot{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-faint);justify-content:space-between;align-items:flex-start;gap:40px;padding-top:30px;font-size:12px;display:flex}.contact-foot-left{gap:34px;display:flex}.contact-foot-left a{transition:color .3s var(--ease);flex-direction:column;gap:5px;display:flex}.contact-foot-left a span{font-family:var(--font-wide);letter-spacing:.18em;color:var(--text-dim);transition:color .3s var(--ease);font-size:11px}.contact-foot-left a em{font-style:normal}.contact-foot-left a:hover,.contact-foot-left a:hover span{color:var(--accent)}.contact-foot-right{text-align:right;flex-direction:column;align-items:flex-end;gap:8px;display:flex}.contact-watermark{z-index:1;font-family:var(--font-wide);letter-spacing:-.03em;color:#0000;-webkit-text-stroke:1px #ffffff0f;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:22vw;font-weight:900;line-height:.78;position:absolute;bottom:-7%;right:-1.5%}@media (width<=1200px){.contact-mid{flex-direction:column;align-items:flex-start;gap:34px}}@media (width<=900px){.contact-top-right{display:none}.contact-foot{flex-direction:column;gap:26px}.contact-foot-right{text-align:left;align-items:flex-start}.contact-foot-left{flex-wrap:wrap;gap:20px}.contact-mail{flex-wrap:wrap;gap:12px;padding:16px 18px}}.op-root{z-index:999;pointer-events:none;background:0 0;position:fixed;inset:0}.op-panels{display:flex;position:absolute;inset:0}.op-panel{will-change:transform;background:#000;border-right:1px solid #ffffff0d;flex:1}.op-panel:last-child{border-right:none}.op-center{will-change:transform, opacity;flex-direction:column;justify-content:center;align-items:center;gap:26px;display:flex;position:absolute;inset:0}.op-name-clip{padding:0 8px;overflow:hidden}.op-name{font-family:var(--font-wide);letter-spacing:.06em;color:var(--accent);will-change:transform;font-size:clamp(56px,11vw,190px);font-weight:900;line-height:.86;display:block}.op-meta{font-family:var(--font-mono);letter-spacing:.22em;color:var(--text-dim);text-transform:uppercase;align-items:center;gap:22px;font-size:12px;display:flex}.op-count{color:var(--text-faint)}.op-meta>span:first-child:after{content:"";background:var(--line-strong);vertical-align:middle;width:46px;height:1px;margin-left:22px;display:inline-block}.op-bar{background:#ffffff1a;width:min(420px,46vw);height:2px;position:absolute;bottom:12vh;left:50%;overflow:hidden;transform:translate(-50%)}.op-bar-fill{background:var(--accent);transform-origin:0;will-change:transform;width:100%;height:100%}@media (prefers-reduced-motion:reduce){.op-root{display:none}}.app{isolation:isolate;position:relative}
