/* Study 09: a masthead and illustrated composition, followed by distinct image-led spreads. */
:root{color-scheme:dark;--ground:#100c17;--surface:#21152e;--ink:#f0ebf4;--muted:#b7a9c2;--rule:#433647;--purple:#c4a6de;--gold:#d0b389;font-family:GlyphPatchJP,"Zen Kaku Gothic New","Yu Gothic",Meiryo,sans-serif;background:var(--ground);color:var(--ink)}
@font-face{font-family:GlyphPatchJP;src:url('assets/glyph-patch-jp-400.woff2') format('woff2');font-weight:400 500;unicode-range:U+7947;font-display:swap}
@font-face{font-family:GlyphPatchJP;src:url('assets/glyph-patch-jp-700.woff2') format('woff2');font-weight:600 900;unicode-range:U+7947;font-display:swap}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}button,a{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}::selection{background:#73518a;color:#fff}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;z-index:50;left:16px;top:-80px;background:#fff;color:#100c17;padding:12px}.skip:focus{top:16px}
.ui-icon{display:inline-block;width:22px;height:22px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.study-bar{display:flex;align-items:center;gap:20px;min-height:31px;padding:3px clamp(20px,3.5vw,64px);background:#09070c;color:#9e8dad;font-size:10px}.study-bar>span:first-child{font:10px Arial,sans-serif;letter-spacing:.1em}.study-bar b{margin-left:6px;color:#e4d9ec}.study-caption{margin-right:auto}.cover-replay{display:inline-flex;align-items:center;gap:6px;min-height:25px;margin-left:auto;padding:2px 0;border:0;background:transparent;color:#c6b7d0;font-size:10px}.cover-replay .ui-icon{width:13px;height:13px}.cover-replay:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.edition-shell{max-width:1248px;margin:0 auto;padding-inline:40px}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:80px;padding-block:16px;border-bottom:1px solid #4b365c}
.header-origin{display:flex;align-items:center;gap:15px}.header-origin img{width:32px;height:43px;filter:brightness(0) invert(1)}.header-origin span{font:10px/1.7 Arial,sans-serif;letter-spacing:.12em;color:#c9b9d3}
.site-header nav{display:flex;align-items:center;gap:clamp(18px,2vw,30px)}.site-header nav a{display:flex;align-items:center;gap:9px;min-height:46px;font-size:13px;font-weight:600;white-space:nowrap}.site-header nav .ui-icon{width:19px;height:19px;color:var(--purple)}.site-header nav a:hover{color:#d9bbe9;text-decoration:underline;text-underline-offset:6px}
/* Asymmetric opening. Brand and portraits occupy separate flow columns. */
.identity-stage{display:grid;grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr);gap:clamp(40px,5vw,72px);padding:44px 0 54px;align-items:start}
.identity-intro{display:flex;flex-direction:column;align-self:stretch;min-width:0;padding-top:22px}
.masthead{line-height:0;width:100%;max-width:390px;margin:0}
.masthead img{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}
.identity-copy{padding-left:4.6%;margin-top:24px}
.identity-copy p{font-size:14px;line-height:2;color:#b7a9c2;letter-spacing:.02em}
.identity-all{display:inline-flex;align-items:center;gap:12px;margin-top:26px;min-height:44px;font:12px/1.5 Arial,sans-serif;letter-spacing:.055em}
.identity-all .ui-icon{width:17px;height:17px;color:var(--purple)}
.identity-all:hover{color:var(--purple);text-decoration:underline;text-underline-offset:5px}
.cast-gallery{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 30px;width:100%;max-width:540px;justify-self:start;align-items:start}
.cast-wave{position:absolute;z-index:-1;width:70%;height:auto;left:15%;top:15px;opacity:.35;pointer-events:none}
.cast-person{display:block;min-width:0;width:100%;max-width:240px;justify-self:start}
.cast-two{max-width:216px;margin-top:30px;justify-self:end}
.cast-three{max-width:230px;justify-self:end}
.cast-four{max-width:216px;margin-top:18px;justify-self:end}
.cast-portrait{width:100%;aspect-ratio:1}
.cast-portrait img{width:100%;height:auto}
.cast-name{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 5% 0;min-height:32px;font-size:15px;font-weight:600;line-height:1.6}
.cast-name span{min-width:0;overflow-wrap:anywhere}
.cast-name .ui-icon{width:15px;height:15px;color:var(--gold)}
.cast-person:hover .cast-name span{text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--purple)}
.hero-now{display:grid;grid-template-columns:20px minmax(0,1fr) 18px;align-items:center;gap:9px 13px;margin-top:auto;margin-left:4.6%;padding:20px 0 12px;border-top:1px solid var(--rule);max-width:350px}
.hero-now .ui-icon{width:18px;height:18px;color:var(--purple)}
.hero-now-label{grid-column:2;grid-row:1;font:700 12px/1.5 Arial,sans-serif;letter-spacing:.09em}
.hero-now #hero-live-names{grid-column:2;grid-row:2;font-size:14px;line-height:1.65;overflow-wrap:anywhere;color:#d7c8e2}
.hero-now>.ui-icon:first-child{grid-column:1;grid-row:1}
.hero-now>.ui-icon:last-child{grid-column:3;grid-row:1/3}
.hero-now[data-state=live]>.ui-icon:first-child{color:#f29aaa}
.hero-now:hover{border-color:var(--gold)}
.edition-shell .edition-products{margin-top:72px}
.edition-live-wrap{padding:80px 0 40px}.edition-live-wrap .v8-live{margin:0;padding-top:0;border:0}.edition-live-wrap .v8-live-heading{align-items:end;margin-bottom:35px}.edition-live-wrap .v8-live h2{font-size:clamp(30px,3vw,40px);line-height:1.3;letter-spacing:-.035em;font-weight:700;display:flex;align-items:center;gap:15px}.edition-live-wrap .v8-live h2>.ui-icon{width:32px;height:32px;color:var(--purple)}.edition-live-wrap .v8-live-status{padding-bottom:3px}
.edition-contact{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:58px 0 70px;border-top:1px solid var(--rule)}.edition-contact p{max-width:400px;font-size:15px;line-height:1.9;color:var(--muted)}.edition-contact a{display:flex;align-items:center;gap:24px;font-size:clamp(24px,2.8vw,36px);font-weight:600}.edition-contact a>.ui-icon{width:35px;height:35px;color:var(--purple)}.edition-contact a:hover{color:var(--purple)}
.edition-footer{position:relative;padding:24px 0 44px;border-top:1px solid var(--rule)}.footer-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px;font:11px Arial,sans-serif;letter-spacing:.07em;color:var(--muted)}.footer-socials{display:flex;gap:25px}.footer-socials a{display:flex;align-items:center;gap:9px;min-height:44px;font:13px Arial,sans-serif;letter-spacing:0;color:var(--ink)}.footer-socials a:hover{color:var(--purple)}.footer-socials .ui-icon{width:20px;height:20px}.footer-signature img{width:100%;height:auto;filter:brightness(0) invert(1);opacity:.9}
.study-note{padding:22px clamp(22px,4vw,64px);font-size:10px;line-height:1.8;color:#9b8aa8;background:#09070d}.study-note p+p{margin-top:4px}
.footer-info{display:flex;flex-wrap:wrap;gap:12px 28px;margin-bottom:26px;color:var(--muted);font-size:12px}.footer-info a{display:inline-flex;align-items:center;min-height:36px}.footer-info a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}

/* Shared type and alignment, with finite size ceilings. */
.site-header nav a,.edition-contact a{font-family:Arial,"Helvetica Neue",sans-serif;letter-spacing:.025em}
.edition-live-wrap .v8-live h2,.edition-works h2{font-family:Arial,"Helvetica Neue",sans-serif;font-weight:700}
.footer-signature{display:block;max-width:340px;margin:0}
@media(max-width:1099px){.site-header nav{gap:18px}.site-header nav a{font-size:12px;gap:7px}.header-origin span{font-size:9px}.edition-live-wrap{padding-top:60px}.edition-live-wrap .v8-live-heading{align-items:start}.identity-stage{gap:32px;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr)}.cast-gallery{gap:24px 20px}.cast-name{font-size:14px}}
@media(max-width:800px){
 .edition-shell{padding-inline:24px}.header-origin span{display:none}.site-header{gap:18px}.site-header nav{flex:1;justify-content:space-between;gap:12px}.site-header nav a{flex-direction:column;gap:5px;font-size:11px}.site-header nav .ui-icon{width:20px;height:20px}
 .identity-stage{grid-template-columns:minmax(0,1fr);gap:28px;padding:30px 0 40px}.identity-intro{padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 28px}.masthead{max-width:310px}.identity-copy{margin:0;padding:0;align-self:center}.identity-copy p{font-size:12px}.identity-all{margin-top:10px;font-size:11px}.hero-now{grid-column:1/-1;margin:4px 0 0;padding:14px 0;max-width:none;grid-template-columns:20px auto minmax(0,1fr) 18px}.hero-now-label{grid-column:2}.hero-now #hero-live-names{grid-column:3;grid-row:1;font-size:13px}.hero-now>.ui-icon:last-child{grid-column:4;grid-row:1}.cast-gallery{max-width:550px;justify-self:end}.cast-person{max-width:230px}.cast-two,.cast-four{max-width:215px}
 .edition-live-wrap .v8-live-heading{display:block}.edition-live-wrap .v8-live-status{margin-top:12px}.edition-live-wrap{padding-top:50px}.edition-contact{padding-block:35px 45px;gap:24px}.edition-contact p{font-size:12px}.edition-contact a{font-size:25px;gap:16px;white-space:nowrap}
}
@media(max-width:519px){
 .edition-shell{padding-inline:20px}.study-bar{padding-inline:20px;gap:12px}.study-caption{display:none}.site-header{min-height:84px;padding-block:12px;gap:16px}.header-origin img{width:25px;height:34px}.site-header nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 14px}.site-header nav a{font:600 11px/1.4 Arial,sans-serif;flex-direction:row;justify-content:center;min-height:40px}.site-header nav .ui-icon{display:none}
 .identity-stage{padding-top:22px;gap:22px}.identity-intro{display:flex;gap:0}.masthead{max-width:260px;margin-left:-10px}.identity-copy{margin:12px 0 0;align-self:stretch}.identity-copy p{font-size:11px}.identity-all{margin-top:12px;font-size:11px}.hero-now{display:grid;width:100%;margin-top:22px;font-size:12px;gap:9px}.hero-now #hero-live-names{font-size:12px}.cast-gallery{gap:22px 18px}.cast-name{font-size:14px;margin:8px 2% 0;gap:8px}.cast-name .ui-icon{width:13px;height:13px}.cast-two{margin-top:24px}.cast-four{margin-top:16px}
 .edition-shell .edition-products{margin-top:44px}.edition-live-wrap{padding:44px 0 30px}.edition-live-wrap .v8-live-heading{margin-bottom:24px}.edition-live-wrap .v8-live h2{font-size:29px;gap:10px}.edition-live-wrap .v8-live h2>.ui-icon{width:25px;height:25px}.edition-contact{display:block;padding:35px 0 40px}.edition-contact p{font-size:13px}.edition-contact a{margin-top:20px;justify-content:space-between;font-size:29px}.edition-contact a .ui-icon{width:28px;height:28px}.edition-footer{padding-bottom:30px}.footer-meta{font-size:9px;gap:12px;align-items:center;margin-bottom:22px}.footer-socials{gap:15px}.footer-socials a{font-size:11px;gap:6px}.footer-socials .ui-icon{width:17px;height:17px}
}
@media(max-width:360px){.edition-shell{padding-inline:17px}.site-header{gap:12px}.site-header nav{gap:7px}.site-header nav a{font-size:10px}.header-origin img{width:23px}.cast-name{font-size:13px}.identity-stage{gap:14px}.edition-live-wrap .v8-live h2{font-size:26px}.footer-meta>span{max-width:70px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
