/* Moving Castle page only. Shared studio and other games stay unchanged. */
.castle-page .detail-hero{padding-bottom:35px}.castle-page .detail-hero h1{font-size:clamp(50px,6.6vw,94px)}.castle-page .detail-hero p{max-width:760px}.castle-page .chapter-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:28px;font-size:14px}.castle-page .chapter-links a{text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:7px}.castle-page .chapter-links a:hover{border-color:var(--wine)}.castle-page .demo-section{padding:44px 0 65px;scroll-margin-top:25px}.castle-page .section-heading{display:grid;grid-template-columns:1.25fr 1fr;align-items:end;gap:45px;margin-bottom:30px}.castle-page .section-heading h2{font-size:clamp(36px,4.4vw,64px);margin-top:14px}.castle-page .section-heading p{font-size:16px;color:var(--muted)}.castle-page .footage{margin:0}.castle-page .footage video{display:block;width:100%;height:auto;background:#202a24;border:1px solid var(--line);object-fit:contain;box-sizing:content-box;border:0;outline:1px solid var(--line)}.castle-page .footage figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-top:13px;font-size:12px;color:var(--muted)}.castle-page .footage figcaption strong{font-size:12px;color:var(--ink)}.castle-page .recovery-copy{border-top:1px solid var(--line);padding-top:50px;padding-bottom:60px}.castle-page .recovery-copy .eyebrow{color:var(--wine);margin-bottom:16px}.castle-page .recovery-copy h2{font-size:clamp(36px,4.4vw,56px)}.castle-page .scope-note{font-size:13px!important;margin-top:22px!important;border-left:2px solid #b6bd99;padding-left:17px}.castle-page .vision-section{border-top:1px solid var(--line);padding-top:55px}.castle-page .vision-art{margin:0}.castle-page .vision-art img{display:block;width:100%;height:auto;object-fit:contain;background:#e7e4d5}.castle-page .vision-art figcaption{font-size:12px;color:var(--muted);margin-top:13px;max-width:840px}.castle-page .future-home .eyebrow,.castle-page .future-building .eyebrow{color:var(--wine)}.castle-page .future-home p,.castle-page .future-building p{max-width:760px}.castle-page .concept-anchor{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding:30px 0 60px;text-decoration:none}.castle-page .concept-anchor span{font-size:14px;color:var(--muted)}@media(max-width:760px){.castle-page .section-heading{grid-template-columns:1fr;gap:20px}.castle-page .demo-section{padding-top:24px;padding-bottom:42px}.castle-page .footage figcaption{display:block}.castle-page .footage figcaption strong{display:block;margin-bottom:6px}.castle-page .recovery-copy{padding-top:35px}.castle-page .vision-section{padding-top:40px}.castle-page .chapter-links{gap:12px 21px}.castle-page .detail-hero h1{font-size:clamp(44px,9.5vw,70px)}}

/* Preserve the complete artwork as the layout narrows. HTML dimensions reserve
   the correct ratio; auto height prevents fixed desktop heights on phones. */
.castle-page img{width:100%;height:auto;object-fit:contain}
.castle-page .wide-art img{max-height:none}
.castle-page .split-art>*{min-width:0}

.development-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px;margin-top:32px}.development-grid h3{font-size:30px;margin-bottom:14px}.development-grid p,.development-page .strip>p:not(.eyebrow),.development-summary>p:not(.eyebrow){font-size:16px;color:var(--muted);max-width:840px}.development-page .future-ideas{margin-top:45px}.development-page .scope-note{margin-top:25px}.development-page section{scroll-margin-top:30px}@media(max-width:760px){.development-grid{grid-template-columns:1fr;gap:28px}.development-page .strip h2,.development-summary h2{font-size:clamp(34px,8vw,48px)}}

/* Readable film chapters give the recovery a clear beginning and payoff. */
.film-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;margin:25px 0 0;border-top:1px solid var(--line)}
.film-chapters button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:14px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:14px;text-align:left;cursor:pointer}
.film-chapters time{font-size:11px;letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap}
.film-chapters button:hover,.film-chapters button[aria-pressed=true]{color:var(--wine)}
.film-chapters button[aria-pressed=true] span{font-weight:600}
.film-chapters button:focus-visible{outline:2px solid var(--wine);outline-offset:5px}
@media(max-width:760px){.film-chapters{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;margin-top:20px}.film-chapters button{font-size:12px;min-height:56px}.film-chapters time{font-size:10px}}
