/* Cinematic composition and interactions matched against the supplied film. */
:root{--paper:#090909;--ink:#f5f0e8;--blue:#dcc393;--muted:#aaa49a;--line:#3a352e}
body{background:#090909}.site-light-field{opacity:.12;filter:sepia(1)}
.header{background:linear-gradient(#080706c9,transparent);height:85px}.header>.wordmark{font-family:Georgia,serif;font-weight:400;font-size:27px;color:#f7f1e7;letter-spacing:-1.2px}
.cinema-cover{background:#060504!important;min-height:600px}.opening-sequence{height:260svh;min-height:600px}
.film-world{position:absolute;inset:0;transform:scale(var(--screen-scale));transform-origin:61% 43%;will-change:transform;opacity:var(--screen-opacity)}
.theatre-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}
.cinema-cover .cinema-screen{left:13%;top:27%;width:41%;height:33%;padding:0;overflow:visible;background:none;border:0;box-shadow:none;transform:none!important;opacity:1;justify-content:space-between}
.cinema-cover .screen-main{display:block;animation:none!important}.cinema-cover .screen-kicker{font-size:12px;letter-spacing:.25em;color:#e6d4b3;margin-bottom:18px}
.cinema-cover .cinema-screen h1{font-family:KaiTi,STKaiti,'Noto Serif SC',serif;font-size:clamp(50px,5.7vw,105px);font-weight:400;letter-spacing:.035em;line-height:1.15;color:#f5f0df;text-shadow:0 2px 18px #000b;transform:rotate(-5deg);transform-origin:left}
.cinema-cover .cinema-screen h1 span{font:9px/1.5 Arial;letter-spacing:.25em;color:#d4c4a6;margin-top:15px}
.cinema-cover .screen-statement{font-size:13px;letter-spacing:.12em;margin:24px 0 0;color:#d9ceb6}.cinema-cover .screen-bottom{border:0;display:flex;padding-top:18px;gap:15px}.cinema-cover .screen-bottom>span{font-size:10px;color:#e0d2b8;letter-spacing:.12em}.cinema-cover .screen-enter{background:#100e0980;color:#eee2c9;border-color:#cfb48280;padding:8px 15px;gap:22px}
.film-marquee{position:absolute;top:11%;left:20%;width:60%;text-align:center;font-family:KaiTi,STKaiti,serif;font-size:clamp(20px,2.7vw,43px);letter-spacing:.13em;color:#f2d597;text-shadow:0 0 18px #e2a83fbb}.film-marquee small{display:block;font:8px/2 Arial;letter-spacing:.5em;margin-top:10px;color:#bba67f}
.film-dust,.film-projector{position:absolute;inset:0;pointer-events:none}.film-dust i{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffe2a0;box-shadow:0 0 6px #ffa925;opacity:.3;animation:filmDust calc(9s + var(--i)*.31s) linear infinite;animation-delay:calc(var(--i)*-.6s)}
.film-projector{background:conic-gradient(from 203deg at 74% 24%,transparent 0deg,#fcd48312 19deg,transparent 40deg);mix-blend-mode:screen;animation:filmLight 8s ease-in-out infinite alternate}
@keyframes filmDust{0%{translate:0 20px;opacity:0}20%,70%{opacity:.6}100%{translate:80px -110px;opacity:0}}@keyframes filmLight{from{opacity:.3}to{opacity:1}}
.cinema-folio{inset:91px 36px auto;color:#c8b48f;font-size:8px}.cinema-folio>span:nth-child(2){display:none}.cinema-folio .quiet-motion-control button{background:#120f0ab0;border-color:#7b6a4670;color:#d7cdb9}
.cinema-contact{bottom:10%;gap:8px}.cinema-contact a,.cinema-contact button{background:#080706b0!important;color:#d6cbb7!important;border-color:#a5936d66!important;backdrop-filter:blur(8px)}
.cinema-bottom{inset:auto 36px 23px}.cinema-scroll,.cinema-skip{color:#ebdfc6!important}.cinema-skip{background:#0c0907b0!important;border-color:#a5936d66!important}.scene-vignette{box-shadow:inset 0 0 100px #0005;background:linear-gradient(transparent 75%,#0007)!important}
.ticket-navigation summary,.ticket-navigation nav{background:#faf7ef;color:#181714}.ticket-navigation summary{min-height:60px;border-radius:0;min-width:230px}.ticket-navigation summary b{color:#222;border-color:#777}.ticket-navigation summary:after{top:56px}.ticket-navigation nav{top:64px;width:335px;padding:12px 20px 28px}.ticket-navigation nav a{font-size:23px;color:#171612;padding:18px 5px;border-color:#bbb7ac}.ticket-navigation nav a:hover{background:#151412;color:#fff}.ticket-navigation nav:after{content:'CONTACT / 2097276952@QQ.COM';font:8px Arial;margin-top:30px;color:#57534c}
.contents,.about-section,.experience,.works,.case-section,.archive-section,.contact-section{background:#090909!important}.screening-invitation{background:#11100e;border-color:#554b38}.screening-invitation h3{color:#f3ece0}.screening-invitation p{color:#aaa497}.open-screening{background:#e4d4b5!important;color:#15120d!important;border-color:#e4d4b5!important}.works .project-grid{gap:50px}.works .project{border-radius:26px;overflow:hidden;border-color:#282725!important}.works .project-image{height:clamp(360px,65vw,690px);background:#11100e!important;padding:0}.works .project-image img{width:100%;height:100%;object-fit:contain}.works .project-meta{background:#100f0d!important;color:#f4eee1;padding:25px 35px}.works .project-meta h3{color:#f3ecdf}.works .category{color:#c7b89d}.works .page-label{border-color:#ad9b72;color:#e3d7bd}
#cinema-gallery{background:#070707!important;color:#eeeae0}#ribbon-stage{background:radial-gradient(ellipse at 50% 110%,#28272360,transparent 65%)}.screening-header h2{font-family:Georgia,serif}.screening-header button,.screening-actions button{background:transparent;color:#e0d8c8;border-color:#6c675c}.screening-header #screening-theme{margin-left:auto;margin-right:12px;font-size:10px}.screening-bottom{border-color:#282622}.screening-description h3{color:#f5eee1}.screening-actions #screening-open{background:#f3eee3;border-color:#f3eee3;color:#111}.screening-header p,.screening-description p,.screening-description>span,.ribbon-hint{color:#aaa394}
#cinema-gallery.gallery-light{background:#eae7df!important;color:#171613}.gallery-light #ribbon-stage{background:radial-gradient(ellipse at 50% 110%,#aaa49350,transparent 65%)}.gallery-light .screening-header button,.gallery-light .screening-actions button{color:#171613;border-color:#7d786d}.gallery-light .screening-description h3{color:#171613}.gallery-light .screening-description p,.gallery-light .screening-description>span,.gallery-light .screening-header p,.gallery-light .ribbon-hint{color:#6c665b}
html[data-editorial-motion=off] .film-world{transform:none;opacity:1}html[data-editorial-motion=off] .film-dust i,html[data-editorial-motion=off] .film-projector{animation:none}
@media(max-width:720px){.header{height:70px;padding:0 18px}.header>.wordmark{font-size:22px}.ticket-navigation summary{min-width:0;min-height:46px}.ticket-navigation summary:after{top:42px}.ticket-navigation nav{top:50px;width:min(335px,89vw)}.ticket-navigation nav a{font-size:19px;padding:14px 5px}.opening-sequence{height:210svh}.cinema-folio{inset:80px 18px auto}.cinema-cover{min-height:600px}.theatre-art{object-fit:cover;object-position:60% center}.film-world{transform-origin:60% 45%}.film-marquee{top:16%;left:5%;width:90%;font-size:24px;text-shadow:0 2px 10px #000,0 0 25px #000}.film-marquee small{font-size:6px;letter-spacing:.28em}.cinema-cover .cinema-screen{top:31%;left:8%;width:84%;height:33%;background:linear-gradient(90deg,#0009,transparent);padding:15px;border-radius:0}.cinema-cover .cinema-screen h1{font-size:51px}.cinema-cover .screen-kicker{font-size:9px}.cinema-cover .screen-statement{font-size:11px;margin-top:22px}.cinema-cover .screen-bottom>span{font-size:8px}.cinema-cover .screen-enter{font-size:10px;gap:10px;padding:7px 10px}.cinema-contact{bottom:14%;flex-wrap:wrap;width:92%;gap:6px}.cinema-contact a,.cinema-contact button{font-size:9px}.cinema-bottom{inset:auto 18px 25px}.works .project-image{height:290px}.works .project-meta{padding:20px}.works .project{border-radius:16px}.screening-header{gap:8px;padding:18px}.screening-header h2{font-size:16px}.screening-header #screening-theme{font-size:8px;padding:8px;margin-right:0}.screening-header #close-screening{font-size:10px;padding:8px}.screening-header p{font-size:7px}}
@media(prefers-reduced-motion:reduce){.film-world{transform:none!important;opacity:1!important}.film-dust i,.film-projector{animation:none!important}.opening-sequence{height:100svh}}
