/* One red-silk stage runs through the entire A site. */
html[data-layout="theatre"]{scroll-padding-top:105px;scroll-behavior:smooth}
.theatre-site{background:#330c13;color:#f2dcab;--stage-gold:#dbb570;--stage-text:#f2deba;--stage-muted:#c5a58d;--stage-pad:clamp(24px,7vw,120px);padding-bottom:20px}
.theatre-site .poster-sheet{background:#55151e none center top/100% auto repeat-y;border-color:#9a603e;outline-color:#d1a562;max-width:1740px;overflow:clip}
.theatre-site .poster-sheet:after{inset:8px;border-color:#d6aa5e45;z-index:27}
.theatre-site .site-header{position:sticky;top:0;height:84px;color:#f0d5a4;background:#5b1822f2;border-bottom:1px solid #c393525e;padding:0 4.5%;z-index:40;backdrop-filter:blur(12px)}
.theatre-site .brand-symbol{color:#dfb563}.theatre-site .brand{font-size:18px}.theatre-site .brand small{font-size:8px;letter-spacing:1.5px}.theatre-site .main-nav{gap:27px}.theatre-site .main-nav a{font-size:13px;letter-spacing:1px;padding:13px 0;position:relative}.theatre-site .main-nav a:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:#e3bb73;transform:scaleX(0);transform-origin:left;transition:transform .3s}.theatre-site .main-nav a:hover:after{transform:scaleX(1)}.theatre-site .version-link{font-size:11px;color:#d9b78b}.theatre-site .hero{height:calc(100svh - 126px);min-height:820px;background:#671c29}.theatre-site .hero-content{top:115px}.theatre-site .hero-footer{background:#641c29f2;color:#f0d7ab;border-color:#d0a65c77;padding-left:5%;padding-right:5%}.theatre-site .footer-invitation{color:#f1d6a2}.theatre-site .slider-controls .autoplay-button{border-color:#ddb77755}.theatre-site .hero:after{content:"";position:absolute;inset:auto 0 81px;height:40px;pointer-events:none;background:linear-gradient(transparent,#5f1a22a6);z-index:0}.theatre-site .poster-seal{left:50%}.theatre-site .hero-description{color:#633028}
.theatre-longform{position:relative;background:linear-gradient(#4d101c11,#2907113b);isolation:isolate}.theatre-longform:before,.theatre-longform:after{content:"";position:absolute;top:0;bottom:0;width:1px;background:#d7b77638;pointer-events:none;z-index:1}.theatre-longform:before{left:21px}.theatre-longform:after{right:21px}
.stage-section{position:relative;padding:86px var(--stage-pad) 96px;scroll-margin-top:20px}.stage-section+ .stage-section:before{content:"";position:absolute;left:var(--stage-pad);right:var(--stage-pad);top:0;height:1px;background:linear-gradient(90deg,transparent,#d4ae6e70 22%,#d4ae6e70 78%,transparent)}
.stage-heading{margin-bottom:42px;text-align:center;position:relative}.stage-eyebrow{font-size:11px;color:#dfb67d;letter-spacing:4px;display:block;margin-bottom:17px}.stage-heading h2{font:clamp(32px,3.5vw,55px)/1.45 var(--serif);letter-spacing:3px;margin:0 0 18px;color:#f4dfb4;text-shadow:0 2px 8px #1e000b}.stage-heading h2 em{font-style:normal;color:#e6ba6c}.stage-heading>p{font-size:14px;color:#d0b499;letter-spacing:1px;line-height:1.9;max-width:620px;margin:0 auto}.stage-heading .stage-ornament{display:flex;align-items:center;justify-content:center;gap:15px;color:#d9af63;font:27px Georgia;margin-bottom:19px}.stage-ornament:before,.stage-ornament:after{content:"";width:65px;height:1px;background:#cc9b5a77}
.trailer-section{padding-top:65px}.video-proscenium{position:relative;max-width:1100px;margin:58px auto 0;padding:12px;background:#351017;border:2px solid #bd8d4a;outline:1px solid #e0be7e66;outline-offset:6px;box-shadow:0 22px 65px #22000b77,0 0 0 9px #631e29}
.curtain-valance{position:absolute;top:-30px;left:-19px;right:-19px;height:70px;z-index:6;pointer-events:none;background:#772334 none center 20%/cover;border-top:2px solid #d8b274;border-bottom:4px double #d6b16e;border-radius:0 0 50% 50%/0 0 50% 50%;box-shadow:0 8px 15px #19050c55}
.video-frame{position:relative;aspect-ratio:16/9;background:#17070d;overflow:hidden;isolation:isolate}.trailer-images,.trailer-image,.video-frame>video{position:absolute;inset:0;width:100%;height:100%}.trailer-image{object-fit:cover;opacity:0;transition:opacity 1.2s ease;filter:brightness(.78)}.trailer-image.is-active{opacity:1}.video-frame:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#1c0b16aa,transparent 45%);pointer-events:none}.video-frame.has-video:after{display:none}.video-frame>video{object-fit:contain;z-index:7;background:#08080a}.video-frame>video[hidden]{display:none}.video-curtain{position:absolute;z-index:3;top:0;bottom:0;width:10%;pointer-events:none;background:#591421 none left top/360% 100%;border-right:2px solid #c09a55;border-radius:0 0 70% 0/0 0 10% 0;box-shadow:8px 0 20px #27000e66}.video-curtain.right{right:0;transform:scaleX(-1)}.video-curtain.left{left:0}.video-cover-control{position:absolute;z-index:4;inset:30px 12% 15px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#f9e5b5;text-shadow:0 2px 10px #210811;cursor:pointer}.video-play-disc{display:grid;place-items:center;width:86px;height:86px;border:1px solid #e5c183;outline:1px solid #ebca8466;outline-offset:8px;border-radius:50%;background:#571b2899;font-size:30px;box-shadow:0 8px 30px #230a0f55;transition:background .25s,transform .25s}.video-cover-control:hover .video-play-disc{transform:scale(1.06);background:#772b32c9}.video-cover-control strong{font:26px var(--serif);letter-spacing:4px;margin-top:26px}.video-cover-control small{font-size:12px;letter-spacing:1.5px;margin-top:13px;color:#ead1ad}.video-frame.has-video .video-cover-control,.video-frame.has-video .video-curtain,.video-frame.has-video .trailer-images{display:none}.trailer-caption{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:19px 3px 5px;color:#d5b58b;font-size:12px;letter-spacing:.5px}.trailer-status{flex:1;line-height:1.7}.trailer-art-controls{display:flex;align-items:center;gap:15px;white-space:nowrap}.trailer-art-controls button{font-size:20px;width:29px;height:31px;color:#e3c38c}.trailer-art-count{font-size:11px;letter-spacing:1px}.quality-controls{display:flex;gap:4px}.quality-controls[hidden]{display:none}.quality-controls button{border:1px solid #bd9a6655;padding:7px 10px;font-size:11px;color:#d3b68e}.quality-controls button.is-active{background:#e1bf80;color:#5f2831;border-color:#e1bf80}.quality-controls button:disabled{opacity:.4;cursor:default}.trailer-footnote{margin:24px auto 0;text-align:center;font-size:12px;line-height:1.9;color:#bd9783;letter-spacing:.5px}.stage-button{border:1px solid #d3aa66;display:inline-flex;justify-content:center;align-items:center;gap:26px;min-height:48px;padding:13px 24px;color:#f0dcb1;font-size:12px;letter-spacing:1px;transition:background .3s,transform .3s;background:#54182277}.stage-button:hover{background:#87384188;transform:translateY(-2px)}.stage-button.gold{background:#dfba73;color:#5a1c29;border-color:#dfba73}.stage-button.gold:hover{background:#f0cf8d}
.story-spread{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center}.story-section .stage-heading{text-align:left;margin-bottom:26px}.story-section .stage-heading>p{margin-left:0}.stage-copy>p{font-size:14px;line-height:2.2;color:#e0c3a9;max-width:460px;letter-spacing:.5px}.stage-copy .stage-button{margin-top:18px}.memory-composition{position:relative;margin:25px 0 37px}.memory-main{width:100%;height:440px;object-fit:cover;border:7px solid #d9bb86;outline:1px solid #e0b975;box-shadow:14px 18px 0 #2c08184a;filter:saturate(.7) brightness(.89)}.memory-photo{position:absolute;bottom:-31px;left:-35px;width:164px;background:#ead5a6;padding:7px 7px 15px;box-shadow:4px 10px 25px #20030d80;transform:rotate(-10deg)}.memory-photo img{width:100%;height:190px;object-fit:cover;object-position:left}.memory-photo>span{display:block;text-align:center;font:12px var(--serif);color:#794538;margin-top:12px;letter-spacing:1px}.memory-caption{text-align:right;display:block;font-size:11px;color:#d0ae81;margin-top:17px;letter-spacing:1px}.story-quote{border-left:2px solid #cc9b61;padding-left:20px;margin:30px 0;color:#e8ca92;font:21px/1.8 var(--serif)}.story-quote small{display:block;font:11px var(--sans);color:#ba9480;margin-top:8px;letter-spacing:1px}
.cast-stage{display:grid;grid-template-columns:.65fr 1.35fr;gap:6vw;align-items:center}.cast-stage .stage-heading{text-align:left}.cast-stage .stage-heading>p{margin:0}.theatre-site .cast-stage .cast-dossier{background:#ead7af;color:#653139;border:1px solid #d9b779;outline:1px solid #e3c28966;outline-offset:6px;padding:10px;gap:0;grid-template-columns:.9fr 1.1fr;box-shadow:9px 13px 30px #25000c55;min-height:420px}.theatre-site .cast-stage .cast-portrait{border:0;border-right:1px solid #a27c5655;min-height:400px;background-size:auto 137%}.theatre-site .cast-stage .cast-info{padding:27px 25px}.theatre-site .cast-stage .cast-role{font-size:11px;color:#906349}.theatre-site .cast-stage .cast-name{font-size:32px;color:#6f3035}.theatre-site .cast-stage .cast-english{color:#8e644c;font-size:11px;letter-spacing:2px}.theatre-site .cast-stage .cast-description{color:#78533f;font-size:13px}.theatre-site .cast-stage .cast-tabs{gap:6px}.theatre-site .cast-stage .cast-tabs button{padding:10px 11px;font-size:12px}.cast-undertext{margin-top:30px;font:18px/1.8 var(--serif);letter-spacing:1px;color:#ddb982}
.gameplay-section .stage-heading{margin-bottom:57px}.gameplay-row{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:center;padding:0 0 65px;margin-bottom:65px;border-bottom:1px solid #cea36538}.gameplay-row:last-child{border:0;padding-bottom:0;margin-bottom:0}.gameplay-row:nth-child(odd){grid-template-columns:.85fr 1.15fr}.gameplay-row:nth-child(odd) .gameplay-art{order:2}.gameplay-art{position:relative}.gameplay-art>img{width:100%;aspect-ratio:1.56;object-fit:cover;border:1px solid #bd9055;outline:5px solid #40111b;box-shadow:0 13px 30px #20010b55}.gameplay-art>span{position:absolute;bottom:14px;left:17px;background:#3d0f1ccc;color:#e9ce98;padding:7px 11px;font-size:10px;letter-spacing:1px}.gameplay-copy>span{display:block;color:#d9b06e;font:11px Georgia;letter-spacing:3px;margin-bottom:21px}.gameplay-copy h3{font:clamp(27px,2.6vw,42px)/1.55 var(--serif);letter-spacing:2px;color:#f0d6a7;margin-bottom:20px}.gameplay-copy p{font-size:14px;line-height:2.1;color:#d0ae94;max-width:410px}.gameplay-copy .stage-button{margin-top:12px;min-height:43px;padding:11px 18px;font-size:11px}
.scene-wall{display:grid;grid-template-columns:1fr 1fr;gap:24px}.scene-print{position:relative;padding:9px 9px 17px;background:#e3cca0;color:#6b3540;box-shadow:5px 9px 18px #22000b5e;text-align:left;transform:rotate(-1.5deg);transition:transform .35s}.scene-print:nth-child(2){transform:rotate(1.5deg)}.scene-print:nth-child(3){transform:rotate(.8deg)}.scene-print:nth-child(4){transform:rotate(-1deg)}.scene-print:hover{transform:rotate(0) translateY(-5px)}.scene-print img{width:100%;aspect-ratio:1.65;object-fit:cover;filter:saturate(.85)}.scene-print>span{display:flex;align-items:center;justify-content:space-between;padding:16px 9px 0;font:18px var(--serif);letter-spacing:1px}.scene-print small{font:11px var(--sans);color:#956b4b}.scene-print>i{position:absolute;top:18px;right:18px;background:#3b0d1ca8;border:1px solid #e6c389aa;color:#f7dfac;width:31px;height:31px;display:grid;place-items:center;font-style:normal;font-size:18px}.scene-wall .scene-print:nth-child(3){margin-left:18px}.scene-wall .scene-print:nth-child(4){margin-right:18px}.scene-section>p{text-align:center;font-size:12px;letter-spacing:1px;color:#be9780;margin:34px 0 0}
.invitation-section{padding-top:90px;padding-bottom:105px;text-align:center;isolation:isolate;overflow:hidden}.invitation-section:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(#360b1900,#2406136b)}.final-invite{display:block;width:min(660px,100%);margin:0 auto;padding:48px 45px 43px;background:#ead6ac;color:#6e3038;outline:1px solid #dfbd7c;outline-offset:10px;border:1px solid #9f7251;box-shadow:0 20px 55px #25020b70;position:relative}.final-invite:before,.final-invite:after{content:"";position:absolute;top:calc(50% - 14px);width:28px;height:28px;border-radius:50%;background:#54131f;border:1px solid #ba945a}.final-invite:before{left:-15px}.final-invite:after{right:-15px}.final-invite .stage-eyebrow{color:#9c6c46;font-size:11px}.final-invite h2{font:clamp(34px,3.4vw,54px)/1.4 var(--serif);letter-spacing:3px;margin:20px 0;color:#7f333b}.final-invite p{font-size:13px;letter-spacing:1px;color:#936348;margin-bottom:25px}.final-invite .stage-button.gold{background:#8b343c;color:#f2dbad;border-color:#8b343c}.final-invite>small{display:block;color:#9e7654;font-size:11px;margin-top:20px}.theatre-site .site-footer{background:#42111cf5;color:#c5a479;border-top:1px solid #be965355;padding:26px 5% 32px;min-height:85px;flex-wrap:wrap;font-size:11px}.theatre-site .site-footer button{color:#e6c88d;font-size:12px}.theatre-site .site-footer>span:first-child{font:13px Georgia;letter-spacing:2px}.theatre-site .fx-toolbar{color:#efd9af;background:#521824ed;border-color:#d6ae7555}.theatre-site .fx-status{border-color:#d1b06c44}.theatre-site .effect-toggle{color:#d6bb8d;border-color:#d1b06c44}.theatre-site .fx-status i{background:#dcb569}.theatre-site .particle.confetti:after{box-shadow:1px 3px 4px #20010c35}.theatre-site .stage-reveal{opacity:1;transform:none}.theatre-ready .stage-reveal{opacity:0;transform:translateY(20px);transition:opacity .75s ease,transform .75s ease}.theatre-ready .stage-reveal.is-visible{opacity:1;transform:none}
@media(max-width:1150px){.theatre-site .main-nav{gap:19px}.theatre-site .main-nav a{font-size:12px}.theatre-site .brand{font-size:16px}.theatre-site .header-actions{gap:13px}.theatre-site .version-link{font-size:10px}.cast-stage{grid-template-columns:.6fr 1.4fr;gap:35px}.theatre-site .cast-stage .cast-info{padding:24px 20px}.theatre-site .cast-stage .cast-name{font-size:29px}.theatre-site .cast-stage .cast-description{font-size:12px}.theatre-site .cast-stage .cast-tabs button{font-size:11px;padding:10px 9px}.memory-main{height:410px}.gameplay-row{gap:5vw}}
@media(max-width:900px){.theatre-site .site-header{height:80px}.theatre-site .main-nav{display:none;background:#571d29fa;border-color:#c4a06477;top:79px;gap:22px}.theatre-site .main-nav.is-open{display:flex}.theatre-site .main-nav a{font-size:13px}.stage-section{padding:66px var(--stage-pad) 75px}.stage-heading h2{font-size:38px}.stage-heading>p{font-size:13px}.stage-eyebrow{font-size:10px;letter-spacing:3px}.trailer-section{padding-top:53px}.video-cover-control strong{font-size:24px}.video-play-disc{width:70px;height:70px;font-size:25px}.story-spread{gap:6vw}.stage-copy>p{font-size:13px}.memory-main{height:385px}.memory-photo{width:130px;left:-20px}.memory-photo img{height:150px}.story-quote{font-size:18px}.cast-stage{grid-template-columns:1fr;gap:30px}.cast-stage .stage-heading{text-align:center}.cast-stage .stage-heading>p{margin:auto}.cast-undertext{display:none}.theatre-site .cast-stage .cast-dossier{max-width:720px;margin:auto;min-height:380px}.theatre-site .cast-stage .cast-portrait{min-height:370px;background-size:auto 140%}.theatre-site .cast-stage .cast-info{padding:28px}.theatre-site .cast-stage .cast-description{font-size:13px}.theatre-site .cast-stage .cast-tabs button{font-size:12px;padding:10px 14px}.gameplay-copy h3{font-size:31px}.gameplay-copy p{font-size:13px}.gameplay-copy>span{font-size:10px}.gameplay-row{margin-bottom:45px;padding-bottom:45px;gap:4vw}.gameplay-art>span{font-size:9px}.scene-wall{gap:21px}.scene-print>span{font-size:16px}.scene-print small{font-size:10px}}
@media(max-width:600px){html[data-layout="theatre"]{scroll-padding-top:85px}.theatre-site{--stage-pad:26px;padding-bottom:12px}.theatre-site .poster-sheet:after{inset:5px}.theatre-site .site-header{height:73px;padding:0 18px}.theatre-site .brand{font-size:14px}.theatre-site .brand small{font-size:7px}.theatre-site .main-nav{top:72px;gap:20px;left:10px;right:10px;padding:18px 13px;flex-wrap:wrap}.theatre-site .main-nav a{font-size:12px}.theatre-site .hero{min-height:815px;height:calc(100svh - 96px)}.theatre-site .hero-content{top:112px}.theatre-site .hero-footer{height:81px;padding:0 7%}.theatre-site .footer-invitation{font-size:11px}.theatre-longform:before{left:11px}.theatre-longform:after{right:11px}.stage-section{padding:51px var(--stage-pad) 61px}.stage-heading{margin-bottom:31px}.stage-heading h2{font-size:30px;letter-spacing:1px;line-height:1.5;margin-bottom:15px}.stage-heading>p{font-size:12px;letter-spacing:.5px;line-height:2}.stage-eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:15px}.stage-heading .stage-ornament{font-size:23px;margin-bottom:17px}.stage-ornament:before,.stage-ornament:after{width:41px}.trailer-section{padding-top:46px}.video-proscenium{margin-top:43px;padding:6px;outline-offset:4px;box-shadow:0 15px 28px #21010c66,0 0 0 6px #5e1c28}.curtain-valance{height:40px;top:-19px;left:-12px;right:-12px;border-bottom-width:3px}.video-frame{aspect-ratio:1.35}.trailer-image{object-position:center}.video-curtain{width:9%}.video-cover-control{inset:21px 10% 12px}.video-play-disc{width:52px;height:52px;font-size:20px;outline-offset:5px}.video-cover-control strong{font-size:20px;margin-top:21px;letter-spacing:2px}.video-cover-control small{font-size:10px;letter-spacing:.5px;line-height:1.8;max-width:220px;margin-top:10px}.trailer-caption{font-size:11px;gap:10px;padding:14px 3px 4px;flex-wrap:wrap}.trailer-status{min-width:140px}.trailer-art-controls{gap:8px}.trailer-art-count{font-size:10px}.trailer-art-controls button{width:22px;font-size:19px}.trailer-footnote{font-size:11px;margin-top:21px;letter-spacing:0;line-height:1.9}.quality-controls{margin-top:5px}.stage-button{font-size:12px;min-height:45px;padding:12px 20px;gap:22px}.story-spread{grid-template-columns:1fr;gap:32px}.story-section .stage-heading{margin-bottom:22px}.story-section .stage-heading h2{font-size:32px}.stage-copy>p{max-width:none;font-size:13px;line-height:2.15}.story-quote{font-size:19px;line-height:1.8;margin:25px 0}.story-quote small{font-size:11px}.stage-copy .stage-button{margin-top:12px}.memory-composition{margin:5px 0 40px 16px}.memory-main{height:335px;border-width:5px;box-shadow:9px 12px 0 #2c08184a}.memory-photo{width:124px;left:-23px;bottom:-27px;padding:6px 6px 12px}.memory-photo img{height:144px}.memory-photo>span{font-size:11px;margin-top:10px}.memory-caption{font-size:10px;margin-top:15px}.cast-stage{gap:26px}.cast-stage .stage-heading h2{font-size:31px}.theatre-site .cast-stage .cast-dossier{grid-template-columns:1fr;padding:8px;outline-offset:4px}.theatre-site .cast-stage .cast-portrait{height:305px;min-height:305px;background-size:auto 200%;background-position:4% top;border-right:0;border-bottom:1px solid #a27c5655}.theatre-site .cast-stage .cast-info{padding:24px 17px 20px}.theatre-site .cast-stage .cast-name{font-size:30px}.theatre-site .cast-stage .cast-description{font-size:13px}.theatre-site .cast-stage .cast-tabs{gap:6px}.theatre-site .cast-stage .cast-tabs button{padding:10px 12px;font-size:12px}.gameplay-section .stage-heading{margin-bottom:35px}.gameplay-row,.gameplay-row:nth-child(odd){grid-template-columns:1fr;gap:25px;padding-bottom:33px;margin-bottom:37px}.gameplay-row:nth-child(odd) .gameplay-art{order:0}.gameplay-copy>span{font-size:10px;letter-spacing:2px;margin-bottom:15px}.gameplay-copy h3{font-size:28px;letter-spacing:1px;margin-bottom:15px}.gameplay-copy p{font-size:13px;line-height:2;max-width:none}.gameplay-copy .stage-button{font-size:11px;margin-top:8px}.gameplay-art>img{aspect-ratio:1.5;outline-width:4px}.gameplay-art>span{font-size:10px;bottom:12px;left:13px;padding:6px 10px}.scene-wall{grid-template-columns:1fr;gap:29px;padding:0 4px}.scene-print{padding:7px 7px 15px}.scene-print>span{font-size:19px;padding-top:15px}.scene-print small{font-size:11px}.scene-wall .scene-print:nth-child(3){margin:0}.scene-wall .scene-print:nth-child(4){margin:0}.scene-section>p{font-size:11px;line-height:1.9;margin-top:28px}.invitation-section{padding:67px 33px 77px}.final-invite{padding:36px 22px 31px;outline-offset:6px}.final-invite h2{font-size:32px;letter-spacing:1px;margin:18px 0}.final-invite p{font-size:12px;line-height:1.9;letter-spacing:.5px}.final-invite .stage-eyebrow{font-size:10px}.final-invite>small{font-size:10px;line-height:1.9}.final-invite .stage-button{font-size:12px;gap:18px}.theatre-site .site-footer{padding:24px 7% 30px;gap:14px;font-size:10px}.theatre-site .site-footer>span:first-child{font-size:11px}.theatre-site .site-footer .footer-edition{display:block;font-size:10px}.theatre-site .site-footer button{font-size:11px}.theatre-site .fx-toolbar{right:12px;bottom:11px}.theatre-site .fx-toolbar button{font-size:10px}.theatre-site .fx-status{font-size:9px}}
.cordon-finale{padding:0 var(--stage-pad);min-height:730px;overflow:hidden;isolation:isolate;text-align:center}
.cordon-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 43%,#af44351a,transparent 64%),linear-gradient(#2e071b16,#210612aa)}
.cordon-tape{position:absolute;left:-10%;width:120%;height:78px;display:flex;align-items:center;overflow:hidden;z-index:3;color:#341a1d;background:#d7b46a;border-top:1px solid #f4d59c;border-bottom:1px solid #6a3a22;box-shadow:0 10px 25px #1d000b70;pointer-events:none;isolation:isolate}
.cordon-tape:before,.cordon-tape:after{content:"";position:absolute;left:-34px;right:-34px;height:9px;background:repeating-linear-gradient(126deg,#49202b 0 13px,#d7b46a 13px 27px);background-size:34px 100%;pointer-events:none;z-index:2;opacity:.88;animation:cordon-edge-flow 1.6s linear infinite;animation-play-state:paused}
.cordon-tape:before{top:4px}.cordon-tape:after{bottom:4px}
.cordon-tape-front{top:65px;transform:rotate(-4deg)}
.cordon-tape-back{bottom:102px;transform:rotate(4deg);height:66px;background:#4f1724;color:#d1ab6f;border-color:#c49a5a8c;box-shadow:0 7px 22px #1b000d80}
.cordon-tape-back:before,.cordon-tape-back:after{background:repeating-linear-gradient(126deg,#b68b4e 0 12px,transparent 12px 26px);height:5px;opacity:.7}
.cordon-tape-back:before,.cordon-tape-back:after{background-size:34px 100%;animation-duration:1.9s;animation-direction:reverse}
.cordon-track{display:flex;align-items:center;flex:none;width:max-content;animation:cordon-flow 38s linear infinite;animation-play-state:paused}
.cordon-repeat{display:flex;align-items:center;justify-content:space-around;flex:none;gap:37px;padding-right:37px;white-space:nowrap;font:700 21px/1.1 var(--sans);letter-spacing:3px}
.cordon-repeat b{font-weight:700;letter-spacing:4px}.cordon-repeat>span{font-family:"Arial Narrow",Impact,var(--sans);font-size:22px;letter-spacing:2px}.cordon-repeat i{font:20px Georgia;font-style:normal;opacity:.75}
.cordon-tape-back .cordon-track{animation-duration:52s;animation-direction:reverse}.cordon-tape-back .cordon-repeat{gap:30px;padding-right:30px;font-size:17px;letter-spacing:2px}.cordon-tape-back .cordon-repeat>span{font-size:18px;letter-spacing:2px}.cordon-tape-back .cordon-repeat b{letter-spacing:3px}
.cordon-finale.is-cordon-visible .cordon-track,.cordon-finale.is-cordon-visible .cordon-tape:before,.cordon-finale.is-cordon-visible .cordon-tape:after{animation-play-state:running}
.cordon-content{position:relative;z-index:2;max-width:800px;padding:190px 0 188px;margin:auto;color:#f1dbb4}
.cordon-notice{display:flex;align-items:center;justify-content:center;gap:11px;font-size:12px;letter-spacing:2px;color:#d0a76d;margin-bottom:27px}.cordon-notice>i{width:5px;height:5px;background:#d0a76d;transform:rotate(45deg)}.cordon-notice>span{font-size:9px;letter-spacing:2px;margin-left:9px;padding-left:20px;border-left:1px solid #c19a5b66}
.cordon-content h2{font:clamp(36px,4.7vw,72px)/1.45 var(--serif);letter-spacing:4px;color:#f1ddba;margin:0 0 25px;text-shadow:0 3px 20px #250413}
.cordon-haunt{position:relative;display:inline-block;color:#dfb978;isolation:isolate}
.cordon-haunt:before,.cordon-haunt:after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;opacity:0;animation:cordon-type-echo 13s steps(1,end) infinite;animation-play-state:paused}
.cordon-haunt:before{color:#e75f64;clip-path:inset(12% 0 54%);--echo-x:-3px;--echo-y:1px}
.cordon-haunt:after{color:#ead1a5;clip-path:inset(57% 0 10%);--echo-x:3px;--echo-y:-1px;animation-delay:.08s}
.is-cordon-visible .cordon-haunt:before,.is-cordon-visible .cordon-haunt:after{animation-play-state:running}
.cordon-content>p{color:#c7a78f;font-size:14px;letter-spacing:1px;line-height:2;margin:0 0 29px}
.cordon-content .cordon-cta{position:relative;gap:35px;padding:15px 26px;min-height:53px;border:1px solid #d7b374;background:#d7b374;color:#4a1b27;box-shadow:0 7px 26px #27020c55;font-size:13px;letter-spacing:1px}
.cordon-content .cordon-cta:hover{background:#efd199;border-color:#efd199;transform:translateY(-3px)}
.cordon-cta>span:last-child{font-size:20px}.cordon-content>small{display:block;font-size:11px;letter-spacing:1px;color:#b28c74;margin-top:19px;line-height:1.8}
.cordon-case{position:absolute;right:0;bottom:41px;left:0;font:9px Georgia;letter-spacing:4px;color:#b78c6180}
[data-effects="off"] .cordon-track,[data-effects="off"] .cordon-tape:before,[data-effects="off"] .cordon-tape:after{animation:none}[data-effects="off"] .cordon-haunt:before,[data-effects="off"] .cordon-haunt:after{animation:none;opacity:0}
[data-suspended="true"] .cordon-tape:before,[data-suspended="true"] .cordon-tape:after,[data-overlay="true"] .cordon-track,[data-overlay="true"] .cordon-tape:before,[data-overlay="true"] .cordon-tape:after{animation-play-state:paused!important}
@keyframes cordon-flow{to{transform:translateX(-50%)}}
/* 上层文字向左、边纹向右；下层同时反转，固定周期无缝衔接。 */
@keyframes cordon-edge-flow{from{transform:translate3d(0,0,0)}to{transform:translate3d(34px,0,0)}}
@keyframes cordon-type-echo{0%,85%,88%,100%{opacity:0;transform:none}85.4%,86.2%{opacity:.8;transform:translate(var(--echo-x),var(--echo-y))}85.8%,86.8%{opacity:.3;transform:translate(calc(var(--echo-x) * -1),0)}}
@media(max-width:900px){.cordon-content{padding:177px 0 182px}.cordon-content h2{font-size:53px;letter-spacing:2px}.cordon-tape{height:69px}.cordon-tape-front{top:59px}.cordon-tape-back{height:61px;bottom:98px}.cordon-repeat{font-size:18px;letter-spacing:2px;gap:29px;padding-right:29px}.cordon-repeat>span{font-size:19px}.cordon-repeat b{letter-spacing:2px}.cordon-tape-back .cordon-repeat{font-size:15px}.cordon-tape-back .cordon-repeat>span{font-size:16px}.cordon-notice{font-size:11px;letter-spacing:1px}.cordon-notice>span{font-size:8px;letter-spacing:1px}}
@media(max-width:600px){.cordon-finale{min-height:650px;padding:0 26px}.cordon-tape{left:-16%;width:132%;height:58px}.cordon-tape:before,.cordon-tape:after{height:6px;background-size:34px 100%}.cordon-tape:before{top:3px}.cordon-tape:after{bottom:3px}.cordon-tape-front{top:52px;transform:rotate(-6deg)}.cordon-tape-back{height:53px;bottom:96px;transform:rotate(6deg)}.cordon-tape-back:before,.cordon-tape-back:after{height:4px}.cordon-repeat{font-size:15px;gap:22px;padding-right:22px;letter-spacing:1px}.cordon-repeat b{letter-spacing:2px}.cordon-repeat>span{font-size:16px;letter-spacing:1px}.cordon-repeat i{font-size:15px}.cordon-tape-back .cordon-repeat{font-size:13px;gap:22px;padding-right:22px}.cordon-tape-back .cordon-repeat>span{font-size:14px;letter-spacing:1px}.cordon-tape-back .cordon-repeat b{letter-spacing:1px}.cordon-content{padding:156px 0 182px}.cordon-notice{gap:8px;font-size:11px;margin-bottom:24px;letter-spacing:1px}.cordon-notice>span{display:none}.cordon-content h2{font-size:clamp(30px,8.5vw,40px);line-height:1.55;letter-spacing:1px;margin-bottom:22px}.cordon-content>p{font-size:13px;letter-spacing:.5px;line-height:2;margin-bottom:26px}.cordon-content .cordon-cta{font-size:12px;gap:24px;min-height:50px;padding:13px 21px}.cordon-content>small{font-size:10px;letter-spacing:.5px;margin-top:17px}.cordon-case{font-size:8px;letter-spacing:2px;bottom:36px}}
@media(prefers-reduced-motion:reduce){.cordon-track,.cordon-tape:before,.cordon-tape:after,.cordon-haunt:before,.cordon-haunt:after{animation:none!important}.cordon-haunt:before,.cordon-haunt:after{opacity:0}}
/* Compact centered spreads follow the established trailer composition. */
.theatre-site .theatre-longform{--resource-width:540px;--copy-width:560px;--spread-width:1100px}
.theatre-site .story-spread{display:flex;flex-direction:column;gap:35px;max-width:var(--spread-width);margin:0 auto}
.theatre-site .story-spread .stage-copy{width:min(var(--copy-width),100%);text-align:center}
.theatre-site .story-section .stage-heading{text-align:center;margin-bottom:24px}
.theatre-site .story-section .stage-heading h2{font-size:clamp(30px,3vw,46px);line-height:1.55;letter-spacing:1px}
.theatre-site .story-section .stage-heading h2 br{display:none}
.theatre-site .stage-copy>p{max-width:520px;margin:0 auto 16px;line-height:2.1}
.theatre-site .story-quote{width:fit-content;max-width:100%;margin:24px auto;padding:0 0 0 18px;text-align:left;font-size:19px}
.theatre-site .stage-copy .stage-button{margin-top:7px}
.theatre-site .memory-composition{width:min(var(--resource-width),calc(100% - 20px));margin:10px auto 30px}
.theatre-site .memory-main{height:auto;aspect-ratio:1.65;object-fit:cover;box-shadow:7px 10px 0 #2c08184a}
.theatre-site .memory-photo{width:124px;left:-20px;bottom:-24px;padding:6px 6px 12px}
.theatre-site .memory-photo img{height:142px}
.theatre-site .memory-photo>span{font-size:11px;margin-top:9px}
.theatre-site .memory-caption{font-size:10px;margin-top:15px}
.theatre-site .cast-stage{grid-template-columns:minmax(0,1fr);gap:30px;max-width:var(--spread-width);margin:0 auto}
.theatre-site .cast-stage>.stage-heading{width:min(var(--copy-width),100%);margin:0 auto;text-align:center}
.theatre-site .cast-stage>.stage-heading h2{font-size:clamp(30px,3vw,46px);line-height:1.55;letter-spacing:1px}
.theatre-site .cast-stage>.stage-heading h2 br{display:none}
.theatre-site .cast-stage>.stage-heading>p{max-width:440px;margin:0 auto}
.theatre-site .cast-undertext{margin:17px auto 0;font-size:16px;line-height:1.9;letter-spacing:.5px}
.theatre-site .cast-stage .cast-dossier{width:min(780px,100%);max-width:780px;min-height:340px;grid-template-columns:minmax(0,340px) minmax(0,1fr);margin:0 auto;padding:9px}
.theatre-site .cast-stage .cast-portrait{height:340px;min-height:340px;background-size:auto 137%;background-position:3% top}
.theatre-site .cast-stage .cast-info{min-width:0;padding:23px 26px}
.theatre-site .cast-stage .cast-description{max-width:340px;line-height:2.05;margin:21px 0 24px}
.theatre-site .cast-stage .cast-tabs{gap:6px}
.theatre-site .cast-stage .cast-tabs button{padding:9px 12px}
.theatre-site .gameplay-section>.stage-heading{max-width:var(--copy-width);margin:0 auto 42px}
.theatre-site .gameplay-row,.theatre-site .gameplay-row:nth-child(odd){display:grid;grid-template-columns:minmax(0,1fr);gap:26px;max-width:780px;margin:0 auto 47px;padding:0 0 47px;justify-items:center;text-align:center}
.theatre-site .gameplay-row:last-child{margin-bottom:0;padding-bottom:0}
.theatre-site .gameplay-row .gameplay-art,.theatre-site .gameplay-row:nth-child(odd) .gameplay-art{width:min(var(--resource-width),100%);order:0}
.theatre-site .gameplay-art>img{aspect-ratio:1.65;box-shadow:0 9px 22px #20010b55}
.theatre-site .gameplay-copy{width:min(520px,100%);min-width:0;text-align:center}
.theatre-site .gameplay-copy>span{margin-bottom:14px;letter-spacing:2px}
.theatre-site .gameplay-copy h3{font-size:clamp(27px,2.6vw,37px);line-height:1.55;letter-spacing:1px;margin-bottom:17px}
.theatre-site .gameplay-copy h3 br{display:none}
.theatre-site .gameplay-copy p{max-width:480px;margin:0 auto 16px;line-height:2.05}
.theatre-site .gameplay-copy .stage-button{margin-top:3px}
.theatre-site .scene-section>.stage-heading{max-width:var(--copy-width);margin-left:auto;margin-right:auto}
.theatre-site .scene-wall{width:min(var(--spread-width),100%);margin:0 auto;gap:20px;align-items:stretch}
.theatre-site .scene-print,.theatre-site .scene-print:nth-child(2),.theatre-site .scene-print:nth-child(3),.theatre-site .scene-print:nth-child(4){min-width:0;transform:none;margin:0;padding:8px 8px 15px}
.theatre-site .scene-print:hover{transform:translateY(-3px)}
.theatre-site .scene-print img{aspect-ratio:1.65}
.theatre-site .scene-print>span{font-size:16px;letter-spacing:.5px;padding:14px 5px 0}
.theatre-site .scene-print small{font-size:10px}
@media(max-width:800px){
  .theatre-site .cast-stage .cast-dossier{width:min(650px,100%);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
  .theatre-site .cast-stage .cast-portrait{height:auto;min-height:340px}
  .theatre-site .cast-stage .cast-info{padding:23px 20px}
  .theatre-site .cast-stage .cast-name{font-size:28px}
  .theatre-site .cast-stage .cast-tabs button{padding:9px 10px;font-size:11px}
  .theatre-site .scene-print>span{flex-wrap:wrap;gap:7px;font-size:15px}
  .theatre-site .scene-wall{gap:17px}
}
@media(max-width:600px){
  .theatre-site .story-spread{gap:27px}
  .theatre-site .stage-copy>p{font-size:13px;line-height:2.1}
  .theatre-site .story-section .stage-heading h2,.theatre-site .cast-stage>.stage-heading h2{font-size:29px;letter-spacing:0;line-height:1.6}
  .theatre-site .story-quote{font-size:17px;margin:23px auto}
  .theatre-site .memory-composition{width:calc(100% - 16px);margin:8px auto 27px}
  .theatre-site .memory-main{height:auto;border-width:5px;aspect-ratio:1.65}
  .theatre-site .memory-photo{width:100px;left:-15px;bottom:-22px;padding:5px 5px 10px}
  .theatre-site .memory-photo img{height:113px}
  .theatre-site .memory-photo>span{font-size:10px;margin-top:8px}
  .theatre-site .memory-caption{margin-left:92px;font-size:9px;letter-spacing:0}
  .theatre-site .cast-stage{gap:25px}
  .theatre-site .cast-undertext{display:block;font-size:14px;line-height:1.95;margin-top:16px}
  .theatre-site .cast-stage .cast-dossier{width:min(410px,100%);grid-template-columns:minmax(0,1fr);padding:7px;min-height:0}
  .theatre-site .cast-stage .cast-portrait{height:290px;min-height:290px;background-size:auto 137%;background-position:3% top}
  .theatre-site .cast-stage .cast-info{padding:23px 19px}
  .theatre-site .cast-stage .cast-description{max-width:none;margin:20px 0 23px}
  .theatre-site .cast-stage .cast-tabs button{font-size:12px;padding:9px 12px}
  .theatre-site .gameplay-section>.stage-heading{margin-bottom:33px}
  .theatre-site .gameplay-row,.theatre-site .gameplay-row:nth-child(odd){gap:23px;margin-bottom:34px;padding-bottom:34px}
  .theatre-site .gameplay-copy h3{font-size:27px;line-height:1.6;letter-spacing:0}
  .theatre-site .gameplay-copy p{font-size:13px;line-height:2.05}
  .theatre-site .scene-wall{grid-template-columns:1fr;gap:23px;padding:0 3px}
  .theatre-site .scene-print>span{font-size:17px;gap:8px;padding-top:13px}
  .theatre-site .scene-print small{font-size:10px}
}
/* Compact title paper: only the backing becomes opaque; type stays fully inked. */
.theatre-site .hero-content{width:min(374px,34%);padding:22px 25px 21px;left:5.8%;top:126px;text-align:left}
.theatre-site .hero-content:before{background:#fff0d5;opacity:1;clip-path:polygon(0 1%,97% 0,100% 2%,99% 97%,97% 100%,1% 98%)}
.theatre-site .hero-kicker{font:12px/1.6 "KaiTi","楷体","STKaiti",var(--serif);letter-spacing:1px;text-align:center;margin-bottom:13px;color:#8b4434}
.theatre-site .hero-title{font-family:"KaiTi","楷体","STKaiti","SimSun",serif;font-size:44px;font-weight:700;line-height:1.08;text-align:center;letter-spacing:0;transform:none;color:#8c292b;text-shadow:.5px 1px 0 #bd784825;margin:0}
.theatre-site .hero-title .title-lead{display:block;font-size:1em;line-height:1.12;letter-spacing:.09em;margin:0 0 1px;transform:rotate(-2deg)}
.theatre-site .hero-title .title-main{display:block;font-size:1.48em;line-height:1.12;letter-spacing:.14em;margin:0 0 0 .1em;transform:rotate(-2deg)}
.theatre-site .hero-title i{display:inline-block;font-style:normal}
.theatre-site .title-lead i:first-child{transform:rotate(-5deg) translateY(1px)}
.theatre-site .title-lead i:nth-child(2){transform:translateY(-2px)}
.theatre-site .title-lead i:last-child{transform:rotate(3deg)}
.theatre-site .title-main i:first-child{transform:rotate(-4deg) translateY(2px)}
.theatre-site .title-main i:last-child{transform:rotate(3deg) translateY(-1px)}
.theatre-site .english-title{display:flex;align-items:center;justify-content:center;gap:10px;font:11px/1.4 Georgia,serif;font-variant:small-caps;letter-spacing:1.9px;border:0;padding:0;margin:15px 0 0;color:#813c31;white-space:nowrap}
.theatre-site .english-title:before,.theatre-site .english-title:after{content:"";flex:1;max-width:25px;height:1px;background:#b282576e}
.theatre-site .hero-description{font:13px/1.9 "KaiTi","楷体","STKaiti",var(--serif);color:#6d392c;letter-spacing:.5px;margin:17px 0 19px;max-width:none;text-align:center}
.theatre-site .hero-buttons{display:flex;align-items:center;justify-content:center;flex-direction:row;flex-wrap:nowrap;gap:13px}
.theatre-site .hero-buttons .button{font-size:11px;letter-spacing:0;min-height:41px;padding:10px 14px;gap:10px}
.theatre-site .hero-buttons .button-ghost{font-size:10px;padding:8px 0;gap:8px;min-height:35px}
.theatre-site .hero-buttons .play-icon{font-size:16px}
.theatre-site .hero-buttons .button>span:last-child{font-size:14px}
.theatre-site .genre-label{justify-content:center;font-size:10px;line-height:1.5;letter-spacing:.2px;gap:9px;margin-top:15px;color:#84563f}
@media(min-width:1800px){.theatre-site .hero-content{width:395px;padding:24px 27px 23px;top:150px}.theatre-site .hero-title{font-size:48px}}
@media(max-width:1100px){.theatre-site .hero-content{width:min(352px,39%);padding:21px 22px;top:126px}.theatre-site .hero-title{font-size:42px}.theatre-site .hero-kicker{font-size:11px}.theatre-site .hero-description{font-size:13px}.theatre-site .hero-buttons{gap:12px}.theatre-site .english-title{font-size:10px;letter-spacing:1.5px}}
@media(max-width:900px){.theatre-site .hero-content{width:min(335px,45%);padding:21px;top:130px}.theatre-site .hero-title{font-size:40px}.theatre-site .hero-title .title-main{font-size:1.44em}.theatre-site .hero-buttons .button{font-size:10px;padding:10px 12px;gap:8px}.theatre-site .hero-buttons .button-ghost{font-size:10px;padding:8px 0;gap:7px}.theatre-site .genre-label{font-size:9px;gap:8px}.theatre-site .hero-description{font-size:12px;letter-spacing:.4px}}
@media(max-width:600px){.theatre-site .hero-content{width:min(300px,80%);left:7%;top:114px;padding:21px 20px 20px}.theatre-site .hero-kicker{font-size:11px;letter-spacing:.4px;margin-bottom:12px}.theatre-site .hero-title{font-size:37px}.theatre-site .hero-title .title-lead{font-size:1em;letter-spacing:.07em;line-height:1.12}.theatre-site .hero-title .title-main{font-size:1.46em;letter-spacing:.12em;line-height:1.13}.theatre-site .english-title{font-size:10px;letter-spacing:1px;gap:8px;margin-top:13px}.theatre-site .english-title:before,.theatre-site .english-title:after{max-width:18px}.theatre-site .hero-description{font-size:12px;line-height:1.9;letter-spacing:0;margin:16px 0 17px}.theatre-site .hero-buttons{gap:11px}.theatre-site .hero-buttons .button{font-size:10px;padding:10px 12px;gap:8px;min-height:40px}.theatre-site .hero-buttons .button-ghost{font-size:10px;min-height:33px;padding:7px 0;gap:6px}.theatre-site .genre-label{font-size:9px;letter-spacing:0;gap:8px;margin-top:14px}}
@media(max-width:360px){.theatre-site .hero-content{width:82%;padding:20px 17px}.theatre-site .hero-title{font-size:35px}.theatre-site .hero-kicker{font-size:10px}.theatre-site .hero-buttons{gap:9px}.theatre-site .hero-buttons .button{font-size:9px;padding:10px 10px;gap:6px}.theatre-site .hero-buttons .button-ghost{font-size:9px;padding:7px 0;gap:5px}.theatre-site .genre-label{font-size:8px;gap:7px}.theatre-site .english-title{font-size:9px;letter-spacing:1px}}
.stage-heading h2,.gameplay-copy h3{white-space:nowrap;max-width:100%;letter-spacing:1px}
.story-section>.stage-heading{text-align:center;margin-bottom:48px}
.story-section>.stage-heading h2{font-size:clamp(18px,3.4vw,53px)}
.story-section .story-spread{min-width:0}
.stage-copy,.gameplay-copy,.cast-stage>.stage-heading{min-width:0}
@media(max-width:600px){.story-section>.stage-heading{margin-bottom:28px}.story-section>.stage-heading h2{font-size:clamp(16px,4vw,24px);letter-spacing:0}}
.trailer-art-controls[hidden]{display:none}
@media(prefers-reduced-motion:reduce){.theatre-ready .stage-reveal{opacity:1;transform:none;transition:none}.scene-print,.scene-print:hover{transform:none}}
