/* NearLocal final responsive visual normalization.
   Loaded globally after theme files. !important is intentional so lazy route CSS cannot shrink the approved UI. */

body .nl-home .directory-account-icon{display:none!important}

@media (min-width:701px){
  body .nl-home .directory-nav-shell .directory-nav{height:72px!important;max-width:1280px!important;padding-inline:24px!important;grid-template-columns:auto auto minmax(0,1fr) auto!important;gap:20px!important}
  body .nl-home .directory-brand img{width:156px!important;max-height:44px!important}
  body .nl-home .directory-location-chip{padding:9px 13px!important;gap:8px!important}
  body .nl-home .directory-location-chip strong{font-size:12px!important}
  body .nl-home .directory-location-chip small{font-size:10px!important}
  body .nl-home .directory-links-desktop a{font-size:12px!important;padding:9px 10px!important}
  body .nl-home .directory-business-link{font-size:12px!important;padding:11px 15px!important}

  body .nl-home main{padding-top:28px!important}
  body .nl-home .nl-section{width:min(1240px,calc(100% - 48px))!important;padding:58px 0!important}
  body .nl-home .nl-section-head{margin-bottom:24px!important}
  body .nl-home .nl-section-head h2,body .nl-home .nl-centered-head h2{font-size:clamp(29px,2.35vw,36px)!important}
  body .nl-home .nl-section-head p,body .nl-home .nl-centered-head p{font-size:14px!important;line-height:1.65!important}
  body .nl-home .nl-eyebrow{font-size:11px!important}
  body .nl-home .nl-section-head>a{font-size:13px!important}
  body .nl-home .nl-section-note{font-size:13px!important}

  body .nl-home .nl-hero{width:min(1240px,calc(100% - 48px))!important;margin-top:0!important}
  body .nl-home .nl-hero-inner{width:min(1100px,calc(100% - 48px))!important;padding:64px 0 58px!important}
  body .nl-home .nl-hero-badge{font-size:11px!important;padding:8px 13px!important}
  body .nl-home .nl-hero h1{max-width:900px!important;font-size:clamp(48px,4.25vw,64px)!important;line-height:1.04!important}
  body .nl-home .nl-hero-inner>p{font-size:16px!important;line-height:1.65!important;margin-top:16px!important}
  body .nl-home .nl-search{width:min(980px,100%)!important;padding:9px!important;gap:8px!important;margin-top:30px!important}
  body .nl-home .nl-search .directory-search-field,body .nl-home .nl-search select,body .nl-home .nl-search>button{height:54px!important;min-height:54px!important}
  body .nl-home .nl-search .directory-search-field input{font-size:14px!important}
  body .nl-home .nl-search select{font-size:13px!important}
  body .nl-home .nl-search>button{font-size:13px!important;padding-inline:22px!important}
  body .nl-home .nl-quick-row{width:min(980px,100%)!important;gap:8px!important;margin-top:14px!important}
  body .nl-home .nl-quick-row>span,body .nl-home .nl-quick-row button{font-size:11px!important}

  body .nl-home .nl-pillar-grid{gap:16px!important}
  body .nl-home .nl-pillar-card{padding:22px!important;gap:18px!important;min-height:142px!important}
  body .nl-home .nl-pillar-icon{width:58px!important;height:58px!important}
  body .nl-home .nl-pillar-card h3{font-size:19px!important}
  body .nl-home .nl-pillar-card p{font-size:13px!important;line-height:1.6!important}
  body .nl-home .nl-pillar-card strong{font-size:12px!important}

  body .nl-home .nl-category-grid{gap:12px!important}
  body .nl-home .nl-category-card{min-height:122px!important;padding:15px 10px!important}
  body .nl-home .nl-category-icon{font-size:28px!important}
  body .nl-home .nl-category-card strong{font-size:12px!important;line-height:1.3!important}
  body .nl-home .nl-category-card>span:last-child{font-size:10px!important}

  body .nl-home .directory-grid-featured{gap:18px!important}
  body .nl-home .directory-card-featured .directory-card-media{height:210px!important}
  body .nl-home .directory-card-logo{width:48px!important;height:48px!important;bottom:-20px!important}
  body .nl-home .directory-card-copy{padding:30px 17px 17px!important}
  body .nl-home .directory-card h3{font-size:16px!important}
  body .nl-home .directory-type-badge{font-size:10px!important}
  body .nl-home .directory-card-location{font-size:11px!important}
  body .nl-home .directory-card-copy>p{font-size:12.5px!important;line-height:1.55!important}
  body .nl-home .directory-view-link{font-size:12px!important}
  body .nl-home .directory-demo-badge{font-size:9px!important}
  body .nl-home .nl-section-footer button{font-size:12px!important;padding:11px 16px!important}

  body .nl-home .nl-filter-tabs button{font-size:11px!important;padding:7px 12px!important}
  body .nl-home .directory-grid-compact{gap:14px!important}
  body .nl-home .directory-card-compact{grid-template-columns:112px 1fr!important;min-height:132px!important}
  body .nl-home .directory-card-compact .directory-card-media{min-height:132px!important}
  body .nl-home .directory-card-compact .directory-card-copy{padding:15px!important}
  body .nl-home .directory-card-compact h3{font-size:14px!important}
  body .nl-home .nl-empty-state{min-height:190px!important}
  body .nl-home .nl-empty-state strong{font-size:15px!important}
  body .nl-home .nl-empty-state span{font-size:12px!important}

  body .nl-home .nl-healthcare{width:min(1240px,calc(100% - 48px))!important;padding:34px!important}
  body .nl-home .nl-health-note{font-size:11px!important;line-height:1.55!important}
  body .nl-home .nl-health-card{padding:18px 10px!important;min-height:116px!important}
  body .nl-home .nl-health-card>span{width:44px!important;height:44px!important}
  body .nl-home .nl-health-card strong{font-size:13px!important}
  body .nl-home .nl-health-card small{font-size:10px!important}

  body .nl-home .nl-how-inner{padding:58px 0!important}
  body .nl-home .nl-how-grid article{padding:28px 24px!important}
  body .nl-home .nl-step-number{width:30px!important;height:30px!important;font-size:12px!important}
  body .nl-home .nl-step-icon{width:48px!important;height:48px!important}
  body .nl-home .nl-how-grid h3{font-size:16px!important}
  body .nl-home .nl-how-grid p{font-size:12.5px!important;line-height:1.6!important}

  body .nl-home .nl-trust-grid article{padding:21px!important}
  body .nl-home .nl-trust-grid h3{font-size:14px!important}
  body .nl-home .nl-trust-grid p{font-size:12px!important;line-height:1.6!important}

  body .nl-home .nl-business-cta{width:min(1240px,calc(100% - 48px))!important;padding:40px!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:38px!important}
  body .nl-home .nl-business-copy h2{font-size:34px!important}
  body .nl-home .nl-business-copy>p{font-size:14px!important;line-height:1.65!important}
  body .nl-home .nl-business-points span{font-size:11px!important}
  body .nl-home .nl-business-actions a{font-size:12px!important;padding:11px 15px!important}
  body .nl-home .nl-business-card strong{font-size:16px!important}
  body .nl-home .nl-business-card p{font-size:12px!important}

  body .nl-home .directory-footer-main{max-width:1240px!important;padding-top:40px!important}
  body .nl-home .directory-footer-brand>strong{font-size:14px!important}
  body .nl-home .directory-footer-brand p{font-size:12px!important}
  body .nl-home .directory-footer-group summary{font-size:12px!important}
  body .nl-home .directory-footer-group a{font-size:11px!important}
  body .nl-home .directory-footer-copy{max-width:1240px!important;font-size:10px!important}
}

@media (max-width:700px){
  body .nl-home{padding-bottom:72px!important}
  body .nl-home .directory-nav-shell .directory-nav{height:64px!important;padding-inline:12px!important;grid-template-columns:auto minmax(0,1fr) auto auto!important;gap:8px!important}
  body .nl-home .directory-nav-shell .directory-brand img{width:116px!important;max-height:36px!important}
  body .nl-home .directory-location-chip{max-width:126px!important;padding:7px 9px!important}
  body .nl-home .directory-location-chip strong{font-size:10.5px!important}
  body .nl-home .directory-location-chip small{font-size:8px!important}
  body .nl-home .directory-mobile-search,body .nl-home .directory-menu-toggle{width:38px!important;height:38px!important}

  body .nl-home .nl-section{width:calc(100% - 32px)!important;padding:32px 0!important}
  body .nl-home .nl-section-head{margin-bottom:16px!important}
  body .nl-home .nl-section-head h2,body .nl-home .nl-centered-head h2{font-size:24px!important;line-height:1.16!important}
  body .nl-home .nl-section-head p,body .nl-home .nl-centered-head p{font-size:12.5px!important;line-height:1.6!important}
  body .nl-home .nl-eyebrow{font-size:10.5px!important}
  body .nl-home .nl-section-head>a{font-size:11px!important}
  body .nl-home .nl-section-note{font-size:10.5px!important}

  body .nl-home .nl-hero-inner{width:calc(100% - 32px)!important;padding:22px 0 26px!important}
  body .nl-home .nl-hero-badge{font-size:9.5px!important;padding:6px 9px!important}
  body .nl-home .nl-hero h1{font-size:30px!important;line-height:1.06!important;max-width:360px!important}
  body .nl-home .nl-hero-inner>p{font-size:13px!important;line-height:1.55!important}
  body .nl-home .nl-search{padding:9px!important;gap:8px!important;margin-top:20px!important}
  body .nl-home .nl-search .directory-search-field,body .nl-home .nl-search select,body .nl-home .nl-search>button{height:52px!important;min-height:52px!important}
  body .nl-home .nl-search .directory-search-field input{font-size:13px!important}
  body .nl-home .nl-search select{font-size:12.5px!important}
  body .nl-home .nl-search>button{font-size:13px!important}
  body .nl-home .nl-quick-row>span,body .nl-home .nl-quick-row button{font-size:10px!important}

  body .nl-home .nl-pillar-card{flex:0 0 88%!important;padding:16px!important;gap:13px!important;min-height:128px!important}
  body .nl-home .nl-pillar-icon{width:48px!important;height:48px!important}
  body .nl-home .nl-pillar-card h3{font-size:16px!important}
  body .nl-home .nl-pillar-card p{font-size:12px!important;line-height:1.55!important}
  body .nl-home .nl-pillar-card strong{font-size:11px!important}

  body .nl-home .nl-category-grid{gap:9px!important}
  body .nl-home .nl-category-card{min-height:78px!important;padding:10px!important;grid-template-columns:40px minmax(0,1fr)!important;column-gap:9px!important}
  body .nl-home .nl-category-icon{width:40px!important;height:40px!important;font-size:19px!important}
  body .nl-home .nl-category-card strong{font-size:11px!important;line-height:1.25!important}
  body .nl-home .nl-category-card>span:last-child{font-size:9px!important}

  body .nl-home .directory-grid-featured .directory-card-featured{flex:0 0 88%!important}
  body .nl-home .directory-card-featured .directory-card-media{height:188px!important}
  body .nl-home .directory-card h3{font-size:15px!important}
  body .nl-home .directory-card-copy>p{font-size:12px!important;line-height:1.5!important}
  body .nl-home .directory-card-location{font-size:10.5px!important}
  body .nl-home .directory-view-link{font-size:11.5px!important}

  body .nl-home .nl-filter-tabs button{font-size:10px!important;min-height:34px!important;padding:7px 11px!important}
  body .nl-home .directory-card-compact{grid-template-columns:96px minmax(0,1fr)!important;min-height:116px!important}
  body .nl-home .directory-card-compact .directory-card-media{min-height:116px!important}
  body .nl-home .directory-card-compact h3{font-size:13px!important}
  body .nl-home .nl-empty-state strong{font-size:13px!important}
  body .nl-home .nl-empty-state span{font-size:10.5px!important}

  body .nl-home .nl-healthcare{width:calc(100% - 32px)!important;padding:18px!important}
  body .nl-home .nl-health-note{font-size:10px!important;line-height:1.5!important}
  body .nl-home .nl-health-card{min-height:72px!important;padding:10px!important;grid-template-columns:40px minmax(0,1fr)!important}
  body .nl-home .nl-health-card>span{width:40px!important;height:40px!important}
  body .nl-home .nl-health-card strong{font-size:11px!important}
  body .nl-home .nl-health-card small{font-size:9px!important}

  body .nl-home .nl-how-inner{padding:36px 0!important}
  body .nl-home .nl-how-grid article{grid-template-columns:36px minmax(0,1fr)!important;column-gap:12px!important;padding:13px 0 17px!important}
  body .nl-home .nl-step-number{width:30px!important;height:30px!important;font-size:11px!important}
  body .nl-home .nl-how-grid h3{font-size:14px!important}
  body .nl-home .nl-how-grid p{font-size:11.5px!important;line-height:1.5!important}

  body .nl-home .nl-trust-grid article{padding:14px!important}
  body .nl-home .nl-trust-grid h3{font-size:12px!important}
  body .nl-home .nl-trust-grid p{font-size:10.5px!important;line-height:1.5!important}

  body .nl-home .nl-business-cta{width:calc(100% - 32px)!important;padding:24px!important;gap:20px!important}
  body .nl-home .nl-business-copy h2{font-size:24px!important;line-height:1.15!important}
  body .nl-home .nl-business-copy>p{font-size:12px!important;line-height:1.55!important}
  body .nl-home .nl-business-points{grid-template-columns:1fr!important;gap:6px!important}
  body .nl-home .nl-business-points span{font-size:10px!important;padding:7px 8px!important}
  body .nl-home .nl-business-actions a{min-height:44px!important;font-size:11px!important}
  body .nl-home .nl-business-card strong{font-size:14px!important}
  body .nl-home .nl-business-card p{font-size:11px!important}

  body .nl-home .directory-footer-brand>strong{font-size:13px!important}
  body .nl-home .directory-footer-brand p{font-size:11px!important;line-height:1.6!important}
  body .nl-home .directory-footer-group summary{font-size:12px!important}
  body .nl-home .directory-footer-group a{font-size:11px!important}
  body .nl-home .directory-footer-copy{font-size:9px!important}
  body .nl-home .nl-mobile-bottom-nav{height:66px!important}
  body .nl-home .nl-mobile-bottom-nav a{font-size:10px!important;gap:3px!important}
}

@media (max-width:390px){
  body .nl-home .directory-nav-shell .directory-brand img{width:108px!important}
  body .nl-home .directory-location-chip{max-width:112px!important}
  body .nl-home .nl-section{width:calc(100% - 28px)!important}
  body .nl-home .nl-hero-inner{width:calc(100% - 28px)!important}
  body .nl-home .nl-hero h1{font-size:28px!important}
  body .nl-home .nl-section-head h2,body .nl-home .nl-centered-head h2{font-size:22px!important}
  body .nl-home .nl-pillar-card{flex-basis:91%!important}
  body .nl-home .directory-grid-featured .directory-card-featured{flex-basis:91%!important}
  body .nl-home .nl-healthcare,body .nl-home .nl-business-cta{width:calc(100% - 28px)!important}
}

/* Public profile/detail shell normalization visible in the supplied screenshots. */
body .storefront-parity-shell .storefront-appbar-main{min-height:72px!important;padding-left:16px!important;padding-right:16px!important}
body .storefront-parity-shell .storefront-appbar-left{min-width:0;flex:1}
body .storefront-parity-shell .storefront-platform-brand{min-width:0!important;max-width:100%;height:46px!important;flex:0 1 auto!important}
body .storefront-parity-shell .storefront-platform-brand>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body .storefront-parity-shell>main,body .healthcare-public-shell>main{width:min(1180px,calc(100% - 32px))!important;margin-inline:auto!important}
body .storefront-parity-shell .storefront-footer{font-size:12px!important}

@media(max-width:639px){
  body .storefront-parity-shell .storefront-appbar-main{height:82px!important;min-height:82px!important;padding-left:12px!important;padding-right:12px!important}
  body .storefront-parity-shell .storefront-platform-brand{min-width:0!important;width:auto!important;max-width:100%;height:46px!important;overflow:hidden!important}
  body .storefront-parity-shell>main,body .healthcare-public-shell>main{width:calc(100% - 24px)!important}
}

@media(max-width:390px){
  body .storefront-parity-shell .storefront-platform-brand{min-width:0!important;width:auto!important;max-width:100%}
}

@media(max-width:350px){
  body .storefront-parity-shell .storefront-appbar-main{height:76px!important;min-height:76px!important;padding-left:9px!important;padding-right:9px!important}
  body .storefront-parity-shell .storefront-platform-brand{min-width:0!important;width:auto!important;max-width:100%}
}
