@font-face{font-family:CourseSong;src:url('assets/fonts/course-song-site-v2-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:CourseSong;src:url('assets/fonts/course-song-site-v2-900.ttf') format('truetype');font-style:normal;font-weight:900;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#080808}body{margin:0;background:#080808;color:#eee4cf;font-family:Arial,'PingFang SC','Microsoft YaHei',sans-serif;font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #c8aa70;outline-offset:6px}button{border:0;background:none}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:CourseSong,'Songti SC',SimSun,serif}h2{font-size:clamp(34px,4.8vw,72px);line-height:1.5;font-weight:600;letter-spacing:-.035em}h2 span{color:#b79b66}.section{width:min(1200px,90%);margin:auto}.eyebrow,.section-meta{font:12px/1.6 Georgia,serif;letter-spacing:.2em;color:#bba170}.masthead{height:90px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;width:100%;z-index:10}.logo{width:105px;height:auto}.masthead nav{display:flex;gap:34px;font-size:12px;color:#aaa}.masthead nav a:hover,.masthead nav [aria-current]{color:#d7b975}.menu-toggle{display:none}.hero{position:relative;min-height:950px;height:100svh;max-height:1180px;overflow:hidden;background:radial-gradient(ellipse at 50% 65%,#262015 0,transparent 55%)}.hero:before,.hero:after{content:'';position:absolute;width:130%;height:55%;border:1px solid #ad90562b;border-radius:50%;left:-15%;top:34%;transform:rotate(-12deg);pointer-events:none}.hero:after{transform:rotate(12deg);top:36%}.hero-copy{text-align:center;position:relative;z-index:2;padding-top:135px}.hero h1{font-size:clamp(110px,12vw,188px);font-weight:900;letter-spacing:.13em;line-height:1.15;margin:22px 0 12px;padding-left:.13em;position:relative}.hero h1 i{font:normal 35px Georgia;color:#bda473;position:absolute;margin:24px 0 0 10px}.hero-caption{font-family:CourseSong,'Songti SC',serif;font-size:24px;letter-spacing:.25em}.hero-en{font:italic 16px Georgia;color:#9a8b73;margin-top:15px}.poster-stage{position:absolute;top:54%;left:50%;width:1000px;height:380px;transform:translate(calc(-50% + var(--mx,0px)),var(--my,0px));transition:transform .7s ease-out;z-index:3}.floating{position:absolute;left:50%;width:205px;transform:translateX(var(--x)) rotate(var(--r));animation:float 7s ease-in-out infinite;animation-delay:var(--delay);box-shadow:0 20px 40px #0009;border:5px solid #c9b996;background:#c9b996}.floating img{width:100%;height:auto}.f0{--x:-465px;--r:-17deg;--delay:-1s;top:30px;z-index:1}.f1{--x:-290px;--r:-8deg;--delay:-3s;top:5px;z-index:2}.f2{--x:-102px;--r:0deg;--delay:-2s;top:-20px;z-index:3}.f3{--x:85px;--r:8deg;--delay:-4s;top:5px;z-index:2}.f4{--x:260px;--r:17deg;--delay:-5s;top:30px;z-index:1}@keyframes float{50%{transform:translateX(var(--x)) translateY(-12px) rotate(var(--r))}}.hero-bottom{position:absolute;bottom:30px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#a49b8a;letter-spacing:.08em;z-index:4}.hero-bottom a{padding:12px;border-bottom:1px solid #9e8155}.hero-bottom>span:last-child{font:10px Georgia;letter-spacing:.15em}.intro{padding-top:130px;padding-bottom:75px}.section-meta{display:flex;justify-content:space-between;padding-top:24px;border-top:1px solid #8c744444}.intro-grid,.purpose-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;margin-top:55px;align-items:center}.intro-note{justify-self:end;font-size:16px;line-height:2;color:#a8a39b}.text-link{display:inline-block;color:#c2a676;margin-top:32px;border-bottom:1px solid #846e47;padding-bottom:10px}.gallery-section{padding-bottom:130px}.gallery-toolbar{padding:26px 0 44px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;gap:25px;align-items:center}.gallery-toolbar>p{font-size:13px;color:#aaa}.filters{display:flex;gap:4px;flex-wrap:wrap}.filters button{font-size:12px;padding:10px 14px;border-radius:30px;color:#aaa;transition:background .2s,color .2s}.filters button[aria-pressed=true]{background:#bda374;color:#0c0c0c}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 45px;align-items:start}.poster-item:nth-child(3n+2){margin-top:90px}.gallery-grid.filtered .poster-item{margin-top:0}.poster-item[hidden]{display:none}.poster-open{display:block;padding:0;width:100%;position:relative;background:#171717;overflow:hidden}.poster-open img{width:100%;height:auto;transition:transform .7s cubic-bezier(.2,.6,.2,1),filter .7s}.poster-open:hover img{transform:scale(1.025);filter:brightness(1.05)}.zoom{position:absolute;bottom:16px;right:16px;width:42px;height:42px;display:grid;place-items:center;background:#0a0a0ad9;border:1px solid #d2b98166;border-radius:50%;font-size:22px}.poster-item figcaption{padding:20px 0 0}.poster-item figcaption span{font:10px Georgia;letter-spacing:.15em;color:#a18c65}.poster-item h3{font-size:20px;font-weight:500;margin-top:10px}.purpose{padding:0 0 140px}.purpose-grid{align-items:start;margin-top:70px}.purpose-list article{display:flex;gap:25px;padding:25px 0;border-bottom:1px solid #ffffff20}.purpose-list article:first-child{padding-top:0}.purpose-list article>span{font:italic 20px Georgia;color:#ad9261}.purpose-list h3{font-size:26px;margin-bottom:14px}.purpose-list p,.workflow p{font-size:14px;line-height:1.9;color:#a5a19b}.atelier{background:#161514;padding:90px 0}.atelier-heading{text-align:center}.atelier-heading h2{margin:20px 0 60px}.atelier-art{width:min(1600px,100%);height:auto;margin:auto}.workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:70px;padding-top:65px}.workflow article{border-top:1px solid #b79b6655;padding-top:20px}.workflow article>span{font:italic 18px Georgia;color:#b49a6b}.workflow h3{font-size:32px;margin:16px 0}.faq{padding:120px 0;display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.faq h2{font-size:45px;margin-top:18px}.faq details{border-bottom:1px solid #ffffff25;padding:26px 0}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:17px}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:#b89b68}.faq details p{font-size:14px;color:#a5a19b;line-height:1.9;padding-top:20px}.closing{text-align:center;padding:70px 20px 120px;background:radial-gradient(ellipse at 50% 100%,#2d241550,transparent 65%)}.closing-rule{width:45px;height:1px;background:#ad9058;margin:30px auto}.closing h2{font-size:clamp(34px,6vw,90px);letter-spacing:.08em;color:#cfb580;font-weight:600}.closing h2 span{font-weight:400;color:#8c7447;margin:0 .12em}.experience{display:inline-flex;align-items:center;justify-content:space-between;gap:70px;background:#c3a777;color:#111;padding:24px 38px;margin-top:48px;font-size:21px;border-radius:2px;transition:background .25s,transform .25s}.experience:hover{background:#dfc99f;transform:translateY(-3px)}.experience span{font-size:30px}.footer{display:flex;align-items:center;justify-content:space-between;padding:25px 0;font-size:11px;color:#777;border-top:1px solid #ffffff16}.footer button{font-size:11px;color:#777}dialog{background:#121212;color:#eee4cf;border:1px solid #8e795344;padding:30px;max-height:95svh}dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}#lightbox{text-align:center;width:min(650px,95vw)}#lightbox img{height:72svh;max-width:100%;width:auto;object-fit:contain;margin:20px auto}#lightbox p{font-size:14px;margin-bottom:12px}#lightbox a{color:#bc9f6c;font-size:13px}.lightbox-close{display:block;margin-left:auto}#mobile-nav{width:90vw}#mobile-nav nav{display:flex;flex-direction:column;gap:25px;padding:40px 20px;font-size:24px}.menu-close{display:block;margin-left:auto}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{position:fixed;top:10px;left:10px;z-index:100;background:#111;padding:15px}.paused *{animation-play-state:paused!important}.paused .poster-stage{transform:translate(-50%,0)}
@media(min-width:1600px){.poster-stage{top:52%;transform:translate(calc(-50% + var(--mx,0px)),var(--my,0px)) scale(1.13)}}
@media(max-width:900px){.masthead nav{gap:20px}.hero{min-height:850px}.poster-stage{transform:translate(calc(-50% + var(--mx,0px)),var(--my,0px)) scale(.75);top:52%}.hero-copy{padding-top:145px}.gallery-grid{gap:40px 22px}.intro-grid,.purpose-grid{gap:35px}.gallery-toolbar{align-items:start;flex-direction:column}.workflow{gap:30px}.hero-bottom>span:last-child{display:none}.poster-item h3{font-size:17px}}
@media(max-width:600px){.masthead{height:72px}.logo{width:90px}.masthead nav{display:none}.menu-toggle{display:block;font-size:12px}.hero{min-height:770px;height:100svh;max-height:900px}.hero-copy{padding-top:115px}.hero h1{font-size:116px;margin:25px 0 18px}.hero h1 i{font-size:24px;margin-top:15px}.hero-caption{font-size:19px;letter-spacing:.15em}.hero-en{font-size:13px}.eyebrow{font-size:10px}.poster-stage{top:49%;transform:translate(-50%,0) scale(.48);transform-origin:50% 0}.hero-bottom{bottom:25px;flex-direction:column;gap:18px;font-size:10px}.section-meta{font-size:9px}.section-meta>span:last-child{display:none}.intro{padding-top:75px;padding-bottom:45px}.intro-grid,.purpose-grid{grid-template-columns:1fr;gap:32px;margin-top:32px}.intro-note{justify-self:start;font-size:14px}.text-link{margin-top:18px}.gallery-toolbar{padding-bottom:28px;gap:18px}.filters{gap:3px}.filters button{padding:9px 11px;font-size:11px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 15px}.poster-item:nth-child(3n+2){margin-top:0}.poster-item:nth-child(even){margin-top:35px}.poster-item h3{font-size:15px;line-height:1.5}.poster-item figcaption{padding-top:13px}.poster-item figcaption span{font-size:8px;letter-spacing:.08em}.zoom{width:30px;height:30px;font-size:18px;bottom:10px;right:10px}.gallery-section{padding-bottom:80px}.purpose{padding-bottom:75px}.purpose-list p,.workflow p{font-size:13px}.atelier{padding:60px 0}.atelier-heading h2{margin-bottom:35px}.workflow{grid-template-columns:1fr;padding-top:35px;gap:28px}.workflow article{display:grid;grid-template-columns:45px 1fr;gap:10px}.workflow h3{font-size:25px;margin:0}.workflow p{grid-column:2}.faq{padding:75px 0;grid-template-columns:1fr;gap:25px}.faq h2{font-size:36px}.faq summary{font-size:15px}.closing{padding:45px 12px 80px}.closing h2{font-size:clamp(26px,7.7vw,46px);letter-spacing:0}.experience{margin-top:35px;font-size:19px;padding:18px 28px}.footer{flex-wrap:wrap;gap:20px;justify-content:center}.footer p{order:3;width:100%;text-align:center;font-size:10px}.paused .poster-stage{transform:translate(-50%,0) scale(.48)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.poster-stage{--mx:0px!important;--my:0px!important}}
