/* Intrinsic layouts keep copy, controls and illustrations in separate areas. */
.header,.header.scrolled{backdrop-filter:none}
.brand-studio{left:auto;right:14px;bottom:5px;font-size:7px;line-height:1;letter-spacing:.3em}
.forge-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:1fr auto;column-gap:clamp(30px,4vw,70px);align-items:center;height:auto;min-height:max(900px,100svh);max-height:none;padding:130px 7vw 30px}
.forge-copy{position:relative;grid-column:1;grid-row:1;min-width:0;width:100%;max-width:none;margin:0;padding:0 0 45px}
.forge-copy .origin-signature{position:relative;inset:auto;max-width:100%;margin:0 0 25px;backdrop-filter:none;background:#13231ee8}
.forge-kicker{font-size:9px;line-height:1.7;margin:0 0 28px}
.forge-copy h1{font-size:clamp(59px,5.8vw,94px);line-height:1.04;filter:none;text-shadow:0 4px 24px #0005;letter-spacing:-.025em;margin:0}
.forge-copy h1>span,.forge-copy h1>em{font-size:inherit;line-height:1.06;white-space:normal;animation:none;opacity:1;transform:none}
.forge-copy h1 .forge-title-end{font-family:var(--display);font-size:1.4em;line-height:1.02;margin-top:17px;letter-spacing:-.025em}
.forge-lead{font-size:15px;line-height:1.85;max-width:470px;margin:28px 0 30px;animation:none;opacity:1;transform:none}
.forge-actions{gap:22px;align-items:center;animation:none;opacity:1;transform:none}
.forge-actions>.forge-story-link{flex-basis:100%;margin-top:3px;min-height:30px}
.forge-keeper{position:relative;grid-column:2;grid-row:1;inset:auto;align-self:center;justify-self:center;min-width:0;width:100%;max-width:560px;margin:25px 0 45px;transform:none;will-change:auto}
.keeper-character{max-height:680px;object-fit:contain}
.forge-bottom{position:relative;grid-column:1/-1;grid-row:2;inset:auto;width:100%;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:25px;border-top:1px solid #e9b23a30}
.forge-bottom>p{max-width:none;margin:0}.forge-bottom>p>span{font-size:10px;line-height:1.7}.forge-bottom small{font-size:11px;line-height:1.6}
.forge-bottom .scroll-invitation{position:relative;inset:auto;gap:12px;line-height:1.6;text-align:left;flex-shrink:0}.forge-bottom .motion-toggle{flex-shrink:0}
.forge-hero>.ambient-film,.detail-hero>.ambient-film{opacity:1}
/* Only the scenery tilts. Lettering stays on a flat layer. */
.portal-door{transform:none!important;will-change:auto;transform-style:flat}
.portal-view{transform:perspective(1000px) rotateX(calc(var(--tilt-y,0)*-3deg)) rotateY(calc(var(--tilt-x,0)*4deg));transform-origin:center;transition:transform .35s ease}
.portal-title{transform:none;filter:none}.portal-title h3{overflow-wrap:normal}
body.motion-paused .portal-view{transform:none}
/* Titles switch immediately; the crossfade belongs to the backgrounds. */
.cinema-sticky{min-height:0;height:100svh}
.cinema-world{display:flex;align-items:center;padding:205px 8vw 175px;opacity:1;visibility:visible;transition:none}
.cinema-world>.ambient-film,.cinema-world::before,.cinema-world>.cinema-veil{opacity:0;transition:opacity .65s ease}
.cinema-world.is-current>.ambient-film,.cinema-world.is-current::before,.cinema-world.is-current>.cinema-veil{opacity:1}
.cinema-world .cinema-copy{position:relative;inset:auto;width:min(780px,100%);max-width:780px;margin:0;transform:none;transition:none;animation:none;filter:none;opacity:0;visibility:hidden}
.cinema-world.is-current .cinema-copy{opacity:1;visibility:visible;animation:none;transform:none;filter:none}
.cinema-world .cinema-world-sign{visibility:hidden;transition:none}.cinema-world.is-current .cinema-world-sign{visibility:visible}
.cinema-copy h2{font-size:clamp(64px,7.8vw,120px);line-height:1.03;margin-bottom:23px}
.cinema-index{margin-bottom:28px;line-height:1.6}.cinema-world-line{font-size:17px;line-height:1.75;margin-bottom:25px}
.cinema-topline{top:125px}.cinema-caption{font-size:11px}.cinema-bottomline{bottom:35px}
/* The region's caption and landmarks now have their own flow row. */
.roots-landscape{display:flex;flex-direction:column;gap:55px;height:auto;min-height:850px;padding:48px 7vw 35px}
.roots-topline{position:relative;inset:auto;width:100%;flex-shrink:0}
.roots-copy{width:min(660px,52vw);margin:0;padding:0;flex:1;display:flex;flex-direction:column;justify-content:center}
.roots-copy h2{font-size:clamp(58px,6vw,90px);line-height:1.08}.roots-copy>.eyebrow{margin-top:0;line-height:1.7}.roots-copy>.text-link{align-self:flex-start}
.roots-bottom{position:relative;inset:auto;display:flex;align-items:end;justify-content:space-between;width:100%;gap:25px;flex-shrink:0}
.roots-places{gap:25px;flex-wrap:wrap}.roots-places span{font-size:10px;line-height:1.6}.roots-bottom>p{font-size:11px;line-height:1.6;margin:0}
.barrier-card{background:#291b32;backdrop-filter:none}.barrier-card div>span{color:#ccb8cf}
.truth-stage{max-height:none}.truth-reset{min-height:30px}
.page-intro h1,.studio-roots h2,.detail-title h1,.tavern-story h2{overflow-wrap:break-word;line-height:1.1}
.journal-tools{gap:25px;flex-wrap:wrap}.journal-search-form{max-width:100%;min-width:0}.journal-search-form .search-field{min-width:0}
.post-card .demo-label{display:block;width:fit-content;margin-top:14px;font-size:10px;line-height:1.6}
.trailer-dialog-head h2{line-height:1.2}.trailer-dialog-foot{flex-wrap:wrap}.trailer-dialog-foot a{white-space:normal}
@media(max-width:1100px){
 .forge-hero{padding:130px 5vw 28px;column-gap:35px;min-height:900px}.forge-copy h1{font-size:clamp(55px,6vw,68px)}.forge-lead{font-size:14px}.forge-keeper{max-width:450px}.forge-copy .origin-signature{font-size:8px}
 .forge-actions{gap:18px}.forge-actions>.adventure-button{font-size:13px;padding:16px 20px;gap:18px}.trailer-trigger{font-size:12px}.trailer-trigger small{font-size:9px}
 .cinema-world{padding-left:6vw;padding-right:6vw}.cinema-copy h2{font-size:clamp(65px,8.5vw,93px)}.cinema-index{font-size:10px}
 .roots-copy{width:65%;}.roots-copy h2{font-size:clamp(58px,7vw,77px)}
}
@media(max-width:900px){
 .forge-hero{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;padding:120px 7vw 28px;min-height:0;gap:25px}
 .forge-copy{grid-row:1;max-width:660px;padding:0;justify-self:center}.forge-copy h1{font-size:clamp(58px,8.5vw,76px)}.forge-lead{max-width:570px;margin:25px 0;font-size:15px}
 .forge-keeper{grid-column:1;grid-row:2;max-width:390px;margin:0;align-self:end}.keeper-character{max-height:460px}
 .forge-bottom{grid-row:3;gap:20px;align-items:center;flex-wrap:wrap}.forge-bottom>p{max-width:310px}.forge-bottom .scroll-invitation{order:3;flex-basis:100%;justify-content:center;padding-top:8px}.forge-bottom .motion-toggle{margin-left:auto}
 .cinema-world{padding-top:175px;padding-bottom:170px}.cinema-copy h2{font-size:clamp(62px,9.5vw,86px)}.cinema-index{font-size:10px}
 .cinema-topline{top:115px}.cinema-chapters{gap:20px}.cinema-bottomline{left:6vw;right:6vw}
 .roots-landscape{padding:40px 7vw 30px;min-height:800px;gap:55px}.roots-copy{width:80%;}.roots-bottom{flex-wrap:wrap}
}
@media(max-width:600px){
 .forge-hero{padding:112px 24px 25px;gap:30px}.forge-copy h1{font-size:clamp(48px,13.8vw,65px)}.forge-copy h1>em{font-size:inherit;white-space:normal}.forge-copy h1 .forge-title-end{font-size:1.4em;margin-top:15px}
 .forge-copy .origin-signature{margin-bottom:24px;font-size:8px;line-height:1.6}.forge-kicker{font-size:8px;margin-bottom:23px}.forge-lead{font-size:14px;line-height:1.9;margin:25px 0}
 .forge-actions{gap:20px;align-items:center}.forge-actions>.adventure-button{font-size:13px;padding:16px 20px;gap:18px}.forge-actions>.forge-story-link{font-size:12px;margin-top:0}
 .forge-keeper{max-width:285px}.keeper-character{max-height:400px}.keeper-quote{right:0;top:0;font-size:12px;padding:12px;max-width:230px}
 .forge-bottom{padding-top:23px;gap:18px}.forge-bottom>p{max-width:240px}.forge-bottom>p>span{font-size:9px;letter-spacing:.06em}.forge-bottom small{font-size:10px}
 .forge-bottom .scroll-invitation{font-size:8px;justify-content:flex-start;padding-top:0}
 .cinema-world{padding:150px 24px 160px}.cinema-copy h2{font-size:clamp(49px,14vw,70px);line-height:1.08;margin-bottom:20px}.cinema-copy>.eyebrow{font-size:9px;line-height:1.6}
 .cinema-index{font-size:9px;letter-spacing:.07em;gap:20px;margin-bottom:25px}.cinema-world-line{font-size:14px;line-height:1.8;max-width:350px;margin-bottom:22px}.cinema-topline{top:110px;font-size:8px;letter-spacing:.05em}
 .cinema-bottomline{bottom:25px;left:24px;right:24px}.cinema-chapters{gap:12px}.cinema-chapters button{font-size:10px;line-height:1.7}.cinema-caption{font-size:9px;line-height:1.6;margin-top:15px;max-width:calc(100% - 25px)}
 .roots-landscape{padding:35px 24px 30px;min-height:790px;gap:45px}.roots-topline{font-size:9px;line-height:1.6}.roots-copy{width:100%;}.roots-copy h2{font-size:clamp(48px,13vw,66px)}.roots-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;margin-bottom:22px}
 .roots-bottom{display:flex;flex-direction:column;align-items:start;gap:20px}.roots-places{width:100%;gap:12px}.roots-places span{font-size:8px;line-height:1.8;flex:1;min-width:0}.roots-bottom>p{font-size:10px;margin:0}
 .page-intro h1{font-size:clamp(38px,11vw,51px)}.studio-roots h2{font-size:clamp(36px,10vw,44px)}.detail-title h1{font-size:clamp(48px,13vw,67px)}
 .detail-title .eyebrow{max-width:100%;font-size:9px}.detail-title p{line-height:1.8}.trailer-dialog-head{gap:12px}.trailer-dialog-head h2{font-size:22px}.trailer-dialog-foot{font-size:11px;gap:12px}
}
@media(max-width:800px){.brand-studio{left:auto;right:5px;bottom:2px;font-size:6px}.header nav{max-height:calc(100svh - 90px);overflow-y:auto;overscroll-behavior:contain;backdrop-filter:none;background:#102018}}
@media(max-width:520px){.header nav{max-height:calc(100svh - 86px)}}
@media(max-height:650px),(prefers-reduced-motion:reduce){
 .cinema-journey{height:auto;min-height:0}.cinema-sticky{position:relative;height:auto;min-height:0;overflow:visible}.cinema-worlds{position:relative}
 .cinema-world{position:relative;min-height:620px;height:auto;padding:145px 7vw 70px;opacity:1;visibility:visible;pointer-events:auto;overflow:hidden}
 .cinema-world>.ambient-film,.cinema-world::before,.cinema-world>.cinema-veil{opacity:1;transition:none}
 .cinema-world .cinema-copy{position:relative;inset:auto;opacity:1;visibility:visible!important;transform:none;animation:none;filter:none}
 .cinema-world .cinema-world-sign,.cinema-topline,.cinema-bottomline,.cinema-scroll-line{display:none}
 .truth-chapter{min-height:0}.truth-stage{position:relative;height:auto;min-height:0;overflow:hidden;padding:70px 0}
 .truth-layout{padding-top:0;padding-bottom:0}
}
@media(prefers-reduced-motion:reduce){.portal-view{transform:none!important}.cinema-world>.ambient-film{display:none}.forge-copy h1{transform:none!important}}
