/* Shared scene, gesture and copy composition, preserving the original artwork. */
.comic-panel .story-copy44{inset:0;width:100%;height:100%;display:block;pointer-events:none}
.comic-panel .story-copy44 h3,.comic-panel .story-copy44 p{position:absolute!important;margin:0!important}
.comic-panel .scene-character-window{inset:0!important;border-radius:inherit;overflow:hidden}
.is-comic-scene .comic-panel .scene-character{width:350px;height:700px;right:-14px;top:-5px;filter:none}
.comic-panel .panel-no{position:absolute!important;top:14px;left:17px;margin:0;transform:none;rotate:0deg}
.comic-first .story-copy44 .bubble{left:17px!important;top:62px!important;width:48%;max-width:48%!important;padding:13px 17px;border-radius:20px 20px 4px 20px;font-size:20px;text-align:left;box-shadow:none}
.comic-first .bubble:after{content:'';position:absolute;right:-16px;top:38%;width:26px;height:18px;background:var(--cream);border-right:3px solid var(--ink);border-top:3px solid var(--ink);transform:skewY(-25deg);border-radius:0}
.comic-first .story-copy44 h3{left:0!important;bottom:0!important;top:auto!important;width:100%;max-width:100%!important;padding:13px 19px;background:var(--cream);border-top:3px solid var(--ink);font-size:26px;line-height:1.3}
.comic-first .story-copy44 h3 br{display:none}
.comic-first .notice-clue{position:absolute!important;left:20px!important;top:164px!important;width:105px!important;height:58px!important}
.comic-second .story-copy44 h3{left:17px!important;top:64px!important;width:53%;font-size:31px;line-height:1.45}
.comic-third .story-copy44 h3{left:17px!important;top:58px!important;width:50%;font-size:29px;line-height:1.37}
.comic-panel .story-copy44 p:not(.bubble){inset:auto 0 0!important;width:100%;max-width:100%!important;padding:10px 16px;background:var(--cream);border:0;border-top:3px solid var(--ink);box-shadow:none;border-radius:0;font-size:12px;line-height:1.7}
.comic-second .mini-stamp{right:14px!important;bottom:73px!important;font-size:13px;z-index:4}
.comic-third .heart-doodle{right:38%;top:100px;opacity:.45;z-index:0}
.comic-panel:after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px #172a3130;z-index:5}
/* Production scenes keep their own line work, light, and environment. */
.cast-card{background-image:none;overflow:hidden;isolation:isolate}
.cast-card .portrait{translate:none!important;margin:0!important;border-radius:0;filter:none;align-self:stretch;background-color:#f5dfb8}
.cast-card .cast-label{position:relative;z-index:4;box-shadow:none}
.cast-card .cast-status{z-index:6;right:0;top:0;rotate:0deg;transform:none;box-shadow:none;font-size:0}
.cast-card .portrait[data-scene45],.dialog-portrait[data-scene45]{background-image:var(--scene-image45)!important;background-size:var(--scene-size45)!important;background-position:var(--scene-pos45)!important;background-repeat:no-repeat}
.cast-card[data-status="new"] .portrait{background-color:#f5ddb8;background-image:url('assets/cast-new.webp'),radial-gradient(ellipse at 40% 22%,#fff8df,#d6aa79)!important;background-size:300% 200%,100% 100%;background-position:calc(var(--col)*50%) calc(var(--row)*100%),center;box-shadow:inset 0 0 0 1px #172a3114}
.cast-card[data-status="new"] .cast-label{background:#fff5d8}
.dialog-visual{padding:0;overflow:hidden;align-items:stretch;justify-content:stretch;background:#f5ddb8;container-type:inline-size}
.dialog-portrait{align-self:stretch;min-height:100%;margin:0!important;width:100%!important;filter:none}
.dialog-portrait.new{background-color:#f5ddb8;background-image:url('assets/cast-new.webp'),radial-gradient(ellipse at 40% 22%,#fff8df,#d6aa79);background-size:300% auto,100% 100%;background-position-x:calc(var(--col)*50%),center;background-position-y:calc(var(--row) * -100cqw),center}
.dialog-portrait[data-scene45="sae"]{--scene-pos45:97% 17%!important}
.dialog-index{display:none}
/* The closing scene is continuous; no repeated floating wink cutout. */
.follow .follow-friend,.follow .follow-impact,.follow .follow-shape,.follow .follow-star{display:none}
.follow{background:var(--teal);isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:38px;padding-top:32px;align-items:start}
.follow-scene45{grid-column:1;grid-row:1 / span 5;align-self:stretch;min-height:300px;margin:0;overflow:hidden;border:3px solid var(--ink);border-radius:8px 28px 8px 8px;background:#f4dba6;position:relative}
.follow-scene45 img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;position:absolute;inset:0}
.follow-scene45 figcaption{position:absolute;left:0;bottom:0;right:0;padding:10px 14px;background:var(--cream);border-top:3px solid var(--ink);font-size:12px;font-weight:900;line-height:1.6}
.follow>.eyebrow,.follow>h2,.follow>.follow-copy,.follow>.button,.follow>.social-grid{grid-column:2;position:relative;inset:auto;margin-left:0;margin-right:0;width:100%;max-width:none;text-align:left}
.follow h2{margin-top:12px;margin-bottom:12px}.follow .follow-copy{background:none;border:0;box-shadow:none;padding:0;margin-block:0 16px;rotate:0deg}.follow .button{justify-content:center}.follow .social-grid{margin-top:18px;gap:8px}.follow .social-grid a{padding:12px}.follow .social-grid span{font-size:19px}.follow .social-grid b{font-size:10px}
@media(max-width:700px){
 .comic-panel .panel-no{left:12px;top:12px}
 .is-comic-scene .comic-panel .scene-character,.is-comic-scene .comic-first .scene-character,.is-comic-scene .comic-third .scene-character{width:266px;height:532px;right:-28px;top:-9px}
 .comic-first .story-copy44 .bubble{left:12px!important;top:44px!important;width:51%;max-width:51%!important;padding:12px 9px;font-size:15px;line-height:1.6;border-width:2px}
 .comic-first .bubble:after{right:-11px;width:18px;height:14px;border-width:2px}
 .comic-first .story-copy44 h3{font-size:20px;padding:11px 13px;line-height:1.45}
 .comic-first .story-copy44 h3 br{display:block}
 .comic-first .notice-clue{left:18px!important;top:122px!important;width:78px!important;height:39px!important}
 .comic-second .story-copy44 h3{left:12px!important;top:48px!important;font-size:24px;width:55%;line-height:1.5}
 .comic-third .story-copy44 h3{left:12px!important;top:45px!important;width:51%;font-size:22px;line-height:1.45}
 .comic-panel .story-copy44 p:not(.bubble){font-size:10px;padding:8px 12px;line-height:1.7}
 .comic-second .mini-stamp{font-size:10px;bottom:62px!important;right:10px!important}
 .comic-third .heart-doodle{top:100px;right:42%;font-size:90px}
 .cast-card:first-child .portrait,.cast-wall[data-view="all"] .cast-card:last-child .portrait,.cast-wall[data-view="new"] .cast-card:nth-child(6) .portrait{aspect-ratio:1/1!important}
 .cast-card .cast-status{font-size:0;padding:2px 3px}
 .cast-wall .cast-card:first-child .portrait,.cast-wall[data-view="all"] .cast-card:last-child .portrait,.cast-wall[data-view="new"] .cast-card:nth-child(6) .portrait{height:100%;align-self:stretch!important}
 .dialog-visual{height:270px}.dialog-portrait{min-height:270px;aspect-ratio:auto}
 .follow{display:block;padding-top:0;padding-bottom:22px}
 .follow-scene45{height:205px;min-height:0;margin:0 -22px 18px;border:0;border-bottom:3px solid var(--ink);border-radius:0}
 .follow-scene45 img{object-fit:cover;object-position:50% 42%}
 .follow-scene45 figcaption{font-size:9px;padding:5px 16px;background:#fffbea;border-top:2px solid var(--ink)}
 .follow>h2{font-size:27px;margin-top:10px}.follow>.eyebrow{font-size:9px}.follow .follow-copy{font-size:11px;margin-bottom:13px}.follow .button{max-width:none;min-height:56px}.follow .social-grid{margin-top:12px}.follow .social-grid span{font-size:16px}.follow .social-grid a{padding:12px 7px}.follow .social-grid b{font-size:8px}
}
@media(prefers-reduced-motion:reduce){.follow-scene45{animation:none;transition:none}}
