/* Natural document height keeps the footer next to the home content. */
body.home-overview #app{min-height:0;padding-bottom:0}
body.home-overview>footer.site-footer{margin-top:24px}
@media(min-width:681px){
 .wrap{max-width:1280px;padding-inline:32px}
 header .masthead{padding-block:16px;min-height:104px}
 header .location-strip .topline{min-height:32px}
 .section-nav .nav-scroll{gap:clamp(16px,1.8vw,26px)}
 .section-nav button{font-size:14px;padding-block:13px}
 body.home-overview #app{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding-inline:32px}
 body.home-overview #app>section{min-width:0;margin-block:0}
 body.home-overview #app>.city-scenes{height:clamp(224px,20vw,264px);min-height:224px}
 .city-scene-copy{inset:24px 140px 24px 28px;gap:7px}
 .city-scene-title{font-size:clamp(31px,2.9vw,40px);line-height:1.18;max-width:720px}
 .city-scene-kicker{font-size:11px}
 .city-scene-place{font-size:13px}
 body.home-overview #community-services{margin:0}
 body.home-overview #community-services .service-tab{font-size:14px;min-height:46px}
 body.home-overview #community-services>.pharmacy-module{min-height:52px;padding:8px 16px}
 body.home-overview #culture-home.culture-home{margin:0;padding:12px 16px;min-height:0}
 body.home-overview #culture-home .culture-mini{padding:4px 12px;gap:14px}
 body.home-overview #culture-home .culture-mini .culture-poster,
 body.home-overview #culture-home .culture-mini .culture-image-fallback{width:64px;height:96px}
 body.home-overview #culture-home .culture-mini strong{font-size:18px;line-height:1.25}
 body.home-overview #culture-home .culture-mini small{font-size:12px;line-height:1.45}
 body.home-overview #app>.home-media.home-media-banner,
 body.home-overview #app>#city-pulse{margin:0;padding:0}
 body.home-overview .media-banner-button{min-height:104px;padding:18px 22px;gap:18px}
 body.home-overview .media-banner-copy{gap:5px}
 body.home-overview .media-banner-copy .home-media-kicker{display:block;font-size:10px}
 body.home-overview .media-banner-copy .home-media-title{font-size:26px;line-height:1.2}
 body.home-overview .media-banner-caption{font-size:14px;line-height:1.5}
 body.home-overview .media-banner-open{font-size:13px}
 body>footer.site-footer{padding-block:24px}
 body>footer.site-footer .footer-tools{gap:20px;flex-wrap:wrap}
 .site-footer .footer-links{gap:8px 22px}
 .site-footer .footer-links a,.site-footer .footer-links button{font-size:13px;min-height:40px}
}
@media(min-width:1100px){
 body.home-overview #app{grid-template-columns:repeat(3,minmax(0,1fr))}
 body.home-overview #app>*{grid-column:1/-1}
 body.home-overview #app>#city-pulse,
 body.home-overview #app>.home-media.home-media-banner{grid-column:auto}
 body.home-overview .media-banner-button{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:1fr auto;align-items:start;gap:16px;min-height:196px;height:100%;padding:22px}
 body.home-overview .media-banner-button .module-feature-icon{width:40px;height:40px;flex-basis:40px}
 body.home-overview .media-banner-copy{min-width:0;align-self:start}
 body.home-overview .media-banner-copy .home-media-title{font-size:25px}
 body.home-overview .media-banner-open{grid-column:2;justify-self:end;align-self:end;padding-top:4px}
}
@media(min-width:681px) and (max-width:900px){
 .wrap,body.home-overview #app{padding-inline:24px}
 .section-nav .nav-scroll{gap:18px}
}
