:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f7f8f5;--ink:#191b1d;--muted:#626663;--line:#d5d8d3;--blue:#234fe2;--action:#234fe2;--blue-dark:#173bb6;--banner:#234fe2;--wash:#eef1e9;--white:#fff;--danger:#a12923;--field-border:#858c83;--positive-text:#24552b;--positive-bg:#e8efe4;--positive-border:#c8d7c0;--pending-text:#725317;--pending-bg:#f5efd8;--pending-border:#e1d8b2;--negative-text:#8f352d;--negative-bg:#f7ece8;--negative-border:#e4c9c1;--font-chinese:"Noto Sans TC Variable", sans-serif;--gutter:clamp(22px, 4vw, 64px);--section:112px;--ease:cubic-bezier(.16, 1, .3, 1)}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#141719;--ink:#edf0ea;--muted:#a7afa8;--line:#353c3e;--blue:#9bb4ff;--action:#355bd7;--blue-dark:#2d4ec1;--banner:#233b89;--wash:#202628;--danger:#ffb4aa;--field-border:#717e80;--positive-text:#aedbb5;--positive-bg:#20382a;--positive-border:#4b7054;--pending-text:#ead397;--pending-bg:#393222;--pending-border:#75643f;--negative-text:#ffb4aa;--negative-bg:#3d2727;--negative-border:#84534b}*{box-sizing:border-box}html{scrollbar-gutter:stable;scrollbar-color:var(--muted) var(--paper);scroll-padding-top:24px}@supports not (scrollbar-gutter:stable){html{overflow-y:scroll}}body{background:var(--paper);min-height:100svh;color:var(--ink);font-family:var(--font-body), var(--font-chinese), sans-serif;-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-size:15px;line-height:1.65;display:flex}#main{flex:1 0 auto;width:100%;min-width:0}::selection{background:var(--action);color:var(--white)}a{color:inherit;text-underline-offset:5px;text-decoration:none}button,input,select,textarea{font:inherit;border-radius:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}input,textarea{caret-color:var(--blue)}:focus-visible{outline:2px solid var(--blue);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance;line-height:1.05}h1,h2{font-family:var(--font-display), var(--font-chinese), sans-serif;letter-spacing:-.025em;font-weight:700}h3{letter-spacing:-.02em;font-weight:700}img{display:block}svg{flex-shrink:0}p{max-width:70ch}ul{padding-left:20px}small{font-size:12px}hr{border:0;border-top:1px solid var(--line);margin:28px 0}.page-container{max-width:1600px;padding:0 var(--gutter);margin:auto}.skip-link{clip-path:inset(50%);background:var(--action);color:var(--white);z-index:99;padding:12px 20px;position:fixed;top:-80px;left:16px}.skip-link:focus{clip-path:none;top:12px}.site-header{width:100%;max-width:1600px;padding:22px var(--gutter);border-bottom:1px solid var(--line);z-index:20;flex-shrink:0;align-items:center;gap:36px;margin:0 auto;display:flex;position:relative}.wordmark{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;align-items:baseline;font-size:48px;font-weight:700;line-height:1;display:inline-flex}.wordmark-dot{background:var(--blue);width:9px;height:9px;margin-left:4px}.desktop-nav{grid-template-columns:36px 44px 40px 120px;align-items:center;gap:30px;margin-left:auto;font-size:13px;font-weight:650;display:grid}.desktop-nav a,.language-link,.portal-link{white-space:nowrap;padding:8px 0}.site-header a{position:relative}.link-label{display:inline-block;position:relative}.link-pending{background:var(--blue);opacity:0;pointer-events:none;height:2px;transition:opacity .15s;position:absolute;bottom:-6px;left:0;right:0}.link-pending[data-pending=true]{opacity:1}.wordmark .link-pending{bottom:2px}.desktop-nav a:hover,.desktop-nav a[aria-current],.text-link:hover,.footer-bottom a:hover{color:var(--blue)}.header-tools{flex-shrink:0;align-items:center;gap:28px;font-size:12px;font-weight:650;display:flex}.language-link{min-width:48px}.portal-link{min-width:64px}.language-link .language-muted{color:var(--muted);font-weight:400}.portal-link{align-items:center;gap:5px;display:flex}.menu-toggle{color:var(--ink);background:0 0;border:0;padding:6px;display:none}.theme-picker{flex-shrink:0;position:relative}.theme-trigger{width:44px;height:44px;color:var(--ink);border:1px solid var(--field-border);background:0 0;place-items:center;padding:0;display:grid}.theme-trigger:hover,.theme-trigger[aria-expanded=true]{background:var(--wash);border-color:var(--ink)}.theme-options{background:var(--paper);width:200px;color:var(--ink);border:1px solid var(--field-border);min-width:0;margin:0;padding:16px;position:absolute;top:calc(100% + 12px);right:0}.theme-options legend{float:left;width:100%;padding:0 0 8px;font-size:12px;font-weight:700}.theme-options label{cursor:pointer;align-items:center;gap:12px;min-height:44px;padding:8px;font-size:14px;font-weight:500;display:flex}.theme-options label:hover{background:var(--wash)}.theme-options label:has(input:checked){background:var(--wash)}.theme-options input{width:16px;height:16px;accent-color:var(--blue);margin:0}.mobile-nav{background:var(--paper);border-bottom:1px solid var(--line);padding:16px var(--gutter) 24px;position:absolute;top:100%;left:0;right:0}.mobile-nav a{justify-content:space-between;padding:14px 0;font-size:22px;display:flex}.preview-notice{background:var(--wash);text-align:center;color:var(--muted);justify-content:center;align-items:center;gap:8px;padding:7px 20px;font-size:11px;display:flex}.preview-dot{background:var(--muted);width:5px;height:5px}.button{background:var(--action);min-height:48px;color:var(--white);border:1px solid var(--action);justify-content:space-between;align-items:center;gap:28px;padding:14px 22px;font-size:13px;font-weight:650;line-height:1.45;transition:background .2s,color .2s;display:inline-flex}.button:hover{background:var(--blue-dark);border-color:var(--blue-dark)}.button-outline{color:inherit;background:0 0;border-color:currentColor}.button-outline:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.text-link{align-items:center;gap:15px;padding:10px 0;font-size:13px;font-weight:650;line-height:1.5;display:inline-flex}.home-hero{padding-top:46px}.hero-title{letter-spacing:-.03em;font-size:clamp(80px,15.5vw,224px);line-height:.93}.hero-subline{justify-content:space-between;align-items:center;gap:24px;padding:26px 0 32px;display:flex}.hero-subline p{font-size:13px;font-weight:550}.hero-subline p span{color:var(--muted);margin:0 8px}.hero-subline .button{min-width:174px}.photograph{background:var(--wash);aspect-ratio:4/3;position:relative;overflow:hidden}.photograph img{object-fit:cover;transition:transform .7s var(--ease)}.hero-photograph{aspect-ratio:auto;height:clamp(340px,36vw,530px)}.hero-photograph img{object-position:50% 50%;animation:frame-reveal 1.2s var(--ease) both}.photo-caption{color:var(--muted);justify-content:space-between;gap:20px;padding-top:10px;font-size:10px;display:flex}.photo-caption a:hover{text-decoration:underline}.section{margin-top:var(--section)}.section-heading{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:30px;display:flex}.section-heading h2{font-size:clamp(32px,3.5vw,50px)}.people-index{border-top:1px solid var(--ink)}.person-row{border-bottom:1px solid var(--line);grid-template-columns:90px 1.4fr 1fr 26px;align-items:center;gap:28px;padding:18px 0;transition:color .2s;display:grid}.person-row>.photograph{aspect-ratio:auto;width:90px;height:76px}.person-row:hover{color:var(--blue)}.person-row:hover .photograph img,.project-tile a:hover .photograph img{transform:scale(1.025)}.person-name h3{font-size:24px}.person-name>span{color:var(--muted);margin-top:9px;font-size:11px;display:block}.person-role{color:var(--muted);font-size:13px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px;display:grid}.home-work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-tile .photograph{aspect-ratio:4/3}.project-tile-title{justify-content:space-between;align-items:center;gap:18px;margin-top:17px;display:flex}.project-tile-title h3{font-size:22px}.project-tile a:hover h3{color:var(--blue)}.project-tile-meta{color:var(--muted);justify-content:space-between;gap:16px;margin-top:10px;font-size:11px;display:flex}.home-about{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:64px;padding-top:52px;display:grid}.home-about h2{white-space:pre-line;font-size:clamp(40px,5vw,68px)}.home-about>div{max-width:490px;padding-top:4px}.home-about p{margin-bottom:18px;font-size:17px;line-height:1.85}.coverage-banner{background:var(--banner);color:var(--white);margin:var(--section) 0;justify-content:space-between;align-items:center;gap:32px;padding:48px;display:flex}.coverage-banner h2{font-size:clamp(34px,4vw,54px)}.coverage-banner p{color:#e7edff;margin-top:12px;font-size:13px}.coverage-banner .button{flex-shrink:0}.coverage-banner .button:hover{background:var(--white);color:var(--banner);border-color:var(--white)}.site-footer{width:100%;max-width:1600px;padding:0 var(--gutter) 30px;flex-shrink:0;margin:0 auto}.footer-top{border-top:1px solid var(--ink);align-items:center;gap:44px;padding:38px 0;display:flex}.footer-top p{font-size:11px;line-height:1.8}.footer-top>.text-link{margin-left:auto}.footer-bottom{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;gap:24px;padding-top:22px;font-size:10px;display:flex}.footer-bottom>div{gap:20px;display:flex}.footer-credit{color:var(--muted);margin-top:18px;font-size:11px}.footer-credit span{color:var(--ink)}.page-intro{justify-content:space-between;align-items:flex-end;gap:40px;padding:66px 0 48px;display:flex}.page-intro h1{font-size:clamp(58px,7vw,96px)}.page-intro>p{max-width:410px;color:var(--muted);font-size:15px}.page-end{margin-bottom:var(--section)}.filter-bar{border-top:1px solid var(--line);align-items:center;gap:8px;padding:22px 0 36px;display:flex}.filter-bar button{border:1px solid var(--line);color:var(--ink);background:0 0;padding:10px 18px;font-size:12px}.filter-bar button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filter-bar button:hover{border-color:var(--ink)}.filter-bar>span{color:var(--muted);margin-left:auto;font-size:12px}.empty-state{background:var(--wash);padding:50px 24px}.empty-state h3{font-size:21px;line-height:1.35}.empty-state p{color:var(--muted);margin-top:12px;font-size:14px}.back-link{color:var(--muted);align-items:center;gap:8px;margin-top:38px;font-size:12px;display:inline-flex}.back-link:hover{color:var(--blue)}.project-intro{grid-template-columns:1.2fr 1fr;gap:70px;padding:38px 0 48px;display:grid}.project-intro h1{font-size:clamp(55px,6vw,88px)}.project-intro p{line-height:1.9}.project-details{color:var(--muted);flex-wrap:wrap;gap:12px 28px;margin-top:22px;font-size:12px;display:flex}.project-details a{color:var(--blue);text-decoration:underline}.project-gallery{gap:48px;display:grid}.project-gallery .photograph{aspect-ratio:3/2}.project-gallery figure:nth-child(2n){width:72%;margin-left:auto}.project-gallery figure:nth-child(2n) .photograph{aspect-ratio:4/3}.profile-intro{grid-template-columns:1fr 1fr;align-items:center;gap:8%;margin-top:38px;display:grid}.profile-intro>.photograph{aspect-ratio:4/5}.profile-intro h1{font-size:clamp(54px,6vw,90px)}.profile-intro .role{color:var(--blue);margin:18px 0 28px;font-weight:600}.profile-intro .bio{line-height:1.95}.profile-intro .button{margin-top:30px}.sample-note{color:var(--muted);margin-top:20px;font-size:11px}.about-lead{grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;margin:12px 0 60px;display:grid}.about-lead .photograph{aspect-ratio:4/5;max-height:660px}.about-copy{font-size:21px;line-height:1.85}.about-copy p+p{color:var(--muted);margin-top:28px;font-size:15px}.team-contact{color:var(--muted);margin-top:24px;font-size:14px}.service-list{border-top:1px solid var(--ink)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 1.2fr;gap:60px;padding:30px 0;display:grid}.service-row h3{font-size:26px}.service-row p{color:var(--muted)}.form-layout{padding-bottom:var(--section);grid-template-columns:1fr 1.3fr;align-items:start;gap:9%;display:grid}.form-aside{position:sticky;top:38px}.form-aside h2{max-width:320px;margin-bottom:20px;font-size:38px}.form-aside p{color:var(--muted);font-size:14px}.process-list{margin:40px 0;padding:0;list-style:none}.process-list li{border-top:1px solid var(--line);padding:20px 0}.process-list strong{font-size:14px;display:block}.process-list span{color:var(--muted);margin-top:6px;font-size:12px;display:block}.form-stack{gap:24px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.form-grid.three{grid-template-columns:1.5fr 1fr 1fr}.field{gap:8px;min-width:0;font-size:12px;font-weight:600;display:grid}.field small{color:var(--muted);font-weight:400;line-height:1.6}.field input,.field select,.field textarea{border:1px solid var(--field-border);width:100%;min-height:48px;color:var(--ink);background:0 0;padding:12px 13px;font-size:14px;font-weight:400}.field textarea{resize:vertical;min-height:130px}.field select option{background:var(--paper);color:var(--ink)}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--blue);outline-offset:1px}.form-stack fieldset{border:0;gap:24px;min-width:0;margin:0;padding:0;display:grid}.form-stack legend{letter-spacing:-.02em;margin-bottom:24px;padding:0;font-size:21px;font-weight:700}.check-field{align-items:flex-start;gap:11px;font-size:12px;font-weight:400;line-height:1.8;display:flex}.check-field input{accent-color:var(--blue);flex-shrink:0;width:16px;height:16px;margin:3px 0 0}.check-field a{color:var(--blue);text-decoration:underline}.form-help{color:var(--muted);font-size:12px}.verification-widget{min-height:65px}.form-status{background:var(--wash);padding:18px 20px;font-size:14px;line-height:1.7}.form-status[data-status=error]{color:var(--danger);background:var(--negative-bg)}.form-status[data-status=success]{background:var(--positive-bg);color:var(--positive-text)}.form-status strong{margin-top:8px;display:block}.honey{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.login-layout{max-width:460px;margin:68px auto 110px}.login-layout h1{margin-bottom:18px;font-size:64px}.login-layout>p{color:var(--muted);margin-bottom:34px;font-size:14px}.login-layout .button{width:100%}.login-foot{margin-top:24px;font-size:12px}.account-form{width:100%;max-width:620px}.invitation-result{gap:18px;min-width:0;display:grid}.invitation-revoke{margin-top:16px}.invitation-summary{overflow-wrap:anywhere;gap:5px;margin-bottom:22px;display:grid}.member-filters{grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:22px;max-width:800px;margin:24px 0 18px;display:grid}.role-access-note{max-width:75ch;margin-bottom:24px}.member-summary{vertical-align:top;gap:8px;max-width:calc(100% - 22px);display:inline-grid}.member-summary strong,.member-summary span{overflow-wrap:anywhere;line-height:1.6}.member-summary span{color:var(--muted);font-size:12px;font-weight:400}.role-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;display:grid}.role-option{cursor:pointer;align-items:center;gap:12px;min-height:44px;font-size:14px;display:flex}.role-option input{width:18px;height:18px;accent-color:var(--blue);flex-shrink:0}.role-option span{overflow-wrap:anywhere}.role-form fieldset{gap:18px}.role-form legend{font-family:var(--font-body), var(--font-chinese), sans-serif;letter-spacing:normal;margin-bottom:18px;font-size:14px;line-height:1.6}.role-history{margin-top:28px}.role-history h3{margin-bottom:16px;font-size:16px}.role-history p{flex-wrap:wrap;gap:8px 24px;font-size:14px;line-height:1.8;display:flex}.role-history p+p{margin-top:8px}.role-history p strong{font-variant-numeric:tabular-nums}.account-controls{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.permanent-admin{margin:18px 0}@media (max-width:760px){.member-filters,.role-options{grid-template-columns:minmax(0,1fr)}}.register-layout>.eyebrow{color:var(--blue);margin-bottom:18px;font-size:11px}.prose{max-width:780px;margin:0 auto 110px}.prose .page-intro{display:block}.prose h2{margin:40px 0 16px;font-size:32px}.prose p+p{margin-top:18px}.credits-list{margin-top:30px;padding:0;list-style:none}.credits-list li{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding:20px 0;display:flex}.credits-list a{color:var(--blue);text-decoration:underline}.hero-empty{background:var(--banner);height:380px;color:var(--white);flex-direction:column;justify-content:center;padding:40px;display:flex}.hero-empty span{font-family:var(--font-display);font-size:130px;line-height:1}.hero-empty p{margin-top:20px}.image-placeholder{height:100%;color:var(--blue);font-family:var(--font-display);place-content:center;font-size:50px;display:grid}.portal-shell{grid-template-columns:192px minmax(0,1fr);gap:48px;min-height:560px;margin:40px 0 100px;display:grid}.portal-sidebar{border-right:1px solid var(--line);padding-right:24px}.portal-sidebar h2{margin-bottom:6px;font-size:32px}.portal-sidebar>p{color:var(--muted);margin-bottom:26px;font-size:11px}.portal-nav{gap:3px;display:grid}.portal-nav a{align-items:center;gap:10px;padding:11px 12px;font-size:13px;display:flex}.portal-nav a[aria-current=page]{background:var(--ink);color:var(--paper)}.portal-nav a:hover:not([aria-current]){background:var(--wash)}.portal-sidebar form{margin-top:30px}.subtle-button{color:var(--muted);background:0 0;border:0;padding:8px 0;font-size:12px;text-decoration:underline}.portal-heading{justify-content:space-between;align-items:center;gap:20px;margin:0 0 28px;display:flex}.portal-heading h1{font-size:50px}.portal-heading p{color:var(--muted);margin-top:10px;font-size:12px}.portal-notice{border:1px solid var(--line);color:var(--muted);margin-bottom:26px;padding:14px 18px;font-size:12px}.portal-section{margin-top:38px}.portal-section>h2{margin-bottom:20px;font-size:30px}.portal-summary{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-bottom:38px;display:grid}.portal-summary a{padding:22px 22px 22px 0}.portal-summary strong{font-family:var(--font-display);font-size:42px;line-height:1.2;display:block}.portal-summary span{color:var(--muted);font-size:12px}.portal-summary a:hover strong{color:var(--blue)}.data-list{border-top:1px solid var(--line)}.data-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:20px 0;display:flex}.data-row strong{font-size:14px;font-weight:650;display:block}.data-row p{color:var(--muted);margin-top:6px;font-size:12px}.status{border:1px solid var(--line);white-space:nowrap;padding:4px 9px;font-size:11px}.status[data-value=confirmed],.status[data-value=scheduled],.status[data-value=punctual]{color:var(--positive-text);background:var(--positive-bg);border-color:var(--positive-border)}.status[data-value=pending],.status[data-value=reviewing]{color:var(--pending-text);background:var(--pending-bg);border-color:var(--pending-border)}.status[data-value=cancelled],.status[data-value=absent],.status[data-value=declined]{color:var(--negative-text);background:var(--negative-bg);border-color:var(--negative-border)}.editor{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0}.editor+.editor{border-top:0;margin-top:-18px}.editor summary{cursor:pointer;padding:20px 0;font-size:14px;font-weight:650}.editor summary::marker{color:var(--blue)}.editor>div{max-width:800px;padding:8px 0 30px}.editor .form-stack{gap:18px}.editor .field input,.editor .field select{min-height:44px;padding:10px;font-size:13px}.editor .field textarea{min-height:100px}.inline-form{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.inline-form .field{flex:1;min-width:130px}.inline-form .button{min-height:44px;padding:11px 16px}.request-detail{grid-template-columns:1fr 1fr;gap:16px;margin:0 0 22px;display:grid}.request-detail dt{color:var(--muted);font-size:11px}.request-detail dd{overflow-wrap:anywhere;margin:3px 0 0;font-size:13px}.request-brief{white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:25px;font-size:14px}.media-uploader{border:1px dashed var(--field-border);margin-bottom:24px;padding:20px}.media-uploader h3{margin-bottom:8px;font-size:17px}.media-uploader p{color:var(--muted);margin-bottom:16px;font-size:12px}.media-uploader output{overflow-wrap:anywhere;color:var(--blue);margin-top:14px;font-size:12px;display:block}.upload-controls{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.upload-controls input{max-width:100%;font-size:12px}.upload-controls input::file-selector-button{background:var(--wash);color:var(--ink);border:1px solid var(--field-border);border-radius:0;min-height:44px;margin-right:12px;padding:8px 12px}.time-note{color:var(--muted);margin-bottom:14px;font-size:11px}.editor-checks{flex-wrap:wrap;gap:10px 24px;display:flex}.inline-link{color:var(--blue);text-decoration:underline}.error-page{padding:100px var(--gutter);max-width:1000px;margin:auto}.error-page h1{font-size:72px}.error-page p{margin:24px 0}html[lang=zh-HK] h1,html[lang=zh-HK] h2{letter-spacing:-.025em;line-height:1.25}html[lang=zh-HK] .hero-title{font-size:clamp(40px,6.7vw,96px);font-weight:800}html[lang=zh-HK] .page-intro h1{font-size:clamp(42px,5vw,68px)}html[lang=zh-HK] .section-heading h2{font-size:clamp(26px,2.7vw,38px)}html[lang=zh-HK] .home-about h2{font-size:clamp(32px,4vw,52px)}html[lang=zh-HK] .coverage-banner h2{font-size:clamp(28px,3vw,42px)}html[lang=zh-HK] .portal-heading h1{font-size:36px}html[lang=zh-HK] .person-name h3{font-size:22px}html[lang=zh-HK] .project-tile-title h3{font-size:20px}@keyframes frame-reveal{0%{clip-path:inset(0 0 6%)}to{clip-path:inset(0)}}@media (min-width:1500px){.home-hero{padding-top:60px}}@media (max-width:1050px){.desktop-nav{gap:20px}.site-header{gap:24px}.header-tools{gap:18px}.portal-shell{grid-template-columns:160px minmax(0,1fr);gap:30px}.home-work-grid{gap:22px}.project-tile-title h3{font-size:19px}.footer-bottom>span:last-child{display:none}.form-layout{gap:6%}.project-intro{gap:40px}}@media (max-width:760px){:root{--section:72px}.site-header{padding-top:18px;padding-bottom:18px}.wordmark{font-size:40px}.wordmark-dot{width:7px;height:7px}.desktop-nav{display:none}.header-tools{gap:18px;margin-left:auto}.menu-toggle{display:flex}.portal-link{display:none}.preview-notice{font-size:10px}.home-hero{padding-top:38px}.hero-title{font-size:clamp(68px,13vw,100px)}.hero-subline{align-items:flex-start;gap:18px;padding:22px 0}.hero-subline p{max-width:200px;font-size:11px;line-height:1.8}.hero-subline p span{display:none}.hero-subline .button{gap:15px;min-width:128px;padding:12px 15px;font-size:11px}.hero-photograph{height:430px}.hero-photograph img{object-position:50% 50%}.photo-caption{gap:10px;font-size:9px;line-height:1.6}.section-heading{align-items:flex-start;gap:20px;margin-bottom:22px}.section-heading .text-link{flex-shrink:0;gap:8px;padding-top:8px;font-size:11px}.section-heading h2{max-width:65%;font-size:35px}.person-row{grid-template-columns:65px 1fr 21px;gap:18px;padding:16px 0}.person-row>.photograph{width:65px;height:70px}.person-name h3{font-size:21px}.person-name>span{margin-top:7px;font-size:10px}.person-role{display:none}.person-row>svg{width:21px}.work-grid{gap:34px 20px}.home-work-grid{grid-template-columns:1fr}.home-work-grid .project-tile .photograph{aspect-ratio:4/3}.project-tile-title h3{font-size:23px}.home-about{grid-template-columns:1fr;gap:28px;padding-top:32px}.home-about h2{font-size:48px}.home-about p{font-size:16px}.coverage-banner{flex-direction:column;align-items:flex-start;gap:28px;padding:30px 24px}.coverage-banner h2{font-size:40px}.footer-top{flex-wrap:wrap;gap:24px;padding:30px 0}.footer-top>.text-link{width:100%;margin-left:0}.footer-bottom{flex-direction:column;gap:14px}.footer-bottom>div{flex-wrap:wrap;gap:18px}.page-intro{padding:44px 0 34px;display:block}.page-intro h1{font-size:68px}.page-intro>p{max-width:500px;margin-top:22px;font-size:14px}.filter-bar{gap:6px;padding-top:18px}.filter-bar button{padding:9px 13px;font-size:11px}.filter-bar>span{font-size:10px}.project-intro{grid-template-columns:1fr;gap:26px;padding:30px 0}.project-intro h1{font-size:62px}.project-gallery{gap:30px}.project-gallery figure:nth-child(2n){width:90%}.project-gallery .photograph{aspect-ratio:4/3}.profile-intro{grid-template-columns:1fr;gap:32px}.profile-intro>.photograph{max-height:500px}.profile-intro h1{font-size:62px}.profile-intro .role{margin:14px 0 20px}.about-lead{grid-template-columns:1fr;gap:30px;margin-bottom:40px}.about-lead .photograph{aspect-ratio:4/3}.about-copy{font-size:19px}.service-row{grid-template-columns:1fr;gap:14px;padding:25px 0}.service-row h3{font-size:23px}.service-row p{font-size:14px}.form-layout{grid-template-columns:1fr;gap:30px}.form-aside{position:static}.form-aside h2{max-width:none;font-size:34px}.process-list{margin:24px 0 0}.process-list li{padding:14px 0}.form-grid{gap:16px}.form-grid.three{grid-template-columns:1fr 1fr}.form-grid.three>.field:first-child{grid-column:1/-1}.form-stack{gap:20px}.field input,.field select,.field textarea,.editor .field input,.editor .field select{font-size:16px}.login-layout{margin:44px auto 72px}.login-layout h1{font-size:60px}.portal-shell{margin-top:28px;display:block}.portal-sidebar{border-right:0;border-bottom:1px solid var(--line);margin-bottom:30px;padding:0 0 20px}.portal-sidebar>p{margin-bottom:14px}.portal-sidebar form{margin-top:12px}.portal-nav{flex-wrap:wrap;gap:4px;display:flex}.portal-nav a{gap:6px;padding:8px 10px;font-size:11px}.portal-nav a svg{width:14px;height:14px}.portal-heading h1{font-size:43px}.portal-heading{align-items:flex-start}.portal-summary strong{font-size:36px}.portal-summary span{font-size:10px}.portal-summary a{padding-right:12px}.data-row{align-items:flex-start;gap:14px}.data-row strong{font-size:13px}.data-row p{font-size:11px}.status{font-size:10px}.portal-notice{padding:12px;font-size:11px}.request-detail{gap:14px}.credits-list li{flex-direction:column;gap:6px}.prose{margin-bottom:72px}.prose h2{font-size:30px}.hero-empty{height:320px}html[lang=zh-HK] .hero-title{max-width:570px;font-size:clamp(38px,8vw,64px)}html[lang=zh-HK] .section-heading h2{font-size:27px}html[lang=zh-HK] .person-name h3{font-size:19px}html[lang=zh-HK] .page-intro h1{font-size:48px}html[lang=zh-HK] .profile-intro h1{font-size:42px}}@media (max-width:450px){.work-grid:not(.home-work-grid){grid-template-columns:1fr}.hero-subline p{max-width:155px}.hero-photograph{height:370px}.section-heading h2{max-width:64%;font-size:31px}.section-heading .text-link{max-width:112px}.form-grid:not(.three),.request-detail{grid-template-columns:1fr}.person-name h3{font-size:20px}.filter-bar>span{display:none}.profile-intro h1{font-size:52px}.footer-top p{font-size:10px}.error-page h1{font-size:52px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
