
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Noto+Sans+SC:wght@400;500;600&display=swap');
:root{color-scheme:dark;--paper:#03060b;--ink:#e5edf7;--muted:#8b9aad;--line:#1c2838;--blue:#68b5f5;--panel:#080f1b;--sans:'DM Sans','Noto Sans SC',Arial,sans-serif;--mono:'SFMono-Regular',Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:5px}::selection{background:#1d5788;color:#fff}.wrap{max-width:1280px;width:calc(100% - 112px);margin:auto}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1392px;margin:auto;padding:0 56px;gap:30px;border-bottom:1px solid var(--line)}.wordmark{display:flex;gap:15px;align-items:center;font-size:12px;letter-spacing:2px;font-weight:550}.monogram{font-family:var(--mono);font-size:19px;letter-spacing:-2px;color:var(--blue)}.site-header nav{display:flex;gap:34px;font-size:12px;color:#a6b3c4}.site-header nav a:hover,.text-link:hover{color:#fff}.language-switch{display:flex;gap:9px;align-items:center;padding:10px 0;border:0;background:none;font-size:11px;color:#697c93}.language-switch .active{color:var(--ink)}.separator{color:#425066}.eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:1.4px;line-height:1.7;margin:0 0 20px;display:flex;align-items:center;gap:10px;color:#8298b3}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--blue);flex-shrink:0}.hero{position:relative;padding-top:39px;isolation:isolate;overflow:hidden}.hero-top{display:flex;justify-content:space-between;position:relative;z-index:2}.folio-label{font-family:var(--mono);font-size:9px;letter-spacing:1.2px;color:#60738b}.hero-layout{position:relative;min-height:495px;padding:68px 0 90px}.hero-copy{position:relative;z-index:2;max-width:760px}.hero h1{font-size:clamp(70px,7.4vw,104px);font-weight:500;line-height:1.05;letter-spacing:-5px;margin:0 0 29px}.hero h1 em{font-size:.57em;font-weight:400;font-style:normal;color:#91b4dc;letter-spacing:-2.1px;line-height:1.3;display:inline-block}.hero-intro{max-width:520px;line-height:1.9;font-size:15px;color:#93a5bc;margin:0 0 33px}.hero-actions{display:flex;gap:27px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:14px 20px;border:1px solid #3b5a7b;font-size:11px;font-weight:500;transition:background .2s,border-color .2s}.button-dark{background:#122942;color:#dbeaff}.button:hover{border-color:#93c9f7;background:#183650}.text-link{font-size:11px;border-bottom:1px solid #3a4a5d;padding:8px 0;color:#a3b3c7}.hero-art{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.planet-limb{position:absolute;width:1250px;height:1250px;right:-710px;top:140px;border-radius:50%;background:radial-gradient(ellipse at 27% 3%,#0b1a34 0,#040912 24%,#02050a 55%);box-shadow:inset 0 2px 2px #d6f2ff,inset 0 6px 8px #62c2ff,inset 0 15px 24px #155ca8,0 -2px 5px #7cd2ff,0 -11px 27px #2376bb88,0 -33px 80px #124b8159;transform:rotate(-22deg)}.horizon-label{position:absolute;right:32px;bottom:27px;font-family:var(--mono);font-size:8px;letter-spacing:1.3px;color:#486886}.hero-footer{position:relative;z-index:2;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;font-family:var(--mono);font-size:9px;color:#75879e}.scroll-label{display:flex;gap:22px;font-size:8px;letter-spacing:1.1px}.work-section{padding:78px 0 85px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-heading h2,.about-heading h2{font-size:39px;font-weight:450;line-height:1.2;letter-spacing:-1.4px;margin:0}.section-heading>p{font-size:12px;color:var(--muted);line-height:1.9;max-width:325px;margin:0 0 2px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 30px}.project-card{min-width:0;padding-bottom:28px;border-bottom:1px solid var(--line)}.project-visual{position:relative;height:305px;overflow:hidden;isolation:isolate;background:#080f1b;border:1px solid #172438}.visual-index{position:absolute;left:23px;top:20px;font-family:var(--mono);font-size:8px;letter-spacing:1px;color:#758ba6;z-index:2}.visual-tag{position:absolute;right:22px;top:20px;font-family:var(--mono);font-size:8px;letter-spacing:1px;color:#60758f;z-index:2}.visual-orbit{display:none}.project-visual .visual-brand{position:absolute;top:91px;left:29px;width:48%;z-index:1}.visual-brand>img{width:36px;height:36px;object-fit:contain;border-radius:6px;margin-bottom:15px}.visual-brand h3{font-size:28px;line-height:1.15;font-weight:450;letter-spacing:-1px;margin:0 0 11px}.visual-brand p{font-size:10px;color:#8b9eb7;line-height:1.8;max-width:175px;margin:0}.phone{position:absolute;right:40px;top:48px;height:300px;width:145px;background:#0e1723;border:4px solid #2b3b51;border-radius:20px;overflow:hidden;box-shadow:0 18px 38px #0008;transform:none}.phone img{height:100%;width:100%;object-fit:cover;object-position:top}.phone:after{content:'';position:absolute;top:0;left:calc(50% - 22px);width:44px;height:8px;border-radius:0 0 7px 7px;background:#2b3b51}.visual-arbi .visual-brand>img{width:49px;object-fit:contain}.nfc-chip{position:absolute;left:29px;bottom:26px;border:1px solid #2a3d56;padding:7px 11px;font-family:var(--mono);font-size:9px;letter-spacing:1px;color:#6c95bd}.project-meta{display:flex;justify-content:space-between;gap:12px;margin-top:21px;font-family:var(--mono);font-size:8px;letter-spacing:.4px;line-height:1.8;color:#7c91ac}.project-title-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:9px}.project-title-row h3{font-size:25px;letter-spacing:-.7px;font-weight:450;margin:0}.project-title-row .arrow{color:#5681ac;font-size:21px}.project-desc{font-size:12px;color:#8e9fb5;line-height:1.9;margin:12px 0 17px;max-width:480px}.project-highlights{display:flex;gap:9px 14px;flex-wrap:wrap}.project-highlights span{font-family:var(--mono);font-size:9px;line-height:1.8;color:#86a6c7}.project-highlights span+span:before{content:'/';padding-right:14px;color:#38516a}.case-button{display:inline-flex;gap:25px;padding:12px 0 5px;margin-top:14px;color:#c0d6ee;background:none;border:0;border-bottom:1px solid #355474;font-size:10px}.case-button:hover{color:#fff;border-color:#a2d5ff}.visual-ccs .visual-brand{top:59px;width:82%}.visual-ccs .visual-brand>img{display:none}.visual-ccs .visual-brand h3{font-size:27px}.visual-ccs .visual-brand p{max-width:300px}.desktop-mini{position:absolute;top:146px;right:30px;width:300px;height:190px;border:4px solid #2b3b51;border-radius:6px;background:#0c1625;padding:14px;color:#9fb7d3;box-shadow:0 15px 35px #0005}.mini-top{font-size:8px;border-bottom:1px solid #25374e;padding-bottom:9px;color:#bfd7f2;font-weight:500}.mini-top i{float:right;font-size:6px;letter-spacing:.3px;font-style:normal;color:#677f9b}.mini-banner{padding:13px 8px;margin:10px 0;background:#10243a;font-size:10px;color:#b8d9f9}.mini-banner small{display:block;font-size:7px;margin-top:5px;color:#6d92b7}.mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.mini-cards div{background:#111f30;padding:8px 5px;font-size:7px;color:#8ea9c7}.mini-cards b{display:block;font-size:15px;font-weight:400;color:#8cb9e5;margin-bottom:3px}.visual-caption{position:absolute;right:15px;bottom:10px;font-size:7px;letter-spacing:.5px;color:#657b95;z-index:2}.visual-cave .visual-brand{top:92px;width:43%}.cave-note{position:absolute;right:30px;top:56px;width:175px;min-height:225px;background:#101c2b;border:1px solid #2c4059;border-radius:5px;padding:22px 18px;box-shadow:0 16px 30px #0005}.note-heading{font-family:var(--mono);font-size:7px;letter-spacing:.6px;color:#6c8dac}.cave-note h4{font-size:18px;font-weight:400;line-height:1.5;letter-spacing:-.3px;color:#c1d4e9;margin:20px 0}.note-line{height:1px;background:#283c53;margin:13px 0}.note-pill{font-size:8px;color:#7b9fbe;display:inline-block;margin-top:10px}.approach-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#060b13;padding:57px 0}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.principle{border-top:1px solid #263349;padding-top:19px}.principle>span{font-family:var(--mono);font-size:9px;color:#6283a4}.principle h3{font-size:15px;font-weight:500;margin:15px 0 10px}.principle p{font-size:12px;line-height:1.95;color:#8296af;margin:0}.about-section{padding:78px 0;display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.about-badge{display:flex;gap:16px;align-items:center;margin-top:30px;font-size:11px;line-height:1.9;color:#839bb6}.about-mark{display:grid;place-items:center;border:1px solid #2c4059;color:#73a7d9;width:44px;height:44px;font-family:var(--mono);font-size:17px}.about-copy p{font-size:12px;line-height:1.95;color:#8e9fb5;margin:0 0 18px}.about-copy .about-lead{font-size:21px;line-height:1.5;letter-spacing:-.4px;color:#cbd9e9}.skills{display:flex;flex-wrap:wrap;gap:9px 18px;margin:24px 0;font-family:var(--mono);font-size:9px;line-height:1.7;color:#769ac0}.about-copy .source-note{font-size:10px;border-top:1px solid var(--line);padding-top:17px;margin-bottom:0}.contact-section{border-top:1px solid var(--line);background:#07101d;padding:58px 0}.contact-layout{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:90px}.contact-section h2{font-size:47px;font-weight:450;letter-spacing:-1.8px;line-height:1.15;margin:0 0 20px}.contact-section h2 em{font-style:normal;color:#91b4dc}.contact-section p:not(.eyebrow){font-size:12px;line-height:1.9;max-width:430px;color:#879eb9}.contact-links a{display:grid;grid-template-columns:1fr auto;gap:12px;padding:18px 0;border-top:1px solid #24374e;font-size:16px}.contact-links small{grid-column:1/-1;font-family:var(--mono);font-size:10px;color:#829bb7}.contact-links a:hover{color:var(--blue)}.site-footer{display:flex;justify-content:space-between;gap:20px;padding-top:23px;padding-bottom:23px;font-family:var(--mono);font-size:8px;color:#61778f}.skip-link{position:absolute;top:-100px;left:20px;background:#122942;padding:15px;z-index:30}.skip-link:focus{top:10px}dialog{padding:0;background:#080f1a;color:var(--ink);border:1px solid #293a50;max-width:900px;width:calc(100% - 40px);max-height:90dvh;box-shadow:0 20px 100px #000b}dialog::backdrop{background:#01040bcc;backdrop-filter:blur(6px)}.dialog-top{position:sticky;top:0;z-index:2;background:#080f1a;border-bottom:1px solid var(--line);padding:17px 30px;display:flex;justify-content:space-between;align-items:center}.dialog-top .eyebrow{margin:0}.dialog-top button{width:30px;height:30px;background:transparent;color:#a8bed5;border:1px solid #2c4059;border-radius:3px}.case-body{padding:35px 42px 44px}.case-body h2{font-size:43px;font-weight:450;letter-spacing:-1.5px;margin:12px 0 18px}.case-role{font-family:var(--mono);font-size:9px;letter-spacing:.6px;line-height:1.8;color:#7e9cbb}.case-intro{font-size:15px;line-height:1.9;color:#a1b3c9}.case-stack{display:flex;flex-wrap:wrap;gap:8px 16px;margin:23px 0 30px}.case-stack span{font-family:var(--mono);font-size:9px;line-height:1.8;color:#7da8d2}.case-flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:18px;background:#0d1a2b;border:1px solid #20334c;font-size:10px;margin:15px 0 30px}.case-flow b{font-weight:400;padding:6px;color:#b3cee9}.case-flow>span{color:#476e96}.case-section{margin-top:30px}.case-section>h3{font-family:var(--mono);font-size:9px;letter-spacing:1.1px;margin:0 0 18px;color:#7898b9}.case-points{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}.case-point{padding-top:16px;border-top:1px solid #253448}.case-point h4{font-size:14px;line-height:1.5;font-weight:500;margin:0 0 10px;color:#d3e0ee}.case-point p,.case-section>p,.case-section li{font-size:12px;line-height:1.9;color:#91a5bf}.case-section ul{padding-left:18px}.case-section li{padding-left:4px;margin:6px 0}.case-vision{padding:22px;background:#0c1a2b;border-left:2px solid #4c8ac3}.case-vision p{margin:0}.case-links{margin-top:28px}.case-links .button{font-size:10px;padding:12px 16px}.case-note{font-size:10px;line-height:1.9;color:#6d859f;margin-top:24px}.noscript-note{padding:30px;text-align:center}html[lang=zh-CN] h1{letter-spacing:-2px}html[lang=zh-CN] h1 em{font-size:.45em;letter-spacing:-.8px}html[lang=zh-CN] h2{font-size:34px;font-weight:400;letter-spacing:-.6px}html[lang=zh-CN] .case-body h2{font-size:38px}html[lang=zh-CN] .contact-section h2{font-size:40px}
@media(min-width:1450px){.hero-layout{min-height:535px;padding-top:80px}.hero-art .planet-limb{right:-650px;top:130px}.project-visual{height:330px}.phone{top:45px;right:62px;width:155px;height:325px}.visual-brand h3{font-size:30px}.desktop-mini{right:48px;top:155px;width:320px}.cave-note{right:50px;top:60px;width:190px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.site-header{padding:0 32px}.hero h1{font-size:83px}.hero-copy{max-width:650px}.planet-limb{right:-820px;top:160px}.hero-layout{min-height:470px;padding-top:65px}.project-visual{height:290px}.project-visual .visual-brand{left:24px;width:46%}.visual-brand h3{font-size:24px;letter-spacing:-.6px}.phone{right:21px;width:130px;height:282px;top:52px}.visual-brand p{max-width:140px}.visual-ccs .visual-brand{width:84%}.desktop-mini{width:255px;right:25px}.cave-note{right:20px;width:155px;padding:19px 14px}.cave-note h4{font-size:17px}.visual-cave .visual-brand{width:42%}.about-section{gap:50px}}
@media(max-width:760px){html{scroll-padding-top:70px}.wrap{width:calc(100% - 40px)}.site-header{height:72px;padding:0 20px;gap:15px}.wordmark{font-size:10px;letter-spacing:1.5px;gap:9px}.monogram{font-size:17px}.site-header nav{font-size:10px;gap:16px}.site-header nav a:nth-child(2){display:none}.language-switch{font-size:9px;gap:6px}.hero{padding-top:28px}.hero-top .eyebrow{font-size:8px;letter-spacing:.6px}.folio-label{display:none}.hero-layout{min-height:460px;padding:45px 0 85px}.hero h1{font-size:76px;letter-spacing:-4px;line-height:1;margin-bottom:25px}.hero h1 em{font-size:.45em;letter-spacing:-1.3px;line-height:1.4}.hero-copy{max-width:480px}.hero-intro{font-size:13px;line-height:1.95;max-width:400px;margin-bottom:28px}.hero-actions{gap:24px}.hero-art .planet-limb{width:900px;height:900px;right:-640px;top:320px;box-shadow:inset 0 2px 2px #c3edff,inset 0 6px 8px #62c2ff,inset 0 15px 24px #155ca8,0 -2px 5px #7cd2ff,0 -9px 24px #2376bb88,0 -25px 60px #124b8159}.horizon-label{display:none}.hero-footer{font-size:8px;line-height:1.8;gap:15px;padding:16px 0}.scroll-label{font-size:7px;letter-spacing:.5px;white-space:nowrap;align-items:center;gap:10px}.work-section{padding:53px 0 58px}.section-heading{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:28px}.section-heading h2,.about-heading h2{font-size:32px;letter-spacing:-1px}.section-heading>p{max-width:450px;font-size:11px}.eyebrow{font-size:9px;margin-bottom:14px}.project-grid{grid-template-columns:1fr;gap:34px}.project-visual{height:290px}.project-visual .visual-brand{left:22px;max-width:145px;top:91px}.visual-brand h3{font-size:25px}.visual-onetap .visual-brand h3{font-size:23px;letter-spacing:-.8px}.visual-brand p{font-size:9px;max-width:130px}.phone{right:17px;top:47px;width:131px;height:283px}.visual-index{left:20px;font-size:7px}.visual-tag{right:18px;font-size:7px}.nfc-chip{left:22px;bottom:24px;font-size:8px}.visual-ccs .visual-brand{top:57px;width:85%;max-width:300px}.visual-ccs .visual-brand h3{font-size:26px}.visual-ccs .visual-brand p{max-width:260px}.desktop-mini{top:139px;right:20px;width:260px}.visual-cave .visual-brand{width:40%;max-width:130px}.visual-cave .visual-brand h3{font-size:24px}.cave-note{right:17px;top:52px;width:153px;padding:18px 13px;min-height:215px}.cave-note h4{font-size:17px}.project-meta{font-size:7px;letter-spacing:0;gap:10px;margin-top:17px}.project-title-row h3{font-size:23px}.project-desc{font-size:11px;margin-bottom:13px}.project-highlights{gap:6px 10px}.project-highlights span{font-size:8px}.project-highlights span+span:before{padding-right:10px}.case-button{font-size:10px}.approach-section{padding:43px 0}.principles{grid-template-columns:1fr;gap:24px}.principle{display:grid;grid-template-columns:24px 1fr;column-gap:12px;padding-top:16px}.principle>span{padding-top:3px}.principle h3{margin:0 0 8px;font-size:15px}.principle p{grid-column:2;font-size:11px}.about-section{padding:52px 0;grid-template-columns:1fr;gap:28px}.about-badge{margin-top:22px;font-size:10px}.about-copy .about-lead{font-size:19px}.about-copy p{font-size:11px}.contact-section{padding:43px 0}.contact-layout{grid-template-columns:1fr;gap:22px}.contact-section h2{font-size:36px}.contact-section p:not(.eyebrow){font-size:11px}.contact-links{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-links a{font-size:14px}.contact-links small{font-size:8px;overflow-wrap:anywhere}.site-footer{font-size:7px;gap:12px}.site-footer>span:nth-child(2){display:none}.dialog-top{padding:14px 20px}.case-body{padding:25px 22px 30px}.case-body h2{font-size:33px}.case-intro{font-size:13px}.case-points{grid-template-columns:1fr;gap:18px}.case-flow{padding:13px;font-size:9px;gap:4px}.case-flow b{padding:5px}.case-role{font-size:8px}.case-vision{padding:17px}html[lang=zh-CN] h1{font-size:75px}html[lang=zh-CN] h1 em{font-size:.36em;letter-spacing:-.7px}html[lang=zh-CN] h2{font-size:29px}html[lang=zh-CN] .case-body h2{font-size:30px}html[lang=zh-CN] .contact-section h2{font-size:33px}}
@media(max-width:380px){.wordmark{letter-spacing:.6px;gap:7px}.site-header nav{gap:11px;font-size:9px}.hero h1{font-size:69px}.hero h1 em{font-size:.43em}.hero-intro{font-size:12px}.hero-layout{min-height:445px}.project-visual .visual-brand{left:18px;max-width:132px}.visual-onetap .visual-brand h3{font-size:21px}.phone{right:12px;width:124px}.visual-cave .visual-brand{max-width:118px}.cave-note{right:11px;width:145px}.visual-cave .visual-brand h3{font-size:22px}.visual-ccs .visual-brand{max-width:280px}.desktop-mini{right:15px;width:245px}.hero-footer>span:first-child{max-width:180px}.button{gap:25px;padding:13px 16px}.hero-actions{gap:20px}html[lang=zh-CN] h1 em{font-size:.33em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
