:root{color-scheme:dark;--paper:#000;--surface:#181818;--ink:#fff;--muted:#9b9b9b;--line:rgba(255,255,255,.2);--font:"Geist","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;--max:1440px;--gutter:32px;--curve:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/24px var(--font);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}body:has(dialog[open]){overflow:hidden}::selection{color:#000;background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:default;opacity:.35}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,h4{margin:0}h1,h2,h3,h4{font-weight:400;text-wrap:balance}p{text-wrap:pretty}em,i{font-style:normal}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #fff;outline-offset:4px}button:active,.text-link:active{transform:translateY(1px)}a,button{transition:color .3s var(--curve),background-color .3s var(--curve),opacity .3s var(--curve),transform .5s var(--curve)}.wrap{width:min(var(--max),calc(100% - var(--gutter)*2));margin-inline:auto;min-width:0}.section-space{padding-block:96px}main{min-height:40svh}#top,#team,#works,#studio,#contact{scroll-margin-top:112px}.eyebrow,.label,.section-label,.project-meta{font-size:12px;line-height:16px;letter-spacing:.06em}.eyebrow,.label{color:var(--muted)}.label{display:block}.eyebrow{margin-bottom:24px}.section-label{display:flex;justify-content:space-between;gap:24px;color:var(--muted);padding-bottom:24px;border-bottom:1px solid var(--line)}.section-label h2{font-size:14px;line-height:20px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:64px}.section-heading h2{font-size:48px;line-height:1.15;letter-spacing:-.04em;white-space:pre-line;max-width:880px}.section-heading .eyebrow{margin-bottom:24px}.section-note{font-size:14px;line-height:20px;white-space:pre-line;color:var(--muted);max-width:400px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;line-height:20px;padding-block:12px;position:relative;white-space:nowrap}.text-link:after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor;transform:scaleX(.35);transform-origin:left;transition:transform .5s var(--curve)}.text-link:hover:after{transform:scaleX(1)}.text-link>span:not(.lang-zh):not(.lang-en){color:var(--muted)}.screen-reader-text{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute!important;white-space:nowrap;width:1px}.skip-link{position:fixed;z-index:100;top:16px;left:16px;transform:translateY(-160%);background:#fff;color:#000;padding:12px 16px}.skip-link:focus{transform:translateY(0)}
.lang-en,.toggle-en{display:none!important}html[data-language="en"] .lang-zh,html[data-language="en"] .toggle-cn{display:none!important}html[data-language="en"] .lang-en,html[data-language="en"] .toggle-en{display:revert!important}
/* A quiet, floating frame for the identity and essential routes. */
.site-header{position:fixed;z-index:30;top:16px;left:50%;transform:translateX(-50%);width:min(var(--max),calc(100% - var(--gutter)*2));min-height:72px;padding:12px 24px;display:flex;align-items:center;gap:32px;background:rgba(0,0,0,.78);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:8px}.admin-bar .site-header{top:48px}.brand{flex:0 0 auto;display:flex;align-items:center}.brand-logo{width:144px;height:48px;object-fit:contain;filter:brightness(0) invert(1)}.header-studio{font-size:12px;line-height:16px;color:var(--muted);margin-left:16px}.site-nav{display:flex;align-items:center;gap:32px;margin-left:auto}.site-nav a{display:flex;gap:8px;align-items:center;font-size:14px;line-height:20px;color:var(--muted);padding-block:12px}.site-nav a:hover,.site-nav a[aria-current]{color:#fff}.site-nav sup{font-size:12px;line-height:16px;align-self:flex-start;opacity:.6}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.site-nav+.header-actions{margin-left:0}.language-toggle{min-width:44px;min-height:44px;background:transparent;border:1px solid var(--line);font-size:12px;line-height:16px;border-radius:4px;padding:8px}.language-toggle:hover{background:#fff;color:#000}.menu-toggle{display:none;width:44px;height:44px;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:8px}.menu-toggle span{width:24px;height:1px;background:#fff;transition:transform .5s var(--curve)}.site-menu{position:fixed;inset:0;z-index:50;margin:0;width:100%;max-width:none;height:100svh;max-height:none;padding:24px var(--gutter);background:#000;color:#fff;border:0;overflow-y:auto;overscroll-behavior:contain}.site-menu::backdrop{background:#000}.menu-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:48px}.menu-top img{width:144px;height:48px;object-fit:contain;filter:brightness(0) invert(1)}.menu-close{width:44px;height:44px;background:transparent;font-size:36px;line-height:40px;font-weight:400}.site-menu>nav{display:grid}.site-menu>nav>a{display:grid;grid-template-columns:40px 1fr 32px;align-items:center;gap:16px;padding-block:16px;font-size:36px;line-height:40px;border-bottom:1px solid var(--line)}.site-menu>nav>a>span:first-child{font-size:12px;line-height:16px;color:var(--muted)}.site-menu>nav>a>i{font-size:24px;line-height:32px;text-align:right}.site-menu>nav>a:hover{color:var(--muted)}.menu-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:48px;color:var(--muted);font-size:12px;line-height:20px}.site-menu[open]>nav>a{animation:menu-enter .6s var(--curve) both}.site-menu[open]>nav>a:nth-child(2){animation-delay:60ms}.site-menu[open]>nav>a:nth-child(3){animation-delay:120ms}.site-menu[open]>nav>a:nth-child(4){animation-delay:180ms}.site-menu[open]>nav>a:nth-child(5){animation-delay:240ms}@keyframes menu-enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
/* Natural image proportions keep people and garments intact. */
.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:48px;row-gap:80px;align-items:start}.project-card{min-width:0;grid-column:span 6}.project-grid-curated .project-card:nth-child(4n+1),.project-grid-archive .project-card:nth-child(4n+1){grid-column:span 7}.project-grid-curated .project-card:nth-child(4n+2),.project-grid-archive .project-card:nth-child(4n+2){grid-column:span 5;margin-top:96px}.project-grid-curated .project-card:nth-child(4n+3),.project-grid-archive .project-card:nth-child(4n+3){grid-column:span 5}.project-grid-curated .project-card:nth-child(4n+4),.project-grid-archive .project-card:nth-child(4n+4){grid-column:span 7;margin-top:80px}.project-link{display:block}.project-media{position:relative;overflow:hidden;background:#000;min-width:0}.project-media img{display:block;width:100%;height:auto;object-fit:contain;transition:transform .7s var(--curve),opacity .5s var(--curve)}.project-link:hover .project-media img{transform:scale(1.015);opacity:.92}.project-open{position:absolute;bottom:16px;right:16px;display:grid;place-items:center;width:40px;height:40px;background:rgba(0,0,0,.65);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:20px;line-height:28px;transition:transform .5s var(--curve),background .3s var(--curve)}.project-link:hover .project-open{transform:translate(2px,-2px);background:#000}.project-meta{display:flex;justify-content:space-between;gap:24px;color:var(--muted);margin-top:24px;min-width:0}.project-meta>span:first-child{min-width:0}.project-card h2,.project-card h3{font-size:24px;line-height:32px;letter-spacing:-.03em;margin-top:8px;overflow-wrap:anywhere}.project-location{font-size:14px;line-height:20px;color:var(--muted);margin-top:8px;overflow-wrap:anywhere}.archive-invitation{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:80px;padding-top:24px;border-top:1px solid var(--line)}.archive-invitation p{font-size:14px;line-height:20px;color:var(--muted);max-width:640px}.studio-manifesto{padding-top:96px;padding-bottom:96px}.manifesto-statement{font-size:60px;line-height:1.2;letter-spacing:-.04em;max-width:1120px;margin-top:64px}.manifesto-statement [data-word]{color:#666;transition:color .7s var(--curve)}.manifesto-statement [data-word].is-lit{color:#fff}.manifesto-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-top:48px;padding-left:25%}.manifesto-bottom p{font-size:16px;line-height:28px;white-space:pre-line;color:var(--muted);max-width:680px}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:40px minmax(0,1fr) minmax(0,1fr);gap:32px;padding-block:32px;border-bottom:1px solid var(--line);align-items:start}.service-row>span{font-size:12px;line-height:20px;color:var(--muted)}.service-row h3{font-size:30px;line-height:36px;letter-spacing:-.03em;min-width:0}.service-row p{font-size:16px;line-height:28px;color:var(--muted);max-width:640px}.client-line{margin-top:80px}.client-line>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;align-items:center;font-size:16px;line-height:24px;letter-spacing:-.03em}.client-line>div>span{overflow-wrap:anywhere}.client-line .eyebrow{margin-bottom:32px}
/* Archive: one chronology, clear filters and readable controls at every width. */
.archive-page{padding-top:160px;padding-bottom:96px}.admin-bar .archive-page{padding-top:192px}.archive-intro{padding-bottom:64px}.archive-title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:48px}.archive-title-row h1{font-size:72px;line-height:1.1;letter-spacing:-.05em;max-width:960px}.archive-title-row>p{max-width:440px;white-space:pre-line;color:var(--muted);font-size:16px;line-height:28px}.archive-tools{border-block:1px solid var(--line);padding:16px 0;display:flex;flex-direction:column;gap:24px}.case-filters{display:flex;gap:32px;align-items:center;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;max-width:100%;min-width:0}.case-filters::-webkit-scrollbar{display:none}.case-filters a{font-size:14px;line-height:20px;white-space:nowrap;flex:0 0 auto;position:relative;color:var(--muted);padding:12px 0}.case-filters a.is-active,.case-filters a:hover{color:#fff}.case-filters a:after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--curve)}.case-filters a.is-active:after,.case-filters a:hover:after{transform:scaleX(1)}.project-search{display:flex;align-items:center;justify-content:flex-end;gap:16px;min-width:0}.search-field{display:flex;align-items:center;min-width:0;width:320px;max-width:100%;border:1px solid var(--line);border-radius:4px;padding:0 12px}.search-field input{width:100%;min-width:0;background:none;border:0;color:#fff;font-size:14px;line-height:20px;height:44px;padding:8px 0}.search-field input::placeholder{color:var(--muted)}.search-field button{background:none;min-width:32px;height:44px;font-size:20px;line-height:28px}.year-field{min-width:0;flex:0 0 144px}.year-field select{width:100%;height:44px;padding:8px 12px;background:#000;color:#fff;border:1px solid var(--line);border-radius:4px;font-size:14px;line-height:20px}.year-submit{background:none;border:1px solid var(--line);border-radius:4px;height:44px;padding:8px 12px;font-size:14px;line-height:20px}.year-submit:hover{color:#000;background:#fff}.archive-rule{display:flex;justify-content:space-between;gap:24px;padding:24px 0 48px;color:var(--muted);font-size:12px;line-height:16px}.pagination{padding-top:80px}.pagination .nav-links{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center}.pagination .page-numbers{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;font-size:14px;line-height:20px;border:1px solid transparent;border-radius:4px;color:var(--muted)}.pagination .current{border-color:var(--line);color:#fff}.pagination a:hover{background:#181818;color:#fff}.pagination h2{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;width:1px}.archive-empty{grid-column:1/-1;padding-block:80px}.archive-empty h2{font-size:36px;line-height:40px}.archive-empty p{color:var(--muted);margin:24px 0;font-size:16px;line-height:24px}
/* Detail pages: full photographs, a concise project note, then the visual story. */
.single-case{padding-top:144px;padding-bottom:96px}.admin-bar .single-case{padding-top:176px}.back-link{display:inline-block;font-size:14px;line-height:20px;color:var(--muted);padding-block:12px;margin-bottom:48px}.back-link:hover{color:#fff}.single-case-header{padding-bottom:48px}.single-case-header .project-meta{margin-top:0;margin-bottom:24px;max-width:480px}.single-case-header h1{font-size:60px;line-height:1.15;letter-spacing:-.04em;max-width:1120px;overflow-wrap:anywhere}.single-location{font-size:16px;line-height:24px;color:var(--muted);margin-top:24px}.single-case-hero>a{display:block;position:relative;overflow:hidden}.single-case-hero img{width:100%;height:auto;max-height:80svh;object-fit:contain;background:#000}.image-expand{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:40px;height:40px;background:rgba(0,0,0,.65);border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:20px;line-height:28px;opacity:0;transform:translateY(8px);transition:opacity .3s var(--curve),transform .5s var(--curve)}a:hover>.image-expand,a:focus-visible>.image-expand{opacity:1;transform:translateY(0)}.single-case-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:96px;padding-top:64px;padding-bottom:32px}.single-case-body aside{display:flex;flex-direction:column;gap:24px;font-size:14px;line-height:24px}.single-case-body aside .label{margin-bottom:8px}.single-case-body aside span{overflow-wrap:anywhere}.entry-content{font-size:18px;line-height:32px;max-width:880px;min-width:0}.entry-content p{margin:0 0 24px;overflow-wrap:anywhere}.entry-content p:last-child{margin-bottom:0;color:var(--muted);font-size:14px;line-height:24px}.entry-content a{border-bottom:1px solid currentColor}.entry-content ul{padding-left:24px}.case-lead{font-size:24px;line-height:32px}.case-gallery .section-label{margin-bottom:48px}.case-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:64px 32px}.case-gallery-item{min-width:0}.case-gallery-item>a{display:block;position:relative;overflow:hidden}.case-gallery-item img{width:100%;height:auto;max-height:100svh;object-fit:contain;background:#000}.case-gallery-item figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:16px;font-size:12px;line-height:16px;color:var(--muted)}.case-gallery-item:only-child{grid-column:1/-1}.case-next-prev{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;padding-top:32px;border-top:1px solid var(--line);font-size:14px;line-height:20px}.case-next-prev>div:last-child{text-align:right}.case-next-prev a{padding-block:12px;display:inline-block;color:var(--muted)}.case-next-prev a:hover{color:#fff}
/* Studio: the team arrives before the long archive, without discarding its history. */
.about-hero{padding-top:160px;padding-bottom:64px}.admin-bar .about-hero{padding-top:192px}.about-since{font-size:14px;line-height:20px;color:var(--muted);padding-bottom:12px;white-space:nowrap}.about-opening{font-size:48px;line-height:1.2;letter-spacing:-.04em;max-width:1000px;margin-top:64px}.about-editorial{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:start}.about-editorial figure:nth-child(2){margin-top:96px}.about-editorial img{width:100%;height:auto;object-fit:contain}.about-editorial figcaption{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:12px;line-height:16px;margin-top:16px}.about-intro-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:96px;margin-top:64px}.about-intro-main h2{font-size:48px;line-height:1.2;letter-spacing:-.04em}.about-intro-main p{font-size:18px;line-height:32px;color:var(--muted);margin-bottom:24px}.about-intro-main p:last-child{margin-bottom:0}.about-capabilities .service-list{border-top:0}.about-team .section-heading{margin-top:64px}.about-team-group+.about-team-group{margin-top:64px}.team-group-title{font-size:14px;line-height:20px;color:var(--muted);margin-bottom:24px}.team-list{display:grid;gap:32px 48px}.team-list-core{grid-template-columns:repeat(3,minmax(0,1fr))}.team-list-support{grid-template-columns:repeat(2,minmax(0,1fr))}.team-person{display:flex;align-items:center;gap:16px;min-width:0;padding-block:16px}.team-person img{width:48px;height:48px;flex:0 0 48px;border-radius:50%;object-fit:cover;object-position:50% 10%;filter:grayscale(1)}.team-person>div{min-width:0}.team-person h4{font-size:20px;line-height:28px;overflow-wrap:anywhere}.team-person .person-en{font-size:12px;line-height:16px;margin-left:12px;color:var(--muted)}.team-person p{font-size:14px;line-height:24px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 48px;padding-top:48px;font-size:18px;line-height:28px}.client-grid>span{overflow-wrap:anywhere}.about-history-list article{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;padding-block:24px;border-bottom:1px solid var(--line)}.about-history-list strong{font-size:14px;line-height:24px;font-weight:400;color:var(--muted)}.about-history-list p{font-size:16px;line-height:28px;overflow-wrap:anywhere}.timeline-expand>summary{display:flex;justify-content:space-between;gap:24px;list-style:none;cursor:pointer;padding-block:24px;font-size:14px;line-height:20px}.timeline-expand>summary::-webkit-details-marker{display:none}.timeline-expand>summary>span:last-child{transition:transform .5s var(--curve)}.timeline-expand[open]>summary>span:last-child{transform:rotate(45deg)}.timeline-expand>summary:hover{color:var(--muted)}
/* Contact stays a readable page section, with the original mark and QR. */
.site-footer{background:#181818;padding-top:64px;padding-bottom:24px;margin-top:48px}.footer-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:48px}.footer-intro .eyebrow{margin:0}.back-top{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;font-size:24px;line-height:32px;flex:0 0 48px}.back-top:hover{color:#000;background:#fff}.footer-top{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 160px;gap:48px;align-items:start}.footer-top h2{font-size:60px;line-height:1.15;letter-spacing:-.05em;min-width:0;overflow-wrap:anywhere}.footer-links{min-width:0;font-size:16px;line-height:24px}.contact-person{margin-bottom:24px}.contact-item+.contact-item{margin-top:24px}.contact-item .label{margin-bottom:8px}.contact-value{display:block;overflow-wrap:anywhere}.contact-value:hover{color:var(--muted)}.copy-button{background:none;color:var(--muted);font-size:12px;line-height:16px;padding:8px 0}.copy-button:hover{color:#fff}.footer-qr{width:160px;max-width:100%}.footer-qr img{width:100%;height:auto;background:#fff}.footer-qr figcaption{font-size:12px;line-height:20px;color:var(--muted);margin-top:12px;overflow-wrap:anywhere}.footer-signature{display:grid;grid-template-columns:1fr 1fr auto;gap:32px;align-items:end;padding-top:80px;padding-bottom:32px}.footer-signature img{width:200px;height:80px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.footer-signature p,.footer-signature>span{font-size:12px;line-height:20px;color:var(--muted)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 32px;border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:12px;line-height:20px}.footer-bottom a:hover{color:#fff}.copy-status{position:fixed;z-index:60;left:50%;bottom:24px;transform:translate(-50%,16px);padding:12px 16px;background:#fff;color:#000;border-radius:4px;opacity:0;pointer-events:none;max-width:calc(100% - 32px);font-size:14px;line-height:20px;transition:opacity .3s var(--curve),transform .5s var(--curve)}.copy-status.is-visible{opacity:1;transform:translate(-50%,0)}.image-viewer{inset:0;margin:0;width:100%;max-width:none;height:100svh;max-height:none;padding:16px 24px;background:#000;border:0;color:#fff;overscroll-behavior:contain;overflow:hidden}.image-viewer[open]{display:grid;grid-template-rows:48px minmax(0,1fr) 64px;gap:16px}.image-viewer::backdrop{background:#000}.viewer-toolbar,.viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:0}.viewer-counter{font-size:12px;line-height:16px;color:var(--muted)}.viewer-close{width:48px;height:48px;background:none;font-size:36px;line-height:40px}.viewer-image{width:100%;height:100%;object-fit:contain;min-height:0}.viewer-controls button{flex:0 0 48px;width:48px;height:48px;background:none;border:1px solid var(--line);border-radius:50%;font-size:24px;line-height:32px}.viewer-caption{font-size:12px;line-height:16px;color:var(--muted);text-align:center;overflow-wrap:anywhere;min-width:0}.error-page{padding-top:192px;padding-bottom:96px;min-height:80svh}.error-page h1{font-size:72px;line-height:1.1;white-space:pre-line;letter-spacing:-.05em;max-width:960px;margin-bottom:32px}.error-page>p:not(.eyebrow){font-size:18px;line-height:28px;color:var(--muted);margin-bottom:24px}.post-simple{padding-block:48px;border-bottom:1px solid var(--line)}.post-simple h2{font-size:36px;line-height:40px}
@media(min-width:1440px){:root{--gutter:48px}.spotlight-heading{left:48px}.spotlight-edge{left:48px}}
@media(max-width:1199px){.header-studio{display:none}.spotlight-heading h1{font-size:60px}.section-heading h2,.about-opening,.about-intro-main h2{font-size:36px;line-height:40px}.manifesto-statement{font-size:48px;line-height:1.2}.footer-top{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 144px;gap:32px}.footer-top h2{font-size:48px;line-height:1.15}.footer-qr{width:144px}.archive-title-row h1{font-size:60px}.single-case-header h1{font-size:48px}.service-row h3{font-size:24px;line-height:32px}.client-grid{font-size:16px;line-height:24px}.team-person .person-en{display:block;margin-left:0;margin-top:4px}}
@media(max-width:1024px){.section-space{padding-block:80px}.spotlight-stage{height:auto}.spotlight-heading{position:relative;inset:auto;max-width:680px;margin-bottom:32px;pointer-events:auto}.spotlight-heading .eyebrow{color:var(--muted);margin-bottom:16px}.spotlight-slides{height:auto}.spotlight-slide{grid-template-rows:auto auto}.spotlight-slide.is-active{position:relative}.spotlight-image-link{aspect-ratio:3/2}.spotlight-image-link img{object-fit:contain;object-position:center}.spotlight-caption{padding-left:0;min-height:96px}.spotlight-edge{display:none}.spotlight-control{grid-template-columns:32px minmax(0,1fr)}.slide-year{grid-column:2;text-align:left}.section-heading{gap:32px;margin-bottom:48px}.project-grid{column-gap:32px;row-gap:64px}.project-card h2,.project-card h3{font-size:20px;line-height:28px}.project-grid-curated .project-card:nth-child(4n+2),.project-grid-archive .project-card:nth-child(4n+2){margin-top:64px}.project-grid-curated .project-card:nth-child(4n+4),.project-grid-archive .project-card:nth-child(4n+4){margin-top:48px}.manifesto-bottom{padding-left:0}.single-case-body{gap:48px}.about-intro-main{gap:48px}.about-editorial{gap:32px}.about-editorial figure:nth-child(2){margin-top:64px}.team-list-core{grid-template-columns:1fr}.team-list-core .team-person .person-en{display:inline-block;margin:0 0 0 12px}.team-list-support{gap:24px 32px}.client-line>div{gap:24px;font-size:14px;line-height:20px}.footer-top{grid-template-columns:1.2fr 1fr 128px;gap:24px}.footer-top h2{font-size:36px;line-height:40px}.footer-qr{width:128px}.footer-links{font-size:14px;line-height:24px}}
@media(max-width:900px){.site-header{padding:12px 16px;gap:16px;min-height:64px}.site-nav{display:none}.site-nav+.header-actions{margin-left:auto}.menu-toggle{display:flex}.brand-logo{width:128px;height:40px}.archive-title-row{align-items:flex-start;flex-direction:column;gap:32px}.archive-title-row h1{font-size:60px}.archive-title-row>p{max-width:680px}.about-since{padding:0}.about-opening{margin-top:48px}.footer-signature{grid-template-columns:1fr auto}.footer-signature p{grid-column:1;grid-row:2}.footer-signature>span{grid-column:2;grid-row:2}.about-history-list article{grid-template-columns:144px minmax(0,1fr)}}
@media(max-width:640px){:root{--gutter:16px}html{scroll-padding-top:96px}body{font-size:16px;line-height:24px}.section-space{padding-block:64px}.section-label{gap:16px;flex-wrap:wrap;padding-bottom:16px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:30px;line-height:36px;letter-spacing:-.04em;max-width:100%}.section-heading .eyebrow{margin-bottom:16px}.section-heading>.text-link,.section-heading>.section-note{margin-top:24px}.text-link{font-size:14px;line-height:20px;white-space:normal}.section-note{font-size:14px;line-height:24px}.site-header{top:12px;padding:8px 12px;min-height:64px;border-radius:8px}.admin-bar .site-header{top:58px}.brand-logo{width:112px;height:40px}.header-actions{gap:4px}.language-toggle{min-width:44px}.site-menu{padding-top:16px;padding-bottom:32px}.menu-top{margin-bottom:32px}.site-menu>.eyebrow{font-size:12px;line-height:20px}.site-menu>nav>a{font-size:30px;line-height:36px;padding-block:16px;grid-template-columns:32px minmax(0,1fr) 32px;gap:12px}.menu-bottom{margin-top:32px;gap:16px;font-size:12px;line-height:20px}.spotlight{padding-top:112px;padding-bottom:32px}.admin-bar .spotlight{padding-top:160px}.spotlight-kicker{font-size:12px;line-height:16px;gap:16px;margin-bottom:24px}.spotlight-kicker>span:first-child{max-width:60%}.spotlight-kicker>span:last-child{text-align:right}.spotlight-heading{margin-bottom:24px}.spotlight-heading h1{font-size:48px;line-height:1.15;letter-spacing:-.05em}.spotlight-heading .eyebrow{font-size:12px;line-height:16px;margin-bottom:16px}.spotlight-image-link{aspect-ratio:2/3}.spotlight-image-link img{object-fit:cover;object-position:50% 0}.spotlight-slide[data-slide="1"] .spotlight-image-link img{object-position:72% 50%}.spotlight-caption{grid-template-columns:minmax(0,1fr) 32px;gap:8px 16px;padding:16px 0;min-height:112px;align-content:start}.spotlight-project{font-size:16px;line-height:24px;overflow-wrap:normal}.spotlight-location{font-size:12px;line-height:20px}.spotlight-arrow{font-size:24px;line-height:32px;align-self:start}.spotlight-controls{gap:16px;margin-top:8px}.spotlight-control{display:flex;flex-direction:column;gap:8px;padding-block:16px;min-width:0}.slide-number,.slide-name,.slide-year{font-size:12px;line-height:16px}.slide-name{overflow-wrap:anywhere}.slide-year{display:none}.scroll-cue{padding-top:16px;font-size:12px;line-height:20px}.project-grid{grid-template-columns:minmax(0,1fr);gap:48px}.project-grid .project-card:nth-child(n){grid-column:1;margin-top:0}.project-meta{font-size:12px;line-height:20px;gap:16px;margin-top:16px}.project-card h2,.project-card h3{font-size:20px;line-height:28px;margin-top:8px}.project-location{font-size:14px;line-height:24px;margin-top:4px}.project-open{width:40px;height:40px;right:12px;bottom:12px;font-size:20px}.archive-invitation{display:block;margin-top:48px;padding-top:24px}.archive-invitation p{font-size:14px;line-height:24px;margin-bottom:16px}.manifesto-statement{font-size:36px;line-height:1.2;margin-top:32px;letter-spacing:-.04em}.manifesto-bottom{display:block;margin-top:32px}.manifesto-bottom p{font-size:16px;line-height:28px}.manifesto-bottom .text-link{margin-top:24px}.service-row{grid-template-columns:24px minmax(0,1fr);gap:12px 16px;padding-block:24px}.service-row h3{font-size:24px;line-height:32px}.service-row>span{padding-top:4px}.service-row p{grid-column:2;font-size:16px;line-height:28px}.client-line{margin-top:48px}.client-line>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;font-size:14px;line-height:24px}.client-line .eyebrow{margin-bottom:24px}.archive-page{padding-top:128px;padding-bottom:64px}.admin-bar .archive-page{padding-top:176px}.archive-intro{padding-bottom:32px}.archive-intro>.eyebrow{margin-bottom:24px}.archive-title-row{gap:24px}.archive-title-row h1{font-size:48px;line-height:1.15}.archive-title-row>p{font-size:16px;line-height:28px}.archive-tools{padding-block:12px;gap:16px}.case-filters{gap:24px}.case-filters a{font-size:14px;line-height:20px;padding-block:12px}.project-search{justify-content:flex-start;gap:8px;flex-wrap:wrap}.search-field{width:auto;flex:1 1 160px;min-width:0;padding-inline:12px}.search-field input{font-size:16px}.year-field{flex:0 0 112px}.year-field select{font-size:14px;line-height:20px;padding:8px}.year-submit{font-size:12px;line-height:16px}.archive-rule{padding:24px 0 32px;font-size:12px;line-height:16px}.pagination{padding-top:48px}.pagination .nav-links{gap:8px}.pagination .page-numbers{font-size:14px;line-height:20px;padding:8px;min-width:40px;min-height:44px}.archive-empty{padding-block:48px}.archive-empty h2{font-size:30px;line-height:36px}.single-case{padding-top:112px;padding-bottom:64px}.admin-bar .single-case{padding-top:160px}.back-link{margin-bottom:32px;font-size:14px;line-height:20px}.single-case-header{padding-bottom:32px}.single-case-header .project-meta{margin-bottom:16px}.single-case-header h1{font-size:36px;line-height:40px;letter-spacing:-.04em}.single-location{font-size:14px;line-height:24px;margin-top:16px}.single-case-hero img{max-height:none;width:100%;height:auto}.single-case-body{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:32px;padding-bottom:0}.single-case-body aside{display:grid;grid-template-columns:1fr 1fr;gap:24px 16px;font-size:14px;line-height:24px}.single-case-body aside>div:last-child{grid-column:1/-1}.single-case-body aside .label{margin-bottom:4px}.entry-content{font-size:16px;line-height:28px}.entry-content p{margin-bottom:24px}.entry-content p:last-child{font-size:14px;line-height:24px}.case-lead{font-size:20px;line-height:28px}.case-gallery .section-label{margin-bottom:24px}.case-gallery-grid{grid-template-columns:minmax(0,1fr);gap:32px}.case-gallery-item img{max-height:none}.case-gallery-item figcaption{font-size:12px;line-height:16px;margin-top:12px}.image-expand{opacity:1;transform:none;right:12px;bottom:12px;width:40px;height:40px}.case-next-prev{grid-template-columns:1fr auto 1fr;gap:12px;font-size:12px;line-height:20px;padding-top:24px}.case-next-prev a{font-size:12px;line-height:20px}.about-hero{padding-top:128px;padding-bottom:32px}.admin-bar .about-hero{padding-top:176px}.about-opening{font-size:30px;line-height:36px;margin-top:32px}.about-editorial{grid-template-columns:minmax(0,1fr);gap:32px}.about-editorial figure:nth-child(2){margin-top:0;width:84%;margin-left:auto}.about-editorial figcaption{font-size:12px;line-height:20px;margin-top:12px;gap:12px}.about-intro-main{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:32px}.about-intro-main h2{font-size:36px;line-height:40px}.about-intro-main p{font-size:16px;line-height:28px}.about-team .section-heading{margin-top:32px}.about-team-group+.about-team-group{margin-top:40px}.team-list-core,.team-list-support{grid-template-columns:minmax(0,1fr);gap:16px}.team-group-title{font-size:14px;line-height:20px;margin-bottom:16px}.team-person{padding-block:12px;gap:16px}.team-person h4{font-size:18px;line-height:28px}.team-person .person-en,.team-list-core .team-person .person-en{display:inline-block;margin-left:12px;font-size:12px;line-height:20px}.team-person p{font-size:14px;line-height:24px}.team-person img{width:48px;height:48px;flex-basis:48px}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;padding-top:32px;font-size:14px;line-height:24px}.about-history-list article{grid-template-columns:96px minmax(0,1fr);gap:16px;padding-block:24px}.about-history-list strong{font-size:12px;line-height:24px;overflow-wrap:anywhere}.about-history-list p{font-size:14px;line-height:24px}.timeline-expand>summary{font-size:14px;line-height:20px;padding-block:24px}.site-footer{padding-top:40px;padding-bottom:24px;margin-top:32px}.footer-intro{align-items:flex-start;margin-bottom:32px;gap:16px}.footer-intro .eyebrow{font-size:12px;line-height:20px;max-width:240px}.back-top{width:40px;height:40px;flex-basis:40px;font-size:20px;line-height:28px}.footer-top{grid-template-columns:minmax(0,1fr) 112px;gap:32px 16px}.footer-top h2{grid-column:1/-1;font-size:36px;line-height:40px;letter-spacing:-.04em}.footer-links{font-size:14px;line-height:24px}.footer-qr{width:112px;grid-column:2}.contact-person{margin-bottom:24px}.contact-value{font-size:14px;line-height:24px}.footer-qr figcaption{font-size:12px;line-height:20px}.footer-signature{grid-template-columns:1fr auto;padding-top:48px;padding-bottom:24px;gap:16px}.footer-signature img{width:144px;height:64px}.footer-signature p,.footer-signature>span{font-size:12px;line-height:20px}.footer-signature p{max-width:176px}.footer-bottom{display:flex;align-items:flex-start;flex-direction:column;gap:12px;font-size:12px;line-height:20px;padding-top:24px}.image-viewer{padding:12px 16px}.image-viewer[open]{grid-template-rows:48px minmax(0,1fr) 80px;gap:12px}.viewer-controls{gap:12px}.viewer-caption{font-size:12px;line-height:16px}.viewer-close{font-size:36px;line-height:40px}.error-page{padding-top:160px;padding-bottom:64px}.error-page h1{font-size:48px;line-height:1.15}.error-page>p:not(.eyebrow){font-size:16px;line-height:28px}}
@media(max-width:359px){.spotlight-heading h1,.archive-title-row h1{font-size:36px;line-height:40px}.spotlight-kicker{font-size:12px;letter-spacing:0}.spotlight-controls{gap:12px}.slide-name{font-size:12px;line-height:16px}.manifesto-statement{font-size:30px;line-height:36px}.section-heading h2{font-size:24px;line-height:32px}.footer-top{grid-template-columns:minmax(0,1fr) 96px}.footer-qr{width:96px}.footer-top h2{font-size:30px;line-height:36px}.contact-value{font-size:12px;line-height:20px}.project-search{gap:8px}.year-submit{padding-inline:8px}.search-field{flex-basis:144px}.team-person .person-en{display:block;margin-left:0}.single-case-header h1{font-size:30px;line-height:36px}}
@media(prefers-reduced-motion:no-preference){html.has-motion [data-reveal]{opacity:0;transform:translateY(32px);transition:opacity .7s var(--curve),transform .7s var(--curve)}html.has-motion [data-reveal].is-in-view{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.manifesto-statement [data-word]{color:#fff}.project-link:hover .project-media img,.spotlight-image-link:hover img{transform:none}}
body.is-dialog-open{overflow:hidden}.project-search.has-js .year-submit{display:none}.image-viewer.is-loading:after{content:"";position:absolute;inset:80px 24px 96px;background:#181818;pointer-events:none}.image-viewer.is-loading .viewer-image{opacity:0}

/* Scene index — a photographic opening, with the work leading the identity. */
.scene-gallery{padding-top:112px;padding-bottom:32px}.admin-bar .scene-gallery{padding-top:160px}.scene-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:14px;line-height:20px;color:var(--muted);margin-bottom:32px}.scene-intro h1{font:inherit;color:var(--ink);letter-spacing:.02em}.scene-stage{display:grid;grid-template-columns:80px minmax(0,1fr) 80px;gap:24px;align-items:start}.scene-side{display:flex;flex-direction:column;gap:12px;font-size:12px;line-height:20px;color:var(--muted);padding-top:16px}.scene-side-right{text-align:right;justify-content:space-between;height:100%;padding-bottom:112px}.scene-side-right>a{color:#fff;white-space:nowrap}.scene-side-right>span{font-size:10px;line-height:20px;letter-spacing:.04em}.scene-deck{position:relative;width:min(100%,1040px,calc((100svh - 280px)*1.44));margin-inline:auto;isolation:isolate}.scene-sheet{position:absolute;aspect-ratio:1.44;left:50%;transform:translateX(-50%);background:#242424;border:1px solid #3b3b3b;z-index:-1;pointer-events:none}.scene-sheet-back{width:calc(100% - 72px);top:-24px;background:#181818}.scene-sheet-front{width:calc(100% - 32px);top:-12px}.scene-frames{display:grid;position:relative}.scene-slide{grid-area:1/1;display:grid;grid-template-rows:auto 1fr;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .65s var(--curve),transform .8s var(--curve),visibility .65s}.scene-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;transform:none}.scene-image{position:relative;display:block;aspect-ratio:1.44;overflow:hidden;background:#000}.scene-image picture,.scene-image img{display:block;width:100%;height:100%}.scene-image img{object-fit:contain;object-position:center;transition:transform 1s var(--curve)}.scene-image:hover img{transform:scale(1.012)}.scene-open{position:absolute;left:50%;top:50%;transform:translate(-50%,-30%);padding:16px 24px;background:rgba(0,0,0,.65);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(12px);font-size:14px;line-height:20px;opacity:0;transition:opacity .4s,transform .5s var(--curve);white-space:nowrap}.scene-image:hover .scene-open,.scene-image:focus-visible .scene-open{opacity:1;transform:translate(-50%,-50%)}.scene-caption{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;gap:8px 16px;align-items:start;padding-block:24px;min-height:112px}.scene-caption-number{grid-row:1/3;font-size:12px;line-height:24px;color:var(--muted);padding-top:4px}.scene-caption h2{font-size:30px;line-height:36px;letter-spacing:-.04em;overflow-wrap:anywhere;text-wrap:pretty}.scene-caption-detail{font-size:12px;line-height:20px;color:var(--muted);text-align:left;overflow-wrap:anywhere;grid-column:2}.scene-caption-detail br{display:none}.scene-caption-detail br:after{content:" / "}.scene-caption-arrow{grid-column:3;grid-row:1/3;font-size:30px;line-height:36px;text-align:right}.scene-bottom{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:24px;align-items:center;margin-top:16px;font-size:12px;line-height:20px}.scene-current{color:var(--muted)}.scene-selectors{display:flex;justify-content:center;gap:32px;min-width:0}.scene-selector{display:flex;align-items:baseline;gap:8px;color:var(--muted);background:none;padding:12px 0;border-bottom:1px solid transparent;min-height:44px;font-size:12px;line-height:20px;min-width:0}.scene-selector>span:last-child{overflow-wrap:anywhere}.scene-selector.is-active{border-bottom-color:#fff;color:#fff}.scene-selector[aria-busy=true]{opacity:.5}.scene-all{padding-block:12px;white-space:nowrap;font-size:14px;line-height:20px}.scene-ruler{height:12px;margin-top:24px;background:repeating-linear-gradient(to right,#454545 0,#454545 1px,transparent 1px,transparent 8px);position:relative}.scene-ruler span{position:absolute;top:0;bottom:0;left:0;width:calc(100% / var(--scene-count,4));background:repeating-linear-gradient(to right,#eee 0,#eee 1px,transparent 1px,transparent 8px);transition:transform .8s var(--curve)}
.work-index{padding-top:128px}.work-index-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:96px}.work-index-heading h2{font-size:48px;line-height:1.2;letter-spacing:-.04em;white-space:pre-line;max-width:960px}.work-index-entry{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px;align-items:end;margin-bottom:112px}.work-index-image{grid-column:5/13;grid-row:1;display:block;position:relative;overflow:hidden;min-width:0}.work-index-image img{width:100%;height:auto;transition:transform .9s var(--curve),opacity .5s}.work-index-image:hover img{transform:scale(1.015);opacity:.9}.work-index-info{grid-column:1/5;grid-row:1;min-width:0;padding-bottom:24px}.work-index-entry:nth-child(even) .work-index-image{grid-column:1/9}.work-index-entry:nth-child(even) .work-index-info{grid-column:9/13}.work-index-meta{display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:14px;line-height:20px;margin-bottom:32px;padding-top:16px;border-top:1px solid var(--line)}.work-index-info h3{font-size:30px;line-height:1.3;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:pretty}.work-index-location{font-size:14px;line-height:24px;color:var(--muted);margin-top:24px}.work-index-type{font-size:12px;line-height:20px;color:var(--muted);margin-top:4px}.work-index-cta{display:inline-block;padding-block:12px;margin-top:24px;font-size:14px;line-height:20px;border-bottom:1px solid var(--line)}.archive-door{display:flex;justify-content:space-between;gap:24px;align-items:center;border-block:1px solid var(--line);padding-block:32px;font-size:30px;line-height:40px;letter-spacing:-.035em}.archive-door>span:last-child{white-space:nowrap}.archive-door:hover{color:var(--muted)}.studio-note{padding-top:64px}.studio-note-grid{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center;padding-block:64px 80px}.studio-note-mark{font-size:clamp(144px,25vw,360px);line-height:.9;letter-spacing:-.1em;color:transparent;-webkit-text-stroke:1px #454545;user-select:none}.studio-note-copy{min-width:0}.studio-note-copy h2{font-size:48px;line-height:1.2;letter-spacing:-.04em;white-space:pre-line}.studio-note-copy p{max-width:640px;color:var(--muted);font-size:18px;line-height:32px;margin-top:32px}.studio-note-copy .text-link{margin-top:24px}.studio-note-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;border-top:1px solid var(--line);padding-top:24px;font-size:14px;line-height:24px;color:var(--muted)}
@media(min-width:1600px){.scene-gallery{padding-top:144px}.scene-stage{grid-template-columns:120px minmax(0,1fr) 120px;gap:32px}.scene-caption h2{font-size:36px;line-height:44px}}
@media(max-width:1100px){.scene-stage{grid-template-columns:40px minmax(0,1fr) 40px;gap:24px}.scene-side-left>span:first-child,.scene-side-right>span{display:none}.scene-side-right>a{writing-mode:vertical-rl}.scene-caption{grid-template-columns:32px minmax(0,1fr) 32px;gap:12px}.scene-caption h2{font-size:24px;line-height:32px}.scene-caption-detail{grid-column:2;text-align:left}.scene-caption-arrow{grid-column:3;grid-row:1/3}.scene-caption-number{grid-row:1/3}.scene-bottom{grid-template-columns:64px minmax(0,1fr) auto;gap:16px}.scene-selector>span:last-child{display:none}.scene-selectors{gap:24px}.work-index-entry{gap:32px}.work-index-info h3{font-size:24px;line-height:32px}.work-index-heading h2,.studio-note-copy h2{font-size:36px;line-height:44px}.studio-note-grid{gap:48px}}
@media(max-width:760px){.scene-deck{width:100%}.scene-gallery{padding-top:112px}.admin-bar .scene-gallery{padding-top:160px}.scene-intro{font-size:12px;line-height:20px;margin-bottom:40px}.scene-stage{grid-template-columns:minmax(0,1fr)}.scene-side{display:none}.scene-caption{padding-top:20px;padding-bottom:16px;min-height:112px}.scene-caption h2{font-size:24px;line-height:32px}.scene-bottom{grid-template-columns:1fr auto;gap:16px;margin-top:8px}.scene-current{display:none}.scene-selectors{justify-content:flex-start;gap:24px}.scene-selector{font-size:14px;line-height:20px}.scene-ruler{margin-top:16px}.work-index{padding-top:80px}.work-index-heading{display:block;margin-bottom:48px}.work-index-heading h2{font-size:36px;line-height:44px}.work-index-heading .text-link{margin-top:24px}.work-index-entry{display:flex;flex-direction:column;align-items:stretch;gap:24px;margin-bottom:64px}.work-index-entry:nth-child(n) .work-index-image,.work-index-entry:nth-child(n) .work-index-info{width:100%;grid-column:auto;grid-row:auto}.work-index-info{padding-bottom:0}.work-index-meta{margin-bottom:16px;padding-top:0;border-top:0}.work-index-info h3{font-size:24px;line-height:32px}.work-index-location{margin-top:12px}.work-index-type{font-size:14px;line-height:24px}.work-index-cta{margin-top:12px}.archive-door{padding-block:24px;font-size:24px;line-height:32px}.studio-note{padding-top:32px}.studio-note-grid{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:40px}.studio-note-mark{font-size:144px;line-height:128px;letter-spacing:-.08em}.studio-note-copy h2{font-size:36px;line-height:44px}.studio-note-copy p{font-size:16px;line-height:28px;margin-top:24px}.studio-note-services{grid-template-columns:1fr 1fr;gap:24px 16px}}
@media(max-width:640px){.scene-image{aspect-ratio:2/3}.scene-image img{object-fit:contain;object-position:center top}.scene-sheet{aspect-ratio:2/3}.scene-sheet-back{width:calc(100% - 48px);top:-16px}.scene-sheet-front{width:calc(100% - 24px);top:-8px}.scene-slide[data-project-id="51"] .scene-image img{object-fit:cover;object-position:10% center}.scene-frames{align-items:start}.scene-slide{grid-area:1/1}.scene-caption h2{font-size:20px;line-height:28px}.scene-intro{gap:16px}.scene-intro>span{text-align:right}.scene-all{font-size:12px;line-height:20px}.work-index-heading h2,.studio-note-copy h2{font-size:30px;line-height:36px}.work-index-info h3{font-size:24px;line-height:32px}.archive-door{font-size:20px;line-height:28px}.studio-note-mark{font-size:128px;line-height:112px}.scene-open{display:none}}
@media(max-width:359px){.scene-intro{font-size:12px;line-height:20px}.scene-intro h1{max-width:168px}.scene-selectors{gap:16px}.scene-caption{grid-template-columns:24px minmax(0,1fr) 24px;gap:8px}.scene-caption h2{font-size:20px;line-height:28px}.scene-caption-arrow{font-size:24px;line-height:28px}.work-index-heading h2,.studio-note-copy h2{font-size:24px;line-height:32px}.work-index-info h3{font-size:20px;line-height:28px}.archive-door{font-size:18px;line-height:28px}}

.site-header{padding:0;min-height:64px;background:linear-gradient(#000 20%,rgba(0,0,0,.85));border:0;border-radius:0;backdrop-filter:blur(12px)}.brand-logo{width:160px;height:56px}.site-nav a{font-size:16px;line-height:24px}.header-actions{gap:12px}.menu-toggle{display:flex}.site-header .header-studio{margin-left:8px}.archive-title-row h1{font-size:clamp(60px,7.5vw,112px)}.about-hero .archive-title-row{align-items:center}.footer-signature img{width:clamp(200px,32vw,480px);height:auto;max-height:180px}.footer-signature{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:900px){.site-header{padding:0}.site-header .header-studio{display:none}.brand-logo{width:144px;height:48px}}
@media(max-width:640px){.site-header{padding:0;min-height:56px;border-radius:0}.brand-logo{width:128px;height:48px}.header-actions{gap:4px}.archive-title-row h1{font-size:48px;line-height:1.15}.footer-signature{grid-template-columns:1fr}.footer-signature img{width:240px;max-height:96px}.footer-signature p{max-width:none}.footer-signature>span{justify-self:start}}
@media(max-width:359px){.archive-title-row h1{font-size:36px;line-height:40px}}
/* Project stories move to a quiet light canvas, while retaining complete photographs. */
body.single-case{background:#f5f5f5;color:#181818;--paper:#f5f5f5;--ink:#181818;--muted:#666;--line:rgba(0,0,0,.18);padding:0}body.single-case .site-header{background:linear-gradient(#f5f5f5 20%,rgba(245,245,245,.9))}body.single-case .site-header .brand-logo{filter:none}body.single-case .site-nav a:hover,body.single-case .site-nav a[aria-current]{color:#000}body.single-case .site-header .menu-toggle span{background:#181818}body.single-case .language-toggle:hover{background:#181818;color:#fff}body.single-case .site-footer{--ink:#fff;--muted:#aaa;--line:rgba(255,255,255,.22);background:#181818;color:#fff}body.single-case .case-story :focus-visible,body.single-case .site-header :focus-visible{outline-color:#181818}body.single-case .site-menu,body.single-case .image-viewer{--ink:#fff;--muted:#aaa;--line:rgba(255,255,255,.22)}.case-story{padding-top:128px;padding-bottom:80px}.admin-bar .case-story{padding-top:160px}.case-story-top{display:grid;grid-template-columns:1fr 1fr auto;gap:32px;align-items:center;font-size:12px;line-height:20px;color:var(--muted);padding-bottom:24px}.case-story-top>span:nth-child(2){text-align:center}.case-story-top>a{padding-block:8px}.case-cover{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:48px;align-items:stretch}.case-cover-photo{min-width:0;align-self:start}.case-cover-photo>a{display:block;position:relative}.case-cover-photo img{width:100%;height:auto}.case-cover-info{display:flex;flex-direction:column;gap:24px;min-width:0;padding-top:8px}.case-cover-info .project-meta{margin:0;font-size:12px;line-height:20px}.case-cover-info h1{font-size:36px;line-height:1.25;letter-spacing:-.04em;overflow-wrap:anywhere;text-wrap:pretty}.case-cover-location{font-size:14px;line-height:24px;color:var(--muted)}.case-cover-preview{max-width:60%;align-self:flex-end;margin-top:auto;padding-top:24px;display:block}.case-cover-preview img{width:100%;height:auto;max-height:240px;object-fit:contain;object-position:right bottom}.case-cover-preview>span{display:block;font-size:12px;line-height:20px;color:var(--muted);margin-top:12px}.case-cover-brand{font-size:12px;line-height:20px;color:var(--muted);margin-top:auto;padding-top:24px}.case-story .single-case-body{padding-top:96px;gap:64px}.case-story .entry-content p:last-child{font-size:inherit;line-height:inherit;color:inherit}.case-gallery-editorial .case-gallery-item:nth-child(5n+1){grid-column:1/-1;width:84%;margin-inline:auto}.case-gallery-editorial .case-gallery-item:nth-child(5n+3){margin-top:96px}.case-story .case-next-prev{margin-top:48px}.case-story .case-next-prev a:hover{color:#000}.case-story .case-gallery-item img{background:#f5f5f5}.case-story .case-gallery-item:only-child{width:100%}#project-gallery{scroll-margin-top:112px}
@media(max-width:1100px){.case-cover{gap:32px}.case-cover-info h1{font-size:30px;line-height:36px}.case-cover-info{gap:16px}.case-cover-preview{max-width:64%}.case-story .single-case-body{gap:48px}}
@media(max-width:760px){.case-cover{grid-template-columns:minmax(0,1fr);gap:24px}.case-cover-info{padding-top:0}.case-cover-info h1{font-size:36px;line-height:44px}.case-cover-preview{display:none}.case-cover-brand{margin-top:0;padding-top:0}.case-story .single-case-body{padding-top:48px;gap:32px}.case-story-top{grid-template-columns:1fr auto;gap:16px}.case-story-top>span:nth-child(2){display:none}}
@media(max-width:640px){.case-story{padding-top:112px;padding-bottom:48px}.admin-bar .case-story{padding-top:160px}.case-story-top{padding-bottom:16px;font-size:12px;line-height:20px}.case-cover-info h1{font-size:30px;line-height:36px}.case-cover-info .project-meta{font-size:14px;line-height:20px}.case-cover-location{font-size:14px;line-height:24px}.case-gallery-editorial .case-gallery-item:nth-child(n){width:100%;margin:0;grid-column:1}.case-story .single-case-body aside{display:block}.case-story .single-case-body aside .eyebrow{margin-bottom:24px}.case-story .case-next-prev{margin-top:32px}}
@media(max-width:359px){.case-cover-info h1{font-size:24px;line-height:32px}}
/* WordPress already reserves the toolbar height in the document margin. */
.admin-bar .scene-gallery{padding-top:112px}.admin-bar .case-story{padding-top:128px}.admin-bar .archive-page,.admin-bar .about-hero{padding-top:160px}
@media(min-width:1600px){.admin-bar .scene-gallery{padding-top:144px}}
@media(max-width:640px){.admin-bar .scene-gallery,.admin-bar .case-story{padding-top:112px}.admin-bar .archive-page,.admin-bar .about-hero{padding-top:128px}}
.scene-side-left>span:last-child{white-space:nowrap}
@media(max-width:359px){.contact-value{font-size:14px;line-height:24px}}
.case-cover-info h1{text-wrap:balance}
/* Continuous project archives and compact galleries. All images retain their aspect ratio. */
.project-grid-archive[data-masonry],.case-gallery-grid[data-masonry]{--masonry-columns:3;--masonry-gap:16px;display:block;columns:var(--masonry-columns);column-gap:var(--masonry-gap);position:relative}
.project-grid-archive[data-masonry]>.project-card:nth-child(n),.case-gallery-editorial .case-gallery-grid[data-masonry]>.case-gallery-item:nth-child(n){display:inline-block;vertical-align:top;break-inside:avoid;grid-column:auto;width:100%;margin:0 0 var(--masonry-gap);padding:0;min-width:0}
.project-grid-archive[data-masonry].is-masonry-ready,.case-gallery-grid[data-masonry].is-masonry-ready{columns:auto}
.project-grid-archive[data-masonry].is-masonry-ready>.project-card:nth-child(n),.case-gallery-grid[data-masonry].is-masonry-ready>.case-gallery-item:nth-child(n){position:absolute;margin:0}
.project-grid-archive[data-masonry] .project-media{background:#181818}
.project-grid-archive[data-masonry] .project-media img,.case-gallery-grid[data-masonry] .case-gallery-item img{width:100%;height:auto;max-height:none;object-fit:contain}
.project-grid-archive[data-masonry] .project-meta{margin-top:12px;gap:8px;font-size:12px;line-height:20px}
.project-grid-archive[data-masonry] .project-card h2{margin-top:4px;font-size:20px;line-height:28px;text-wrap:balance}
.project-grid-archive[data-masonry] .project-location{font-size:12px;line-height:20px;margin-top:4px}
.project-grid-archive[data-masonry] .project-link{padding-bottom:16px}
.case-gallery-editorial{padding-block:48px}
.case-gallery-editorial .section-label{margin-bottom:24px}
.case-gallery-grid[data-masonry] .case-gallery-item figcaption{margin-top:8px;font-size:12px;line-height:16px}
.case-story .single-case-body{padding-top:48px}
.archive-rule{padding-bottom:24px}
.archive-empty{column-span:all}
.scene-selectors{flex-wrap:wrap;row-gap:0}
.scene-autoplay{background:none;color:var(--muted);padding:12px 0;min-height:44px;font-size:12px;line-height:20px;white-space:nowrap}
.scene-autoplay:hover{color:#fff}
.scene-autoplay .autoplay-play{display:none}
.is-autoplay-paused .scene-autoplay .autoplay-pause{display:none}
.is-autoplay-paused .scene-autoplay .autoplay-play{display:inline}
.scene-frames{overflow:hidden}
.scene-slide{transform:translateX(24px)}
.scene-slide.is-previous{transform:translateX(-24px)}
.scene-slide.is-active{transform:none}
@media(max-width:1100px){.project-grid-archive[data-masonry],.case-gallery-grid[data-masonry]{--masonry-columns:2}}
@media(max-width:640px){.project-grid-archive[data-masonry],.case-gallery-grid[data-masonry]{--masonry-gap:8px}.project-grid-archive[data-masonry] .project-meta{font-size:12px;line-height:16px;margin-top:8px;flex-wrap:wrap;gap:4px 8px}.project-grid-archive[data-masonry] .project-card h2{font-size:16px;line-height:24px;margin-top:4px;letter-spacing:-.02em}.project-grid-archive[data-masonry] .project-location{font-size:12px;line-height:20px}.project-grid-archive[data-masonry] .project-link{padding-bottom:12px}.project-grid-archive[data-masonry] .project-open{width:32px;height:32px;min-width:0;right:8px;bottom:8px;font-size:16px;line-height:24px}.case-gallery-editorial{padding-block:32px}.case-story .single-case-body{padding-top:32px}.case-gallery-grid[data-masonry] .image-expand{width:32px;height:32px;right:8px;bottom:8px;font-size:16px;line-height:24px}.case-gallery-grid[data-masonry] .case-gallery-item figcaption{gap:4px;margin-top:4px}.scene-autoplay{font-size:12px;line-height:20px}}
@media(prefers-reduced-motion:reduce){.scene-slide,.scene-slide.is-previous{transform:none}}

.case-gallery-grid[data-masonry]{column-fill:balance}.case-gallery-editorial .case-gallery-grid[data-masonry]>.case-gallery-item:nth-child(n){display:block}.case-gallery-grid[data-masonry] .case-gallery-item figcaption{display:none}

.case-gallery-grid[data-gallery-count="1"]{--masonry-columns:1}.case-gallery-grid[data-gallery-count="2"]{--masonry-columns:2}

/* Four scene controls remain on one row on narrow phones. */
@media(max-width:640px){.scene-bottom{grid-template-columns:minmax(0,1fr);gap:8px}.scene-selectors{width:100%;justify-content:space-between;gap:8px;flex-wrap:nowrap}.scene-selector,.scene-autoplay{flex:0 0 auto}.scene-all{justify-self:end}}

.collaborator-group{padding-top:32px}.collaborator-group+.collaborator-group{margin-top:32px}.collaborator-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:14px;line-height:20px;color:var(--muted)}.collaborator-heading h3{font-size:18px;line-height:28px;color:var(--ink)}.collaborator-group .client-grid{padding-top:24px;gap:24px 32px;font-size:16px;line-height:24px}.collaborator-group .client-grid>span{min-width:0;overflow-wrap:anywhere}.collaborator-note{font-size:14px;line-height:24px;color:var(--muted);margin-top:40px;max-width:960px}@media(max-width:640px){.collaborator-group{padding-top:24px}.collaborator-group+.collaborator-group{margin-top:24px}.collaborator-heading h3{font-size:16px;line-height:24px}.collaborator-group .client-grid{gap:16px;font-size:14px;line-height:24px}.collaborator-note{margin-top:32px;font-size:14px;line-height:24px}}

/* Allintalk: a conversation card between the project archive and studio. */
.allintalk-banner{display:grid;grid-template-columns:minmax(0,1fr) minmax(224px,320px);gap:32px;align-items:center;position:relative;overflow:hidden;margin-top:32px;padding:32px;background:#181818;scroll-margin-top:128px}.allintalk-banner-copy{min-width:0}.allintalk-banner-label{font-size:12px;line-height:20px;color:var(--muted);letter-spacing:.04em}.allintalk-banner h2{display:flex;align-items:flex-start;gap:24px;font-size:60px;line-height:1;letter-spacing:-.06em;font-weight:400;margin-top:16px}.allintalk-banner-mark{font-size:72px;line-height:1;color:#9b9b9b;transform:translateY(-8px);user-select:none}.allintalk-banner-copy>p{font-size:18px;line-height:28px;color:var(--muted);margin-top:12px;text-wrap:pretty}.allintalk-banner-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:24px}.allintalk-banner-cta{display:inline-flex;align-items:center;gap:12px;font-size:16px;line-height:24px;white-space:nowrap}.allintalk-banner-cta>span[aria-hidden="true"]{font-size:24px;line-height:32px;transition:transform .5s cubic-bezier(.22,1,.36,1)}.allintalk-banner-count{font-size:12px;line-height:20px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.allintalk-banner-visual{position:relative;width:100%;height:160px;pointer-events:none}.allintalk-banner-card{position:absolute;display:block;width:208px;aspect-ratio:16/9;padding:4px;background:#000;border:1px solid #313131;box-shadow:0 16px 32px rgba(0,0,0,.5);transition:transform .5s cubic-bezier(.22,1,.36,1)}.allintalk-banner-card:first-child{top:0;left:0;transform:rotate(-8deg)}.allintalk-banner-card:last-child{right:0;bottom:0;transform:rotate(6deg)}.allintalk-banner-card img{display:block;width:100%;height:100%;object-fit:contain}.allintalk-banner:hover .allintalk-banner-cta>span[aria-hidden="true"],.allintalk-banner:focus-visible .allintalk-banner-cta>span[aria-hidden="true"]{transform:translate(4px,-4px)}.allintalk-banner:hover .allintalk-banner-card:first-child{transform:rotate(-4deg) translateY(-4px)}.allintalk-banner:hover .allintalk-banner-card:last-child{transform:rotate(3deg) translateY(4px)}.allintalk-banner:focus-visible{outline:2px solid #fff;outline-offset:4px}.allintalk-banner:active .allintalk-banner-copy{opacity:.8}@media(max-width:1100px){.allintalk-banner h2{font-size:48px;line-height:1}.allintalk-banner-mark{font-size:60px;line-height:1}.allintalk-banner-card{width:192px}}@media(max-width:760px){.allintalk-banner{grid-template-columns:minmax(0,1fr);gap:24px;padding:24px}.allintalk-banner-visual{width:min(100%,320px);justify-self:end;height:144px}.allintalk-banner-card{width:min(72%,192px)}}@media(max-width:640px){.allintalk-banner{margin-top:24px}.allintalk-banner h2{font-size:36px;line-height:40px;gap:16px;margin-top:12px}.allintalk-banner-mark{font-size:48px;line-height:1}.allintalk-banner-copy>p{font-size:16px;line-height:24px}.allintalk-banner-bottom{gap:16px;margin-top:16px}.allintalk-banner-visual{height:128px}}@media(prefers-reduced-motion:reduce){.allintalk-banner-card,.allintalk-banner-cta>span[aria-hidden="true"]{transform:none!important;transition:none}}

/* Each support portrait is framed individually; the outer circle stays small. */
.team-list-support .team-portrait{display:block;position:relative;width:48px;height:48px;flex:0 0 48px;border-radius:50%;overflow:hidden}
.team-list-support .team-portrait img{display:block;width:100%;height:100%;border-radius:0;object-fit:cover;object-position:50% 10%}
.team-portrait[data-portrait="刘晓"] img{transform:scale(1.5);transform-origin:60% 28%}
.team-portrait[data-portrait="高嘉"] img{transform:scale(2.72);transform-origin:53% 18%}
.team-portrait[data-portrait="张斯婷"] img{transform:scale(1.6);transform-origin:55% 21%}
.team-portrait[data-portrait="刘根"] img{transform:scale(1.25);transform-origin:50% 50%}
.team-portrait[data-portrait="万亿"] img{transform:scale(2.08);transform-origin:55% 22%}
.team-portrait[data-portrait="董文广"] img{transform:scale(1.56);transform-origin:50% 31%}
.team-portrait[data-portrait="王晓童"] img{transform:scale(2.5);transform-origin:56% 19%}
.team-portrait[data-portrait="夏磊"] img{transform:scale(1.4);transform-origin:50% 25%}
.team-portrait[data-portrait="段贝莱"] img{transform:scale(1);transform-origin:50% 20%}

/* Author profile and publication: native WordPress page content. */
.team-profile-link{display:flex;align-items:center;gap:24px;min-width:0;width:100%}.team-profile-link h4:after{content:" ↗";font-size:14px;color:var(--muted)}.team-profile-link:hover{opacity:.75}
.about-publication-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,320px);gap:80px;align-items:center;padding-block:48px}.about-publication-link h2{font-size:60px;line-height:1.2;letter-spacing:-.04em;margin-bottom:24px}.about-publication-description{max-width:600px;font-size:18px;line-height:30px;color:var(--muted);margin-bottom:24px}.about-publication-link figure{max-width:240px;justify-self:center}.about-publication-link img{width:100%;height:auto}.about-publication-link .eyebrow{font-size:14px;line-height:20px}.about-publication-link:hover .text-link:after{transform:scaleX(1)}
.author-page #book,.author-page #purchase{scroll-margin-top:112px}.author-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);align-items:center;gap:80px;padding-top:176px;padding-bottom:80px}.author-hero h1{font-size:60px;line-height:1.1;letter-spacing:-.04em;margin-bottom:32px}.author-role{font-size:18px;line-height:30px;color:var(--muted)}.author-lead{font-size:30px;line-height:40px;margin-top:48px;margin-bottom:24px}.author-portrait{max-width:360px;width:100%;justify-self:end}.author-portrait img{width:100%;height:auto}.author-portrait figcaption{font-size:12px;line-height:20px;color:var(--muted);margin-top:16px;letter-spacing:.06em}.author-editorial-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;margin-top:48px}.author-editorial-grid h2{font-size:36px;line-height:48px;letter-spacing:-.03em}.author-prose{font-size:18px;line-height:32px;max-width:760px;color:var(--muted)}.author-prose p+p{margin-top:24px}.author-prose>.text-link{margin-top:24px;color:var(--ink)}.author-page .section-label{font-size:14px;line-height:20px}
.publication-hero{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:center;padding-block:64px}.publication-cover{width:100%;max-width:360px;justify-self:center}.publication-cover img{width:100%;height:auto}.publication-intro h2{font-size:48px;line-height:1.15;letter-spacing:-.04em;margin-bottom:24px}.publication-subtitle{font-size:20px;line-height:32px;margin-bottom:32px}.publication-intro .text-link{margin-top:24px}.publication-reading{padding-block:32px;margin-top:0}.publication-reading h3{font-size:24px;line-height:36px}.publication-spreads{display:grid;gap:48px;margin-top:48px}.publication-spread a{display:block;cursor:zoom-in}.publication-spread img{width:100%;height:auto}.publication-spread figcaption{font-size:14px;line-height:24px;color:var(--muted);margin-top:16px}.publication-colophon{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:center;margin-top:64px}.publication-colophon figure{max-width:280px;justify-self:center}.publication-colophon img{max-height:400px;width:auto;max-width:100%}.publication-colophon dl{margin:0}.publication-colophon dl>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;border-top:1px solid var(--line);padding-block:16px;font-size:16px;line-height:28px}.publication-colophon dt{color:var(--muted)}.publication-colophon dd{margin:0;overflow-wrap:anywhere}
.purchase-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr) 176px;gap:48px;align-items:center;padding-top:48px}.purchase-grid h2{font-size:36px;line-height:48px;letter-spacing:-.03em;margin-bottom:24px}.purchase-grid>div>p:not(.eyebrow){font-size:16px;line-height:28px;color:var(--muted)}.publication-buy{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:#fff;color:#000;padding:16px 24px;font-size:16px;line-height:24px;margin-top:32px}.publication-buy:hover{background:#ddd}.purchase-contact a{display:block;font-size:16px;line-height:28px;overflow-wrap:anywhere}.purchase-contact .purchase-phone{font-size:24px;line-height:36px;margin-bottom:12px}.purchase-contact>p:last-child{margin-top:24px}.purchase-qr img{width:176px;height:auto;background:#fff}.purchase-qr figcaption{font-size:12px;line-height:20px;color:var(--muted);margin-top:12px}
@media(max-width:1000px){.author-hero,.author-editorial-grid,.publication-hero,.publication-colophon{gap:48px}.purchase-grid{grid-template-columns:minmax(0,1fr) 176px;gap:40px}.purchase-grid>div:first-child{grid-column:1/-1}.about-publication-link{gap:48px}.about-publication-link h2{font-size:48px}}
@media(max-width:600px){.team-profile-link{gap:16px}.about-publication-link{grid-template-columns:minmax(0,1fr) 96px;gap:24px;padding-block:32px;align-items:start}.about-publication-link h2{font-size:30px;line-height:40px;margin-bottom:16px;overflow-wrap:anywhere}.about-publication-link .eyebrow{font-size:12px;line-height:20px;margin-bottom:16px}.about-publication-description{font-size:14px;line-height:24px;margin-bottom:16px}.about-publication-link figure{margin-top:32px}.about-publication-link .text-link{font-size:12px;line-height:20px;white-space:normal}.author-hero{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:144px;padding-bottom:48px}.author-hero h1{font-size:48px;line-height:1.15}.author-role{font-size:16px;line-height:28px}.author-lead{font-size:24px;line-height:36px;margin-top:32px}.author-portrait{width:72%;max-width:320px}.author-editorial-grid{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:32px}.author-editorial-grid h2{font-size:30px;line-height:40px}.author-prose{font-size:16px;line-height:28px}.author-page .section-label{font-size:12px;line-height:20px;gap:16px}.publication-hero{grid-template-columns:minmax(0,1fr);gap:40px;padding-block:40px}.publication-cover{width:72%;max-width:280px}.publication-intro h2{font-size:36px;line-height:40px}.publication-subtitle{font-size:18px;line-height:28px;margin-bottom:24px}.publication-intro .eyebrow{font-size:12px;line-height:20px}.publication-reading{padding-block:24px;margin-top:0}.publication-spreads{gap:32px;margin-top:24px}.publication-spread figcaption{font-size:12px;line-height:20px}.publication-colophon{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:40px}.publication-colophon figure{max-width:176px}.publication-colophon dl>div{grid-template-columns:80px minmax(0,1fr);gap:16px;font-size:14px;line-height:24px}.purchase-grid{grid-template-columns:minmax(0,1fr) 112px;gap:32px 16px;padding-top:32px}.purchase-grid h2{font-size:30px;line-height:40px}.purchase-contact .purchase-phone{font-size:18px;line-height:28px}.purchase-contact a{font-size:14px;line-height:24px}.purchase-contact .eyebrow{font-size:12px;line-height:20px}.purchase-contact>p:last-child{font-size:12px!important;line-height:20px!important}.purchase-qr img{width:112px}.purchase-qr figcaption{font-size:12px;line-height:20px}.author-page .section-space{padding-block:48px}}

.footer-qr figcaption,.purchase-qr figcaption{text-align:center;width:100%}

/* Edge-attached navigation: no floating margin, transparent gap or rounded frame. */
.site-header{top:0;left:0;right:0;transform:none;width:100%;padding:8px max(var(--gutter),calc((100% - var(--max))/2));min-height:72px;background:#000;border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none}.admin-bar .site-header{top:var(--c98-admin-offset,32px)}body.single-case .site-header{background:#f5f5f5}
@media(max-width:782px){.admin-bar .site-header{top:var(--c98-admin-offset,46px)}}
@media(max-width:640px){.site-header{min-height:64px;padding-block:8px}}

/* Visible, crawlable answers follow the existing editorial rows. */
.about-faq .service-row{grid-template-columns:48px minmax(0,1fr) minmax(0,1.4fr);gap:32px;align-items:start}
.about-faq .service-row h3{font-size:24px;line-height:32px;text-wrap:balance}
.about-faq .service-row p{grid-column:auto;font-size:16px;line-height:24px;text-wrap:pretty;overflow-wrap:anywhere}
.case-record-note{font-size:14px;line-height:20px;color:var(--muted);margin-bottom:24px;text-wrap:pretty}
@media(max-width:600px){.about-faq .service-row{grid-template-columns:32px minmax(0,1fr);gap:16px}.about-faq .service-row h3{font-size:20px;line-height:28px}.about-faq .service-row p{grid-column:2}.about-faq .section-heading h2{font-size:30px;line-height:36px}}

/* Verified official collaborator links: preserve the current directory layout. */
.client-grid .collaborator-link{display:inline-block;max-width:100%;min-height:24px;vertical-align:top;color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:var(--muted)}.client-grid .collaborator-link:hover,.client-grid .collaborator-link:focus-visible{color:var(--ink);text-decoration-color:currentColor}.client-grid .collaborator-link:active{opacity:.7}

/* Toolbox icon: Phosphor Icons, MIT License.
Copyright (c) 2023 Phosphor Icons
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
.menu-utility{display:flex;justify-content:flex-start;margin-top:24px}
.menu-toolbox-link{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:4px;font-size:14px;line-height:20px;color:var(--muted)}
.menu-toolbox-link:hover,.menu-toolbox-link:focus-visible{color:var(--ink);background:var(--surface)}
.toolbox-link-icon,.c98-team-entry a>span:first-child::before{display:inline-block;width:16px;height:16px;flex:0 0 16px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22currentColor%22%3E%3Cpath%20d%3D%22M224%2C64H176V56a24%2C24%2C0%2C0%2C0-24-24H104A24%2C24%2C0%2C0%2C0%2C80%2C56v8H32A16%2C16%2C0%2C0%2C0%2C16%2C80V192a16%2C16%2C0%2C0%2C0%2C16%2C16H224a16%2C16%2C0%2C0%2C0%2C16-16V80A16%2C16%2C0%2C0%2C0%2C224%2C64ZM96%2C56a8%2C8%2C0%2C0%2C1%2C8-8h48a8%2C8%2C0%2C0%2C1%2C8%2C8v8H96ZM224%2C80v32H192v-8a8%2C8%2C0%2C0%2C0-16%2C0v8H80v-8a8%2C8%2C0%2C0%2C0-16%2C0v8H32V80Zm0%2C112H32V128H64v8a8%2C8%2C0%2C0%2C0%2C16%2C0v-8h96v8a8%2C8%2C0%2C0%2C0%2C16%2C0v-8h32v64Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20256%20256%22%20fill%3D%22currentColor%22%3E%3Cpath%20d%3D%22M224%2C64H176V56a24%2C24%2C0%2C0%2C0-24-24H104A24%2C24%2C0%2C0%2C0%2C80%2C56v8H32A16%2C16%2C0%2C0%2C0%2C16%2C80V192a16%2C16%2C0%2C0%2C0%2C16%2C16H224a16%2C16%2C0%2C0%2C0%2C16-16V80A16%2C16%2C0%2C0%2C0%2C224%2C64ZM96%2C56a8%2C8%2C0%2C0%2C1%2C8-8h48a8%2C8%2C0%2C0%2C1%2C8%2C8v8H96ZM224%2C80v32H192v-8a8%2C8%2C0%2C0%2C0-16%2C0v8H80v-8a8%2C8%2C0%2C0%2C0-16%2C0v8H32V80Zm0%2C112H32V128H64v8a8%2C8%2C0%2C0%2C0%2C16%2C0v-8h96v8a8%2C8%2C0%2C0%2C0%2C16%2C0v-8h32v64Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat}
.c98-team-entry a>span:first-child{display:inline-flex;align-items:center;gap:8px}
.c98-team-entry a>span:first-child::before{content:""}

/* Daylight appearance uses a soft gray canvas. */
html[data-c98-theme="light"] body{--paper:#f5f5f5;--surface:#fff;--ink:#181818;--muted:#666;--line:rgba(0,0,0,.18);background:var(--paper);color:var(--ink);color-scheme:light}
html[data-c98-theme="light"] body ::selection{background:#000;color:#fff}
html[data-c98-theme="light"] body :focus-visible{outline-color:var(--ink)}
html[data-c98-theme="light"] body .site-header{background:var(--paper)}
html[data-c98-theme="light"] body .brand-logo,
html[data-c98-theme="light"] body .footer-signature img{filter:brightness(0)}
html[data-c98-theme="light"] body .menu-toggle span{background:var(--ink)}
html[data-c98-theme="light"] body .site-nav a:hover,
html[data-c98-theme="light"] body .site-nav a[aria-current],
html[data-c98-theme="light"] body .case-filters a:is(.is-active,:hover),
html[data-c98-theme="light"] body .case-next-prev a:hover,
html[data-c98-theme="light"] body .footer-bottom a:hover,
html[data-c98-theme="light"] body .copy-button:hover{color:var(--ink)}
html[data-c98-theme="light"] body .search-field input{color:var(--ink)}
html[data-c98-theme="light"] body .year-field select{background:var(--paper);color:var(--ink)}
html[data-c98-theme="light"] body :is(.language-toggle,.year-submit,.back-top):hover{background:var(--ink);color:var(--paper)}
html[data-c98-theme="light"] body :is(.project-open,.image-expand,.scene-open){color:#fff}
html[data-c98-theme="light"] body .project-media,
html[data-c98-theme="light"] body .case-story .case-gallery-item img,
html[data-c98-theme="light"] body .single-case-hero img{background:var(--paper)}
html[data-c98-theme="light"] body .site-footer{--ink:#181818;--muted:#666;--line:rgba(0,0,0,.18);background:var(--surface);color:var(--ink)}
html[data-c98-theme="light"] body .copy-status,
html[data-c98-theme="light"] body .skip-link{background:#000;color:#fff}
html[data-c98-theme="light"] body.home .scene-sheet{background:var(--surface);border-color:var(--line)}
html[data-c98-theme="light"] body.home .scene-sheet-back{background:var(--paper)}
html[data-c98-theme="light"] body.home .scene-side-right>a,html[data-c98-theme="light"] body.home .scene-autoplay:hover{color:var(--ink)}
html[data-c98-theme="light"] body.home .scene-selector.is-active{border-bottom-color:var(--ink);color:var(--ink)}
html[data-c98-theme="light"] body.home .scene-ruler{background:repeating-linear-gradient(to right,var(--line) 0,var(--line) 1px,transparent 1px,transparent 8px)}
html[data-c98-theme="light"] body.home .scene-ruler span{background:repeating-linear-gradient(to right,var(--ink) 0,var(--ink) 1px,transparent 1px,transparent 8px)}
html[data-c98-theme="light"] body.home .manifesto-statement [data-word]{color:var(--ink)}
html[data-c98-theme="light"] body.home .allintalk-banner{background:var(--surface)}
html[data-c98-theme="light"] body.home .allintalk-banner-card{background:var(--paper);border-color:var(--line);box-shadow:none}
html[data-c98-theme="light"] body.home .allintalk-banner:focus-visible{outline-color:var(--ink)}
html[data-c98-theme="light"] body.home .c98-team-entry{background:var(--paper);color:var(--muted);border-color:var(--line)}
html[data-c98-theme="light"] body.home .c98-team-entry a,html[data-c98-theme="light"] body.home .c98-team-entry a small{color:var(--muted)}
html[data-c98-theme="light"] body.home .c98-team-entry a:hover{color:var(--ink)}
html[data-c98-theme="light"] body :is(.site-menu,.image-viewer){--paper:#000;--surface:#181818;--ink:#fff;--muted:#9b9b9b;--line:rgba(255,255,255,.2);color:#fff;color-scheme:dark}
html[data-c98-theme="light"] body :is(.site-menu,.image-viewer) :focus-visible{outline-color:#fff}

/* Device appearance follows prefers-color-scheme on every page. */
html[data-c98-theme="light"]{color-scheme:light;background:#f5f5f5}
html[data-c98-theme="dark"]{color-scheme:dark;background:#000}
html[data-c98-theme="dark"] body{--paper:#000;--surface:#181818;--ink:#fff;--muted:#9b9b9b;--line:rgba(255,255,255,.2);background:var(--paper);color:var(--ink);color-scheme:dark}
html[data-c98-theme="dark"] body .site-header{background:var(--paper)}
html[data-c98-theme="dark"] body .site-header .brand-logo,
html[data-c98-theme="dark"] body .footer-signature img{filter:brightness(0) invert(1)}
html[data-c98-theme="dark"] body .site-header .menu-toggle span{background:var(--ink)}
html[data-c98-theme="dark"] body .site-footer{--ink:#fff;--muted:#9b9b9b;--line:rgba(255,255,255,.2);background:var(--surface);color:var(--ink)}
html[data-c98-theme="dark"] body .case-story .case-gallery-item img,
html[data-c98-theme="dark"] body .single-case-hero img{background:var(--paper)}
html[data-c98-theme] body .site-nav a:is(:hover,[aria-current]),
html[data-c98-theme] body .case-next-prev a:hover,
html[data-c98-theme] body .back-link:hover,
html[data-c98-theme] body .pagination .current{color:var(--ink)}
html[data-c98-theme] body .pagination a:hover{background:var(--surface);color:var(--ink)}
html[data-c98-theme] body :is(.language-toggle,.back-top):hover{background:var(--ink);color:var(--paper)}
html[data-c98-theme] body :focus-visible{outline-color:var(--ink)}
html[data-c98-theme="dark"] body .case-story :focus-visible,
html[data-c98-theme="dark"] body .site-header :focus-visible{outline-color:#fff}
html[data-c98-theme="light"] body .allintalk-intro h1{background-image:linear-gradient(to right,#000,#666)}
html[data-c98-theme] body :is(.site-menu,.image-viewer){--paper:#000;--surface:#181818;--ink:#fff;--muted:#9b9b9b;--line:rgba(255,255,255,.2);background:#000;color:#fff;color-scheme:dark}
html[data-c98-theme] body :is(.site-menu,.image-viewer) :focus-visible{outline-color:#fff}

/* Navigation and photo controls follow the same device appearance. */
html[data-c98-theme="light"] body :is(.site-menu,.image-viewer){--paper:#f5f5f5;--surface:#fff;--ink:#181818;--muted:#666;--line:rgba(0,0,0,.18);background:var(--paper);color:var(--ink);color-scheme:light}
html[data-c98-theme="light"] body .menu-top img{filter:brightness(0)}
html[data-c98-theme="light"] body .site-menu::backdrop,
html[data-c98-theme="light"] body .image-viewer::backdrop{background:#f5f5f5}
html[data-c98-theme="light"] body .image-viewer.is-loading:after{background:var(--surface)}
html[data-c98-theme] body :is(.site-menu,.image-viewer) :focus-visible{outline-color:var(--ink)}

/* Homepage selections: close captions, quiet category labels, and shorter section gaps. */
body.home .work-index-entry{gap:32px;margin-bottom:80px}
body.home .work-index-meta{margin-bottom:16px}
body.home .work-index-location{margin-top:12px;line-height:20px}
body.home .work-index-type{line-height:20px;color:var(--muted);opacity:.93}
html[data-c98-theme="dark"] body.home .work-index-type{opacity:.8}
@media(max-width:1100px){body.home .work-index-entry{gap:24px}}
@media(max-width:760px){body.home .work-index-entry{gap:16px;margin-bottom:48px}body.home .work-index-meta{margin-bottom:12px}body.home .work-index-location{margin-top:8px}}

/* Selection headings remain one size below the opening slideshow. */
body.home .work-index-info h3{font-size:24px;line-height:32px}
@media(max-width:1100px){body.home .work-index-info h3{font-size:20px;line-height:28px}}
@media(max-width:760px){body.home .work-index-info h3{font-size:18px;line-height:28px}}

/* Quiet archive captions: titles match the category size; metadata stays secondary. */
body.post-type-archive-case .project-grid-archive .project-card h2{font-size:12px;line-height:20px;letter-spacing:0}
body.post-type-archive-case .project-grid-archive .project-meta{color:var(--muted);opacity:.93}
html[data-c98-theme="dark"] body.post-type-archive-case .project-grid-archive .project-meta{opacity:.8}

/* Galaxy98: fluid desktop project titles; keep existing mobile sizes. */
@media (min-width: 761px) {
  body.home .work-index-info h3 { font-size: clamp(28px, 2.2vw, 42px); line-height: 1.35; }
  body.post-type-archive-case .project-grid-archive .project-card h2 { font-size: clamp(18px, 1.35vw, 24px); line-height: 1.45; }
}

@media (max-width: 760px) {
  body.home .work-index-info h3 { font-size: 20px; line-height: 1.4; }
  body.post-type-archive-case .project-grid-archive .project-card h2 { font-size: 14px; line-height: 1.5; }
}

/* Galaxy98: fill all homepage slideshow frames without letterboxing. */
body.home .scene-image img { object-fit: cover; }

/* Galaxy98: anchor the full slideshow side label inside the viewport. */
body.home .scene-side-right > a { align-self: flex-end; width: max-content; }

/* Project-specific book credits. */
.case-cover-info h1{word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance}
.case-cover-info h1 .case-title-brand,.case-cover-info h1 .case-title-project{display:inline-block;max-width:100%}
#project-credits{scroll-margin-top:128px}
.book-platform-experience{margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.book-platform-experience>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px;padding:24px 0;font-size:14px;line-height:24px}
.book-platform-experience>summary::-webkit-details-marker{display:none}
.book-platform-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 48px;padding:8px 0 40px}
.book-platform-grid h4{font-size:16px;line-height:24px;font-weight:400;margin-bottom:16px}
.book-platform-grid ul{list-style:none;padding:0;margin:0}
.book-platform-grid li+li{margin-top:12px}.book-platform-grid a{display:flex;justify-content:space-between;gap:16px;font-size:13px;line-height:22px;color:var(--muted)}
.book-platform-grid a:hover{color:var(--ink)}.book-platform-year{flex-shrink:0}
@media(max-width:640px){.book-platform-grid{grid-template-columns:1fr;gap:32px}.book-platform-grid a{font-size:13px;line-height:24px}}
.book-project-credits{padding-block:64px;border-top:1px solid var(--line);margin-top:48px}
.book-credit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;margin-top:40px}
.book-credit-grid>div{padding:20px 0;border-bottom:1px solid var(--line);min-width:0}
.book-credit-grid dt{font-size:12px;line-height:20px;color:var(--muted);margin-bottom:8px}
.book-credit-grid dd{margin:0;font-size:18px;line-height:28px;overflow-wrap:anywhere}
.book-source-note{font-size:12px;line-height:20px;color:var(--muted);margin-top:32px}
.book-production-notes{display:grid;grid-template-columns:1fr 1fr;gap:16px 32px;margin-top:32px}
.book-production-notes>div{border-top:1px solid var(--line);padding-top:16px}
.book-production-notes dt{color:var(--muted);font-size:12px;line-height:20px;margin-bottom:8px}
.book-production-notes dd{font-size:15px;line-height:26px;margin:0}
.early-practice-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px}
.early-practice-gallery figure{margin:0}.early-practice-gallery img{width:100%;height:auto;object-fit:contain}
.early-practice-gallery figcaption{font-size:12px;line-height:20px;color:var(--muted);margin-top:12px}
.early-practice-intro{max-width:900px}.early-practice-intro p{font-size:17px;line-height:30px;margin-bottom:24px}
.early-practice-case{padding-top:48px}.early-practice-case h3{font-size:24px;line-height:34px;margin-bottom:16px}
.early-practice-case .book-credit-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}
@media(max-width:900px){.book-credit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}}
@media(max-width:640px){.book-project-credits{padding-block:32px;margin-top:32px}.book-credit-grid{gap:0 20px;margin-top:24px}.book-credit-grid>div{padding:16px 0}.book-credit-grid dd{font-size:15px;line-height:24px}.book-credit-grid dt{font-size:12px;line-height:20px}.book-production-notes{grid-template-columns:1fr}.early-practice-gallery{grid-template-columns:1fr;gap:20px}.early-practice-case .book-credit-grid{grid-template-columns:1fr 1fr}.early-practice-intro p{font-size:16px;line-height:28px}}

/* Official site identity, shared by every public footer. */
.footer-site-identity{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;color:inherit}
.footer-official-link{font-size:30px;line-height:36px;font-weight:600;letter-spacing:-.02em;text-wrap:balance;color:inherit;text-decoration:none}
.footer-site-identity p{margin:0;max-width:none;font-size:16px;line-height:24px;text-wrap:pretty}
.footer-official-domain{font-size:14px;line-height:20px;color:inherit;text-underline-offset:4px;overflow-wrap:anywhere}
.footer-official-link,.footer-official-domain{transition:opacity 300ms cubic-bezier(.22,1,.36,1)}
.footer-official-link:hover,.footer-official-domain:hover{opacity:.75}
.footer-official-link:active,.footer-official-domain:active{opacity:.6}
.footer-official-link:focus-visible,.footer-official-domain:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:600px){.footer-official-link{font-size:24px;line-height:32px}.footer-site-identity p{font-size:14px;line-height:20px}}
@media(prefers-reduced-motion:reduce){.footer-official-link,.footer-official-domain{transition:none}}

/* Editorial footer tagline. */
.footer-site-identity .footer-tagline{margin:0;font-size:30px;line-height:36px;font-weight:400;letter-spacing:.04em;color:var(--ink)}
.footer-tagline-line{display:block;white-space:nowrap}
.footer-tagline-line:first-child{color:var(--muted)}
.footer-tagline-line+.footer-tagline-line{margin-top:8px;margin-left:32px;font-weight:500}
@media(max-width:600px){.footer-site-identity .footer-tagline{font-size:24px;line-height:32px}.footer-tagline-line+.footer-tagline-line{margin-top:4px;margin-left:24px}.footer-tagline .lang-en{font-size:20px;line-height:28px}}

/* Give the mobile brand signature its own vertical rhythm. */
@media(max-width:600px){
.footer-signature{grid-template-columns:minmax(0,1fr);row-gap:24px;padding-top:64px;padding-bottom:40px}
.footer-signature>img{grid-column:1;grid-row:1;max-width:100%}
.footer-signature>.footer-site-identity{grid-column:1;grid-row:2;margin-top:16px;justify-self:start}
.footer-signature>span{grid-column:1;grid-row:3;justify-self:start}
}

/* Shared grey framing for navigation and contact footer across the site. */
html body .site-header {
    background: #181818;
    border-bottom: 1px solid var(--line);
}
html body .site-footer {
    background: #202020;
    border-top: 1px solid var(--line);
}
html[data-c98-theme="dark"] body .site-header { background: #181818; }
html[data-c98-theme="dark"] body .site-footer { background: #202020; }
html[data-c98-theme="light"] body .site-header {
    background: #e8e8e8;
    border-bottom-color: rgba(24, 24, 24, .12);
}
html[data-c98-theme="light"] body .site-footer {
    background: #e3e3e3;
    border-top-color: rgba(24, 24, 24, .12);
}

/* Partner names: emphasize the selected interface language in either device appearance. */
.about-page [data-collaborator-group="brands"] .collaborator-name-zh{color:var(--ink);opacity:1}
.about-page [data-collaborator-group="brands"] .collaborator-name-en{color:var(--muted);opacity:.7}
html[data-language="en"] .about-page [data-collaborator-group="brands"] .collaborator-name-zh:not(:only-child){color:var(--muted);opacity:.7}
html[data-language="en"] .about-page [data-collaborator-group="brands"] .collaborator-name-en{color:var(--ink);opacity:1}

/* Keep the original QR pattern; blend its white paper into the light footer. */
html[data-c98-theme="light"] body .footer-qr img {
    background: transparent;
    mix-blend-mode: multiply;
}
.footer-qr figcaption .lang-zh {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}
@media (max-width: 359px) {
    .footer-qr figcaption .lang-zh { font-size: 10px; }
}

/* Team directories keep three people per row on desktop, tablet and phone. */
.about-team .team-list-core,.about-team .team-list-support{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 48px}
@media(max-width:1024px){
.about-team .team-list{gap:24px}
.about-team .team-person,.about-team .team-profile-link{flex-direction:column;align-items:flex-start;gap:12px}
.about-team .team-person>div,.about-team .team-profile-link>div{width:100%;min-width:0}
.about-team .team-person .person-en{display:block;margin:4px 0 0}
.about-team .team-profile-link h4{position:relative}
.about-team .team-profile-link h4:after{position:absolute;top:0;right:0}
}
@media(max-width:640px){
.about-team .team-list{column-gap:12px;row-gap:24px}
.about-team .team-person{padding-block:8px}
.about-team .team-person h4{font-size:16px;line-height:24px}
.about-team .team-person .person-en{font-size:12px;line-height:16px;overflow-wrap:normal;word-break:normal}
.about-team .team-person p{font-size:12px;line-height:20px;margin-top:8px}
.about-team .team-person img,.about-team .team-portrait{width:48px;height:48px;flex-basis:48px}
}

/* Center each person's portrait and introduction within the existing three-column grid. */
.about-team .team-person { justify-content: center; }
.about-team .team-profile-link { width: auto; max-width: 100%; }
/* Attach the profile arrow to the primary name in the active language. */
.about-team .team-profile-link h4::after { content: none; }
.about-team .team-profile-link h4 > .lang-zh:not(.person-en) { white-space: nowrap; }
.about-team .team-profile-link h4 > .lang-zh:not(.person-en)::after,
.about-team .team-profile-link h4 > .lang-en::after {
    content: "\00a0↗";
    font-size: 14px;
    line-height: 1;
    color: var(--muted);
}
@media (max-width: 1024px) {
    .about-team .team-person,
    .about-team .team-profile-link {
        align-items: center;
        justify-content: flex-start;
        text-align: center;
    }
    .about-team .team-profile-link { width: 100%; }
}

/* Desktop portraits share a fixed left edge in each of the three centered columns. */
@media (min-width: 1025px) {
    .about-team .team-person {
        width: 100%;
        max-width: 280px;
        justify-self: center;
        justify-content: flex-start;
    }
}

/* Desktop founder text uses the same portrait-to-text gap as the other team rows. */
@media (min-width: 1025px) {
    .about-team .team-profile-link { gap: 16px; }
}

/* Keep the footer home link fitted to the original logo in both layouts. */
.footer-signature > .footer-home-link { display: block; justify-self: start; grid-column: 1; grid-row: 1; max-width: 100%; }
.footer-signature > .footer-home-link img { max-width: 100%; }

/* Purchase contact QR: blend the existing white pixels into the light page surface. */
html[data-c98-theme="light"] body .purchase-qr img {
    background: transparent;
    mix-blend-mode: multiply;
}

/* Jerry Zhang career milestones follow the site's editorial rhythm. */
.author-career-timeline{max-width:1000px;margin:48px 0 8px}
.author-career-timeline h3{font-size:14px;line-height:24px;color:var(--muted);font-weight:400;margin-bottom:16px}
.author-career-timeline dl{margin:0}
.author-career-timeline dl>div{display:grid;grid-template-columns:136px minmax(0,1fr);gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}
.author-career-timeline dt{font-size:20px;line-height:32px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.author-career-timeline dd{margin:0;font-size:20px;line-height:32px}
.author-role-sources{margin-top:16px}
@media(max-width:640px){.author-career-timeline{margin-top:32px}.author-career-timeline dl>div{grid-template-columns:90px minmax(0,1fr);gap:16px;padding:16px 0}.author-career-timeline dt{font-size:14px;line-height:28px}.author-career-timeline dd{font-size:16px;line-height:28px}}

/* Keep the original QR image and module pattern; invert only its dark-theme presentation. */
html[data-c98-theme="dark"] body .footer-qr img,
html[data-c98-theme="dark"] body .purchase-qr img {
    background: transparent;
    filter: invert(1);
    mix-blend-mode: screen;
}

/* Original QR data is unchanged; adapt only its dark-mode presentation. */
a.qr-original-link{display:inline-block;max-width:100%;line-height:0}
a.qr-original-link img{display:block}
a.qr-original-link:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(prefers-color-scheme:dark){img[src*="/lei-ray-wechat-qr.png"]{filter:invert(1);mix-blend-mode:screen;border:0}.footer-qr,.purchase-qr{background:transparent}}

/* Editorial selection and searchable archive, November 2026. */
.portfolio-page{padding-top:140px;padding-bottom:96px}
.portfolio-levels{display:flex;align-items:center;gap:36px;padding:0 0 24px;border-bottom:1px solid var(--line)}
.portfolio-levels a{display:inline-flex;align-items:baseline;gap:10px;font-size:15px;line-height:24px;color:var(--muted)}
.portfolio-levels a[aria-current]{color:var(--ink)}
.portfolio-levels a:hover{color:var(--ink)}
.portfolio-level-number{font-size:11px;opacity:.65}.portfolio-levels sup{font-size:10px;top:-.5em;position:relative;margin-left:4px}
.portfolio-intro{padding:56px 0 52px}.portfolio-intro .eyebrow{font-size:11px;line-height:20px;letter-spacing:.04em;color:var(--muted);margin-bottom:24px}
.portfolio-heading{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:end}
.portfolio-heading h1{font-size:clamp(40px,5.6vw,84px);line-height:1.16;font-weight:400;letter-spacing:-.06em;margin:0}
.portfolio-heading p{font-size:15px;line-height:1.9;white-space:pre-line;color:var(--muted);margin:0 0 16px}
.portfolio-count{font-size:11px;color:var(--muted);text-transform:uppercase}
.portfolio-edits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 24px}
.portfolio-edit{min-width:0}.portfolio-edit-image{position:relative;display:block;overflow:hidden;background:var(--surface)}
.portfolio-edit-image img{display:block;width:100%;height:auto;max-height:none!important;object-fit:contain!important;transition:opacity .2s ease}
.portfolio-edit-image:hover img{opacity:.92}.portfolio-edit-arrow{position:absolute;bottom:16px;right:16px;width:32px;height:32px;display:grid;place-items:center;background:var(--paper);color:var(--ink);font-size:18px;opacity:0;transition:opacity .2s ease}
.portfolio-edit-image:hover .portfolio-edit-arrow,.portfolio-edit-image:focus-visible .portfolio-edit-arrow{opacity:1}
.portfolio-edit-caption{padding-top:16px}.portfolio-edit-index{display:flex;justify-content:space-between;gap:16px;font-size:11px;line-height:20px;color:var(--muted);margin-bottom:12px}
.portfolio-edit h2{font-size:clamp(17px,1.6vw,23px);line-height:1.5;font-weight:400;letter-spacing:-.02em;margin:0 0 8px;overflow-wrap:anywhere}
.portfolio-edit-type{font-size:11px;line-height:20px;color:var(--muted);opacity:.65;margin:0}
.portfolio-edit-read{display:inline-block;margin-top:32px;font-size:12px;line-height:24px}
.portfolio-edit-spread{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:32px;align-items:end;padding-bottom:28px;border-bottom:1px solid var(--line)}
.portfolio-edit-spread .portfolio-edit-caption{padding:0 0 8px}.portfolio-edit-spread h2{font-size:clamp(22px,2.1vw,32px);line-height:1.45}
.portfolio-archive-door{display:flex;justify-content:space-between;align-items:end;gap:32px;padding:48px 0 8px;margin-top:80px;border-top:1px solid var(--line)}
.portfolio-archive-door small{display:block;font-size:13px;line-height:24px;color:var(--muted);margin-bottom:20px}.portfolio-archive-door strong{font-size:clamp(24px,3.4vw,48px);line-height:1.3;font-weight:400;letter-spacing:-.04em}.portfolio-door-count{font-size:20px;color:var(--muted)}
.portfolio-search{display:grid;grid-template-columns:1.6fr 1.2fr 1fr .8fr 1.2fr auto;gap:16px;align-items:end;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0}
.portfolio-search label{display:block;min-width:0}.portfolio-search label>span{display:block;font-size:11px;line-height:20px;color:var(--muted);margin-bottom:8px}
.portfolio-search input,.portfolio-search select{width:100%;min-width:0;max-width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:inherit;font-size:13px;line-height:24px;min-height:45px;outline-offset:4px}
.portfolio-search input::placeholder{color:var(--muted);opacity:.8}.portfolio-search select option{background:var(--paper);color:var(--ink)}
.portfolio-search button{border:1px solid var(--ink);background:transparent;color:var(--ink);font:inherit;font-size:13px;line-height:24px;min-height:45px;padding:10px 20px;white-space:nowrap}.portfolio-search button:hover{background:var(--ink);color:var(--paper)}
.portfolio-result{display:flex;align-items:center;gap:24px;padding:24px 0 32px;font-size:11px;line-height:20px;color:var(--muted)}.portfolio-result>span:last-child{margin-left:auto}.portfolio-result a{text-decoration:underline;text-underline-offset:4px}
.portfolio-archive .project-grid-archive{min-height:160px}.portfolio-archive .archive-empty{position:relative!important;width:100%;grid-column:1/-1;padding:48px 0}
@media(min-width:1600px){.portfolio-page{max-width:1568px}}
@media(max-width:1000px){.portfolio-search{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-search button{align-self:end}.portfolio-edit-spread{gap:24px}.portfolio-heading{grid-template-columns:1.3fr 1fr}}
@media(max-width:700px){
 .portfolio-page{padding-top:101px;padding-bottom:64px}.portfolio-levels{gap:24px;padding-bottom:20px}.portfolio-levels a{font-size:13px;gap:6px}.portfolio-level-number{font-size:10px}.portfolio-levels sup{margin-left:0}
 .portfolio-intro{padding:36px 0}.portfolio-intro .eyebrow{font-size:10px;margin-bottom:20px}.portfolio-heading{grid-template-columns:1fr;gap:20px}.portfolio-heading h1{font-size:42px;line-height:1.2}.portfolio-heading p{font-size:13px;line-height:1.9;margin-bottom:12px}
 .portfolio-edits{grid-template-columns:1fr;gap:36px}.portfolio-edit-spread{grid-column:auto;display:block;padding-bottom:24px}.portfolio-edit-caption,.portfolio-edit-spread .portfolio-edit-caption{padding-top:12px;padding-bottom:0}.portfolio-edit-index{margin-bottom:8px;font-size:10px}.portfolio-edit h2,.portfolio-edit-spread h2{font-size:19px;line-height:1.5;margin-bottom:4px}.portfolio-edit-type{font-size:10px;line-height:18px}.portfolio-edit-read{margin-top:16px;font-size:11px}.portfolio-edit-arrow{opacity:1;width:28px;height:28px;bottom:10px;right:10px;font-size:16px}
 .portfolio-search{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;padding:24px 0}.portfolio-search-keyword{grid-column:1/-1}.portfolio-search input,.portfolio-search select{font-size:13px}.portfolio-search button{grid-column:1/-1}.portfolio-result{gap:16px;font-size:10px;padding:20px 0 24px}
 .portfolio-archive-door{margin-top:48px;padding-top:32px;gap:16px}.portfolio-archive-door small{font-size:11px;margin-bottom:16px}.portfolio-archive-door strong{font-size:25px}.portfolio-door-count{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.portfolio-edit-image img,.portfolio-edit-arrow{transition:none}}


/* Preserve actual photo proportions; native lazy-image placeholders must not force 1500px height. */
body .portfolio-edit-image{height:auto!important;min-height:0!important;aspect-ratio:auto!important;background:transparent}
body .portfolio-edit-image img{display:block;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;contain:none!important;contain-intrinsic-size:none!important;object-fit:contain!important}
.portfolio-edits{--masonry-columns:2;--masonry-gap:32px;align-items:start}
.portfolio-edits.is-masonry-ready{display:block;position:relative}
.portfolio-edits.is-masonry-ready>.portfolio-edit{position:absolute;margin:0}
.portfolio-edit-spread{display:block;grid-column:1/-1;padding:0;border:0}
.portfolio-edit-spread .portfolio-edit-caption{padding:16px 0 0}
.portfolio-edit-spread h2{font-size:clamp(19px,1.8vw,28px);line-height:1.5}
.portfolio-edit-spread .portfolio-edit-read{display:none}
.archive-access-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:64px;padding:80px 0;min-height:480px}
.archive-access-layout h1{font-size:clamp(40px,5.6vw,80px);line-height:1.2;font-weight:400;letter-spacing:-.06em;margin:24px 0}
.archive-access-description{font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 32px}
.archive-access-form{max-width:440px;padding-top:48px}
.archive-access-form label{display:block;font-size:13px;line-height:24px;margin-bottom:16px}
.archive-access-form input[type=password]{display:block;width:100%;min-width:0;font:inherit;font-size:16px;line-height:24px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:12px 0;margin:0 0 24px}
.archive-access-form button{display:block;min-height:48px;width:100%;padding:12px 24px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font:inherit;font-size:14px;line-height:24px}
.archive-access-form input::placeholder{color:var(--muted);opacity:.8}
.archive-access-form .archive-access-note{font-size:12px;line-height:1.9;color:var(--muted);margin-top:24px}
.archive-access-error{font-size:13px;line-height:24px;color:var(--ink);margin:-8px 0 20px}
.archive-session{display:flex;justify-content:flex-end;gap:16px;margin-top:20px;font-size:11px;color:var(--muted)}
.archive-session button{padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;font:inherit;line-height:20px}
.case-story .case-next-prev.case-return-nav{display:flex;justify-content:space-between}
@media(max-width:700px){.portfolio-edits{--masonry-columns:1;--masonry-gap:32px}.portfolio-edit-spread .portfolio-edit-caption{padding-top:12px}.archive-access-layout{grid-template-columns:1fr;gap:32px;padding:48px 0;min-height:0}.archive-access-layout h1{font-size:44px}.archive-access-form{max-width:none;padding:0}.archive-access-description{font-size:13px;margin-bottom:24px}}


/* Portrait and publication editorial feature, 20261102. */
.home-channel .allintalk-banner{margin-top:32px}
.publication-feature-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center;padding-top:48px}
.publication-feature-art{display:block;position:relative;min-width:0;padding-right:24%;padding-bottom:32px}
.publication-feature-portrait{position:relative;margin:0}.publication-feature-portrait img{display:block;width:100%;height:auto}
.publication-feature-portrait figcaption{font-size:12px;line-height:20px;letter-spacing:.06em;color:var(--muted);padding-top:12px}
.publication-feature-cover{position:absolute;width:36%;right:0;bottom:64px;margin:0;transform:rotate(5deg);transform-origin:center;transition:transform .5s var(--curve)}
.publication-feature-cover img{display:block;width:100%;height:auto;box-shadow:0 16px 32px rgba(0,0,0,.16)}
.publication-feature-art:hover .publication-feature-cover{transform:rotate(2deg) translateY(-8px)}
.publication-feature-copy{min-width:0;padding-block:24px}.publication-feature-copy .eyebrow{margin-bottom:24px;font-size:14px;line-height:24px}
.publication-feature-copy h2{font-size:clamp(30px,3.4vw,48px);line-height:1.2;letter-spacing:-.04em;max-width:12em}
.publication-feature-bookname{font-size:20px;line-height:28px;margin-top:24px}
.publication-feature-description{font-size:16px;line-height:28px;max-width:32em;margin-top:24px;color:var(--muted)}
.publication-feature-links{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;margin-top:32px}
@media(max-width:800px){.publication-feature-grid{gap:32px}.publication-feature-copy h2{font-size:30px;line-height:36px}.publication-feature-links{gap:8px 24px}}
@media(max-width:640px){.home-channel .allintalk-banner{margin-top:24px}.publication-feature .section-label{gap:16px}.publication-feature .section-label>span:last-child{font-size:10px;letter-spacing:0;text-align:right}.publication-feature-grid{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:32px}.publication-feature-art{width:100%;max-width:440px;padding-right:28%;padding-bottom:16px}.publication-feature-cover{width:37%;bottom:48px;right:4px}.publication-feature-portrait figcaption{font-size:10px;line-height:16px}.publication-feature-copy{padding-block:8px 16px}.publication-feature-copy .eyebrow{font-size:12px;line-height:20px;margin-bottom:16px}.publication-feature-bookname{margin-top:16px;font-size:18px;line-height:28px}.publication-feature-description{margin-top:16px;font-size:14px;line-height:24px}.publication-feature-links{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.publication-feature-cover,.publication-feature-art:hover .publication-feature-cover{transition:none;transform:rotate(5deg)}}

/* Compact publication image composition, 20261102. */
.publication-feature-grid{grid-template-columns:minmax(0,320px) minmax(0,1fr);max-width:1000px;margin-inline:auto;gap:64px;padding-top:32px}
.publication-feature-art{width:100%;max-width:320px;padding-bottom:16px}
.publication-feature-cover{bottom:48px}.publication-feature-copy{padding-block:8px}
.publication-feature-copy h2 a:hover{opacity:.65}.publication-feature-copy h2 a:focus-visible{outline-offset:8px}
@media(max-width:800px) and (min-width:641px){.publication-feature-grid{grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:32px}}
@media(max-width:640px){.publication-feature-grid{grid-template-columns:minmax(0,1fr);gap:16px}.publication-feature-art{width:50%;max-width:220px;padding-bottom:0}.publication-feature-cover{bottom:32px}.publication-feature-portrait figcaption{font-size:10px;line-height:16px;letter-spacing:0;white-space:nowrap}}

/* Keep portrait/book proportions inside the compact mobile composition. */
.publication-feature-art{padding-right:0}.publication-feature-portrait{width:76%}
@media(max-width:640px){.publication-feature-art{padding-right:0}.publication-feature-portrait{width:72%}}

/* Project research references, 20261102. */
.case-story .entry-content .case-lead{font-size:24px;line-height:36px;color:var(--ink);margin-bottom:32px;max-width:32em}
.case-story .entry-content{max-width:760px}.case-story .entry-content p{max-width:40em}
.case-research{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:64px;padding-top:32px;padding-bottom:32px;border-top:1px solid var(--line);margin-top:48px}
.case-research .eyebrow{margin:0;font-size:14px;line-height:24px}.case-research-links{min-width:0;display:flex;align-items:flex-start;flex-direction:column;gap:12px;font-size:14px;line-height:24px;color:var(--muted)}
.case-research-links a{max-width:100%;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line)}.case-research-links a:hover{color:var(--ink);text-decoration-color:currentColor}
.case-photo-sources{display:flex;flex-direction:column;gap:8px;margin-top:16px;font-size:12px;line-height:20px}.case-photo-sources>span{letter-spacing:.04em}
@media(max-width:640px){.case-story .entry-content .case-lead{font-size:20px;line-height:32px;margin-bottom:24px}.case-research{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:24px;margin-top:32px}.case-research-links{font-size:12px;line-height:24px;gap:8px}}

/* Show thirty collaborators before the optional full directory. */
.collaborator-more{margin-top:32px}
.collaborator-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;gap:16px;width:fit-content;max-width:100%;min-height:44px;padding:8px 0;color:var(--muted);font-size:14px;line-height:24px;border-bottom:1px solid var(--line)}
.collaborator-more>summary::-webkit-details-marker{display:none}.collaborator-more>summary::marker{content:''}
.collaborator-more>summary:hover{color:var(--ink)}.collaborator-more>summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.collaborator-more-hide,.collaborator-more[open] .collaborator-more-show{display:none}.collaborator-more[open] .collaborator-more-hide{display:inline}
.collaborator-more-icon{font-size:20px;line-height:24px;transition:transform .3s var(--curve)}.collaborator-more[open] .collaborator-more-icon{transform:rotate(45deg)}
.collaborator-more>.client-grid{padding-top:24px}
@media(max-width:640px){.collaborator-more{margin-top:24px}.collaborator-more>summary{font-size:12px;line-height:24px}}
@media(prefers-reduced-motion:reduce){.collaborator-more-icon{transition:none}}

/* Desktop publication layout: align the portrait with the page edge. */
@media(min-width:801px){
  .home .publication-feature-grid{
    max-width:none;
    margin-inline:0;
    grid-template-columns:minmax(0,320px) minmax(0,1fr);
    column-gap:clamp(96px,12vw,192px);
  }
  .home .publication-feature-art{justify-self:start;margin-inline:0}
  .home .publication-feature-copy{max-width:640px}
}

/* Crop the source photo's thin frame inside the existing circular avatar. */
.about-team .team-list-core .team-portrait-core-wang{
  display:block;width:48px;height:48px;flex:0 0 48px;
  overflow:hidden;border-radius:50%;
}
.about-team .team-list-core .team-portrait-core-wang>img{
  display:block;width:100%;height:100%;
  transform:scale(1.04);transform-origin:50% 50%;
}

/* Into the East: the same three-image composition on every screen. */
.author-page .early-practice-gallery-east{
  grid-template-columns:minmax(0,1.48fr) minmax(0,1fr);
  align-items:start;
}
.author-page .early-practice-gallery-east>figure:nth-child(1){grid-column:1;grid-row:1}
.author-page .early-practice-gallery-east>figure:nth-child(2){grid-column:1;grid-row:2}
.author-page .early-practice-gallery-east>figure:nth-child(3){grid-column:2;grid-row:1 / span 2}
.author-page .early-practice-gallery-east a{display:block}
.author-page .early-practice-gallery-east img{display:block;width:100%;height:auto}
@media(max-width:640px){.author-page .early-practice-gallery-east{gap:8px}}

/* Header controls remain reachable on narrow screens. */
.site-header{box-sizing:border-box;max-width:100vw}
.site-header .brand{min-width:0}.site-header .header-actions{flex-shrink:0}
@media(max-width:760px){.site-header .brand{flex:0 1 auto}.site-header .brand-logo{max-width:100%}.site-header .site-nav,.site-header .header-studio{display:none}.site-header .header-actions{flex:0 0 auto;margin-left:auto}.site-header .language-toggle,.site-header .menu-toggle{flex:0 0 44px;min-width:44px;max-width:44px}}

/* Unified Latin and Chinese sans-serif typography. */
:root{--font:"Geist","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}
body{font-family:var(--font)}
h1,h2,h3,h4{font-weight:500}
.scene-caption h2,.work-index-info h3,.portfolio-edit h2{font-weight:500;letter-spacing:-.02em}
.eyebrow,.section-label,.project-meta{font-weight:400;letter-spacing:.04em}

/* Explicit dialog visibility also covers older WeChat / in-app webviews. */
dialog.site-menu:not([open]),dialog.image-viewer:not([open]){display:none!important}
.site-menu[open]{display:block;height:100vh;height:100dvh}

/* Homepage compact masthead; retain a generous mobile menu hit area. 2026-11-09 */
body.home .site-header{height:49px;min-height:49px;padding-block:0}
body.home .site-header .brand{height:38px}
body.home .site-header .brand-logo{width:108px;height:38px}
body.home .site-header .site-nav a{height:32px;min-height:32px;padding-block:4px}
body.home .site-header .language-toggle,body.home .site-header .menu-toggle{height:36px;min-height:36px;min-width:40px;max-width:40px;width:40px;flex:0 0 40px;padding:6px}
body.home .scene-gallery{padding-top:88px}
@media(min-width:1600px){body.home .scene-gallery{padding-top:120px}}
@media(max-width:900px){
  body.home .site-header .brand{height:32px}
  body.home .site-header .brand-logo{width:96px;height:32px}
  body.home .scene-gallery{padding-top:89px}
  html body .site-header .header-actions{gap:12px}
  html body .site-header .header-actions .menu-toggle{position:relative;display:flex;flex:0 0 56px;width:56px;min-width:56px;max-width:56px;height:44px;min-height:44px;padding:10px 14px;touch-action:manipulation}
  html body .site-header .header-actions .menu-toggle span{pointer-events:none}
}
@media(max-width:640px){
  body.home .site-header{height:45px;min-height:45px;padding-block:0}
  body.home .site-header .brand-logo{width:86px;height:32px}
  body.home .scene-gallery{padding-top:92px}
}
