@font-face{font-family:FC Brush;src:url(/fonts/MaShanZheng-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{color:#f4f4ef;font-synthesis:none;text-rendering:optimizelegibility;--acid:#ff542d;--ink:#050505;--paper:#f3f1eb;--muted:#94948e;--line:#ffffff24;--shell:min(1700px, calc(100vw - 96px));--scroll-y:0px;background:#050505;font-family:Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--ink);min-width:320px;color:var(--paper);margin:0;overflow-x:hidden}body::selection{color:var(--ink);background:var(--acid)}button,a{color:inherit}a{text-decoration:none}button{font:inherit}:focus-visible{outline:2px solid var(--acid);outline-offset:5px}.inline-editable{outline-offset:4px;cursor:text;border-radius:2px;outline:1px dashed #ff7d4a99}[data-site-text]{overflow-wrap:anywhere}.hero h1{max-width:100%}.inline-editable:hover,.inline-editable:focus-visible{background-color:#ff542d14;outline:2px solid #ff794a}.text-editor-toolbar{z-index:80;color:#eee3d8;background:#17100ef5;border:1px solid #76503c;flex-wrap:wrap;align-items:center;gap:16px;max-width:calc(100% - 40px);padding:12px 16px;font-size:12px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 32px #0006}.text-editor-toolbar button{background:var(--acid);color:#160c08;cursor:pointer;border:0;min-height:44px;padding:10px 18px}.text-editor-toolbar button:disabled{opacity:.5;cursor:wait}.text-editor-toolbar p{flex-basis:100%;margin:0;line-height:1.6}.text-editor-toolbar a{color:#cbb6a8;font-size:11px}.text-admin-login{color:#a99b90;align-self:flex-start;align-items:center;min-height:44px;margin-top:20px;font-size:11px;display:inline-flex}.text-editor-dialog{z-index:100;overscroll-behavior:contain;width:min(560px,100% - 32px);max-height:85dvh;color:var(--paper);background:#15100d;border:1px solid #604735;padding:28px;overflow:auto}.text-editor-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000b}.text-editor-kicker{letter-spacing:.15em;color:var(--acid);margin:0 0 18px;font-size:9px}.text-editor-dialog h2{margin:0 0 28px;font-size:25px;font-weight:500}.text-editor-dialog label{color:#bdb0a4;margin-bottom:12px;font-size:12px;display:block}.text-editor-dialog textarea{resize:vertical;width:100%;min-height:160px;max-height:35dvh;font:inherit;color:var(--paper);background:#090807;border:1px solid #645142;padding:14px;font-size:16px;line-height:1.8}.text-editor-help{color:#aa9b8e;font-size:11px;line-height:1.7}.text-editor-error{color:#ffac8d;font-size:13px;line-height:1.8}.text-editor-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.text-editor-actions button{min-height:46px;color:var(--paper);cursor:pointer;background:0 0;border:1px solid #645142;padding:12px 22px}.text-editor-actions button[type=submit]{background:var(--acid);border-color:var(--acid);color:#160b07}.text-editor-actions button:disabled{opacity:.45;cursor:wait}.text-layout-selected{outline-offset:6px;outline:2px solid #ff845b}.text-editor-dialog.text-layout-panel{z-index:100;width:350px;max-width:calc(100% - 32px);max-height:calc(100dvh - 110px);margin:0;padding:22px;position:fixed;inset:92px 16px auto auto;box-shadow:0 14px 70px #000b}.text-layout-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.text-layout-header .text-editor-kicker{margin-bottom:10px}.text-layout-header h2{margin:0;font-size:23px}.text-layout-header>button{width:40px;height:40px;color:var(--paper);cursor:pointer;background:0 0;border:1px solid #645142;flex-shrink:0;font-size:24px}.text-layout-device{color:#f5bc91;margin:20px 0;font-size:12px}.text-layout-device span{float:right;color:#a99a8c;font-size:10px}.text-layout-panel fieldset{border:0;min-width:0;margin:0;padding:0}.text-editor-dialog.text-layout-panel textarea{min-height:78px;max-height:150px;font-size:14px}.text-layout-panel select{width:100%;min-height:42px;font:inherit;color:var(--paper);background:#090807;border:1px solid #645142;margin:10px 0 18px;padding:8px;font-size:12px;display:block}.text-layout-panel label{margin:16px 0 10px;font-size:12px}.text-layout-panel label output{float:right;color:#f6b994;font-variant-numeric:tabular-nums}.text-layout-panel input[type=range]{width:100%;min-height:30px;accent-color:var(--acid);cursor:ew-resize;margin:0}.text-layout-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.text-layout-content{border-bottom:1px solid #64514260;padding:4px 0 12px}.text-layout-content summary{cursor:pointer;min-height:36px;padding-block:6px;font-size:12px;line-height:1.8}.text-layout-content summary span{color:#9f9084;white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom;max-width:55%;margin-left:10px;font-size:10px;display:inline-block;overflow:hidden}.text-layout-row select{margin-bottom:0}.text-layout-reset{color:#b9a89a;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;padding:12px 0;font-size:11px;text-decoration:underline}.text-layout-panel .text-editor-actions{background:#15100df5;margin-top:10px;padding:14px 0;position:sticky;bottom:-22px}.text-layout-panel .text-editor-actions button{padding-inline:18px;font-size:13px}@media (width<=760px){.text-editor-dialog.text-layout-panel{inset:auto 12px calc(76px + env(safe-area-inset-bottom)) 12px;width:auto;max-width:none;max-height:50dvh;padding:18px}.text-editor-dialog.text-layout-panel textarea{font-size:16px}.text-layout-panel .text-editor-actions{bottom:-18px}.text-editor-toolbar{bottom:calc(80px + env(safe-area-inset-bottom));gap:8px 12px;max-width:calc(100% - 24px);padding:10px 12px;font-size:11px;right:12px}.text-editor-dialog{padding:24px 20px}}.mobile-brand-name,.mobile-dock{display:none}.hero-roles{color:#c0b7af;letter-spacing:.15em;margin:32px 0 0;font-size:14px}.hero-work-link{border:1px solid var(--line);align-items:center;gap:24px;padding:16px 22px;font-size:14px;display:flex}.hero-work-link svg{width:20px;color:var(--acid);transform:rotate(90deg)}.work-filters{scrollbar-width:none;gap:8px;margin-bottom:24px;padding:4px 0 18px;display:flex;overflow-x:auto}.work-filters::-webkit-scrollbar{display:none}.work-filters button{border:1px solid var(--line);color:#b9b2ac;cursor:pointer;background:0 0;border-radius:0;flex-shrink:0;min-height:44px;padding:10px 18px;font-size:13px}.work-filters button span{opacity:.65;margin-left:14px;font-size:10px}.work-filters button[aria-pressed=true]{background:var(--paper);color:var(--ink);border-color:var(--paper)}.sample-note,.empty-work{color:#aaa19a;margin:0 0 28px;font-size:12px;line-height:1.8}.contact-copy{border:1px solid var(--line);cursor:pointer;background:0 0;align-self:flex-start;align-items:center;gap:24px;min-height:48px;margin-top:24px;padding:12px 18px;display:flex}.contact-copy svg{width:18px}.project-dialog{width:min(900px,100% - 32px);max-height:90svh;color:var(--paper);overscroll-behavior:contain;background:#100d0b;border:1px solid #44362e;padding:0;position:fixed;inset:0}.project-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c}.project-dialog-content{padding:28px}.project-dialog-content h2{margin:20px 0 12px;font-size:30px}.project-dialog-content>p:not(.eyebrow){color:#b0a69e;font-size:14px;line-height:1.8}.project-dialog-content>img{width:100%;height:auto;margin-top:24px;display:block}.dialog-close{border:1px solid var(--line);cursor:pointer;background:#181310;align-items:center;gap:20px;min-height:44px;margin-bottom:24px;margin-left:auto;padding:8px 16px;display:flex}.dialog-close span{font-size:24px}svg{fill:none;stroke:currentColor;stroke-width:1.6px;display:block}.section-shell{width:var(--shell);margin-inline:auto}.topbar{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#050505c7,#05050514);border-bottom:1px solid #ffffff21;grid-template-columns:1fr auto 1fr;align-items:center;height:88px;padding:0 max(48px,50vw - 850px);display:grid;position:fixed;top:0;left:0;right:0}.brand{letter-spacing:-.05em;place-items:center;width:38px;height:38px;font-size:12px;font-weight:700;display:grid;position:relative}.brand:before,.brand:after{content:"";border:1px solid #fffc;position:absolute;inset:0;transform:rotate(45deg)scale(.72)}.brand:after{border-color:#ff542db8;transform:rotate(45deg)scale(.48)}.brand span{z-index:1;position:relative}.brand i{background:var(--acid);border-radius:50%;width:4px;height:4px;position:absolute;top:2px;right:2px}.topbar nav{gap:48px;display:flex}.topbar nav a{color:#ffffffb3;font-size:13px;transition:color .25s}.topbar nav a:hover{color:var(--acid)}.nav-contact{border:1px solid #fff6;border-radius:999px;justify-self:end;align-items:center;gap:12px;padding:11px 18px;font-size:13px;transition:background .25s,color .25s,border .25s;display:flex}.nav-contact svg{width:15px}.nav-contact:hover{background:var(--acid);color:#070707;border-color:var(--acid)}.hero{isolation:isolate;background:#050403;height:max(780px,100svh);position:relative;overflow:hidden}.hero:before,.hero:after{content:"";z-index:-1;pointer-events:none;border-radius:50%;position:absolute}.hero:before{background:radial-gradient(circle at 46% 51%,#80371347,#36170a1f 42%,#0000 69%);border:1px solid #ff704629;width:min(78vw,1420px);height:min(78vw,1420px);top:-15vw;right:-21vw;box-shadow:0 0 0 11vw #57220d06}.hero:after{border:1px solid #ffffff14;width:min(42vw,740px);height:min(42vw,740px);bottom:-22vw;right:-8vw}.hero-media,.hero-media video,.hero-overlay,.hero-grid{position:absolute;inset:0}.hero-media{z-index:-4;transform:translateY(var(--scroll-y)) scale(1.05);opacity:.26;filter:grayscale(.92)sepia(.7)saturate(1.35)brightness(.55);background:#050505 url(/assets/hero-art.png) 50%/cover no-repeat}.hero-media video{object-fit:cover;width:100%;height:100%;animation:14s ease-in-out infinite alternate hero-breathe}.hero-overlay{z-index:-3;background:radial-gradient(circle at 78% 44%,#682b0e7a,#210e0829 34%,#0000 59%),linear-gradient(90deg,#030303f2 0%,#04030394 45%,#07040333 76%),linear-gradient(#0303036b 0%,#0000 35%,#030303db 100%)}.hero-grid{z-index:-2;opacity:.1;background-image:linear-gradient(#ffffff1f 1px,#0000 1px),linear-gradient(90deg,#ffffff1f 1px,#0000 1px);background-size:calc(16.6667vw - 16px) 100%,calc(16.6667vw - 16px) 100%;-webkit-mask-image:linear-gradient(#00000059,#0000 86%);mask-image:linear-gradient(#00000059,#0000 86%)}.hero-content{width:var(--shell);flex-direction:column;justify-content:space-between;height:100%;margin-inline:auto;padding:136px 0 56px;display:flex}.hero-kicker,.section-label{letter-spacing:.13em;align-items:center;gap:34px;font-size:11px;display:flex}.hero-kicker span:first-child:before{content:"";background:var(--acid);border-radius:50%;width:7px;height:7px;margin-right:10px;display:inline-block;box-shadow:0 0 12px #ff542d8c}.hero-kicker span:last-child{color:#ffffff7a}.hero-title-wrap{margin-top:auto;margin-bottom:auto;transform:translateY(5vh)}.hero-intro{color:#f4f2ed;letter-spacing:.025em;text-wrap:balance;max-width:min(100%,1120px);margin:0 0 36px 4px;padding-left:24px;font-family:OPPO Sans,OPPOSans,Noto Sans SC,HarmonyOS Sans SC,PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(34px,2.8vw,50px);font-weight:600;line-height:1.55;position:relative}.hero-intro:before{content:"";background:#ff845b;width:2px;position:absolute;top:.3em;bottom:.3em;left:0}.hero h1{color:#f2f2ed;letter-spacing:-.075em;flex-direction:column;width:max-content;margin:0;font-size:clamp(96px,12.5vw,238px);font-weight:600;line-height:.72;display:flex}.hero h1>span:last-child{color:#0000;-webkit-text-stroke:1px #f3f1eba3;margin-left:.62em}.accent-dot{color:var(--acid);-webkit-text-stroke:0}.hero-bottom{align-items:end;gap:40px;display:flex}.hero-bottom p{color:#ffffff9e;margin:0;font-size:14px;line-height:1.8}.circle-link{border:1px solid #ffffff61;border-radius:50%;place-items:center;width:64px;height:64px;transition:all .35s;display:grid}.circle-link svg{width:20px;transform:rotate(90deg)}.circle-link:hover{color:var(--ink);background:var(--acid);border-color:var(--acid);transform:translateY(4px)}.scroll-cue{writing-mode:vertical-rl;letter-spacing:.2em;color:#ffffff6b;align-items:center;gap:16px;font-size:9px;display:flex;position:absolute;bottom:48px;right:max(48px,50vw - 850px)}.scroll-cue i{background:linear-gradient(var(--acid), transparent);width:1px;height:48px}@keyframes hero-breathe{0%{transform:scale(1.02)}to{transform:scale(1.08)}}.about,.work,.strengths{padding-block:150px}.about{color:var(--paper);background:radial-gradient(circle at 88% 18%,#5e260d38,#0000 36%),#090807;position:relative;overflow:hidden}.about:after{content:"";pointer-events:none;border:1px solid #ff542d17;border-radius:50%;width:820px;height:820px;position:absolute;top:90px;right:-510px}.section-label{color:#77716c;margin-bottom:100px}.section-label span{width:32px;height:20px;color:var(--acid);border:1px solid;border-radius:999px;place-items:center;font-size:9px;display:grid}.section-label p{margin:0}.about-layout{grid-template-columns:1.1fr .9fr;align-items:start;gap:10vw;display:grid}.about-heading>p{letter-spacing:-.06em;max-width:850px;margin:0;font-size:clamp(52px,5.6vw,106px);font-weight:520;line-height:1.04}.about-heading>p span,.strengths-heading span{z-index:0;position:relative}.about-heading>p span:after,.strengths-heading span:after{content:"";z-index:-1;background:var(--acid);height:.18em;position:absolute;bottom:.04em;left:-.03em;right:-.06em}.about-lead{color:#aaa49e;margin:0;font-size:clamp(18px,1.45vw,27px);line-height:1.65}.profile-grid{border-top:1px solid #ffffff26;grid-template-columns:1fr 1fr;margin-top:64px;display:grid}.profile-grid>div,.profile-grid>button{border-bottom:1px solid #ffffff26;flex-direction:column;align-items:flex-start;gap:12px;min-height:96px;padding:22px 0;display:flex}.profile-grid>:nth-child(odd){border-right:1px solid #ffffff26;padding-right:20px}.profile-grid>:nth-child(2n){padding-left:24px}.profile-grid span{color:#77716c;letter-spacing:.16em;font-size:9px}.profile-grid strong{font-size:15px;font-weight:520}.phone-copy{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0}.phone-copy:hover strong{text-decoration:underline;-webkit-text-decoration-color:var(--acid);text-decoration-color:var(--acid);text-decoration-thickness:3px}.software-row{border-top:1px solid #ffffff24;grid-template-columns:160px minmax(0,1fr);gap:32px;margin-top:140px;padding-top:34px;display:grid}.software-row>p{letter-spacing:.18em;color:#77716c;margin:0;padding-top:12px;font-size:10px}.software-row>p>span{letter-spacing:.08em;color:#b1a69d;margin-top:12px;font-size:12px;display:block}.software-list{grid-template-columns:repeat(9,minmax(0,1fr));gap:16px;display:grid}.software-item{color:#918b85;text-align:center;flex-direction:column;align-items:center;gap:14px;min-width:0;font-size:12px;display:flex}.software-copy{flex-direction:column;align-items:center;gap:6px;max-width:100%;display:flex}.software-copy strong{color:#f3eee8;letter-spacing:.035em;font-size:12px;font-weight:500;line-height:1.4}.software-copy small{color:#aca39a;font-size:11px;line-height:1.4}.software-icon{aspect-ratio:1;color:#e9e5df;letter-spacing:-.04em;background:0 0;border:0;border-radius:17px;flex:none;place-items:center;width:72px;max-width:100%;height:72px;font-size:11px;font-weight:700;transition:all .3s;display:grid;overflow:hidden}.software-icon svg{fill:none;stroke:none;width:100%;height:100%;display:block}.software-icon-vector{border-radius:0;overflow:visible}.software-icon-vector img{object-fit:contain;width:100%;height:100%;display:block}.software-item:hover .software-icon{filter:drop-shadow(0 6px 14px #ff92501f);transform:translateY(-4px)}.work{background:radial-gradient(circle at 58% 18%,#4c1d0c29,#0000 32%),#070706;position:relative;overflow:hidden}.work:before{content:"";pointer-events:none;border:1px solid #ff542d0e;border-radius:50%;width:880px;height:880px;position:absolute;top:20px;left:39%}.work .section-label,.strengths .section-label{color:#6f6f69}.work-heading{justify-content:space-between;align-items:end;margin-bottom:76px;display:flex}.work-heading h2{letter-spacing:-.075em;margin:0;font-size:clamp(84px,11vw,190px);font-weight:600;line-height:.74}.work-heading p{color:#8d8d86;max-width:420px;margin:0;font-size:14px;line-height:1.8}.project-grid{grid-template-columns:1fr 1fr;gap:96px 28px;display:grid}.project-right{grid-column:1/-1;width:calc(50% - 14px);margin-left:auto}.project-visual{width:100%;color:inherit;cursor:pointer;aspect-ratio:4/5;background-color:#111;background-image:url(/assets/project-atlas.png);background-repeat:no-repeat;background-size:300% 100%;border:0;padding:0;display:block;position:relative;overflow:hidden}.atlas-left{background-position:0}.atlas-center{background-position:50%}.atlas-right{background-position:100%}.project-visual.custom-cover{background-position:50%;background-size:cover}.project-visual:after{content:"";background:linear-gradient(#0000001f,#0000 70%,#0000006b);transition:background .5s;position:absolute;inset:0}.project-card:hover .project-visual:after{background:linear-gradient(#0000,#0000 78%,#0000004d)}.project-scanline{z-index:1;filter:blur(18px);background:#ffffff17;width:8%;height:160%;transition:left .8s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;left:-30%;transform:rotate(15deg)}.project-card:hover .project-scanline{left:125%}.project-index{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #ffffff8c;border-radius:999px;place-items:center;width:42px;height:25px;font-size:10px;display:grid;position:absolute;top:24px;left:24px}.project-sample{z-index:2;color:#e0d7ce;letter-spacing:.08em;background:#080605b3;padding:6px 10px;font-size:10px;position:absolute;bottom:20px;left:20px}.project-open{z-index:3;background:var(--paper);color:#111;opacity:0;border:0;border-radius:50%;place-items:center;width:52px;height:52px;transition:all .35s;display:grid;position:absolute;top:24px;right:24px;transform:scale(.85)}.project-open svg{width:20px}.project-card:hover .project-open{opacity:1;transform:scale(1)}.project-copy{grid-template-columns:1fr minmax(220px,.7fr);gap:28px;padding-top:26px;display:grid}.eyebrow{color:#74746e;letter-spacing:.13em;margin:0 0 18px;font-size:9px}.project-copy h3{margin:0;font-size:clamp(26px,2vw,36px);font-weight:500;display:inline}.project-en{color:#666660;margin-left:12px;font-size:12px}.project-copy>p{color:#8b8b84;margin:26px 0 0;font-size:13px;line-height:1.75}.strengths{background:radial-gradient(circle at 14% 78%,#531f0c21,#0000 32%),#0c0a09}.strengths-heading{margin-bottom:90px}.strengths-heading h2{letter-spacing:-.06em;max-width:1120px;margin:0;font-size:clamp(52px,6vw,108px);font-weight:520;line-height:1.05}.strength-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.strength-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;justify-content:space-between;min-height:460px;padding:28px;transition:background .4s,color .4s;display:flex;position:relative;overflow:hidden}.strength-card:hover{color:#10100e;background:var(--acid)}.strength-top{color:#7c7c74;justify-content:space-between;font-size:11px;display:flex}.strength-top i{background:var(--acid);border-radius:50%;width:6px;height:6px}.strength-card:hover .strength-top,.strength-card:hover .strength-text{color:#0000009e}.strength-card:hover .strength-top i{background:#111}.strength-tag{color:#71716a;letter-spacing:.15em;margin:0 0 20px;font-size:9px}.strength-card h3{margin:0 0 18px;font-size:25px;font-weight:500}.strength-text{color:#8b8b84;max-width:300px;margin:0;font-size:13px;line-height:1.75}.strength-mark{opacity:.18;width:152px;height:152px;position:absolute;bottom:-36px;right:-36px;transform:rotate(45deg)}.strength-mark span{border:1px solid;position:absolute;inset:0}.strength-mark span:last-child{inset:28px}.contact{min-height:max(780px,100svh);color:var(--paper);background:radial-gradient(circle at 72% 52%,#692c1175,#25100933 37%,#0000 66%),#070605;position:relative;overflow:hidden}.contact:before{content:"";border:1px solid #ff6c4526;border-radius:50%;width:75vw;height:75vw;position:absolute;top:-35vw;right:-20vw;box-shadow:0 0 0 5vw #85301205,0 0 0 13vw #85301203,0 0 0 22vw #85301202}.contact-noise{opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.33'/%3E%3C/svg%3E");position:absolute;inset:0}.contact-inner{z-index:1;flex-direction:column;min-height:max(780px,100svh);padding-block:72px 46px;display:flex;position:relative}.section-label.light{color:#ffffff75;margin-bottom:auto}.contact-main>p{margin:0 0 22px 6px;font-size:14px}.contact-main h2{letter-spacing:-.075em;margin:0;font-size:clamp(82px,10.3vw,190px);font-weight:600;line-height:.79}.contact-main em{color:#0000;-webkit-text-stroke:1px #f3f1ebb8;font-family:Georgia,Times New Roman,serif;font-weight:400}.contact-bottom{border-top:1px solid #ffffff2e;grid-template-columns:1fr 1fr;align-items:end;margin-top:auto;padding-top:38px;display:grid}.contact-bottom>a{grid-template-columns:auto auto;align-items:center;gap:8px 28px;width:max-content;display:grid}.contact-bottom a span{letter-spacing:.14em;color:#ffffff75;grid-column:1/-1;font-size:9px}.contact-bottom a strong{font-size:clamp(20px,2.2vw,34px);font-weight:500;transition:color .3s}.contact-bottom a:hover strong{color:var(--acid)}.contact-bottom a svg{width:24px;transition:transform .3s}.contact-bottom a:hover svg{transform:translate(5px,-5px)}.contact-meta{text-align:right;color:#ffffff70;justify-self:end;font-size:11px;line-height:1.8}.contact-meta p{margin:0}.reveal{opacity:0;transition:opacity .85s cubic-bezier(.2,.8,.2,1),transform .85s cubic-bezier(.2,.8,.2,1);transform:translateY(32px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (width<=1180px){:root{--shell:calc(100vw - 56px)}.topbar{padding-inline:28px}.about-layout{gap:6vw}.software-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 18px}.strength-grid{grid-template-columns:1fr 1fr}.strength-card{min-height:360px}}@media (width<=760px){:root{--shell:calc(100% - 36px)}html{scroll-padding-top:76px}body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}main{flex-direction:column;display:flex}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#080605d9;grid-template-columns:32px 1fr auto;gap:9px;height:64px;padding-inline:18px}.brand{width:32px;height:32px;font-size:11px}.mobile-brand-name{letter-spacing:.12em;flex-direction:column;gap:4px;font-size:13px;display:flex}.mobile-brand-name small{letter-spacing:.12em;color:#918780;font-size:7px}.topbar nav{display:none}.nav-contact{border-color:#746250;border-radius:0;gap:8px;min-height:44px;padding:9px 12px;font-size:11px}.hero{height:auto;min-height:min(780px, calc(100svh - 64px - env(safe-area-inset-bottom)));order:0}.hero-content{min-height:inherit;padding:94px 0 28px}.hero-kicker{letter-spacing:.12em;font-size:8px}.hero-title-wrap{margin-block:52px 42px;transform:none}.hero-intro{letter-spacing:.025em;margin:0 0 25px;padding-left:14px;font-size:clamp(20px,5.4vw,25px);line-height:1.6}.hero h1{letter-spacing:-.065em;gap:7px;width:100%;font-size:clamp(50px,16vw,100px);line-height:.95}.hero h1>span:last-child{-webkit-text-stroke-color:#c2b4a4;margin-left:0;font-size:.72em}.hero h1 .accent-dot{color:var(--acid);-webkit-text-stroke:0;margin-left:0}.hero-roles{letter-spacing:.025em;margin-top:22px;font-size:11px;line-height:1.9}.hero:before{background:radial-gradient(circle at 35% 40%,#74320b52,#0000 66%);width:120vw;height:120vw;top:90px;right:-65vw}.hero:after{width:66vw;height:66vw;bottom:-8vw;right:-40vw}.hero-media{opacity:.32;transform:none}.hero-overlay{background:radial-gradient(at 90% 40%,#99430d45,#0000 65%),linear-gradient(90deg,#050403cc,#05040366),linear-gradient(#0000 55%,#050403)}.hero-kicker span:last-child,.scroll-cue{display:none}.hero-bottom{flex-direction:column;align-items:stretch;gap:20px}.hero-bottom p{color:#ada39b;font-size:12px;line-height:1.85}.hero-work-link{background:var(--paper);color:#17100a;border-color:var(--paper);justify-content:space-between;min-height:46px;padding:12px 18px;font-size:12px}.hero-work-link svg{width:19px}.about{order:1}.work{order:2}.strengths{order:3}.contact{order:4}.about,.work,.strengths{padding-block:56px}.section-label{letter-spacing:.07em;gap:12px;margin-bottom:28px;font-size:9px}.section-label span{width:27px;height:18px;font-size:8px}.section-label:after{content:"";background:var(--line);flex:1;height:1px}.about-layout{grid-template-columns:1fr;gap:24px}.about-heading>p{letter-spacing:-.04em;font-size:clamp(25px,7.4vw,38px);line-height:1.3}.about-lead{font-size:13px;line-height:1.95}.profile-grid{margin-top:24px}.profile-grid>div,.profile-grid>button{gap:10px;min-height:74px;padding-block:15px}.profile-grid>:nth-child(2n){padding-left:16px}.profile-grid strong{font-size:12px}.software-row{grid-template-columns:1fr;gap:14px;margin-top:32px;padding-top:18px}.software-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 14px}.software-item{gap:9px}.software-icon{border-radius:11px;width:min(52px,100%);height:auto}.software-copy{gap:4px}.software-copy strong{font-size:10px}.software-copy small{font-size:9.5px}.work-heading{flex-direction:column;align-items:start;gap:18px;margin-bottom:20px}.work-heading h2{font-size:clamp(50px,15vw,80px);line-height:.9}.work-heading p{font-size:12px;line-height:1.8}.work-heading p br{display:none}.work-filters{margin-bottom:8px;margin-right:-18px;padding-right:18px}.work-filters button{padding-inline:12px;font-size:11px}.sample-note{margin-bottom:20px;font-size:11px}.project-grid{grid-template-columns:minmax(0,1fr);gap:30px}.project-right{grid-column:auto;width:100%;margin:0}.project-visual{aspect-ratio:1/1.05}.project-index{width:34px;height:22px;top:14px;left:14px}.project-open{opacity:1;width:44px;height:44px;top:auto;bottom:14px;right:14px;transform:none}.project-copy{grid-template-columns:minmax(0,1fr);gap:10px;padding-top:15px}.eyebrow{letter-spacing:.07em;margin-bottom:10px;font-size:8px}.project-copy h3{font-size:20px}.project-en{color:#aaa19a;margin:7px 0 0;font-size:11px;display:block}.project-copy>p{margin:0;font-size:12px;line-height:1.8}.strengths-heading{margin-bottom:26px}.strengths-heading h2{font-size:clamp(23px,6.7vw,36px);line-height:1.35}.strength-grid{grid-template-columns:1fr}.strength-card{grid-template-columns:22px minmax(0,1fr);gap:14px;min-height:0;padding:20px 16px;display:grid}.strength-top{padding-top:2px}.strength-top i{display:none}.strength-tag{margin-bottom:10px;font-size:8px}.strength-card h3{margin-bottom:10px;font-size:18px}.strength-text{max-width:none;font-size:12px}.strength-mark{opacity:.08;width:110px;height:110px}.contact{min-height:580px}.contact-inner{min-height:580px;padding-block:40px 28px}.section-label.light{margin-bottom:56px}.contact-main>p{color:#bcb0a6;max-width:240px;margin:0 0 24px;font-size:12px;line-height:1.8}.contact-main h2{letter-spacing:-.055em;font-size:clamp(38px,11.5vw,70px);line-height:1}.contact-main em{font-family:inherit;font-style:normal;font-weight:600}.contact-bottom{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:40px;padding-top:20px}.contact-bottom>a{width:100%;min-height:64px}.contact-bottom>a strong{font-size:clamp(22px,6.3vw,32px)}.contact-bottom>a svg{color:var(--acid);justify-self:end}.contact-meta{text-align:left;justify-self:start;font-size:10px}.contact-copy{justify-content:space-between;width:100%;margin-top:20px;font-size:12px}.mobile-dock{z-index:60;height:calc(60px + env(safe-area-inset-bottom));padding:6px 12px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0d0b09ed;border-top:1px solid #ffffff20;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-dock a{color:#a49b93;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:44px;font-size:9px;display:flex}.mobile-dock a[aria-current]{color:var(--acid)}.dock-symbol{border:1px solid;width:15px;height:15px;display:block;position:relative}.dock-home{transform:rotate(45deg)scale(.75)}.dock-work{background:linear-gradient(90deg,#0000 43%,currentColor 44% 50%,#0000 51%),linear-gradient(#0000 49%,currentColor 50% 56%,#0000 57%)}.dock-about{border-radius:50%}.dock-about:after{content:"";background:currentColor;width:1px;height:5px;position:absolute;top:5px;left:6px}.dock-contact{border-radius:4px;height:14px}.dock-contact:after{content:"";background:#0d0b09;border-bottom:1px solid;border-left:1px solid;width:5px;height:5px;position:absolute;bottom:-4px;left:3px;transform:skewY(-30deg)}.project-dialog{width:calc(100% - 24px);max-height:85svh}.project-dialog-content{padding:18px}.text-editor-toolbar{bottom:calc(72px + env(safe-area-inset-bottom));gap:8px;padding:8px 10px}.text-editor-toolbar>span{display:none}.text-editor-toolbar>button{padding-inline:14px}.text-editor-dialog.text-layout-panel{bottom:calc(68px + env(safe-area-inset-bottom))}.reveal{transition-duration:.4s;transform:translateY(14px)}}@media (hover:none){.strength-card:hover{color:inherit;background:0 0}.strength-card:hover .strength-text{color:#8b8b84}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}.expertise-mini{margin-top:calc(22px + var(--expertise-title-lift,0px));isolation:isolate;background:0 0;border:0;border-radius:0;max-width:540px;padding:14px;position:relative}.expertise-mini-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.expertise-mini-eyebrow{color:#9e8a75;letter-spacing:.16em;font-size:7px;line-height:1.5}.expertise-mini h2{letter-spacing:.03em;margin:5px 0 0;font-size:18px;font-weight:550;line-height:1.3}.expertise-mini-star{color:#b68e63;font-size:21px;font-weight:300}.expertise-mini-intro{color:#a99d91;letter-spacing:.02em;margin:6px 0 12px;font-size:10px;font-weight:400;line-height:1.6}.expertise-mini-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.expertise-mini-card{background:0 0;border:0;border-radius:0;flex-direction:column;grid-column:span 2;justify-content:space-between;min-width:0;min-height:96px;padding:12px 11px;transition:background .25s;display:flex}.expertise-mini-featured{grid-column:span 3;min-height:114px;padding:12px}.expertise-mini-icon{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:14px;display:flex}.expertise-mini-icon>svg{color:#c6ad8d;stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round;width:18px;height:18px}.expertise-mini h3{letter-spacing:-.02em;color:#f3eee7;margin:0;font-size:12px;font-weight:550;line-height:1.55}.expertise-mini-featured h3{font-size:14px}.expertise-mini-en{letter-spacing:.04em;color:#9c8974;margin:5px 0 0;font-size:7px;font-weight:400;line-height:1.55}.expertise-mini-description{letter-spacing:0;color:#b6aaa0;margin:5px 0 0;font-size:9px;font-weight:400;line-height:1.65}@media (width>=1600px){.expertise-mini{max-width:600px;padding:16px}.expertise-mini-card{min-height:104px;padding:13px}.expertise-mini-featured{min-height:122px}.expertise-mini h3{font-size:13px}.expertise-mini-featured h3{font-size:15px}.expertise-mini-description{font-size:10px}.expertise-mini-en{font-size:8px}}@media (width<=1180px) and (width>=761px){.expertise-mini{padding:14px}.expertise-mini-card{padding:12px 10px}.expertise-mini h3{font-size:12px}.expertise-mini-featured h3{font-size:14px}}@media (width<=760px){.expertise-mini{margin-top:calc(14px + var(--expertise-title-lift,0px));padding:10px}.expertise-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.expertise-mini-card,.expertise-mini-featured{grid-column:auto;min-height:94px;padding:8px}.expertise-mini-icon{margin-bottom:10px}.expertise-mini-icon>svg{width:16px;height:16px}.expertise-mini h3,.expertise-mini-featured h3{font-size:12px}.expertise-mini-description{font-size:10px;line-height:1.55}.expertise-mini-card:last-child{flex-direction:row;grid-column:1/-1;justify-content:flex-start;align-items:center;gap:14px;min-height:72px}.expertise-mini-card:last-child .expertise-mini-icon{margin:0}.expertise-mini-intro{font-size:11px}}.hero.hero-showcase{background:radial-gradient(at 61% 55%,#1a1e27 0%,#101217 33%,#08090c 73%);height:max(780px,100svh);overflow:clip}.hero.hero-showcase:before,.hero.hero-showcase:after{display:none}.hero-work-showcase{z-index:0;isolation:isolate;position:absolute;inset:0}.hero-showcase-haze{opacity:.22;filter:blur(75px)saturate(.55);pointer-events:none;position:absolute;inset:-15%;-webkit-mask-image:radial-gradient(at 65% 52%,#000 5%,#0000 65%);mask-image:radial-gradient(at 65% 52%,#000 5%,#0000 65%)}.hero-showcase-haze img{object-fit:cover;width:100%;height:100%;display:block;transform:scale(1.2)}.hero-showcase-halo{pointer-events:none;filter:blur(28px);border-radius:50%;position:absolute}.hero-showcase-halo-warm{background:radial-gradient(#96602730,#0000 70%);width:35%;height:32%;top:10%;right:-5%}.hero-showcase-halo-cool{background:radial-gradient(#5f76a234,#0000 70%);width:46%;height:20%;bottom:9%;right:5%}.hero-showcase-shade{z-index:2;pointer-events:none;background:linear-gradient(90deg,#08090ce6 0%,#08090cb0 25%,#08090c33 43%,#0000 62%),linear-gradient(#08090c66 0%,#0000 12% 78%,#050505 100%);position:absolute;inset:0}.hero-showcase-stage{perspective:1200px;touch-action:pan-y;position:absolute;inset:88px 0 80px 37%}.hero-showcase-floor{filter:blur(18px);pointer-events:none;background:radial-gradient(#63779747,#0006 42%,#0000 71%);border-radius:50%;width:83%;height:19%;position:absolute;bottom:5%;left:6%}.hero-showcase-cards{transform-style:preserve-3d;position:absolute;inset:0}.hero-showcase-card{aspect-ratio:1.08;transform-origin:0 0;opacity:0;pointer-events:none;backface-visibility:hidden;background:#14161b;border:1px solid #c9d1e22b;width:min(54%,70svh - 112px);margin:0;position:absolute;top:22%;left:6%;overflow:hidden;transform:translate3d(110%,46%,-70px)rotateY(-12deg)rotate(3deg)scale(.64);box-shadow:0 18px 34px #0008,0 2px 4px #0008}.hero-showcase-cards.is-ready .hero-showcase-card{transition:transform 1.15s cubic-bezier(.2,.7,.2,1),opacity .85s,filter 1.15s,box-shadow 1.15s}.hero-showcase-card:after{content:"";pointer-events:none;background:linear-gradient(130deg,#ffffff0c,#0000 35% 75%,#0000001a);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff08}.hero-showcase-image{position:absolute;inset:0;overflow:hidden}.hero-showcase-image img{-webkit-user-select:none;user-select:none;max-width:none;height:auto;display:block;position:absolute}.hero-showcase-card[data-slot=main]{z-index:3;opacity:1;filter:brightness(.98);transform:translate(0,0)rotateY(-15deg)rotateX(3deg)rotate(-4deg)skew(-3deg);box-shadow:0 24px 33px #000a,0 4px 4px #0009}.hero-showcase-card[data-slot=back]{z-index:1;opacity:.94;filter:brightness(.9);transform:translate3d(72%,-23%,-110px)rotateY(-15deg)rotateX(3deg)rotate(-6deg)scale(.9)}.hero-showcase-card[data-slot=front]{z-index:4;opacity:1;filter:brightness(.97);transform:translate3d(83%,38%,90px)rotateY(-14deg)rotate(2deg)scale(.7);box-shadow:0 21px 34px #000a}.hero-showcase-card[data-slot=exit]{z-index:2;opacity:0;filter:brightness(.5);transform:translate3d(-24%,19%,-100px)rotateY(-24deg)rotate(-10deg)scale(.83)}.hero-showcase-card[data-slot=waiting]{z-index:0;opacity:0}.hero-showcase-controls{z-index:7;align-items:center;gap:28px;max-width:55%;display:flex;position:absolute;bottom:56px;right:max(48px,50vw - 850px)}.hero-showcase-caption{align-items:center;gap:22px;min-width:0;display:flex}.hero-showcase-name{color:#b8b0a6;letter-spacing:.04em;font-size:11px;line-height:1.6}.hero-showcase-count{color:#e8e1d5;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px;line-height:1.5}.hero-showcase-count>span{color:#8b8986}.hero-showcase-playback{flex-shrink:0;align-items:center;gap:7px;display:flex}.hero-showcase-playback button{color:#e3ddd3;cursor:pointer;background:#0d0f1480;border:1px solid #ffffff30;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;transition:background .2s,border-color .2s;display:grid}.hero-showcase-playback button:hover{background:#252931cc;border-color:#ffffff80}.hero-showcase-playback button:disabled{cursor:default;opacity:.4}.hero-showcase-playback svg{stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.hero-showcase-announcement{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero-showcase .hero-content{z-index:5;pointer-events:none;padding-block:142px 56px;position:relative}.hero-showcase .hero-content>*{pointer-events:auto;width:40%}.hero-showcase .hero-kicker{letter-spacing:.08em;flex-wrap:wrap;align-items:flex-start;gap:18px;font-size:9px;line-height:1.6}.hero-showcase .hero-title-wrap{margin-block:auto;transform:none}.hero-showcase .hero-intro{letter-spacing:.02em;margin:0 0 26px;padding-left:14px;font-size:clamp(18px,1.5vw,28px);line-height:1.7}.hero-showcase h1{letter-spacing:-.065em;gap:9px;width:100%;font-size:clamp(48px,5.2vw,100px);line-height:.98}.hero-showcase h1>span:last-child{-webkit-text-stroke-color:#bfb6a8;margin-left:0;font-size:.72em}.hero-showcase .hero-roles{letter-spacing:.035em;color:#b8b0a6;margin-top:25px;font-size:12px;line-height:2}.hero-showcase .hero-bottom{flex-direction:column;align-items:flex-start;gap:20px}.hero-showcase .hero-bottom>p{color:#aaa49c;font-size:12px;line-height:1.9}.hero-showcase .hero-work-link{background:#090a0b70;gap:32px;min-height:46px;padding:12px 18px;font-size:12px}@media (width<=1180px) and (width>=761px){.hero-showcase-stage{left:39%}.hero-showcase-controls{gap:16px;right:28px}.hero-showcase-caption{gap:14px}.hero-showcase-name{max-width:130px}.hero-showcase h1{font-size:clamp(44px,5.3vw,64px)}}@media (width>=761px){body:has(.text-editor-toolbar) .hero-showcase-controls{bottom:100px}}@media (width<=760px){.hero.hero-showcase{height:auto;min-height:0}.hero-showcase .hero-content{grid-template-columns:minmax(0,1fr);height:auto;min-height:0;padding:96px 0 32px;display:grid}.hero-showcase .hero-content>*{width:100%}.hero-showcase .hero-kicker{margin:0;font-size:8px}.hero-showcase .hero-title-wrap{margin:32px 0 0}.hero-showcase .hero-intro{margin-bottom:24px;font-size:clamp(18px,5.1vw,25px);line-height:1.6}.hero-showcase h1{gap:7px;font-size:clamp(44px,14.5vw,94px);line-height:.98}.hero-showcase h1>span:last-child{font-size:.72em}.hero-showcase .hero-roles{margin-top:21px;font-size:11px;line-height:1.9}.hero-showcase .hero-bottom{gap:18px;margin-top:clamp(338px,74vw,450px)}.hero-showcase .hero-work-link{color:#17100a;background:#f3f1eb;border-color:#f3f1eb;justify-content:space-between;width:100%;min-height:46px}.hero-showcase .hero-work-link svg{color:var(--acid)}.hero-showcase-stage{width:min(100%,560px);left:50%;right:auto;top:var(--hero-gallery-top,370px);perspective:900px;height:clamp(280px,72vw,430px);bottom:auto;transform:translate(-50%)}.hero-showcase-card{width:49%;top:14%;left:8%}.hero-showcase-card[data-slot=main]{transform:translate(0,0)rotateY(-12deg)rotate(-4deg)}.hero-showcase-card[data-slot=back]{transform:translate3d(72%,-25%,-65px)rotateY(-12deg)rotate(-6deg)scale(.82)}.hero-showcase-card[data-slot=front]{transform:translate3d(72%,38%,45px)rotateY(-12deg)rotate(2deg)scale(.71)}.hero-showcase-controls{left:18px;right:18px;bottom:var(--hero-controls-bottom,162px);justify-content:space-between;gap:12px;max-width:none}.hero-showcase-caption{flex-wrap:wrap;gap:12px}.hero-showcase-name,.hero-showcase-count{font-size:10px}.hero-showcase-playback{gap:5px}.hero-showcase-shade{z-index:0;background:linear-gradient(#08090c66,#0000 47%,#050505 98%)}.hero-showcase-haze{opacity:.18;inset:15% -35% -5%;-webkit-mask-image:radial-gradient(at 55% 42%,#000 5%,#0000 65%);mask-image:radial-gradient(at 55% 42%,#000 5%,#0000 65%)}body:has(.mobile-dock a[href=\#home][aria-current]) .text-editor-toolbar{padding:8px;top:74px;bottom:auto}body:has(.mobile-dock a[href=\#home][aria-current]) .hero-showcase .hero-kicker{padding-right:104px}}@media (prefers-reduced-motion:reduce){.hero-showcase-cards.is-ready .hero-showcase-card{transition:none}}.site-filing{border-top:1px solid var(--line);text-align:center;color:#b9aea4;letter-spacing:.04em;align-self:stretch;margin:28px 0 0;padding-top:16px;font-size:12px}.site-filing a:hover,.site-filing a:focus-visible{color:#fff;text-decoration:underline}
