@charset "UTF-8";
:root{--paper:#f5f3ec;--ink:#123c35;--muted:#65746c;--line:#c9cec2;--accent:#bd623b;--soft:#e8ece4;--serif:Georgia,'Songti SC','STSong','Noto Serif CJK SC',serif;--sans:Arial,'PingFang SC','Microsoft YaHei',sans-serif;--gutter:clamp(24px,6vw,100px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.85;-webkit-font-smoothing:antialiased}::selection{background:#ccdfce;color:var(--ink)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button,a,input,select,textarea{outline-offset:6px}button{border:0;background:none}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.25;letter-spacing:-.035em}html[lang=zh-Hant] h1,html[lang=zh-Hant] h2,html[lang=zh-Hant] h3{letter-spacing:.015em}h1{font-size:clamp(48px,5.7vw,88px)}h2{font-size:clamp(34px,3.6vw,55px)}h3{font-size:clamp(24px,2vw,30px)}p{max-width:70ch}em{font-weight:400}html[lang=zh-Hant] em{font-style:normal}.wrap{max-width:1600px;margin:auto;padding-left:var(--gutter);padding-right:var(--gutter)}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.19em;line-height:1.6;text-transform:uppercase;margin-bottom:30px}.eyebrow:before{content:'';display:inline-block;width:5px;height:5px;background:var(--accent);border-radius:50%;vertical-align:middle;margin-right:12px}.lead{font-size:19px;color:var(--muted);line-height:1.85}.note{font-size:11px;color:var(--muted);line-height:1.8}.text-link{display:inline-flex;gap:35px;align-items:center;border-bottom:1px solid var(--ink);padding:8px 0;font-size:12px;line-height:1.6}.text-link span{transition:transform .3s}.text-link:hover span{transform:translate(3px,-3px)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:50px;background:var(--ink);color:var(--paper);padding:12px 24px;font-size:13px}.button:hover{background:#27584b}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--ink);color:white;padding:12px}.skip:focus{top:10px}.review-bar{background:var(--ink);color:#e2e7dc;font-size:10px;letter-spacing:.1em;text-align:center;height:28px;line-height:28px;position:relative}.motion-toggle{position:absolute;right:var(--gutter);font-size:10px;padding:0;line-height:28px;text-decoration:underline;text-underline-offset:3px;letter-spacing:0}
header{position:relative;z-index:30;height:102px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);background:var(--paper);border-bottom:1px solid rgba(18,60,53,.13)}.brand{display:flex;align-items:center;gap:14px}.brand img{width:46px;height:42px;object-fit:contain}.brand span{font-family:Optima,'Palatino Linotype',serif;font-size:24px;letter-spacing:.16em}header nav{display:flex;gap:36px;align-items:center}.nav-link{font-size:12px}.nav-link span{display:none}.header-actions{display:flex;align-items:center;gap:28px;font-size:11px}.menu-toggle{padding:6px 0;display:flex;gap:16px;align-items:center;font-size:12px}.menu-toggle span{font-size:19px;line-height:1}.menu{position:fixed;inset:130px 0 0;z-index:25;background:var(--paper);overflow:auto}.menu-inner{max-width:900px;padding:50px var(--gutter);margin:auto}.menu-inner>a{display:flex;gap:20px;font-family:var(--serif);font-size:clamp(26px,3vw,45px);border-bottom:1px solid var(--line);padding:12px 0}.menu-inner>a small{font-family:var(--sans);font-size:10px;align-self:center;margin-right:30px;color:var(--muted)}.menu-inner>a span{margin-left:auto;font-size:25px}.menu-open{overflow:hidden}
.hero{position:relative;min-height:730px;height:calc(100svh - 130px);max-height:1050px;overflow:hidden;background:#eeede4}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 65%;animation:horizon 18s ease-in-out infinite alternate}.hero-copy{position:relative;z-index:2;padding-top:clamp(70px,8vh,130px)}.hero-copy h1{line-height:1.35;max-width:10.5em}.hero-copy .eyebrow{margin-bottom:28px}.hero-copy p:not(.eyebrow){font-size:15px;margin:27px 0 23px;max-width:38em}.hero-copy .text-link{font-size:12px}.hero-caption{position:absolute;bottom:30px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.13em;z-index:2}.hero-caption>span:last-child{color:#eee}.hero-caption a{padding:10px;background:rgba(245,243,236,.8)}@keyframes horizon{from{transform:scale(1.015) translateX(0)}to{transform:scale(1.05) translateX(-.5%)}}
.statement{display:grid;grid-template-columns:1fr 2fr;gap:65px;padding-top:140px;padding-bottom:140px}.section-no{font-family:var(--serif);font-size:22px;color:var(--muted);margin-top:70px}.two-copy{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin:40px 0 26px;font-size:15px;color:var(--muted)}.expertise{padding-top:30px;padding-bottom:130px}.section-heading{margin-bottom:60px}.section-heading>p:not(.eyebrow){margin-top:26px;color:var(--muted)}.expertise-row{display:grid;grid-template-columns:90px 1fr 40px;gap:20px;border-top:1px solid var(--line);padding:35px 0;align-items:center;transition:padding .4s,background .4s}.expertise-row:last-child{border-bottom:1px solid var(--line)}.expertise-row:hover{padding-left:20px;padding-right:20px;background:#eaede3}.index{font-size:11px;letter-spacing:.1em;color:var(--accent)}.expertise-row h3{font-size:29px}.expertise-row p{color:var(--muted);font-size:14px;margin-top:10px}.row-arrow{font-size:25px;justify-self:end}.method-feature{background:var(--ink);color:var(--paper);padding:100px 0}.method-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center}.method-grid p:not(.eyebrow){font-size:15px;max-width:40em;margin:28px 0;color:#becdc2}.method-grid .text-link{border-color:#b9c9be}.method-orbit{position:relative;aspect-ratio:1.2}.line-art{width:100%;height:auto;overflow:visible}.line-art g{fill:none;stroke:currentColor;stroke-width:.7;opacity:.65}.line-art .accent{stroke:var(--accent);stroke-width:1.5}.line-art circle.accent{fill:var(--accent)}.method-orbit .line-art{color:#ced7c9;position:absolute;inset:0;animation:breathe 8s ease-in-out infinite alternate}.orbit-label{position:absolute;font-size:9px;letter-spacing:.15em;opacity:.8}.orbit-label.top{top:0;left:46%}.orbit-label.left{top:50%;left:0}.orbit-label.right{top:50%;right:0}.orbit-label.bottom{bottom:0;left:40%}@keyframes breathe{to{transform:scale(.93);opacity:.7}}
.scenes{padding-top:135px;padding-bottom:130px}.scene-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.scene-item{border-top:1px solid var(--line);padding-top:25px}.scene-item h3{margin:40px 0 20px;max-width:12em}.scene-item p{font-size:14px;color:var(--muted);min-height:110px}.scene-item .text-link{margin-top:25px;border-bottom:0;gap:30px}.scenes>.note{margin-top:45px}.human-feature{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-bottom:130px}.mark-panel{background:#ebece3;aspect-ratio:1.13;position:relative;display:grid;place-items:center;padding:50px}.mark-panel img{width:86%;mix-blend-mode:multiply}.mark-panel span{position:absolute;bottom:20px;left:25px;font-size:9px;letter-spacing:.25em}.human-feature p:not(.eyebrow){margin:30px 0;color:var(--muted);font-size:15px}.cta{padding-top:100px;padding-bottom:110px;border-top:1px solid var(--line)}.cta h2{margin-bottom:45px;max-width:18em}.cta .text-link{font-size:14px;gap:110px}footer{background:#e8ebe2;padding-top:60px!important;padding-bottom:25px!important}.footer-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:60px}.footer-top>p{font-family:var(--serif);font-size:21px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:30px;font-size:12px;margin-bottom:70px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-grid .eyebrow{font-size:8px;margin:0}.footer-grid .text-link{border:0;gap:12px;font-size:11px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted)}.footer-bottom .text-link{border:0;font-size:9px;padding:0}
.page-intro{padding-top:105px;padding-bottom:100px}.page-intro h1{max-width:14em;margin-bottom:36px}.page-intro .lead{max-width:42em;font-size:17px}.quiet-band{background:#e9ede4;padding:90px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.split>div>p:not(.eyebrow){color:var(--muted);font-size:15px;margin-bottom:20px}.split h2{max-width:12em;font-size:38px}.service-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:center;min-height:530px;padding-top:65px;padding-bottom:65px}.service-hero h1{font-size:clamp(45px,4.5vw,70px);line-height:1.3;max-width:12em;margin-bottom:30px}.service-hero .lead{font-size:17px}.service-art{background:#e9ede4;display:flex;align-items:center}.service-art .line-art{animation:breathe 10s ease-in-out infinite alternate}.service-intro{padding-top:80px;padding-bottom:90px;display:grid;grid-template-columns:1fr 1fr;gap:100px}.service-intro .lead{font-size:17px}.detail-list{padding-bottom:100px}.detail-row{display:grid;grid-template-columns:90px 1fr 1.2fr;gap:40px;border-top:1px solid var(--line);padding:36px 0;align-items:start}.detail-row p{color:var(--muted);font-size:15px}.output-section{padding-top:110px;padding-bottom:100px}.output-section h2{max-width:23em;font-size:38px}.output-section>p:last-child{color:var(--muted);margin-top:30px;font-size:14px}.related{padding-bottom:70px;display:flex;align-items:center;justify-content:space-between;gap:20px}.related>span{font-size:10px;letter-spacing:.1em}.process{padding-bottom:110px}.process-step{border-top:1px solid var(--line);padding:70px 0;display:grid;grid-template-columns:1fr 2fr;gap:70px}.process-number{font-family:var(--serif);font-size:80px;line-height:1;color:#a9b5a8;font-style:italic}.process-step h2{font-size:40px;margin-bottom:24px}.process-step>div>p:not(.eyebrow){color:var(--muted);font-size:16px}.checkpoint{border-left:2px solid var(--accent);padding-left:20px;margin-top:35px;font-size:13px}.checkpoint span{font-size:9px;letter-spacing:.1em;color:var(--accent)}.checkpoint p{margin-top:6px;max-width:45em}.scene-nav{display:flex;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--line);font-size:11px}.scene-nav a:hover{text-decoration:underline}.scenario{display:grid;grid-template-columns:1fr 1fr;gap:130px;padding-top:100px;padding-bottom:100px;border-bottom:1px solid var(--line)}.scenario-title .process-number{font-size:65px;display:block;margin-bottom:30px}.scenario-title h2{font-size:40px;margin-bottom:30px}.scenario-title .lead{font-size:15px}.scenario-body section{padding:0 0 35px}.scenario-body .eyebrow{margin-bottom:15px}.scenario-body p:not(.eyebrow){font-size:16px;color:var(--muted)}.scenario-body h3{font-size:24px}.architecture img{width:100%;height:520px;object-fit:cover}.architecture figcaption{font-size:9px;letter-spacing:.12em;color:var(--muted);margin-top:15px}.brand-story{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-bottom:120px;align-items:center}.brand-story h2{margin-bottom:40px}details{border-top:1px solid var(--line);padding:19px 0;font-size:14px}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}summary:after{content:'+';font-size:20px}details[open]>summary:after{content:'−'}details p{color:var(--muted);font-size:13px;padding-top:18px}.library{padding-bottom:110px}.resource-row{display:grid;grid-template-columns:.85fr 1.5fr;gap:100px;align-items:center;border-top:1px solid var(--line);padding:60px 0}.resource-cover{background:var(--ink);color:var(--paper);aspect-ratio:.77;max-width:280px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:12px 12px 0 #dfe3d9}.resource-cover>span{font-family:var(--serif);letter-spacing:.18em;font-size:15px}.resource-cover h3{font-size:27px;line-height:1.5}.resource-cover small{font-size:9px;letter-spacing:.1em}.resource-row:nth-child(2) .resource-cover{background:#b3bead;color:var(--ink)}.resource-row:nth-child(3) .resource-cover{background:#c07752;color:var(--paper)}.resource-row h2{font-size:38px}.resource-row p:not(.eyebrow){margin:25px 0;color:var(--muted);font-size:15px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:120px;padding-bottom:130px}.email{font-family:var(--serif);font-size:32px;line-height:1.5}.contact-info>p{margin-top:25px;font-size:13px}.contact-help{margin-top:80px}.contact-help h3{font-size:23px;margin-bottom:20px}.contact-help p{font-size:14px;color:var(--muted);line-height:2.2}form label{display:block;font-size:12px;margin-bottom:28px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #a7b3a6;border-radius:0;background:transparent;padding:10px 0;color:var(--ink);font-size:16px;resize:vertical}form .note{margin-top:35px;margin-bottom:25px}#form-status{font-size:12px;margin-top:20px;color:var(--muted)}.legal-copy{max-width:1000px;padding-bottom:130px}.legal-copy article{border-top:1px solid var(--line);padding:40px 0}.legal-copy h2{font-size:30px;margin-bottom:25px}.legal-copy p{color:var(--muted);font-size:15px}
.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .85s ease,transform 1s cubic-bezier(.2,.7,.2,1)}.js-motion .reveal.visible{opacity:1;transform:none}.transition{position:fixed;inset:0;z-index:100;pointer-events:none;background:var(--ink);color:var(--paper);display:grid;place-items:center;transform:translateY(-101%);transition:transform .5s cubic-bezier(.77,0,.18,1)}.transition>span{font-family:var(--serif);font-size:25px;letter-spacing:.35em}.transition.active{transform:translateY(0)}.motion-off *, .motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-off .reveal{opacity:1;transform:none}
@media(min-width:1700px){.hero-copy{padding-top:12vh}.hero-art{object-position:center 58%}}
@media(max-width:1000px){header nav{gap:20px}.brand span{font-size:21px}.brand img{width:40px}.hero{min-height:660px;max-height:850px}.hero-copy h1{font-size:64px}.hero-art{object-position:55% center}.statement{grid-template-columns:1fr 2fr;gap:40px}.two-copy{gap:25px}.method-grid,.human-feature,.brand-story,.split,.service-intro,.service-hero{gap:45px}.scene-preview{gap:25px}.scene-item p{min-height:140px}.footer-grid{grid-template-columns:1.7fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.scenario{gap:60px}.resource-row{gap:60px}.contact-layout{gap:65px}.email{font-size:27px}}
@media(max-width:700px){:root{--gutter:24px}body{font-size:15px}h1{font-size:44px}h2{font-size:33px}.eyebrow{font-size:9px;margin-bottom:24px}.review-bar{height:25px;line-height:25px;font-size:8px;text-align:left;padding-left:24px;letter-spacing:.03em}.motion-toggle{font-size:8px;line-height:25px}header{height:80px}header nav{display:none}.brand{gap:9px}.brand span{font-size:20px;letter-spacing:.12em}.brand img{width:34px;height:34px}.header-actions{gap:22px}.menu{inset:105px 0 0}.menu-inner{padding-top:35px}.menu-inner>a{font-size:30px}.hero{height:calc(100svh - 105px);min-height:650px;max-height:800px}.hero-copy{padding-top:48px}.hero-copy h1{font-size:43px;line-height:1.45}.hero-copy p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:26em;margin-top:25px}.hero-copy .eyebrow{max-width:27em;font-size:8px}.hero-art{object-position:58% bottom;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(245,243,236,.48) 0,transparent 80%);pointer-events:none}.hero-caption{bottom:20px;font-size:8px;gap:10px}.hero-caption>span:last-child{display:none}.statement{display:block;padding-top:80px;padding-bottom:75px}.section-no{display:none}.statement>div:first-child{margin-bottom:30px}.two-copy{display:block;margin-top:30px;font-size:14px}.two-copy p+p{margin-top:20px}.expertise{padding-top:20px;padding-bottom:80px}.section-heading{margin-bottom:40px}.expertise-row{grid-template-columns:30px 1fr 22px;gap:12px;padding:25px 0}.expertise-row h3{font-size:24px;line-height:1.4}.expertise-row p{font-size:12px;line-height:1.7;max-width:24em}.expertise-row:hover{padding-left:0;padding-right:0}.row-arrow{font-size:23px}.method-feature{padding:75px 0}.method-grid{display:block}.method-grid h2{font-size:32px}.method-grid p:not(.eyebrow){font-size:14px}.method-orbit{max-width:340px;margin:70px auto 10px}.scenes{padding-top:80px;padding-bottom:70px}.scene-preview{display:block}.scene-item{display:block;padding:25px 0 30px}.scene-item h3{font-size:27px;margin-top:20px;max-width:13em}.scene-item p{min-height:0;max-width:32em;font-size:14px}.scene-item .text-link{margin-top:18px}.scenes>.note{margin-top:15px}.human-feature{display:block;padding-bottom:80px}.human-feature .mark-panel{margin-bottom:45px}.mark-panel{padding:35px}.human-feature p:not(.eyebrow){font-size:14px}.cta{padding-top:70px;padding-bottom:75px}.cta h2{font-size:32px;line-height:1.45}.cta .text-link{gap:70px}footer{padding-top:45px!important}.footer-top{display:block;margin-bottom:35px}.footer-top>p{font-size:19px;margin-top:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px;margin-bottom:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:10px;font-size:8px}.footer-bottom span:nth-child(2){order:3;flex:1 0 100%}.page-intro{padding-top:60px;padding-bottom:60px}.page-intro h1{line-height:1.4;margin-bottom:25px}.page-intro .lead{font-size:15px}.quiet-band{padding:65px 0}.split{display:block}.split h2{font-size:31px;margin-bottom:30px}.split .lead{font-size:17px}.service-hero{display:block;padding-top:60px;padding-bottom:30px}.service-hero h1{font-size:41px;max-width:9em}.service-hero .lead{font-size:15px}.service-art{margin-top:40px;aspect-ratio:1.6;overflow:hidden}.service-art svg{height:270px;width:100%}.service-intro{display:block;padding-top:55px;padding-bottom:50px}.service-intro h2{margin-bottom:28px}.service-intro .lead{font-size:15px}.detail-row{grid-template-columns:27px 1fr;gap:10px;padding:25px 0}.detail-row h3{font-size:25px}.detail-row p{grid-column:2;font-size:14px}.detail-list{padding-bottom:55px}.output-section{padding-top:65px;padding-bottom:60px}.output-section h2{font-size:30px;line-height:1.55}.related{display:block;padding-bottom:60px}.related>span{display:block;margin-bottom:15px}.process{padding-bottom:60px}.process-step{display:block;padding:40px 0}.process-number{font-size:53px;display:block;margin-bottom:30px}.process-step h2{font-size:30px}.process-step>div>p:not(.eyebrow){font-size:14px}.checkpoint{font-size:12px}.scene-nav{gap:15px;flex-wrap:wrap;font-size:10px;padding-bottom:28px}.scenario{display:block;padding-top:60px;padding-bottom:60px}.scenario-title h2{font-size:33px}.scenario-title .lead{font-size:14px;margin-bottom:35px}.scenario-body p:not(.eyebrow){font-size:14px}.scenario-body h3{font-size:23px}.architecture img{height:270px}.architecture figcaption{font-size:8px}.brand-story{display:block;padding-bottom:70px}.brand-story .mark-panel{margin-bottom:45px}.brand-story h2{margin-bottom:30px}.resource-row{grid-template-columns:1fr;gap:45px;padding:40px 0 55px}.resource-cover{width:200px;max-width:100%;padding:25px}.resource-cover h3{font-size:24px}.resource-row h2{font-size:29px}.resource-row p:not(.eyebrow){font-size:14px}.library{padding-bottom:50px}.contact-layout{display:block;padding-bottom:70px}.email{font-size:30px}.contact-help{margin-top:45px;margin-bottom:55px}.legal-copy{padding-bottom:70px}.legal-copy h2{font-size:28px}.legal-copy p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}

.js-motion.first-arrival .hero-art{animation:landscapeOpen 1.6s cubic-bezier(.22,.75,.2,1) both,horizon 18s 1.6s ease-in-out infinite alternate}.js-motion.first-arrival .hero-copy{animation:copyArrival 1.15s .2s both}@keyframes landscapeOpen{from{clip-path:inset(0 44% 0 44%);opacity:.25}to{clip-path:inset(0);opacity:1}}@keyframes copyArrival{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}

#contact-form[hidden]{display:none}#contact-form fieldset{border:0;padding:0;margin:0;min-width:0;display:contents}
