@media (max-width:700px){
  :root{--header:56px;--controls:88px}
  .topbar{height:var(--header);padding:0 13px}.wordmark{font-size:15px}.menu{width:44px;height:44px;padding:7px}.topbar nav{top:var(--header);gap:0;padding:8px}.topbar nav button,.topbar nav a{min-height:48px;padding:0 10px;font-size:10px;border-bottom:1px solid #e4e5e3}
  .page-rail{height:var(--controls);grid-template-columns:0 minmax(0,1fr);touch-action:pan-x}.page-rail ol{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.page-rail li{flex-basis:126px;scroll-snap-align:center}.page-rail button{min-width:126px;min-height:88px;padding:10px 8px;grid-template-columns:30px 1fr}.page-rail button span{width:30px;height:30px}.page-rail button b{font-size:9px}.page-rail button small{font-size:7px}
  .scene{padding:calc(var(--header) + 7px) 7px calc(var(--controls) + 7px)}.product-window,.evidence-window{border-color:#4b5355}.scene-title{left:13px;top:calc(var(--header) + 12px);min-width:0;max-width:calc(100vw - 26px);padding:8px 10px}.scene-title .eyebrow{font-size:8px}.scene-title h2{margin-top:5px;font-size:30px}.scene-caption{left:13px;right:13px;bottom:calc(var(--controls) + 12px);padding:9px 10px;font-size:11px;line-height:1.35}
  .intro-copy{left:8px;right:8px;padding:22px}.intro-copy h1{font-size:52px}.intro-copy>p:not(.eyebrow){font-size:15px;line-height:1.45}.primary{min-width:0;width:100%;min-height:48px}
  .explanation{left:12px;right:12px;top:auto;bottom:calc(var(--controls) + 62px);width:auto;max-height:min(44svh,390px);padding:15px;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.explanation header{padding-bottom:11px}.explanation header span{width:34px;height:34px}.explanation h3{margin:11px 0 9px;font-size:19px}.explanation-seen{padding-bottom:11px}.explanation-seen p{font-size:14px;line-height:1.48}.explanation dl div{grid-template-columns:76px 1fr;gap:9px;padding:9px 0}.explanation dt{font-size:8px}.explanation dd{font-size:10px;line-height:1.4}
  .guide-hotspot{--guide-left:50%!important;--guide-top:62%!important}.guide-ring{width:48px;height:48px}.guide-copy{min-width:0;max-width:172px;padding:10px 11px}.guide-copy small{font-size:8px}.guide-copy strong{font-size:10px;white-space:normal;line-height:1.35}.guide-hotspot.label-left{flex-direction:row;transform:translate(-22px,-22px)}
  .chapter-next{left:12px;right:12px;bottom:calc(var(--controls) + 62px);width:auto;min-width:0;grid-template-columns:1fr 58px;transform:translateY(16px)}.chapter-next.visible{transform:none}.chapter-next>span{padding:14px}.chapter-next small{font-size:8px}.chapter-next strong{font-size:13px}.chapter-next em{font-size:8px}.chapter-next>b{font-size:21px}
  .facility-detail,.status-detail,.evidence-detail{position:fixed;left:10px;right:10px;top:calc(var(--header) + 10px);bottom:calc(var(--controls) + 10px);width:auto;max-height:none;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.facility-detail header,.status-detail header,.evidence-detail header{position:sticky;z-index:2;top:0;background:inherit}.evidence-detail>p{font-size:14px}.evidence-detail dl div{grid-template-columns:100px 1fr;gap:10px}.evidence-detail dd{font-size:11px}
  .facility-pin{min-width:44px;min-height:44px;padding:8px}.facility-pin i{width:27px;height:27px}.facility-pin span{display:none}.campus-statuses button{min-width:44px;min-height:44px;padding:8px;grid-template-columns:26px}.campus-statuses button b,.campus-statuses button small{display:none}.campus-statuses span{width:26px;height:26px}
  .asset-card{width:148px;min-height:58px;padding:9px;touch-action:none}.asset-card strong{font-size:13px}.drop-target{left:54%;top:21%;width:39%;height:43%}.drop-target span{font-size:8px}.product-window.drop-invalid:after,.product-window.drop-valid:after{left:10px;right:10px;top:auto;bottom:10px;text-align:center;font-size:8px}
  .node{min-width:112px;min-height:52px}.evidence-window .graph-head span{font-size:6px}.decision-copy{padding:0 12px}.decision-copy h2{font-size:54px}.decision-copy>p:not(.eyebrow){font-size:15px;line-height:1.45}.decision-copy>div{display:grid;gap:10px}.decision-copy .primary,.decision-copy a{width:100%}
}
@media (max-width:390px){.explanation{bottom:calc(var(--controls) + 54px);max-height:42svh}.chapter-next{bottom:calc(var(--controls) + 54px)}.scene-title h2{font-size:27px}.intro-copy h1{font-size:46px}.page-rail li,.page-rail button{flex-basis:118px;min-width:118px}}
@media (prefers-reduced-motion:reduce){.page-rail ol{scroll-behavior:auto}}
