.reel-root{position:relative;color:var(--color-text);--reel-ease:cubic-bezier(0.22,1,0.36,1);transition:color .9s var(--reel-ease)}.reel-root :is(h1,h2,h3,p,span,a,em,figcaption,div){transition:color .9s var(--reel-ease),background-color .9s var(--reel-ease),border-color .9s var(--reel-ease)}.reel-root.is-dark{color:var(--color-dark-text)}.reel-root.is-dark .reel-cap .t,.reel-root.is-dark :is(.reel-h1,.reel-title-zh,.reel-coda-title){color:var(--color-dark-text)}.reel-root.is-dark .reel-cap .s,.reel-root.is-dark :is(.reel-lead,.reel-meta,.reel-cue,.reel-title-note,.reel-coda-text,.reel-coda-note,.reel-back){color:rgba(241,239,234,.74)}.reel-root.is-dark .reel-cap .eb,.reel-root.is-dark :is(.reel-eyebrow,.reel-title-num,.reel-title-en,.reel-coda-eb){color:var(--color-sage-light)}.reel-root.is-dark :is(.reel-meta span,.reel-indicator){border-color:rgba(241,239,234,.24)}.reel-root.is-dark .reel-indicator{color:var(--color-dark-text);background:rgba(22,23,26,.45)}.reel-root.is-dark .reel-back{border-bottom-color:var(--color-sage-light)}.reel-root.is-dark .reel-cue i{background:linear-gradient(var(--color-sage-light),transparent)}.reel-bg{position:fixed;inset:0;z-index:-1;background-color:#f3eee5;transition:background-color 1.1s var(--reel-ease)}.reel-grain{z-index:45;mix-blend-mode:multiply;opacity:.04;background-image:url(/images/textures/grain.png)}.reel-grain,.reel-warp-veil{position:fixed;inset:0;pointer-events:none}.reel-warp-veil{z-index:44;backdrop-filter:blur(6px);opacity:0}.reel-warp-veil.on{opacity:1}.reel-indicator{bottom:24px;font-family:var(--font-serif);font-size:13.5px;letter-spacing:.05em;color:var(--color-text);background:rgba(255,255,255,.5);backdrop-filter:blur(8px);border:1px solid var(--color-card-border);border-radius:999px;padding:6px 14px;opacity:0;transition:opacity .8s var(--reel-ease),color .9s var(--reel-ease),background-color .9s var(--reel-ease),border-color .9s var(--reel-ease)}.reel-indicator,.reel-stairnav{position:fixed;left:26px;z-index:46;pointer-events:none}.reel-stairnav{bottom:66px;display:flex;flex-direction:column;gap:12px}.reel-stair{pointer-events:auto;display:flex;align-items:center;gap:11px;margin-left:var(--in,0);padding:2px 0;background:none;border:0;cursor:pointer;transition:margin-left .7s var(--reel-ease)}.reel-stair-line{display:block;height:2px;width:30px;border-radius:2px;background:var(--color-text-muted);opacity:.45;transform-origin:left center;transition:width .45s var(--reel-ease),height .35s var(--reel-ease),background-color .45s var(--reel-ease),opacity .45s var(--reel-ease)}.reel-stair-label{font-family:var(--font-serif);font-size:12.5px;letter-spacing:.04em;white-space:nowrap;color:var(--color-text-muted);opacity:0;transform:translateX(-4px);transition:opacity .4s var(--reel-ease),transform .4s var(--reel-ease),color .4s var(--reel-ease)}.reel-stair:hover .reel-stair-line{opacity:.85;width:34px;background:var(--color-sage)}.reel-stair:hover .reel-stair-label{opacity:.7;transform:none}.reel-stair.active .reel-stair-line{opacity:1;width:38px;height:3px;background:var(--color-sage-dark)}.reel-stair.active .reel-stair-label{opacity:1;color:var(--color-text);transform:none}.reel-stair:focus-visible{outline:2px solid var(--color-sage-dark);outline-offset:3px;border-radius:4px}.reel-stair:focus-visible .reel-stair-line{opacity:.85;width:34px;background:var(--color-sage)}.reel-stair:focus-visible .reel-stair-label{opacity:.7;transform:none}@keyframes reelStairPress{0%,to{transform:scaleX(1)}45%{transform:scaleX(.82)}}.reel-stair.pressing .reel-stair-line{animation:reelStairPress .32s ease}.reel-stair-cursor{position:absolute;left:0;top:0;width:7px;height:7px;border-radius:50%;background:var(--color-sage-dark);opacity:0;transform:translate(0);transition:transform .2s cubic-bezier(.33,1,.68,1),height .25s var(--reel-ease),border-radius .25s var(--reel-ease),opacity .45s var(--reel-ease);pointer-events:none;will-change:transform}.reel-stair-cursor.show{opacity:1}.reel-stair-cursor.comet{height:16px;border-radius:5px}.reel-root.is-dark .reel-stair-line{background:rgba(241,239,234,.5)}.reel-root.is-dark .reel-stair.active .reel-stair-line,.reel-root.is-dark .reel-stair:hover .reel-stair-line{background:var(--color-sage-light)}.reel-root.is-dark .reel-stair-label{color:rgba(241,239,234,.74)}.reel-root.is-dark .reel-stair.active .reel-stair-label{color:var(--color-dark-text)}.reel-root.is-dark .reel-stair-cursor{background:var(--color-sage-light)}.reel-hero{min-height:100vh;justify-content:center;text-align:center;padding:120px 24px 60px;position:relative}.reel-hero,.reel-hero-inner{display:flex;flex-direction:column;align-items:center}.reel-hero-inner{animation:reelHeroIn 1.2s var(--reel-ease) both}@keyframes reelHeroIn{0%{opacity:0;transform:translateY(26px) scale(.98);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}.reel-eyebrow{font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--color-sage-dark)}.reel-h1{font-family:var(--font-serif);font-weight:700;font-size:clamp(3rem,9vw,6.5rem);line-height:1.04;margin-top:14px;letter-spacing:.02em}.reel-lead{margin-top:22px;max-width:30rem;line-height:1.95;font-size:15px}.reel-lead,.reel-meta{color:var(--color-text-muted)}.reel-meta{margin-top:26px;display:flex;gap:10px;font-size:12px}.reel-meta span{border:1px solid var(--color-card-border);border-radius:999px;padding:5px 13px;background:rgba(255,255,255,.4);backdrop-filter:blur(6px)}.reel-cue{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;letter-spacing:.25em;color:var(--color-text-muted)}.reel-cue i{width:1px;height:34px;background:linear-gradient(var(--color-sage-dark),transparent);animation:reel-cue 2.6s var(--reel-ease) infinite}@keyframes reel-cue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.reel-titlecard{min-height:84vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 24px}.reel-title-num{font-size:12px;letter-spacing:.3em;color:var(--color-sage-dark)}.reel-title-en{font-size:13px;letter-spacing:.34em;text-transform:uppercase;color:var(--color-sage-dark);margin-top:14px}.reel-title-zh{font-family:var(--font-serif);font-weight:700;font-size:clamp(2.8rem,8vw,5.5rem);line-height:1.05;margin-top:8px;letter-spacing:.1em}.reel-title-note{font-family:var(--font-serif);font-style:italic;font-size:clamp(.95rem,2vw,1.2rem);line-height:1.9;color:var(--color-text-muted);margin-top:18px}.reel-chapter{position:relative}.reel-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}.reel-stage,.reel-track{display:flex;align-items:center}.reel-track{gap:clamp(28px,4vw,72px);padding:0 14vw;will-change:transform}.reel-photo{position:relative;flex:0 0 auto;height:var(--h);width:calc(var(--h) * var(--ar));transform:translateY(var(--y)) scale(.965);opacity:.6;transition:opacity .9s var(--reel-ease),transform .9s var(--reel-ease)}.reel-frame{position:relative;width:100%;height:100%;overflow:hidden;border-radius:5px;box-shadow:0 28px 60px rgba(47,46,43,.16),0 5px 16px rgba(47,46,43,.07)}.reel-media{position:absolute;inset:0;transform:scale(1.06);transition:transform 1.3s var(--reel-ease);will-change:transform}.reel-photo.lit{opacity:1;transform:translateY(var(--y)) scale(1)}.reel-photo.lit .reel-media{transform:scale(1)}.reel-cap{position:absolute;left:max(2px,calc(50% - 50vw + 24px));top:calc(100% + 16px);display:flex;flex-direction:column;gap:4px;max-width:min(86vw,30rem);opacity:0;transform:translateY(6px);transition:opacity .7s var(--reel-ease) .1s,transform .7s var(--reel-ease) .1s}.reel-photo.lit .reel-cap{opacity:1;transform:none}.reel-cap .eb{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--color-sage-dark)}.reel-cap .t{font-family:var(--font-serif);font-size:clamp(1rem,1.6vw,1.25rem);color:var(--color-text)}.reel-cap .s{font-size:13px;line-height:1.7;color:var(--color-text-muted)}.reel-coda{min-height:100vh;justify-content:center;text-align:center;padding:120px 24px}.reel-coda,.reel-coda-inner{display:flex;align-items:center}.reel-coda-inner{flex-direction:column;gap:14px}.reel-coda-img{position:relative;width:min(42vh,82vw);aspect-ratio:9/16;border-radius:6px;overflow:hidden;box-shadow:0 40px 80px rgba(47,46,43,.18);margin-bottom:6px}.reel-coda-eb{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--color-sage-dark)}.reel-coda-title{font-family:var(--font-serif);font-weight:600;font-size:1.7rem}.reel-coda-text{max-width:28rem;line-height:1.9;color:var(--color-text-muted)}.reel-coda-note{max-width:26rem;font-family:var(--font-serif);font-style:italic;opacity:.85}.reel-back,.reel-coda-note{color:var(--color-text-muted)}.reel-back{margin-top:8px;display:inline-flex;align-items:center;gap:6px;font-size:13px;text-decoration:none;border-bottom:1px solid var(--color-sage-dark);padding-bottom:2px;transition:color .3s var(--reel-ease)}.reel-back:hover{color:var(--color-sage-dark)}.reveal{opacity:0;transform:translateY(26px) scale(.98);filter:blur(6px);transition:opacity 1.2s var(--reel-ease),transform 1.2s var(--reel-ease),filter 1.2s var(--reel-ease)}.reveal.in{opacity:1;transform:none;filter:none}@media (max-width:600px),(pointer:coarse) and (max-width:680px){.reel-track{padding:0 10vw;gap:30px}.reel-photo{--h:46vh!important}}@media (prefers-reduced-motion:reduce){.reel-root--reduced .reel-chapter{height:auto!important}.reel-root--reduced .reel-stage{position:static;height:auto;display:block}.reel-root--reduced .reel-track{overflow-x:auto;padding:28px 24px;gap:20px}.reel-root--reduced .reel-media,.reel-root--reduced .reel-track{transform:none!important;will-change:auto}.reel-root--reduced .reel-photo{height:auto;width:auto;transform:none!important;opacity:1!important}.reel-root--reduced .reel-frame{height:52vh;width:calc(52vh * var(--ar))}.reel-root--reduced .reel-cap{position:static;opacity:1;transform:none;margin-top:12px;max-width:calc(52vh * var(--ar))}.reel-cue,.reel-indicator,.reel-stairnav,.reel-warp-veil{display:none}.reel-bg{transition:none}.reveal{opacity:1!important;transform:none!important;filter:none!important}.reel-hero-inner{animation:none!important}}