:root{--bg:#08080b;--bg-surface:#0e0e14;--bg-elevated:#15151d;--line:#ffffff14;--line-strong:#ffffff29;--text:#f4f5f7;--text-dim:#a2a5af;--text-faint:#63666f;--accent:#63e2f0;--accent-strong:#9bf0fa;--accent-deep:#178a99;--accent-rgb:99, 226, 240;--glow:rgba(var(--accent-rgb), .16);--max-width:1700px;--gutter:clamp(24px, 4vw, 88px);--section-y:clamp(96px, 12vh, 168px);--nav-h:76px;--radius:16px;--radius-lg:24px;--shadow:0 24px 60px -24px #000000b3;--font-sans:system-ui, -apple-system, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-display:"Space Grotesk", var(--font-sans);--fs-hero:clamp(52px, 7.2vw, 116px);--fs-h2:clamp(34px, 4.2vw, 60px);--fs-h3:clamp(20px, 1.5vw, 26px);--fs-lead:clamp(17px, 1.3vw, 21px);--fs-body:16px;--fs-sm:14px;--fs-xs:12px;--ease:cubic-bezier(.22, 1, .36, 1);--dur:.7s}*,:before,:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.7;overflow-x:hidden}h1,h2,h3,h4{letter-spacing:-.01em;font-weight:600;line-height:1.12}a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block}button{cursor:pointer;font-family:inherit}ul{padding:0;list-style:none}::selection{background:rgba(var(--accent-rgb), .28);color:#fff}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{border:2px solid var(--bg);background:#26262e;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#35353f}.container{width:100%;max-width:var(--max-width);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y);position:relative}.eyebrow{font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.3em;text-transform:uppercase;color:var(--accent);align-items:center;gap:12px;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);opacity:.6;width:30px;height:1px}.section-head{margin-bottom:clamp(44px,6vh,76px)}.section-head h2{font-size:var(--fs-h2);margin-top:20px}.section-head .lead{color:var(--text-dim);font-size:var(--fs-lead);max-width:640px;margin-top:18px}.btn{transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .35s var(--ease), border-color .35s var(--ease), color .35s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:15px 30px;font-size:15px;font-weight:500;display:inline-flex}.btn-ghost{border-color:var(--line-strong);color:var(--text);background:#ffffff05}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.tag{font-size:var(--fs-xs);letter-spacing:.04em;color:var(--text-dim);border:1px solid var(--line);transition:border-color .3s var(--ease), color .3s var(--ease);border-radius:999px;padding:5px 12px;display:inline-block}.bg-grid{background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:68px 68px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 38%,#000 0%,#0000 72%);mask-image:radial-gradient(circle at 50% 38%,#000 0%,#0000 72%)}.bg-glow{filter:blur(90px);pointer-events:none;border-radius:50%;position:absolute}.glow-a{background:radial-gradient(circle, rgba(var(--accent-rgb), .18), transparent 65%);width:52vw;height:52vw;animation:18s ease-in-out infinite drift;top:-18vw;left:-10vw}.glow-b{background:radial-gradient(circle,#6078ff24,#0000 65%);width:40vw;height:40vw;animation:22s ease-in-out infinite reverse drift;bottom:-16vw;right:-8vw}@keyframes drift{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(4vw,3vw)scale(1.12)}}.reveal{opacity:0;transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease);transform:translateY(30px)}.reveal.is-visible{opacity:1;transform:none}@media (width<=720px){.section{padding-block:72px}.section-head{margin-bottom:34px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}.glow-a,.glow-b{animation:none}}.specular-button{--sb-radius:18px;--sb-tint:#fff;--sb-tint-opacity:.04;--sb-blur:0px;--sb-text-color:#f5f5f5;isolation:isolate;border:1px solid color-mix(in srgb, var(--sb-tint) 26%, transparent);border-radius:var(--sb-radius);font:inherit;letter-spacing:.01em;color:var(--sb-text-color);background:color-mix(in srgb, var(--sb-tint) calc(var(--sb-tint-opacity) * 100%), transparent);-webkit-backdrop-filter:blur(var(--sb-blur));backdrop-filter:blur(var(--sb-blur));cursor:pointer;-webkit-tap-highlight-color:transparent;outline:none;justify-content:center;align-items:center;gap:.5em;margin:0;font-weight:500;line-height:1;transition:transform .25s cubic-bezier(.2,.8,.2,1),background-color .25s,border-color .25s,box-shadow .3s;display:inline-flex;position:relative;box-shadow:0 10px 24px -14px #00000073}.specular-button:hover:not(:disabled){background:color-mix(in srgb, var(--sb-tint) 12%, transparent);border-color:color-mix(in srgb, var(--sb-tint) 65%, transparent);box-shadow:0 12px 34px -14px color-mix(in srgb, var(--sb-tint) 55%, transparent);transform:translateY(-2px)}.specular-button:active{transform:scale(.97)}.specular-button:focus-visible{outline:2px solid color-mix(in srgb, var(--sb-text-color) 55%, transparent);outline-offset:3px}.specular-button:disabled{opacity:.5;cursor:default}.specular-button:disabled:active{transform:none}.specular-button--sm{padding:10px 20px;font-size:.875rem}.specular-button--md{padding:14px 28px;font-size:1rem}.specular-button--lg{padding:18px 38px;font-size:1.125rem}.specular-button__light{z-index:1;pointer-events:none;width:calc(100% + 48px);height:calc(100% + 48px);display:block;position:absolute;inset:-24px}.specular-button__label{z-index:2;align-items:center;gap:inherit;display:inline-flex;position:relative}.nav{z-index:100;height:var(--nav-h);transition:background .4s var(--ease), border-color .4s var(--ease), backdrop-filter .4s var(--ease);border-bottom:1px solid #0000;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.nav.is-scrolled{-webkit-backdrop-filter:blur(16px);border-bottom-color:var(--line);background:#08080bb8}.nav-inner{justify-content:space-between;align-items:center;gap:32px;display:flex}.nav-logo{align-items:center;display:flex}.nav-logo-img{width:auto;height:30px;transition:filter .3s var(--ease), transform .3s var(--ease)}.nav-logo:hover .nav-logo-img{filter:drop-shadow(0 0 10px rgba(var(--accent-rgb), .45))}.nav-links{gap:38px;display:flex}.nav-links a{color:var(--text-dim);transition:color .3s var(--ease);padding-block:6px;font-size:15px;position:relative}.nav-links a:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;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-links a.active{color:#fff}.nav-links a.active:after{transform:scaleX(1)}.nav-cta{padding:11px 24px;font-size:14px}.nav-burger,.nav-menu-cta{display:none}@media (width<=720px){.nav-inner{gap:12px}.nav-logo-img{height:26px}.nav-cta{display:none}.nav.is-menu-open{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080a0eeb;border-bottom-color:#0000;align-items:flex-start;height:auto;inset:0}.nav.is-menu-open .nav-inner{height:var(--nav-h);flex:none;width:100%}.nav-burger{border:1px solid var(--line);background:#ffffff08;border-radius:12px;flex-direction:column;justify-content:center;gap:6px;width:42px;height:42px;padding:0 10px;display:inline-flex}.nav-burger span{background:var(--text);height:1.5px;transition:transform .3s var(--ease), opacity .3s var(--ease);border-radius:2px;display:block}.nav.is-menu-open .nav-burger span:first-child{transform:translateY(3.75px)rotate(45deg)}.nav.is-menu-open .nav-burger span:last-child{transform:translateY(-3.75px)rotate(-45deg)}.nav-links{top:var(--nav-h);opacity:0;pointer-events:none;transition:opacity .28s var(--ease), transform .28s var(--ease);background:0 0;flex-direction:column;gap:4px;padding:20px 20px 32px;position:absolute;bottom:0;left:0;right:0;transform:translateY(-12px)}.nav.is-menu-open .nav-links{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-links a{border-bottom:1px solid var(--line);padding:13px 4px;font-size:17px}.nav-links a:after{display:none}.nav-links a.active{color:var(--accent)}.nav-menu-cta{justify-content:center;margin-top:auto;padding:15px;display:inline-flex}}.drift-wall{width:100%;height:100%;perspective:var(--dw-perspective,1200px);perspective-origin:50%;--dw-tile-w:200px;--dw-tile-h:132px;--dw-gap:18px;--dw-radius:14px;--dw-lift:64px;--dw-dim:.55;--dw-gray:0;--dw-overlay:#060010;--dw-edge:40%;-webkit-mask-image:radial-gradient(ellipse 78% 82% at 50% 46%, #000 var(--dw-edge), transparent 100%), linear-gradient(to top, #000 var(--dw-edge), transparent 100%);-webkit-mask-composite:source-in;-webkit-mask-image:radial-gradient(ellipse 78% 82% at 50% 46%, #000 var(--dw-edge), transparent 100%), linear-gradient(to top, #000 var(--dw-edge), transparent 100%);mask-image:radial-gradient(ellipse 78% 82% at 50% 46%, #000 var(--dw-edge), transparent 100%), linear-gradient(to top, #000 var(--dw-edge), transparent 100%);position:relative;overflow:hidden;-webkit-mask-composite:source-in;mask-composite:intersect}.drift-wall__plane{transform-style:preserve-3d;cursor:pointer;transform-origin:50%;will-change:transform;flex-direction:row;display:flex;position:absolute;top:50%;left:50%}.drift-wall__col{width:calc(var(--dw-tile-w) + var(--dw-gap));transform-style:preserve-3d;position:relative}.drift-wall__track{will-change:transform;transform-style:preserve-3d;flex-direction:column;display:flex}.drift-wall__tile{width:100%;height:calc(var(--dw-tile-h) + var(--dw-gap));transform-style:preserve-3d;outline:none;flex:none;display:block;position:relative}.drift-wall__inner{inset:calc(var(--dw-gap) / 2);border-radius:var(--dw-radius);opacity:var(--dw-dim);pointer-events:none;background:#0b0b12;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .42s cubic-bezier(.22,1,.36,1),box-shadow .42s cubic-bezier(.22,1,.36,1);display:block;position:absolute;overflow:hidden;transform:translateZ(0)}.drift-wall__tile img{object-fit:cover;width:100%;height:100%;filter:grayscale(var(--dw-gray)) saturate(.92);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transition:filter .42s cubic-bezier(.22,1,.36,1);display:block}.drift-wall__overlay{background:var(--dw-overlay);opacity:.24;pointer-events:none;transition:opacity .42s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.drift-wall__tile.is-active .drift-wall__inner,.drift-wall__tile:focus-visible .drift-wall__inner{opacity:1;transform:translateZ(var(--dw-lift));box-shadow:0 24px 60px -18px #000000b3}.drift-wall__tile.is-active img,.drift-wall__tile:focus-visible img{filter:grayscale(0)saturate(1.05)}.drift-wall__tile.is-active .drift-wall__overlay,.drift-wall__tile:focus-visible .drift-wall__overlay{opacity:0}.drift-wall__tile:focus-visible .drift-wall__inner{box-shadow:0 24px 60px -18px #000000b3,0 0 0 2px #ffffffe6}@media (prefers-reduced-motion:reduce){.drift-wall__plane,.drift-wall__track{will-change:auto}}.tilted-card{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;justify-content:center;align-items:center;margin:0;display:flex;position:relative}.tilted-card[data-interactive]{cursor:pointer}.tilted-card[data-active]{z-index:2}.tilted-card__shadow{background:var(--tc-shadow-color,#0000008c);filter:blur(20px);opacity:0;pointer-events:none;will-change:transform, opacity;max-width:100%;max-height:100%;margin:auto;position:absolute;inset:0}.tilted-card__body{max-width:100%;max-height:100%;transform-style:preserve-3d;position:relative}.tilted-card__face{border-radius:var(--tc-radius);backface-visibility:hidden;isolation:isolate;position:absolute;inset:0;overflow:hidden}.tilted-card__back{transform:rotateY(180deg)}.tilted-card__img{object-fit:cover;pointer-events:none;max-width:none;display:block;position:absolute}.tilted-card__layer{position:absolute;inset:0}.tilted-card__img,.tilted-card__layer{transform:translate3d(calc(var(--tc-px,0) * var(--tc-depth,0) * 1px), calc(var(--tc-py,0) * var(--tc-depth,0) * 1px), 0)}.tilted-card__glare{z-index:5;background:radial-gradient(farthest-corner circle at var(--tc-gx,50%) var(--tc-gy,50%), rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .34)) 0%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .331)) 9%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .285)) 18%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .202)) 27%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .108)) 36%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .035)) 45%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .003)) 54%, rgba(var(--tc-glare-rgb,255, 255, 255), 0) 60%);mix-blend-mode:screen;pointer-events:none;position:absolute;inset:0}.tilted-card__rim{z-index:6;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--tc-rim-color,#ffffff14), inset 0 1px 0 var(--tc-rim-light,#ffffff1f);pointer-events:none;position:absolute;inset:0}.tilted-card__edge{z-index:7;box-sizing:border-box;border-radius:inherit;background:radial-gradient(farthest-side circle at var(--tc-gx,50%) var(--tc-gy,50%), rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .85)) 0%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .71)) 18%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .43)) 36%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .16)) 54%, rgba(var(--tc-glare-rgb,255, 255, 255), calc(var(--tc-glare,0) * .02)) 72%, rgba(var(--tc-glare-rgb,255, 255, 255), 0) 85%);-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.tilted-card:focus-visible .tilted-card__rim{box-shadow:inset 0 0 0 2px #ffffffb3,inset 0 0 0 3px #00000059}.tilted-card__overlay{z-index:2;transform:translateZ(var(--tc-lift,30px));backface-visibility:hidden;position:absolute;inset:0}.tilted-card__caption{z-index:3;color:#18181b;white-space:nowrap;opacity:0;pointer-events:none;transform-origin:0 0;will-change:transform, opacity;background:#fff;border-radius:7px;margin:16px 0 0 14px;padding:5px 9px;font-size:12px;font-weight:500;line-height:16px;position:absolute;top:0;left:0;box-shadow:0 0 0 1px #18181b14,0 8px 18px -8px #00000073}.about{background:var(--bg)}.about>.container{max-width:1120px}.about-head{margin-bottom:clamp(22px,4vh,42px)}.about-grid{grid-template-columns:400px minmax(0,1fr);align-items:stretch;gap:clamp(24px,3vw,48px);display:grid}.about-card-tilt.tilted-card{width:100%;height:100%;display:block}.about-card-tilt .tilted-card__body{width:100%!important;height:100%!important}.about-card-tilt .tilted-card__front{background:radial-gradient(460px 220px at 50% -12%, rgba(var(--accent-rgb), .14), transparent 72%), linear-gradient(180deg, #ffffff14, #ffffff08 42%, #ffffff04), #0e131a57;-webkit-backdrop-filter:blur(28px)saturate(1.5);backdrop-filter:blur(28px)saturate(1.5);box-shadow:inset 0 1px #ffffff29}.about-card{text-align:center;border-radius:var(--radius-lg);z-index:6;background:0 0;border:1px solid #ffffff1f;flex-direction:column;align-items:center;height:100%;padding:36px 32px 30px;display:flex;position:relative;box-shadow:0 24px 60px -30px #0000008c}.portrait-card{aspect-ratio:1;border:1px solid var(--line);background:var(--bg-surface);width:124px;box-shadow:0 0 0 6px rgba(var(--accent-rgb), .06), var(--shadow);border-radius:50%;overflow:hidden}.portrait-img{object-fit:cover;width:100%;height:100%;display:block}.about-name-row{justify-content:center;align-items:baseline;gap:12px;margin-top:22px;display:flex}.about-name{font-family:var(--font-display);letter-spacing:.08em;color:#fff;margin-top:0;font-size:29px;font-weight:700}.about-name-cn{font-family:var(--font-display);letter-spacing:.28em;color:var(--text-faint);font-size:13px;font-weight:500}.about-roles{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;display:flex}.about-role-tag{letter-spacing:.04em;color:var(--accent);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .3);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 18px -8px rgba(var(--accent-rgb), .55), inset 0 1px 0 #ffffff1f;border-radius:999px;padding:8px 13px;font-size:12px;line-height:1}.about-lead{color:#e6eaf0;margin-top:16px;font-size:15px;font-weight:500;line-height:1.8}.about-card-line{background:var(--line);width:100%;height:1px;margin-top:auto;margin-bottom:20px}.about-meta{flex-direction:column;gap:15px;width:100%;display:flex}.about-meta li{text-align:left;justify-content:space-between;align-items:center;gap:14px;display:flex}.about-meta .contact-icon{color:var(--accent);opacity:.6;flex:none;align-items:center;display:inline-flex}.about-meta .contact-icon svg{width:18px;height:18px}.about-meta .contact-value,.about-meta a{color:#8b8f99;text-align:right;word-break:break-all;font-size:13px}.about-meta a:hover{color:var(--accent)}.about-timeline{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(var(--accent-rgb), .4) transparent;max-height:62vh;padding:4px 12px 8px 6px;overflow-y:auto}.about-timeline::-webkit-scrollbar{width:5px}.about-timeline::-webkit-scrollbar-track{background:0 0}.about-timeline::-webkit-scrollbar-thumb{background:rgba(var(--accent-rgb), .35);border:none;border-radius:99px}.timeline{margin:0;padding:0;list-style:none}.timeline--v .timeline-item{padding:0 0 24px 32px;position:relative}.timeline--v .timeline-item:last-child{padding-bottom:4px}.timeline--v .timeline-item:before{content:"";background:var(--line);width:1px;position:absolute;top:11px;bottom:-3px;left:5px}.timeline--v .timeline-item:last-child:before{display:none}.timeline-dot{background:var(--accent);width:11px;height:11px;box-shadow:0 0 0 4px rgba(var(--accent-rgb), .14), 0 0 12px rgba(var(--accent-rgb), .55);border-radius:50%;position:absolute;top:5px;left:0}.timeline-period{font-family:var(--font-display);letter-spacing:.14em;color:var(--accent);white-space:nowrap;font-size:12.5px;display:block}.timeline-company{color:var(--text-dim);margin-top:8px;font-size:13px;font-weight:400;display:block}.timeline-role{color:#fff;margin-top:5px;font-size:clamp(18px,1.5vw,23px);font-weight:600;line-height:1.35}.timeline-desc{font-size:var(--fs-sm);color:var(--text-faint);margin:8px 0 0;line-height:1.75}.timeline-toggle{display:none}@media (width>=721px){.about{min-height:100vh;padding-block:calc(var(--nav-h) + 10px) 28px;flex-direction:column;justify-content:center;display:flex}}@media (width<=720px){.about{scroll-margin-top:var(--nav-h)}.about>.container{max-width:560px}.about-head{margin-bottom:24px}.about-head h2{font-size:clamp(30px,8vw,40px)}.about-grid{grid-template-columns:1fr;gap:24px}.about-card{height:auto;padding:28px 22px 24px}.portrait-card{width:108px}.about-name{font-size:26px}.about-timeline{max-height:none;padding:4px 4px 0;overflow:visible}.timeline-role{font-size:18px}.timeline--collapsed .timeline-item:not(:first-child),.timeline--collapsed .timeline-item:first-child:before{display:none}.timeline-toggle{border:1px solid rgba(var(--accent-rgb), .32);background:rgba(var(--accent-rgb), .08);color:var(--accent-strong);font-size:var(--fs-sm);letter-spacing:.08em;border-radius:999px;align-items:center;gap:8px;margin:2px 0 0 2px;padding:10px 18px;display:inline-flex}.timeline-toggle-chevron{width:7px;height:7px;transition:transform .3s var(--ease);border-bottom:2px solid;border-right:2px solid;transform:rotate(45deg)translate(-1px,-1px)}.timeline-toggle[aria-expanded=true] .timeline-toggle-chevron{transform:rotate(225deg)translate(-1px,-1px)}.about-card-tilt.tilted-card{height:auto}.about-card-tilt .tilted-card__body{height:auto!important}.about-card-tilt .tilted-card__front{-webkit-backdrop-filter:none;backdrop-filter:none;background:radial-gradient(420px 200px at 50% -12%, rgba(var(--accent-rgb), .12), transparent 72%), linear-gradient(180deg, #ffffff12, #ffffff06 42%), #10161eb8;position:static}}@property --trace-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.about-card{--trace-angle:0deg}.about-card:before{content:"";z-index:2;border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--trace-angle), #63e2f000 0deg, #63e2f000 285deg, #63e2f029 316deg, #63e2f080 340deg, #ffffffb3 349deg, #63e2f000 358deg, #63e2f000 360deg);-webkit-mask-composite:xor;filter:drop-shadow(0 0 4px #63e2f061);padding:1.6px;animation:9s linear infinite borderTrace;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes borderTrace{to{--trace-angle:360deg}}@media (prefers-reduced-motion:reduce){.about-card:before{opacity:0;animation:none}}.hero{min-height:100vh;padding-top:var(--nav-h);align-items:center;display:flex;position:relative;overflow:hidden}.hero-drift{z-index:1;position:absolute;inset:0}.hero-overlay{z-index:2;pointer-events:none;background:linear-gradient(90deg, #08080bd1 0%, #08080ba3 26%, #08080b66 48%, #08080b38 74%, #08080b57 100%), linear-gradient(180deg, #08080b66 0%, #08080b0f 38%, var(--bg) 100%);-webkit-backdrop-filter:blur(2px)saturate(1.04);backdrop-filter:blur(2px)saturate(1.04);position:absolute;inset:0}@media (width<=720px){.hero-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:radial-gradient(120% 70% at 50% 42%,#080a0f80,#08090dc7 82%),linear-gradient(#08080ba8 0%,#08080b75 30%,#08080be6 100%)}}.hero-page{z-index:3;padding-top:var(--nav-h);opacity:0;transition:opacity .65s var(--ease), transform .7s cubic-bezier(.22, .8, .2, 1);pointer-events:none;align-items:center;padding-bottom:56px;display:flex;position:absolute;inset:0;transform:translateY(26px)}.hero-page[data-active=true]{opacity:1;pointer-events:auto;transform:none}.hero-page--about:before{content:"";z-index:-1;background:linear-gradient(#070a0e52,#070a0e8f);position:absolute;inset:0}.hero-page--home{padding-top:0;padding-bottom:0}.hero-page--home .hero-inner{text-align:center;width:100%;padding-block:0}.hero-page--home .hero-title{align-items:center}.hero-page--home .hero-roles{padding-left:.32em}.hero-page--home .hero-tagline{margin-inline:auto}.hero-page--home .hero-fade{width:100%}.hero-page--home .hero-actions{justify-content:center}.hero-actions{gap:14px;margin-top:clamp(28px,3.8vh,48px)}.hero-actions .specular-button{border-color:color-mix(in srgb, var(--sb-tint) 16%, transparent);color:#b8cdd5;box-shadow:none;font-weight:400;--sb-tint-opacity:.02!important}.hero-actions .specular-button:hover:not(:disabled){background:color-mix(in srgb, var(--sb-tint) 8%, transparent);border-color:color-mix(in srgb, var(--sb-tint) 42%, transparent);color:#eafcff;box-shadow:0 10px 28px -16px color-mix(in srgb, var(--sb-tint) 45%, transparent)}.hero-stats{justify-content:center;align-items:stretch;margin-top:clamp(30px,4.6vh,54px);display:flex}.hero-stat{flex-direction:column;align-items:center;gap:10px;padding:0 clamp(22px,3.2vw,50px);display:flex}.hero-stat+.hero-stat{border-left:1px solid #ffffff1f}.hero-stat-num{font-family:var(--font-display);color:#fff;font-size:clamp(30px,3.1vw,50px);font-weight:600;line-height:1}.hero-stat-num em{color:var(--accent);margin-left:3px;font-size:.5em;font-style:normal;font-weight:500}.hero-stat-label{letter-spacing:.06em;color:var(--text-dim);font-size:14px}@media (width<=720px){.hero-stats{flex-wrap:wrap;gap:22px 0}.hero-stat{flex:0 0 50%;padding:0 12px}}.hero-roles{font-family:var(--font-display);letter-spacing:.24em;text-transform:uppercase;color:#93eef8;text-shadow:0 0 26px #63e2f061;margin-bottom:clamp(26px,3.4vh,46px);font-size:clamp(15px,1.4vw,20px);font-weight:500}.hero-title{flex-direction:column;gap:14px;display:flex}.hero-calli-wrap{line-height:0;display:inline-block;position:relative}.hero-calli{opacity:.88;filter:drop-shadow(0 8px 34px #0000008c);width:min(84vw,720px);height:auto;display:block}.hero-calli-glint{pointer-events:none;position:absolute;inset:0;overflow:hidden;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.hero-calli-glint-band{background:linear-gradient(100deg, transparent 0%, #fff0 30%, #fffffff2 52%, rgba(var(--accent-rgb), .4) 62%, transparent 82%);filter:blur(3px);width:38%;animation:6.5s ease-in-out 2s infinite calliGlint;position:absolute;top:-12%;bottom:-12%;left:0;transform:translate(-180%)skew(-18deg)}@keyframes calliGlint{0%,58%{opacity:0;transform:translate(-180%)skew(-18deg)}66%{opacity:1}84%,to{opacity:0;transform:translate(420%)skew(-18deg)}}@media (width<=720px){.hero-page--home .hero-inner{padding-inline:20px}.hero-roles{letter-spacing:.12em;margin-bottom:14px;font-size:13px;line-height:1.9}.hero-calli{opacity:.94;width:min(70vw,300px)}.hero-title{gap:0}.hero-tagline{max-width:300px;margin-top:16px;font-size:13px;line-height:1.75}.hero-stats{gap:18px 0;margin-top:22px}.hero-stat-num{font-size:28px}.hero-stat-label{font-size:12px}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px;display:flex}.hero-actions .specular-button{flex:1 1 0;min-width:0;padding:14px 8px;font-size:14px}}@media (width<=380px){.hero-roles{letter-spacing:.08em;font-size:12px}.hero-actions{gap:8px}.hero-actions .specular-button{letter-spacing:.02em;padding:13px 4px;font-size:13px}}@media (width<=720px) and (height<=760px){.hero-page--home{padding-bottom:20px}.hero-roles{margin-bottom:8px;font-size:12px}.hero-calli{width:min(54vw,212px)}.hero-tagline{margin-top:12px;font-size:12px;line-height:1.7}.hero-stats{gap:14px 0;margin-top:16px}.hero-stat-num{font-size:26px}.hero-stat-label{font-size:11px}.hero-stat{gap:7px}.hero-actions{margin-top:18px}}@media (prefers-reduced-motion:reduce){.hero-calli-glint-band{opacity:0;animation:none}}.hero-tagline{letter-spacing:.02em;color:var(--text-faint);text-shadow:0 1px 18px #04060ae6;max-width:620px;margin-top:clamp(22px,3vh,38px);font-size:15px;font-weight:400}.hero-actions{flex-wrap:wrap;display:flex}.hero-scroll{z-index:4;color:var(--text-faint);font-family:var(--font-display);letter-spacing:.34em;transition:color .3s var(--ease);flex-direction:column;align-items:center;gap:12px;font-size:11px;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.hero-scroll:hover{color:var(--accent)}.hero-scroll-line{background:linear-gradient(180deg, var(--accent), transparent);width:1px;height:52px;animation:scrollHint 2.2s var(--ease) infinite;transform-origin:top}@keyframes scrollHint{0%{transform-origin:top;transform:scaleY(0)}45%{transform-origin:top;transform:scaleY(1)}55%{transform-origin:bottom;transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(0)}}.projects{background:radial-gradient(1100px 600px at 80% -10%, rgba(var(--accent-rgb), .07), transparent 60%), var(--bg);position:relative}.projects-bar{top:var(--nav-h);z-index:30;padding:14px var(--gutter);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);background:#08080bb8;justify-content:space-between;align-items:center;gap:24px;display:flex;position:sticky}.projects-bar-brand{align-items:baseline;gap:12px;display:flex}.projects-bar-num{font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}.projects-bar-name{color:var(--text-dim);font-size:17px;font-weight:500}.projects-tabs{gap:6px;display:flex}.ptab{border:1px solid var(--line);color:var(--text-dim);font-size:var(--fs-sm);transition:border-color .35s var(--ease), color .35s var(--ease), background .35s var(--ease);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;display:inline-flex}.ptab-idx{font-family:var(--font-display);color:var(--text-faint);transition:color .35s var(--ease);font-size:10px}.ptab:hover{color:var(--text);border-color:var(--line-strong)}.ptab.active{background:rgba(var(--accent-rgb), .12);border-color:rgba(var(--accent-rgb), .45);color:var(--accent-strong)}.ptab.active .ptab-idx{color:var(--accent)}.project-panel{padding:0 var(--gutter)}.project-panel-inner{flex-direction:column;justify-content:flex-start;gap:clamp(18px,2.6vh,30px);padding:144px 0 8px;display:flex}.project-panel:last-child .project-panel-inner{padding-bottom:40px}.panel-head{align-items:baseline;gap:20px;display:flex}.panel-title{font-size:var(--fs-h2)}.panel-count{color:var(--text-dim);font-size:var(--fs-sm);letter-spacing:.12em}.panel-hint{color:var(--text-faint);font-size:var(--fs-xs);letter-spacing:.15em;margin-left:auto}.panel-grid{gap:clamp(14px,1.3vw,24px);display:grid}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-5{grid-template-columns:repeat(5,1fr)}.tile{min-width:0;display:block}.tile-media{aspect-ratio:16/9;border-radius:var(--radius);background:linear-gradient(135deg, var(--g-from), var(--g-to));border:1px solid var(--line);transition:border-color .4s var(--ease), box-shadow .4s var(--ease);position:relative;overflow:hidden}.tile:hover .tile-media{border-color:rgba(var(--accent-rgb), .4);box-shadow:0 20px 50px -22px rgba(var(--accent-rgb), .35)}.tile-img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease)}.tile:hover .tile-img{transform:scale(1.05)}.tile-ph{color:var(--text-faint);font-size:var(--fs-xs);letter-spacing:.1em;place-items:center;display:grid;position:absolute;inset:0}.tile-meta{align-items:baseline;gap:10px;margin-top:10px;display:flex}.tile-id{font-family:var(--font-display);font-size:var(--fs-xs);color:var(--accent)}.tile-title{white-space:nowrap;text-overflow:ellipsis;color:var(--text);font-size:clamp(13px,.95vw,16px);font-weight:700;overflow:hidden}.tile-desc{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;margin:8px 0 0;font-size:12.5px;overflow:hidden}.tile-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.tile-tag{letter-spacing:.02em;color:var(--accent);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .22);white-space:nowrap;transition:background .3s var(--ease), border-color .3s var(--ease);border-radius:4px;padding:3px 8px;font-size:10.5px}.tile:hover .tile-tag{background:rgba(var(--accent-rgb), .2);border-color:rgba(var(--accent-rgb), .45)}@media (width<=900px){.projects{scroll-margin-top:var(--nav-h)}.projects-bar{flex-direction:column;align-items:stretch;gap:14px;padding:16px 20px 14px}.projects-bar-brand{flex-direction:column;align-items:flex-start;gap:0}.projects-bar-num{letter-spacing:.3em;align-items:center;gap:12px;display:inline-flex}.projects-bar-num:before{content:"";background:var(--accent);opacity:.6;width:30px;height:1px}.projects-bar-name{color:var(--text);margin-top:14px;font-size:clamp(30px,8vw,40px);font-weight:600;line-height:1.12}.projects-tabs{scrollbar-width:none;overflow-x:auto}.projects-tabs::-webkit-scrollbar{display:none}.ptab{flex:none}.project-panel{scroll-margin-top:calc(var(--nav-h) + 164px)}.panel-grid.cols-3,.panel-grid.cols-5{grid-template-columns:repeat(2,1fr);gap:18px 12px;display:grid}.panel-hint{display:none}.project-panel-inner{padding:30px 0 22px}.project-panel:first-of-type .project-panel-inner{padding-top:48px}.project-panel:last-child .project-panel-inner{padding-bottom:44px}}.workflow{background:radial-gradient(1100px 520px at 50% 42%, rgba(var(--accent-rgb), .07), transparent 72%);position:relative}.wf-panel{border:1px solid rgba(var(--accent-rgb), .14);background:radial-gradient(820px 380px at 8% -8%, rgba(var(--accent-rgb), .13), transparent 60%), radial-gradient(720px 360px at 98% -4%, rgba(var(--accent-rgb), .09), transparent 58%), linear-gradient(180deg, #14171ff0, #0c0d13f5);border-radius:28px;padding:clamp(40px,5vw,68px) clamp(26px,4vw,60px) clamp(36px,4vw,56px);position:relative;overflow:hidden}.wf-panel:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 90% at 50% 0,#000 0%,#0000 68%);mask-image:radial-gradient(120% 90% at 50% 0,#000 0%,#0000 68%)}.wf-panel:after{content:"";background:linear-gradient(90deg, transparent, rgba(var(--accent-rgb), .55), transparent);height:1px;position:absolute;top:0;left:12%;right:12%}.wf-panel>*{z-index:1;position:relative}.wf-steps{grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px;margin-bottom:28px;display:grid}.wf-step{padding:4px 8px}.wf-no{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--accent);letter-spacing:.14em}.wf-title{font-size:var(--fs-h3);margin:14px 0 8px}.wf-desc{color:var(--text-dim);font-size:var(--fs-sm);margin:0;line-height:1.7}.wf-highlight{border:1px solid rgba(var(--accent-rgb), .18);border-radius:var(--radius-lg);background:radial-gradient(800px 300px at 80% 0%, var(--glow), transparent), #15182099;grid-template-columns:1.1fr 1fr;align-items:center;gap:32px;padding:36px 40px;display:grid}.wf-panel-tilt.tilted-card{width:100%;display:block}.wf-panel-tilt .tilted-card__body{width:100%!important;height:auto!important}.wf-panel-tilt .tilted-card__front{position:static}.wf-panel-tilt .wf-panel{box-shadow:0 44px 100px -50px #000000d9}.wf-badge{font-size:var(--fs-xs);letter-spacing:.12em;color:var(--accent);border:1px solid rgba(var(--accent-rgb), .4);border-radius:999px;margin-bottom:16px;padding:5px 14px;display:inline-block}.wf-highlight-text h3{font-size:var(--fs-h3);margin:0 0 12px}.wf-highlight-text p{color:var(--text-dim);margin:0;line-height:1.8}.wf-flow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.wf-flow span{border:1px solid var(--line-strong);font-size:var(--fs-sm);white-space:nowrap;background:#ffffff08;border-radius:10px;padding:10px 16px}.wf-flow i{color:var(--accent);font-style:normal}.wf-tools{flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;display:flex}.wf-tools-label{color:var(--text-faint);font-size:var(--fs-sm);letter-spacing:.1em;margin-right:6px}.wf-tool{border:1px solid var(--line);color:var(--text-dim);font-size:var(--fs-sm);background:#ffffff05;border-radius:999px;padding:8px 18px}.wf-toggle{display:none}@media (width<=980px){.wf-steps{grid-template-columns:repeat(2,1fr)}.wf-highlight{grid-template-columns:1fr}}@media (width<=720px){.wf-panel{border-radius:22px;padding:30px 22px 26px}.wf-body{display:none}.wf-body.is-open{display:block}.wf-toggle{border:1px solid rgba(var(--accent-rgb), .32);background:rgba(var(--accent-rgb), .08);color:var(--accent-strong);font-size:var(--fs-sm);letter-spacing:.08em;transition:border-color .3s var(--ease), background .3s var(--ease);border-radius:999px;align-items:center;gap:10px;margin-top:22px;padding:12px 20px;display:inline-flex}.wf-toggle:active{border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .16)}.wf-toggle-chevron{width:8px;height:8px;transition:transform .3s var(--ease);border-bottom:2px solid;border-right:2px solid;transform:rotate(45deg)translate(-1px,-1px)}.wf-panel.is-open .wf-toggle-chevron{transform:rotate(225deg)translate(-1px,-1px)}.wf-steps{gap:8px;margin:26px 0 22px}.wf-step{padding:12px 4px}.wf-highlight{gap:22px;padding:24px 20px}.wf-tools{gap:10px;margin-top:26px}}@media (width<=560px){.wf-steps{grid-template-columns:1fr}.wf-step{padding:10px 2px}}@media (width<=720px){.wf-panel-tilt.tilted-card,.wf-panel-tilt .tilted-card__body,.wf-panel-tilt .tilted-card__front{transform:none!important}}.spotlight-card{isolation:isolate;background-color:var(--spotlight-card-surface);box-shadow:var(--spotlight-card-shadow);border-radius:1.5rem;padding:2rem;position:relative;overflow:hidden}.spotlight-card__light,.spotlight-card__grain,.spotlight-card__border,.spotlight-card__edge{border-radius:inherit;pointer-events:none;position:absolute;inset:0}.spotlight-card__light,.spotlight-card__grain{z-index:-1;opacity:0}.spotlight-card__grain{mix-blend-mode:overlay;background-size:160px 160px}.spotlight-card__border,.spotlight-card__edge{z-index:1;-webkit-mask-composite:xor;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.spotlight-card__border{background:var(--spotlight-card-border)}.spotlight-card__edge{opacity:0}.strengths{background:var(--bg)}.strengths-grid{grid-template-columns:repeat(4,1fr);align-items:stretch;gap:clamp(20px,1.8vw,28px);display:grid}.strength-rc{border-radius:var(--radius-lg);height:100%;transition:transform .4s var(--ease);flex-direction:column;padding:clamp(28px,2.4vw,40px);display:flex}.strength-rc:hover{transform:translateY(-4px)}.strength-top{justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.strength-icon{width:52px;height:52px;color:var(--accent);background:rgba(var(--accent-rgb), .08);border:1px solid rgba(var(--accent-rgb), .2);border-radius:14px;justify-content:center;align-items:center;display:flex}.strength-index{font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.18em;color:var(--text-faint)}.strength-title{font-size:var(--fs-h3);color:#fff;font-weight:600}.strength-desc{color:var(--text-dim);font-size:var(--fs-body);margin-top:14px;line-height:1.85}.strength-tags{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:24px;display:flex}.strength-rc:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(70% 90% at 18% 12%, rgba(var(--accent-rgb), .1), transparent 60%), radial-gradient(55% 75% at 88% 92%, #7c8aff17, transparent 62%), linear-gradient(118deg, transparent 38%, rgba(var(--accent-rgb), .08) 49%, #ffffff0f 50%, rgba(var(--accent-rgb), .08) 51%, transparent 62%);background-position:0 0,100% 100%,-80%;background-size:220% 220%,220% 220%,260% 260%;animation:9s ease-in-out infinite alternate strength-flow;position:absolute;inset:0}@keyframes strength-flow{0%{background-position:0 0,100% 100%,-80%}to{background-position:100% 100%,0 0,180%}}@media (prefers-reduced-motion:reduce){.strength-rc:before{animation:none}}@media (width<=1100px){.strengths-grid{grid-template-columns:repeat(2,1fr)}}.strength-card-slot{display:contents}.strengths-dots,.strengths-hint{display:none}@media (width<=600px){.strengths-grid{grid-template-columns:1fr;padding-bottom:44px;display:grid}.strength-card-slot{transition:transform .34s var(--ease), opacity .34s var(--ease);touch-action:pan-y;-webkit-user-select:none;user-select:none;grid-area:1/1;display:block;position:relative}.strength-card-slot:not([data-rank="0"]){pointer-events:none}.strength-card-slot[data-rank="0"]{z-index:4}.strength-card-slot[data-rank="1"]{z-index:3;opacity:.9;transform:translateY(13px)scale(.965)}.strength-card-slot[data-rank="2"]{z-index:2;opacity:.66;transform:translateY(26px)scale(.93)}.strength-card-slot[data-rank="3"]{z-index:1;opacity:.42;transform:translateY(39px)scale(.895)}.strength-rc{padding:26px 22px}.strength-top{margin-bottom:18px}.strength-desc{font-size:15px}.strengths-dots{justify-content:center;gap:8px;margin-top:22px;display:flex}.sdot{width:7px;height:7px;transition:width .3s var(--ease), background .3s var(--ease);background:#ffffff2e;border:none;border-radius:999px;padding:0}.sdot.on{background:var(--accent);width:22px}.strengths-hint{text-align:center;color:var(--text-faint);letter-spacing:.18em;margin:10px 0 0;font-size:12px;display:block}}.venture{padding:0 0 var(--section-y)}.venture-card{border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:rgba(var(--accent-rgb), .03);flex-wrap:wrap;align-items:center;gap:18px 28px;padding:30px 40px;display:flex}.venture-label{font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.18em;color:var(--accent)}.venture-text{min-width:220px;color:var(--text-dim);font-size:var(--fs-lead);flex:1;margin:0}.venture-text strong{color:var(--text);font-weight:600}.venture-link{color:var(--accent);font-size:var(--fs-sm);transition:gap .25s var(--ease);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.venture-link:hover{gap:12px}@media (width<=720px){.venture-card{gap:12px 18px;padding:22px 20px}.venture-text{min-width:100%;font-size:15px}}.tech-text{touch-action:pan-y;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:relative}.tech-text-canvas{width:100%;height:100%;display:block}.contact{background:var(--bg-surface);min-height:100vh;padding-top:var(--section-y);flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.contact-bg{z-index:0;position:absolute;inset:0}.contact-bg .bg-grid{-webkit-mask-image:radial-gradient(circle at 50% 60%,#000 0%,#0000 70%);mask-image:radial-gradient(circle at 50% 60%,#000 0%,#0000 70%)}.contact-inner{z-index:1;text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.contact-title{letter-spacing:.01em;background:linear-gradient(#fff 0%,#b9bfca 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-top:28px;font-size:clamp(48px,7vw,110px);font-weight:700;line-height:1.04}.contact-sub{color:var(--text-dim);font-size:var(--fs-lead);text-wrap:balance;margin-top:28px}.contact-mail{margin-top:44px;padding:18px 38px;font-size:clamp(16px,1.4vw,19px)}.contact-socials{flex-wrap:wrap;justify-content:center;gap:34px;margin-top:40px;display:flex}.contact-socials a{color:var(--text-dim);font-size:var(--fs-body);transition:color .3s var(--ease);padding-block:4px;position:relative}.contact-socials a:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform .35s var(--ease);position:absolute;bottom:0;left:0;transform:scaleX(0)}.contact-socials a:hover{color:var(--accent)}.contact-socials a:hover:after{transform:scaleX(1)}.contact-foot{z-index:1;border-top:1px solid var(--line);margin-top:auto;padding-block:28px;position:relative}.contact-foot-inner{color:var(--text-faint);font-size:var(--fs-sm);justify-content:space-between;align-items:center;gap:16px;display:flex}.contact-foot-note{letter-spacing:.04em}.contact-top{color:var(--text-dim);transition:color .3s var(--ease)}.contact-top:hover{color:var(--accent)}.contact-title--tech{-webkit-text-fill-color:currentColor;background:0 0;width:min(94vw,940px);height:clamp(96px,11vw,168px);margin-top:20px}.contact-modal-overlay{z-index:200;-webkit-backdrop-filter:blur(10px)saturate(1.2);backdrop-filter:blur(10px)saturate(1.2);animation:cm-fade .28s var(--ease);background:#06090c8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.contact-modal{border:1px solid rgba(var(--accent-rgb), .22);-webkit-backdrop-filter:blur(28px)saturate(1.5);backdrop-filter:blur(28px)saturate(1.5);width:min(92vw,460px);animation:cm-pop .34s var(--ease);background:linear-gradient(#ffffff12,#ffffff05),#0e131a8c;border-radius:22px;padding:32px 30px 10px;position:relative;box-shadow:0 24px 80px -24px #000000bf,inset 0 1px #ffffff24}@keyframes cm-fade{0%{opacity:0}}@keyframes cm-pop{0%{opacity:0;transform:translateY(14px)scale(.97)}}.contact-modal-close{border:1px solid var(--line);width:34px;height:34px;color:var(--text-dim);cursor:pointer;transition:color .25s var(--ease), border-color .25s var(--ease), background .25s var(--ease);background:#ffffff0a;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.contact-modal-close svg{width:15px;height:15px}.contact-modal-close:hover{color:var(--accent);border-color:rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .08)}.contact-modal-eyebrow{font-family:var(--font-display);letter-spacing:.32em;color:var(--accent);font-size:11px}.contact-modal-title{color:var(--text);margin:10px 0 18px;font-size:22px;font-weight:600}.contact-modal-list{margin:0;padding:0;list-style:none}.contact-modal-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:15px 2px;display:flex}.contact-modal-row:last-child{border-bottom:none}.cm-icon{width:34px;height:34px;color:var(--accent);background:rgba(var(--accent-rgb), .08);border:1px solid rgba(var(--accent-rgb), .18);border-radius:10px;flex:none;place-items:center;display:grid}.cm-icon svg{width:16px;height:16px}.cm-label{width:38px;color:var(--text-faint);flex:none;font-size:13px}.cm-value{min-width:0;color:var(--text);transition:color .25s var(--ease);flex:1;font-size:15px;text-decoration:none}a.cm-value:hover{color:var(--accent)}.cm-copy{border:1px solid var(--line-strong);color:var(--text-dim);cursor:pointer;transition:color .25s var(--ease), border-color .25s var(--ease), background .25s var(--ease);background:0 0;border-radius:999px;flex:none;padding:6px 14px;font-size:12px}.cm-copy:hover{color:var(--accent);border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .07)}.cm-copy.is-copied{color:var(--accent);border-color:rgba(var(--accent-rgb), .55);background:rgba(var(--accent-rgb), .1)}@media (width<=720px){.contact{justify-content:flex-start;min-height:0}.contact-inner{gap:4px}.contact-title--tech{width:min(94vw,420px);height:64px;margin-top:12px}.contact-sub{max-width:320px;margin-top:18px;font-size:15px;line-height:1.7}.contact-mail{margin-top:30px}.contact-foot{margin-top:64px;padding-block:22px}.contact-foot-inner{text-align:center;flex-direction:column;gap:8px}}@media (width<=480px){.contact-modal{padding:28px 20px 8px}.contact-modal-row{flex-wrap:wrap;gap:10px}.cm-value{flex-basis:calc(100% - 90px)}.cm-copy{margin-left:auto}}@media (prefers-reduced-motion:reduce){.contact-modal-overlay,.contact-modal{animation:none}}.intro-stage{z-index:1;height:100vh;position:absolute;top:0;left:0;right:0}.intro-stage.is-pinned{position:fixed}.intro-spacer{height:100vh}html.intro-lock,html.intro-lock body{overflow:hidden}.hero-page--about .about{background:0 0;flex-direction:column;justify-content:center;width:100%;min-height:100%;padding-block:0;display:flex}.hero-page--about .about>.container{width:100%}@media (width<=720px){.intro-stage{height:auto;position:static}.intro-spacer{display:none}.hero{flex-direction:column;min-height:auto;padding-top:0;display:block;overflow:visible}.hero-page{z-index:3;opacity:1;pointer-events:auto;min-height:auto;padding:0;display:flex;position:relative;transform:none}.hero-page--home{min-height:100svh;padding-top:var(--nav-h);align-items:center;padding-bottom:32px}.hero-page--about{padding-block:clamp(56px,8vh,80px) 40px}.hero-page--about:before,.hero-scroll{display:none}}.detail{background:var(--bg);color:var(--text);min-height:100vh}.detail-topbar{z-index:60;height:60px;padding:0 var(--gutter);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);background:#08080bc7;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.detail-back{font-size:var(--fs-sm);letter-spacing:.08em;color:var(--text-dim);transition:color .3s var(--ease)}.detail-back:hover{color:var(--accent)}.detail-prevnext{align-items:center;gap:18px;display:flex}.detail-prevnext a{font-size:var(--fs-sm);color:var(--text-dim);transition:color .3s var(--ease)}.detail-prevnext a:hover{color:var(--accent)}.detail-prevnext .is-off{font-size:var(--fs-sm);color:var(--text-faint)}.detail-sep{background:var(--line);width:1px;height:14px}.detail-prevnext{gap:10px}.pn-btn{font-size:var(--fs-sm);letter-spacing:.06em;color:var(--text-dim);border:1px solid var(--line);transition:color .28s var(--ease), border-color .28s var(--ease), background .28s var(--ease);background:#ffffff0b;border-radius:999px;align-items:center;gap:7px;padding:7px 15px;display:inline-flex}.pn-btn .pn-arrow{transition:transform .28s var(--ease);font-size:.95em;line-height:1}a.pn-btn:hover{color:var(--accent);background:#63e2f014;border-color:#63e2f073}a.pn-btn:hover .pn-arrow:first-child{transform:translate(-3px)}a.pn-btn:hover .pn-arrow:last-child{transform:translate(3px)}.pn-btn.is-off{color:var(--text-faint);opacity:.45;cursor:default;background:0 0}.detail-hero{min-height:78vh;padding:0 var(--gutter) 56px;align-items:flex-end;display:flex;position:relative;overflow:hidden}.detail-hero-media{position:absolute;inset:0}.detail-hero-media img,.detail-hero-media video{object-fit:cover;width:100%;height:100%}.detail-hero--plain,.detail-hero--plain .detail-hero-media{background:#05070b}.detail-hero--plain .detail-hero-media:after{content:"";z-index:0;background-image:var(--heroCover);filter:blur(28px)brightness(.55)saturate(1.05);background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.1)}.detail-hero--plain .detail-hero-media img{z-index:1;object-fit:contain;position:relative}.detail-hero-overlay{background:linear-gradient(#0606098c 0%,#06060926 40%,#060609eb 100%),linear-gradient(90deg,#060609b3,#0000 55%);position:absolute;inset:0}.detail-hero-content{max-width:760px;position:relative}.detail-en{font-family:var(--font-display);letter-spacing:.34em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:12px;display:block}.detail-title{font-size:clamp(34px,5vw,68px);line-height:1.05}.detail-roles{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.tag-role{color:var(--accent-strong,var(--accent));border-color:rgba(var(--accent-rgb), .55);background:rgba(var(--accent-rgb), .12)}.detail-tags{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.detail-intro{max-width:720px;margin-top:20px}.detail-intro-text{color:#d7dee4;text-shadow:0 1px 10px #04060abf;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.85;display:-webkit-box;overflow:hidden}.detail-intro.open .detail-intro-text{-webkit-line-clamp:unset;display:block}.detail-intro-toggle{cursor:pointer;font-family:var(--font-display);letter-spacing:.12em;color:var(--accent);background:0 0;border:none;align-items:center;gap:6px;margin-top:8px;padding:0;font-size:12px;display:inline-flex}.detail-intro-toggle:hover{color:var(--accent-strong,var(--accent))}.detail-intro-arrow{font-size:11px}.detail-meta{right:var(--gutter);border-radius:var(--radius);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0a0c1099;flex-direction:column;gap:14px;width:340px;max-height:calc(78vh - 112px);padding:22px;display:flex;position:absolute;bottom:56px;overflow-y:auto}.detail-meta-intro{flex-direction:column;gap:10px;display:flex}.detail-meta-intro p{color:var(--text-dim);margin:0;font-size:13px;line-height:1.85}.detail-meta-sep{background:var(--line);height:1px;margin:2px 0}.detail-meta-row{flex-direction:column;gap:3px;display:flex}.detail-meta-label{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--text-faint);font-size:10px}.detail-meta-value{color:var(--text);font-size:14px}.detail-subnav{z-index:50;padding:0 var(--gutter);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#08080bc7;gap:clamp(28px,5vw,56px);display:flex;position:sticky;top:60px}.dsub{color:var(--text-faint);font-family:var(--font-display);letter-spacing:.14em;transition:color .3s var(--ease);background:0 0;border:none;border-radius:0;padding:18px 2px 16px;font-size:15px;position:relative}.dsub:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .3s var(--ease);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.dsub:hover,.dsub.active{color:var(--text)}.dsub.active:after{transform:scaleX(1)}.d-section{max-width:var(--max-width);padding:clamp(70px, 10vh, 120px) var(--gutter);margin-inline:auto;scroll-margin-top:124px}.d-eyebrow{font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.28em;color:var(--accent);align-items:center;gap:14px;margin-bottom:40px;display:flex}.d-eyebrow span{border:1px solid rgba(var(--accent-rgb), .5);border-radius:6px;padding:3px 8px;font-size:12px}.d-todo{color:var(--text-faint)}.d-bg-list{flex-direction:column;gap:22px;max-width:880px;display:flex}.d-bg-p{color:var(--text-dim);font-size:clamp(16px,1.4vw,20px);line-height:1.8}.d-bg-p:first-child{color:var(--text)}.d-strategy{border-radius:var(--radius);background:radial-gradient(800px 300px at 90% -40%, rgba(var(--accent-rgb),.12), transparent 60%), #ffffff05;border:1px solid var(--line);margin-bottom:24px;padding:clamp(28px,4vw,48px)}.d-strategy-lead{max-width:860px;font-size:clamp(20px,2.2vw,30px);line-height:1.5}.d-strategy-points{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.d-point{color:var(--accent-strong);border:1px solid rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .08);border-radius:999px;padding:8px 16px;font-size:13px}.d-platforms{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:clamp(50px,8vh,90px);display:grid}.d-platform{border-radius:var(--radius);border:1px solid var(--line);padding:24px}.d-platform h4{color:var(--accent);margin-bottom:8px;font-size:17px}.d-platform p{color:var(--text-dim);font-size:14px}.d-gallery{flex-direction:column;gap:clamp(28px,5vh,56px);display:flex}.d-board{margin:0}.d-board-media{border-radius:var(--radius);border:1px solid var(--line);cursor:zoom-in;background:#0c1115;position:relative;overflow:hidden}.d-board.pending .d-board-media{cursor:default}.d-gallery:has(.d-board--img):not(:has(.d-board.pending)){gap:0}.d-board--img .d-board-media{background:0 0;border:0;border-radius:0}.d-board--img .d-board-media:hover img{transform:none}.d-board--img+.d-board--img .d-board-media{border-top:0}.d-board-media img{width:100%;transition:transform .6s var(--ease);display:block}.d-board-media:hover img{transform:scale(1.015)}.d-shot-zoom{letter-spacing:.1em;color:#fff;opacity:0;transition:opacity .3s var(--ease);background:#0000008c;border-radius:999px;padding:5px 12px;font-size:11px;position:absolute;bottom:14px;right:14px}.d-board-media:hover .d-shot-zoom{opacity:1}.d-shot-slot{border:1px dashed var(--accent);background:color-mix(in srgb, var(--accent) 7%, transparent);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:460px;padding:clamp(34px,5vw,60px) clamp(24px,5vw,56px);display:flex}.slot-badge{font-family:var(--font-display);letter-spacing:.22em;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:4px 14px;font-size:11px}.slot-title{margin:2px 0 0;font-size:clamp(19px,2vw,26px)}.slot-need{color:var(--text-dim);max-width:640px;margin:0;font-size:15px;line-height:1.8}.slot-spec{letter-spacing:.04em;color:var(--text-faint);font-size:12.5px}.slot-file{color:var(--accent);border:1px solid var(--line);background:#ffffff0d;border-radius:8px;padding:3px 11px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.slot-art{width:min(330px,62%);margin-bottom:6px}.slot-art>rect:first-child{stroke:rgba(var(--accent-rgb), .32)}.sa-line{fill:rgba(var(--accent-rgb), .16)}path.sa-line,circle.sa-line{fill:none;stroke:rgba(var(--accent-rgb), .55);stroke-width:1.6px}.sa-block{fill:rgba(var(--accent-rgb), .1);stroke:rgba(var(--accent-rgb), .32);stroke-width:1.5px}.sa-canvas{fill:#ffffff08;stroke:rgba(var(--accent-rgb), .28);stroke-width:1.5px}.slot-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 16px;margin-top:2px;display:flex}.d-metrics{flex-wrap:wrap;gap:18px;margin-bottom:40px;display:flex}.d-metric{border-radius:var(--radius);border:1px solid var(--line);background:#ffffff05;flex-direction:column;flex:180px;gap:6px;padding:30px;display:flex}.d-metric-value{color:var(--accent);font-size:clamp(34px,4vw,52px);font-weight:600;line-height:1}.d-metric-label{color:var(--text-dim);font-size:14px}.d-facts{flex-direction:column;gap:12px;margin-bottom:22px;display:flex}.d-facts li{color:var(--text);padding-left:26px;font-size:16px;position:relative}.d-facts li:before{content:"";background:var(--accent);border-radius:2px;width:8px;height:8px;position:absolute;top:9px;left:0}.d-note{color:var(--text-faint);font-size:13px}.d-linkcards{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:clamp(44px,6vh,70px);display:grid}.d-linkcard{border-radius:var(--radius);border:1px solid var(--line);background:#ffffff05;justify-content:space-between;align-items:center;gap:22px;padding:26px 28px;display:flex}.d-linkcard.muted{opacity:.55}.d-linkcard h4{align-items:center;gap:10px;margin-bottom:8px;font-size:17px;display:flex}.d-linkcard p{color:var(--text-dim);max-width:420px;font-size:13.5px;line-height:1.7}.d-live-dot{background:#34d399;border-radius:50%;width:8px;height:8px;box-shadow:0 0 10px #34d399}.d-live-text{color:#34d399;letter-spacing:.06em;font-size:12px;font-weight:400}.d-link-btn{white-space:nowrap;color:#04141a;background:var(--accent);transition:background .3s var(--ease);border-radius:999px;flex:none;padding:11px 20px;font-size:13.5px}.d-link-btn:hover{background:var(--accent-strong)}.d-link-btn.ghost{color:var(--text);border:1px solid var(--line-strong);background:0 0}.d-link-btn.ghost:hover{border-color:var(--accent);color:var(--accent);background:0 0}.d-link-btn.locked{color:var(--text-dim)}.d-link-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.d-facts-title{letter-spacing:.16em;color:var(--text-faint);margin-bottom:16px;font-size:13px}.detail-footer{border-top:1px solid var(--line)}.detail-switch{max-width:var(--max-width);padding:40px var(--gutter) 60px;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin-inline:auto;display:grid}.switch-card{flex-direction:column;gap:6px;display:flex}.switch-card.right{text-align:right;align-items:flex-end}.switch-dir{letter-spacing:.12em;color:var(--text-faint);font-size:12px}.switch-name{color:var(--text);transition:color .3s var(--ease);font-size:16px}.switch-card:hover .switch-name{color:var(--accent)}.switch-cta{color:#04141a;background:var(--accent);transition:background .3s var(--ease);border-radius:999px;padding:13px 28px;font-size:14px}.switch-cta:hover{background:var(--accent-strong)}.lightbox{z-index:200;cursor:zoom-out;background:#040407e6;place-items:center;padding:40px;display:grid;position:fixed;inset:0}.lightbox img{border-radius:8px;max-width:100%;max-height:92vh}.lightbox-close{color:#fff;font-size:40px;line-height:1;position:absolute;top:20px;right:30px}.detail-empty{align-content:center;place-items:center;gap:24px;min-height:100vh;display:grid}.detail-video-stage{position:relative}.dvs-media{width:100%}.dvs-media video{aspect-ratio:16/9;object-fit:cover;background:#05070b;border:0;border-radius:0;width:100%;display:block}@media (width>=901px){.detail--vf .detail-video-stage{background:#05070b;height:calc(100dvh - 60px)}.detail--vf .dvs-media{background:#05070b;position:absolute;inset:0}.detail--vf .dvs-media:after{content:"";z-index:0;background-image:var(--heroCover);filter:blur(30px)brightness(.5)saturate(1.1);background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.12)}.detail--vf .dvs-media video{z-index:1;aspect-ratio:auto;object-fit:contain;height:100%;position:relative}}.detail-video-stage{isolation:isolate}.dvs-info{z-index:2;width:auto;padding:clamp(20px, 3vh, 40px) var(--gutter) clamp(34px, 5vh, 56px);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0;border:0;position:absolute;bottom:0;left:0;right:0}.dvs-info:before{content:"";z-index:0;-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);background:linear-gradient(#06090e00 0%,#06090e80 52%,#06090ed1 100%);position:absolute;inset:clamp(4px,1vh,14px) 0 0;-webkit-mask-image:linear-gradient(#0000 0%,#000000ad 20%,#000 42%);mask-image:linear-gradient(#0000 0%,#000000ad 20%,#000 42%)}.dvs-info>*{z-index:1;max-width:760px;position:relative;transform:translateY(-20px)}.dvs-info .detail-intro-toggle{pointer-events:auto}.dvs-info .detail-en{margin-bottom:12px}.dvs-info .detail-title{font-size:clamp(26px,3vw,42px);line-height:1.12}.dvs-info .detail-roles{margin-top:14px}.dvs-info .detail-intro{margin-top:16px}.dvs-info .detail-intro-text{color:#dfe7ee;text-shadow:0 1px 10px #0000008c}@media (width<=900px){.detail-video-stage{padding-top:0}.dvs-info{width:auto;margin:22px var(--gutter) 8px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:auto;background:0 0;border:0;border-radius:0;padding:0;position:static;-webkit-mask-image:none;mask-image:none}.dvs-info:before{display:none}.dvs-info>*{transform:none}.dvs-info .detail-intro-text{color:var(--text-dim);text-shadow:none}.detail-hero{min-height:70vh;padding-bottom:36px}.detail-meta{width:100%;margin-top:30px;position:relative;bottom:auto;right:auto}.detail-hero{flex-direction:column;justify-content:flex-end;align-items:stretch}.d-platforms,.d-linkcards{grid-template-columns:1fr}.d-linkcard{flex-direction:column;align-items:flex-start;gap:16px}.d-link-actions{justify-content:flex-start}.d-shot,.d-shot.odd{grid-template-columns:1fr;gap:20px}.d-shot.odd .d-shot-media{order:0}.detail-switch{grid-template-columns:1fr}.switch-card.right{text-align:left;align-items:flex-start}.detail-subnav{scrollbar-width:none;-webkit-backdrop-filter:blur(20px)saturate(1.2);backdrop-filter:blur(20px)saturate(1.2);background:#08080bf5;overflow-x:auto}.detail-subnav::-webkit-scrollbar{display:none}.dsub{flex:none}}
