/* WalkoPet V108: city search and selected-business map details. */
/* Primary actions use the deepest WalkoPet green instead of pure black. */
body.wp73:not(.admin-page) .btn:not(.light):not(.secondary):not(.danger),
body.wp73:not(.admin-page) .pill:not(.ghost),
body.wp73 .mobile-bottom-nav .mobile-create{
  border-color:#0b3729!important;
  background:#0b3729!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(11,55,41,.18)!important;
}
body.wp73:not(.admin-page) .btn:not(.light):not(.secondary):not(.danger):hover,
body.wp73:not(.admin-page) .pill:not(.ghost):hover,
body.wp73 .mobile-bottom-nav .mobile-create:hover{
  border-color:#176d50!important;
  background:#176d50!important;
}
body.wp73:not(.admin-page) .btn:not(.light):not(.secondary):not(.danger):active,
body.wp73:not(.admin-page) .pill:not(.ghost):active,
body.wp73 .mobile-bottom-nav .mobile-create:active{
  border-color:#06281d!important;
  background:#06281d!important;
}
[data-city-autocomplete]{position:relative;min-width:0}
[data-city-autocomplete] input{width:100%}
/* Keep city choices above the hero panel and the next row of cards. */
.wp79-hero-search{position:relative;z-index:5}
.wp79-hero-search:focus-within{z-index:20}
.wp75-hero:focus-within{position:relative;z-index:8;overflow:visible}
.wp108-city-suggestions{position:absolute;z-index:75;top:calc(100% + 7px);right:0;left:0;overflow:hidden;border:1px solid #cde0d4;border-radius:15px;background:#fff;box-shadow:0 16px 34px rgba(9,51,34,.16)}
.wp108-city-suggestions[hidden]{display:none!important}
.wp108-city-suggestions button{display:block;width:100%;min-height:42px;padding:10px 13px;border:0;border-bottom:1px solid #edf2ee;background:#fff;color:#18372a;font:inherit;font-size:14px;font-weight:750;text-align:left;cursor:pointer}
.wp108-city-suggestions button:last-child{border-bottom:0}
.wp108-city-suggestions button:hover,.wp108-city-suggestions button.active{background:#edf8f1;color:#126547}
.wp108-business-map{height:260px;min-height:220px;margin-top:13px;overflow:hidden;border:1px solid #dbe8e0;border-radius:17px;background:#eef5f0}
.wp108-map-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.wp108-map-note{margin:11px 0 0;color:#64786d;font-size:12px;line-height:1.45}
.wp108-selected-service{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 13px;padding:14px 16px;border:1px solid #c9e4d5;border-radius:17px;background:#f4fbf6;color:#214b39}
.wp108-selected-service b{display:block;margin-top:2px;color:#15392a;font-size:15px}
.wp108-selected-service small{display:block;color:#65786e;font-size:12px}
.wp108-selected-service .btn{min-height:36px;padding:0 12px;font-size:13px}
.nearby-item.selected-business{border-color:#82c7a4!important;background:#edf9f1!important;box-shadow:0 8px 18px rgba(13,91,59,.10)}
/* The selected category has a saturated green background. */
.wp77 .wp75-directory-categories a:is(.active,:hover),
.wp77 .wp75-directory-categories a:is(.active,:hover) span{color:#f7fff9!important}
/* Service names and locations must remain readable when a provider uses a long title. */
.wp75-service-card{height:auto;align-items:flex-start}
.wp75-service-card-copy{min-width:0}
.wp75-service-card-copy h3{
  display:block!important;
  max-width:100%;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.wp75-service-card-copy h3 i{display:inline-grid!important;vertical-align:middle;margin-left:3px}
.wp75-service-card-copy p{
  max-width:100%;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
  word-break:break-word;
}
@media (max-width:620px){.wp108-city-suggestions{border-radius:13px}.wp108-business-map{height:230px;border-radius:15px}.wp108-selected-service{align-items:flex-start;flex-direction:column;padding:13px}.wp108-selected-service .btn{width:100%;justify-content:center}.wp79-hero-search [data-city-autocomplete]{width:100%}}

/* WalkoPet V116: compact service cards on directory. */
.wp114-directory-grid .wp75-service-card{gap:12px}
.wp114-directory-grid .wp75-service-card-copy h3{font-size:clamp(15px,4.8vw,18px)!important;line-height:1.12;display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden!important;text-overflow:ellipsis!important}
.wp114-directory-grid .wp75-service-card-copy>span{font-size:11px}
.wp114-directory-grid .wp75-service-card-copy p{font-size:13px;line-height:1.3}
@media(max-width:620px){
  .wp114-directory-grid .wp75-service-card{grid-template-columns:64px minmax(0,1fr);padding:14px;border-radius:20px}
  .wp114-directory-grid .wp75-service-card-icon{width:64px;height:64px;border-radius:18px}
  .wp114-directory-grid .wp75-service-card-copy h3{-webkit-line-clamp:2;font-size:15px!important}
}

/* WalkoPet V117: denser mobile directory and compact category scroller. */
.wp114-directory-grid .wp75-service-card-copy h3{letter-spacing:-.02em!important}
@media(max-width:620px){
  .wp75-directory-categories{
    display:grid!important;
    grid-auto-flow:column;
    grid-template-rows:repeat(2,auto);
    grid-auto-columns:max-content;
    gap:7px!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
    padding:3px 5px 8px!important;
    margin-inline:-1px;
  }
  .wp75-directory-categories a{
    min-height:36px!important;
    padding:0 11px!important;
    border-radius:999px!important;
    font-size:12px!important;
    line-height:1.1!important;
    scroll-snap-align:start;
  }
  .wp114-result-head{margin:10px 0 8px!important}
  .wp114-result-head b{font-size:15px}
  .wp114-directory-grid{gap:10px!important;margin-top:8px!important}
  .wp114-directory-grid .wp75-service-card{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:11px!important;
    min-height:0!important;
    padding:13px!important;
    border-radius:19px!important;
  }
  .wp114-directory-grid .wp75-service-card-icon{
    width:58px!important;
    height:58px!important;
    border-radius:16px!important;
  }
  .wp114-directory-grid .wp75-service-card-copy>span{font-size:10.5px!important;line-height:1.2}
  .wp114-directory-grid .wp75-service-card-copy h3{
    margin:3px 0 5px!important;
    font-size:14px!important;
    line-height:1.16!important;
    letter-spacing:-.018em!important;
    -webkit-line-clamp:2!important;
  }
  .wp114-directory-grid .wp75-service-card-copy p{font-size:12px!important;line-height:1.25!important}
  .wp114-directory-grid .wp114-card-price{margin-top:4px!important;font-size:12px!important}
  .wp114-directory-grid .wp114-card-trust{min-height:20px!important;margin-top:2px;font-size:11px!important;line-height:1.2}
  .wp114-directory-grid .wp75-service-card-copy strong{margin-top:6px!important;font-size:12px!important}
}

/* WalkoPet V118: fix actual H2 card titles and de-clutter mobile cards. */
.wp114-directory-grid .wp75-service-card-copy h2{
  display:-webkit-box!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden!important;
  max-width:100%;
  margin:4px 0 6px!important;
  font-size:20px!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.wp114-directory-grid .wp75-service-card-copy h2 i{display:inline-grid!important;vertical-align:middle;margin-left:3px}
@media(max-width:620px){
  .wp114-directory-grid .wp75-service-card{grid-template-columns:54px minmax(0,1fr)!important;gap:10px!important;padding:12px!important}
  .wp114-directory-grid .wp75-service-card-icon{width:54px!important;height:54px!important;border-radius:15px!important}
  .wp114-directory-grid .wp75-service-card-copy h2{font-size:17px!important;line-height:1.15!important;margin:2px 0 5px!important;-webkit-line-clamp:2!important}
  .wp114-directory-grid .wp75-service-card-copy>span{font-size:10px!important}
  .wp114-directory-grid .wp114-card-trust{font-size:10.5px!important}
  .wp114-directory-grid .wp75-service-card-copy strong{font-size:11.5px!important}
}
@media(max-width:380px){
  .wp114-directory-grid .wp75-service-card-copy h2{font-size:16px!important}
}
