
/* Mobile lists own their content height; desktop dashboard placement is retained. */
@media(max-width:780px){.home-layout-grid>[data-home-card]{height:auto!important;min-height:0!important;max-height:none!important;grid-row:auto!important;overflow:visible!important;contain:style!important;content-visibility:visible!important;contain-intrinsic-size:none!important}.home-layout-grid>[data-home-card="news-latest"]{display:none!important}.home-layout-grid [data-home-card] .card-page-shell,.home-layout-grid .card-page-shell{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.home-layout-grid .card-page-shell>div:first-child{height:auto!important;max-height:none!important;overflow:visible!important}.home-layout-grid [data-home-card="trending-now"][hidden]{display:none!important}.home-layout-grid .school-home-list,.home-layout-grid #socialStream,.home-layout-grid #propertySummary,.home-layout-grid #businessSummary,.home-layout-grid #jobsSummary,.home-layout-grid #municipalitySummary{height:auto!important;max-height:none!important;overflow:visible!important}.home-layout-grid .bio-home-grid{display:grid!important;grid-template-columns:1fr!important}.home-layout-grid .bio-showcase{min-width:0!important;width:100%!important}.home-layout-grid img{aspect-ratio:var(--image-ratio,16/9);object-fit:cover}.home-layout-grid .module-brand-logo{aspect-ratio:1}.home-layout-grid .card-page-arrow{z-index:5}}
.facts-compact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:14px}.facts-compact-grid .fact-story{display:flex!important;flex-direction:column!important;min-height:0!important;height:auto!important}.facts-compact-grid figure{margin:0;aspect-ratio:16/9;overflow:hidden}.facts-compact-grid figure img{width:100%;height:100%;object-fit:cover}.facts-compact-grid .fact-copy{padding:14px}.fact-submit{padding:18px;border:1px solid var(--line,#29485B);border-radius:14px;background:var(--panel,#fff)}.fact-submit form,.fact-submit label{display:grid;gap:8px}.fact-submit form{gap:14px}.fact-submit input,.fact-submit textarea{width:100%;box-sizing:border-box;padding:9px}.discover-feature .content-rating{position:relative!important;display:flex!important;visibility:visible!important;opacity:1!important;z-index:2}.discover-feature .rating-star{width:12px!important;height:12px!important}.discover-feature .discover-photo{aspect-ratio:16/9;overflow:hidden}.discover-feature img{width:100%;height:100%;object-fit:cover}

@media(max-width:780px){.home-layout-grid .culture-card,.home-layout-grid .topic-card{height:auto!important;max-height:none!important;overflow:visible!important}.home-layout-grid .culture-tile{width:100%!important;min-width:0!important}.home-layout-grid [data-home-card="trending-now"]{align-self:start!important}.home-layout-grid .camera-feed{height:auto!important;max-height:none!important}}
.discover-feature .content-rating-footer{position:relative!important;display:flex!important;min-height:25px!important;opacity:1!important;visibility:visible!important}.discover-feature .content-rating-footer svg{width:12px!important;height:12px!important;min-width:12px!important;display:block!important}.discover-feature .content-rating-stars{display:flex!important;gap:3px!important}

@media(max-width:780px){#homeLayoutGrid{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;grid-auto-rows:auto!important}#homeLayoutGrid>[data-home-card]{height:auto!important;min-height:0!important;max-height:none!important;block-size:auto!important;min-block-size:0!important;max-block-size:none!important;flex:0 0 auto!important;--card-height:auto!important;--mobile-card-height:auto!important}#homeLayoutGrid>[data-home-card] .section-body,#homeLayoutGrid>[data-home-card] .card-body,#homeLayoutGrid>[data-home-card] .card-page-shell{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}#homeLayoutGrid>[data-home-card="news-latest"]{display:none!important}}

/* October 23: a pager's content must fill its flex wrapper. */
#homeLayoutGrid .card-page-shell{width:100%;box-sizing:border-box;align-items:stretch}#homeLayoutGrid .card-page-shell>div:first-child{flex:1 1 100%;width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.bio-home .bio-home-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;align-items:stretch;height:auto!important;overflow:visible!important}.bio-home .bio-home-grid>.bio-showcase{display:flex!important;flex-direction:column!important;min-width:0!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important}.bio-home .bio-home-grid .bio-photo{height:125px!important;min-height:125px!important;flex:0 0 125px!important;width:100%!important;margin:0!important;overflow:hidden;position:relative}.bio-home .bio-home-grid .bio-photo img{width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important}.bio-home .bio-home-grid .bio-card-body{display:block!important;min-height:0!important;overflow:visible!important;padding:12px!important}.bio-home .bio-home-grid .bio-ref-heading{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px}.bio-home .bio-home-grid .bio-ref-name h3,.bio-home .bio-home-grid .bio-ref-name h3 a{font-size:18px!important;line-height:1.2!important}.bio-home .bio-home-grid .bio-ref-name>i{font-size:12px!important}.bio-home .bio-home-grid .bio-ref-assessment{width:100%!important;max-width:100%!important}.bio-home .bio-home-grid .bio-description{font-size:13px!important;line-height:1.35!important;min-height:0!important;margin:8px 0!important}.bio-home .bio-home-grid .bio-conservation{font-size:9px!important;letter-spacing:.02em!important;padding:5px!important}.bio-home .bio-home-title{padding:0 0 8px!important;min-height:0!important}.bio-home .bio-home-title small{font-size:10px}.bio-home .bio-button{padding:6px 10px!important;margin-top:8px!important}
@media(max-width:780px){
 #homeLayoutGrid .card-page-shell>.topic-card{width:100%!important;max-width:100%!important;flex:1 1 100%!important;justify-items:stretch!important;align-self:stretch!important}
 #homeLayoutGrid [data-home-card="crypto-market"] .topic-card{display:flex!important;flex-direction:column!important;align-items:stretch!important}#homeLayoutGrid [data-home-card="crypto-market"] .topic-item{width:100%!important;max-width:none!important;box-sizing:border-box!important;flex:1 1 auto!important}
 #homeLayoutGrid [data-home-card="restaurants"] .topic-item,#homeLayoutGrid [data-home-card="neighbourhood-watch"] .topic-item{width:100%!important;max-width:none!important;box-sizing:border-box!important;justify-self:stretch!important;min-width:0!important}
 #homeLayoutGrid [data-home-card="municipal-money"] .crime-stat-card,#homeLayoutGrid [data-home-card="demographics"] .crime-stat-card{width:100%!important;min-width:0!important;box-sizing:border-box!important;min-height:120px!important;height:auto!important;overflow:visible!important}#homeLayoutGrid [data-home-card="municipal-money"] .crime-stat-heading,#homeLayoutGrid [data-home-card="demographics"] .crime-stat-heading{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:7px}#homeLayoutGrid .indicator-stat-card .crime-stat-heading strong{font-size:clamp(21px,7vw,30px)!important;line-height:1.2!important;overflow-wrap:anywhere;white-space:normal!important}
 #homeLayoutGrid [data-home-card="numbers"] .card-page-arrow,#homeLayoutGrid [data-home-card="municipal-money"] .card-page-arrow,#homeLayoutGrid [data-home-card="demographics"] .card-page-arrow{background:transparent!important;border-color:#ffffff24!important;backdrop-filter:none!important;box-shadow:none!important;opacity:.4!important;width:26px!important;font-size:28px!important}#homeLayoutGrid .card-page-arrow:hover,#homeLayoutGrid .card-page-arrow:focus-visible{opacity:1!important;background:#132b4c44!important}
 #homeLayoutGrid [data-home-card="top-songs"] .culture-card,#homeLayoutGrid [data-home-card="top-movies"] .culture-card,#homeLayoutGrid [data-home-card="top-tv-series"] .culture-card{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:12px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity!important;padding-bottom:8px!important}
 #homeLayoutGrid [data-home-card="top-songs"] .culture-tile,#homeLayoutGrid [data-home-card="top-movies"] .culture-tile,#homeLayoutGrid [data-home-card="top-tv-series"] .culture-tile{display:flex!important;flex-direction:column!important;flex:0 0 210px!important;width:210px!important;max-width:210px!important;min-width:210px!important;height:auto!important;scroll-snap-align:start}.home-layout-grid .culture-card .culture-cover{width:100%!important;flex:none!important}.home-layout-grid .culture-card .culture-copy{min-height:0!important;padding:10px!important}
 .bio-home .bio-home-grid{grid-template-columns:minmax(0,1fr)!important}.bio-home .bio-home-grid .bio-photo{height:200px!important;min-height:200px!important;flex-basis:200px!important}.bio-home .bio-home-grid .bio-ref-name h3,.bio-home .bio-home-grid .bio-ref-name h3 a{font-size:22px!important}.bio-home .bio-home-grid .bio-ref-name>i{font-size:15px!important}.bio-home .bio-home-grid .bio-ref-heading{grid-template-columns:minmax(0,1fr) 118px!important}.bio-home .bio-home-grid .bio-conservation{font-size:10px!important}.bio-home .bio-home-grid .bio-description{font-size:15px!important}.bio-home .bio-home-grid .bio-card-body{padding:16px!important}
}

/* Keep the shared species text inside each tile rather than the legacy image-only frame. */
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid>.bio-showcase{height:auto!important;min-height:300px!important;max-height:none!important;overflow:hidden!important;box-sizing:border-box!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid .bio-photo{height:145px!important;min-height:145px!important;max-height:145px!important;flex:0 0 145px!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid .bio-card-body{flex:1 0 auto!important;min-height:155px!important;height:auto!important;overflow:visible!important;align-self:stretch!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home{height:100%;box-sizing:border-box;display:flex;flex-direction:column;min-height:0}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid{flex:1 1 auto;min-height:0;overflow-y:auto!important;overflow-x:hidden!important;align-content:start!important;grid-auto-rows:max-content!important}
@media(max-width:780px){#homeLayoutGrid [data-home-card="biodiversity"] .bio-home{height:auto!important}#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid{overflow:visible!important}#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid .bio-photo{height:200px!important;min-height:200px!important;max-height:200px!important;flex-basis:200px!important}}
@media(max-width:780px){#homeLayoutGrid [data-dynamic-content="municipal-money"],#homeLayoutGrid [data-dynamic-content="demographics"]{display:flex!important;flex-direction:column!important;gap:10px!important}#homeLayoutGrid [data-home-card="municipal-money"] .crime-stat-card,#homeLayoutGrid [data-home-card="demographics"] .crime-stat-card{display:flex!important;flex-direction:column!important;flex:0 0 auto!important;gap:8px!important;min-height:160px!important;height:auto!important;padding:14px!important}#homeLayoutGrid .indicator-stat-card .crime-stat-meta{display:flex!important;justify-content:space-between!important;gap:8px!important;flex-wrap:wrap!important}}

/* Statistics occupy every fitted row, including its vertical whitespace. */
@media(min-width:781px){
#homeLayoutGrid [data-home-card="municipal-money"].is-card-fit .crime-stat-card,#homeLayoutGrid [data-home-card="demographics"].is-card-fit .crime-stat-card{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;justify-content:space-evenly;gap:8px;padding:12px!important;overflow:hidden!important}
#homeLayoutGrid .is-card-fit .indicator-stat-card .crime-stat-category{white-space:normal;overflow-wrap:anywhere;font-size:12px;line-height:1.4}
#homeLayoutGrid .is-card-fit .indicator-stat-card .crime-stat-heading{flex-wrap:wrap;gap:8px}
#homeLayoutGrid .is-card-fit .indicator-stat-card .crime-stat-heading>strong{white-space:normal;overflow-wrap:anywhere}
}
#homeLayoutGrid [data-home-card="tenders"] .tender-pulse-card{grid-template-columns:46px minmax(0,1fr);gap:10px;min-height:76px;padding:9px;align-items:center}
#homeLayoutGrid [data-home-card="tenders"] .tender-mini-thumb{width:46px;height:46px;object-fit:contain}
#homeLayoutGrid [data-home-card="tenders"] .tender-pulse-card strong{font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
#homeLayoutGrid [data-home-card="tenders"] .tender-pulse-card small{font-size:10px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}

#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid{display:flex!important;flex-direction:row!important;gap:12px;overflow-x:auto!important;overflow-y:auto!important;scroll-snap-type:x mandatory;align-items:stretch}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-grid>.bio-showcase{flex:0 0 min(300px,85%);width:min(300px,85%);scroll-snap-align:start}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-title{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:12px}
.bio-scroll-next{flex:none;width:34px;height:34px;border:1px solid #477C9C;border-radius:50%;background:#062439;color:#fff;font-size:24px;cursor:pointer}
.bio-scroll-next:disabled{opacity:.35;cursor:default}

/* A page contains only the selected number of species. Fit does not change that count. */
.bio-admin input[type="checkbox"]{display:inline-block!important;width:auto!important;margin-right:8px!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-navigation{display:flex;align-items:center;gap:7px;flex:none}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-page-status{font:11px/1.3 system-ui;color:#c4dfd4;white-space:nowrap}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-scroll-prev{width:34px;height:34px;flex:none;border:1px solid #477c9c;border-radius:50%;background:#062439;color:#fff;font-size:24px;cursor:pointer}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-scroll-prev:disabled{opacity:.35;cursor:default}
@media(min-width:781px){
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"]{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;box-sizing:border-box}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid{display:grid!important;grid-template-columns:repeat(var(--bio-visible-count),minmax(0,1fr))!important;grid-template-rows:minmax(0,1fr)!important;grid-auto-rows:minmax(0,1fr)!important;flex:1 1 0!important;min-height:0!important;overflow:hidden!important;align-content:stretch!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid>.bio-showcase{display:grid!important;grid-template-rows:minmax(70px,42%) minmax(0,1fr)!important;grid-template-columns:minmax(0,1fr)!important;min-width:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;box-sizing:border-box!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid .bio-photo{width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid .bio-card-body{min-height:0!important;height:auto!important;overflow:auto!important;padding:9px!important;align-self:stretch!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"][data-direction="vertical"] .bio-home-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:repeat(var(--bio-visible-count),minmax(0,1fr))!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"][data-direction="vertical"] .bio-home-grid>.bio-showcase{grid-template-columns:minmax(70px,30%) minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important}
}
@media(max-width:780px){#homeLayoutGrid [data-home-card="biodiversity"] .bio-home-title{flex-wrap:wrap}#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;overflow:visible!important}#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid>.bio-showcase{width:100%!important;min-width:0!important}}

/* The map absorbs the remaining card height instead of adding a few pixels of overflow. */
@media(min-width:781px){
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit{overflow:hidden!important}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit [data-dynamic-content="water-quality"]{min-height:0!important;overflow:hidden!important}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-compact{height:100%!important;min-height:0!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:12px!important}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-compact>.swq-heading{flex:none;margin-bottom:5px}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-compact>.swq-counts,#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-compact>.swq-assess{flex:none;margin:5px 0}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-compact>div:has(>.swq-map-shell){flex:1 1 0;min-height:0}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-map-shell{height:100%;display:flex;flex-direction:column;min-height:0}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-compact .swq-map{flex:1 1 0!important;height:auto!important;min-height:0!important}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-map-caption{flex:none;padding:5px 8px}
#homeLayoutGrid [data-home-card="water-quality"].is-card-fit .swq-legend{margin:6px 0 0;gap:4px 10px}
}

/* Indicator rows reserve real space for their text rather than shrinking glyph boxes. */
#homeLayoutGrid [data-home-card="municipal-money"] .home-indicator-card,#homeLayoutGrid [data-home-card="demographics"] .home-indicator-card{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:7px!important;padding:11px 12px!important;box-sizing:border-box!important;min-width:0!important;overflow:hidden!important}
#homeLayoutGrid .home-indicator-card>.crime-stat-heading{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;flex:0 0 auto!important;min-height:0!important}
#homeLayoutGrid .home-indicator-card .crime-stat-heading>span{font-size:9px!important;line-height:1.3!important;font-weight:700!important;letter-spacing:.06em;white-space:normal!important}
#homeLayoutGrid .home-indicator-card .crime-stat-heading>strong{font-size:clamp(17px,1.5vw,22px)!important;line-height:1.2!important;white-space:normal!important;overflow-wrap:anywhere!important;font-variant-numeric:tabular-nums}
#homeLayoutGrid .home-indicator-card>.crime-stat-category{flex:0 0 auto!important;font-size:12px!important;line-height:1.35!important;white-space:normal!important;overflow-wrap:anywhere!important;overflow:visible!important;margin:0!important}
#homeLayoutGrid .home-indicator-card>.crime-stat-meta{flex:0 0 auto!important;display:flex!important;flex-wrap:wrap!important;gap:3px 8px!important;font-size:10px!important;line-height:1.35!important;white-space:normal!important;overflow:visible!important;margin:0!important}
#homeLayoutGrid .home-indicator-card>.crime-stat-meta span{white-space:normal!important;overflow:visible!important}
#homeLayoutGrid .home-indicator-card>small{display:none!important}
@media(max-width:780px){#homeLayoutGrid .home-indicator-card{min-height:130px!important;height:auto!important}}
/* Fitted songs share the available width, and their artwork yields room to titles. */
#homeLayoutGrid [data-home-card="top-songs"].is-card-fit .culture-card{align-items:stretch!important;overflow:hidden!important}
#homeLayoutGrid [data-home-card="top-songs"].is-card-fit .culture-song{min-height:0!important;max-height:100%!important;min-width:0!important;align-self:stretch!important;display:flex!important;flex-direction:column!important}
#homeLayoutGrid [data-home-card="top-songs"].is-card-fit .culture-song .culture-cover{flex:1 1 0!important;height:auto!important;min-height:0!important;max-height:65%!important;aspect-ratio:1/1}
#homeLayoutGrid [data-home-card="top-songs"].is-card-fit .culture-song .culture-copy{flex:0 0 auto!important;padding:8px!important;overflow:auto!important;max-height:55%!important}
#homeLayoutGrid [data-home-card="top-songs"].is-card-fit .culture-song h2{font-size:12px!important;line-height:1.3!important;margin:4px 0!important}

/* Keep fitted nature listings measurable even when the home card has automatic height. */
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"]{height:auto!important;min-height:390px!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid{flex:1 0 300px!important;min-height:300px!important;grid-template-rows:minmax(300px,1fr)!important;overflow:auto!important}
#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid>.bio-showcase{min-height:300px!important;height:auto!important;grid-template-rows:140px minmax(160px,1fr)!important}
@media(max-width:780px){#homeLayoutGrid [data-home-card="biodiversity"] .bio-home[data-fit="true"] .bio-home-grid{grid-template-rows:none!important;grid-auto-rows:minmax(300px,auto)!important;flex-basis:auto!important}}

/* Explicit mobile sizes are minimum heights; long content remains readable. */
@media(max-width:780px){#homeLayoutGrid>[data-home-card][data-mobile-sized="true"]{min-height:var(--mobile-layout-min-height,0px)!important;min-block-size:var(--mobile-layout-min-height,0px)!important}}
