/* Homepage newest businesses override */
.homepage-businesses {
  width: min(1180px, calc(100% - 44px)) !important;
  margin: 24px auto 0 !important;
  padding: 30px !important;
  border: 1px solid rgba(15, 23, 42, 0.1) !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 10px 34px rgba(23, 33, 43, 0.07) !important;
}
.homepage-section-heading {
  display: flex !important;
  align-items: end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 18px !important;
}
.homepage-section-heading h2 {
  margin: 0 !important;
  font-size: clamp(30px, 4vw, 48px) !important;
  line-height: 0.95 !important;
  letter-spacing: -0.055em !important;
}
.homepage-section-heading > a {
  display: inline-flex !important;
  min-height: 44px !important;
  align-items: center !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  background: #0a2540 !important;
  color: white !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.homepage-business-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: 280px !important;
  align-items: stretch !important;
  gap: 14px !important;
}
.homepage-business-card {
  display: grid !important;
  grid-template-rows: 150px 130px !important;
  height: 280px !important;
  min-height: 280px !important;
  max-height: 280px !important;
  overflow: hidden !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: #17212b !important;
  text-decoration: none !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06) !important;
}
.homepage-business-photo {
  width: 100% !important;
  height: 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, rgba(23, 198, 189, 0.25), rgba(10, 37, 64, 0.9)) !important;
  display: grid !important;
  place-items: center !important;
  color: white !important;
  font-size: 42px !important;
  font-weight: 950 !important;
}
.homepage-business-photo img {
  width: 100% !important;
  height: 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
.homepage-business-body {
  display: grid !important;
  grid-template-rows: auto auto 1fr !important;
  align-content: start !important;
  gap: 5px !important;
  min-height: 130px !important;
  padding: 13px 14px 15px !important;
  background: #fff !important;
}
.homepage-business-body strong {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.2em !important;
  font-size: 1rem !important;
  line-height: 1.1 !important;
  color: #0a2540 !important;
}
.homepage-business-body span {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.05em !important;
  color: #17c6bd !important;
  font-size: 0.78rem !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
}
.homepage-business-body small {
  align-self: end !important;
  color: #64748b !important;
  font-weight: 750 !important;
}
.homepage-empty-card {
  border: 2px dashed rgba(7, 47, 73, 0.22) !important;
  background: linear-gradient(135deg, #ffffff, #e6f3ee) !important;
}
.homepage-empty-card .homepage-business-photo {
  background: linear-gradient(135deg, rgba(116, 184, 158, 0.38), rgba(7, 47, 73, 0.88)) !important;
}
.homepage-empty-card .homepage-business-photo span {
  font-size: 30px !important;
  letter-spacing: -0.06em !important;
}
@media (max-width: 900px) {
  .homepage-business-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 560px) {
  .homepage-businesses { width: min(100% - 28px, 1180px) !important; padding: 20px !important; }
  .homepage-section-heading { align-items: start !important; flex-direction: column !important; }
  .homepage-business-grid { grid-template-columns: 1fr !important; }
}
