/* R5 local layout review; no content or application changes. */
.home-page { min-height:100vh; min-height:100svh; }
.home-page .shell { width:calc(100% - 96px); max-width:1440px; margin-left:auto; margin-right:auto; }
.home-page .site-header > .shell { max-width:1440px; }
.home-main { flex:1 0 auto; }
.home-page .hero { flex:1 0 auto; min-height:620px; }
.home-page .home-directory { flex:none; }
.home-page .site-footer { flex:none; background:#f3f6f7; border-top:1px solid #e0e8eb; padding:20px 0; font-size:12px; }
.home-page .site-footer button { font-size:12px; }
.home-page .site-footer > .shell { gap:12px 28px; }
.home-page .site-footer > .shell > div { gap:18px; }
@media(min-width:1500px) { .home-page .scene-annotation { right:max(6%,calc((100% - 1440px)/2 + 30px)); } }
@media(max-width:1100px) { .home-page .shell { width:calc(100% - 48px); } }
@media(max-width:760px) {
 .home-page .shell { width:calc(100% - 36px); }
 .home-page .hero { flex:none; min-height:775px; }
 .home-page .home-main { flex:0 0 auto; }
 .home-page .home-directory > .shell { width:100%; }
 .home-page .site-footer { padding:18px 0; font-size:11px; }
 .home-page .site-footer button { font-size:11px; }
}
/* Footer readability refinement requested during R5 review. */
.home-page .site-footer { font-size:14px; line-height:1.8; padding:22px 0; }
.home-page .site-footer button { font-size:14px; line-height:1.8; }
.home-page .site-footer img { width:18px; height:18px; margin-right:6px; }
.home-page .site-footer > .shell { gap:12px 28px; }
.home-page .site-footer > .shell > div { gap:14px 22px; }
@media(max-width:760px) {
 .home-page .site-footer { font-size:13px; padding:20px 0; }
 .home-page .site-footer button { font-size:13px; }
 .home-page .site-footer > .shell > div { gap:10px 16px; }
}
