:root{color-scheme:dark;--ink:#f2efff;--muted:#b9b7ce;--gold:#d7d2f1;--line:#b8b0e138;--serif:Georgia,"Yu Mincho","Hiragino Mincho ProN",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:radial-gradient(ellipse at 85% 12%,#3d427f55,transparent 48%),radial-gradient(ellipse at 0 75%,#4a376c38,transparent 50%),#0c0c18;color:var(--ink);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}header,main,footer{max-width:1240px;margin:auto;padding:26px clamp(24px,6vw,80px)}header{min-height:112px;display:flex;justify-content:space-between;align-items:center;gap:28px;border-bottom:1px solid var(--line)}header strong{font:400 23px/1.4 var(--serif);letter-spacing:.03em}.brand-sub{display:block;font-size:11px;letter-spacing:.25em;margin-top:7px;color:var(--gold)}nav{display:flex;gap:28px;font-size:12px;color:var(--muted)}nav a{min-height:44px;display:flex;align-items:center}nav a[aria-current="page"]{color:var(--gold)}main{padding-top:0}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;align-items:center;min-height:720px;padding:62px 0 60px;border-bottom:1px solid var(--line)}.eyebrow{font-size:9px;letter-spacing:.23em;color:var(--gold)}h1{font-family:var(--serif);font-weight:400;margin:28px 0 25px}.english-title{display:block;font-size:clamp(60px,7.3vw,94px);line-height:.98;letter-spacing:-.055em}.english-title i{font-weight:400;color:#cbc3ed}.event-name{display:block;font-size:clamp(23px,2.8vw,33px);letter-spacing:.2em;margin-top:27px;line-height:1.6;white-space:nowrap}.lead{color:var(--muted);font-size:13px;line-height:2.1;max-width:460px;margin-top:26px}.date{display:flex;gap:18px;align-items:baseline;margin-top:27px}.date strong{font:400 15px/1.8 var(--serif);letter-spacing:.22em;color:var(--gold)}.date span{font-size:11px;color:var(--muted)}.button{display:inline-flex;gap:35px;align-items:center;min-height:48px;border:1px solid #c2b5ec65;padding:10px 22px;margin-top:25px;font-size:12px;background:#c2b5ec06;transition:background .2s}.button:hover{background:#c2b5ec12}.button span{color:var(--gold)}.art-wrap{width:100%;max-width:470px;justify-self:center}.art{display:block;width:100%;height:auto;overflow:visible}.art-caption{text-align:center;font:9px/1.8 var(--serif);letter-spacing:.32em;color:#b6a1c4;margin:4px 0 0}section:not(.hero){padding:54px 0;border-bottom:1px solid var(--line)}.section-label{font:12px/1.8 var(--serif);letter-spacing:.13em;color:var(--gold)}h2{font-family:var(--serif);font-size:24px;letter-spacing:.07em;font-weight:400;margin:14px 0 23px}p{color:var(--muted);font-size:14px}.info{display:grid;grid-template-columns:1fr 1.25fr;gap:35px;margin-top:12px}.note{padding:28px 30px;border:1px solid var(--line);background:linear-gradient(120deg,#57415c19,#c2b5ec05)}.badge{display:inline-block;border:1px solid #c2b5ec50;padding:3px 13px;font-size:10px;color:var(--gold);letter-spacing:.12em}.download-form{margin-top:26px;max-width:520px}.download-form label{display:block;font-size:13px;margin-bottom:8px}.download-form input{display:block;width:100%;min-height:48px;border:1px solid #c2b5ec50;border-radius:0;background:#14121f;color:var(--ink);padding:12px 14px;font:inherit;font-size:16px}.download-form input:disabled{opacity:.55}.download-form button{margin-top:13px;min-height:48px;border:1px solid #c2b5ec60;padding:11px 20px;background:#c2b5ec12;color:var(--gold);font:inherit;font-size:13px;cursor:pointer}.download-form button:disabled{opacity:.5;cursor:not-allowed}#download-status{min-height:2em;margin-top:13px;font-size:12px;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px;letter-spacing:.03em;padding-top:34px;padding-bottom:40px}.footer-mark{font-family:var(--serif);color:var(--gold);letter-spacing:.12em}.back-link{display:inline-flex;min-height:44px;align-items:center}
@media(min-width:1500px){.hero{min-height:780px}}
@media(max-width:800px){header{gap:20px}nav{gap:18px}.hero{gap:0;min-height:620px}.english-title{font-size:66px}.event-name{font-size:24px;letter-spacing:.12em}.art-wrap{width:110%;margin-right:-10%}.info{grid-template-columns:1fr;gap:0}footer{flex-direction:column;gap:6px}}
@media(max-width:600px){header{min-height:0;flex-direction:column;align-items:stretch;gap:16px;padding-top:23px;padding-bottom:12px}header strong{font-size:21px}.brand-sub{font-size:10px;margin-top:4px}nav{display:grid;grid-template-columns:1fr .75fr 1.8fr;gap:5px;font-size:12px}nav a{justify-content:center;min-height:44px;white-space:nowrap;background:#ffffff03}main{padding-top:0}.hero{grid-template-columns:1fr;min-height:0;padding:44px 0 38px;gap:24px}.eyebrow{font-size:8px;letter-spacing:.17em}.hero-copy{text-align:center}.english-title{font-size:clamp(64px,18vw,94px);line-height:1}.event-name{font-size:clamp(23px,6vw,29px);letter-spacing:.13em;margin-top:24px}.lead{margin:24px auto 0;font-size:13px}.date{justify-content:center;gap:12px;flex-wrap:wrap;margin-top:22px}.date strong{font-size:14px}.button{margin-top:22px}.art-wrap{width:92%;max-width:340px;margin:0 auto}.art-caption{font-size:8px}section:not(.hero){padding:38px 0}h2{font-size:22px}.note{padding:22px 18px}.download-form{max-width:none}.download-form button{width:100%;font-size:14px;padding:12px 8px}p{font-size:13px}footer{font-size:11px;overflow-wrap:anywhere}.footer-mark{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Official poster edition: silver ornament, violet light, midnight blue. */
.hero{grid-template-columns:1fr 1.08fr;gap:55px;padding:54px 0 62px;min-height:0}.hero-copy{position:relative;padding:30px 0}.hero-copy:before{content:"✧";display:block;font:36px/1 var(--serif);color:var(--gold);margin-bottom:32px}.english-title{font-size:clamp(58px,6.6vw,86px)}.event-name{letter-spacing:.13em}.hero .lead{border-top:1px solid var(--line);padding-top:23px;max-width:300px}.date{flex-direction:column;gap:3px;margin-top:24px}.date strong{font-size:47px;letter-spacing:.02em;line-height:1.3}.date strong span{font:12px/1 var(--serif);letter-spacing:.15em;color:var(--gold);margin-left:8px}.date>span{font-size:12px;letter-spacing:.04em}.event-poster{margin:0;position:relative;padding:9px;border:1px solid #c6bee353;background:#18152855;box-shadow:0 14px 65px #0005,0 0 65px #6261bc18}.event-poster:before,.event-poster:after{content:"✧";position:absolute;color:#ded9f2;font-size:23px;background:#121121;line-height:1;z-index:1;pointer-events:none}.event-poster:before{top:-12px;left:-11px}.event-poster:after{bottom:-10px;right:-11px}.event-poster a,.profile-poster a{display:block}.event-poster img,.profile-poster img{display:block;width:100%;height:auto}.event-poster figcaption{display:flex;justify-content:space-between;gap:8px;font:8px/1.7 var(--serif);letter-spacing:.14em;padding:12px 3px 2px;color:var(--muted)}.event-poster figcaption span{font-family:system-ui,sans-serif;font-size:9px;letter-spacing:0}.section-intro{font-family:var(--serif);font-size:17px;line-height:1.7;color:#cbc3ed}.event-details dl{margin:0}.event-details dl>div{display:grid;grid-template-columns:92px 1fr;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line)}.event-details dt{font-size:12px;color:var(--muted);letter-spacing:.1em}.event-details dd{margin:0;font-family:var(--serif);font-size:25px}.detail-note{font-size:12px;margin-top:20px}.lumina-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-top:28px}.profile-poster{margin:0;max-width:380px;padding:7px;border:1px solid var(--line);background:#d7d2f107}.profile-poster figcaption{text-align:center;font:9px/1.8 var(--serif);letter-spacing:.2em;color:var(--gold);padding-top:9px}.ornament{display:block;color:var(--gold);font:48px/1.2 var(--serif);margin-bottom:30px}.lumina-copy h2{font-size:clamp(21px,2.6vw,31px);letter-spacing:.02em;white-space:nowrap;margin-bottom:5px}.lumina-roman{font:italic 24px/1.5 var(--serif);color:#b9addf;margin-top:0}.social-details{margin-top:28px;border-top:1px solid var(--line);padding-top:10px}.social-details p{display:flex;flex-direction:column;margin:13px 0}.social-details p>span{font-size:10px;color:var(--muted);letter-spacing:.15em}.social-details strong,.social-details a{font-size:14px;font-weight:400;color:var(--ink)}
@media(max-width:900px) and (min-width:601px){.hero{gap:26px}.english-title{font-size:60px}.event-name{font-size:24px}.lumina-grid{gap:30px}.lumina-copy h2{font-size:21px}}
@media(max-width:600px){.hero{grid-template-columns:1fr;gap:38px;padding:32px 0 42px}.hero-copy{padding:0}.hero-copy:before{font-size:27px;margin-bottom:22px}.english-title{font-size:clamp(64px,18vw,88px)}.event-name{font-size:clamp(23px,6vw,29px)}.hero .lead{margin-left:auto;margin-right:auto;padding-top:19px;margin-top:23px}.date{align-items:center;margin-top:20px}.date strong{font-size:44px}.date>span{font-size:12px}.event-poster{width:100%;max-width:420px;justify-self:center;padding:6px}.event-poster figcaption{font-size:7px}.lumina-grid{grid-template-columns:1fr;gap:28px;margin-top:24px}.profile-poster{max-width:320px;justify-self:center;width:100%}.lumina-copy{text-align:center}.ornament{margin-bottom:20px;font-size:35px}.lumina-copy h2{font-size:clamp(21px,5.7vw,28px)}.lumina-roman{font-size:23px}.social-details{max-width:320px;margin:24px auto 0}.event-details dd{font-size:24px}.info{margin-top:0}}