:root{--color-bg: #0a0a0a;--color-surface: #141414;--color-surface-elevated: #1e1e1e;--color-text: #f5f5f5;--color-text-muted: #a8a8a8;--color-accent: #d4a373;--color-border: #2a2a2a;--font-display: Georgia, "Times New Roman", "Songti SC", "SimSun", serif;--font-display-sans: "Arial Narrow", "Roboto Condensed", "Helvetica Neue", Arial, sans-serif;--font-body: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 48px;--space-2xl: 80px;--space-3xl: 120px;--radius-sm: 4px;--radius-md: 8px;--scale: 1;--type: 1;--caption-zh: clamp(10px, calc(21.6px * var(--scale)), 1.35rem);--caption-en: clamp(8px, calc(11.2px * var(--scale)), .7rem);--caption-pad: max(4px, calc(8px * var(--scale)));--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .6s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--keep-out-ease: .8s var(--ease-out);--vv-top: 0px;--vv-bottom: 0px;--vv-h: 100vh;--safe-top: max(env(safe-area-inset-top, 0px), var(--vv-top));--safe-bottom: max(env(safe-area-inset-bottom, 0px), var(--vv-bottom));--safe-left: max(env(safe-area-inset-left, 0px), 0px);--safe-right: max(env(safe-area-inset-right, 0px), 0px);--max-width: 1400px;--noise-texture: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:calc(16px * var(--type))}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{margin:0;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}.loading-overlay{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;background-color:#0a0a0a}.loading-geo{width:clamp(220px,42vw,320px);height:clamp(220px,42vw,320px)}.loading-ray{stroke:#ffffff0a;stroke-width:.3}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-text);color:var(--color-bg);padding:var(--space-sm) var(--space-md);z-index:100;transition:top var(--duration-fast) var(--ease-out)}.skip-link:focus{top:0}.nav{position:fixed;top:0;left:0;right:0;z-index:130;display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);padding-top:calc(var(--safe-top) + var(--space-md));background:transparent;transition:background-color var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out);border-bottom:1px solid transparent}.nav:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to bottom,#0a0a0ae0,#0a0a0a8c 55%,#0a0a0a00);pointer-events:none;opacity:1;transition:opacity var(--duration-normal) var(--ease-out)}.nav.is-scrolled:before{opacity:0}.nav.is-scrolled{background-color:#0a0a0aeb;border-bottom-color:var(--color-border);backdrop-filter:blur(8px)}.nav-logo,.nav-toggle{position:relative;z-index:2}.nav-logo{font-family:var(--font-display);font-size:1.25rem;font-weight:600;color:var(--color-text);text-decoration:none;letter-spacing:.02em}.nav-links{display:flex;gap:var(--space-lg);list-style:none;margin:0;padding:0}.nav-link{font-family:var(--font-body);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}.nav-link:hover,.nav-link.is-active{color:var(--color-text)}.nav-link:focus-visible{outline:1px solid var(--color-accent);outline-offset:2px;border-radius:2px}.nav-toggle{display:none;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:none;border:none;width:44px;height:44px;padding:0;margin-right:-8px;cursor:pointer;-webkit-tap-highlight-color:transparent}.nav-toggle-bar{display:block;width:24px;height:1px;background-color:var(--color-text);transition:transform var(--duration-fast) var(--ease-out)}@media(max-width:767px){.nav-toggle{display:flex}.nav-links{position:fixed;inset:0;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xl);background-color:var(--color-bg);opacity:0;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out);padding:88px var(--space-lg) var(--space-xl);overflow-y:auto;-webkit-overflow-scrolling:touch}.nav-links.is-open{opacity:1;pointer-events:auto}.nav-link{font-size:1rem;display:block;padding:var(--space-md) var(--space-lg)}}.hero-canvas{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:120;pointer-events:none;transition:opacity .4s ease-out}.hero-cracks{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:119;pointer-events:none}.hero-text-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:122;pointer-events:none;will-change:transform;mix-blend-mode:difference;transform:translateY(-12vh)}body.is-hero .hero-canvas{z-index:135}body.is-hero .hero-text-overlay{z-index:140}body.is-hero .hero-content,body.is-hero .hero-meta,body.is-hero .hero-title{pointer-events:none}.nav.is-open{z-index:190}.hero-scroller{position:relative;z-index:45}.scroll-cue{position:absolute;bottom:calc(var(--safe-bottom) + 32px);left:50%;transform:translate(-50%);z-index:10;pointer-events:none}.scroll-cue-line{display:block;width:1px;height:48px;background:linear-gradient(to bottom,transparent,var(--color-text-muted));animation:scrollCuePulse 2s ease-in-out infinite}@keyframes scrollCuePulse{0%,to{opacity:.3;transform:scaleY(.6);transform-origin:top}50%{opacity:.8;transform:scaleY(1);transform-origin:top}}@media(prefers-reduced-motion:reduce){.scroll-cue-line{animation:none;opacity:.5}}.hero{position:relative;width:100%;height:100vh;height:100dvh}.hero-main{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:grid;align-items:end;padding:var(--space-lg);padding-top:80px}.hero-canvas canvas{display:block;width:100%!important;height:100%!important}.hero-content{position:relative;z-index:2;width:100%;max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:var(--space-sm);height:60vh;padding:max(calc(72px * var(--scale)),64px) var(--space-lg) 0;padding-top:calc(max(calc(72px * var(--scale)),64px) + var(--safe-top, 0px));pointer-events:auto;align-items:start}.hero-meta{grid-row:1;justify-self:end;align-self:start;margin-top:var(--space-lg);pointer-events:auto}.hero-meta-line{font-family:var(--font-body);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);line-height:1.8;margin:0}.hero-title{align-self:start;justify-self:end;margin:0;border:none;padding:0;padding-right:clamp(1.5rem,4vw,4rem);pointer-events:auto;font-family:var(--font-display-sans);font-size:min(15vw,calc(256px * var(--type)));font-weight:700;line-height:.82;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text)}.hero-title-line{display:block;width:fit-content;margin-left:auto}.hero-title-line:first-child{background-color:#1d4ed8;padding:.15em .25em;margin-left:-4vw;font-size:1.2em;--cast-offset: -50px}.hero-title-line--indent{padding-left:3.5ch}.hero-meta-line,.hero-title-line{opacity:0;transform:translateY(20px)}.hero-content.is-revealed .hero-meta-line{animation:heroTextWipe .6s var(--ease-out) forwards}.hero-content.is-revealed .hero-meta-line:nth-child(1){animation-delay:0ms}.hero-content.is-revealed .hero-meta-line:nth-child(2){animation-delay:80ms}.hero-content.is-revealed .hero-meta-line:nth-child(3){animation-delay:.16s}.hero-content.is-revealed .hero-title-line{animation:heroTextWipe .7s var(--ease-out) forwards}.hero-content.is-revealed .hero-title-line:first-child{animation:heroTextWipeCast .7s var(--ease-out) forwards}.hero-content.is-revealed .hero-title-line:nth-child(1){animation-delay:.1s}.hero-content.is-revealed .hero-title-line:nth-child(2){animation-delay:.2s}.hero-content.is-exiting .hero-meta-line{animation:heroTextWipeOut .5s var(--ease-out) both}.hero-content.is-exiting .hero-meta-line:nth-child(3){animation-delay:0ms}.hero-content.is-exiting .hero-meta-line:nth-child(2){animation-delay:60ms}.hero-content.is-exiting .hero-meta-line:nth-child(1){animation-delay:.12s}.hero-content.is-exiting .hero-title-line{animation:heroTextWipeOut .6s var(--ease-out) both}.hero-content.is-exiting .hero-title-line:first-child{animation:heroTextWipeOutCast .6s var(--ease-out) both}.hero-content.is-exiting .hero-title-line:nth-child(2){animation-delay:0ms}.hero-content.is-exiting .hero-title-line:nth-child(1){animation-delay:60ms}@keyframes heroTextWipe{0%{opacity:0;clip-path:inset(0 100% 0 0)}60%{opacity:1}to{opacity:1;clip-path:inset(0 0 0 0);transform:translateY(0)}}@keyframes heroTextWipeOut{0%{opacity:1;clip-path:inset(0 0 0 0);transform:translateY(0)}40%{opacity:1}to{opacity:0;clip-path:inset(0 100% 0 0);transform:translateY(20px)}}@keyframes heroTextWipeOutCast{0%{opacity:1;clip-path:inset(0 0 0 0);transform:translateY(var(--cast-offset, 0px))}40%{opacity:1}to{opacity:0;clip-path:inset(0 100% 0 0);transform:translateY(calc(var(--cast-offset, 0px) + 20px))}}@keyframes heroTextWipeCast{0%{opacity:0;clip-path:inset(0 100% 0 0)}60%{opacity:1}to{opacity:1;clip-path:inset(0 0 0 0);transform:translateY(var(--cast-offset, 0px))}}.hero-noise{position:absolute;inset:0;pointer-events:none;background-image:var(--noise-texture);opacity:.06}.hero-card{flex:1;position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg);background-color:var(--color-surface);color:inherit;text-decoration:none;cursor:pointer;overflow:hidden;transition:background-color var(--duration-fast) var(--ease-out)}.hero-card:hover{background-color:var(--color-surface-elevated)}.hero-card:focus-visible{outline:1px solid var(--color-accent);outline-offset:-1px}.hero-card-info{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-xs);max-width:55%}.hero-card-index{font-family:var(--font-display-sans);font-size:.85rem;letter-spacing:.2em;color:var(--color-accent);margin:0 0 var(--space-xs)}.hero-card-label{font-family:var(--font-body);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.hero-card-title{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--color-text);line-height:1.1;margin:0}.hero-card-date{font-family:var(--font-body);font-size:.7rem;color:var(--color-text-muted);letter-spacing:.05em;margin:0}.hero-card-media{position:absolute;right:0;bottom:0;width:45%;height:100%;overflow:hidden;opacity:.75;transition:opacity var(--duration-fast) var(--ease-out)}.hero-card:hover .hero-card-media{opacity:1}.hero-card-still{width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:scale(1.02);transform-origin:center bottom;transition:transform var(--duration-slow) var(--ease-out)}.hero-card:hover .hero-card-still{transform:scale(1.08)}.hero-card-arrow{position:relative;z-index:1;font-size:1.25rem;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.hero-card:hover .hero-card-arrow{color:var(--color-accent);transform:translate(4px)}.hero-marquee{position:relative;z-index:45;width:100%;overflow:hidden;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-bg)}.hero-marquee-track{display:flex;width:max-content;gap:0;--marquee-shift: -50%;--marquee-duration: 28s;animation:marqueeScroll var(--marquee-duration) linear infinite;will-change:transform}.hero-marquee:hover .hero-marquee-track{animation-play-state:paused}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(var(--marquee-shift))}}.hero-marquee .hero-card{flex:none;width:340px;min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg);border-right:1px solid var(--color-border);background-color:var(--color-surface);transition:background-color var(--duration-fast) var(--ease-out)}.hero-marquee .hero-card:hover{background-color:var(--color-surface-elevated)}.hero-marquee .hero-card-info{max-width:55%}.hero-marquee .hero-card-media{position:relative;width:72px;height:64px}.hero-marquee .hero-card-arrow{display:none}@media(max-width:960px){.hero-main{min-height:480px}}.section{padding:var(--space-3xl) var(--space-lg);max-width:var(--max-width);margin:0 auto}.section-header{margin-bottom:var(--space-xl)}.section-title{font-family:var(--font-display);font-size:clamp(calc(20px * var(--type)),4vw,calc(48px * var(--type)));font-weight:600;color:var(--color-text);margin:0 0 var(--space-sm)}.lightbox{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000f0;opacity:0;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out)}.lightbox.is-open{opacity:1;pointer-events:auto}.lightbox-image{max-width:90vw;max-height:80vh;object-fit:contain;opacity:0;transform:scale(.965);transition:opacity .45s var(--ease-out),transform .45s var(--ease-out)}.lightbox-image.is-shown{opacity:1;transform:scale(1)}.lightbox-caption{margin-top:var(--space-md);font-family:var(--font-display);font-size:1.25rem;color:var(--color-text-muted);opacity:0;transform:translateY(8px);transition:opacity .5s var(--ease-out) .12s,transform .5s var(--ease-out) .12s}.lightbox.is-open .lightbox-caption{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.lightbox-image,.lightbox-caption{transition:none;opacity:1;transform:none}}.lightbox-close{position:absolute;top:var(--space-lg);right:var(--space-lg);font-size:2rem;color:var(--color-text);background:none;border:none;cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.lightbox-close:hover{color:var(--color-accent)}.lightbox-close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);font-size:3rem;color:var(--color-text);background:none;border:none;cursor:pointer;padding:var(--space-md);transition:color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out);line-height:1}.lightbox-nav:hover{color:var(--color-accent)}.lightbox-nav:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.lightbox-prev{left:var(--space-lg)}.lightbox-next{right:var(--space-lg)}.about,.contact{border-top:1px solid var(--color-border)}.footer{padding:var(--space-2xl) var(--space-lg);border-top:1px solid var(--color-border)}.footer-inner{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-brand{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--color-text);letter-spacing:.02em}.footer-copy{font-size:.7rem;color:var(--color-text-muted);letter-spacing:.05em}@media(max-width:640px){.footer-inner{flex-direction:column;gap:var(--space-md);text-align:center}}.runway{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden;background-color:var(--color-bg)}.runway-track{display:flex;align-items:stretch;height:100%;width:max-content;will-change:transform}.hall{position:relative;width:100vw;height:100%;flex-shrink:0;overflow:hidden}.hall-colonnade{--hall-accent: #d4a373}.hall-filmstrip{--hall-accent: #7d94ad}.hall-breathing{--hall-accent: #e8e4da}.hall-ghost{position:absolute;top:4vh;right:5vw;z-index:0;font-family:var(--font-display-sans);font-size:min(26vw,calc(384px * var(--type)));line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);pointer-events:none;user-select:none}.hall-head{position:absolute;z-index:6;pointer-events:none;display:flex;flex-direction:column;gap:var(--space-sm);--space-2xl: max(calc(80px * var(--scale)), calc(var(--nav-h, 56px) + 20px));--space-xl: calc(48px * var(--scale));transition:top var(--keep-out-ease),bottom var(--keep-out-ease)}.hall-head-tl{top:var(--space-2xl);left:var(--space-xl)}.hall-head-br{bottom:max(var(--space-xl),calc(24px + 40px + 12px + var(--safe-bottom, 0px)));right:var(--space-xl);text-align:right;align-items:flex-end}.hall-head-bc{bottom:calc(5vh + var(--safe-bottom, 0px));left:5vw;width:min(88vw,calc(749px * var(--scale)));text-align:center;align-items:center}.hall-kicker{font-family:var(--font-body);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--hall-accent, var(--color-accent));margin:0}.hall-title{font-family:var(--font-display-sans);font-size:clamp(calc(24px * var(--type)),5vw,calc(64px * var(--type)));font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--color-text);line-height:1;margin:0}.hall-subtitle{font-family:var(--font-body);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.hall-desc{font-family:var(--font-body);font-size:.75rem;color:var(--color-text-muted);line-height:1.8;max-width:280px;margin:0}.work-caption{display:flex;flex-direction:column;gap:2px;margin:var(--space-sm) 0 0}.work-caption-zh{font-family:var(--font-display);font-size:var(--caption-zh);font-weight:600;color:var(--hall-accent, var(--color-accent));line-height:1.3}.work-caption-en{font-family:var(--font-body);font-size:var(--caption-en);color:var(--color-text-muted);letter-spacing:.05em}.hall-gap{width:60vw;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md)}.gap-numeral{font-family:var(--font-display-sans);font-size:min(16vw,calc(224px * var(--type)));line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.12);margin:0}.gap-name{font-family:var(--font-body);font-size:.85rem;letter-spacing:.5em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.gap-line{font-family:var(--font-body);font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.colonnade-grid{position:absolute;left:min(6vw,calc(115px * var(--scale)));top:50%;transform:translateY(-46%);width:min(90vw,calc(691px * var(--scale)));display:flex;flex-wrap:wrap;align-content:center;gap:calc(17px * var(--scale));align-items:start;z-index:2;transition:top var(--keep-out-ease),bottom var(--keep-out-ease),transform var(--keep-out-ease)}.colonnade-grid figure{position:relative;margin:0;cursor:pointer;overflow:hidden;background:var(--color-surface);aspect-ratio:var(--work-aspect, 3 / 2);transition:border-color .45s var(--ease-out)}.colonnade-grid figure.is-active{border-color:#d4a373d9}.colonnade-grid figure.is-active img{filter:saturate(1)}.colonnade-grid figure:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.colonnade-grid figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease-out)}.colonnade-grid figure:hover img{transform:scale(1.04)}.colonnade-main{border:1px solid var(--color-border);padding:6px}.colonnade-main img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.colonnade-figure .work-caption{position:absolute;bottom:0;left:0;right:0;padding:var(--caption-pad);background:linear-gradient(transparent,#000000a6);opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease;pointer-events:none;margin:0;max-height:none;overflow:visible}.colonnade-figure.is-active .work-caption{opacity:1;transform:translateY(0)}.colonnade-main .work-caption{padding:max(6px,calc(16px * var(--scale)));background:linear-gradient(transparent 20%,#000000b3 50%)}.colonnade-side{aspect-ratio:var(--work-aspect, 3 / 2);border:1px solid var(--color-border);overflow:hidden}.colonnade-side img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}.colonnade-grid>figure:nth-of-type(2n){margin-top:0}.hall-filmstrip:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background-image:var(--noise-texture);opacity:.09}.filmstrip-frame{position:absolute;left:0;top:50%;transform:translateY(-58%);width:100%;z-index:2;transition:top var(--keep-out-ease),transform var(--keep-out-ease)}.filmstrip-track{display:flex;align-items:center;gap:min(10vw,calc(58px * var(--scale)));width:max-content;padding:3.2vh 0;border-top:1px solid rgba(125,148,173,.18);border-bottom:1px solid rgba(125,148,173,.18);will-change:transform}.film-frame{flex-shrink:0;width:min(62vw,calc(346px * var(--scale)));margin:0;padding:6px;cursor:pointer;overflow:hidden;background:var(--color-surface);border:1px solid rgba(125,148,173,.22);opacity:.4;transform:rotate(var(--tilt, 0deg)) scale(.94);transition:opacity .45s var(--ease-out),transform .45s var(--ease-out),border-color .45s var(--ease-out);aspect-ratio:var(--work-aspect, 3 / 4)}.film-frame:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.film-frame img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.film-frame.is-active{opacity:1;transform:rotate(var(--tilt, 0deg)) scale(1);border-color:#7d94ad8c}.breath-stage{position:absolute;left:min(5vw,calc(72px * var(--scale)));top:50%;transform:translateY(-52%);width:min(90vw,calc(749px * var(--scale)));height:auto;aspect-ratio:3 / 2;z-index:2;transition:top var(--keep-out-ease),bottom var(--keep-out-ease),transform var(--keep-out-ease)}.breath-frame{position:absolute;inset:0;margin:0;overflow:hidden;opacity:0;pointer-events:none;transition:opacity 1.1s var(--ease-in-out);box-shadow:0 30px 90px #00000073,0 0 80px #e8e4da0d}.breath-frame:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.breath-frame img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.09);transition:transform 7s ease-out}.breath-frame.is-active{opacity:1;pointer-events:auto;cursor:pointer}.breath-frame.is-active img{transform:scale(1)}.chapter-rail{position:fixed;right:20px;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;gap:var(--space-lg);opacity:0;pointer-events:none;transition:opacity .4s var(--ease-out)}.chapter-rail.is-visible{opacity:1;pointer-events:auto}.rail-item{display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:none;padding:0;cursor:pointer}.rail-item:focus-visible{outline:1px solid var(--color-accent);outline-offset:4px;border-radius:2px}.rail-numeral{font-family:var(--font-display-sans);font-size:.9rem;letter-spacing:.1em;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out)}.rail-bar{width:2px;height:22px;background:var(--color-border);transition:background var(--duration-fast) var(--ease-out)}.rail-name{writing-mode:vertical-rl;font-family:var(--font-body);font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-text-muted);max-height:0;overflow:hidden;opacity:0;transition:opacity var(--duration-normal) var(--ease-out)}.rail-item:hover .rail-numeral{color:var(--color-text)}.rail-item.is-active .rail-numeral{color:var(--color-accent)}.rail-item.is-active .rail-bar{background:var(--color-accent)}.rail-item.is-active .rail-name{max-height:140px;opacity:1}.hero-meta-tagline{color:var(--color-accent)}.about-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:var(--space-3xl);align-items:start}.about-aside{position:sticky;top:120px}.about-kicker{font-family:var(--font-body);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-accent);margin:0}.about-name{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4.5rem);font-weight:700;color:var(--color-text);line-height:1.05;margin:var(--space-sm) 0 var(--space-lg)}.about-quote{margin:0;padding-left:var(--space-lg);border-left:1px solid var(--color-accent)}.about-quote p{font-family:var(--font-display);font-size:1.15rem;font-style:italic;line-height:1.9;color:var(--color-text);margin:0}.about-lead{font-size:1.05rem;line-height:2;color:var(--color-text-muted);max-width:58ch;margin:0 0 var(--space-xl)}.about-lead:first-letter{font-family:var(--font-display);font-size:3.2em;float:left;line-height:.85;padding-right:12px;color:var(--color-text)}.about-heading{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0 0 var(--space-md)}.about-gear{list-style:none;margin:0 0 var(--space-2xl);padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm) var(--space-xl)}.about-gear li{font-size:.85rem;color:var(--color-text-muted);padding-left:var(--space-md);position:relative}.about-gear li:before{content:"·";position:absolute;left:0;color:var(--color-accent)}.about-stats-row{display:flex;gap:var(--space-2xl);border-top:1px solid var(--color-border);padding-top:var(--space-xl)}.about-stat{display:flex;flex-direction:column;gap:4px}.about-stat-number{font-family:var(--font-display-sans);font-size:clamp(1.8rem,3vw,2.6rem);font-weight:400;color:var(--color-text);line-height:1;letter-spacing:.04em}.about-stat-label{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}@media(max-width:960px){.about-grid{grid-template-columns:1fr;gap:var(--space-xl)}.about-aside{position:static}}.contact-minimal{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-3xl) 0;gap:var(--space-md)}.contact-kicker{font-family:var(--font-body);font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-text-muted);margin:0}.contact-big{font-family:var(--font-display);font-size:clamp(calc(24px * var(--type)),8vw,calc(112px * var(--type)));font-weight:700;color:var(--color-text);line-height:1.1;margin:0}.contact-big-en{font-family:var(--font-display);font-style:italic;font-size:clamp(calc(17.6px * var(--type)),2vw,calc(24px * var(--type)));color:var(--color-text-muted);margin:0 0 var(--space-lg)}.contact-email{font-family:var(--font-display);font-size:clamp(calc(19.2px * var(--type)),2.4vw,calc(28.8px * var(--type)));color:var(--color-text);text-decoration:none;border-bottom:1px solid var(--color-accent);padding-bottom:4px;transition:color var(--duration-fast) var(--ease-out)}.contact-email:hover{color:var(--color-accent)}.contact-socials{display:flex;align-items:center;gap:var(--space-md);margin-top:var(--space-lg)}.contact-social{font-family:var(--font-body);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);text-decoration:none;border-bottom:1px solid transparent;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.contact-social:hover{color:var(--color-text);border-bottom-color:var(--color-accent)}.contact-social-sep{color:var(--color-border)}.footer-nav{display:flex;gap:var(--space-lg)}.footer-nav a{font-family:var(--font-body);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}.footer-nav a:hover{color:var(--color-text)}.hall-still,.is-static-mode .hero-canvas{display:none}.is-static-mode .hero{height:auto;min-height:100svh}.is-static-mode .hero-text-overlay{position:absolute;height:100svh;transform:none!important;mix-blend-mode:normal;will-change:auto}.is-static-mode .chapter-rail{display:none}.is-static-mode .runway{height:auto;overflow:visible}.is-static-mode .runway-track{flex-direction:column;width:auto;transform:none!important}.is-static-mode .hall{width:100%;height:auto;min-height:100vh;min-height:100svh;padding:var(--space-2xl) var(--space-lg)}.is-static-mode .hall-gap{width:100%;min-height:30vh}.is-static-mode .hall-ghost{font-size:clamp(6rem,30vw,12rem)}.is-static-mode .hall-head{position:static;width:auto;text-align:left;align-items:flex-start;margin-bottom:var(--space-xl)}.is-static-mode .hall-still{display:none}.is-static-mode .colonnade-grid{position:static;transform:none;width:100%;margin-top:var(--space-xl);align-content:flex-start}.is-static-mode .colonnade-main{flex-basis:100%!important}.is-static-mode .colonnade-grid>figure{transform:none!important;margin-top:0}.is-static-mode .colonnade-figure .work-caption{opacity:1;transform:none}.is-static-mode .filmstrip-frame{position:static;transform:none}.is-static-mode .filmstrip-track{transform:none!important;flex-wrap:wrap;width:100%;border:none;gap:var(--space-md)}.is-static-mode .film-frame{width:calc(50% - var(--space-md))!important;opacity:1;transform:none}.is-static-mode .breath-stage{position:static;transform:none;width:100%;height:auto}.is-static-mode .breath-frame{position:relative;opacity:1;height:auto;aspect-ratio:var(--work-aspect, 3 / 2);margin-bottom:var(--space-lg);box-shadow:none}.is-static-mode .breath-frame img{transform:none}.is-static-mode body{overflow-x:hidden}html.has-custom-cursor,html.has-custom-cursor *{cursor:none!important}html.has-custom-cursor input,html.has-custom-cursor textarea{cursor:auto!important}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;user-select:none;z-index:99999;opacity:0}.cursor-dot{width:6px;height:6px;border-radius:50%;background:#fff;mix-blend-mode:difference}.cursor-ring{width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(255,255,255,.4);mix-blend-mode:difference}.bgm-toggle{position:fixed;bottom:calc(var(--safe-bottom) + 24px);right:24px;z-index:99998;width:40px;height:40px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:#00000040;backdrop-filter:blur(4px);cursor:pointer;transition:border-color .3s ease,background .3s ease}.bgm-toggle:hover{border-color:#d4a37399}.bgm-icon{width:18px;height:18px;color:var(--color-text-muted);transition:color .3s ease}.bgm-toggle:hover .bgm-icon{color:var(--color-text)}.bgm-slash{opacity:1;transition:opacity .3s ease}.bgm-toggle.is-on .bgm-icon{color:#d4a373}.bgm-toggle.is-on .bgm-slash{opacity:0}@media(max-width:767px){.nav{padding:14px 18px}.scroll-cue{bottom:20px}.hero-marquee .hero-card{width:min(82vw,320px);min-height:112px;padding:18px}.hero-marquee .hero-card-info{max-width:none}.hero-marquee .hero-card-media{display:none}.section{padding:80px 18px}.about-gear{grid-template-columns:1fr}.about-stats-row,.contact-socials{flex-wrap:wrap;justify-content:center;gap:20px}.contact-minimal{padding:72px 0}.contact-email{max-width:100%;overflow-wrap:anywhere}}.hall.is-sculpture-reserved{--sky-top: calc(var(--nav-h, 56px) + 20px);--sky-bottom: calc(100% - var(--reserve-t, 0px) + 12px + var(--safe-bottom, 0px));--below-statue: calc(100% - var(--reserve-b, 0px) + 10px)}.hall.is-sculpture-reserved .colonnade-grid{top:var(--sky-top);bottom:var(--sky-bottom);transform:none;grid-template-rows:repeat(2,1fr);align-items:stretch}.hall.is-sculpture-reserved .colonnade-grid figure,.hall.is-sculpture-reserved .colonnade-side{height:auto;aspect-ratio:var(--work-aspect, 3 / 2)}.hall.is-sculpture-reserved .colonnade-grid>figure:nth-of-type(2n){margin-top:0}.hall.is-sculpture-reserved .colonnade-main img{aspect-ratio:auto}.hall.is-sculpture-reserved .filmstrip-frame{top:calc((var(--sky-top) + var(--reserve-t, 0px)) / 2);transform:translateY(-50%);display:flex;align-items:center;max-height:calc(var(--reserve-t, 0px) - var(--sky-top));overflow:hidden}.hall.is-sculpture-reserved .filmstrip-track{padding-block:0;flex:none}.hall.is-sculpture-reserved .breath-stage{top:var(--sky-top);bottom:var(--sky-bottom);height:auto;transform:none}.hall.is-sculpture-reserved .hall-head{top:var(--below-statue);bottom:calc(var(--safe-bottom, 0px) + 8px);gap:3px;overflow:hidden}.hall.is-sculpture-reserved .hall-head-br{left:var(--space-xl);right:auto;text-align:left;align-items:flex-start}.hall.is-sculpture-reserved .hall-head-bc{left:var(--space-xl);right:calc(var(--space-xl) + 72px);width:auto}.hall.is-sculpture-reserved .hall-desc{max-height:max(0px,calc(var(--reserve-b, 0px) - 100px));overflow:hidden}.hall.is-sculpture-reserved .colonnade-figure .work-caption{max-height:62%}.hall.is-sculpture-reserved .colonnade-side .work-caption-zh{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hall.is-sculpture-reserved .colonnade-side .work-caption-en{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.colonnade-grid{display:block;width:min(88vw,calc(800px * var(--scale)));aspect-ratio:3 / 2;transform:translateY(-40%)}.colonnade-grid>figure{position:absolute;height:auto;padding:0;aspect-ratio:var(--work-aspect, 3 / 2);border:none;box-shadow:0 12px 30px #00000040}.colonnade-grid>figure:nth-child(1){left:0;top:12%;width:46%}.colonnade-grid>figure:nth-child(2){left:53%;top:0;width:28%}.colonnade-grid>figure:nth-child(3){left:68%;top:34%;width:32%}.colonnade-grid>figure:nth-child(4){left:0;top:66%;width:26%}.colonnade-grid>figure:nth-child(5){left:31%;top:70%;width:26%}.colonnade-grid>figure:nth-child(6){left:48%;top:39%;width:17%}.colonnade-grid>figure:nth-child(7){left:63%;top:68%;width:32%}.hall.is-sculpture-reserved .colonnade-grid{bottom:auto;width:min(62vw,calc((100dvh - var(--nav-h, 56px) - 150px) * 1.5));top:calc(var(--sky-top) + max(20px,(100dvh - var(--nav-h, 56px) - min(62vw,(100dvh - var(--nav-h, 56px) - 150px) * 1.5) * 2 / 3 - 160px) / 2));aspect-ratio:3 / 2}.filmstrip-track{align-items:center}.film-frame:nth-child(4n+2){translate:0 -8%}.film-frame:nth-child(4n+3){translate:0 9%}.film-frame:nth-child(4n){translate:0 -4%}.is-static-mode .colonnade-grid{position:relative;aspect-ratio:3 / 2;margin-bottom:var(--space-xl)}.is-static-mode .colonnade-grid>figure{position:absolute}.is-static-mode .filmstrip-track{align-items:center}.colonnade-grid>figure{container-type:inline-size}.colonnade-grid>figure.is-active{outline:2px solid rgba(212,163,115,.95);outline-offset:3px}.colonnade-grid .colonnade-figure .work-caption{padding:3cqw 4cqw;max-height:36%;gap:1cqw;background:linear-gradient(transparent,#0000009e)}.colonnade-grid .work-caption-zh{font-size:clamp(8px,5.5cqw,20px);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.colonnade-grid .work-caption-en{font-size:clamp(6px,3cqw,11px);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
