:root{color-scheme:dark;--bg:#000;--ink:#d9d9d9;--secondary:#939393;--line:#292929;--edge:clamp(24px,4.45vw,86px);--strip:clamp(120px,13.2vw,220px);--cover-height:clamp(300px,calc(var(--viewport-unit,1vh) * 47),540px);--spread:clamp(270px,28vw,530px)}
*{box-sizing:border-box}html{background:#000;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,"Microsoft YaHei","PingFang SC",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:1px solid #aaa;outline-offset:8px}::selection{background:#d9d9d9;color:#000}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home{overflow-x:clip}.brand-strip{height:var(--strip);position:relative;border-bottom:1px solid #222}#brand-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:20}.is-intro #brand-canvas{position:fixed;height:calc(var(--viewport-unit,1vh) * 100)}.is-intro{overflow:hidden}.hero-content{transition:opacity .7s,transform .9s cubic-bezier(.22,.7,.25,1)}.is-intro .hero-content{opacity:0;transform:translateY(15px)}.is-revealing .hero-content{opacity:1;transform:none}.skip-intro{position:fixed;bottom:25px;right:var(--edge);padding:10px 14px;background:#000;border:1px solid #555;font-size:12px;z-index:30}.skip-intro[hidden]{display:none}
.site-header{height:65px;margin:0 var(--edge);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:3}.wordmark{font-size:13px;font-weight:500;letter-spacing:-.02em}.site-header nav{display:flex;gap:34px;align-items:center;font-size:11px;letter-spacing:.02em}.site-header nav a,.site-header nav button{padding:6px 0;position:relative}.site-header nav a::after,.site-header nav button::after{content:"";height:1px;background:currentColor;position:absolute;left:0;right:0;bottom:0;transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-header nav a:hover::after,.site-header nav button:hover::after,.site-header [aria-current]::after{transform:scaleX(1)}
.works-stage{height:calc(calc(var(--viewport-unit,1vh) * 100) - var(--strip) - 65px - 74px);min-height:430px;position:relative;perspective:1400px;perspective-origin:50% 48%;isolation:isolate}.gallery-scene{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(var(--scene-rx,0deg)) rotateY(var(--scene-ry,0deg)) translate3d(var(--scene-x,0px),var(--scene-y,0px),0);will-change:transform}.project-card{position:absolute;left:50%;top:49%;margin:0;transform-style:preserve-3d;transform:translate(-50%,-50%) translate3d(var(--x),var(--y),var(--z)) rotateY(var(--yaw));transition:transform .6s cubic-bezier(.2,.65,.3,1)}.card-1{--x:calc(-1*var(--spread));--y:9px;--z:10px;--yaw:26deg}.card-2{--x:0px;--y:-7px;--z:-130px;--yaw:0deg}.card-3{--x:var(--spread);--y:9px;--z:10px;--yaw:-26deg}.cover-link{display:block;transform-style:preserve-3d;transform:translateZ(0);transition:transform .5s cubic-bezier(.2,.7,.3,1)}.project-card.is-active .cover-link{transform:translateZ(32px)}.cover-face{height:var(--cover-height);position:relative}.cover-face img{display:block;height:100%;width:auto;max-width:none;filter:brightness(.97);transition:filter .55s cubic-bezier(.2,.6,.25,1);backface-visibility:hidden}.gallery-scene.is-focused .project-card:not(.is-active) .cover-face img{filter:brightness(.30)}.gallery-scene .project-card.is-active .cover-face img{filter:brightness(1)}.cover-caption{display:flex;align-items:center;justify-content:space-between;margin-top:22px;gap:24px;font-size:15px;letter-spacing:-.02em;color:#bcbcbc;transition:color .3s}.cover-caption span:last-child{font-size:18px}.gallery-scene.is-focused .project-card:not(.is-active) .cover-caption{color:#5e5e5e}.gallery-scene .project-card.is-active .cover-caption{color:#dedede}.gallery-footer{margin:0 var(--edge);height:74px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:11px;color:var(--secondary);position:relative;z-index:2}.gallery-footer button{font-size:10px;letter-spacing:.02em}.explore-hint{font-size:11px;letter-spacing:.03em}.mobile-controls{display:none}
dialog{color:#d9d9d9;background:#050505;border:1px solid #333;padding:0}dialog::backdrop{background:#000c;backdrop-filter:blur(9px)}dialog[open]{animation:dialog-in .3s ease-out}@keyframes dialog-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.info-dialog{width:min(850px,calc(100vw - 40px));max-height:calc(calc(var(--viewport-unit,1vh) * 100) - 48px);overflow:auto}.dialog-close{font-size:12px;padding:12px;position:absolute;right:20px;top:16px;z-index:2}.dialog-body{padding:70px 60px 55px}.eyebrow{font-size:11px;color:#999;letter-spacing:.04em}.dialog-body h2{font-size:44px;line-height:1.45;font-weight:400;letter-spacing:-1.7px;margin:30px 0}.dialog-body>p:not(.eyebrow){font-size:17px;color:#aaa;line-height:1.9}.dialog-services{display:flex;gap:30px;margin-top:40px;padding-top:22px;border-top:1px solid #333;font-size:14px;color:#aaa}.contact-mail{font-size:23px;display:inline-block;margin-top:8px}.contact-content{display:grid;grid-template-columns:1fr 160px;gap:36px;align-items:center}.contact-content p{font-size:14px;color:#999;line-height:1.8;margin-top:30px}.contact-content figure{margin:0}.contact-content img{display:block;width:160px;height:auto}.contact-content figcaption{font-size:12px;color:#aaa;margin-top:12px}
.detail .site-header{height:82px}.detail-top{margin:54px var(--edge) 0;display:flex;justify-content:space-between;gap:25px;font-size:12px;color:#999}.back-link:hover{color:#dedede}.case-title{margin:60px var(--edge) 64px;display:flex;justify-content:space-between;align-items:baseline;gap:40px}.case-title h1{font-size:clamp(42px,6.2vw,110px);line-height:1.1;letter-spacing:-.045em;font-weight:400;margin:0}.case-title>p{font-size:20px;line-height:1.7;letter-spacing:-.02em;margin:0}.case-intro{margin:0 var(--edge);display:grid;grid-template-columns:4fr 8fr;gap:50px;border-top:1px solid #333;padding-top:35px}.case-intro h2{font-weight:400;font-size:16px;margin:0}.case-credit{font-size:13px;color:#999;line-height:1.9;margin-top:35px}.case-credit p{margin:0 0 15px}.case-description{max-width:850px}.case-description p{font-size:18px;line-height:1.95;color:#bbb;margin:0 0 25px}.case-gallery{padding:0 var(--edge);margin-top:90px}.case-image{margin:0 auto 80px;width:100%;max-width:1360px}.case-image.portrait{max-width:760px}.case-image-button{display:block;width:100%;text-align:left}.case-image img{display:block;width:100%;height:auto}.case-image figcaption{display:flex;gap:30px;justify-content:space-between;margin-top:14px;font-size:12px;color:#999;line-height:1.6}.case-image figcaption>span:last-child{text-align:right}.next-project{margin:160px var(--edge) 0;border-top:1px solid #333;padding-top:35px}.next-project>p{font-size:13px;color:#999;margin:0 0 25px}.next-project>a{display:flex;justify-content:space-between;align-items:center;font-size:clamp(38px,6vw,96px);font-weight:400;letter-spacing:-.04em}.next-project>a>span{font-size:.8em}.detail-footer{margin:80px var(--edge) 0;border-top:1px solid #333;padding:25px 0 35px;display:flex;justify-content:space-between;font-size:12px;color:#aaa}.detail-footer button{font-size:12px}
.image-dialog{max-width:none;max-height:none;width:100vw;height:calc(var(--viewport-unit,1vh) * 100);margin:0;border:0;background:#000}.image-dialog[open]{display:flex;align-items:center;justify-content:center}.image-dialog-header{position:absolute;left:var(--edge);right:var(--edge);top:20px;display:flex;justify-content:space-between;font-size:12px;align-items:center}.image-dialog-header .dialog-close{position:static}.image-dialog>img{max-width:calc(100vw - 150px);max-height:calc(calc(var(--viewport-unit,1vh) * 100) - 150px);object-fit:contain;width:auto;height:auto;display:block}.image-prev,.image-next{position:absolute;top:50%;padding:20px;font-size:24px}.image-prev{left:20px}.image-next{right:20px}.image-dialog>p{position:absolute;left:var(--edge);right:var(--edge);text-align:center;bottom:20px;font-size:12px;color:#aaa;line-height:1.7}
@media(min-width:1700px){.site-header{height:76px}.works-stage{height:calc(calc(var(--viewport-unit,1vh) * 100) - var(--strip) - 76px - 84px)}.gallery-footer{height:84px}.cover-caption{font-size:17px}.site-header nav{font-size:12px}}
@media(min-width:761px) and (max-height:790px){:root{--strip:clamp(120px,calc(var(--viewport-unit,1vh) * 20),170px);--cover-height:calc(var(--viewport-unit,1vh) * 43);--spread:clamp(260px,27vw,430px)}.works-stage{min-height:360px}.cover-caption{font-size:13px;margin-top:15px}}
@media(max-width:1100px) and (min-width:761px){:root{--cover-height:36vw;--spread:29vw;--strip:15vw}.cover-caption{font-size:13px}.works-stage{min-height:400px}}
@media(max-width:760px){:root{--edge:22px;--strip:105px;--cover-height:min(calc(var(--viewport-unit,1vh) * 49),425px)}.site-header{height:68px;align-items:center}.wordmark{font-size:11px}.site-header nav{gap:19px;font-size:9px}.works-stage{height:calc(calc(var(--viewport-unit,1vh) * 100) - var(--strip) - 68px - 42px - 70px);min-height:370px;perspective:none;overflow:hidden}.gallery-scene{display:flex;align-items:center;gap:30px;padding:8px max(24px,calc((100vw - 270px)/2)) 35px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;transform:none!important;transform-style:flat;height:100%;width:100%}.gallery-scene::-webkit-scrollbar{display:none}.project-card{position:relative;left:auto;top:auto;flex:0 0 270px;width:270px;transform:none!important;scroll-snap-align:center}.cover-link{transform:none!important}.cover-face{height:var(--cover-height);max-height:365px;display:flex;justify-content:center;align-items:center}.cover-face img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.cover-caption{font-size:13px;margin-top:19px;gap:20px}.cover-caption>span:last-child{font-size:15px}.gallery-scene.is-focused .project-card:not(.is-active) .cover-face img{filter:brightness(.48)}.mobile-controls{display:flex;justify-content:center;gap:40px;align-items:center;height:42px;font-size:10px;color:#999}.mobile-controls button{font-size:19px;padding:6px 12px}.gallery-footer{height:70px;font-size:10px}.explore-hint{display:none}.gallery-footer button{font-size:9px}.dialog-body{padding:58px 27px 35px}.dialog-body h2{font-size:31px}.dialog-body>p:not(.eyebrow){font-size:15px}.dialog-services{gap:17px;font-size:11px;flex-wrap:wrap}.contact-content{grid-template-columns:1fr;gap:25px}.contact-mail{font-size:21px}.contact-content img{width:145px}.contact-content p{font-size:13px}.detail .site-header{height:70px}.detail-top{margin-top:35px;font-size:10px;align-items:baseline}.detail-top>span{max-width:145px;text-align:right;line-height:1.8}.case-title{display:block;margin-top:40px;margin-bottom:40px}.case-title h1{font-size:43px;letter-spacing:-2px}.case-title>p{font-size:17px;margin-top:19px}.case-intro{grid-template-columns:1fr;gap:25px;padding-top:25px}.case-credit{margin-top:18px;display:flex;gap:25px;font-size:11px}.case-description p{font-size:16px;line-height:1.9;margin-bottom:20px}.case-gallery{margin-top:45px}.case-image{margin-bottom:40px}.case-image figcaption{font-size:10px;gap:18px}.next-project{margin-top:80px;padding-top:25px}.next-project>a{font-size:38px}.detail-footer{margin-top:55px;font-size:10px}.detail-footer button{font-size:10px}.image-dialog>img{max-width:calc(100vw - 26px);max-height:calc(calc(var(--viewport-unit,1vh) * 100) - 170px)}.image-prev,.image-next{top:auto;bottom:51px;font-size:19px;padding:15px}.image-prev{left:12px}.image-next{right:12px}.image-dialog>p{bottom:12px;font-size:10px;margin-inline:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-content{opacity:1!important;transform:none!important}}

/* The studio continues below the project gallery. */
.editorial-section{margin:0 var(--edge);padding:145px 0 135px;display:grid;grid-template-columns:4fr 8fr;gap:70px;scroll-margin-top:30px}.chapter-label{font-size:11px;letter-spacing:.07em;color:#aaa;display:block;padding-top:4px}.chapter-number{font-size:clamp(170px,19vw,310px);line-height:.9;letter-spacing:-.09em;font-weight:400;margin:24px 0 90px;text-indent:-.04em}.rail-note{display:flex;gap:25px;justify-content:space-between;max-width:300px;border-top:1px solid #353535;padding-top:15px;font-size:10px;line-height:1.8;letter-spacing:.015em;color:#aaa}.rail-chinese{font-size:13px;line-height:1.9;color:#878787;margin-top:32px}.section-overline{font-size:10px;line-height:1.7;letter-spacing:.07em;color:#999;margin:0}.about-story h2,.contact-story h2{font-weight:400;font-size:clamp(45px,5.6vw,96px);line-height:1.02;letter-spacing:-.055em;margin:28px 0 36px}.story-lead{font-size:clamp(21px,1.85vw,30px);line-height:1.5;letter-spacing:-.02em;margin:0 0 38px;max-width:790px}.story-columns{display:grid;grid-template-columns:1fr 1fr;gap:35px}.story-columns p{font-size:16px;line-height:1.85;color:#999;margin:0}.alan-profile{display:grid;grid-template-columns:160px 1fr;gap:30px;border-top:1px solid #333;margin-top:50px;padding-top:24px}.alan-profile>div{display:flex;flex-direction:column;gap:12px;font-size:11px;line-height:1.7}.alan-profile>div>span:last-child{color:#888;font-size:9px}.alan-profile>p{font-size:14px;line-height:1.9;color:#999;margin:0}
.services-section{margin:0 var(--edge);padding:30px 0 125px;border-bottom:1px solid #333}.services-intro{display:grid;grid-template-columns:4fr 8fr;gap:70px;margin-bottom:65px}.services-intro h2{font-size:30px;font-weight:400;letter-spacing:-.04em;margin:0 0 17px}.services-intro>div>p{font-size:14px;line-height:1.85;color:#999;margin:0;max-width:530px}.services-list{border-top:1px solid #444}.service-row{display:grid;grid-template-columns:125px minmax(0,1fr) 235px;gap:28px;align-items:center;border-bottom:1px solid #444;padding:30px 0 28px;min-height:174px}.service-index{font-size:clamp(62px,6.3vw,104px);line-height:1;letter-spacing:-.07em}.service-name{display:flex;flex-direction:column;align-items:flex-start;gap:13px;font-size:clamp(35px,4.55vw,82px);line-height:1.08;letter-spacing:-.055em;color:#939393;transition:color .3s,transform .4s cubic-bezier(.2,.7,.25,1)}.service-name small{font-size:11px;letter-spacing:0;color:#888}.service-description{position:relative;font-size:12px;color:#999;line-height:1.9;padding-right:30px}.service-description>span{position:absolute;right:0;top:0;font-size:17px;color:#bcbcbc}.service-row:hover .service-name,.service-row:focus-visible .service-name{color:#d9d9d9;transform:translateX(9px)}.collaboration-note{display:grid;grid-template-columns:4fr 8fr;gap:70px;padding-top:35px}.collaboration-note>span{font-size:10px;letter-spacing:.04em;color:#888;padding-top:5px}.collaboration-note p{font-size:14px;color:#999;line-height:1.9;max-width:620px;margin:0}
.contact-section{padding-top:140px;padding-bottom:110px}.contact-story h2{font-size:clamp(42px,4.7vw,82px)}.contact-lead{font-size:19px;line-height:1.7;max-width:590px;color:#aaa;margin:0 0 40px}.email-link{display:flex;align-items:baseline;justify-content:space-between;gap:20px;font-size:clamp(27px,3.45vw,64px);letter-spacing:-.055em;white-space:nowrap;border-bottom:1px solid #777;padding-bottom:18px}.email-link>span{font-size:.8em;transition:transform .3s}.email-link:hover>span{transform:translate(4px,-4px)}.email-tools{display:flex;align-items:center;gap:20px;min-height:54px;font-size:9px;color:#999;letter-spacing:.025em}.email-tools button{margin-left:auto;font-size:9px;color:#bcbcbc;white-space:nowrap}.email-tools button>span{margin-left:12px}.email-tools [role=status]{font-size:10px}.contact-details{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:40px;margin-top:57px;align-items:start}.address-block p{font-size:16px;color:#aaa;line-height:1.75;margin:18px 0}.address-block .address-chinese{font-size:11px;color:#858585;line-height:1.9;margin-top:23px;max-width:380px}.back-top{display:inline-block;margin-top:40px;font-size:10px;color:#999;letter-spacing:.03em}.wechat-contact{text-align:left;width:180px}.wechat-contact>img{display:block;width:180px;height:auto}.wechat-contact>span{font-size:10px;display:block;color:#999;margin-top:14px}.studio-footer{margin:0 var(--edge);border-top:1px solid #333;padding:27px 0 32px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#999;letter-spacing:.02em}.qr-dialog{width:min(600px,calc(100vw - 40px))}.qr-dialog-body{padding:65px 44px 30px}.qr-dialog-body img{display:block;width:100%;height:auto}.qr-dialog-body p{font-size:11px;color:#aaa;text-align:center;margin-top:22px}

/* All case images share the same immersive width, preserving the original aspect ratio. */
.detail{--image-edge:clamp(12px,1.4vw,28px)}.case-gallery{padding:0 var(--image-edge);margin-top:65px}.case-image,.case-image.portrait{width:100%;max-width:none;margin:0 0 30px}.case-image img{width:100%;height:auto;object-fit:initial}.case-image figcaption{margin-top:11px;font-size:11px;color:#858585;padding:0 4px}
@media(max-width:1100px) and (min-width:761px){.editorial-section,.services-intro,.collaboration-note{grid-template-columns:3fr 8fr;gap:45px}.chapter-number{font-size:19vw}.rail-note{flex-direction:column;gap:12px}.story-columns{grid-template-columns:1fr;gap:24px}.service-row{grid-template-columns:95px minmax(0,1fr) 180px;gap:20px}.service-name{font-size:4.6vw}.service-description{font-size:10px}.contact-details{gap:25px;grid-template-columns:minmax(0,1fr) 150px}.wechat-contact,.wechat-contact>img{width:150px}.alan-profile{grid-template-columns:125px 1fr;gap:22px}}
@media(max-width:760px){.editorial-section{padding:80px 0 75px;grid-template-columns:1fr;gap:34px}.chapter-rail{display:grid;grid-template-columns:110px 1fr;gap:0 24px;align-items:end}.chapter-label{grid-column:1/-1;font-size:9px}.chapter-number{font-size:100px;margin:22px 0 0}.rail-note{font-size:8px;padding-top:12px;gap:12px;flex-direction:column;margin-bottom:5px;max-width:none}.rail-chinese{display:none}.about-story h2{font-size:53px;margin-top:18px;margin-bottom:28px}.section-overline{font-size:9px}.story-lead{font-size:21px;line-height:1.55;margin-bottom:27px}.story-columns{grid-template-columns:1fr;gap:20px}.story-columns p{font-size:15px;line-height:1.85}.alan-profile{grid-template-columns:100px 1fr;gap:20px;margin-top:33px;padding-top:21px}.alan-profile>div{font-size:10px}.alan-profile>div>span:last-child{font-size:8px}.alan-profile>p{font-size:13px;line-height:1.85}.services-section{padding:15px 0 70px}.services-intro{grid-template-columns:1fr;gap:21px;margin-bottom:34px}.services-intro h2{font-size:28px}.services-intro>div>p{font-size:13px}.service-row{grid-template-columns:48px minmax(0,1fr);gap:13px;padding:24px 0;min-height:0;align-items:start}.service-index{font-size:43px;padding-top:3px}.service-name{font-size:29px;line-height:1.18;letter-spacing:-1.35px;gap:10px}.service-name small{font-size:9px}.service-description{grid-column:2;font-size:10px;line-height:1.7;padding-right:25px;margin-top:4px}.service-description>br{display:initial}.service-description>span{font-size:16px}.collaboration-note{grid-template-columns:1fr;gap:15px;padding-top:25px}.collaboration-note>span{font-size:9px}.collaboration-note p{font-size:13px}.contact-section{padding-top:75px;padding-bottom:65px}.contact-story h2{font-size:37px;margin-top:21px;margin-bottom:26px;letter-spacing:-1.8px}.contact-lead{font-size:16px;line-height:1.8;margin-bottom:29px}.email-link{font-size:clamp(24px,6.7vw,40px);gap:12px;padding-bottom:15px;letter-spacing:-1px}.email-tools{gap:10px;font-size:8px;min-height:47px;flex-wrap:wrap}.email-tools button{font-size:8px}.email-tools [role=status]{font-size:9px}.contact-details{grid-template-columns:1fr;gap:35px;margin-top:34px}.address-block p{font-size:15px}.address-block .address-chinese{font-size:11px;max-width:340px}.back-top{margin-top:18px;font-size:9px}.wechat-contact,.wechat-contact>img{width:156px}.wechat-contact>span{font-size:9px}.studio-footer{padding:22px 0 27px;font-size:8px;flex-wrap:wrap;gap:15px}.studio-footer>span:nth-child(2){display:none}.qr-dialog-body{padding:58px 24px 25px}.detail{--image-edge:12px}.case-gallery{margin-top:35px}.case-image,.case-image.portrait{margin-bottom:20px}.case-image figcaption{font-size:9px;margin-top:9px}}

/* Uppercase editorial headings retain a clear measure on smaller screens. */
@media(max-width:760px){.about-story h2{font-size:clamp(30px,9.8vw,53px)}.contact-story h2{font-size:clamp(25px,7.6vw,37px);letter-spacing:-.04em}.service-name{font-size:clamp(22px,6.5vw,29px)}}

.case-description p.case-description-en{font-size:16px;line-height:1.85;color:#999;margin-top:32px} @media(max-width:760px){.case-description p.case-description-en{font-size:14px;margin-top:27px}}

/* Flat, overlapping project covers; captions stay level. */
.works-stage{perspective:none;--stack-spread:clamp(185px,17vw,330px);--cover-height:clamp(280px,calc(var(--viewport-unit,1vh) * 43),490px)}
.gallery-scene{transform:none!important;transform-style:flat;will-change:auto}
.project-card{top:49%;transform-style:flat;transform:translate(-50%,-50%) translate(var(--stack-x),var(--stack-y));z-index:var(--layer)}
.card-1{--stack-x:calc(-1 * var(--stack-spread));--stack-y:-18px;--angle:-8deg;--layer:1}
.card-2{--stack-x:0px;--stack-y:20px;--angle:2deg;--layer:2}
.card-3{--stack-x:var(--stack-spread);--stack-y:-5px;--angle:9deg;--layer:3}
.project-card.is-active{z-index:10}
.cover-link{transform:none;transform-style:flat}
.project-card.is-active .cover-link{transform:translateY(-10px)}
.cover-face{transform:rotate(var(--angle));box-shadow:0 14px 42px #0009;outline:1px solid #ffffff12;transition:transform .45s}
.cover-caption{transform:none;margin-top:39px;position:relative}
.alan-profile>p{max-width:44em;line-height:1.95;text-wrap:pretty}
.story-columns p{ text-wrap:pretty }
@media(max-width:1100px) and (min-width:761px){.works-stage{--stack-spread:21vw;--cover-height:36vw}}
@media(max-width:760px){
 .works-stage{--stack-spread:22vw;min-height:370px}
 .gallery-scene{display:block;overflow:visible;padding:0;scroll-snap-type:none}
 .project-card{position:absolute;left:50%;top:48%;width:43vw;max-width:245px;transform:translate(-50%,-50%) translate(var(--stack-x),var(--stack-y))!important;scroll-snap-align:none}
 .card-1{--stack-y:-25px}.card-2{--stack-y:14px}.card-3{--stack-y:-10px}
 .cover-face{height:auto;max-height:none;display:block}
 .cover-face img{display:block;width:100%;height:auto;max-height:none;max-width:none;object-fit:initial}
 .cover-caption{font-size:11px;letter-spacing:-.03em;gap:0;margin-top:25px}
 .cover-caption>span:last-child{display:none}
 .alan-profile{grid-template-columns:1fr;gap:20px}
 .alan-profile>div{flex-direction:row;gap:25px;align-items:baseline}
 .alan-profile>p{font-size:13px;max-width:44em}
}
.cover-caption{justify-content:flex-start;gap:16px}
.story-columns p[lang="zh-CN"],.alan-profile>p{ text-wrap:balance }
@media(max-width:760px){
 .project-card{height:calc(58vw + 45px)}
 .cover-caption{position:absolute;top:calc(100% + 12px - var(--stack-y));left:0;width:100%;margin-top:0;gap:0}
}
/* Anchor the collage to the stage even when viewport sizing falls back. */
.gallery-scene{position:absolute;inset:0;height:auto}
.works-stage{min-height:calc(var(--cover-height) + 115px)}
@media(max-width:760px){
 .works-stage{min-height:max(370px,calc(min(58vw,330px) + 160px))}
 .project-card{height:calc(min(58vw,330px) + 45px)}
}