:root{--brown:#291503;--brown-deep:#211002;--brown-card:#321d0d;--gold:#E8BD84;--gold-light:#F5D7A4;--muted:#B99D79;--blue:#4F86B3;--line:#c69b6054;--body:Montserrat,Arial,sans-serif;--display:'Playfair',Georgia,serif;--script:'Great Vibes',cursive}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--brown);color:var(--gold-light);font-family:var(--body);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:6px}::selection{background:var(--blue);color:var(--gold-light)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:16px;z-index:20;padding:12px 20px;background:var(--gold);color:var(--brown)}.skip-link:focus{top:15px}.reading-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:12;pointer-events:none}.reading-progress span{height:100%;display:block;background:var(--gold);transform:scaleX(0);transform-origin:left}.header{height:100px;max-width:1320px;padding:0 45px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px}.brand img{height:53px;width:55px;object-fit:contain;mix-blend-mode:lighten}.brand>span{font:italic 500 29px/1 var(--display);letter-spacing:-.7px}.brand small{display:block;font:500 8px/1.3 var(--body);letter-spacing:2.8px;margin:8px 0 0 3px}.header nav{display:flex;gap:29px;align-items:center;font-size:11px;color:var(--gold);letter-spacing:.4px}.header nav a{padding-block:12px}.header nav a:hover{color:var(--gold-light)}.button{background:var(--gold);border:1px solid var(--gold);color:var(--brown-deep);padding:14px 25px;min-height:49px;display:inline-flex;align-items:center;justify-content:center;gap:26px;font-size:12px;font-weight:700;letter-spacing:.2px;border-radius:2px;transition:background .2s,color .2s,box-shadow .2s;position:relative}.button:before{content:'';position:absolute;inset:3px;border:1px solid #29150340;pointer-events:none}.button:hover{background:var(--gold-light);box-shadow:0 4px 24px #bd93581c}.button>span{font-size:19px;font-weight:400;line-height:1}.nav-cta{min-height:41px;padding:11px 17px;font-size:10px;gap:22px}.eyebrow{font-size:9px;font-weight:500;letter-spacing:2.5px;line-height:1.6;text-transform:uppercase;color:var(--gold);margin:0 0 22px}.eyebrow>span{color:var(--blue);margin-inline:9px}.hero{padding:33px 35px 28px;max-width:1370px;margin:auto;position:relative;overflow:hidden}.hero-eyebrow{text-align:center;font-size:8px;letter-spacing:2.4px;margin-bottom:25px}.hero-art{width:100%;max-width:1200px;margin:auto}.hero-art img{width:100%;height:auto;display:block;mix-blend-mode:lighten}.hero-bottom{display:flex;justify-content:center;position:relative;min-height:180px;padding:28px 150px 8px;align-items:center}.hero-meta{text-align:center;position:relative;z-index:1}.hero-datetime{display:flex;align-items:center;justify-content:center;gap:24px;margin:0 0 9px;font:500 28px/1.2 var(--display);text-transform:uppercase;letter-spacing:2.7px}.hero-datetime i{font:normal 8px var(--body);color:var(--blue)}.hero-description{margin:14px 0 23px;color:var(--muted);font-size:12px;letter-spacing:.3px}.hero-actions{display:flex;justify-content:center;align-items:center;gap:28px}.text-link{font-size:11px;letter-spacing:.3px;display:inline-flex;align-items:center;gap:16px}.text-link:hover{color:var(--gold-light);text-decoration:underline;text-underline-offset:6px}.hero-mask{position:absolute;width:125px;height:120px;left:5%;top:30px;mix-blend-mode:lighten}.hero-mask img{width:100%;height:100%;object-fit:contain}.hero-fan{position:absolute;right:5%;width:110px;top:15px;mix-blend-mode:lighten}.hero-fan svg{width:100%;height:auto;display:block}.scroll-cue{display:flex;align-items:center;justify-content:center;gap:12px;font-size:7px;letter-spacing:2px;color:var(--muted);margin-top:28px}.scroll-cue>span{height:28px;width:1px;background:var(--gold);position:relative}.scroll-cue>span:after{content:'';position:absolute;bottom:0;left:-2px;width:5px;height:5px;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold);transform:rotate(45deg)}.chapter-divider{display:flex;align-items:center;gap:20px;max-width:1120px;margin:30px auto 0;padding-inline:30px}.chapter-divider>span{height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--line))}.chapter-divider>span:last-child{background:linear-gradient(90deg,var(--line),transparent)}.chapter-divider svg{width:46px;height:28px;stroke:var(--gold);fill:none;stroke-width:1}.section{max-width:1200px;padding:100px 45px;margin:auto;position:relative}.section h2{font:500 clamp(45px,4.8vw,67px)/.98 var(--display);letter-spacing:-1.4px;margin:0;color:var(--gold-light)}.section h2 em{font-weight:400}.about{display:grid;grid-template-columns:1.15fr .85fr;gap:110px;align-items:center}.about-copy .lead{font-size:18px;line-height:1.65;max-width:370px;margin:29px 0 20px;color:var(--gold-light);font-weight:400}.body-copy{font-size:13px;line-height:1.9;color:var(--muted);max-width:370px;margin:0}.event-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:400px;margin-top:32px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.event-facts>div{display:flex;flex-direction:column;gap:6px}.event-facts span{font-size:7px;letter-spacing:2px;color:var(--muted)}.event-facts strong{font:500 25px/1.2 var(--display);letter-spacing:.7px}.detail-note{font-size:10px;color:var(--muted);line-height:1.8;max-width:370px;margin:20px 0}.gold-link{color:var(--gold);font-size:10px}.poster-scene{position:relative;text-align:center;max-width:340px;margin:auto;width:100%}.poster-link{display:block;transform:rotate(3deg);position:relative;box-shadow:0 20px 45px #12080040}.poster-link:before{content:'';position:absolute;inset:-11px;border:1px solid var(--line);transform:rotate(-6deg);pointer-events:none}.official-poster{display:block;width:100%;height:auto}.poster-caption{display:block;font:italic 400 18px/1.4 var(--display);color:var(--muted);margin-top:29px}.volunteer-section{padding-top:55px;padding-bottom:50px}.section-heading{text-align:center;max-width:800px;margin:0 auto 45px}.section-heading>.eyebrow{margin-bottom:23px}.section-heading>p:last-child:not(.eyebrow){font-size:12px;color:var(--muted);margin:23px 0 0;line-height:1.8}.role-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}.role-card{position:relative;padding:9px 8px 26px;border:1px solid var(--line);background:var(--brown-card)}.role-card:before,.role-card:after{content:'';position:absolute;width:9px;height:9px;border:1px solid var(--gold);pointer-events:none}.role-card:before{left:-5px;top:-5px;background:var(--brown)}.role-card:after{right:-5px;bottom:-5px;background:var(--brown)}.role-picture{height:270px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;background:#39210e}.role-picture svg{width:78%;height:91%;display:block;mix-blend-mode:lighten}.role-copy{padding:20px 18px 0}.role-number{font:500 17px/1 var(--display);color:var(--blue);display:block;margin-bottom:13px}.role-copy h3{font:500 27px/1.08 var(--display);letter-spacing:-.3px;margin:0 0 13px;color:var(--gold-light)}.role-copy p{font-size:11px;color:var(--muted);line-height:1.8;margin:0}.role-note{text-align:center;font-size:10px;color:var(--muted);margin:27px auto 0;max-width:500px;line-height:1.8}.interlude{display:flex;justify-content:center;align-items:center;gap:35px;max-width:980px;padding:5px 45px;margin:auto;height:185px;overflow:hidden}.interlude-line{height:1px;flex:1;background:var(--line);position:relative}.interlude-line:after{content:'';height:5px;width:5px;background:var(--blue);position:absolute;right:0;top:-2px;transform:rotate(45deg)}.interlude-line:last-child:after{right:auto;left:0}.interlude-mask{width:155px;height:auto;mix-blend-mode:lighten}.registration{padding-top:50px;padding-bottom:80px}.registration-card{position:relative;display:grid;grid-template-columns:.85fr 1.15fr;max-width:990px;margin:0 auto 25px;background:var(--brown-deep);border:1px solid var(--gold);padding:14px}.registration-card:before{content:'';position:absolute;inset:6px;border:1px solid var(--line);pointer-events:none}.registration-art{padding:18px 20px;background:#39210e;min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.registration-art svg{width:210px;max-width:90%;height:275px;mix-blend-mode:lighten}.registration-art>span{font-size:8px;letter-spacing:2px;margin-top:4px}.registration-body{padding:32px 35px;display:flex;flex-direction:column;justify-content:center;min-width:0}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.card-meta .eyebrow{font-size:7px;letter-spacing:2px;margin:0}.status{font-size:8px;letter-spacing:.4px;white-space:nowrap;color:#b4c8d9;padding:5px 9px;border:1px solid #4f86b34d;border-radius:2px;background:#4f86b30c}.status:before{content:'';display:inline-block;width:4px;height:4px;background:var(--blue);border-radius:50%;margin-right:5px;vertical-align:middle}.registration-body h3{font:500 38px/1.06 var(--display);letter-spacing:-.7px;margin:28px 0 18px}.registration-body>p{font-size:12px;line-height:1.9;color:var(--muted);max-width:350px;margin:0 0 28px}.card-bottom{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.card-bottom .button{font-size:11px;padding-inline:20px;min-height:46px}.duration{font-size:9px;letter-spacing:.4px;color:var(--muted)}.registration-help{text-align:center;font-size:10px;color:var(--muted);margin:22px 0 0}.faq{padding-top:50px;display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;padding-bottom:60px}.faq h2{font-size:53px}.faq-motif{width:150px;height:220px;display:block;mix-blend-mode:lighten;margin:20px 0 0 25px}.faq-list{padding-top:12px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;font-size:12px;font-weight:500;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:21px;line-height:1;color:var(--blue);flex-shrink:0}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:11px;line-height:1.9;color:var(--muted);padding:0 28px 23px 0;margin:0}.closing{padding-top:30px;padding-bottom:55px}.closing-frame{position:relative;padding:64px 180px;text-align:center;border:1px solid var(--gold);background:var(--brown-deep);overflow:hidden}.closing-frame:before{content:'';position:absolute;inset:9px;border:1px solid var(--line);pointer-events:none}.closing h2{font-size:64px;margin:21px 0 0}.closing .eyebrow{font-size:8px;letter-spacing:2px}.closing .eyebrow>span{margin-inline:10px;font-size:6px}.frame-corner{position:absolute;height:12px;width:12px;border:1px solid var(--gold);background:var(--brown);z-index:2}.frame-corner:after{content:'';height:4px;width:4px;background:var(--gold);position:absolute;top:3px;left:3px;transform:rotate(45deg)}.top-left{top:-1px;left:-1px}.top-right{top:-1px;right:-1px}.bottom-left{bottom:-1px;left:-1px}.bottom-right{bottom:-1px;right:-1px}.closing-motif{position:absolute;top:50%;margin-top:-125px;height:250px;width:160px;mix-blend-mode:lighten;opacity:.8}.closing-left{left:22px}.closing-right{right:22px}.footer{max-width:1230px;margin:auto;padding:32px 45px 40px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line)}.footer-brand{font:italic 500 29px/1 var(--display)}.footer-brand small{display:block;font:400 8px/1.5 var(--body);letter-spacing:.8px;color:var(--muted);margin-top:10px}.footer>span,.footer>a:last-child{font-size:9px;letter-spacing:.5px;color:var(--muted)}.footer>a:last-child span{font-size:16px;color:var(--blue);margin-left:8px}.motion-toggle{position:fixed;bottom:18px;right:18px;display:flex;align-items:center;gap:7px;color:var(--gold);background:#211002ed;border:1px solid var(--line);padding:8px 11px;border-radius:3px;font-size:8px;letter-spacing:.6px;z-index:5;backdrop-filter:blur(6px)}.motion-toggle-icon{font-size:12px;line-height:1}.motion-toggle:hover{border-color:var(--gold)}.motion-toggle[aria-pressed=true]{color:var(--muted)}.scroll-prop{transform-origin:center center}dialog{background:var(--brown);color:var(--gold-light);padding:0;border:1px solid var(--gold);border-radius:4px;width:min(780px,calc(100% - 30px));max-height:92dvh;overflow:hidden;box-shadow:0 20px 100px #0007}dialog::backdrop{background:#140901cc;backdrop-filter:blur(7px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:23px 25px;gap:20px}.dialog-header .eyebrow{font-size:8px;margin:0 0 7px}.dialog-header h2{font:500 27px/1.1 var(--display);margin:0}.close-button{height:40px;width:40px;flex-shrink:0;border:1px solid var(--line);background:none;color:var(--gold);font-size:26px;line-height:1}.close-button:hover{border-color:var(--gold);background:#e8bd840d}.iframe-help{font-size:9px;display:flex;gap:7px;justify-content:center;flex-wrap:wrap;padding:12px 18px;border-block:1px solid var(--line);color:var(--muted)}.iframe-help a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}#iframe-container{height:min(700px,calc(92dvh - 145px));overflow:auto;background:#f0ebf8;-webkit-overflow-scrolling:touch}iframe{width:100%;height:100%;display:block;border:0;min-height:350px}.dialog-open{overflow:hidden}.noscript{padding:25px;text-align:center;font-size:12px}.noscript a{text-decoration:underline}.button:disabled{opacity:.5;cursor:default;box-shadow:none}@media(max-width:1050px){.header{height:90px;padding-inline:30px;gap:20px}.header nav{gap:20px;font-size:10px}.brand>span{font-size:26px}.brand img{height:45px;width:45px}.hero{padding-inline:25px}.hero-bottom{padding-inline:125px}.hero-datetime{gap:18px;font-size:25px;letter-spacing:1.7px}.hero-mask{width:105px;height:100px;left:3%}.hero-fan{width:90px;right:3%}.section{padding-inline:35px}.about{gap:65px}.section h2{font-size:58px}.about-copy .lead{font-size:16px}.body-copy{font-size:12px}.official-poster{max-width:290px;margin:auto}.poster-scene{max-width:290px}.role-cards{gap:22px}.role-picture{height:235px}.role-copy{padding-inline:12px}.role-copy h3{font-size:24px}.role-copy p{font-size:10px}.registration-body{padding:25px}.registration-body h3{font-size:34px}.registration-art svg{width:180px;height:250px}.faq{gap:60px}.faq h2{font-size:48px}.closing-frame{padding:58px 150px}.closing h2{font-size:56px}.closing-motif{width:130px;height:220px;margin-top:-110px}.closing-left{left:15px}.closing-right{right:15px}}@media(max-width:800px){.header{height:80px;padding:0 23px;margin-inline:15px;gap:15px}.header nav{display:none}.brand>span{font-size:25px}.brand img{width:40px;height:40px}.brand small{font-size:6px;letter-spacing:2.3px;margin-top:7px}.nav-cta{font-size:9px;min-height:38px;padding:10px 14px;gap:13px}.nav-cta>span{font-size:15px}.hero{padding:28px 16px 25px}.hero-eyebrow{font-size:6px;letter-spacing:1.7px;margin-bottom:25px}.hero-eyebrow>span{margin-inline:7px}.hero-art{width:100%}.hero-bottom{min-height:220px;padding:25px 60px 7px}.hero-datetime{font-size:23px;gap:17px;letter-spacing:1px;flex-wrap:wrap}.hero-datetime i{font-size:6px}.hero-description{font-size:11px;max-width:270px;margin:14px auto 23px;line-height:1.8}.hero-mask{width:75px;height:75px;left:-5px;top:80px;opacity:.8}.hero-fan{width:63px;right:0;top:75px;opacity:.8}.hero-actions{gap:18px;flex-wrap:wrap}.hero-actions .button{font-size:11px;padding:14px 20px;min-height:47px;gap:23px}.text-link{font-size:10px;gap:10px}.scroll-cue{font-size:6px;letter-spacing:1.5px;margin-top:15px}.scroll-cue>span{height:23px}.chapter-divider{margin-top:12px;gap:15px;padding-inline:25px}.chapter-divider svg{width:35px}.section{padding:65px 25px}.section h2{font-size:50px;letter-spacing:-1.2px}.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:21px}.about{grid-template-columns:1fr;gap:45px;padding-top:65px}.about-copy{max-width:500px;margin:auto;width:100%}.about-copy .lead{font-size:17px;margin-top:25px;max-width:390px}.body-copy{font-size:12px;max-width:390px}.event-facts{max-width:none;gap:20px;margin-top:26px;padding:22px 0}.event-facts span{font-size:7px;letter-spacing:1.5px}.event-facts strong{font-size:24px}.detail-note{font-size:10px}.poster-scene{max-width:290px}.poster-caption{font-size:16px}.volunteer-section{padding-top:25px;padding-bottom:35px}.section-heading{margin-bottom:34px}.section-heading>p:last-child:not(.eyebrow){font-size:11px;margin-top:19px}.role-cards{grid-template-columns:1fr;max-width:370px;margin:auto;gap:30px}.role-card{display:grid;grid-template-columns:135px 1fr;padding:8px;align-items:center;min-height:230px;gap:3px}.role-picture{height:215px}.role-picture svg{width:92%;height:88%}.role-copy{padding:15px 11px}.role-number{font-size:15px;margin-bottom:13px}.role-copy h3{font-size:25px;margin-bottom:12px}.role-copy p{font-size:10px;line-height:1.8}.role-note{font-size:9px;max-width:300px;margin-top:26px}.interlude{height:145px;padding-inline:28px;gap:23px}.interlude-mask{width:115px}.registration{padding-top:25px;padding-bottom:55px}.registration-card{grid-template-columns:1fr;max-width:500px;padding:13px}.registration-art{min-height:220px;padding:15px;position:relative}.registration-art svg{width:135px;height:195px}.registration-art>span{position:absolute;right:20px;bottom:19px;writing-mode:vertical-rl;font-size:7px;letter-spacing:1.8px}.registration-body{padding:28px 14px 23px}.registration-body h3{font-size:34px;margin-top:25px}.registration-body>p{font-size:11px;margin-bottom:24px;max-width:none}.card-meta .eyebrow{font-size:6px;letter-spacing:1.5px}.status{font-size:7px;padding:5px 7px}.card-bottom{gap:15px}.card-bottom .button{font-size:10px;padding-inline:15px;min-height:44px}.duration{font-size:8px}.registration-help{font-size:9px;max-width:280px;margin:22px auto 0}.faq{padding-top:20px;padding-bottom:45px;grid-template-columns:1fr;gap:25px}.faq-intro{text-align:center}.faq h2{font-size:45px}.faq-motif{display:none}.faq-list{padding-top:0}.faq-list summary{font-size:11px;gap:15px;padding:21px 0}.faq-list details p{font-size:10px;padding-right:20px}.closing{padding-top:15px;padding-bottom:40px}.closing-frame{padding:48px 18px;min-height:270px;display:flex;align-items:center;justify-content:center}.closing-frame>div{position:relative;z-index:1}.closing h2{font-size:45px;line-height:1;margin:23px 0 0}.closing .eyebrow{font-size:6px;letter-spacing:1.6px;margin:0}.closing .eyebrow>span{font-size:5px;margin-inline:7px}.closing-motif{width:75px;height:145px;margin-top:-72px;opacity:.22}.closing-left{left:-5px}.closing-right{right:-5px}.footer{margin-inline:25px;padding:25px 0 60px;flex-wrap:wrap;gap:23px}.footer-brand{font-size:26px}.footer-brand small{font-size:7px;letter-spacing:.5px}.footer>span{display:none}.footer>a:last-child{font-size:9px}.motion-toggle{bottom:12px;right:12px;padding:8px 10px;font-size:7px}.motion-toggle-icon{font-size:10px}.dialog-header{padding:19px 17px}.dialog-header h2{font-size:23px;max-width:240px}.dialog-header .eyebrow{font-size:7px;letter-spacing:1.8px}.close-button{height:36px;width:36px;font-size:24px}.iframe-help{font-size:8px;padding-inline:12px}dialog{width:calc(100% - 16px);max-height:94dvh}#iframe-container{height:calc(94dvh - 145px)}}@media(max-width:420px){.hero{padding-inline:7px}.hero-eyebrow{font-size:5.5px;letter-spacing:1.2px}.hero-art{width:calc(100% + 12px);margin-left:-6px}.hero-bottom{padding-inline:55px;min-height:230px}.hero-datetime{font-size:21px;gap:10px;letter-spacing:.7px;flex-wrap:nowrap;white-space:nowrap}.hero-datetime i{font-size:5px}.hero-description{font-size:10px;max-width:210px}.hero-mask{width:66px;height:66px;left:-5px;top:82px}.hero-fan{width:55px;right:-3px;top:77px}.hero-actions{gap:15px}.hero-actions .button{font-size:10px;padding-inline:17px;min-height:45px;gap:18px}.text-link{font-size:9px}.hero-actions .text-link{font-size:9px}.header{padding-inline:10px}.nav-cta{font-size:8px;padding-inline:12px;gap:11px}.brand>span{font-size:24px}.brand img{width:35px;height:37px}.section{padding-inline:23px}.section h2{font-size:45px}.event-facts strong{font-size:23px}.role-card{grid-template-columns:120px 1fr}.role-picture{height:205px}.role-copy{padding-inline:8px}.role-copy h3{font-size:24px}.role-copy p{font-size:9px}.registration-body h3{font-size:32px}.closing h2{font-size:42px}.faq h2{font-size:43px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.scroll-prop{transform:none!important}}html.motion-paused{scroll-behavior:auto}html.motion-paused .scroll-prop{transform:none!important}
.body-copy{font-size:14px}.detail-note{font-size:11px}.role-copy p{font-size:13px;line-height:1.75}.registration-body>p{font-size:14px;line-height:1.75}.faq-list summary{font-size:14px}.faq-list details p{font-size:13px;line-height:1.8}.role-note,.registration-help{font-size:11px}
@media(max-width:800px){.body-copy{font-size:14px}.role-copy p{font-size:12px;line-height:1.75}.role-copy h3{font-size:25px}.registration-body>p{font-size:13px}.faq-list summary{font-size:13px}.faq-list details p{font-size:12px}.role-note,.registration-help{font-size:10px}}
@media(max-width:420px){.role-card{grid-template-columns:112px 1fr}.role-copy h3{font-size:24px}.role-copy p{font-size:11px}.faq-list summary{font-size:12px}}
.role-picture svg{width:auto;max-width:88%;height:91%;overflow:hidden}.registration-art svg{width:auto;max-width:90%;height:275px;overflow:hidden}
@media(max-width:1050px){.registration-art svg{width:auto;height:250px}}
@media(max-width:800px){.role-picture svg{width:auto;max-width:95%;height:88%}.registration-art svg{width:auto;height:195px}}
@media(max-width:800px){.poster-scene{max-width:270px}}
.poster-scene{width:calc(100% - 40px)}
/* Структура программы: фирменная графика и движение сохранены. */
html{scroll-padding-top:112px}.header{position:sticky;top:0;z-index:10;background:#291503f2;backdrop-filter:blur(14px);max-width:none;height:88px;padding-inline:max(30px,calc((100vw - 1230px)/2));gap:30px}.header nav{gap:22px;font-size:11px}.header nav a{white-space:nowrap}.hero-datetime{font-size:29px;letter-spacing:1.4px}.hero-bottom{padding-inline:130px}.program-overview{padding-top:5px;padding-bottom:75px}.program-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}.program-tile{display:block;border-bottom:1px solid var(--line);padding-bottom:15px}.program-picture{height:215px;border:1px solid var(--line);background:var(--brown-card);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.program-picture svg{height:76%;width:auto;max-width:85%;mix-blend-mode:lighten;transition:transform .4s}.program-tile:hover svg{transform:scale(1.06)}.program-picture>span{position:absolute;bottom:9px;left:8px;right:8px;text-align:center;font-size:8px;color:var(--muted);letter-spacing:.4px}.program-tile h3{display:flex;align-items:center;justify-content:space-between;gap:14px;font:500 26px/1.1 var(--display);margin:17px 0 0}.program-tile h3>span{color:var(--blue);font-size:21px}.program-intro{padding-block:25px 10px;border-top:1px solid var(--line)}.program-intro .eyebrow{margin-bottom:10px}.program-intro>p:last-child{font-size:12px;color:var(--muted);margin:0}.event-section{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center;padding-block:85px;border-bottom:1px solid var(--line)}.event-heading .body-copy{margin-top:27px;max-width:460px}.event-heading h2{font-size:clamp(45px,4.5vw,62px)}[data-form-slot]{margin-top:30px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.form-slot-note{font-size:10px;color:var(--muted)}.event-register{font-size:11px}.event-art{height:335px;display:flex;align-items:center;justify-content:center;position:relative;background:var(--brown-deep);border:1px solid var(--line);padding:20px 20px 40px;overflow:hidden}.event-art:before{content:'';position:absolute;inset:8px;border:1px solid var(--line);pointer-events:none}.event-art svg{height:95%;max-width:80%;width:auto;mix-blend-mode:lighten;overflow:hidden}.event-art>span{position:absolute;bottom:15px;font-size:9px;color:var(--muted);text-align:center;inset-inline:20px}.lecturer-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lecturer-art{height:245px;background:var(--brown-deep);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}.lecturer-art svg{height:90%;width:auto;max-width:90%;mix-blend-mode:lighten}.lecturer-card h3{font:500 26px/1.1 var(--display);margin:18px 0 7px}.lecturer-card p{color:var(--muted);font-size:10px;margin:0}.evening-section{text-align:center;padding-top:30px}.evening-section .hero-datetime{margin:30px auto 20px}.evening-section .body-copy{margin:auto;max-width:450px}.contacts-section{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;border-top:1px solid var(--line);align-items:center}.contacts-section h2{font-size:56px}.social-links{display:grid;gap:15px}.social-links>a{display:flex;align-items:center;gap:20px;padding:23px;border:1px solid var(--line);background:var(--brown-deep);font-size:15px;transition:border-color .2s}.social-links>a:hover{border-color:var(--gold)}.social-symbol{font:500 25px/1 var(--display);color:var(--blue);min-width:40px}.social-links small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.social-links>a>span:last-child{margin-left:auto;color:var(--gold)}.partners-section{padding-top:20px}.partner-groups{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-block:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.partner-groups h3{font:500 30px/1.1 var(--display);margin:0 0 15px}.partner-groups p{font-size:11px;color:var(--muted);margin:0}.description-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;padding:5px 30px 30px;align-items:center}.description-art{height:285px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--brown-deep);overflow:hidden}.description-art svg{height:90%;width:auto;max-width:90%;mix-blend-mode:lighten}.description-layout p{font-size:14px;line-height:1.8}.description-layout .description-note{font-size:12px;color:var(--muted);margin-top:20px}.description-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 30px;border-top:1px solid var(--line)}.description-bottom>span{font-size:11px;color:var(--muted)}#description-stage{overflow:auto;max-height:calc(92dvh - 110px)}.iframe-help{justify-content:space-between;align-items:center}#back-description{background:none;color:var(--gold);border:0;font:inherit;padding:5px;min-height:30px;cursor:pointer}.dialog-header h2{font-size:32px}.dialog-header{padding:25px 30px}
@media(max-width:1100px){.header{gap:20px;padding-inline:25px}.header nav{gap:16px;font-size:10px}.brand>span{font-size:25px}.event-section{gap:45px}.lecturer-grid{gap:13px}.lecturer-art{height:215px}.program-picture{height:190px}.contacts-section{gap:40px}.contacts-section h2{font-size:49px}}
@media(max-width:850px){html{scroll-padding-top:140px}.header{height:auto;min-height:114px;display:block;padding:13px 23px 0;margin:0}.brand{width:max-content}.brand img{width:35px;height:36px}.brand>span{font-size:24px}.brand small{font-size:6px;margin-top:5px}.header nav{display:flex;overflow-x:auto;gap:24px;scrollbar-width:thin;padding:6px 0 4px;font-size:11px}.header nav a{padding-block:10px;min-height:40px}.hero-bottom{padding-inline:65px}.hero-datetime{font-size:26px;letter-spacing:.5px;gap:13px}.hero-meta{max-width:100%}.hero-actions .button{font-size:11px}.program-overview{padding-bottom:50px}.program-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}.program-picture{height:215px}.program-tile h3{font-size:26px}.event-section{grid-template-columns:1fr;padding-block:60px;gap:35px}.event-heading{max-width:600px}.event-art{height:290px;max-width:500px;width:100%;margin:auto}.lecturer-grid{max-width:500px;gap:23px}.lecturer-art{height:255px}.event-heading h2{font-size:50px}.event-heading .body-copy{max-width:500px}.program-intro{padding-top:20px}.contacts-section{grid-template-columns:1fr;gap:35px}.contacts-section h2{font-size:49px}.partner-groups{gap:35px}.partner-groups h3{font-size:27px}.hero-datetime{flex-wrap:wrap}.evening-section .hero-datetime{font-size:25px}.description-layout{padding:0 20px 20px;gap:22px}.description-art{height:245px}.description-layout p{font-size:13px}.description-layout .description-note{font-size:11px}.description-bottom{padding:20px;gap:12px}.description-bottom .button{padding-inline:17px;font-size:11px}.dialog-header{padding:20px}.dialog-header h2{font-size:28px}}
@media(max-width:480px){.hero-bottom{padding:25px 44px 10px}.hero-datetime{font-size:23px;white-space:normal;gap:9px;flex-wrap:wrap}.hero-datetime>span:first-child{flex-basis:100%}.hero-datetime>i:first-of-type{display:none}.hero-mask{top:110px;width:58px;height:58px}.hero-fan{top:105px;width:48px}.hero-description{font-size:11px}.program-picture{height:180px}.program-tile h3{font-size:23px}.program-picture>span{font-size:7px}.event-heading h2{font-size:44px}.lecturer-grid{gap:18px}.lecturer-art{height:210px}.lecturer-card h3{font-size:24px}.lecturer-card p{font-size:9px}.contacts-section h2{font-size:43px}.partner-groups{grid-template-columns:1fr;gap:30px}.partner-groups>div+div{border-top:1px solid var(--line);padding-top:30px}.description-layout{grid-template-columns:1fr}.description-art{height:160px}.description-layout p{margin:0}.description-layout .description-note{margin-top:15px}.description-bottom{align-items:stretch;flex-direction:column}.description-bottom .button{width:100%}.dialog-header h2{font-size:26px}.event-register{width:100%;max-width:340px}.event-heading .body-copy{font-size:14px}.evening-section .hero-datetime{font-size:25px}.hero-actions{gap:18px}.hero-actions .button{padding-inline:14px;font-size:10px}}
.lecture-details{padding:0;background:none;border:0;color:var(--gold);font-size:10px;margin-top:16px;line-height:1.6;text-align:left;min-height:36px}.header nav{gap:18px}@media(max-width:850px){.header nav{gap:24px}}@media(max-width:480px){.lecture-details{font-size:9px}}
/* Три иллюстрации, выбранные пользователем; исходные PNG сохранены без изменений. */
.approved-art{background:transparent;border:0;overflow:visible}.approved-art:before{display:none}.event-illustration{display:block;object-fit:contain;width:100%;height:100%}.program-picture.approved-art{height:265px}.program-picture .event-illustration{transition:transform .4s}.program-tile:hover .event-illustration{transform:translateY(-5px)}.event-art.approved-art{height:490px;padding:0}.event-art.approved-art .event-illustration{max-width:100%;mix-blend-mode:lighten}.lecture-visual{min-width:0}.lecture-visual .lecturer-grid{margin-top:25px;gap:20px}.lecture-visual .lecturer-card{border-top:1px solid var(--line);padding-top:15px}.lecture-visual .lecturer-card h3{margin-top:0}.description-art.approved-art{height:325px}.description-art.approved-art .event-illustration{mix-blend-mode:lighten}
@media(max-width:850px){.program-picture.approved-art{height:255px}.event-art.approved-art{height:430px}.lecture-visual{max-width:500px;width:100%;margin:auto}.description-art.approved-art{height:275px}}
@media(max-width:480px){.program-picture.approved-art{height:210px}.event-art.approved-art{height:430px}.description-art.approved-art{height:220px}}
/* Прозрачные варианты иллюстраций: фон страницы просвечивает сквозь PNG. */
.event-illustration,.event-art.approved-art .event-illustration,.description-art.approved-art .event-illustration{mix-blend-mode:normal}.poster-link{box-shadow:none}.poster-link:before{display:none}.official-poster{mix-blend-mode:normal}.event-art:not(.approved-art){background:transparent;border:0}.event-art:not(.approved-art):before{display:none}.event-art svg,.description-art svg{mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}
.illustrated-scene{isolation:isolate}.motion-art{display:block;width:100%;height:100%;overflow:hidden}.motion-art [data-part]{transform-box:view-box}.program-picture.illustrated-scene{padding:0}.program-picture.illustrated-scene svg{width:100%;height:100%;max-width:none;mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none;transition:none}.program-tile:hover .motion-art{transform:none}.event-art.illustrated-scene{padding:0;background:transparent;overflow:visible}.event-art.illustrated-scene svg{width:100%;height:100%;max-width:none;mix-blend-mode:normal;mask-image:none;-webkit-mask-image:none}.poster-scene .official-poster.illustrated-scene{width:100%;aspect-ratio:2/3}.poster-scene .motion-art{height:auto}.hero-mask .motion-art,.hero-fan .motion-art{mix-blend-mode:normal}.description-bottom{justify-content:flex-end}@media(prefers-reduced-motion:reduce){.motion-art [data-part]{transform:none!important}}.motion-paused .motion-art [data-part]{transform:none!important}
.scene-fallback{display:none}.motion-paused .illustrated-scene>.motion-art:not(.scene-fallback){display:none}.motion-paused .illustrated-scene>.scene-fallback{display:block}@media(prefers-reduced-motion:reduce){.illustrated-scene>.motion-art:not(.scene-fallback){display:none}.illustrated-scene>.scene-fallback{display:block}}
.illustrated-scene>.motion-art.scene-fallback{display:none}.motion-paused .illustrated-scene>.motion-art.scene-fallback{display:block}@media(prefers-reduced-motion:reduce){.illustrated-scene>.motion-art.scene-fallback{display:block}}

.event-art.illustrated-scene{height:min(490px,calc(var(--art-visible-height,100svh)*.72))}
#helpers .event-art.illustrated-scene,#volunteers .event-art.illustrated-scene{height:min(335px,calc(var(--art-visible-height,100svh)*.65))}
.poster-link{transform:none}
.poster-scene .official-poster.illustrated-scene{width:min(290px,calc(var(--art-visible-height,100svh)*.48));max-width:100%;aspect-ratio:2/3}
.poster-scene .official-poster.illustrated-scene>.motion-art{height:100%;width:100%}
.evening-section .event-art{max-width:360px;margin:0 auto 44px}
@media(max-width:480px){.event-art.illustrated-scene{height:min(430px,calc(var(--art-visible-height,100svh)*.72))}}

.closing-motif.illustrated-scene{overflow:hidden;mix-blend-mode:normal}
.closing-motif.illustrated-scene .motion-art{overflow:hidden}
.program-picture.illustrated-scene{background:transparent}

.interlude-mask.illustrated-scene{height:145px;transform:none;mix-blend-mode:normal}.faq-motif.illustrated-scene{height:220px;mix-blend-mode:normal}.description-art.illustrated-scene .motion-art{mask-image:none;-webkit-mask-image:none;mix-blend-mode:normal}
@media(max-width:850px){.header nav{flex-wrap:wrap;overflow:visible;column-gap:20px;row-gap:0;padding:2px 0 6px}.header nav a{display:inline-flex;align-items:center;padding-block:6px;min-height:34px}}
@media(max-width:800px){.about{grid-template-columns:minmax(0,1fr)}.about-copy{min-width:0}}
@media(max-width:360px){.program-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:480px){.closing-frame{min-height:180px;padding:32px 18px}.closing h2{font-size:clamp(27px,8vw,36px);line-height:1.02;margin:17px 0 0;white-space:nowrap}.closing-motif{width:54px;height:108px;margin-top:-54px}.closing .eyebrow{font-size:6px;letter-spacing:1.2px}}
.participants-list{display:grid;gap:10px;margin:12px 0}.participant-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:center}.participant-input{width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:2px;background:#211002;color:var(--gold-light);font:inherit;font-size:14px}.participant-input::placeholder{color:var(--muted)}.participant-input:focus-visible,.participant-add:focus-visible,.participant-remove:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.participant-remove,.participant-add{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--gold-light);font:inherit;cursor:pointer}.participant-remove{font-size:12px;line-height:1.4;padding:8px 14px}.participant-add{gap:8px;padding:8px 14px;color:var(--gold);font-size:12px}.participant-add:hover,.participant-remove:hover{border-color:var(--gold);color:var(--gold-light)}.participants-hint{margin:8px 0;color:var(--muted);font-size:11px;line-height:1.6}
/* Registration uses the same palette and typography as the event pages. */
#registration-dialog{color-scheme:dark;display:none;max-width:780px;overscroll-behavior:contain}
#registration-dialog[open]{display:flex;flex-direction:column}
#registration-dialog .dialog-header{flex:none;align-items:flex-start;border-bottom:1px solid var(--line)}
#registration-dialog .close-button{flex:none;min-width:44px;min-height:44px}
#registration-dialog #form-stage{min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.form-navigation{padding:7px 25px;border-bottom:1px solid var(--line)}
#back-description{min-height:44px;padding:8px 5px;font-size:12px}
#registration-dialog #iframe-container{height:auto;overflow:visible;background:var(--brown);padding:28px 30px 34px}
.registration-form{display:grid;gap:25px;min-width:0;margin:0}
.form-field{display:grid;gap:10px;min-width:0;margin:0;padding:0;border:0}
.form-field-label{display:block;font-family:var(--body);font-size:13px;line-height:1.65;font-weight:600;color:var(--gold-light);padding:0;overflow-wrap:anywhere}
.form-field input:not([type=checkbox]):not([type=radio]),.form-field textarea,.form-field select{display:block;width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:2px;padding:12px 14px;background:var(--brown-deep);color:var(--gold-light);font:400 16px/1.6 var(--body);transition:border-color .2s,box-shadow .2s}
.form-field textarea{min-height:108px;resize:vertical}
.form-field input::placeholder,.form-field textarea::placeholder{color:var(--muted);opacity:.7}
.form-field input:focus-visible,.form-field textarea:focus-visible,.form-field select:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-color:var(--gold)}
.form-field [aria-invalid=true]{border-color:#ECA995!important}
.form-options{display:grid;gap:8px;min-width:0}
.form-option{display:flex;align-items:flex-start;gap:12px;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:2px;background:var(--brown-deep);font-size:13px;line-height:1.65;cursor:pointer;overflow-wrap:anywhere}
.form-option:hover{border-color:var(--gold)}
.form-option:has(input:checked){border-color:var(--gold);background:var(--brown-card)}
.form-option input{width:18px;height:18px;flex:none;margin:2px 0 0;accent-color:var(--gold)}
.form-option input:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.form-hint{margin:0;color:var(--muted);font-size:11px;line-height:1.8;overflow-wrap:anywhere}
.form-status{margin:0;font-size:12px;line-height:1.8;color:var(--gold-light);overflow-wrap:anywhere}
.form-status:empty{display:none}
.form-status[data-state=error],.form-status.error,.form-status.is-error{color:#ECA995}
.form-submit{justify-self:start;min-height:48px;min-width:160px}
.form-submit:disabled{opacity:.65;cursor:wait}
.form-success{padding:24px;border:1px solid var(--line);background:var(--brown-deep);overflow-wrap:anywhere}
.form-success h3{font:500 35px/1.15 var(--display);margin:0 0 16px}
.form-success p{font-size:13px;margin:0;color:var(--muted);line-height:1.8}
.form-success .button{margin-top:22px}
@media(max-width:600px){#registration-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px)}#registration-dialog .dialog-header{padding:18px 16px;gap:10px}#registration-dialog .dialog-header h2{font-size:29px;line-height:1.1;max-width:none;overflow-wrap:anywhere}#registration-dialog .dialog-header .eyebrow{font-size:8px}.form-navigation{padding:4px 12px}#registration-dialog #iframe-container{padding:22px 16px 26px}.registration-form{gap:24px}.form-field-label,.form-option{font-size:13px}.form-option{padding:12px}.form-submit{width:100%;justify-self:stretch}.form-success{padding:20px}.form-success h3{font-size:31px}}

.participants-controls{display:flex;flex-wrap:wrap;gap:10px}.participants-controls button:disabled{opacity:.4;cursor:default}
.event-when{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:14px 0 18px;font:500 19px/1.25 var(--display);text-transform:uppercase;letter-spacing:1px;color:var(--gold-light)}.event-when i{font:normal 6px var(--body);color:var(--blue)}.lecturer-card .event-when{font-size:17px;margin:4px 0 8px}
#volunteers .event-art,#casting .event-art,#night .event-art{padding:0;background:transparent;overflow:visible;height:min(335px,calc(var(--art-visible-height,100svh)*.65))}.volunteers-masks{display:block;height:100%;width:auto;max-width:100%;object-fit:contain;margin:auto}

.helper-visual .helper-directions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px}
.helper-direction{display:inline-flex;align-items:center;min-height:44px;padding:0 22px;border-radius:2px;position:relative;background:var(--brown-card);color:var(--gold-light);font:600 14px/1 var(--body);letter-spacing:.01em;transition:background .45s cubic-bezier(.32,.72,0,1),color .45s cubic-bezier(.32,.72,0,1),transform .45s cubic-bezier(.32,.72,0,1)}
.helper-direction:before{content:'';position:absolute;inset:3px;border:1px solid var(--line);pointer-events:none;transition:border-color .45s cubic-bezier(.32,.72,0,1)}
.helper-direction:hover:before{border-color:#29150340}
.helper-direction:hover{background:var(--gold);color:var(--brown-deep);transform:translateY(-2px)}
.helper-direction:active{transform:scale(.97)}
.helper-direction:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.helper-direction{transition:background .2s,color .2s}.helper-direction:hover{transform:none}}
@media (min-width:851px){
  #helpers .helper-visual{display:contents}
  #helpers .helper-directions{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:0}
  #helpers .helper-direction{justify-content:center;min-height:52px;font-size:15px}
}
button.helper-direction{border:0;cursor:pointer}button.helper-direction:disabled{opacity:.5;cursor:default}button.helper-direction:disabled:hover{background:var(--brown-card);color:var(--gold-light)}
/* Poster: hide the JPG's own brown ground so only the artwork sits on the page */
.poster-scene .official-poster .motion-art{-webkit-mask-image:url(poster-mask.png);mask-image:url(poster-mask.png);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.poster-link{box-shadow:none}

/* Figma type: Playfair for headings, Great Vibes for the script accents, Montserrat for text */
h1 em,h2 em,.brand>span,.footer-brand,.poster-caption{font-family:var(--script);font-style:normal;font-weight:400;letter-spacing:0}
h1 em,h2 em{font-size:1.18em;line-height:1}
/* Quiz plate: the question mark shakes with scroll progress (set in art-events.js) */
.quiz-mark{transform-box:view-box;transform-origin:520px 810px}

/* ===== Type scale v2 (Oct 2026): larger, brighter, bolder =====
   Five steps: display (h2), title (h3), lead 22, body 18, small 15.
   Running text is set in the full ink (--gold-light), not the muted brown. */
:root{--ink:var(--gold-light);--t-body:18px;--t-small:15px;--t-lead:22px}
body{font-size:var(--t-body)}

/* Headings: heavier Playfair */
h2,.section h2,.faq h2{font-weight:600;letter-spacing:-.01em}
h2 em,.section h2 em{font-weight:400}
.section h2,.faq h2,.evening-section h2,.contacts-section h2,.event-heading h2,.about-copy h2,.faq-intro h2{font-size:clamp(48px,4.4vw,64px);line-height:1.02}
h3,.program-tile h3,.lecturer-card h3,.lecture-visual .lecturer-card h3,.partner-groups h3{font-weight:600;font-size:30px}

/* Section labels: readable sentence case instead of tiny tracked caps */
.eyebrow,.hero-eyebrow,.closing .eyebrow,.card-meta .eyebrow,.dialog-header .eyebrow,#registration-dialog .dialog-header .eyebrow{font-size:var(--t-small);font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--gold)}

/* Running text */
.body-copy,.event-heading .body-copy,.evening-section .body-copy,.about-copy .body-copy,.program-intro p:not(.eyebrow),.faq-list details p,.partner-groups p,.hero-description{font-size:var(--t-body);line-height:1.65;color:var(--ink);font-weight:400;max-width:60ch}
.about-copy .lead{font-size:var(--t-lead);line-height:1.5;font-weight:500;color:var(--ink);max-width:28ch}
.detail-note,.lecturer-card p:not(.event-when),.lecture-visual .lecturer-card p:not(.event-when){font-size:var(--t-small);line-height:1.6;color:var(--gold);font-weight:500}
.poster-caption{font-size:26px;color:var(--gold)}

/* Date · time · place: the line people come for */
.event-when,.hero-datetime{color:var(--ink)}
.event-heading .event-when{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;font:600 26px/1.25 var(--display);letter-spacing:.04em;text-transform:uppercase;margin:26px 0 30px}
.event-when i,.hero-datetime i{color:var(--blue);font-size:12px;font-style:normal}
.hero-datetime{font-weight:600}
/* Lecture cards: the date large on its own line, time and room under it */
.lecturer-card .event-when,.lecture-visual .lecturer-card .event-when{color:var(--ink);display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:10px 0 14px;font:600 18px/1.3 var(--body);text-transform:none;letter-spacing:0}
.lecturer-card .event-when span:first-child{flex-basis:100%;font:600 34px/1.05 var(--display);letter-spacing:.01em;color:var(--ink)}
.lecturer-card .event-when i{display:none}
.lecturer-card .event-when span:last-child::before{content:"·";margin-right:12px;color:var(--blue)}
/* Section date lines: date ◆ time on the first line, the place always on its own line (no dangling ◆) */
.event-heading .event-when i:last-of-type{display:none}
.event-heading .event-when span:last-child{flex-basis:100%}
/* Lecture card links keep their arrow on the same line */
.lecture-details{white-space:nowrap;font-size:14px}

/* Navigation, links, buttons, small print */
.header nav{font-size:var(--t-small);font-weight:500}
.brand small{font-size:11px;font-weight:600}
.button,.card-bottom .button,.event-register,.hero-actions .button,.description-bottom .button{font-size:var(--t-small)}
.text-link,.lecture-details,button.text-link,.hero-actions .text-link{font-size:var(--t-small);font-weight:600;color:var(--gold)}
.scroll-cue{font-size:var(--t-small);letter-spacing:.04em}
.faq-list summary{font-size:19px;font-weight:600}
.social-links span small{font-size:var(--t-small)}
.footer,.footer span,.footer a:not(.footer-brand),.footer>a:last-child,.footer-brand small{font-size:var(--t-small)}
.footer>a:last-child{color:var(--gold)}
.motion-toggle,.motion-toggle-label{font-size:14px}

/* Registration dialog */
.description-layout p{font-size:var(--t-body);line-height:1.65;color:var(--ink)}
.description-layout .description-note,.form-hint,.participants-hint,.form-success p{font-size:var(--t-small);line-height:1.6;color:var(--gold)}
.form-status,#back-description,.participant-add,.participant-remove{font-size:var(--t-small)}
.dialog-header h2,.form-success h3{font-weight:600}
.form-field-label,.form-option{font-size:16px}
.form-field input:not([type=checkbox]):not([type=radio]),.form-field textarea,.form-field select,.participant-input{font-size:16px}

@media (max-width:850px){
 :root{--t-body:17px;--t-small:15px;--t-lead:20px}
 .section h2,.faq h2,.evening-section h2,.contacts-section h2,.event-heading h2,.about-copy h2,.faq-intro h2{font-size:44px}
 h3,.program-tile h3,.lecturer-card h3,.lecture-visual .lecturer-card h3{font-size:26px}
 .event-heading .event-when{font-size:21px;gap:4px 14px}
 .lecturer-card .event-when span:first-child{font-size:30px}
 .header nav{font-size:14px;gap:0 20px;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;max-width:100%;scrollbar-width:none;-webkit-overflow-scrolling:touch}
 .header nav::-webkit-scrollbar{display:none}
 .header nav a{flex:none}
 .hero-description{max-width:min(62vw,300px);margin-inline:auto}
 .lecturer-grid,.lecture-visual .lecturer-grid{grid-template-columns:1fr}
}
@media (max-width:420px){
 .section h2,.faq h2,.evening-section h2,.contacts-section h2,.event-heading h2,.about-copy h2,.faq-intro h2{font-size:36px}
}

@media (max-width:850px){.helper-direction{font-size:var(--t-small)}}

/* Motion off: a scene without a separate fallback (the dialog picture) keeps its only, still drawing */
.motion-paused .illustrated-scene>.motion-art:only-child{display:block}
@media (prefers-reduced-motion:reduce){.illustrated-scene>.motion-art:only-child{display:block}}
/* Motion off: helper direction buttons don't lift or squash */
.motion-paused .helper-direction,.motion-paused .helper-direction:hover,.motion-paused .helper-direction:active{transform:none;transition:background .2s,color .2s}
@media (prefers-reduced-motion:reduce){.helper-direction:active{transform:none}}

.casting-actions{margin-top:30px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}

.form-information{padding:20px;border:1px solid var(--line);border-left:3px solid var(--gold);background:var(--brown-deep);overflow-wrap:anywhere}
.form-information h3{margin:0;font:600 18px/1.6 var(--body);color:var(--gold-light)}
.form-information p{margin:0;white-space:pre-wrap;font-size:var(--t-body,14px);line-height:1.8;color:var(--gold-light)}
.form-information h3+p{margin-top:10px}
/* Partners: original-colour logos on matching light tiles. */
.partners-section .partner-groups{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:30px}
.partners-section .partner-groups>div+div{border-top:1px solid var(--line);padding-top:32px}
.partners-section .partner-groups h3{margin-bottom:22px}
.partner-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}
.partner-logos--faculty{grid-template-columns:repeat(3,minmax(0,1fr))}
.partner-logos>li{display:flex;align-items:center;justify-content:center;min-width:0;height:96px;padding:16px 12px;background:#F5EBDD;border-radius:2px}
.partner-logos img{display:block;width:auto;height:auto;max-width:80%;max-height:44px;object-fit:contain}
.partner-logos img.partner-logos__itecma{max-height:38px}
.partner-logos img.partner-logos__dodo{max-height:32px}
.partner-logos img.partner-logos__refil{max-height:76px}
.partner-logos__text{font:600 22px/1.2 var(--display);color:#291503;text-align:center}
@media(max-width:850px){
 .partners-section .partner-groups{gap:28px;padding-block:25px}
 .partners-section .partner-groups>div+div{padding-top:28px}
 .partners-section .partner-groups h3{font-size:26px;margin-bottom:18px}
 .partner-logos,.partner-logos--faculty{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .partner-logos>li{height:80px;padding:8px 10px}
}

/* Partner artwork: preserve the coffee plate and keep the bookshop wordmark legible. */
.partner-logos img.partner-logos__kofeport{max-width:90%;max-height:72px}
.partner-logos img.partner-logos__argument{max-width:90%;max-height:40px}
@media(max-width:850px){.partner-logos img.partner-logos__kofeport{max-height:64px}}

.hero-eyebrow{display:flex;align-items:center;justify-content:center;gap:20px}
.hero-emblem{display:block;flex-shrink:0;width:auto;height:112px}
.hero-eyebrow__text{font-weight:inherit;text-align:left}
.hero-eyebrow__text>span{color:var(--blue);margin-inline:9px}
@media(max-width:800px){.hero-emblem{height:92px}.hero-eyebrow{gap:16px}}
@media(max-width:420px){.hero-emblem{height:84px}.hero-eyebrow{flex-direction:column;gap:10px;padding-inline:16px}.hero-eyebrow__text{text-align:center}.hero-eyebrow__text>span{display:block;height:0;overflow:hidden}}
button.event-register,button.lecture-details{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:56px;margin:0;padding:17px 30px;background:var(--gold);color:var(--brown-deep);border:1px solid var(--gold);border-radius:2px;position:relative;font-size:16px;font-weight:700;line-height:1.2;letter-spacing:.01em;text-align:center;text-decoration:none;box-shadow:0 8px 30px #e8bd8424;transition:background .2s,box-shadow .2s}
button.event-register:before,button.lecture-details:before{content:'';position:absolute;inset:3px;border:1px solid #29150355;pointer-events:none}
button.event-register:hover,button.lecture-details:hover{background:var(--gold-light);color:var(--brown-deep);text-decoration:none;box-shadow:0 10px 34px #e8bd8433}
button.event-register:focus-visible,button.lecture-details:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}
button.event-register:disabled,button.lecture-details:disabled{box-shadow:none}
.lecturer-card [data-form-slot]{margin-top:22px}
.lecturer-card button.lecture-details{width:100%;gap:10px;padding:16px 12px;font-size:14px;letter-spacing:0;white-space:nowrap}
@media(max-width:800px){button.event-register{font-size:15px;min-height:52px;padding:15px 24px}}
#helpers button.helper-direction{min-height:52px;padding:0 24px;background:var(--gold);color:var(--brown-deep);font-weight:700;box-shadow:0 8px 30px #e8bd8424;transition:background .2s,box-shadow .2s}
#helpers button.helper-direction:before{border-color:#29150355}
#helpers button.helper-direction:hover{background:var(--gold-light);color:var(--brown-deep);box-shadow:0 10px 34px #e8bd8433}
#helpers button.helper-direction:disabled,#helpers button.helper-direction:disabled:hover{background:var(--gold);color:var(--brown-deep);box-shadow:none}

/* Faculty crest moved from the hero into the header brand. */
.brand img.brand-crest{width:auto;height:58px;mix-blend-mode:normal;padding-right:14px;margin-right:4px;border-right:1px solid var(--line)}
@media(max-width:1100px){.brand img.brand-crest{height:50px;padding-right:12px}}
@media(max-width:900px){.brand img.brand-crest{width:auto;height:44px;padding-right:10px;margin-right:2px}}
@media(max-width:420px){.brand img.brand-crest{height:40px}}

/* Header menu: a "Меню" button opens the full section list on every screen size. */
.header{--header-h:88px}
.menu-toggle{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 4px 0 12px;background:none;border:0;color:var(--gold);font:500 15px/1 var(--body);letter-spacing:.4px;cursor:pointer}
.menu-toggle:hover{color:var(--gold-light)}
.menu-toggle:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}
.menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:22px;height:1.5px;background:currentColor;transition:transform .25s,opacity .2s}
.menu-toggle span{position:relative}
.menu-toggle span:before,.menu-toggle span:after{content:'';position:absolute;left:0}
.menu-toggle span:before{top:-6px}.menu-toggle span:after{top:6px}
.header.is-open .menu-toggle span{background:transparent}
.header.is-open .menu-toggle span:before{transform:translateY(6px) rotate(45deg)}
.header.is-open .menu-toggle span:after{transform:translateY(-6px) rotate(-45deg)}
.header nav{display:none;position:absolute;top:100%;left:0;right:0;height:calc(100dvh - var(--header-h));flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;overflow-y:auto;padding:28px max(30px,calc((100vw - 1230px)/2)) 60px;background:var(--brown);border-top:1px solid var(--line);white-space:normal;max-width:none}
.header.is-open nav{display:flex}
.header nav a{display:flex;align-items:center;min-height:76px;padding:0;border-bottom:1px solid var(--line);font:italic 500 40px/1.1 var(--display);color:var(--gold-light);white-space:normal;transition:color .2s,padding-left .25s}
.header nav a:hover{color:var(--gold);padding-left:10px}
body.menu-open{overflow:hidden}
@media(max-width:850px){
 html{scroll-padding-top:84px}
 .header{--header-h:72px;display:flex;align-items:center;justify-content:space-between;min-height:0;height:72px;padding:0 20px}
 .header nav{padding:12px 20px 40px}
 .header nav a{min-height:56px;font-size:26px}
 .header nav a:hover{padding-left:0}
}

/* Капустник NIGHT: fifth programme tile and ticket button. */
@media(min-width:851px){.program-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}}
@media(min-width:361px) and (max-width:850px){.program-grid>.program-tile:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 9px)}}
.program-picture .night-art{height:88%;width:auto;max-width:90%;object-fit:contain}
a.button.night-ticket{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:17px 30px;background:var(--gold);color:var(--brown-deep);border:1px solid var(--gold);border-radius:2px;position:relative;font-size:16px;font-weight:700;line-height:1.2;text-decoration:none;box-shadow:0 8px 30px #e8bd8424;transition:background .2s,box-shadow .2s}
a.button.night-ticket:before{content:'';position:absolute;inset:3px;border:1px solid #29150355;pointer-events:none}
a.button.night-ticket:hover{background:var(--gold-light)}
a.button.night-ticket[aria-disabled="true"]{opacity:.55;cursor:not-allowed;box-shadow:none}
a.button.night-ticket[aria-disabled="true"]:hover{background:var(--gold)}
.night-ticket-note{font-size:var(--t-small);color:var(--muted)}
.night-ticket-note:empty{display:none}

/* Decorative props near the screen edges rotate on scroll; never let them widen the page.
   overflow-x:clip keeps the sticky header working; main gets a hidden fallback for older Safari. */
main{overflow-x:hidden}
html,body{overflow-x:clip}

/* Event section headings: script face for the section name, display face for the title. */
.event-section .event-heading .eyebrow{font:400 clamp(72px,6.4vw,92px)/.95 var(--script);letter-spacing:0;text-transform:none;color:var(--gold);margin:0 0 14px}
.event-section .event-heading h2{font:500 clamp(32px,2.8vw,40px)/1.15 var(--display);letter-spacing:-.4px}
.event-section .event-heading h2 em{font:inherit}
@media (max-width:850px){.event-section .event-heading .eyebrow{font-size:72px}.event-section .event-heading h2{font-size:32px}}
@media (max-width:420px){.event-section .event-heading .eyebrow{font-size:62px}.event-section .event-heading h2{font-size:28px}}
.registration-form-container .form-intro-note{margin:0 0 22px}
.about-copy .detail-note{max-width:60ch}
/* About heading: script title, display lead, body for the rest. */
.about-copy h2{font:400 clamp(62px,5.4vw,82px)/1 var(--script);letter-spacing:0}
.about-copy .lead{font:500 clamp(26px,2.4vw,34px)/1.2 var(--display);letter-spacing:-.3px;color:var(--gold-light)}
@media (max-width:850px){.about-copy h2{font-size:58px}.about-copy .lead{font-size:26px}}
@media (max-width:420px){.about-copy h2{font-size:48px}.about-copy .lead{font-size:23px}}
.contacts-section h2 em{font:inherit;letter-spacing:inherit}
@media (min-width:851px){.contacts-section h2{font-size:clamp(44px,4vw,58px)}}

/* Шахматный порядок: у шахмат, помощников и волонтёров иллюстрация слева */
@media(min-width:851px){#chess,#helpers,#volunteers{grid-template-columns:.85fr 1.15fr}#chess .event-art,#helpers .event-art,#volunteers .event-art{order:-1}}

/* «Night» в заголовке набран Playfair, «Капустник» остаётся рукописным */
#night .event-heading .eyebrow>.night-brand{font:500 calc(.56em + 40px)/1 var(--display);letter-spacing:.06em;color:inherit;margin:0 0 0 .08em}
@media(min-width:851px){#night .event-heading .eyebrow{white-space:nowrap}#night .event-heading .eyebrow>.night-brand{letter-spacing:.02em}}
