.hero-services {
      background:
        radial-gradient(circle at 18% 18%, rgba(198,161,91,.24), transparent 28rem),
        linear-gradient(110deg, rgba(11,31,51,.94), rgba(14,59,46,.88), rgba(122,30,44,.62));
    }
    .glass {
      background: rgba(255,252,245,.92);
      backdrop-filter: blur(16px);
      border: 1px solid rgba(198,161,91,.44);
      box-shadow: 0 28px 80px rgba(0,0,0,.24);
    }
    .chip {
      border: 1px solid rgba(198,161,91,.42);
      background: rgba(255,252,245,.75);
    }
    .map-grid {
      background-color: #F7F1E3;
      background-image:
        linear-gradient(rgba(11,31,51,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(11,31,51,.06) 1px, transparent 1px);
      background-size: 24px 24px;
    }
    .district-pin { box-shadow: 0 10px 24px rgba(11,31,51,.26); }
    .hide-scrollbar::-webkit-scrollbar { display: none; }
    .hide-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
    .drawer-open { overflow: hidden; }
    @media (max-width: 768px) {
      .mobile-card-image { height: 210px; }
    }

    /* Services listing cards use the same compact image rhythm as Pets category cards */
    #listingContainer .listing-card .mobile-card-image {
      height: 210px;
    }
    @media (min-width: 768px) {
      #listingContainer .listing-card .mobile-card-image {
        height: 100%;
        min-height: 190px;
        max-height: 230px;
      }
    }

    
    .accordion-content {
      transition: max-height 0.3s ease-in-out, opacity 0.3s ease;
      max-height: 0;
      opacity: 0;
      overflow: hidden;
    }
    .accordion-content.open {
      max-height: 500px; 
      opacity: 1;
    }