.fo-slides{position:absolute;inset:0;z-index:-3;background:#143649}.fo-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--fx) var(--fy);opacity:0;transition:opacity 1.2s ease}.fo-slide.is-active{opacity:1}.fo-slider-controls{position:absolute;right:max(24px,calc((100vw - 1180px)/2));bottom:92px;display:flex;gap:12px;align-items:center;color:white;z-index:3}.fo-slider-controls button{border:1px solid #ffffff70;background:#123044aa;color:#fff;border-radius:50%;width:42px;height:42px;font-size:19px;cursor:pointer}.fo-slider-controls button:focus-visible{outline:3px solid #ffcc4d;outline-offset:3px}.fo-slider-count{font-size:14px;min-width:45px;text-align:center}.fo-home .fo-hero{min-height:780px}.fo-home .fo-hero h1{font-size:clamp(48px,6vw,84px);line-height:1.12;max-width:660px}.fo-home .fo-hero__copy{max-width:510px}.fo-steam-archive{padding:60px 0 90px;background:#f4f9ff}.fo-steam-archive article{max-width:1180px;margin:auto;padding:0 24px}.fo-archive-row{display:grid;grid-template-columns:105px 1fr 60px;gap:20px;padding:24px 0;border-bottom:1px solid #dce5ed;color:#10243e}.fo-archive-row h3{font-size:20px;line-height:1.4;margin:0}.fo-archive-row p{color:#60738a;line-height:1.6;margin:8px 0 0}.fo-archive-filter{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.fo-archive-filter a{border:1px solid #c5d4e0;border-radius:24px;padding:8px 18px}.fo-story{padding:70px 0}.fo-story article{max-width:1180px;padding:0 24px;margin:auto}.fo-story-row{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;margin-bottom:75px}.fo-story-row:nth-child(even) .fo-story-art{order:2}.fo-story-art{display:grid;gap:12px}.fo-story-art img{width:100%;border-radius:18px;aspect-ratio:16/9;object-fit:cover}.fo-story-copy h2{font-size:30px;line-height:1.4;color:#10243e}.fo-story-copy p{font-size:17px;line-height:1.9;color:#60738a}.fo-story-opening{width:100%;max-height:600px;object-fit:cover;display:block}.fo-steam-content img{max-width:100%;height:auto}.fo-steam-content{overflow-wrap:anywhere}.fo-steam-content pre{white-space:pre-wrap}.fo-steam-content ul{padding-left:1.5em;list-style:disc}.fo-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.fo-guide-grid a{padding:28px;border:1px solid #dce5ed;border-radius:16px;color:#10243e}.fo-guide-grid h3{font-size:24px;margin:0 0 12px}.fo-guide-grid p{line-height:1.8;color:#60738a}
@media(max-width:700px){.fo-slide{object-position:var(--mx) var(--my)}.fo-home .fo-hero{min-height:710px}.fo-slider-controls{bottom:70px}.fo-story-row{grid-template-columns:1fr;gap:24px}.fo-story-row:nth-child(even) .fo-story-art{order:0}.fo-story-copy h2{font-size:25px}.fo-archive-row{grid-template-columns:1fr;gap:7px}.fo-archive-row>span{display:none}.fo-guide-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.fo-slide{transition:none}}

.fo-story>article>h2{font-size:34px;font-weight:700;line-height:1.4;margin-bottom:30px;color:#10243e}.fo-story-opening{border-radius:20px;margin-bottom:60px}.fo-steam-content table{border-collapse:collapse;width:100%;margin:20px 0}.fo-steam-content td{border:1px solid #dce5ed;padding:12px}.fo-steam-content p{margin:12px 0;line-height:1.8}

/* Preserve complete illustrations: portrait art must not be cropped to 16:9. */
.fo-story-art img{height:auto;aspect-ratio:auto;object-fit:contain;display:block;margin:0 auto;max-height:620px;background:#f4f9ff}
.fo-story-art{align-items:center;justify-items:center}
.fo-story-opening{height:auto;max-height:none;object-fit:contain}
.fo-character-tile img[src*="ari.png"]{object-position:center 24%;filter:none}
.fo-character-page .s_01 figure[Cname="ari"] .img_wrap>img{object-position:center 24%;filter:none}

/* Character cards retain the original profile text and open on click. */
body main#sub_page.info.character.fo-character-page .s_01 article .wrap {align-items:start}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure {max-height:none;aspect-ratio:auto}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure figcaption {position:static;transform:none;padding:20px 26px;color:#16324f;display:flex;align-items:center;justify-content:space-between;gap:12px}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure figcaption h3 {font-size:28px}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure figcaption a {margin:0;background:#edf5ff;color:#16324f}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure .detail {padding:0 26px 26px;transition:none}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure .detail[hidden] {display:none!important}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure .detail dd .store {max-height:none;overflow:visible;background:transparent;text-align:left;color:#405872;font-size:16px;line-height:1.8}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure .detail dd .c_info p {width:auto}
body main#sub_page.info.character.fo-character-page .s_01 article .wrap figure .detail dd .c_info p span {width:auto;background:transparent;color:#16324f;font-size:15px;padding:4px 8px}
.fo-character-page .img_wrap[role=button]{cursor:pointer}
.fo-character-page [role=button]:focus-visible{outline:3px solid #247cec;outline-offset:-3px}
.fo-character-page .detail .c_info p span{background:transparent!important;color:#16324f!important}
