/* Puls34 v10.1: bounded media, readable mobile rhythm, isolated map layers. */
body.designlab-final { --p101-nav:64px; }
body.designlab-final :is(h1,h2,h3,.brief-item strong) { hyphens:none!important;word-break:normal!important;overflow-wrap:break-word!important; }
body.designlab-final .card-media {align-self:start; min-height:0!important;}
body.designlab-final .news-card .card-media {aspect-ratio:16/9; height:auto!important;}
body.designlab-final .card-media img {width:100%;height:100%;object-fit:cover;}
body.designlab-final .p101-image-label {display:block;font:500 11px/1.4 Arial,sans-serif;color:var(--lab-text-soft,#576174);margin:6px 0;}
body.designlab-final .puls34-ai-mark {display:none!important;}
body.designlab-final #puls34-map {position:relative;isolation:isolate;z-index:0;overflow:hidden; width:100%;height:420px;}
body.designlab-final #puls34-map[hidden] {display:none!important;}
body.designlab-final .leaflet-container {font-family:Arial,sans-serif;}
body.designlab-final .leaflet-control-attribution {font-size:10px;max-width:100%;white-space:normal;}
body.designlab-final .lab-article .story-content {font-size:var(--reader-font-size,18px)!important;line-height:1.65!important;}
body.designlab-final .lab-article .story-content p {font-size:inherit!important;line-height:inherit!important;}
body.designlab-final .story-content :is(img,video,iframe) {max-width:100%;}
body.designlab-final .story-content :is(pre,table) {max-width:100%;overflow:auto;}
body.designlab-final .footer-inner > * {min-width:0;}
body.designlab-final .site-footer p {white-space:normal;overflow-wrap:break-word;}
body.designlab-final .p101-map-status {font-size:14px;line-height:1.5;margin:12px 0;}
@media(max-width:767px) {
 body.designlab-final .wrap {width:100%!important;max-width:100%!important;padding-inline:16px!important;box-sizing:border-box;}
 body.designlab-final .masthead {padding-block:12px!important;min-height:68px!important;gap:10px!important;}
 body.designlab-final .logo {gap:9px!important;min-width:0;}
 body.designlab-final .logo-monogram {font-size:40px!important;line-height:1!important;}
 body.designlab-final .logo-wordmark strong {font-size:23px!important;line-height:1.1!important;}
 body.designlab-final .logo-wordmark > span {font-size:8px!important;letter-spacing:.12em!important;}
 body.designlab-final .masthead-actions {gap:6px!important;}
 body.designlab-final :is(.theme-toggle,.mobile-menu-btn) {width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:10px!important;}
 body.designlab-final .navigation-inner {padding-block:0 12px!important;}
 body.designlab-final .header-search {height:44px!important;min-height:44px!important;margin:0!important;width:100%!important;}
 body.designlab-final .header-search input {font-size:16px!important;min-width:0!important;}
 body.designlab-final .portal-home {padding-top:20px!important;}
 body.designlab-final .lab-sectiontop {margin:0 0 14px!important;padding:0!important;}
 body.designlab-final .lab-sectiontop h1 {font-size:27px!important;line-height:1.2!important;margin:0!important;}
 body.designlab-final .lab-sectiontop p {display:none;}
 body.designlab-final .lab-hero {gap:20px!important;}
 body.designlab-final .news-card.featured .card-media {max-height:220px!important;}
 body.designlab-final .news-card.featured .card-body {padding:14px 0 18px!important;}
 body.designlab-final :is(.news-card.featured,.lab-lead .news-card) h3 {font:700 clamp(25px,6.8vw,30px)/1.18 Georgia,serif!important;letter-spacing:-.02em!important;margin:8px 0 10px!important;}
 body.designlab-final .news-card.featured .card-body p {font-size:15px!important;line-height:1.5!important;margin:0 0 12px!important;}
 body.designlab-final .portal-news-grid .news-card {display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;padding:16px 0!important;}
 body.designlab-final .portal-news-grid .news-card .card-media {width:88px!important;height:72px!important;min-height:0!important;max-height:72px!important;aspect-ratio:auto!important;}
 body.designlab-final .portal-news-grid .card-body {padding:0!important;}
 body.designlab-final .portal-news-grid .news-card h3 {font:700 17px/1.3 Arial,sans-serif!important;letter-spacing:-.015em!important;margin:5px 0 8px!important;}
 body.designlab-final .portal-news-grid .card-body > p {display:none!important;}
 body.designlab-final .portal-news-grid .puls-illustration-label {display:none!important;}
 body.designlab-final .portal-news-grid .puls-illustration-number {font-size:38px!important;}
 body.designlab-final .card-kicker {font-size:10px!important;line-height:1.4!important;letter-spacing:.04em!important;}
 body.designlab-final .card-meta {font-size:11px!important;gap:8px!important;flex-wrap:wrap;margin-top:8px!important;}
 body.designlab-final .portal-news-grid .read-card {display:none!important;}
 body.designlab-final .brief-item {padding:14px 0!important;}
 body.designlab-final .brief-item strong {font-size:17px!important;line-height:1.35!important;}
 body.designlab-final :is(.lab-content,.lab-sidebar,.portal-services,.story-sidebar) {gap:20px!important;margin-top:24px!important;}
 body.designlab-final :is(.city-service-tile,.service-card,.sidebar-box) {padding:16px!important;min-height:0!important;}
 body.designlab-final :is(.service-card,.city-service-tile) strong {font-size:19px!important;}
 body.designlab-final :is(.service-card,.city-service-tile) p {font-size:14px!important;line-height:1.5!important;margin:4px 0!important;}
 body.designlab-final .story-sidebar .sidebar-box h3 {font-size:22px!important;margin:10px 0!important;}
 body.designlab-final .story-sidebar .sidebar-box p {font-size:15px!important;line-height:1.5!important;}
 body.designlab-final .lab-article-page {padding-top:22px!important;}
 body.designlab-final .lab-article > .eyebrow {font-size:11px!important;margin:0 0 12px!important;}
 body.designlab-final .lab-article .article-title-group {margin:0!important;}
 body.designlab-final .lab-article h1 {font:750 clamp(27px,7vw,33px)/1.17 Arial,sans-serif!important;letter-spacing:-.025em!important;margin:0 0 14px!important;}
 body.designlab-final .lab-article .story-lead {font:400 17px/1.55 Arial,sans-serif!important;margin:0 0 16px!important;}
 body.designlab-final .story-meta {font-size:12px!important;line-height:1.5!important;margin-bottom:18px!important;}
 body.designlab-final .cover {margin:16px 0!important;}
 body.designlab-final .cover figcaption {font-size:12px!important;line-height:1.5!important;margin-top:8px!important;}
 body.designlab-final .article-utility {padding:12px 0!important;margin:16px 0!important;}
 body.designlab-final .lab-article .story-content h2 {font-size:23px!important;line-height:1.25!important;}
 body.designlab-final #puls34-map {height:min(55svh,400px)!important;min-height:260px!important;}
 body.designlab-final .mobile-bottom-nav {z-index:1200!important;box-sizing:border-box!important;height:calc(var(--p101-nav) + env(safe-area-inset-bottom,0px))!important;padding:4px 4px env(safe-area-inset-bottom,0px)!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;}
 body.designlab-final .mobile-bottom-nav :is(a,button) {font:600 10px/1.3 Arial,sans-serif!important;min-width:0!important;min-height:44px!important;gap:4px!important;padding:5px 2px!important;}
 body.designlab-final .mobile-bottom-nav svg {width:22px!important;height:22px!important;}
 body.designlab-final #lab-back-top {width:44px!important;height:44px!important;right:12px!important;bottom:calc(var(--p101-nav) + env(safe-area-inset-bottom,0px) + 12px)!important;z-index:1100!important;}
 body.designlab-final .site-footer {padding-bottom:calc(var(--p101-nav) + env(safe-area-inset-bottom,0px) + 24px)!important;}
 body.designlab-final .site-footer .footer-inner {grid-template-columns:minmax(0,1fr)!important;}
 body.designlab-final .top-nav {z-index:1400!important;max-height:calc(100dvh - 160px);overflow-y:auto;}
 body.designlab-final .p34-v91-backdrop {z-index:1300!important;}
 body.designlab-final .site-header {position:relative;z-index:1350;}
}
