/* Cinematic entrance and the rhythm of the editorial page. */
.opening{display:none;position:fixed;inset:0;z-index:90;pointer-events:none;overflow:hidden}.intro-playing .opening{display:block;animation:opening-away 1.85s both}.opening-wing{position:absolute;top:0;bottom:0;width:50.1%;background:#0b1721}.opening-left{left:0;animation:curtain-left 1.7s cubic-bezier(.76,0,.24,1) both}.opening-right{right:0;animation:curtain-right 1.7s cubic-bezier(.76,0,.24,1) both}.opening-brand{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);display:flex;align-items:center;flex-direction:column;gap:18px;width:300px;color:var(--gold);animation:brand-reveal 1.45s both}.opening-brand img{width:145px;height:auto}.opening-brand>span{font:20px var(--serif);letter-spacing:.17em}.opening-brand small{font:10px Arial;letter-spacing:.3em}.opening-brand i{width:100px;height:1px;background:var(--gold);transform-origin:left;animation:brand-line 1s ease both}.opening-skip{position:absolute;bottom:34px;right:5.5%;border:1px solid #cfb77e55;background:transparent;color:var(--gold);padding:7px 15px;font-size:12px;pointer-events:auto;animation:brand-reveal 1.45s both}.opening-skip:focus-visible{outline:2px solid var(--gold)}
@keyframes curtain-left{0%,50%{transform:translateX(0)}100%{transform:translateX(-100%)}}@keyframes curtain-right{0%,50%{transform:translateX(0)}100%{transform:translateX(100%)}}@keyframes brand-reveal{0%{opacity:0;filter:blur(5px)}22%,62%{opacity:1;filter:blur(0)}84%,100%{opacity:0}}@keyframes brand-line{0%,20%{transform:scaleX(0)}100%{transform:scaleX(1)}}@keyframes opening-away{0%,95%{visibility:visible}100%{visibility:hidden}}
.header{height:88px;background:#101d29f5;backdrop-filter:blur(16px);transition:background .3s}.header.has-scrolled{background:#0b1721f5}.reading-progress{position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;pointer-events:none}nav a[aria-current="location"]{color:var(--gold)}nav a[aria-current="location"]:after{width:100%}
.hero.hero-cinema{display:block;position:relative;isolation:isolate;min-height:720px;height:calc(100svh - 88px);max-height:940px;overflow:hidden;background:#0b1721}.hero-scenes,.cinema-shade{position:absolute;inset:0;z-index:-2}.hero-scenes .scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;opacity:0;transform:scale(1.045);transition:opacity 1s ease,transform 7s cubic-bezier(.2,.6,.3,1)}.hero-scenes .scene.is-active{opacity:1;transform:scale(1)}.hero-scenes .scene[data-scene="2"]{object-position:center 55%}.cinema-shade{z-index:-1;background:linear-gradient(90deg,rgba(6,18,28,.95) 0%,rgba(6,18,28,.83) 32%,rgba(6,18,28,.28) 74%,rgba(6,18,28,.16)),linear-gradient(0deg,#091622 0%,transparent 47%,#0b172122)}.hero-edition{position:absolute;top:30px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;font:10px Arial;letter-spacing:.18em;color:#e1e4e2a8}.hero-edition:before{content:"";position:absolute;left:0;right:0;bottom:-17px;height:1px;background:#ffffff20}.hero-edition span{font-size:9px}.hero-cinema .hero-copy{padding:110px 5.5% 0;width:73%;z-index:1}.hero-cinema .eyebrow{font-size:11px}.hero-cinema .hero-intro{margin:30px 0 15px;color:#d0d5d5}.hero-cinema h1{font-size:clamp(44px,5.25vw,82px);line-height:1.4;letter-spacing:.04em;white-space:nowrap;text-shadow:0 3px 30px #00132344}.hero-cinema h1 em{color:#e0c58b}.title-line{display:block;overflow:hidden;padding-bottom:5px}.title-line>span{display:block;animation:headline-in 1s cubic-bezier(.2,.65,.2,1) both}.title-line:nth-child(2)>span{animation-delay:.15s}.intro-playing .title-line>span{animation-delay:.8s}.intro-playing .title-line:nth-child(2)>span{animation-delay:.95s}.hero-cinema .hero-description{color:#b7c0c7;font-size:15px;margin-top:20px;animation:copy-in 1.25s .2s both}.hero-actions{display:flex;gap:32px;align-items:center;margin-top:26px;animation:copy-in 1.25s .35s both}.intro-playing .hero-description{animation-delay:1s}.intro-playing .hero-actions{animation-delay:1.1s}.hero-actions .gold-button{margin:0;background:#dcc38b;padding:13px 22px;min-width:218px}.hero-about{font-size:14px;color:#e1e5e6;border-bottom:1px solid #ffffff40;padding:9px 0}.hero-about span{margin-left:20px}.hero-about:hover{color:var(--gold);border-color:var(--gold)}.scene-caption{position:absolute;right:5.5%;bottom:165px;display:flex;align-items:center;gap:20px;color:#fff}.scene-caption>span{font:italic 54px/1 Georgia;color:#cfb77e;border-right:1px solid #ffffff40;padding-right:20px}.scene-caption p{font:18px/1.7 var(--serif);letter-spacing:.04em}.scene-caption small{font-size:10px;letter-spacing:.12em;color:#b6c0ca}.cinema-bottom{position:absolute;left:5.5%;right:5.5%;bottom:25px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff30;padding-top:23px;gap:28px}.scroll-cue{display:flex;align-items:center;gap:15px;color:#e2e5e3;font-size:12px}.scroll-circle{border:1px solid #cfb77e75;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;font:24px var(--serif);transition:transform .25s,background .25s}.scroll-cue:hover .scroll-circle{transform:translateY(3px);background:#cfb77e20}.scroll-cue small{display:block;font:8px/2.3 Arial;letter-spacing:.16em;color:#92a0ab}.scene-selector{display:flex;gap:27px}.scene-choice{position:relative;display:flex;align-items:center;gap:13px;min-width:172px;background:none;border:0;padding:5px 0 13px;color:#b3bdc5;text-align:left;font-size:14px}.scene-choice>img{width:72px;height:49px;object-fit:cover;opacity:.45;filter:saturate(.5);transition:opacity .4s,filter .4s}.scene-choice>span small{display:block;font:8px/2.3 Arial;letter-spacing:.08em}.scene-choice i{position:absolute;left:0;bottom:0;height:1px;width:100%;background:#ffffff20}.scene-choice i:after{content:"";position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s}.scene-choice.active{color:#e7ce97}.scene-choice.active i:after{transform:scaleX(1)}.scene-choice.active>img,.scene-choice:hover>img{opacity:1;filter:saturate(1)}.scene-choice:hover{color:var(--gold)}
@keyframes headline-in{from{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes copy-in{from{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}
.about{position:relative;padding-top:104px;padding-bottom:104px}.about:after{content:"CULTURE × CREATIVITY";position:absolute;right:7%;bottom:19px;font:9px Arial;letter-spacing:.23em;color:#a1a6a2}.section-label{margin-bottom:56px}.project:nth-child(even){padding-top:55px}.project:nth-child(even)[hidden]{padding-top:0}.project-image{aspect-ratio:1.48}.project-image:after{content:"查看项目";position:absolute;bottom:25px;right:77px;color:#fff;font-size:12px;opacity:0;transform:translateX(8px);transition:opacity .25s,transform .25s;text-shadow:0 1px 8px #000}.project:hover .project-image:after,.project:focus-visible .project-image:after{opacity:1;transform:none}.project-open{border-radius:50%;right:20px;bottom:20px}.filters{position:sticky;top:88px;z-index:5;background:var(--paper);padding-top:9px}.vision{height:480px}.vision>img{filter:brightness(.35)}.vision h2{line-height:1.65}.section-heading h2,.about h2{line-height:1.65}.about-copy p,.service-body p,.founder-copy>p{font-size:16px}.contact-layout{padding-bottom:15px}.dialog-content{animation:copy-in .4s ease both}
@media(min-width:1600px){.hero-cinema .hero-copy{padding-top:140px}.hero-cinema .hero-description{margin-top:30px}.hero-actions{margin-top:34px}.scene-caption{bottom:185px}}
@media(max-width:1100px){.hero.hero-cinema{min-height:730px}.hero-cinema .hero-copy{width:90%;padding-top:110px}.hero-cinema h1{font-size:58px}.scene-caption{bottom:155px}.scene-selector{gap:16px}.scene-choice{min-width:140px;gap:9px}.scene-choice>img{width:50px;height:43px}.scene-choice>span small{font-size:7px}.cinema-bottom{gap:20px}.scroll-cue{gap:10px}.scene-caption p{font-size:16px}}
@media(max-width:760px){.header{height:76px}.hero.hero-cinema{height:calc(100svh - 76px);min-height:720px;max-height:950px}.hero-edition{top:24px;left:7%;right:7%;font-size:9px}.hero-edition span{display:none}.hero-edition:before{bottom:-17px}.hero-cinema .hero-copy{width:100%;padding:85px 7% 0}.hero-cinema .eyebrow{font-size:8px;letter-spacing:.08em}.hero-cinema .eyebrow .line{width:18px;margin-right:6px}.hero-cinema .hero-intro{font-size:11px;letter-spacing:.13em;margin-top:24px;margin-bottom:16px}.hero-cinema h1{font-size:clamp(34px,8.2vw,58px);line-height:1.5;letter-spacing:.025em}.hero-cinema .hero-description{font-size:14px;line-height:2;margin-top:19px}.cinema-shade{background:linear-gradient(90deg,#06121cd9,#06121c45),linear-gradient(0deg,#091622 0%,#09162222 55%,#09162275)}.hero-scenes .scene{object-position:63% center}.hero-scenes .scene[data-scene="1"]{object-position:40% center}.hero-scenes .scene[data-scene="2"]{object-position:42% center}.hero-actions{gap:23px;margin-top:23px}.hero-actions .gold-button{min-width:185px;padding:9px 16px;font-size:13px}.hero-about{font-size:12px}.hero-about span{margin-left:8px}.scene-caption{right:7%;left:7%;bottom:158px;gap:14px}.scene-caption>span{font-size:34px;padding-right:14px}.scene-caption p{font-size:14px}.scene-caption small{font-size:8px;letter-spacing:.04em}.cinema-bottom{left:7%;right:7%;bottom:22px;flex-direction:column-reverse;align-items:stretch;gap:18px;padding-top:16px}.scene-selector{justify-content:space-between;gap:15px}.scene-choice{min-width:0;flex:1;padding:0 0 10px;font-size:13px;display:block}.scene-choice>img{display:none}.scene-choice>span small{font-size:7px;line-height:2.2;letter-spacing:0}.scroll-cue{justify-content:space-between;flex-direction:row-reverse;font-size:10px}.scroll-circle{width:29px;height:29px;font-size:16px}.scroll-cue small{display:inline;margin-left:12px;font-size:7px}.section-label{margin-bottom:30px}.project:nth-child(even){padding-top:0}.project-image{aspect-ratio:1.5}.filters{top:76px}.about{padding-top:60px;padding-bottom:75px}.about:after{font-size:8px;bottom:20px}.about-copy p,.service-body p,.founder-copy>p{font-size:15px}.vision{height:360px}.vision h2{font-size:32px}.opening-brand>span{font-size:18px}.opening-brand img{width:128px}.opening-skip{right:7%;bottom:25px}}
@media(max-width:360px){.hero-actions{gap:15px}.hero-actions .gold-button{min-width:170px}.hero-cinema .hero-description{font-size:13px}.scene-caption p{font-size:13px}.hero-cinema .hero-intro{margin-top:19px}}
@media(prefers-reduced-motion:reduce){.opening{display:none!important}.title-line>span,.hero-description,.hero-actions,.dialog-content{animation:none!important}.hero-scenes .scene{transform:none;transition:none}.scroll-circle{transition:none}}
