/* 2026-09-21 Guide layout stabilization. Loaded after prior styles. */
:root{--guide-header-clearance:76px}
/* Empty legacy at-a-glance placeholder had negative margin and pulled the following
   transparency panel upward across the hero boundary. */
body > .glance-strip:empty{display:none!important;margin:0!important;padding:0!important;height:0!important;min-height:0!important}
body > .state-hero{display:flex!important;align-items:flex-end!important;position:relative;isolation:isolate;margin-bottom:0!important;min-height:clamp(340px,36vw,540px)!important;overflow:hidden}
body > .state-hero > .hero-inner{position:relative;z-index:1;flex:1 1 auto;min-width:0;padding:clamp(56px,9vw,130px) 0 clamp(32px,4vw,56px)!important}
/* Guide transparency belongs below, never partially on top of the hero image. */
body > .state-hero + main,body > .state-hero + .glance-strip + main{clear:both;position:relative;margin-top:0!important;padding-top:0!important}
main > .author-strip-wrap{position:relative;z-index:1;clear:both;margin:0!important;padding:clamp(15px,2.3vw,26px) 0!important;background:#f6f4ee!important;transform:none!important}
main > .author-strip-wrap .author-strip{width:100%;max-width:100%;min-width:0;margin:0;box-shadow:0 5px 18px rgba(31,53,46,.06);background:#fffdf8!important;backdrop-filter:none!important}
main > .author-strip-wrap .author-strip > *{min-width:0;max-width:100%;overflow-wrap:anywhere}
main > .state-jump-wrap{position:sticky;top:var(--guide-header-clearance);z-index:30;margin-top:0!important;max-width:100%;background:#faf9f5!important;backdrop-filter:none!important}
main > .state-jump-wrap .state-jump{scrollbar-width:thin;scroll-padding-inline:12px}
main > .state-jump-wrap .state-jump a{white-space:nowrap;flex-shrink:0}
/* Page elements should grow with the viewport rather than making tiny strips or
   pushing the viewport wider at intermediate breakpoints. */
main .shell,main .article-shell,main .section-head,main .grid,main .insight-grid,main .related-rail{min-width:0}
main .section-head > *,main .grid > *,main .insight-grid > *,main .related-rail > *{min-width:0}
main h1,main h2,main h3,main p,main a{overflow-wrap:break-word}
main img{max-width:100%;height:auto}
main .seo-city-hero .article-shell,main .seo-article-section .article-shell{width:min(100% - 32px,900px);margin-inline:auto}
/* Reading columns are comfortably wide without becoming a single enormous line. */
main .regional-planning-next15 .shell,main .regional-planning-last20 .shell,
main .seo-route-expansion .shell{width:min(1180px,calc(100% - 48px));max-width:1180px;margin-inline:auto;min-width:0}
main .regional-planning-next15 h2,main .regional-planning-last20 h2,
main .seo-route-expansion h2{max-width:100%;overflow-wrap:break-word}
@media(max-width:1180px){:root{--guide-header-clearance:76px}}
@media(max-width:760px){
 body > .state-hero{min-height:clamp(310px,65vw,475px)!important}
 body > .state-hero > .hero-inner{padding:clamp(44px,10vw,78px) 0 32px!important}
 main > .author-strip-wrap{padding:14px 0!important}
 main > .author-strip-wrap .author-strip{padding:16px!important}
 main > .state-jump-wrap{top:var(--guide-header-clearance)}
 main .regional-planning-next15 .shell,main .regional-planning-last20 .shell,
 main .seo-route-expansion .shell{width:calc(100% - 28px)}
}
@media(max-width:420px){body > .state-hero{min-height:330px!important} main > .state-jump-wrap .state-jump{gap:7px}}
