/* A self-contained character chapter; the full cast remains on its own page. */
.home-page .character-invitation{background:#fff;color:#172a34;padding:36px var(--page-gutter,6vw) 22px;--ui-focus:#1145ba;scroll-margin-top:0;isolation:isolate}
.home-page .character-invitation .section-head{border-color:#172a341f;padding-bottom:18px}
.home-page .character-invitation .section-head p{font-size:11px;line-height:1.8;margin:0}
.home-page .character-invitation .section-head>span{color:#596870}
.home-page .character-invitation-grid{margin-top:24px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:30px;align-items:center}
.home-page .character-invitation h2{font-size:clamp(52px,5.8vw,88px);margin-bottom:22px}
.home-page .character-invitation h2 em{color:#b47d35}
.home-page .home-cast-copy>p{margin:0;font-size:16px;color:#42545c}
.home-cast-feelings{display:flex;flex-wrap:wrap;gap:0 22px;max-width:330px;margin-top:28px}
.home-cast-feelings[hidden]{display:none!important}
.home-cast-feelings button{font:italic 19px/1.4 var(--type-literary,Georgia,serif);background:none;border:0;border-radius:0;color:#68777e;cursor:pointer;padding:9px 0;min-height:44px;text-underline-offset:6px;text-decoration-thickness:1px}
.home-cast-feelings button[aria-pressed=true]{color:#172a34;text-decoration:underline;text-decoration-color:#bf8f52}
.home-cast-feelings button:hover{color:#1145ba}
.home-page .character-invitation :focus-visible{outline:2px solid #1145ba;outline-offset:5px}
.home-page .character-invitation-art{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:700px;width:100%;align-items:start}
.home-cast-stage{position:relative;aspect-ratio:.78;isolation:isolate;overflow:hidden}
.home-cast-stage canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.home-page .home-cast-stage img{position:absolute;left:10%;top:7%;width:80%;height:81%;max-height:none;object-fit:contain;z-index:2;will-change:opacity}
.home-page .character-invitation-art figcaption{margin:0;text-align:center;letter-spacing:0;color:#172a34;min-height:126px;transition:opacity .45s ease}
.home-page .home-cast-name{font-size:20px;line-height:1.5}
.home-page .home-cast-name span{font-size:10px;margin:0;color:#5e6d74;opacity:1;white-space:nowrap}
.home-page .home-cast-name strong{font-weight:400}
.home-page .character-invitation-art .home-cast-words{font:italic 16px/1.6 var(--type-literary,Georgia,serif);margin:5px 0 0;max-width:none;color:#334a54;overflow-wrap:anywhere}
.home-page .character-invitation-art .home-cast-hindi{font-size:12px;line-height:1.7;color:#6a706d;margin:2px 0 0;max-width:none}
.home-page .character-invitation-art .home-cast-fragment{font:italic 14px/1.6 var(--type-literary,Georgia,serif);margin:12px auto 0;max-width:24ch;min-height:3.2em;color:#637178}
.home-cast-bottom{max-width:1320px;margin:8px auto 0}
.home-page .character-invitation-link{font-size:11px;font-weight:400;letter-spacing:.01em;min-height:44px;padding:12px 0;margin:0;border:0;text-decoration:none;color:#172a34;display:inline-flex}
.home-page .character-invitation-link:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){.home-page .character-invitation{padding-top:28px;padding-bottom:14px}.home-page .character-invitation-grid{grid-template-columns:1fr;gap:10px;margin-top:26px}.home-page .character-invitation h2{font-size:clamp(49px,9vw,70px);margin-bottom:17px}.home-page .home-cast-copy>p{font-size:14px;line-height:1.7}.home-cast-feelings{max-width:none;gap:0 21px;margin-top:16px}.home-cast-feelings button{font-size:17px}.home-page .character-invitation-art{max-width:540px;margin:auto;gap:6px}.home-cast-stage{aspect-ratio:.88}.home-page .home-cast-name{font-size:18px}.home-page .home-cast-name span{display:block;font-size:9px}.home-page .character-invitation-art figcaption{min-height:137px}.home-cast-bottom{margin-top:4px}}
@media(max-width:400px){.home-cast-feelings{gap:0 18px}.home-cast-feelings button{font-size:16px}.home-page .character-invitation-art .home-cast-words{font-size:14px}.home-page .character-invitation-art .home-cast-fragment{font-size:12px}.home-page .home-cast-name{font-size:16px}}
@media(prefers-reduced-motion:reduce){.home-page .character-invitation-art figcaption{transition:none}}
