/* NILA Connect v20.9 journey hardening */
:root{--nila-cardiff-lat:51.4816;--nila-cardiff-lng:-3.1791;--nila-directory-zoom:15;}
/* Make mobile home controls touchable and visible */
.page-index .nav, .page-index .hero, .page-index .hero-inner{overflow:visible!important;}
.page-index .hero-search{position:relative!important;z-index:1000!important;isolation:isolate;}
.page-index #servicePickerWrap{position:relative!important;z-index:1100!important;}
.page-index #serviceDropdown,.page-index .hs-dropdown{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;z-index:99999!important;background:#fff!important;border:1px solid #dce6ef!important;border-radius:16px!important;box-shadow:0 28px 80px rgba(8,33,66,.28)!important;max-height:min(430px,64vh)!important;overflow:auto!important;}
.page-index #serviceDropdown.open,.page-index .hs-dropdown.open{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
.page-index .hs-dropdown-cat{padding:12px 16px 6px!important;font-size:11px!important;font-weight:900!important;color:#60748a!important;text-transform:uppercase!important;letter-spacing:.08em!important;}
.page-index .hs-dropdown-item{display:flex!important;align-items:center!important;min-height:46px!important;padding:11px 16px!important;color:#082142!important;font-weight:800!important;cursor:pointer!important;background:#fff!important;}
.page-index .hs-dropdown-item:active,.page-index .hs-dropdown-item:hover{background:#f4f8fb!important;}
.page-index .hcat,.page-index #gpsBtn,.page-index #serviceToggle,.page-index .hs-submit,.page-index .nav-hamburger,.page-index .btn{touch-action:manipulation!important;pointer-events:auto!important;}
@media(max-width:760px){
  .page-index .container{max-width:100%!important;}
  .page-index .hero{padding:20px 14px 32px!important;}
  .page-index .hero-search{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;}
  .page-index .hs-field,.page-index .hs-submit{width:100%!important;min-width:0!important;}
  .page-index #serviceInput,.page-index #locInput,.page-index .hs-submit{font-size:16px!important;min-height:52px!important;}
  .page-index .nav-links.open,.page-index .nav-actions.open,.page-index .nav-inner.open .nav-links,.page-index .nav-inner.open .nav-actions{display:flex!important;}
}
/* Directory header: no blank mystery box, one clear context and stable controls */
.page-directory .dir-hero-v125 .search-bar{display:grid!important;grid-template-columns:minmax(220px,1fr) auto minmax(180px,260px) auto!important;gap:10px!important;align-items:center!important;}
.page-directory #dirSearch,.page-directory #dirLoc{display:none!important;}
.page-directory #dirContextLabel{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-height:52px!important;min-width:240px!important;background:#fff!important;color:#082142!important;border:2px solid rgba(8,33,66,.08)!important;border-radius:18px!important;padding:0 18px!important;font-weight:900!important;box-shadow:none!important;}
.page-directory #dirHeroUseLocation,.page-directory #dirUseLocation{min-height:48px!important;touch-action:manipulation!important;}
.page-directory #dirMap{height:360px!important;min-height:360px!important;}
.page-directory .dir-map-card{scroll-margin-top:84px!important;}
.page-directory .dir-grid.google-fallback-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;}
.page-directory .dir-grid.google-fallback-grid .dir-card.google-place{padding:14px!important;min-height:0!important;border-top:4px solid #d4a832!important;}
.page-directory .dir-grid.google-fallback-grid .dir-card.google-place:nth-of-type(n+5){display:none!important;}
.page-directory .dir-live-note{grid-column:1/-1!important;background:#fff!important;border:1px solid #dce6ef!important;border-left:5px solid #d4a832!important;border-radius:18px!important;padding:16px 18px!important;}
.page-directory .dir-card.google-place .dir-card-actions{grid-template-columns:1fr!important;}
.page-directory .dir-card.google-place .dir-card-sub{white-space:normal!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
@media(max-width:900px){
  .page-directory .dir-hero-v125 .search-bar{grid-template-columns:1fr!important;}
  .page-directory #dirContextLabel{min-width:0!important;justify-content:center!important;text-align:center!important;}
  .page-directory .dir-body{display:block!important;}
  .page-directory .dir-sidebar{display:none!important;}
  .page-directory .dir-grid.google-fallback-grid{grid-template-columns:1fr!important;}
  .page-directory #dirMap{height:320px!important;min-height:320px!important;}
}
/* Request form should not look cramped */
.page-request form,.page-quote form,.request-form{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;}
.page-request input,.page-request select,.page-request textarea,.page-quote input,.page-quote select,.page-quote textarea{font-size:16px!important;}
/* Login and upgrade usability */
.nila-forgot-row{display:flex!important;justify-content:flex-end!important;margin:-6px 0 14px!important;}
.nila-forgot-row button{border:0!important;background:transparent!important;color:#154c8f!important;font-weight:900!important;cursor:pointer!important;}
.provider-upgrade-current{outline:4px solid rgba(10,90,77,.18)!important;}
