header{height:auto;min-height:82px;padding:14px 24px;flex-wrap:wrap;gap:12px}
header .brand h1{font:600 17px 'Segoe UI',Arial,sans-serif;color:#263b32;margin:0;letter-spacing:0}
header .brand .mark{font:700 13px 'Segoe UI',Arial,sans-serif;background:#682738}
#loading{inset:0;transform:none;max-width:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:#edf1ea;border:0;border-radius:0;z-index:10;margin:0;text-align:center;padding:28px}
#loading[hidden]{display:none}#loading strong{font-size:17px;color:#263b32}#loading-detail{font-size:12px;color:#53665b}
.loading-spinner{width:42px;height:42px;border:3px solid #d1dcd0;border-top-color:#682738;border-radius:50%;animation:stadium-loading .8s linear infinite}
@keyframes stadium-loading{to{transform:rotate(360deg)}}
main{height:calc(100svh - var(--stadium-header-height,160px));min-height:430px;margin-bottom:100px}
.help{position:static;flex-basis:100%;margin:0;text-align:left;color:#53665b;font-size:11px}
#status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#status.error{clip-path:none;width:auto;height:auto;top:90px;bottom:auto;left:14px;right:14px;background:white;padding:12px;z-index:4}
.actions{gap:10px;flex-wrap:wrap}
.walking-options{display:flex;gap:6px}
#explore-controls{position:absolute;top:14px;left:14px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;max-width:calc(100% - 28px);background:#fffffff2;border:1px solid #d5ded3;border-radius:10px;padding:10px 12px;font-size:12px}
#explore-controls select{font:inherit;padding:7px;border:1px solid #d1dbd1;border-radius:6px;max-width:100%}
#explore-controls span{font-size:11px;color:#687d6d}
#walk-pad{position:absolute;right:18px;top:38%;display:grid;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(2,46px);gap:5px;touch-action:none;user-select:none}
#walk-pad button{background:#fffffff0;border:1px solid #bacbbb;border-radius:10px;color:#304e3e;font-size:25px;touch-action:none}
#walk-pad button:active{background:#304e3e;color:#fff}
#walk-pad button:first-child{grid-column:2}
#walk-pad button:nth-child(2){grid-column:1}
#walk-pad[hidden],#explore-controls[hidden]{display:none}
.actions .active{background:#304e3e;color:white;border-color:#304e3e}
.view-bar{position:static;transform:none;flex-basis:100%;max-width:100%;overflow-x:auto;margin:0;box-shadow:none;background:#f1f4ef;border:0;padding:4px;scrollbar-width:thin}
.view-bar button{padding:9px 12px}
.mobile-view-select{display:none}
.view-bar button{flex-shrink:0;white-space:nowrap}
#corridor-controls{position:absolute;top:14px;left:14px;width:min(320px,calc(100% - 28px));padding:12px;background:#fffffff2;border:1px solid #d5ded3;border-radius:10px;font-size:12px}
#corridor-controls[hidden],#tour-controls[hidden]{display:none}
#corridor-controls select{display:block;width:100%;margin:7px 0 10px;padding:7px;font:inherit}
#corridor-distance{width:100%;accent-color:#304e3e}
.corridor-ends{display:flex;justify-content:space-between;color:#687d6d;font-size:11px}
#tour-controls{position:absolute;top:14px;left:14px;max-width:calc(100% - 28px);display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 12px;background:#fffffff2;border:1px solid #d5ded3;border-radius:10px;font-size:12px}
#tour-controls button,#tour-controls select{font:inherit;border:1px solid #d1dbd1;border-radius:6px;padding:7px;background:white;color:inherit}
select:focus-visible{outline:3px solid #739e87;outline-offset:3px}
#stadium-story{max-width:1160px;margin:0 auto;padding:36px 28px 96px;display:grid;grid-template-columns:1fr 1.3fr;gap:64px;line-height:1.7}
.eyebrow{font-size:11px;letter-spacing:2px;color:#682738;font-weight:700}
.story-intro h2{font:500 clamp(28px,3vw,40px)/1.12 Georgia,serif;margin:18px 0;color:#263b32}
.story-intro p{font-size:15px;color:#53665b}
.project-facts{display:grid;gap:20px;margin-top:30px;border-top:1px solid #ced8cc;padding-top:24px}
.project-facts span{font-size:12px;color:#53665b}.project-facts strong{display:block;font-size:22px;color:#682738}
.stadium-faq h2{font-size:18px;margin:0 0 20px}.stadium-faq details{border-top:1px solid #cbd6c9}.stadium-faq details:last-child{border-bottom:1px solid #cbd6c9}
.stadium-faq summary{cursor:pointer;font-weight:600;font-size:14px;padding:18px 24px 18px 0;position:relative;list-style:none}
.stadium-faq summary::-webkit-details-marker{display:none}.stadium-faq summary:after{content:'+';position:absolute;right:2px;font-size:20px;color:#682738;top:13px}.stadium-faq details[open] summary:after{content:'−'}
.stadium-faq p{margin:0 0 20px;font-size:14px;color:#53665b}.stadium-faq a{color:#682738;text-underline-offset:3px}.stadium-faq summary:focus-visible{outline:2px solid #682738;outline-offset:3px}
@media(max-width:700px){header{padding:12px 14px;gap:10px}.brand{flex-basis:100%}.actions{width:100%;justify-content:space-between;gap:6px}.actions button{padding:9px 10px}.walking-options{gap:6px}.view-bar>button{display:none}.mobile-view-select{display:flex;align-items:center;gap:12px;width:100%;padding:2px 7px;font-size:12px}.mobile-view-select select{flex:1;min-width:0;font:inherit;padding:9px;border:1px solid #d1dbd1;border-radius:6px;background:white;color:#263b32}.help{font-size:10px}.brand h1{font-size:15px!important}#stadium-story{grid-template-columns:1fr;gap:28px;padding:24px 20px 80px}.project-facts{grid-template-columns:repeat(3,1fr);gap:12px}.project-facts strong{font-size:18px}#explore-controls{padding:8px 10px}#walk-pad{right:14px;top:42%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
#stadium-story{scroll-margin-top:16px}
@media(max-width:700px),(pointer:coarse){
 header .view-bar{display:block;width:100%;flex:0 0 100%;overflow:visible;min-width:0;border:1px solid #c5d1c3;padding:10px;background:#f1f4ef}
 header .view-bar>button{display:none}
 header .mobile-view-select{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:7px;padding:0;font-size:13px;font-weight:600;color:#263b32}
 header #view-select{display:block;visibility:visible;width:100%;max-width:100%;min-height:46px;flex:auto;appearance:auto;-webkit-appearance:menulist;font:16px 'Segoe UI',Arial,sans-serif;padding:10px 12px;border:1px solid #b6c7b5;border-radius:6px;background:#fff;color:#263b32}
 main{min-height:320px;height:62svh;margin-bottom:24px}
 #stadium-story{display:block;padding:28px 16px 100px;max-width:100%;overflow-wrap:anywhere}
 #stadium-story .story-intro{margin-bottom:32px}
 #stadium-story .project-facts{grid-template-columns:1fr;gap:12px}
 #stadium-story .project-facts span{display:block}
 #faq{display:block;width:100%;min-width:0}
 #faq details{display:block;margin:0 0 12px;border:1px solid #ccd7ca;border-radius:10px;background:white;overflow:hidden}
 #faq summary{display:block;list-style:none;margin:0;padding:17px 46px 17px 16px;font:600 16px/1.45 'Segoe UI',Arial,sans-serif;color:#263b32;white-space:normal;min-height:56px;touch-action:manipulation}
 #faq summary::marker{content:''}#faq summary::-webkit-details-marker{display:none}
 #faq summary:after{right:16px;top:15px;line-height:24px;width:18px;text-align:center}
 #faq details[open] summary{border-bottom:1px solid #e1e8df;background:#f7f9f5}
 #faq details>div{padding:16px}#faq p{font:400 15px/1.7 'Segoe UI',Arial,sans-serif;margin:0;color:#465a4d}
 #faq a{overflow-wrap:anywhere;text-decoration:underline}
}
